Forum: Digitale Signalverarbeitung / DSP / Machine Learning Prozessor bootet nicht


von Steffi (Gast)


Lesenswert?

Hallo,

ich hab von meinem Professor an der Fachhochschule die Aufgabe bekommen, 
ein Board für einen DSP von Analog Devices zu bauen. Ich habe den 
ADSP-21262 dafür bekommen. Die Spannungsversorgung (VDDint, VDDext und 
analog) haben ich angeschlossen. Es soll später möglich sein, dass man 
den DSP über ein SPI-EEPROM booten kann. Ich hab mir deshalb ein kleines 
Programm geschrieben, was ein FlagPin alle Sekunde toggeln soll und 
dieses auf ein SPI-PROM gebrannt. Es passiert aber leider nix. Woran 
könnte es liegen ?

Gruß
Steffi

von Timo (Gast)


Lesenswert?

Dann vielleicht GND nicht angeschlossen? Okay, war ein blöder Versuch 
;-)

Aber die Möglichkeiten sind so vielfältig, da musst du schon ein bißchen 
mehr liefern, zum Beispiel Schaltplan.

von Karl-j. B. (matrixman)


Lesenswert?

Deine Frage könnte genausogut lauten:

Ich hab mir gestern ein Auto gekauft mit 150Ps und es fährt nicht woran 
könnte es liegen.

Vielleicht gibst du uns nähere Infos. Geht dein Programm? CPU richtig 
beschaltet? ...

von Schorsch (Gast)


Lesenswert?

Ich kenne es von einem ADSP-2185, dass man ihm über Mode-Pins mitteilen 
muß, wie er booten soll. Ist das bei deinem Teil auch so?

von Steffi (Gast)


Lesenswert?

Ground ist natürlich auch angeschlossen ;oP

Und einen Schaltplan hab ich bisher noch nicht erstellt. Und was ist an 
der Beschaltung falsch zu machen ? Ich benutze ein 25lc640 von Microchip 
und da hab ich SO an MISO und SI an MOSI vom Prozessor angeschlossen.

Aber die Frage ist wirklich ein bisschen unpräzise gestellt.

von Steffi (Gast)


Lesenswert?

@Schorsch

ja genau. Da kann man meinen definieren, ob er über paralleles EEPROM, 
SPI Slave oder SPI Master booten soll. Wenn ich von einem SPI-EEPROM 
booten möchte, muss der Prozessor doch im MasterBootMode betrieben 
werden, oder ?

von Katzeklo (Gast)


Lesenswert?

Woher weist du, dass der Prozessor nicht bootet? Etwa daher, weil dein 
Flag nicht toggelt? Vielleicht ist dein Programm ja auch einfach 
Gülle...

Aber da du keinerlei Infos preisgibst, kann dir auch nicht geholfen 
werden. Sollen wir jetzt alle Möglichkeiten abklapperten?

von Steffi (Gast)


Lesenswert?

also es kann natürlich an meinem Programm liegen. Aber ich weiß z.B. 
nicht so genau, wie das beim Booten abläuft. Laut Datenblatt schickt der 
Prozessor das LSB zuerste, die meisten EEPROMS sind aber MSB-orientiert. 
Angeblich kann der Loader (der den bootfähigen Code fürs EEPROM 
erstellt) einen Bitreverse durchführen, sodass der Code für den 
Prozessor wieder richtigrum im EEPOM steht. Ist das wahr ?

von Timo (Gast)


Lesenswert?

Ich denke nicht, dass dir noch jemand hilft, wenn du nicht deinen 
Schaltplan und deinen Source Code preisgibst. Sonst ist das echt nur 
wilde Raterei, und das kannst du genauso gut alleine machen!

von Katzeklo (Gast)


Lesenswert?

Zumal sich das alles so anhört, als ob "Steffi" das mal eben auf dem 
Steckbrett aufgebaut hat.

von Hendrik (Gast)


Lesenswert?

so ein ähnliches Problem wie Steffi habe ich auch. Ich hab n Programm 
für nen 21369 geschrieben. Ich habs vorher allerdings durch den Debugger 
von VisualDSP geschickt.
Das Programm soll immer bei Auslösen des Timer-Interrupts ein Pin 
toggeln. Ich hab einfach mal das DPI4-Pin gewählt. Der Debugger zeigt 
allerdings bei mir nicht an, welcher Wert am DPI4-Pin anliegt.
Laut Anleitung soll man die Zeile "#define SRUDEBUG" einfügen, damit der 
Debugger vernünftig arbeiten kann.
Der Timer funktioniert soweit, aber die Ausgabe an die Pins klappt laut 
Debugger nicht. Hab ich bei der Initialisierung was vergessen ?
Hier mein Quellcode:


#define SRUDEBUG  // Check SRU Routings for errors.

#include <def21369.h>
#include <SRU.h>

.global _initTIMER;

.section/pm seg_pmco;


_initTIMER:

    BIT SET IMASK TMZHI; // Timer-Interrupt demaskieren

//    TPERIOD = 0x3D09001;
//    TCOUNT = 0x3D09001;

// Zu Debug-Testzwecken
    TPERIOD = 0x20;
    TCOUNT = 0x20;

    SRU2(FLAG4_O,DPI_PB04_I);
    SRU2(HIGH,DPI_PBEN04_I);


    BIT SET FLAGS FLG4O;

    BIT CLR FLAGS FLG4;


    BIT SET MODE2 TIMEN;

_initTIMER.end:
    rts;

von Jens (Gast)


Lesenswert?

@Steffi

> Ich hab mir deshalb ein kleines Programm geschrieben, was ein
> FlagPin alle Sekunde toggeln soll und dieses auf ein SPI-PROM
> gebrannt.

Funktioniert denn dein Programm im Simulator (VisualDSP)?

von Error (Gast)


Lesenswert?

Mein prozzesor ist nicht schnell , beim starten der rchnr steht da mein 
prozzesor 1.3 aber ich hab ein neues gekauft und ist 2.6 aber das ist 
ganz langsam  ich muss Bios update machen aber ich weisss nicht wie








BBBBBBBBIIIIIIIIITTTTTTTTEEEEEEEEEEEEEE Helfen !!!!!!!!!!!!!!!!!

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.