Servus Ich überlege ja im Moment an einem "kranken Projekt". Da es noch jemandem mit Interesse an einem Dual Core ARM/DSP Board gibt dacht ich mir: Strick ich eins. Oder versuchs wenigstens ;) Ich bin dann recht schnell auf den OMAP-L137 gestoßen. 17$ für den Prozessor (bei einer Abnahme von 1000stk, dürfte also bei 25-30€ (Farnell 28 und 40€) pro Stk liegen). 4Lagige Platine ist ein Muss, ich würde auch das ein oder andere vom EVM Board abkupfern. Ziel wäre ein "autarkes SODIMM-Modul". Also 5V dran und bootet. Nun mehrere Fragen: a) Mit was zum Teufel programmier ich das über JTAG? Ich hab nur einen programmer für 1500$ gefunden, das wär dann doch zu teuer ... Ich hab aber ein bisschen die Hoffnung aufgegeben da was für 100$ zu finden. Weiß jemand was? b) MUSS ein Linux auf dem DSP laufen? Oder gibts auch ein anderes RTOS? FreeRTOS ist mir bekannt und wie man damit Programme baut, Autosar ist auch ein Begriff. Aber mit Linux hab ich noch nie was gemacht, schon gar nicht auf einem ARM-Prozessor und noch weniger in Kommunikation mit einem zweiten Prozessorkern. Für Hilfestellung bin ich dankbar :) Grüße
Google mal nach ICEbear und OpenOCD. Läuft bei mir prima auf den Cortex-Kisten (Linux/GCC). Für kostengünstige/effektive DSP-Entwicklung würde ich allerdings eher zum Blackfin raten (dafür haben wir den ICEbear ansich auch).
Ging aber um einen DSP/ARM Dual Core - was der Blackfin afaik nicht ist. Ich schau mir die beiden mal an, danke. Ich bin vorhin auch über Flyns... irgendwie sowas gestoßen. Bekannt? Edit: Und wie programmiert man die Blackfin? Nur über VisualDSP was sau teuer ist?
Hi, Wenn du Dual-Core-Power brauchst: BF561. Fragt sich halt, was genau du machen willst. Billig wird der Spass eh nicht... VDSP ist nicht noetig (und IMHO fuer komplexe Sachen nicht geeignet), man kann mit den GNU-Tools (gcc, gdb, icebear-gdbproxy) mindestens so effizienten Code generieren. Mit eclipse hat man auch eine huebsche IDE. Zum OS: es gibt auch einen Port von eCos, RTEMS, etc. Inzwischen kann man aber uClinux als Echtzeit-OS benutzen (RT_PREEMPT, oder die aelteren Xenomai-Implementationen). Das OS braucht man ja ansich bei diesen DSP-Hybriden v.a. fuer die Kommunikations-Stacks, fuer reine effiziente DSP-Aufgaben lassen wir so einiges auch "standalone" laufen, also eigenes kleines OS a la uC. Sag halt mal, was du genau machen willst, welche Rechengenauigkeit du brauchst, usw. Gruss, - Strubi
Dem zweiten interessenten geht es um irgendwas Rechenintensives im Zusammenhang mit Mikrocoptern. Ich hab interesse an einem 9DOF IMU wobei mir da die Formeln noch Kopfweh bereiten. Der Blackfin ist aber ein reiner DSP oder?
Ano Nym schrieb: > Nun mehrere Fragen: > a) Mit was zum Teufel programmier ich das über JTAG? Ich hab nur einen > programmer für 1500$ gefunden, das wär dann doch zu teuer ... Ich hab > aber ein bisschen die Hoffnung aufgegeben da was für 100$ zu finden. > Weiß jemand was? Du nimmst den XDS100v2 von TI/Spectrum Digital und den Code Composer v4 von TI. Der XDS100v2 ist sozusagen Dein Dongle für eine kostenlose vollwertige node-locked Lizenz für den Code Composer, mit dem Du entwickeln wirst. NICHT auf irgendwelche China-Nachbauten reinfallen! Die haben nämlich nur den XDS100v1 nachgebaut, und der funktioniert damit nicht komplett. Farnell #1831927, 105.38€, vorrätig. Den Code Composer und das passende DSP/BIOS ziehst Du Dir von der TI-Webseite, die Lizenz für den Code Composer gibts dort auch. > b) MUSS ein Linux auf dem DSP laufen? Oder gibts auch ein anderes RTOS? > FreeRTOS ist mir bekannt und wie man damit Programme baut, Autosar ist > auch ein Begriff. Aber mit Linux hab ich noch nie was gemacht, schon gar > nicht auf einem ARM-Prozessor und noch weniger in Kommunikation mit > einem zweiten Prozessorkern. Rein technisch spricht nichts gegen etwas anderes. Es ist ja eigentlich nur ein hundsgewöhnlicher ARM9 drin. Die Bibliotheken für die Peripherie und die Coprozessorkommunikation musst Du aber selber portieren - oder Deinen FAE fragen, ob er andere Kunden hat, die was anderes nehmen. fchk
Der XDS100 tuts aber nur für den ARM oder? Laut dem Diagramm von Spectrum sollte man den XDS560R USB nehmen, der liegt aberb ei 2500€. Der Code Composer war doch eigntl nur eine bestimmte Zeit kostenlos benutzbar? Single Lizenz liegt auch hier bei irgendwie 2500€ ... Kunden gibts nicht wirklich, bin Privat ;) Ansonsten, wie läuft das mit dem Linux? Wie mit RTOS? Also das ich einfach in meine main() dem Task Manager sag "den den un den Task gibts, die laufen so so und so" und dann mein Task hat dann irgenwdie die form TASK_foo() ?
Ano Nym schrieb: > Dem zweiten interessenten geht es um irgendwas Rechenintensives im > Zusammenhang mit Mikrocoptern. Ich hab interesse an einem 9DOF IMU wobei > mir da die Formeln noch Kopfweh bereiten. > > Der Blackfin ist aber ein reiner DSP oder? Nee, ich wuerde mal sagen, ein Hybrid. Deswegen hat er auch Cache, SDRAM-Interface und kann ergo uClinux, mit Betonung auf uC, da er zwar ne MMU hat, aber keinen Support fuer virtual Memory. Wenn du ohne float, mit lookup-Tables (sin/cos, usw) und mit 100 Hz Kalman auskommst, reicht 1 Core voellig aus. Womoeglich tut's sogar ein kleiner ARM Cortex M0, auf nem Mikrokopter willst du ja auch Strom sparen. Der bfin ist dafuer ev. schon ne Nummer zu gross, geschweige denn gleich Dual Core - oder brauchst du gleich 1000Hz? (Ich wuerde ja prinzipiell mal klein anfangen). Am besten prototypst du den Kram aufm PC, rechnest dir ungefaehr die Zyklen aus, machst die Paranoia-Multiplikation mit Faktor 2, und portierst das dann aufn Evalkit deiner Wahl. Gruss, - Strubi
Ano Nym schrieb: > Der XDS100 tuts aber nur für den ARM oder? Laut dem Diagramm von > Spectrum sollte man den XDS560R USB nehmen, der liegt aberb ei 2500€. Nein. Beide Cores hängen am gleichen JTAG, und der XDS100v2 (vergiss das v2 nicht!!!) geht für beide. > Der Code Composer war doch eigntl nur eine bestimmte Zeit kostenlos > benutzbar? Single Lizenz liegt auch hier bei irgendwie 2500€ ... Wenn Du einen XDS100v2 hast, kannst Du Dir eine kostenlose, dauerhafte Lizenz holen. Der XDS100v2 funktioniert in diesem Fall als Dongle. > Kunden gibts nicht wirklich, bin Privat ;) Ansonsten, wie läuft das mit > dem Linux? Wie mit RTOS? Also das ich einfach in meine main() dem Task > Manager sag "den den un den Task gibts, die laufen so so und so" und > dann mein Task hat dann irgenwdie die form TASK_foo() ? Auf dem TI-Server gibts genügend Dokumentation zu diesem Thema. Lies DIch da durch. Du musst wissen, dass zuerst der ARM startet und der dann den C67xx dann loslaufen lässt. fchk
Noch ne Anmerkung: uClinux oder andere RTOS wuerde ich wirklich nur dann einsetzen, wenn du Netzwerk-Kommunikation oder Filesysteme brauchst. Wenn das Ding nur IMU sein muss und Servos nachregeln / datenloggen muss, bist du mit "standalone", also einem kleinen eigenen Framework ev. besser beraten. Unter Linux usw. musst du sonst noch artig Kerneltreiber schreiben, das sprengt die Komplexitaet schnell. Hat sich hier bewaehrt, das Zeug quasi doppelt zu entwickeln: erst standalone auf den Sensoren austesten, dann portieren, wenn TCP/IP oder SDCARD I/O noetig.
Strubi schrieb: > Ano Nym schrieb: >> Dem zweiten interessenten geht es um irgendwas Rechenintensives im >> Zusammenhang mit Mikrocoptern. Ich hab interesse an einem 9DOF IMU wobei >> mir da die Formeln noch Kopfweh bereiten. >> >> Der Blackfin ist aber ein reiner DSP oder? > > Nee, ich wuerde mal sagen, ein Hybrid. Deswegen hat er auch Cache, > SDRAM-Interface und kann ergo uClinux, mit Betonung auf uC, da er zwar > ne MMU hat, aber keinen Support fuer virtual Memory. > Wenn du ohne float, mit lookup-Tables (sin/cos, usw) und mit 100 Hz > Kalman auskommst, reicht 1 Core voellig aus. Womoeglich tut's sogar ein > kleiner ARM Cortex M0, auf nem Mikrokopter willst du ja auch Strom > sparen. Der bfin ist dafuer ev. schon ne Nummer zu gross, geschweige > denn gleich Dual Core - oder brauchst du gleich 1000Hz? (Ich wuerde ja > prinzipiell mal klein anfangen). > Am besten prototypst du den Kram aufm PC, rechnest dir ungefaehr die > Zyklen aus, machst die Paranoia-Multiplikation mit Faktor 2, und > portierst das dann aufn Evalkit deiner Wahl. > > Gruss, > > - Strubi Klar fang ich klein an. Aber: Ich hab lust was mehrlagiges zu Layouten und da bietet sich der Ansatz mit dem Projekt an. Ob oder ob nicht ist ne andere Frage. Ferner: Ich hab noch jemanden der Interesse an einem Board mit Dual Core (ARM/DSP) Prozessor hat. Im moment mehr noch ein Gedankenmodell, weil die Komplexität für Privat doch schon immens hoch ist. Bei der Frage ob der XDS100v2 auch für den DSP tut hab ich beim lesen unterschlagen das das ja nur ein ARM9 und C67x DSP in einem Gehäuse ist. Damit "eigentlich kein OMAP". Ich denke ich überleg mir mal einfach zu Layouten und das eval Board als Referenz Design heranzuziehen (gerade die Stromversorgung ist da interessant, die Jungs haben da einige Bauteile eingebaut an die ich kaum gedacht habe). Ich frag mich nur ob das ganze Brimborium effektiv gebraucht wird das die benutzen ... Danke für die Hilfe bis jetzt :)
Nur um mal eine Alternative in den Raum zu werfen: Atmel's AT91SAM9G45 ist zwar kein DSP, aber immerhin ein 400 MHz ARM9, und genauso anspruchsvoll in Layout und Bestückung. Liegt auch im gleichen Preissegment. Wenn es also nur darum geht, zur Übung ein anspruchsvolles System auf einem 4-lagigen Board zu entwerfen, wäre auch dies eine brauchbare Lösung, da weit verbreitet und gut geeignet für Linux oder Android.
Klar, gibt auch andere Prozessoren die man da nehmen könnte. Nur hat der zweite Interessent eben interesse an ARM/DSP Dual Core ;) Da sollte man auch da bleiben :) Schaltplan-technisch sollte es ja auch soo schwer nicht sein. Das meiste wird nach ausen geführt, Speicher ist an EMIF recht straight forward angebunden. Nur so sachen wie bootmode, die ganzen Multiplexer und JTAG machen mir, wenn ich mir das EVM Board als Referenz heranzieh, sorgen. Und das Layout, klar.
Du könntest Dir auch noch den etwas besser verfügbaren L138 anschauen. Und zum Layout: Du weißt, was Du da tust bei einem 256'er bzw 361'er BGA. Ob Du mit 4 Lagen hinkommst ... keine Ahnung. fchk
Den 138 schau ich mir mal an. 4 Lagen sind afaik vorgesehen für den L137. Glaub die erste innere für die Versorgung und eine weitere innere für die Masse, rest für Signale. Hab da noch sowas im Kopf, müsste daheim das Dokument raussuchen. Ich wills einfach mal probieren, wenns keiner will is auch recht. Hab nix zu tun im Moment ^^
Um den Code in den Speicher zu laden, kann man auch den ROM Bootloader verwenden: http://www.ti.com/litv/pdf/sprab04f http://www.ti.com/litv/zip/sprab04f JTAG braucht man eigentlich nur zum Debuggen zwingend. Grüße, Peter
Hi, nur mal so ein Tip: kauf dir ein OMAP-L138 Experimentier Kit von Spectrum Digital (bei TI im OMAP-L138 Ordner unter Tools findes sich ein Link) Der Spaß kostet ca. 150€ und es ist alles dabei, soweit ich weiß: CCS-Lizenz, onboard JTAG (an PC per USB).... Der eigentliche Prozessor ist dabei auf einer kleinen 10-Lagen Platine, ca. 2*3cm. Dann benötigt man nur noch ein eigenes Baseboard für die eigene Anwendung und gut ist. Linux gibt es als download, Anleitungen dazu (wie das zu kompilieren ist etc. als WIKI im Web, erste infos: http://processors.wiki.ti.com/index.php/Category:C6-Integra ) du must natürlich kein Linux nehmen... Stefan
Stefan schrieb: > Der eigentliche Prozessor ist dabei auf einer kleinen 10-Lagen Platine, > ca. 2*3cm. Dann benötigt man nur noch ein eigenes Baseboard für die > eigene Anwendung und gut ist. @OP: Diese kleine Platine ist Alientechnologie. Buried Vias und Bohrlöcher <= 0.1mm. Der Prozessor ist in einem fine-pitch BGA Gehäuse = eine Leiterbahn zwischen Balls. Mit 4 Lagen wirst Du niemals auskommen, wenn Du da nennenswert Peripherie anschließen möchtest. Auf der kleinen Platine ist auch bereits ein DDR-RAM und ein Spannungsregler. Für Deine Stückzahl wird ein Eigenbau definitiv erheblich teurer als der Kauf dieser Miniplatine (gibt es auch einzeln, ohne das schrottige Baseboard). Die Entwicklungsunterlagen/Schaltpläne kannst Du bei Spectrum Digital übrigens (nach Anmeldung) einsehen. Alternativ gibt es auch das Hawkboard als Basis. Leider scheint es da mit der derzeitigen Revision Stabilitätsprobleme zu geben.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.