Freescale SemiconductorメーカーMCF5485の使用説明書/サービス説明書
ページ先へ移動 of 1032
MCF548x Ref erence Man ual Devices Supported: MCF5485 MCF5482 MCF5484 MCF5481 MCF5483 MCF5480 Document Number : MCF5485RM Re v . 3 01/2006.
How to Reach Us: Home Page: www .freescale.com E-mail: suppor t@freescale.com USA/Europe or Locations Not Listed: F reescale Semiconductor T echn ical Information Center , CH370 1300 N. Alma School Road Chandler , Arizona 85224 +1-800-521-6274 or +1-480-768-2130 suppor t@freescale.
Ov er vie w Signal Descriptions ColdFire Core Enhanced Multiply-Accumulate Unit (EMA C) Memor y Management Unit (MMU) Floating-P oint Unit (FPU) Deb ug Suppor t System Integr ation Unit (SIU) Local Me.
Ov er view Signal Descriptions ColdFire Core Enhanced Multiply-Accumulate Unit (EMA C) Memor y Management Unit (MMU) Floating-P oint Unit (FPU) Deb ug Suppor t System Integr ation Unit (SIU) Local Mem.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor v Content s P aragraph Number Title Pag e Number Chapter 1 Overview 1.1 MCF548x Family Overview ........................................................................................... 1-1 1.
MCF548x Refere nce Manual, Rev . 3 vi F reescale Semiconductor Content s P aragraph Number Title Pag e Number 2.2.1.4 Read/Write (R/ W ) ................................................................................................. 2-17 2.2.1.5 Transfer Burst (TBST ) .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor vii Content s P aragraph Number Title Pag e Number 2.2.5.1 Reset In (RSTI ) ..................................................................................................... 2-22 2.2.5.2 Reset Out (RST O ) .
MCF548x Refere nce Manual, Rev . 3 viii F reescale Semiconductor Content s P aragraph Number Title Pag e Number 2.2.11 I 2 C I/O Signals .......................................................................................................... 2-27 2.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor ix Content s P aragraph Number Title Pag e Number Chapter 3 ColdFire Core 3.1 Core Overview ...................................................................................................
MCF548x Refere nce Manual, Rev . 3 x F reescale Semiconductor Content s P aragraph Number Title Pag e Number 3.7.4 Miscellaneous Instruction Execution Timi ng ........................................................... 3-32 3.7.5 Branch Instruction Ex ecution Timing .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xi Content s P aragraph Number Title Pag e Number 5.2.3.9 Changes to ACRs and CACR ................................................................................. 5-5 5.2.3.10 ACR Address Impr ovements .
MCF548x Refere nce Manual, Rev . 3 xii F reescale Semiconductor Content s P aragraph Number Title Pag e Number 6.2.3.5 Denormalized Nu mbers .......................................................................................... 6-5 6.3 Register Defi nition .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xiii Content s P aragraph Number Title Pag e Number 7.8.1 Cache Line States: Invalid, Valid-Unmodified, and Valid-Modified ......................... 7-8 7.8.2 The Cache at Star t-Up .........
MCF548x Refere nce Manual, Rev . 3 xiv F reescale Semiconductor Content s P aragraph Number Title Pag e Number 8.4.5 Address Attribute Trigger Re gisters (AATR, AATR1) ............................................ 8-16 8.4.6 Trigger Definition Regi ster (TDR) .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xv Content s P aragraph Number Title Pag e Number 9.3.1.4 JTAG Device Identification Number (JTAGID) .................................................... 9-5 Chapter 10 Internal Clocks and Bus Architecture 10.
MCF548x Refere nce Manual, Rev . 3 xvi F reescale Semiconductor Content s P aragraph Number Title Pag e Number 11.1.1 Overview ................................................................................................................ ... 11-1 11.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xvii Content s P aragraph Number Title Pag e Number Chapter 14 Edge Port Module (EPORT) 14.1 Introducti on ....................................................................................
MCF548x Refere nce Manual, Rev . 3 xviii F reescale Semiconductor Content s P aragraph Number Title Pag e Number 15.4 Functional Descri ption ................................................................................................ 15-3 2 15.4.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xix Content s P aragraph Number Title Pag e Number 17.5.1.2 Global Chip-Select Operation ............................................................................... 17-6 17.5.2 Chip-Select Registers .
MCF548x Refere nce Manual, Rev . 3 xx F reescale Semiconductor Content s P aragraph Number Title Pag e Number 18.3.13 SDR SDRAM Data Strobe (SDRDQS) .................................................................... 18-4 18.3.14 SDRAM Memory Supply (SDVDD) .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxi Content s P aragraph Number Title Pag e Number 18.8.9 Perform Two Refres h Cycles .................................................................................. 18-31 18.8.10 Clear the Reset DLL Bit in the Mode Regist er .
MCF548x Refere nce Manual, Rev . 3 xxii F reescale Semiconductor Content s P aragraph Number Title Pag e Number 19.3.2.2 Target Base Address Translati on Register 0 (PCITBATR0) ............................. 19-15 19.3.2.3 Target Base Address Translati on Register 1 (PCITBATR1) .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxiii Content s P aragraph Number Title Pag e Number 19.4.6.6 PCI Commands ................................................................................................... 19-69 19.4.6.7 FIFO Considerat ions .
MCF548x Refere nce Manual, Rev . 3 xxiv F reescale Semiconductor Content s P aragraph Number Title Pag e Number 20.6 Interrupts ................................................................................................................ ..... 20-10 Chapter 21 FlexCAN 21.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxv Content s P aragraph Number Title Pag e Number 21.4.7 CAN Protocol Relate d Frames ............................................................................... 21-27 21.4.7.1 Remote Frames .
MCF548x Refere nce Manual, Rev . 3 xxvi F reescale Semiconductor Content s P aragraph Number Title Pag e Number 22.6.4.8 Master Error Address Register (MEAR) ............................................................ 22-18 22.7 Channels ............
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxvii Content s P aragraph Number Title Pag e Number 22.13.1.2 Descriptor Length and Pointer Fields ................................................................. 22-60 22.13.1.3 Null Fiel ds .
MCF548x Refere nce Manual, Rev . 3 xxviii F reescale Semiconductor Content s P aragraph Number Title Pag e Number 23.2.1.3 Test Mode Select/B reakpoint (TMS/BKP T ) ........................................................ 23-3 23.2.1.4 Test Data Input/Development Se rial Input (TDI/DSI) .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxix Content s P aragraph Number Title Pag e Number 24.2.1 DREQ [1:0] ............................................................................................................... 24-3 24.2.
MCF548x Refere nce Manual, Rev . 3 xxx F reescale Semiconductor Content s P aragraph Number Title Pag e Number 24.4.8.1 LURC Features ................................................................................................... 24-25 24.4.9 Line Buffers .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxxi Content s P aragraph Number Title Pag e Number 26.1.1 Block Diagra m .......................................................................................................... 2 6-1 26.1.
MCF548x Refere nce Manual, Rev . 3 xxxii F reescale Semiconductor Content s P aragraph Number Title Pag e Number 26.3.3.28 Rx and Tx FIFO Last Read Frame Pointer (PSCRLRFPn, PSCTLRFPn) ......... 26-33 26.3.3.29 Rx and Tx FIFO Last Write Fram e Pointer (PSCRLWFPn, PSCTLWFPn) .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxxiii Content s P aragraph Number Title Pag e Number 26.7.2.5 SIR Mode ............................................................................................................ 26 -52 26.
MCF548x Refere nce Manual, Rev . 3 xxxiv F reescale Semiconductor Content s P aragraph Number Title Pag e Number 27.7.2.4 Tx FIFO Buffering Mechanism .......................................................................... 27-21 27.7.2.5 Rx FIFO Buffering Mechanism .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxxv Content s P aragraph Number Title Pag e Number 28.3.2.1 I 2 C Address Register (I2ADR) ............................................................................. 28-3 28.3.2.2 I 2 C Frequency Divider Regi ster (I2FDR) .
MCF548x Refere nce Manual, Rev . 3 xxxvi F reescale Semiconductor Content s P aragraph Number Title Pag e Number 29.2.2.3 USB Descriptor RAM Control Register (DRAMCR) ........................................ 29-12 29.2.2.4 USB Descriptor RAM Data Register (DRAMDR) .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxxvii Content s P aragraph Number Title Pag e Number 29.2.5.6 USB Endpoint n FIFO Status Register (EPnFSR) ............................................. 29-40 29.2.5.7 USB Endpoint n FIFO Control Register (EPnFCR) .
MCF548x Refere nce Manual, Rev . 3 xxxviii F reescale Semiconductor Content s P aragraph Number Title Pag e Number 30.1.5.4 Internal Loopb ack ................................................................................................. 30-4 30.2 External Si gnals .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xxxix Content s P aragraph Number Title Pag e Number 30.3.3.24 FEC Receive FIFO Read Poin ter Register (FECRFRP) ..................................... 30-32 30.3.3.25 FEC Receive FIFO Write Poin ter Register (FECRFWP) .
MCF548x Refere nce Manual, Rev . 3 xl F reescale Semiconductor Content s P aragraph Number Title Pag e Number 31.3.2 MCF5483/5482 Mechanical Diagram .................................................................... 31-12 31.4 MCF5481/5480 Mechanical Diagram .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xli About This Book The primary objective of this reference manual is to define the functionality of the MCF548x processors for use by software and hardware developers.
MCF548x Refere nce Manual, Rev . 3 xlii F reescale Semiconductor — Chapter 7, “Local Memory,” describes the MCF548x implemen tation of the ColdFire V4e local memory specification. — Chapter 8, “Debug Support,” describes the Revision C enhanc ed hardware debug support in the MCF548x.
Suggested Reading MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xliii — Chapter 21, “FlexCAN,” describes the MCF548 implementation of the controller area network (CAN) protocol. This chapter describe s FlexCAN module operation and provides a programming model.
MCF548x Refere nce Manual, Rev . 3 xliv F reescale Semiconductor General Inf ormation The following documentation provides useful information about the Cold Fire architecture and computer architecture in general: • ColdFir e Pr ogrammers Refer ence Manual (CFPRM) • Using Micr oprocessors and Micr ocomputers: The Motor ola Family , W illiam C.
Acr ony ms and Abbre viati ons MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xlv longword A 32-bit data unit x In some contexts, such as signal encodings, x indicates a don’ t care.
MCF548x Refere nce Manual, Rev . 3 xlvi F reescale Semiconductor EA Eff ective address EDO Extended data output (DRAM) FIFO First-in, first-out GPIO General-purp ose I/O I 2 C I nter-integrated circui.
T erminology and Notational Conventions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xlvii T erminology and Notational Con ventions Ta b l e i i i shows notational conventions used throughout this document. U ART Universal asynchronous/synchronous receiver transmitter XLB bus Inter nal 64-bit bus Table iii.
MCF548x Refere nce Manual, Rev . 3 xlviii F reescale Semiconductor <ea>y ,<ea>x Source and destination effective addresses, respectiv ely <label> Assembly language program label <.
T erminology and Notational Conventions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor xlix Address Calculated eff ectiv e address (pointer) Bit Bit selection (example: Bit 3 of D0) lsb L.
MCF548x Refere nce Manual, Rev . 3 l F reescale Semiconductor T ab le 2-1/2- 3 Add column to indicate whether the signal has a pull-up resistor . These signals hav e a pull-up resistor at all times: D.
T erminology and Notational Conventions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor li 2.2.6.1/2-22 Add the follo wing after T able 2-4: Figure 1 correlates CLKIN, inter nal bus, and core clock frequencies f or the 1x–4x multipliers.
MCF548x Refere nce Manual, Rev . 3 lii F reescale Semiconductor 10.2/10-5 Inser t the following section bef o re section 10.2 “XL Bus Arbiter”. 10.
T erminology and Notational Conventions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor liii T able 10-3/10-5 Bits BA, DT , and A T: The 0 and 1 are switched. Setting each bit ena bles operation, while clearing di sables operation. The 0 and 1 (or the correspond ing descriptions) need to be swapped f or al l three bits.
MCF548x Refere nce Manual, Rev . 3 liv F reescale Semiconductor 21.4.9/2 1-28 Add the follo wing table below the note at the end of the section and corre ct the cross-ref erence pointing to it: T able 23-5/23-7 The JT AG IR codes are incorrect. Replace table with the f ollowing: 23.
T erminology and Notational Conventions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor lv 25.1.2/25-2 Add the following section after section 24.1.2: 24.1.3 Comm Timer External Clock[7:0] The comm timer e xter nal clock is the altern ate clock signal and is pro vided by the user .
MCF548x Refere nce Manual, Rev . 3 lvi F reescale Semiconductor 27.6.1/27-5 Remov e instances of MDIS bit as it is not present on this v ersion of the DSPI. T able 29-3/29-11 USBCR[APPLOCK] bit description, th e bit setting numbers are incorrrect . When cleared (0 ), APPLOCK is deasser ted.
T erminology and Notational Conventions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor lvii Figure 31-3/Page 31-10 Remov e overbar from ALE at location AD6. Figure 31-7/Page 31-14 Remov e overbar from ALE at location AD6. Figure 31-11/Page 31-18 Remov e overbar from ALE at location AD6.
MCF548x Refere nce Manual, Rev . 3 lviii F reescale Semiconductor.
MCF548x Reference Manual, Rev . 3 F reescale Semiconductor 1-1 Chapter 1 Overview This chapter provides an overview of the MCF548 x microprocessor features , including the major functional components.
MCF548x Reference Manual, Rev . 3 1-2 F reescale Semiconductor W ith on-chip support for multiple co mmon communications interfaces, MCF548 x products require only the addition of memories and certain physical layer transceivers to be cost-ef fective system solutions for many applications.
MCF548x Family Pr oducts MCF548x Reference Manual, Rev . 3 F reescale Semiconductor 1-3 1.3 MCF548 x F amily Pr oducts Ta b l e 1 - 1 summarizes the products ava ilable within the MCF548 x product family . All products are available in pin-compatible, 388- pin PBGA packaging allowing for ea se of migrati on between products within the family .
MCF548x Reference Manual, Rev . 3 1-4 F reescale Semiconductor — Memory management unit (MMU) – Separate, 32-entry , fully-associative instru ction and data transl ation lookahead buf fers — Flo.
MCF548x Family Features MCF548x Reference Manual, Rev . 3 F reescale Semiconductor 1-5 — Execution units for the following: – DES/3DES block cipher – AES block cipher – RC4 stream cipher – M.
MCF548x Reference Manual, Rev . 3 1-6 F reescale Semiconductor The ColdFire V4e processor contai ns a double-precision floating point unit (FPU). The FPU conforms to the American National S tandards Inst itute (ANSI)/Institute of Electrical and Electr onics Engineers (IEEE) S tandard for Binary Floating-Point Arithmetic (ANSI/IEEE S tandard 754).
MCF548x Family Features MCF548x Reference Manual, Rev . 3 F reescale Semiconductor 1-7 boundary-scan register , and a 32-bit ID register). The boundary scan regi ster links the device’ s pins into one shift register . T est logic, implemented using stat ic logic design, is independe nt of the device system logic.
MCF548x Reference Manual, Rev . 3 1-8 F reescale Semiconductor 1.4.6 Comm unications I/O Subsystem 1.4.6.1 DMA Controller The communications subsystem contains an intelligent DMA unit that provides fr.
MCF548x Family Features MCF548x Reference Manual, Rev . 3 F reescale Semiconductor 1-9 • 4 Kbytes of shared endpoint FIFO RAM and 1 Kbyte of endpoint descriptor RAM 1.
MCF548x Reference Manual, Rev . 3 1-10 F reescale Semiconductor • DMA support 1.4.6.7 Controller Area Netw o rk (CAN) The FlexCAN modules are communication controll ers implementing the C AN protocol.
MCF548x Family Features MCF548x Reference Manual, Rev . 3 F reescale Semiconductor 1-11 frequency from 33–66 MHz. The Flexbus is targeted to support extern al Flash memories, boot ROMs, gate-array logic, or othe r simple tar get interfaces. Up to six chip selects are supported by the FlexBus.
MCF548x Reference Manual, Rev . 3 1-12 F reescale Semiconductor 1.4.11.2 Interrupt Controller The interrupt cont roller on the MCF548 x family can support up to 63 interrupt sources. The interrupt controller is organized as seven levels with nine inte rrupt sources per level.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-1 Chapter 2 Signal Descriptions 2.1 Intr oduction This chapter describes the MCF548 x signals . NO TE The terms ‘assertion’ and ‘negation’ are used to avoid confusion when dealing with a mixture of active-lo w and active-high signals.
MCF548x Refere nce Manual, Rev . 3 2-2 F reescale Semiconductor Figure 2 -1. MCF5 48 x Signals MCF548x E0MDIO / PFECI2C3 E0CRS / PFEC0H0 E0TXD[3:1] / PFEC0L[7:5] E0TXER / PFEC0L4 E0RXD[3: 1] / PFE C0L.
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-3 Ta b l e 2 - 1 lists the signals for the MCF548 x in functional group order .
MCF548x Refere nce Manual, Rev . 3 2-4 F reescale Semiconductor M2, M3 SDBA[1:0] — — — SDRAM bank addresses O2 4 L o w E3 RAS — — — SDRAM row address strobe O2 4 H i g h C2 CAS — — —.
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-5 D24 PCIIRD Y —— — PCI initiator ready I/O 16 Hi-Z F23 PCIP AR — — — PCI parity I/O 16 Hi-Z D26 PCIPERR —— .
MCF548x Refere nce Manual, Rev . 3 2-6 F reescale Semiconductor AD8, AC6, AF7 E0TXD[3:1] PFEC0L[7:5] — — MA C transmit data O:I/O 8 GPI AE9 E0TXER PFEC0L4 — — MAC tr ansmit error O:I/O 8 GPI A.
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-7 AC2 4 DSPISIN PDSPI1 PSC3RXD — QSPI data in I:I/O 24 GPI AD22 DSPISCK PDSPI2 PSC3CTS PSC3BCLK QSPI cloc k I/O 24 GPI W23 .
MCF548x Refere nce Manual, Rev . 3 2-8 F reescale Semiconductor Timer Module AD19 TIN3 PTIM7 IRQ3 CANRX1 Timer input I:I/O 8 GPI AD23 TO U T 3 PTIM6 CANTX1 — Timer output O:I/O 8 GPI AF21 TIN2 PTIM5.
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-9 P ower Supplies C16, C22, E24, H24, M24, R3, U24, Y3, AA24, AB3, AD7, AD10, AD18 EVDD — — — P ositive I/O supply I .
MCF548x Refere nce Manual, Rev . 3 2-10 F reescale Semiconductor Ta b l e 2 - 2 lists the MCF548 x signals in pin number orde r for the 388 PBGA package. AD16 4 USB_PLL VDD — — — USB PLL supply AE18 4 USBVDD — — — USB supply 1 Pull-up resistor when configu red f or general purp ose input (def ault state after reset).
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-11 A21 PSTDD A T A1 — — — R13 VSS — — — A22 PSTDD A T A3 — — — R14 VSS — — — A23 PSTDD A T A7 — —.
MCF548x Refere nce Manual, Rev . 3 2-12 F reescale Semiconductor B26 1 E1RXD2 PFEC1L2 — —V 2 A D 2 — — — C1 SD VDD — —— V 3 A D 4 — — — C2 CAS — —— V 4 I V D D — — — .
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-13 D5 SDD A T A28 — — — AB1 AD12 — — — D6 VSS — — — AB2 AD15 — — — D7 SD ADDR2 — — — AB3 EVDD .
MCF548x Refere nce Manual, Rev . 3 2-14 F reescale Semiconductor F2 SDDQS1 — — — AC 24 DSPISIN PDSPI1 PSC3RXD — F3 SD VDD — —— A C 2 5 D A C K 1 PDMA3 T OUT1 — F4 VSS — — — AC26 .
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-15 K1 SD WE — — — AE3 AD28 — — — K2 SDD A T A0 — — — AE4 AD27 — — — K3 SDD A T A1 — — — AE5 R/W.
MCF548x Refere nce Manual, Rev . 3 2-16 F reescale Semiconductor 2.2 MCF548 x External Signals 2.2.1 FlexBus Signals 2.2.1.1 Address/Data Bus (AD[31:0]) The AD[31:0] bus carries address and data. The full 32-bi t address is always driven on the first clock of a bus cycle (address phase).
MCF548x External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-17 2.2.1.2 Chip Select (FBCS [5:0]) FBCS [5:0] are asserted to indicate wh ich device is being selected. A part icular chip select asserts when the transfer address is within the device’ s address spa ce as defined in the base and mask address registers.
MCF548x Refere nce Manual, Rev . 3 2-18 F reescale Semiconductor For burst-inhibited transfers, TSIZ[1:0] changes with each ALE asserti on to reflect the next transfer size.
MCF548x External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-19 2.2.2.3 SDRAM Bank Addresses (SDB A [1:0]) Each SDRAM module has four internal row banks. The SDBA[1:0] signals are used to select the row bank. It is also used to select the SDRAM intern al mode register duri ng power -up initialization.
MCF548x Refere nce Manual, Rev . 3 2-20 F reescale Semiconductor 2.2.2.14 SDRAM Reference V oltage (VREF) This is the input referenc e voltage for differential SSTL_2 inputs. It is used in both DDR and SDR modes. 2.2.3 PCI Contr oller Signals 2.2.3.1 PCI Address/Data Bus (PCIAD[31:0]) The PCIAD[31:0] lines are a time-mul tiplexed address data bus.
MCF548x External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-21 2.2.3.9 Reset (PCIRESET ) The PCIRESET signal is asserted active low by MCF548 x to reset the PCI bus. This signal is asserted af ter the MCF548 x is reset and must be negated to enable usage of the PCI bus.
MCF548x Refere nce Manual, Rev . 3 2-22 F reescale Semiconductor 2.2.5 Clock and Reset Signals The clock and reset signals configure the MCF548 x and provide interface signals to the external system. 2.2.5.1 Reset In (RSTI ) Asserting RSTI causes the MCF548 x to enter reset excep tion processing.
MCF548x External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-23 Figure 2-2. CLKIN, Internal Bus, and Core Clock Ratios 2.2.6.
MCF548x Refere nce Manual, Rev . 3 2-24 F reescale Semiconductor 2.2.6.5 AD2— A uto Ac knowledg e Configuration (AA CONFIG) At reset, the enabling and disabli ng of auto acknowledge for boot FBCS0 is determined by the logic level driven on AD2 at the rising edge of RSTI .
MCF548x External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-25 2.2.7.2 Management Data Clock (E0MDC, E1MDC) EMDC is an output clock that pr ovides a timing reference to the PHY for data transfers on the EMDIO signal; it applies to MII mode operation.
MCF548x Refere nce Manual, Rev . 3 2-26 F reescale Semiconductor 2.2.7.12 T r ansmit Err or (E0TXER, E1TXER) When the ETXER output is asserted for one or more clock cycles while ETXEN is also asserted, the PHY sends one or more illegal symbol s. ETXER has no effect at 10 Mbps or when ETXEN is negated, and applies to MII mode operation.
MCF548x External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-27 2.2.9.2 DSPI Synchr onous Se rial Data Input (DSPISIN) The DSPISIN input provides the seri al data to the DSPI and can be programmed to be sampled on the rising or falling edge of DSPISCK.
MCF548x Refere nce Manual, Rev . 3 2-28 F reescale Semiconductor 2.2.11.1 Serial Clock (SCL) This bidirectional open-drain signa l is the clock signal for the I 2 C interface. It is either driven by the I 2 C module when the bus is in master mode, or it becomes the clock input when the I 2 C is in slave mode.
MCF548x External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-29 2.2.14 Timer Module Signals The signals in the following sections are extern al interfaces to the fo ur general-purpose MCF548 x timers. These 32-bit timers can capture time r values, trigger external events or internal interrupts, or count external events.
MCF548x Refere nce Manual, Rev . 3 2-30 F reescale Semiconductor 2.2.15.4 Breakpoint/T est Mode Select (BKPT /TMS) If MTMOD0 is low , BKP T is selected. BKP T signals a hardware breakpoint to the processor in debug mode. If MTMOD0 is high, TMS is select ed.
MCF548x External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 2-31 2.2.17 P ower and Reference Pins These pins provide system power , ground, and references to the device. Multiple pins are provided for adequate current capability .
MCF548x Refere nce Manual, Rev . 3 2-32 F reescale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor i Part I Processor Core Part I is intended for system designers who need to understand the operation of the MCF548 x ColdFire core and its enhanced multiply/a ccumulate (EMAC) execution unit.
MCF548x Refere nce Manual, Rev . 3 ii F reescale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-1 Chapter 3 ColdFire Core This chapter provides an overview of the microprocessor core of the MCF548 x .
MCF548x Refere nce Manual, Rev . 3 3-2 F reescale Semiconductor 3.2.1 Enhanced Pipelines The IFP prefetches instructions. Th e OEP decodes instructio ns, fetches required operands, then executes the specified function. The two inde pendent, decoupled pipeline stru ctures maximize performance while minimizing core size.
Features MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-3 Figure 3-1. ColdFire Enhanced Pipeline 3.2.1.1 Instruction Fetch Pipeline (IFP) Because the fetch and exec ution pipelines are decoupled by a ten-instructi on FIFO buf fer , the IFP can prefetch instructions before the OEP needs them, minimizing stalls.
MCF548x Refere nce Manual, Rev . 3 3-4 F reescale Semiconductor 3.2.1.1.1 Branch Acceleration T o maximize the performance of conditional branch inst ructions, the IFP impl ements a sophisticated two-level acceleration mechanism.
Features MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-5 ColdFire microprocessor family . Th e MAC features a four-stage ex ecution pipeline, optimized for 32 × 32 multiplies. It is tightly coupled to the OEP , which can issue a 32 x 32 multiply with a 32-bit accumulation and fetch a 32-bit operand in a singl e cycle.
MCF548x Refere nce Manual, Rev . 3 3-6 F reescale Semiconductor The hardware unit is optimized for real-time execution with exceptio ns disabled and default results provided for specific operations, operands, and number types. The FPU does not support all IEEE-754 number types and operations in hardware.
Program ming Model MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-7 • The ASID is optionally included in the specification of the hardwa re breakpoint registers. As an example, the four PC breakpoint registers are each expanded by 8 bits, so that a specific ASID value may be programmed as part of the breakpoint instruction address.
MCF548x Refere nce Manual, Rev . 3 3-8 F reescale Semiconductor Figure 3-3. ColdFire Pr ogramming Model 31 0 D0 Data registers D1 D2 D3 D4 D5 D6 D7 31 0 A0 Address registers A1 A2 A3 A4 A5 A6 A7 User .
Program ming Model MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-9 3.3.1 User Pr ogramming Model The user programming model, shown in Figure 3-3 , consists of the following registers: .
MCF548x Refere nce Manual, Rev . 3 3-10 F reescale Semiconductor 3.3.3 EMA C Programming Model The registers in the EMAC portion of the user programmi ng model are described in Chapter 4, “Enhanced .
Program ming Model MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-11 • Eight 64-bit floa ting-point data registers (FP0–FP7) • One 32-bit floating-point control register (FPCR) .
MCF548x Refere nce Manual, Rev . 3 3-12 F reescale Semiconductor 3.3.5.1 Status Register (SR) The SR stores the processor status, the interrupt priority ma sk, and other control bi ts. Supervisor software can read or write the entire SR; user software can read or write onl y SR[7–0], described in Section 3.
Program ming Model MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-13 3.3.5.3 Cache Contr ol Register (CA CR) The CACR controls operation of both the instruction a nd data cache memory . It includes bits for enabling, freezing, and invalidating cache conten ts.
MCF548x Refere nce Manual, Rev . 3 3-14 F reescale Semiconductor T able 3-4. ColdFire CPU Registers Name CPU Space (Rc) Written with MO VEC Register Name Memory Management Contr ol Registers CA CR 0 x.
Data Format Summary MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-15 3.4 Data Format Summary Ta b l e 3 - 5 lists the operand data fo rmats. Integer operands can reside in registers, memory , or instructions. The operand size is either explicitly encoded in the instruction or implicitly define d by the instruction operation.
MCF548x Refere nce Manual, Rev . 3 3-16 F reescale Semiconductor Instruction encodings disallow use of address regist ers for byte operands. When an address register is a source operand, either the low-order word or the entire longw ord operand is used, depending on the operation size.
Data Format Summary MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-17 3.4.2 EMA C Data Representation The EMAC supports the following three modes, where each mode define s a unique operand type. • T wo’ s complement signed integer: In this format, an N-bit operand value lies in the range -2 (N-1) < operand < 2 (N-1) - 1.
MCF548x Refere nce Manual, Rev . 3 3-18 F reescale Semiconductor 3.4.2.1.1 Signed-Integer Data Formats The FPU supports 8-bit byte (B), 16-bit word (W), and 32-bit longword (L) integer data formats. 3.4.2.1.2 Floating-P o int Data Formats Figure 3-13 shows the two binary floating-point data formats.
Instruction Set Summar y MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-19 3.6 Instruction Set Summary The ColdFire instruction set is a simplified ve rsion of the M68000 instru ction set. The removed instructions include BCD, bit field, logical rotate, decrement and branch, and integer multiply with a 64-bit result.
MCF548x Refere nce Manual, Rev . 3 3-20 F reescale Semiconductor • Enhanced support for byte and word-si zed operands through new move operations • Enhanced support for pos ition-independent code For descriptions of the Cold Fire instruction set, see the latest version of the ColdFir e Pr ogrammer ’ s Refer ence Manual .
Instruction Set Summar y MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-21 Move t o USP move.l Ay U SP Y es Mov e with Sign Extend mvs.{b ,w} <ea>y Dx Mov e with Zero-Fill mvz.{b ,w} <ea>y Dx Signed Saturate sats.l Dx T est and Set an Operand tas.
MCF548x Refere nce Manual, Rev . 3 3-22 F reescale Semiconductor 3.6.2 Instruction Set Summary Ta b l e 3 - 8 lists user -mode in structions by opcode. Sav e Inter nal Floating P oint State fsav e <ea>x Y es Floating-P oint Square Root fsqr t.{b ,w ,l,s,d} <ea>y FPx Y es Floating-P oin t Subtract fsub .
Instruction Set Summar y MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-23 CMP CMP A <ea>y ,Dx <ea>y ,Ax B, W , L W, L Destination – Source → CCR CMPI #<d ata>,Dx .
MCF548x Refere nce Manual, Rev . 3 3-24 F reescale Semiconductor FINT <ea>y ,FPx FPy ,FPx FPx B,W , L ,S, D D D Integer P ar t of Source → FPx Integer P ar t of FPx → FPx FINTRZ <ea>y .
Instruction Set Summar y MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-25 FSUB <ea>y ,FPx FPy ,FPx B,W , L ,S, D D FPx - Source → FPx FTST <ea>y B , W , L, S, D Source Op.
MCF548x Refere nce Manual, Rev . 3 3-26 F reescale Semiconductor Ta b l e 3 - 9 describes supervisor -mode instructions. NO T Dx L ~ Destination → Destination OR <ea>y ,Dx Dy ,<ea >x L L.
Instruction Execution Timing MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-27 3.7 Instruction Ex ecution Timing The timing data in this section assumes the following: • Execution times for individual instructions make no assumptions concerning the OEP’ s ability to dispatch multiple instructions in one machine cycle.
MCF548x Refere nce Manual, Rev . 3 3-28 F reescale Semiconductor • The OEP can complete all memory accesses wi thout memory causing any stalls. Thus, these timings assume an infinite, zero-wait state memory attached to the core.
Instruction Execution Timing MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-29 T able 3-12 lists timings for MOVE.L. T able 3-13 gives timings for MOVE.L instructions acces sing program-visible EMAC registers, along with other MOVE.L timings.
MCF548x Refere nce Manual, Rev . 3 3-30 F reescale Semiconductor 3.7.2 One-Operand Instruction Ex ecution Timing T able 3-14 shows standard timings for single-operand instructions. T able 3-13. MA C and Miscellaneous Mo ve Execution Time s Opcode <ea> Effect ive Addr ess Rn (An) (An)+ –(An) (d16,An) (d8 ,An,Xi*SF) (xxx).
Instruction Execution Timing MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-31 3.7.3 T wo-Operand Instruction Execution Timing T able 3-15 shows standard timings for double operand instructions.
MCF548x Refere nce Manual, Rev . 3 3-32 F reescale Semiconductor 3.7.4 Miscellaneous Instruction Execution Timing T able 3-16 lists timings for miscellaneous instructions. lsr .l <ea>,Dx 1(0/0) — — — — — — 1(0/0) mac.w Ry ,Rx 1(0/0) — — — — — — — mac.
Instruction Execution Timing MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-33 3.7.5 Branch Instruction Ex ecution Timing T able 3-17 shows general branch instruction timing.
MCF548x Refere nce Manual, Rev . 3 3-34 F reescale Semiconductor T able 3-18 shows timing for Bcc instructions. 3.7.6 EMA C Instruction Execution Times T able 3-19 specifies instruction executi on times associated with the enhanced multiply-accumulate (EMAC) execute engine.
Instruction Execution Timing MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-35 Execution times for moving the contents of the ACC, ACCext[0 1,23], MACSR, or MASK into a destination loca.
MCF548x Refere nce Manual, Rev . 3 3-36 F reescale Semiconductor 3.8 Exception Pr ocessing Over view Exception processing for ColdFire pr ocessors is streamlined for perfor mance. Dif ferences from previous ColdFire Family processors include the following: • An instruction restart model for translation ( TLB mis s) and access faults.
Exception Processing Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-37 If the exception is caused by an FPU instruction, the PC contains the address of either the next floating-point instruction (nextFP) if the exception is pre-instruction, or the faulting instruction (fault) if the exception is post-instruction.
MCF548x Refere nce Manual, Rev . 3 3-38 F reescale Semiconductor ColdFire processors inhibi t sampling for interr upts during the first instruction of all exception handlers. This allows any handler to ef fectively disable interr upts, if necessary , by raisi ng the interrupt mask level in the SR.
Exception Processing Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-39 3.8.2 Processor Exceptions T able 3-23 describes CF4e exceptions. Note that if a ColdFire processor enc ounters any fault while processing another fault, it imme diately halts execution with a cat astrophic fault-on-fault condition.
MCF548x Refere nce Manual, Rev . 3 3-40 F reescale Semiconductor T able 3-23. Pr ocessor Exceptions T ype Description Access error If the MMU is disabled, a ccess errors are repor ted only in conjunction with an atte mpted store to write-protected me mor y .
Exception Processing Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-41 Unimplemented line-a opcode A line-a opcode results when bits 15–12 of th e opwor d are 1010. This e xception is generated by the attempted ex ecution of an undefined line-a opcode.
MCF548x Refere nce Manual, Rev . 3 3-42 F reescale Semiconductor 3.9 Precise F aults T o support a demand-paged virtual memory environm ent, all memory references require precise, recoverable faults.
Precise Faults MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 3-43 NO TE For access errors signaled on instru ction prefetches, an access error exception is generated only if inst ruction execution is attempted.
MCF548x Refere nce Manual, Rev . 3 3-44 F reescale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 4-1 Chapter 4 Enhanced Multipl y-Accum ulate Unit (EMA C) This chapter describes the func tionality , microarchitecture, and performance of the enhanced multiply-accumulate (EMAC) unit in th e ColdFire family of processors.
MCF548x Refere nce Manual, Rev . 3 4-2 F reescale Semiconductor 4.1.1 MA C Overview The MAC is an extension of the basic multiplier found in most mi croprocessors. It is typically implemented in hardware within a n architecture and supports rapid execu tion of signal processing algorithms in fewer cycles than comparable non-MAC architectures.
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 4-3 execution times are minimized and de terministic compared to the 2- bit/cycle a lgorithm with early termination that the OEP normally us es if no MAC hardware is present.
MCF548x Refere nce Manual, Rev . 3 4-4 F reescale Semiconductor Figure 4-5. Signed and Unsigned Integer Alignment Thus, the 48-bit accumulator defini tion is a function of the EMAC ope rating mode.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 4-5 The need to move large amounts of data presents an obstacle to obt aining high throughput rates in DSP engines. New and existing ColdFire instructio ns can accommodate these req uirements.
MCF548x Refere nce Manual, Rev . 3 4-6 F reescale Semiconductor Ta b l e 4 - 1 describes MACSR fields. 31 30 29 28 27 26 25 24 2 3 22 21 20 19 18 17 16 R 0000000000 000000 W R e s e t 0000000000 000000 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 R 0 0 0 0 P A Vx OMC S/U F/I R/T N Z V EV W R e s e t 0000000000 000000 Reg Addr Figure 4-7.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 4-7 Ta b l e 4 - 2 summarizes the interac tion of th e MACSR[S/U,F/I,R/T] control bits. 5 F/I Operational mode field: F racti onal/integer mode Deter mines whethe r i nput operands are treated as fractions or integers.
MCF548x Refere nce Manual, Rev . 3 4-8 F reescale Semiconductor 4.2.1.1 Fractional Operation Mode This section describes behavior when the fr actional mode is used (MACSR[F/I] is set). 4.2.1.1.1 Rounding When the processor is in fractional mode, ther e are two operations during which rounding can occur .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 4-9 then Result = R0.U + 1 else if lsb of R0.U = 0 /* R0.L = 0x8000 */ then Result = R0.U else Result = R0.U + 1 The round-to-nearest-even technique is also known as conver gent rounding.
MCF548x Refere nce Manual, Rev . 3 4-10 F reescale Semiconductor move.l d6,mask ; restore the address mask move.l d7,macsr ; restore the macsr By executing this type of sequence, the exact st ate of the EMAC programmi ng model can be correctly saved and restored.
EMA C Instruction Set Summary MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 4-11 4.3 EMA C Instruction Set Summar y Ta b l e 4 - 3 summarizes EMAC unit instructions. 4.3.1 EMA C Instruction Execution Timing The instruction execut ion times for the EM AC can be found in Section 3.
MCF548x Refere nce Manual, Rev . 3 4-12 F reescale Semiconductor The mov .l instruction that stores the accumulator to an intege r register (Rz ) stalls until the program-visible copy of the accumulat or is available. Figure 4-8 shows EMAC timing. Figure 4-8.
EMA C Instruction Set Summary MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 4-13 This format can represent numbers in the range -1 < operand < 1 - 2 (N-1) . For words and longwords, the larges t negative number that can be re presented is -1, whose internal representation is 0x8000 and 0x8000_0000, respectively .
MCF548x Refere nce Manual, Rev . 3 4-14 F reescale Semiconductor } else {operandY[31:0] = Ry[31:0] operandX[31:0] = Rx[31:0] } /* perform the multiply */ product[63:0] = operandY[31:0] * oper andX[31:.
EMA C Instruction Set Summary MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 4-15 MACSR.V = 1 if (MACSR.OMC == 1) then /* accumulation overflow, saturationMode enabled */ if (result[47] =.
MCF548x Refere nce Manual, Rev . 3 4-16 F reescale Semiconductor /* check for accumulation overflow */ if (accumulationOverflow == 1) then {MACSR.PAVx = 1 MACSR.
EMA C Instruction Set Summary MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 4-17 result[47:0] = 0xffff_ffff_ffff } /* zero-fill to 48 bits before perfor ming any scaling */ product[47:40.
MCF548x Refere nce Manual, Rev . 3 4-18 F reescale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-1 Chapter 5 Memory Management Unit (MMU) This chapter describes the ColdFire virtual memory management unit (MMU), which provides virtual-to-physical addre ss translation and memory access control.
MCF548x Refere nce Manual, Rev . 3 5-2 F reescale Semiconductor • The address access control logic, address attrib ute logic, memories, and co ntroller function as in previous ColdFire versions with the addition of the MMU. The MMU, its TLB, and associated control reside in the logic.
Virtual Mem ory Management Architecture MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-3 Figure 5-1. CF4e Pr ocessor Core Block with MMU 5.2.3 MMU Arc hitecture Implemen tation This section describes ColdFire design additions and changes for th e MMU architecture.
MCF548x Refere nce Manual, Rev . 3 5-4 F reescale Semiconductor 5.2.3.1 Precise Faults The MMU architecture performs virtual-to-physical address translation and permission checking in the core. T o support demand-paging, the co re design provides a precise, recove rable fault for all references.
Virtual Mem ory Management Architecture MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-5 more bits than the in-page address, one or more of the low-order vi rtual page number bits are used to address the cache. The MMU translat es these bits; the resulting low-or der physical page number bits are used to determine cache hits.
MCF548x Refere nce Manual, Rev . 3 5-6 F reescale Semiconductor 5.2.3.10 A CR Address Impr ovements ACRs provide a 16-Mbyte a ddress window . For a given request address, if the ACR is valid and the r.
Debugging in a Virtual En vironment MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-7 5.2.3.11 Supervisor Protection Each instruction or data re ference is either a supervis or or user access. The CPU’ s status register supervisor bit (SR[S]) determines the operating mode.
MCF548x Refere nce Manual, Rev . 3 5-8 F reescale Semiconductor In addition, the following two privil eged M68000 family instructions to load/store the USP are added to the ColdFire instruction set architecture: mov.l Ay,USP # move to USP: opcode = 0x4E6{0-7} mov.
MMU Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-9 5.5 MMU Definition The ColdFire MMU provides a virt ual address, demand-paged memory architecture. The MMU supports hardware address translat ion acceleration using software-managed TLBs.
MCF548x Refere nce Manual, Rev . 3 5-10 F reescale Semiconductor • If virtual mode is enabled, any normal m ode access that does not hit in the MMUBAR, RAMBARs, ROMBARs, or ACRs is considered a normal mode virtual address request and generates its access attributes from the MMU.
MMU Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-11 5.5.3.2 MMU Memor y Map MMUBAR holds the base address for th e 64-Kbyte MMU memory map, shown in Ta b l e 5 - 4 . The MMU memory map area is not vi sible unless the MMUBAR is valid and must be refe renced aligned.
MCF548x Refere nce Manual, Rev . 3 5-12 F reescale Semiconductor Ta b l e 5 - 5 describes MMUCR fields. 5.5.3.4 MMU Operation Register (MMUOR) Figure 5-5 shows the MMUOR.
MMU Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-13 Ta b l e 5 - 6 describes MMUOR fields. 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 RA A W R e s e t 0 0 0 0 0000 0 0.
MCF548x Refere nce Manual, Rev . 3 5-14 F reescale Semiconductor 5.5.3.5 MMU Status Register (MMUSR) MMUSR, Figure 5-6 , is updated on all data access fa ults and search TLB operations. Ta b l e 5 - 7 describes MMUSR fields. 5 CAS Clear all non-lock ed TLB entries that match ASID .
MMU Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-15 5.5.3.6 MMU Fault, T est, or TLB Address Register (MMU AR) The MMUAR format, Figure 5-7 , depends on how the register is used. Ta b l e 5 - 8 describes MMUAR fields. T able 5-7.
MCF548x Refere nce Manual, Rev . 3 5-16 F reescale Semiconductor 5.5.3.7 MMU Read/Write T ag and Data Entry Registers (MMUTR and MMUDR) Each TLB entry consists of a 32-bit TLB tag entry and a 32-b it TLB data entry . TLB entries are referenced through MMUTR and MMUDR.
MMU Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-17 MMUDR, Figure 5-9 , contains the physical addre ss, page size, cache mode fi eld, supervisor-protect bit, read, write, execute permissi on bits, and lock-entry bit. T able 5-10 describes MMUDR fields.
MCF548x Refere nce Manual, Rev . 3 5-18 F reescale Semiconductor 5.5.4 MMU TLB Each TLB entry consists of two 32-b it fields. The first is the TLB tag entry , and the second is the TLB data entry . TLB size and organi zation are implementation de pen dent.
MMU Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-19 5.5.5 MMU Operation The processor sends instruction fetch requests and data read/write reque sts to the MMU in the in struction and operand address ge neration cycles (IAG and OAG).
MCF548x Refere nce Manual, Rev . 3 5-20 F reescale Semiconductor Figure 5-10 shows more details of the MMU structure. The TLB is acces se d at the beginning of th e KC1 pipeline stage so the result ing physical address can be sourced to the cache c ontrollers to factor in to the cache hit/miss determination.
MMU Implementation MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-21 When MMUAR is used for a TLB addr ess, bits F A[5–0] also have th is address format for CF4e. The remaining form address bits (F A[31–6]) are ignored when this register is being used for a TLB address.
MCF548x Refere nce Manual, Rev . 3 5-22 F reescale Semiconductor Binary state bits are updated on all TLB write (load) operations, as well as normal ITLB and DTLB hits of non-locked entries. Also, if all entries in a binary st ate are locked, than that stat e is always set.
MMU Instructions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 5-23 Figure 5-11. V ersion 4 Co ldFire MMU Harv ar d TLB 5.7 MMU Instructions The MOVE to USP and MOVE from USP instructions have been adde d for accessing the USP . Refer to the ColdFir e Pr ogrammer ’ s Refer ence Manual for more information.
MCF548x Refere nce Manual, Rev . 3 5-24 F reescale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-1 Chapter 6 Floating-P oint Unit (FPU) 6.1 Intr oduction This chapter describes instructions implemented in the floating-point unit (FPU) designed for use with the ColdFire family of microprocesso rs.
MCF548x Refere nce Manual, Rev . 3 6-2 F reescale Semiconductor Ta b l e 6 - 2 describes addressing modes and syntax for floating-point instructions. & Logical AND | Logical OR → Source operand .
Operand Data Formats and T ypes MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-3 6.2 Operand Data Formats and T ypes The FPU supports signed byte, word, and longword integer form ats, which are identical to those supported by the integer unit.
MCF548x Refere nce Manual, Rev . 3 6-4 F reescale Semiconductor yields a signed, two’ s co mplement power of two. This represents the magnitude of a normalized floating-point number when multiplied by the mantissa. By definition, a normalized mant issa always takes va lues starting from 1.
Operand Data Formats and T ypes MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-5 6.2.3.4 Not-A-Number When created by the FPU, NANs repr esent the results of ope rations having no mathem atical interpretation, such as infinity divided by infin ity .
MCF548x Refere nce Manual, Rev . 3 6-6 F reescale Semiconductor Biased exponent (e) 8 1 1 F racti on (f) 23 52 To t a l 3 2 6 4 Interpretation of Sign P ositive frac tion s = 0 s = 0 Negative fraction.
Regist er Defini tion MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-7 6.3 Register Definition The programmer ’ s model for the FP U consists of the following: • Eight 64-bit floa t.
MCF548x Refere nce Manual, Rev . 3 6-8 F reescale Semiconductor The user can read or write to FPCR using FMOVE or FREST ORE. A processor reset or a restore operation of the null state clears the FPCR. When this regist er is cleared, the FPU ne ver generates exceptions.
Regist er Defini tion MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-9 6.3.3 Floating-P oint Stat us Register (FPSR) The FPSR, Figure 6-10 , contains a floati ng-point condition code byte (FP CC), a floating-point exception status byte (EXC), and a floating- point accrued exception byte (AEXC).
MCF548x Refere nce Manual, Rev . 3 6-10 F reescale Semiconductor For AEXC[OVFL], AEXC[DZ], and AEXC[INEX], the ne xt value is determined by ORing the current AEXC value with the EXC equivale nt, as sh.
Floating-Point Computational Accuracy MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-11 For FPU instructions that can genera te exception traps, the 32-bit FPIAR is loaded with the instruction PC address before the FPU begins exec ution.
MCF548x Refere nce Manual, Rev . 3 6-12 F reescale Semiconductor double-precision format. If th e destination is a memory location or an integer data register , rounding precision is ignored.
Floating-Point Computational Accuracy MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-13 Figure 6-12. Rounding Algorithm Flo w chart The 3 additional bits beyond the double-precision for.
MCF548x Refere nce Manual, Rev . 3 6-14 F reescale Semiconductor The lsb of the rounded result does not increment even though the guard bit is set in the intermediate result.
Floating-Point P ost-Processing MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-15 rounding precision and mode. Afte r rounding, the inexact bit (INEX) is set as described in Figure 6-12 . Lastly , the magnitude of the result is checked to see if it exceeds the current rounding precision.
MCF548x Refere nce Manual, Rev . 3 6-16 F reescale Semiconductor unordered condition is present when the conditional test is attempted (IEEE nonaware tests).
Floating-P oint Exceptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-17 6.6 Floating-P o int Exceptions This section describes floating-point exceptions and how they are handled. Ta b l e 6 - 1 0 lists the vector numbers related to floating-point exce ptions.
MCF548x Refere nce Manual, Rev . 3 6-18 F reescale Semiconductor In addition to these vectors, at tempting to execute a FRESTO RE in struction with a unsupported frame value generates a format error exception (vector 14). See the FRESTORE instruction in t he ColdFir e Pr ogrammer ’ s Refer ence Manual .
Floating-P oint Exceptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-19 A floating-point arithmetic exception becomes pending when the result of a floating-point instruction sets an FPSR[EXC] bit and the correspondi ng FPCR[ENABLE] bit is set.
MCF548x Refere nce Manual, Rev . 3 6-20 F reescale Semiconductor 6.6.1.2 Input Not-A-Number (INAN) The INAN exception is a mechanis m for handling a user -defined, non -IEEE data type. If either input operand is a NAN, FPSR[INAN] is set. By enabling this exception, the us er can override the default action taken for NAN operands.
Floating-P oint Exceptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-21 6.6.1.4 Operand Error (OPERR) The operand error exception encompasses problems arisi ng in a variety of operations, including errors too infrequent or trivial to merit a specific exception condition.
MCF548x Refere nce Manual, Rev . 3 6-22 F reescale Semiconductor 6.6.1.6 Underflow (UNFL) An underflow exception occurs when the intermediate resu lt of an arithmetic inst ruction is too small to be r.
Floating-P oint Exceptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-23 6.6.1.8 Inexact Result (INEX) An INEX exception condition exists when the infinitely precise manti ssa of a .
MCF548x Refere nce Manual, Rev . 3 6-24 F reescale Semiconductor Note that if no intervention is n eeded, instead of FSA VE, the handler can simply clear the appropriate FPCR and FPSR bits and then return from the exception.
Instructions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-25 Normally , an exception handler executes FSA VE, proce sses the exception, clears the exception bit in the FSA VE state frame status word, and executes FRESTORE. If appropriate exception bits set in the status word are not cleared, the same exception is taken again.
MCF548x Refere nce Manual, Rev . 3 6-26 F reescale Semiconductor T able 6-24 defines the terminology used in T able 6-23 . F M O V E 111100100 0 e a mode ea reg 0 r/m 0 src spec dest reg opmode 111100.
Instructions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-27 6.7.2 Floating-P oint Instruction Execution Timing T able 6-25 shows the ColdFire execution times for the floa ting-point instructions in terms of processor core clock cycles.
MCF548x Refere nce Manual, Rev . 3 6-28 F reescale Semiconductor The ColdFire architecture supports concurrent execu tion of integer and floati ng-point instructions.
Instructions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 6-29 Some differences af fect function activation and return. M68000 su broutines typically began with FMOVEM #list,-(a7) to save registers on the system stack, with each register occupying three longwords.
MCF548x Refere nce Manual, Rev . 3 6-30 F reescale Semiconductor values be moved into a table of cons tants that can be referenc ed using PC-relative addr essing or as an of fset from another address pointer . See T able 6-29 . Finally , ColdFire and the M68000 differ in how exce ptions are made pending.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-1 Chapter 7 Local Memory This chapter describes the MCF548 x implementation of the ColdFi re V ersion 4e local memory specification. It consists of two major sections. • Section 7.2, “SRAM Overview ,” describes the MCF548 x core’ s local static RAM (SRAM) implementation.
MCF548x Refere nce Manual, Rev . 3 7-2 F reescale Semiconductor • Physical location on the processo r ’ s high-speed local bus with a user -programmed connection to the internal instruction or dat.
SRAM Register Definit ion MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-3 RAMBAR n fields are described in detail in Ta b l e 7 - 1 . 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 RB.
MCF548x Refere nce Manual, Rev . 3 7-4 F reescale Semiconductor The mapping of a given access into the SRAM uses the following algorithm to determine if the access hits in the memory: if (RAMBAR[0] = .
SRAM Initialization MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-5 3. After the data is loaded into the SRAM, it ma y be appropriate to revi se the RAMBAR attribute bits, including the write-protect and address-space mask fiel ds.
MCF548x Refere nce Manual, Rev . 3 7-6 F reescale Semiconductor ; +20 destinationOffset ; +24 bytesToMove move.l RAMBASE+RAMFLAGS,a0 ;define RAMBAR0 contents movec.l a0,rambar0;load it move.l 16(a7),a0;load argument defining *src lea.l RAMBASE,a1;memory pointer to SRAM base add.
Cache Or ganization MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-7 The MCF548 x processor ’ s Harvard memory structure in cludes a 32-Kbyte data cache and a 32-Kbyte instruction cache. Both are nonblocki ng and 4-way set-associative with a 16-byte line.
MCF548x Refere nce Manual, Rev . 3 7-8 F reescale Semiconductor Figure 7-3. Data Cache Or ganization and Line Format A set is a group of four line s (one from each level, or way), corr esponding to the same index into the cache array .
Cache Or ganization MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-9 Figure 7-4. Data Ca che—A: at Reset, B: aft er In validati on, C and D: Loading P attern A: Cache population at st.
MCF548x Refere nce Manual, Rev . 3 7-10 F reescale Semiconductor 7.9 Cache Operation Figure 7-5 shows the general flow of a caching operation using the 32-Kbyte data cache as an example.
Cache Operation MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-11 pseudo-round-robin replacement algorithm to choose th e line to be deallocate d and replaced. First the cache controller looks for an invalid line, with way 0 the highest priority .
MCF548x Refere nce Manual, Rev . 3 7-12 F reescale Semiconductor V alid cache entries that match during cache-inhibited address accesses are neithe r pushed nor invalidated. Such a scenario suggests that the associated cache mode for this a ddress space was changed.
Cache Operation MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-13 7.9.1.1.2 C opybac k Mode (Data Cache Only) Copyback regions are typically used for local data structures or stacks to mi nimize external bus use and reduce write-access latency .
MCF548x Refere nce Manual, Rev . 3 7-14 F reescale Semiconductor an exception aborts the instruction and the data may be accessed again when the instruction is restarted. These guarantees apply only when ACR n [CM] indicates precise mode and aligned accesses.
Cache Operation MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-15 7.9.2.3 Read Hit On a read hit, the cache provides th e data to the processor core and the cache line state remains unchanged.
MCF548x Refere nce Manual, Rev . 3 7-16 F reescale Semiconductor 7.9.4.2 Cache Pushes Cache pushes occur for line replacem ent and as required for the execution o f the CPUSHL instruction.
Cache Operation MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-17 7.9.5 Cache Loc king W ays 0 and 1 of the data cache ca n be locked by setting CACR[DHLCK]; likewise, ways 0 and 1 of the instruction cache can be locked by setting CACR[IHLCK].
MCF548x Refere nce Manual, Rev . 3 7-18 F reescale Semiconductor Figure 7-7. Data Cache Locking A: W ays 0 and 1 are filled. W a ys 2 and 3 are inv alid. B: CA CR[DHLCK] is set, locking wa ys 0 and 1. C: When a set in W a y 2 is occupied, the set in wa y 3 is used for a cacheable access.
Cache Register Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-19 7.10 Cache Register Definition This section describes the MCF548 x implementation of the V ersion 4e cache registers. 7.10.1 Cache Contr ol Register (CA CR) The CACR in Figure 7-8 contains bits for configur ing the cache.
MCF548x Refere nce Manual, Rev . 3 7-20 F reescale Semiconductor 28 DDPI Disable CPUSHL inv al idation. 0 Normal operation. A CPUSHL instr uction causes t he selected line to be pushe d if modified, then inv alid ated. 1 No clear operation. A CPUSHL instruction causes the selected line to be pushed if modifie d, then left valid.
Cache Register Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-21 13 DNFB Default cache-inhibited fill buff er 0 Fill b uff er does not store cache-inhibit ed instr uction accesses (16 or 32 bits). 1 Fill b u ff er can store cache-inhibited accesses.
MCF548x Refere nce Manual, Rev . 3 7-22 F reescale Semiconductor 7.10.2 Access Contr o l Register s (A CR0–A CR3) The ACRs, Figure 7-9 , assign control attributes, such as ca che mode and write protection, to specified memory regions. ACR0 and ACR1 control data attributes; ACR2 and ACR3 control instruction attributes.
Cache Manageme nt MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-23 7.11 Cache Mana gement The cache can be enabled and configured by usi ng a MOVEC instruction to access CACR.
MCF548x Refere nce Manual, Rev . 3 7-24 F reescale Semiconductor The contents of A n used with CPUSHL specify cache row and line indexes. This differs from the 68K family where a physical address is specified. Figure 7-1 1 shows the A n format for the data cache.
Cache Manageme nt MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-25 dataCacheLoadAndLock: move.l #0xa3080800,d0; enable and invalidate data cache . .. movec d0,cacr ; ... in the CACR The following code preloads half of the data cache ( 16 Kbytes).
MCF548x Refere nce Manual, Rev . 3 7-26 F reescale Semiconductor 7.12 Cache Operation Summary This section gives operational deta ils for the cache and presents inst ruction and data cache-line state diagrams.
Cache Operation Summary MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-27 7.12.2 Data Cache State T ransitions Using the V and M bits, the data c ache supports a line-based protocol allowing individual cache lines to be invalid, valid, or modifi ed.
MCF548x Refere nce Manual, Rev . 3 7-28 F reescale Semiconductor The following tables presen t the same information as Ta b l e 7 - 7 , organized by the curre nt state of the cache line.
Cache Operation Summary MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 7-29 In Ta b l e 7 - 9 the current state is valid. T able 7-8. Data Cache Line State T ransitions (Current Stat e In valid) Access Response Read miss (C,W)I1 Read line from memor y and up date cache; supply data to processor; go to valid state.
MCF548x Refere nce Manual, Rev . 3 7-30 F reescale Semiconductor In T able 7-10 the current state is modified. 7.13 Cache Initialization Code The following example sets up the cac he for FLASH or ROM space only . move.l #0xA30C8100,D0 //enable cache, invalidate it, //default mode is cache-inhibited imprec ise movec D0, CACR move.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-1 Chapter 8 Deb ug Suppor t 8.1 Intr oduction This chapter describes the Revisi on D enhanced hardware debug suppor t in the ColdFire V ersion 4. This revision of the ColdFire debug ar chitecture encompasses earlier re visions.
MCF548x Refere nce Manual, Rev . 3 8-2 F reescale Semiconductor generations of ColdFire cores. Fo r Revision A, CSR[ HRL] is 0. See Section 8.4.2, “Configuration/St atus Register (CSR) .
Signal Descriptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-3 Figure 8-2 shows PSTCLK timing with respect to PSTDDA T A. Figure 8-2. PSTCLK Timing 8.2.1 Pr ocessor Status/Debug Data (PSTDD A T A[7:0]) Processor status data output s are used to indicate both processor status and captured address and data values.
MCF548x Refere nce Manual, Rev . 3 8-4 F reescale Semiconductor output for the processor ’ s sequential execution of singl e-cycle instructions (A, B, C, D...). Cycle counts are shown relative to processor fre quency . These outputs indicate the curr ent processor pipeline status and are not related to the current bus transfer .
Real-Time T race Suppor t MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-5 NO TE A PST marker and its data display are sent cont iguously .
MCF548x Refere nce Manual, Rev . 3 8-6 F reescale Semiconductor 8.3.1 Begin Execution of T aken Branch (PST = 0x5) PST is 0x5 when a taken branch is executed. For some opcodes, a branch target address may be displayed on PSTDDA T A depending on the CSR settings.
Real-Time T race Suppor t MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-7 The simplest example of a branch in struction using a variant address is the compiled code for a C language case statement.
MCF548x Refere nce Manual, Rev . 3 8-8 F reescale Semiconductor 8.3.3 Pr ocessor Halted (PST = 0xF) PST is 0xF when the pr ocessor is halted (see Section 8.5.1, “CPU Halt ”). Because this encoding defines a multiple-cycle mode, the PSTDDA T A outputs display 0xF until the pr ocessor is restarted or reset.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-9 8.4 Memory Map/Register Definition In addition to the existin g BDM commands that provi de access to the processor’ s registers and the memory subsystem, the debug module contains 19 registers to support the re quired functionality .
MCF548x Refere nce Manual, Rev . 3 8-10 F reescale Semiconductor The registers in Ta b l e 8 - 7 are accessed through the BDM port by BDM commands, WDMREG and RDMREG , described in Section 8.5.3.3, “Command Set Descriptions .” These commands contain a 5-bit field, DRc, that specifies the register , as shown in Ta b l e 8 - 6 .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-11 to guarantee that all accesses to these resources are s erialized and logically consiste nt.
MCF548x Refere nce Manual, Rev . 3 8-12 F reescale Semiconductor Ta b l e 8 - 8 describes CSR fields. 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R BST A T FOF TRG HAL T BKPT HRL 0 BKD0 PCD0 IPW0 .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-13 18 BKD Breakpoint disable . Us ed to disable the normal BKPT input functionality a nd to allow the asser tion of BKPT to generate a debug interrupt.
MCF548x Refere nce Manual, Rev . 3 8-14 F reescale Semiconductor 8.4.3 PC Breakpoint ASID Contr ol Register (PB A C) The PBAC configures the breakpoint qualification for each PC breakpoint regi ster (PBR, PBR1, PBR2, and PBR3). Four bits are dedicated for each breakpoint register and specify how the ASID is used in PC breakpoint qualification.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-15 qualification. Reset cl ears these fields, disabling qualifications and defaulting to the Revision C debug module functionality . 8.4.4 BDM Address Attrib ute Register (B AAR) The BAAR defines the addre ss space for memory-referenci ng BDM commands.
MCF548x Refere nce Manual, Rev . 3 8-16 F reescale Semiconductor 8.4.5 Address Attrib ute T rigger Registers (AA TR, AA TR1) The AA TR and AA TR1, Figure 8-9 , define address attributes and a mask to be matc hed in the trigger .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-17 8.4.6 T rigger Definition Register (TDR) The TDR, shown in T able 8-10 , configures the operation of the hard ware breakpoint logi c that corresponds with the ABHR/ABLR/AA TR, PBR/ PBR1/PBR2/PBR3/PBMR, and DBR/DBMR registers within the debug module.
MCF548x Refere nce Manual, Rev . 3 8-18 F reescale Semiconductor taken under the defined conditions. Br eakpoint logic may be configured as one- or two-level triggers. TDR[31–16] or XTDR[31–16] define second-level triggers, and bits 15–0 define first-level triggers.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-19 28 EDL W2 Da ta enable bit: Data longword. Entire processor’s local data bus . 27 EDWL2 Data enable bit: Low er data word. 26 ED WU2 Data enable bit: Upper data word.
MCF548x Refere nce Manual, Rev . 3 8-20 F reescale Semiconductor 8.4.7 Pr ogram Counter Breakpoint and Mask Registers (PBR n , PBMR) Each PC breakpoint register (PBR, PBR1, PBR2, PBR3) defines an instruction a ddress for use as part of the trigger .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-21 Figure 8-12 shows PBMR. PBMR is accessible in supervis or mode as debug control register 0x09 using the WDEBUG instruction and via the BDM port using the WDMREG command.
MCF548x Refere nce Manual, Rev . 3 8-22 F reescale Semiconductor T able 8-15 describes ABLR and ABLR1 fields. T able 8-16 describes ABHR and ABHR1 fields . 8.4.9 Data Breakpoint and Mask Re gisters (DBR/DBR1, DBMR/DBMR1) The data breakpoint registers (DBR/DBR1, Figure 8-14 ), specify data patterns us ed as part of the trigger into debug mode.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-23 T able 8-17 describes DBR n fields. DBMR and DBMR1 are ac cessible in supervisor mode as debug c ontrol register 0x0F and 0x1F , using the WDEBUG instruction and via the BDM port using the WDMREG command.
MCF548x Refere nce Manual, Rev . 3 8-24 F reescale Semiconductor DBRs support both aligned a nd misaligned references. T able 8-19 shows relationships between processor address, access size, and locati on within the 32-bit data bus.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-25 8.4.11 Extended T rigger Definition Register (XTDR) The XTDR configures the operati on of the hardware .
MCF548x Refere nce Manual, Rev . 3 8-26 F reescale Semiconductor T able 8-21 describes XTDR fields. T able 8-21. XTDR Fi eld Descriptions Bits Name Description 31–30 — Reser ved, should be cleared.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-27 8.4.11.1 Resu lting Set of P oss ible T rigger Combinations The resulting set of possible breakpoint tr.
MCF548x Refere nce Manual, Rev . 3 8-28 F reescale Semiconductor then if (PC_breakpoint || Address1_breakpoint{&& Data1_break point}) if (Address1_breakpoint {&& Data1_breakpoint}) the.
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-29 4. The assertion of the BKP T input is treated as a pseudo-in terrupt; that is, asserting BKP T creates a pending halt, which is postponed until the processor core samples for halts/interrupts.
MCF548x Refere nce Manual, Rev . 3 8-30 F reescale Semiconductor 8.5.2 BDM Serial Interface When the CPU is halted and PSTDDA T A reflects th e halt status, the development system can send unrestricted commands to the debug module.
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-31 . T able 8-22 describes receive BDM packet fields. 8.5.2.2 Transmit P a c ket Format The basic transmit packet, Figure 8-20 , consists of 16 data bits and 1 control bit.
MCF548x Refere nce Manual, Rev . 3 8-32 F reescale Semiconductor Unassigned command opcodes are re served by Freescale. All unused command formats within any revision level perform a NOP and return the illegal command response .
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-33 8.5.3.1 ColdFire BDM Command Format All ColdFire Family BDM commands include a 16-bit operation word followed by an optional set of one or more extension words, as shown in Figure 8-21 .
MCF548x Refere nce Manual, Rev . 3 8-34 F reescale Semiconductor sends to the debug module; the bo ttom half indicates the debug m odule’ s response to the previous development system commands. Command and resu lt transactions overlap to minimize latency .
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-35 8.5.3.3 Command Set Descriptions The following sections describe the commands summarized in T able 8-24 . NO TE The BDM status bit (S) is 0 for nor mally completed commands.
MCF548x Refere nce Manual, Rev . 3 8-36 F reescale Semiconductor Command Format: Command Sequence Figure 8-26. WAREG / WDREG Command Seque nce Operand Data Longword data is wri tten into the specified address or data register . The data is supplied most-significant word first.
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-37 Command Sequence: Figure 8-28. READ Command Seque nce Operand Data The only operand is the longw ord address of the requested location.
MCF548x Refere nce Manual, Rev . 3 8-38 F reescale Semiconductor Result Data W ord results return 16 bits of data; l ongword results return 32. Bytes are returned in the LSB of a word result, the upper byte is undefined. 0x0001 (S = 1) is returned if a bus error occurs.
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-39 Command Sequence: Figure 8-30. WRITE Command Se quence Operand Data This two-operand instruction require s a longword absolute a ddress that specifies a location to which the data op erand is to be written.
MCF548x Refere nce Manual, Rev . 3 8-40 F reescale Semiconductor NO TE DUMP does not check for a valid address; it is a valid command only when preceded by NOP , READ , or another DUMP command. Otherwis e, an illegal command response is returned. NOP can be used for intercommand padding without corrupting the address pointer .
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-41 Result Data: Requested data is re turned as either a word or longword. Byte data is returned in the least-significant byte of a word result. W ord results return 16 bits of significant data; longword results return 32 bits.
MCF548x Refere nce Manual, Rev . 3 8-42 F reescale Semiconductor Command Sequence: Figure 8-34 . FILL Command Sequence Operand Data: A single opera nd is data to be writte n to the memory location. Byte data is sent as a 16-bit word, justified in the least-si gnificant byte; 16- and 32-bit operands are sent as 16 and 32 bits, respectively .
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-43 Result Data: The command-complete response ( 0xFFFF) is returned during the next shift operation. 8.5.3.3.8 N o Operation ( NOP ) NOP performs no operation and may be us ed as a null command where required.
MCF548x Refere nce Manual, Rev . 3 8-44 F reescale Semiconductor Command Sequence: Figure 8-40. SYNC _ PC Command Sequence Operand Data: None Result Data: Command complete status (0xFFFF) is returned when the register write is complete.
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-45 Figure 8-42. FORC E _ TA Command Sequence Operand Data: None Result Data: The command complete response, 0xFFF F (with the status bit cleared), is returned during the next shift operation.
MCF548x Refere nce Manual, Rev . 3 8-46 F reescale Semiconductor T able 8-26. ColdFire CPU Control Register Map Name CPU Space (Rc) Register Name Memory Management Contr ol Registers CA CR 0x002 Cache.
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-47 8.5.3.3.12 BDM Accesses of the Stack P ointer Regi sters (A7: SSP and USP) The V ersion 4 ColdFire core supports two unique stack pointer (A7) registers: th e supervisor stack pointer (SSP) and the user stack pointer (USP).
MCF548x Refere nce Manual, Rev . 3 8-48 F reescale Semiconductor Likewise, to write an accumulator register , the following BDM sequence is needed: BdmWriteACCx ( rcreg macsr; // read current macsr co.
Bac kgro und Deb ug Mode ( BDM) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-49 Command Sequence: Figure 8-46. WCREG Command Sequence Operand Data: This instruction re quires two longword operands. The first selects the register to which the operand data is to be wri tten; the second contains the data.
MCF548x Refere nce Manual, Rev . 3 8-50 F reescale Semiconductor T able 8-27 shows the definition of DRc encoding. Command Sequence: Figure 8-48. RDMR E G Command Sequence Operand Data: None Result Data: The contents of th e selected debug register are retu rned as a longword value.
Real-Tim e Debu g Support MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-51 Figure 8-50. WDMREG Command Sequence Operand Data: Longword data is written into the specified debug register . The data is supplied most-significant word first.
MCF548x Refere nce Manual, Rev . 3 8-52 F reescale Semiconductor BDM instructions use the appropriate registers to lo ad and configure breakpoints. As the system operates, a breakpoint trigger generates the response defined in TDR.
Real-Tim e Debu g Support MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-53 4. It executes an R TE instruction when the excep tion handler finishes.
MCF548x Refere nce Manual, Rev . 3 8-54 F reescale Semiconductor • Read/write control registers For BDM commands that access memory , the debug m odule requests the processor ’ s local bus.
Debug C Definition of PSTD D A T A Outputs MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-55 andi.l #<data>,Dx PSTDDA T A = 0x1 asl.l {Dy ,#<data>},Dx PSTDD A T A = 0x1 asr .l {Dy ,#<d ata>},Dx PSTDD A T A = 0x1 bcc.{b ,w ,l} if taken, then PS TDD A T A = 0x5, else PSTDD A T A = 0 x1 bchg.
MCF548x Refere nce Manual, Rev . 3 8-56 F reescale Semiconductor extb .l Dx PSTDD A T A = 0x1 illegal PSTDD A T A = 0x1 1 jmp <ea>y PSTDD A T A = 0x5, {[0x9AB], target address} 2 jsr <ea>y PSTDD A T A = 0x5, {[0x9AB], target address},{0x B , destination o perand} 2 lea.
Debug C Definition of PSTD D A T A Outputs MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-57 ori.l #<data>,Dx PSTDD A T A = 0x1 pea.l <ea>y PSTDD A T A = 0x1,{0xB, destination operand} pulse PSTDD A T A = 0x4 rems.l <ea>y ,Dw:Dx PSTDD A T A = 0x1,{0xB, source operand} remu.
MCF548x Refere nce Manual, Rev . 3 8-58 F reescale Semiconductor T able 8-31 shows the PSTDDA T A specification for multiply-a ccumulate instructions. 1 During nor mal exception processing, the PSTDD A T A output is driven to a 0xC indicating the exception processing state.
Debug C Definition of PSTD D A T A Outputs MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-59 T able 8-32 shows the PSTDDA T A specificat ion for floating-point instruct ions; note that <ea>y includes FPy , Dy , A y , and <mem>y addressing modes.
MCF548x Refere nce Manual, Rev . 3 8-60 F reescale Semiconductor Depending on the size of any extern al memory operand specified by the f<op>.fmt field, the data marker is defined as shown in T able 8-33 .
ColdFire Debug History MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-61 The move-to-SR and R TE instruct ions include an optional PSTDDA T A = 0x3 value, indicating an entry into user mode. Additionally , if the execution of a R T E instruction returns the pr ocessor to emulator mode, a multiple-cycle status of 0xD is signaled.
MCF548x Refere nce Manual, Rev . 3 8-62 F reescale Semiconductor The data_breakpoint can be included as an optional part of an address breakpoint. The ColdFire debug architectu re was created to provide this set of functionality without requiring the traditional connection to the exte rnal system bus.
Freescale-Recommended BDM Pinout MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 8-63 Additionally , the execution of the debug interrupt service routine is fo rced to be interrupt-inhibited by the processor hardware.
MCF548x Refere nce Manual, Rev . 3 8-64 F reescale Semiconductor Figure 8-51. Recommended BDM Connector 1 3 5 7 9 11 13 15 17 19 21 23 25 2 4 6 8 10 12 14 16 18 20 22 24 26 Developer reserved 1 GND GN.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor i Part II System Integration Unit Part II describes the system integrat ion unit, which provides overall cont rol of the bus and serves as the interface between the ColdFire core processor complex and internal pe ripheral devices.
MCF548x Refere nce Manual, Rev . 3 ii F reescale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 9-1 Chapter 9 System Integration Unit (SIU) 9.1 Intr oduction The system integration unit (SIU) of the MCF548 x family integrates several timer functions required by most embedded systems.
MCF548x Refere nce Manual, Rev . 3 9-2 F reescale Semiconductor 9.3.1 Module Base Address Register (MB AR) The supervisor -level MBAR, Figure 9-1 , specifies the base address a nd allowable access types for all internal peripherals.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 9-3 9.3.1.1 System Breakpoint Control Register (SBCR) The System Breakpoint Control Regi ster allows for discrete contro l over functionality of the BKP T signal.
MCF548x Refere nce Manual, Rev . 3 9-4 F reescale Semiconductor 9.3.1.2 SEC Sequential Access C ontr ol Register (SECSA CR) This register is used to contro l bus accesses to the SEC module.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 9-5 9.3.1.3 Reset Status Register (RSR) RSR allows the software, pa rticularly the reset except ion service routine, to know what type of reset has been asserted.
MCF548x Refere nce Manual, Rev . 3 9-6 F reescale Semiconductor T able 9-5. JT A GID Field Descriptions Bits Name Description 31–0 JTAGID The JT A G Identification Numbe r Register is a read only r egister which conta ins the JT AG ID number f or the MCF548x.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 10-1 Chapter 10 Internal Cloc ks and Bus Ar chitecture 10.1 Intr oduction This chapter describes the clocking and internal buses of the MCF548 x and discusses the main functional blocks controlling the XL bus and the XL bus arbiter .
MCF548x Refere nce Manual, Rev . 3 10-2 F reescale Semiconductor 10.1.2 Clocking Overvie w The MCF548 x requires a clock generated ex ternally to be input to the CLKIN signal. The MCF548 x uses this clock as the reference clock for the internal P LL. The internal PLL then generates the clocks needed by the CPU core and integrated peripherals.
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 10-3 • CommBus — The data transfer interface betw een the multichannel DMA and e ach peripheral function.
MCF548x Refere nce Manual, Rev . 3 10-4 F reescale Semiconductor Figure 10-3. Ad dress and Data T enures The following outlines the basic f unctions of each of the phases: • Address tenure: — Arbitration: During arbitration, a ddress bus arbitration signals are used to gain mastership of the address bus.
PLL MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 10-5 10.2 PLL 10.2.1 PLL Memory Map/Register Descriptions 10.2.2 System PLL Contr ol Register (SPCR) The system PLL control register ( SPCR) defines the clock enables used to control cloc ks to a se t of peripherals.
MCF548x Refere nce Manual, Rev . 3 10-6 F reescale Semiconductor 10.3 XL Bus Arbiter The XL bus arbiter handles bus arbitration between XL bus masters.
XL Bus Arbiter MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 10-7 algorithm (LRU). Once a requesting master is identified as having pr iority and is granted the bus, that master will be continue to be granted the bus if: 1. It is requesting the bus.
MCF548x Refere nce Manual, Rev . 3 10-8 F reescale Semiconductor 10.3.2.3 W atchdog Functions 10.3.2.3.1 Timer Functions There are three watchdog timers: addr ess tenure time out, data tenure time out, and bus activity time out. Each has a programmable timer count and can be disable d.
XL Bus Arbiter MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 10-9 10.3.3.1 Arbiter Configu ration Register (XARB_CFG) The arbiter configuration register is used to enable watchdog functions and arbiter protocol functions.
MCF548x Refere nce Manual, Rev . 3 10-10 F re escale Semiconductor 10.3.3.2 Arbiter V ersio n Register (XARB_VER) 4 — Reser ved, should be cleared. 3 BA Bus Activity Time-out Enable. If enabled, the ar biter will set the Bus Activi ty Time-out Status bit (XARB_SR[BA]) when the Bus Activity Time-out is reached.
XL Bus Arbiter MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 10-11 10.3.3.3 Arbiter Status Register (XARB_SR) The arbiter status regist er indicates the state of watchdog functions. When a monitored condition occurs, the respective bit is set to 1.
MCF548x Refere nce Manual, Rev . 3 10-12 F re escale Semiconductor to determine the state of the arbiter . It is possibl e that multiple conditions exist that would cause an interrupt. Disabling an interrupt by writ ing a 0 to a bit in this register w ill not clear the status bit in the arbiter status register .
XL Bus Arbiter MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 10-13 10.3.3.5 Arbiter Address Capt ure Register (XARB_ADRCAP) The arbiter address capture register will capture the address for a tenure that has an addr ess time-out, data time-out, or there is a tr ansfer error acknowledge from another source.
MCF548x Refere nce Manual, Rev . 3 10-14 F re escale Semiconductor 10.3.3.7 Arbiter Address T enure Time Out Register (XARB_ADRT O) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R 0000000000000000 W.
XL Bus Arbiter MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 10-15 10.3.3.8 Arbiter Data T enure Time Out Register (XARB_D A TT O) T able 10-11. XARB_ ADRT O Field Description s Bits Name Description 31–28 — Reser ved, should be cleared.
MCF548x Refere nce Manual, Rev . 3 10-16 F re escale Semiconductor 10.3.3.9 Arbiter Bus Activity Time Out Register (XARB_BUST O) 10.3.3.10 Arbiter Master Priority Enable Register (XARB_PRIEN) The arbiter master priority enable register determines whet her the arbiter uses th e hardwired or software programmable priority for a master .
XL Bus Arbiter MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 10-17 When enabled, the software programmable value in th e arbiter master priority register (XARB_PRI) is used as the priority for the master . When disable d, the master ’ s priority is determined as follows: 10.
MCF548x Refere nce Manual, Rev . 3 10-18 F re escale Semiconductor T able 10-16. XARB_PRI Field Des criptions Bits Name Description 31–15 — Reser ved, should be cleared. 14–12 M3P Maste r 3 Prior ity 11 — Reser ved, should be cleared. 10–8 M2P M aster 2 Prior ity 7–3 — Reser v ed, should be cleared.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 11-1 Chapter 11 General Purpose Timer s (GPT) 11.1 Intr oduction This chapter describes th e operation of the MCF548 x general purpose timers.
MCF548x Refere nce Manual, Rev . 3 11-2 F reescale Semiconductor 6. W atchdog T imer—This is a special CPU timer mode, available only on GP T0. The user must enable the watchdog timer mode, which is not active upon reset. The terminal count value is programmable.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 11-3 11.3.1 GPT Enable and Mode Select Register (GMS n ) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R O.
MCF548x Refere nce Manual, Rev . 3 11-4 F reescale Semiconductor 15 WD EN W atchdog enable. Enab les watchdog operation. A timer expiration causes an inter nal MCF548 x reset. W a tchdog operation requires the TMS field be set f or inter nal timer mode and the CE bit to be set.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 11-5 11.3.2 GPT Counter Input Register (GCIR n ) 8 IEN Inte rrupt enable. Enables interrupt generation to the CPU for all modes ( IC, OC , PWM, and Inter nal Timer ) .
MCF548x Refere nce Manual, Rev . 3 11-6 F reescale Semiconductor 11.3.3 GPT PWM Configur ation Register (GPWM n ) T able 11- 3. GCIR n Field Descriptions Bits Name Description 31–16 PRE Prescaler . Prescale amount applied to internal counter (in clocks).
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 11-7 11.3.4 GPT Status Register (GSR n ) 7–1 — Reser v ed. Should be cleared. 0 LOAD Bit forces immediate period update. Bit auto cl ea rs itself. A ne w perio d begins immediately with th e current count and width settings.
MCF548x Refere nce Manual, Rev . 3 11-8 F reescale Semiconductor 11.4 Functional Description 11.4.1 Timer Configuration Method Use the following method to configure each timer: 1. Determine the mode select field ( GMS n [TMS] ) value for the desired operation.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 12-1 Chapter 12 Slice Timer s (SL T) 12.1 Intr oduction This chapter explains the operation of the MCF548 x slice timers. 12.1.1 Overview T wo slice timers are included to provide shorter term pe riodic interrupts—SL T0 and SL T1.
MCF548x Refere nce Manual, Rev . 3 12-2 F reescale Semiconductor 12.2.1 SL T T erminal Count Register (STCNT n ) 12.2.2 SL T Control Register (SCR n ) 31 30 29 28 27 26 25 24 23 22 2 1 20 19 18 17 16 .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 12-3 12.2.3 SL T T imer Co unt Register (SCNT n ) T able 12-3.
MCF548x Refere nce Manual, Rev . 3 12-4 F reescale Semiconductor 12.2.4 SL T Status Register (SSR n ) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R 000000 B E S T 0000000 0 W R e s e t 0000000000 .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 13-1 Chapter 13 Interrupt Contr oller 13.1 Intr oduction This section details the f unctionality for the MCF548 x interrupt controller .
MCF548x Refere nce Manual, Rev . 3 13-2 F reescale Semiconductor and status register data, along with the 32-bit program counter value of the instruction that was interrupted (see Section 3.8.1, “Exception St ack Frame Definition,” for more information on the stack frame format).
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 13-3 8 fully-programmable interrupt sour ces are mapped into a single interr upt level. The “fixed” interrupt source is hardwired to the given level and represents the mid-point of the priority within the level.
MCF548x Refere nce Manual, Rev . 3 13-4 F reescale Semiconductor explicitly cleared in the interrupt service routine. This design provi des unique vector capability for all interrupt requests, regardless of the “complexity” of the peripheral device.
Memory Map/Regis ter Descriptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 13-5 13.2.1 Register Descriptions 13.2.1.1 Interrupt Pending Register s (IPRH, IPRL) The IPRH and IPRL reg.
MCF548x Refere nce Manual, Rev . 3 13-6 F reescale Semiconductor The IPR is a read-only register , so any attempted writ e to this register is ignor ed.
Memory Map/Regis ter Descriptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 13-7 13.2.1.2 Interrupt Mask Reg ister (IMRH, IMRL) The IMRH and IMRL registers are each 32 bits in size and provide a bit map for ea ch interrupt to allow the request to be disabled (1 = di sable the request, 0 = enable the reque st).
MCF548x Refere nce Manual, Rev . 3 13-8 F reescale Semiconductor 13.2.1.3 Interrupt Force Re gister s (INTFRCH, INTFRCL) The INTFRCH and INTFRCL registers ar e each 32 bits in size and provi de a mechanism to allow software generation of interrupts for each po ssible source for functional or de bug purposes.
Memory Map/Regis ter Descriptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 13-9 . 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R INTFRC[63:48] W R e s e t 0000000000000000 15 14 13 12 1 1 10 9 8 7 6 5 4 3 2 1 0 R INTFRC[47:32] W R e s e t 0000000000000000 Reg Addr MBAR + 0x710 Figure 13-5.
MCF548x Refere nce Manual, Rev . 3 13-10 F re escale Semiconductor 13.2.1.4 Interrupt Request L evel Register (IRLR) This 7-bit register is upda ted each machine cycle a nd represents the current interrupt requests for each interrupt level, where bit 7 corresponds to level 7, bit 6 to level 6, etc.
Memory Map/Regis ter Descriptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 13-11 13.2.1.6 Interrupt Cont r ol Register s 1–63 (ICR n ) Each ICR n specifies the interrupt level (1–7) and th e priority within th e level (0–7). All ICR n registers can be read, but only ICR8 to ICR63 ca n be written.
MCF548x Refere nce Manual, Rev . 3 13-12 F re escale Semiconductor 13.2.1.6.1 Interrupt Sources T able 13-12 lists the interrupt sources fo r each interrupt request line T able 13-12.
Memory Map/Regis ter Descriptions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 13-13 13.2.1.7 Software and Level n IA CK Registers (SWIA CKR, L1IA CK–L7IA CK) The eight IACK registers can be explicitly addressed via the CPU, or implicitly addressed via a processor-generated interrupt acknowledge cycle during exception processing.
MCF548x Refere nce Manual, Rev . 3 13-14 F re escale Semiconductor determines the highest pr iority within the level, and then re sponds with the unique vector number corresponding to that specific interrupt source. The vector number is suppl ied as the data for the byte-sized IACK read cycle.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 14-1 Chapter 14 Edge P or t Module (EPORT) 14.1 Intr oduction The edge port module (EPOR T) has se ven external interrupt pins, IRQ [7:1].
MCF548x Refere nce Manual, Rev . 3 14-2 F reescale Semiconductor NO TE The GPIO functionality of the external interrupt pins is controlled by the EPOR T module.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 14-3 14.3.2.1 EPORT Pin Assignm ent Register (EPP AR) 14.3.2.2 EPORT Data Dir ection Register (EPDDR) 1 5 1 4 1 3 1 2 1 1 1 0 9876543210 R EPP A7 EPP A6 EPP A5 EPP A4 EPP A3 EPP A2 EPP A1 0 0 W R e s e t 0000000000000000 Reg Addr MBAR + 0xF00 Figure 14-2.
MCF548x Refere nce Manual, Rev . 3 14-4 F reescale Semiconductor 14.3.2.3 Edg e P ort Interrupt Enable Register (EPIER) 14.3.2.4 Edg e P ort Data Reg ister (EPDR) T able 14-3. EPDDR Field Descriptions Bits Name Description 7–1 EPDD n Setting any bit in the EPDDR configures the corr esponding pin as an output.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 14-5 14.3.2.5 Edg e P or t Pin Data Register (EPPDR) 14.3.2.6 Edg e P ort Flag Register (EPFR) T able 14-5. EPDR Field Descriptions Bits Name Description 7–1 EPDx Edg e por t data bits.
MCF548x Refere nce Manual, Rev . 3 14-6 F reescale Semiconductor T able 14-7. EPFR Field Descript ions Bits Name Description 7–1 EPF n Edge por t flag bits. When an EPOR T pin is configured for edge triggering, its corresponding read/write bit in EPFR indicates th at the selected edge has been detected.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-1 Chapter 15 GPIO 15.1 Intr oduction Many of the MCF548 x pins whose primary functio n is to serve as the exte rnal interface to off-chip resources may also be used for general-purpose digi tal I/O (GPIO) acc ess and for one or two secondary functions.
MCF548x Refere nce Manual, Rev . 3 15-2 F reescale Semiconductor Figure 15-1. MCF548 x GPIO Module Block Di agram 15.1.1 Overview The MCF548 x GPIO module controls the c onfiguration and use for the f.
External Pin Description MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-3 • External DMA request and acknowledge (DMA) • PCI bus access (PCIGNT, PCIREQ) • Ethernet data and contr.
MCF548x Refere nce Manual, Rev . 3 15-4 F reescale Semiconductor DAC K 0 PDMA2 T OUT0 — DMA acknowledge 0 / P or t DMA2 / GP timer output 0 DREQ1 PDMA1 TIN1 IRQ1 DMA request 1 / P or t D MA1 / GP ti.
External Pin Description MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-5 FEC1MDC — SCL CANTX0 Ethernet Controller 1 manag ement data clock / I 2 C serial clock / Fle xCAN 0 transmit.
MCF548x Refere nce Manual, Rev . 3 15-6 F reescale Semiconductor Refer to the signals chapter of the MCF548 x chip specification for more de tailed descriptions of these signals. The function of most of th e pins (primary function, GPIO, etc. ) is determined by the GPIO module pin assignment registers.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-7 It should be noted from T able 15-1 that there are several cases wher e a function is mapped to more than one pin.
MCF548x Refere nce Manual, Rev . 3 15-8 F reescale Semiconductor 15.3.2 Register Descriptions 15.3.2.1 P or t x Output Data Registers (PODR_ x ) The PODR registers stor e the data to be driv en on the corresponding port x pins when the pins are configured for general purpose output.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-9 Most PODR_ x registers have full 8-bit implementations, as shown in Figure 15-2 . The remaining PODR_ x registers use fewer than eight bi ts. These registers are shown in Figure 15-3 , Figure 15-4 , Figure 15-5 , and Figure 15-6 .
MCF548x Refere nce Manual, Rev . 3 15-10 F re escale Semiconductor 15.3.2.1.3 5-Bit PODR_ x Registers The 5-bit PODR_ x registers are the output data registers for PPCIBG n (PODR_PCIBG) and PPCIBR n (PODR_PCIBR). Figure 15-4 displays the 5-bit PODR_ x registers.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-11 15.3.2.1.5 FBCS Regi ster (PODR_FBCS) The 5-bit PODR_FBCS register is the output data register for PFBCS n (PODR_FBCS). Figure 15-6 displays the 5-bit PODR_FBCS register .
MCF548x Refere nce Manual, Rev . 3 15-12 F re escale Semiconductor Most PDDR_ x registers have a full 8-bi t implementation, as shown in Figure 15-7 . The remaining PDDR_ x registers use fewer than eight bits . Their bit definitions are shown in Figure 15-8 , Figure 15-9 , Figure 15-10 , and Figure 15-1 1 .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-13 15.3.2.2.3 5-Bit PDDR_ x Registers The 5-bit PDDR_ x registers are the data di rection registers for PPCIBG n (PDDR_PCIBG) and PPCIBR n (PDDR_PCIBR). Figure 15-9 displays the 5-bit PDDR_ x registers.
MCF548x Refere nce Manual, Rev . 3 15-14 F re escale Semiconductor 15.3.2.2.5 FBCS Regi ster (PDDR_FBCS) The 5-bit PDDR_FBCS register is for data direction of PFBCS n .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-15 Most PPDSDR_ x registers have a full 8-bi t implementation, as shown in Figure 15-12 . The remaining PPDSDR_ x registers use fewer than eight bits . Their bit definitions are shown in Figure 15-13 , Figure 15-14 , Figure 15-15 , and Figure 15-16 .
MCF548x Refere nce Manual, Rev . 3 15-16 F re escale Semiconductor 15.3.2.3.3 5-Bit PPDSDR_ x Registers The 5-bit PPDSDR_ x registers are the pi n data and set data registers for PPCIBG n (PPDSDR_PCIBG) and PPCIBR n (PPDSDR_PCIBR). Figure 15-14 displays the 5-bit PPDSDR_ x registers.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-17 15.3.2.3.4 4-Bit PPDSDR_ x Registers The 4-bit PPDSDR_ x registers are the pin data a nd set data registers for PDMA n (PPDSDR_DMA) and PFECI2C n (PPDSDR_FECI2C).
MCF548x Refere nce Manual, Rev . 3 15-18 F re escale Semiconductor 15.3.2.4 P or t x Clear Output Data Registers (PCLRR_ x ) W riting 0s to a PCLRR_ x register clears the corresponding bits in the PODR_ x register . Wr iting 1s has no effect. Reading the PCLRR_ x register returns 0s.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-19 15.3.2.4.1 7-Bit PCLRR_ x Register The 7-bit PCLRR _ DSPI register is the clear output data register for PDSPI n . Figure 15-18 displays the 7-bit PCLRR _ DSPI register .
MCF548x Refere nce Manual, Rev . 3 15-20 F re escale Semiconductor 15.3.2.4.3 4-Bit PCLRR_ x Registers The 4-bit PCLRR_ x registers are the clear out put data registers for PDMA n (PCLRR_DMA) and PFECI2C n (PCLRR_FECI2C). Figure 15-20 displays the 4-bit PCLRR_ x registers.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-21 15.3.2.5 P or t x Pin Assignment Registers (P AR_ x ) The P AR_ x registers select the signal function th at will be driven on the physical pin. 15.3.2.5.
MCF548x Refere nce Manual, Rev . 3 15-22 F re escale Semiconductor 15.3.2.6 FlexBus Chip Select Pin Assignment Register (P AR_FBCS) The P AR_FBCS register controls the function of the FlexBus chip select signal pins. The P AR_FBCS register is read/write.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-23 15.3.2.7 DMA Pin Assig nment Register (P AR_DMA ) The P AR_DMA register controls the function of the four MCF548 x DMA pins. The P AR_DMA register is read/write 15.
MCF548x Refere nce Manual, Rev . 3 15-24 F re escale Semiconductor 1 5 1 41 3 1 2 1 1 1 0 9876543210 RP A R _ E07 PA R _ E0MII PA R _ E0MDIO PA R _ E0MDC PA R _ E17 PA R _ E1MII P AR_E1MDIO P AR_E1MDC 0 0 P AR_ SD A PA R _ SCL PA R _ IRQ6 PA R _ IRQ5 W R e s e t 00 0 0 001111000011 Reg Addr MBAR + 0xA44 (P AR_FECI2CIRQ) Figure 15-25.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-25 15.3.2.9 PCI Grant Pin Assignm ent Register (P AR_PCIBG) The P AR_PCIBG register controls the functions of the PCI grant pins. Th e P A R_PCIBG register is read/write.
MCF548x Refere nce Manual, Rev . 3 15-26 F re escale Semiconductor 15.3.2.10 PCI Request Pin Assi gnment Register (P AR_PCIBR) The P AR_PCIBR controls the functions of the PC I request pins. The P AR_PCIBR is read/write. 5–4 P AR_ PCIBG2 PCIBG2 pin assignment.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-27 15.3.2.11 PSC3 Pin Assignm ent Register (P AR_PSC3) The P AR_PSC3 register controls th e functions of the PSC3 pins. The P AR_PSC3 register is read/write.
MCF548x Refere nce Manual, Rev . 3 15-28 F re escale Semiconductor 15.3.2.12 PSC2 Pin Assignm ent Register (P AR_PSC2) The P AR_PSC2 register controls th e functions of the PSC2 pins. The P AR_PSC2 register is read/write. 15.3.2.13 PSC1 Pin Assignm ent Register (P AR_PSC1) The P AR_PSC1 register controls th e functions of the PSC1 pins.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-29 15.3.2.14 PSC0 Pin Assignm ent Register (P AR_PSC0) The P AR_PSC0 register controls th e functions of the PSC0 pins. The P AR_PSC0 register is read/write.
MCF548x Refere nce Manual, Rev . 3 15-30 F re escale Semiconductor 15.3.2.15 DSPI Pin Assignment Register (P AR_DSPI) The P AR_DSPI register contro ls the functions of MCF548 x DSPI pins. The P A R_DSPI register is read/write. T able 15-33. P AR_PCS0 Descriptions Bits Name Description 7–6 PAR_ CTS0 PSC0CTS pin assignment.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-31 15.3.2.16 General Purpose Timer Pin Assignment Register (P AR_TIMER) The P AR_TIMER register contro ls the functions of MCF548 x general purpose timer pins.
MCF548x Refere nce Manual, Rev . 3 15-32 F re escale Semiconductor NO TE Explicit pin function assignment cap ability for the TIN1, T OUT1, TIN0, and TOUT0 pins is not needed in th e GPIO module since these pins only have the primary timer functions and general pu rpose I/O.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 15-33 (PPDSDR_x) to monitor and control the stat e of its pins. Data written to a PODR_ x register is stored and then driven to the corresponding port x pins configured as outputs.
MCF548x Refere nce Manual, Rev . 3 15-34 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor i Part III On-Chip Integration Part III describes on-chip integration for the MCF548 x device. It includes descriptions of the system SRAM, SDRAM controller , PCI, Fl exBus interface, FlexCAN, SEC cryptography accelerator , and JT AG .
MCF548x Refere nce Manual, Rev . 3 ii F reescale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 16-1 Chapter 16 32-Kb yte System SRAM 16.1 Intr oduction This chapter explains the operation of the MCF548 x 32-Kbyte system SRAM. 16.1.1 Block Diagram The system SRAM is organized as f our 8-Kbyte banks, each or ganized as 2048 × 32-bits.
MCF548x Refere nce Manual, Rev . 3 16-2 F reescale Semiconductor The system SRAM contents always reside at MBAR + 0x0001 0000; ther efore, it can be relocated by changing the MBAR contents.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 16-3 16.2.1 System SRAM Config uration Register (SSCR) This register is used to define the base address of the system SRAM and whether to interleave the banks.
MCF548x Refere nce Manual, Rev . 3 16-4 F reescale Semiconductor 16.2.2 T ransfer Count Config uration Register (TCCR) This register is used to confi gure the allocated maximum transfer count for each bank for the following masters: the ColdFire core, DMA, SEC, or PCI.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 16-5 16.2.3 T ransfer Count Configu rat ion Register—DMA Read Channel (TCCRDR) This register is used to co.
MCF548x Refere nce Manual, Rev . 3 16-6 F reescale Semiconductor 16.2.4 T ransfer Count Configu rat ion Register—DMA Write Channel (TCCRD W) This register is used to configure the allocated ma ximum transfer count for each bank of the DMA write channel as it accesses SRAM directly , without going through the system bus.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 16-7 16.2.5 T ransfer Count Configu r ation Register—SEC (TCCRSEC) This register is used to configur e the allocated maximum transfer c ount for each bank for the SEC as it accesses SRAM directly , without going through the system bus.
MCF548x Refere nce Manual, Rev . 3 16-8 F reescale Semiconductor 16.3 Functional Description The system SRAM decodes the addre sses for all four banks to determin e wh ich master is trying to access which bank. The system SRAM modul e provides a bus arbitr ation mechanism for gr anting access of each bank to each master .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-1 Chapter 17 Flex Bus 17.1 Intr oduction This chapter describes d ata transfer operations, error conditi ons, and reset operations. It describes transfers initiated by the MCF548 x and includes detailed timing diagrams showing the interaction of signals in supported bus operations.
MCF548x Refere nce Manual, Rev . 3 17-2 F reescale Semiconductor 17.2 Byte Lanes Figure 17-1 shows the byte lanes that extern al memory should be connected to and the sequential transfers if a longword is transferred for three port sizes. Fo r example, an 8-bit memory should be connected to AD[31:24] (BE /BWE0 ).
External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-3 Figure 17-2 . Multiple xed FlexBu s Implementat ion 17.4 External Signals This section describes the external signals th at are involved in data transfer operations. T able 17-1 summarizes the MCF548 x FlexBus signals.
MCF548x Refere nce Manual, Rev . 3 17-4 F reescale Semiconductor 17.4.1 Chip-Select (FBCS [5:0]) The chip-select signal indicates whic h device is being selected. A partic ular chip-select asserts when the transfer address is within the device ’ s address space as defined in the ba se and mask addre ss registers, see Section 17.
External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-5 For aligned transfers larger than the port size, TSIZ[1:0] behaves as follows: • If bursting is used, TSIZ[1:0] is driven to the size of transfer . • If bursting is inhibited, TSIZ[1:0] first shows the si ze of the entire transfer and then shows the port size.
MCF548x Refere nce Manual, Rev . 3 17-6 F reescale Semiconductor 17.5 Chip-Select Operation Each chip-select has a dedicated set of the foll owing registers for conf iguration and control: • Chip-select address registers (C SARn) control the base address space of the chip-select.
Chip-Select Operation MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-7 17.5.2 Chip-Select Register s The following tables describe in detail the registers and bit meanings for confi guring chip-select operation. The chip-select controller register map is accessed re lative to the memory base address register (MBAR).
MCF548x Refere nce Manual, Rev . 3 17-8 F reescale Semiconductor 1 The access column indicates whether the corresponding regist er allows both read/wr ite functionality (R/W), read-only functionality (R), or wr ite-only function ality (W). A read access to a write-only reg ister returns zeros .
Chip-Select Operation MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-9 17.5.2.2 Chip-Select Mask Register s (CSMR0–CSMR5) CSMR n , Figure 17-4 , are used to specify the address mask and allowable access types for the respective chip-selects.
MCF548x Refere nce Manual, Rev . 3 17-10 F re escale Semiconductor 17.5.2.3 Chip-Select Control Registers (CSCR0–CSCR5) Each CSCR n , Figure 17-5 , controls the auto acknowledge, addre ss setup and hold times, port size, burst capability , and activation of each chip-select.
Chip-Select Operation MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-11 19–18 RDAH Read Address Hold or (Deselect). This field controls th e address and attribute hold time after the ter mination during a read cycle that hits in the chip-select address space.
MCF548x Refere nce Manual, Rev . 3 17-12 F re escale Semiconductor 17.6 Functional Description 17.6.1 Data T ransfer Operation Data transfers between the MCF548 x and other devices involve the followi.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-13 Figure 17-6. Connections for External Memory P ort Sizes 17.6.3 Address/Data Bus Multiple xing The MCF548 x FlexBus uses a 32-bit wide multiplexed addr ess and data bus (AD[31: 0]).
MCF548x Refere nce Manual, Rev . 3 17-14 F re escale Semiconductor 4. FBCS n is negated at the fourth rising clock edge. This last clock of the bus cycle uses what would be an idle clock between cycles to provide hol d time for address, attr ibutes, and write data.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-15 17.6.5 Fle xBus Timing Examples 17.6.5.1 Basic Read Bus C yc le During a read cycle, the MCF548 x receives data from memory or from a peripheral device. Figure 17-8 is a read cycle flowchart.
MCF548x Refere nce Manual, Rev . 3 17-16 F re escale Semiconductor Figure 17-9. Ba sic Read Bus Cyc le 17.6.5.2 Basic Write Bus C yc le During a write cycle, the MCF548 x sends data to memory or to a peripheral device. The write cycle flowchart is shown in Figure 17-10 .
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-17 The write cycle timing diagram is shown in Figure 17-1 1 . Figure 17-11. Basic Wri te Bus Cycle 17.6.5.3 Bus Cycle Multiple xing This section shows timing diagrams for various port size scenarios.
MCF548x Refere nce Manual, Rev . 3 17-18 F re escale Semiconductor Figure 17-12. Single W ord Read T ransfer with Muxed 32- A / 16-D or Non-Mu xed 16-A / 16 -D Figure 17-13 shows the similar configuration for a write transfer . The data is driven from the second clock on AD[31:16].
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-19 Figure 17-14 illustrates the basic byte read transfer to an 8-bit device with no wait s tates. The address is driven on the full AD[31:0] bus in the first clock.
MCF548x Refere nce Manual, Rev . 3 17-20 F re escale Semiconductor Figure 17-15. Si ngle Byte Write T ransfer with Muxed 32-A / 8-D or Non-Mux ed 24-A / 8-D Figure 17-16 depicts a longword read through a 32-bit device. Notice that when the device port size is 32 bits, the only mode the bus supports is multiplexing address and data lines.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-21 Figure 17-17 illustrates the longword write to a 32-bit device.
MCF548x Refere nce Manual, Rev . 3 17-22 F re escale Semiconductor Figure 17-18. Basi c Read Bus Cyc le (No W ait States) Figure 17-19. Basic Write Bus Cyc le (No W ait States) If wait states are used.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-23 Figure 17-20 . Read Bus Cyc le (One W ait State) Figure 17-21.
MCF548x Refere nce Manual, Rev . 3 17-24 F re escale Semiconductor Figure 17-22 . Read Bus Cycle with T wo Clock Address Setup (No W ait St ates) Figure 17-23. Wri te Bus Cycl e with T wo Cloc k Addres s Setup (No W ait States) In addition to address set up, there is also a programma ble address hold option for ea ch chip select.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-25 Figure 17-24. Re ad Cycl e with T wo Clock Address Hold (No W ait States) Figure 17-25. Write Cyc le with T wo Cloc k Address Hold (No W ait States) Figure 17-26 shows a bus cycle that uses addres s setup, wait states, and address hold.
MCF548x Refere nce Manual, Rev . 3 17-26 F re escale Semiconductor Figure 17-26. Write Cyc l e with T wo Cloc k Address Setup and T wo Cl ock Hold (One W ait State) 17.6.6 Burst Cyc les The MCF548 x can be programmed to in itiate burst cycles if its transfer size exceeds the size of the port it is transferring to.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-27 NO TE Line-sized transfers requested by the core or cache are broken up into four individual longword transfers, but the DMA can request line -sized transfers when the read line or combine wr ite flags are set.
MCF548x Refere nce Manual, Rev . 3 17-28 F re escale Semiconductor Figure 17-28. Lo ngwor d Write Burst to 8-Bit P or t 3-1-1-1 (No W ait States) Figure 17-29 shows a longword read through an 8-bit device with burst inhibited. Th e transfer results in four individual transfers.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-29 Figure 17-30 shows a longword write through an 8-bit device with burst inhi bited.
MCF548x Refere nce Manual, Rev . 3 17-30 F re escale Semiconductor Figure 17-31 illustrates a write burst trans fer with one wait state. Figure 17-32. Longw ord Write Burst to 8-Bit P o rt 4-2-2-2 (One W ait State) If address setup and hold are used, only the first and last beat of the burst cycle w ill be af fected as shown in Figure 17-33 .
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 17-31 Figure 17-34. Longw or d Write Burst to 8-Bit P or t 4-1-1-1 (Address Setup and Hold) 17.6.7 Misaligned Operands Because operands, unlike opc odes, can reside at any byte boundary , th ey are allowed to be misaligned.
MCF548x Refere nce Manual, Rev . 3 17-32 F re escale Semiconductor Figure 17-36. Examp le of a Misaligne d W ord T ransfer (32-Bit P or t) 17.6.8 Bus Error s The MCF548 x has no bus monitor .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-1 Chapter 18 SDRAM Contr oller (SDRAMC) 18.1 Intr oduction This chapter describes configurat ion and operation of the synchrono us DRAM (SDRAM) controller . It begins with a general overview a nd includes a description of signals involved in SDRAM operations.
MCF548x Refere nce Manual, Rev . 3 18-2 F reescale Semiconductor 18.2.3 Block Diagram Figure 18-1. SDRAM Contr oller Block Diagram 18.3 External Signal Description 18.3.1 SDRAM Data Bus (SDD A T A[31:0]) SDDA T A[31:0] is the bidirectional, non-multiplexed data bus used for SDRAM accesses.
External Signal Description MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-3 18.3.4 SDRAM Row Ad dress Str o be (RAS ) This output is the SDRAM s ynchronous row address strobe. 18.3.5 SDRAM Column Address Str obe (CAS ) This output is the SDRAM sync hronous column address strobe.
MCF548x Refere nce Manual, Rev . 3 18-4 F reescale Semiconductor 18.3.12 SDRAM Cloc k Enable (SDCKE) This output is the SDRAM clock enable. SDCKE nega tes to put the SDRAM into low-power , self-refresh mode. 18.3.13 SDR SDRAM Da ta Str obe (SDRDQS) This is connected to SDDQS inputs.
Interface Recommendations MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-5 All memory devices of a si ngle chip select block must have the same configuration and row/col address width; however , this is not necessa ry between different bl ocks.
MCF548x Refere nce Manual, Rev . 3 18-6 F reescale Semiconductor 18.4.2 SDRAM SD R Connections Figure 18-2 shows a block diagram of the connections between the MCF548 x and SDR SDRAM components. SDR design requires sp ecial timing consideration for th e SDDQS[3:0] signals.
Interface Recommendations MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-7 Figure 18-3. MCF548 x Connections to DDR SDRAM 18.4.4 SDRAM DDR DIMM Connections There is a JEDEC standard for a 100-pin DDR DIMM with a 32-bit wide data bus. This DIMM standard was designed specifically to support 32-bit processors.
MCF548x Refere nce Manual, Rev . 3 18-8 F reescale Semiconductor Figure 18-4. MCF548 x Connections to 100-pin DDR SDRAM DIMM 18.4.5 DDR SDRAM La y o ut Considerations Due to the critical timing for DDR SDRAM, there are a number of consid erations that should be taken into account during PCB layout: • Minimize overall trace lengths.
SDRAM Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-9 18.4.5.1 T ermination Example Figure 18-5 shows the recommended termination circuitry for DDR SDRAM signals. Figure 18-5. MCF548 x DDR SDRAM T ermination Circuit 18.5 SDRAM Overview 18.
MCF548x Refere nce Manual, Rev . 3 18-10 F re escale Semiconductor Many commands require a delay befo re the next command may be issued; sometimes the delay depends on the type of the next command. These delay requirements are manage d by the values programmed in the memory controller configurat ion registers (SDCFG1, SDCFG2).
SDRAM Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-11 issue a P ALL command to close the active row . Then the SDRAMC issu es ACTV to activate the necessary row and bank for the new access, followed finally by the WRITE command.
MCF548x Refere nce Manual, Rev . 3 18-12 F re escale Semiconductor 18.5.1.5.1 Mode Register Definition Figure 18-6 shows the mode register defi nition. Note that this is the SDRAM’ s mode register not the SDRAMC’ s mode/extended mode register (SDMR) defined in Section 18.
SDRAM Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-13 18.5.1.6 Auto Refresh Command (REF) The memory controller issues auto refresh commands according to the SDCR[RC] value. Each time the programmed refresh interval elapses, the memor y controller is sues a P ALL command followed by a REF command.
MCF548x Refere nce Manual, Rev . 3 18-14 F re escale Semiconductor 18.5.2.1 SDR Initialization SDR initialization requires the following s teps: 1. After reset is deactivated, pause for the amount of time indicated in the SDRAM specification. Usually 100 µ s or 200 µ s.
Functional Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-15 8. Issue a second P ALL command. Initialize the SDRAM control regi ster (SDCR) with SDCR[IP ALL] set. The SDCR[REF , and IREF] b its should remain clea red for this step.
MCF548x Refere nce Manual, Rev . 3 18-16 F re escale Semiconductor The SDRAM controller supports a ll possible XLB transfer sizes. SDRAMs are “burst only” devices; unnecessary beats on the memory bus are masked (write) or discarded (read). The SDRAMC will perform line bur sts (32 byte) for all SDRAM access.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-17 18.7.1 SDRAM Drive Strength Register (SDRAMDS) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R 0 0 0.
MCF548x Refere nce Manual, Rev . 3 18-18 F re escale Semiconductor 18.7.2 SDRAM Chip Select Co nfiguration Registers (CS n CFG) Any chip select can be enabled or disabled, independe nt of others. Any chip se lect can be allocated any size of address space from 1 Mbyte to 4 Gbyte, independent of others .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-19 CS3CFG = 94000019 = 64M @ 0x9400 0000-0x97FF FFFF CS4CFG = 8000001b = 256M @ 0x8000 0000-0x8FFF FFFF CS5CFG = 00000000 = disable This gives 400 Mbyte total memory , at 0x8000 0000-0x98FF FFFF 18.
MCF548x Refere nce Manual, Rev . 3 18-20 F re escale Semiconductor 18.7.4 SDRAM Contr o l Register (SDCR) The SDCR, shown in Figure 18-1 1 , controls SDRAMC operating mode s including the refresh count and address line muxing.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-21 18.7.5 SDRA M Configuratio n Register 1 (S DCFG1) The 32-bit read/write SDRAM configur ation regis ter 1 (SDCFG1) stores delay values necessary between specific SDRAM commands.
MCF548x Refere nce Manual, Rev . 3 18-22 F re escale Semiconductor The minimum values of certain fields can be dif ferent for SDR and DDR SDRAM , even if the data sheet timing is the same, because: .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-23 18.7.6 SDRA M Configuratio n Register 2 (S DCFG2) The 32-bit read/write configuratio n register 2 stores delay values necessary between specific SDRAM commands.
MCF548x Refere nce Manual, Rev . 3 18-24 F re escale Semiconductor 18.8 SDRAM Example This example interfaces two 16M × 16-bit × 4 bank DDR SDRAM components to an MCF548 x operating at a 120 MHz SDCLK frequency . T able 18-14 lists design specifications for this example.
SDRAM Example MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-25 18.8.1 SDRAM Signal Drive Strength Settings The SDRAMDS should be pr ogrammed as shown in Figure 18-14 . The settings assume the normal drive strength for 2.5V drive, 7.6m A, is suf ficient for th e loading in the system.
MCF548x Refere nce Manual, Rev . 3 18-26 F re escale Semiconductor This configuration results in a valu e of SDRAMDS = 0x0000_0019, as described in T able 18-16 . 18.8.3 SDRAM Configuration 1 Register Settings The SDCFG1 register should be programmed as shown in Figure 18-16 .
SDRAM Example MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-27 18.8.4 SDRAM Configuration 2 Register Settings The SDCFG2 register should be programmed as shown in Figure 18-17 . This configuration results in a valu e of SDCFG2 = 0x4677_0000, as described in T able 18-18 .
MCF548x Refere nce Manual, Rev . 3 18-28 F re escale Semiconductor This configuration results in a valu e of SDCR = 0xE10D_0002, as described in T able 18-19 .
SDRAM Example MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-29 18.8.6 Set the Extended Mode R egister The SDMR should be pr ogrammed as shown in Figure 18-19 . This step enables the DDR memory’ s DLL. This configuration results in a valu e of SDMR = 0x4001_0000, as described in T able 18-20 .
MCF548x Refere nce Manual, Rev . 3 18-30 F re escale Semiconductor 18.8.8 Issue a P ALL command The SDCR should be pr ogrammed as shown in Figure 18-21 . This will issue a second P ALL command to the memory . The same SDCR value calculated in Section 18.
SDRAM Example MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-31 18.8.9 P erform T wo Refresh Cyc les The SDCR should be progr ammed as shown in Figure 18-22 . Along with the base settings for the SDCR the MODE_EN and IREF bits are set to issue an REF co mmand to the SDRAM and enable writing of the mode register .
MCF548x Refere nce Manual, Rev . 3 18-32 F re escale Semiconductor 18.8.10 Clear the Reset DLL Bit in the Mode Register The SDMR should be programmed as shown in Figure 18-20 . This step programs th e mode register and enables normal operation o f the DLL by clearing the “reset DLL” option.
SDRAM Example MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-33 18.8.11 Enable A utomatic Refr esh and Lock Mode Register The SDCR should be progr ammed as shown in Figure 18-24 . Along with the base settings for the SDCR the REF bit is set to enable auto matic refreshing of the memory .
MCF548x Refere nce Manual, Rev . 3 18-34 F re escale Semiconductor 18.8.12 Initialization Code The following assembly code ini tializes the DDR SDRAM using the re gister values determined above. Basic Configuration and Initialization: move.l #0x000002AA, d0//Initialize SDRAMDS move.
SDRAM Example MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 18-35 move.l #0x008D0000, d0//Write LMR and clear reset DLL move.l d0, SDMR Enable Auto Refresh and Lock SDMR: move.l #0x710D0F00, d0//Enable auto refresh and clear MODE_EN move.
MCF548x Refere nce Manual, Rev . 3 18-36 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-1 Chapter 19 PCI Bus Contr oller 19.1 Intr oduction This chapter details the operation of the PCI bus controller for the MCF548 x device. The PCI Bus Arbiter is detailed in Chapter 20, “PCI Bus Arbiter Module.
MCF548x Refere nce Manual, Rev . 3 19-2 F reescale Semiconductor • Compatible with PCI 2.2 specification • PCI initiator and target operation • Fully synchronous design • 32-bit PCI address bus • PCI 2.
External Signal Description MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-3 19.2.3 Device Select (PCIDEVSEL) The PCIDEVSEL signal is asserted active low when the PCI c ontroller decodes that it is the target of a PCI transaction from the address presente d on the PCI bus during the address phase.
MCF548x Refere nce Manual, Rev . 3 19-4 F reescale Semiconductor 19.2.13 T arget Ready (PCITRD Y ) The PCITRDY signal is asserted active low by the currently a ddressed tar get to indicate that it is ready to complete the current data phas e.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-5 MBAR + 0xB68 PCITBATR1 32 Target Base Address Transla tion Register 1 R/W MBAR + 0xB6C PCITCR 32 Target.
MCF548x Refere nce Manual, Rev . 3 19-6 F reescale Semiconductor 19.3.1 PCI T ype 0 Conf iguration Registers The PCI controller supplies a type 0 PCI configuration space header. These registers are accessible as an offset from MBAR or through exte rnally mastered PC I c onfiguration cycles.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-7 19.3.1.1 Device ID/V endor ID Regist er (PCIIDR)—PCI Dwor d Addr 0 19.
MCF548x Refere nce Manual, Rev . 3 19-8 F reescale Semiconductor T able 19-4. PCI SCR Field Descripti ons Bits Name Desc ription 31 PE P arity error d etected. This bit is set when a pari ty error is detected, ev en if the PCISCR[PER] is cleared. This bit is cleared b y a PCI conf iguration cycle writing a ‘1’ to the bit.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-9 19.3.1.3 Revision ID/Cla ss Code Register (PCICCRIR)—PCI Dwor d 3 6 PER Parity error response. This bit controls the device’s response to parity errors.
MCF548x Refere nce Manual, Rev . 3 19-10 F re escale Semiconductor 19.3.1.4 Configuration 1 Reg ister (PCICR1)—PCI Dwor d 3 T able 19-5. PCICCRIR Field Des criptions Bits Name Description 31–8 Class Code This field is read-only a nd represents the PCI Class Code assigned to proc essor .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-11 19.3.1.5 Base Address Register 0 (PCIB AR0)—PCI Dw or d 4 31 30 29 28 27 26 25 24 23 2 2 21 20 19 18.
MCF548x Refere nce Manual, Rev . 3 19-12 F re escale Semiconductor 19.3.1.6 Base Address Register 1 (PCIB AR1)—PCI Dw or d 5 19.3.1.7 CardBus CIS P ointer Re gister PCICCPR—PCI Dwor d A This optional register contains the pointer to the Card Information Structure (CIS) for the CardBus card.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-13 All 32 bits of the register are pr ogrammable by the slave bus. From the PCI bus, this regi ster can only be read, not written. The reset value is 0x0000_0000 and is accessible at a ddress MBAR + 0xB2C.
MCF548x Refere nce Manual, Rev . 3 19-14 F re escale Semiconductor registers are accessed primarily internally as offsets of MBAR, but can also be accessed by an external PCI master if PCI base and tar get base address re gisters are configured to access the space.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-15 19.3.2.2 T arget Base Address T ranslation Register 0 (PC ITB A TR0) 13 PEE Parity error interr upt enable. This bit enables CPU Interrupt generation when the PCI P ar ity Error signal, PCIPERR , is sampled asser ted.
MCF548x Refere nce Manual, Rev . 3 19-16 F re escale Semiconductor 19.3.2.3 T arget Base Address T ranslation Register 1 (PC ITB A TR1) 19.3.2.4 T arget Control Register (PCITCR) 31 30 29 28 27 26 25 .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-17 19.3.2.5 Initiator Window 0 Base/T ranslation Address Register (PCIIW0BT AR) T able 19-13. PCITCR Field Des criptions Bit s Name Description 31–25 — Reser ved, should be cleared.
MCF548x Refere nce Manual, Rev . 3 19-18 F re escale Semiconductor 19.3.2.6 Initiator Window 1 Base/T ranslation Address Register (PCIIW1BT AR) The field descriptions for this regi ster are the same as for PCIIW0BT AR, except that they apply to W indow 1.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-19 19.3.2.7 Initiator Window 2 Base/T ranslation Address Register (PCIIW2BT AR) The field descriptions for this regi ster are the same as for PCIIW0BT AR, except that they apply to W indow 2.
MCF548x Refere nce Manual, Rev . 3 19-20 F re escale Semiconductor 19.3.2.9 Initiator Control Register (PCIICR) T able 19- 15. PCIIWCR Field Description s Bit s Name Description 31–28 — Reser ved, should be cleared. 27–24 Window 0 Control[3:0] Bit[3]—IO/M#.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-21 19.3.2.10 Initiator Status Register (PCIISR) T able 19-16. PCII CR Field Descript ions Bit s Name Description 31–27 — Reser ved, should be cleared. 26 REE Retr y error enable.
MCF548x Refere nce Manual, Rev . 3 19-22 F re escale Semiconductor 19.3.2.11 Configuration Ad dress Register (PCICAR) T able 19-17. PCIISR Field Descriptions Bit s Name Description 31–27 — Reserved, should b e cleared.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-23 19.3.3 Comm unication Subsystem Interface Register s The communication subsystem/multic hannel DMA interface ha s separate control registers for transmit and receive operations.
MCF548x Refere nce Manual, Rev . 3 19-24 F re escale Semiconductor 19.3.3.1.2 Tx Star t Addre ss Register (PCITSAR) T able 19-19. PCITPSR Field Des criptions Bit s Name Description 31 –18 Pac ket_Siz e P ack et_Siz e [15:2]. The P acket _Size fi eld indicates the n umber of b ytes for the tr ansmit contr oller to send ov er PCI.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-25 19.3.3.1.3 Tx T ransaction C ontrol Register (PCITTCR) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16.
MCF548x Refere nce Manual, Rev . 3 19-26 F re escale Semiconductor 19.3.3.1.4 Tx Enables Register (PCITER) 31 30 29 28 27 26 2 5 24 23 22 21 2 0 19 18 17 16 R RC RF 0 CM BE 0 0 ME 0 0 FEE SE RE T AE I.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-27 19.3.3.1.5 Tx Ne xt Address Register (PCITNAR) 21 FEE FIFO error enable. User writes this bit high to enable CPU Interrupt generation in the case of FIFO error ter mination of a pack et transmission.
MCF548x Refere nce Manual, Rev . 3 19-28 F re escale Semiconductor 19.3.3.1.6 Tx Last W ord Register (PCITL WR) 19.3.3.1.7 Tx Done Counts Register (PCITDCR) T able 19-23.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-29 19.3.3.1.8 Tx Status Register (PCITSR) T able 19-25. PCITDCR Field Descriptions Bit s Name Description 31–16 Bytes_Done This status register indicates the number of bytes tran smitted since the start of a packet.
MCF548x Refere nce Manual, Rev . 3 19-30 F re escale Semiconductor NO TE Registers MBAR + 0x8 420 through MBAR + 0x843C are reserved for future use. Accesses to these register s will result in undefined behavior . 23 BE3 Bus error type 3. This bit is set whenever a sla v e bus transaction attempts to write to a Read-Only register.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-31 19.3.3.1.9 Tx FIFO Data Register (PCITFDR) + 19.3.3.1.
MCF548x Refere nce Manual, Rev . 3 19-32 F re escale Semiconductor 19.3.3.1.11 Tx FIFO Cont r ol Register (PCITFCR) T able 19-28 . PCITFSR Field Descript ions Bit s Na me Description 31 IP Illegal P ointer. An address outside the FIFO c ontrolle r’ s memor y range has been wr itten to one of the user visib le pointers.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-33 19.3.3.1.12 Tx FIFO Al arm Register (PCITF AR) T able 19-29. PCITFCR Field Descriptions Bit s Name Description 31–30 — Reser ved, should be cleared .
MCF548x Refere nce Manual, Rev . 3 19-34 F re escale Semiconductor 19.3.3.1.13 Tx FIFO Read P o inter Register (PCITFRPR) T able 19-30. PCITF AR Field Descriptions Bit s Name Description 31– 12 — Reser ved, should be cleared. 11– 7 Alar m Bits 11-7 are h ardwired low .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-35 19.3.3.1.14 Tx FIFO Write P ointer Register (PCITFWPR) This marks the end of the PCI Comm Bu s FIFO T ransmit Interface description. 19.3.3.2 Comm Bus FIFO Receive Interface PCI Rx is controlled by 13 32-bit registers.
MCF548x Refere nce Manual, Rev . 3 19-36 F re escale Semiconductor 19.3.3.2.1 R x P acket Si ze Register (PCIRPSR) 19.3.3.2.2 Rx Star t Addr ess Register (PCIRSAR) 31 30 29 28 27 26 25 24 23 22 2 1 20.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-37 19.3.3.2.3 R x T ransaction C ontrol Register (PCIR TCR) T able 19-34. PCI RSAR Field Descr iptions Bit s Name Description 31 –0 Star t_Add The user wr ites this register with the de si red star ting address for the current pac ket.
MCF548x Refere nce Manual, Rev . 3 19-38 F re escale Semiconductor 19.3.3.2.4 R x Enables Register (PCIRER) 12 FB Full burst. This is the full b urst bit an d it supersedes the Max_Beats setting. Since Max_Beats provides suppor t f or up to 8-beat bursts , the Full burst bit should not be set f or packets siz es of 8-beats or less.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-39 T able 19-36. PCIRER Field Descriptions Bit s Name Description 31 RC Reset controller. User writes this bit high to pu t Receive Controller in a reset state.
MCF548x Refere nce Manual, Rev . 3 19-40 F re escale Semiconductor 19.3.3.2.5 Rx Next Addr ess Register (PCIRNAR) 17 IAE Initiator abort enable . User writes this bit high to enable CPU Interrup t generation in the case of i ni- tiator abort error termination of a packet transmis sion.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-41 19.3.3.2.6 R x Done Count s Register (PCIRDCR) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R Bytes.
MCF548x Refere nce Manual, Rev . 3 19-42 F re escale Semiconductor 19.3.3.2.7 R x Status Register (PCIRSR) 31 30 29 28 27 26 25 2 4 23 22 21 20 19 18 1 7 16 R 0 0 0 0 0 0 0 NT BE3 BE2 BE1 FE SE RE T A.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-43 NO TE Registers 0x84A0 through 0x84BC are rese rved for future use. Accesses to these registers will resu lt in undefined behavior . 19.3.3.2.8 R x FIFO Data Register (PCIRFDR) 18 RE Retry Error .
MCF548x Refere nce Manual, Rev . 3 19-44 F re escale Semiconductor 19.3.3.2.9 R x FIFO Stat us Register (PCIRFSR) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R I P T X W 000000 F A E R X W U F O F.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-45 19.3.3.2.10 Rx FIFO Cont rol Register (PCIRFCR) 17 Alar m The FIFO is at or above the Alar m “watermark ”, as se t by the user according to the Alarm and Control registers settings.
MCF548x Refere nce Manual, Rev . 3 19-46 F re escale Semiconductor 19.3.3.2.11 Rx FIFO Ala rm Register (PCIRF AR) 19 OF_MASK Overflow mask. When this bit is set, the FIFO controller masks th e Status Register ’ s OF bit from generating an error . 18 TXW_MASK T ransmit wait condition ma sk.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-47 19.3.3.2.12 Rx FIFO Read P o inter Register (PCIRFRPR) 19.
MCF548x Refere nce Manual, Rev . 3 19-48 F re escale Semiconductor 19.4 Functional Description The MCF548 x PCI module provides both master and ta rget PCI bus interfaces as shown in Figure 19-1 .
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-49 19.4.1.2 Basic T ransfer Contr ol The basic PCI bus transfer mechanism is a burst.
MCF548x Refere nce Manual, Rev . 3 19-50 F re escale Semiconductor command driven on the PCICXBE bus. In cycle 2, the AD bus is in a turnaround cycle because of the read on a muxed bus. The byte enables, which are active low , are driven onto the PCICXBE bus in this clock.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-51 Figure 19-48. PCI Write T erminated b y T arget 19.4.1.4 PCI Bus C ommands PCI supports a number of differen t commands. These commands are presented by the initiator on the PCICXBE[3:0] lines during the address phase of a PCI transaction.
MCF548x Refere nce Manual, Rev . 3 19-52 F re escale Semiconductor Though MCF548 x supports many PCI commands as an initiator , the communication subsystem initiator interface is intended to use PCI memory read and memory write commands.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-53 As an initiator , the MCF548 x supports both linear incrementing and cache wrap mode. For memory transactions, when an XL bus burst transaction is wrapped, the cache wrap mode is automatically generated.
MCF548x Refere nce Manual, Rev . 3 19-54 F re escale Semiconductor tells the community of devices on the PCI bus that the bridge that “owns” the PCI bus has already performed the bus number comparis on and verified that the reque st tar gets a device on its bus.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-55 its secondary bus as a T ype 0 confi guration access, decoding the device number to select one of the IDSEL lines.
MCF548x Refere nce Manual, Rev . 3 19-56 F re escale Semiconductor Figure 19-52. Initiat or Arbitration Bloc k Diagram 19.4.2.1 Priority Scheme The PCI initiator arbiter uses the following fixed priority scheme: 1. XL bus initiator 2. Comm bus transmit (Tx) 3.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-57 The particular type of PCI transa ction generated is determined by th e PCI configurati on bits associated with the address window (PCIIWCR).
MCF548x Refere nce Manual, Rev . 3 19-58 F re escale Semiconductor request to the PCI bus comes in, the data transfer is delayed until all previous writes to the PCI bus are completed. Only when the write buf fer is empt y can burst data from the XL bus be posted.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-59 000 100 OP4 OP5 OP6 OP7 — — — — 00 000 0 OP7 OP6 OP5 OP4 001 100 — OP4 OP5 OP6 OP7 — — — 000 0.
MCF548x Refere nce Manual, Rev . 3 19-60 F re escale Semiconductor 19.4.4.2 Configuration M echanism In order to support both T ype 0 and T ype 1 configuration transactions, the MCF548 x provides the 32 bit configuration address register (PCI CAR).
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-61 The MCF548 x can issue PCI configur ation transactions to itself. A T ype 0 configurati on initiated by the MCF548 x can access its own confi guration space by asserting its IDSEL input signal.
MCF548x Refere nce Manual, Rev . 3 19-62 F re escale Semiconductor 19.4.4.2.2 T ype 1 Conf iguration T ranslation For T ype 1 translations, the 30 high- order bits of the configuration a ddress register are copied without modification onto the AD[31:2] signals during the address phase.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-63 assigned by the PCI SIG S t eering Committee. The current list of defined encodings are provided in T able 19-51 .
MCF548x Refere nce Manual, Rev . 3 19-64 F re escale Semiconductor Upon detection of a PCI address phase, the PCI controller decode s the address an d bus command to determine if the transaction is for local memory (BAR0 or BAR1 hit).
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-65 T able 19-53. Ali gned PCI to XL Bus T ransfers PCI Bus XL Bus BE[3: 0] AD[2:0] 31:24 23:16 15:8 7:0 A[29:31] .
MCF548x Refere nce Manual, Rev . 3 19-66 F re escale Semiconductor 19.4.5.4 T arget Abor t A target abort will occur if the PC I address falls within a base address window (BAR0 or BAR1) that has not been enabled. See Section 19.3.2.2, “T arget Base Address T ran slation Register 0 (PCITBA TR0),” and Section 19.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-67 on the XL bus will have 100% band width available to th em during PCI multicha nnel DMA activities. In general, this block will be used by functions in the multichannel DMA API.
MCF548x Refere nce Manual, Rev . 3 19-68 F re escale Semiconductor 19.4.6.3 Data T ranslation The PCI bus is inherently little endian in its byte ordering. The comm bus however is big endian. T able 19-55 shows the byte lane mapping betw een the two buses.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-69 If Continuous mode is active, basic operation is still straight forward. A Restart is achieved by writing the Packet_Size register to a non-zero value (just as before).
MCF548x Refere nce Manual, Rev . 3 19-70 F re escale Semiconductor 19.4.6.9 Bus Error s Because bus errors are partic ular to the module register set and that register set includes both transmit and r.
Application Information MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-71 read and write requests from an XL bus master and decodes them to dif ferent address ranges resulting in the generation of memory , I/O, c onfiguration, interrupt acknowledge and special cycles on the PCI bus.
MCF548x Refere nce Manual, Rev . 3 19-72 F re escale Semiconductor 19.5.2.1 Address T ranslation 19.5.2.1.1 Inbound Address T ranslation The MCF548 x -as-target occupies two memo ry target address windows on the PCI bus. The location is determined by the values programmed to BAR0 a nd BAR1 of the PCI T ype 00h configuration space.
Application Information MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-73 Figure 19-54. Inbound Ad dress Map 19.5.2.1.2 O utbound Ad dress T ranslation Figure 19-55 shows an example of XL Bus Initiator W indow configurations .
MCF548x Refere nce Manual, Rev . 3 19-74 F re escale Semiconductor Figure 19-55. Outbound Ad dress Map 19.5.2.1.3 B ase Address Register Overview T able 19-58 shows the available acces sibility for all PCI associated ba se address and translation address registers in the MCF548 x .
XL Bus Ar bitra tion Pr iority MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 19-75 19.6 XL Bus Arbitration Priority T o prevent XL bus arbitration liv elock, the PCI controll er should have the sa me or higher XL bus arbitration priority as other XL bus masters that access PCI space.
MCF548x Refere nce Manual, Rev . 3 19-76 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 20-1 Chapter 20 PCI Bus Arbiter Module 20.1 Intr oduction This chapter describes the MCF548 x PCI bus arbiter module, includi ng timing for request and grant handshaking, the arbitration process, and the registers in the PCI bus arbiter programing model.
MCF548x Refere nce Manual, Rev . 3 20-2 F reescale Semiconductor 20.1.3 Features • Direct support for up to five external PCI bus masters • Fair arbitration scheme • Hidden bus arbitration • Bus parking • Master time-out • Interface with 33 MHz and 66 MHz PCI 20.
Regist er Defini tion MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 20-3 20.2.5 External Bus Grant/ Request Output (PCIBG0 /PCIREQOUT ) The PCIBG0 signal is asserted to external master device 0 to give it cont rol of the PCI bus. When the PCI arbiter module is disa bled, the signal opera tes as the PCIREQOUT output.
MCF548x Refere nce Manual, Rev . 3 20-4 F reescale Semiconductor T able 20-2. P A CR Field Descriptions Bit s Name Description 31 DS Disable bit f or the inter nal PCI arbite r . 0 Enab le the PCI arbiter . 1 Disable the on-chip arbiter and u se GNT0 f or the MCF548 x PCI request output and REQ0 fo r its grant input.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 20-5 20.3.2 PCI Arbiter Status Register (P ASR) 20.4 Functional Description 20.4.1 External PCI Requests An external PCI master may tar get the MCF548 x or external slaves .
MCF548x Refere nce Manual, Rev . 3 20-6 F reescale Semiconductor 20.4.2 Arbitration 20.4.2.1 Hidden Bus Arbitration PCI bus arbitration can take place while the currentl y granted device is perf orming a bus transaction if another master is requesti ng access to the bus.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 20-7 Figure 20-4. PCI Arbitration Init ial State 20.4.2.3 Arbitration Latency W orst case arbitration latency: ar bitration latency is th e number of clock cycles from a master ’ s REQ assertion to PCI bus idle state AND its GNT assertion.
MCF548x Refere nce Manual, Rev . 3 20-8 F reescale Semiconductor Figure 20-5. Alternating Priority Device 0 and device 1 assert REQ while the bus is parked with device 2. Because the PCI bus is idle, the arbiter deasserts GNT to the parked master (devi ce 2) and a cycle later , grants access to device 0.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 20-9 Figure 20-6. Higher Priority Override The arbiter again dea sserts device 2’ s GNT on clock 2, but devi ce 2 initiates a tran saction in the same cycle. As long as the PCI bus is idle and GNT is asserted, a master can begin a transaction on the next cycle.
MCF548x Refere nce Manual, Rev . 3 20-10 F re escale Semiconductor considered “broken” and subseq uent requests are acknowledged. Th is “never -mind” scenario is detrimental to system performance, however , and is not a recommended implementation.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-1 Chapter 21 FlexCAN 21.1 Intr oduction The FlexCAN module is a communication controller implementing the controller area network (CAN) protocol, an asynchronous communications protocol used in automotive and industrial control systems.
MCF548x Refere nce Manual, Rev . 3 21-2 F reescale Semiconductor Figure 21-2. Fle xCAN Message Buffer Ar chitect ure 21.1.2 The CAN System A typical CAN system is shown below in Figure 21-3 . Figure 21-3. T ypical CAN System Each CAN station is conn ected physically to the CAN bus through a transceiver .
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-3 bus. It can also provide protection against damage to the Flex CAN caused by a defective CAN bus or defective stations. 21.1.3 Features Following are the main feat ures of the FlexCAN module: • Full implementation of the CAN pr otocol specification version 2.
MCF548x Refere nce Manual, Rev . 3 21-4 F reescale Semiconductor • The prescaler is disabled, thus halting all CAN bus communication. • The FlexCAN ignores its Rx pins an d drives its Tx pins as recessive. • The FlexCAN loses synchronization with the CAN bus, and the NOTRDY and FRZACK bits in CANMCR are set.
External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-5 21.2 External Signals The FlexCAN module has two I/O si gnals connected to the extern al MPU pins: CA NTX and CANRX.
MCF548x Refere nce Manual, Rev . 3 21-6 F reescale Semiconductor 21.3.2 Register Descriptions This section describes the regi sters in the FlexCAN module. NO TE The FlexCAN has no hard-wired prot ection against invalid bit/field programming within its regi sters.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-7 T able 21-2. CANMCR Field Descr iptions Bits Name Description 31 MDIS Module di sable . This bit controls whether Fle x CAN is enabled or not. When disabled, FlexCAN shuts down the Fle xCAN cloc ks.
MCF548x Refere nce Manual, Rev . 3 21-8 F reescale Semiconductor 21.3.2.2 FlexCAN Contr o l Register (CANCTRL) CANCTRL is defined for specific FlexCAN control feat ures related to the CAN bus, such as.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-9 T able 21-3. C ANCTRL Fiel d Descriptions Bits Name Description 31–24 PRESDIV Prescaler division factor . This 8-bit field defi nes the ratio between the system cloc k frequency and the ser ial clock (S cloc k) frequency .
MCF548x Refere nce Manual, Rev . 3 21-10 F re escale Semiconductor 21.3.2.3 FlexCAN Timer Register (TIMER) This register represents a 16-bit fr ee running counter that can be read and written to by the CPU. The timer starts from 0x0000 after reset, counts linearly to 0xFFFF , and wraps around.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-11 The timer value is captured at the beginning of the identifie r (ID) field of a ny frame on the CAN bus. This captured value is written in to the TIMEST AMP entry in a message buf fer after a successful reception or transmission of a message.
MCF548x Refere nce Manual, Rev . 3 21-12 F re escale Semiconductor 21.3.2.4.1 FlexCAN Rx Global Mask Register (RXGMASK) The Rx global mask bits are applied to al l Rx identifiers, excluding Rx buf fers 14 – 15 that have their specific Rx mask registers.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-13 21.3.2.4.2 FlexCAN Rx 14 M ask Register (RX14MASK) The RX14MASK register has the same structure as the Rx global mask register and is used to mask message buffer 14.
MCF548x Refere nce Manual, Rev . 3 21-14 F re escale Semiconductor 21.3.2.5 FlexCAN Error Counter Register (ERRCNT) This register has two 8-bit fields reflecting the value of two FlexCAN er ror counters: transmit error counter (TXECTR) and receive error counter (RXECTR).
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-15 to zero and counts in a manner where the internal counter counts 1 1 such bits, then wraps around while incrementing the TXECTR.
MCF548x Refere nce Manual, Rev . 3 21-16 F re escale Semiconductor T able 21-8 describes the ERRST A T fields. 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R 0000000000000000 W R e s e t 0000000000.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-17 21.3.2.7 Interrupt Mask Reg ister (IMASK) IMASK contains one interrupt mask bit per buffer .
MCF548x Refere nce Manual, Rev . 3 21-18 F re escale Semiconductor T able 21-10 describes the IMASK fields. 21.3.2.8 Interrupt Flag Register (IFLA G) IFLAG contains one interr upt flag bit per buf fer . Each succe ssful transmission/reception sets the corresponding IFLAG bit and, if th e corresponding IMASK bit is set, will generate an interrupt.
Functional Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-19 21.4 Functional Overview The FlexCAN module is flexible in that each one of its 16 message buf fers (MBs) can be assigned either as a transmit buffer or a receive buf fer .
MCF548x Refere nce Manual, Rev . 3 21-20 F re escale Semiconductor 3 1 3 0 2 9 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 1 9 1 8 1 7 1 6 1 5 1 4 1 3 1 2 1 1 1 0 9876543210 0x0 CODE SRR IDE R TR LENGTH TIME .
Functional Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-21 28–0 ID [28:18] Standard frame identifier : In standard frame format, o nly the 11 most significant bits (28 to 18 ) are used for frame identification in both receive and transmit cases.
MCF548x Refere nce Manual, Rev . 3 21-22 F re escale Semiconductor 21.4.2 Message Buffer Memor y Map The message buffer memory map starts at an of fset of 0x80 from the FlexCAN’ s base address (0xA000 or 0xA800). The 256-byte message buf fer space is full y used by the 16 message buf fer structures.
Functional Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-23 Figure 21-13. FlexCAN Mess age Buff er Memory Map 21.4.3 T ransmit Process The CPU prepares or changes an MB for transmission by ex ecuting the following steps: 1. W riting the control/status word to hold Tx MB inactive (CODE = 0b1000).
MCF548x Refere nce Manual, Rev . 3 21-24 F re escale Semiconductor Once the arbitration process is complete and ther e is a “winner” MB for transmission, the frame is transferred to the serial message buf fer (SMB) for tra nsmission (move out). While transmitting, the FlexCAN tran smits up to 8 data bytes, even if the DLC is bigger in value.
Functional Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-25 was captured at the beginning of th e ID field on the CAN bus ) is written into the TIMEST AMP field in the MB, th.
MCF548x Refere nce Manual, Rev . 3 21-26 F re escale Semiconductor lost. T wo or more receive MBs that hold a matching ID to a received fr ame do not assure reception in the FlexCAN if the user has deactivated the matc hing MB after FlexCAN has scanned the second.
Functional Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-27 • There is a point in time until which the deactivati on of a Tx MB causes it not to be transmitted (end of move-out). After this point, it is transmitted bu t no interrupt is issued and the CODE field is not updated.
MCF548x Refere nce Manual, Rev . 3 21-28 F re escale Semiconductor When transmitting a remote frame , the user initiali zes a message buf fer as a transmit message buffe r with the R TR bit set to one.
Functional Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-29 • SYNC_SEG: This segment has a fixed length of one time quantum. Signal e dges are expected to happen within this section. • T ime Segment 1: This segment includes the Propa gation Segment and the Phase Segment 1 of the CAN standard.
MCF548x Refere nce Manual, Rev . 3 21-30 F re escale Semiconductor If PSEG2 equals two, then the FlexCAN transmits one time quantum late relative to the scheduled sync segment.
FlexCAN Initialization Sequenc e MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 21-31 • If the RXECTR increases to a value greater than 127, it is no longer incremented, even if more errors are detected while being a receiver .
MCF548x Refere nce Manual, Rev . 3 21-32 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-1 Chapter 22 Integrated Security Engine (SEC) This chapter provides an overview of the MCF548 x security encryption controller (SEC). NO TE Purchasing any of the MCF548 x devices with security requires government export control regulation.
MCF548x Refere nce Manual, Rev . 3 22-2 F reescale Semiconductor define the cryptographic function to be performed and the location of the data. The SEC’ s bus-mastering capability permits the host .
Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-3 22.4.2 SEC Contr oller Unit The SEC controller unit manages on-chip resources, including the in dividual execution units (EUs), FIFOs, the bus interface, and the internal buses that connect all the various modules.
MCF548x Refere nce Manual, Rev . 3 22-4 F reescale Semiconductor 4. W ait for EU to complete processing. 5. Upon completion, unload results and context and wr ite them to external me mory as indicated by the data packet descriptor . 6. If multiple services requested, go back to step 2.
Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-5 Figure 22-2. DES Encryption Process In addition, the DEU module can co mpute T riple-DES. T riple-DES is an extension to the DES algorithm whereby every 64-bit input block is processed three times.
MCF548x Refere nce Manual, Rev . 3 22-6 F reescale Semiconductor Figure 22-4. RC4 Encryption Pr ocess 22.4.4.3 Adv anced Encryption St andar d Execution Unit (AESU) The AESU is used to accelerate bulk data encrypt ion/decryption in compliance with the advanced encryption standard algorithm (AESA) Rinjdael.
Overview MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-7 • The MDEU also supports HMAC com putations, as specified in RFC 2104. W ith any hash algorithm, the larger message is mapped onto a smalle r output space, th erefore collisions are potential, albeit not probable.
MCF548x Refere nce Manual, Rev . 3 22-8 F reescale Semiconductor 22.4.4.5 Random N umber Generator (RNG) The RNG is a digital integrated circuit capable of generating 32-bi t random numbers. It is designed to comply with FIPS 140-1 standards fo r randomness and non-determinism.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-9 0x21008 SIMRH SEC Interr upt Mask Register High p . 22-14 0x2100C SIMRL SEC Interr upt Mask Register Low p . 22-14 0x21010 SISRH SEC Interrupt Status Register High p .
MCF548x Refere nce Manual, Rev . 3 22-10 F re escale Semiconductor 22.6 Contr oller The controller within the SEC core is responsible fo r overseeing the operations of the EUs, the interface to the host processor , and the manage ment of the crypto-channels.
Controller MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-11 22.6.1 EU Access Assignment of an EU function to a ch annel is done either st atically or dynamically . In the case of static assignment, an EU is assigned to a channel via th e EU Assignment Control Re gister (EUACR).
MCF548x Refere nce Manual, Rev . 3 22-12 F re escale Semiconductor T able 22-4 describes the EUACRH and EUACRL fields. 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 Field — RNG — — Reset 1111 .
Controller MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-13 22.6.4.2 EU Assignment Status Registers (EU ASRH and EU ASRL) The EUASR registers, shown in Figure 22-9 and Figure 22-10 , are used to check the assignment status (static or dynamic) of an EU to a particular crypto -channel.
MCF548x Refere nce Manual, Rev . 3 22-14 F re escale Semiconductor 22.6.4.3 SEC Interrupt Mask Registers (SIMRH and SIMRL) The SEC generates a single interru pt output from all possible interr upt sources. These sources can be masked by the SIMR registers.
Controller MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-15 I 31 30 29 28 27 26 25 24 23 22 21 20 1 9 18 17 1 6 Field CHA_1 CHA_0 AERR — Definition ERR DN ERR DN Reset 0x0000 R/W W .
MCF548x Refere nce Manual, Rev . 3 22-16 F re escale Semiconductor 22.6.4.6 SEC ID Register (SIDR) The read-only SEC ID register , displayed in Figure 22-13 , contains a 32-bit value that uniquely identifies the version of the SEC. The value of this register is always 0x0900_0000.
Controller MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-17 22.6.4.7 SEC Master Control Register (SMCR) The SEC master control register (SMCR), shown in Figure 22-14 , controls certain functions in the controller and provides a means fo r software to reset the SEC.
MCF548x Refere nce Manual, Rev . 3 22-18 F re escale Semiconductor 22.6.4.8 Master Error Address Register (MEAR) This register saves the address of the transaction whose data phase wa s terminated with a TEA or Master Parity Error .
Channels MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-19 store the ciphered data the EU outputs. Through a series of requests to the controller , the crypto-channel decodes the conte.
MCF548x Refere nce Manual, Rev . 3 22-20 F re escale Semiconductor 31 30 29 28 27 26 25 24 23 22 2 1 20 19 18 17 16 R 00000000000 00000 W R e s e t 000000000 0000000 15 14 13 12 11 10 9 8 7 6 5 4 3 2 .
Channels MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-21 T able 22-12 defines the burst size according to the value displayed in the BURST_SIZE field.
MCF548x Refere nce Manual, Rev . 3 22-22 F re escale Semiconductor 31 30 29 28 27 26 25 24 23 2 2 21 20 19 18 17 16 R 000000000000000 0 W R e s e t 000000000 0000000 1 5 1 4 1 3 1 2 1 1 1 0 9876543210 R 00000000 S T A T E W R e s e t 000000000 0000000 Reg Addr MBAR + 0x22010 (CCPSRH0), 0x23010 (CCPSRH1) Figure 22-17.
Channels MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-23 T able 22-14. CCPSRL n Field Descriptions Bits Name Description 31–27 — Reser ved, set to z ero 26 ST A T Cr ypto-Channel Static Mode Enable.
MCF548x Refere nce Manual, Rev . 3 22-24 F re escale Semiconductor 18 SRD Secondar y EU reset done. Reflects the state o f the reset done signal from the assigned secondar y EU .
Channels MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-25 T able 22-15 shows the values of crypto-channel states. 8 EUERR EU error . An EU assigned to this channel ha s generated an error interrupt. This erro r ma y also be reflected in the controller’ s SISR.
MCF548x Refere nce Manual, Rev . 3 22-26 F re escale Semiconductor 0x12 Wr ite mode secondar y 0x13 Wr ite datasize primar y 0x14 Delay rng do ne 0x15 Wr ite datasize secondary multi EU in 0x16 T rans.
Channels MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-27 22.7.1.3 Cr ypto-Channel Current Descriptor P oin ter Register (CDPR n ) The CDPR, shown in Figure 22-19 , contains the address of the da ta packet descriptor which the crypto-channel is currently processing.
MCF548x Refere nce Manual, Rev . 3 22-28 F re escale Semiconductor T able 22-17 describes the FR n fields. 22.7.1.5 Data Pac ket Descrip tor Buffer (CDBUF n ) This bank of eight register s stores the header , follow ed by length/pointer pairs, followed by a next data packet descriptor pointer .
ARC Four Execution Unit (AFEU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-29 hardware reset, software reset, or module initialization, which performs proper initialization of the S-Box. T o determine when this is co mplete, observe the RD bit in the AFEU status register .
MCF548x Refere nce Manual, Rev . 3 22-30 F re escale Semiconductor Figure 22-22. AFEU St atus Register ( AFSR) T able 22-19 describes AFEU stat us register fields.
ARC Four Execution Unit (AFEU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-31 22.8.4 AFEU Interrupt St atus Register (AFISR) The interrupt status register , seen in Figure 22-23 , tracks the state of possible errors, if those errors are not masked via the AFEU interrupt mask register .
MCF548x Refere nce Manual, Rev . 3 22-32 F re escale Semiconductor 22.8.5 AFEU Interrupt M ask Register (AFIMR) The interrupt mask register , shown in Figure 22-24 , controls the result of det ected errors.
ARC Four Execution Unit (AFEU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-33 Figure 22-24. AFEU Interrupt Mask Regi ster (AFIMR) T able 22-21 describes AFEU interrupt mask register fields.
MCF548x Refere nce Manual, Rev . 3 22-34 F re escale Semiconductor 22.9 Data Encryption Standard Execution Units (DEU) This section contains details a bout the Data Encryptio n S tandard Execution Units (DEU), including detailed register map, modes of operation, status and c ontrol registers, and FIFOs.
Data Encryption Standard Execution Units (DEU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-35 Figure 22-25. DEU Reset Control Register (DRCR) T able 22-22 describes DEU reset control register fields.
MCF548x Refere nce Manual, Rev . 3 22-36 F re escale Semiconductor Figure 22-2 6. DEU Status Regist er (DSR) T able 22-23 describes the DEU status register ’ s bit settings.
Data Encryption Standard Execution Units (DEU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-37 22.9.4 DEU Interrupt Status Register (DISR) The DEU interrupt status register , shown in Figure 22-27 , tracks the state of possibl e errors, if those errors are not masked, via the DEU interrupt mask register .
MCF548x Refere nce Manual, Rev . 3 22-38 F re escale Semiconductor 29 OFE Output FIFO error . The DEU output FIFO was detected non-empty upon wr ite of DEU data size register . 0 No error detected 1 Output FIFO non-empty error 28 IFE Input FIFO error .
Data Encryption Standard Execution Units (DEU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-39 22.9.5 DEU Interrupt Mask Register (DIMR) The interrupt mask register contro ls the result of detected errors . For a given erro r (as defined in Section 22.
MCF548x Refere nce Manual, Rev . 3 22-40 F re escale Semiconductor 22.10 Message Digest Execution Unit (MDEU) This section contains details about the message di gest execution unit (MDEU), including register details. 22.10.1 MDEU Register Map The registers used in the MDEU are documented prim arily for debug and tar get mode operations.
Message Digest Execution Unit (MDEU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-41 22.10.2 MDEU Reset Contr ol Register (MDRCR) This register , shown in Figure 22-29 , allows three levels reset of just the MDEU, as defi ned by the three self-clearing bits.
MCF548x Refere nce Manual, Rev . 3 22-42 F re escale Semiconductor Figure 22-30. MDEU St atus Register ( MDSR) T able 22-27 describes MDEU status register fields.
Message Digest Execution Unit (MDEU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-43 22.10.4 MDEU Interr upt Status Register (MDI SR) The interrupt status regist er tracks the state of possible errors, if those errors are not masked, via the MDEU interrupt mask register .
MCF548x Refere nce Manual, Rev . 3 22-44 F re escale Semiconductor 22.10.5 MDEU Interrupt Mask Register (MDIMR) The MDEU interrupt mask register , shown in Figure 22-32 , controls the result of detected errors.
Message Digest Execution Unit (MDEU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-45 Figure 22-32. MDEU Interrupt Mask Re gister (MDIMR) T able 22-28 describes MDEU interrupt mask register fields.
MCF548x Refere nce Manual, Rev . 3 22-46 F re escale Semiconductor 22.11 RNG Executi on Unit (RNG) The RNG is an execution unit capable of generating 32- bit random numbers. It is designed to comply with the FIPS-140 standard for randomness and non-determinism.
RNG Execution Unit (RNG) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-47 22.11.3 RNG Status Register (RNGSR) This RNG status register , Figure 22-34 , contains 4 bits which reflect the state of the RNG internal signals. The RNG status register is read-only .
MCF548x Refere nce Manual, Rev . 3 22-48 F re escale Semiconductor 22.11.4 RNG Interrupt Status Register (RNGISR) The RNG interrupt status register tr acks the state of possible errors, if those errors are not masked, via the RNG interrupt mask register .
RNG Execution Unit (RNG) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-49 T able 22-32 describes RNG interrupt status register fields. 22.11.5 RNG Interrupt Mask Register (RNGIMR) The RNG interrupt mask register c ontrols the result of detected e rrors.
MCF548x Refere nce Manual, Rev . 3 22-50 F re escale Semiconductor 22.12 Adv anced Encr yption St andar d Execution Units (AESU) This section contains details about the Advanced Encryption St andard Execution Units (AESU), including detailed register map, modes of ope ration, status and control registers.
Adv anced Encryptio n Standard Execution Units (AESU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-51 Figure 22-36. AESU Re set Contr ol Register (AESRCR) T able 22-34 describes AESU reset c ontrol register fields.
MCF548x Refere nce Manual, Rev . 3 22-52 F re escale Semiconductor Figure 22-37. AESU Status Register (AESSR) T able 22-35 describes AESU stat us register fields.
Adv anced Encryptio n Standard Execution Units (AESU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-53 22.12.4 AESU Interrupt Status Register (AESISR) The AESU interrupt status register tracks the state of possible errors, if those errors are not masked, via the AESU interrupt mask register .
MCF548x Refere nce Manual, Rev . 3 22-54 F re escale Semiconductor 22.12.5 AESU Interrupt M ask Register (AESIMR) The AESU interrupt mask register , shown in Figure 22-39 , controls the result of detected errors.
Adv anced Encryptio n Standard Execution Units (AESU) MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-55 and the interrupt status register is not updated to reflect th e error .
MCF548x Refere nce Manual, Rev . 3 22-56 F re escale Semiconductor 22.13 Descriptor s As an IPSec accelerator , the SEC has been targeted fo r ease of use and integrat ion with existing systems and software. As such, all crypt ographic functions are accessible thr ough data packet descriptors.
Descri ptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-57 Figure 22-40. Data P a c ket Descriptor Format 22.13.1.1 Descriptor Header Descriptors are created by the host to guide the SEC through required crypto-graphic operations.
MCF548x Refere nce Manual, Rev . 3 22-58 F re escale Semiconductor T able 22- 38. Header Bit Definitions Bits Name Description 31–28 PEUSEL Primar y ex ecu tion unit select.
Descri ptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-59 T able 22-39 shows the permissible values for the descript or TYPE field in the descriptor header . See Section 22.13.3, “Descriptor T ype Formats ” for more information on the data length and pointer pairs required for each descriptor type.
MCF548x Refere nce Manual, Rev . 3 22-60 F re escale Semiconductor 22.13.1.2 Descriptor Length and P ointer Fields The length and pointer fields represent one of seven da ta length/pointer pairs. E ach pair defines a block of data in system memory . The length field gives the length of the bloc k in bytes.
Descri ptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-61 22.13.1.3 Null Fields On occasion, a descriptor field may not be applicable to the requested service. W ith seven length/pointer pairs, it is possible that not all descri ptor fields will be required to load the required keys, context, and data.
MCF548x Refere nce Manual, Rev . 3 22-62 F re escale Semiconductor Figure 22-45. Chain of Descriptor s 22.13.3 Descriptor T ype Formats The SEC accepts 12 fixed format descriptors.
Descri ptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-63 T able 22-44 shows how the length/pointer pa irs should be used with the va rious descriptor types to load keys, context, and data into the EUs, and how the requi red outputs should be unloaded.
MCF548x Refere nce Manual, Rev . 3 22-64 F re escale Semiconductor 22.13.4 Descriptor Classes The SEC has two general classes of descriptors: dynamic, which refers to a continually changing usage model, and static, which refers to a relativ ely unchanging usage of the SEC resources.
Descri ptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-65 22.13.4.2 Static Descriptor s Recall that the SEC has five executi on units and two crypto-channels. Th e EUs can be s tatically assigned or dedicated to a par ticular crypto-channel.
MCF548x Refere nce Manual, Rev . 3 22-66 F re escale Semiconductor The middle (and multiple subsequent) descriptors contains length/pointer pairs to the remaining data to be permuted. T a ble 22-47 shows the format for a TYPE 0001 data packet descriptor that encrypts or decrypts a block of data.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-67 Because the key and context are unchanging over multiple pa ckets (or descriptors), th e series of short reads and writes required to set-up a nd tear down a session are avoide d.
MCF548x Refere nce Manual, Rev . 3 22-68 F re escale Semiconductor The AFEU mode bits do not control cryptographic modes, only operational modes. Therefore, the AFEU only uses actual descriptors, i.e. th ere is not a representative format that is used with multiple header values.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-69 T able 22-51 shows the descriptor format to load a previously generated c ontext into the AFEU. Then the input data is ciphered and the context is unloaded.
MCF548x Refere nce Manual, Rev . 3 22-70 F re escale Semiconductor T able 22-53 shows the descriptor format to load a previously generated context into the AFEU.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-71 T able 22-54 shows the descriptor format fo r the middle descriptor to perf orm the cipher on a block of data using a context or key that was loaded into the AFEU using either the first descriptors.
MCF548x Refere nce Manual, Rev . 3 22-72 F re escale Semiconductor 22.14.2 DEU Mode Options an d Data P ac ket Descriptor s Figure 22-47 shows the DEU options that ar e programmable via the PMODE fiel d in the descriptor header . T able 22-56 describes DEU mode register fields.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-73 22.14.2.1 Dynamicall y Assigned DEU For IPSec processing, it is envisione d that the SEC will need to proce ss small packets of data associated with many different contexts.
MCF548x Refere nce Manual, Rev . 3 22-74 F re escale Semiconductor 22.14.2.2 Staticall y Assigned DEU When statically assigned, it can be assumed that no ot her crypto-channel will ac cess the DEU in between descriptors. Therefore, in this usage mode, the context remains with in the DEU.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-75 T able 22-61 shows the middle descriptor that performs a cipher on data using the key and optional context (IV) that were loaded into the DEU by the first descriptor .
MCF548x Refere nce Manual, Rev . 3 22-76 F re escale Semiconductor T able 22-63 shows the final descriptor that performs a cipher on data us ing the key and optional context (IV) that were loaded into the DEU by a previous descriptor , then optionally unloads the context.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-77 22.14.3 MDEU Mode Options an d Data P acket Descriptors The MDEU mode options, shown in Figure 22-48 , contains 8 bits which are used to program the MDEU.
MCF548x Refere nce Manual, Rev . 3 22-78 F re escale Semiconductor The MDEU implements hardware accelerated ha shing of data using MD5, SHA-160, or SHA-256. Because it supports several different hashing algorithms, there are four representa tive descriptor formats supporting more different ac tual descriptors.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-79 (outbound) or compare the hash gene rated by the SEC with the hash wh ich was received with the packet (inbound). If the hashes match, the packet integrity check passes.
MCF548x Refere nce Manual, Rev . 3 22-80 F re escale Semiconductor T able 22-70 lists several different descriptor s that use the format shown in T able 22-69 .
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-81 T able 22-72 lists several different descriptors that use the middle descript or format shown in T able 22-71 . NO TE For the middle descriptor the HMAC bit should alwa ys be cleared, even if HMAC is the desired final value.
MCF548x Refere nce Manual, Rev . 3 22-82 F re escale Semiconductor T able 22-74 lists several different descri ptors that use the final MDEU descriptor format shown in T able 22-73 . 22.14.4 RNG Data P acket Descriptor s There is one RNG-specific data pack et descriptor .
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-83 22.14.5 AESU Mode Options and Data P ac ket Descriptors The AESU mode register contains three bits which are us ed to program the AE SU. The mode register is cleared when the AESU is reset or re -initialized.
MCF548x Refere nce Manual, Rev . 3 22-84 F re escale Semiconductor 22.14.5.1 Dynamicall y Assigned AESU T able 22-77 shows a descriptor for a dynamically assigned AESU. The descriptor loads a key into the AESU, performs the cipher on data, and writes the result and optional context (IV) to memory .
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-85 T able 22-78 lists several different descriptor s that use the format shown in T able 22-77 . 22.14.5.2 Staticall y Assigned AESU T able 22-69 shows the first descriptor fo r a statically assigned AESU.
MCF548x Refere nce Manual, Rev . 3 22-86 F re escale Semiconductor T able 22-80 lists several different descriptor s that use the format shown in T able 22-79 . T able 22-81 shows the middle descriptor fo r a statically assigned AESU. T able 22-82 lists several different descriptors that use the middle descript or format shown in T able 22-81 .
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-87 T able 22-83 shows the final descriptor fo r a statically assigned AESU. T able 22-84 lists several different descriptors that use the middle descript or format shown in T able 22-83 .
MCF548x Refere nce Manual, Rev . 3 22-88 F re escale Semiconductor 22.14.5.3 AESU-CCM Mode Descriptor The SEC supports single pass, single desc riptor AES-CCM proc essing for generic authenticate-and-encrypt block cipher . T able 22-85 shows a the descriptor fo rmat used for AES-CCM in encryption mode.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-89 T able 22-87 shows the format used for the context output for AES-CCM. T able 22-88 shows a the descriptor format used for AES-CCM in encrypti on mode.
MCF548x Refere nce Manual, Rev . 3 22-90 F re escale Semiconductor T able 22-89 shows the format used for the context input for AES-CCM. T able 22-87 shows the format used for the context output for AES-CCM. 22.14.6 Multi-Function Data P acket Descriptor s The SEC supports a li mited subset of mul ti-function descriptors.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-91 such that the same data read into the DEU, AESU, or AFEU modules can be si multaneously directed to the MDEU module.
MCF548x Refere nce Manual, Rev . 3 22-92 F re escale Semiconductor DEU/AESU and MDEU only r eading the portion that matches the st arting address and byte length in the length/pointer fields corresponding to their data of interest.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-93 T able 22-93 lists typical AESU/HMAC multi-f unction descriptor header values. T able 22-94 shows the representative descriptor used for multi-function encryption such as outbound IPSec ESP .
MCF548x Refere nce Manual, Rev . 3 22-94 F re escale Semiconductor copy the last 8 bytes of the ciphertex t to the Security Association Databa se Entry for this particular session before transmitting the packet. T able 22-95 lists typical DEU/HMAC multi-f unction descriptor header values.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-95 T able 22-96 lists typical AESU/HMAC multi-f unction descriptor header values. 22.14.6.3 Static Multi-Function Descriptor Formats This example is designed to contra st the dynamic desc riptors shown in Section 22.
MCF548x Refere nce Manual, Rev . 3 22-96 F re escale Semiconductor T able 22-98 lists typical DEU/HMAC multi- function descriptor header valu es for the first descriptor .
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-97 T able 22-99 lists typical AESU/HMAC multi-f unction descriptor header values.
MCF548x Refere nce Manual, Rev . 3 22-98 F re escale Semiconductor T able 22-100 shows the representative descri ptor format for the middle descri ptors in a statically assigned multi-function operation descriptor chain. The middle descriptor header encodes to select the DEU or AESU as the primary EU, and the MD EU for the secondary EU .
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-99 T able 22-102 lists typical AESU/HMAC multi-f unction descriptor header values.
MCF548x Refere nce Manual, Rev . 3 22-100 F reescale Semico nductor T able 22-103 shows the representative descriptor format fo r the final descriptor in a statically assig ned multi-function operation descriptor ch ain. The final descriptor header encodes to select th e DEU or AESU as the primary EU, and the MDEU for the secondary EU.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-101 T able 22-104 lists typical DEU/HMAC multi- function descriptor header valu es for the first descriptor .
MCF548x Refere nce Manual, Rev . 3 22-102 F reescale Semico nductor T able 22-105 lists typical AESU/HMAC multi-f unction descriptor header values. 22.14.6.4 SSLv3.1/TLS 1.0 Pr ocessing Descriptors The SEC is capable of assisting in SSL record layer processing, how ever for SSL v3.
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-103 performs the HMAC function first, then attaches the HMAC (which is variable size) to the end of the payload data. The payload data, HMAC, and any padding added after the HMAC are then encrypted.
MCF548x Refere nce Manual, Rev . 3 22-104 F reescale Semico nductor T able 22-107 lists several different desc riptor header values that can be used for the outbound TLS descriptor one shown in T able 22-106 .
EU Specific Data Pac k et Descriptors MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 22-105 The primary EU is the AFEU, with it s mode bits set to cause the AFEU to load the key and initialize the AFEU S-box for data permutation. Th e descriptor does not designate a secondary EU, so the setting of the snoop type bit is ignored.
MCF548x Refere nce Manual, Rev . 3 22-106 F reescale Semico nductor T able 22-1 11 lists several dif ferent desc riptor header values that can be used for the outbound TLS descriptor 1 shown in T able 22-1 10 .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 23-1 Chapter 23 IEEE 1149.1 T est Access P or t (JT A G) 23.1 Intr oduction The Joint T est Action Group, or JT AG , is a dedicated us er -accessible test logic, that complies with the IEEE 1 149.
MCF548x Refere nce Manual, Rev . 3 23-2 F reescale Semiconductor 23.1.2 Features The basic features of the JT AG module are the following: • Performs boundary-scan operations to te st circuit board .
External Signal Description MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 23-3 When one module is selected, the inpu ts into the other module are disabled or forced to a known logic level as shown in T able 23-3 , in order to disable the corresponding module.
MCF548x Refere nce Manual, Rev . 3 23-4 F reescale Semiconductor 23.2.1.5 T est Reset/Developm ent Serial Cloc k (TRST /DSCLK ) The TRST pin is an active low asynchronous reset input with an internal pull-up resistor that forces the T AP controller to the test-logic-reset state.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 23-5 23.3.2.3 Bypass Register The bypass register is a single-bit shift register path from TDI to TDO when the BYP ASS instruction is selected.
MCF548x Refere nce Manual, Rev . 3 23-6 F reescale Semiconductor 23.3.2.6 Boundar y Scan Register The boundary scan register is connected between TDI and TDO when the EXTEST or SAMPLE/PRELOAD instruction is selected.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 23-7 Figure 23-3. T AP Contr oller State Ma chine Flo w 23.4.3 JT A G Instructions T able 23-5 describes public and private instructions.
MCF548x Refere nce Manual, Rev . 3 23-8 F reescale Semiconductor 23.4.3.1 External T est Instruction (EXTEST) The EXTEST instruction selects the boundary scan register . It forces al l output pins and bidirectional pins configured as outputs to the values preloaded with the SAMPLE/PRELOAD instruction and held in the boundary scan update regist ers.
Initialization/Applicatio n Information MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 23-9 23.4.3.4 ENABLE_TEST _CTRL Instruction The ENABLE_TEST_CTRL instruction selects a 3-bit shift register (TEST_CTRL) for connection as a shift path between the TDI and TDO pin.
MCF548x Refere nce Manual, Rev . 3 23-10 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor i Part IV Communications Subsystem Part IV contains chapters that discuss the operation and configur ation of the communications I/O subsystem including the MCF548 x multichannel DMA, communications timer , PSC, FEC, DSPI, and USB2, and I 2 C.
MCF548x Refere nce Manual, Rev . 3 ii F reescale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-1 Chapter 24 Multichannel DMA 24.1 Intr oduction The MCF548 x ’ s direct memory access contro ller (DMA) module provides a flexible and efficient means to move blocks of data within the system.
MCF548x Refere nce Manual, Rev . 3 24-2 F reescale Semiconductor 24.1.2 Overview The DMA controller processes microc ode tasks that are stored in memory . A task is a sequence of instructions, referred to as descriptors , that specifies a series of data movements or manipulations.
External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-3 24.2 External Signals 24.2.1 DREQ [1:0] These active-low inputs provide extern al requests from peripherals need ing DMA service. When asserted, the device is requesting se rvice.
MCF548x Refere nce Manual, Rev . 3 24-4 F reescale Semiconductor 24.3.1.3 V ariable T able Each task has a private 48-longword va riable table. T ypically , each vari able table must be aligned to a 256-byte boundary , though some may be aligned to a 128-byte boundary if the task uses 32 or less variables.
Memory Map/Regist er Definitions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-5 Figure 24-2. DMA Pr ogrammer-Maintai ned Memory Model 24.3.3 DMA Registers 24.3.3.1 DMA Register Map T able 24-1 shows the memory map of the DMA module. T able 24- 1.
MCF548x Refere nce Manual, Rev . 3 24-6 F reescale Semiconductor 24.3.3.2 T ask Base Addr ess Register (T askB AR) Note that there is a 512-byte alignment restriction on the T askBAR.
Memory Map/Regist er Definitions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-7 24.3.3.3 Current P ointer (CP) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R T ask Base Address W Reset Uninitialized 1 5 1 4 1 3 1 2 1 1 1 0 9876543210 R T ask Base Address W Reset Uninitialized Reg Addr MBAR + 0x8000 Figure 24-3.
MCF548x Refere nce Manual, Rev . 3 24-8 F reescale Semiconductor 24.3.3.4 End P ointer (EP) 24.3.3.5 V ariable P ointer (VP) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R Descriptor P ointer W Reset Uninitialized 1 5 1 4 1 3 1 2 1 1 1 0 9876543210 R Descriptor P ointer W Reset Uninitialized Reg Addr MBAR + 0x8008 Figure 24-5.
Memory Map/Regist er Definitions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-9 24.3.3.6 PTD Control (PTD) The priority task decode control register is used to configure dif ferent opera ting modes of this DMA module.
MCF548x Refere nce Manual, Rev . 3 24-10 F re escale Semiconductor 24.3.3.7 DMA Interrupt Pending (DIPR) 24.3.3.8 DMA Interrupt Mask Reg ister (DIMR) 31 30 29 28 27 26 25 24 23 22 21 2 0 19 18 17 16 R.
Memory Map/Regist er Definitions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-11 24.3.3.9 T ask Control Register s (TCR n ) Each of the sixteen tasks has an associated task c ontrol register . Only one re gister is shown. At system reset, all bits are initialized to logic zeros.
MCF548x Refere nce Manual, Rev . 3 24-12 F re escale Semiconductor 24.3.3.10 Priority Registers (PRIOR n ) When the P TD Control register bit 15 is set to a logic one, the first 16 Priority Registers are used to set the associated priority level of the corresponding task.
Memory Map/Regist er Definitions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-13 24.3.3.11 Initiator Mux Control Register (IMCR) The DMA supports up to 32 simultan eous DMA request sources, or in itiators.
MCF548x Refere nce Manual, Rev . 3 24-14 F re escale Semiconductor 24.3.3.12 T ask Siz e Registers (TSKSZ[0:1]) Each of the 16 tasks can be program med to use specific source and des tination sizes contained in a task size register instead of a specific type encoded in a DRD.
Memory Map/Regist er Definitions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-15 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 T ASK0 T ASK1 T ASK2 T ASK3 R SRCSZ DSTSZ SRCSZ DSTSZ.
MCF548x Refere nce Manual, Rev . 3 24-16 F re escale Semiconductor 24.3.3.13 Debug Comparator Registers (DBGCOMP n ) 24.3.3.14 Debug Contr ol (DBGCTL) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R.
Memory Map/Regist er Definitions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-17 T able 24-14 below shows the encodings for th e comparator 1 type bits. These bits are set to 000 at reset signifying an uninitialized state. T able 24-13.
MCF548x Refere nce Manual, Rev . 3 24-18 F re escale Semiconductor T able 24-15 below shows the encodings for the bits. Thes e bits are set to 101 at reset signifying an uninitialized state.
Memory Map/Regist er Definitions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-19 24.3.3.16 PTD Debug Register s The P TD Debug register allows access to internal read- only P TD status registers. A different internal status register can be viewed by writing to the register .
MCF548x Refere nce Manual, Rev . 3 24-20 F re escale Semiconductor 24.3.4 External Reques t Module Registers The following section shows the registers containe d within the multichannel DMA exte rnal request module. Details are given regard ing register mapping, programming notes, bit definitions, and operating modes.
Memory Map/Regist er Definitions MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-21 24.3.4.3 External Request Addre ss Mask Register (EREQMASK) This register contains an address mask value used for the compare tha t determines a hit for the external acknowledge signal.
MCF548x Refere nce Manual, Rev . 3 24-22 F re escale Semiconductor 24.4 Functional Description The DMA controller processes microc ode tasks that are stored in memory . A task is a sequence of instructions, referred to as descriptors , that specifies a series of data movements or manipulations.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-23 The details of creating task code is beyond the scope of this documen t. An API containing pregenerated task code is provided and described in the “Multichannel DMA API User ’ s Guide”.
MCF548x Refere nce Manual, Rev . 3 24-24 F re escale Semiconductor 24.4.5 Prioritization The multichannel DMA has two basic prioritization schemes to decide which task should run when more than one is enabled and its initiator is asserte d. These are initiator priority and task priority .
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-25 function descriptor table. Each data routing descriptor can us e the contents of the f unction descriptor table to perform diff erent operations. The LURC is programmed to perform its operations on 32-bit operands.
MCF548x Refere nce Manual, Rev . 3 24-26 F re escale Semiconductor 24.4.9 Line Buffer s The multichannel DMA makes use of li ne buf fers in its interface to the XL bus to combine writes and to prefetch reads to increase performance. Each line buf fer is 32 bytes in depth.
Program ming Model MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-27 24.4.10 T ermination of Loop While executing an inner loop, there are two ways to terminate that loop: 1. Loop-termination conditions have been met. A loop is allowed one termination condition.
MCF548x Refere nce Manual, Rev . 3 24-28 F re escale Semiconductor 4. Priority registers - These will typically only be set during initia lization, but can be changed during operation if desired.
Program ming Model MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-29 The base address for contex t save space is used to save variables and values being used by the MDE and ADS. For each task, an area needs to be set aside for all relevant data to be saved until the task is called again.
MCF548x Refere nce Manual, Rev . 3 24-30 F re escale Semiconductor 24.6 Timing Diagrams The following timing diagrams show the th ree modes of external request operation. 24.6.1 Le vel-T riggered Requests Figure 24-24 shows the timing for level-triggered external requests.
Timing Diagrams MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 24-31 D ACK to assert (clock 5). The next falling edge of DREQ occurs during clock 8, causing the internal request to assert on the rising edge of clock 9. Figure 24-25. Edge-T riggered External Request Timing 24.
MCF548x Refere nce Manual, Rev . 3 24-32 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 25-1 Chapter 25 Comm Timer Module (CTM) 25.1 Intr oduction This chapter contains a detailed description of the Comm T imer Module (CTM). 25.1.1 Block Diagrams The following section presents three block di agrams showing the CTM in greater detail.
MCF548x Refere nce Manual, Rev . 3 25-2 F reescale Semiconductor Figure 25-2. Fixed Time r Channel Conceptual Bloc k Diagram Figure 25-3. V a riable Timer Chan nel Co nceptual Bloc k Diagram 25.1.2 Overview The CTM module provide s two functions for the communications co mplex.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 25-3 The fixed timer channel provides th e user with two modes, a programmable baud cl ock generator mode or a fixed period task initiator mode. • In baud clock generator mode the fixed timer channel outputs a cInitiator signal that is free running.
MCF548x Refere nce Manual, Rev . 3 25-4 F reescale Semiconductor 25.2.2 Register Descriptions 25.2.2.1 Comm Timer Config uration Register (CTCR n )—Fixed Timer Channel This register provides programming options for e ach fixed timer channel. These channels can be programmed to be in in itiator mode or in baud clock generator mode.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 25-5 25.2.2.2 Comm Timer Config uration Register (CTCR n )—V ariable Timer Channel This register provides programming opt ions for each variable time r cha nnel.
MCF548x Refere nce Manual, Rev . 3 25-6 F reescale Semiconductor NO TE The initiator mode is dif ferent from that of a fixed channel in that the period is variable .
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 25-7 25.3 Functional Description 25.3.1 V ariable Timer in Baud Cloc k Generator M ode In baud clock generator mode, the f unctionality is the same for both fixe d and variable ti mer channels.
MCF548x Refere nce Manual, Rev . 3 25-8 F reescale Semiconductor is deasserted, and the percent counter stops c ounting and retains a valu e of 0x3. As before the cInitiator signal remains asserted because the percent counter has not timed out.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 25-9 At the rising edge of th e clock in cycle 8, the cAcknowledge signal is asserted. At that point the percent counter begins to count. At the rising edge of clock 10, cAcknowledge is deasserted a nd the counter reaches the high time value.
MCF548x Refere nce Manual, Rev . 3 25-10 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-1 Chapter 26 Pr ogrammable Serial Contr oller (PSC) 26.1 Intr oduction This chapter describes the MCF548 x programmable serial controller (PSC). 26.1.1 Block Diagram A block diagram of the PSC /IrDA module is shown in Figure 26-1 below .
MCF548x Refere nce Manual, Rev . 3 26-2 F reescale Semiconductor • Backward compatible with the MC68681 — 5,6,7,8 bits data plus parity — Odd, even, none, or force parity — S top bit width pro.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-3 26.2.4 PSC n TXD PSC n TXD are the transmitter serial data outputs for the PSC modules. The output is held high (mark condition) when the transmitte r is disabled, idle, or in the local loopback mode.
MCF548x Refere nce Manual, Rev . 3 26-4 F reescale Semiconductor 0x860C 0x870C 0x880C 0x890C PSC Receive Buff er PSCRB R PSC T ransmit Buff er PSCTB W 0x8610 0x8710 0x8810 0x8910 PSC Input P o r t Cha.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-5 26.3.3 Register Descriptions This section gives detailed descriptions of the user accessible registers a nd bits within the module.
MCF548x Refere nce Manual, Rev . 3 26-6 F reescale Semiconductor 26.3.3.2 Mode Register 2 (PSCM R2 n ) PSCMR2 controls some of the module configuration. It is acc essed when the mode re gister pointer points to PSCMR2, which occurs after any access to PSCMR1.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-7 76543210 M o d e R CM TXRTS TXCTS SB U ART W RC M T X R T S T X C T S 0000 S I R W RC M 000000 A l l o t h e r m o d e s W R e s e t 00000000 Reg Addr MBAR + 0x8600 (PSC0); 0x8700 (PSC1); 0x8800 (PSC2); 0x8900 (PSC3 ) Figure 26-3.
MCF548x Refere nce Manual, Rev . 3 26-8 F reescale Semiconductor 26.3.3.3 Status Register (PSCSR n ) The PSCSR register indicates the status of the characters in the FIFO and the status of the transmitter and receiver . 4 TXCTS T ransmitter clear-to-send (UAR T and SIR modes).
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-9 T able 26-5. PSCSR n Field Descriptions Bits Name De scription 15 RB_NEOF For U ART and SIR modes, this field signifies a received break. 0 No break receiv ed.
MCF548x Refere nce Manual, Rev . 3 26-10 F re escale Semiconductor 26.3.3.4 Clock Select Register (PSCCSR n ) The comm timers (CTMs) or the PSC’ s timer (see Section 26.3.3.1 1, “Counter Ti mer Registers (PSCCTURn, PSCCTLRn) ” for more information) can be used to generate the baud rate for UAR T and SIR modes.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-11 The upper 4 bits set the receiver and the lower 4 bits set th e transmitter clock source. T o use the system bus clock for both the tran smitter and receiver , program the PSCCSR with 0xDD.
MCF548x Refere nce Manual, Rev . 3 26-12 F re escale Semiconductor T able 26-7. PSCCR n Field Descriptions Bits V alue Command Description 7 — Reserved, should be cleared. 6–4 MISC Field (Th is field selects a single command.) 000 N O C OMMAND — 001 R ESET M ODE R EGISTER P OINTER Causes th e mode reg ister poi nter to po int to PS CMR1 n .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-13 3–2 TXC Field (This field selects a single command) 00 N O A CTION T AKEN The transmitter stays in its current mode. 01 T RANSMITTER E NAB LE This command enables operation of the transmitte r .
MCF548x Refere nce Manual, Rev . 3 26-14 F re escale Semiconductor 26.3.3.6 Receiver Buffer (PSCRB n ) and T ransmitter Buffer (PSCTB n ) Data is read from the Rx FIFO by reading from the read-onl y PSCRBn registers. Data is written to the Tx FIFO by writing to the write-only PSCTBn registers.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-15 Figure 26-10 shows the modem 16 register . Figure 26-1 1 shows the AC97 mode register .
MCF548x Refere nce Manual, Rev . 3 26-16 F re escale Semiconductor T able 26-8 shows the fields for Modem 8, SIR, MIR, and FIR modes. T able 26-9 shows the fields for Modem 16 mode.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-17 26.3.3.7 Input P or t Chang e Register (PSCIPCR n ) PSCIPCR n shows the current state and the change-o f-state for the modem control input port. 11 SOF Start of frame .
MCF548x Refere nce Manual, Rev . 3 26-18 F re escale Semiconductor 26.3.3.8 A uxiliary Control Register (PSCA C R n ) PSCACR controls the handshake of the transmitter/receiver . 26.3.3.9 Interrupt Status Register (PSCISR n ) PSCISR provides status for all potenti al interrupt sources.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-19 26.3.3.10 Interrupt Mask Register (PSCIMR n ) The PSCIMR selects the corresponding bi ts in the PSCISR that cause an in terrupt.
MCF548x Refere nce Manual, Rev . 3 26-20 F re escale Semiconductor 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Mode RI P C 0 0 0 0 0 R XRD Y_ FU TXRD Y DEOF ERR 0 0 0 0 0 0 MI R / FIR W RI P C 0 0 0 0 0 R X.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-21 26.3.3.11 Counter Timer Registers (PSCCTUR n , PSCCTLR n ) These registers hold the upper and lower bytes of the preload value to be used by the PSC timer in order to provide a given baud rate.
MCF548x Refere nce Manual, Rev . 3 26-22 F re escale Semiconductor 26.3.3.13 Output P or t Bit Set (PSCOPSET n ) Output ports are asserted by writing to this register . 26.3.3.14 Output P or t Bit Reset (PSCOPR ESET n ) Output ports are negated by writing to this register .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-23 26.3.3.15 PSC/IrD A Control Register (PSCSICR n ) This register sets th e main operation mode. NO TE When the operating mode change occurs, all receiver , transm itter , and error statuses are reset and the receive r and transmitter are disabled.
MCF548x Refere nce Manual, Rev . 3 26-24 F re escale Semiconductor 26.3.3.16 Infrared Contro l Register 1 (PSCIRCR1 n ) This register controls the configuration in IrDA mode. 26.3.3.17 Infrared Contro l Register 2 (PSCIRCR2 n ) This register sets some reque sts to the transmitter or the TxFIFO.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-25 26.3.3.18 Infrared SIR Divi de Register (PSCIRSDR n ) 26.3.3.19 Infrared MIR Divide Register (PSCIRMDR n ) This register sets the baud rate in MIR mode. 1 ABOR T In most mo des this bit is reser ved.
MCF548x Refere nce Manual, Rev . 3 26-26 F re escale Semiconductor 26.3.3.20 Infrared FIR Divide Register (PSCIRFDR n ) This register sets the baud rate in FIR mode. T able 26-25. PSCI RMDR n Field Descr iptions Bits Name Description 7 FREQ Applies only in MIR mode; in all ot her modes, this field is reser ved.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-27 26.3.3.21 Rx and Tx FIFO Co unter Register (PSCRFCNT n , PSCTFCNT n ) This register applies to all modes. 26.3.3.22 Rx and Tx FIFO Data Register (PSCRFDR n , PSCTFDR n ) These registers provide access to the internal Rx and Tx FIFOs.
MCF548x Refere nce Manual, Rev . 3 26-28 F re escale Semiconductor Reads from the PSCRFDR n register return received data from the Rx FIFO. In addition, this register provides the possibility to fill the Rx FI FO for software development/debug purposes.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-29 T able 26-30. PSCRFSR n and PSCTFSR n Field Descriptions Bits Name Description 15 IP Il legal pointer . This bit signifi es an illegal pointer condition in the FIFO controller .
MCF548x Refere nce Manual, Rev . 3 26-30 F re escale Semiconductor 26.3.3.24 Rx and Tx FIFO Control Register (PSCRFCR n , PSCTFCR n ) The FIFO control registers provide pr ogrammability of FIFO behaviors, including last transfer granularity and frame operation.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-31 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R 0 0 WFR TIMER FRMEN GR IP_ MSK F AE_ MSK RXW _MSK UF.
MCF548x Refere nce Manual, Rev . 3 26-32 F re escale Semiconductor 26.3.3.25 Rx and Tx FIFO Alarm Register (PSCRF AR n , PSCTF AR n ) 26.3.3.26 Rx and Tx FIFO Read P ointer (PSCRFRP n , PSCTFRP n ) The read pointer is a FIFO-maintaine d pointer that points to the next FI FO location to be read.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-33 provided through a port to the FIFO controller . The read pointer can be both read and wr itten. This ability facilitates the debug of the FIFO controller and peripheral drivers.
MCF548x Refere nce Manual, Rev . 3 26-34 F re escale Semiconductor there are no safeguards to prevent retransmitting data which has been overwritten. When FRMEN in the PSCRFCR and PSCTFCR is cleared, then this pointer has no meaning. The last read frame pointer is reset to zero, and non-functional bits of this pointer will always remain zero.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-35 26.4 Functional Description This section provides a complete f unctional description of the module. 26.4.1 U ART Mode The universal asynchronous receiver and transmitter (UAR T) is comm only used to send low speed data between devices.
MCF548x Refere nce Manual, Rev . 3 26-36 F re escale Semiconductor Figure 26-28. Modem Co ntr ol and T ransmitter If PSCnR TS is programmed to be RxR TS, the PSCnR TS output is automatically asserted and negated by the receiver .
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-37 A/D bit is set or as a data charac ter if the A/D bit is cleared.
MCF548x Refere nce Manual, Rev . 3 26-38 F re escale Semiconductor Figure 26-30. W avef orm of Modem8 Mode The transmitter starts to transmit the fir st bit at the rising edge of the PSCFS YNC or one clock after the rising edge of the PSCFSY NC, according to the value in the DTS1 bit in the control register PSCSICR.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-39 Figure 26-31. W avef orm of Modem16 Mode The function of this mode is the same as 8-bit mode m mode except that the transmit/receive data length is 16 bit. 26.4.
MCF548x Refere nce Manual, Rev . 3 26-40 F re escale Semiconductor 26.4.5.1 T ransmitter The transmitter starts to tran smit th e first bit at the one clock after th e rising edge of the frame sync. The first slot, slot #0, is 16 bits wide while the other slot, from slot #1 to slot #12, is 20 bits wide.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-41 Leaving low power mode ca n be done via either a warm or cold reset ( Figure 26-34 ). The CPU performs a warm reset by writing a 1 to the A WR bit of SICR register for a minimum of 1 us.
MCF548x Refere nce Manual, Rev . 3 26-42 F re escale Semiconductor The ST A represents the start of the frame and the ST O represents the e nd of the frame. Both of ST A and ST O are defined as 01 1 1 1 1 10 in binary format. In the transmitted data and FCS, a 0 is inserted after 5 consecutive 1s.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-43 . 26.4.9 PSC FIFO System The receive FIFO stack consists of the FIFO and a r eceiver shift register connected to the RxD. Data is assembled in the receiver shift regi ster and loaded into the FIFO at the location pointed to by the FIFO write pointer .
MCF548x Refere nce Manual, Rev . 3 26-44 F re escale Semiconductor are unaffected, and PSCSR n [ERR] sets when th e r eceiver detects the start bit of the new overrunning character . T o support flow control, the receiver can be programmed to automati cally negate and asse rt R TS.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-45 NO TE In AC97, the number of data bytes are four times the number of time slot samples in the FIFO. Becau se, each 20-bit sample uses an entire 32-bit longword in the FIFO.
MCF548x Refere nce Manual, Rev . 3 26-46 F re escale Semiconductor 26.4.10 Looping Modes The UAR T can be configured to operate in various looping modes as shown in Figure 26-42 . These modes are useful for local and remote sy stem diagnostic functions, and can be used in mode m mode and IrDA mode as well as UAR T mode.
Resets MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-47 is ignored, the TxD is held marki ng, and the receiver is clocked by th e transmitter clock.
MCF548x Refere nce Manual, Rev . 3 26-48 F re escale Semiconductor 26.6 Interrupts This section describes interrupts originated by this module. 26.6.1 Description of Interrupt Operation 26.6.1.1 Processor Interrupt This is the interrupt to the processor.
Software En vironment MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-49 26.7.2 Configuration 26.7.2.1 U ART Mode The following is a sample ini tialization sequence for UAR T mode. T able 26-41. Sample Ini tialization Sequence for U ART Mode Step No.
MCF548x Refere nce Manual, Rev . 3 26-50 F re escale Semiconductor 26.7.2.2 Modem8 Mode Applying the clock to the PSCBCLK input and programming the control registers are required to initialize in modem8 mode. The following table desc ribes a sample initialization sequence.
Software En vironment MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-51 26.7.2.3 Modem16 Mode The configuration sequence in modem16 mode is almost the same as in m odem8 mode except that the first write value to the SIM[2:0] in PSCSICR should be 3’b010.
MCF548x Refere nce Manual, Rev . 3 26-52 F re escale Semiconductor 26.7.2.5 SIR Mode Here is a sample configur ation sequence in SIR mode. 6 PSCRF AR 00F0 ALARM[8 :0]=0F0 Request is asser t ed if # of.
Software En vironment MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-53 26.7.2.6 MIR Mode Applying clock to the PSCBCLK input and programming the c ontrol registers are re quired to initialize in MIR mode. Here is a sample sequence when the input frequenc y of PSCBCLK is 18.
MCF548x Refere nce Manual, Rev . 3 26-54 F re escale Semiconductor 26.7.2.7 FIR Mode Applying the clock to the PSCBCLK input and programming the control registers are required to initialize in FIR mode. Here is a sample se quence when the input frequency of PSCBCLK is 64 MHz.
Software En vironment MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 26-55 26.7.3 Pr ogramming In any mode, after the configuration sequence, enabli ng the transmitter and writ ing data to the transmit buffer s ends serial data via the PSCnTXD port.
MCF548x Refere nce Manual, Rev . 3 26-56 F re escale Semiconductor After initialization and after enabli ng the receiver , the receiver is rea dy to receive data. While receiving serial data, the recei ver will eliminate ST A and STO, and these fl ags are not written into the FIFO.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-1 Chapter 27 DMA Serial P eripheral Interface (DSPI) This chapter describes the use of the DMA seri al peripheral interface (DSPI) implemented on the MCF548 x processor .
MCF548x Refere nce Manual, Rev . 3 27-2 F reescale Semiconductor 27.3 Bloc k Diagram Figure 27-1 shows a DSPI with external queues in system RAM. Figure 27-1. DSPI wi th Queues and DMA 27.4 Modes of Operation The DSPI has two modes of operation: master and slave.
Signal Description MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-3 27.5 Signal Description 27.5.1 Overview T able 27-1 lists the DSPI signals.
MCF548x Refere nce Manual, Rev . 3 27-4 F reescale Semiconductor 27.5.2.4 DSPI Serial Input (DSPISIN) DSPISIN is a serial data input signal. 27.5.2.5 DSPI Serial Output (DSPISOUT) DSPISOUT is a serial data output signal. 27.5.2.6 DSPI Serial Clock (DSPISCK) DSPISCK is a synchronous serial co mmunication clock signal .
Memory Map and Regi ster s MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-5 27.6.1 DSPI Module Config uration Register (DMCR) The DMCR contains bits which configure various at tributes associated with DSPI operation. The HAL T bit can be changed at any time but will only take ef fect on the next frame boundary.
MCF548x Refere nce Manual, Rev . 3 27-6 F reescale Semiconductor 25 PCSSE P eriph eral chip select strobe enable . Selects between the DSPICS5 and PCSS functions. See Section 27.7.3.5, “P er ipheral Chip Select Strobe Enable (PCSS) ” f or more information.
Memory Map and Regi ster s MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-7 27.6.2 DSPI T ransfer Count R egister (DTCR) The DTCR contains a counter that indicates the num ber of SPI transfers made. The transfer counter is intended to assist in queue manageme nt.
MCF548x Refere nce Manual, Rev . 3 27-8 F reescale Semiconductor an SPI master , t he DT FR[CT AS] field in the comm and portion of the Tx FIFO entry selects which of the DCT AR registers is used. In slave mode, a subset of the bitfie lds in only the DCT AR0 regist ers are used to set the slave transfer attributes.
Memory Map and Regi ster s MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-9 21–20 P ASC After DSPISCK delay prescaler . The P ASC field selects the prescaler value f or the dela y between the last edge of DSPISCK and the negatio n of DSPICS .
MCF548x Refere nce Manual, Rev . 3 27-10 F re escale Semiconductor 7–4 DT Dela y after transf er scaler . The DT field selects the delay after transf er scaler.
Memory Map and Regi ster s MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-11 27.6.4 DSPI Status Register (DSR) The DSR contains status and flag bi ts. The bits reflect the status of the DSPI and indicate the occurrence of events that can generate interr upt or DMA requests.
MCF548x Refere nce Manual, Rev . 3 27-12 F re escale Semiconductor T able 27-9. DSR Field Descriptions Bits Name Description 31 TCF T ransfer complete flag. The TCF bit in dicates that all bits in a frame hav e been shifted out. The TCF bit is set at the end of the frame transf er.
Memory Map and Regi ster s MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-13 27.6.5 DSPI DMA/Interrupt Requ est Select Register (DIRSR) The DIRSR serves two purposes. It enables flag bits in the DSR to generate DMA requests or interrupt requests.
MCF548x Refere nce Manual, Rev . 3 27-14 F re escale Semiconductor DIRSR Field Descriptions Bits Name Description 31 TCFE T ransfer complete flag interrupt enable. The TCFE bit enab les TCF flag in the DSR to generate an interrupt request. 0 TCF interrupts are disab led 1 TCF interrupts are enab led 30–29 — Reser ved, should be cleared.
Memory Map and Regi ster s MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-15 27.6.6 DSPI Tx FIFO Register (DTFR) The DTFR provides a means to write to the Tx FIFO. SPI commands and data written to this register are transferred to the Tx FIFO.
MCF548x Refere nce Manual, Rev . 3 27-16 F re escale Semiconductor 27.6.7 DSPI Rx FIFO Register (DRFR) The DRFR provides a means to read the Rx FIFO. See Section 27.7.2.5, “Rx FIFO Buffering Mechanism ” for a description of the Rx FIFO op erations.
Memory Map and Regi ster s MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-17 27.6.8 DSPI Tx FIFO Deb ug Register s 0–3 (DTFDR n ) The DTFDR n registers provide visibility into the Tx FIFO for debugging purposes. Each register is an entry in the Tx FIFO.
MCF548x Refere nce Manual, Rev . 3 27-18 F re escale Semiconductor 27.7 Functional Description The DMA serial peripheral interf ace (DSPI) block provides a synchr onous serial bus for communication between an MCU and an external peripheral device.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-19 Figure 27-11. SPI Seria l Pro tocol Overvie w The DSPI has four peripheral chip select signals that are used to se lect which of the sl aves to communicate with: DSPICS5, DSPICS3, DSPICS1, and DSPICS0.
MCF548x Refere nce Manual, Rev . 3 27-20 F re escale Semiconductor S tate transitions from running to st opped occur on the next fr ame boundary if a transfer is in progress, or on the next system clock cycle if no transfers are in progress.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-21 for successful communication with an SPI master. These SPI slave mode transfer attributes are set in the DCT AR0. 27.7.2.3 FIFO Disable Operation The FIFO disable mechanisms allo w SPI transfers without using the Tx FIFO or Rx FIFO.
MCF548x Refere nce Manual, Rev . 3 27-22 F re escale Semiconductor 27.7.2.5 Rx FIFO Buffering Mechanism The Rx FIFO functions as a buf fer for data received on the DSPISIN signa l.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-23 27.7.3.1 Baud Rate Generator The baud rate is the frequency of the DSPI serial communication cl ock (DSPISCK). The system clock f sys is divided by a prescaler (PBR) and scaler (BR) to produce DSPISCK.
MCF548x Refere nce Manual, Rev . 3 27-24 F re escale Semiconductor Eqn. 27-7 T able 27-18 shows an example of how to co mpute the delay after transfer . 27.7.3.5 Peripheral Chip Sel ect Str obe Enable (PCSS ) The PCSS signal provides a delay to allow the DSPICS n signals to settle afte r transitioning, thereby avoiding glitches.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-25 27.7.4 T ransfer Formats The SPI serial communication is c ontrolled by the serial communications clock (DSPISCK) signal and the DSPICS n signals.
MCF548x Refere nce Manual, Rev . 3 27-26 F re escale Semiconductor Figure 27-15. DSPI T ransfer Timing Diagram (MTFE = 0, CPHA = 0 , FMSZ = 8) The master initiates the transfer by placing its first data bit on the DSPISOUT pin and asserting the appropriate peripheral chip select signals to the slave de vice.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-27 Figure 27-16. DSPI T ransfer Timing Diagram (MTFE = 0, CPHA = 1 , FMSZ = 8) The master initiates the tr ansfer by asserting the CS n signal to the slave.
MCF548x Refere nce Manual, Rev . 3 27-28 F re escale Semiconductor Figure 27-17. DSPI Modifi ed T ransfer Format (MTF E = 1, CPHA = 0, Fsck = Fsys/4) 27.7.4.4 Modified SPI T ransfer Format (MTFE = 1, CPHA = 1) Figure 27-18 shows the modified transfer format for CPHA = 1.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-29 be visible on the master D SPISCK pin during the sampling of the last bit. The DSPISCK to CS delay must be greater or equal to half of the DSPISCK period. Figure 27-1 8.
MCF548x Refere nce Manual, Rev . 3 27-30 F re escale Semiconductor (t DT ) is not inserted between the transfers. Figure 27-20 shows the timing diagram for two 4-bit transfers with CPHA = 1 and CONT = 1.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-31 Figure 27-21. Contin uous DSPI SCK Timing Dia gram (CSCK = 0) If DTFR[CONT] is set, DSPICS n remains asserted between th e transfers when the DSPICS n signal for the next transfer is the same as for the current transfer.
MCF548x Refere nce Manual, Rev . 3 27-32 F re escale Semiconductor Each condition has a flag bit in the Section 27.6.4, “DSPI Status Register (DSR) ” and a request enable bit in the Section 27.6.5, “DSPI DMA/Interrupt Re quest Select Re gister (DIRSR) .
Initialization and Ap plication Information MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-33 27.8 Initialization and Application Inf ormation 27.8.1 How to Change Queues This section presents an example of how to change queues for the DSPI.
MCF548x Refere nce Manual, Rev . 3 27-34 F re escale Semiconductor 27.8.3 Dela y Settings T able 27-23 shows the values for the delay a fter transfer (t DT ) and CS to DSPISCK delay (t CSC ) that can be generated based on the pres caler values and the scaler values set in the DCT AR n registers.
Initialization and Ap plication Information MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 27-35 27.8.4 Calculation of FIFO P ointer Addresses The user has complete visibility of the Tx a.
MCF548x Refere nce Manual, Rev . 3 27-36 F re escale Semiconductor Figure 27-23. Tx FIFO P ointers and Counter 27.8.4.1 Address Calculation for the First-in Entry and Last-in Entry in the Tx FIFO The .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-1 Chapter 28 I 2 C Interface 28.1 Intr oduction This chapter describes the I 2 C™ module, including I 2 C protocol, clock synchronization, and I 2 C programming model registers. It also pr ovides extensive programming examples.
MCF548x Refere nce Manual, Rev . 3 28-2 F reescale Semiconductor 28.1.2 I 2 C Overview I 2 C is a two-wire, bidi rectional serial bus which provides a simple, efficien t method of data exchange between devices. This two-wire bus minimi zes the interconnection between the devices.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-3 28.3 Memory Map/Register Definition 28.3.1 I 2 C Register Map . 28.3.2 Register Descriptions There are five regist ers used in the I 2 C interfa ce with the interrupt control register .
MCF548x Refere nce Manual, Rev . 3 28-4 F reescale Semiconductor 28.3.2.2 I 2 C Frequency Divider Register (I2FDR) The I2FDR, shown in Figure 28-3 , provides a programmable pr escaler to configure the I 2 C clock for bit-rate selection. 76543210 R0 0 I C W R e s e t 00000000 Reg Addr MBAR + 0x8F04 Figure 28-3.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-5 28.3.2.3 I 2 C Control Register (I2CR) The I2CR is used to enable the I 2 C module and the I 2 C interrupt. It also contains bits that govern operation as a slave or a master .
MCF548x Refere nce Manual, Rev . 3 28-6 F reescale Semiconductor 76543210 R I CF IAAS IBB IAL 0 SRW IIF RXAK W R e s e t 10000001 Reg Addr MBAR + 0x8F0C Figure 28-5. I 2 C Status Register (I2SR) T able 28-6. I2SR Field Descr iptions Bits Name Description 7 ICF Data transferring bit.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-7 28.3.2.5 I 2 C Data I/O Registe r (I2DR) While in master -receive mode , reading the I2DR allows a read to o ccur and initiates th e next data byte to be received.
MCF548x Refere nce Manual, Rev . 3 28-8 F reescale Semiconductor 28.4 Functional Description The I 2 C has a simple bidirectional 2-wire bus for ef ficient inter -IC cont rol. The two wires, serial data address line (SDA) and serial clock line (SCL), carry in formation betw een the MCF548 x and other devices connected to the bus.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-9 Normally , a standard communication is composed of f our parts: ST AR T signal, slave address transmission, data transfer , and STOP signal. The parts of a communication are de scribed briefly in the following sections and illustrated in Figure 28-8 .
MCF548x Refere nce Manual, Rev . 3 28-10 F re escale Semiconductor Data can be changed only while SCL is low and must be held stable while SCL is high, as Figure 28-8 shows.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-11 28.4.6 Repeated Star t A repeated ST AR T signal is a ST AR T signal generated without first generating a ST OP signal to terminate the communication.
MCF548x Refere nce Manual, Rev . 3 28-12 F re escale Semiconductor Devices with shorter low periods enter a high wait state dur ing this time (see Figure 28-13 ). When all devices concerned have counted of f their low period, the s ynchronized clock SCL li ne is released and pulled high.
Initialization Sequence MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-13 2. Update the I2ADR to define it as a slave device (give it a slave address) 3.
MCF548x Refere nce Manual, Rev . 3 28-14 F re escale Semiconductor /* Wait for I2SR.IBB (bus busy) to b e set */ while ( !(MCF5_I2C_I2SR & MCF_I2C_I2 SR_BB) ); 28.5.2 P ost-T ransfer Software Response T ransmission or reception of a byte w ill set the data transferring bit (I CF) to 1, which indicates one byte of communication is finishe d.
Initialization Sequence MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-15 28.5.3 Generation of ST OP A data transfer ends with a STOP signal generated by the ‘master ’ devi ce. A master transmitter can simply generate a STOP signal after all the d ata has been transmitted.
MCF548x Refere nce Manual, Rev . 3 28-16 F re escale Semiconductor /* Generate STOP by clearing I2CR.MS TA */ MCF_I2C_I2CR = 0x80; } /*Store received data and release SD A */ rx_buffer[i] = MCF_I2C_I2DR; } 28.
Initialization Sequence MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-17 /* Set I2CR.MTX to put the module in transit mode */ MCF_I2C_I2CR |= MCF_I2C_I2CR_MTX; /* Send the contents of.
MCF548x Refere nce Manual, Rev . 3 28-18 F re escale Semiconductor /* Receive data from master device a nd store in rx-buffer */ for(i=0; i<rx_byte_count; i++) { /* Wait for transfer to complete */.
Initialization Sequence MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 28-19 Figure 28-14. Flow-Chart of T ypical I 2 C Interrupt Rou tine Clear IIF Tx/Rx ? Second Last Byte to be Read ? .
MCF548x Refere nce Manual, Rev . 3 28-20 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-1 Chapter 29 USB 2.0 De vice Contr oller 29.1 Intr oduction This chapter provides an overview of th e USB 2.0 device controller module of the x MCF548 x . Connection examples and circuit board layout considerations are also provided.
MCF548x Refere nce Manual, Rev . 3 29-2 F reescale Semiconductor 29.1.3 Block Diagram A block diagram of the complete USB 2.0 Device controller module is shown in Figure 29-1 .
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-3 29.1.3.3 FIFO Controller The FIFO controller implements th e data FIFOs in such a way that they can communicate with the ColdFire core or with the multichannel DMA. There are two physical RAMs that are shared by all of the FIFO controllers.
MCF548x Refere nce Manual, Rev . 3 29-4 F reescale Semiconductor 29.1.3.5.4 USBCLKIN Input pin for the 12-MHz USB crystal circuit. 29.1.3.5.5 USBCLK OUT Output pin for the 12-MHz USB crystal circuit. 29.2 Memory Map/Register Definition This section contains a deta iled description of each regist er and its specific function.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-5 0xB088 USB PID e rror counter register , USB framing error counter register PIDECNT FRMECNT 0xB08C USB .
MCF548x Refere nce Manual, Rev . 3 29-6 F reescale Semiconductor 0xB164 EP2 OUT interface number register , EP2 OUT status register EP2OUTIFR EP2OUTSR — — 0xB168 Reser ved 0xB16C EP2 OUT Sync F ra.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-7 0xB1D0– 0xB1D7 Reser ved 0xB1D8 EP4 IN attribute control register , EP4 IN max pack et size register .
MCF548x Refere nce Manual, Rev . 3 29-8 F reescale Semiconductor 0xB23C EP6 IN interf ace number register , EP6 IN status register EP6INIFR EP6INSR — — 0xB240– 0xB244 Reser ved 0xB248 EP6 IN syn.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-9 29.2.2 USB Request, Contr o l, and Status Registers The following registers provide an ap plication interface to th e request, control, and status functionality of the USB 2.
MCF548x Refere nce Manual, Rev . 3 29-10 F re escale Semiconductor 29.2.2.2 USB Control Register (USBCR) The USBCR configures f eatures of the module. 6–4 — Reser v ed, should be cleared.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-11 T able 29-3. USBCR Field Descr iptions Bits Name Description 31–6 — Reser ved, should be cleared. 5 RAMSPLIT RAM split. The endpoint FIFO RAM can be con figured for maximum fle xibility o r f or maximum performance.
MCF548x Refere nce Manual, Rev . 3 29-12 F re escale Semiconductor 29.2.2.3 USB Descripto r RAM Control Register (DRAMCR) 1 APPLOCK Application Loc k. This bit should be asserted to ensure the indivisibility of read-modify-write (RMW) operations on cer tain USB 2.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-13 29.2.2.4 USB Descripto r RAM Data Register (DRAMDR) The DRAMDR allows user access to the USB descriptor memory . T able 29-4. DRAMCR Field Descr iptions Bits Name Description 31 ST ART Star t.
MCF548x Refere nce Manual, Rev . 3 29-14 F re escale Semiconductor 29.2.2.5 USB Interrupt Status Register (USBISR) The USBISR maintains the status of interrupt conditions pertaini ng to USB functions. An interrupt, once set, remains se t until cleared by writi ng a 1 to the correspondi ng bit.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-15 29.2.2.6 USB Interrupt Mask Reg ister (USBIMR) Setting a bit in the USBIMR masks the corresponding interrupt in the USBISR. 5 RSTST OP Reset stop. This indicates the end of reset signalling on the USB.
MCF548x Refere nce Manual, Rev . 3 29-16 F re escale Semiconductor 29.2.2.7 USB Applicatio n Interrupt Status Register (USBAISR) The USBAISR contains information re garding the source of a USB interrupt event. Interrupt sources may be masked in the USBAIMR.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-17 29.2.2.8 USB Applicatio n Interrupt Mask Register (USBAIMR) The USBAIMR allows the application to mask interrupt sources within the USB module. The format of this register is identical to that of the USBAISR.
MCF548x Refere nce Manual, Rev . 3 29-18 F re escale Semiconductor 29.2.2.9 Endpoint Info Register (EPINFO) The EPINFO contains the currently active endpoint index. Th e contents of this re gister are updated each time a token is received by the USB device controller .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-19 29.2.2.10 USB Configurat ion V alue Register (CFGR) 29.2.2.11 USB Configurat ion Attribute Register (CFGAR) The CFGAR contains attributes of the current configuration.
MCF548x Refere nce Manual, Rev . 3 29-20 F re escale Semiconductor 29.2.2.12 USB Device Speed Register (SPEEDR) The SPEEDR contains the current US B operating speed of the USB module. It is updated by the USB 2.0 device controller when a USB reset, suspend, or resume process completes.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-21 29.2.2.13 USB Frame Number Register (FR MNUMR) 29.2.2.14 USB Endpoint T ransaction Number Register (EPTNR) The EP TNR is used for high-spee d, high-bandwidth, isochronous IN endpoints only .
MCF548x Refere nce Manual, Rev . 3 29-22 F re escale Semiconductor 29.2.2.15 USB Application In terf ace Update Register (IFUR) The IFUR is used by the USB applic ation to perform a high- speed update of the al ternate setting of a specified interface.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-23 29.2.3 USB Counter Registers The USB module contains a number of registers that keep statistics on the number of packets that have been received and tran smitted along with th e number of errors.
MCF548x Refere nce Manual, Rev . 3 29-24 F re escale Semiconductor 29.2.3.2 USB Dropped P acket Counter Register (DPCNT) 29.2.3.3 USB CRC Error C ounter Register (CRCECNT) 29.2.3.4 USB Bitstu ffing Err or Counter Register (BSECNT) 1 5 1 4 1 3 1 2 1 1 1 0 9876543210 R DPCNT W R e s e t 0000000000000000 Reg Addr MBAR + 0xB082 Figure 29-19.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-25 29.2.3.5 USB PID Error Count er Register (PIDECNT) 29.2.3.6 USB Framing Error Counter Register (FRMECNT) T able 29-21. BSECNT Fi eld Descriptions Bits Name Description 15–0 BSECNT Bitstuffing error coun ter .
MCF548x Refere nce Manual, Rev . 3 29-26 F re escale Semiconductor 29.2.3.7 USB T ransmitted P ac ket Counter Register (TXPCNT) 29.2.3.8 USB Counter Over flow Register (CNT O VR) The CNTOVR tracks overflow of each of the counter re gisters described above.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-27 29.2.4 Endpoint Context Register s The endpoint registers are used to configure each of the individual endpoints. Some of the registers come in pairs: an IN register and an OUT register .
MCF548x Refere nce Manual, Rev . 3 29-28 F re escale Semiconductor 29.2.4.2 Endpoint n Max Pac ket Size Register (EP0MPSR, EP n OUTMPSR, EP n INMPSR) The endpoint max packet size registers contain the maximu m packet size that this endpoint, in its current configuration, is capable of transmitting or receiving.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-29 29.2.4.3 Endpoint n Interface Number Register (EP0IFR , EP n OUTIFR, EP n INIFR) These registers identify which inte rface each particular endpoi nt is a memb er of.
MCF548x Refere nce Manual, Rev . 3 29-30 F re escale Semiconductor 29.2.4.4 Endpoint n Status R egister (EP0SR, EP n OUTSR, EP n INSR) The endpoint status register contains the status for the specified endpoint. The AC TIVE bit of this register must be set before doing any transaction on this endpoint.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-31 29.2.4.5 bmRequest T ype Register (BMRTR) The BMR TR records the bmRequestT ype fiel d of a SETUP transaction on Endpoint 0. 5 TXZERO T ransmit a zero byte pac k et.
MCF548x Refere nce Manual, Rev . 3 29-32 F re escale Semiconductor 29.2.4.6 bRequest T ype Register (BRTR) The BR TR records the bRequest field of a SETUP transaction on Endpoint 0. 29.2.4.7 wV alue Register (WV ALUER) The WV ALUER records the wV alue field of a SETUP transaction on Endpoint 0.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-33 29.2.4.8 wIndex Register (WINDEXR) The WINDEXR records the wIndex field of a SETUP transaction on Endpoint 0. 29.2.4.9 wLength R egister (WLENGTHR) The WLENG THR records the wLength fiel d of a SETUP transaction on Endpoint 0.
MCF548x Refere nce Manual, Rev . 3 29-34 F re escale Semiconductor When the host directs a SYNCH_FRAM E control read query at this re gister ’ s endpoint, the contents of this register are returned to the host. FRMNUM may range from 0x000 through 0x7FF .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-35 29.2.5.2 USB Endpoint n Interrupt Status Register (EP n ISR) The EP n ISR monitors the status of a specific endpoint and generates a CPU interrupt each time a monitored event occurs.
MCF548x Refere nce Manual, Rev . 3 29-36 F re escale Semiconductor If a register write oc curs at the same time a n in terrupt is received, the interr upt takes precedence over the write.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-37 29.2.5.3 USB Endpoint n Interrupt Mask Register (EP n IMR) The EP n IMR allows software to ma sk individual in terrupts for each endpoint by masking the corresponding bits in the EPISR.
MCF548x Refere nce Manual, Rev . 3 29-38 F re escale Semiconductor 29.2.5.4 USB Endpoint n FIFO RAM Configuration Register (EP n FRCFGR) The EP n FRCFGR allows the software to allocate the total FIFO RAM space among the individual endpoint FIFOs.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-39 29.2.5.5 USB Endpoint n FIFO Data Register (EP n FDR) The EP n FDR is the main interface por t for the FIFO. Data that is to be buf fered in the FIFO, or has been buffered in the FIFO, is accessed th rough this register .
MCF548x Refere nce Manual, Rev . 3 29-40 F re escale Semiconductor 29.2.5.6 USB Endpoint n FIFO Status Register (EP n FSR) T able 29-40. EP n FDR Field Descriptions Bits Name Description 31–0 TXDA T.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-41 23 F AE F rame accept error . This bit indicates a frame accept error in th e FIFO controller and will asser t in two scenari os. 1) The user has over-written data in a transmit FIFO for a pa ck e t (frame) that needs to be retr ied.
MCF548x Refere nce Manual, Rev . 3 29-42 F re escale Semiconductor 29.2.5.7 USB Endpoint n FIFO Contr ol Register (EP n FCR) 31 30 29 28 27 2 6 25 24 23 22 21 20 19 18 17 16 RS H A D 0 W F R T M R F R M G R I P MSK FA E MSK RXW MSK UF MSK OF MSK TXW MSK 00 W R e s e t 0 U n i n .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-43 26-24 GR Gr anularity . The functionality of this fiel d depe nds on the direction of the FIFO. The direction, type, and pack e t size are defined in the EPnST A T registers.
MCF548x Refere nce Manual, Rev . 3 29-44 F re escale Semiconductor 29.2.5.8 USB Endpoint n FIFO Alarm Register (EP n F AR) 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R 0000 0 0 0 0 0 0 0 0 0 0 0 .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-45 29.2.5.9 USB Endpoint n FIFO Read P ointer (EP n FRP) 29.
MCF548x Refere nce Manual, Rev . 3 29-46 F re escale Semiconductor 29.2.5.11 USB Endpoint n Last Read Frame P ointer (EP n LRFP) T able 29-45. EP n FWP F ield Descriptions Bits Name Description 31–12 — Reser ved, should be cleared. 11–0 WP Write p ointer .
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-47 29.2.5.12 USB Endpoint n Last Write Frame P ointer (EP n LW F P ) 29.3 Functional Description 29.3.1 Interrupts Please see Chapter 13, “Interrupt Controller,” for information on the USB interrupts.
MCF548x Refere nce Manual, Rev . 3 29-48 F re escale Semiconductor At power-up time, the USB module contains no configuration info rmation. The USB module does not know how many endpoints it has availabl e or how to find th e descriptors.
Software Interface MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-49 Download of the descriptor data consists of the following steps: 1. V erify that the USBCR [RAMEN] bit is clear . This ensures that the datapath to the descriptor RAM is open to the application.
MCF548x Refere nce Manual, Rev . 3 29-50 F re escale Semiconductor 29.4.1.4 FIFO Siz es FIFO sizes must be program med to match the traf fic sent across the USB. The EP n FRCFGR along with the USBCR[RAMSPLIT] bit allow software to specify the memory configuration that is to be used at any given time.
Software Interface MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-51 29.4.3.1 USB Pac kets Data moves across the USB in units called packets. Packets range in size from 0 to 1024 bytes, and depending on the transfer mode, the pack et size is restricted to a small se t of values.
MCF548x Refere nce Manual, Rev . 3 29-52 F re escale Semiconductor 2. On receiving EOF interrupt, prepare to read a comp lete packet of data. Cl ear the EOF interrupt so that software will receive not ification of the next frame. 3. Read the EP n FDR to read in the next piece of data.
Software Interface MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-53 further requests from the host. This guarantees that data from two di f ferent transfers will never get intermixed within the FIFO. NO TE The DMA extensions do not define a zer o length frame.
MCF548x Refere nce Manual, Rev . 3 29-54 F re escale Semiconductor 4. Handle the request appropriately . If a data transf er is implied by the command, set up and perform the data transfer . Be careful not to send back more bytes to the USB host than were requested in the wLength field of the SETUP packet.
Software Interface MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 29-55 29.4.3.8 Isochronous Operations Isochronous operations are a special case of USB traffic. Instead of guaranteeing delivery with unbounded latency , isochronous traffic flows over the bus at a guaranteed rate with no error checking.
MCF548x Refere nce Manual, Rev . 3 29-56 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-1 Chapter 30 F ast Ethernet Controller (FEC) 30.1 Intr oduction This Fast Ethernet Controller (F EC) chapter provides a functional bloc k.
MCF548x Refere nce Manual, Rev . 3 30-2 F reescale Semiconductor Figure 30-1. FEC Block Dia gram 30.1.3 Overview The Fast Ethernet Controller is designed to support both 10 and 100 Mbps Et hernet/IEEE 802.3 networks. An external transceiver interface and transceiver function are required to complete the interface to the media.
Introduction MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-3 30.1.4 Features The FEC incorporates the following features: • Support for three different Et hernet physical interfaces: — 100-Mbps IEEE 802.3 MII — 10-Mbps IEEE 802.
MCF548x Refere nce Manual, Rev . 3 30-4 F reescale Semiconductor transceiver via this interface in the following sections: Section 30.4.3, “Network Interface Options ,” Section 30.4.13, “MII Data Frame ,” and Section 30.4.14, “MII Management Frame Structure .
External Signals MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-5 30.2.5 T ransmit Error (E n TXER) Assertion of this output signal for one or more clock cycles while E n TXEN is asserted shall cause the PHY to transmit one or more illegal symbols.
MCF548x Refere nce Manual, Rev . 3 30-6 F reescale Semiconductor . A false carrier condition occurs if the PHY detects a bad start-of-s tream delimiter . This condition is signaled to the MII by asserting E n RXER and placing 1 1 10 on E n RXD. E n RXDV must also be de-asserted.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-7 30.3.2 Detailed Memory Map (Contr ol/Status Registers) T able 30-5 shows the FEC register memory map with each register address, name, and a brief description.
MCF548x Refere nce Manual, Rev . 3 30-8 F reescale Semiconductor 30.3.3 MIB Block Counter s Memory Map T able 30-6 defines the MIB Counters memo ry map which defines the locat ions in the MIB RAM space where hardware maintained count ers reside.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-9 which are supported do not require MIB counters. Counters for tr ansmit and receive full duplex flow control frames are included as well.
MCF548x Refere nce Manual, Rev . 3 30-10 F re escale Semiconductor 30.3.3.1 Ethernet Interrupt Event Reg ister (EIR) When an event occurs that sets a bit in the EIR, an interrupt will be genera ted if the corresponding bit in the interrupt mask register (EIMR) is also set.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-11 Interrupts resulting from errors/p roblems detected in th e network or transcei ver are HBERR, BABR, BABT , LC, and RL. Interrupts result ing from internal errors are HB ERR, XFUN, XFERR, and RF ERR.
MCF548x Refere nce Manual, Rev . 3 30-12 F re escale Semiconductor 30.3.3.2 Interrupt Mask Reg ister (EIMR) The EIMR controls which possible interrupt events are a llowed to generate actual interrupts. All implemented bits in this CSR are read/write. This register is cleared upon a hardware reset.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-13 30.3.3.3 Ethernet Control Register (ECR) ECR is a read/write user register , though both fields in this register may be altered by hardware as well. The ECR is used to enable/disable the FEC.
MCF548x Refere nce Manual, Rev . 3 30-14 F re escale Semiconductor 30.3.3.4 MII Manag ement Frame Register (MMFR) The MMFR is accessed by the user and does not reset to a defined value. The MMFR register is used to communicate with the attached M II compatible PHY devices, providing read/write acc ess to their MII registers.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-15 T o perform a read or write operation on the MII Ma nagement Interface, the MMFR register must be written by the user .
MCF548x Refere nce Manual, Rev . 3 30-16 F re escale Semiconductor The MII_SPEED field must be progr ammed with a value to provide an EMDC frequency of less than or equal to 2.5 MHz to be compliant with the IEEE 802.3 MII sp ecification. The MII_ SPEED must be set to a non-zero value in order to source a read or write management frame.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-17 30.3.3.6 MIB Control Register (MIBC) The MIBC is a read/write register used to provide control of and to observe the state of the MIB block. This register is accessed by user so ftware if there is a need to disable the MIB block operation.
MCF548x Refere nce Manual, Rev . 3 30-18 F re escale Semiconductor 30.3.3.8 Receive Hash Register (RHR) This read only register provides address recognition information from the receive block about the frame currently being received.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-19 30.3.3.9 T ransmit C ontr ol Register (TCR) The TCR is read/write and is writte n by the user to configure the transm it block. This regist er is cleared at system reset.
MCF548x Refere nce Manual, Rev . 3 30-20 F re escale Semiconductor 30.3.3.10 Physical Ad dress Low Register (P ALR) The P ALR is written by the user . This register contains the lower 32 bits (bytes 0.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-21 30.3.3.11 Physical Ad dre ss High Register (P AHR) The P AHR is written by the user .
MCF548x Refere nce Manual, Rev . 3 30-22 F re escale Semiconductor 30.3.3.12 Opcode/P ause Duration Register (OPD) The OPD is read/write accessible. This register contains the 16-bit opcode and 16- bit pause duration fields used in transmission of a P AUSE frame.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-23 30.3.3.14 Individual Address Lower Register (IALR) The IALR register is writ ten by the user .
MCF548x Refere nce Manual, Rev . 3 30-24 F re escale Semiconductor 30.3.3.15 Group Ad dress U pper Register (GA UR) The GAUR is written by the user . This register contains the upper 32 bits of the 64-bit hash table used in the address recognition process for receive frames with a multicast address.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-25 30.3.3.17 FEC T r ansmit FIFO W atermark Register (FECTFWR ) The FECTFWR is a 32-bit read/write register programmed by the user to control the amount of data required in the transmit FIFO before transmission of a frame can begin.
MCF548x Refere nce Manual, Rev . 3 30-26 F re escale Semiconductor 30.3.3.18 FEC Receive FIFO Data Register (FECRFDR) This is the main interface port for the FIFO. Data that is to be buf fered in the FIFO or that has been buffered in the FIFO is accessed through this register .
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-27 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R IP 0 0 0 FRM F AE RXW UF OF FRM RD Y FU ALARM EMT W .
MCF548x Refere nce Manual, Rev . 3 30-28 F re escale Semiconductor 30.3.3.20 FEC Receive FIFO Control Register (FECRFCR) The FIFO receive control register provides programmability of FIFO behaviors, including last transfer granularity and frame operation.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-29 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 R 000 T I M E R F R M EN GR IP_ MSK FA E _ MSK RXW_ MS.
MCF548x Refere nce Manual, Rev . 3 30-30 F re escale Semiconductor 30.3.3.21 FEC Receive FIFO Last Read Frame P ointer Register (FECRLRFP) The last read frame pointer (LRFP) is a FIFO-maintained pointer that indicates the location of the next byte after the last frame that has been completely rea d.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-31 in-between the read and write point ers) into framed and unframed data . Data between the L WFP and write pointer constitutes an incomplete frame, while data between the r ead pointer and the L WFP has been received as whole frames.
MCF548x Refere nce Manual, Rev . 3 30-32 F re escale Semiconductor 30.3.3.24 FEC Receive FIFO Read P ointer Register (FECRFRP) The read pointer is a FIFO maintain ed pointer which points to the next FIFO location to be read. The read pointer can be both read and written.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-33 30.3.3.25 FEC Receive FIFO Write P ointer Register (FECRFWP) The write pointer is a FIFO maintain ed pointer which points to the next FIFO location to be wr itten.
MCF548x Refere nce Manual, Rev . 3 30-34 F re escale Semiconductor 30.3.3.27 FEC T r ansmit FIFO Status Register (FECTFSR) The FIFO transmit status register contains bits which provide inform ation about the status of the FIFO controller . Some of the bits of this re gister are used to generate DMA requests.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-35 T able 30-34. FECTFSR F ield Descriptions Bits Name De scriptions 31 IP Ill egal pointer . This bit signifies an illegal pointe r condition in the FIFO controller.
MCF548x Refere nce Manual, Rev . 3 30-36 F re escale Semiconductor 30.3.3.28 FEC T r ansmit FIFO Control Register (FECTFCR) The FIFO transmit control register provides programmability of FIFO behaviors, including last transfer granularity and frame operation.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-37 30.3.3.29 FEC T ransmit F IFO Last Read Frame P o inter Register (FECTLRFP) The last read frame pointer (LRFP) is a FIFO-maintained pointer that indicates the location of the next byte after the last frame that has been completely rea d.
MCF548x Refere nce Manual, Rev . 3 30-38 F re escale Semiconductor 30.3.3.30 FEC T r ansmit FIFO Last Writ e Frame P ointer Register (FECTL WFP) The last read frame pointer (L WFP) is a FIFO-maintained pointer that indicates the lo cation of the next byte after the last frame that has b een completely written.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-39 30.3.3.31 FEC T ransmit F IFO Alarm Register (FECTF AR) This pointer provides low level alar m information to the user and the comm bus interface. A low level alarm reports lack of data.
MCF548x Refere nce Manual, Rev . 3 30-40 F re escale Semiconductor 30.3.3.32 FEC T r ansmit FIFO Read P ointer Register (FECTFRP) The read pointer is a FIFO maintain ed pointer which points to the next FIFO location to be read. The read pointer can be both read and written.
Memory Map/Regist er Definition MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-41 30.3.3.34 FEC FIFO Reset Register (F ECFRST) The FIFO’ s within the FEC module have independent cont rollers. This register pr ovides the user the ability to reset FIFOs via hardware or software.
MCF548x Refere nce Manual, Rev . 3 30-42 F re escale Semiconductor 30.3.3.35 FEC CRC and T r ansmit Frame Contr ol W ord Register (FECCTCWR) The FEC can be sent a control word (32-bit) with additional instructions on how to transmit the current frame.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-43 30.4 Functional Description This section describes the operation of the FEC, beginning with the ha rdware and software initia lization sequence, then the software (Ethernet driver) interface for transmitti ng and receiving frames.
MCF548x Refere nce Manual, Rev . 3 30-44 F re escale Semiconductor 30.4.2 Frame Contr ol/Status W ords In the FEC, transmit frame contro l words and receive frame s tatus words are appe nded to frame data in the FIFO. These words use the format shown below .
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-45 30.4.2.2 T ransmit Frame Con tr ol W ord (TFCW) Figure 30-40 shows the format of the transmit frame control word. 20 NO Receiv e Nonoctet Aligned F rame. Written by the FEC .
MCF548x Refere nce Manual, Rev . 3 30-46 F re escale Semiconductor 30.4.3 Netw ork Interface Options The FEC supports both an MII interf ace for 10/100 Mbps Ethernet and a 7-wire serial interface for 10 Mbps Ethernet. The interface mode is selected by the RCR[ MII_MODE] bit.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-47 When the transmit FIFO fills to the watermark (defined by FECTFWR) or a complete (small) frame is placed in th.
MCF548x Refere nce Manual, Rev . 3 30-48 F re escale Semiconductor During reception, the Ethernet controll er checks for various error condi tions and once the entire frame is written into the FIFO, a 32-bit fram e status word (RFSW) is written into the FIFO.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-49 Figure 30-41. Eth ernet Address Reco gnition—Receiv e Bloc k Decisions 30.4.7 Hash Algorithm The hash table algorithm used in th e group and individual hash filterin g operates as follows.
MCF548x Refere nce Manual, Rev . 3 30-50 F re escale Semiconductor The hash table registers must be initialized by the user . The CRC32 polynomial to use in computing the hash is: Eqn. 30-1 A table of example destination addresses and corresponding hash values is included below for reference.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-51 59:FF:FF:FF:FF:FF 0x1C 28 79:FF:FF:FF:FF:FF 0x1D 29 29:FF:FF:FF:FF:FF 0x1E 30 19:FF:FF:FF:F F:FF 0x1F 31 D1:FF.
MCF548x Refere nce Manual, Rev . 3 30-52 F re escale Semiconductor 30.4.8 Full Duplex Flow Contr ol Full-duplex flow control allows the user to transmit pause frames and to detect receiv ed pause frames. Upon detection of a pause frame, MAC data frame transmission st ops for a given pause duration.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-53 The user must specify the desired pause duration in the OPD register .
MCF548x Refere nce Manual, Rev . 3 30-54 F re escale Semiconductor transmit side and/or limit the size of the frames to prevent transmit FIFO underr un and receive FIFO overflow . For external loopback set RCR[LOOP] = 0, RCR[DR T] = 0 and configure the ex ternal transceiver for loopback.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-55 30.4.12.2 Reception Error s 30.4.12.2.1 Overrun Error If the receive block has data to put into the receive FIFO a nd the receive FIFO is fu ll, the FEC sets the OV bit in the receiv e frame status word (RFSW).
MCF548x Refere nce Manual, Rev . 3 30-56 F re escale Semiconductor The data portion of the frame consists of N octets which corresponds to 2N nibbles being transmitted.
Functional Descriptio n MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 30-57 4 A uto-Negotiation (AN) Advertisement E 5 AN Link P ar t ner Ability E 6 AN Expansion E 7 AN Ne xt P a ge T ransmit E 8-15 Reser ved E 16-31 V end or Specific E T able 30-52.
MCF548x Refere nce Manual, Rev . 3 30-58 F re escale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor i Part V Mechanical Part V provides mechanical de scriptions of the MCF548 x . Contents • Chapter 31, “Mechanical Data,” provides a functional pin listing and package diagram for the MCF548 x .
MCF548x Refere nce Manual, Rev . 3 ii F reescale Semiconductor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-1 Chapter 31 Mechanical Data This chapter contains drawings showing the pinout, packaging, and me chanical characteristics of the MCF548 x . See the website http://www .freescale.com/coldfire for any updated information.
MCF548x Refere nce Manual, Rev . 3 31-2 F reescale Semiconductor A22 PSTDD A T A3 — — — R14 VSS — — — A23 PSTDD A T A7 — — — R15 VSS — — — A24 PCIBR0 PPCIBR0 TIN0 — R16 VSS .
Pinout MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-3 C1 SD VDD — — — V3 AD4 — — — C2 CAS — —— V 4I V D D — — — C3 VSS — — — V23 DSPICS3 PDSPI5 TOUT3 CA.
MCF548x Refere nce Manual, Rev . 3 31-4 F reescale Semiconductor D6 VSS — — — AB2 AD15 — — — D7 SD ADDR2 — — — AB3 EVDD — — — D8 SD ADDR6 — — — AB4 VSS — — — D9 VSS.
Pinout MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-5 F3 SD VDD — —— A C 2 5 D A C K 1 PDMA3 TOUT1 — F4 VSS — — — AC26 PSC2TXD PPSC3PSC20 — — F23 PCIP AR — ——.
MCF548x Refere nce Manual, Rev . 3 31-6 F reescale Semiconductor K2 SDD A T A0 — — — AE4 AD27 — — — K3 SDD A T A1 — — — AE5 R/W PFBCTL2 TBST — K4 SDD A T A11 — — — AE6 OE PF .
Pinout MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-7 M23 VSS — — — AF9 E0TXCLK PFEC0H7 — — M24 EVDD — — — AF10 E0MDIO PFECI2C3 — — M25 PCIAD12 — FBADDR12 — A.
MCF548x Refere nce Manual, Rev . 3 31-8 F reescale Semiconductor 31.3 Mechanical Dia grams 31.3.1 MCF5485/5484 Mec hanical Diagram Figure 31-1 – Figure 31-4 show the pinout for the each qua drant of the MC F5485/MCF5484 388 PBGA package. Figure 31-1 shows the pinout for the upper left quadrant.
Mechanical Diagrams MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-9 Figure 31-2 shows the pinout for the upper right quadran t of the MCF5485/MCF5484 pinout for the 388 PBGA package.
MCF548x Refere nce Manual, Rev . 3 31-10 F re escale Semiconductor Figure 31-3 shows the pinout for the lo wer left quadrant of the MC F5485/MCF5484 pinout for the 388 PBGA package.
Mechanical Diagrams MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-11 Figure 31-4 shows the pinout for the lo wer left quadrant of the MC F5485/MCF5484 pinout for the 388 PBGA package.
MCF548x Refere nce Manual, Rev . 3 31-12 F re escale Semiconductor 31.3.2 MCF5483/5482 Mec hanical Diagram Figure 31-5 – Figure 31-8 show the pinout for the each qua drant of the MC F5483/MCF5482 388 PBGA package. Figure 31-5 shows the pinout for the upper left quadrant.
Mechanical Diagrams MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-13 Figure 31-6 shows the pinout for the upper right quadran t of the MCF5483/MCF5482 pinout for the 388 PBGA package.
MCF548x Refere nce Manual, Rev . 3 31-14 F re escale Semiconductor Figure 31-7 shows the pinout for the lo wer left quadrant of the MC F5483/MCF5482 pinout for the 388 PBGA package.
Mechanical Diagrams MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-15 Figure 31-8 shows the pinout for the lo wer left quadrant of the MC F5483/MCF5482 pinout for the 388 PBGA package.
MCF548x Refere nce Manual, Rev . 3 31-16 F re escale Semiconductor 31.4 MCF5481/5480 Mechanical Dia gram Figure 31-9 – Figure 31-12 show the pinout for the each qua drant of the MCF5481/MCF5480 388 PBGA package. Figure 31-9 shows the pinout for the upper left quadrant.
MCF5481/5480 Mechanical Diagram MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-17 Figure 31-10 shows the pinout for the uppe r right quadrant of the MC F5481/MCF5480 pinout for the 388 PBGA package.
MCF548x Refere nce Manual, Rev . 3 31-18 F re escale Semiconductor Figure 31-1 1 shows the pinout for the lo wer left quadrant of the MC F5481/MCF5480 pinout for the 388 PBGA package.
MCF5481/5480 Mechanical Diagram MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor 31-19 Figure 31-12 shows the pinout for the lower left quadr ant of the MCF5481/MCF5480 pinout for the 388 PBGA package.
MCF548x Refere nce Manual, Rev . 3 31-20 F re escale Semiconductor 31.5 Mechanicals 388-pin PBGA P ackage Outline 31.6 Case Dra wing Figure 31-13 shows the MCF548 x case drawing.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor A-1 Appendix A MCF548 x Memory Map Ta b l e A - 1 lists an overview of the memory map for the on-chip modules.
MCF548x Refere nce Manual, Rev . 3 A-2 F reescale Semiconductor MBAR + 0x8000 – 0x80FF DMA Multi-Channel DMA registers MBAR + 0x8100 – 0x83FF Reser ved — MBAR + 0x8400 – 0x84FF SCPCI Mul ti-Ch.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor A-3 NO TE Read and write accesses to reserved MBAR spaces will re sult in undefined behavior that may result in a non-terminated bus cycle. This applies to the reserved locations between modules and the reserved locations within valid module address ranges.
MCF548x Refere nce Manual, Rev . 3 A-4 F reescale Semiconductor.
Index MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor Inde x-1 A Acknowledge error (ACKERR) 21-16 Addressing modes 3-18 Associated functions 15-3 B BDM, see debug Bit error (BITERR) 21-16 .
MCF548x Refere nce Manual, Rev . 3 Inde x-2 F reescale Semico nductor configuration/status (CSR) 8-1 1 data breakpoint/mask (DBR, DBMR) 8-2 2 extended trigger definition (XTDR) 8-25 PC breakpoint ASID.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor Inde x-3 port interrupt enable (EPIER) 14-4 Error counters 21-30 Ethernet address recognition 30-48 collision handling 30-53 errors handling.
MCF548x Refere nce Manual, Rev . 3 Inde x-4 F reescale Semico nductor structure 21-19 time stamp 21-28 transmit codes 21- 22 error status flag (TXW ARN) 21-16 priority 21-24 operation 21-19–21-3 1 b.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor Inde x-5 repeated start 28-1 1 signals SCL 28-2 SDA 28-2 ST AR T 28-9 STOP 28-9 Instruction s architecture additions 3-19 branch acceleratio.
MCF548x Refere nce Manual, Rev . 3 Inde x-6 F reescale Semico nductor Mechanical data case drawing 31-20 diagram 31-8 pinout 31-1 Memory maps debug 8-10 DMA 24-3 DSPI 27-4 EMAC 4-5 EPOR T 14-2 Etherne.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor Inde x-7 initiator window 2 base/translatio n address (PCIIW2BT AR) 19-19 initiator window confi guration (PCIIWCR) 19-19 revision ID/class .
MCF548x Refere nce Manual, Rev . 3 Inde x-8 F reescale Semico nductor R RAMBAR 3-13 Registers cache access control (ACR n ) 3-13, 5-5, 5 -6, 7-22 configuration (CACR) 3-13 control (CACR) 5-5, 7-19 cor.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor Inde x-9 PCI grant pin assignment (P AR_PC IBG) 15-25 PCI request pin assignm ent (P AR_PCIBR) 15-26 port clear output data (PCLRR_ x ) 15-1.
MCF548x Refere nce Manual, Rev . 3 Index-10 F re escale Semiconductor infrared FIR divide (PSCIRFDR n )2 6 - 2 6 infrared MIR divide (PSCIRMDR n )2 6 - 2 5 infrared SIR divide (PSCIRSDR n )2 6 - 2 5 i.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor Index-11 USB application interface update (IFU R) 29-22 application interrupt mask (USBAIMR) 29-17 application interrupt status (USBIASR) 29.
MCF548x Refere nce Manual, Rev . 3 Index-12 F re escale Semiconductor execution units access 22-1 1 AESU 22-6, 22-83 AFEU 22-5, 22-67 DEU 22-4, 22-72 MDEU 22-6, 22-77 multifunction data packet descrip.
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor Index-13 transfer burst (TBST ) 2-1 7, 17-4 transfer size (TSIZ n ) 2-17, 17-4 transfer start (TS ) 2 -17, 17-4 FlexCAN receive (CANRX0, CAN.
MCF548x Refere nce Manual, Rev . 3 Index-14 F re escale Semiconductor write data byte mask (SDDM n )2 - 1 9 write data byte mask (SDDM n ) 18-3 write enable (SDWE ) 2-19, 18-3 test mode (MTMOD n )2 - .
MCF548x Refere nce Manual, Rev . 3 F reescale Semiconductor Index-15 device speed (SPEEDR) 29-20 dropped packet counter (DPCNT ) 29-24 endpoint info (EPINFO) 29-18 endpoint n attribut e control 29-27 .
MCF548x Refere nce Manual, Rev . 3 Index-16 F re escale Semiconductor.
Ov er vie w Signal Descriptions ColdFire Core Enhanced Multiply-Accumulate Unit (EMA C) Memor y Management Unit (MMU) Floating-P oint Unit (FPU) Deb ug Suppor t System Integr ation Unit (SIU) Local Me.
Ov er view Signal Descriptions ColdFire Core Enhanced Multiply-Accumulate Unit (EMA C) Memor y Management Unit (MMU) Floating-P oint Unit (FPU) Deb ug Suppor t System Integr ation Unit (SIU) Local Mem.
デバイスFreescale Semiconductor MCF5485の購入後に(又は購入する前であっても)重要なポイントは、説明書をよく読むことです。その単純な理由はいくつかあります:
Freescale Semiconductor MCF5485をまだ購入していないなら、この製品の基本情報を理解する良い機会です。まずは上にある説明書の最初のページをご覧ください。そこにはFreescale Semiconductor MCF5485の技術情報の概要が記載されているはずです。デバイスがあなたのニーズを満たすかどうかは、ここで確認しましょう。Freescale Semiconductor MCF5485の取扱説明書の次のページをよく読むことにより、製品の全機能やその取り扱いに関する情報を知ることができます。Freescale Semiconductor MCF5485で得られた情報は、きっとあなたの購入の決断を手助けしてくれることでしょう。
Freescale Semiconductor MCF5485を既にお持ちだが、まだ読んでいない場合は、上記の理由によりそれを行うべきです。そうすることにより機能を適切に使用しているか、又はFreescale Semiconductor MCF5485の不適切な取り扱いによりその寿命を短くする危険を犯していないかどうかを知ることができます。
ですが、ユーザガイドが果たす重要な役割の一つは、Freescale Semiconductor MCF5485に関する問題の解決を支援することです。そこにはほとんどの場合、トラブルシューティング、すなわちFreescale Semiconductor MCF5485デバイスで最もよく起こりうる故障・不良とそれらの対処法についてのアドバイスを見つけることができるはずです。たとえ問題を解決できなかった場合でも、説明書にはカスタマー・サービスセンター又は最寄りのサービスセンターへの問い合わせ先等、次の対処法についての指示があるはずです。