Bus Architecture
By : Dr. S. Thayaparan
Slide contents are from the following source of origin: 1. 2. 3. 4. 5. 6. http://en.wikipedia.org/wiki/Bus_(computing) http://www.arm.com/products/system-ip/amba/index.php http://en.wikipedia.org/wiki/Advanced_Microcontroller_Bus_Architecture http://www.arm.com/images/Tools_Flow_Large.jpg http://www.arm.com/products/system-ip/amba-design-tools/index.php http://www.cl.cam.ac.uk/teaching/0910/SysOnChip/sp6busnoc/index.html
Reusable IPs
10
2. Bus Arbitration: Several bus masters connected to a common bus may require access to the bus at the same time. A selection mechanism called bus arbitration describes which device should be given access to the bus i) Centralized approach : A hardware device called bus controller or bus arbiter i) Centralized approach : A hardware device called bus controller or bus arbiter allocates bus. It uses one of the following type (1) Daisy chaining (For example, A-B-C-D-E-A : A loop) (2) Polling (3) Multiple priority levels ii) Distributed Approach: Each master has arbiter compared to only single in centralized approach. Equal responsibility is given to all devices to carry out arbitration process, without using a central arbiter process, without using a central arbiter 3. Bus Timing: i) synchronous timing : Every event is synchronized by the clock ii) asynchronous timing : Every event occurring depends on previous events of the bus.
12
4. Bus width: It decides the number of lines to be used for address and data. More address lines means more memory can be accessed. e.g 16 line address can access 216 = 64 KB of Data locations where 20 address line can access 220 = 1MB of Data locations. More data lines means more number of bits can be transferred at a time. Therefore speed increases. 5. Data transfer type: 5. Data transfer type: A bus can support various type of data transfer 1) For multiplexed bus: a) Write operation : data is sent immediately after sending the address b) Read operation: First address is sent, then sufficient time is given to addressed device to output the data. Then, the data is read from the bus c) Read modify write: Read data transfer is followed by write data transfer at the same address. It stops other cpu to use the bus. d) Read after write: Writer transfer is followed with read transfer after some d) Read after write: Writer transfer is followed with read transfer after some access time. It is used to check the data write; used for checking purpose. e) Block operation: Number of data are transferred at the same address one after another. e.g. saving file in secondary storage 2) For non-multiplexed bus: Address and data outputted at the same time on different bus. It is a faster system.
13
15
17
18
20
21
22
23
We continue with AMBA Spec Rev 2.0 We continue with AMBA Spec Rev 2.0
25
APB
o o o o o o o o o o o o o 1.1 2.4 5.1 5.2.2 5.2.3 5.4.1 5.4.2 5.4.3 5.5.1 5.5.2 5.5.3 5.6.1 5.6.2 Overview of APB APB Signal List About APB Fig. 5.3 Wr Transfer Fig. 5.4Rd Transfer Fig. 5.5 Interface Diagram & note PENBLE Signal APB Bridge Fig. 5.6 APB Bridge Transfer Fig. 5.7 Slave Interface Description APB Slave Description Fig. 5.8 APB Slave Transfer Fig 5.9 Rd Transfer to AHB & Fig. 5.10 Rd Burst Fig. 5.11 Wr Transfer from AHB & Fig 5.12 Wr Burst
26
AHB
o o o o o o 1.1 2.2 3.1 3.1.1 3.2 3.4 Overview of AHB AHB Signal List About AHB Fig. 3.1 AHB System Fig 3.2 Bus-Mux Interconnection Fig. 3.3 Simple Transfer Fig. 3.4 Transfer with Wait States Fig. 3.5 Multiple Transfers Fig. 3.6 Transfer Types Burst Operation Fig. 3.7 Four-beat wrapping burst Fig. 3.8 Four-beat incrementing burst Fig. 3.9 Eight-beat wrapping burst Fig. 3.10 Eight-beat incrementing burst
27
o o o