Computer Architecturecomputer architecture is a machine-level programmer's view of the properties of computers, that is, conceptual structure and functional characteristics. The essence of the concept of classical computer architecture is the determination of the software and hardware interface in the computer system, and the function of the hardware and firmware under the interface. The concept of a generalized (modern) computer system, which includes the concept category of the Classical Machine architecture (instruction set structure), also includes the computer composition and the computer realization content. Catalogue
- Functional properties of Computer architecture
- Classification of computer architectures
- Fundamentals of Computer Architecture
- Challenges facing computer architecture research
Functional properties of computer architecture
Data representation (the type of data that the hardware can directly identify and process);
Addressing rules (including minimum addressing units, addressing methods, and their representations);
Register definition (including the definition, quantity and usage of various registers);
Instruction set (including the operation type and format of machine instruction, sequencing and control mechanism between instructions, etc.);
Interrupt system (the type of interrupt and the function of the interrupt response hardware, etc.);
Definition and switching of the working state of the machine (e.g., pipe and head);
Storage System (main memory capacity, maximum storage capacity available to programmers, etc.);
Information protection (Protection methods and hardware support for information protection);
I/O architecture (including the I/O connection mode, the way and format of data transfer between processor/memory and I/O devices, and the status of I/O operation);
Classification of computer architectures
(1) Flynn classification
In 1966, Michael.j.flynn proposed the classification of computer systems based on the characteristics of instruction flow, data flow and multi-ploidy (multiplicity), as defined below.
Instruction Flow: Sequence of instructions executed by the machine
Data flow: A sequence of data called by the instruction stream, including input data and intermediate results
Multiple: The maximum number of instructions or data that are simultaneously in the same execution phase on a system performance bottleneck.
Flynn divides the computer system into 4 classes according to different instruction flow-data flow organization methods.
1. Single instruction flow single data stream (SINGLEINSTRUCTIONSTREAMSINGLEDATASTREAM,SISD)
SISD is actually a traditional sequential execution of a single-processor computer whose instruction components decode only one instruction at a time and assign data to only one operating part.
2. Single instruction stream multi-data stream (SINGLEINSTRUCTIONSTREAMMULTIPLEDATASTREAM,SIMD)
SIMD is represented by parallel processor, structure, parallel processing machine consists of multiple repeating processing unit pu1~pun, controlled by a single instruction part, and assigning different data for each of them according to the requirement of the same instruction flow.
3. Multi-instruction flow single data stream (MULTIPLEINSTRUCTIONSTREAMSINGLEDATASTREAM,MISD)
MISD structure, it has n processing units, according to the requirements of the n different instructions on the same data stream and its intermediate results are processed differently. The output of one processing unit is also used as input to another processing unit.
4, multi-instruction stream multi-data stream (MULTIPLEINSTRUCTIONSTREAMMULTIPLEDATASTREAM,MIMD)
MIMD structure, it refers to the implementation of operations, tasks, directives and other levels of comprehensive parallel multi-machine system, multiprocessor belongs to MIMD.
(2) Feng-type classification method
1972 Feng Zeyun proposed to classify computer architectures by the maximum degree of parallelism. The so-called maximum degree of parallelism pm refers to the maximum number of bits that a computer system can handle in a unit time. Set each clock cycle TI can process the number of bits is Pi, the T clock cycle average degree of parallelism is pa= (∑PI)/t (where I is 1,2,...,t). The average degree of parallelism depends on the operating degree of the system, regardless of the application, so the average utilization of the system within the cycle T is μ=pa/pm= (∑PI)/(T*PM). The classification of computer architectures by the maximum degree of parallelism. A computer system is represented by a point in a planar Cartesian coordinate system, and the horizontal axis denotes the word width (N bit), i.e. the number of bits processed simultaneously in one word, and the ordinate represents the bit width (M-bit), that is, the maximum degree of parallelism that can be processed at the same time in a bit slice pm=n*m.
This results in four different computer architectures:
① word serial, bit serial (abbreviation WSBS). Which n=1,m=1.
② word parallel, bit serial (abbreviation WPBS). Which n=1,m>1.
③ word serial, bit parallel (abbreviation WSBP). Which n>1,m=1.
④ word parallel, bit parallel (abbreviation WPBP). Which n>1,m>1.
Fundamentals of Computer architecture
- The computer architecture solves the problem that the computer system needs to solve in the whole, the function, it is different from the machine composition and the computer realization. An architecture may have multiple components, and one component may have multiple physical implementations.
- The logical realization of computer system structure, including the composition of internal data flow and control flow, logical design, etc. The goal is to reasonably make a variety of components, equipment, computers to achieve a specific system structure, while satisfying the desired performance and price ratio. In general, the scope of computer composition research includes determining the width of the data path, determining how many operations are shared with the functional components, determining the specific functional parts, determining the parallelism of the features, designing the buffering and queueing strategies, designing the control mechanism, and determining which reliable technology to use. The physical implementation of the computer composition. Including the processor, main memory and other components of the physical structure, device integration and speed, devices, modules, plug-ins, chassis division and connection, the design of special devices, signal transmission technology, power supply, cooling and assembly technology and related manufacturing processes and technology.
challenges facing computer architecture research
At present, computer architecture research is facing new challenges:
The problem of efficient software development and optimization brought by multi-core processor architecture;
The chip reliability problem caused by nano-scale VLSI;
Power control problems in large-scale high performance computing systems and portable embedded system;
The problem of architecture virtualization adapting to virtual computing needs;
At the same time, with the rapid development of new materials and technology, the computer enables the technology to change constantly, based on new nano-functional devices, quantum devices or DNA molecules of the novel concept calculation is in the exploratory stage.
Computer Architecture Summary