Current location - Education and Training Encyclopedia - Graduation thesis - To write an introduction to computer science, the first thing to talk about is the understanding of computers and computer subject systems. How to understand?
To write an introduction to computer science, the first thing to talk about is the understanding of computers and computer subject systems. How to understand?
Computerarchitecture usually refers to the attributes of a computer system seen by programmers involved in machine language or assembly language. It is more about the external characteristics of computers, the structural concepts and functional characteristics of hardware subsystems. The most important issues are directly related to the instruction system of the computer, such as the word length of the computer, the types of data that can be directly recognized and processed by computer hardware and their representation, storage, reading and writing methods, the composition of the instruction system, the types, formats and functions of instructions, the number and representation methods of registers used in instructions, the supported addressing methods, the way and control of data transmission between memory, input and output devices and CPU, and the types and processing flow of interrupts. The protection of all kinds of information in the system, the definition and switching of computer running state, the detection and treatment scheme of all kinds of abnormal operation or errors, etc. In order to write high-quality programs and ensure the normal operation of programs, programmers must deeply understand the related properties of computers. Computer architecture mainly studies the division of hardware and software functions, and determines the interface between hardware and software, that is, which functions should be divided into hardware subsystem and which functions should be divided into software subsystem.

Computerorganization is to determine and allocate the conceptual structure and functional characteristics of hardware subsystems based on computer architecture, and then design the concrete composition of computer components and the connection relationship between them, so as to realize various functions and characteristics of machine instruction level. From this point of view, it can be said that computer composition is the logical realization of computer architecture. In order to realize the functions required by the same computer architecture, there are many different computer composition design schemes. Because of the improvement of semiconductor device performance, the advent of new technological achievements, or the need for new cost performance, it will bring about changes in computer composition.

In the field of computer composition, one of the key problems to be solved is the reasonable performance-price ratio. The key technical measures are to properly handle the data flow and control flow in the computer and reasonably match the performance parameters of each functional component, that is, to avoid the "bottleneck" problem formed by one component from affecting the overall performance of the computer. For example, for the arithmetic unit, we can improve its data processing ability by realizing the pipeline processing of data operation, setting up multiple arithmetic functional units and arranging more registers in the arithmetic unit. For the controller, the speed of instruction execution can be improved through instruction prefetching, instruction pipeline processing, multi-instruction pipeline and RISC (Reduced Instruction Set Computer) structural design. As for the memory components, we adopt a hierarchical memory system composed of cache, main memory and virtual memory, use a multi-body structure composed of multiple memories that can run alternately, and use an improved memory chip with higher performance to improve the storage capacity and reading and writing speed of the memory system. For input and output devices, channel and peripheral processors are implemented, buffer and queuing strategies are set reasonably, faster devices are equipped, and more devices are equipped to improve the data input and output flow per unit time. For a computer system, the key is to make all the functional components of the computer run at their own high speed as far as possible, so as to avoid or reduce the mutual restriction and waiting between different functional components. For example, by supporting multi-thread, multi-process, multi-program and multi-task, the most reasonable resource scheduling algorithm and allocation strategy are selected to maximize the resource utilization of the system.

Computer realization is the physical realization of computer composition. Including the physical structure of CPU, main memory, I/O interface and equipment, the integration and speed of selected semiconductor devices, the division of devices, modules, plug-ins, backplanes, power supply, heat dissipation, assembly and other technologies, production technology and system debugging. In a word, it is to transform the computer composition scheme that completes the logical design into a real computer, that is, to truly manufacture and debug a computer system that meets the design, operation and price requirements.

Computer architecture, computer composition and computer implementation are three different concepts. Each concept has different meanings, but they are closely related, and these meanings will change with the progress of time and technology. In some cases, sometimes it is not necessary to deliberately distinguish the different meanings of computer architecture and computer composition.