Architecture Flashcards Preview

Computer Science - Year 1 > Architecture > Flashcards

Flashcards in Architecture Deck (107):

What is a program?

Set of instructions for
-And controlling data


What is an integrated circuit?

-built from many transistors


What is computer organisation?

-How does a computer work
-Encompasses all physical aspects of computer system


What are the levels of computer organisation?

-component level (cpu, buses etc)
-sub-component level (ALU, registers etc
-functional level (inside ALU)
-logic (gates)
-circuit level
-physical implementation


What is computer architecture?

-How do I design a computer?
-focuses on structure and behaviour of a computer
-refers to the logical and abstract aspects of system
-combination of hardware and the instruction set arch (ISA)


What are some of the things included with computer architecture?

-instruction sets
-op codes
-memory addresses
-data types


What is the principle of equivalence of hardware and software

-Any task done by software can be done by hardware and vise-versa


At its most basic level what is a computer made up of? What is this known as?

-a processor to interpret and execute programs
-a memory to store both data and programs
-mechanism for transferring data to and from the outside world
-Alonzo churches Thesis, about potential. Can it be a computer?


What is the purpose of a computer clock?

-sends electrical pulses around computer ensuring data and instructions will be where they are meant to be when they are meant to be
-instructions per second is directly proportional to clock speed


What is the system bus?

-group of wires that moves data and instructions to various places in the computer
-responsible for all data movement internal to the computer


What is the local bus?

-high speed pathway which directly connects memory and processor
-bus speed is the bottleneck on many computer systems


What is SDRAM?

-Synchronised dynamic RAM
-much faster than normal memory as it can sync with processors bus


What is the south bridge?

-integrated circuit on the MB which connects slower I/O devices to the system bus


What do SATA, IDE and EIDE all have in common?

-All share main Systems bus with processor and the memory
-Bcoz SATA is a way to connect hard-drives to MB this means transfer speed from disk is also dependent on the speed of the system bus


What are ports?

-allow movement of data to and from devices external to a computer


What are serial and parallel ports? What has replaced them?

-Serial ports transfer data by sending a series of pulses across one or two data lines
-parallel uses at least 8 lines
-USB has replaced them on MB’s


What is PCI and PCIe

-Peripheral component interconnect
-allows connection of multiple peripheral devices
-like USB also supports plug and play
-replaced by PCIe
-PCIe also replaced AGP (advanced graphics port)


What is dot pitch?

-measure of resolution in CRT displays
-distance between pixel of one colour and the next closest pixel of the same colour
-smaller the dot pitch the longer the re-fresh rate and vise-versa


Difference between active and passive matrix technology?

-Active uses one transistor per pixel (better image)
-passive uses transistors that activate entire rows and columns (cheaper)


What is special about LCD’s?

-have native resolution meaning they were designed for a particular resolution


What’s the response time?

-LCD’s version of re-fresh rate
-measures time it takes pixel to switch colour


What is luminance?

-measure of the amount of light an LCD monitor emits
-average ranges from 200-300 cd/m2


What is the contrast ratio?

-measures difference in intensity between bright whites and dark blacks
-can be static and dynamic
-static = ratio to the brightest point on the monitor to the darkest point at a given instant in time
-dynamic = ratio to another image produced at a different time
-static is preferred


What is colour depth?

-number of colours that can be on the screen at any one time


What is the analytical engine?

-capable of add, jump branch
-read programs from cards
-had ALU, memory and I/O devices
-CPU had a fetch-execute-decode cycle
-Ada, contess of Lovelace suggested Babbage write a plan for how it calculated numbers = first computer program and Ada the first programmer


What were some other computers in the 1940’s?

-z3 in 1941 ran with electricity rather than mechanics, had ALU memory and CU
-colossus code breaker 1944 was technically a computer with enough re-jigging
-ENIAC used switches and was the first all-purpose electronic computer
-Manchester Mark I baby similar to ENIAC but ran in RAM rather than ROM. Used green CRT memory matrix


What was computing like in the 1950’s?

-first commercial computers
-UNIVAC capable of handling simple arithmetic on large data


What was computing like in the 1960’s?

-transistor computers (smaller and more reliable than vacuum)
-Moon landing
-1969 Apollo landing defined software engineering


What is a microchip?

-allowed for dozens of transistors to exist on a single small silicon chip that was smaller than a single transistor
-computers became faster, smaller and cheaper
-allowed for time sharing and multiprogramming


What was computing like in the 1970’s?

-intel 404 was first microprocessor with 2,250 transistors in 1971
-intel 8086 was first member of x86 family = ancestor of modern intel architectures


What was special about Xerox parc?

Research and dev company which gave us;
-laser printer
-VSLI (very large scale integration where more than 10k components were on a single chip)
-bitmap graphics


What happened to computers in the 1980’s?

-IBM’s PC’s were developed with open architecture (using off shelf software rather than proprietary)
-computer tech was cheaper and more available
-free software movement started
-PC’s were developed with cassettes and floppy drive


What happened to computers in the 1990’s?

-dominated by proprietary systems by a handful of American company’s
-everything was standardised which did allow for the custom PC market to start
-market shifted from programmers to IT/office applications and games


What happened to computers in the 2000’s and the 2010’s?

-2000’s we started to return to free software roots thanks to things such as Linux, Firefox and python
-2010’s parallel computation began


What are multi-core processors?

-processors with multiple CPU units
-can be done in two ways;
1=separate memory for each core
2=shared memory between cores


What are GPU’s?
What are distributed systems?

-parallel specialised processing units with dedicated onboard memory
-thousand, millions of PC’s together


What is Moore’s law?

-number of transistors per square inch double every 18 months


What is wrong with Moore’s law?

-since mid 2000’s transistors are increasing but clock rate is not increasing with it
-cost and laws of thermodynamics could be causing this change


What is Rocks law?

-states that the cost of capital equipment to build semi-conductors will double every 4 years
-cannot exist in unison with Moores law and therefore computers must shift to new tech


What may happen to computer tech in the future?

-Quantum computing and hyper computing could become mainstream
-better transistor tech could be developed with 3D arrangement or graphene


How is computer organisation thought as?

-series of hierarchical levels each with a specific function
-levels 6-0


What are the levels of computer organisation

6 = user level (programs)
5 = HLL’s
4 = Assembly lang
3 = System software (OS and library code)
2 = Machine (Instruction set arch and machine code)
1 = Control (CU makes sure instructions are decoded and executed properly and that data is moved where it should be when it should be. Interprets machine instructions passed from level 2)
0 = Digital logic (physical components, gates and wires)


What are the two types of CU?

-signals come from blocks of digital logic components
-signals direct all data and instruction traffic to appropriate part of system
-very fast but hard to modify
-program written in LLL and then implemented by hardware
-instructions from level 2 passed to it, interprets instructions by activating hardware suited to execute it
-one machine instructions = many microcode instructions
-slower but easier to modify


What are the 3 basic principles of Von-Neumann architecture?

1. 3 hardware systems which consist of CPU (ALU, PC, registers and CU), memory, I/O
2. Capacity to carry out sequential instruction processing
3. Single path between memory and CU of the CPU causing alternation of execution cycles (von Neumann bottleneck)


What are the four steps in the fetch-execute-decode cycle?

1. CU fetches instructions from memory by looking at address stored in PC
2. Instruction is decoded
3. Any data needed for instruction is fetched and placed into registers
4. ALU executes Instruction and places results in registers or memory


What are non-von architectures?

-those which do not stores programs and data in memory and which do not execute instructions linearly


What is parallel processing?

-refers to a collection of different architectures; from multiple separate computers working together, to multiple processors sharing memory, to multiple integrated cores
-parallel machines help solve bottleneck


What is multi-threading?

-programs are divided up into threads (mini-processes)
-eg; A web browser is a multithread; one thread can download the text, while each image is downloaded and controlled by a separate thread
-if an app is multithreaded separate threads can run in parallel on different units


What is Amdahls law?

-states that the performance enhancement possible with a given improvement is limited by the amount the improved feature is used


What is base and range?

-base is the number of different digits
-adding digits increases the range of represented values
-N digit number can represent b^n values in range [0,((b^n)-1)]


How do you convert from decimal to any base value?

1) Divide decimal to be converted by value of new base
2) Take value and divide this by base number again. Take remainder of first calculation (even 0) and set this aside
3) Repeat until result is 0
4) Binary value is remainder in reverse order from which they were found


