MultiPort Memory Controller (GX175) Technical Reference Manual

Revision: r0p2


Table of Contents

Preface
About this document
Product revision status
Intended audience
Using this manual
Conventions
Further reading
Feedback
Feedback on this product
Feedback on this manual
1. Introduction
1.1. About the ARM MPMC (GX175)
1.1.1. Features of the MPMC
1.2. Supported dynamic memory devices
1.2.1. Examples of JEDEC DDR SDRAM devices
1.2.2. Examples of JEDEC SDRAM devices
1.2.3. Examples of Micron style SyncFlash devices
1.2.4. Examples of JEDEC low-power SDRAM devices
1.3. Supported static memory devices
1.3.1. Examples of ROM devices
1.3.2. Examples of page mode ROM devices
1.3.3. Examples of SRAM devices
1.3.4. Examples of flash devices
1.3.5. Examples of page mode flash devices
1.4. Product revisions
2. Functional Overview
2.1. MPMC functional description
2.1.1. AHB slave register interface
2.1.2. AHB slave memory interfaces
2.1.3. MBX Interface Port
2.1.4. Data buffers
2.1.5. Arbiter
2.1.6. Memory controller state machine
2.1.7. Pad interface
2.1.8. Test Interface Controller (TIC)
2.2. Overview of a MPMC, ASIC, or ASSP system
2.2.1. External bus
2.2.2. Internal bus
2.3. Low-power operation
2.3.1. Low-power SDRAM deep sleep mode
2.3.2. Low-power SDRAM partial array refresh
2.4. Lock and semaphores
2.5. Burst types
2.6. Busy transfer type
2.7. Arbitration
2.7.1. Re-arbitration occurrence
2.7.2. Re-arbitration priority
2.7.3. AHB memory port latency
2.8. Worst case transaction latency
2.8.1. Worst case transaction latency for the highest priority AHB memory port
2.8.2. Worst case transaction latency for the lower priority AHB memory ports
2.8.3. System factors affecting worst case latency
2.9. Sharing memory bandwidth between AHB ports
2.9.1. Typical AHB port TimeOut value given bandwidth requirement
2.9.2. Typical AHB port TimeOut value given percentage of memory bandwidth requirement
2.9.3. Typical AHB bandwidth requirement example
2.9.4. Typical AHB percentage bandwidth example
2.10. Memory bank select
2.11. Memory map
2.11.1. Chip select 1 static memory configuration
2.11.2. Chip select 5 SDRAM memory configuration
2.11.3. Boot from flash, SRAM remapped after boot
2.11.4. Example of a boot from flash, SDRAM remapped after boot
2.11.5. Memory aliasing
2.11.6. Unused AHB HADDRx address bits
2.12. Sharing memory interface signals
3. Programmer’s Model
3.1. About the programmer’s model
3.2. Register summary
3.3. Register descriptions
3.3.1. Control Register, MPMCControl
3.3.2. Status Register, MPMCStatus
3.3.3. Configuration Register, MPMCConfig
3.3.4. Dynamic Memory Control Register, MPMCDynamicControl
3.3.5. Dynamic Memory Refresh Timer Register, MPMCDynamicRefresh
3.3.6. Dynamic Memory Read Configuration Register, MPMCDynamicReadConfig
3.3.7. Dynamic Memory Precharge Command Period Register, MPMCDynamictRP
3.3.8. Dynamic Memory Active To Precharge Command Period Register, MPMCDynamictRAS
3.3.9. Dynamic Memory Self-refresh Exit Time Register, MPMCDynamictSREX
3.3.10. Dynamic Memory Write Recovery Time Register, MPMCDynamictWR
3.3.11. Dynamic Memory Active To Active Command Period Register, MPMCDynamictRC
3.3.12. Dynamic Memory Auto-refresh Period Register, MPMCDynamictRFC
3.3.13. Dynamic Memory Exit Self-refresh Register, MPMCDynamictXSR register
3.3.14. Dynamic Memory Active Bank A To Active Bank B Time Register, MPMCDynamictRRD
3.3.15. Dynamic Memory Load Mode Register, MPMCDynamictMRD register
3.3.16. Dynamic Memory Last Data In To Read Command Time Register, MPMCDynamictCDLR
3.3.17. Static Memory Extended Wait Register, MPMCStaticExtendedWait
3.3.18. Dynamic Memory Configuration Registers 0-3, MPMCDynamicConfig0-3
3.3.19. Dynamic Memory RAS and CAS Delay Registers 0-3, MPMCDynamicRasCas0-3
3.3.20. Static Memory Configuration Registers 0-3, MPMCStaticConfig0-3
3.3.21. Static Memory Write Enable Delay Registers 0-3, MPMCStaticWaitWen0-3
3.3.22. Static Memory Output Enable Delay Registers 0-3, MPMCStaticWaitOen0-3
3.3.23. Static Memory Read Delay Registers 0-3, MPMCStaticWaitRd0-3
3.3.24. Static Memory Page Mode Read Delay Registers 0-3, MPMCStaticWaitPage0-3
3.3.25. Static Memory Write Delay Registers 0-3, MPMCStaticWaitWr0-3
3.3.26. Static Memory Turn Round Delay Registers 0-3, MPMCStaticWaitTurn0-3
3.3.27. AHB Control Registers 0-4, MPMCAHBControl0-4
3.3.28. AHB Status Registers 0-4, MPMCAHBStatus0-4
3.3.29. AHB TimeOut Registers 0-4, MPMCAHBTimeOut0-4
3.3.30. Additional Peripheral Identification Registers, MPMCPeriphID4-7
3.3.31. Peripheral Identification Registers, MPMCPeriphID0-3
3.3.32. PrimeCell Identification Registers 0-3, MPMCPCellID0-3
4. Programmer’s Model for Test
4.1. MPMC test harness overview
4.1.1. AMBA test strategy
4.1.2. Non-AMBA intra-chip integration test strategy
4.1.3. Primary I/O test strategy
4.2. Production test
4.3. Test registers
4.3.1. Test Control Register, MPMCITCR
4.3.2. Test Input 0 Register, MPMCITIP0
4.3.3. Test Input 1 Register, MPMCITIP1
4.3.4. Test Output Register, MPMCITOP
A. Signal Descriptions
A.1. AHB register signals
A.2. AHB memory signals
A.3. MBX interface port signals
A.4. Miscellaneous signals
A.4.1. Miscellaneous signals
A.4.2. Tie-off signals
A.4.3. Test signals
A.4.4. Clock signals
A.4.5. External Bus Interface signals
A.5. Pad interface and control signals
A.5.1. Signal descriptions
A.5.2. Values during reset and self-refresh
A.6. Test Interface Controller (TIC) AHB signals
A.7. Scan test signals

