designing embedded hardware 01. introduction of computer architecture yonam institute of digital...
TRANSCRIPT
![Page 1: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/1.jpg)
Designing Embedded Hardware01. Introduction of Computer Architecture
Yonam Institute of Digital Technology
![Page 2: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/2.jpg)
OverviewIntroduction of Computer
Architecture
2
Computer?
What is the difference between desktop computer
and embedded computer?
![Page 3: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/3.jpg)
Basic ConceptsBasic Concepts
![Page 4: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/4.jpg)
What is Computer?
4
Computer is a machine for
processing, storing, and retrieving data.
1) processor, memory, devices and so on.2) firmware, bootloader, operating system, application
Computer is composed of
hardware1) and software2)
Introduction of Computer Architecture
![Page 5: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/5.jpg)
•Software Layers
5
Introduction of Computer Architecture
![Page 6: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/6.jpg)
Basic System Architecture
6
Introduction of Computer Architecture
![Page 7: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/7.jpg)
•Processor? Or Controller?1)
7
ControlUnit
ArithmeticUnit
RegisterUnit
Auxiliary MemoryUnit
Main MemoryUnit
OutputUnit
InputUnit Interrupt
Handler
DMAHandler
ParallelIO Port
SerialIO Port
ROM
RAMTimer/Counter
AD/DAConverter
CPUCore
1) The figures on this slide are cited from http://sjlee.sch.ac.kr/lecture/mp/06-mp-mpintro-1.pdf
Introduction of Computer Architecture
![Page 8: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/8.jpg)
•Data Flow (Instruction vs. Data)
CPU Memory CPU MemoryRead
Read
Write
Instructions Data
8
Introduction of Computer Architecture
![Page 9: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/9.jpg)
•von Neumann vs. Harvard
CPU
ProgramandData
Memory
von Neumann Architecture
DataMemory
CPUProgramMemory
Harvard Architecture
9
Introduction of Computer Architecture
![Page 10: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/10.jpg)
•How to Access I/O Device
10
Introduction of Computer Architecture
![Page 11: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/11.jpg)
•Bus▫A physical group of signal lines that have a
related function▫Makes it possible to transfer information from
one device to another
11
3-Bus System
Introduction of Computer Architecture
![Page 12: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/12.jpg)
•Processor Operations
12
Writing data to memory and IO device Reading data from memory and IO device Reading instruction from memory Manipulating data within processor internally
Introduction of Computer Architecture
![Page 13: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/13.jpg)
•ALU (Arithmetic Logic Unit)▫performs the mathematical operations of data
within processor addition, subtraction, NOT, AND, OR, shift,
rotate, and so on
13
register
registeror
memory
registeror
memory
Introduction of Computer Architecture
![Page 14: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/14.jpg)
Interrupt
•Interrupts (traps or exceptions)▫A technique of diverting the processor from the
execution of the current programs so that it may deal with some event that has occurred.
•Types of Interrupts▫Hardware interrupts▫Software interrupts
14
Introduction of Computer Architecture
![Page 15: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/15.jpg)
•Polling vs. Interrupt
15
Start
Return
Device 0Flag set?
Device 1Flag set?
Service Device 0
Return
Return
Service Device 1
yes
yes
no
no
Introduction of Computer Architecture
![Page 16: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/16.jpg)
•Interrupt Handling
16
Introduction of Computer Architecture
![Page 17: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/17.jpg)
CISC vs. RISCCISC1) RISC2)
# of instructions A few hundreds A few tens
Instruction Length Variable (1 ~ 17 bytes) Fixed (4 bytes)
Instruction execution time
Variable (1 ~ 300 clks / inst.)
Fixed (1 clk/inst.)
Pipelining Not efficient Efficient
# of registers Small (about 8) Large (32 ~ 200)
Data memory access Memory Operands Load, store only
Design effort 5 – 10 X 600 (m/y) 1 X 60 (m/y)
17
1) CISC: Complex Instruction Set Computer2) RISC: Reduced Instruction Set Computer
Introduction of Computer Architecture
![Page 18: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/18.jpg)
•Pipeline
18
Fetch: Instruction fetch & increase PC Decode: Instruction decode & register read Execute: ALU operation or address calculation Memory: Data cache access Write: Register write-back
Introduction of Computer Architecture
![Page 19: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/19.jpg)
Digital Signal Processor (DSP)
•Supports instruction sets and architectures optimized for numerical processing of array data.
•Extends the Harvard architecture to separate data and code spaces.
•Commonly used in embedded applications
19
Introduction of Computer Architecture
![Page 20: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/20.jpg)
MemoryMemory
![Page 21: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/21.jpg)
Memory Organization
21
Introduction of Computer Architecture
![Page 22: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/22.jpg)
Random Access Memory: RAM•Working memory with volatility
22
SRAM
StrengthsHigh Speed
DrawbacksLow Density
High CostSRAM Size of > 10MB is not practical
Used in L2 on-chip Cache & L3 off-chip
Cache
DRAM
StrengthsLow Cost
High Density
DrawbacksLow Speed
Used in Main Memory
Introduction of Computer Architecture
![Page 23: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/23.jpg)
Read-Only Memory: ROM
• Nonvolatile memory▫ Can be read from▫ Can not be written to
• To hold the code that needs at power-up▫ Firmware, bootloader or application
• Variations▫ OTP ROM (One-Time Programmable ROM)▫ EPROM (Erasable Programmable ROM)▫ E2PROM (Electrically EPROM)▫ Flash
23
Introduction of Computer Architecture
![Page 24: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/24.jpg)
Input/OutputInput/Output
![Page 25: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/25.jpg)
Device Communication
•I/O devices▫Used by the processor to communicate with
external world Serial: keyboard, mouse, modem, etc Parallel: disk-drive controller, video and audio
controller, …•How to exchange data
▫Programmed I/O▫Interrupt-driven I/O▫Direct Memory Access (DMA)
25
Introduction of Computer Architecture
![Page 26: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/26.jpg)
26
Start
Check status of disk
Disk ready?
Send data from memory to disk or
from disk to memory
Done?
End
yes
no
yes
no
Start
Issue read or write request to disk
Do other processing until disk issues an interrupt
Transfer data between disk and memory
Done?
yes
no
End
Programmed I/O Interrupt-Driven I/O
Introduction of Computer Architecture
![Page 27: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/27.jpg)
Direct Memory Access
27
DMA types Standard block transfer Demand-mode transfer Fly-by transfer Data-chaining transfer
Introduction of Computer Architecture
![Page 28: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/28.jpg)
Parallel andParallel andDistributedDistributedComputersComputers
![Page 29: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/29.jpg)
Single-Instruction Multiple-Data (SIMD)
29
All PEs execute synchronously the same instructions using private data Instructions are broadcast globally by a single control unit Single control thread, single programControl Unit
Processor
Memory
PE0
Processor
Memory
PE1
Processor
Memory
PE2
Processor
Memory
PEn-1
Interconnection Network
……
Introduction of Computer Architecture
![Page 30: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/30.jpg)
Multiple-Instruction Multiple-Data (MIMD)
30
Processor
Memory
PE0
Processor
Memory
PE1
Processor
Memory
PE2
Processor
Memory
PEn-1
Interconnection Network
……
Each PE executes asynchronously its own instructions using private data Multiple control thread, multiple collaborating programs
Introduction of Computer Architecture
![Page 31: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/31.jpg)
Shared Memory Computer
31
Introduction of Computer Architecture
![Page 32: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/32.jpg)
Message-Passing Computer
32
Introduction of Computer Architecture
![Page 33: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/33.jpg)
Embedded Computer Architecture
33
Block Diagram of an Generic Computer
Introduction of Computer Architecture
![Page 34: Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology](https://reader035.vdocuments.net/reader035/viewer/2022062511/551b6750550346a6148b4a4c/html5/thumbnails/34.jpg)
34
Block Diagram of an Embedded Computer
Introduction of Computer Architecture