1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as...
-
Upload
emery-barber -
Category
Documents
-
view
213 -
download
0
Transcript of 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as...
![Page 1: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/1.jpg)
1ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
ECE 354 Lecture 1 The Big Picture
What are embedded systems?
Challenges in embedded computing system design.
Design methodologies.
Sophisticated functionality. Real-time operation. Low manufacturing cost. Low power. Designed to tight deadlines by
small teams.
![Page 2: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/2.jpg)
2ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Definition
Embedded system: any device that includes a programmable computer but is not itself a general-purpose computer.
Take advantage of application characteristics to optimize the design:• don’t need all the general-purpose bells and whistles.
![Page 3: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/3.jpg)
3ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Embedding a computer: a very simplified view…
CPU
mem
input
output analog
analog
embeddedcomputer
![Page 4: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/4.jpg)
4ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Examples
Personal digital assistant (PDA). Printer. Cell phone. Automobile: engine, brakes, dash, etc. Television. Household appliances.
![Page 5: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/5.jpg)
5ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
More examples
Cell phones, Ipod and MP 3 players, Webcams, Navigation Systems
Routers, Blade servers, Wireless PC cards Automobiles, Car Alarms, Keyless Entry Systems Building Security, card swiping systems Embedded Medical Devices - Pacemakers
![Page 6: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/6.jpg)
6ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Characteristics of embedded systems
Sophisticated functionality. Real-time operation. Low manufacturing cost. Low power. Reliable and secure Designed to tight deadlines by small teams.
![Page 7: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/7.jpg)
7ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Functional complexity
Often have to run sophisticated algorithms or multiple algorithms.• Cell phone, laser printer.
Often provide sophisticated user interfaces.
![Page 8: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/8.jpg)
8ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Real-time operation
Must finish operations by deadlines.• Hard real time: missing deadline causes failure.• Soft real time: missing deadline results in degraded
performance.
Many systems are multi-rate: must handle operations at widely varying rates.
![Page 9: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/9.jpg)
9ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Non-functional requirements
Many embedded systems are mass-market items that must have low manufacturing costs.• Limited memory, microprocessor power, etc.
Power consumption is critical in battery-powered devices.• Excessive power consumption increases system cost
even in wall-powered devices.
![Page 10: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/10.jpg)
10ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Design teams
Often designed by a small team of designers. Often must meet tight deadlines.
• 6 month market window is common.• E.g., can’t miss back-to-school window for calculator.
![Page 11: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/11.jpg)
11ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Microprocessor alternatives for embedded systems
Ordinary microprocessor: CPU plus on-chip cache units.
Microcontroller: includes I/O devices, on-board memory.
Digital signal processor (DSP): microprocessor optimized for digital signal processing.
Hard core vs. soft core. Typical embedded word sizes: 8-bit, 16-bit, 32-
bit.
![Page 12: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/12.jpg)
12ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Embedded microprocessors
ARM, MIPS, Power PC, Freescale, 8051, X86 Various purposes
• Networks – MIPS• Mobile phone – ARM dominated• Industrial – Freescale Coldfire• Security – 8051 based, Infineon• High performance – X86, Intel Epic, other VLIW and
superscalars
![Page 13: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/13.jpg)
13ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Von Neumann CPU Architecture
Memory holds data and instructions. Central processing unit (CPU) fetches instructions
from memory.• Separation between CPU and memory distinguishes
programmable computer.
CPU registers: • program counter (PC)• instruction register (IR) • general-purpose registers • etc
![Page 14: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/14.jpg)
14ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
CPU + memory
memoryCPU
PC
address
data
IRADD r5,r1,r3200
200
ADD r5,r1,r3
![Page 15: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/15.jpg)
15ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Harvard architecture
CPUPC
data memory
program memory
address
data
address
instructions IR
![Page 16: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/16.jpg)
16ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
RISC vs. CISC Complex instruction set computer (CISC):
• many addressing modes• most operations can access memory• variable length instructions
Reduced instruction set computer (RISC):• only load/store can access memory• fixed-length instructions
Instruction set architectures – characteristics:• Fixed vs. variable length.• Addressing modes.• Number of operands.• Types of operands.
![Page 17: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/17.jpg)
17ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Multiple implementations of an ISA
Instruction set architectures may have several implementations:• varying clock speeds;• different bus widths;• different cache sizes;• etc.
![Page 18: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/18.jpg)
18ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Pipelining
Execute several instructions simultaneously but at different stages.
Pipeline hazards Simple three-stage pipe:
fetc
h
deco
de
exec
ute
mem
ory
![Page 19: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/19.jpg)
19ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Soft Core Processors
Are soft, i.e. specified through field programming just like programmable logic • Shipped as hardware description files, which can be
mapped onto FPGA. e.g: Nios 2.• Are bundled with software development tools (compiler,
simulator, etc.) Offer flexibility as microprocessor parameters
can be tuned to the application with tight on-chip interconnection with additional circuitry.
Designs can be marketed quickly. You can test and validate many designs quickly without making any specific board; no soldering and no wiring!
![Page 20: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/20.jpg)
20ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
What is Nios 2?
A 32-bit soft core processor from Altera Comes in three flavors: Fast, Standard, Light The three cores trade FPGA area and power
consumption for speed of execution. Is a RISC, Harvard Architecture: Simple
instructions, separate data and instruction memories.
Has 32 levels of interrupts. Uses the Avalon Bus interface Programs compiled using GNU C/C++ toolchain.
![Page 21: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/21.jpg)
21ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Nios 2 Architecture:
![Page 22: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/22.jpg)
22ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Three forms of Nios 2:
Nios II/f—The Nios II/f “fast” core is designed for fast performance. As a result, this core presents the most configuration options allowing you to fine-tune the processor for performance.
Nios II/s—The Nios II/s “standard” core is designed for small size while maintaining performance.
Nios II/e—The Nios II/e “economy” core is designed to achieve the smallest possible core size. As a result, this core has a limited feature set, and many settings are not available when the Nios II/e core is selected.
All three are available to you !
![Page 23: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/23.jpg)
23ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Selection in SOPC (System On a Programmable Chip):
![Page 24: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/24.jpg)
24ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Why use microprocessors?
Alternatives: random logic on a field-programmable gate arrays (FPGAs), custom logic, etc.
Microprocessors are often very efficient: can use same logic to perform many different functions.
Microprocessors simplify the design of families of products.
![Page 25: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/25.jpg)
25ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
The performance paradox
Microprocessors use much more logic to implement a function than does custom logic.
But microprocessors are often at least as fast:• heavily pipelined;• sophisticated design - large design teams;• aggressive VLSI technology.
![Page 26: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/26.jpg)
26ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Power
Custom logic is a clear winner for low power devices.
Modern microprocessors offer features to help control power consumption.
Software design techniques can help reduce power consumption.
![Page 27: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/27.jpg)
27ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Challenges in embedded system design
How much hardware do we need?• How big is the CPU? Memory?
How do we meet our deadlines?• Faster hardware or cleverer software?
How do we minimize power?• Turn off unnecessary logic? Reduce memory accesses?
![Page 28: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/28.jpg)
28ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Design methodologies
A procedure for designing a system. Understanding your methodology helps you
ensure you didn’t skip anything. Compilers, software engineering tools, computer-
aided design (CAD) tools, etc., can be used to:• help automate methodology steps;• keep track of the methodology itself.
Altera CAD tools: Quartus 2 , SOPC, Nios 2 IDE (Integrated Development Environment).
![Page 29: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/29.jpg)
29ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Design goals
Performance.• Overall speed, deadlines.
Functionality and user interface. Manufacturing cost. Power consumption. Other requirements (physical size, etc.)
![Page 30: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/30.jpg)
30ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Levels of abstraction
requirements
specification
architecture
componentdesign
systemintegration
![Page 31: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/31.jpg)
31ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Top-down vs. bottom-up
Top-down design:• start from most abstract description;• work to most detailed.
Bottom-up design:• work from small components to big system.
Real design uses both techniques.
![Page 32: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/32.jpg)
32ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Typical CAD design flow:
![Page 33: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/33.jpg)
33ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Designing hardware and software components Must spend time architecting the system before
you start coding. Some components are ready-made, some can
be modified from existing designs, others must be designed from scratch.
Example: SOPC for Hardware design and Nios 2 IDE for Software Design.
![Page 34: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/34.jpg)
34ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
SOPC
System On a Programmable Chip – a hardware development tool. Used for integrating various hardware components together like:
• Microprocessors, such as the Nios II processor• Timers• Serial communication interfaces: UART, SPI• General purpose I/O• Digital signal processing (DSP) functions• Communications peripherals• Interfaces to off-chip devices
• Memory controllers• Buses and bridges• Application-specific standard products (ASSP)• Application-specific integrated circuits (ASIC)• Processors
Generates files in Verilog or VHDL which can be added to the Quartus 2 project.
![Page 35: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/35.jpg)
35ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
![Page 36: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/36.jpg)
36ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Example SOPC system:
![Page 37: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/37.jpg)
37ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
SOPC system having NIOS:
![Page 38: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/38.jpg)
38ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
JTAG
JTAG - Joint Test Action Group: IEEE 1149.1 standard entitled: Standard Test Access Port and Boundary-Scan Architecture for test access ports used for testing printed circuit boards (and chips) using boundary scan.
Currently used also for programming embedded devices.• Most FPGAs and PLDs are programmed via a JTAG port.
![Page 39: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/39.jpg)
39ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Summary
Embedded computers are all around us.• Many systems have complex embedded hardware and
software.
Embedded systems pose many design challenges: design time, deadlines, power, etc.
Design methodologies help us manage the design process.
CAD tools like SOPC can reduce design time.
![Page 40: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/40.jpg)
40ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
What’s Next in Lecture 2?
We will peek inside CPU, addressing, assembly languages etc.
You will learn about I/Os and Caches. You will learn about some cool features of SOPC
and Nios 2 IDE !
![Page 41: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/41.jpg)
41ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Tentative graduate TA/undergraduate IA Lab Hours Monday 1-5 (4 Hours) Tuesday 1-5 (4 Hours) Wednesday 1-5 (4 Hours) Thursday 1-5 (4 Hours) Friday 1-3 (4 Hours)
18 Hours weekly
![Page 42: 1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e115503460f94afca27/html5/thumbnails/42.jpg)
42ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005
Pointers for Demos
A few pointers for your demos: - each demo will be 30 minutes, split as follows: 10 minutes ofquestions from the Prof covering the lecture, reading, quiz and lab.10 minutes where you demonstrate your work, 10 minutes of follow-upquestions about your demo. - rehearse your demo beforehand to make sure everything works.Do a brief "dry-run" with a TA to make sure you're all set andget some feedback - questions will be addressed to individual team members to makesure both of you know what's going on. Be prepared to indicate whoworked on which aspects of the project. But you should both be ableto answer all questions about your code and demo. - questions might include : 1) terminology (what is a NIOS?, how many bits wide is it? What is Avalon
bus?) 2) concepts, (why is a soft-core preferable to a hard-core, why not?) 3) what-ifs? (what if a particular line of your code is changed or
omitted?)