Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
AMBA 2.0 PPT
1. IMPLEMENTATION OF AHB
PROTOCOL USING VERILOG
Presented By: Nirav Desai(13014061003) Guided By: Rajesh Navandar
e-Infochips Institute of Training Research and Academics Limited
2. TABLE OF CONTENT
• Advanced High Performance Bus
• Features of AHB BUS
• AMBA 2.0
• Components in AHB
• AHB Signals
• Request / Grant Protocol
• Pipelined Transactions
• RTL Diagrams of all modules
• Simulation Result of all modules
• Advantages
• References
6/13/2014 2
Implementation of AHB Protocol using
verilog
3. Advanced High Performance Bus
• AHB is a new generation of AMBA bus which is intended to address the
requirements of high-performance synthesizable designs.
• It is a high-performance system bus that supports multiple bus masters and
provides high-bandwidth operation.
6/13/2014 3
Implementation of AHB Protocol using
verilog
4. Features of AHB BUS
AMBAAHB implements the features required for high-performance, high
clock frequency systems
Including:
• Burst transfers
• Split transactions
• Single-cycle bus master handover
• Single-clock edge operation
• Wider data bus configurations (64/128 bits).
6/13/2014 4
Implementation of AHB Protocol using
verilog
6. Components in AHB
• Master
– AHB master is able to initiate read and write operations by providing an
address and control information. Only one bus master is allowed to actively use
the bus at any one time.(max. 16)
• Slave
– AHB slave responds to a read or write operation within a given address-space
range. The bus slave signals back to the active master the success, failure or
waiting of the data transfer.
6/13/2014 6
Implementation of AHB Protocol using
verilog
7. Components in AHB
• Arbiter
– AHB arbiter ensures that only one bus master at a time is allowed to initiate
data transfers.
• Decoder
– AHB decoder is used to decode the address of each transfer and provide a
select signal for the slave that is involved in the transfer. A single centralized
decoder is required in all AHB implementations.
6/13/2014 7
Implementation of AHB Protocol using
verilog
8. AHB Response Signals
• Response signals
– HREADY
• Transfer done, ready for next transfer
– HRESP[1:0]
• OKAY transfer complete
• ERROR transfer failure(ex: write ROM)
• RETRY higher priority master can access bus
• SPLIT other master can access bus
6/13/2014 8
Implementation of AHB Protocol using
verilog
9. AHB Arbitration Signals
• Arbitration signals
– HGRANTx
• Select active bus master
– HMASTER[3:0]
• Multiplex signals that sent from master to slave
– HMASTLOCK
• Locked sequence
6/13/2014 9
Implementation of AHB Protocol using
verilog
13. Request / Grant Protocol
Request
CPU #1
CPU #2
IP Block #1
IP Block #1
IP Block #2
IP Block #3
IP Block #4
6/13/2014 13
Implementation of AHB Protocol using
verilog
14. Request / Grant Protocol
Request
Grant
CPU #1
CPU #2
IP Block #1
IP Block #1
IP Block #2
IP Block #3
IP Block #4
6/13/2014 14
Implementation of AHB Protocol using
verilog
15. Request / Grant Protocol
Request
Grant
Transaction
CPU #1
CPU #2
IP Block #1
IP Block #1
IP Block #2
IP Block #3
IP Block #4
6/13/2014 15
Implementation of AHB Protocol using
verilog
16. Request / Grant Protocol
Before a transaction a master makes a
request to the central arbiter
6/13/2014 16
Implementation of AHB Protocol using
verilog
17. Request / Grant Protocol
Before a transaction a master
makes a request to the central
arbiter
Eventually the request is granted
6/13/2014 17
Implementation of AHB Protocol using
verilog
18. Request / Grant Protocol
Before a transaction a master
makes a request to the central
arbiter
Eventually the request is granted
Then the
transaction
proceeds
6/13/2014 18
Implementation of AHB Protocol using
verilog
19. Request / Grant Protocol
Before a transaction a master makes a
request to the central arbiter
Eventually the request is granted
Then the
transaction
proceeds
Performance Impact
6/13/2014 19
Implementation of AHB Protocol using
verilog
20. Pipelined Transactions
• To help improve bus efficiency the transactions on
the bus can be pipelined
• This is really a simple implementation of multiple
outstanding transactions
• The address for one transaction can be presented
before the data from the previous transaction has
been completed
6/13/2014 20
Implementation of AHB Protocol using
verilog
31. MUX Slave To Master RTL
6/13/2014
Implementation of AHB Protocol using
verilog
31
32. MUX Slave To Master Simulation Result
6/13/2014
Implementation of AHB Protocol using
verilog
32
33. MUX Master to Slave RTL
6/13/2014
Implementation of AHB Protocol using
verilog
33
34. MUX Master to Slave Simulation Result
6/13/2014
Implementation of AHB Protocol using
verilog
34
35. MUX peripherals to bridge RTL
6/13/2014
Implementation of AHB Protocol using
verilog
35
36. MUX peripherals to bridge Simulation Result
6/13/2014
Implementation of AHB Protocol using
verilog
36
37. Advantages
• Relatively easy to add new blocks
• Still has the familiar bus structure
• Low hardware cost
• Bus arbitration “solves” many ordering problems
6/13/2014 37
Implementation of AHB Protocol using
verilog
38. 38
Disadvantages
• Busses that require arbitration:
– must route signals to the arbitration logic and back
– must find a “fair” way to share the bus
– slaves are not always available => backpressure
– difficult to provide performance guarantees...
• Still potentially a bandwidth bottleneck
• Still doesn’t scale well when blocks are added
• Multiple outstanding transactions not handled well -
no ordering information
39. References
[1] AMBA Specification, Rev. May, 2.0, 1999.
[2] High-Speed Single-Port SRAM (HS-SRAM-SP) Generator User Manual,
Artisan Components Inc., Release 4.0, Aug. 2000.
[3] Debussy User Guide and Tutorial, NOVAS Software Inc., Sept. 2002.
[4] Compatibility of Network SRAM and ZBT SRAM, Mitsubishi LSIs
Application Note (AP-S001E), Rev. C, Renesas Tech. Corp., Sept. 2002.
[5] DesignWare AHB Verification IP Databook, ver. 2.0a, Synopsys Inc., July
2002.
[6] VMT User Manual, Release 2.0a, Synopsys Inc., July 2002.
[7] Vera User Guide, ver. 5.1, Synopsys Inc., June 2002.
[8] SolidAMBA, Averant Inc., Dec. 2003.
6/13/2014 39
Implementation of AHB Protocol using
verilog