Forum: Digitale Signalverarbeitung / DSP / Machine Learning Konfig DSP Blackfin BF548 - Einstieg Analog Devices uC


von Joe J. (j_955)


Lesenswert?

Hi,

saumäßig schneller Prozessor, aber dafür erfordert er sehr viel 
Einarbeitung.

Hier mal eine kurze Einführung - habe das Evalboard von Blutechnix mit 
einem Motherboard CN-BF548 drauf- wie man zumindest mal das Ding in 
Betrieb nimmt.

Keine doofen Kommentare bitte....

///Installation///////////////////////////////////
Nach Installation von Visual DSP++, Verison 5.0
muss zwingend das UPDATE "VisualDSP++ 5.0_Update7.vdu"
installiert werden. Dies geht über das Programmmenü
in Windows


///Einstieg///////////////////////////////////////

Zum Einstieg eignet sich die Dokumentation, installiert mit 
VisualDSP++("Visual DSP++ 5.00 Help for Blackfin Processors"). Hier 
zunächst der "Getting Started Guide".
Es befinden sich ebenfalls alle Manuals(SW/HW) heir aufgelistet, die die 
Blackfin Fam. und den Umgang mit diesen
Prozessoren beschreiben.(Complier/Library Manual, Controler Manual usw.)



///Projekt erstellen//////////////////////////////

Das Projekt wird ganz normal erstellt, die Definitionen befinden sich 
defBF548.h.



///Target/////////////////////////////////////////

-USB-100b wurde nicht gleich erkannt nach Installation von Visual 
DSP++(5.0)
-Debugger erkannt, nachdem update 7 aufgespielt wurde






///Debug/Compile//////////////////////////////////

Für das Debuggen muss unter "Session"->"Session List" die Konfiguration 
der Sitzung festgelegt werden. Hier werden Optionen
für den Prozessor/Targettyp festgelegt, Emulieren oder Simulieren. 
Anschließend kann kompiliert werden. Weiteres zu den Modi
siehe "Visual DSP++ 5.00 Help for Blackfin Processors"




///Erstellen/////////////////////////////////////

Beim Kompilieren muss unterschieden werden zwischen der .ldr 
Datei(IntelHex 32) und der dxe Datei(Exec.).
Dies lässt sich unter Project->Project options einstellen.




///Libraries/////////////////////////////////////

=Allgemein=
include<cdefBF54x_base.h> hält die Funktionen/Pointer für das 
Beschreiben der Register bereit für die Prozessorfamilie BF54x.

=Prozessorspezifisch=
include<cdefBF548.h> hält alle Prozessorspezifischen Funktionen/Pointer 
bereit, die über die gemeinsamkeiten der Prozessor
        Familie der BF54x prozessoren hinausgehen(z.B. SPI2)

=Defines=
include<defBF54x_base.h>/include<defBF548.h>  -->enthalten 
Defines/Masken






/Aufspielen der .dxe Dateien(Starten aus dem RAM)/

Für das Aufspielen der kompilierten Dateien muss mit File->Load Programm 
die .DXE Datei(Ausführbare Datei)
auf den Controller gespielt werden. Diese wird allerdings nur im 
internen RAM abgelegt.





/Aufspielen der .ldr Dateien(Starten aus dem Flash)/

.ldr FIles=Intel hex 32 files= Für das Aufspielen der kompilierten 
Dateien muss das VisualDSP++ interne Tool "Tools->Flash Programmer"
benutzt werden. Hierfür wird der Prozessorspezifische Treiber zunächst 
in den RAM geladen.Dieser befindet sich auf der CD von Blue Technix
DevelopmentTools->VDSPFlashToolDriver->CM-BF548->CM-BF548Flash.dxe und 
wird mit dem "Flash Tool" im Editor ausgewählt. Anschließend
unter Programming die "DataFile" raussuchen und auf "Program" drücken. 
Die Datei wird auf das Flash, welches sich auf dem Board "CM-BF548"
befindet(8MB) aufgespielt. Als Startoption muss vor dem kompilieren des 
Programms hierbei der Flash/Eprom unter Projektoptionen ausgewählt 
werden.
Grundsätzlich haben diese Prozessoren keinen beschreibbaren internen 
Flash.



Grüße

von Dirk Slowik (Gast)


Lesenswert?

Hallo, habe verschiedene Evalboards von AD. Auch BF 548. Die 
englisch-sprachige, reichhaltige Doku macht die Sache nicht gerade 
einfacher. Wollte demnächst wieder in die Materie einsteigen. Was hast 
Du bis jetzt mit den DSP's schon alles gemacht?

von Joe J. (j_955)


Lesenswert?

Hi Dirk,
Habe mich nun ne ganze Weile mit denen Dingern beschäftigt. Schieß 
los,was interessiert dich?Der Thread ist  ja schon älter..
Viele Grüße...

von Dirk Slowik (Gast)


Lesenswert?

Hallo, mich interessiert es, ob man ein Soll- Istvergleich von 
Bewegungsabläufen hinbekommt. Ich denke da an das Modell " 
Michelinmännchen " für den Anfang. Es soll mit einer Kamera eine 
Filmaufnahme gemacht werden und dann mit einer vorgegebenen Kurve 
verglichen werden. Das Ganze ist etwas komplex. Müßte ich bei Bedarf 
genauer beschreiben.
 Soweit erstmal.
Bis dann, viele Grüße.

