Motorola reserves the right to make changes without further notice to any products herein to improve reliability, function or design. Motorola does not assume any
liability arising out of the application or use of any product or circuit described herein; neither does it convey any license under its patent rights nor the rights of
others. Motorola products are not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, or other
applications intended to support or sustain life, or for any other application in which the failure of the Motorola product could create a situation where personal
injury or death may occur. Should Buyer purchase or use Motorola products for any such unintended or unauthorized application, Buyer shall indemnify and hold
Motorola and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney
fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that
Motorola was negligent regarding the design or manufacture of the part. Motorola and the are registered trademarks of Motorola, Inc. Motorola, Inc. is an
Equal Opportunity/Affirmative Action Employer.
iiMC68360 USER’S MANUALMOTOROLA
PREFACE
The complete documentation package for the MC68360 consists of the MC68360UM/AD,
The MC68360 QUad Integrated Communication Controller (QUICC
chip integrated microprocessor and peripheral combination that can be used in a variety of
controller applications. It particularly excels in communications activities. The QUICC (pronounced “quick”) can be described as a next-generation MC68302 with higher performance
in all areas of device operation, increased flexibility, major extensions in capability, and
higher integration. The term "quad" comes from the fact that there are four serial communications controllers (SCCs) on the device; however, there are actually seven serial channels:
four SCCs, two serial management controllers (SMCs), and one serial peripheral interface
(SPI).
The purpose of this document is to describe the operation of all QUICC functionality.
Although this document has an overview of the CPU32+, the M68000PM/AD
ily Programmer's Reference Manual
CPU32RM/AD,
CPU32.
M68300 Family CPU32 Reference Manual,
should be used in addition to this document. The
also provides information on the
) is a versatile one-
M68000 Fam-
1.1 QUICC KEY FEATURES
The following list summarizes the key MC68360 QUICC features:
• CPU32+ Processor (4.5 MIPS at 25 MHz)
—32-Bit Version of the CPU32 Core (Fully Compatible with the CPU32)
—Boot Chip Select Available at Reset (Options for 8-, 16-, or 32-Bit Memory)
—Special Features for MC68040 Including Burst Mode Support
• Four General-Purpose Timers
—Superset of MC68302 Timers
—Four 16-Bit Timers or Two 32-Bit Timers
—Gate Mode Can Enable/Disable Counting
• Two Independent DMAs (IDMAs)
—Single Address Mode for Fastest Transfers
—Buffer Chaining and Auto Buffer Modes
—Automatically Performs Efficient Packing
—32-Bit Internal and External Transfers
• System Integration Module (SIM60)
—Bus Monitor
—Double Bus Fault Monitor
—Spurious Interrupt Monitor
—Software Watchdog
—Periodic Interrupt Timer
—Low Power Stop Mode
—Clock Synthesizer
—Breakpoint Logic Provides On-Chip Hardware Breakpoints
—External Masters May Use On-Chip Features Such As Chip Selects
—On-Chip Bus Arbitration with No Overhead for Internal Masters
—IJTAG Test Access Port
• Interrupts
—Seven External
IRQ Lines
—12 Port Pins with Interrupt Capability
—16 Internal Interrupt Sources
—Programmable Priority Between SCCs
—Programmable Highest Priority Request
—Many New Commands (e.g., Graceful Stop Transmit, Close RxBD)
—224 Buffer Descriptors
—Supports Continuous Mode Transmission and Reception on All Serial Channels
—2.5 Kbytes of Dual-Port RAM
—14 Serial DMA (SDMA) Channels
—Three Parallel I/O Registers with Open-Drain Capability
—Each Serial Channel Can Have Its Own Pins (NMSI Mode)
• Four Baud Rate Generators
1-2
MC68360 USER’S MANUAL
MOTOROLA
—Independent (Can Be Connected to Any SCC or SMC)
—Allows Changes During Operation
—Autobaud Support Option
• Four SCCs
Introduction
—Ethernet/IEEE 802.3 Optional on SCC1 (Full 10-Mbps Support)
1
—HDLC/SDLC
(All Four Channels Supported at 2 Mbps)
—HDLC Bus (Implements an HDLC-Based Local Area Network (LAN))
2
—AppleTalk
—Signaling System #7
—Universal Asynchronous Receiver Transmitter (UART)
—Synchronous UART
—Binary Synchronous Communication (BISYNC)
—Totally Transparent (Bit Streams)
—Totally Transparent (Frame Based with Optional Cyclic Redundancy Check (CRC))
—Profibus (RAM Microcode Option)
—Asynchronous HDLC
The QUICC is 32-bit controller that is an extension of other members of the Motorola
M68300 family. Like other members of the M68300 family, the QUICC incorporates the intermodule bus (IMB). (The MC68302 is an exception, having an M68000 bus on chip.) The IMB
provides a common interface for all modules of the M68300 family, which allows Motorola
to develop new devices more quickly by using the library of existing modules. Although the
IMB definition always included an option for an on-chip 32-bit bus, the QUICC is the first
device to implement this option.
The QUICC is comprised of three modules: the CPU32+ core, the SIM60, and the CPM.
Each module utilizes the 32-bit IMB. The MC68360 QUICC block diagram is shown in Figure
1-1.
TWO
IDMAs
CPU32+
CORE
COMMUNICATIONS PROCESSOR
RISC
CONTROLLER
FOURTEEN SERIAL
DMAs
SEVEN
SERIAL
CHANNELS
IMB (32 BIT)
CPM
TIMER SLOT
ASSIGNER
SYSTEM
PROTECTION
PERIODIC
TIMER
CLOCK
GENERATION
OTHER
FEATURES
2.5-KBYTE
DUAL-PORT
RAM
INTERRUPT
CONTROLLER
OTHER
FEATURES
SIM 60
JTAG
BREAKPOINT
LOGIC
DRAM
CONTROLLER
AND
CHIP SELECTS
EXTERNAL
BUS
INTERFACE
FOUR
GENERAL-
PURPOSE
TIMERS
SYSTEM
I/F
Figure 1-1. QUICC Block Diagram
4.
Centronics is a trademark of Centronics, Inc.
1-4
MC68360 USER’S MANUAL
MOTOROLA
Introduction
1.2.1 CPU32+ Core
The CPU32+ core is a CPU32 that has been modified to connect directly to the 32-bit IMB
and apply the larger bus width. Although the original CPU32 core had a 32-bit internal data
path and 32-bit arithmetic hardware, its interface to the IMB was 16 bits. The CPU32+ core
can operate on 32-bit external operands with one bus cycle. This allows the CPU32+ core
to fetch a long-word instruction in one bus cycle and to fetch two word-length instructions in
one bus cycle, filling the internal instruction queue more quickly. The CPU32+ core can also
read and write 32-bits of data in one bus cycle.
Although the CPU32+ instruction timings are improved, its instruction set is identical to that
of the CPU32. It will also execute the entire M68000 instruction set. It contains the same
background debug mode (BDM) features as the CPU32. No new compilers, assemblers, or
other software support tools need be implemented for the CPU32+; standard CPU32 tools
can be used.
The CPU32+ delivers approximately 4.5 MIPS at 25 MHz, based on the standard (accepted)
assumption that a 10-MHz M68000 delivers 1 VAX MIPS. If an application requires more
performance, the CPU32+ can be disabled, allowing the rest of the QUICC to operate as an
intelligent peripheral to a faster processor. The QUICC provides a special mode called
MC68040 companion mode to allow it to conveniently interface to members of the M68040
family. This two-chip solution provides a 22-MIPS performance at 25 MHz.
The CPU32+ also offers automatic byte alignment features that are not offered on the
CPU32. These features allow 16 or 32-bit data to be read or written at an odd address. The
CPU32+ automatically performs the number of bus cycles required.
1.2.2 System Integration Module (SIM60)
The SIM60 integrates general-purpose features that would be useful in almost any 32-bit
processor system. The term “SIM60” is derived from the QUICC part number, MC68360.
The SIM60 is an enhanced version of the SIM40 that exists on the MC68340 and MC68330
devices.
First, new features, such as a DRAM controller and breakpoint logic, have been added. Second, the SIM40 was modified to support a 32-bit IMB as well as a 32-bit external system bus.
Third, new configurations, such as slave mode and internal accesses by an external master,
are supported.
Although the QUICC is always a 32-bit device internally, it may be configured to operate with
a 16-bit data bus. Regardless of the choice of the system bus size, dynamic bus sizing is
supported. Bus sizing allows 8-, 16-, and 32-bit peripherals and memory to exist in the 32bit system bus mode and 8- and 16-bit peripherals and memory to exist in the 16-bit system
bus mode.
MOTOROLA
MC68360 USER’S MANUAL
1-5
Introduction
1.2.3 Communications Processor Module (CPM)
The CPM contains features that allow the QUICC to excel in communications and control
applications. These features may be divided into three sub-groups:
• Communications Processor (CP)
• Two IDMA Controllers
• Four General-Purpose Timers
The CP provides the communication features of the QUICC. Included are a RISC processor,
four SCCs, two SMCs, one SPI, 2.5 Kbytes of dual-port RAM, an interrupt controller, a time
slot assigner, three parallel ports, a parallel interface port, four independent baud rate generators, and fourteen serial DMA channels to support the SCCs, SMCs, and SPI.
The IDMAs provide two channels of general-purpose DMA capability. They offer highspeed transfers, 32-bit data movement, buffer chaining, and independent request and
acknowledge logic. The RISC controller may access the IDMA registers directly in the buffer
chaining modes. The QUICC IDMAs are similar to, yet enhancements of, the two DMA channels found on the MC68340 and the one IDMA channel found on the MC68302.
The four general-purpose timers on the QUICC are functionally similar to the two generalpurpose timers found on the MC68302. However, they offer some minor enhancements,
such as the internal cascading of two timers to form a 32-bit timer. The QUICC also contains
a periodic interval timer in the SIM60, bringing the total to five on-chip timers.
1.3 UPGRADING DESIGNS FROM THE MC68302
Since the QUICC is a next-generation MC68302, many designers currently using the
MC68302 may wish to use the QUICC in a follow-on design. The following paragraphs
briefly discuss this endeavor in terms of architectural approach, hardware issues, and software issues. See Section 9 Applications for further information.
1.3.1 Architectural Approach
The QUICC is the logical extension of the MC68302, but the overall architecture and philosophy of the MC68302 design remains intact in the QUICC. The QUICC keeps the best features of the MC68302, while making the changes required to provide for the increased
flexibility, integration, and performance requested by customers. Because the CPM is probably the most difficult module to learn, anyone who has used the MC68302 can easily
become familiar with the QUICC since the CPM architectural approach remains intact.
The most significant architectural change made on the QUICC was the translation of the
design into the standard M68300 family IMB architecture, resulting in a faster CPU and different system integration features.
Although the features of the SIM60 do not exactly correspond to those of the MC68302 SIM,
they are very similar. The QUICC SIM60 combines the best MC68302 SIM features with the
best MC68340 SIM features for improved performance.
1-6
MC68360 USER’S MANUAL
MOTOROLA
Introduction
Because of the similarity of the QUICC SIM60 and CPU to other members of the M68300
family, such as the MC68332 and the MC68340, previous users of these devices will be
comfortable with these same features on the QUICC.
1.3.2 Hardware Compatibility Issues
The following list summarizes the hardware differences between the MC68302 and the
QUICC:
• Pinout—The pinout is not the same. The QUICC has 240 pins; the MC68302 has 132
pins.
• Package—Both devices offer PGA and PQFP packages. However, the QUICC
PQFP package has a 20-mil pitch; whereas, the MC68302 PQFP package has a
25-mil pitch.
• System Bus—The system bus signals now look like those of the MC68030 as opposed
to those of the M68000. It is still possible to interface M68000 peripherals to the QUICC,
utilizing the same techniques used to interface them to an MC68020 or MC68030.
• System Bus in Slave Mode—A number of QUICC pins take on new functionality in slave
mode to support an external MC68EC040. On the MC68302, the pin names generally
remained the same in slave mode.
• Peripheral Timing—The external timings of the peripherals (SCCs, timers, etc.) are very
similar (if not identical) to corresponding peripherals on the MC68302.
• Pin Assignments—The assignment of peripheral functions to I/O pins is different in several ways. First, the QUICC contains more general-purpose parallel I/O pins than the
MC68302. However, the QUICC offers many more functions than even a 240-pin package would normally allow, resulting in more multifunctional pins than the MC68302.
1.3.3 Software Compatibility Issues
The following list summarizes the major software differences between the MC68302 and the
QUICC:
• Since the CPU32+ is a superset of the M68000 instruction set, all previously written
code will run. However, if such code is accessing the MC68302 peripherals, it will require some modification.
• The QUICC contains an 8-Kbyte block of memory as opposed to a 4-Kbyte block
on the MC68302. The register addresses within that memory map are different.
• The code used to initialize the system integration features of the MC68302 has
to be modified to write the corresponding features on the QUICC SIM60. Code written
for the MC68340 may be adapted in large part.
• As much as possible, QUICC CPM features were made identical to those of the
MC68302 CP. The most important benefit is that the code flow (if not the code itself) will
port easily from the MC68302 to the QUICC. The nuances learned from the MC68302
will still be useful in the QUICC.
• Although the registers used to initialize the QUICC CPM are new (for example, the SCM
on the MC68302 is replaced with the GSMR and PSMR on the QUICC), most registers
retain their original purpose such as the SCC event, SCC mask, SCC status, and com-
MOTOROLA
MC68360 USER’S MANUAL
1-7
8-BIT BOOT
Introduction
mand registers. The parameter RAM of the SCCs is very similar, and most parameter
RAM register names and usage are retained. More importantly, the basic structure of a
buffer descriptor (BD) on the QUICC is identical to that of the MC68302, except for a
few new bit functions that were added. (In a few cases, a bit in a BD status word had to
be shifted.)
• When porting code from the MC68302 CP to the QUICC CPM, the software writer may
find that the QUICC has new options to simplify what used to be a more code-intensive
process. For specific examples, see the INIT TX AND RX PARAMETERS, GRACEFUL
STOP TRANSMIT, and CLOSE BD commands.
1.4 QUICC GLUELESS SYSTEM DESIGN
A fundamental design goal of the QUICC was ease of interface to other system components.
An example of this goal is a minimal QUICC design using EPROM and DRAM, shown in Figure 1-2.
offers parity support for the DRAM.
This system interfaces gluelessly to an EPROM and a DRAM SIMM module. It also
QUICC
MC68360
CS0
OE
WE0
DATA
ADDRESS
RAS1
CAS3–CAS0
R/W
PRTY3–PRTY0
EPROM
(FLASH OR REGULAR)
CE (ENABLE)
OE (OUTPUT ENABLE)
WE (WRITE)
DATA
ADDRESS
16- OR 32-BIT
DRAM SIMM
(OPTIONAL PARITY)
RAS
CAS3–CAS0
W (WRITE)
DATA
ADDRESS
PARITY
Figure 1-2. Minimum QUICC System Configuration
Figure 1-3 shows a larger system configuration. This system offers one EPROM, one flash
EPROM, and supports two DRAM SIMMs. Depending on the capacitance on the system
bus, external buffers may be required. From a logic standpoint, however, a glueless system
is maintained.
1-8
MC68360 USER’S MANUAL
MOTOROLA
8-BIT BOOT
Introduction
QUICC
MC68360
CS0
OE
WE0
DATA
ADDRESS
CS7
WE3–WE0
RAS2
RAS1
CAS3–CAS0
R/W
PRTY3–PRTY0
BUFFER
EPROM
(FLASH OR REGULAR)
CE (ENABLE)
OE (OUTPUT ENABLE)
WE (WRITE)
DATA
ADDRESS
8-, 16-, OR 32-BIT SRAM
E (ENABLE)
G (OUTPUT ENABLE)
W (WRITE)
DATA
ADDRESS
16- OR 32-BIT
TWO DRAM SIMMs
(OPTIONAL PARITY)
RAS
RAS
CAS3–CAS0
W (WRITE)
DATA
ADDRESS
PARITY
Figure 1-3. Larger QUICC System Configuration
1.5 QUICC SERIAL CONFIGURATIONS
The QUICC offers an extremely flexible set of communications capabilities. Although a full
understanding of the possibilities requires reading the appropriate sections, some of the
possibilities are shown in the following diagrams. They show possible connections between
QUICC devices. In addition, connections are often shown between QUICCs and the
MC68302 to show the compatibility between these devices.
For readability, transceivers are usually omitted in the following diagrams. For local onboard communications, however, transceivers are often optional and depend on the protocol used.
Figure 1-4 shows the Ethernet LAN capability of the QUICC. An external SIA transceiver is
required to complete the interface to the media. This functionality is implemented in the
MC68160 enhanced Ethernet serial transceiver (EEST
MOTOROLA
MC68360 USER’S MANUAL
). The MC68160 EEST supports
1-9
Introduction
connections to the attachment unit interface (AUI) or twisted-pair Ethernet formats and provides a glueless interface to the QUICC.
QUICC
SCC1
QUICC
SCC1
QUICC
SCC1
ETHERNET
MC68160
EEST
MC68160
EEST
MC68160
EEST
Figure 1-4. Ethernet LAN Capability
Figure 1-5 shows the AppleTalk LAN capability of the QUICC. Note that the MC68302
requires an extra device, the MC68195 LocalTalk adapter, to interface to AppleTalk.
QUICC
SCC
QUICC
SCC
MC68302
NOTE: The QUICC implements the AppleTalk LAN
protocol without the need for the MC68195.
SCC
MC68195
RS422
XCVR
RS422
XCVR
LA
RS422
XCVR
Figure 1-5. AppleTalk LAN Capability
Figure 1-6 shows the implementation of a LAN structure of HDLC called HDLC bus. This
protocol is the fastest, easiest way to interface multiple QUICCs in an HDLC-based protocol.
1-10
MC68360 USER’S MANUAL
MOTOROLA
QUICC
SCC
QUICC
SCC
QUICC
SCC
NOTES:
1. HDLC bus—any node can obtain
mastership.
2. The QUICC handles collisions
without external glue.
HDLC BUS
Introduction
Figure 1-6. HDLC Bus LAN
Figure 1-7 shows the original SDLC application, which can be implemented by both QUICCs
and MC68302s.
QUICC
SCC
QUICC
SCC
MC68302
SCC
NOTE: No collisions are allowed in this
master-slave approach. Also
available on the MC68302.
SDLC BUS
Figure 1-7. FSDLC Bus Implementation
Figure 1-8 shows a UART LAN configuration that is supported by both the QUICC and the
MC68302, as well as many other industry UARTs.
MOTOROLA
MC68360 USER’S MANUAL
1-11
Introduction
QUICC
SCC
QUICC
SCC
MULTI-DROP
UART
MC68302
SCC
NOTES:
1. Simple LAN based on UART mode.
2. Ninth bit is an "address" bit.
Figure 1-8. UART LAN Implementation
Figure 1-9 shows how the SPIs on the QUICC can be used to connect devices together into
a local bus. The SPI exists on many other Motorola devices, such as the MC68HC11 microcontroller, and a number of peripherals such as A/D and D/A converters, LED drivers, LCD
drivers, real-time clocks, serial EEPROM, PLL frequency synthesizers, and shift registers.
QUICC
MASTER/SLAVE
QUICC
MASTER/SLAVE
QUICC
MASTER/SLAVE
SPI
SPI
SPI
SPI BUS
1-12
NOTE: SPI bus configuration—each QUICC
can be the master in turn.
Figure 1-9. SPI Local Bus Implementation
MC68360 USER’S MANUAL
MOTOROLA
Introduction
Figure 1-10 shows how the SCP on the MC68302 can be used to interface to the QUICC
SPI.
MC68302
SCP
MASTER
NOTE: The MC68302 SCP can communicate with the QUICC SPI.
SPI BUS
QUICC
SPI
SLAVE
EEPROMS
ETC.
SPI
SLAVE
Figure 1-10. SPI Implementation Using SCP
Figure 1-11 shows how the SPI on the QUICC can interface to another QUICC or SPI-based
peripherals.
QUICC
SPI
MASTER
SPI BUS
QUICC
SPI
SLAVE
EEPROMS
ETC.
SPI
SLAVE
NOTE: Two QUICCs configured for a master-slave SPI connection.
Figure 1-11. SPI Master-Slave Implementation
Figure 1-12 shows how the parallel interface port (PIP) can be used to implement the Centronics interface connection. The QUICC may be the peripheral or the host.
QUICC
PIP
NOTE: The QUICC can communicate over a Centronics Interface.
CENTRONICS
INTERFACE
8 DATA LINES
HOST
COMPUTER
OR PRINTER
Figure 1-12. Centronics Interface Implementation
MOTOROLA
MC68360 USER’S MANUAL
1-13
HDLC/SDLC
Introduction
Figure 1-13 shows how the PIP can also be used to implement a fast parallel connection
between devices.
QUICC
PIP
NOTE: Fast parallel connection between QUICCs.
PARALLEL
INTERFACE
8 DATA LINES
QUICC
PIP
Figure 1-13. Fast Parallel Connection Implementation
Figure 1-14 shows which SCC protocols may be used to connect SCCs on the QUICC and
the MC68302.
QUICCMC68302
SCC
HDLC/SDLC
BISYNC
UART
TRANSPARENT
SCC
Figure 1-14. SCC Protocol Implementation
Figure 1-15 shows which SCC protocols may be used to connect SCCs on multiple QUICCs
or to other devices supporting such protocols.
QUICCQUICC
SCCSCC
NOTE: Point-to-point (WAN) configurations are available on the QUICC.
Figure 1-16 shows other point-to-point options that are possible with the QUICC and the
MC68302.
1-14
MC68360 USER’S MANUAL
MOTOROLA
QUICCMC68302
Introduction
QUICC
QUICC
SMC
SMCSCP
SMC
UART
TRANSPARENT
TRANSPARENT
UART
TRANSPARENT
SCC
MC68302
QUICC
SMC
Figure 1-16. Other Point-to-Point Implementations
Figure 1-17 shows how up to six of the serial channels can connect to a TDM interface. The
QUICC provides a built-in time-slot assigner for access to the TDM time slots. Other channels can work with their own set of pins, allowing possibilities like an Ethernet to T1 bridge,
etc.
QUICC
SCC
SCC
SCC
SCC
SMC
SMC
ANY COMBINATION OF SCCs
AND SMCs MAY BE
CONNECTED TO THE TDM.
NOTE: Independent receive and transmit clocking, routing,
and syncs are supported.
Figure 1-18 shows that the QUICC time-slot assigner can support two TDM buses. Each
Figure 1-17. Serial Channel to TDM Bus Implementation
TIME
SLOT
ASSIGNER
TIME DIVISION MULTIPLEXED BUS
T1, CEPT, IDL, GCI, ISDN,
PRIMARY RATE,
USER-DEFINED
TDM bus can be of a different format—for example, one TDM can be a T1 line, and one can
be a CEPT line. Also this technique could be used to bridge frames from basic rate ISDN to
a T1/CEPT line, etc.
MOTOROLA
MC68360 USER’S MANUAL
1-15
Introduction
QUICC
SCC
SCC
SCC
SCC
SMC
SMC
ANY COMBINATION OF SCCs
AND SMCs MAY BE
CONNECTED TO ANY TDM.
NOTE: Two TDM buses may be simultaneously supported
with the time slot assigner.
TIME
SLOT
ASSIGNER
TDM BUS 1
TDM BUS 2
Figure 1-18. Dual TDM Bus Implementation
1.6 QUICC SERIAL CONFIGURATION EXAMPLES
Figure 1-19 shows a situation where multiple QUICCs can communicate over a TDM line.
This can be used, for instance, to implement an 8-channel line card. The SCCs implement
the line interfaces, and the SMCs provide the local on-board communication between the
QUICCs. The additional SMC on each QUICC can be used as a serial debug port. The SPI
can be used to interface to peripherals, such as a serial EEPROM.
TWO SMCs ARE
USED TO
COMMUNICATE
LOCALLY
BETWEEN QUICCs
OVER A TIME SLOT.
SCC
SCC
SCC
SCC
SMC
SMC
SCC
SCC
SCC
SCC
SMC
SMC
QUICC
QUICC
TIME
SLOT
ASSIGNER
TIME
SLOT
ASSIGNER
TDM BUS
1-16
NOTE: The eight SCCs and two SMCs support 10 time slots on the TDM bus.
The length and position of the time slots are made with time slot assigners.
Figure 1-19. Multiple QUICC TDM Bus Implementation
MC68360 USER’S MANUAL
MOTOROLA
Introduction
Figure 1-20 shows a general-purpose application that includes Ethernet, AppleTalk, an
HDLC connection to a T1 line, an HDLC connection to frame relay, a UART debug monitor
port, a totally transparent data stream port, and an SPI connection to a serial EEPROM.
QUICC
SCC3
SCC1
SCC2
TIME
SLOT
ASSIGNER
SCC4
SMC1
UART
DEBUG
PORT
SERIAL
EEPROM
RS-232
SYSTEM
BUS
SPI
SMC2
Figure 1-20. General-Purpose Application
1.7 QUICC SYSTEM BUS CONFIGURATIONS
MOTOROLA
SIA
TRANSCEIVER
RS-422
T1 LINE
TRANSCEIVER
RS-232
RS-232
ETHERNET
APPLE TALK
X.25 (HDLC)
FRAME RELAY (HDLC)
TRANSPARENT DATA
Figure 1-21 shows a master-slave QUICC configuration. This system gives eight SCCs, four
SMCs, two SPIs, four IDMAs, etc. Each QUICC uses its own DMA capability, but the
CPU32+ is the only processor in the system. More QUICCs can be easily supported on the
system bus, if desired.
QUICC
MASTER
CPU32+
QUICC SYSTEM BUS
SCC
SCC
SCC
SCC
SMC
SMC
SPI
QUICC
SLAVE
CPU32+
SCC
SCC
SCC
SCC
SMC
SMC
SPI
MOTOROLA
Figure 1-21. Master-Slave QUICC Implementation
MC68360 USER’S MANUAL
1-17
Introduction
The QUICC has special features in slave mode to support the M68040 family. When the
QUICC is used in this way, it is said to be in MC68040 companion mode. Figure 1-22 shows
how a QUICC in slave mode can interface to a MC68EC040. (The MC68EC040 is a lowcost version of the MC68040 with identical integer performance, but without the memory
management unit (MMU) and the floating-point unit (FPU).) The DRAM controller on the
QUICC will control the accesses of the MC68EC040 (including the burst modes). This configuration does require external address multiplexers, but the QUICC controls the multiplexers. The QUICC supports the MC68EC040 in other ways, such as interrupt handling and
system protection features. When it is in slave mode, the QUICC can also be interfaced to
any MC68030-type bus master instead of the MC68EC040.
MC68EC040
SYSTEM BUS
CONTROL
QUICC SLAVE
MC68EC040
SUPPORT
FUNCTIONS
MEMORY
CONTROLLER
EPROM
CPU32+
SCC
SCC
SCC
SCC
SMC
SMC
SPI
1-18
DRAM
ADDRESS
MUXs
SRAM
Figure 1-22. MC68040 Companion Mode
MC68360 USER’S MANUAL
MOTOROLA
SECTION 2
SIGNAL DESCRIPTIONS
This section contains brief descriptions of the QUICC input and output signals in their functional groups as shown in Figure 2-1.
2.1 SYSTEM BUS SIGNAL INDEX
The QUICC system bus signals consist of two groups. The first group, listed in Table 2-1,
consists of system bus signals that exist when the QUICC is in the normal mode (CPU32+
enabled). The second group consists of system bus signals that exist when the QUICC is in
the slave mode (CPU32+ disabled). They are listed in Table 2-7 and may also be identified
in Figure 2-1 as those with an italic font. In Table 2-1, the signal name, mnemonic, and a
brief functional description are presented. For more detail on each signal, refer to the paragraphs that discuss each signal.
2.1.1 Address Bus
The address bus consists of the following two groups. Refer to Section 4 Bus Operation for
information on the address bus and its relationship to bus operation.
2.1.1.1 ADDRESS BUS (A27–A0). This three-state bidirectional bus (along with A31–A28)
provides the address for the current bus cycle, except in the CPU address space. Refer to
Section 4 Bus Operation for more information on the CPU address space. A27 is the most
significant address signal in this group.
2.1.1.2 ADDRESS BUS (A31–A28). These pins can be programmed as the most signifi-
cant four address bits or as four byte write enables.
A31–A28—These pins can function as the most significant 4 address bits. A31 is the
most significant address signal in this group.
–WE0—On a write cycle, these active-low signals indicates which byte of the 32-
WE3
bit data bus contains valid data.
WE0—Corresponds to A31 and selects data bits 31–24. Also may be referred to as UUWE.
—Corresponds to A30 and selects data bits 23–16. Also may be referred to as UM-
WE1
WE.
—Corresponds to A29 and selects data bits 15–8. Also may be referred to as LMWE.
WE2
—Corresponds to A28 and selects data bits 7–0. Also may be referred to as LLWE.
WE3
MOTOROLA
MC68360 USER’S MANUAL
2-1
B
2
Signal Descriptions
Write enable does not have the capability to follow dynamic bus
sizing with external assertion of DSACK
ways follow the port size that is programed in GMR and the OR.
For more information see 6.10 Memory Controller.
Bus Clear Out/
Initial Configuration
1/Row Address Select 2 Double-Drive
Data and Size Acknowledge
Address StrobeAS
Data StrobeDS
SizeSIZ1–SIZ0
Read/Write R/W
Output Enable/
Address Multiplex
Interrupt Request
Level 7–1
Autovector/Interrupt
Acknowledge 5
/RAS7/IACK7
CS
CS6
RAS6
CAS3
IACK6
BGACK
/CONFIG0
RMC
BCLRO
RAS2DD
DSACK1
OE
IRQ7
AVEC
–CS0/
–RAS0
-CAS0/
/CONFIG1/
–DSACK0
/AMUX
–IRQ1
/IACK5
Indicates a parity error during a read cycle. (O)
Enables peripherals or DRAMs at programmed addresses
(O) or interrupt level 7 acknowledge line (O).
Enables peripherals or DRAMs at programmed addresses.
(O)
,3,2,1
Indicates the direction of data transfer on the bus. (I/O)
DRAM column address select or interrupt level acknowledge
lines. (O)
Indicates that an external device requires bus mastership. (I)
Indicates that the current bus cycle is complete and the
QUICC has relinquished the bus. (O)
Indicates that an external device has assumed bus master-
ship. (I)
Identifies the bus cycle as part of an indivisible read-modify-
write operation (I/O) or initial QUICC configuration select (I).
Indicates that an internal device requires the external bus
(Open-Drain O) or initial QUICC configuration select (I) or
row address select 2 double-drive output (O).
Provides asynchronous data transfer acknowledgement and
dynamic bus sizing (open-drain I/O but driven high before
three-stated).
Indicates that a valid address is on the address bus. (I/O)
During a read cycle, DS indicates that an external device
should place valid data on the data bus. During a write cycle,
indicates that valid data is on the data bus. (I/O)
DS
Indicates the number of bytes remaining to be transferred for
this cycle. (I/O)
Active during a read cycle indicates that an external device
should place valid data on the data bus (O) or provides a
strobe for external address multiplexing in DRAM accesses
if internal multiplexing is not used (O).
Provides external interrupt requests to the CPU32+ at priority levels 7–1. (I)
Autovector request during an interrupt acknowledge cycle
(open-drain I/O) or interrupt level 5 acknowledge line (O).
MOTOROLA
MC68360 USER’S MANUAL
2-3
Signal Descriptions
Table 2-1. System Bus Signal Index (Normal Operation)(Continued)
)
GroupSignal NameMnemonicFunction
System
Control
Clock and Test System Clock Out 1CLKO1 Internal system clock output 1. (O)
Clock and Test
(Cont'd)
Power
—No ConnectNC4–NC1Four no-connect pins.
Soft Reset RESETS
Hard ResetRESETH
Halt HALT
Bus Error BERR
System Clock Out 2CLKO2Internal system clock output 2—normally 2x CLKO1. (O)
Crystal Oscillator
External Filter Ca-
Three-StateTRIS
Test Clock TCK Provides a clock for Scan test logic. (I)
Test Mode Select TMS Controls test mode operations. (I)
Test Data In TDI Serial test instructions and test data signal. (I)
Test Data Out TDO Serial test instructions and test data signal. (O)
Test Reset TRST
Clock Synthesizer
Power
Clock Synthesizer
Ground
Clock Out PowerVCCCLKPower supply to clock out pins.
Clock Out GroundGNDCLKGround supply to clock out pins.
Special Ground 1GNDS1
Special Ground 2GNDS2
System Power Sup-
ply and Return
EXTAL,
XTAL
XFC
MODCK1–MODCK0
IFETCH
IPIPE0
IPIPE1
BKPT
/DSI
/DSO
/RAS1DD
/DSCLK
FREEZE/
CONFIG2
VCCSYN Power supply to the PLL of the clock synthesizer.
GNDSYN Ground supply to the PLL of the clock synthesizer.
VCC, GND Power supply and return to the QUICC.
Sft system reset. (open-drain I/O)
Hard system reset. (open-drain I/O)
Suspends external bus activity. (open-drain I/O)
Indicates an erroneous bus operation is being attempted.
(open-drain I/O)
Connections for an external crystal to the internal oscillator
circuit. EXTAL (I), XTAL (O).
Connection pin for an external capacitor to filter the circuit of
the PLL (I).
Selects the source of the internal system clock. (I) THESE
PINS SHOULD NOT BE SET TO 00
Indicates when the CPU32+ is performing an instruction
word prefetch (O) or input to the CPU32+ background debug
mode (I).
Used to track movement of words through the instruction
pipeline (O) or output from the CPU32+ background debug
mode (O).
Used to track movement of words through the instruction
pipeline (O), or a row address select 1 “double-drive” output
(O).
Signals a hardware breakpoint to the QUICC (open-drain I/
O), or clock signal for CPU32+ background debug mode (I).
Indicates that the CPU32+ has acknowledged a breakpoint
(O), or initial QUICC configuration select (I).
Used to three-state all pins if QUICC is configured as a master. Sampled during system reset. (I)
Provides an asynchronous reset to the test controller. (I)
Special ground for fast AC timing on certain system bus signals.
Special ground for fast AC timing on certain system bus signals.
NOTE: I denotes input, 0 denotes output, and I/O is input/output.
2-4
MC68360 USER’S MANUAL
MOTOROLA
Signal Descriptions
2.1.2 Function Codes (FC3–FC0)
These three-state bidirectional signals identify the processor state and the address space
of the current bus cycle as noted in Table 2-2. The function code pins provide the purpose
of each bus cycle to external logic.
Other bus masters besides the QUICC may also output function codes during their bus
cycles. On the QUICC, this capability is provided for each potential internal bus master (i.e.,
the IDMA, SDMA, and DRAM refresh units). Provision is also made for the decoding of function codes that are output from external bus masters (e.g., in the memory controller chipselect generation logic).
In computer design, function code information can be used to protect certain portions of the
address map from unauthorized access or to extend the addressable range beyond the
address limit. However, in controller applications, function codes are most often used as a
debugging aid. Furthermore, in most controller applications, the QUICC stays continuously
in the supervisor state.
Refer to Section 4 Bus Operation for more information.
Table 2-2. Address Space Encoding
Function Code Bits
3210Address Space
0000Reserved (Motorola)
0001User Data Space
0010User Program Space
0011Reserved (User)
0100Reserved (Motorola)
0101Supervisor Data Space
0110Supervisor Program Space
0111Supervisor CPU Space
1xxxDMA Space
NOTE
FC3-0 may not be set to 0xF
2.1.3 Data Bus
The data bus consists of the following two groups. Refer to Section 4 Bus Operation for information on the data bus and its relationship to bus operation.
2.1.3.1 DATA BUS (D31–D16). These three-state bidirectional signals (along with D15–
D0) provide the general-purpose data path between the QUICC and all other devices.
Although the data path is a maximum of 32 bits wide, it can be dynamically sized to support
8-, 16-, or 32-bit transfers. D31 is the MSB of the data bus. Byte and word operations occur
on D31–D16. Additionally, if the QUICC is configured into 16-bit bus mode, the D31–D16
MOTOROLA
MC68360 USER’S MANUAL
2-5
Signal Descriptions
pins are the only data pins used. Refer to Section 4 Bus Operation for information on the
data bus and its relationship to bus operation.
2.1.3.2 DATA BUS (D15–D0). These pins can function as 16 additional data pins used in
long-word and 3-byte transfers. They are three-stated and not used if the QUICC is configured into 16-bit bus mode.
2.1.4 Parity
These three-state bidirectional signals provide parity generation/checking for the data path
between the QUICC or external masters and other devices. There are four parity lines—one
for every eight data bits. The parity lines consists of two groups. Refer to Section 6 System
Integration Module (SIM60) for more information on parity generation/checking.
2.1.4.1 PARITY (PRTY0). This pin is the parity value for data bits 31–24.
2.1.4.2 PARITY (PRTY1). This pin is the parity value for data bits 23–16.
2.1.4.3 PARITY (PRTY2). This pin is the parity value for data bits 15–8.
2.1.4.4 PARITY (PRTY3). This pin has two functions. During total system reset, it is the
16BM
pin to determine whether 16-bit data bus mode is to be enabled. After system reset,
it functions as the parity line 3.
PRTY3—This pin is the parity value for data bits 0–7.
16BM
—This pin selects the 16-bit data bus mode. To choose a 32-bit data bus during total
system reset, this pin can be left floating (it has an internal pullup resistor) or can be driven/
pulled high. To choose a 16-bit data bus during total system reset, this pin should be driven/
pulled low.
2.1.5 Memory Controller
The following signals are used to control an external memory device.
2.1.5.1 CHIP SELECT/ROW ADDRESS SELECT (CS6–CS0/RAS6–RAS0). The chip-
select output signals enable peripherals or memory arrays at programmed addresses. CS0
is the global chip select for the boot ROM containing the user’s reset vector and initialization
program. Refer to Section 6 System Integration Module (SIM60) for more information on
chip selects.
NOTE
In addition, RAS1 can be simultaneously output on the RAS1DD
pin to increase the RAS1 line drive capability, and RAS2 can be
simultaneously output on the RAS2DD
/IACK7). This pin can be programmed as a CS7/RAS7 pin or as the IACK7 line. See
Section 6 System Integration Module (SIM60) for more information on this selection.
2-6
MC68360 USER’S MANUAL
MOTOROLA
RAS7/CS7—Row address select 7 or chip select 7 output signal.
Signal Descriptions
IACK7
rupt acknowledge cycle. Peripherals can use the IACKx
address bus and function codes to determine that an interrupt acknowledge cycle is in
progress and to obtain the current interrupt level. IACKx
vector is generated internally by the QUICC. See Section 4 Bus Operation for more information.
IACK1
of an external interrupt during an interrupt acknowledge cycle. Peripherals can use the
IACKx
an interrupt acknowledge cycle is in progress and to obtain the current interrupt level. IACKx
lines need not be used when the vector is generated internally by the QUICC. See Section
4 Bus Operation for more information.
—The QUICC asserts this pin to indicate a level 7 external interrupt during an inter-
strobes instead of monitoring the
lines need not be used when the
, 3, 2, 1). These pins can be programmed as four column address selects for
–CAS0—The DRAM column address select output signal enables the DRAM col-
CAS0 selects data bits 31–24.
CAS1
CAS2
CAS3
selects data bits 23–16.
selects data bits 15–8.
selects data bits 7–0.
, IACK2, IACK3, IACK6—The QUICC asserts one of these pins to indicate the level
strobes instead of monitoring the address bus and function codes to determine that
IACK1 corresponds to CAS0.
IACK2
IACK3
IACK6
2.1.5.4 ADDRESS MULTIPLEX (AMUX). See 2.1.7.7 Output Enable/Address Multiplex
(OE/AMUX) for more information.
2.1.6 Interrupt Request Level (
These pins are prioritized interrupt request lines. IRQ7, the highest priority, is nonmaskable;
IRQ6
mation on the interrupt request lines.
corresponds to CAS1.
corresponds to CAS2.
corresponds to CAS3.
IRQ7
–
IRQ1
)
–IRQ1 are internally maskable interrupts. Refer to Section 5 CPU32+ for more infor-
2.1.7 Bus Control Signals
These signals control the bus transfer operations of the QUICC. Refer to Section 4 Bus
Operation for more information on these signals.
MOTOROLA
MC68360 USER’S MANUAL
2-7
Signal Descriptions
2.1.7.1 DATA AND SIZE ACKNOWLEDGE (DSACK1–DSACK0). These two active-low
bidirectional signals allow asynchronous data transfers and dynamic data bus sizing
between the QUICC and external devices (see Table 2-3).
Table 2-3. DSACKx Encoding
DSACK1DSACK0Result
1 (Negated)1 (Negated)Insert wait states in current bus cycle.
1 (Negated)0 (Asserted)Complete cycle—data bus port size is 8 bits.
0 (Asserted)1 (Negated)Complete cycle—data bus port size is 16 bits.
0 (Asserted)0 (Asserted)Complete cycle—data bus port size is 32 bits.
2.1.7.2 AUTOVECTOR/INTERRUPT ACKNOWLEDGE (AVEC/IACK5). This pin can be
programmed to be an autovector input or the interrupt acknowledge 5 line output.
AVEC
—This signal requests an automatic vector during an interrupt acknowledge cycle.
Refer to Section 6 System Integration Module (SIM60) for more information on the autovector function. AVEC
IACK5
—The QUICC asserts this pin to indicate the level of an external interrupt during an
interrupt acknowledge cycle at level 5. Peripherals can use the IACKx
need not be used if the QUICC supplies the vector internally.
strobes instead of
monitoring the address bus and function codes to determine that an interrupt acknowledge
cycle is in progress and to obtain the current interrupt level. IACKx
lines need not be used
when the vector is generated internally by the QUICC.
2.1.7.3 ADDRESS STROBE (AS). This bidirectional signal is driven by the bus master to
indicate a valid address on the address bus. The function code, size, and read/write signals
are also valid when AS
is asserted.
2.1.7.4 DATA STROBE (DS). During a read cycle, this input/output signal is driven by the
bus master to indicate that an external device should place valid data on the data bus. During a write cycle, the data strobe indicates that valid data is on the data bus.
2.1.7.5 TRANSFER SIZE (SIZ1, SIZ0). These bidirectional signals are driven by the bus
master to indicate the number of operand bytes remaining to be transferred in the current
bus cycle (see Table 2-4).
Table 2-4. SIZx Encoding
SIZ1SIZ0Transfer Size
01Byte
10Word
113 Bytes
00Long Word
2.1.7.6 READ/WRITE (R/W). This active-high bidirectional signal is driven by the bus mas-
ter to indicate the direction of data transfer on the bus. A logic one indicates a read from a
slave device; a logic zero indicates a write to a slave device.
2-8
MC68360 USER’S MANUAL
MOTOROLA
Signal Descriptions
2.1.7.7 OUTPUT ENABLE/ADDRESS MULTIPLEX (OE/AMUX). This pin can be pro-
grammed as the output enable (OE
—During a read cycle, this output signal is driven by the bus master to indicate that an
OE
external device should place valid data on the data bus. OE
inversion of the R/W
signal.
) output or as the address multiplex output.
may used to save an external
AMUX—This output signal is driven by the DRAM controller to the external address multiplexer. AMUX need not be used if the DRAM addresses are multiplexed internally by the
QUICC.
2.1.7.8 BYTE WRITE ENABLE (WE3–WE0). See 2.1.1.2 Address Bus (A31–A28) for the
description.
2.1.8 Bus Arbitration Signals
The following signals are the four bus arbitration control signals used to determine the bus
master. Refer to Section 4 Bus Operation for more information concerning these signals.
2.1.8.1 BUS REQUEST (BR). This active-low input signal indicates that an external device
needs to become the bus master. This input is typically wire-ORed.
2.1.8.2 BUS GRANT (BG). Assertion of this active-low output signal indicates that the bus
master has relinquished the bus.
2.1.8.3 BUS GRANT ACKNOWLEDGE (BGACK). Assertion of this active-low input indi-
cates that an external device has become the bus master.
This pin can be programmed as the read-modify-write cycle output or as the initial configuration pin 0 input signal during system reset.
—This output signal identifies the bus cycle as part of an indivisible read-modify-write
RMC
operation; it remains asserted during all bus cycles of the read-modify-write operation to
indicate that bus ownership cannot be transferred.
NOTE
RMC is muxed with a CONFIG0 pin. RMC only functions when
the CPU32+ is enabled, and is an output unless an external
master ownes the bus, in which case it is an input.
CONFIG0—See 2.1.13 Initial Configuration Pins (CONFIG) for the description.
2.1.8.5 BUS CLEAR OUT/INITIAL CONFIGURATION/ROW ADDRESS SELECT
DOUBLE-DRIVE (BCLRO
/CONFIG1/RAS2DD). This pin can be programmed as the bus
clear out output or as the initial configuration pin 1 input signal during system reset or as the
RAS2DD
MOTOROLA
output double-drive signal.
MC68360 USER’S MANUAL
2-9
Signal Descriptions
BCLRO—This active-low open-drain output indicates that one of the QUICC internal bus
masters is requesting the external bus master to release the bus.
CONFIG1—See 2.1.13 Initial Configuration Pins (CONFIG) for the description.
RAS2
—See 2.1.5.1 Chip Select/Row Address Select (CS6–CS0/RAS6–RAS0) for the
description.
2.1.9 System Control Signals
The QUICC uses these signals to recover from an exception. Refer to Section 4 Bus Operation for more information on these signals.
2.1.9.1 SOFT RESET (RESETS). This active-low, open-drain, bidirectional signal is used to
initiate reset. An external reset signal (as well as a reset from the SIM60) resets the QUICC
as well as all external devices. A reset signal from the CPU32+ (asserted as part of the
RESET instruction) resets external devices only—the internal state of the CPU32+ is not
affected; other on-chip modules are reset, but the configuration is not altered. When
asserted by the QUICC, this signal is guaranteed to be asserted for a minimum of 512 clock
cycles. For more information see 4.7 Reset Operation.
2.1.9.2 HARD RESET (RESETH). This active-low, open-drain, bidirectional signal is used
to initiate reset. An external hard reset signal (as well as an hard reset from the SIM60)
resets the QUICC as well as all external devices and the internal state of the CPU32+; other
on-chip modules are reset as well as the QUICC configuration. When asserted by the
QUICC, this signal is guaranteed to be asserted for a minimum of 512 clock cycles. For more
information see 4.7 Reset Operation.
During a hard reset, the address, data, and bus control pins are all three-stated. The BG
output is the same as that on the BR
input. The general-purpose I/O pins are all configured
pin
as inputs. The NC4–NC1 pins are undefined outputs. The XTAL, CLKO1, and CLKO2 pins
are active outputs, except for CLKO1 which does not oscillate while the on-chip PLL is
attaining a lock. The RESETS
pin is an output.
2.1.9.3 HALT (HALT). This active-low, open-drain, bidirectional signal is asserted to sus-
pend external bus activity, to request a retry when used with BERR
step operation. As an output, HALT
indicates a double bus fault by the CPU32+.
, or to perform a single-
2.1.9.4 BUS ERROR (BERR). This active-low, open-drain, bidirectional signal indicates
that an invalid bus operation is being attempted or, when used with HALT
, that the bus mas-
ter should retry the current cycle.
2.1.10 Clock Signals
These signals are used by the QUICC for controlling or generating the system clocks. Refer
to Section 6 System Integration Module (SIM60) for more information on these clock signals.
2.1.10.1 SYSTEM CLOCK OUTPUTS (CLKO2–CLKO1). These output signals reflect the
general system clock and are used as the bus timing reference by external devices. CLKO1
2-10
MC68360 USER’S MANUAL
MOTOROLA
×
Signal Descriptions
is the general system clock. CLKO2 is 2× CLKO1 if the on-chip clock synthesizer PLL is
used, and is 1
CLKO1 otherwise.
2.1.10.2 CRYSTAL OSCILLATOR (EXTAL, XTAL). These two pins are the connections
for an external crystal to the internal oscillator circuit. If an external oscillator is used, it
should be connected to EXTAL, with XTAL left open.
2.1.10.3 EXTERNAL FILTER CAPACITOR (XFC). This pin is used to add an external
capacitor to the filter circuit of the PLL. The capacitor should be connected between XFC
and VCCSYN.
2.1.10.4 CLOCK MODE SELECT (MODCK1–MODCK0). The state of these active-high
input signals during reset selects the type of external clock that is used by the PLL in the
clock synthesizer to generate the system clocks. Table 2-5 lists the default values of the
PLL.
These signals are used for test or software debugging. Refer to Section 5 CPU32+ for more
information on these signals.
2.1.11.1 INSTRUCTION FETCH/DEVELOPMENT SERIAL INPUT (IFETCH/DSI). This
active-low output signal indicates when the CPU32+ is performing an instruction word
prefetch and when the instruction pipeline has been flushed. Additionally, this signal is the
serial input to the CPU32+ in its background debug mode to issue background commands,
etc.
2.1.11.2 INSTRUCTION PIPE/DEVELOPMENT SERIAL OUTPUT (IPIPE0/DSO). This
active-low output signal is used to track movement of words through the instruction pipeline.
Additionally, this signal is the serial output from the CPU32+ in its background debug mode
to issue background status, etc.
2.1.11.3 INSTRUCTION PIPE/ROW ADDRESS SELECT DOUBLE-DRIVE (IPIPE1/
RAS1DD). This active-low output signal is used to track movement of words through the
instruction pipeline. This signal also functions as a second output of the RAS1
signal to
increase fanout capability.
2.1.11.4 BREAKPOINT/DEVELOPMENT SERIAL CLOCK (BKPT
/DSCLK). This active-
low input signal is used to signal a hardware breakpoint to the CPU32+. Additionally, this
MOTOROLA
MC68360 USER’S MANUAL
2-11
Signal Descriptions
signal is the serial clock used to transfer commands/status to and from the CPU32+ during
background debug mode.
2.1.11.5 FREEZE/INITIAL CONFIGURATION (FREEZE/CONFIG2). This pin can be programmed as the freeze output or as the initial configuration pin 2 input signal during system
reset.
FREEZE—Assertion of this active-high output signal indicates that the CPU32+ has
acknowledged a breakpoint and has initiated background mode operation.
CONFIG2—See 2.1.13 Initial Configuration Pins (CONFIG) for the description.
2.1.12 Test Signals
The following signals are used with the on-board test logic . See Section 8 Scan Chain Test
Access Port for more information on the use of these signals.
2.1.12.1 TRI-STATE SIGNAL (TRIS
only when the CPU32+ is enabled, and it is not sampled during reset. When asserted, TRIS
immediately tristates the pins.
2.1.12.2 TEST RESET (TRST
2.1.12.3 TEST CLOCK (TCK). This input provides a clock for on-board test logic.
2.1.12.4 TEST MODE SELECT (TMS). This input controls test mode operations for on-
board test logic.
2.1.12.5 TEST DATA IN (TDI). This input is used for serial test instructions and test data
for on-board test logic.
2.1.12.6 TEST DATA OUT (TDO). This output is used for serial test instructions and test
data for on-board test logic.
). This input provides asynchronous reset to the test logic.
). TThe TRIS pin is enabled as a tristate control pin
2.1.13 Initial Configuration Pins (CONFIG)
The CONFIG2–CONFIG0 pins select the QUICC initial configuration during reset (see Table
2-6). They decide whether the CPU32+ core will be enabled or disabled, the global chip
select port will be 8-, 16-, or 32-bits, and the MBAR address will be $003FF00 or
$0033FF04. After reset, these pins may be programmed to their other function. The
CONFIG2–CONFIG0 lines have internal pullup resistors so that if they are left floating, the
default selection will be 111. See Section 6 System Integration Module (SIM60) for more
information.
2-12MC68360 USER’S MANUALMOTOROLA
Signal Descriptions
Table 2-6. Initial Configuration
Configuration Pins
CONFIG2/
FREEZE
000Slave mode; global CS 8-bit size; MBAR at $003FF00.
001
010Slave mode; global CS 16-bit size; MBAR at $003FF00.
011
100CPU enabled; global CS 32-bit size; MBAR at $003FF00.
101CPU enabled; global CS 16-bit size; MBAR at $003FF00.
110Slave mode; global CS disabled; MBAR at $003FF04.
111CPU enabled; global CS 8-bit size; MBAR at $003FF00. (Default)
CONFIG1/
BCLRO
CONFIG0/
RMC
Result
Slave mode; global CS 32-bit size; MBAR at $003FF00; not MC68040 companion mode; BR
MC68040 companion mode; global CS 32-bit size; MBAR at $003FF00; BR
input, BG
output.
output, BG input.
NOTE
All CONFIG pins do have an internal pull-up resistor during reset. If a configuration other than the default (CONFIG2-1 = 111)
is desired, these pins should be driven by an active open collector device during the assertion of RESETH.
2.1.14 Power Signals
The following signals are used for power and ground to the QUICC.
2.1.14.1 VCCSYN AND GNDSYN. These pins provide power and ground to the clock synthesizer. They should be bypassed to each other with a 0.1-µF capacitor. See the system
clock generation description in Section 6 System Integration Module (SIM60) for more
details.
2.1.14.2 VCCCLK AND GNDCLK. These pins provide power and ground to the clock output pins (CLKO1 and CLKO2). They should be bypassed to each other with a 0.1-µF capacitor. See the system clock generation description in Section 6 System Integration Module
(SIM60) for more detail.
2.1.14.3 GNDS1 AND GNDS2. These two pins are special ground pins that, if used properly, allow more aggressive timing to be provided on certain system bus pins. These pins
include AS
aggressive timing; the user does not need to modify any values in the section. GNDS1 and
GNDS2 should be connected to a quiet ground source or to a low-noise ground plane.
2.1.14.4 VCC AND GND. These pins are the rest of the power and ground connections for
the QUICC.
, CASx, and IPIPE. Section 10 Electrical Characteristics already shows the
2.1.14.5 NC4–NC1. These four pins should not be connected on the QUICC package. They
are reserved for future enhancements.
MOTOROLAMC68360 USER’S MANUAL2-13
Signal Descriptions
2.2 SYSTEM BUS SIGNAL INDEX IN SLAVE MODE
The CONFIG2–CONFIG0 pins are used to cause the QUICC to enter the slave mode. The
signal name, mnemonic, and a brief functional description are presented in Table 2-7. The
rest of the QUICC pins maintain their functionality in slave mode. See Section 4 Bus Operation for details.
Additionally, the QUICC provides special support for the MC68EC040 bus (or other
MC68040 family members) during slave mode. The MC68EC040 signals are marked in
boldface in the table. For more information on MC68EC040 bus operation, see M68040UM/
M68040 User's Manual
AD,
Operation and Section 6 System Integration Module (SIM60).
Table 2-7. System Bus Signal Index (Slave Mode)
. The QUICC MC68EC040 support is described in Section 4 Bus
Master Mode
Mnemonic
FC2–FC0
FC3
DS
DSACK1
DSACK0
BERR
TRIS
IPIPE0
/IFETCHBurst Address BADD3–BADD2
BR
BG
BGACK
/CONFIG0
RMC
Breakpoint Out BKPTO Signals a hardware breakpoint to the external CPU. (O)
BKPT
FREEZE/
CONFIG2
,4,6
IRQ1
Slave Mode
Signal Name
Function Codes/
Transfer Modifier
Function Code/
Transfer Type
Data Strobe/
Transfer Type
Data and Size Ac-
knowledge/
Transfer Acknowl-
edge
Data and Size Ac-
knowledge/
Transfer Burst In-
hibit
Bus Error/
Transfer Error
Acknowledge
Transfer StartTSIndicates the beginning of an MC68040 bus transfer. (I)
Bus Request
Bus Grant
Bus Grant Acknowl-
edge
Bus Busy
040 Lock Cycle/
Configuration 0
Freeze/Initial
Configuration Pin 2
Interrupt Request/
Interrupt Outputs
Slave Mode
MnemonicSlave Mode Function
FC2–FC0/
TM2–TM0
FC3/TT0
DS
DSACK1
DSACK0
TBI
BERR
TEA
BR
BR
BG
BG
BGACK
BB
LOCK
CONFIG0
MBARE
CONFIG2
IRQ6
IOUT2
IRQOUT
/TT1
,4,1/
–IOUT0/
Identifies the processor state and the address space of the current bus cycle (I/O), or indicates the MC68EC040 supplement information about the access (I).
Identifies the DMA address space of the current bus cycle (I/O),
or indicates the MC68EC040 general transfer type: normal,
MOVE16, alternate logical function code, and acknowledge
(I).
Data strobe (I/O), or indicates the MC68EC040 general transfer type: normal, MOVE16, alternate logical function code,
and acknowledge (I).
Provides asynchronous data transfers and dynamic bus sizing;
/TA
for the MC68EC040, asserted to acknowledge bus transfer.
(Both are open-drain I/O but driven high before three-stated.)
Provides asynchronous data transfers and dynamic bus sizing;
/
for the MC68EC040, indicates that a slave cannot handle a
line burst access. (Both are open-drain I/O but driven high be-
fore three-stated.)
BERR indicates an erroneous bus operation is being attempted
/
by the QUICC (open-drain I/O); TEA indicates the same for
the MC68EC040 (open-drain I/O)
Address lines 2,3 generated by the QUICC on behalf of the
MC68EC040, for MC68EC040 burst memory cycles. (O)
Asserted by the QUICC to request bus mastership (O.D. O), or
bus request input from the MC68040. (I)
Asserted by external logic to grant bus mastership to the QUICC
(I), or bus grant output to the MC68040. (O)
Indicates that an external device or the QUICC has assumed
bus mastership. (Open-drain I/O but driven high before threestated).
An MC68040 LOCK
/
obtaining the system bus during locked cycles (I), and the
initial QUICC configuration select (I).
/
Provides an MBAR access enable (I), or the initial QUICC configuration select. (I)
Provides an interrupt request to the QUICC interrupt controller
(I), or interrupt output signals (O) (either RQOUT
quest or IOUT2
signal input to prevent the QUICC from
–IOUT0 encoded).
as a single re-
2-14MC68360 USER’S MANUALMOTOROLA
Signal Descriptions
Table 2-7. System Bus Signal Index (Slave Mode) (Continued)
Master Mode
Mnemonic
PRTY0
PRTY1
PRTY2
/IACK5Autovector OutputAVECO
AVEC
IPIPE1/
RAS1DD
Slave Mode
Signal Name
Parity 0/Interrupt Out-
put 2
Parity 1/Interrupt Out-
put 1
Parity 2/
Interrupt Output 0/
Request Output
Bus Clear Input/
Row Address Select 1
Double-Drive
Slave Mode
MnemonicSlave Mode Function
PRTY0/IOUT2
PRTY1/IOUT1
PRTY2/IOUT0
RQOUT
BCLRI
RAS1DD
Parity signals for D31–D24 writes/reads from/to external memory bank (I/O), or interrupt output 2 signal (O).
Parity signals for D23–D16 writes/reads from/to external memory bank (I/O) or interrupt output 1 signal. (O)
Parity signals for D15–D8 writes/reads from/to external memory
/
bank (I/O), or interrupt output 0 signal (O), or RQOUT
gle interrupt request output (O).
Signal output to the external processor to generate an internal
vector number during an interrupt acknowledge cycle. (threestated O)
/
Signals that an external device requests the QUICC to release
the external bus (I), or row address select 1 double-drive (O).
as a sin-
2.3 ON-CHIP PERIPHERALS SIGNAL INDEX
The input and output system signals for the QUICC peripherals are listed in Table 2-8. The
signal name, mnemonic, and a brief functional description are presented. For more detail on
each signal, refer to the specific module section. The peripherals pins are divided into three
ports: A, B, and C.
Port A has 16 pins, port B has 18 pins, and port C has 12 pins. All the following signals are
multiplexed with either port A, B, or C. All pins may be inputs or outputs; in addition, some
pins may be configured to be open-drain. See 7.14 Parallel I/O Ports for further details.
Table 2-8. Peripherals Signal Index
GroupSignal NameMnemonicFunction
SCCReceive Data RXD4–RXD1Serial receive data input to the SCCs. (I)
Transmit Data TXD4–TXD1Serial transmit data output from the SCCs. (O)
Request to SendRTS4
Clear to SendCTS4
Carrier DetectCD4
Receive StartRSTRT1
Receive RejectRRJCT1
ClocksCLK8–CLK1Input clocks to the SCCs, SMCs, SI, and the baud rate generators. (I)
IDMADMA RequestDREQ2
DMA Acknowledge DACK2
DMA DoneDONE2
TIMERTimer GateTGATE2
Timer InputTIN4–TIN1
–RTS1
–CTS1
–CD1
–DREQ1 A request (input) to an IDMA channel to start an IDMA transfer. (I)
–DACK1
–DONE1
–TGATE1 An input to a timer that enables/disables the counting function. (I)
Request to send outputs indicate that the SCC is ready to transmit
data. (O)
Clear to send inputs indicate to the SCC that data transmission may
begin. (I)
Carrier detect inputs indicate that the SCC should begin reception of
data. (I)
This output from SCC1 identifies the start of a receive frame. Can be
used by an Ethernet CAM to perform address matching. (O)
This input to SCC1 allows a CAM to reject the current Ethernet frame
after it determines the frame address did not match. (I)
An acknowledgement (output) by the IDMA that an IDMA transfer is
in progress. (O)
A bidirectional signal that indicates the last IDMA transfer in a block
of data. (I/O)
Time reference input to the timer that allows it to function as a
counter. (I)
MOTOROLAMC68360 USER’S MANUAL2-15
Signal Descriptions
Table 2-8. Peripherals Signal Index (Continued)
GroupSignal NameMnemonicFunction
Timer Output TOUT4
SPI Master-In Slave-
SPI
SMCSMC Receive Data SMRXD2–SMRXD1 Serial data input to the SMCs. (I)
SMC Transmit Data SMTXD2–SMTXD1 Serial data output from the SMCs. (O)
SISI Receive DataL1RXDA, L1RXDB
BRG
PIPPort B 15–0PB15–PB0PIP Data I/O Pins
Baud Rate Genera-
SDMA
Out
SPI Master-Out
Slave-In
SPI ClockSPICLKOutput clock from the SPI master (O); input clock to the SPI slave (I).
SPI SelectSPISEL
SMC SyncSMSYN2–SMSYN1
SI Transmit Data L1TXDA, L1TXDB Serial output from the TDM channel A or channel B.
SI Receive Clock
SI Transmit Clock L1TCLKA, L1TCLKBInput transmit clock to TDM channel A or channel B.
SI Transmit
Sync Signals
SI Receive
Sync Signals
IDL Interface Re-
quest
SI Output Clock
SI Data StrobesL1ST4– L1ST1
tor Out 4–1
BRG Input ClockCLK2, CLK6
Strobe OutSTRBO
Strobe InSTRBI
SDMA Acknowl-
edge 2–1
BRGO4–BRGO1
SDACK2
–TOUT1
SPIMISO
SPIMOSI
L1RCLKA,
L1RCLKB
L1TSYNCA,
L1TSYNCB
L1RSYNCA,
L1RSYNCB
L1RQA, L1RQB
L1CLKOA,
L1CLKOB
–SDACK1
Output waveform (pulse or toggle) from the timer as a result of a reference value being reached. (O)
Serial data input to the SPI master (I); serial data output from an SPI
slave (O).
Serial data output from the SPI master (O).; serial data input to an
SPI slave (I).
SPI slave select input. (I)
SMC synchronization signal. (I)
Serial input to the time division multiplexed (TDM) channel A or
channel B.
Input receive clock to TDM channel A or channel B.
Input transmit data sync signal to the TDM channel A or channel B.
Input receive data sync signal to TDM channel A or channel B.
IDL interface request to transmit on the D channel. Output from the
SI.
Output serial data rate clock. Can output a data rate clock when the
input clock is 2x the data rate.
Serial data strobe outputs can be used to gate clocks to external de-
vices that do not have a built-in time slot assigner (TSA).
Baud rate generator output clock allows baud rate generator to be
used externally.
Baud rate generator input clock from which BRG will derive the baud
rates.
This input causes the PIP output data to be placed on the PIP data
pins.
This input causes data on the PIP data pins to be latched by the PIP
as input data.
SDMA output signals used in RISC receiver to mark fields in the
Ethernet receive frame.
2-16MC68360 USER’S MANUALMOTOROLA
Signal Descriptions
2-17MC68360 USER’S MANUALMOTOROLA
Signal Descriptions
2-18MC68360 USER’S MANUALMOTOROLA
SECTION 3
QUICC MEMORY MAP
The following tables present a programmer’s model (register map) of all registers in the
QUICC. For more information about a particular register, refer to the description for the module or sub-module indicated in the right column. The address column indicates the offset of
the register from the address stored in the module base address register (MBAR). This register in the SIM block controls the location of all internal memory/registers as well as their
supervisor/user access space (see Section 6 System Integration Module (SIM60)). Bold letters mark registers that are restricted to supervisor access. Other registers are programmable to exist in either supervisor or user space. Registers that are reset only by hard reset are
marked with an H in the reset value column. All of the registers are memory-mapped.
All internal memory and registers occupy a single 8-Kbyte memory block that is relocatable
along 8-Kbyte boundaries. The location is fixed by writing the desired base address of the
8-Kbyte memory block to the MBAR using the MOVES instruction. The MBAR is the only
exception since it resides at a fixed location in $03FF00.
The 8-Kbyte block is divided into two 4-Kbyte sections. The RAM occupies the first section;
the internal registers occupy the second section. The location of the QUICC registers is
shown in Figure 3-1.
MOTOROLA
MC68360 USER’S MANUAL
3-1
QUICC Memory Map
MBAR (SIM)
DPRBASE (DUAL-PORT RAM BASE)
4KB
4KB
INTERNAL
REGISTERS
Figure 3-1. QUICC Memory Map
3.1 DUAL-PORT RAM MEMORY MAP
DUAL-PORT RAM
REGB (REGISTER BASE) = DPRBASE + 4K
The internal 2816-byte (2560-byte on REV A and B mask) dual-port RAM is partitioned to
1792 bytes (1536 bytes on REV A and B mask) of system RAM, 256-byte microcode scratch
area, and 768 bytes of parameter RAM (see Table 3-1). Its base address, called dual-port
RAM base (DPRBASE), is the address pointed to by the MBAR.
NOTE
Rev A mask is C63T, Rev B mask are C69T, and F35G
The system RAM may be used for microcode program area, data area, and buffer descriptors (BDs). It may be partitioned in several ways, allowing programmable partition sizes to
fit the system requirements. This is described in Section 7 Communication Processor Module (CPM).
3-2
MC68360 USER’S MANUAL
MOTOROLA
QUICC Memory Map
The parameter RAM contains the protocol-specific parameters. For detailed information
about the use of the buffer descriptors and protocol parameters in a specific protocol, see
Section 7 Communication Processor Module (CPM).
Table 3-1. Dual-Port RAM Map
AddressSizeBlockDescription
DPRBASE + 0
DPRBASE + 3FF
DPRBASE + 400
DPRBASE + 5FF
DPRBASE + 600
DPRBASE + 6FF
DPRBASE + 700
DPRBASE + BFF
DPRBASE + C00
DPRBASE + CBF
DPRBASE + CC0
DPRBASE + CFF
DPRBASE + D00
DPRBASE + DBF
DPRBASE + DC0
DPRBASE + DFF
DPRBASE + E00
DPRBASE + EBF
DPRBASE + EC0
DPRBASE + EFF
DPRBASE + F00
DPRBASE + FBF
DPRBASE + FC0
DPRBASE + FFF
1024 BytesDual-Port RAM
512 BytesDual-Port RAMUser Data / BDs
256 BytesDual-Port RAM
256 BytesDual-Port RAM User Data / BDs
192 BytesDual-Port RAM
ReservedReserved
192 BytesDual-Port RAM
ReservedReserved
192 BytesDual-Port RAM
ReservedReserved
192 BytesDual-Port RAM
ReservedReserved
User Data / BDs /
Microcode Program
User Data / BDs /
Microcode Scratch
Parameter RAM
Page 1
Parameter RAM
Page 2
Parameter RAM
Page 3
Parameter RAM
Page 4
3.2 CPM SUB-MODULE BASE ADDRESSES
Within the four parameter RAM pages are the base addresses for the CPM sub-modules
such as the SCCs, SMCs, etc. The base addresses for the sub-modules are shown in Table
3-2. See the particular sub-module description within Section 7 Communication Processor
Module (CPM) for further information.
In addition to the internal dual-port RAM, there are a number of internal registers to support
the functions of the various CPU32+ core peripherals. The internal registers (see Table 3-3
and Table 3-4) are memory-mapped registers offset from the register base (REGBASE)
pointer. REGBASE (abbreviated REGB) = DPRBASE + 4K. All registers are located on the
internal IMB.
NOTES
All registers that are underlined in the following tables are special registers called event registers. In these registers, bits are
set by the QUICC and cleared by the user. To clear a bit, the
user must write a one to that bit. For example, to clear bit 2 in
SCCE1, the MOVE.B #$04,SCCE1 instruction may be used. Do
NOT use read-modify-write instructions (such as BSET, BCLR,
AND, OR, etc.) with these registers, or ALL bits in that register
will inadvertently be cleared. See the individual register descriptions for more information.
All undefined and reserved bits within registers and parameter
RAM values written by the user should be written with zero to allow for future enhancements to the device.
Bold letters mark registers that are restricted to supervisor access.
3.3.1 SIM Registers Memory Map
Table 3-3 lists the SIM registers memory map.
3-4
MC68360 USER’S MANUAL
MOTOROLA
QUICC Memory Map
Table 3-3. QUICC SIM Registers Memory Map
Address NameWidth Description Reset ValueBlock
REGB + 0000MCR32Module Configuration Register0000 7cffHSIM
REGB + 0004 32Reserved
REGB + 0008AVR8Autovector Register00H
REGB + 0009RSR8Reset Status RegisterH/S
REGB + 000a16Reserved
REGB + 000cCLKOCR8CLKO Control Registerf(MODCK1) H
REGB + 000dReserved
REGB + 0010PLLCR16PLL Control Registerf(MODCK1–0) H
REGB + 001216Reserved
REGB + 0014CDVCR16Clock Divider Control Register0000H
REGB + 0016PEPAR16Port E Pin Assignment Register0000H
REGB + 0018
REGB + 550PADIR16Port A Data Direction Register0000H
REGB + 552PAPAR16Port A Pin Assignment Register0000H
REGB + 554PAODR16Port A Open Drain Register0000H
REGB + 556PADAT16Port A Data RegisterXXXX
REGB + 558
to
REGB + 55f
REGB + 560PCDIR16Port C Data Direction Register0000H
REGB + 562PCPAR16Port C Pin Assignment Register0000H
REGB + 564PCSO16Port C Special Options0000H
REGB + 566PCDAT16Port C Data RegisterXXXX
REGB + 568PCINT16Port C Interrupt Control Register0000H
REGB + 56a
to
REGB + 57f
REGB + 580TGCR16Timer Global Configuration Register0000HTIMER
This section provides a functional description of the system bus, the signals that control it,
and the bus cycles provided for data transfer operations. It also describes the error and halt
conditions, bus arbitration, and reset operation. Operation of the external bus is the same
whether the QUICC or an external device is the bus master; the names and descriptions of
bus cycles are from the viewpoint of the bus master. For exact timing specifications, refer to
Section 10 Electrical Characteristics.
NOTE
The bus operation of the QUICC is very similar to the bus operation of the MC68030 and the MC68340. Much of the text and
figures of the bus operation of those devices is common to this
section.
The QUICC also supports the MC68EC040 (or other M68040 family members) as an external bus master. The MC68EC040 can access QUICC registers and use QUICC peripherals.
The QUICC has a glueless MC68EC040 interface and special logic for acting as the
MC68EC040 memory controller, interrupt controller, and the provider of system protection
logic. The MC68EC040 bus operation is described in the
QUICC is the bus master of an M68040 system, its bus operation remains the same when
it is the only bus master in the system. See 4.6.7 Internal Accesses
timing diagram of the MC68EC040 internal read/write cycles (i.e., MC68EC040 reading/writing the QUICC) and interrupt acknowledge cycles. See 6.11 General-Purpose Chip-Select
Overview (SRAM Banks)
information on the timing diagrams of MC68EC040 DRAM and SRAM accesses.
The QUICC architecture supports byte, word, and long-word operands allowing access to
8-, 16-, and 32-bit data ports through the use of asynchronous cycles controlled by the size
outputs (SIZ1, SIZ0) and data size acknowledge inputs (DSACK1
The QUICC allows byte, word, and long-word operands to be located in memory on any byte
boundary. For a misaligned transfer, more than one bus cycle may be required to complete
the transfer, regardless of port size. For a port less than 32 bits wide, multiple bus cycles
may be required for an operand transfer due to either misalignment or a port width smaller
than the operand size. Instruction words and their associated extension words must be
aligned on word boundaries. The user should be aware that misalignment of word or longword operands can cause the CPU32+ to perform multiple bus cycles for operand transfers;
therefore, processor performance is optimized if word and long-word memory operands are
and 6.12 DRAM Controller Overview (DRAM Banks)for more
M68040 User Manual
for a description and
, DSACK0).
. When the
MOTOROLA
MC68360 USER’S MANUAL
4-1
Bus Operation
aligned on word or long-word boundaries, respectively. The QUICC IDMAs, when used,
reduce the misalignment overhead to a minimum.
4.1 BUS TRANSFER SIGNALS
The bus transfers information between the QUICC and external memory or a peripheral
device. External devices can accept or provide 8, 16, or 32 bits in parallel and must follow
the handshake protocol described in this section. The maximum number of bits accepted or
provided during a bus transfer is defined as the port width. The QUICC contains an address
bus that specifies the address for the transfer and a data bus that transfers the data. Control
signals indicate the beginning and type of the cycle as well as the address space and size
of the transfer. The selected device then controls the length of the cycle with the signal(s)
used to terminate the cycle. Strobe signals, one for the address bus and another for the data
bus, indicate the validity of the address and provide timing information for the data.
Both asynchronous and synchronous operation is possible for any port width. In asynchronous operation, the bus and control input signals are internally synchronized to the QUICC
clock, introducing a delay. This delay is the time required for the QUICC to sample an input
signal, synchronize the input to the internal clocks, and determine whether it is high or low.
In synchronous mode, the bus and control input signals must be timed to setup and hold
times. Since no synchronization is needed, bus cycles can be completed in three clock
cycles in this mode. Additionally, using the fast-termination option of the chip-select signals,
two-clock operation is possible.
Furthermore, for all inputs, the QUICC latches the level of the input during a sample window
around the falling edge of the clock signal. This window is illustrated in Figure 4-1, where t
and t
are the input setup and hold times, respectively. To ensure that an input signal is rec-
h
su
ognized on a specific falling edge of the clock, that input must be stable during the sample
window. If an input makes a transition during the window time period, the level recognized
by the QUICC is not predictable; however, the QUICC always resolves the latched level to
either a logic high or low before using it. In addition to meeting input setup and hold times
for deterministic operation, all input signals must obey the protocols described in this section.
t
su
t
h
CLK
EXT
4-2
SAMPLE WINDOW
Figure 4-1. Input Sample Window
MC68360 USER’S MANUAL
MOTOROLA
Bus Operation
4.1.1 Bus Control Signals
The QUICC initiates a bus cycle by driving the address, size, function code, and read/write
outputs. At the beginning of a bus cycle, SIZ1 and SIZ0 are driven with the FC signals. SIZ1
and SIZ0 indicate the number of bytes remaining to be transferred during an operand cycle
(consisting of one or more bus cycles). Table 4-3 lists the encoding of SIZ1 and SIZ0. These
signals are valid while AS
is asserted.
The R/W
beginning of a bus cycle, R/W
signal determines the direction of the transfer during a bus cycle. Driven at the
is valid while AS is asserted. R/W only transitions when a write
cycle is preceded by a read cycle or vice versa. The signal may remain low for consecutive
write cycles.
The RMC
signal is asserted at the beginning of the first bus cycle of a read-modify-write
operation and remains asserted until completion of the final bus cycle of the operation.
4.1.2 Function Codes (FC3–FC0)
The FCx signals are outputs that indicate one of 16 address spaces to which the address
applies. Fifteen of these spaces are designated as either a normal or DMA cycle, user or
supervisor, and program or data spaces. One other address space is designated as CPU
space to allow the CPU32+ to acquire specific control information not normally associated
with read or write bus cycles. The FCx signals are valid while AS
Function codes (see Table 4-1) can be considered as extensions of the 32-bit address that
can provide up to eight different 4-Gbyte address spaces. Function codes are automatically
generated by the CPU32+ to select address spaces for data and program at both user and
supervisor privilege levels, and a CPU address space for processor functions. User programs access only their own program and data areas to increase protection of system integrity and can be restricted from accessing other information. The S-bit in the CPU32+ status
register is set for supervisor accesses and cleared for user accesses to provide differentiation. Refer to 4.4 CPU Space Cycles for more information.
is asserted.
MOTOROLA
Table 4-1. Address Space Encoding
Function Code Bits
3210Address Spaces
0000Reserved (Motorola)
0001User Data Space
0010User Program Space
0011Reserved (User)
0100Reserved (Motorola)
0101Supervisor Data Space
0110Supervisor Program Space
0111Supervisor CPU Space
1xxxDMA space
MC68360 USER’S MANUAL
4-3
Bus Operation
4.1.3 Address Bus (A31–A0)
The address bus signals are outputs that define the address of the byte (or the most significant byte) to be transferred during a bus cycle. The QUICC places the address on the bus
at the beginning of a bus cycle. The address is valid while AS
is asserted.
4.1.4 Address Strobe (AS)
AS is an output timing signal that indicates the validity of an address on the address bus and
of many control signals. AS
ning of a bus cycle.
is asserted approximately one-half clock cycle after the begin-
4.1.5 Data Bus (D31-D0)
The data bus is a bidirectional, nonmultiplexed, parallel bus that contains the data being
transferred to or from the QUICC. A read or write operation may transfer 8, 16, 24, or 32 bits
of data (one, two, three, or four bytes) in one bus cycle. During a read cycle, the data is
latched by the QUICC on the last falling edge of the clock for that bus cycle. For a write cycle,
all 32 bits of the data bus are driven, regardless of the port width or operand size. The
QUICC places the data on the data bus approximately one-half clock cycle after AS
asserted in a write cycle.
is
4.1.6 Data Strobe (DS)
DS is an output timing signal that applies to the data bus. For a read cycle, the QUICC
asserts DS
For a write cycle, DS
QUICC asserts DS
cycle.
and AS simultaneously to signal the external device to place data on the bus.
signals to the external device that the data to be written is valid. The
approximately one clock cycle after the assertion of AS during a write
4.1.7 Output Enable (OE)
OE is an output timing signal that applies to the data bus. On a read cycle, the QUICC
asserts OE
cycles with timing similar to AS
is not shown in the diagrams in this section. Use AS timing instead during read cycles.
OE
to signal the external device to place data on the bus. OE is asserted during read
.
4.1.8 Byte Write Enable (WE0, WE1, WE2, WE3)
The upper upper write enable (WE0) indicates that the upper eight bits of the data bus (D31–
D24) contain valid data during a write cycle. The upper middle write enable (WE1
that the upper middle eight bits of the data bus (D23–D16) contain valid data during a write
cycle. The lower middle write enable (WE2
data bus (D15–D8) contain valid data during a write cycle. The lower write enable (WE3
indicates that the lower eight bits of the data bus contain valid data during a write cycle.
) indicates that the lower middle eight bits of the
) indicates
)
4-4
MC68360 USER’S MANUAL
MOTOROLA
Bus Operation
The equations of the byte write enables for 32-bit port (16BM = 1) are as follows:
WE0
= R/W + AS + A0 + A1
WE1 = R/W + AS + not {(A1 * SIZ0) + (A0 * A1) + (A1 * SIZ1)}
WE2 = R/W + AS + not {(A0 * A1) + (A1 * SIZ0 * SIZ1) + (A1 * SIZ0 * SIZ1) +
These signals have the same timing as AS. The equations are valid only for a 32-bit port.
The equations of the byte write enables for 16-bit port (B16M = 0) are as follows:
WE0
= R/W + AS + A0
WE1 = R/W + AS + (A0 * SIZ0 * SIZ1)
These signals have the same timing as AS. The equations are valid only for a 16-bit port.
signals are not shown in the diagrams in this section. Use AS timing instead during
WEx
write cycles. The particular WEx
signals that are active in a given bus cycle depend on which
bytes are being written.
NOTE
Note that the WE signals are not affected by dynamic bus sizing.
External assertion of DSACKx
will have no effect on which WEx
signal gets asserted.
When 16-bit mode is selected and Bit 7 of PEPAR is set, WE2
and WE3 are used as address lines A29 and A28 respectively.
4.1.9 Bus Cycle Termination Signals
The following signals can terminate a bus cycle.
4.1.9.1 DATA TRANSFER AND SIZE ACKNOWLEDGE (DSACK1 AND DSACK0). Dur-
ing bus cycles, external devices assert DSACK1
During a read cycle, this signals the QUICC to terminate the bus cycle and to latch the data.
During a write cycle, this indicates that the external device has successfully stored the data
and that the cycle may terminate. These signals also indicate to the QUICC the size of the
port for the bus cycle just completed (see Table 4-3). Refer to 4.3.1 Read Cycle for timing
relationships of DSACK1
and DSACK0.
Additionally, the system integration module (SIM60) can be programmed to internally generate DSACK1
and DSACK0 for external accesses, eliminating logic required to generate
these signals. The SIM60 can alternatively be programmed to generate a fast termination,
providing a two-cycle external access. Refer to 4.2.6 Fast Termination Cycles
information on these cycles.
and/or DSACK0 as part of the bus protocol.
for additional
4.1.9.2 BUS ERROR (BERR). This signal is also a bus cycle termination indicator and can
be used in the absence of DSACKx
asserted in conjunction with DSACKx
MOTOROLA
to indicate a bus error condition. BERR can also be
to indicate a bus error condition, provided it meets the
MC68360 USER’S MANUAL
4-5
Bus Operation
appropriate timing described in this section and in Section 10 Electrical Characteristics.
Additionally, BERR
and HALT can be asserted together to indicate a retry termination. Refer
to 4.5 Bus Exception Control Cycles for additional information on the use of these signals.
See the memory controller description in Section 6 System Integration Module (SIM60) for
precautions about asserting BERR
externally too early during DRAM and SRAM cycles con-
trolled by the memory controller.
The internal bus monitor can be used to generate the BERR
signal for internal and external
transfers in all the following descriptions.
4.1.9.3 AUTOVECTOR (AVEC). This signal can be used to terminate interrupt acknowl-
edge cycles, indicating that the QUICC should internally generate a vector (autovector)
number to locate an interrupt handler routine. AVEC
can be generated either externally or
internally by the SIM60 (refer to Section 6 System Integration Module (SIM60) for additional
information). AVEC
is ignored during all other bus cycles.
4.2 DATA TRANSFER MECHANISM
The QUICC supports byte, word, and long-word operands, allowing access to 8-,16-, and
32-bit data ports through the use of asynchronous cycles controlled by DSACK1
DSACK0
. The QUICC also supports byte, word, and long-word operands, allowing access
and
to 8-, 16, and 32-bit data ports through the use of synchronous cycles controlled by the fasttermination capability of the SIM60.
4.2.1 Dynamic Bus Sizing
The QUICC dynamically interprets the port size of the addressed device during each bus
cycle, allowing operand transfers to or from 8-, 16-, and 32-bit ports. During an operand
transfer cycle, the slave device signals its port size (byte, word, or long word) and indicates
completion of the bus cycle to the QUICC through the use of the DSACKx
Table 4-2 for DSACKx
encoding.
inputs. Refer to
Table 4-2. DSACKx Encoding
DSACK1DSACK0Result
11Insert Wait States in Current Bus Cycle
10Complete Cycle—Data Bus Port Size is 8 Bits
01Complete Cycle—Data Bus Port Size is 16 Bits
00Complete Cycle—Data Bus Port Size is 32 Bits
For example, if the QUICC is executing an instruction that reads a long-word operand from
a long-word aligned address, it attempts to read 32 bits during the first bus cycle. (Refer to
4.2.2 Misaligned Operands for the case of a word or byte address.) If the port responds that
it is 32 bits wide, the QUICC latches all 32 bits of data and continues with the next operation.
If the port responds that it is 16 bits wide, the QUICC latches the 16 bits of valid data and
runs another bus cycle to obtain the other 16 bits. The operation for an 8-bit port is similar,
but requires four read cycles. The addressed device uses the DSACKx
4-6
MC68360 USER’S MANUAL
signals to indicate
MOTOROLA
Bus Operation
the port width. For instance, a 32-bit device always returns DSACKx for a 32-bit port (regardless of whether the bus cycle is a byte, word, or long-word operation).
Dynamic bus sizing requires that the portion of the data bus used for a transfer to or from a
particular port size be fixed. A 32-bit port must reside on data bus bits 0–31, a 16-bit port
must reside on data bus bits 16–32, and an 8-bit port must reside on data bus bits 24–31.
This requirement minimizes the number of bus cycles needed to transfer data to 8- and 16bit ports and ensures that the QUICC correctly transfers valid data. The QUICC always
attempts to transfer the maximum amount of data on all bus cycles; for a long-word operation, it always assumes that the port is 32 bit wide when beginning the bus cycle.
The bytes of operands are designated as shown in Figure 4-2. The most significant byte of
a long-word operand is OP0, and OP3 is the least significant byte. The two bytes of a wordlength operand are OP2 (most significant) and OP3. The single byte of a byte-length operand is OP3. These designations are used in the figures and descriptions that follow.
310
LONG-WORD OPERAND
0P00P10P20P3
150
WORD OPERAND
0P20P3
70
BYTE OPERAND
0P3
Figure 4-2. Internal Operand Representation
Figure 4-3 shows the required organization of data ports on the QUICC bus for 8, 16, and
32-bit devices. The four bytes shown are connected through the internal data bus and data
multiplexer to the external data bus. This path is the means through which the QUICC supports dynamic bus sizing and operand misalignment. Refer to 4.2.2 Misaligned Operands
for the definition of misaligned operand. The data multiplexer establishes the necessary
connections for different combinations of address and data sizes.
The multiplexer takes the four bytes of the 32-bit bus and routes them to their required positions. For example, OP0 can be routed to D24–D31, as would be the normal case, or it can
be routed to any other byte position to support a misaligned transfer. The same is true for
any of the operand bytes. The positioning of bytes is determined by the size and address
outputs.
MOTOROLA
MC68360 USER’S MANUAL
4-7
Bus Operation
0P00P10P20P3
INCREASING
MEMORY
ADDRESSES
REGISTER
MULTIPLEXER
EXTERNAL
DATA BUS
ADDRESS
xxxxxxxx0
xxxxxxxx0
xxxxxxxx0
0123
ROUTING AND DUPLICATION
INTERNAL TO
D31–D24
BYTE 0BYTE 1BYTE 2BYTE 3
BYTE 0
2
1
2
3
BYTE 2
BYTE 0
BYTE 1
BYTE 2
BYTE 3
D23–D16
BYTE 1
BYTE 3
8-BIT PORT
D15–D8
16-BIT PORT
D7–D0
THE MC68360
EXTERNAL BUS
32-BIT PORT
Figure 4-3. QUICC Interface to Various Port Sizes
The SIZ0 and SIZ1 outputs indicate the remaining number of bytes to be transferred during
the current bus cycle (see Table 4-3).
Table 4-3. SIZx Encoding
SIZ1SIZ0Size
01Byte
10Word
113 Bytes
00Long Word
The number of bytes transferred during a write or read bus cycle is equal to or less than the
size indicated by the SIZx outputs, depending on port width and operand alignment. For
example, during the first bus cycle of a long-word transfer to a word port, the SIZx outputs
indicate that four bytes are to be transferred, although only two bytes are moved on that bus
cycle.
A0 and A1 also affect operation of the data multiplexer. During an operand transfer, A2-A31
indicate the long-word base address of that portion of the operand to be accessed; A0 and
A1 indicate the byte offset from the base. Table 4-4 lists the encoding of A0 and A1 and the
corresponding byte offset from the long-word base.
4-8
MC68360 USER’S MANUAL
MOTOROLA
Bus Operation
Table 4-4. Address Offset Encoding
A1A0Offset
00+0 Byte
01+1 Byte
10+2 Bytes
11+3 Bytes
Table 4-5 lists the bytes required on the data bus for read cycles. The entries shown as OPx
are portions of the requested operand that are read during that bus cycle and are defined
by SIZ0, SIZ1, A0, and A1 for the bus cycle. Bytes labeled x are “don’t cares” and are not
required during that read cycle.
Table 4-6 lists the combinations of SIZ0, SIZ1, A0, and A1 and the corresponding pattern of
the data transfer for write cycles from the internal multiplexer of the QUICC to the external
data bus. Bytes labeled x are “don't care.”
Figure 4-4 shows the transfer of a long-word operand to a word port. In the first bus cycle,
the QUICC places the four operand bytes on the external bus. Since the address is longword aligned in this example, the multiplexer follows the pattern in the entry of Table 4-6 corresponding to SIZ0, SIZ1, A0, A1 = 0000. The port latches the data on bits D16–D31 of the
data bus, asserts DSACK1
(DSACK0 remains negated), and the QUICC terminates the bus
cycle. It then starts a new bus cycle with SIZ0, SIZ1, A0, A1 = 1010 to transfer the remaining
MOTOROLA
MC68360 USER’S MANUAL
4-9
Bus Operation
16 bits. SIZ0 and SIZ1 indicate that a word remains to be transferred; A0 and A1 indicate
that the word corresponds to an offset of two from the base address. The multiplexer follows
the pattern corresponding to this configuration of the size and address signals and places
the two least significant bytes of the long word on the word portion of the bus (D16–D31).
The bus cycle transfers the remaining bytes to the word-size port. Figure 4-5 shows the timing of the bus transfer signals for this operation.
Table 4-6. QUICC Internal to External Data Bus Multiplexer—Write Cycle
Transfer SizeSizeAddressExternal Data Bus Connection
SIZ1SIZ0A1A0D31:D24D23:D16D15:D8D7:D0
Byte0100OP3 xxx
0101OP3OP3 xx
0110OP3 x OP3 x
0111OP3OP3 x OP3
Word1000OP2OP3 xx
1001OP2OP2OP3 x
1010OP2OP3OP2OP3
1011OP2OP2 x OP2
3 Bytes1100OP1OP2OP3 x
1101OP1OP1OP2OP3
1110OP1OP2OP1OP2
1111OP1 x OP2OP1
Long Word0000OP0OP1OP2OP3
0001OP0OP0OP1OP2
0010OP0OP1OP0OP1
0011OP0OP0 x OP0
310
0P00P10P20P3
DATA BUSD31D16
WORD MEMORY
MSBLSB
0P00P1
0P20P3
LONG-WORD OPERAND
SIZ1SIZ0
0000
1010
MC68360
A1A0
MEMORY CONTROL
DSACK1DSACK0
LH
LH
Figure 4-4. Example of Long-Word Transfer to Word Port
4-10
MC68360 USER’S MANUAL
MOTOROLA
S0S2S4S0S2S4
CLKO1
A31–A2
FC3–FC0
SIZ1
SIZ0
R/W
A0
AS
A1
Bus Operation
DS
DSACK1
DSACK0
D31–D24
D23–D16
0P0
0P1
WORD WRITE
LONG-WORD OPERAND WRITE TO 16-BIT PORT
WORD WRITE
0P2
0P3
Figure 4-5. Long-Word Operand Write Timing (16-Bit Data Port)
Figure 4-6 shows a word transfer to an 8-bit bus port. Like the preceding example, this
example requires two bus cycles. Each bus cycle transfers a single byte. The size signals
for the first cycle specify two bytes; for the second cycle, they specify one byte. Figure 4-7
shows the associated bus transfer signal timing.
4.2.2 Misaligned Operands
Since operands may reside at any byte boundaries, they may be misaligned. A byte operand
is properly aligned at any address; a word operand is misaligned at an odd address; a long
word is misaligned at an address that is not evenly divisible by four. The MC68302,
MC68000/MC68008, MC68010, and MC68340 implementations allow long-word transfers
on odd-word boundaries but force exceptions if word or long-word operand transfers are
attempted at odd-byte addresses. Although the QUICC does not enforce any alignment
restrictions for data operands (including PC relative data addresses), some performance
degradation occurs when additional bus cycles are required for long-word or word operands
MOTOROLA
MC68360 USER’S MANUAL
4-11
WORD OPERAND
150
Bus Operation
that are misaligned. For maximum performance, data items should be aligned on their natural boundaries. All instruction words and extension words must reside on word boundaries.
Attempting to prefetch an instruction word at an odd address causes an address error
exception.
0P20P3
DATA BUSD31D24
BYTE MEMORY
0P2
0P3
SIZ1SIZ0A1
1000
0101
MC68360
A0
MEMORY CONTROL
DSACK1DSACK0
Figure 4-6. Example of Word Transfer to Byte Port
LH
LH
4-12
MC68360 USER’S MANUAL
MOTOROLA
CLKO1
A31–A2
A0
FC3–FC0
SIZ1
SIZ0
R/W
AS
A1
S0S2S4S0S2S4
Bus Operation
DS
DSACK1
DSACK0
D31–D24
D23–D16
D15–D8
D7–D0
BYTE WRITE
OP2
OP3
OP2
OP3
WORD OPERAND WRITE
OP3
OP3
OP3
OP3
BYTE WRITE
Figure 4-7. Word Operand Write Timing (8-Bit Data Port)
Figure 4-8 shows the transfer of a long-word operand to an odd address in word-organized
memory, which requires three bus cycles. For the first cycle, the SIZx signals specify a longword transfer, and the address offset (A2–A0) is 001. Since the port width is 16 bits, only the
first byte of the long word is transferred. The slave device latches the byte and acknowledges the data transfer, indicating that the port is 16 bits wide. When the processor starts
the second cycle, the SIZx signals specify that three bytes remain to be transferred with an
address offset (A2–A0) of 010. The next two bytes are transferred during this cycle. The processor then initiates the third cycle, with the SIZx signals indicating one byte remaining to
be transferred. The address offset (A2–A0) is now 100; the port latches the final byte, and
the operation is complete. Figure 4-9 shows the associated bus transfer signal timing.
MOTOROLA
MC68360 USER’S MANUAL
4-13
Bus Operation
310
0P00P10P20P3
D31D16
DATA BUS
WORD MEMORY
MSB
XXX
0P10P2
LONG-WORD OPERAND
MC68360
LSB
0P0
XXXOP3LH
SIZ1SIZ0A2A1
0000
1101
01100
A0
MEMORY CONTROL
DSACK1DSACK0
1
0
L
L
H
H
Figure 4-8. Misaligned Long-Word Transfer to Word Port Example
4-14
MC68360 USER’S MANUAL
MOTOROLA
Bus Operation
S0S2S4S0S2S4
CLKO1
A31–A2
A1
A0
FC3–FC0
SIZ1
SIZ0
R/W
AS
DS
DSACK1
S0S2S4
DSACK0
D31–D24
D23–D16
D15–D8
D7–D0
BYTE WRITE
0P0
0P0
0P1
0P2
WORD WRITE
LONG-WORD OPERAND WRITE
0P1
0P2
0P1
0P2
0P3
0P3
0P3
0P3
BYTE WRITE
Figure 4-9. Misaligned Long-Word Transfer to Word Port Timing
Figure 4-10 and Figure 4-11 show a word transfer to an odd address in word-organized
memory. This example is similar to the one shown in Figure 4-8 and Figure 4-9 except that
the operand is word sized and the transfer requires only two bus cycles.
MOTOROLA
MC68360 USER’S MANUAL
4-15
Bus Operation
15
OP2OP3
WORD MEMORY
MSBLSB
XXX
0P3
DATA BUSD31D16
0P2
XXX
0WORD OPERAND
SIZ1 SIZ0 A2 A1
1 0 0 0 1
0 1 0 1 0
MC68360
A0
MEMORY CONTROL
DSACK1 DSACK0
LH
LH
Figure 4-10. Misaligned Word Transfer to Word Port Example
4-16
MC68360 USER’S MANUAL
MOTOROLA
S0S2S4S0
S4
CLKO1
A31–A2
A1
A0
FC3–FC0
SIZ1
SIZ0
R/W
S2
Bus Operation
AS
DS
DSACK1
DSACK0
D31–D24
D23–D16
D15–D8
D7–D0
0P2
0P2
0P3
0P2
WORD WRITE
WORD OPERAND WRITE TO A1/A0 = 01
0P3
0P3
0P3
0P3
BYTE WRITE
Figure 4-11. Misaligned Word Transfer to Word Port Timing
Figure 4-12 and Figure 4-13 show an example of a long-word transfer to an odd address in
long-word-organized memory. In this example, a long-word access is attempted beginning
at the least significant byte of a long-word-organized memory. Only one byte can be transferred in the first bus cycle. The second bus cycle then consists of a three-byte access to a
long-word boundary. Since the memory is long-word organized, no further bus cycles are
necessary.
MOTOROLA
MC68360 USER’S MANUAL
4-17
Bus Operation
15
0P0
D31D0
MSBUMB
XXX
0P10P2
LONG-WORD OPERAND
0P1
DATA BUS
LONG-WORD MEMORY
XXX
0P20P3
LMBLSB
0P0
0P3
0P0
XXX
0
MC68EC030
SIZ1 SIZ0 A2 A1
0 0 0 1 1
1 1 1 0 0
A0
Figure 4-12. Misaligned Long-Word Transfer to Long-Word Port Example
MEMORY CONTROL
DSACK1 DSACK0
L
LL
L
4-18
MC68360 USER’S MANUAL
MOTOROLA
S0S2S4S0S2S4
CLKO1
A31–A2
A0
FC2–FC0
SIZ1
SIZ0
R/W
A1
Bus Operation
AS
DS
DSACK1
DSACK0
D31–D24
D23–D16
D15–D8
D7–D0
0P0
0P0
0P1
0P0
BYTE WRITE
LONG-WORD OPERAND WRITE
0P1
0P2
0P3
0P1
3-BYTE WRITE
Figure 4-13. Misaligned Long-Word Transfer to Long-Word Port Timing
4.2.3 Effects of Dynamic Bus Sizing and Operand Misalignment
The combination of operand size, operand alignment, and port size determines the number
of bus cycles required to perform a particular memory access. Table 4-7 lists the number of
bus cycles required for different operand sizes to different port sizes with all possible alignment conditions for write cycles and read cycles.
MOTOROLA
MC68360 USER’S MANUAL
4-19
Bus Operation
Table 4-7. Memory Alignment and Port Size Influence
on Write Bus Cycles
Number of Bus Cycles
A1–A000011011
Instruction
Byte Operand1:1:11:1:11:1:11:1:1
Word Operand1:1:21:2:21:1:22:2:2
Long-Word Operand1:2:42:3:42:2:42:3:4
Notes:
1. Data Port Size—32 Bits:16 Bits:8 Bits
2. Instruction reads can either be two words from an
even-word boundary, or one word from an odd-word boundary.
1
1:2:4N/AN/AN/A
This table verifies that bus cycle throughput is significantly affected by port size and alignment. The QUICC system designer and programmer should be aware of and account for
these effects, particularly in time-critical applications.
If the required instruction begins at an even-word boundary, the processor prefetches a long
word (up to two instructions) by reading a long word from a long-word address (A1–A0 = 00),
regardless of port size. When the required instruction begins at an odd-word boundary, the
processor reads 16-bits only, from the odd-word boundary. Refer to Section 5 CPU32+ for
a complete description of the pipeline operation.
4.2.4 Bus Operation
The QUICC bus is asynchronous, allowing external devices connected to the bus to operate
at clock frequencies different from the clock for the QUICC. Bus operation uses the handshake lines (AS
signals a valid address on the address bus, and DS is used as a condition for valid data on
a write cycle. Decoding the SIZx outputs and lower address lines (A1–A0) provides strobes
that select the active portion of the data bus. The slave device (memory or peripheral)
responds by placing the requested data on the correct portion of the data bus for a read
cycle or by latching the data on a write cycle; the slave asserts the DSACK1
bination that corresponds to the port size to terminate the cycle.
Alternatively, the SIM60 can be programmed to assert the DSACK1
internally and respond for the slave. If no slave responds or the access is invalid, external
control logic may assert BERR
tively. DSACKx
The length of time that DSACKx
asynchronous system to ensure that valid data is latched into the QUICC. (See Section 10
Electrical Characteristics for timing parameters.)
, DS, DSACK1, DSACK0, BERR, and HALT) to control data transfers. AS
/DSACK0 com-
/DSACK0 combination
or BERR with HALT to abort or retry the bus cycle, respec-
can be asserted before the data from a slave device is valid on a read cycle.
may precede data must not exceed a specified value in any
Note that no maximum time is specified from the assertion of AS
DSACKx
the cycle is terminated with DSACKx
ments until DSACKx
asserted. BERR
4-20
. Although the QUICC can transfer data in a minimum of three clock cycles when
, the QUICC inserts wait cycles in clock-period incre-
is recognized. BERR and/or HALT can be asserted after DSACKx is
and/or HALT must be asserted within the time specified after DSACKx is
MC68360 USER’S MANUAL
to the assertion of
MOTOROLA
Bus Operation
asserted in any asynchronous system. If this maximum delay time is violated, the QUICC
may exhibit erratic behavior.
4.2.5 Synchronous Operation with DSACKx
Although cycles terminated with DSACKx are classified as asynchronous, cycles terminated
with DSACKx
edges. The devices that use these cycles must synchronize the response to the QUICC
clock (CLKO1) to be synchronous. Since the devices terminate bus cycles with DSACKx
the dynamic bus sizing capabilities of the QUICC are available. The minimum cycle time for
these cycles is also three clocks. To support systems that use the system clock to generate
DSACKx
chronous input hold time are given. If the setup and hold times are met for the assertion or
negation of a signal, such as DSACKx
level on that specific falling edge of the system clock. If the assertion of DSACKx
nized on a particular falling edge of the clock, valid data is latched into the QUICC (for a read
cycle) on the next falling clock edge if the data meets the data setup time. In this case, the
parameter for asynchronous operation can be ignored. The timing parameters are described
in Section 10 Electrical Characteristics.
can also operate synchronously in that signals are interpreted relative to clock
and other asynchronous inputs, the asynchronous input setup time and the asyn-
, the QUICC is guaranteed to recognize that signal
is recog-
,
If a system asserts DSACKx
obeys the proper bus protocol by maintaining DSACKx
throughout the clock edge that negates AS
time), no wait states are inserted. The bus cycle runs at its maximum speed for bus cycles
terminated with DSACKx
asserted after DSACKx
the falling clock edge one clock cycle after DSACKx
and the QUICC may exhibit erratic behavior if it is violated. When operating synchronously,
the data-in setup and hold times for synchronous cycles may be used instead of the timing
requirements for data relative to DS
, BERR (and HALT) must meet the appropriate setup time prior to
for the required window around the falling edge of S2 and
(and/or BERR/HALT) until and
(with the appropriate asynchronous input hold
(three clocks per cycle). When BERR (or BERR and HALT) is
is recognized. This setup time is critical,
.
4.2.6 Fast Termination Cycles
With an external device that has a fast access time, the memory controller circuits can provide a two-clock external bus transfer. Since the memory controller circuits are driven from
the system clock, the bus cycle termination is inherently synchronized with the system clock.
Refer to Section 6 System Integration Module (SIM60) for more information on chip selects
and the DRAM controller. To use the fast termination (cycle length is two clocks) option, an
external device should be fast enough to have data ready, within the specified setup time,
by the falling edge of S4. Figure 4-14 shows the DSACKx
states, followed by a fast termination read and write.
timing for a read with two wait
MOTOROLAMC68360 USER’S MANUAL4-21
Bus Operation
*
*
CLKO1
AS
DS
R/W
DSACKx
D31–D0
S0S2SWSWS4S0S4S0S4S0
S1S3S5S1S5S1S5SW
TWO WAIT STATES IN READ
SW
* DSACKx only internally asserted for fast termination cycles.
Figure 4-14. Fast Termination Timing
NOTES
FAST
TERMINATION
READ
FAST
TERMINATION
WRITE
When using the fast termination option (cycle length is two
clocks), DS
DSACKx
is asserted only in a read cycle, not in a write cycle.
is only internally asserted for fast termination cycles.
4.3 DATA TRANSFER CYCLES
The transfer of data between the QUICC and other devices involves the following signals:
• Address Bus A31–A0
• Data Bus D31–D0
• Control Signals
The address and data buses are both parallel, nonmultiplexed buses. The bus master
moves data on the bus by issuing control signals, and the bus uses a handshake protocol
to ensure correct movement of the data. In all bus cycles, the bus master is responsible for
deskewing all signals it issues at both the start and end of the cycle. In addition, the bus master is responsible for deskewing the acknowledge and data signals from the slave devices.
The following paragraphs define read, write, and read-modify-write cycle operations. Each
bus cycle is defined as a succession of states that apply to the bus operation. These states
are different from the QUICC states described for the CPU32+. The clock cycles used in the
descriptions and timing diagrams of data transfer cycles are independent of the clock frequency. Bus operations are described in terms of external bus states.
4-22MC68360 USER’S MANUALMOTOROLA
Bus Operation
EXTERNAL DEVICE
4.3.1 Read Cycle
During a read cycle, the QUICC receives data from a memory or peripheral device. If the
instruction specifies a long-word operation, the QUICC attempts to read four bytes at once.
For a word operation, the QUICC attempts to read two bytes at once. For a byte operation,
the QUICC reads one byte. The section of the data bus from which each byte is read
depends on the operand size, address signals (A1, A0), and the port size. Refer to 4.2.1
Dynamic Bus Sizing and 4.2.2 Misaligned Operands for more information.
Figure 4-15 shows a long-word read cycle flowchart and Figure 4-16 illustrates a byte read
cycle flowchart. Figure 4-17 and Figure 4-18 show functional read cycles timing diagrams
specified in terms of clock periods.
BUS MASTER
ADDRESS DEVICE
1) SET R/W TO READ
2) DRIVE ADDRESS ON A31–A0
3) DRIVE FUNCTION CODE ON FC3–FC0
4) DRIVE SIZx PINS FOR FOUR BTYES
5) ASSERT AS, OE AND DS
ACQUIRE DATA
1) LATCH DATA
2) NEGATE AS, OE AND DS
START NEXT CYCLE
1) DECODE ADDRESS
2) PLACE DATA ON D31–D0
3) DRIVE DSACKx SIGNALS
1) REMOVE DATA FROM D31–D0
2) NEGATE DSACKx
SLAVE
PRESENT DATA
TERMINATE CYCLE
Figure 4-15. Long-Word Read Cycle Flowchart
BUS MASTER
ADDRESS DEVICE
1) SET R/W TO READ
2) DRIVE ADDRESS ON A31–A0
3) DRIVE FUNCTION CODE ON FC3–FC0
4) DRIVE SIZE (SIZ1–SIZ0) (ONE BYTE)
5) ASSERT AS, DS, AND OE
TERMINATE OUTPUT TRANSFER
1) DECODE ADDRESS
2) PLACE DATA ON D31–D24, OR D23–16, OR
D15–D8, OR D7–D0.
3) ASSERT DSACKx
PRESENT DATA
1) LATCH DATA
2) NEGATE AS, DS, AND OE
TERMINATE CYCLE
1) REMOVE DATA FROM D31–D0
START NEXT CYCLE
2) NEGATE DSACKx
Figure 4-16. Byte Read Cycle Flowchart
MOTOROLAMC68360 USER’S MANUAL4-23
Bus Operation
S0S2S4S0
CLKO1
A31–A2
A1
A0
FC3–FC0
SIZ1
WORD
SIZ0
R/W
AS
OE
S2
BYTE
S4
S0S2S4
DSACK1
DSACK0
D31–D24
D23–D16
D15–D8
D7–D0
DS
0P2
0P3
0P3
WORD READ
BYTE READ
BYTE READ
Figure 4-17. Byte and Word Read Cycles—32-Bit Port Timing
0P3
4-24MC68360 USER’S MANUALMOTOROLA
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.