Documente Academic
Documente Profesional
Documente Cultură
• Hardwired program
– The result of the process of connecting the various components in the
desired configuration
Sequence of
Data arithmetic Results
and logic
functions
Instruction Instruction
codes interpreter
Control
signals
General-purpose
Data arithmetic Results
and logic
functions
I/O AR
Data
Execution
unit Data
I/O BR Data
Data
PC = Program counter
Buffers IR = Instruction register
MAR = Memory address register
MBR = Memory buffer register
I/O AR = Input/output address register
I/O BR = Input/output buffer register
Processor- Processor-
memory I/O
Data
Control
processing
0 1 15
S Magnitude
Multiple Multiple
operands results
(a) No
interrupts
I/O 4 I/O 5
Program Command END
User 1 2a 2b 3a 3b
WRITE WRITE WRITE
Program
(b) Interrupts,
short I/O wait
User 1 2 3
WRITE WRITE WRITE
Program
(c) Interrupts,
long I/O wait
i
Interrupt
occurs here i+1
Interrupts
Disabled
Check for
Fetch Next Execute
START Interrupt;
Instruction Instruction Interrupts Process Interrupt
Enabled
HALT
1 1
4 4
I/O operation
I/O operation;
processor waits 2a concurrent with
processor executing
5 5
2b
2
4
I/O operation
4 3a concurrent with
processor executing
I/O operation;
processor waits 5
5 3b
1 1
4 4
5
2
4
4
3 I/O operation
concurrent with
I/O operation; processor executing;
processor waits then processor
waits
5
5
Multiple Multiple
operands results
Return for
string or
Instruction complete, vector data
No
fetch next instruction interrupt Interrupt
check
Interrupt
Interrupt
Interrupt
handler Y
Interrupt
User program handler X
Interrupt
handler Y
15
0 t=
t =1
t = 25
t= t = 25 Disk
40 interrupt service routine
t=
35
Data N–1
External
Address M Ports Data
Internal
Data Interrupt
Signals
External
Data
Instructions Address
Control
Data CPU Signals
Interrupt Data
Signals
An I/O
module is
allowed to
exchange
Processor Processor data directly
reads an Processor reads data Processor with
instruction writes a unit from an I/O sends data memory
or a unit of of data to device via to the I/O without
data from memory an I/O device going
memory module through the
processor
using direct
memory
access
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
Bus
Typically consists of
Interconnection
multiple communication Computer systems contain a
lines number of different buses
that provide pathways
• Each line is capable of between components at
transmitting signals representing
binary 1 and binary 0 various levels of the
computer system hierarchy
System bus
• A bus that connects major The most common computer
computer components (processor,
memory, I/O) interconnection structures
are based on the use of one
or 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
destination of the data on the use of the data and address lines
data bus
– If the processor wishes to • Because the data and address lines
read a word of data from are shared by all components there
memory it puts the address must be a means of controlling their
of the desired word on the use
address lines • Control signals transmit both
• Width determines the maximum command and timing information
possible memory capacity of the among system modules
system
• Also used to address I/O ports • Timing signals indicate the validity
– The higher order bits are of data and address information
used to select a particular • Command signals specify
module on the bus and the operations to be performed
lower order bits select a
memory location or I/O port
within the module
CPU Memory Memory I/O I/O
Control lines
Data lines
I/O device
I/O Hub
DRAM
DRAM
Core Core
A B
DRAM
DRAM
Core Core
C D
I/O device
I/O device
I/O Hub
Routing Routing
Flits
Link Link
Rcv Clk
Transmission Lanes Reception Lanes
Fwd Clk
Rcv Clk
Gigabit PCIe
Memory
Ethernet
Chipset
PCIe–PCI PCIe
Memory
Bridge
PCIe
PCIe PCIe
Switch
PCIe PCIe
Physical Physical
• Memory • I/O
– The memory space includes – This address space is used
system main memory and for legacy PCI devices, with
PCIe I/O devices
– Certain ranges of memory
reserved address ranges
addresses map into I/O used to address legacy I/O
devices devices
• Configuration • Message
– This address space enables – This address space is for
the TL to read/write control signals related to
configuration registers interrupts, error handling,
associated with I/O devices and power management
PCIe TLP Transaction Types
Address Space TLP Type Purpose
Memory Read Request
Transfer data to or from a location in the system
Memory Memory Read Lock Request
memory map.
Memory Write Request
I/O Read Request Transfer data to or from a location in the system
I/O I/O Write Request memory map for legacy
I/O Write Request devices.
Config Type 0 Read Request
Config Type 0 Write Request Transfer data to or from a location in the
Configuration configuration
Config Type 1 Read Request space of a PCIe device.
Config Type 1 Write Request
Message Request
Message Provides in-band messaging and event reporting.
Message Request with Data
Completion
Memory, I/O, Completion with Data
Configuration
Returned for certain requests.
Completion Locked
Completion Locked with Data
Number
of octets
1 STP framing 1 Start
Appended by PL
2 Sequence number
DLLP
Created
by DLL
4
2 CRC
12 or 16 Header 1 End
0 or 4 ECRC
4 LCRC
1 STP framing