Professional Documents
Culture Documents
Mit Soc Design Competition: Arm Amba 3 Ahb-Lite
Mit Soc Design Competition: Arm Amba 3 Ahb-Lite
About Me
Before we start
Agenda
AMBA Family
Introduction to AHB-Lite
AHB-Lite System
AHB-Lite Signals Master & Slave
AHB-Lite Transactions
How to build a simple AHB-Lite Slave
AHB-Lite Multilayer Design
(2)
(6)
(8)
(15)
(9)
(4)
(3)
Agenda
AMBA Family
Introduction to AHB-Lite
AHB-Lite System
AHB-Lite Signals Master & Slave
AHB-Lite Transactions
How to build a simple AHB-Lite Slave
AHB-Lite Multilayer Design
(2)
(6)
(8)
(15)
(9)
(4)
(3)
AMBA Family
AMBA-1
AMBA-2
AHB
AMBA-3
AHB-Lite
AMBA-4
Acronyms
AMBA Advanced Microcontroller Bus Architectures
AHB Advanced High-Performance Bus
Agenda
AMBA Family
Introduction to AHB-Lite
AHB-Lite System
AHB-Lite Signals Master & Slave
AHB-Lite Transactions
How to build a simple AHB-Lite Slave
AHB-Lite Multilayer Design
(2)
(6)
(8)
(15)
(9)
(4)
(3)
Master-Slave Architecture
10
AHB-Lite
Master 0
Slave
#1
Slave
#2
Slave
#3
Slave
#4
Single Master
Simple slaves
Easier module design/debug
No arbitration issues
Image Source: Walt Disney
11
AHB-Lite transactions
Master
Register Read
Register Write
Burst Read
Burst Write
Slave
Can make Master wait
Can give error response
12
AHB-Lite Features
Single Clock Edge operation
Uni-directional busses
No tri-state signals
Good for synthesis
Pipelined Operation
13
ARM
Processor
(CM0-DS)
MEM
CONTROLLER
AHB-Lite
VGA
14
UART
GPIO
PS2-KB
TIMER
7SEG
XILINX SPARTAN6
ARM
Processor
(CM0-DS)
PUSH
Buttons
MEM
CONTROLLER
PSRAM
(16MB)
FLASH
(16 MB)
AHB-Lite
15
VGA
UART
GPIO
PS2-KB
VGA
UART
Switches
& LED
PS2
TIMER
7SEG
7-SEG
Display
16
17
Agenda
AMBA Family
Introduction to AHB-Lite
AHB-Lite System
AHB-Lite Signals Master & Slave
AHB-Lite Transactions
How to build a simple AHB-Lite Slave
AHB-Lite Multilayer Design
18
(2)
(6)
(8)
(15)
(9)
(4)
(3)
19
Master
Slaves
Address Decoder
Multiplexor
AHB-Lite Master
Transfer
Response
Read Data
Global Signals
20
AHB-Lite
Master
Address and
Control
Write Data
AHB-Lite Slave
Slave Select
Address and
Control
Write Data
Global Signal
21
AHB-Lite
Slave
Transfer
Response
Read Data
Write Data
AHB-Lite
Slave
AHB-Lite
Master
Transfer Response
Read Data
Global Signals
22
Transfer
Response
ADDR
AHB-Lite
Master
SEL1
Read Data
SEL2
Memory Map
Decoder
AHB-Lite
Slave
SEL3
AHB-Lite
Slave
FF
MUX SEL
MUX
Transfer Response, Rdata 2
23
Data phase
N cycles
HCLK
Address
&
Control
Data
&
Response
24
Agenda
AMBA Family
Introduction to AHB-Lite
AHB-Lite System
AHB-Lite Signals Master & Slave
AHB-Lite Transactions
How to build a simple AHB-Lite Slave
AHB-Lite Multilayer Design
25
(2)
(6)
(8)
(15)
(9)
(4)
(3)
Read Data
Global Signals
26
AHB-Lite
Master
Address and
Control
Write Data
27
AHB-Lite
Slave
Transfer
Response
Read Data
28
29
30
31
HSIZE[1:0]
32
34
HTRANS[1:0]
HTRANS
Type
Description
00
IDLE
01
BUSY
10
NON-SEQ
11
SEQ
Transactions
36
37
HTRANS[1:0]
IDLE
BUSY
NONSEQ
SEQ
HBURST[2:0]
SINGLE
INCR
WRAP[4|8|16]
INCR[4|8|16]
HSIZE[2:0]
Byte
Halfword
Word
Doubleword
...
HPROT[3:0]
Data/Opcode
Privileged/user
Bufferable
Cacheable
HMASTLOCK
UNLOCKED
LOCKED
38
39
40
Agenda
AMBA Family
Introduction to AHB-Lite
AHB-Lite System
AHB-Lite Signals Master & Slave
AHB-Lite Transactions
How to build a simple AHB-Lite Slave
AHB-Lite Multilayer Design
41
(2)
(6)
(8)
(15)
(9)
(4)
(3)
Data phase
HCLK
HADDR [31:0]
HWRITE
HWDATA [31:0]
HREADY
42
Data (A)
Data phase
HCLK
HADDR [31:0]
HWRITE
HRDATA [31:0]
HREADY
43
Data (A)
Data Phase A
Address Phase B
Data Phase B
Address Phase C Data Phase C
Address Phase .
HCLK
HADDR
HWRITE
HWDATA
HRDATA
HRESP
HREADY
44
OKAY A
OKAY B
Pipelined Operation
Address & Control Wdata
AHB-Lite
Slave
Transfer
Response
ADDR
AHB-Lite
Master
SEL1
Read Data
SEL2
Memory Map
Decoder
AHB-Lite
Slave
SEL3
MUX SEL
AHB-Lite
Slave
FF
MUX SEL
MUX
Transfer Response, Rdata 2
45
Data Phase A
Address Phase B
HCLK
HADDR
HWRITE
HWDATA
HREADY
HRDATA
HRESP
OKAY A
OKAY A
HREADY
AHB-Lite
Slave 2
AHB-Lite
Slave 3
FF
MUX SEL
HREADYOUT 1
HREADYOUT 2
MUX
HREADYOUT 3
47
Event
OKAY
Access completed
normally
ERROR
ERROR Response
HCLK
HTRANS
NONSEQ
SEQ
HADDR
A+4
undef
ERROR
ERROR
HREADY
HRESP
49
Agenda
AMBA Family
Introduction to AHB-Lite
AHB-Lite System
AHB-Lite Signals Master & Slave
AHB-Lite Transactions
How to build a simple AHB-Lite Slave
AHB-Lite Multilayer Design
50
(2)
(6)
(8)
(15)
(9)
(4)
(3)
Address and
Control
Transfer
Response
AHB2LED
Read Data
Write Data
Global Signal
51
LED
Data Phase B
HCLK
HADDR
HSEL_A
HWRITE
HTRANS
HREADY
52
A NONSEQ
B NONSEQ
C NONSEQ
Data Phase B
HCLK
HADDR
HSEL_A
HWRITE
HTRANS
A NONSEQ
B NONSEQ
C NONSEQ
HREADY
HWDATA
53
54
55
Agenda
AMBA Family
Introduction to AHB-Lite
AHB-Lite System
AHB-Lite Signals Master & Slave
AHB-Lite Transactions
How to build a simple AHB-Lite Slave
AHB-Lite Advanced
56
Shared Slave
Master 0
Slave
#1
Slave
#2
Master 1
Slave Mux
Slave
#4
Slave
#3
Multi-layer
ARM
DMA
Slave
Mux
Slave
Mux
Slave
Mux
Slave
Mux
Slave
#1
Slave
#2
Slave
#3
Slave
#4
On-chip
RAM
UART
Master 1
Slave
Mux
Slave
Mux
AHB2APB
External
Memory
I/F
Timer
DMA
Slave
GPIO
59
Further Information
ARM IHI 0033 - AMBA 3 AHB-Lite Protocol Specification
http://infocenter.arm.com/
60
THE END
61