Abbruchbedingung

Gast #1133400
Lesenswert?
• ▲
▼
Hallo zusammen,

jetzt hätte ich noch eine andere Frage: Ich schreibe hier gerade einen 
Bootloader, der bei Reset die Pipeline anhält, alle Daten aus dem Flash 
ins RAM kopiert, dann die Pipe wieder startet. Danach wird aller Code 
aus dem RAM ausgefüht.

Mein einziges Problem ist die Abbruchbedingung: Wie würdet Ihr eine 
entsprechende Abbruchbedingung verfassen, damit der Bootloader erkennt, 
dass das Programm zuende ist und er mit Kopieren aufhören kann? Im 
Moment werden einfach die ersten 20 x 32Bit aus dem Flash ins SDRAM 
kopiert (die Programme haben momentan einfach nicht länger zu sein ;-) ) 
Aber wie könnte ich das Programmende erkennen?

Danke für Eure Hilfe und viele Grüße

Martin
Moderator (Firma: Titel) Persönliche Seite #1133409
Lesenswert?
• ▲
▼
> Aber wie könnte ich das Programmende erkennen?
Das wird ganz gern über irgendwelche Magic-Codes gemacht, z.B. zwei 
32-bit-Integer mit 0xDEADBEEF 0xBADCABlE
Siehe auch: http://en.wikipedia.org/wiki/Hexspeak
und: http://en.wikipedia.org/wiki/Magic_number_(programming)
Wenn dieser Code kommt, ist der Bootloader zuende. Du mußt allerdings 
beim Build-Prozess des Bootloaders diesen Magic-Code hinten mit 
dazulinken.
Moderator (Firma: Titel) Persönliche Seite #1133627
Lesenswert?
• ▲
▼
> 32-bit-CPU...
Der PC hat auch eine 32 Bit Architektur, und trotzdem:
Zitat aus og. Quelle
1
Der Begriff Word (bzw. Wort) wird auch in der Windows API für eine 16-Bit-Zahl verwendet.

> Wer lesen kann ist klar im Vorteil.
Zur Abwechslung diese Quelle:
http://en.wikipedia.org/wiki/Integer_(computer_science)
Und hier ist word gleichwertig bei 16 und 32 Bit angegeben.

BTW:
bei mir ist ein Wort immer so breit, wie ich das gerade brauche. Ich 
arbeite hier im Augenblick mit 18-Bit-Worten.
Gast #1133660
Lesenswert?
• ▲
▼
> BTW:
> bei mir ist ein Wort immer so breit, wie ich das gerade brauche. Ich
> arbeite hier im Augenblick mit 18-Bit-Worten.

Es lebe die selige BESM-6. Die hatte 48-Bit-Worte.
Wie breit war da wohl ein Wort...

Richtig... 48 Bit...

Und nun rate mal, wie breit ein Wort bei einer 32-bit-CPU ist.
Moderator (Firma: Titel) Persönliche Seite #1133704
Lesenswert?
• ▲
▼
32-bit-CPU wrote:
> BTW: Den IT-Oberblindfisch Bill Gate$ heranzuziehen, wär mir ja peinlich.
Du hast den Namen zuerst ins Gespräch gebracht, wie peinlich ... ;-)

Nicht Microsoft hat den Begriff word für 16-Bit Register auf einer 
32-Bit-CPU ins Spiel gebracht, sondern Intel mit Registern wie EAX, AX, 
Al und AH, und Befehlen wie CBW und CWD. Was blieb M$ da schon anderes 
übrig, als die vermurkste Definition zu übernehmen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren