Upload
will-black
View
230
Download
0
Embed Size (px)
Citation preview
7/29/2019 Lec10 Register Transfer Logic
1/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 1
COMMUNICATION LOGIC REGISTER TRANSFER LOGIC
Complex logic system design, although well documented, caneasily bog down the process with the increase in the number ofvariables.
Modularization is necessary to keep the design at a manageablesize as well as maintain efficiency in the debugging, testing andvalidating process.
Synchronous design together with register/bus design is a way to
accomplish modularization.Synchronous logic provided the isolation needed for independentdesign of individual modules. As along as the system clock runssufficiently slow, timing errors can be avoided.
DataBu
s
Module
II
Register AModuleI
Register B
James A. Mynderse ME588 Register Transfer Logic 2
REGISTER
Registers are the basis for general processor design.
Registers isolate sections (modules) of the system. They allowchanges to be made at one section without affecting others.
A register can be thought of as a set of D flip-flops:
Three-state outputs
One D flip-flop represents one bit
N-bit register has N data signals and 2 to 3 control signals.
One controls reading
(often denote L for latch or load)
Can be AND with the master
clock to control data input. Second control is the output-enable
(OE) for the three-state output.
Level trigger. Output is connected
when it is TRUE.
Additional control can be added to
clear the register.
D0
D1
D2
Inputs Outputs
Output Enable
Load
Clock
7/29/2019 Lec10 Register Transfer Logic
2/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 3
DATA BUS AND DATA TRANSFER
Registers are interconnected through a bus (a set of wires.)
All the registers are connected to the same set of wires.
At any given time, only one register can have its output enabled.It will dictate the voltages on all the bus wires. Any number ofregisters can read the data on the bus.
3 step data transfer process: (data from register A to B)
1st Clock Tick: Assert output-enable (OE) on A to 1. After a certain
setup time, data is stable (ready) on the bus.
2nd Clock Tick: Assert input-enable/load (L)
on B to 1. Data on the bus is latched by B.
3rd Clock Tick: Set OE of A to 0 and
input-enable (L) of B to 0. Master Clock
OE (reg. A)
LOAD (reg. B)
Data (bus)
James A. Mynderse ME588 Register Transfer Logic 4
DATA TRANSFER
Practical clock rate: 10 300 MHz
Time needed for the 3 step data transfer: 10 300 nsec.
With proper timing of control signal changes vs clock edges, thetransfer can be accomplished in one clock period.
Assert both OE(reg. A) and LOAD(reg. B) at the same time.
Timing must be such that the output (data on the bus) must be
stable before it is latched.
Additional modules (logic units) attached to the bus provide theneeded processing capability.
7/29/2019 Lec10 Register Transfer Logic
3/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 5
PROCESSOR
Processor, in addition to attaching to the main bus, it can also be
directly attached to several registers.
Operates on the output of one or more registers.
Result can be latched to other registers.
Typical processor data transfer structure (clock is implied):
Da
taBus
Output Register Output Enable
Latch Input
Input Register Output Enable
Latch Input
Processor Output Enable
Latch Input
General
RegisterOutput Enable
Latch Input
I/O
RegisterOutput Enable
Latch Input
MemoryOutput Enable
Latch Input
James A. Mynderse ME588 Register Transfer Logic 6
CONTROL SIGNAL AND INSTRUCTIONS
All control signals of each individual modules are connected to acontrol unit.
The control unitgenerates the desired sequence of control signalsto produce the desired actions.
This structure can be generalized to the operation of and datatransfer between:
CPU, Memory, General Register, Instruction (Program) Counter, Memory
Address Register, Instruction Register, Stack Pointer, Arithmetic Unit, and
Input/Output Bus
Control signals are coded by instructions.
Instructions are taken from memory to the instruction register andthen decoded to the proper sequence of control signals.
Each register and processing unit has more than one controlsignals.
Each of these control signals are wired directly and the set of allcontrol signal is called a control word. (Lots of bits!)
7/29/2019 Lec10 Register Transfer Logic
4/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 7
MICROPROGRAM (MICROCODE)
Control unit can be designed as a state machine. Given certain
instruction input a desired control signal sequence in generated.
The instruction set is designed into (hard coded) into the control
unit.
Alternative design is to place the control word sequence in ROMor RAM Microcode(microprogram)
The control unit is still a state machine. However, instead of
generating the control sequence directly, it generate a sequence of
addresses to pick the correct control word from the microcoded
ROM or RAM.
Microcode can be changed to allow for processor customization.
It is difficult to design a microcoded instruction set.
There are few software tools for design and implementation.
James A. Mynderse ME588 Register Transfer Logic 8
INPUT/OUTPUT BUS
The bus, previously discussed, connecting the register/processoris internal to the processor. It contains only data. The controllines and address lines are themselves separate buses.
Input/Output (I/O) bus is for external (outside the processor)connections (or connections to external devices.)
All the information is on the same bus. No separate control andaddress bus.
The I/O bus carries: data, address, and control signals.
Many configurations are available:
Dedicated control bits, address bits and data bits.
Dedicated control bits, shared address/data bits.
Shared control/address/data bits sequential interpretation.
Device can be added or removed easily. Devices (I/O boards) caneven be plugged-in or unplugged while the system is running hot swapping.
7/29/2019 Lec10 Register Transfer Logic
5/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 9
I/O BUS INTERCHANGE
Typical sequence
Put address on bus - alerts target device
Assert control signal indicating intended operation (read/write).
Put data on bus to complete interaction.
Bus protocol can be synchronousor asynchronous:
Synchronous CLOCK will occupy one bit on the bus and all instruction
must be complete within one clock cycle.
Asynchronous No clock, uses handshake signals to indicate when
operations are complete. Handshake slows the interchange but allows
more flexibility.
Bus Mastering
Single-Master Bus One unit is the bus master, other unit can access the
bus only if the master voluntarily steps down, e.g. DMA.
Multi-Master Bus Several devices can arbitrarily access the bus.Additional circuitry needs to be added to adjudicate conflicts. These type
of bus is the basis for multi-processor computers.
James A. Mynderse ME588 Register Transfer Logic 10
I/O BUS INTERCHANGE
I/O Read Cycle I/O Write Cycle
Typical I/O Timing
7/29/2019 Lec10 Register Transfer Logic
6/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 11
INCREASE BANDWIDTH (THROUGHPUT)
Two ways to increase bus performance (data transfer rate):
Increase clock speed (make the flow faster)
Increase number of data bits (make the pipe bigger)
Clock speed increase can be expensive all associatedcomponents must be upgraded to run with faster clock.
It is often useful to move several pieces of data at the same time.
Example: Separate bus for instruction and data or multiple data
buses.
Architectures with several buses can produce substantial fasterperformance with no clock speed increase.
Digital signal processors often use multiple buses.
Multiple buses in DSP are specialized for use in digital filteringoperations.
James A. Mynderse ME588 Register Transfer Logic 12
MICROCOMPUTER BUSES
PC/XT
1.2 Mbyte/sec
8 data bits and 20 address bits
PC/AT (Industrial Standard Architecture, ISA)
5.3 Mbyte/sec
16 data bits and 24 address bits (additional 8 data and 4 address
bits are added with a second connector.)
4.77 MHz bus clock speed.
Limited multiple bus mastering.
Micro Channel (MCA)
Used in IBM PS/2s, first introduced in 1987. 20 Mbyte/sec
32 bit data and address path.
11 shared level interrupts.
No I/O port address, CPU assign I/O address base on information
stored in ROM of I/O device.
7/29/2019 Lec10 Register Transfer Logic
7/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 13
MICROCOMPUTER BUSES
Extended Industry Standard Architecture (EISA)
First introduced in 1988. 33 Mbyte/sec peak transfer rate, 32 bit data and address path.
Multiple bus masters, programmable level or edge triggered interrupt,
automatic board configuration.
Multibus I and II
Original introduced by Intel and used in SUN-1.
Multibus II has 32 bit multiplexed data and address path.
10 MHz synchronous bus clock speed, 40 Mbyte/sec in block transfer
mode to sequential addresses.
Bus mastership interrupt scheme -- request interrupt by sending message
to processor requesting interrupt.
NuBus
Used in Macintosh and Next computers.
40 Mbyte/sec (block transfer)
Multiplexed 32 bit data and address path.
One dedicated interrupt line per slot, first plug-n-play architecture.
James A. Mynderse ME588 Register Transfer Logic 14
MICROCOMPUTER BUSES
VME
Use in Sun 2 and Sun 3 systems.
40 Mbyte/sec transfer rate, 32 bit dedicated data and address path.
Asynchronous protocol, can mix processor of varying speed.
Conventional IRQ interrupt.
Q-Bus and VAXBI
Proprietary buses used in DEC computers.
Q-bus was evolved from DECs PDP-11 Unibus and is used in
LS-11 and MicroVAX computers.
VAXBI is a high performance multiplexed 32 bit data and address
path bus used in the larger VAX 8600-series machines.
Q-bus peaks at 2 Mbyte/sec where VAXBI peaks at 13.3
Mbyte/sec.
7/29/2019 Lec10 Register Transfer Logic
8/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 15
MICROCOMPUTER BUSES
PCI (Peripheral Component Interconnect)
First introduced in 1993 PCI 2.0
Replacing MCA and EISA
33.33 MHz clock with synchronous transfers
peak transfer rate of 133MB/s for 32-bit bus width
32 or 64 bit bus width
32-bit address space (4G bytes)
Extending to 266 MHz (PCI-X 2.0) with 2133 MB/s
Support bus mastering
Variations: Mini-PCI, Cardbus, PC/104-Plus,
PCI-Express (PCI-E or PCIe)
Established by Intel, IBM, HP and Dell in 2004 1-32 bits serial connection with software compatibility to parallel
PCI
James A. Mynderse ME588 Register Transfer Logic 16
MICROCOMPUTER BUSES
7/29/2019 Lec10 Register Transfer Logic
9/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 17
PARALLEL COMMUNICATION
Centronics (LPT printer port)
Developed in the Wang Lab in 1970s (spun off Centronics) as a
byte-wide unidirectional parallel port with handshaking.
Recently has been extended to bi-directional.
Newer IEEE-1284 (1994) standard enables the traditional
Centronics connection to behave almost like a bus, e.g. daisy-
chained parallel printer, scanner, removable drives, etc.
James A. Mynderse ME588 Register Transfer Logic 18
PARALLEL COMMUNICATION
Small Computer System Interface (SCSI)
Started with an 8-bit parallel cable interface with handshake and protocols
for handling multiple hosts and multiple peripherals.
Has both asynchronous and synchronous modes and defined software
protocols.
Original SCSI support data rate of 1.5 Mbyte/sec (asynchronous) or 4
Mbyte/sec (synchronous), with cable length 20 ft (single ended) or 80 ft
(differential).
Recent extension of SCSI, e.g. SCSI/Ultra and SCSI/UltraWide, have
increased the throughput.
IEEE-488 (HPIB or GPIB)
A byte-wide universal instrument interface with data rate of 1 Mbyte/sec. 15 instruments can be linked to a single bus cable for up to 20 m.
Any connected device can be a talker (source of data) and the remaining
device will be the listener (recipient of data). A controller (dictator) tells
everybody what to do.
7/29/2019 Lec10 Register Transfer Logic
10/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 19
PARALLEL COMMUNICATION
ATA (Advanced Technology Attachment)
Design by Western Digital in 1986
Integrated Drive Electronics (IDE) and Enhanced IED (EIDE)
40 and 80 (Ultra DMA/66, UDMA4) pin connector and cables
UDMA4 at 66 MB/s
Originally use 28-bit addressing (137 GB), extended to 48-bit
Less than 450 mm (18 inches) without signal booster
Largely replaced by sATA(serial)
PCMCIA (Personal Computer Memory Card InternationalAssociation)
Created in 1991
Original a 16-bit bus, Cardbus extend it to 32-bit PCI bus at 133 MB/s
Type I supports memory card, such as DRAM or flash memories Type II added support of other I/O devices
Replaced by ExpressCard (serial) in 2003
James A. Mynderse ME588 Register Transfer Logic 20
PERIPHERAL INTERFACING
Generally can be categorized into parallel and serialcommunication:
Serial Standards: RS232, RS422, RS423, RS485, USB, FireWire
Parallel Standards: Centronics, IDE, SCSI, IEEE-488 (HPIB,GPIB)
Serial Communication
Asynchronous bit transmission protocol with fixed bit rate.
A start bit and a stop bit (sometimes two) are attached to the ends
of each 8 bit data (character), forming a 10-bit group. Sender and
receiver use a fixed bit rate.
Start Sto
p
D0
(LSB)
D1 D2 D7orParity
D6
LOGIC ONE
LOGIC ZERO
7/29/2019 Lec10 Register Transfer Logic
11/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 21
SERIAL COMMUNICATION
RS232C/D (1969/1986)
Designed for connecting DTEs (Data Terminal Equipment) to DCEs (Data
Communication Equipment). A terminal always looks like a DTE and a
modem always looks like a DCE. PCs looks like a DTE with male
connectors, although almost all large computers are DCE.
A null modem (a cable that criss-crosses pins 2 and 3) is needed to
connect two similar devices.
James A. Mynderse ME588 Register Transfer Logic 22
Other Serial Standards
Modem (Modulator/Demodulator)
Converts bit-serial digital quantities into analog signals that can be sentover telephone lines or other transmission paths.
SERIAL COMMUNICATION
7/29/2019 Lec10 Register Transfer Logic
12/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 23
SERIAL COMMUNICATION
Null Modem Connector (cable)
Connecting two PCs through the serial port requires a null modem
connector or cable.
James A. Mynderse ME588 Register Transfer Logic 24
SERIAL COMMUNICATION
Serial ATA (sATA)
Created in 2003 to replace ATA or Parallel-ATA
SATA/150 1.5 GHz clock with 150 MB/s (1.2 gbps)
SATA/300 (rev 2) 3 Ghz clock with 300 MB/s (3 gbps)
NVIDIA nForce4 chipset in 2004
Also called Serial-ATA II (SATA II)
SATA/600 (rev 3) 600 MB/s (6 gpbs)
7 pin connection (3 GNDs, 2 pairs of TX/RX)
Separate power connection
eSATA (External SATA)
Standards published in 2004
2 meter cable length
7/29/2019 Lec10 Register Transfer Logic
13/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 25
IEEE 1394 (FIREWIRE)
Fire on wire high performance serial bus 1995
Supports higher (relative to USB) bandwidth digital audio/videodata at a lower cost than typical parallel buses
Current specification:
100 Mbps 4Q 1994 (fast Ethernet is at 100 Mbps)
200 Mbps 4Q 1995
400 Mbps 4Q 1996
3.2 Gbps 1394b (in draft)
Ten 15 fps audio/video channels may be carried by 400 Mbps
Cable distance limited
1394 15 meters
1394b 100 meters
James A. Mynderse ME588 Register Transfer Logic 26
UNIVERSAL SERIAL BUS (USB)
Define an external expansion bus for PCs, which makes addingperipherals to a PC that supports true plug-n-play functionality.
History
1993 Compaq, Intel, Microsoft, NEC/Digital
1994 Core Team: Compaq, Digital, PC Co, Intel, Microsoft, NEC, Nortel
1995 USB 1.0
1998 USB 1.1
2000 USB 2.0 (480 Mbps)
2008 USB 3.0 (4.8 Gbps)
Standard differential serial communication
High speed: 480 Mbps Full speed: 12 Mbps
Slow speed: 1.5 Mbps
Master (PC, Host Controller) Salve (Device) type protocol
Packet based data transfer Token + Data + Handshake packets
7/29/2019 Lec10 Register Transfer Logic
14/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 27
UNIVERSAL SERIAL BUS (USB)
G
W
BR
Outer Shield >65% Interwoven
Tinned Copper Braid
Polyvinyl Chloride (PVC) Jacket
Inner Shield AluminumMetallized Polyester
28 AWG Tinned Copper Drain Wire
Non Twisted Power Pair:
Red: VBUSBlack: GND
Twisted Signal Pair:
White: Data -
Green: Data +
James A. Mynderse ME588 Register Transfer Logic 28
LOCAL AREA NETWORK
Ethernet (IEEE 802.3)
10 Mbps, 100 Mbps, 1 Gbps, 10 Gbps (2008)
Data sent in packets up to 1 Kbyte+, with a preamble and error
checking.
Sending protocol:
Wait until no activity on network.
Begin sending data (message) packet.
While sending, check simultaneously for interference (collision).
As long as all is clear, continue to send packets.
If interference is detected, jam the network intentionally (so that
everybody will detect collision), then wait for a random period, and
try again.
7/29/2019 Lec10 Register Transfer Logic
15/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 29
LOCAL AREA NETWORK
Token-Ring (IEEE 802.5) Networks
4 Mbps and 16 Mbps, 1 Gbps (approved in 2001)
Any device that owns the token is free to send data (messages).
When the owner of the token is finished, the token is passed
around.
LocalTalk (AppleTalk)
The initial default hardware implementation used the Macintosh's
built-in RS-422 ports at 230.4 Kbps
3.6864 MHz clock was chosen (in part) to support the common
asynchronous baud rates up to 38.4 Kbps internal baud-rate
generator
James A. Mynderse ME588 Register Transfer Logic 30
WIRELESS LAN (IEEE 802.11)
Operating frequency
2.4 2.4835 GHz (interfere with 2.4GHz cordless phone)
IEEE 802.11 (1997) 1 and 2 Mbps raw data rate
IEEE 802.11b,e (1999, 2002) 5.5 and 11 Mbps raw data rate (5.9Mbps throughput)
Distance limited ~ 100 ft
IEEE 802.11g (2003) 54 Mbps raw data rate
IEEE 802.11a (1999) 54 Mbps raw data rate (~25 Mbps throughput)
Operating frequency: 5 GHz
IEEE 802.11n (expected by 2006)
40 MHz channels
540 Mbps throughput
7/29/2019 Lec10 Register Transfer Logic
16/16
3/5/20
James A. Mynderse ME588 Register Transfer Logic 31
WIRELESS LAN
WiMAX (Worldwide Interoperability for Microwave Access )
IEEE 802.16 (2004), 802.16e (2005)
Point-to-multipoint broadband wireless access
10 66 GHz (802.16a added 2 11 GHz)
50 km (31 miles) of linear service area, 3 to 5 miles (5 to 8
kilometers) of practical distance
Practical maximum data rates between 500 Kbps and 2 Mbps
Implementation in 2005
Los Angeles, New York, Chicago, Boston, Providence (Rhode
Island), San Francisco Towerstream
Seattle Sprint and Speakeasy.net
Dalian and Chengdu (China) are implementing pre-WiMAX
James A. Mynderse ME588 Register Transfer Logic 32
BLUETOOTH
Named after medieval King of Denmark, Harald "Bluetooth"Gormsson
Bluetooth special interest group (SIG)
Proprietary open wireless short distance protocol (using shortlength radio waves), creating personal area networks (PANs)
Originally conceived as a wireless alternative to RS-232
Connect several devices can achieve device synchronization
79 bands of 1 MHz width in the range 2402-2480 MHz
Potential interference with 802.11
1 Mbps (ver 1.2) and 3 Mbps (ver 2.0+EDR)
Range: 1 (class 3) to 100 (class 1) meters