The principle of computer organization is the basic knowledge that computer professionals must master. Obviously, the principle of computer organiza
The principle of computer organization is the basic knowledge that computer professionals must master. Obviously, the principle of computer organization is a core required course for computer science and technology majors. The following is what I recommend to you, I hope you like it!
Tisch
On the principle of computer composition
Principles of Computer Organization is a basic course for computer science and technology majors. This book highlights the general principle of computer composition, changes the writing habit from bottom to top in the past in terms of architecture, adopts the narrative method from the external framework, that is, the top-down analysis method, and expounds the principle of computer composition in detail, making it easier for readers to form the overall concept of computer. In addition, in order to meet the needs of the development of computer science, this book not only describes the basic principles, but also adds many new contents. For example, it tries to combine with modern computer technology. Considering that bad schools don't have courses on external devices, this book appropriately adds the contents of external storage and external devices. Through the study of this book, you can have an overall concept and a general understanding of the principle of computers, and you can also master different models in the future.
Keywords: computer composition principle; Courses; function
Today, with the popularization of computers, modern information technology has developed rapidly, and the application of computers has had a great impact on politics, economy, culture and other aspects. Moreover, the speed of updating computer knowledge is very fast, which makes our computer students face the challenge of constantly updating our knowledge about computers to meet the needs of the market. In fact, during the four years of college, we can't learn a lot of knowledge. We only learn the ability to learn. Universities are places to cultivate students' abilities. You learned a lot of knowledge in college, which you won't need when you step into the society in the future. This requires us to learn the learning ability from the theoretical knowledge in the textbook at the same time.
The principle of computer organization is the core course in hardware series courses and an important professional basic course for computer majors. It plays a connecting role in other courses. Its prerequisite courses are Combinatorial Language and Digital Logic, which are closely related to courses such as Computer System Structure, Operating System and Computer Interface Technology. Its main teaching task is to ask students to systematically understand the logical composition and working principle of computer hardware system, and to cultivate students' ability to analyze, apply, design and develop computer hardware structure. It not only has its own complete theoretical system, but also has strong practicability. This course has the characteristics of wide knowledge, rich content, abstract and boring, difficult to understand and fast to update.
The main contents and basic principles of the course
* * * The main content of this book.
This course mainly explains the complete composition principle and internal execution mechanism of a simple single computer, including arithmetic unit, controller unit, storage subsystem, input/output subsystem, bus and interface, input/output system equipment, and introduces their respective functions, composition, design, implementation and use.
* * * II * * * Features of this course
This book gets rid of the traditional rigid writing style and adopts the narrative method of proceeding from the overall framework, top-down, from the surface to the inside, layer by layer. Through the in-depth analysis and detailed explanation of the computer system overview and bus system, we can vividly understand the basic composition and working principle of the computer. Moreover, in order to meet the needs of the development of computer science, the book not only describes the basic principles, but also adds new contents. The book tries to combine with contemporary computer technology with examples.
Moreover, the course is more engineering, practical and technical, and it also emphasizes the cultivation of students' practical and mental ability, pioneering and innovative consciousness and experimental skills. Most of these requirements are completed through homework, teaching experiments and other links, requiring students to consciously and actively strengthen these aspects of practice and exercise.
* * * III * * * The role of this course
For many students who have to study this course, the course "Principles of Computer Organization" will be difficult to understand. Why do you want to take this course? I can make an analogy here. In the past, everyone could make people, but they didn't know his detailed process. Now, because of the scientist's work, we all know his process, which enables us to create better people. The process of using a computer is similar to this. When we understand the composition and working principle of computers, we can make better use of computers and make them serve us.
1, practical application
First of all, I think the knowledge about computer principles learned in the book Principles of Computer Organization may be of great benefit to our understanding, dealing with and even applying computers in the future. The basic knowledge of computer principles will not change, but will only change on this basis and will not deviate from these most basic principles. In particular, the computer principles introduced in this book are all general computer principles, not specific to a particular model.
2. Definition
The English name of the BUS is "bus", which means "bus" in Chinese. It is very vivid. For example, if the bus takes a certain route, any one of us can take the bus to any stop on the bus route. If we are compared to electronic signals, that is why English calls it "BUS" instead of "CAR". Of course, professionally speaking, bus describes the structure of electronic signal transmission line, is a kind of signal line, and is a common channel for transmitting information between subsystems [1]. Through the bus, the information between components in the whole system can be transmitted, exchanged, shared and logically controlled. For example, in a computer system, it is a common channel for CPU, memory, input and output devices to transmit information. All components of the host are connected through the host, and external devices are connected to the bus through corresponding interface circuits.
3. Working principle
The status of system bus in microcomputer is just like that of human nerve center system. The CPU reads and writes the contents of the memory through the system bus, and the data in the CPU can be written into peripherals or read into the CPU by peripherals through the bus. The microcomputer adopts bus structure. A bus is a set of communication lines for information. The microcomputer connects all the components together through the system bus, and realizes the information exchange among the components inside the microcomputer. Generally speaking, the signal provided by CPU needs to form a system bus through a bus forming circuit. System bus is divided into address bus, data bus and control bus according to the function of transmitting information. These buses provide connecting lines between microprocessor ***CPU*** and memory and input/output interface components. It can be considered that a microcomputer takes CPU as the core, and other components are "hooked" on the system bus connected to CPU. This bus structure provides convenience for the composition of microcomputer. People can connect different sizes of memories and interfaces to the system bus according to their own needs, and it is easy to form microcomputers of various sizes.
4. Classification:
There are many ways to classify buses, such as external and internal buses, system buses and non-system buses. The following are the most commonly used classification methods.
* * *1* * by function
The most common way is to divide the data bus into address bus, data bus and control bus. In some systems, the data bus and the address bus can be shared under the control of the address latch, that is, multiplexed.
The address bus is dedicated to transmitting addresses. In the design process, the most common thing is to select the external storage address from the CPU address bus. The number of bits in the address bus usually determines the storage space of the memory. For example, if the address bus is 16 bits, its maximum storage space is 2 16***64KB***.
Data bus is used to transmit data information, which can be divided into unidirectional transmission and bidirectional transmission data bus. Bidirectional transmission data bus usually adopts bidirectional tri-state bus. The number of bits in the data bus is usually the same as the word length of the microprocessor. For example, the word length of Intel8086 microprocessor is 16 bits, and its data bus width is also 16 bits. In practical work, the data transmitted on the data bus is not necessarily complete data.
The control bus is used to transmit control signals and timing signals. For example, when a microprocessor operates an external memory, it must first send out a read/write signal, a chip selection signal and a read-in interrupt response signal through the control bus. The control bus is generally bidirectional, its transmission direction depends on the specific control signal, and its number of bits also depends on the actual control needs of the system.
***2*** By transmission mode
According to the data transmission mode, the bus can be divided into serial bus and parallel bus. In principle, parallel transmission mode is actually superior to serial transmission mode, but its cost will increase. Generally speaking, parallel transmission path is like a multi-lane highway, while serial transmission only allows one car to pass through a single lane highway. At present, the common serial buses are SPI, I2C, USB, IEEE 1394, RS232, CAN and so on. There are relatively few parallel bus types, such as IEEE 1284, ISA, PCI, etc.
***3*** is divided by the clock signal.
According to whether the clock signal is independent, it can be divided into synchronous bus and asynchronous bus. The clock signal of the synchronous bus has nothing to do with data, that is, a separate line is used as the clock signal line; The clock signal of asynchronous bus is extracted from data, and the edge of data signal is usually used as the clock synchronization signal.
5. A brief history of development
The detailed development of computer system bus includes early PC bus and ISA bus, PCI/AGP bus, PCI-X bus and mainstream PCIExpress and HyperTransport high-speed serial bus. From PC bus to ISA and PCI bus, and then from PCI to PCIExpress and HyperTransport system, computers have also made three leaps in these three major turning points.
Corresponding to this process, the processing speed, function and software platform of computers are all undergoing the same evolution. Obviously, the rapid development of computers is impossible without the progress of bus technology as the foundation. The industry stands at a brand-new starting point: PCIExpress and HyperTransport have created a nearly perfect bus architecture. The industry's thirst for high-speed bus is endless, and both PCIExpress2.0 and HyperTransport3.0 will be put on the agenda, which will bring about another improvement in performance. In the computer system, all functional components exchange data through the system bus, and the speed of the bus has a great influence on the system performance. Because of this, the bus is called the nerve center of the computer system. But compared with CPU, graphics card, memory, hard disk and other functional components, the improvement of bus technology is much slower. In the history of PC development for more than 20 years, the bus has only been updated three times, but every time it changes, the computer has a new look.
6. Experience
Since I went to college, I have been in contact with computers so often since I entered this major, and I can also understand computers. It is because I came into contact with this kind of knowledge late that I find it difficult to learn it. After learning this course, I feel that the principle of computer composition is really difficult. With the rapid development of computer technology and electronic technology. The internal structure of computer is becoming more and more complex, huge and highly integrated. This makes us generally feel that the course of computer organization principle is difficult to learn, difficult to understand, abstract in concept and poor in perceptual knowledge. With the rapid development of computer technology today, the period from putting forward new technologies and theories to practical application is greatly shortened. It is difficult for us to master basic knowledge and skills in the limited teaching time. It is difficult to enhance our interest in learning by learning new knowledge and technology. Not to mention being able to use basic principles to solve new problems encountered in the learning process.
In the fourth chapter, storage learning, all kinds of problems appear constantly, especially when the storage capacity expansion kit is carried out, many problems are incomprehensible, and there are also various mistakes when doing the problems. In the study of chapter 5, I have a little understanding of the program query mode, program interrupt mode and DMA mode in the control mode of information exchange between I/O equipment and host computer. The most difficult part is the central processing unit and the control unit. I don't know much about computer operation methods, such as multiplication and division, one-bit multiplication, two-bit multiplication, one-bit multiplication of complement and two-bit multiplication of complement. I'm confused anyway. There is also the design method of control unit microprogram, which I don't understand very well. Generally speaking, this course is not well studied. But through the study of this course, I also learned a lot of knowledge that I didn't know before: what hardware does the computer have, what kinds of buses are there, and what role the bus plays in the computer. What are the memories in the computer and so on. Let me have a general understanding of computers. At least I'm not as ignorant of computers as I used to be.
Conclusion:
By studying this course, we can gain knowledge about computers, but more importantly, this course can cultivate our following abilities:
1, system-level cognitive ability. Establishing the concept of the whole machine and mastering the ability of problem analysis item by item can not only understand the details of all levels of the system, but also understand the system from the perspective of the whole system, and then decompose the system into functional modules. This understanding must go beyond the realization details of each component and realize the structure of computer software system and hardware system and the process of its establishment and analysis, which is based on a deep understanding of the principle of computer composition.
2. Cultivate students' ability to integrate theory with practice. Computer practice teaching is an important part of computer course. It is not enough to learn computers well by theoretical knowledge. Classroom teaching is to let students master the basic knowledge and skills of computers, and the purpose of computer practice teaching is to put what they have learned into practice through practical operation, which is an extension and supplement of classroom teaching. Computer design and practice is to connect the processor, memory, controller, arithmetic unit, peripherals and other parts of the computer system from three aspects: theory, abstraction and design, and support and promote each other.
refer to
[1] Tang Shuofei, editor-in-chief of Computer Organization Principles Higher Education Press
[2] Chen Jiner, Wang Rangding, Lin Xueming, et al. Curriculum reform of Computer Composition and Structure based on CC2005 [J]. Computer Education, 2006 * * *1* *: 33-37.
[3] Zheng Yutong. Comparative study on the realization of computer organization principle course [J]. Journal of Minzu University of China, 2003,12 * *1* *: 79-82.
[4] Liu Xudong and Xiong Guixi. Curriculum reform and practice of computer organization principle [J]. Computer Education, 2009***7***:74-76.
[5] Zhao, He Jia. Discussion on the teaching mode of "Principles of Computer Organization" [J]. Computer Knowledge and Technology, 2008,4 * * * 3 * *: 693-694.
[6] Yao Aihong, Wu,. Research on practical teaching of hardware courses for computer majors [J]. Computer Education, 2007 * * *12 * * *: 29-31.
extreme
Computer composition and its control unit
This paper mainly discusses the basic composition of von Neumann computer and the construction method of its control unit. The core of computer is cpu, and the core of cpu is its control unit. The control unit is like a human brain. Different brains have different ideas, and different control units also have different control ideas. Therefore, the control unit directly affects the instruction system, and its format not only directly affects the hardware structure of the machine, but also directly affects the application scope of the system software and the machine. Von Neumann computer is a classic structure of computer construction and a representative of modern computer.
Keywords: von Neumann computer, computer composition, instruction system, microinstruction
An overview of the course of computer organization principle;
This course adopts a narrative method that starts from the external framework and is detailed layer by layer. Firstly, the basic composition, development and prospect of computer are introduced. Then the characteristics, structures and functions of memory, input and output system, communication bus and cpu are described in detail, including the basic operation of computer, instruction system and interrupt system, and the function, design idea and implementation measures of control unit are particularly introduced.
Two. Main contents and basic principles of the course:
A. the composition of the computer:
Von Neumann computer mainly consists of five parts: arithmetic unit, memory, controller and input/output equipment.
1. bus:
Bus is the main communication line for transmitting information between various functional components of a computer. It is a transmission harness composed of electric wires. According to the type of information transmitted by the computer, the bus of the computer can be divided into data bus, address bus and control bus, which are used to transmit data, data address and control signal respectively. Bus is an internal structure and a common channel for cpu, memory and input/output devices to transmit information. All components of the host computer are connected through the bus, and external devices are connected to the bus through corresponding interface circuits, thus forming a computer hardware system. In the computer system, the common channel for transmitting information between components is called bus, and the microcomputer connects the functional components through the bus structure. According to functions and specifications, buses can be divided into three categories:
* * *1* * chip bus, c bus * * *
Also known as component-level bus, it connects various chips together to form the information transmission path of specific functional modules, such as CPU module.
* * * 2 * * Internal bus
Also known as system bus or board bus, it is the information transmission path between plug-in modules in microcomputer system. For example, the transmission path between CPU module and memory module or I/O interface module. ***3*** External bus, also known as communication bus, is a channel for information transmission between microcomputer systems or between microcomputer systems and other systems, such as EIARS-232C and IEEE-488. Among them, the system bus, usually called bus, generally includes three buses with different functions, namely data bus DB, address bus AB and control bus CB.
2. Storage:
Memory is a storage device in a computer system for storing programs and data. All the information in the computer, including the input raw data, computer programs, intermediate execution results and final execution results, are stored in the memory. It stores and retrieves information according to the location specified by the controller. With the memory, the computer has the memory function, which can ensure the normal work. Storage can be divided into main storage * * * memory * * and auxiliary storage * * * external storage * * *, and there are also classification methods of external storage and memory. External memory is usually a magnetic medium or an optical disk, which can store information for a long time. Memory refers to the storage element on the motherboard, which is used to store the currently executing data and programs, but it is only used to temporarily store programs and data, and the data will be lost when power is cut off.
The main function of memory is to store programs and various data. It can automatically access programs or data at high speed during the execution of the computer.
Memory is a device with "memory" function, which uses physical devices with two stable states to store information. These devices are also called memory elements. Data is represented by binary with only two numbers "0" and "1" in the computer. The two stable states of the storage element are "0" and "1" respectively. Decimal numbers used in daily life must be converted into equivalent binary numbers before they can be stored in memory. All kinds of characters processed in the computer, such as English letters and operator numbers, have to be converted into binary codes before they can be stored and operated.
According to the proximity to CPU, storage can be divided into memory storage and external storage, which are referred to as memory and external storage for short. Memory storage (memory storage) is usually referred to as main memory * * *, which is a part of the host; External storage is often referred to as the abbreviation of auxiliary storage * * *, which belongs to external equipment. CPU can't directly access external memory like memory, and external memory must transfer data with CPU or I/O devices through memory. In the high-grade microcomputer above 80386, there is also a cache * * * cache * *, and the memory at this time includes main memory and cache. For low-grade microcomputers, main memory is memory.
3. Input and output system:
I/O system is an important part of the operating system, which is responsible for managing all external devices in the system.
Computer peripherals. In a computer system, all devices except CPU and memory are called computer peripherals and I/O devices. Input and output devices: devices used to input and output information to computers, such as keyboards, mice, monitors, printers, etc.
There are three control modes for I/O devices to exchange information with the host: program query mode, program interrupt mode and DMA mode. The program query method is that the cpu constantly queries whether the I/O device is ready through the program, thus controlling it to exchange information with the host.
The program interrupt mode does not query whether the device is ready, but continues to execute its own program, and only responds when the I/o device is ready and sends an interrupt request to the cpu, which greatly improves the working efficiency of the cpu.
In DMA mode, there is a data path between the main memory and I/O devices, and there is no need to call the interrupt service program when the main memory exchanges information with it.
4. Arithmetic unit:
The part of a computer that performs various arithmetic and logical operations. The basic operations of arithmetic unit include four operations of addition, subtraction, multiplication and division, logical operations such as AND, OR, NOT and XOR, and operations such as shift, comparison and transmission, which are also called arithmetic logic unit * * * alu * *.
The arithmetic unit consists of: arithmetic logic unit ***ALU***, accumulator, status register, general register group, etc. The basic functions of arithmetic logic operation unit ***ALU*** are four operations of addition, subtraction, multiplication and division, logical operations such as AND, OR, NOT, XOR, shift and complement. When the computer is executed, the operation and operation type of the arithmetic unit are determined by the controller. The data processed by the arithmetic unit comes from the memory; The processed result data is usually sent back to the memory or temporarily stored in the arithmetic unit. And arithmetic unit * * *, together constitute the core part of CPU.
In order to realize the operation of the operator, especially the four operations, we must choose a reasonable operation method. It directly affects the efficiency of operators, as well as the structure and cost of operators. In addition, in numerical calculation, the significant bit of the result may be long, so it is necessary to extract a significant bit, which leads to the rounding problem of least significant bit. The rounding rule selected will also affect the accuracy of the calculation results. When choosing the representation of computer numbers, we should fully consider the following factors: the type of numbers to be represented * * * decimal, integer, real number, complex number * * *; The numerical range that may be encountered when determining the representation; And storage and processing capabilities. Numerical accuracy: related to processing capacity; Hardware cost of data storage and processing: cost level. The arithmetic unit includes three parts: register, execution part and control circuit. There are three registers in a typical arithmetic unit: a receiving register for receiving and storing operands; An accumulation register for storing another operand and an operation result; A multiplication register used to store multipliers or quotients when operators perform multiplication and Divison operations. The executive part includes adder and various types of input and output gate circuits. The control circuit sends out different control signals according to a certain time sequence, so that the data can enter the register or adder through the corresponding gate circuit to complete the specified operation. In order to reduce the access to memory, many computer operators have more registers to store the intermediate calculation results, so that they can be directly used as operands in later operations.
B. control unit:
The control unit is responsible for the process management of the program. Just like the logistics and distribution department in a factory, the control unit is the command and control center of the whole CPU, which consists of three parts: instruction register IR, instruction decoder ID and operation controller 0C, which is extremely important for coordinating the orderly work of the whole computer. According to the user's pre-programmed program, it takes out all instructions from the memory in turn and puts them into the instruction register IR. It determines what operation should be done through instruction decoding and analysis, and then sends micro-operation control signals to the corresponding components through the operation controller OC according to the determined time sequence. The operation controller OC mainly includes control logic such as beat pulse generator, control matrix, clock pulse generator, reset circuit and start-stop circuit.
65438+
Instruction system is the language system of computer hardware, also known as machine language. It is the main interface between software and hardware. From the perspective of system structure, it is the main attribute of computer seen by system programmers. Therefore, the instruction system represents the basic functions of the computer, and determines the required capabilities of the machine, as well as the instruction format and the structure of the machine. When designing instruction systems for different computers, we should pay due attention to instruction formats, types and operating functions.
* * * Of all the instructions that a computer can execute, instructions that describe all the control information and "logical judgment" ability in the computer. The instruction systems of different computers contain different kinds and quantities of instructions. Generally, it includes instructions such as arithmetic operation, logical operation, data transmission, judgment control, input and output. Instruction system is an important factor representing computer performance. Its format and function not only directly affect the hardware structure of the machine, but also directly affect the application scope of the system software and the machine.
The process of determining operand address according to instruction content is called addressing. General addressing methods include immediate addressing, direct addressing, indirect addressing, register addressing and relative addressing.
An instruction actually includes two kinds of information, namely operation code and address code. Opcode is used to indicate the operations to be completed by instructions, such as addition, subtraction, multiplication, division, data transmission, etc. * * *, the length of which depends on the number of instructions in the instruction system. The address code is used to describe the operation object of the instruction, either directly giving the operand or indicating the memory address or register address of the operand * * * (that is, the register name * * *).
2. Microinstruction
In a microprogrammed computer, a group of micro-operations executed by control signals sent at the same time are called micro-instructions. Therefore, micro-instructions are formed by collecting relevant information of control signals sent at the same time. Divide an instruction into several microinstructions and execute them in turn to realize the function of the instruction. Several microinstructions can form a microprogram, and one microprogram corresponds to a machine instruction. Therefore, the function of a machine instruction is realized by a sequence of several microinstructions. In short, the operation completed by a machine instruction is divided into several microinstructions, which are interpreted and executed by microinstructions. The compiling method of microinstruction is the main factor that determines the format of microinstruction. Microinstruction formats can be roughly divided into two categories: horizontal microinstruction and vertical microinstruction.
From the one-to-one correspondence between instructions and micro-instructions, programs and micro-programs, and addresses and micro-addresses, the former is related to memory storage, while the latter is related to control storage, which is a part of micro-program controller. Microprogramming controller is mainly composed of control memory, microinstruction register and address transmission logic. Among them, micro instruction registers are divided into micro address registers and micro instruction registers. At the same time, it can be seen from the microprogram execution flow chart of general instructions. Each CPU cycle basically corresponds to one microinstruction.
3. experience;
After writing this course paper, I have deepened my understanding of the principle of computer composition and got a deeper understanding of the structure of computers. Every development of computer embodies human wisdom and efforts, and every innovation brings great progress to human beings. Computers have developed from simple functions in the early days to complex operations now. This hierarchy made me realize that everything should be started from a small age, and countless' small' have made' big'.
At present, computers are still developing at an alarming rate, and we expect that computers in the future will bring more surprises and progress to people.
Four. Conclusion:
Since the birth of the first electronic computer in the world in 1945, computer technology has developed rapidly, and the speed of CPU is getting faster and faster, the volume is getting smaller and smaller, and the price is getting lower and lower. Based on this, Moore's Law has been summarized in the computer field, and it is believed that the computer efficiency will double every 18 months.
More and more experts realize that it is inevitable to encounter insurmountable obstacles to greatly improve the efficiency of computers on the basis of traditional computers, and it is the right way to find a breakthrough in computer development from the basic principles. Many experts discuss the breakthrough of computer development by using biochip and neural network chip, but there are also many experts who focus on the most basic physical principles, because in the past few hundred years, the application of physical principles has triggered a series of applied technology revolutions, and they believe that the new technologies represented by photon, quantum and molecular computers in the future will promote a new round of supercomputing technology revolution.
Verb (abbreviation for verb) Reference:
1 computer composition principle, Tang Shuofei
2 computer composition principle, Bai Zhongying