Title: TigerSHARC processor and evaluation board
1TigerSHARCprocessor and evaluation board
- Different capabilitiesDifferent functionality
2Concepts tackled
- Differences between processor and evaluation
board - Functionality present on TigerSHARC evaluation
board - TigerSHARC is NOT a microcontroller.
- A/D and D/A added simply to give evaluation board
something to process - ENEL619.04 (Topic 23) project
- Learn about TigerSHARC processor architecture
- Learn basics of how assembly code and
architecture interact - Set up a project (mainly in) in C to capture
a signal - Do some signal processing in C
- Work through optimizing one subroutine into
assembly code using more and more parallel
processor features - Use the same (or equivalent) code to look at
optimization issues on other processor Blackfin,
TI C64XX and C64XX, and Beagle (2 core with ARM
and TI C64XX
3TS201S Evaluation board contains 2 processors P0
(DSPA) and P1 (DSPB)
TWO TS201S processors Error messageswhen
linking about P0 and P1 mean problems with code
on specific Processor 0 (P0) Or processor (P1)
4Evaluation board Link Ports
Designed for star Configuration Up to 8
processorsworking together P0 to P7
(selectableby switches on backof evaluation
board(Never tried Dontdestroy link ports)
5- JTAG debug ONLY AVALIABLE IN 3rd floor labs
- ICT318 TigerSHARC (some stations).
- ICT320 Blackfin (some stations).
- Some boards available for home use of USB
connector. Lower speed communication rates than
JTAG (factor of 20 - 100). - Discuss deposit issues for home loan.
Audio connectors.Max input voltage around 1 V
p-pwith no DC. Too great a voltage destroys
the board Use MPEG or other players Keep Volume
down Damage and distortion issues
6Will be using IRQ lines IRQ0 button switch on
panel IRQ1 digital signal from light
sensor Demonstrate SIMPLE dual processing
Buttons and LEDs splitbetween processors Much
stuff on the boardshared between
processors(but NOT all)
7Evaluation BoardArchitecture
P0 P1
8Processorscan access each othersINTERNALmemor
y and registers
Processorscan shareEXTERNALmemory Memory alloc
ationdepends on ID
MEMORY MAP USED IN 8 TigerSHARC PROCESSOR CLUSTER
9Note labeled processor A and Brather than
processor 0 and 1
10Note labeled processor A and Brather than
processor 0 and 1
Will be using IRQ lines IRQ0 button switch on
panel IRQ1 digital signal from light
sensor Demonstrate SIMPLE dual processing
11How to use the evaluation board capability
- Read a lot in the hardware manual
- Modify some of the example programs provided in
- C\Program Files\Analog Devices\VisualDSP
5.0\TS\Examples\ADSP-TS201 EZ-Kit Lite - and then read a lot in the hardware manual
12CONCEPT OF LABS
- Signal processing demonstrated through the
development of algorithms for an improved doctors
stethoscope and associated equipment. - Demonstration rather than commercial exploitation
of TigerSHARCs highly parallel processing
capability. - Basically looking for something reasonably easy,
but non-trivial, to hang the lectures and
laboratories on.
13Example of a suitable projectTSL230R-Based Pulse
Oximeter
- A small section of plastic electrical conduit
houses both the TSL230R sensor and the red and IR
LEDs. The TSL230R registers the amount of light
passing through the inside diameter of the
conduit, which, in this case, is through a
patients finger. - Adapted from
- www.circuitcellar.com/library/print/1204/Bachioch
i173/4.htm
14What to we expect to see?
- As blood flows through the circulatory system, it
changes density because of the hearts pumping
pressure. This change also changes the absorption
rate of light, effectively modulating the light
absorption. The total light absorption is a
combination of modulated and constant absorption,
which is similar to a small AC noise riding atop
a DC voltage. - Adapted from www.circuitcellar.com/library/
print/1204/Bachiochi173/4.htm
15How we far will go in the laboratory is your
choice
- Study the absorption relationship of oxygen
levels in the blood for the red and IR
wavelengths. Notice how the oxygen level affects
the absorption rate at the red wavelength while
it remains almost constant at IR wavelengths. - Adapted from
- www.circuitcellar.com/library/print/1204/Bachioch
i173/4.htm
16Details from Circuit Cellar Article
- The TSL230Rs frequency output displayed on my
oscilloscope shows a slow frequency jitter marked
by the vertical cursors. The output frequency
shifts with the varying amount of light
absorption because of the blood pulsing within
the lights path. - Adapted from
- www.circuitcellar.com/library/print/1204/Bachioch
i173/5.htm
17Period of light sensor from article can we do
better?
- This Excel chart displays imported sample values
over time. Samples of the output frequency (30
samples per second formatted in microseconds)
were sent out the serial port and captured to a
file by HyperTerminal. - Adapted from
- www.circuitcellar.com/library/print/1204/Bachioch
i173/7.htm
18Labs.
- Check article for how determine heart rate was
handled in original article. - Can we pick out a more accurate heart beat /
signal using a DSP convolution / correlation
approach? - These are numerical methods involving much memory
use, adds and multiplications. Typical DSP
stuff. - Straight forward optimization show TigerSHARC
capability - If did on Beagle, Blackfin what differences in
development and performance
19ECE-ADI-Project
- Was asked to develop (as part of Analog Devices
University Ambassadorship) to develop
demonstration programs and place on the web - Have now developed
- SHARC ADSP-21061 (Previous 515)
- Audio project utilities
- Blackfin ADSP-BF533 (ENCM511 in 2008)
- Audio project utilities, Video Project utilities
- Blackfin ADSP-BF533 (Current ENCM491 Nygren)
- Real time operating systems
- TigerSHARC ADSP-TS201 (Current ENCM515,
ENCM619.04 (Topic23) - Embedded Test Driven Development Environment
(E-TDD) - Blackfin, TigerSHARC, SHARC, Microsoft studio
- Find at http//www.enel.ucalgary.ca/People/Smith/
ECE-ADI-Project/Index/index.htm
20The code is not well written unless it is testable
- Write C code with tests to show concepts works
- Optimize the code in one way, use same test to
show still works but faster - Optimize the code in another way, use same test
to show still works but faster still - Move code over to another processor, use same
tests etc
21Standard development methodWaterfall method
- Heavy on documentation, light on testing
TLD -- IDAA TestLastDevelopment(if done at
all)
22TESTS EXPRESS DESIGN INTENTTDD approach to
develop C code
- Work with customer to check that the TESTS
PROPERLY EXPRESS WHAT CUSTOME WANTS DONE
Iterative process with customer heavily
involved Agile methodology.
CUSTOMER DEVELOPER
23Some embedded stuff on test driven development in
the literature
- Examine in more detail as part of individual
presentation?
24Speed improvements when we use the C optimizer
- Rule 1 of assembly code programming
- Dont use assembly code programming
- What speed improvements occur when you turn on
the C optimizer use Embedded Unit Timing
features? - Wewill look at the code in detail to understand
how the compiler is taking advantage of
TigerSHARC processor to get code optimization. - Initially we will look at that code and say
oh my! - Later we can think about comparing the
performance of the compilers on different
processors. Position paper or project
25Concepts tackled
- Differences between processor and evaluation
board - Functionality present on TigerSHARC evaluation
board - TigerSHARC is NOT a microcontroller.
- A/D and D/A added simply to give evaluation board
something to process - ENEL619.04 (Topic 23) project
- Learn about TigerSHARC processor architecture
- Learn basics of how assembly code and
architecture interact - Set up a project (mainly in) in C to capture
a signal - Do some signal processing in C
- Work through optimizing one subroutine into
assembly code using more and more parallel
processor features - Use the same (or equivalent) code to look at
optimization issues on other processor Blackfin,
TI C64XX and C64XX, and Beagle (2 core with ARM
and TI C64XX