AMBA Based System For High Speed IP Validation
AMBA Based System For High Speed IP Validation
2 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Agenda
3 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Background and Significance of the Project
4 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Background on the Project
What is a System?
• A set of interacting or interdependent components forming an
integrated whole “Functional Block”
• Eg: Personal Computer, Smart Phones, Tablets, Ipod, etc…
• Features :
• Comprises of a Processor, multiple sub - systems
• Interconnect Bus - PCIe, AXI, PLB
• Comprises of an Operating System
5 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Background on the Project
NOTE: Image taken from the Book - PCI Express System Architecture, Ravi Budruk et. al., Mindshare Inc.
6 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Significance of the Project
Compliance with AMBA Architecture -
• AMBA Architecture is a registered trademark of ARM and is an open standard, on-chip
interconnect specification for the connection and management of functional blocks in a System-
on-Chip (SoC)
• AMBA Architecture has gone far beyond microcontroller devices, and is now widely used on a
range of ASIC and SoC parts including application processors used in modern portable mobile
devices like smart phones
System can be used for the verification of any AMBA compliant IP with the
flexibility of choosing from a wide set of modules and devices.
7 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
System Design: Functionality of each Module &
Design Flow
8 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Development of the Base System - Completed
From PC
JTAG
MicroBlaze
AXI Interconnect
Boot
RAM
9 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
MicroBlaze & Boot RAM
MicroBlaze -
• Soft Processor Core from Xilinx
• Central Processor for the System
• Controls the operations of the Complete System
• Interrupt Processing Available
• Configured through JTAG Interface
Boot RAM -
• System Boot Memory
• Contains the Boot up Information ( Instruction/ Command Set) of the System
• Application C Code (containing the Boot Up Info) written by the User is converted to a binary
format and loaded onto the Boot RAM
10 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
AMBA Architecture & AXI Interconnect
AMBA Architecture -
• Reason: It facilitates the development of multi-processor designs with large numbers of
controllers and peripherals.
• Advantages:
1. Technology Independent
2. Encourages Modular System Design to improve processor independence
3. Supports High Performance and low power on chip communication
AXI Interconnect -
• Uses AXI4 Bus Protocol of the AMBA-4 Architecture
• Central System Bus
• Connects MicroBlaze with other Modules of the System
11 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of the UART Module - Completed
From PC
JTAG
MicroBlaze
AXI Interconnect
Boot
UART
RAM
COM
Port
To PC
12 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Universal Asynchronous Reciever & Transmitter: UART
UART -
• Piece of Computer Hardware - Translates Data between Serial & Parallel Form
• Used in Conjunction with RS 232 (Communication Standard)
• 3 line Interface on Zeus Board - Rx, Tx and Gnd
• Connected to COM Port on PC
• Application Software “Hypertrm” used to Display the UART Data on PC
13 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of GPIO Module - Completed
From PC
JTAG
MicroBlaze
AXI Interconnect
Boot
UART GPIO
RAM
COM
Port
To PC
14 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
General Purpose Input & Output: GPIO
GPIO -
• System comprises of 4 different IO Devices -
1. LED’s: O/P Device
• All GPIO Interfaces port mapped to resp. devices on USB 3.0 Extension Board
15 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of I2C Module - Completed
From PC
JTAG
MicroBlaze
AXI Interconnect
Boot
UART GPIO I2C
RAM
COM
Port
To PC
16 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Inter - Integrated Circuit: I2C
IIC / I2C -
• A multi master serial single-ended Computer Bus
• Uses only two bi-directional open - drain lines - SDA and SCL
17 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of Timer Module - Completed
From PC
JTAG
MicroBlaze
AXI Interconnect
Boot
UART GPIO I2C Timer
RAM
COM
Port
To PC
18 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of the Interrupt Controller - Completed
From PC
JTAG
MicroBlaze
AXI Interconnect
Boot INTR
UART GPIO I2C Timer
RAM Cntrl
COM
Port
To PC
19 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Timer & INTR Controller
Timer -
• used to add accurate Time Delays or Time Intervals before a Service Routine
• Various Configuration Modes available – Count Up / Count Down/ Repeated Count
• INTR feature enabled in Hardware Design
• INT Enable / Disable from the Software Code
INTR Controller -
• Controller for handling System Interrupts
• Modules connected to INTR Cntrl in Hardware Design - GPIO, UART, Timer, DMAC, DDR
• INTR for these modules should be enabled in the Software Code
20 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of the DDR2 Controller Module - Completed
From PC
JTAG
MicroBlaze DDR2
AXI Interconnect
Boot INTR
UART GPIO I2C Timer
RAM Cntrl
COM
Port
To PC
21 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
DDR2 Controller
DDR2 Controller -
• DDR (Double Data Rate) memory controllers are used to drive DDR SDRAM
• Data is transferred on the rising and falling edges of the memory clock of the system
22 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of the DMA Cntrl & Sys RAM Module - Completed
From PC
JTAG
AXI Interconnect
23 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Direct Memory Access Controller and System RAM
DMA Controller -
• Processor can only do single Read/Write
• Burst Read/ Write from/to the System
System RAM -
• RAM block for data storage
24 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of AMBA DUT Interface - Completed
From PC
JTAG
AXI Interconnect
25 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
AMBA DUT Interface
26 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of GPIF2AXI Interface - On Hold
AXI Interconnect
27 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
GPIF2AXI Module
GPIF Interface -
• Needed for IP Configuration & Validation using existing USB 2.0 Interface
• GPIF lines Port mapped to USB Controller’s Interface
• USB 3.0 Interface can also be connected thus enabling Higher Data Transfer Speeds
GPIF2AXI Module -
• Converts GPIF Signals to AXI Signals
• Required to connect the GPIF Interface to MicroBlaze and the remaining System
28 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Addition of the PCIe Module - In Progress
AXI Interconnect
29 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
PCI Express Endpoint
PCI Express -
• High Speed Serial Computer Bus
• Operates as a Primary motherboard-level interconnect in modern Computers
30 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Complete System Design – Bock Diagram
AXI Interconnect
31 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Design Flow
33 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Application C Code Example
GPIO Memory Read
SWITCH
Algorithm -
• Read
• Read
Stored
Switch
Value
Value • Write to
• Store in
Interconn
Memory
ect
UART
• Display the
Read Value
on UART
34 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Application C Code Example
C
C
o
d
e
W
rit
e
t
h
e
A
p
p
li
c
a
ti
o
n
C
o
d
e
V
e
rif
y
it
o
n
I
S
I
M
H
a
r
d
w
a
r
e
P
l
a
t
f
o
r
m
• L
o
a
d
t
h
e
S
y
s
t
e
m
D
e
s
i
g
n
• L
o
a
d
t
h
e
C
o
d
e
• V
a
l
i
d
a
t
e
t
h
e
I
P
u
n
d
e
r
T
e
s
t
35 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Snapshot of the XMD Console launched from EDK
36 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Snapshot of the “Hypertrm” Window
37 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Application of AMBA based System
38 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
CSI DSI System
From PC
JTAG
FPGA
MB_Irq
MicroBlaze - AXI Master Interface
- AXI Slave Interface
AXI Interconnect
UART
Intr CSI Intr
CSI to
DPHY TIF CSI DSI DSI
UART Interface Controller Controller
Bridge
DSI Intr
DPHY TX
DPHY RX
Camera
39 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Advantages of AMBA based System
40 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Limitations of Existing Mechanism
1. No Interrupt Mechanism
41 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Advantages of AMBA based System
42 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Advantages of AMBA based System (Contd.)
7. Contains various Test Cases to choose from for various Module and DUT validation.
43 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Questions?
45 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.
Thank You!
46 © 2013 Cadence Design Systems, Inc. Cadence confidential. Internal use only.