Close
0%
0%

BlackFin DSP Arduino Board

This is an implementation of a Analog Devices BlackFin DSP on an Arduino UNO footprint sized board.

Similar projects worth following
The design of the board implements a BF504 low cost (well for the performance) DSP onto the ubiquitous Arduino footprint. The BF504 had on board FLASH memory so the design is predominantly a LOT of power supplies and interface. The board can operate with either 5V or 3.3V I/O drive. As with nearly all projects the hardware is the minor part of the equation and the software is the critical part! A number of libraries are being implemented to provide SPI, UART, I2C, GPIO etc. This library is based to a large extent upon existing ones developed for the ARM/AVR32 so can leverage off a lot of the module classes developed there. The plan is to NOT to use ANY ADI libraries and be compiler agnostic as much as possible.

There is a High Quality 192KHz/24Bit Audio Codec from Wolfson. This is connected to the SPORT pins on the DSP and the Crystal selection has been chosen to provide Audio bitrates.

Quick Overview of the board:

  1. Analog Device BF504 Digital Signal Processor
  2. Power Supply that is compliant to 25V with dynamic core voltage control
  3. Wolfson high quality Audio Codec for 24Bit/192KHz audio out
  4. Microchip 5V Analog ADC on the usual Arduino Analog Pins
  5. FTDI USB <=> UART for high speed serial debug logging from the DSP
  6. Micro SD Card interface
  7. Digital Arduino pins 5V compliant and can drive out at either 3.3V or 5V; jumper selectable
  8. Software libraries that are clean Object Oriented implementations from bare metal for all common functionality of UART, SPI, I2C, GPIO etc.
  9. JTAG Debug Interface (well Analog Devices slightly deviant variety) that has been tested with GNICE & ADI ADZS-HPUSB-ICE

  • Update April 2015

    Forbin05/04/2015 at 08:53 0 comments

    Hardware

    As you can see from the photographs most of the board is populated. Will fit the Audio Codec when I am happy that all the rest of it is relatively stable. As you can see from the photographs my board design/layout skills are substantially better than my soldering skills!

    Problems to date:

    1. the footprint for the 1.2V regulator for the flash on the bottom of the board is almost completely wrong; luckily as it is a 3 pin device it isn't too difficult to fix.
    2. as usual I am relatively optimistic about the small size of capacitors! Need to make a few of the power supply tantalum's a case size up!
    3. Wolfson have disappeared! Now just hope that Cirrus don't chop my codec!

    Firmware

    The firmware is slowly coming to life. It is ALL C++ and I have tried to be consistent with the OO design but I have also tried to favor a more Embedded C++ so no exceptions/RTTI and fairly light on with templates and dynamic memory usage. So far all the development is with the rather crotchety Visual DSP from Analog Devices. Will probably move to CrossCore eventually and also support GCC.

    The Code is currently providing UART comms through the FTDI <=> Serial chip, GPIO control of the LED's, SPI control of the ADC. The system commands provide control of the core voltage via a bit-based serial interface to a digital pot which tweeks the voltage up and down.

    Next up is to get the SD Card interface going so I can drag my FileSystem classes in and then do some WAV/FLAC decoding out over the SPORT bus to the Audio Codec.

View project log

Enjoy this project?

Share

Discussions

ben biles wrote 09/11/2015 at 07:06 point

hi, interested in how this develops, do you think the blackfin chip can mix multi channel audio? 16 or even 32 channels ? is it possible to input I2S or TDM though pins on blackfin? new to DSP ! I'm trying to learn to code on the OMAPL138 LCDK form TI. so far I'm stuck on how to make a volume contorl in C by adding / dividing the sample float point veriables. early days, maybe you could take a look and offer some advise ?

  Are you sure? yes | no

AVR wrote 05/08/2015 at 04:00 point

Hi, your project is pretty cool, I've been interested in the blackfin chips before, ADI makes some cool DSP hardware (I've done a board with the 1701 for a company long ago). I'm working on a similar project (shelved for the time being but got new ideas) the Mako DSP, you might be interested in it. 

https://hackaday.io/project/623-mako-dsp

I looke forward to your future updates!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates