Computer Architecture

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/403

flashcard set

Earn XP

Description and Tags

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

404 Terms

1
New cards
Register File
A state element that consists of a set of registers that can be read and written by supplying a register number to be accessed.
2
New cards


3
New cards
provides 1024 scalar 32-bit registers for up to 64 threads.

4
New cards
machine language
The language made up of binary-coded instructions that is used directly by the computer
5
New cards
system software
The set of programs that enables a computer's hardware devices and application software to work together; it includes the operating system and utility programs.
6
New cards
operating system
(computer science) software that controls the execution of computer programs and may provide various services
7
New cards
Assembly Language
Programming language that has the same structure and set of commands as machine languages but allows programmers to use symbolic representations of numeric machine code.
8
New cards
IBM 360/91
Introduced many new concepts, including dynamic detection of memory hazards, generalized forwarding, and reservation stations. Tomasulo's algorithm
9
New cards


10
New cards
The internal organization of the 360/91 shares many features with the Pentium III and Pentium 4, as well as with several other microprocessors. One major difference was that there was no branch prediction in the 360/91 and hence no speculation. Another major difference was that there was no commit unit, so once the instructions finished execution, they updated the registers.

11
New cards
Dynamic Random Access Memory (DRAM)
Memory built as an integrated circuit; it provides random access to any location. Access times are 50 nanoseconds and cost per gigabyte in 2012 was $5 to $10.
12
New cards


13
New cards
Multiple DRAMs are used together to contain the instructions and data of a program. In contrast to sequential access memories, such as magnetic tapes, the RAM portion of the term DRAM means that memory accesses take basically the same amount of time no matter what portion of the memory is read.

14
New cards


15
New cards
Modern DRAMS consist of rows in each bank

16
New cards
frame buffering
A portion of RAM containing a bitmap that drives a video display. It is a memory buffer containing a complete frame of data.
17
New cards


18
New cards
The image to be represented onscreen is stored in the frame buffer, and the bit pattern per pixel is read out to the graphics display at the refresh rate. The animation below shows a frame buffer with a simplified design of just 4 bits per pixel.

19
New cards
Datapath
The component of the processor that performs arithmetic operations
20
New cards
Control
The component of the processor that commands the datapath, memory, and I/O devices according to the instructions of the program.
21
New cards
Integrated circuit
Also called a chip. A device combining dozens to millions of transistors.
22
New cards
Central processor unit (CPU)
Also called processor. The active part of the computer, which contains the datapath and control and which adds numbers, tests numbers, signals I/O devices to activate, and so on.
23
New cards
Static random access memory (SRAM)
Also memory built as an integrated circuit, but faster and less dense than DRAM.
24
New cards
Instruction set architecture
Also called architecture. An abstract interface between the hardware and the lowest-level software that encompasses all the information necessary to write a machine language program that will run correctly, including instructions, registers, memory access, I/O, and so on.
25
New cards
Application binary interface (ABI)
The user portion of the instruction set plus the operating system interfaces used by application programmers. It defines a standard for binary portability across computers.
26
New cards
Volatile memory
Storage, such as DRAM, that retains data only if it is receiving power.
27
New cards
Nonvolatile Memory
A form of memory that retains data even in the absence of a power source and that is used to store programs between runs. A DVD disk is nonvolatile.
28
New cards
Magnetic disk
Also called hard disk. A form of nonvolatile secondary memory composed of rotating platters coated with a magnetic recording material. Because they are rotating mechanical devices, access times are about 5 to 20 milliseconds and cost per gigabyte in 2012 was $0.05 to $0.10
29
New cards
Main memory
Also called primary memory. Memory used to hold programs while they are running; typically consists of DRAM in today's computers.
30
New cards
Secondary memory
Nonvolatile memory used to store programs and data between runs; typically consists of flash memory in PMDs and magnetic disks in servers.
31
New cards
Flash memory
A nonvolatile semiconductor memory. It is cheaper and slower than DRAM but more expensive per bit and faster than magnetic disks. Access times are about 5 to 50 microseconds and cost per gigabyte in 2012 was $0.75 to $1.00.
32
New cards
Single Instruction Single Data (SISD)
A uniprocessor
33
New cards
Multiple Instruction Multiple Data (MIMD)
A multiprocessor.
34
New cards
Single Program, Multiple Data Streams (SPMD)
The conventional MIMD programming model, where a single program runs across all processors.
35
New cards
Single Instruction Stream, Multiple Data Streams (SIMD)
The same instruction is applied to many data streams, as in a vector processor.
36
New cards
Data-level parallelism
Parallelism achieved by performing the same operation on independent data
37
New cards
vector-based code

38
New cards
conventional code

39
New cards
LEGv8
assembly instructions
40
New cards
multimedia extensions (MMX)
An expanded set of instructions supported by a processor that provides multimedia-specific functions.
41
New cards
data hazard (pipeline data hazard)
When a planned instruction cannot execute in the proper clock cycle because data that is needed to execute the instruction are not yet available.
42
New cards
forwarding (bypassing)
A method of resolving a data hazard by retrieving the missing data element from internal buffers rather than waiting for it to arrive from programmer-visible registers or memory
43
New cards
Structural hazard
When a planned instruction cannot execute in the proper clock cycle because the hardware does not support the combination of instructions that are set to execute.
44
New cards
Pipelining
Technique that allows the CPU to work on more than one instruction at a time
45
New cards


