AMBA 2.0 PPT

40
IMPLEMENTATION OF AHB PROTOCOL USING VERILOG Presented By: Nirav Desai(13014061003) Guided By: Rajesh Navandar e-Infochips Institute of Training Research and Academics Limited

description

 

Transcript of AMBA 2.0 PPT

Page 1: AMBA 2.0 PPT

IMPLEMENTATION OF AHB PROTOCOL USING VERILOG

Presented By: Nirav Desai(13014061003)

Guided By: Rajesh Navandar

e-Infochips Institute of Training Research and Academics Limited

Page 2: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

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

Page 3: AMBA 2.0 PPT

04/07/2023 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.

Page 4: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

4

Features of AHB BUS

AMBA AHB 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).

Page 5: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

5

AMBA 2.0

Page 6: AMBA 2.0 PPT

04/07/2023 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.

Page 7: AMBA 2.0 PPT

04/07/2023 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.

Page 8: AMBA 2.0 PPT

04/07/2023 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

Page 9: AMBA 2.0 PPT

04/07/2023 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

Page 10: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

10

Master Signals

Page 11: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

11

Arbiters Signals

Page 12: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

12

Slave Signals

Page 13: AMBA 2.0 PPT

04/07/2023 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

Page 14: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

14

Request / Grant Protocol

Request

GrantCPU #1

CPU #2

IP Block #1

IP Block #1

IP Block #2

IP Block #3

IP Block #4

Page 15: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

15

Request / Grant Protocol

Request

Grant

TransactionCPU #1

CPU #2

IP Block #1

IP Block #1

IP Block #2

IP Block #3

IP Block #4

Page 16: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

16

Request / Grant Protocol

Before a transaction a master makes a request to the central arbiter

Page 17: AMBA 2.0 PPT

04/07/2023 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

Page 18: AMBA 2.0 PPT

04/07/2023 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

Page 19: AMBA 2.0 PPT

04/07/2023 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

Page 20: AMBA 2.0 PPT

04/07/2023 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

Page 21: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

21

Pipelined Transactions

Page 22: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

22

Pipelined Transactions

Transaction A Starts

Page 23: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

23

Pipelined Transactions

Transaction A Starts Transaction B Starts

Page 24: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

24

Pipelined Transactions

Transaction A Starts Transaction B StartsTransaction A Completes

Page 25: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

25

Connections of AHB masters

Page 26: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

26

Connection of AHB slaves

Page 27: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

27

Arbiter RTL

Page 28: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

28

Arbiter Simulation Result

Page 29: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

29

Decoder RTL

Page 30: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

30

Decoder Simulation Result

Page 31: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

31

MUX Slave To Master RTL

Page 32: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

32

MUX Slave To Master Simulation Result

Page 33: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

33

MUX Master to Slave RTL

Page 34: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

34

MUX Master to Slave Simulation Result

Page 35: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

35

MUX peripherals to bridge RTL

Page 36: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

36

MUX peripherals to bridge Simulation Result

Page 37: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

37

Advantages

• Relatively easy to add new blocks• Still has the familiar bus structure• Low hardware cost• Bus arbitration “solves” many ordering problems

Page 38: AMBA 2.0 PPT

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

Page 39: AMBA 2.0 PPT

04/07/2023 Implementation of AHB Protocol using verilog

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.

Page 40: AMBA 2.0 PPT

Thank you…

04/07/2023 40Implementation of AHB Protocol using verilog