Time Sequence of Multiple Interrupts

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 49

+ Time Sequence of

Multiple Interrupts
2

Lecture No 5: Busses for Information Interchange


with Memory and IO
Spring 2020, BESE-9 (A&B)
+
Interconnection Systems: Busses

 Describe the concept of interconnection within a computer


system

 Explain the need for multiple buses arranged in a hierarchy

 Understand the difference between synchronous and


asynchronous bus timing

Book Reference: William Stalling Section 3.3, 3.4


+
I/O Function
 I/O module can exchange data directly with the processor

 Processor can read data from or write data to an I/O module


 Processor identifies a specific device that is controlled by a
particular I/O module
 I/O instructions rather than memory referencing instructions

 In some cases it is desirable to allow I/O exchanges to occur


directly with memory
 The processor grants to an I/O module the authority to read from or
write to memory so that the I/O memory transfer can occur without
tying up the processor
 The I/O module issues read or write commands to memory relieving
the processor of responsibility for the exchange
 This operation is known as direct memory access (DMA)
+ Computer
Modules

Collection of
paths connecting
various modules
is called
Interconnection
Structures
The interconnection structure must support the following
types of transfers:

Memory Processor I/O to or


I/O to Processor
to to from
processor to I/O
processor memory memory

An I/O
module is
allowed to
exchange
Processor
Processor data directly
reads an Processor Processor
reads data with memory
instruction writes a unit sends data to
from an I/O without
or a unit of of data to the I/O
device via an going
data from memory device
I/O module through the
memory
processor
using direct
memory
access
+
Interconnection Structure Flow Chart

Writes
Processor Memory
Read

Sends Data

Reads Data DMA


I/O Module
Bus Interconnection

A communication
pathway connecting two
or more devices
• Key characteristic is that it is
a shared transmission
medium
Bus Interconnection
A communication pathway
connecting two or more
devices
• Key characteristic is that it is a
shared transmission medium

Signals transmitted by any


one device are available for
reception by all other
devices attached to the bus
• If two devices transmit during the
same time period their signals
will overlap and become garbled
Bus Interconnection

A communication pathway Signals transmitted by any


connecting two or more one device are available for
devices reception by all other
• Key characteristic is that it is a devices attached to the bus
shared transmission medium • If two devices transmit during the
same time period their signals
will overlap and become garbled

Typically consists of multiple


communication lines
• Each line is capable of
transmitting signals representing
binary 1 and binary 0
Bus Interconnection

A communication pathway Signals transmitted by any


connecting two or more one device are available for
devices reception by all other
• Key characteristic is that it is a devices attached to the bus
shared transmission medium • If two devices transmit during the
same time period their signals
will overlap and become garbled

Typically consists of multiple Computer systems contain


communication lines a number of different buses
• Each line is capable of that provide pathways
transmitting signals representing between components at
binary 1 and binary 0
various levels of the
computer system hierarchy
Bus Interconnection
A communication pathway Signals transmitted by any
connecting two or more one device are available for
devices reception by all other
• Key characteristic is that it is a devices attached to the bus
shared transmission medium • If two devices transmit during the
same time period their signals will
overlap and become garbled

Typically consists of multiple Computer systems contain a


communication lines number of different buses
• Each line is capable of transmitting that provide pathways
signals representing binary 1 and
binary 0 between components at
various levels of the
computer system hierarchy

System bus
• A bus that connects major
computer components
(Processor, Memory and I/O)
Bus Interconnection
A communication pathway Signals transmitted by any
connecting two or more one device are available for
devices reception by all other devices
• Key characteristic is that it is a shared attached to the bus
transmission medium • If two devices transmit during the
same time period their signals will
overlap and become garbled

Typically consists of multiple


communication lines Computer systems contain a
number of different buses that
• Each line is capable of transmitting
signals representing binary 1 and provide pathways between
binary 0 components at various levels
of the computer system
hierarchy

System bus The most common computer


