1 / 36

Microprocessor Engineering

Microprocessor Engineering. Introduction 11/12. Microprocessor Engineering 16-7210. Alan Holloway contact: a.f.holloway@shu.ac.uk Room 9323 Furnival/Cantor Weeks 1-6 6 × 2 Hour Lectures 6 × 1 Hour Labs Weeks 7-12 6 × 1 Hour Lectures 6 × 2 Hour Labs. Assessment method.

glynis
Download Presentation

Microprocessor Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Microprocessor Engineering Introduction 11/12

  2. Microprocessor Engineering 16-7210 Alan Holloway • contact: a.f.holloway@shu.ac.uk • Room 9323 Furnival/Cantor • Weeks 1-6 • 6 × 2 Hour Lectures • 6 × 1 Hour Labs • Weeks 7-12 • 6 × 1 Hour Lectures • 6 × 2 Hour Labs

  3. Assessment method • 50% Coursework • formative series of lab tutorials (7.5%) • In class test on C & bit manipulation (2.5%) • major assignment (40%) • 50 % Exam • 2 Hours duration • 4 from 6 questions

  4. Resources • All course information can be found on the Blackboard site or at www.aholloway.co.uk • Lecture notes • Sample programs • Reading list • Software (available free)

  5. Microprocessor Engineering • Microprocessor Systems • Microcontrollers • ARM7 core Processor Family • specifically NXP LPC2368 microcontroller • Many others are available 8051, PIC, AVR etc • C Programming will be used throughout • ARM Realview MDK - 'C' compiler & other tools • u-Vision Integrated Development Environment

  6. address decoder chip enable signals address bus data bus a d CE CE CE reset Additional devices uP ROM RAM I/O clock OE WR OE WR OE read write Microprocessor System Structure

  7. Bus operations • Read • Write • Each read/write operation is made up of a number of clock cycles or T states • Each machine instruction is made up of one or more read and/or write operations • This is why we shouldn't compare microprocessors simply based on clock speed

  8. 2a - 1 Totalmemory space 1 0 d bits Address Bus • Unidirectional and generated by microprocessor • Number of address lines determines number of address locations • Addressable locations = 2^a where a is the number of address lines FFFFH memory addresses E00FH I/O E000H Memory Map : A memory map shows the position of devices within the whole of the addressable area MemoryAddress 7FFFH RAM 6000H 3FFFH ROM 0000H

  9. Data Bus • Bi-directional • Usually matches the word length of the microprocessor • Usually a multiple of 8 • We talk of 8-bit, 16-bit , 32-bit and 64-bit processors which refers to the normal word length of the microprocessor

  10. Control bus • Consists of potentially many signals. Typically:- • Read • Write • Could be single signal - Read/notWrite line • Interrupt control • Bus control signals for DMA (Direct Memory Access)

  11. Microprocessr • CPU – Central Processing Unit • ALU – Arithmetic Control Unit • Circuit which performs arithmetic and logical operations • Registers • Small CPU bases storage very quick • Control Unit • Controls the flow of data through the processor, and coordinates the activities of the other units within it

  12. Microprocessor Registers • General purpose registers • Accumulator – used in conjunction with ALU – often found on 8-bit microprocessors • Status or Flag Register – indicate result of last instruction executed • Program counter(PC) or Instruction Pointer • Stack Pointer (SP) • Special registers – Instruction and memory address register

  13. The Fetch – Execute cycle • Fetch • memory read cycle • place in instruction register and decode • Execute • may involve additional read and/or write cycles • Often the whole Fetch-Execute cycle is carried out through a pipeline operation involving several stages. • 5 stages are often used (IF, ID, RR, EX, WB) • The Pentium 4 has 20 stages • The ARM 7 has 3 stages

  14. Pipeline - Natural assembly line • Example • Alan (A) Barry (B) & Chris (C) each have a load of clothes • Washer takes 30 mins • Dryer takes 30 mins • Ironing takes 30 mins A B C

  15. Sequential - non pipelined B C 7pm 11.30pm A Total for 3 Loads is 4.5 Hours

  16. Pipelined • Total for 3 loads pipelines 2.5 hours B C 7pm 11.30pm A

  17. Pipelines • Does not speed up 1 task - increases overall throughput • Multiple tasks operate simultaneously using separate resources • Limited by speed of slowest resource

  18. ARM7 Pipeline • The pipeline has hardware-independent stages that execute one instruction while decoding a second and fetching a third. The pipeline speeds up the throughput ofCPU instructions so effectively that most ARM instructions can be executed in a single cycle. • The pipeline works most efficiently on linear code.

  19. CPU operation • On reset – PC is loaded with a value, typically 0 • Fetch – execute cycle • Fetch instruction • memory read cycle using PC (program counter) • place in instruction register and decode • increment PC ready for next fetch • Execute instruction • often involves additional read and/or write cycles to read operands and possibly write back results • could modify PC – causes flow of program execution to change

  20. CPU Architecture • Two basic types • Von Neumann • One memory space for instructions and data • Therefore one single memory bus structure • Harvard • Separate instruction and data spaces • Therefore separate memory buses – parallel operation and therefore faster operation • Can have different address and data bus widths optimised for each bus

  21. Basic microprocessor system • Von Neumann Architecture Microprocessor Power on & manual reset Address Reset Memory (Instructions & Data) and Input/Output A0-Ax Data Clock D0-dy Oscillator Read Write

  22. Harvard Architecture Microprocessor Address Address Program Memory A0-Ax Data Memory & I/O A0-Ay Data Instruction d0-dn I0-Iw Read Read Write

  23. What is an embedded system? • An embedded system is a special-purpose computer system designed to perform one or a few dedicated functions • Washing machine runs programs • Open water valve • Heat water • Start spin • etc etc…. • Do we need a PC running windows Vista to do this ?

  24. Will I ever need to use one? • Over 4 billion 8-bit microcontrollers were sold in 2006 alone • the world's population is estimated to be about 6.756 billion • Average car contains >50 microcontrollers • Electrical, electronic, control, robotics, computer engineer - Yes you will

  25. What is an Embedded Computer System • Special purpose computer – usually with one specific task or application. • Usually embedded in a device which often has other electronic and mechanical parts • Usually optimised for the specific task • Has the usual basic computer components – CPU, memory, inputs & outputs

  26. Microcontroller • A microcontroller is the integration of • microprocessor • memory • ROM types – commonly flash PROM • RAM – Static ram • peripherals • parallel input and output(digital I/O) • Timers and Counters • Serial input and output (UART, USART, SPI etc.) • Analogue to digital converters • PWM, CAPCOM registers, DACs etc.etc.

  27. Examples • consumer appliances • tv's, mp3 players, dvd's, washing machines etc. • automotive applications • engine management, anti-lock braking • computer peripherals • hard disk controllers, routers, switches • medical equipment • scanners, blood analysers • telecoms • mobile phones • aerospace • satellite control systems, avionics

  28. Some Characteristics • Very simple to very complex applications • Often single application • but concurrent operation • Could be real-time (hard and soft) • Program is normally stored in ROM – called firmware – flash ROM commonly • Could be critical applications • Interfacing with other devices via peripherals • Require a range of development tools – hardware and software • May use operating system (RTOS)

  29. Constraints • Physical size • Weight • Power usage • Performance – throughput and/or response time • Cost

  30. Resulting in - • limited space • limited processing power • 8-bit processor • limited memory RAM & ROM • only Ks of memory not Ms • schemes to limit power consumption • low power modes • sleep • standby • determinism – needed for RT guarantee

  31. Linksys Wired & Wireless Router

  32. Linksys WRT54GL Router & Access point • CPU – Broadcom BCM4712KPB @ 200 MHz • RAM – 16MiBytes (2 x S42S16400 RAM Chips) • ROM – 4MiBytes (Intel TE28F320 C3 Flash ROM) • I/O • WAN port: One 10/100 RJ-45 port • LAN port: Four 10/100 RJ-45 ports • Wi-Fi Channels: 13 • LED Indicators : power, DMZ, WLAN, port 1/2/3/4, Internet

  33. Microprocessor vs Microcontroller vs Soc vs FPGA • uP • General purpose • external memory and peripherals • connected by a memory bus • uC • uP integrated with memory and peripheral interfaces • families of uC all with same uP but varying amounts and types of memory and interfaces.

  34. Microcontroller (µC) vs. Microprocessor (µP) • µC intended as a single chip solution, µP requires external support chips (memory, peripheral interfaces etc.) • µC has on-chip non-volatile memory for program storage, µP does not. • µC has more interface functions on-chip (serial interfaces,Analog-to-Digital conversion, timers, etc.) than µP • General purpose µPs are typically higher performance (clock speed, data width, instruction set, cache) than µCs • However the division between some µPs and some µCs becoming increasingly blurred.

  35. FPGA/PLD • A field-programmable gate array is a semiconductor device containing programmable logic components called "logic blocks", and programmable interconnects. • Logic blocks can be programmed to perform the function of basic logic gates & combinational functions such as decoders or simple mathematical functions. • In most FPGAs, the logic blocks also include memory elements, which may be simple flip-flops or more complete blocks of memory

  36. Microprocessor vs Microcontroller vsSoCvs FPGA • SoC – System on a chip • FPGA – Field Programmable Gate Array Core Microcontroller-based System-on-a-Chip Rest of FPGA contains standard logic

More Related