* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Document
Survey
Document related concepts
Transcript
IT Systems Processor Technology EN230-1 Justin Champion C208 – 3273 www.staffs.ac.uk/personel/engineering_and_technology/jjc1 IT Systems Contents Microprocessor Structure Programming Executing an instruction IT Systems Microprocessor Usually referred to as the processor or CPU Is the centre of the computer where a set of tasks will be carried out First Processor was Intel 8080, introduced in 1974 • Running at 2MHz, 8 Bit instructions Latest Processors • Run at 3200+ Mhz, but this changes on a monthly basis IT Systems Structure of the processor A basic set of parts are included with a processor • • • • • • Registers Control Unit Maths Unit Memory Output Units Input Units Each instruction is made up of at most two parts • • Instruction Address or value to be processed IT Systems Register Storage area for operations to take place Are hardwired into the processor The more registers there are the easy the chip is to program • The size of the register indicates how much data can be manipulated in one cycle of the processor • Historical considerations need to be considered though to make the chip compatible with pervious versions i.e. Intel 80486 i.e. a 8 bit register adding 2 32bit numbers will have to do a lot of swapping in and out of the registers Most operations are done on the registers • • • To add 1 to a value in memory it first must be placed in a register Add the value Write the register back to the memory location IT Systems Control Unit Controls the flow of information within the processor Functionality changes depending on the architecture • Typically though • • • • • • Stores the location of the next instruction to be executed Fetch instructions Decode Sorting out execution of instruction Storing the results correctly Possible additional use is • Translating instructions from one format to another before decoding IT Systems Maths Unit(s) This part of the processor carries out the mathematical operations Older processors only had a integer based processor • Then a separate Floating Point Unit (FPU) was added • Single instructions at a time This would be able to carry out Floating point maths fast as the internal logic was based on Floating point maths Modern Processors • • Have multiple integer maths units to concurrent processes to take place The FPU is now located within the processor itself and again a number of these are installed. IT Systems The processor is the most important part of a system The MHz part indicates how many cycles can be performed a second • 1 MHz = 1 Million cycles a second Each cycle is not one instruction • • Certain operations may take several cycles On the Motorola 68HC11 the LDAB instruction takes 2 cycles IT Systems Microprocessor or Microcontroller Microprocessor • • Is a chip which uses circuits and transistors to carry out operations Instructions can be sent in the form of machine code Microcontroller • Carries out the same operations but is optimised to specialise in I/O with electronic devices IT Systems Programming the processor To allow the correct interactions to take place a program must be given to the processor. The program is a series of instructions to be executed Compilers are used to convert the high level language into machine code • • • • • • C C++ Pascal Basic Cobol NOT Java or .NET • These are converted into byte code which the corresponding virtual machine will execute and convert to machine code IT Systems Programming the processor The language we are using is Assembler This is one level above machine code • 68HC11 Assembler • • • • • • • Assembler can easily be re-written as machine code it is just difficult to read name EX2 ORG LDAA LDAB ADDA END $500 #%00000001 #8 #2 START Machine code of the same program • S10905008601C6088B020F IT Systems Disassembly The instruction was coded into machine code can easily be returned to assembler code If required the processor can be programmed directly from the console putting the correct instruction at the correct location, but this is harder and there is no advantage Try decoding the previous program • S10905008601C6088B020F IT Systems Assembler This language is hard to program especially for anything large • Slow to develop Generic • • Even the original programmers usually have problems reading the programs later The program are usually designed for one set of hardware They can not be moved to a different set as the memory locations may be different Higher level Languages • • These have the advantage that written once the compiler will create the code for whatever processor is used Re-usable code IT Systems Execute (run) a program A number of steps are used to execute a program • Fetch • • This is a generic list which may change depending on the processor used Get the instruction into the execution unit Loaded into primary cache Decode • Examine instruction loaded • Address Generate • If the instruction requires memory access work out the address of the memory Execute • Inspecting to see if memory access is required Carry out the instruction based on previous steps Write-Back • Put the result of the execution back into the register or the memory location IT Systems Enhancing a programs execution Pre-Fetch • The next instruction is stored in a small amount of fast memory ready for use. • Pipelining • • • Allows the effect of one instruction executing every clock cycle As one instruction is one part of the execution cycle another is one place behind Rather than carrying out the cycle and then getting the next instruction Multi Decoders • The alternative is to call each instruction as the CPU requires them Allows the decoding of multiple instructions concurrently by having more than one device Write Buffer • This is used to store the result of an execution in the buffer until a later stage when it is suitable to write to the correct location. This is particular issue when writing to system memory which is slow to access IT Systems Different Types of processors Complex instruction set computing (CISC) • • Reduced Instruction Set Computing (RISC) • • Latest Pentium chips are a hybrid of these chipsets Very Long Instruction Word (VLIW) • • • Reduced number of instructions which are the ones which are the ones which are needed Not backwards compatible RCISC • Intel 80486, has a lot of instructions built into the chip The issue is the amount of time needed to lookup a single instruction 128 bit instructions which can be carried out on multiple pipelines concurrently Issues need resolving if one result is waiting upon another stuck in the pipeline Intel IA-64 uses this instruction set Single Instruction Multiple Data (SIMD) • • Allow the loading of a large amount of data at once rather than requesting each part Used in the chipsets Intel's SSE or AMD’s 3DNow IT Systems Summary of what we have discussed What makes up a processor High Level / Low level languages Type of processor Execution cycle