Embedded System Design (BEE-446) : General-Purpose Processors (Software)
Embedded System Design (BEE-446) : General-Purpose Processors (Software)
Embedded System Design (BEE-446) : General-Purpose Processors (Software)
BEE-446 2011
Lecture #06
Outline
Parallel Port Driver Example Application Specific Instruction Set Processors (ASIPs) Selecting a microporcessor
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik
Pin 13
PC Parallel port
Pin 2 LED
Switch
Using assembly language programming we can configure a PC parallel port to perform digital I/O
parallel port monitors the input switch and turns the LED on/off accordingly
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik
save the content save the content base + 1 for register #1 read register #1 mask out all but bit # 4 is it 0? if not, we need to turn the LED on
Pin 13
PC Parallel port
Pin 2 LED
Switch
dx, 3BCh + 0 ; base + 0 for register #0 al, dx ; read the current state of the port al, f7h ; clear first bit (masking) dx, al ; write it out to the port Done ; we are done
Register Address 0th bit of register #2 0th bit of register #2 6,7,5,4,3th bit of register #1 1,2,3th bit of register #2
1 2-9 10,11,12,13,15
dx ax endp
14,16,17
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik
Still programmable
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik
Microcontroller features
On-chip peripherals
Timers, analog-digital converters, serial communication, etc. Tightly integrated for programmer, typically part of register space
On-chip program and data memory Direct programmer access to many of the chips pins Specialized instructions for bit-manipulation
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik 7
DSP features
Several instruction execution units Multiple-accumulate single-cycle instruction, other instrs. Efficient vector operations e.g., add two arrays
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik
Opportunity to add a custom datapath hardware and a few custom instructions, or delete a few instructions
Can have significant performance, power and size impacts Problem: need compiler/debugger for customized ASIP
One solution: automatic compiler/debugger generation
e.g., www.tensillica.com
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik
Selecting a Microprocessor
Issues
Technical: speed, power, size, cost Non-Technical: development environment, prior expertise, licensing, etc.
SPEC: set of more realistic benchmarks, but oriented to desktops EEMBC EDN Embedded Benchmark Consortium, www.eembc.org
Suites of benchmarks: automotive, consumer electronics, networking, office automation, telecommunications
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik 10
Selecting a Microprocessor
Dhrystone: Synthetic benchmark, developed in 1984. Dhrystones/sec.
http://www.roylongbottom.org.uk/
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik
11
IBM PowerPC 750X MIPS R5000 StrongARM SA-110 Intel 8051 Motorola 68HC811
550 MHz
32/64
~1300
5W
~7M
$900
32/64 32
NA 268
NA 1W
3.6M 2.1M
NA NA
12 MHz 3 MHz
4K ROM, 128 RAM, 32 I/O, Timer, UART 4K ROM, 192 RAM, 32 I/O, Timer, WDT, SPI 128K, SRAM, 3 T1 Ports, DMA, 13 ADC, 9 DAC 16K Inst., 2K Data, Serial Ports, DMA
8 8
Microcontroller ~1 ~.5
~0.2W ~0.1W
~10K ~10K
$7 $5
TI C5416
160 MHz
NA
NA
$34
Lucent DSP32C
80 MHz
32
40
NA
NA
$75
Sources: Intel, Motorola, MIPS, ARM, TI, and IBM Website/Datasheet; Embedded Systems Programming, Nov. 1998
Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis And Dr. Osman Hassan, Modified By : Jameel Nawaz Malik
12