Spartan 3E XC3S500E Konfigurationsdatei

OP #1084899
Hallo Leute,
ich versuche herauszufinden, wie gross die PROM - 
Konfigurationsdatei(.mcs) für den oben genannten Spartan sein kann. Ich 
habe aus verschiedenen bit Dateien diese generiert und sie war immer 
780KB gross. Ich habe 1MB Platz in meinem PROM. Muss ich mir da sorgen 
machen, dass die .mcs Datei irgendwannmal mehr als 1MB hat oder kann ich 
ruhig weiterentwickeln?

Danke
Patrik
OP
Im Datenblatt steht:
A specific Spartan-3E part type always requires a constant
number of configuration bits, regardless of design complexity.

Daraus würde ich schliessen, dass die Datei immer gleich gross ist. Für 
XC3S500E müssen laut Datenblatt 2,270,208 Bits  reserviert werden.

Nun habe ich folgendes Problem. Was soll ich eigentlich im PROM 
abspeichern?
Die .bit Datei hat bei mir 283856 Bytes, das sind 2,270,848 Bits und das 
sind mehr als laut Datenblatt. Wenn ich auf meinem Starter Kit Board den 
M25P16 konfigurieren will, kann mit Hilfe des ISE eine .mcs Datei 
generiert werden. Diese ist aber 780KB gross. Welche Datei soll ich nun 
im PROM abspeichern, damit der FPGA konfiguriert werden kann?
danke
Patrik
In den Platform Flash gehört die .mcs Datei. Zumindest in die XCF, die 
wir immer verwenden. Beim Erstellen dieser fragt er ja auch nach dem 
verwendeten Flash. Die mcs Datei wird aus dem Bitfile erstellt. Das 
Bitfile könntest du auch direkt in den Spartan laden, ist aber beim 
Strom weg dann eben auch weg. Das Impact fragt schon nach der passenden 
Datei, ich glaub eine .bit Datei frisst er gar nicht für den Flash.
@ Patrik Krizan (patrik)

>Daraus würde ich schliessen, dass die Datei immer gleich gross ist. Für
>XC3S500E müssen laut Datenblatt 2,270,208 Bits  reserviert werden.

Ja. Allerdings gibt es auch einen Kompressionsalgorithmus, welcher die 
Files etwas kleiner macht. Sonderlich gut ist der aber nicht, ZIP und Co 
komprimieren da wesentlich besser.

>Die .bit Datei hat bei mir 283856 Bytes, das sind 2,270,848 Bits und das
>sind mehr als laut Datenblatt.

Ja, weil das der reine binäre Datenstrom ist, an den noch ein paar 
Informationen vorangestellt werden. Die Werden von IMPACT aber vor der 
FPGA-Konfguration entfernt.

>generiert werden. Diese ist aber 780KB gross. Welche Datei soll ich nun
>im PROM abspeichern, damit der FPGA konfiguriert werden kann?

Die MCS

MFg
Falk
OP
Hallo Falk,
aber die msc Datei ist bei mir genau 798218 Bytes gross, das sind 
6385744 bits. Laut Datenblatt braucht man einen Speicher von mindestens 
2,270,208 Bits. Das haut nicht hin. Muss ich aus der msc Datei etwas 
rausfiltern?

Patrik
Ich verstehe dein Problem nicht. Im Datenblatt steht doch eindeutig, 
welche Größe der Flash haben muss, damit der Bitstream reingeht. Wenn 
der Flash mit der entsprechenden Größe dran ist, gibts garantiert keine 
Probleme. Du musst auch gar nix filtern, das macht alles Impact für 
dich.
Angehängte Dateien:
Gast
Ich arbeite hier immer mit den .bit-Files, da wir das FPGA per Prozessor 
laden. Dazu muß ich am Beginn der Datei den "Vorkopf" abschneiden 
welcher z.B: das Erzeugungsdatum,Pfad/Dateiname,FPGA-Typ etc enthält.

Danach kommt dann der reine Bitstrom und der Beginnt IMMER mit
FFh FFh FFh FFh AAh 99h 55h 66h ...

oder als Bitstrom:
11111111111111111111111111111111 01010101 10011001 10101010 1001100110

zu beachten ist dabei das die Bits richtig herum gedreht werden müßen

ohne den "Vorkopf" (also ab FFh FFh FFh FFh AAh 99h 55h 66h ..." ist die 
größe IMMER fix (je nach FPGA-Typ) und entspricht GENAU den im 
Datenblatt angebenen Bitanzahl (plus 64Bit Synch-muster)

hoffe das klärt ein bischen auf

Fazit: wenn die im Datenblatt angegeben Anzahl Bits kleiner oder gleich 
Eprom-Bitanzahl entspricht ist das OK.

mfg
OP
ahaaaaaa. Ich möchte es nämlich auch so ähnlich realisieren wie du. Aber 
ich möchte den FPGA nicht mit einem uC programmieren sondern mit einem 
uC den Speicher programmieren und dann soll sich beim Start der FPGA die 
Daten aus dem Speicher holen.

Wenn ich das also richtig verstanden habe, muss ich an den uC die Daten 
aus der Bit Datei ab der FFh FFh FFh FFh Sequenz bis zu den letzen 64 
Sync Bits schicken und die Bits so im Speicher ablegen. Richtig?

patrik
Gast
Kannst doch mit Impact auch direkt ein bin-File erzeugen. Da muss nichts 
mehr gefiltert werden.
Außerdem steht am Anfang des FPGA-Files ein Pattern, das als 
Start-Signal dient. Daten vorher werden vom FPGA während der 
Konfiguration ignoriert! Der Header sollte also nicht störend wirken!
Gast
inf.ntb.ch/infoportal/help/topic/ch.ntb.infoportal/resources/embeddedSys 
tems/FPGA/pdfs/WebPackISE_Tutorial.pdf

Lese das mal, da ist auch der Jumper erwähnt der das Prom in der
Jtag Kette anmeldet.
@  Patrik Krizan (patrik)

>aber die msc Datei ist bei mir genau 798218 Bytes gross, das sind
>6385744 bits. Laut Datenblatt braucht man einen Speicher von mindestens
>2,270,208 Bits. Das haut nicht hin.

Doch. Wenn man mal die MCS Datei in einem normalen Texteditor anschaut 
wird man feststellen, dass die im Intel-Hex Format gespeichert ist. D.h. 
ein Byte ist mit mind. 2 ASCII-Zeichen == Bytes kodiert, wodurch sich 
die GRösse verdoppelt. Plus die Addressen und Zusatzinformationen.

> Muss ich aus der msc Datei etwas
>rausfiltern?

Nein, die ist pur.

MFG
Falk

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.