List of Tables

2.1. GBSTRB bits
2.2. GBSTRB transactions
2.3. Example ARM MBX HR-S memory transfer profile
2.4. Read buffer enabled
2.5. Read buffer disabled
2.6. Read buffer enabled
2.7. Read buffer disabled
2.8. Write buffer enabled
2.9. Write buffer disabled
2.10. Write buffer enabled
2.11. Write buffer disabled
2.12. Memory bank selection
3.1. MPMC register summary
3.2. MPMCControl Register bit assignments
3.3. MPMCStatus Register bit assignments
3.4. MPMCConfig Register bit assignments
3.5. MPMCDynamicControl Register bit assignments
3.6. Clock status options
3.7. Output voltage settings
3.8. MPMCDynamicRefresh Register bit assignments
3.9. MPMCDynamicReadConfig Register bit assignments
3.10. MPMCDynamictRP Register bit assignments
3.11. MPMCDynamictRAS Register bit assignments
3.12. MPMCDynamictSREX Register bit assignments
3.13. MPMCDynamictWR Register bit assignments
3.14. MPMCDynamictRC Register bit assignments
3.15. MPMCDynamictRFC Register bit assignments
3.16. MPMCDynamictXSR Register bit assignments
3.17. MPMCDynamictRRD Register bit assignments
3.18. MPMCDynamictMRD Register bit assignments
3.19. MPMCDynamictCDLR Register bit assignments
3.20. MPMCStaticExtendedWait Register bit assignments
3.21. MPMCDynamicConfig0-3 Register bit assignments
3.22. Address mapping
3.23. MPMCDynamicRasCas0-3 Register bit assignments
3.24. MPMCStaticConfig0-3 Register bit assignments
3.25. MPMCStaticWaitWen0-3 Register bit assignments
3.26. MPMCStaticWaitOen0-3 Register bit assignments
3.27. MPMCStaticWaitRd0-3 Register bit assignments
3.28. MPMCStaticWaitPage0-3 Register bit assignments
3.29. MPMCStaticWaitWr0-3 Register bit assignments
3.30. MPMCStaticWaitTurn0-3 Register bit assignments
3.31. MPMCAHBControl0-4 Register bit assignments
3.32. Transfer types
3.33. MPMCAHBStatus0-4 Register bit assignments
3.34. MPMCAHBTimeOut0-4 Register bit assignments
3.35. Conceptual MPMC Additional Peripheral ID Register bit assignments
3.36. MPMCPeriphID4 Register bit assignments
3.37. MPMCPeriphID5-7 Register bit assignments
3.38. Conceptual MPMC Peripheral ID Register bit assignments
3.39. MPMCPeriphID0 Register bit assignments
3.40. MPMCPeriphID1 Register bit assignments
3.41. MPMCPeriphID2 Register bit assignments
3.42. MPMCPeriphID3 Register bit assignments
3.43. Conceptual PrimeCell ID Register bit assignments
4.1. Test registers memory map
4.2. MPMCITCR Register bit assignments
4.3. MPMCITIP0 Register bit assignments
4.4. MPMCITIP1 Register bit assignments
4.5. MPMCITOP Register bit assignments
A.1. AHB register signal descriptions
A.2. AHB memory signal descriptions
A.3. MBX interface port signals
A.4. Miscellaneous signals
A.5. Tie-off signal descriptions
A.6. Test signal descriptions
A.7. Clock signal descriptions
A.8. EBI signal descriptions
A.9. Pad interface and control signal descriptions
A.10. Values during reset and self-refresh
A.11. TIC signal descriptions
A.12. Scan test signal descriptions

