In this modern world of computing, it's easy to forget that a) it didn't always used to be like this and b) there is a lot more going on 'under the bonnet' than first meets the eye (or ear). We are learning ...
So that we can ...
Let's get started ...
Before we start thinking about the theoretical structure of computer systems, ask your teacher if they have any AOpen MX46-533v Motherboards in stock. If they do, have a look in conjunction with the following image ...
... and the AOpen MX46-533v User Manual and the full schematic. Pay particular attention to the location of the Central Processing Unit (CPU), the Northbridge chip (
SIS651 , under the heatsink) which controls the interface with the memory and high speed graphics port and the Southbridge chip (SIS962 ) which controls all input / output operations.
There are two common types of computer architecture - Harvard and von Neumann.
Harvard Architecture
In a Harvard architecture machine, there is separate data and instruction memory allowing both the instructions and the data on which the instructions are performed to be fetched simultaneously through separate channels or busses. Both memories have address busses onto which memory addresses are placed and data busses onto which instructions / data is placed.
Clearly, this has performance benefits due to increased bandwidth and Harvard architecture machines find use in high performance embedded applications like Digital Signal Processing. The term originated from the Harvard Mark I relay-based computer, which stored instructions on punched tape (24 bits wide) and data in electro-mechanical counters.
Von Neumann Architecture
Von Neumann machines have only one memory area and hence a single bus connecting this to the central control unit. Clearly, there is no way that instructions and data can be fetched at the same time and transfers must be scheduled which leads to an inevitable reduction in performance. Architectures like this are useful where compiled code embeds data within the instructions or where it is necessary to write to the instruction space for example, in the case of self-modifying code.
These "stored program concept" machines are easily reprogrammable - they are the general purpose machines which we use every day. The first ever machine produced with this architecture was called the Manchester Small Scale Experimental Machine (MSSEM) or the 'Baby' for short. The Baby was a prototype for the first commercial stored program concept computer, the Ferranti Mark 1.
CISC and RISC architectures The term RISC stands for Reduced Instruction Set Computer whereas CISC stands for Complex Instruction Set Computer. As you can imagine, there are considerable differences between the two in terms of programming and execution and they are suitable for different environments.
Operating systems which use reduced instruction set architectures are actually more popular than you might think, especially for embedded systems. Early RISC architectures were adopted by Acorn Computers LTD from Cambridge who designed personal computers specifically to run on the ARM chipsets. They developed their own operating system called RISC OS specifically for these machines. Luckily for us, the RISC operating system is now open source and is available to download for all sorts of ARM based embedded systems. Graphics Processing Unit (GPU) A Graphics Processing Units (GPU) is a specialised processor which is designed to perform simple processing operations on a large quantity of data very quickly. Contrast this to a standard Central Processing Unit (CPU) which is designed to perform complex processing on small data sets. Borne from the need for specialist programming for games / graphics rendering, GPUs can have anything from 8 to over 5000 individual processing cores, each capable of performing many millions of operations per second
The main three components of a computer system are the Central Processing Unit, the primary / immediate storage (memory) and some form of input / output controller. These are linked, naively, by a single system bus. The "Three Box Model" of a computer system
All this cutting and tacking is all well and good but how do we know what the components actually do? Through discussion with your teacher during the last task, you will probably have heard / talked about the functions of all the components but probably not written anything down. Now is your chance ...
Watch the following video about the Intel 4004 - the Worlds first commercial microprocessor. 3 Minutes On ... The Intel 4004 Microprocessor (3:18) Clearly, even early microprocessors like this have many thousands of interconnected components so it's difficult to simplify their operation and for the architecture to still make sense, however, the following massively simplified diagram of a general purpose processor contains all the major components ... I'd print this diagram out for your notebooks if I were you :) Notice the vague link with the enhanced three box model that we met earlier through the colours of the three busses which make up the system bus.
OK - here's one of the answers for Task 3.1 if you've read ahead! The Status Register stores single bit condition codes which indicate the outcome of the last calculation carried out by the Arithmetic and Logic Unit (ALU) or, in some cases, switches which allow us to control the behaviour of the processor. The following is the structure of the Intel 8086 16 bit status register, sometimes called the flag register (in case you research it) ... Intel 8086 16 bit Status / Flag Register Seven of the sixteen flags are not used by the 8086 processor whilst, out of the remaining nine, three are used as control flags (indicated with a switch) and six are used as condition / status flags (indicated with a light bulb).
Factors affecting processor performance Finally, a quick look at the factors which can affect the performance of processors. Most of these are fairly self explanatory, however, you may need to engage in some discussion with your teacher of some of the more theoretical ones.
Isn't that an analogy?
This is all pretty high end / low level (oxymoron) stuff to be honest and I think that if you wanted to develop your understanding of Microprocessor architecture, you'll have to spend a LONG time researching, reading and trying things out. I would focus on the Intel 4004 microprocessor - it seems a good place to start seeings as it was the first commercial microprocessor an' all! It could be a nice project idea ...
END OF TOPIC ASSESSMENT
|