![Page 1: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/1.jpg)
INTRODUCTION TO CPUMohammad Sadegh SadriSession 2 Microprocessor CourseIsfahan University of TechnologySep., Oct., 2010
microprocessors and microcontrollers - sadri 1
![Page 2: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/2.jpg)
Agenda• Review of the first session• A tour of silicon world!• Basic definition of CPU• Von Neumann Architecture
• Example: Basic ARM7 Architecture• A brief detailed explanation of ARM7 Architecture
• Hardvard Architecture• Example: TMS320C25 DSP
microprocessors and microcontrollers - sadri 2
![Page 3: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/3.jpg)
Agenda (2)• History of CPUs
• 4004• TMS1000• 8080• Z80• Am2901• 8051• PIC16
microprocessors and microcontrollers - sadri 3
![Page 4: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/4.jpg)
Von Neumann Architecture• Same Memory
• Program• Data
• Single Bus
microprocessors and microcontrollers - sadri 4
![Page 5: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/5.jpg)
Sample : ARM7T CPU
microprocessors and microcontrollers - sadri 5
![Page 6: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/6.jpg)
Harvard Architecture• Separate memories for program and data
microprocessors and microcontrollers - sadri 6
![Page 7: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/7.jpg)
TMS320C25 DSP
microprocessors and microcontrollers - sadri 7
![Page 8: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/8.jpg)
Silicon MarketRank2009
Rank2008 Company Country of
origin
Revenue(million$ USD)
2009/2008 changes Market share
1 1 Intel Corporation USA 32 410 -4.0% 14.1%
2 2 Samsung Electronics South Korea 17 496 +3.5% 7.6%
3 3ToshibaSemiconductors
Japan 10 319 -6.9% 4.5%
4 4 Texas Instruments USA 9 617 -12.6% 4.2%
5 5 STMicroelectronics FranceItaly 8 510 -17.6% 3.7%
6 8 Qualcomm USA 6 409 -1.1% 2.8%
7 9 Hynix South Korea 6 246 +3.7% 2.7%
8 12 AMD USA 5 207 -4.6% 2.3%
9 6 Renesas Technology Japan 5 153 -26.6% 2.2%
10 7 Sony Japan 4 468 -35.7% 1.9%
microprocessors and microcontrollers - sadri 8
![Page 9: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/9.jpg)
Silicon Market (2)• Total 2009 sales
• 229,917,000,000 US$
• 2009 sales growth: -11.7%• Total 2008 sales
• 258,304,000,000 US$
microprocessors and microcontrollers - sadri 9
![Page 10: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/10.jpg)
HISTORYChapter 2
microprocessors and microcontrollers - sadri 10
![Page 11: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/11.jpg)
Intel 4004 (1)
microprocessors and microcontrollers - sadri 11
![Page 12: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/12.jpg)
Intel 4004 (2)• 1971• Just a calculator (not for industry)• 4-bits CPU
• ALU : 4bits• Instructions : 8bits
• Separate program and Data memories• 1K data memory • 4K program memory
• PC width?
microprocessors and microcontrollers - sadri 12
![Page 13: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/13.jpg)
Intel 4004 (3)• Registers
• Sixteen 4 bits registers
• Stack• 4 Level stack
• Instructions • 46
• Clock frequency : 740kHz• 2300 transistors• Speed : 92,000 instructions per second
microprocessors and microcontrollers - sadri 13
![Page 14: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/14.jpg)
Intel 4004 (4)microprocessors and microcontrollers - sadri 14
![Page 15: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/15.jpg)
Intel 4004 (5)• Single
multiplexed 4 bit bus:• 12 bit addresses• 8 bit instructions• 4 bit data
microprocessors and microcontrollers - sadri 15
![Page 16: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/16.jpg)
Intel 4004 (6)• Supported Chips:
• 4001 : 256Bytes ROM• 4002 : 40Bytes RAM• 4003 : 10bit shift register• 4008 : 8bit address latch • 4009 : programmed I/O access• 4269 : keyboard , display interface
microprocessors and microcontrollers - sadri 16
![Page 17: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/17.jpg)
Texas Instruments TMS1000
microprocessors and microcontrollers - sadri 17
![Page 18: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/18.jpg)
Texas Instruments TMS1000 (2)microprocessors and microcontrollers - sadri 18
![Page 19: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/19.jpg)
Texas Instruments TMS1000 (3)• 1974• First Micro-controller
• Computer on a chip• MPU, RAM, ROM, Timers
• Clock• 300KHz
• Address space• 1KB
microprocessors and microcontrollers - sadri 19
![Page 20: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/20.jpg)
Texas Instruments TMS1000 (4)• RAM
• 32 Bytes
• ROM• 1KBytes
• Instructions• 31
• Registers : different size each!• PC : not a counters, but a shift register!
microprocessors and microcontrollers - sadri 20
![Page 21: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/21.jpg)
Intel 8080• 1974• 8bits CPU• Buses
• 16bits address bus • What range?• 16bits PC• 16bits Stack Pointer
• 8bits data bus
• 7 registers : 8bits each
microprocessors and microcontrollers - sadri 21
![Page 22: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/22.jpg)
Intel 8080 (2)• Some registers could join to make 16bits registers• Separate
• Memory port• To talk to external memory
• I/O port• To talk to external peripherals and devices
• Update : 8085 (1976)• Added interrupt pins and serial I/O pins
microprocessors and microcontrollers - sadri 22
![Page 23: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/23.jpg)
Zilog Z80• 1976• An improved 8080
• 80 additional instructions• Block move instructions• Bit manipulation
• 2 Register banks• Suitable for interrupt
handling
• Federico Faggin• Left Intel at 1974• After his work on 8080• Founded Zilog
microprocessors and microcontrollers - sadri 23
![Page 24: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/24.jpg)
Zilog Z80 (2)• Clock Frequency:
• 2.5MHz to 20 MHz (NMOS to CMOS)
• Memory interface• Z80 capable of generating DRAM refresh signals itself
• CP/M • Fist operating system for microprocessors • Mainly designed for 8080• Z80 and 8080 were code compatible
• Extensions to Z-80• Z180, Z280, Z800• eZ80 : 24bits core
microprocessors and microcontrollers - sadri 24
![Page 25: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/25.jpg)
Zilog Z80 (3)
microprocessors and microcontrollers - sadri 25
![Page 26: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/26.jpg)
Zilog Z80 (4)
microprocessors and microcontrollers - sadri 26
![Page 27: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/27.jpg)
Zilog Z80 (5)• Registers
• A : Accumulator• F : Flags
• Carry, Zero, Parity, … • BC, DE, HL : 8/16bits registers
• 8bits for computations• 16bits for address generation
• SP : 16bits stack pointer • PC : 16bits program counter• IX , IY : 16bit index register• R : 8bits DRAM refresh counter• I : 8bits interrupt vector, base register
• Shadow registers : AF’, BC’, DE’, HL’
microprocessors and microcontrollers - sadri 27
![Page 28: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/28.jpg)
Zilog Z80 (6)• Addressing modes:
• Immediate: • LD A,FFH• LD HL,1234H
• Page zero (used for jumps and calls)• Relative (used for jumps and calls)• Extended addressing (used for jumps and calls)• Indexed addressing
• LD A,(IX+1)• LD A,(IY-4)
• Register indirect addressing• LD A,(HL)
microprocessors and microcontrollers - sadri 28
![Page 29: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/29.jpg)
Zilog Z80 (7)
microprocessors and microcontrollers - sadri 29
![Page 30: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/30.jpg)
Zilog Z80 (8)• Instruction: LD A,(HL)
microprocessors and microcontrollers - sadri 30
![Page 31: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/31.jpg)
Zilog Z80 (9) • Instruction : OUT n,A
microprocessors and microcontrollers - sadri 31
![Page 32: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/32.jpg)
AMD AM2901• 4bits CPU
• 4-bit-slice processor
• Contained ALU and control signals• 8bit ALU consists of two 4bits ALU
• 16 registers 4bits each• AM2903 : contained multiply operation• AMD9511 : First floating point coprocessor
• 1979• 32bits operations
microprocessors and microcontrollers - sadri 32
![Page 33: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/33.jpg)
Intel MCS-51• 1977• Microcontroller
• On-chip RAM and ROM
• 2bytes instruction set• Over 1Billion sold from 1988 • Extensions by Siemens and TI• Available widely today
• In different forms
microprocessors and microcontrollers - sadri 33
![Page 34: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/34.jpg)
Intel MCS-51 (2)• Four separate register sets• Internal static RAM:
• 80C51 : 128 Bytes• 80C52 : 256 Bytes• Address Range : 0x0 – 0xff
• 0x0 – 0x7f : can be accessed directly (128bytes)• Example : MOV A,30h
• 0x7f – 0xff : should be accessed indirectly • Example : MOV A,@R0
• 0x7f – 0xff : Are control registers of 8051 ( Special Function Registers )• 0x20 – 0x2f : bit accessible
• Internal program memory • Support for external memory
microprocessors and microcontrollers - sadri 34
![Page 35: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/35.jpg)
MCS-51 Internal Memory
microprocessors and microcontrollers - sadri 35
![Page 36: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/36.jpg)
MCS-51 Internal Memory
microprocessors and microcontrollers - sadri 36
![Page 37: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/37.jpg)
MCS-51 Bit Memory• Addresses : 20H – 30H • Bit Address: 00H – 7FH (128bits total)• Instruction sample:
• SETB 24H• CLR 25H• MOV 20H,#0FFH
• Equivalent to 8 SETB operations
• Bit Address: 80H – FFH • Used for accessing SFR • Example:
• MOV P0,#01• SETB 80H
microprocessors and microcontrollers - sadri 37
![Page 38: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/38.jpg)
MCS-51 (3)• Supported Peripherals
• UART• universal asynchronous receiver transmitter• Serial interface (TX/RX)
• Timers• time measurement• Make an event happen in a specified intervals
• I2C• inter-integrated circuit bus• Multi-master bus• Mainly to transfer control data
• SPI• Serial peripheral interconnect• Serial data transfer for memories
microprocessors and microcontrollers - sadri 38
![Page 39: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/39.jpg)
MCS-51 (4)• Supported peripherals (2)
• USB • Peripheral • Host
• CAN• Controller-area network • A bus to allow microcontrollers talk to each other in a vehicle • Without a host computer • Now also used in industrial automation and medical equipment
• PWM generator• Generate PWM pulses
microprocessors and microcontrollers - sadri 39
![Page 40: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/40.jpg)
MCS-51 (5) • Supported Peripherals
• Analog comparator• A/D and D/A• RTC
• A computer clock• Keeps track of the current time• Keeps accurate time and date
microprocessors and microcontrollers - sadri 40
![Page 41: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/41.jpg)
MCS-51 Special Function Registers
microprocessors and microcontrollers - sadri 41
![Page 42: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/42.jpg)
MCS-51 Ports• 8051/52 has 4 ports
• General purpose I/O• P0, P1, P2, P3
• Using external memory:• Program is stored outside 8051• P0 & P2 will be used for memory interfacing
microprocessors and microcontrollers - sadri 42
![Page 43: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/43.jpg)
MCS-51 Stack Pointer• SP points to the tail of the stack• PUSH A
• SP SP+1 • Value A will be stored in memory address : SP
• POP A• Value A will be read from memory address : SP • SP SP – 1
• Instructions that change SP:• CALL, RET, POP , PUSH, interrupts
microprocessors and microcontrollers - sadri 43
![Page 44: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/44.jpg)
MCS-51 SFRs• DPL/DPH : DPTR , Data pointer
• 16bits register• Used for addressing external operands
• PCON : Power control• Sleep mode
• TCON :Timer control• Stop, start , overflow…
• TMOD : Timer mode• 16bits timers/13bits/ two separate 8bits• Count what? Events? External pin changes?
• TL0/TH0 , TL1/TH1 : Timers • Always count up
microprocessors and microcontrollers - sadri 44
![Page 45: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/45.jpg)
MCS-51 SFRs (2)• SCON: serial control
• Baud rate• Start/stop• Flags
• SBUF : serial port data buffer• IE : Interrupt enable • IP : interrupt priority
• Example: High priority for serial interrupt • PSW : program status word
• Carry flag, overflow flag, parity flag,… • Register bank select bits
• ACC : Accumulator• MOV E0H,#20h == MOV A,#20h
• B : used for divide and multiply operations
microprocessors and microcontrollers - sadri 45
![Page 46: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/46.jpg)
MCS-51 Addressing Modes• Immediate addressing
• MOV A,#20h
• Direct Addressing• MOV A,30h
• Indirect Addressing• MOV A,@R0
• External Addressing• MOVX A,@DPTR
• Code Indirect• MOVC A,@DPTR
microprocessors and microcontrollers - sadri 46
![Page 47: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/47.jpg)
Intel MCS-51
microprocessors and microcontrollers - sadri 47
![Page 48: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/48.jpg)
Microchip Corporation• Created 1987
• A “General Instrument” company spin off
• Products• Micro-controllers
• PIC16/18• PIC24/32• dsPIC• Serial storage :
• Serial EEPROM• Serial SRAM
• USB controllers• ZigBee interfaces
microprocessors and microcontrollers - sadri 48
![Page 49: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/49.jpg)
Microchip PIC• 1975• PIC : Programmable Interface Controller • Designed in Harvard University
• To be used in a commercial product• In “General Instrument” company
• A new company born• Arizona Microchip Technology
• 2008:• Microchip announced its six billionth PIC processor shipment
microprocessors and microcontrollers - sadri 49
![Page 50: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/50.jpg)
PIC Micro-controllers• No difference between
• Memory space• Register space• RAM serves as: memory & registers
• Banking mechanism• Extend addressing range • Data transfers should happen within a bank
• Or accumulator should be used as temporary storage• Later versions
• Move instructions• Capable of addressing whole memory range
• Generally• No external memory interface• Exception : PIC17 & high pin count PIC18
• Shadow registers in PIC18 for interrupts
microprocessors and microcontrollers - sadri 50
![Page 51: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/51.jpg)
Code Space• ROM• EPROM• Flash ROM• Addressing in program memory:
• Is not based on Bytes• Depends on length of instructions• For example:
• Each memory cell is 12Bits• There are total number of 128cells of 12Bits each• Example : 4096*14bits for 16F690
• Stack• Is not accessible from software
• PIC18 • Byte addressable memory• Software based stack
microprocessors and microcontrollers - sadri 51
![Page 52: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/52.jpg)
PIC Performance• Each instruction
• Takes 2 instruction cycle to execute
• Execution time• Number of instructions * 2
• Interrupt latency is constant• 3 instruction cycles
• Measuring performance of a portion of code:• Profiling
microprocessors and microcontrollers - sadri 52
![Page 53: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/53.jpg)
Real-time system• A system
• Which should produce response to input• In a specified amount of time
• Profiling • Important in making real-time systems
• A program that performs profiling:• Profiler
• Every CPU architecture• Has its own profiler
• Example:• Intel VTune Performance Analyzer
microprocessors and microcontrollers - sadri 53
![Page 54: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/54.jpg)
PIC Compilers• C compiler• 2008
• Microchip announced their own compiler• For 18F, 24F and 30F devices
• In contrast• Atmel AVR
• Supported by GNU C compiler
microprocessors and microcontrollers - sadri 54
![Page 55: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/55.jpg)
PIC10 & PIC16• PIC16x
• 33 fixed length 12bits instructions (RISC)• 32Bytes register file• 2 level deep call stack• First 7 to 9 bytes of register file: special purpose registers• Bank number : higher 3bits of FSR• Registers 0-15 are global
• Not affected by bank select bits• Registers 16-31
• Will change by bank select bits
microprocessors and microcontrollers - sadri 55
![Page 56: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/56.jpg)
Microchip PIC17/18• PIC17x
• 16Bits op-codes• 16 level deep call stack • Read access to code memory• Direct register to register moves• External program memory interface• Single-cycle 8bits multiply• 64K-word program space (2K to 8K on chip)
• PIC18x • We will have a close look later
microprocessors and microcontrollers - sadri 56
![Page 57: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/57.jpg)
dsPIC and PIC24• 16bits micro-controllers• Mass production: 2004 • dsPIC : digital signal processing capabilities• Features
• Added 16 registers• Stack in RAM• Direct access to data in program memory• Interrupt sources may be assigned to handlers
• Interrupt vector table
microprocessors and microcontrollers - sadri 57
![Page 58: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/58.jpg)
dsPIC• Supported by : GNU C compiler• Support for
• Hardware MAC• Single cycle 16X16 multiplication
• Barrel shifter• Direct Memory Access operations
• We will talk about capabilities of DSP chips in depth later!
microprocessors and microcontrollers - sadri 58
![Page 59: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/59.jpg)
PIC32• 2007• Based on MIPS32 M4K Core• Supported by GCC• …
microprocessors and microcontrollers - sadri 59
![Page 60: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/60.jpg)
Intel 80x86• 1978• 16Bits CPU• 1979 : Intel 8088
• The same architecture as 8086• 8Bits data bus instead of 16Bits bus• Used in first IBM PC
• Clock frequency: 5 – 10MHz
microprocessors and microcontrollers - sadri 60
![Page 61: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/61.jpg)
At the time of 8086• Intel 8085 (1977)• Motorola 6800 (1974)• Microchip PIC16X (1975)• MOS Technology 6502 (1975)• Zilog Z80 (1976)• Motorola 6809 (1978)
microprocessors and microcontrollers - sadri 61
![Page 62: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/62.jpg)
8086• Project: Spring 1976 – Summer 1978 • Backward compatible
• 8008, 8080, 8085
• Support for• Full 16Bits processing
• Base + Offset addressing• Self repeating operations• Micro-coded Multiply & Divide• Bus structure adapted to co-processors
• 8087 / 8089
microprocessors and microcontrollers - sadri 62
![Page 63: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/63.jpg)
Area & Naming• 20,000 transistors• Naming
• Used in most of the later CPUs• 80286, 80386, 80486, 80586 …
microprocessors and microcontrollers - sadri 63
![Page 64: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/64.jpg)
8086 pin out
microprocessors and microcontrollers - sadri 64
![Page 65: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/65.jpg)
8086 Modes• 8086 Minimum Mode
• Normal mode of operation • One CPU is connected to other peripherals
• 8086 Maximum Mode• Used when there are multiple processors in system• Bus control signals by 8288 bus controller
• IBM/PC • Maximum mode• CPU + co-processor
microprocessors and microcontrollers - sadri 65
![Page 66: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/66.jpg)
8086 RegistersMain registers
AH AL AX (primary accumulator)
BH BL BX (base, accumulator)
CH CL CX (counter, accumulator)
DH DL DX (accumulator, other functions)
Index registers
SI Source Index
DI Destination Index
BP Base PointerSP Stack Pointer
microprocessors and microcontrollers - sadri 66
![Page 67: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/67.jpg)
8086 RegistersStatus register15
14
13
12
11
10 9 8 7 6 5 4 3 2 1 0 (bit position)
- - - - O D I T S Z - A - P - C FlagsSegment register
CS Code Segment
DS Data SegmentES ExtraSegment
SS Stack Segment
Instruction pointer
IP Instruction Pointer
microprocessors and microcontrollers - sadri 67
![Page 68: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/68.jpg)
8086 Flags• O : Overflow
• Set when MSB is set or cleared• D : Direction
• Direction of string operation• I : interrupt enable
• Set this, enable maskable interrupts • NMI is always active
• T : single step flag• S : sign
• Set when MSB of the result is set • Z : Zero flag • A : Some kind of carry• P : Parity flag
• Set if number of 1 is even• C : Carry flag
• Set if carry from MSB , or Borrow to MSB happened
microprocessors and microcontrollers - sadri 68
![Page 69: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/69.jpg)
Segmentation• Registers : 16Bits• External address bus: 20Bits• Address generation:
• Segment Register << 4 + Offset Register
• Could address 1MBytes • Pointers
• Near : inside a segment• Far : every where!
microprocessors and microcontrollers - sadri 69
![Page 70: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/70.jpg)
Memory Models• Compilers
• Different memory models for programs• To specify default pointer size
• Tiny (max 64kbytes)• Small (128kbytes)• Compact (data > 64kbytes)• Medium (code > 64kbytes)• Large (code , data > 64kbytes)• Huge (arrays > 64kbytes)
microprocessors and microcontrollers - sadri 70
![Page 71: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/71.jpg)
8086• Separate Memory and I/O space
• 64kbyte I/O space
• Multiplexed address and data bus• Limited performance
• 256 Interrupts
microprocessors and microcontrollers - sadri 71
![Page 72: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/72.jpg)
Co-Processors• 8086
• Capable of connecting to co-processor chips• Floating point calculations
• 8087• Math co-processor• 80bit values
microprocessors and microcontrollers - sadri 72
![Page 73: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/73.jpg)
Compatible Versions• By
• Fujitsu • Harris/Intersil• OKI• Siemens• Texas Instruments• NEC• Mitsubishi• AMD• Soviet Union
microprocessors and microcontrollers - sadri 73
![Page 74: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/74.jpg)
Intel 8087• 1980• First floating point co-processor for 8086• 45,000 transistors• Computation performance
• 50,000 FLOPS
• 8087 can be paired with 8086, 8088• All 8087 Assembly instructions begin with
• FADD, FMUL, FCOM
• All 8087 op-codes begin with• 11011 pattern (27 decimal)
microprocessors and microcontrollers - sadri 74
![Page 75: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/75.jpg)
Intel 8087• Registers
• Not addressable directly
• 8 registers• Make a stack • 8 levels deep• Each register : 80 bits• St0 to st7
• Design of 8087• Basis of IEEE 754 standard• 80387 : first co-processor meeting IEEE standard completely
• Data types in 8087• 32/64/80 Bits
microprocessors and microcontrollers - sadri 75
![Page 76: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/76.jpg)
microprocessors and microcontrollers - sadri 76
![Page 77: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/77.jpg)
8087 Instruction Execution• 8087
• Directly connected to Data and Address buses of 8086 CPU
• 8086• Gives control to 8087 • When it encounters instructions that begin with 27• 8087 gives the control back when finished with operations
• Later co-processors• Did not connect to buses directly• Instruction was given by CPU itself
microprocessors and microcontrollers - sadri 77
![Page 78: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/78.jpg)
A BRIEF LOOK…CHAPTER 2
microprocessors and microcontrollers - sadri 78
![Page 79: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/79.jpg)
Logic Gates• NOT
• 2 transistors
• FET switches• Built using Silicon• Not ideal
• Leakage current• Manufacturing technology• Clock frequency
microprocessors and microcontrollers - sadri 79
![Page 80: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/80.jpg)
Transistor CountFunction Transistor
countNOT 2BUF 4NAND 2-input 4XOR 2-input 6XNOR 2-input 8NOT MUX 2-input 8MUX 4-input 24Adder full 28Latch, D gated 8Flip-flop, edge triggered dynamic D with reset 12
microprocessors and microcontrollers - sadri 80
![Page 81: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/81.jpg)
CPU transistor count (1)
Processor Transistor count
Date of introduction
Manufacturer Process Area
Intel 4004 2,300 1971 Intel 10 µmIntel 8008 3,500 1972 Intel 10 µmMOS Technology 6502
3,510 1975 MOS Technology
Intel 8080 4,500 1974 Intel 6 μmIntel 8088 29,000 1979 Intel 3 μmIntel 80286 134,000 1982 Intel 1.5 µm
microprocessors and microcontrollers - sadri 81
![Page 82: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/82.jpg)
CPU transistor count (2)
Intel 80386 275,000 1985 Intel 1.5 µmIntel 80486 1,180,000 1989 Intel 1 µmPentium 3,100,000 1993 Intel 0.8 µmAMD K5 4,300,000 1996 AMD 0.5 µmPentium II 7,500,000 1997 Intel 0.35 µm
microprocessors and microcontrollers - sadri 82
![Page 83: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/83.jpg)
CPU transistor count (3)
AMD K6 8,800,000 1997 AMD 0.35 µmPentium III 9,500,000 1999 Intel 0.25 µmAMD K6-III 21,300,000 1999 AMD 0.25 µmAMD K7 22,000,000 1999 AMD 0.25 µmPentium 4 42,000,000 2000 Intel 180 nmAtom 47,000,000 2008 Intel 45 nmBarton 54,300,000 2003 AMD 130 nmAMD K8 105,900,000 2003 AMD 130 nmItanium 2 220,000,000 2003 Intel 130 nm
Cell 241,000,000 2006 Sony/IBM/Toshiba 90 nm
microprocessors and microcontrollers - sadri 83
![Page 84: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/84.jpg)
CPU transistor count (4)Core 2 Duo 291,000,00
0 2006 Intel 65 nm
AMD K10 463,000,000[1] 2007 AMD 65 nm
AMD K10 758,000,000[2] 2008 AMD 45 nm
Itanium 2with 9MB cache
592,000,000 2004 Intel 130 nm
Core i7(Quad)
731,000,000 2008 Intel 45 nm 263 mm²
POWER6 789,000,000 2007 IBM 65 nm 341 mm²
Six-Core Opteron2400
904,000,000 2009 AMD 45 nm
microprocessors and microcontrollers - sadri 84
![Page 85: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/85.jpg)
CPU transistor count (5)
Six-Core Core i7
1,170,000,000 2010 Intel 32 nm
Dual-Core Itanium 2
1,700,000,000[3] 2006 Intel 90 nm 596 mm²
Six-Core Xeon 7400
1,900,000,000 2008 Intel 45 nm
Quad-Core Itanium Tukwila
2,000,000,000[4] 2010 Intel 65 nm
8-Core XeonNehalem-EX
2,300,000,000[5] 2010 Intel 45 nm
microprocessors and microcontrollers - sadri 85
![Page 86: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/86.jpg)
GPU transistor count
Processor Transistor count
Date of introduction
Manufacturer Process Area
G80 681,000,000 2006 NVIDIA 90 nm 480 mm²
RV770 956,000,000[6] 2008 AMD 55 nm 260 mm²
RV850 1,040,000,000[7] 2009 AMD 40 nm 170 mm²
GT200 1,400,000,000[8] 2008 NVIDIA 55 nm 576 mm²
RV870 2,154,000,000[9] 2009 AMD 40 nm 334 mm²
GF100 3,000,000,000[10] 2010 NVIDIA 40 nm 529 mm²
microprocessors and microcontrollers - sadri 86
![Page 87: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/87.jpg)
Gordon Moore• The co-founder of Intel• Famous
• Because of Moore’s law
microprocessors and microcontrollers - sadri 87
![Page 88: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/88.jpg)
Moore’s Law (1)• 1965• Number of transistors
• In commercial CPUs• Will be almost DOUBLED • Every two years
• In other words• Number of transistors per chip:• 2 ^ (year – 1959)
microprocessors and microcontrollers - sadri 88
![Page 89: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/89.jpg)
Moore’s Law (2)• Number of designers for each CPU
• Grows as 1/x• 4004 had 3 designers• Intel dual core has 300 designers
• Fab cost • Grows as 1/x• 90nm fab costs 2 Billion dollars
microprocessors and microcontrollers - sadri 89
![Page 90: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/90.jpg)
Moore’s Law in Practicemicroprocessors and microcontrollers - sadri 90
![Page 91: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/91.jpg)
Improving Performance• How to improve performance
• Increase transistor count• Cache area• Parallel units
• Increase frequency
microprocessors and microcontrollers - sadri 91
![Page 92: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/92.jpg)
NOT Gate Power Consumption
microprocessors and microcontrollers - sadri 92
![Page 93: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/93.jpg)
CPU Power Consumption
microprocessors and microcontrollers - sadri 93
![Page 94: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/94.jpg)
Generated Heat• Generated Heat is a function of:
• F : Running frequency• V^2 : Supply voltage to the power of 2
• We have to decrease these variables
microprocessors and microcontrollers - sadri 94
![Page 95: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/95.jpg)
microprocessors and microcontrollers - sadri 95
![Page 96: introduction to cpus - Googoolia TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers](https://reader031.vdocument.in/reader031/viewer/2022020121/5c9f248f88c993552d8cf42c/html5/thumbnails/96.jpg)
MULTI CORE COMPUTINGChapter 3
microprocessors and microcontrollers - sadri 96