How do you convert from base value - decimal?

1) Determine the column (positional) value of each digit (this depends on the position of the digit and the base of the number system)
2) Multiply the obtained column values (in step 1) by the digits in the corresponding columns
3) Sum the products calculated in step 2. The total is the equivalent value in decimal


What is a word?

-A word is a collection of bits usually matching CPU type but not always (eg; 16 bits used in 16 bit CPU’s)
-natural unit for CPU


3 ways to represent negative binary numbers?

-sign and mag
-ones comp
-twos comp


Difference between natural and integer numbers?

-Natural numbers are unsigned so 0,1,2,3
-integer numbers are signed so are the whole numbers plus their negative inverse’s


How do computers process real numbers?

-approximate them with floating point representations


What are Turing numbers?

-countable subset of classical real numbers
-whose nth digit can be obtained by a finite program


What is a BCD?

-binary coded decimal is very common in electronics
-encodes each digit of a decimal number into binary 4 bit form
-eg; 146 becomes 3 4 bit binary values


What is packed BCD?

-most computers store 8 bits not 4 therefore this is used
-stores 2 bits per Byte
-able to store signed values with sign at end


What is zoned decimal format?

-stores a decimal digit in the lower-order nibble of each byte
-same as BCD but has a pattern for padding the high order nibble
-can use EBCDIC format which requires zone to all be ones or ASCII format which requires zone to be 0011
-both allow for signed values and expect the sign to be stored in the high order nibble of the LSByte


