Computer Organization and Architecture MIDTERM
Multiplexor (MUX)
a component that connects a number of inputs to a single output. 4 input to 1 output
Full Adder
adder which adds three inputs and produces two outputs. The first two inputs are A and B and the third input is an input carry as C-IN. The output carry is designated as C-OUT and the normal output is designated as S which is SUM.
Encoder
translates a set of inputs into binary encoding and can be thought of as the converse of a decoder. priority encoder imposes an order on the inputs.
Decoder
translates logical encoding into spatial location. Exactly 1 output is high at any time. Enable included for override to make all other inputs turn off. Can be equivalent to DEMUX with input of 1 to the Enable. One use is to translate memory addresses into phsyical locations
Implement truth table for Multiplexor
yikes
What are the Seven Levels of Computer Design/Organization?
(Ascending order: lowest level to highest level) 1. Electronic Layer - transistors, capacitors, wires 2. Logical Layer - Gates: AND, OR, NOT, NAND, NOR 3. Register Layer - Multiplexors, Full - Adders, Encoders, Decoders, Flip-Flops, Counters 4. Processor Layer - Memory, CPU 5. Hardware Layer 6. Operating System Layer 7. Translation Layer
How are NAND and NOR logically complete?
* NOT gate from NAND: Join both inputs of NAND together * AND gate from NAND: NAND a NAND * OR gate from NAND: NAND two single input tied NANDs * NOR gate from NAND: NAND the NAND OR gate
What are the voltage ranges for binary 1 and 0?
1 = ~+5 V (high) 2 = 0 V (low)
Differences between Combinational and Sequential circuits/logic:
1. Combinational circuits are time independent and require no previous inputs whereas Sequential circuits require prior inputs and are time dependent 2. Combinational circuit building blocks are primarily logic gates. Sequential circuit building blocks are primarily flip-flops 3. Combinational logic: FAST. Sequential logic: SLOW 4. Combinational logic does NOT store memory of states. Sequential logic DOES
Why is Charles Babbage significant to the history of computing?
1. He is considered the father of general purpose computing. 2. Invented the Difference Engine in 1822 3. Invented the Analytical Engine in 1837
What was significant about the 1930's?
1930's marked the first major steps towards the general purpose computer with the relay computer.
What is a Sequential Circuit?
Circuits DEPENDENT on clock cycles and DEPENDS on present as well as past inputs to generate an output
Demultiplexor (DEMUX)
Converse of multiplexor. 1 input to 4 outputs
2nd Generation 1959-1964: Key Points
Era of: Discrete Transistors Transistor - invented in 1948 by John Bardeen, Walter Brattair, and William Shockley of Bell Labs Components/Technologies: * Floating Point * Indexing Hardware * Transistors High Level Languages invented: * FORTRAN - formula translation * COBOL - common business oriented language * Algol * APL
4th Generation 1975-NOW: Key Points
Era of: Microcomputers (what we use today) VLSI (Very Large Scale Integration) - 10,000+ transistors / chip Signficant Companies: * Intel * TI - Texas Instruments * DEC - Digital Equipment corporation * Microsoft * Apple * Lotus Significant Technologies: * Microprocessors - personal computers + Motorola 6800 + Intel 8086 - IBM PC + Radio Shack TRS/80 + Apple II + Heathkit + IBM 9030 * RISC architecture - reduced instruction set computer * WWW invented * Email, word-processing, video
3rd Generation 1964-1974: Key Points
Era of: Small & Medium Scale Integrated Circuits Integrated Circuits - invented by Jack Kilby SSI (Small Scale Integration) - 10-100 transistors / chip MSI (Medium Scale Integration) - 100-1,000 transistors / chip LSI (Large Scale Integration) - 1,000-10,000 transistors / chip Significant components/technologies: * Semiconductor Memory * IBM 360/370 System * "Mainframe" Machines * Time-sharing Multiuser Operating Systems * Magnetic Drums * Disk Drives * Virtual memory * "Minicomputers" + PDD-11 + IBM 1130
1st Generation 1946-1959: Key Points
Era of: Vacuum Tubes, Relays, and Mercury Delay lines ENIAC - designed by Presper Eckert and John Mauchly * vacuum tubes * electromagnetic relays * plug cords * switches Stored Program Concept - John von Neuman et al. * EDVAC * ENIAC John von Neuman conceived idea of: * Input * Output * Memory * ALU - Arithmetic Logic Unit * Control Unit * Single instruction-set Computer NO High Level Languages NO assemblers Use of front panel Significant companies in 1950's: * IBM * RCA * Honeywell * UNIVAC More components/technologies used in 1st Gen: * Vacuum Tubes * Relays * Mercurial Delay Lines * Core Memories * Core Dump * Magnetic Tape * Magnetic Drums * Paper Tape * Card Punches & Readers * Computer Graphics * External Interrupts * Microcoding/ Microcoded Control Unit
Truth Tables Function Rule
For n variables, there are 2^(n) possible functions
Why is George Stibitz significant to the history of computing?
He conceived the relay-based binary full-adder
Why is Claude Shannon significant to the history of computing?
He is considered the Father of Information and Switching Theory
Why is John Napior significant to the history of computing?
In the early 1600's he: 1. Invented logarithms 2. Invented Napior's bones (tool for multiplying)
What was the purpose of the Analytical Engine invented in 1837?
It was conceptually the world's first general purpose computer. Developed by Charles Babbage alongside Countess Ada Lovelace - world's first computer programmer. Significant Components: 1. Store = Memory 2. Mill = Processor/ALU 3. Punch cards for I/O operations 4. Output via printer
What was the purpose of the Difference Engine invented in 1822?
It was designed the compute tables of logarithms, squares, square roots, trig functions, etc. Its logic was based on the method of finite differences Had the ability to print results in a tabular form
K-maps
Karnaugh Maps Know them
Sequential Logic: Flip Flops
Know block symbol, truth tables, state transition diagram, and state transition tables for: * S-R Flip-Flop (be able to make with NOR) * J-K Flip Flop * T Flip - Flop * D Flip - Flop
Transistors:
Know how to read a transistor diagram/image Know: Inverters, NAND & NOR Good luck :/
Logic Gates:
Know these: AND, OR, Inverter, Buffer, NAND, NOR, XOR, XNOR 3 computationally complete sets: {AND, OR, NOR} {NAND} {NOR} Symbols: * Open 'O' = complement / invert * 'O' with crosshairs = XOR * 'O' with dot in middle = XNOR
Finite State Machines (FSM)
Know: 1. State Transition Diagram 2. State Transition Table 3. Bit Sequence Recognizer
Why is George Boole significant to the history of computing?
Lived 1815-1864 Created the Boolean Algebra we recognize as the binary 1's and 0's.
SOP and POS
Sum of Products & Product of Sums know them
Explain DeMorgan's theorem
The complement of the product of all the terms is equal to the sum of the complement of each term. https://www.allaboutcircuits.com/textbook/digital/chpt-7/demorgans-theorems/ Seriously check this out though. It makes SO much sense explained like this. Essentially, you "break" a bar in an expression. Break NAND into negative OR, or NOR to negative AND.
Organization (Computer)
The nature of the operational units that implement the architectural specifications
Architecture (Computer)
The visible characteristics of a system as seen by a person or program that creates code capable of running on the machine
What is a Combinational Circuit?
Time INDEPENDENT circuits that DO NOT depend on previous inputs to generate an output
Who was Countess Ada Lovelace and why is she significant to the history of computing?
World's first Computer Programmer
Implement truth table for Decoder
Y I K E S
Implement truth table for Multiplexor with folding
bigger yikes
Programmable Logic Array (PLA)
component that consists of a customizable AND matrix followed by a customizable OR matrix.