Adsp-21369
Contents
- 1 Project Title -- Quick Guide to using the ADSP-21369 and Visual DSP++ development environment
- 2 GOALS
- 3 Technical Specification of the ADSP-21369 EZ-Kit Lite development board
- 4 Setting Up Development Board and Visual DSP++ Development Environment
- 5 FAUST Integration Tool
- 6 Special Topics
- 7 Resources
- 8 LAB Session Notes
Project Title -- Quick Guide to using the ADSP-21369 and Visual DSP++ development environment
People Involved
- Andrew Best
- Kyle Spratt
- Baek San Chang
- Steinunn Arnardottir
- Turner Kirk
GOALS
- The main goal of this project is to create a relatively simple step by step guide of how to get an Analog Devices "adsp-21369" dsp (SHARC) chip up and running using the "ADDS-21369-EZLITE" development board and "Visual DSP++" development environment.
- A second goal is to create an easy to use tool that can be used to interface with the FAUST programming language in order to generate c++ code that can be imported into a Visual DSP++ project file and used with the SHARC chip.
Technical Specification of the ADSP-21369 EZ-Kit Lite development board
-The main DSP processing is performed by a SHARC processor, based on a 32-bit super Harvard architecture, with a core clock speed of 400 MHz.
-Audio I/O inteface:
- 4x2 RCA phono jacks for 4 channels of stereo output
- 2X1 RCA phono jacks for 1 channel of stereo input
- 3.5mm headphone jack for 1 channel of stereo output
- RCA phono jack input and output for SPDIF digital input and output
-The digital-to-analog and analog-to-digital conversion is performed by a single AD1835A codec chip:
- 4 stereo digital-to-analog converters (DACs)
- 1 stereo analog-to-digital converter (ADC)
- input/output sample-rates of up to 96 kHz on all channels
- 196 kHz sample-rate on one of the DAC channels
-The memory is broken up into multiple sections. The flash memories can store user-specific boot code, allowing the board to run as a stand-alone unit.
- 1M x 32-bit x 4 banks of synchronous dynamic random access memory (SDRAM)
- 512 Kbit x 8-bit synchronous random access memory (SRAM)
- 1M x 8-bit flash memory
- 2 Mbit serial peripheral interface (SPI) flash memory
-Universal asynchronous receiver/transmitter (UART):
- ADM3202 RS-232 driver/receiver
- DB9 female connector
-11 LEDs: 1 power (green), 1 board reset (red), 1 USB monitor (amber), and 8 general purpose (amber). 5 push buttons: 1 reset, 2 connected to DAI,2 connected to the FLAG pins of the processor.
-USB connection for interfacing with a computer.
-VisualDSP++ 5.0 integrated software development and debugging environment for Windows XP, allows programming of the board in assembly, C, and C++ (as well as combinations thereof).
-VisualAudio 2.5 audio software development tools and libraries, works in conjunction with VisualDSP++. Provides a set of graphical tools for developing audio processing data-flows, using a block-diagram approach. Contains tools for analysis, as well as the ability to treak the parameters of an algorithm in real-time. Comes with a collection of pre-built examples of various audio effects.
Setting Up Development Board and Visual DSP++ Development Environment
The development software used is VisualDSP++ Release 5.0 which can be downloaded here. It is compatible with Blackfin, SHARC and TigerSHARC processors.
- Getting Started
- Login to the windows computer
- Plug in DSP Board USB Cable and power adapter
- Note: Make sure that the LED next to the USB plug is lit up. This shows that the board is properly communicating with the computer.
- Connect an audio source to the RCA input channel labeled “Audio In” on the board.
- Connect your speakers to the Channel One Audio Outputs or the 1/8th Inch Stereo Headphone Jack
- From the Start Menu open up the Visual DSP++ programming environment
- At the top of the window you should see “[Target: ADSP-21369 EZ-KITLite via Debug Agent]” Which means you are properly connected to the board and are ready to program.
- Note: If it doesn’t say you are connected to a target click the “Connect to Target” button.
- Running a Project
- Choose “File->Open->Project” from the menu bar, navigate to the “DelayLine” folder and open the Visual DSP++ Project file.
- Choose “Project->Build Project” (F7) from the menu bar to build the project
- Once it is finished building, choose “Debug->Run” (F5) from the menu bar in order to load the program onto the board and run it.
You should now hear the Audio Input with a feedback delay
FAUST Integration Tool
We (or, more precisely Andrew, A.K.A the captain of the A-TEAM), developed a script which takes in Faust code (on .dsp format), and returns C code, ready to plug into VisualDSP++. The script is called faust2sharc, release 0.0.2 can be downloaded from here.
When modifying a code or trying out new code, it is recommended that you make sure your Faust code definitely compiles as such, by for example generating a C++ code or a block diagram using Faust.
Instructions on running faust2sharc
1) Download and install faust2sharc from the link above.
The interface should look like this:
https://cm-wiki.stanford.edu/mediawiki/images/c/c5/Faust2sharc_small_blank.jpg
2) Upload the [name_of_file].dsp file with the open file button.
3) Press generate project. This generates a [name_of_file].c file.
4) Upload the [name_of_file].c file to VisualDSP++.
5) The Faust generated diagrams can be viewed by pressing on the view diagram button. This generates a folder in your workspace called [name_of_file].dsp-svg which includes block diagrams for the project.
Special Topics
- Declaring Memory Usage
- Initializing the D to A and A to D Conversion Chip (AD1835A)
Resources
Analog Devices Resources
Faust Resources