- •Contents
- •List of Tables
- •List of Figures
- •Preface
- •About this document
- •Feedback
- •Introduction
- •1.1 About the ARM PrimeCell MultiPort Memory Controller (PL172)
- •1.2 Supported dynamic memory devices
- •1.3 Supported static memory devices
- •Functional Overview
- •2.1 PrimeCell MPMC functional description
- •2.2 Overview of a PrimeCell MPMC, ASIC, or ASSP system
- •2.3 Low power operation
- •2.4 Lock and semaphores
- •2.5 Arbitration
- •2.6 Memory bank select
- •2.7 Memory map
- •Programmer’s Model
- •3.1 About the programmer’s model
- •3.2 Register descriptions
- •Programmer’s Model for Test
- •4.1 PrimeCell MPMC test harness overview
- •4.2 Scan testing
- •4.3 Test registers
- •Static Memory Controller
- •5.1 Static memory device selection
- •5.2 Write-protection
- •5.3 Extended wait transfers
- •5.4 Memory mapped peripherals
- •5.5 Static memory initialization
- •5.6 Byte lane control
- •5.7 Byte lane control and databus steering for little and big-endian configurations
- •Dynamic Memory Controller
- •6.1 Write-protection
- •6.2 Access sequencing and memory width
- •6.3 Address mapping
- •6.4 Dynamic memory controller command descriptions
- •6.5 Generic SDRAM initialization example
- •6.6 Micron MT48LC4M16A2 SDRAM initialization example
- •6.8 Micron MT28F4M16S2 SyncFlash initialization example
- •6.9 Micron SyncFlash commands
- •Common Memory Transactions
- •7.1 Static and dynamic memory transaction latency
- •Test Interface Controller
- •8.1 About TIC
- •8.2 Sequence of events leading to entry into TIC test mode
- •System Connectivity
- •9.2 Self-refresh entry
- •9.3 Example system
- •Off-chip Connectivity
- •10.2 Pin count reduction by reducing databus width
- •10.3 Pin count reduction by removing functionality
- •10.4 Address pin reduction
- •10.5 Chip select pin reduction
- •10.6 Device support
- •10.7 Multiplexing static and dynamic memory pins
- •10.8 Reducing pin count by multiplexing MPMC pins
- •10.9 About MPMC timing
- •10.10 On-chip timing path
- •10.11 Off-chip timing path
- •10.12 Clock strategy
- •10.13 Clock ratios
- •10.14 Memory clock and fed-back clock strategy
- •Pad Interface Timing
- •A.1 Overview
- •A.2 Signal delay
- •A.3 Method to reduce delay
- •A.4 Methods to reduce skew
- •A.5 Methods to minimize the effects of delay and skew
- •A.6 Example SDRAM memory timing diagram
- •A.7 SDRAM memory timing paths
- •Troubleshooting
- •B.1 Troubleshooting
- •C.1 AHB register signals
- •C.2 AHB memory signals
- •C.3 Miscellaneous and clock signals
- •C.4 Pad interface and control signals
- •C.5 Test Interface Controller (TIC) signals
- •C.6 Scan test signals
Chapter 9
System Connectivity
This chapter describes the system connectivity aspects relating to the MPMC. It contains the following sections:
•On-chip signals on page 9-2
•Self-refresh entry on page 9-6
•Example system on page 9-10
ARM DDI 0215A |
Copyright © 2002 ARM Limited. All rights reserved. |
9-1 |
System Connectivity
9.1On-chip signals
The on-chip signals are described in the following sections:
•AHB register interface connectivity
•AHB memory interface connectivity on page 9-4
•TIC test connectivity on page 9-4
•Reset controller connectivity on page 9-4
•Power management connectivity on page 9-5.
9.1.1AHB register interface connectivity
The AHB register interface must be connected to the AHB bus with the microprocessor so that the microprocessor can program the MPMC.
Figure 9-1 on page 9-3 shows the MPMC system interconnection diagram.
9-2 |
Copyright © 2002 ARM Limited. All rights reserved. |
ARM DDI 0215A |
buses |
AHB register interface |
On-chip |
|
interfaces |
(four off) |
AHB memory |
|
AHB master TIC interface
HCLK
HRESETn
HSELMPMCREG
HADDRREG[11:0]
HTRANSREG[1:0]
HWRITEREG
HSIZEREG[2:0]
HWDATAREG29TO28[29:28]
HWDATAREG26
HWDATAREG24TO22[24:22]
HWDATAREG20TO0[20:0]
HREADYINREG
HREADYOUTREG
HRDATAREG[29:0]
HRESPREG[1:0]
HSELMPMCxG
HSELMPMCxCS[7:0]
HADDRx[27:0]
HTRANSx[1:0]
HWRITEx
HMASTLOCKx
HSIZEx[2:0]
HBURSTx[2:0]
HWDATAx[31:0]
HREADYINx
HREADYOUTx
HRDATAx[31:0]
HRESPx[1:0]
HPROTTIC[3:0]
HADDRTIC[31:0]
HTRANSTIC[1:0]
HWRITETIC
HLOCKTIC
HSIZETIC[2:0]
HBURSTTIC[2:0]
HWDATATIC[31:0]
HBUSREQTIC
HGRANTTIC
HREADYINTIC
HRDATATIC[31:0]
HRESPTIC[1:0]
System Connectivity
|
|
MPMCFBCLKIN[3:0] |
|
|
|
|
|
|
|
|
MPMCRPVHHOUT[3:0] |
|
|
|
|
|
|
|
|
nMPMCDYCSOUT[3:0] |
|
|
|
|
|
|
|
|
nMPMCBLSOUT[3:0] |
|
|
|
|
|
|
|
|
MPMCCCLKOUT[3:0] |
|
|
|
|
|
|
|
|
nMPMCSTCSOUT[3:0] |
|
|
|
|
|
|
|
|
MPMCCKEOUT[3:0] |
|
|
|
|
|
|
|
|
MPMCDQMOUT[3:0] |
|
|
|
|
|
|
|
|
nMPMCRASOUT |
|
|
|
|
bus |
|
|
|
nMPMCCASOUT |
|
|
|
|
memory |
|
|
|
nMPMCOEOUT |
|
|
|
|
|
|
|
|
nMPMCWEOUT |
|
|
|
|
|
|
|
|
MPMCADDROUT[27:0] |
|
|
|
|
Off-chip |
|
|
|
MPMCDATAIN[31:0] |
|
|
|
|
|
|
|
|
MPMCDATAOUT[31:0] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nMPMCRPOUT |
|
|
|
|
|
|
|
|
nMPMCRPVHHOUT |
|
|
|
|
|
|
|
|
nMPMCSTCSOUT[3:0] |
|
|
|
|
|
|
|
|
MPMCBIGENDIAN |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MPMCSTCS1MW[1:0] |
|
|
|
|
|
|
Multiport |
|
|
|
|
|
|
|
|
MPMCSTCS0POL |
|
|
|
|
|
|
||
memory |
|
|
|
|
|
|
||
MPMCSTCS1POL |
|
|
|
|
|
|
||
controller |
|
|
|
|
|
|
||
|
|
MPMCSTCS2POL |
|
|
|
|
|
|
|
|
MPMCSTCS3POL |
|
|
|
|
|
|
|
|
MPMCTESTIN |
|
|
|
|
|
|
|
|
nMPMCDATAEN[3:0] |
|
|
cntl |
|
|
|
|
|
|
|
Pad |
|
|
|
|
|
|
MPMCCLK |
|
|
Power |
management |
|
|
|
|
|
|
|
|
|||
|
|
MPMCSREFACK |
|
|
|
|
|
|
|
|
MPMCSREFREQ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Clock |
Reset |
cntl |
bus |
|
|
|
|
|
||||
|
|
nPOR |
|
|||||
|
|
|
|
|
|
|
chip |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- |
|
|
SCANENABLE |
|
|
|
|
|
On |
|
|
SCANINMPMCCLK |
|
|
|
|
|
|
|
|
|
|
|
|
|
test |
|
|
|
SCANOUTMPMCCLK |
|
|
|
|
|
|
|
|
SCANINMPMCFBCLKIN0..3 |
|
|
|
|
|
|
|
|
|
|
|
|
Scan |
|
|
|
|
|
|
|
|
|
|
|
|
|
SCANOUTMPMCFBCLKIN0..3 |
|
|
|
|
|
|
|
|
SCANINHCLK |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SCANOUTHCLK |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Figure 9-1 MPMC system interconnection diagram
ARM DDI 0215A |
Copyright © 2002 ARM Limited. All rights reserved. |
9-3 |
System Connectivity
9.1.2AHB memory interface connectivity
AHB memory interface 0 is the highest priority interface and is normally connected to the AHB bus with high-bandwidth, low-latency AHB masters. AHB memory interface 1 is the next highest priority interface. Priorities having greater numbers are lower priority. The lowest priority is system-dependent. Any unused AHB interfaces must have their AHB input signals tied LOW.
9.1.3TIC test connectivity
The TIC AHB master interface, if required, must be connected to the same bus as the microprocessor. The TIC controller must be the highest priority master on this bus. The MPMCTESTIN signal must be asserted during reset to enter TIC test mode. The MPMCTESTIN signal must also be sent to the clock generation logic so that the appropriate test clock is selected.
Note
•The TIC controller must not be the default master. Because the TIC master only operates at test speed, it might not function correctly if granted the bus at functional speed.
•The TIC must be granted the bus in test mode. This is normally performed by making the TIC the highest priority master on the AHB bus.
9.1.4Reset controller connectivity
The power-on reset signal from the reset controller must be connected to the MPMC nPOR signal. If the reset controller does not generate a power-on reset signal then the HRESETn signal must be connected to nPOR. However, in this situation the following functionality is seen:
•On HRESETn (and nPOR) reset the complete memory controller is reset. All memory controller state machines are reset. The memory controller must therefore be reinitalized after HRESETn (and nPOR) goes inactive.
•It might not be possible for the system to be re-awakened from self-refresh mode using HRESETn (and nPOR) without data being lost in the SDRAM memory. This is because all statemachines are reset in the memory controller and it might not be possible to restart the SDRAM auto-refresh commands before the contents of the SDRAM are corrupted.
9-4 |
Copyright © 2002 ARM Limited. All rights reserved. |
ARM DDI 0215A |
System Connectivity
9.1.5Power management connectivity
The power management units self-refresh signals must be connected to the MPMC
MPMCSREFREQ and MPMCSREFACK signals. When MPMCSREFREQ is asserted, the controller closes any open memory banks, flushes the buffers, and then puts the memory into self-refresh mode. The MPMCSREFACK signal is used to indicate to the PMU that the external memories are in self-refresh state. The system must ensure that the memory subsystem is idle before asserting MPMCSREFREQ. Deasserting MPMCSREFREQ returns the memory to normal operation. See the memory data sheet for refresh requirements.
If the PMU does not provide the required signals to automatically enter self-refresh mode, then the PrimeCell MPMC MPMCSREFREQ signal must be tied LOW. Self-refresh mode can instead be entered manually by programming the self-refresh bit (SR) in the MPMCDynamicControl register.
ARM DDI 0215A |
Copyright © 2002 ARM Limited. All rights reserved. |
9-5 |