Embedded Systems Notes
Embedded Systems Notes
Features of DSP
DSP Memory
Situated Computing
An embedded system is situated in an external environment
Sensors provide input about external environment
Input signal processed by the embedded system
Sensors can be designed for virtually every physical and chemical quantity
weight, velocity, acceleration, electrical current, voltage, temperatures etc.
FIR Filtering:
Each tap (M+1 taps total) requires
Two data fetches
Multiply
Accumulate
Memory write-back to update
Simple DSP (1982): Texas Instrument’s TMS32010
16-bit fixed-point
“Harvard architecture”
separate instruction, data memories Instruction
Accumulator Memory
Specialized instruction set Processor
Load and Accumulate Data
390 ns Multiple-Accumulate Memory
(MAC) time; 228 ns today Datapath:
These organization of the data path is primarily to facilitate multiply
and accumulate operation, which is the key operation in filter Mem
T-Register
implementation.
Here X4, H4, ... are direct (absolute) memory addresses: Multiplier
LT X4 ; Load T with x(n-4)
MPY H4 ; P = H4*X4 P-Register
ALU
LTD X3 ; Load T with x(n-3)(x(n-4) =x(n-3)
; Acc = Acc + P
MPY H3 ; P = H3*X3 Accumulator
LTD X2
MPY H2
Two instructions per tap
Features Common to Most DSP Processors
Features Common to Most DSP Processors
Data path configured for DSP
Specialized instruction set
Multiple memory banks and buses (for processing multiple inputs simultaneously)
Specialized addressing modes
Specialized execution control techniques
Specialized peripherals for getting inputs from sensors for DSP
DAC for outputs and ADC for the inputs
Accumulator G
DSP Memory
FIR Tap implies multiple memory accesses
Data , coefficients
DSPs want multiple data ports
Some DSPs have ad hoc techniques to reduce memory bandwidth demand
Instruction repeat buffer: do 1 instruction 256 times
Often disables interrupts, thereby increasing interrupt latency
Some recent DSPs have instruction caches
May allow programmer to “lock in” instructions into cache (never be removed from the cache)
Option to turn cache into fast program memory
No DSPs have data caches
Data is coming in a sequence or stored in a buffer, same data is not expected to be
used multiple times
May have multiple data memories
THANK YOU