
- •ARM PrimeCell
- •Contents
- •List of Tables
- •List of Figures
- •Preface
- •About this document
- •Intended audience
- •Using this manual
- •Timing diagram conventions
- •Further reading
- •ARM publications
- •Feedback
- •Feedback on the ARM PrimeCell SSMC
- •Feedback on this document
- •Introduction
- •1.1 About the ARM PrimeCell SSMC (PL093)
- •1.1.1 Features of the PrimeCell SSMC
- •1.1.2 Programmable parameters
- •1.2 Supported memory devices
- •1.2.1 Asynchronous memory devices
- •1.2.2 Synchronous memory devices
- •Functional Overview
- •2.1 ARM PrimeCell SSMC overview
- •2.1.1 SSMC core
- •AMBA AHB interface
- •Transfer control
- •External bus interface
- •Pad interface
- •2.2 PrimeCell SSMC operation
- •2.2.1 Clock frequency selection
- •2.2.2 Memory bank select
- •2.2.3 Access sequencing and memory width
- •2.2.4 Wait state generation
- •2.2.5 Write protection
- •2.2.6 Asynchronous static memory read control
- •Output enable programmable delay
- •Asynchronous memory device accesses
- •Asynchronous burst and page mode devices
- •2.2.7 Synchronous static memory read control
- •2.2.8 Asynchronous static memory write control
- •Write enable programmable delay
- •SRAM
- •Flash memory
- •2.2.9 Synchronous static memory write control
- •2.2.10 Bus turnaround
- •2.2.11 Synchronous memory devices bus turnaround
- •2.2.12 Asynchronous external wait control
- •SMWAIT assertion timing
- •SMWAIT deassertion timing
- •SMWAIT timing diagrams
- •2.2.13 Synchronous external wait control
- •2.3.1 Byte lane control
- •Accesses to memory banks constructed from 8-bit or non byte-partitioned memory devices
- •Accesses to memory banks constructed from 16 or 32-bit memory devices
- •Elimination of floating bytes on the external interface
- •Byte lane control and data bus steering for little and big-endian configurations
- •2.3.2 Clock feedback in SSMC
- •Example of 8-bit memory device interconnection
- •Example of 16-bit memory device interconnection
- •Example of 32-bit memory device interconnection
- •2.3.3 Example of system with single output clock
- •2.4 Slave interface connection to the AHB
- •2.5 Memory shadowing
- •2.5.1 Booting from ROM after reset
- •2.5.2 External bank SMCS7 size configuration
- •2.6 Test interface controller
- •2.7 Using the SSMC with an EBI
- •Programmer’s Model
- •3.1 About the programmer’s model
- •3.2 PrimeCell SSMC registers
- •SMBCRx example configurations
- •3.2.9 SSMC status register, SSMCSR
- •3.2.10 SSMC control register, SSMCCR
- •SSMCPeriphID0 register
- •SSMCPeriphID1 register
- •SSMCPeriphID2 register
- •SSMCPeriphID3 register
- •SSMCPCellID0 register
- •SSMCPCellID1 register
- •SSMCPCellID2 register
- •SSMCPCellID3 register
- •Programmer’s Model for Test
- •4.1 Scan testing
- •4.2 Test registers
- •4.2.1 SSMC test control register, SSMCITCR
- •4.2.2 SSMC test input register, SSMCITIP
- •4.2.3 SSMC test output register, SSMCITOP
- •Signal Descriptions
- •A.1 AMBA AHB interface signals
- •A.2 AMBA AHB slave interface signals
- •A.3 AMBA AHB master interface signals
- •A.4 Non-AMBA signals
- •A.5 Input/output pad signals
- •Index

Preface
About this document
This document is the technical reference manual for the ARM PrimeCell Synchronous Static Memory Controller (SSMC).
Intended audience
This document has been written for implementation engineers and architects, and provides a description of an optimal PrimeCell SSMC architecture. The PrimeCell SSMC provides an interface between the Advanced High-performance Bus (AHB) system bus and external (off-chip) memory devices.
Using this manual
This document is organized into the following chapters:
Chapter 1 Introduction
Read this chapter for an introduction to the PrimeCell SSMC and its features.
Chapter 2 Functional Overview
Read this chapter for an overview of the major functional blocks and the operation of the PrimeCell SSMC.
Chapter 3 Programmer’s Model
Read this chapter for a description of the registers and for details of system initialization.
Chapter 4 Programmer’s Model for Test
Read this chapter for a description of the additional logic for functional verification and production testing.
Appendix A Signal Descriptions
Read this appendix for a description of the PrimeCell SSMC signals.
Typographical conventions
The following typographical conventions are used in this book:
italic |
Highlights important notes, introduces special terminology, |
|
denotes internal cross-references, and citations. |
x |
Copyright © 2001. All rights reserved. |
ARM DDI 0236A |

|
Preface |
bold |
Highlights interface elements, such as menu names. Denotes |
|
ARM processor signal names. Also used for terms in descriptive |
|
lists, where appropriate. |
monospace |
Denotes text that can be entered at the keyboard, such as |
|
commands, file and program names, and source code. |
monospace |
Denotes a permitted abbreviation for a command or option. The |
|
underlined text can be entered instead of the full command or |
|
option name. |
monospace italic |
Denotes arguments to commands and functions where the |
|
argument is to be replaced by a specific value. |
monospace bold |
Denotes language keywords when used outside example code. |
Timing diagram conventions
This manual contains timing diagrams. The figure below explains the components used in these diagrams. Any variations are clearly labeled when they occur. Therefore, no additional meaning must be attached unless specifically stated.
Clock
HIGH to LOW
Transient
HIGH/LOW to HIGH
Bus stable
Bus to high impedance
Bus change
High impedance to stable bus
Key to timing diagram conventions
ARM DDI 0236A |
Copyright © 2001. All rights reserved. |
xi |