Proprietary Notice

The content of this document is proprietary to ARM Limited and Imagination Technologies Limited. It may not be copied or its contents disclosed without prior consent.

Words and logos marked with ® or ™ are registered trademarks or trademarks of ARM Limited in the EU and other countries, except as otherwise stated below in this proprietary notice. Other brands and names mentioned herein may be the trademarks of their respective owners.

MBX™ and the MBX™ trademark are owned by Imagination Technologies Limited and used by ARM under license.

Neither the whole nor any part of the information contained in, or the product described in, this document may be adapted or reproduced in any material form except with the prior written permission of the copyright holder.

The product described in this document is subject to continuous developments and improvements. All particulars of the product and its use contained in this document are given by ARM in good faith. However, all warranties implied or expressed, including but not limited to implied warranties of merchantability, or fitness for purpose, are excluded.

This document is intended only to assist the reader in the use of the product. ARM Limited shall not be liable for any loss or damage arising from the use of any information in this document, or any error or omission in such information, or any incorrect use of the product.

Confidentiality Status

This document is Non-Confidential. The right to use, copy and disclose this document may be subject to license restrictions in accordance with the terms of the agreement entered into by ARM and the party that ARM delivered this document to.

Product Status

The information in this document is final, that is for a developed product.

Revision History
Revision A12 March 2003First release.
Revision B21 May 2003Second release for r0p0. Various technical changes.
Revision C22 May 2003Third release for r0p0. Reset values changed in MPMCDynamicReadConfig Register.
Revision D11 May 2004Fourth release for r0p0. MPMCConfig register updated. Table 3-22 corrected.
Revision E5 October 2005Update to r0p1. Revision field in Table 3-41 updated.Table 3-11 and Table 3-23 updated for tRAS > RAS requirement.
Revision F23 November 2005Update to r0p2.
Copyright © 2003-2005 ARM Limited. All rights reserved.ARM DDI 0277F
Non-Confidential