Professional Documents
Culture Documents
Embedded Systems - 4
Embedded Systems - 4
Embedded Systems - 4
AND IOT
Ms. S. Indu
AP / BME
Bus Organization
Data Bus
Data bus is a computer subsystem that facilitates the exchange of information
between various components on a motherboard or system board or between
separate computers. This involves moving information to and from the system's
RAM or the CPU.
• Uni-directional: In some cases, the data bus is one-way, carrying data either
from the CPU to memory/peripherals (write operation) or vice versa (read
operation). This is simpler to implement but might limit performance.
• Bi-directional: A more common approach, the data bus allows data to flow
in both directions. The CPU can both read data from memory/peripherals
and write data to them. This offers more flexibility but requires additional
control logic to manage the direction of data flow.
Address Bus
Address bus carries memory addresses from the processor to other components
such as primary storage and input/output devices. The address bus is
unidirectional close unidirectional. Moving or operating in one direction.
• Separate Bus Architecture: Here, the address bus has dedicated wires
separate from the data bus. This allows for simultaneous transmission of
address and data information, potentially improving performance.
Control Bus
The control bus is usually a smaller bus and is used to provide control signals to
most parts of a computer system. For example, memory read and write control
signals are carried by the control bus.
Control Signals:
The control bus transmits various critical signals that synchronize and manage
data transfers. Some key examples include:
• Read/Write: This signal indicates whether the CPU intends to read data
from memory/peripherals (Read) or write data to them (Write).
• Address Valid: This signal signifies that a valid memory address or
peripheral device address is present on the address bus.
• Data Valid: This signal indicates that the data on the data bus is ready to be
read or written.
• Transfer Acknowledge: This signal is sent by the memory/peripheral
device after successfully receiving data from the CPU (write operation) or
acknowledging the completion of a read operation.
• Interrupt Request: This signal is sent by a peripheral device to the CPU to
request its attention, often to indicate an event requiring processing (e.g.,
sensor data ready).
Essential Components :
o Data Bus
o Address Bus
o Control Bus
How it Works:
• CPU Initiation: The CPU initiates the data transfer process by placing the
target address on the address bus and sending the appropriate control signal
(read or write) on the control bus.
• Data Transfer: The memory or peripheral device at the specified address
acknowledges the request, and the data transfer occurs on the data bus.
• Synchronization: Control signals ensure data arrives at the correct time and
the receiving device acknowledges successful completion.
Advantages:
• Simplicity: Easy to implement and requires fewer wires, making it cost-
effective for resource-constrained systems.
• Widely Used: A well-understood architecture with established design
principles and readily available components.
Disadvantages:
• Bottleneck Potential: Since only one operation (data transfer or address
transmission) can happen at a time, it creates a bottleneck for performance
in high-speed systems.
• Limited Scalability: Adding more peripherals can strain the shared bus,
potentially impacting performance.
Essential Components :
o Data Bus
o Address Bus
o Control Bus - While data and address information have their own lanes, a
separate control bus still exists. It carries control signals (read/write, data
valid, etc.) that synchronize the data transfer process.
Advantages:
• Improved Performance: The separation of data and address buses allows
for concurrent operations, leading to faster data transfers compared to the
Von Neumann bus. This is particularly beneficial for high-performance
embedded systems.
• Reduced Bottlenecks: The dedicated lanes eliminate the single-lane
bottleneck issue of the Von Neumann bus.
Disadvantages:
• Increased Complexity: Separating the data and address buses requires more
wires and control logic, making the design slightly more complex and
potentially more expensive.
• Less Common: Compared to the widely used Von Neumann bus, the
Harvard architecture might require more specialized components or design
expertise.
Control Signals in Harvard Bus:
• Simpler Control: Since data and address information travel on separate
buses, the control signals are less complex compared to the Von Neumann
bus. The control bus primarily focuses on synchronizing data transfers and
handling read/write operations.
Essential Components:
• Data Bus, Address Bus, Control Bus: Function the same way as in other
bus architectures.
• Bus Masters: Devices (including the CPU) that can initiate data transfers
by requesting control of the bus.
• Arbitration Logic: Manages bus access requests from multiple masters,
prioritizing requests based on a predefined scheme (e.g., fixed priority,
round-robin).
How it Works:
• Master Requests Access: A bus master (e.g., a DMA controller or a
peripheral device) needs to transfer data and sends a request signal on the
control bus.
• Arbitration: The arbitration logic evaluates the requests from multiple
masters and grants access to the highest priority master according to the
chosen scheme.
• Data Transfer: The winning master gains control of the data bus, places the
address on the address bus, sends the control signal (read/write), and
transfers the data.
• Bus Release: After the transfer, the master relinquishes control, and the
arbitration logic can handle new requests.
Disadvantages:
• Increased Complexity: The arbitration logic and additional control signals add
complexity to the design compared to simpler bus architectures.
• Potential Bus Conflicts: Managing multiple access requests requires careful design to
avoid collisions and ensure fair access for all masters.
• Higher Cost: The additional hardware and design considerations can lead to slightly
higher development costs.