Professional Documents
Culture Documents
Dept. of CSE
ASE-CBE
BUS
Bus is the mechanism by which CPU
communicates with memory and IO devices.
It is not just a collection of wires. In fact, bus
defines the protocol for communication.
Bus defines the corresponding transport
mechanism between the CPU and memory and
IO devices.
BUS
Bus - a shared communication link, because
there are many devices which can actually sit on
the bus.
A single set of wires - used to connect multiple
subsystems.
Bus is also fundamental tool for composing large
and complex systems
What defines Bus
Transaction Protocol
Bunch of Wires
Electrical Specifications
Physical mechanical
characteristics - Connectors
Generic Bus Structure
Address Bus:
Data Bus:
Control Bus:
Status Bus:
Bus Characteristics
Bus signals are usually tri stated
Tristate : Low State
High State
Tri-State ( High impedance state –
electrically isolated but physically connected)
So, if a device would like to disconnect itself from
the bus, it would drive its interface lines to tri
state high impedance state. So, effectively it gets
disconnected from the bus. So, all these devices
are really sharing the common set of signal lines.
Bus Characteristics
• Address and Data lines may be multiplexed.
• Every device on the bus must be able to drive
the maximum bus load. Because maximum
bus load would determine what are the
maximum number of device that you can
actually put on the bus.
• Bus may include a clock signal. Timing is
relative to clock.
What is the major difference between Control lines
and Signal lines ???
Control Signal === CPU Peripherals
Status Signal === Peripherals CPU
Start D0 D1 D2 D3 D4 D5 D6 D7 STOP
Synchronous Communication Protocol (Common Clock)
Example: I2C
An AMBA AHB design may contain one or more bus masters. However, it
would also be common for a Direct Memory Access (DMA) or Digital Signal
Processor (DSP) to be included as bus masters.
The external memory interface, APB bridge and any internal memory are the
most common AHB slaves. Any other peripheral in the system could also be
included as an AHB slave. However, low-bandwidth peripherals typically reside
on the APB.
A typical AMBA AHB system design contains the following components:
AHB master:
A bus 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.
AHB slave:
A bus 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.
AHB arbiter:
The bus arbiter ensures that only one bus master at a time is allowed to initiate
data transfers. Even though the arbitration protocol is fixed, any arbitration
algorithm, such as highest priority or fair access can be implemented depending on
the application requirements.
An AHB would include only one arbiter, although this would be trivial in single
bus master systems.
AHB decoder:
The 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.
AMBA ASB
ASB is the first generation of AMBA system bus. ASB sits above the current APB and
implements the features required for high-performance systems including:
• burst transfers
• pipelined transfer operation
• multiple bus master
A typical AMBA ASB system may contain one or more bus masters. However, it would also
be common for a Direct Memory Access (DMA) or Digital Signal Processor (DSP) to be
included as bus masters.
ASB master:
A bus 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.
ASB slave:
A bus 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.
ASB decoder:
The bus decoder performs the decoding of the transfer addresses and selects
slaves appropriately. The bus decoder also ensures that the bus remains operational
when no bus transfers are required. A single centralized decoder is required in all ASB
implementations.
ASB arbiter:
The bus arbiter ensures that only one bus master at a time is allowed to initiate
data transfers. Even though the arbitration protocol is fixed, any arbitration
algorithm, such as highest priority or fair access can be implemented depending on
the application requirements.
An ASB would include only one arbiter, although this would be trivial in single bus master
systems.
AMBA APB
The APB is part of the AMBA hierarchy of buses and is optimized for minimal power
consumption and reduced interface complexity.
The AMBA APB appears as a local secondary bus that is encapsulated as a single AHB
or ASB slave device. APB provides a low-power extension to the system bus which
builds on AHB or ASB signals directly.
The APB bridge appears as a slave module which handles the bus handshake and
control signal retiming on behalf of the local peripheral bus.
The AMBA APB should be used to interface to any peripherals which are low
bandwidth and do not require the high performance of a pipelined bus interface.
Thank You