Hallo Forum,
ich habe schon im netz gesucht aber nix gefunden, vielleicht falsch
gesucht.
Ich möchte einen Spartan 3 (XC3S400-4TQG144C) durch einen anderen
Spartan 3 ersetzen (XC3S400-4PQG208C), sprich gleiche Spartan
familie/grösse aber andere Gehäuse.
Wird der bitstream, der im config prom gespeichert ist auch für die
andere gehäusengrosse gehen ohne den design anpassen müssen ?
Nein, das passt nicht. Der im größeren Gehäuse hat ja mehr I/Os, und
damit schon alleine mehr IOB-FlipFlops usw. deren Konfig ja im BitStream
sind. Außerdem werden ja die Anschlüsse nicht passen, zwischen den
verschiedenen gehäuse-Varianten unterscheiden sich ja auch die
Pin-Nummern deutlich....
also wenn ich die pins anpassen würde, dann hätte ich nur die extra IOB
flip-flops die nicht konfiguriert sind ?
Sprich, der Spartan würde die konfiguration akzeptieren, allerdigns die
pins wären falsch zugeordnet und manche gar nicht konfiguriert?
Nein, würde er sicherlich nicht. Der ist doch intern anders aufgebaut.
Was hindert dich daran, das BitFile neu zu erstellen? Um die Pins
anzupassen, brauchst du doch eh das Design. Ich schätze auch, wenn du
die Netzliste hast, könnte es sein, dass es nicht zum Innenleben passt.
Der Spartan wird das Bitstream nicht laden. Da er nach dem SyncWord
einen Device ID Check macht (siehe Configuration User Guide, UG332 Seite
37). Und wenns dann nicht passt, passt es nicht ;)
@Alle Vorredner:
Ein FPGA gleichen Typs mit unterschiedlichen Pins ist NICHT anders
aufgebaut, sprich er enthällt die gleiche Anzahl IO-Pads.
Diese sind vom Design auch nutzbar ( ISE Preference: Use unbonded IOs).
Ob der FPGA eine andere Devicekennung hat, weiss ich jetzt nicht.Wenn
dies so ist, dann nur weil beim Bonden entsprechende Strappingbits
verbonded werden.
Bei der Die Produktion unterscheiden sich die Chips weder in IO-Anzahl
noch bei beim Speedgrate.
Eine Unterscheidung wird erst beim Die-Test und Packaging getroffen...
Gruß
Andreas
Patrick Sulimma schrieb:
> Der Spartan wird das Bitstream nicht laden. Da er nach dem SyncWord> einen Device ID Check macht (siehe Configuration User Guide, UG332 Seite> 37). Und wenns dann nicht passt, passt es nicht ;)
ganz sicher ?
Sync ID und Device ID beim 144 sind die selben bei jeweiligen Spartan
type - XC3S400 x14 1C 093
Sollte also gehen innerhalb des gleiches models, allerdings ist nicht
einfacher und sicherer Design anzupassen ?
Hm dann muss XILINX wohl lügen, böse böse....
Spartans haben sehr wohl unterschiedliche ID´s. User Guide 332, Seite
238.
Ich sprach nicht davon das das Design geändert werden muss, sondern nur
davon das der Bitstream neu generiert werden muss.
Dies liegt daran, wenn man sich den configurations ablauf mal anschaut,
das das FPGA sehr wohl darauf achtet was es da denn zum fressen bekommt.
Nur wenn der ID code, im header des Bitstreams stimmt, wird dieser auch
geladen.
Nun gut es gibt da anscheinend doch ausnahmen, ich sollte nicht nur auf
die Seiten hinweisen sondern auch nochmal lesen ;)
After the FPGA is synchronized, the FPGA checks that the array ID
embedded in the
bitstream matches its internal array ID. This prevents the FPGA from
mistakenly
attempting to load configuration data intended for a different FPGA
array. For example,
the array ID check prevents an XC3S1000 from being configured with an
XC3S200
bitstream.
"
The Spartan-3AN FPGA family can be configured with a Spartan-3A
bitstream for the
equivalent size device, since they are compatible.
"
Danke für eure Antowrten,
So wie ich das jetzt verstanden habe ich werde 'nur' noch Adapter bauen
müssen um die pin/funktion zwischen den 144 und 208 pin anzpassen.
Pinout gerade gefunden in "Spartan-3 FPGA Family: Pinout Descriptions -
ds099".
Wie Ihr schon merkt, ich kann design nicht mehr anpassen, hardware
anpassen darf ich aber, noch...