3.1 Evaluation

Ein freies TMS320 MP3-Player Project

0

Ein weiteres, sehr spannendes, (GNU/GPL) freies MP3-Player Projekt für den TMS320C55x  liefert auch den Quellcode für den MP3-Decoder, sowie eine Hardwareanleitung mit PCB-Layout für die CPU TMS320 VC5507.

Das Schöne daran ist, dass der VC5507 über ein LQPF Gehäuse mit 114 Pins verfügt, was die Herstellung wesentlich vereinfacht im Gegensatz zum C5515, der sich in einem NFBGA/196-Pin (ball grid array) Gehäuse befindet. Auch sind die Anschaffungskosten der CPU (ca. CHF 20, im Gegensatz dazu C5515:  ca. CHF 40) und Herstellungskosten der PCB (weniger Schichten) geringer.

sourceforge.net/projects/dspdap/

dspdap.git.sourceforge.net/gitroot/dspdap/dspdap

Elektor MP3-Player / DSP-Bios

0

Ich konnte den SDcard-MP3-Player aus dem Elektor-Magazin (www.ti.com/ww/eu/university/pdf/Elektor_en_MP3_C5515.pdf) kompilieren und auf dem eZdsp-Board zum Laufen bringen. Probleme bereitete v.a. ein Update von CCS. Alte Projekte liessen sich danach nicht mehr kompilieren, folgende Fehlermeldung:

This project was created for a device-variant that is not currently 
recognized: TMS320C55XX.TMS320VC5515. Please install the
device-variant descriptor, or migrate the project to one of the
supported device-variants.
MP3Dec	project	1313484944829	212

Ich habe die Projekte neu angelegt und alle Dateien aus dem alten Projekt importiert, sowie die include-Pfade ergänzt. Dann funktionierte es wieder.

Der MP3-Player von Elektor basiert auf dem DSP-Bios von TI. Hierbei handelt es sich um einen Kernel, der u.a. Hardware-Treiber und Multithreading (softwarebasierte Nebenläufigkeit) bereitstellt. Hierzu einige Infos auf dem Web:

Der in diesem Projekt verwendete MP3 Decoder wird von TI in binärer Form zur Verfügung gestellt. Es ist also kein Quellcode für den Decoder erhältlich. Der Autor des Artikels Lars Lotzenburger ist übrigens Mitarbeiter von TI Germany.

Testboard Evaluation

0

Bei der Evaluation des Testhardware standen folgende Kandidaten in der engeren Auswahl. Es ergab sich eine Rangliste:

  1. eZDSP TMS320C5515: erste Wahl, verfügt über vielfältige Möglichkeiten, insbesondere programmierbare USB-Schnittstelle und Micro-SD Slot.
  2. eZDSP TMS320VC5505: Geeignet, aber ohne USB und SD-Karten Unterstützung.
  3. Beagleboard: wenig Informationen vorhanden, Linux-basiert daher tendenzieller Universalrechner mit hohem Software-Overhead
  4. Arduino:  viel zu langsam

Einarbeitung TMS320 / eZdsp board

0

Datasheet

TMS320VC5505 Fixed-Point Digital Signal Processor (Rev. B) (PDF 856 KB)

eZdsp Stick

focus.ti.com/docs/toolsw/folders/print/tmdx5505ezdsp.html

support.spectrumdigital.com/boards/usbstk5505/revb/

Schematics
Board schematics. PDF – 08/06/09

Test Code
Test code and board support library (CCS 4.0) for the TMS320VC5505 DSP USB STICK . ZIP – 09/01/10

- SPIROM test

SD Card Controller

focus.ti.com/lit/ug/sprufm2b/sprufm2b.pdf

- TMS320C674x/OMAP-L1x Processor
Multimedia Card (MMC)/
Secure Digital (SD) Card Controller

Interrupts

blog.21ic.com/uploadfile-/2008-1/51217.78775422.pdf

- “avoid calling other functions from within
the ISR.”

Demo Code

code.google.com/p/sdfatlib/

- läuft unter arduino

code.google.com/p/c5505-ezdsp/

- fft filter demo läuft auf eZdsp

Schätzung Grössenordnung

Min. clock f spi = samplerate * n kanäle * 16 = 44100 * 4 * 16 = 2.8224 MHz

Clock Arduino: 16 Mhz

Clock TMS320: 100MHz

Resultate

FFT-Filter läuft auf TMS320 Testplatform “eZdsp”

Nächste Schritte

  • 4h SD-Karte hardwaremässig an eZdsp-Board anschliessen
  • 8h sdfatlib auf TMS320 portieren
  • 2h DAC Baustein evaluieren
  • 8h DAC Board layouten
  • 8h DAC Software für TMS320/Arduino schreiben
Go to Top