Chapter3 2024 Prev 4in1
Chapter3 2024 Prev 4in1
Introduction
Bus Interconnection Structures
Background
Evolution of Buses
Operation of the Bus
Classification of Bus Lines Based on Functions
Elements of Bus Design
PCI Bus
Point‐to‐point Interconnection Structures
Background
PCIe
1 2
Introduction Introduction…
A computer consists of a set of components or modules Connection requirements of the three basic components
of three basic types, that communicate with each other of a computer system (below)
Processor, memory, I/O modules
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 3 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 4
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 5 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 6
Introduction… Introduction…
The interconnection structure must support the following types of transfers
Input/Output Module Memory to processor
Similar to memory from computer’s viewpoint The processor reads an instruction or a unit of data from memory
Processor to memory
Output The processor writes a unit of data to memory
I/O to processor
Receive data from computer The processor reads data from an I/O device via an I/O module
Send data to peripheral Processor to I/O
The processor sends data to the I/O device
Input I/O to or from memory
Receive data from peripheral An I/O module is allowed to exchange data directly with memory, without going through the processor,
using direct memory access
Send data to computer
The most common interconnection structures are
The bus and various multiple‐bus structures
E.g. PCI bus (many PCs), ISA bus (PC/AT), EISA (80386), SCSI bus (PCs and workstations), Nubus
(Macintosh), IBM PC bus (PC/XT), Universal Serial Bus (modern PCs), and FireWire (consumer electronics)
Point‐to‐point interconnection structures
E.g. PCI Express (PCIe), Quick Path Interconnect (QPI)
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 7 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 8
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 9 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 10
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 11 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 12
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 13 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 14
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 15 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 16
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 17 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 18
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 19 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 20
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 21 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 22
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 25 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 26
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 27 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 28
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 29 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 30
Potential bus master devices include Further divided into: Daisy‐Chain arbitration, Centralized parallel arbitration
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 31 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 32
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 33 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 34
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 35 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 36
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 37 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 38
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 41 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 42
Multiplexed Address and data lines, to keep low pin count Mandatory (Functional Groups)
Slave can insert “wait states”, when it is not ready to supply System pins
Include the clock and reset pins
the requested data, by activating appropriate control line Address and Data Pins
Include 32 lines, time multiplexed for addresses and data
Different kinds of bus cycles possible
Other lines in this group are used to interpret and validate the signal lines that carry the
Block transfers, …. addresses and data
Interface Control pins
Control the timing of transactions and provide coordination among initiators and targets
Arbitration pins
Each PCI master has its own pair of arbitration lines that connect it directly to the PCI bus
arbiter
Error reporting pins
Used to report parity and other errors
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 45 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 46
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 47 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 48
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 49 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 50
PCIe/PCI bridge
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 55 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 56
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 57 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 58
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 59 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 60
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 61 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 62
The DLL sends an ACK packet, back to the transmitter at the other end of the link
The core portion of the TLP is handed up to the local TL
If the intermediate node is the intended final destination, the local TL processes the TLP
End of Chapter 3
If not, the TL determines a route for the TLP, passes the packet back down to the DLL for transmission over the next
link on the way to the destination
The DLL retains a copy of the TLP, which will be discarded from the buffer upon the reception of an ACK DLL packet from
the subsequent node
If ERROR detected
The DLL schedules a NAK DLL packet to return back to the remote transmitter, the TLP is eliminated
The remote transmitter upon reception of a NAK DLL for its TLP with right sequence no, it retransmits the TLP
Note:
The core fields created at the TL are only used at the destination TL
But the two fields added by the DLL to the TLP are processed at each intermediate node on the way
from source to destination
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 63 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 64
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 65 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 66
Expansion Bus – ISA Bus A System with PCI and ISA Bus
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 67 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 68
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 69 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 70
PCI Bus Based System… Core i7 Chip with Bus Control Hardware
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 71 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 72
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 73 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 74
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 75 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 76
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 77 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 78
Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 79 Computer Architecture and Organization (CoEng4091) ‐ Tinbit A. 80