Also remember ASCII, Unicode, bitmap images



1) How are images compressed?
2) How is audio compressed?

1) using wavelets
2) removing un-hearable frequencies


What are multimedia streams?

-A set of related data substreams, each carrying one particular continuous medium, forms a data stream.


Learn logic laws (distributive etc)



What is special about NAND and NOR gates?

-universal gates which can be used to build any logic function unlike AND and OR
-easier to build


What is a semi-conductor?

-element which nearly conducts
-conducts if small changes made


What is doping?

-mix in tiny nearby elements, when these two in-balanced lattices meet electrons will want to transfer between them
-this creates an electric charge where the lattices meet


What is a diode?

-electric version of a water valve
-electrons cannot go through negative part of lattice
-they can accelerate through positive parts though


What is a transistor made up of?

-two 2 does in a row and a switch
-uses diode chemical & electrical forces and injected current to upset the balance allowing flow of current
-enable conduction


How are chips made?

-require 3D printing of wires and transistors
-masks needed too mould the chips
-300 steps involved with making a chip


Half and full adders



What do full adders do?

-allow us to add single column in binary addition
-multiple full adders together can calculate a whole sum


Bit shifting



What is a decoder?

-Has n input lines that determine which one of the 2^n output lines is selected
-used to decode CPU instructions (assembly commands, pass signals to ALU/extension circuits)
-combined with adders to create more complex circuits (eg; ALU)


What is combinatorial digital logic?

-circuits combined to create bigger ones
-output depends on input
-good for signal routing
-good for maths
-cant store data and therefore cannot build church computer from them alone


What is feedback?

-Connect a gates output to its input
-used to retain signal value
-done wit use of time from the clock


What do sequential logic circuits require?

-state changes occur in sequence and are controlled by clocks
-almost all gates have additional clock input written as “clk” or “c” sometimes not written on diagram at alll


What are flip flop circuits?
What are the types?
What is a register?

-you know
-D-type, J-K, S-R
-array of flip-flops used to write values, stop clock and read


What makes up the RAM?

-decoder, registers and clock switch


What is sequential digital logic?

-previous values of the state influence the current value
-state values can be retained using feedback
-events (state changes) occur in sequence
-require synchronisation
-can implement memory
-foundation for modern computers


What was the 6502 chip?

-core of many 80’s systems such as NES and Apple II
-3000 transistors
-still manufactured today and used