46
New cards
Formula

47
New cards
total process time \= [longest task * (total load -1)] + total load time

48
New cards
R-format ALU operations
Requires register file and the ALU.
49
New cards
Program Counter (PC)
The register that contains the address of the next instruction to be executed
50
New cards
output
The results of the operation of any system.
51
New cards
temporal locality
The principle stating that if a data location is referenced then it will tend to be referenced again soon.
52
New cards
spatial locality
The principle stating that if a data location is referenced, data locations with nearby addresses will tend to be referenced soon.
53
New cards
Memory hierarchy
A structure that uses multiple levels of memories; as the distance from the processor increases, the size of the memories and the access time both increase.
54
New cards
Block (or line)
The minimum unit of information that can be either present or not present in a cache.
55
New cards
Hit rate
The fraction of memory accesses found in a level of the memory hierarchy.
56
New cards
Miss rate
The fraction of memory accesses not found in a level of the memory hierarchy
57
New cards
miss penalty
The time required to fetch a block into a level of the memory hierarchy from the lower level, including the time to access the block, transmit it from one level to the other, insert it in the level that experienced the miss, and then pass the block to the requestor.
58
New cards
Hit time
The time required to access a level of the memory hierarchy, including the time needed to determine whether the access is a hit or a miss.
59
New cards
Parallelization
consist of dividing a program into separate components that run in parallel on individual computers in the cluster
60
New cards
superscalar
Technique primarily associated with hardware.
61
New cards


62
New cards
Functional units (ALU, Floating Point Unit, Load/Store Unit) are duplicated in the pipeline of a superscalar processor which allows the hardware to issue multiple instructions to each unit simultaneously.

63
New cards
ARM architecture
can support 16-bit
64
New cards
Amdahl's Law
A formula used to find the maximum improvement possible by improving a particular part of a system. In parallel computing, Amdahl's law is mainly used to predict the theoretical maximum speedup for program processing using multiple processors
65
New cards
multiprocessor
A term used to refer to a computer with more than one CPU.
66
New cards
Uniform Memory Access (UMA)
A multiprocessor in which latency to any word in main memory is about the same no matter which processor requests the access.
67
New cards
Non-Uniform Memory Access (NUMA)
Varying system memory access times, because of system hardware.
68
New cards
loop unrolling
A technique to get more performance from loops that access arrays, in which multiple copies of the loop body are made and instructions from different iterations are scheduled together.
69
New cards
Blocking
a failure to retrieve information that is available in memory even though you are trying to produce it
70
New cards


71
New cards
can help reduce cache miss rate

72
New cards
Set Associative Cache
A cache that has a fixed number of locations (at least two) where each block can be placed.
73
New cards
RAID 0 (Disk Striping)
Disk Striping. Disk striping requires at least two drives. It does not provide redundancy to data. If any one drive fails, all data is lost.
74
New cards
RAID 1 (mirroring)
Two drives are used in unison, and all data is written to both drives, giving you a mirror or extra copy of the data, in the case that one drive fails
75
New cards
RAID 2
Bit-level striping with dedicated Hamming-code parity. OBSOLETE.
76
New cards
RAID 3
Byte-level striping with dedicated parity. OBSOLETE, replaced with RAID 5.
77
New cards
RAID 4
Block-level striping with dedicated parity. Not often used, replaced with RAID 5.
78
New cards
RAID 5
Disk striping with parity. RAID-5 uses three or more disks and provides fault tolerance.
79
New cards
RAID 6
Disk striping with parity. RAID-6 uses four or more disks and provides fault tolerance. It can survive the failure of two drives.
80
New cards
silicon crystal ingot
A rod composed of a silicon crystal that is between 8 and 12 inches in diameter and about 12 to 24 inches long.
81
New cards
wafer
A slice from a silicon ingot no more than 0.1 inches thick, used to create chips.
82
New cards
Instruction Set Architecture (ISA)
Also called architecture. An abstract interface between the hardware and the lowest-level software that encompasses all the information necessary to write a machine language program that will run correctly, including instructions, registers, memory access, I/O, and so on
83
New cards
Application Binary Interface (ABI)
The user portion of the instruction set plus the operating system interfaces used by application programmers. It defines a standard for binary portability across computers.
84
New cards
Transistor
An on/off switch controlled by an electric signal
85
New cards
very large-scale integrated (VLSI) circuit
A device containing hundreds of thousands to millions of transistors.
86
New cards
silicon
A natural element that is a semiconductor
87
New cards


88
New cards
1. Excellent conductors of electricity (using either microscopic copper or aluminum wire)

89
New cards


90
New cards
2. Excellent insulators from electricity (like plastic sheathing or glass)

91
New cards


92
New cards
3. Areas that can conduct or insulate under special conditions (as a switch)

93
New cards
Semiconductor
A substance that can conduct electricity under some conditions
94
New cards
Die
The individual rectangular sections that are cut from a wafer, more informally known as chips.
95
New cards
complementary metal-oxide semiconductor (CMOS)
Dominant technology for integrated circuits
96
New cards
LEGv8
Assembly Language
97
New cards
LEGv8 word
A natural unit of access in a computer, usually a group of 32 bits
98
New cards
LEGv8 doubleword
Another natural unit of access in a computer, usually a group of 64 bits (8 bytes); corresponds to the size of a register in the LEGv8 architecture
99
New cards
LEGv8 register
64 bits wide
100
New cards