Conexant as a service to its customers and may be used for informational purposes only. Conexant assumes no responsibili ty for errors or
omissions in these materials. Conexant may make changes to specifications and product descriptions at any time, without notice. Conexant
makes no commitment to update the information contained herein. Conexant shall have no responsibility whatsoev er for confl icts or
incompatibilities arising from future changes to its specificati ons and product descriptions.
No license, express or implied, by estoppel or otherwise, to any intellect ual property ri ghts is grant ed by this document. Except as provided in
Conexant’s Terms and Conditions of Sale for such products, Conexant assumes no liability whatsoever.
THESE MATERIALS AR E PR OVIDED "AS IS" WITHOUT W AR R AN TY OF ANY KIND, EITHER EX PR ESS OR IMPLIED, RELA TIN G TO
SALE AND/OR USE OF CONEXANT PRODUCTS INCLUDING LIABI LITY OR WARRANTIE S RE LAT ING TO FITNESS FOR A
PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL
PROPERTY RIGHT. Conexant further does not warrant the accuracy or completeness of the information, text, graphics or other items
contained within these materials. Conexant shall not be liable for any special, indirect, i ncidental, or consequential damages, including without
limitation, lost revenues or lost profits, which may result from the use of these materials .
Conexant products are not intended for use in medical, life saving or life sustaining applicati ons. Conexant cust om ers usi ng or selling
Conexant products for use in such applications do so at their own risk and agree to fully indemnify Conexant for any damages resulting from
such improper use or sale.
The following are trademarks of Conexant Systems, Inc.: Conexant, the Conexant C symbol, “What’s Next in Communic ations Technologies”,
and SmartDAA. Product names or services listed in this publication are for identification purpos es only, and may be trademarks of third
parties. Third-party brands and names are the property of their respective owners.
Reader Response:
Conexant strives to produce quality documentation and welcomes your feedback. Please send comments
and suggestions to conexant.tech.pubs@conexant.com. For technical questions, contact your local Conexant sales office or
field applications engineer.
3.2 MAXIMUM RATINGS.................................................................................................................................3-7
10.1INTERFACE BETWEEN THE MFC2000 AND EXTERNAL PRINT ASIC..........................................10-1
11. BIT ROTATION LOGIC.................................................................................................................................. 11-1
16. USB INTERFACE .......................................................................................................................................... 16-1
Figure 1-1. MFP System Diagram Using MFC2000 .............................................................................................................. 1-1
Figure 1-2: MFC2000 Function Diagram............................................................................................................................... 1-4
Figure 4-4. 2-Way Interleave ROM Connection................................................................................................................... 4-26
Figure 4-5. Zero Wait State, Single Access, Normal Read, Normal Write........................................................................... 4-36
Figure 4-6. One Wait State, Single Access, One Read, One Write..................................................................................... 4-37
Figure 4-7. Two Wait States, Single Access, Read On Delayed (CS1n), Write Early Off (CS2n)........................................ 4-38
Figure 4-8. Zero Wait State, Burst Access, Normal Read, Normal Write............................................................................. 4-39
Figure 4-9. Fast Page Mode ROM Access1,0,0 Read Access Followed by 1,1,1,1, Write Access.................................. 4-40
Figure 4-10. System Bus TimingRead/Write with Wait States ......................................................................................... 4-41
Figure 4-11. System Bus TimingZero-Wait-State Read/Write.......................................................................................... 4-42
Figure 4-12. System Bus Timing2-Way Interleave Read Timing (S = 1).......................................................................... 4-43
Figure 4-13. System Bus Timing2-Way Interleave Write Timing (S = 0 or 1)................................................................... 4-44
Figure 4-25. DRAM TimingRead, Write and Wait States for Non-interleave Mode.......................................................... 4-68
Figure 4-26. DRAM Timing for 2-way Interleave Write........................................................................................................ 4-69
Figure 4-27. DRAM TimingRead for 2-way interleave mode............................................................................................ 4-69
Figure 4-28. DRAM Refresh Timing.................................................................................................................................... 4-70
Figure 4-29. DRAM Battery Refresh Timing........................................................................................................................ 4-70
Figure 4-30. Flash Control Block Diagram........................................................................................................................... 4-73
Figure 4-31. NAND-Type Flash Memory Access with Two Wait States .............................................................................. 4-75
Figure 5-3. Power Reset Timing Diagram.............................................................................................................................. 5-5
Figure 5-4. +5v Prime Power Signal and VGG...................................................................................................................... 5-6
Figure 5-5. Internal Power Detection................................................................................................................................... 5-10
Figure 7-21. External circuit required for SONY–ILX516K interface.................................................................................... 7-40
Figure 7-22. LED timing for SONY–ILX516K....................................................................................................................... 7-40
Figure 7-23. Serial Programming Interface, Physical Connection.......................................................................................7-41
Figure 7-24. Bus Protocol.................................................................................................................................................... 7-42
Figure 7-25. Serial Programming Interface, Timing Diagram...............................................................................................7-42
Figure 7-26. Stretching the Low Period of the Clock ........................................................................................................... 7-44
Figure 7-29. Connection to External Video Capture Device................................................................................................ 7-51
Figure 11-1. Nozzle Diagram of a Typical Programmable Inkjet Head................................................................................11-1
Figure 11-2. Examples of Nozzle Head Configurations....................................................................................................... 11-2
Figure 11-3. Nozzle Configuration by Bit Rotation Block (Regardless of Physical Nozzle Configuration)........................... 11-2
Figure 11-4. MFC2000 Bit Rotation Block Diagram............................................................................................................. 11-3
Figure 11-6. CPU Background Print Data Preparation...................................................................................................... 11-12
Figure 11-7. MFC2000 Little-Endian Format ..................................................................................................................... 11-13
Figure 12-1. Vertical Printer Motor Control Block Diagram.................................................................................................. 12-1
Figure 12-3. Scan Motor Control Diagram........................................................................................................................... 12-5
Figure 12-5: Current Control Diagram................................................................................................................................. 12-9
Figure 14-1. Data Flow for Compression/Decompression................................................................................................... 14-1
Figure 17-3. Nibble Mode Data Transfer Cycle ................................................................................................................. 17-17
Figure 17-4. BYTE Mode Data Transfer Cycle.................................................................................................................. 17-18
Figure 20-4. Tone Generator Frequency Change................................................................................................................ 20-6
Figure 23-1. System Configuration One .............................................................................................................................. 23-1
Figure 23-2. System Configuration Two .............................................................................................................................. 23-2
Figure 23-3. System Configuration Three............................................................................................................................ 23-2
Figure 24-1. The ARM Bus System Block Diagram............................................................................................................. 24-2
Figure 24-2. SDRAM Setup and Hold Timing.................................................................................................................... 24-29
Figure 24-3. SDRAM Read or Write Timing.......................................................................................................................24-30
Table 2-1. MFC2000 Device Family ...................................................................................................................................... 2-1
Table 3-1. Pin Description (1 of 6)......................................................................................................................................... 3-1
Table 3-2. Maximum Ratings................................................................................................................................................. 3-7
Table 3-3. Digital Input Characteristics.................................................................................................................................. 3-8
Table 3-5. Power Supply Requirements................................................................................................................................3-9
Table 3-6. Battery Power Supply Current Requirements........................................................................... ............................ 3-9
Table 4-1. Fixed-Location and Size Chip Selects.................................................................................................................. 4-4
Table 4-2. Operation Register Map (1 of 9)...........................................................................................................................4-8
Table 4-3. Setup Registers (1 of 2)...................................................................................................................................... 4-17
Table 4-4. Cache Tag Data Format (for Test Mode Read/Write Operation)........................................................................ 4-20
Table 4-5. Access Modes for Reading ROM ....................................................................................................................... 4-27
Table 4-6. Read Operation (Internal Peripheral Gets Data From Memory) ......................................................................... 4-29
Table 4-7. Write Operation (Internal Peripheral Puts Data Into Memory)............................................................................ 4-29
Table 4-8. Read/Write with Wait States Timing Parameters................................................................................................ 4-45
Table 4-9. MFC2000 Interrupt and Reset Signals ............................................................................................................... 4-46
Table 4-10. Programmable Resolution of Timer1 and Timer2............................................................................................. 4-53
Table 4-11. DRAM Wait State Configurations ..................................................................................................................... 4-55
Table 4-14. DRAM Row/Column Configuration................................................................................................................... 4-58
Table 4-15. DRAM Timing Parameters................................................................................................................................4-71
Table 4-17. DMA Channel Functions and Characteristics................................................................................................... 4-78
Table 4-18 DMA Channel 3 Control Bit Sssignment............................................................................................................ 4-79
Table 7-1. Register setup for Rohm–IA3008–ZE22............................................................................................................. 7-27
Table 7-2. Register setup for Dyna–DL507–07UAH............................................................................................................ 7-29
Table 7-3. Register setup for Mitsubishi-GT3R216..............................................................................................................7-31
Table 7-4. Register Setup for Toshiba–CIPS218MC300..................................................................................................... 7-33
Table 7-5. Register Setup for NEC – µPD3724...................................................................................................................7-35
Table 7-6. Register setup for NEC – µPD3794.................................................................................................................... 7-37
Table 7-7. Register Setup for SONY – ILX516K.................................................................................................................. 7-39
Table 9-2: Procedure to determine Pixels to remove........................................................................................................... 9-17
Table 24-1. Needs a title....................................................................................................................................................24-11
Table 24-2. DMA Channels: Functionality and Priorities ................................................................................................... 24-12
Table 24-3. DMA Parameters Scratch Pad Addresses...................................................................................................... 24-13
Table 24-9. SDRAM Setup and Hold Timing..................................................................................................................... 24-29
Table 24-10. Timing Parameters for 16-bit SDRAM Read and Write................................................................................ 24-31
Table 24-11. Timing Parameters for 8-bit SDRAM Read and Write.................................................................................. 24-31
This document defines and describes all hardware functions of the MFC2000 chip. The MFC2000 design is based
on the MFC1000 design with many minor modifications/enhancements. It has several new key functions to
accomplish the following:
•
Support a full color MFP
•
Enhance connectivity to the PC
•
Provide an internal Fax Modem
•
Connect to external Conexant video chips
1.2 System Overview
The Conexant Multi-Functional Peripheral Controller 2000 (MFC2000) device set hardware, core code,
application code, and evaluation system comprise a full color Multi-Functional Peripheral (MFP) system−needing
only a power supply, scanner, printer mechanism, and paper path components to complete the machine. The
standard device set hardware includes Conexant’s MFC2000 chip, Conexant’s SmartDAA or IA chip, and a
Printer Interface chip. Optionally, a Conexant video chip with VIP interface can be used to support the video
capture function. If V.17 or V.34 faxing without voice is required, the internal V.17/V.34 Fax Modem in the
MFC2000 chip is used and the MFC2000 is connected to the external Conexant SmartDAA or IA chip. If the
voice/speech function is required, the external Voice Fax Modem device from Conexant will be needed. Any other
external interface device can be supported by using the external ARM for CPU and DMA accesses or by using
the internal serial interface. An MFP system-level block diagram using the MFC 2000 is illustrated in Figure 1-1.
Serial Interface (sync.)
USB Interface
or
PC
Color
Scanner
module
Data
DRAM/SRAM/Flash Memory
P1284 Interface
Scanner Interface
Program
ROM/Flash Memory
Operator
Panel
module
MFC2000
(Conexant)
External
ARM Bus
Prime power/
Battery power
hybrid and power
down circuit
1.2.1 Integrated Full Color MFP Controller (MFC2000)
The MFC2000 provides the majority of the electronics necessary to build a color scan and color inkjet printer
based MFP whose electronics are integrated into a one-chip solution including one CPU (ARM7TDMI) and two
DSPs (Countach Imaging DSP subsystem and P80 core).
Full printer and copier functionality is provided by the following:
•
1284 parallel port interface
•
USB serial port interface
•
Color scanner interface/controller
•
Countach Imaging DSP subsystem for video/scan/compression process
•
Flash memory controller
•
SDRAM/DRAM controllers
•
Resolution conversion logic
•
Inkjet data formatter
•
External inkjet printing
In addition, the MFC2000 performs facsimile control/monitoring, compression/decompression, and 33.6 Kbps Fax
Modem functions (P80 core). The MFC2000 interfaces with major MFP machine components like external
modems, SmartDAA, external Fax IA, motors, sensors, external video chip, and operator control panel. The
ARM7TDMI-embedded processor provides an external 48-MB direct memory access capability. An integrated
12-bit Pipeline ADC (PADC) and countach subsystem (DSP subsystem, combined with an advanced Conexant
proprietary color image processing algorithm, provides state of the art image processing performance on any type
of images, including text/half-tone and color images.
The full color MFP Engine provides the hardware and software necessary to develop a full-color Multifunctional
Peripheral including an architecture for color printing, color faxing, color scanning, video capturing, and color
copying. It also supports many of these operations concurrently.
1.2.1.1 Printing
The MFC2000 Controller supports color inkjet printing. Print speed throughput capabilities are inversely
proportional to resolution and also depend on the external printer interface. For host printing, the host sends the
image data with the print resolution; the MFC2000 performs no resolution conversion. If host printing and faxing
need to be performed for the same image, the printing image data must be sent to the MFP. The MFC2000
converts the printing image data to the faxing image data locally and then faxes it out. An external printer interface
chip is designed to support inkjet print mechanism/head subsystems. Different external printer interface chips can
be designed and used to support other inkjet mechanisms and heads according to customer requirements.
1.2.1.2 Faxing
Both host-based color faxing and standalone color faxing are supported in addition to monochrome faxing. Host-
based faxing can take place by using a Class One connection via the USB serial port or the P1284 parallel port.
For host faxing, the host sends the image data with the fax resolution; the MFC2000 performs no resolution
conversion. For standalone faxing, the resolution conversion is supported by the MFC2000. The standalone color
scan-to-fax function is supported using the advanced Conexant proprietary color image processing technology:
1.2.1.3 Scanning
For the color scan-to-PC function, up to 8 bits of scan data per pixel can be sent to the host. JPEG compression
can be used to reduce the PC upload speed.
1.2.1.4 Copying
The MFC2000 and associated firmware supports several modes of copying including standard, fine, superfine,
and photo. Multiple copies of a single image can be made with a single pass. The standalone color/monochrome
copy function is supported by using MFC2000’s Inkjet print formatter, the external printer interface, and the
advanced Conexant proprietary color image processing system.
1.2.2 MFC2000 Evaluation System
The Conexant MFC2000 Evaluation System provides demonstration, prototype development, and evaluation
capabilities to full color MFP developers using the MFC2000 Engine device set. The MFC2000 Evaluation system
provides flexibility for visibility and access, i.e., plug-on board for the modem, sockets for programmable parts,
and connectors for an emulator (refer to Figure 1-2). Jumper options and test points are provided throughout the
MFC2000 evaluation Main Board. The MFC2000 Evaluation System is the most convenient environment for the
developer needing to experiment with the several interfaces encountered in the full color MFP, for example, color
printer functions.
1.2.3 New Function Highlights
•
PLL Clock Generation for several different clocks needed for ARM CPU, Countach Imaging DSP, Fax Modem
core, and USB Interface
•
4 KB 2-way Set Associative Inst ruction Cache
•
USB Interface (including USB Transceiver) to PC
•
Video/ Color Scan Controller (up to 600 dpi) (including programmable ADC sampling rate)
•
Countach Imaging DSP Subsystem for pixel-based dark level correction, shading correction, gamma
correction, video/color scan image processing, color science and JPEG
•
Countach Bus System which includes Countach Subsystem Interface, ARM Bus Interface, Video/Scan
Interface, Countach Bus Unit, Countach DMA Controller, and SDRAM Controller.
The MFC2000 contains an internal 32-bit RISC Processor with 64-MB address space, the Countach Imaging DSP
(Conexant’s DSP) subsystem including embedded data and program memory, and dedicated circuitry optimized
for color scanning, color faxing, color copying, color printing, and multifunctional control and monitoring. The
device family with relevant features is described in Table 2-1.
The MFC2000 contains the ARM7TDMI RISC Processor (described separately in ARM7TDMI Manuals),
Countach Imaging DSP, Modem DSP, and specialized hardware needed for the Multifunctional machine control
and scanner and fax signal processing. The Countach Imaging DSP subsystem is on a separate data bus.
Therefore, the ARM system data bus can operate in parallel with the Countach Imaging DSP subsystem data bus
for most operations except the interaction time between two buses. The two-bus architecture is very important to
provide enough bandwidth for full color MFP products. Figure 2-1 shows the MFP2000’s two-bus architecture.
The ARM Bus System (ABS) has two mastersARM CPU and DMA Controller. They provide accesses to all
specialized hardware functions including the Countach Imaging DSP subsystem as a peripheral on the ARM Bus
System. ABS has several sections. The System Interface Unit (SIU) is the control center. The ARM CPU and
Cache Controller are on the Internal System Bus (ISB). The Cache Memory is on the Internal Cache Bus (ICB).
The DMA Controller is on the DMA Bus (DAB). All internal peripherals are on the Internal Peripheral Bus (IPB).
The SmartDAA/IA Interface and P80 core are on the IPB of the ARM Bus System. The ARM7TDMI runs at a
clock rate 40 MHz, 37.5 MHz, or 30 MHz. All external peripherals are on the ARM External Bus (AEB). There is a
separate bus system for the Countach Imaging DSP subsystem called Countach Bus System (CBS). There are
three sections, the Video/Scan Interface, the ARM Bus Interface, and the countach subsystem interface. The
external SDRAM/DRAM is on the Countac h Exter n al Bus (C EB).
SC_START[0]V8O-1XT3VScanner shift gate control 0
SC_CLK1/SC_CLK2AU9O-1XT3VScanner clock.
SC_LEDCTRL[0]U7O-1XT3VScanner LED control 0
SC_LEDCTRL[1]/
SC_START[1]
SC_LEDCTRL[2]/
SC_START[2]
SSTXD1J19O-2XT3VTX data for SSIF1
SSRXD1H17IHU5VT-(Hysteresis, Pull up) RX data for SSIF1
SSCLK1J20I/OH5VT2XT5VT(Hysteresis) Clock input or output f or SSIF 1
GPIO[0]/FWRn/CLAMPJ4I/OH5VT2XT5VT(Hysteresis) GPIO[0] or flash write enable signal
GPIO[1]/FRDnM3I/OH5VT2XT5VT(Hysteresis) GPIO[1] or flash read enabl e signal for
GPIO[2]/DMAREQ1/ SSCLK2V1I/OH5VT2XT5VT(Hysteresis) GPIO[2] or DMA channel 1 request
GPIO[3]/DMAAC K1/ SSRXD2U4I/OH5VT2XT5VT(Hysteresis) GPIO[3] or DMA channel 1
GPIO[4]/CS[2]nU3I/OH5VT2XT5VT
GPIO[5]/CS[3]n/PWM[3]U2I/OH5VT2XT5VT(Hysteresis) G PIO[5]or I/O chip se le c t [3 ] (active
Y8O-1XT3V
W8O-1XT3VScanner LED control 2 or Scanner shift gate
Input
Type
Output
Type
interleave mode and interleave mode. (VDRAM
powered)
2).
output
output signal.
powered)
powered)
(Hysteresis) Indicate the loss of prime power
(result in SYSIRQ). (VRTC powered)
Write Protect during loss of VDD power.
functional logic is powered by RTC battery power,
but the output drive is powered by DRAM battery
power. (VRTC powered)
(Hysteresis) Battery power reset input. (VRTC
powered)
input (active low)(VRTC powered)
Scanner LED control 1 or Scanner shift gate
control 1
control 2
for NAND-type flash memory or scanner clamp
control output
NAND-type flash memory.
input or clock input/output for SSIF2.
acknowledge or RX data for SSIF2
(Hysteresis) GPIO[4] or I/O chip select [2] (active
GPIO[6]/CS[4]n/ EADC_D[3]U1I/OH5VT2XT5VT(Hysteresis) GPIO[6] or I/O chip select [4] (active
GPIO[7]/CS[5]n/T4I/OH5VT2XT5VT(Hysteresis) GPIO[7] or I/O chip select [5] (active
GPIO[8]/IRQ[11]/
SSSTAT1/SC_CLK1/2B
GPIO[9]/IRQ[13]/ EADC_D[2]T2I/OH5VT2XT5VT(Hysteresis) GPIO[9] or external interrupt [13] or
GPIO[10]/RING_DETECT/PW
M[4]
GPIO[11]/CPCIN/PWM[0]/ALT
TONE
GPIO[12]/SASCLK/
SMPWRCTRL
GPIO[13]/SASTXD/
PMPWRCTRL
GPIO[14]/SASRXD/ RINGERR1I/OH5VT2XT5VT
GPIO[15]/IRQ[16]/
SC_CLK1/2C
GPIO[16]/M_TXSINP3I/OH5VT2XT5VT(Hysteresis) GPIO[16] or internal modem
GPIO[17]/M_CLKINP2I/OH5VT2XT5VT(Hyst eresis) GPI O[17] or internal modem
GPIO[18]/M_RXOUTP1I/OH5VT2XT5VT(Hysteresis) GPIO[18] or internal modem
GPIO[19]/M_SCK/MIRQnN4I/OH5VT2XT5VT(Hys t eresis) GPI O[19] or internal modem or
GPIO[20]/M_STROBE/ MCSnN3I/OH5VT2XT5VT
GPIO[21]/M_CNTRL_SINN2I/OH5VT2XT5VT(Hysteresis) GPIO[21] or internal modem
GPIO[22]/EADC_SampleN1I/OH5VT2XT5VT(Hysteresis) GPIO[22] or external ADC sample
SM[3:0]/
GPO[7:4]
PM[0]/SPI_SID/
EADC_D[0]/GPO[0]
PM[1]/SPI_SIC/
EADC_D[1]/GPO[1]
PM[2]/SMI0/GPO[2]Y9O-1XT3VPrint motor control [2] output or GPO[2] output or
PM[3]/SMI1/GPO[3]Y12O-2XT3VPrint motor control [3] output or GPO[3] output or
TONEV9I/OH5VT1XT5VT(Hysteresis) Tone output signal.
PIODIRC1O-2XT3VPIOD[7:0] is output when PIODIR is high and
STROBEnA2IH5VT-(Hyst eresis ) I nput from PC (act iv e l ow)
AUTOFDnG3IH5VT-(Hy steresis) Input from PC (active low)
SLCTINnG2IH5VT-(Hysteresis) I nput from PC (activ e l ow)
INITnG1IH5VT-(Hysteresis) I nput from PC (activ e l ow)
BUSYA1O-2XT3VPIO Returned status to PC
ACKnD3O-2XT3VPIO Returned status to PC (active low)
T3I/OH5VT2XT5VT
T1I/OH5VT2XT5VT(Hysteresis) GPIO[10] or ring detection input or
R4I/OH5VT2XT5VT
R3I/OH5VT2XT5VT(Hysteresis) GPIO[12] or clock input/output for
R2I/OH5VT2XT5VT(Hysteresis) GPIO[13] or TX data output for SASIF
P4I/OH5VT2XT5VT(Hysteresis) GPIO[15] or external interrupt [ 16] or
V7,W7,Y7,U6O-1XT3VScan motor control [3:0] pins or GPO[7:4] pins.
U8I/O5VT1XT5VTPrint motor control [0] output or GPO[0] output or
W9I/O5VT1XT5VT
Input
Type
Output
Type
low) or external ADC data [3] input
low).
(Hysteresis) GPIO[8] or external interrupt [11] or
status input for SSIF1 or scan clock output
external ADC data [2] input
PWM channel 4 output
(Hysteresis) GPIO[11] or calling party control input
or ALTTONE output
SASIF or Scan Motor Power Control output
or Print Motor Power Control output
(Hysteresis) GPIO[14] or RX data input for SASIF
or ringer output
scan clock output
external modem interrupt input
(Hysteresis) GPIO[20] or internal modem or
external modem chip select
signal output
data output for SPI or external ADC data [0] input
Print motor control [1] output or GPO[1] output or
clock output for SPI or external ADC data [1] input
SLCTOUTC3O-2XT3VPIO Returned status to PC
PEB2O-2XT3VPIO Returned status to PC
FAULTnB1O-2XT3VPIO Returned status to PC (active low)
PIOD[7:0]D2,D1,C2,H4,H
3,H2,H1,G4
TESTER_MODEJ2IHD5VT-(Hysteresis) For test only, It must be ‘low’ for the
ADCREFpY3IPositive reference voltage for the scan PADC
ADCREFnY2INegative reference voltage for the scan PADC
POWER1Y1IVoltage input for power-down detection circuit 1
POWER2W4IVoltage input for power-down detection circuit 2
ADGAY5-Scan PADC analog ground
ADVAV5-Scan PADC analog Power
ADGDU5-Scan PADC digital ground
SDAA_SPKRV12OAnalog telephone line monitoring output from SSD
ADCVY4-Scan PADC internal ground
SCINW5IAnalog scan input signal
SENIN[2:0]V6,W6,Y6IAnalog sensor inputs for TADC
TCKW3IHD5VT-(Hysteresis, Pull down) Test clock input for JTAG.
TMSW2IHU5VT-
TRSTnW1IHD5VT-(Hysteresis, Pull down) Suggestion by Lauterbach
TDIV4IHU5VT-(Hysteresis, Pull up) Test data input for JTAG.
TDOV3O-1XT5VT
TESTV2IHD5VT-(Hysteresis, Pull down) For test only, It must be
SCANMODJ1IHD5VT-(Hysteresis, Pull down) For the scan test only, It
P80_SELJ3IH3V-
PLLREF_XINY15IOSC-Crystal input pin for PLL
PLLREF_XOUTW15O-OSCCrystal output pin for PLL
PLLVDDU15-+3.3V digital power for PLL
PLLVSSU16-+3.3V digital ground for PLL
SDDATA[15:0]N20,P17,P18,P
SDWRnV18O-2XT3VCountach (S)DRAM write strobe (active low)
SDCSnV17O-2XT3VCountach (S)DRAM chip select
SDCLK100MHzM19O5VT2XT5VTCountach (S )DRAM cl ock
USB_DpB8I/OPositive data input/output pin for USB
USB_DnC8I/ONegative data input/output pin for USB
SDAA_PWRCLKE1I/OPositive power/c l ock output from SSD
SDAA_PWRCLKnE2I/ONegative power/clock output f rom SSD
SDAA_DIBpE4I/OPositive data input/output pin for SDAA
SDAA_DIBnE3I/ONegative data input/output pin for SDAA
EV_VD[0]/EADC _ D [4 ]/ MREQnW12I/O3V2XT3VExternal video data [0] input for VIP or external
EV_VD[1]/EADC_D[5]U12I/O3V2XT3VExternal video data [1] input for VIP or external
EV_VD[2]/EADC_D[6]/ OPCnY13I/O3V2XT3V
EV_VD[3]/EADC_D[7]W13I/O3V2XT3V
EV_VD[4]/EADC _ D [8 ]/ MAS[0]U13I/O3V2XT3VExternal video data [4] input for VIP or external
EV_VD[5]/EADC _ D [9 ]/ MAS[1]Y14I/O3V2XT3VExternal video data [5] input for VIP or external
EV_VD[6]/EADC_D[10]W14I/O3V2XT3VExternal video data [6] input for VIP or external
EV_VD[7]/EADC_D11]/
ABORT
EV_CLKV13IH3V-(Hy steresis) External video clock input
W_RnN19OD5VT2XT5VT(Pull down) The bus access is a read operation
XAKnN18OU5VT2XT5VT(Pull up) SIU Transaction Acknowledge. The
W19,Y19,W18,
Y18,W17,Y17,V
16,W16,Y16,V1
5
V14I/O3V2XT3V
Input
Type
O-2XT3VCountach (S)DRAM address bus (13 pins)
Output
Type
low)
low)
ADC data [4] input or Memory Request (active
low)-indicates that the following cycle is a memory
access.
ADC data [5] input
External video data [2] input for VIP or external
ADC data [6] input or Op Code fetch (active low)LOW indicates that the processor is fetching an
instruction from memory.
External video data [3] input for VIP or external
ADC data [7] input
ADC data [8] input or Memory access size
MAS[1:0]: 00 - byte, 01 - halfword, 10 - word, 11 Reserved during the normal operation
ADC data [9] input or Memory access size
MAS[1:0]: 00 - byte, 01 - halfword, 10 - word, 11 Reserved during the normal operation
ADC data [10] input
External video data [7] input for VIP or external
ADC data [11] input or aborted bus cycle-the
address selected is outside of CS’s address
ranges.
when W_Rn is LOW and write when W_Rn is
HIGH.
D[15:0] data will be transferred during this MCLK
cycle.
DMACYC/ CLK_CONFIG[2]M18I/OU5VT2XT5VT(Pull up) DMA Cycle-the DMA logic has control of
WAITnJ17OU5VT2XT5VT(Pull up) Wait (active low)-reflects the wait states
CACHEHIT/
JTAG_MODE_SEL
SEQN17OD5VT2XT5VT
SSD_DIBRXF3OInternal test pin. Leave it open.
TX_DATAF2OInternal test pin. Leave it open.
SDAA_GPIO_INTF1OInternal test pin. Leave it open.
VSSL1,L2,L3,L4,U1
VDDA10,B10,C10,K
P80VSSM1-Digital ground for P80 DSP
P80VDDM2-+3.3V digital power for P80 DSP
VGG1M17-+5V Power for the +5V tolerant pads
VGG2D14-+5V Power for the +5V tolerant pads
VGG3D5-+5V Power for the +5V tolerant pads
VGG4M4-+5V Power for the +5V tolerant pads
VDRAME18-Battery Power for DRAM refresh.
VRTCF17-Battery Power for RTC
(NC)A3,B3,A4,B4,C4
J18I/OU5VT2XT5VT(Pull up) Cache hit-the ARM is retrieving data from
0,V10,W10,Y10,
L17,L18,L19,L2
0,A11,B11,C11,
D11
1,K2,K3,K4,U11
,V11,W11,Y11,
K17,M20
,D4,A5,B5,C5,A
6,B6,C6,D6,A7,
B7,C7,D7,D8
Input
Type
-Digital ground (16 pi ns)
-+3.3V digital power (13 pins)
-18 RESERVED pins
Output
Type
the external bus. (CLK_CONFIG[2] input during the
reset period)
being used by the ARM processor.
the cache memory (JTAG_MODE_SEL during the
reset period, “1” – ARM JTAG selected
(Pull down) Sequential Address Access. (Used
with nMREQ to indicate memory access type. Only
required if using co-processor cycles)
VDD Digital PowerVDD-0.5 to +4.6V
Battery PowerVRTC-0.5 to +4.6V
VDRAM-0.5 to +4.6V
VGG Digital PowerVGG-0.5 to +6.0V
Digital GNDGND-0.5 to +0.5V
Digital Input (3V)VI-0.5 to +4.6 V
Digital Input (5VT)VI-0.5 to +6.0V
Operating Temperature Range T 0 to 70
(Commercial)
Storage Temperature RangeTstg-40 to 80
Voltage Applied to Outputs
in High Z State (3V)VHz-0.5 to 4.6V
Voltage Applied to Outputs
in High Z State (5VT)VHz-0.5 to 6.0V
Static Discharge Voltage
( 25oC)ESD+2500V
Latch-up Current ( 25oC)Itrig+400mA
VGGDigi tal Power for 5VT4.755.25
VDDDigital Power3.03.6
GNDDigital GND00
IDDTotal Digital Current(TBD)(TBD)
VBATBattery Power2.73.6
VDRAMBa tte ry Power2.73.6
Note: * Maximum power supply current is measured at 3.6V.
Max.
(V)
Typ. @ 25
C(mA)
°°°°
Max.@ 0
(mA)
C
°°°°
Table 3-6. Battery Power Supply Current Requirements
Operating Voltage
(V)
2.74tbd100tbd
3.0tbdtbdtbdtbd
3.36tbdtbdtbd
3.6tbdtbdtbdtbd
Note: Battery power supply current is measured when a 32KHz crystal is used. The DRAM battery currents that are listed are
somewhat dependent on the type of DRAM used. This particular configuration had 1 interleaved DRAM bank in backup mode.
The ARM7TDMI Core is capable of directly accessing 4 GB of memory (A31-A0). The MFC2000 is designed to
directly access 64-MB of memory composed of internal and external memory spaces by means of the 26-bit
system address bus (A25-A0). The MFC2000 internally decodes address range 00000000H-03FFFFFFH (64 M).
Address range 01000000H-01FFFFFFH (16 M) is arranged for the internal registers/memory and external
Countach Imaging DSP Subsystem memory. Address range 00000000H-00FFFFFFH (16 M) and Address range
02000000H-03FFFFFFH (32 M) are arranged for the external device/memory use on the ARM Bus. Only
24 address lines (A23-A0) are brought out of the MFC2000 chip, and the lower half and the higher half are
multiplexed through the same 12 pins. The 16 MB address range (maximum) can be decoded externally, if
necessary. Figure 4-1 and Figure 4-2 show the MFC2000 memory map with memory type designations and
locations and provides memory segmentation into select signal ranges.
4.1.1.1 Internal Memory Space
The MFC2000 internal memory occupies 128 kB of the address range from 01FE0000h through 01FFFFFh).
Internal memory space includes the following:
Cache memory space (64 kB)(01FE0000h-01FEFFFFh)
(Reserved space) (32 kB)(01FF0000h-01FF7FFFh)
Internal register space (4 kB)(01FF8000h-01FF8FFFh)
Internal RAM space (28 kB)(01FF9000h-01FFFFFFh)
The cache memory space includes the following:
1. The cache memory (4096 bytes)(01FE0000h-01FE0FFFh)
2. The Tag memory (4096 bytes)(01FE1000h-01FE1FFFh)
3. (Reserved) (56 kB)(01FE2000h-01FEFFFFh)
The internal register address range consists of 3 sections:
1. The first (lowest) section (01FF8000h to 01FF87FFh, 2 kB), is reserved for operational registers, i.e., those
that are modified during normal operation, but which are not intended to require firmware initialization after
reset.
2. The second section (01FF8800h to 01FF8DFFh, 1.5 kB) contains the setup registers, i.e., those that are
generally written only once for system initialization after reset.
3. The third section (01FF8E00h to 01FF8FFFh, 512 bytes) is reserved for testing purposes.
Note:All internal register accesses are two CPUCLK-cycle operations.
The external memory space (up to 48 M) consists of ROM, DRAM/ARAM, Flash memory, SRAM, modem, and
variable-use spaces with assigned chip selects. Most external chip selects have programmable address ranges,
start locations, wait states, and read and write strobe timing. SRAM and DRAM/ARAM chip select controls are
battery-backed up. Refer to Figure 4-1 for the MFC2000 memory map and to Figure 4-2 for the internal memory
map.
External memory spaces include the following:
ROMCSn, ROM (4 M)(00000000h-003FFFFFh)
CS5n, general (4 M)(00400000h-007FFFFFh)
FCS0n, NOR type Flash memory (2 M)(00800000h-009FFFFFh)
FCS1n, NOR type Flash memory (2 M)(00A00000h-00BFFFFFh)
Address location for generating FWRn and
FRDn for the NAND type Flash memory (00C00000h-00C0003Fh)
(Reserved)(00C00002h-00C1FFFFh)
MCSn, modem (128 K)(00C20000h-00C2FFFFh)
P80_CSn(00C30000h - 00C37FFFh)
SDAA_CSn(00C38000h - 00C3FFFFh)
CS4n, optional general (128 K)(00C40000h-00C5FFFFh)
CS3n, optional general (128 K)(00C60000h-00C7FFFFh)
CS2n, optional general (512 K)(00C80000h-00CFFFFFh)
CS1n, general (1 M)(00D00000h-00DFFFFFh)
CS0n, SRAM or general (2 M)(00E00000h-00FFFFFFh)
SDRAM (For internal and Countach Imaging DSP
Subsystem) (16 M)(01000000h-01FFFFFFh)
RAS0n, DRAM or ARAM (16 M)(02000000h-02FFFFFFh)
RAS1n, DRAM or ARAM (16 M)(03000000h-03FFFFFFh)
ROMCSnROM
FCS1n/FCS0nNAND- or NOR-type Flash Memory
CS0nSRAM, or other
CS1n (Optional)General Use
Optional MCSn (Optional)External Fax Modem (optional)
CS2nI/O Devices, or other
CS3n (Optional)General Use
CS4n (OptionaL0General Use
CS5n4 MB ROM, SRAM, or other
DRAM/ARAM chip selects can also be programmed to 1 of 4 sizes (from 512 k to 16 M).
ROM Chip Select (ROMCSn)
ROMCSn selects external ROM located in 4-MB address space 00000000h-003FFFFFh, and is active for read
and write accesses. The ROMCtrl register can be used to select 0 to 7 (default) wait states, and 0 or 1 (default)
read and write strobe on delays. For customers that choose to use NOR-type flash memory in the ROM address
area, the write operation is also allowed in the ROM address area.
Chip Select 5 (CS5n)
CS5n is an active Read/Write select signal for the 4 MB address range (00400000h to 007FFFFFh) directly below
the ROMCSn address range. The CS5Ctrl register can be used to select 0 to 7 (default) wait states, and 0 or 1
(default) read and write strobe on delays. GPIO[7] (default) can be configured as CS5n using the GPIO[7]/CS5n
bit of the GPIOConfig register.
SRAM Chip Select 0 (CS0n)
CS0n is designed for use in selecting external SRAM, but can also be used for other purposes. It has 2 MB
address range (00E00000h to 00FFFFFFh). The CS0n can also be programmed for 0 (default) to 7 wait states, 0
(default) or 1 read and write strobe on delays, and normal (default) or early write strobe off times using the
CS0Ctrl register.
DRAM Chip Select (RASn[1:0], CASOn[1:0] and CASEn[1:0])
DRAM address space can be selected in 2 separate memory blocks (Bank 0: RASn[0] and Bank 1: RASn[1]).
Separate control bits are provided in the Backup Configuration register to enable and disable each of the memory
banks (Default: Bank0 is enabled and 8-bit DRAM is selected). Non-interleaved DRAM accesses and 2-way
interleaved DRAM accesses are supported. CASOn[1:0] and CASEn[1:0] are used differently for different access
modes. RASn is asserted before CASn for normal read and write operations. Also, RAS can be kept active and
CASn is toggled to do burst mode operations. CASn-Before-RASn refresh mode is the only refresh mode for
MFC2K (For more DRAM information, see the DRAM Controller section.)
The address ranges of the two memory banks (RAS0n and RAS1n) are continuous around the midpoint of the
DRAM memory bank. The RASn[1] starting address is 03000000h and grows larger based on the size of the
memory. The end of the RASn[0] bank ends at 03000000h and grows smaller from that point. Each bank has
separate configuration controls. The memory range is programmed through the address multiplexer selections for
bank 0 and bank 1 in the DRAMCtrl register.
FCS0n and FCS1n are multiplexed with PWM[1] and PWM[2] and output through FCS0n/PWM[1] and
FCS1n/PWM[2] pins. After reset, the Flash disable bit (bit 0) of the FlashCtrl register is 0 and the FCS0n/PWM[1]
and FCS1n/PWM[2] pins are used as FCS0n and FCS1n. FCS0n and FCS1n can access either NOR-type
(default) or NAND-type flash memory, selectable with the NANDFlashEnb bit (bit 6) of the FlashCtrl register.
When enabled for NOR-type flash memory (default), FCS1n can be activated by accessing the 2-MB
(00A00000h-00BFFFFFh) flash memory address area. FCS0n can be activated by accessing the 2-MB
(00800000h - 009FFFFFh) flash memory address area. Firmware controls the flash memory access block size. If
enabled for NAND-type flash memory, FCS0n and FCS1n revert to the GPO function and output bit 9 and bit 8
values of the FlashCtrl register . 0 to 7 (default) wait states and normal (default) or early off of the write strobe can
be chosen using the FlashCtrl register described in the SIU section.
Modem Chip Select (MCSn)
The 128 kB address space from 00C20000h to 00C2FFFFh is reserved for the external modem and selected with
MCSn. It is muxed with the M_STROBE signal of the modem IA on the pin. M_STROBE is usually used to
interface the embedded DSP to the external modem IA if the embedded V.34 modem DSP is used. MCSn can be
selected and muxed out for the external modem if the embedded modem DSP is not used. MCSn can be
programmed for 0 to 7 (default) wait states, 0 (default) or 1 read and write strobe on delays, and normal (default)
or early write strobe off times using the MCSCtrl register.
P80 Chip Select (P80_CSn)
Address space form 00C3000 to 00C7FFF has been reserved for the P80 functions.
Smart Data Access Arraignment (SDAA_CSn)
Address space form 00C3800 to 00CFFFF has been reserved for the SDAA functions.
4.1.1.4 External I/O Chip Selects
Chip Select [2] (CS2n)
The 512 kB address space from 00C80000h to 00CFFFFFh is selected using the external I/O chip selects CS2n.
GPIO[4] (default) can be configured as CS2n using the GPIO[4]/CS2n bit of the GPIOConfig register. CS2n can
be programmed for 0 (default) to 7 wait states, 0 (default) to 3 read and write strobe delays, and normal (default)
or early write strobe off times using the CS2Ctrl register.
Chip Select [4:3] (CS4n-CS3n)(optional)
The 256 kB address space from 00C40000h to 00C7FFFFh can optionally be selected using the two external I/O
chip selects CS4n and CS3n. These chip selects are configured identically to CS2n.
GPIO[6] (default) can be configured as CS4n using the GPIO[6]/CS4n bit of the GPIOConfig register. Likewise,
GPIO[5] (default) can be configured as CS3n by using the GPIO[5]/CS3n bit in the GPIOconfig1 register.
The top 128 kB (00C40000h to 00C5FFFFh) are addressed by CS4n. CS4n is active for read-access only
(internally gated with the read strobe) when the CS4nReadOnly bit (bit 8) of the SIUConfig register is 1. CS4n is
active for both read and write access when the CS4nReadOnly bit (bit 8) of the SIUConfig register is 0. The next
128 kB (00C60000h to 00C7FFFFh) is addressed by CS3n. CS3n is active for write-access only (internally gated
with the write even strobe) when the CS3nWriteOnly bit (bit 7) of the SIUConfig register is 1. If the external I/O
device using CS3n is a 16-bit device, 16-bit access must be done. No high-byte or low-byte access can be done.
CS3n is active for both read and write access when the CS3nWriteOnly bit (bit 7) of the SIUConfig register is 0.
Chip Select 1 (CS1n)
The next address range below those of CS4n-CS2n is the 1-MB range (00D00000h to 00DFFFFFh) selected by
CS1n. CS1n can be programmed for 0 (default) to 7 wait states, 0 (default) to 3 read and write strobe delays, and
normal (default) or early write strobe off times using the CS1Ctrl register.
01FF8046ProductCodeWatchdog TimerR
01FF8048-4B(Not Used)
01FF804C-4DSS CurTimer1Scan/Print Motor ControllerR/W
01FF804E-4FSSCurTimer2Scan/Print Motor ControllerR/W
01FF8050-51S St epCt rlScan/Print Motor ControllerR/W
01FF8052-53SStepTimerSc an/Pri nt Motor Cont rol l erR/W
01FF8054-55SSDelayTimerScan/Print Motor Controll erR/W
01FF8056-57SMPattern/GPOScan/Print Motor ControllerR/W
01FF8058-59VPStepCtrlScan/Print Motor Cont rol l erR/W
01FF805A-5BVPStepTimerScan/Print Motor ControllerR/W
01FF805C-5DVPMPattern/GPOScan/Print Motor ControllerR/W
01FF805E-5F(Not Used)
01FF81C8-C9DMAUSB0CntLoDMA ControllerR/W
01FF81CA-CBDMAUSB0CntHiDMA Control l erR/W
01FF81CC-CDDMAUSB0BlkSizDMA ControllerR/W
01FF81CE-CFDMAUSB1CntLoDMA ControllerR/W
01FF8238-39PIOInHoldPIOR/W
01FF823A-3BPIOInFIFOCtrlPIOR/W
01FF823C-4F(Not Used)
01FF8250-5B(Not Used)
01FF825C-5DVSHiAddr1Countach Bus System - CDMACR/W
01FF825E-5FVSLoAddr1Countach Bus System - CDMACR/W
01FF8260-61VSHiAddr2Countach Bus System - CDMACR/W
01FF8262-63VSLoAddr2Countach Bus System - CDMACR/W
01FF8264-65VSHiAddrStepCountach Bus System - CDMACR/W
01FF8266-67VSLoAddrStepCountach Bus System - CDMACR/W
01FF8268-69VSModeCountach Bus System - CDMACR/W
01FF826A-6BABc2aBlkSizCountach Bus System - CDMACR/W
01FF826C-6DABa2cHiAddrCountach Bus System - CDMACR/ W
01FF826E-6FABa2cLoAddrCountach Bus System - CDMACR/W
01FF8270-71ABc2aHiAddrCountach Bus System - CDMACR/W
01FF8272-73ABc2aLoAddrCountach Bus System - CDMACR/W
01FF8274-75ABa2cThrottleCountach Bus System - CDMACR/W
01FF8276-77ABc2aThrottleCountach Bus System - CDMACR/W
01FF8278-7F(Not Used)
01FF8280-81DRAMConfigCountach Bus System - SDRAMCR/W
01FF8282-83ABIIrqStatCountach Bus System - ABIR/W
01FF8284-85ABIIrqEnableCountach Bus System - ABIR/W
01FF8286-87ABICountachCtrlCountach Bus System - ABIR/W
01FF8288-89VSIModeCountach Bus System - VSIR/W
01FF828A-A7(Not Used)
01FF82A8-A9DefRdHiAddrCountach Bus System - CBUR/W
01FF82AA-ABDefRdLoAddrCountach Bus System - CBUR/W
01FF82AC-ADDefWrHiAddrCountach Bus System – CBUR/W
01FF82AE-AFDefWrLoAddrCountach Bus System – CBUR/W
01FF82B0-B1DefRdDataCountach Bus System – CBUR/W
01FF82B2-B3DefWrDataCountach Bus System – CBUR/W
01FF82B4-FF(Not Used)
01FF8300-01ABIA2Cbuff1Countach Bus System – ABIR/W
01FF8302-03ABIA2Cbuff2Countach Bus System – ABIR/W
01FF8304-05ABIA2Cbuff3Countach Bus System – ABIR/W
01FF8306-07ABIA2Cbuff4Countach Bus System – ABIR/W
01FF8308-09ABIC2Abuff1Countach Bus System – ABIR/W
01FF830A-0BABIC2Abuff2Countach Bus System – ABIR/W
01FF830C-0DABIC2Abuff3Countac h Bus Syst em – ABIR/W
01FF830E-0FABIC2Abuff4Countac h Bus Syst em – ABIR/W
01FF8310-11CSIDMABuff1Countach Bus System – CSIR/W
01FF8312-13CSIDMABuff2Countach Bus System – CSIR/W
01FF8314-15CSIDMABuff3Countach Bus System – CSIR/W
01FF8316-17CSIDMABuff4Countach Bus System – CSIR/W
01FF8318-FF(Not Used)
01FF8400-FF(Not Used)
01FF8500-3F(Not Used)
01FF8540-41ScanCtrlVideo/Scan ControllerR/W
01FF8542-43ScanCtrlStatVideo/Scan ControllerR only
01FF8544-45VSCIRQStatusVideo/Scan ControllerR/W
01FF8546-47VSCCtrlVideo/Scan ControllerR/W
01FF8548-49VidCaptureCtrlVideo/Scan ControllerR/W (Bit[8] - R only)
01FF854A-4BSPI_CtrlVideo/Scan ControllerR/W (Bit[8] - R only)
01FF854C-4DSPI_StatVideo/Scan ControllerR only
01FF854E-7F(Not Used)
01FF8886-7INTClearFax Timing BlockW
01FF8888-8F(Not Used)
01FF8890-91ScanCycleVideo/Scan ControllerR/W
01FF8892-93ScanConfigVideo/Sc an Control l erR/W
01FF8894-95ScanDotCtrlVideo/Scan ControllerR/W
01FF8896-97ScanLengthVideo/Scan Control l erR/W
01FF8898-99ScanStartDelayVideo/Scan ControllerR/W
01FF889A-9BStartEdgesVideo/Scan ControllerR/W
01FF889C-9DStartConfigVi deo/S can ControllerR/W
01FF889E-9FClk2aEdgesV i deo/S can ControllerR/W
01FF88A0-A1Clk2bEdgesVideo/Sc an Controll erR/W
01FF88A2-A3Clk2cEdgesVideo/Scan ControllerR/W
01FF88A4-A5ADCSampleCfgVideo/Scan ControllerR/W
4 kB instruction cache RAM with expansion capability
•
Physical address cache access and cache tags
•
Two Way Set Associative with LRU algorithm
•
16 bytes cache line size with 128 cache lines in each way
•
Supports both ARM and thumb mode instructions
•
Cache memory can be enabled or disabled
•
Provides lock function and flush function
•
Interfaces between ARM7TDMI and SIU (System Interface Unit)
4.2.1.2 Cache Overview
The Cache Controller is an instruction only cache; a level 1 cache for ARM7TDMI. The cache, when enabled, will
support zero wait state sequential instruction access from ARM provided the instruction is in the cache and valid
(Cache hit). If an instruction is not found in the cache memory (Cache miss), the Cache Controller will activate the
LRU (Least Recently Used) replacement algorithm. In this case, the ARM will incur a number of wait states
depending on the memory speed.
The 4 kB Cache Memory is divided into two Ways, which means 2 kB per Way. Each Way is further divided into
128 Cache Lines with 16 bytes of instructions in each Line. If a Cache miss is detected and Cache Line fill is
required, the Cache Controller will replace the least recently used (LRU) Cache line, the Cache Line fill operation
is done in burst (sequential), minimizing the overhead.
The ability for the software to lock the entire Cache or individual line and to flush the entire Cache Memory
contents are provided. In addition, the Cache Memory and Cache Tags can be placed in Test Mode for power-up
verification and system diagnoses. The entire Cache Memory and Cache Controller can also be disabled allowing
the ARM to bypass the Cache Controller unit.
Table 4-4. Cache Tag Data Format (for Test Mode Read/Write Operation)
Cache Tag Data Format
BitsDescription
31LRU bit, accessible only through Way 0 Tag Read
30:23Unused Bits
22Lock
21Valid
20:0A[31:11]
4.2.1.3 Cache RAM
The Cache RAM consists of four 512 X 16 Asynchronous Static RAM modules, and they are organized into two
512 words (32 bit/word) to support two way set associative. The memory map for direct accesses while in Test
Mode or Lock Mode is as follows:
WAY 0: $01FE0000-$01FE07FF
WAY 1: $01FE0800-$01FE0FFF
4.2.1.4 Cache Tags
The Cache Tags are defined as follows:
Valid (1 bit): A 1 in this bit indicates that the Tags and data at the addressed Cache Line are both valid.
Neither Tags nor data have meaning if this bit is 0. Upon power up, the tag memories will
undergo an automatic flush operation that requires 128 clocks. During the flush operation, the
cache is disabled.
Lock (1 bit): A 1 in this bit indicates that the Tags and data at the addressed Cache Line are both valid and
locked and should not be replaced when a Cache miss is detected.
LRU (1 bit): Indicates that the Tags and data at the addressed Cache line (if not locked) at Way 0 can be
replaced if this bit is 0. If this bit is a 1, the Cache Line and Tags in Way 1 should be chosen for
replacement.
Unused (8 bits):Unused bits are undefined.
A[31:11]:Address Tag bits which together with Cache address (A[10:4]), uniquely identify a Cache Line in
the entire 32-bit physical address space.
The Cache Tags are memory mapped to the following address space (not fully utilized) when in the Test Mode or
Lock Mode :
WAY 0: $01FE1000-$01FE17FF
WAY 1: $01FE1800-$01FE1FFF
It should be noted that bits 2-3 of the addresses are not decoded during the Tag entry accesses, i.e., $sa+00,
$sa+04, $sa+08, and $sa+0C all access the same Tag entry.
4.2.1.5 Accessing the Cache
To access the Cache during an instruction fetch, the Cache Controller performs the normal cache operation. If
accesses are performed during Test mode or Lock mode, the Tag RAM and Cache RAM are treated as regular
memories.
If the Cache is enabled, regardless of cache hit or miss, the Cache Controller asserts one wait state for every
non-sequential cycle to start the instruction fetch cycle.
If the access results in a hit, the wait state is de-asserted and a 32-bit Cache data is output to the ARM.
Subsequent Sequential (S-cycles) access(es) require zero wait state if they are found in the same Cache Line. If
the access crosses Cache Line boundary, the Cache Controller will add one wait state for the first S cycle that
crosses the boundary, and then add additional wait states if it results in a cache miss.
If the access misses the Cache, the Cache Controller extends the wait states until the corresponding cache data
or cache line is received from external memory through SIU. The number of wait states inserted is affected by the
status of the lock bit for the corresponding Cache Line. If the Line is not locked, then the Cache Line fill operation
will be performed and the required wait state will depend on the speed and the data width of the external devices.
If the Cache Line is locked, the Cache Controller will re-generate the ARM cycle and forward the cycle to SIU.
The required wait states in this case will be much less than that of Cache Line fill, but still a few cycles more than
a simple pass-through operation when the Cache is disabled. This is due to the time required for the tag
comparison. It should be noted that, in the case of Cache Line fill, the requested data is not transferred to the
ARM until the Cache Line fill operatio n is com plete d.
4.2.1.6 Definition of a Cache Hit
There are two requirements for a Cache hit. First the ARM A[31:11] must match the Cache Address Tags
accessed by A[10 :4] in an instruction fetch cycle. Second, the addressed Cache Line must be Valid.
4.2.1.7 LRU Algorithm
The LRU (Least Recently Used) algorithm is applied when a Cache miss is detected. This algorithm first looks for
a non-valid Line in the Set for a replacement. The order that is used for this checking is Way 0 first, then Way 1. If
both lines associated with the Set are valid, then the Lock bit check is followed. If both are not locked, then the
LRU bit (one bit only) associated with the Set is tested. If it is a zero, the Cache Line in Way 0 is replaced;
otherwise, Way 1. If both are locked, no replacement can be performed and the Cache Controller will convert the
cycle from instruction fetch to data fetch and forward the cycle to SIU for the requested instruction. If only one of
the two lines is locked, the unlocked line will be chosen for the replacement.
4.2.1.8 SIU interface
The ARM to SIU interface behaves differently depending on whether the Cache is enabled or not. If the Cache is
disabled, the only affect that the Cache Controller adds to the ARM/SIU interface is a small propagation delay for
those signals that pass through the Cache Controller (refer to the block diagram for the pass-through signals). On
the other hand, if the Cache is enabled, the Cache controller will response to an instruction cycle by either
providing data to the ARM in a cache hit, or, converting the instruction cycle to a series of burst data cycle(s) and
forwarding them to SIU in a cache miss.
This register resides in the SIU block. The SIU, upon detecting the set condition for a given bit(s) in this register,
asserts the corresponding control signal(s) to the Cache controller.
Bit 7Reserved
Bit 6Flush Cache
Bit 5Global Lock
Bit 4Lock Mode
Bit 3Test Mode
Bit 2Cache Enable
Bit 1Reserved
Bit 0Reserved
N/AFlush Cache Global LockLock ModeTest ModeCache EnableN/AN/ARst Value
00h
Read/writable bit. Writing a 1 to this bit flushes all Valid bits, LRU bits,
and Lock bits in the Cache Tag to zero. It requires 128 cycles to flush
the entire Tag memory area. This bit will be automatically reset upon
completion of the flush operation. Flush does not reset Global Lock or
Cache Enable condition if pres ent.
Read Writable bit. Writing a 1 to this bit locks the entire Cache
memory; a 0 unlocks the Cache. This bit provides a quick way to lock
the entire cache memory.
Read/writable bit. Writing a 1 to this bit and a 0 to the Cache Enable
bit places the Cache in the Lock Mode. The Cache stays in Lock Mode
until a 0 is written to this bit.
Read/writable bit. Writing a 1 to this bit and a 0 to the Cache Enable
bit sets the Cache into test mode. In test mode, the Cache RAMs and
Tags can be accessed in the same manner as regular memory.
Certain Tag bits are readable only. The Cache stays in Test Mode
until a 0 is written to this bit.
Read/writable bit. Writing a 1 enables the Cache and the Cache stays
enabled until a 0 is written or a reset is received. Power-up resets to 0
and disables the Cache.
4.2.3.1 Enabling the Cache
The Cache Enable bit in the SIU Cache Control register determines if the Cache is enabled or not. In power-up
reset state, the Cache is disabled. If disabled, all CPU accesses go directly to the SIU and the Cache Controller
passes through all signals from ARM to SIU. After the power-up reset, all Cache Tag entries are flushed after 128
clocks. If the Cache is enabled after power-up, the Cache Controller starts to update the Cache memory and
Cache tag after the flush operation is completed.
4.2.3.2 Locking the Cache
The system can lock the entire cache memory by setting GLOBAL LOCK bit to 1 in Cache Control register. The
Cache remains locked until the bit is reset. Setting and resetting the Global _Lock bit has no effect on the
individual lock bit set during the Lock mode, the individual lock bit can be cleared by setting Flush_Cache bit to 1.
The system can also lock an individual Cache Line by placing the Cache in the Lock Mode. Once in the Lock
mode, the system can access the Cache RAM and Tag RAM as if they were regular memory. A write to the Tag
entry sets both the Lock bit and Valid bit for the corresponding Tag. The software is responsible for properly
mapping the instructions from ROM (‘where to be cached in’) into Cache RAM and Tag RAM (‘where to be locked
down’) based on the modular of 2048 bytes. In other words, the A10-A2 of address lines used for the ROM code
and Cache/Tag RAM’s entry must be identical, and the A31-A11used for the ROM code becomes the data entry
for the corresponding Tag entry. Caching is disabled during lock mode; the system must exit the lock mode before
enabling the Cache.
Once a Cache line is locked, LRU replacement policy prevents the replacement of the locked Cache Line. If both
Cache Lines in a Set (two Ways) are locked, the LRU algorithm is not able to replace either Line; thus, no Cache
Line fill is performed; instead, a data fetch N (non-sequential) cycle is generated by the Cache Controller and sent
to the SIU. A minimum of 5 wait states is expected.
4.2.3.3 Flushing the Cache
The system can clear the Cache by activating the Flush input. This signal is generated by the SIU when the Flush
bit in the Cache Control register is set by the system. Upon receiving the Flush input, the Cache Controller starts
the flush operation. The operation takes 128 clocks to resets all the Tag Valid bits, LRU bit, and Lock bit. During
the operation the cache, if enabled, is temporarily disabled until the flush is completed. The Flush bit is cleared
automatically at the end of the flush operatio n.
4.2.3.4 Testing the Cache and Tag Memories
The system can access the Cache memory and Tag RAM as regular memory does when in Test mode. Test
mode is entered after setting the Test bit in the Cache Control register. In Test mode, the Tag RAM and Cache
RAM behave like an ordinary memory for read/write cycles. This test feature is not only required for the power-up
self test, but also is important for diagnostics when a system problem develops. The contents of the TAG and
Cache RAM are essential to the investigation of the problem.
Note:The Valid bit, Lock bit, and LRU bit can only be read, not written, and LRU is only
available through Way 0 access.
100723A
Note:It is important to flush the Cache upon completion of the Test Mode.
The System Integration Unit (SIU) is responsible for interfacing between the ARM7TD MI core, the Cache Memory
Controller, the Internal Peripheral Bus (IPB), and the External Bus (EB). The ARM7TDMI core and the Cache
Memory Controller are on the Internal System Bus (ISB). The ISB data bus is 32-bits wide and the IPB and EB
data buses are 16-bits wide. The SIU generates the external chip selects along with chip selects to all the internal
peripherals. It provides the following functions:
1. Interfaces between the Internal Peripheral Bus (IPB), the Internal System Bus (ISB) and the External Bus
(EB). The SIU allows bus master devices on the IPB and ISB.
2. Control the chip selects to devices on the IPB, the ISB, and the EB.
3. Address multiplexing for DRAM access.
4. ROM interleave control (including wait state control for the interleave mode): no interleave and 2-way
interleave with external Q-switch.
5. Fast page mode ROM operation.
6. Even though ARM7TDMI is fixed to the little endian in this MFC2000 chip, the SIU can support the little
endian or big endian for the DMA operation.
7. Support Arm and Thumb mode operations.
4.3.1.1 IPB, ISB and External Bus
IPB Bus
The IPB Bus supports both 8-bit and 16-bit peripherals. The ARM or an internal bus master such as DMA can
access a device residing on the IPB bus.
The SIU provides the chip selects to each of the internal peripheral devices. The chip selects are driven in the
second clock cycle of an IPB bus cycle. The peripheral device needs to decode only the address lines required to
access the specific registers within the block.
Transactions on the IPB bus only occur when a device on the IPB bus is being accessed. All accesses on the IPB
bus require two peripheral bus clock cycles (2 SIUCLK’s). During the first cycle, the address is decoded and
determined if an access to an internal peripheral is occurring. During the second cycle the peripheral chip select is
asserted, and the access occurs.
During Write operations to peripherals, signals BS[1:0] are used to signal which bytes are valid on the data bus.
8-bit peripherals can ignored these signals. 16-bit peripherals MUST use these signals to allow each 8-bit half of
the peripheral registers to be written independently. This is due to the fact that the ARM compiler may generate
two byte transactions when accessing a 16-bite register on the IPB instead of a single halfword transaction.
During Read operations, the peripherals must fill the 16-bit IPB data bus. If the peripheral is less than 16-bit wide,
it should fill the empty bits with 0.
The ISB Bus is used for connecting ARM and Cache Controller to the highest performance. The 32-bit ISB bus
directly interfaces with the ARM core 32-bit data bus. The cache memory controller resides on this bus.
All control signals to and from the ARM, and its address bus go through the cache memory controller regardless
of the cache enable bit. The cache controller control register resides in the SIU.
When the ARM is fetching instructions, and it is a cache hit situation, the ARM gets the instructions from the
cache. The SIU lets the other bus masters have the bus.
When the ARM is fetching instructions, and it is a cache miss situation, the SIU must perform a burst read of eight
halfwords (4 words) to fill up the cache line if the cache line is not locked. If the cache line is locked, then the SIU
reads in two halfwords (one word) of instruction.
When the ARM is fetching data, data is passed directly from the SIU to the ARM.
EB Bus
The EB Bus is used for connecting external memories and devices. The width of the selected slave device is
programmable in the chip select configuration register. The external A[23:12] and A[11:0] addresses are
multiplexed through A[11:0] pins. The ALE signal is provided to latch A[23:12] addresses externally.
External Chip Selects
The SIU provides programmable external chip selects. Each chip select is programmable through the chip select
configuration register.
•
Each chip select can be configured to be:
•
enabled or disabled (default = enabled).
•
programmable from 0 up to 7 wait states.
•
programmable read/write delay-on (write strobe activated one or two SIUCLK cycles later).
•
programmable write early-off (read or write strobe deactivated one SIUCLK cycle earlier).
•
programmable to allow for 8 or 16 bit devices. The SIU will automatically perform the necessary transaction to
access any size data as long as the source of the transaction is internal.
Note:The RD/WR-delay-on and WR-early-off settings should be disabled for zero wait state
access. For other wait state settings (> 1wait state), the delay-on and early-off will shorten the
width of read/write strobe. Firmware has the responsibility to set RD/WR-delay-on and WRearly-off bits correctly. Otherwise, read or write strobes may disappear. For example, if 1 wait
state and 1 RD/WR-delay-on are set for a chip select, the read strobe is not suppressed when
firmware tries to do a read operation. If 2 wait states, 1 WR-early-off and 1 RD/WR-delay-on are
set for a chip select, the write strobe is not suppressed when firmware try to do a write operation.
ROM Interface
The SIU supports non-interleave, 2-way interleave and fast page mode access to ROM, depending on the ROM
Access Configuration pins (AE[2]/ROM_CFG[0] and AO[2]/ROM_CFG[1] pins). Following are the four
configurations supported by the SIU.
The MFC2000 assigns 4 multi-function pins (AE[2], AO[2], AE[3], and AO[3]) to facilitate the interleave access.
SIU generates 4 signals on these 4 pins to control ROMs for the following types of interleave accesses.
•
In 2-way interleave mode, MFC2000 pins AE[2] ,AO[2], AE[3], and AO[3] are connected to pin A[1:0] of the
even and odd external ROMs. MFC2000 pins A[1:0] are used to enable the ROM’s data busses.
ROMCSn
RDn
A[25]A[25]
A[4]A[4]
AE[3]
AE[2]AO[2]
CS OE
A23
EVEN
A2
A1
A0
D
ENENQ-SWQ-SW
AO[3]
D
A[1]A[0]
A23
DD
A2
A1
A0
CSOE
ODD
D
Figure 4-4. 2-Way Interleave ROM Connection
•
The ROMCSn can be programmed to have up to 7 wait states for the initial access, and up to 1 wait state for
the sub-sequential access.
•
The write access to the ROM chip select area (ROMCSn) is allowed. It is customer’s choice to use it or not.
•
To use NOR-type flash memory in the ROM chip select area, WREn and WROn are designed to be used as
the write strobes for the different banks in the interleave mode (not for the higher and lower bytes). Therefore,
the 16-bit wide flash memory should be used in order to avoid the extra glue logic.
•
For non-interleave mode flash memory in the ROM chip select area, the WROn is used to access the higher
byte of the 16-bit data bus and the WREn is used to access the lower byte of the 16-bit data bus.
Assume that W wait states are needed for the initial access to ROM and S wait states (S = 0 or 1) for the subsequential access according to the CPU clock frequency and the ROM speed. For a burst of 8 half-words
interleave access, the wait state of each half-word access, assuming the starting address’s A[3:1]=000. We can
have the following table show all different access modes for reading from ROM.
This is cache burst access. Save the address decoding
cycle for all accesses except the first access.
This is cache burst access. Save the address decoding
cycle for all accesses except the first access.
cycle for all accesses except the first access.
cycle for all accesses except the first access.
cycle for all accesses except the first access.
cycle for all accesses except the first access.
This is cache burst access. 0 or 1 wait state is
programmable and depends on the CPU clock frequency
and the ROM speed. If ‘w-s-1’ is less than 1, it will be forced
to 1.
0 or 1 wait state is programmable and depends on the CPU
clock frequency and the ROM speed. If the starting address
of the sequential access is not lined up with the octal
address boundary of the interleave access, the partial
interleave access sequence should be done. Then, restart
the interleave access sequence at the octal address
boundary of the interleave access. Even if the stopping
address of the sequential access is not lined up with the
octal address boundary of the interleave access, the access
sequence must be stopped immediately at anywhere. If ‘ws-1’ is less than s, it will be forced to s.
0 or 1 wait state is programmable and depends on the CPU
clock frequency and the ROM speed. If the starting address
of the sequential access is not lined up with the octal
address boundary of the interleave access, the partial
interleave access sequence should be done. Then, restart
the interleave access sequence at the octal address
boundary of the interleave access. Even if the stopping
address of the sequential access is not lined up with the
address boundary of the interleave access, the access
sequence must be stopped immediately at anywhere. If ‘ws-1’ is less than s, it will be forced to s.
If the ROM write access (Flash memory in the ROM address range) is performed in the interleave access mode,
the SIU still generates those signals to control ROMs and external multiplexes to perform the interleave access.
But, all the access (no matter if it is the sequential access or not) have W wait states.
External DRAM Interface
When the decoded address from any bus master matches external DRAM address, the SIU will issue a DRAM
request to the DRAM controller and start the transaction . First, it routes the DRAM row address to the address
bus. After receiving the column enable signal from the DRAM controller, the SIU multiplexes the DRAM column
address to the same address bus according to the size of the DRAM . The SIU will perform the next transaction
after receiving the DRAM ready back from the DRAM controller signaling the DRAM transaction is complete.
The SIU also looks at the burst request signals from the bus master who owns the bus to generate the BURST
signal to the DRAM Controller indicating a burst access.
Bus Arbitration
The bus arbitrator block arbitrates control of the internal and external busses between the ARM7TDMI core and
any bus master devices (such as DMA) residing on the IPB or ISB. The ARM core is the default bus master and
has control of the bus whenever no other bus master requests it . In arbitrating control of the bus, the arbitrator
gives highest priority to the DMA Controller and then, the ARM core.
In burst mode access (both DMA and CPU), the bus is not arbitrated within the burst access. In order to prevent a
bus master from hogging the bus. The maximum burst length allowed is eight halfword access. The DMA of
internal peripherals only bursts a maximum of five halfwords.
A bus master requests the bus by asserting request. The arbitrator grants the bus to the requesting bus master by
asserting grant. The requesting bus master must continue to assert request for as long a bus ownership is
required and release the bus by de-asserting request. The arbitrator always inserts a single dead cycle before
granting the bus to another bus master.
Little Endian and Big Endian
The little endian and big endian control is only for internal DMA (The DMA request is from an internal peripheral).
When a DMA access requires different endian format. the corresponding bit of the DMAEndian register needs to
be set. The SIU will transform the endian format; from little endian DMA address and data into big endian format
or from big endian DMA address and data into little endian format. The even and odd write signals (WREn,
WROn) also change accordingly. The following tables show the final addresses and data at the ASIC pins, and
the resulting DMA read or write data. Internal DMA data size is always 16 bits (a halfword).
Bit 8CS4n Read onlyWriting a 1 makes CS4n a read only CS. Default is 0.
Bit 7CS3n Write onlyWriting a 1 makes CS3n a write only CS. Default is 0.
Bit 6Flush: Write only bit.Writing a 1 generates a pulse which flushes all Valid bits, LRU bits and
Bit 5Global_Lock: Read/writable bit Writing a 1 locks the whole Cache. The Cache stays in Lock Mode
Bit 4Cache_Lock: Read/writable bit Writing a 1 places the Cache in the Lock Mode and the Cache stays in
Bit 3Cache_Test: Read/writable bitWriting a 1 sets the Cache into Test Mode and the Cache RAM and
Bit 2Cache_Enable: Read/writable bit
Bit 1Force_externalThis signal will disable the forcing of all accesses to be visible on the
Bit 0Disable_abort:This signal disables abort generation for internal and external access.
Lock Mode until a 0 is written. Each cache line is locked individually .
Default is 0
Tags can be accesses as regular memory. Note that certain Tag bit
only readable . The Cache stays in Test Mode until a 0 is written to
this bit. Default is 0.
Writing a 1 enables the Cache and the Cache stays enabled until a 0
is written or a reset is received. Power-up resets to 0, so the Cache is
disabled.
external bus regardless of destination. If this signal is enabled, only
external transactions will be visible on the external bus. 1 is disabled,
0 is enabled. Default is 0.
If this signal is a 1, all transactions to internal and external address
space will be allowed to occur regardless of if an valid internal or
external peripheral exists. If this signal is 0, then accesses must be to
valid peripheral locations or an abort signal will be generated. Default
is 0.
Associated with each external chip select pin is a register to control automatic functions that will be executed
when a location within the chip select range is accessed. All bits default to 0 unless otherwise specified.
Several control functions are common between the various chip select register.
A chip select is enable when the enable bit is set to 1.
Wait states defines the number of wait states that are added to the associated bus cycle, in increments of
SIUCLK cycle. A bus cycle is 1 SIUCLK.
Size is the width of the external devices peripherals using the chip select. The allowable widths are 8 and 16 bits.
Size are coded : 0=byte, 1 = half-word. If the size of the data is larger than the size of the peripheral, the SIU will
automatically perform multiples accesses to complete the transaction. Default to 0.
Where applicable, Strobe Delay On = 1 delays the activation of RDn or WRn by 1 clk. Write Early Off deactivates
the WRn strobe by 1 clk earlier.
Bit 7Read/Write strobe Delay On(default = 1)
Bits 6-5Mode[1:0] ROM interface mode (read only). These 2 bits are read in
directly from 2 pins (the AE[2]/ROM_CFG[0] pin and the
AO[2]/ROM_CFG[1] pin during reset).
00: 8-bit Non Interleave
01: 16-bit Non interleave
10: 16-bit 2way interleave
11: 16-bit fast page mode
Bit 4Subsequent access wait states in interleave mode (default = 1)
Bits 3-1Wait states or initial access wait states in interleave mode (default = 7)
Bit 0ROMCSn Enable. (default = 1)
100723A
Note: These controls are also applicable to the optional CS5n.
Bit 15Write Early Off strobe (default =0 )
Bit[14:13] Read/Write strobe Delay On(default = 00)
Bit 12Size (default = 0. Byte )
0: 8-bit access
1: 16-bit access
Bit[11:9]Wait states (default =0)
Bit 8 CS2n Enable(default = 1) .
Bit 7Write Early Off strobe (default =0)
Bit[6:5]Read/Write strobe Delay On (default = 00)
Bit 15Write Early Off strobe (default =0 )
Bit[14:13] Read/Write strobe Delay On (default = 00)
Bit 12Size (default = 0. Byte)
0: 8-bit access
1: 16-bit access
Bit[11:9]Wait states (default =0)
Bit 8 CS4n Enable(default = 1)
Bit 7Write Early Off strobe (default =0)
Bit[6:5]Read/Write strobe Delay On (default = 00)
Bit 4Size (default = 0. Byte)
0: 8-bit access
1: 16-bit access
Bit[3:1]Wait states (default =0)
Bit 0 CS3n Enable(default = 1)
(Not Used)SizeWait[2]Wait[1]Wait[0]EnableRst. Value
00x00001b
Read Value
01h
Bit 7Select P80 or external MIRQn interrupt ( default =0, select P80 )
Bit 7Write Early Off strobe (default =0 )
Bit 6Read/Write strobe Delay On (default = 00)
Bit 5(Not Used)
Bit 10Output value of FCS1n when NAND-type memory is used. Not applicable for NOR-type memory.
Bit 9Output value of FCS0n when NAND-type memory is used. Not applicable for NOR-type memory.
Bit 81= Disable FCS1n(default = 0: Enable)
When this bit is set to 1, pin PWM2/FCS1n is used as PWM2.
Bit 7Write Early Off strobe (default =0)
Bit 6NAND-type memory is used when this bit is set to 1. (default =0 . NOR type).
Bit 4Size (default = 0 . Byte)
0: 8-bit access
1: 16-bit access
Bit[3:1]Wait states (default =0)
Bit 0 1= Disable FCS0n(default = 0: Enable)
When this bit is set to 1, pin PWM0/FCS0n is used as PWM0.
Bit 7Write Early Off strobe (default =0 )
Bit[6:5]Read/Write strobe Delay On (default = 00)
Bit 4Size (default = 0. Byte)
0: 8-bit access
1: 16-bit access
Bit[3:1]Wait states (default =0)
Bit 0 RotPackedData register access enable. (default = 1)
Note: This register is used to set up the access timing for the DMA read from RotPackedData
register to the external PIF device. It provides the control of wait states and RDn width when
accessing the RotPackedData.
Table 4-8. Read/Write with Wait States Timing Parameters
Parameter
Address delay timet
Chip select delay timet
Read delay time for the normal case and delay-on)t
Write delay time (the normal case, delay-on, and early-off)t
CS[4:3] delay time (gated with read or write strobe)t
Data input setup timet
Data input hold timet
Data output delay timet
Data output hold timet
Read delay time (for zero wait state)t
Write delay time (for zero wait state)t
CS[4:3] delay time (gated with read or write strobe for zero wait state)t
Data input setup time (for zero wait state)t
Data input hold time (for zero wait state)t
Data output delay time (for zero wait state)t
Data output hold time (for zero wait state)t
2-way interleave address delay timet
ALE address setup timet
ALE address hold timet
ALE delay timet
Address setup time (read and write)t
Address hold time (read and write)t
Data hold time (write)t
SymbolMin.Max.Units
AD
CSD
RD
WD
CGD
DIS
DIH
DOD
DOH
R0D
W0D
CG0D
DI0S
DI0H
DO0D
DO0H
IAD
AAD
AAH
Iald
IAS
IAH
IDH
520ns
-20ns
518ns
512ns
-18ns
8-ns
0-ns
-21ns
521ns
511ns
511ns
-20ns
8-ns
0-ns
-21ns
-21ns
-11ns
10ns
2ns
-10ns
3-ns
2-ns
2-ns
Note:SIUCLK is the internal system interface clock. These values are for SIUCLK = 30 MHz.
When S=0 in the 2-way interleave read operation, t
parameter is still same.
IAD
4.3.4 Firmware Operation
CautionOnly word or half-word accesses that happen on their respective boundaries are
valid. If the access is to a non-boundary address, the SIU ignores the last 2 LSBs (word access)
or 1 LSB (half word access) and reset the address to the appropriate boundaries.
For 16-bit register, writing a byte to the even address (register address) will update the lower 8-bits of the register.
Writing a byte to the odd address (register address + 1) will update the upper 8 bits of the register. BS[1:0]
indicate which byte is written. Writing a halfword to either the even or odd address will update all 16-bits.
This section describes the three methods of interrupting the CPU program flow, which are:
•
Reset
•
Interrupts for the normal functions (IRQs)
•
Interrupt for the development system (through the IRQ16 pin)/Power Down (through the Power Down block)
The reset signal is controlled by the Prime Power Reset block. IRQs and SYSIRQn are managed by the Interrupt
Controller and are sent to the ARM as either an IRQ or a FIQ if enabled. Table 4-9 summarizes the interrupts and
their sources.
4.4.1.1 Reset
An active level on the CPU Reset input halts program execution and resets the CPU's internal registers. When the
CPU's Reset input is released, the CPU begins program execution at the address located in the reset vector. This
signal can be activated externally by putting low levels on the BATRSTn or RESETn pins, or internally by the
Watchdog Timer or the Battery Power Control logic Lockout circuitry. (For more information, see Section 5-1.)
4.4.1.2 System Interrupt
The system interrupt can be activated externally by the programmable interrupt IRQ16 or by the power down
signal from the Power Down Block. This interrupt is treated the same as other interrupts in the interrupt controller.
Firmware has the responsibility to make it the highest priority and to use it as the NMI function which is provided
by many other CPUs.
The input from the Power Down Block is detected and OR’ed with the programmable external IRQ16 pin. This
combined signal is then synchronized to the rising edge of SIUCLK, and then clocked to the falling edge of
SIUCLK before an interrupt will be operat ed in the int er r upt contr ol ler.
For normal system operation, the system interrupt represents a loss of system power, indicated by Power Down
signal going low. The system interrupt control firmware performs the necessary power-down maintenance
operations, and then writes to the Lockout Enable register (LockEnn) to protect the battery backed-up registers
during loss of power. (Note that activating lockout also generates a reset).
4.4.1.3 Interrupts for Normal Functions
The level-mode interrupt is provided for internal and external interrupts. All internal interrupts are high-level
interrupts. The external Modem interrupt is a low-level interrupt. All other external interrupts are programmable to
be either high/low/level/edge interrupts. There are only two kinds of registers needed for the interrupt controller;
one is the interrupt enable register and another is the interrupt event register. The interrupt controller DOES NOT
prioritize the multiple sources of interrupts and DOES NOT generate the interrupt addresses. It only provides
interrupt masking for all of interrupts including the system interrupt (i.e., enable/disable control), and generates
the interrupt request for the CPU.
When the bit corresponding to an interrupt in the interrupt enable register is set, it enables the interrupt request to
cause an interrupt. When the bit is cleared, it masks the interrupt. When the event corresponding to an interrupt
bit in the interrupt event register occurs, this bit needs to be set on the rising edge of SIUCLK whether it is
enabled or not. On the falling edge of SIUCLK, the interrupt controller generates the interrupt (IRQn and FIQn) to
CPU. This interrupt controller has two identical sets of interrupt logic and registers for IRQn and FIQn. Firmware
needs to decide which interrupts trigger IRQn and which interrupts trigger FIQn. In the interrupt subroutine, the
CPU needs to clear the interrupt event from the interrupt source. Then, this bit will be reset at the following rising
edge of SIUCLK. For the software interrupt, the interrupt source is the interrupt bit in the interrupt event register
itself. Therefore, the CPU needs to write a 1 to generate the software interrupt and write a 0 to clear the software
interrupt.
The source of the IRQ is required to latch the interrupt signal and hold the signal active until the CPU processes
the IRQ. The CPU firmware clears the source of the IRQ before exiting the IRQ's service routine. If any IRQ's are
pending when new IRQ's are enabled by either setting the interrupt enable registers or the Interrupt Disable bit in
the CPU Processor Status register, the enabled IRQ causes an almost immediate CPU interrupt [the CPU only
acknowledges interrupts during the op code fetch of an instruction].
The optional IRQ13 and IRQ11 external interrupt requests share pins with GPIO9 and GPIO8, respectively, and
these interrupts are enabled by setting the corresponding bits in the IRQ ENABLE registers to 1. These interrupt
enable bits must be set to 0 when using GPIO[9:8] as GPIO to prevent these pins from causing interrupts.
If an external interrupt source is connected to GPIO8 and/or GPIO9, the corresponding GPIO direction control
register must remain set to 0 (GPI) [default] to avoid bi-directional conflicts with the GPIO output.
Dedicated external interrupt pins are provided for an active low modem interrupt (MIRQn). All other external
interrupts (IRQ2, IRQ11, IRQ13, and IRQ16) are programmable to be either active low or high, edge or level
triggered. All external interrupts are resynchronized in the ASIC.
Internal Interrupts
Internal interrupts are provided for the Countach Imaging DSP Bus System (irqcbs), the T.4/T.6 logic (irqt4), the
vertical printer stepper motor (irqvpstep), the scan stepper motor (irqsstep), the parallel IO block (irqpio), USB
interface (irqusb), the 50ms timer1 and timer2 (irqtimer1, irqtimer2), DMA Channel 2 (irqdma2), Bi-level
Resolution Conversion (irqbrc), DMA Channel 10 (irqdma10), Scanner IF (irqvsc), SOPIF (irqsopif ), SASIF
(irqsasif), software interrupt (irqsw), SSIF (irqssif), DMA Channel 5 interrupt (irqdma5), and the SDAA Interface
interrupt (irqsdaa).
Address:Bit 7Bit 6Bit 5Bit 4Bi t 3Bit 2Bit 1Bit 0Default:
IRQFIQEvent1
0x01FF8020
IRQ7 irqbrc
Event
Status
IRQ6
irqdma2
Event
Status
IRQ5
irqsasif
Event
Status
IRQ4
irqvpstep
Event
Status
IRQ3
irqsstep
Event
Status
IRQ2 irqprt
Event
Status
IRQ1
irqcbs
Event
Status
IRQ0
MIRQ
Event
Status
00h
Rst Value
00h
Read
Value
00h
Bit 15 Internal interrupt from SOPIF block. Read only.
Bit 14Internal interrupt from T4/T6 block. Read only.
Bit 13External interrupt 2. Programmable. Read only.
Bit 12Internal PIO interrupt from PIO block. Read only.
Bit 11External interrupt 1. Programmable. Read only.
Bit 10Internal timer 1 interrupt up to 50 ms. Read only.
Bit 9Internal video scan controller interrupt from VSC IF block. Read only.
Bit 8Internal DMA channel 10 interrupt from DMA controller block. Read
only.
Bit 7Internal bi-level resolution conversion interrupt from BLRC block.
Read only.
Bit 6Internal DMA channel 2 interrupt from DMA controller block.
Read only.
Bit 5Internal SASIF interrupt from SASIF block. Read only.
Bit 4Internal vertical print step int er rupt fr om motor control block.
Read only.
Bit 3Internal scan step interrupt from motor control block. Read only.
Bit 2External print subsystem interrupt. Programmable. Read only.
Bit 1Internal Countach bus system interrupt from Countach Bus System.
Read only.
Bit 0External modem interrupt (active low) or the internal P80 core
(Not Used)(Not Used)(Not Used)(Not Used)(Not Used)(Not Used)(Not Used)Rst Value
xxh
Read Value
00h
IRQ22
irqusb
Event
Status
IRQ21
irqtimer2
Event
Status
IRQ20
irqsdaa
Event
Status
IRQ19
irqdma5
Event
Status
IRQ18
irqssif
Event
Status
IRQ17
irqsw
Event
Status
IRQ16
irqsys
Event
Status
Rst Value
x0000000b
Read Value
00h
Bit 6Internal USB interrupt from USB block. Read only.
Bit 5Internal timer 2 interrupt up to 50 ms. Read only.
Bit 4Internal SmartDAA interface interrupt from SmartDAA IF block. Read
only.
Bit 3Internal DMA channel 5 interrupt from DMA controller block. Read
only.
Bit 2Internal SSIF from SSIF block. Read only.
Bit 1Internal Software interrupt. When CPU writes a 1, the software
interrupt is issued. When CPU writes a 0, the soft ware in ter rupt is
cleared. R/W.
Bit 0Internal system interrupt from programmable external interrupt 16 or
Bit 15 – 0:This is the timer value for the timer2 interrupt. This value will be
loaded in a counter when the timer interrup t bit is ena ble . T he valu e
loaded in this register is dependent on the SIUCLK frequency. This
interrupt period can be programmed up to 50 ms with a programmable
resolution (see Table 4-10). To write new timer value into the register,
the enable bit in the IRQ/FIQ Enable register has to be disabled first;
the new timer value is then written into the register and the enable bit
is then set to load the new timer value into the counter.
The resolution of the timer1 and timer2 is dependent on SIUCLK and can be calculated as follows:
TMRCLK = (SIUCLK/B)/8 = ICLK/8 (value of B is programmable)
Table 4-10. Programmable Resolution of Timer1 and Timer2
SIUCLK (MHz)BICLK (MHz)T M RCL K (MHz)TMRCLK (uSec)
signals internally. There are no setup time and hold time requirements for MIRQn,
GPIO[8], GPIO[9], MIRQn, and IRQ16
PRTIRQn, GPIO[8], GPIO[9], and
signals with respect to SYSCLK. The four
external interrupts PRTIRQn, GPIO[8], GPIO[9], and IRQ16 can also be programmed as edge
triggered interrupts. In this case, the interrupt signals are implemented as clock into flip-flops
with D-input either tied to high or low; again there is no setup and hold time requirements either.
4.5 DRAM Controller (Including Battery DRAM)
4.5.1 Functional Description
The DRAM Controller interfaces to external memory devices and to the internal ARM7 SIU block. The DRAM
memory space can be divided into two banks of memory which can be independently configured. The system
clock rate that is supported can be up to 40MHz and can support the DRAM characteristics that are listed in the
following tables
Addressing Size:
Organization:
Access Speed:
The maximum memory size that is supported for two memory banks is 32M. The DRAM Chip sizes that are
supported go up to 16M, but are limited to the row/column configurations that can be accommodated from the
address multiplexing table (Table 4-12) and the DRAM row/column configuration Table 4-14).
512K, 1M, 4M, 16M
4 bits, 8 bits, or 16 bits
50, 60, 70, 80 ns
The number of DRAM access and refresh cycle wait states can be programmed from the DRAMCtrl register.
Specifically, options to control the RAS precharge width, RAS low time, and CAS low time are provided. The drive
capability of the DRAM control signals can support a maximum of 50pF of loading capacitance.
Several types of external DRAM configurations can be supported: non-interleaved (8-bit or 16-bit data bus) and 2way interleaved (16-bit data bus) (See Table 4-11). Memory bank 0 can be configured independently from
memory bank 1.
If a burst of data is sent to the DRAM, the DRAM Controller will run in page mode once the initial access is
completed. The maximum burst length is limited to 8 halfwords (i.e., the maximum burst length coincides with the
CACHE line length) and is controlled by a burst signal that is generated from the SIU. If a burst of data is being
sent to the DRAM, but an octal address boundary occurs, the burst signal will turn off causing a RASn precharge.
It is impossible to go across a page boundary without precharging the RASn signal.
Note: If a 16-bit wide memory structure is implemented, bursts of data must be 16-bit halfword
bursts. 8-bit byte bursts are only allowed for an 8-bit wide memory structure.
37.5 MHz and 40 MHz-50, -605 wait state, PG = 0,1,0 wait state (read)
37.5 MHz-705 wait state, PG = 0,1,0 wait state (read)
address, non octal boundary
4 wait state, PG=1,0,1 wait state (read)- Odd starting
address, non octal boundary
2 wait state, PG = 1 wait state (write)
4 wait state, PG = 1 wait state (write)
4 wait state, PG = 1 wait state (write)
Note: PG = page mode
4.5.1.1 Memory Bank Structure
DRAM address space can be selected in 2 separate memory blocks (Bank 0: RASn[0] and CASOn[0] (8-bit) or
CASOn[1:0] (16-bit) or CASOn[1:0] and CASEn[1:0] (interleaved), Bank 1: RASn[1] and CASOn[0] (8-bit) or
CASOn[1:0] (16-bit) or CASOn[1:0] and CASEn[1:0] (interleaved). Separate control bits are provided in the
Backup Configuration register to enable and disable (default) each of the memory banks. Each bank has separate
configuration controls and the address ranges of the two memory banks is continuous around the midpoint of the
DRAM memory bank. The RASn[1] starting address is 03000000h and grows larger based on the size of the
memory. The end of the RASn[0] bank ends at 03000000h and grows smaller from that point. The memory range
is programmed through the address multiplexer selections for bank 0 and bank 1 in the DRAMCtrl register.
Non-interleaved DRAM accesses are available for 8-bit or 16-bit data bus. Byte access is available for both 8-bit
and 16-bit data bus and 16-bit halfword access is available for 16-bit data bus. DRAM early-write mode, normal
read mode and page mode are supported. Read-modify-write is not supported.
Note: 16-bit DRAMs must have upper and lower CAS’s in order to work with the DRAM
controller. 8-bit bursts of data will not work with a 16-bit wide memory structure.
02000000h
02800000h
03000000h
RASn[0]
RASn[1]
Bank 0
03400000h
Bank 1
04000000h
NOTE: In this example, Bank 0 is 8M and Bank 1 is 4M.
Figure 4-15. DRAM Bank/Address Map
4.5.1.3 2-way Interleaved DR AM Acc es ses
The two-way interleaved DRAM interface can support up to four 16-bit wide devices a maximum of 8M deep.
Bank 0 is selected with RASn[0] and bank 1 is selected with RASn[1]. CASEn[1:0], CASOn[1:0], DWRn, DOEOn,
DOEEn, ADDR, and DATA are common between the two banks . 2-way interle a ving is limited to a 16-bit wide
databus. 8-bit or 16-bit wide devices can be used. The ARM CPU can write 32-bit words, 16-bit halfwords or bytes
to the memory banks. The addressing to the interleaved DRAMs starts with address bit 2. Bits 1 and 0 are used
internally to generate the proper CASOn[1:0] and CASEn[1:0] signals. When the memory structure is configured
for two-way interleaving, byte bursts are not allowed. Only bursts of 32-bit words or 16-bit halfwords are allowed.
The maximum burst length is eight 16-bit halfwords. The burst length is controlled by the DRAMBURST signal
that is sent from the SIU. The external memory structure can use the output enables directly to the memory
device or for increased speed can use external bus transceivers. Bus contention must be considered when the
output enables are tied directly to a DRAM memory.
256K x 8000000000Supported99
256K x 16 DRAMs000000000Supported99
---
512K x 8000000000Supported109
1M x 8001001001Supported1010
1M x 16 DRAMs001001001Supported1010
---------Not S upport ed128
4M x 8010010100Supported1111
4M x 16 DRAMs001111101Supported1210
---------Not S upport ed139
16M x 8011110---Supported1212
---------Not S upport ed1311
Setting
8-bit16-bit2-wy
intrl.
------Not Supported108
Supported/Not SupportedRow/Column Configuration
RowColumn
4.5.1.4 Refresh Operation
DRAM Refresh is performed automatically using the CAS-before-RAS method. Three different refresh speeds are
supported: slow, normal and fast. These speeds are selected by bits in the backup configuration register. The
refresh time is based on the crystal oscillator frequency and the refresh rate that is selected. During prime power
when it is time to refresh the DRAM, a CAS-before-RAS refresh cycle will be inserted. If the DRAM is being
accessed when a DRAM refresh is requested, the refresh cycle is not inserted until the access is complete. The
maximum burst length that the DRAM Controller will see is 8 halfwords (i.e., the maximum burst length coincides
with the CACHE line size). The maximum burst length is controlled by the SIU with the DRAMBURST signal that
is sent to the DRAM Controller.
4.5.1.5 Power Down Mode
When the ASIC is powered down, the DRAMs cannot be accessed. Only DRAM refresh will continue on battery
power (VDRAM). Refresh timing is generated from a one shot and an internal gate delay circuit during battery
powered operation. To ensure a smooth transition from VDD refresh to battery powered refresh, a control signal
from the power reset block allows the DRAM controller to switch from VDD refresh to battery refresh when power
is down. When the prime power is reapplied, the refresh logic switches back to VDD refresh. The refresh speed
selected using the BackupConfig register remains in force during the battery backed up mode. The DRAM
Backup time duration is defined by the two DRAM Backup time bits in the BackupConfig register. No backup, 1-2
days, 2-3 days, and infinite are the backup options.
Note:The AMFPC ASIC uses a 3V process; therefore, if the DRAM memory structure is to be
backed up, for the lowest power consumption 3 DRAMs should be used. Also, any external
circuitry must also be battery powered. The output pads of the AMFPC are only 5V tolerant
during high Z. The simplified block diagram for the DRAM controller is illustrated in Figure 4-16.
EXTERNAL ADDRESS
DATABUS
SIU
SIUCLK
DRAMREQ
DRAMRDY
DRAM CNTL.
DRAM ADDR
SIU CNTL
DRAM CONTROL
REGISTER
BATTERY
BACKUP
REGISTER
REFRESH
SPEED
OSCCLK,
CO_1DAY
DRAM CONTROLLER
DRAM STATE
MACHINE
DRAM STATE
MACHINE
BANK 0
BANK 1
BATTERY BACKED UP LOGIC
ONESHOT
SWITCH
DOEOn
DOEEn
RASn[1:0]
CASOn[1:0]
CASEn[1:0]
DWRn
MUX
RTC Battery
DRAM Battery
100723A
Figure 4-16. Simplified DRAM Controller Block Diagram
Figure 4-17 gives an example of how each bank of DRAMs might be setup for non-battery back-up DRAM
system. In this example, Bank 0 is setup for an 8-bit non-interleaved memory bank and Bank 1 is setup with a 16bit 2-way interleaved DRAM bank .
Note:
1. DWRn is a battery backed-up signal and is ‘high’ during the battery back-up mode. All inputs
of the prime powered logic will have ‘no power’ or ‘low’ during the battery back-up mode.
Therefore, all external logic, which uses DWRn, should be battery backed-up logic and
should be gated with WRPROTn to ensure that outputs are ‘low’ when the prime power is off
for the battery back-up DRAM operation.
2. DWRn, CASO[1:0]n and CASE[1:0]n are shared by both DRAM banks (RAS[0]n and
RAS[1]n). If you only want to back up one bank by battery power, all shared signals should
be separated by the external logic and should follow the rule in note 2.
AddressBit 15Bit 14Bit 13Bit 12Bit 11Bit 10Bi t 9Bit 8Default
DRAM Control
Register
(DRAMCtrl1)
$01FF8821
AddressBi t 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Default
DRAM Control
Register
(DRAMCtrl1)
$01FF8820
Bank 1 Address MultiplexingBank 1
Increase
RAS Cycle
Time
Bank 0 Address MultiplexingBank 0
Increase
RAS Cycle
Time
Bank 1
2-cycle
RAS
Precharge
Bank 0
2-cycle
RAS
Precharge
Bank 1
1-cycle
RAH
Bank 0
1-cycle
RAH
Bank 1 Non-interleaved
Speed Control
00 = Fast Mode
01 = Normal Mode
10 = Slow Mode
11 = N/A
Bank 0 Non-interleaved
Speed Control
00 = Fast Mode
01 = Normal Mode
10 = Slow Mode
11 = N/A
Rst. Value
x0000000b
Read Value
00h
Rst. Value
x0000000b
Read Value
00h
Register Description:
The DRAM Control register is used to program the two DRAM banks for the type of
operation that is desired.
Bits 15-13: Bank 1 Address Multiplexing
Bit 12:Bank 1 Increase RAS Cycle Time
Bit 11:Bank 1 2-cycle RAS Precharge
Bit 10:Bank 1 1-cycle RAH
Bit 9-8:Bank 1 Speed Control
This register controls the addressing multiplexing for Bank 1
This register will add one cycle after the refresh cycle prior to RAS
precharge to meet T
(RASn cycle time). This is needed in order to
RC
use 70 ns DRAMs while running at 39MHz.
This register will increase the RASn[1] Precharge time from 1 to 2
clock cycles.
This register will increase the RASn[1] address hold time. When this
bit is set, the address will be multiplexed 1 clock cycle after the falling
edge of RAS[1]n. The default setting will multiplex the row/column
address ½ clock cycle after the falling edge of RAS[1]n.
These registers will control the speed of the DRAM interface for bank
1 when in the non-interleaved mode. This register controls the width of
the CASn signal. These bits are ignored in interleaved mode.
Bit 9Bit 8Non-Interleaved Operation:
00CASn is ½ clock cycle wide.
01CASn is 1 clock cycle wide.
10CASn is 2 clock cycles wide for Read
11N/A
Bits 7-5:Bank 0 Addressing Multiplexing:
100723A
and 1 clock cycle wide for write.
This register controls the addressing multiplexing for Bank 0
(Table 4-12).
This register will add one cycle after the refresh cycle prior to RAS
precharge to meet T
(RASn cycle time). This is needed in order to
RC
use 70 ns DRAMs while running at 39MHz.
Bit 3:Bank 0 2-cycle RAS Precharge
This register will increase the RASn[0] Precharge time from 1 to 2
clock cycles.
Bit 2:Bank 0 1-cycle RAH
This register will increase the RASn[0] address hold time. When this
bit is set, the address will be multiplexed 1 clock cycle after the falling
edge of RAS[0]n. The default setting will multiplex the row/column
address ½ clock cycle after the falling edge of RAS[1]n.
Bits 1-0:Bank 0 Speed Control
These registers will control the speed of the DRAM interface for bank
0 when in the non-interleaved mode. This register controls the width of
the CASn signal. These bits are ignored in interleaved mode.
Bit 1Bit 0Non-Interleaved Operation
00CASn is ½ clock cycle wide.
01CASn is 1 clock cycle wide.
10
DRAM Backup Time
0 = no backup
1 = 1-2 days
2 = 2-3 days
3 = infinite days
Register Description:
Refresh
Rate
0 = normal
1 = slow
Oscillator
Speed
0 =
32.768 kHz
1 =
65.536 kHz
Bank 1
Enable
0 = disable
1 = enable
Bank 0
Enable
0 = disable
1 = enable
Bank 1
Interleave
Enable
0 = non
interleaved
1 = 2 way
interleaved
Bank 0
Interleave
Enable
0 = non
interleaved
1 = 2 way
interleaved
This register is set to all zeros when first powered up and is battery backed up with the
Rst. Value
00h
Read Value
00h
RTC Battery during power down. When a time out condition occurs, the RASn and CASn signals are tri-stated.
When prime power has returned from a power down sequence, the user will have to perform a checksum on the
DRAM data to know if a time out has occurred since there is no indication that the DRAM battery has lost power.
The user will have to wait 1ms before accessing the DRAM after prime power has returned.
Bits 15-14:Not used
Bit 13:Internal Power Down Select
0 = PWRDWNn is generated by or-ing power_down1 with
power_down2
1= PWRDWNn is generated by and-ing power_down1 with
power_down2
Note: Power_down1 and power_down2 are output signals from the power-down detection
circuit 1 and 2.
Bit12:Betrstn Detected
This bit indicates that a betrstn occurred. To clear this bit, a 1 must be
written to this bit.
Bit11:This bit indicates that a power down occurred, but no lockout was set
within the 1-2 second period. The lockout timer initiated the lockenn to
create the lockout condition. Once the lockout condition occurs, if the
power down signal is high, the chip will come out of reset after a pud1
delay. To clear this bit a 1 must be written to this bit.
Bit10:SRAM Ch ip Se lec t En abl e
This bit enables the SRAM chip select CSN0.
Bit 9:Bank 1 Interface Size
This register defines whether the data bus to the bank 1 DRAMs is 8
bits wide or 16 bits wide. An 8-bit wide DRAM interf ace uses RASn[ 1]
and CASOn[0]. A 16-bit wide non-interleaved DRAM interface uses
RASn[1] and CASOn[1:0]. A 16-bit wide interleaved DRAM interface
uses RASn[1], CASEn[1:0], and CASOn[1:0].
Bit 8:Bank 0 Interface Size
This register defines whether the data bus to the bank 0 DRAMs is 8
bits wide or 16 bits wide. An 8-bit wide DRAM interf ace uses RASn[ 0]
and CASOn[0]. A 16-bit wide non-interleaved DRAM interface uses
RASn[0] and CASOn[1:0]. A 16-bit wide interleaved DRAM interface
uses RASn[0], CASEn[1:0], and CASOn[1:0].
Bits 7-6:DRAM Battery Backup Time
These bits control the amount of time that the DRAM controller will
spend refreshing the DRAMs when in the battery backup mode. After
reset when the CPU is being released to run, the CPU will not be able
to write data to bits 7 and 6 of the BackupConfig register immediately
since the immediate write will not take effect. The CPU must wait at
least one oscillator clock cycle before writing data into bits 7 and 6.
Bit 7Bit 6Battery Backup Duration:
00No battery backup (default)
011-2 days
102-3 days
11Infinite
Bit 5-4:DRAM Refresh Rate
These bits are used to set up the DRAM refresh rate. See the following table:
Refresh clock = the crystal frequency = 32.768 kHz,
The refresh cycle time = 15.625 ms/1024 cycles.
Refresh clock = the crystal frequency = 65.536 kHz,
Refresh cycle time = 7.8125 ms/1024 cycles.
Refresh clock = the crystal frequency/8 = 4.096 kHz
Refresh cycle time = 125 ms/1024 cycles.
Refresh clock = the crystal frequency/16 = 4.096 kHz
Refresh cycle time = 125 ms/1024 cycles.
Bits 3:Bank 1 EnableThis bit controls whether or not the Bank 1 DRAMs will be enabled.
The Enable signal will allow CAS before RAS refresh to occur based
on the non-interleave or interleave setting. If the bank setting indicates
a non-interleaved mode, RASn[1] and CASOn[0] (8-bit mode) or
CASOn[1:0] (16-bit mode) will refresh the DRAM. If the bank setting
indicates an interleaved mode, RASn[1], CASOn[1:0] and CASEn[1:0]
will refresh the DRAM. DWRn will be high during refresh. If bank 1 is
disabled, RAS[1]n will be tri-stated and all appropriate CASn’s will be
tri-stated based on mode settings.
Bit 2:Bank 0 EnableThis bit controls whether or not the Bank 0 DRAMs will be enabled.
The Enable signal will allow CAS before RAS refresh to occur based
on the non-interleave or interleave setting. If the bank setting indicates
a non-interleaved mode, RASn[0] and CASOn[0] (8-bit mode) or
CASOn[1:0] (16-bit mode) will refresh the DRAM. If the bank setting
indicates an interleaved mode, RASn[0], CASOn[1:0] and CASEn[1:0]
will refresh the DRAM. DWRn will be high during refresh. If bank 0 is
disabled, RAS[0]n will be tri-stated and all appropriate CASn’s will be
tri-stated based on mode settings.
Bit 1:Bank 1 Interleave EnableThis register defines whether the bank 1 DRAMs are to be accessed
using 2-way interleave or non interleaved access. 2-way interleaved
access is only valid with a 16-bit interface (the 16 bit vs. 8 bit interface
size bit for bank 1 is ignored by the DRAM controller, but is used by
the SIU to output the data correctly).
Bit 0:Bank 0 Interleave Enable This register defines whether the bank 0 DRAMs are to be accessed
using 2-way interleave or non interleaved access. 2-way interleaved
access is only valid with a 16-bit interface (the 16 bit vs. 8 bit interface
size bit for bank 1 is ignored by the DRAM controller, but is used by
the SIU to output the data correctly).
No matter which mode you use and which address you access, the DRAM access timing is lined up with the octal
halfword boundary.
SIUCLK
RASn[0]
CASEn[0]
DOEEn
DWRn
ARM ADDR
or DMA ADDR
SIUADDR
EXTADDR
DATA
a
a
ROWCOL
a+2
a+1 a+2
COL COL COLRO W
a+3
a+4
a+4
COL
a+5
COL
OCTAL
BOUNDARY
NOTE: In this example, a =...01010, a+2=...01110, a+4=...10000
Figure 4-18. 8-bit Memory Data Bus
The timing diagram illustrates an 8-bit memory data bus, a burst of halfword transfers (3 halfwords) from the
ARM7 or DMA, for ½ cycle CASn and PG = zero wait states (non-interleaved). It also illustrates the octal halfword
boundary that will cause the SIU to terminate the burst and cause the DRAM Controller to regenerate the RASn
precharge time. This interface speed can only be used at slow frequencies.
The timing diagram illustrates a 16-bit memory data bus, a burst of word transfers (2 words) from the ARM7 for
full clock width CASn and PG = one wait state (non-interleaved). It also illustrates that the octal halfword boundary
doesn’t occur in the middle of the burst of word transfers.
SIUCLK
RASn[0]
CASEn[0]
DOEEn
DWRn
ARM ADDR
or DMA ADDR
SIU ADDR
DATA
EXT ADDR
ROWCOL
a
a
data
Figure 4-20. CASn Non-Interleaved 8-bit DRAM Read
The timing diagram illustrates a two clock cycle CASn non-interleaved 8-bit DRAM read (Non burst mode). This
configuration illustrates the row/column address multiplex occurring 1 cycle after RASn.
SIUCLK
RASn[0]
CASEn[1:0]
CASOn[1:0]
DOEEn
DOEOn
DWRn
ARM ADDR
or DMA ADDR
SIU ADDR
SIU P_ADDR
DATA
EXT ADDR
a+4
a
a
ROW
COL
+2+6
+2
+2+6+4
COL
+8
+10
+6+4
+8
COL
+10
+8
+10
4-66
NOTE: In this example, a[2:0] = 00x. Also, the external address is created from the pipelined
SIU address; however, address pins a1 and a0 are not connected to the external memories.
Figure 4-21. 2-Way Interleaved Memory with Halfword Bursts of Data
This example illustrates a read of two-way interleaved memory with halfword bursts of data (6 halfwords). It also
illustrates that the octal halfword boundary doesn’t occur in the middle of the burst of halfword transfers. It
assumes external drivers to minimize the data bus contention and to insure that the data has enough setup time
to CLK. This waveform also illustrates, increased RASn precharge time and increased address multiplexing time.
Byte bursts of data are not allowed when a 16-bit memory structure is used.
SIUCLK
RASn[0]
CASEn[1:0]
CASOn[1:0]
DOEEn
DOEOn
DWRn
ARM ADDR
SIU ADDR
SIU P_ADDR
DATA
EXT ADDR
ROW
aa+4
a
a
COL
+2
+2+6+4
+6+4
COL
+8
COL
a+8
+10
+8
+10
Figure 4-22. 2-Way Interleaved DRAM Read (3 words)
The timing diagram illustrates a two-way interleaved DRAM read (3 words). It assumes external drivers to
minimize the data bus contention and to insure that the data has enough setup time to CLK. This waveform also
illustrates, increased RASn precharge time and increased address multiplexing time.
The timing diagram illustrates two-way interleaved DRAM write. This configuration assumes that the data bus is
available to the DRAM with enough setup time to the CASn falling edge. In addition, this configuration has a 2cycle wide RASn and allows one cycle after the falling edge of RASn before the row/column address mux.
tRPtRAS
SIUCLK
RASn[1]
CASEn[1:0]
CASOn[1:0]
DWRn
tCP
a refresh cycle
Figure 4-24. Refresh Cycle
The timing diagram illustrates a refresh cycle. t
is three cycles wide to accommodate frequency ranges up to
RAS
40 MHz. This timing is used during prime power refresh. During battery backup, a custom refresh circuit is used to
generate refreshed timing based on the oscillator clock.
4.5.4 Detailed Timing Measurements
SIUCLK
t
RD
RASN[1:0]
t
RD
CASEN[1:0],
CASON[1:0]
DWRN
(read)
t
DW
DWRN
(write)
t
RAH1
A[x:0]
(option 1)
A[x:0]
(option 2)
ROW
t
RAH2
ROWCOLCOLCOL
Figure 4-25. DRAM Timing
t
CD
Note:1
Access with 1 or
COLCOLCOL
t
CDO
t
CD
Note:2
2 wait states
Read, Write and Wait States for Non-interleave Mode