1
|
- Wayne Wolf
- Dept. of Electrical Engineering
- Princeton University
|
2
|
- A few claims about the relationship between computer architecture and
embedded systems.
- Today’s multiprocessor systems-on-chips and the design issues =
they
raise.
- Lecture concepts.
- Labs and benchmarks.
- Summary.
|
3
|
- Real-time performance.
- Extreme low power in some cases.
- Designers are somewhat indifferent as to hardware vs. software solut=
ions
to system design problems.
- Must design lots of systems---methodology is important.
|
4
|
- Embedded system designers implement applications using several types=
of
components:
- Analog subsystems.
- Custom digital modules.
- Processors.
- Software.
- Computer architecture supplies the processors for embedded systems.<=
/li>
|
5
|
- Upper-division embedded systems courses teach:
- Basic performance, energy analysis.
- System integration.
- Hardware/software co-design.
- Architecture courses can put an embedded systems spin on traditional
computer architecture topics.
|
6
|
- Configurable processors and custom instruction sets.
- Task-level parallelism.
- Interprocess communication mechanisms.
- Heterogeneous multiprocessors.
- Real-time and low-power.
|
7
|
- Hardware and software architectures determine capabilities.
- Algorithms include tools, methodologies.
- Applications guide design decisions.
|
8
|
- A system-on-chip with programmable processing elements.
- Usually heterogeneous architecture.
- May include special-purpose, hardwired processing elements.
|
9
|
|
10
|
|
11
|
- An architecture that is designed for an application domain:
- Can be used in several products.
- Allows customization.
- Platforms are often customized for their target audience.
- Platforms spread out development costs over more products.
- Some people hope for a single universal platform…
|
12
|
- Sophisticated markets:
- High volume.
- Demanding performance, power requirements.
- Strict price restrictions.
- Often standards-driven.
- Examples:
- Communications.
- Multimedia.
- Networking.
|
13
|
- Packet processing, control processing, security.
- Software development environment includes simulator.
|
14
|
|
15
|
- Multimedia applications: set-top box, etc.
- 2 CPUs, 3 busses, several accelerators,
I/O devices.
|
16
|
- Targets mobile multimedia.
- A multiprocessor-of-multiprocessors.
|
17
|
- Targets communications, multimedia.
- Multiprocessor with DSP, RISC.
|
18
|
|
19
|
|
20
|
- From Pace Soft Silicon/TI (Mcycles/sec).
- Faster processing time means longer shutdown for battery savings.
|
21
|
|
22
|
- ARM performs most general-purpose functions.
- DSP performs data=3Dintensive operations.
- Frame buffer is single-port SRAM.
- Security module includes ROM, single-port SRAM, eFuse cells, secure
peripherals.
- USB and synchronous serial interconnect used to connect to modem.
- Memory controllers:
- SDRAM, burst external memory, CompactFlash.
|
23
|
- Standards-based platforms need customizability.
- Many standards are too complex to embed entirely in hardware.
|
24
|
- Standards may limit programmability, provide parameters that simplify
implementation.
- Can substantially reduce cost, energy consumption.
|
25
|
- Configurable instruction sets.
- Memory system optimizations.
- Partitioning.
- Buffer sizing.
|
26
|
- Configurable instruction sets---back to the future.
- Improves performance.
- Lowers power consumption.
- Preserves customizability.
- Must understand the application enough to know how to extract useful
primitives.
|
27
|
- Custom memory systems can improve energy consumption, reduce cost,
improve performance.
- Restricted access to certain locations.
- Producer-consumer access.
|
28
|
|
29
|
|
30
|
- What platform, what tools?
- ARM is widely used but tools are expensive.
- Tools may become cheaper.
- Configurable:
- Tensilica has generous university program.
- University tools may have extensive dependencies.
- Multiprocessors:
- Few useful heterogeneous multiprocessor simulators with exception of
CMU simulator.
|
31
|
- ARM:
- Tools are reasonable but expensive.
- ARM7 is a simple processor.
- C5x:
- Reasonable tools.
- Good board.
- Deep pipeline, accumulator-based architecture.
- Sharc---interesting but old.
- Tensilica:
- Simulation only, no Verilog.
- Tools are useful.
- Japanese configurable processor:
|
32
|
- Data cache:
- Change cache size, cache configuration. Compare with program
modifications.
- Can measure with hardware.
- Instruction cache:
- Measure hit rate as a function of program unit.
- Instruction sets:
- Identify useful instructions for audio encode/decode.
- Energy consumption:
- Measure current for various activities.
- Can extend to power attack.
- TI board, other boards have current pickoff point.
|
33
|
- Where does it go in the curriculum?
- Requires extensive background:
- Hardware design.
- Software design.
- New Xilinx Virtex-II Pro board seems like a reasonable platform.
- Takes some time to learn board interfaces.
|
34
|
- Need larger benchmarks to see important behavior:
- Utilization of custom instructions.
- Buffer behavior.
- Interprocessor communication.
- Don’t have to master the application but do need a basic
understanding.
|
35
|
- Computers as Components Web site:
- http://www.princeton.edu/~wolf/embedded-book/chapter-aids/index.htm=
l
- MPSoC book Web site:
- http://www.princeton.edu/~wolf/mpsoc.html
- EE 464 Web site:
- http://www.princeton.edu/~wolf/EE464/
|
36
|
- Embedded systems provide some challenging performance/power goals,
complex algorithms for architecture studies.
- Can look at uniprocessor, multiprocessor issues.
- Labs can be cool but take patience to set up.
|