von Martin S. (strubi)


Lesenswert?

Moin,

klingt spannend. Aktive Tracking-Sachen (mit speziellen Markern) kann 
man mit dem Blackfin prima bei VGA/10fps machen, passiv 
(Motion-Vector-Bestimmung) geht noch gerade bei CIF/15 fps. Habe 
letzeres aber nicht implementiert.

Gruss,

- Strubi

von Joe J. (j_955)


Lesenswert?

Hi,
ok- meine Aufgabe war weniger die Applikation.Habe mich eher mit der hw 
nahen prog. (ohne bs) beschäftigt.Kann also wohl eher keine Hilfe 
sein...:)

von Dirk Slowik (Gast)


Lesenswert?

Hallo Leute,
also die ganze Sache ist wohl eher etwas umfangreich. Ist auch ein 
Patent drauf angemeldet. Soll für den professionellen Sport sein. War 
von mir ursprünglich für den Dancesport-Professionals gedacht. Ist dann 
aber für alle Sportarten, wo es auf Bewegungen ankommt, vorgesehen. 
Beispiele : Kugelstoß, Weitsprung, Reitsport-Hindernis, und Etliches 
mehr. Bin sogar schon von einem Fußballverein angesprochen worden. Dazu 
möchte ich aber noch nichts sagen. Es steckt auf jeden fall ne menge 
Arbeit und entsprechend weltweit auch Potential dahinter.

Wie machen wir weiter, wenn ??

Viele Grüße,

Dirk.

von Martin S. (strubi)


Lesenswert?

Hi,

Für den Profisport wirds mit Blackfin u.U. eng, weil man da mehr fps 
erforderlich sind. Genannte Tracking-Lösung kann man aber mit dem FPGA 
als Vorverarbeiter massiv beschleunigen und mit schnelleren Sensoren 
arbeiten. Du willst ja wohl im Prinzip Punkt-Trajektorien 
verfolgen/aufnehmen, richtig?
Bei hängigen Patenteingaben würde ich ein NDA mit Vertragspartnern 
empfehlen. Allerdings dürften Motion-Tracking-Lösungen im Zusammenhang 
mit Sport schwierig zu patentieren sein, da die technischen Neuerungen 
IMHO dünn gesäht sind..

Gruss,

- Strubi

von Joe J. (j_955)


Lesenswert?

Hi,
also sollten Fragen auftauchen im Bereich HW-nahe Programmierung, dann 
werde ich - wenn möglich - sicherlich versuchen mit zu diskutieren.

@Martin : Du scheinst ja sehr fit im Bereich Bildverarbeitung zu sein. 
Projektierung scheint für dich kein Fremdwort zu sein:)

Allgemein: Der Blackfin ist ziemlich schnell...Also mit ~600MhZ geht 
einiges, mir fehlt die Erfahrung - Sensorik ist jetzt (noch)nicht mein 
Ding.

Frage:FPGA - für den Massenmarkt wohl eher untauglich, oder?

LG

von Joe J. (j_955)


Lesenswert?

...@Alle:

Wie wäre es mit einem seperaten Thröd?

Wäre spannend die Diskussion weiter zu verfolgen...

Beitrag "Bildverarbeitung Blackfin BF548"

von Dirk Slowik (Gast)


Lesenswert?

Hallo, ich denke, dass wir diesen separaten Thread einrichten sollten. 
Es ist bislang ja nur ein Fragment de Ganzen in groben Zügen erörtert.

Gruß,

Dirk.

von Joe J. (j_955)


Lesenswert?

folge dem oberen Link...schon geschehen!

von Martin S. (strubi)


Lesenswert?

>
> @Martin : Du scheinst ja sehr fit im Bereich Bildverarbeitung zu sein.
> Projektierung scheint für dich kein Fremdwort zu sein:)

Naja, ich muss so ab und an von dem 'Mist' leben. Nee, macht auch 
richtig Spass.

>
> Allgemein: Der Blackfin ist ziemlich schnell...Also mit ~600MhZ geht
> einiges, mir fehlt die Erfahrung - Sensorik ist jetzt (noch)nicht mein
> Ding.
>
> Frage:FPGA - für den Massenmarkt wohl eher untauglich, oder?
>

Wir reden hier, denke ich, auch weniger von Massenmärkten a la Handy 
oder DVD-Player (und selbst in diesen findest du programmierbare Logik).
Gibt für dedizierte, schnelle Verarbeitung kaum Alternativen (vor dem 
fertigen ASIC für den Massenmarkt).
Der Blackfin ist ein Geheimtip, wenn man sich in die assembleroptimierte 
Programmierung reinkniet, aber ist leider punkto Interfaces ein bisschen 
in die Jahre gekommen. Für Mid-End aber auf jeden Fall ungeschlagen.

Gruss,

- Strubi

von Joe J. (j_955)


Lesenswert?

...d.h. eigentlich sozusagen Grau-Zone, ASIC zu teuer, wenn die 
Stückzahl nicht stimmt, FPGA nicht lohnenswert...um vll. meine Aussage 
zu korrigieren. So richtig?

von Dirk Slowik (Gast)


Lesenswert?

@ Alle : ich switch auf den angegebenen Link Beitrag "Bildverarbeitung 
Blackfin BF548" um.
ist also, bis auf Weiteres der Letzte Eintrag von mir in diesem Chat 
hier.
Bis dann, im neuen Link, LG,
Dirk.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.