What happens in the fetch stage?

-PC points towards address of current instruction
-IR then takes instruction itself


What happens in decode part of a cycle?

-covert opcode into switching on some circuit


What happens in the execute part of the cycle?

-connect all input registers to ALU
-and select ALU command switch
-and connect ALU to output register
-program counter is incremented by 1 unless execution of command requires another instruction


What is the CU?

-co-ordinates activities of CPU
-instruction fetching/decoding
-execution management
-driven by clock


What is the ALU?

-AL operations
-shift operations
-input data and operation type
-output result and operation and status (carry, overflow etc)


What are registers?

-fast general purpose memory stores
-width of registers determines architecture
-pc, IR etc etc
-use clock to write values and stop clock to read them


What does an instruction need?

-clear indication of what the CPU must do (maths, movement of data etc) and where the data involved for the operations are located
-needs to enable fast implementations
-has an opcode (instruction itself) and operands (data associated with instruction)


What type of registers do some systems have?

-only accumulator
-no need to specify all operands
-less complicated as you do not need additional instructions telling the computer which register the data is coming from or going to
-it is implied everything happens in acc


What is MARIE

-acc only architecture
-16 bit instructions with 4 for opcode and 12 for operand
-simplified decimal I/O registers (no ASCII, binary)


Assembly and assemblers



What is the difference between conditional and unconditional branching?

-unconditional = Jump to specified location eg; GOTO in c++
-conditional = jump to location if a specific condition has occurred
-implemented by control unit tests of things such as user register and accumulator values
-allows for implementation of IF and FOR


What is a subroutine?

-self contained piece of code which can be called from the main program many times
-procedure, function, method


What is the return address?

-similar to jumps but allows the cpu to know where to jump back to so it can carry on from where it was before the call
-address is current value of the PC
-may be stored at an agreed location between caller and callee (limits recursions) or on the stack (allows recursion, most common approach)


What type of operations would trigger an interrupt?
How are interrupts implemented?

-Exception handling and operating system functions (data delivery and time sharing)
-as physical wires into CPU (IRQ lines) and instructions which set addresses to JUMP to IRQ activation


What is an instruction set?

-complete collection of instructions understandable by CPU
-written in machine code, represented by assembly codes
-depend on data types, instruction types, addressing modes and instruction format


What are the types of instructions?

-processor - memory
-processor - I/O devices
-data processing (ALU operations on data)
-control (change flow of execution, stop the program etc)


What is a floating point instruction?

-part of the CPU
-implemented using digital logic
-similar ideas to adders for ALU but bigger
-dedicated FP registers and instructions


What are some of the problems with pipelining?

-read after write, write after write, write after read
-simultaneous access to memory or to CPU components


How do we solve pipelining problems?

-avoid touching the same things in nearby instructions with code
-bubbling; inserting operations, NOPs, to delay things and avoid hazards
-eager execution; execute both possible branches simultaneously and kill one when we know which is taken
-branch prediction


What are branch predictors?

-assume branch is taken
-most branches are taken, because most branches arise from loops and loops tend to loop many times before ending
-Dynamic approaches keep a log of what was done here last time and use probabilities


What is operand forwarding?

-letting pipeline stages access intermediate results in-between other stages to see forwards in time
-requires lots of extra digital logic circuits


What is out of order execution?

-swapping of instructions to reduce hazards and stalls but not effect the change to the result



-hardware emphasis, multi clock complex instructions, small code sizes
-software emphasis, single clock reduced instructions, large code sizes


What are CISC processors

-very expensive to fabricate chips, test and remove hardware bugs
-updatable micrograms which use very simple commands
-Goal is to complete task in as few lines as possible
-length of code is short with little RAM required, complier has to little work to translate HLL into assembly


What is RISC?

-use simple instructions that can be executed within one clock cycle
-smaller instruction set
-less silicon = lower power
-smaller size
-typically hardwired control
-more RAM needed and complier needs to perform more work


Advantages of RISC?

-each instructions requires only one clock cycle
-all instructions executed in equal times
-easier to develop
-complier writing is simpler
-smaller size, lower power = dominant for phones