• A bus that connects major interconnection structures are
computer components based on the use of one or
(Processor, Memory and I/O) more system buses
Data Bus
 Data lines that provide a path for moving data among system
modules

 May consist of 32, 64, 128, or more separate lines

 The number of lines is referred to as the width of the data bus

 The number of lines determines how many bits can be transferred at a


time

 The width of the data bus


is a key factor in
determining overall
system performance
+ Address Bus Control Bus

 Used to designate the source or  Used to control the access and the use
destination of the data on the data bus of the data and address lines
 If the processor wishes to read a
 Because the data and address lines are
word of data from memory it puts
shared by all components there must be
the address of the desired word on
a means of controlling their use
the address lines
 Control signals transmit both command
 Width determines the maximum
and timing information among system
possible memory capacity of the
modules
system
 Timing signals indicate the validity of
 Also used to address I/O ports
data and address information
 The higher order bits are used to
select a particular module on the  Command signals specify operations to
bus and the lower order bits select be performed
a memory location or I/O port
within the module
+
Typical Control Lines
 Memory Write: causes data on the bus to be written into the addressed location

 Memory Read: causes data from the addressed location to be placed on the bus

 I/O Write: causes data on the bus to be output to the addressed I/O port

 I/O Read: causes data from the addressed I/O port to be placed on the bus

 Transfer ACK: indicates that data have been accepted from or placed on the bus

 Bus Request: indicates that a module needs to gain control of the bus

 Bus Grant: indicates that a requesting module has been granted control of the bus

 Interrupt Request: indicates that an interrupt is pending

 Interrupt ACK: acknowledges that the pending interrupt has been recognized

 Clock: is used to synchronize operations

 Reset: initializes all modules


Bus Interconnection Scheme
18

Click icon to add


Typical picture
Physical
Realization
of a Bus
Architecture +
+
Multiple- Bus Hierarchies
If too many devices are connected to the bus, the system
performance will suffer due to:
o Higher number of devices attached to the bus would increase the
bus length, hence increasing the propagation delay
o Due to limited data transfer capacity of the bus, the increase in the
aggregate data transfer may become a bottleneck

19
Bus Configurations
Traditional
Bus Configurations
High Performance
+
Elements of Bus Design
Timing of
Synchronous
Bus
Operations
Timing of
Asynchronous
Bus
Operations
25
Click icon to add picture

Data Transfer
Type

Multiplexed vs Dedicated +

16
+ Point-to-Point Interconnect

Principal reason for change was At higher and higher data rates
the electrical constraints it becomes increasingly difficult
encountered with increasing the to perform the synchronization
frequency of wide synchronous and arbitration functions in a
buses timely fashion

A conventional shared bus on


the same chip magnified the
difficulties of increasing bus Has lower latency, higher data
data rate and reducing bus rate, and better scalability
latency to keep up with the
processors
+Quick Path Interconnect
QPI
 Introduced in 2008

 Multiple direct connections


 Direct pairwise connections to other components eliminating the
need for arbitration found in shared transmission systems

 Layered protocol architecture


 These processor level interconnects use a layered protocol
architecture rather than the simple use of control signals found in
shared bus arrangements

 Packetized data transfer


 Data are sent as a sequence of packets each of which includes
control headers and error control codes
Multicore
Configuration
Using
QPI
QPI Layers
+ Physical Layer
 The physical layer is the lowest level layer
 It comprises of the actual wiring and the transmitters and
receivers.
 A pair of wires that transmits data one bit at a time; the
pair is referred to as a lane
 The lanes in each direction are grouped into four
quadrants of 5 lanes each
 Each component has a fwd and rcv clock to synchronize
the data transmission
+
Physical Interface of the Intel QPI
Interconnect

Transfer Rate: 6.4 GT/s= 16GBytes/s (One Way) = 32 GBytes/s (Two Way)
Form of Transfer: Differential Signaling, or Balanced Transmission
QPI uses LVDS (Low Voltage Differential Signaling)
+
QPI Multilane Distribution
(Physical Layer)
+
QPI Link Layer
 Performs two key functions: flow control and error control
 Operate on the level of the flit (flow control unit)

 Each flit consists of a 72-bit message payload and an 8-


