Design and Implementation of An AHB SRAM Memory Controller: ARM University Program
Design and Implementation of An AHB SRAM Memory Controller: ARM University Program
Design and Implementation of An AHB SRAM Memory Controller: ARM University Program
System on Chip
ARM Cortex-M0
Processor
ARM AMBA 3 AHB-Lite System Bus
Control signals
32-bit Address bus
32-bit Data bus
SRAM
LED
controller
Off-chip SRAM
memory
decoder
Address decoder
Address [7:0]
Memory cells
Address
Data_Out [7:0]
Non-volatile memory
No power is required to retain the data information;
Usually slower access speed and more costly;
Used for secondary storage, or long-term persistent storage.
select
VDD
M5 M2 M4 M6
M1 M3
bit bit'
The address is decoded and the desired cell is then selected, in which case
the select line is set to one;
The 4 transistors (M1-M4) are then forced to flip their states (either charged
or discharged), since the bit lines normally have much higher capacitance
than the 4 transistors;
select
bit line
Application
Application // OS
OS
Memory
Memory controllers
controllers
• Heterogeneous devices
• Various data accesses
• Electrical supports
• Physical maintenance
10
Data
32 Data in 26
Address Off-chip
32 Data out RAM CS SRAM
AHB Address Memory
MemWR Memory
32 MemOE
interface Write Controller RAM UB
RAM Wait
RAM Adv
RAM Cre
RAM Clk
RAM LB
Ready
RamCS
MemOE
MemWR
RamLB/UB
Software programming
Test the peripheral using Cortex-M0 processor programed in
assembler language;
System demonstrating
For example, toggle LEDs at a given frequency, using the SRAM
controller.