The BUS The Central Communications Network Copyright © Curt Hill
What is it? Common feature on modern machines, since it facilitates expansion One of the first successful violations of the von Neumann machine model The PDP 11 was the first to use it extensively to my knowledge Copyright © Curt Hill
von Neumann Machines The CPU is the center of the universe It and it alone talks to the memory and all I/O devices Thus disk access occupies the CPU A channel is a co-processor that once given a program by the CPU may do Direct Memory Access –Common on machines of the 1960s
Copyright © Curt Hill Modern PCs The motherboard is a large board that is parallel to the largest flat surface in the machine Other cards plug into slots on this board The slots are the parallel lines of the bus A machine may have multiple busses
Copyright © Curt Hill Three kinds of lines: Data lines Address lines Control lines
Copyright © Curt Hill Address lines Address lines select the device and its sub-position This may include a memory address The memory address may also be treated as data
Copyright © Curt Hill Data lines Any kind of data appears on these: –Instructions –Data –Addresses that are used as data Typically the word size of the machine or small power of 2 larger
Copyright © Curt Hill Control lines These determine what the others are doing Timing lines are also present Some typical control lines: –Memory Write - the data on the data bus is stored in memory at the address on the address bus –Memory Read - place data on data bus
Copyright © Curt Hill More Control Lines I/O read and write Bus request - want to control bus Bus grant - receive control Clock Interrupt request Interrupt ACK
Copyright © Curt Hill Arbitration Someone has to control the bus so that two devices do not attempt to control it at once This is the function of the bus master There is only one the rest are slaves
Copyright © Curt Hill Example Suppose that the CPU wants a memory contents It requests the bus When it is available, CPU is granted it CPU writes on the address bus and data bus The memory sees that request and finds the memory needed Requests and gets the bus to write the data lines
Copyright © Curt Hill Bus standards PDP 11 was the first to use a bus It made it easy to add peripherals Cards now just plug into bus The motherboard usually contains the bus slots
Copyright © Curt Hill S100 The Altair (1976) used a bus called the S100 This gave rise to a variety of S100 machines and peripherals The Poly88 in display case is of this type However, certain bus lines were poorly defined or used in different ways
Copyright © Curt Hill IBM PC Original PC used Industry Standard Architecture bus IBM published all of the specifications This made it easy to produce peripherals for the machine Also made it easy to make compatibles
Copyright © Curt Hill Evolution The ISA eventually became too slow In PS/2s IBM moved to a different bus, one dominated by the MicroChannel This was a patented bus Any peripheral that used this bus had to pay a royalty to IBM Did not catch on They eventually returned to ISA
Copyright © Curt Hill EISA Seven or so competitors developed an extension of the ISA bus that was faster and more versatile –Extended ISA Put into public domain to standardize Now virtually every Intel based PC uses this type of bus
Copyright © Curt Hill Other buses There are often other buses other than EISA These may be bridged together The idea is to put similar traffics on a separate bus These include –Front Side –PCI –SCSI –USB
Copyright © Curt Hill Front Side Bus Bus between memory and CPU Should be very fast Removed from (E)ISA when clock speed became too high
PCI Peripheral Component Interchange Developed by Intel 64 or 32 bit Found on WinTel and Mac boxes Disk and the like are often PCI devices Copyright © Curt Hill
USB Universal Serial Bus A single interface for serial devices These may be relatively slow –Printers –Cameras High speed –Video capture
Copyright © Curt Hill Diagram