bit error control code called a cyclic redundancy check
(CRC)

8 (CRC)
72 (data)

8 (CRC)
Compare
+ QPI Link Layer
 Flow control function
 Needed to ensure that a sending QPI entity does not
overwhelm a receiving QPI entity by sending data
faster than the receiver can process the data and
clear buffers for more incoming data

SENDER
SENDER Credits RECIEVER
RECIEVER
554 Credits
credits Buffer
buffer
data
Data

 Error Control Function


 Detects and recovers from bit errors, and so isolates
higher layers from experiencing bit errors
+
QPI Routing and Protocol Layers

Routing Layer Protocol Layer


 Packet is defined as the unit of
 Used to determine the course transfer
that a packet will traverse across
the available system  One key function performed at
interconnects this level is a cache coherency
protocol which deals with making
 Defined by firmware and sure that main memory values
describe the possible paths that a held in multiple caches are
packet can follow consistent

 A typical data packet payload is a


block of data being sent to or
from a cache
+
Peripheral Component Interconnect
(PCI)
 A popular high bandwidth, processor independent bus
that can function as a mezzanine or peripheral bus
 Delivers
better system performance for high speed I/O
subsystems
 PCI Special Interest Group (SIG)
 Created to develop further and maintain the compatibility of the
PCI specifications
+
Peripheral Component
Interconnect Express (PCIe)
PCI Express (PCIe)
 Point-to-pointinterconnect scheme intended to
replace bus-based schemes such as PCI
 Key requirement is high capacity to support the
needs of higher data rate I/O devices, such as
Gigabit Ethernet
 Another requirement deals with the need to
support time dependent data streams
+ How they look:
+
PCIe
Configuration

Chipset, Root Complex or Host Bridge


A Buffering Device between processor/ Memory and I/O
Devices
+
PCIe Protocol Layers
+
PCIe Multilane Distribution
PCIe
Transmit
and Receive
Block
Diagrams
+ Receives read and write requests from the

software above the TL and creates request
packets for transmission to a destination via
the link layer

PCIe  Most transactions use a split transaction


technique
Transaction Layer (TL)  A request packet is sent out by a source
PCIe device which then waits for a
response called a completion packet

 TL messages and some write transactions


are posted transactions (meaning that no
response is expected)

 TL packet format supports 32-bit


memory addressing and extended 64-bit
memory addressing
+
The TL supports four address spaces:

 Memory  I/O
 The memory space includes  This address space is used for
system main memory and PCIe legacy PCI devices, with
I/O devices reserved address ranges used to
 Certain ranges of memory address legacy I/O devices
addresses map into I/O devices

 Configuration  Message
 This address space enables the  This address space is for control
TL to read/write configuration signals related to interrupts,
registers associated with I/O error handling, and power
devices management
PCIe TLP Transaction Types
+

PCIe
Protocol
Data
Unit
Format
+
TLP Memory Request Format
+
Data Link Layer

 Data link layer packets originate at the data link layer of a


transmitting device and terminate at the DLL of the device on
the other end of the link.
 There are three important groups of DLLPs
 Power management packets are used in managing power platform
budgeting.
 Flow control packets regulate the rate at which TLPs and DLLPs can be
transmitted across a link.
 The ACK and NAK packets are used in TLP processing.
+ Summary A Top-Level View of
Computer Function and
Interconnection
Chapter 3
 Point-to-point interconnect
 Computer components
 QPI physical layer
 Computer function
 QPI link layer
 Instruction fetch and execute
 QPI routing layer
 Interrupts
 QPI protocol layer
 I/O function
 Interconnection structures  PCI express
 Bus interconnection  PCI physical and logical
 Bus structure architecture
 Multiple bus hierarchies  PCIe physical layer
 Elements of bus design  PCIe transaction layer
 PCIe data link layer

You might also like