Hallo, ich hab' mal ein paar kleinere Designs auf einem Spartan3 gebastelt. Dort sind ja die Resourcen von "Gattern" super groß. Was sehr praktisch bei der ISE 7.1 ist, man weiß sofort wieviel Resourcen man schon verbraucht bzw. noch übrig hat (in Prozent) im FPGA. Nun will ich mal ein kleines Testdesign in einen CPLD programmieren, allerdings werde ich aus dem Synthese Report einfach nicht schlau. Ich habe 5 Register verbraucht. Frage hier: werden für "interne" Zustände (z.B. StateMachine) IO-Pins besetzt? Bei den PALS ist das ja so. Falls ja wie muss ich die dann beschalten. Bei einem XC9536 habe ich dann noch 31 Register übrig (36 - 5) Ist einfach. Jetzt zeigt der Synthese Report noch folgendes an (natürlich ohne meine Fragen): Cell Usage : # BELS : 49 hat das was mit den Gates zu # AND2 : 13 tun??? XC9536 hat 800 # AND3 : 4 # AND4 : 1 # INV : 25 # OR2 : 5 # OR3 : 1 # FlipFlops/Latches : 7 # FDC : 4 wieviele hab ich??? 36?? # FTC : 3 wieviele hab ich??? 36?? # IO Buffers : 9 # IBUF : 5 OK, meine Eingänge # OBUF : 4 OK, meine Ausgänge Vielen Dank für Eure Antworten. Als Einzelkämpfer tue ich mir schwer, die wirklich richtigen Antworten zusammen zu reimen. Sebastian
@ Sebastian (Gast) >Nun will ich mal ein kleines Testdesign in einen CPLD programmieren, >allerdings werde ich aus dem Synthese Report einfach nicht schlau. Das ist ja auch nur die halbe Wahrheit. Du brauchst den Fitter Report, welcher am Ende der vollständigen Verarbeitungskette erstellt wird. Dort steht dann drin, wieviel Macrozellen gebraucht werden. MFG Falk
> Ich habe 5 Register verbraucht. Frage hier: werden für "interne" > Zustände (z.B. StateMachine) IO-Pins besetzt? Es werden Flipflops (Makrozellen) besetzt. Werden diese intern benötigt, geht nicht zwangsläufig ein I/O Pin verloren. In einem Design werden ja normalerweise auch Pins als INPUT genommen. Diese benötigen kein Flipflop. D.h. dieses Flipflop kann intern genommen werden. Die kleinen CPLDs haben soviele I/Os wie Makrozellen, die größeren haben mehr Makrozellen als I/Os. Joachim
Ahh, der Fitterreport. Na da sind ja die Infos die ich gesucht habe. Super danke. Das man den Inputpin der Makrozelle verwenden kann, wenn diese als Latch dient klingt logisch. Allerdings frage ich mich da schon wieder welche Makrozelle das Fitting Tool für das interne Latchen verwendet hat, damit ich der Makrozelle dann einen Inputpin zuweisen kann. Mal noch eine andere Frage, ich habe immer mal wieder was gelesen von manuellem routen von CPLDs / FPGAs bzw ASICs. Kann man das auch bei der Xilinx ISE oder ist das manuelle routen Schnee von gestern??? Jo, danke auf jedenfall für die Diskussion, Sebastian
@ Sebastian (Gast) >Das man den Inputpin der Makrozelle verwenden kann, wenn diese als Latch >dient klingt logisch. Ist aber nicht bei allen CPLDs so! > Allerdings frage ich mich da schon wieder welche >Makrozelle das Fitting Tool für das interne Latchen verwendet hat, damit >ich der Makrozelle dann einen Inputpin zuweisen kann. Anders herum wird ein Schuh draus. Einfach das Pin zuweisen, dann muss der Fitter das Latch woanders platzieren. >Mal noch eine andere Frage, ich habe immer mal wieder was gelesen von >manuellem routen von CPLDs / FPGAs bzw ASICs. Kann man das auch bei der >Xilinx ISE oder ist das manuelle routen Schnee von gestern??? Kann man, aber das willst du nicht wirklich. Die Zeiten sind vorbei. Allerdings wird teilweise noch manuell platziert, das geht im Floorplanner. MFG Falk
Meines Wissens nach, ist manuelles Place & Route mit der ISE möglich, aber ob es sinnvoll bzw. effektiver ist ? ... sicherlich nur mit Viel Erfahrung und wenn es unbedingt notwendig ist.
Naja, also man kennt ja die Ergebnisse vom Autorouter bei Eagle & Co (Platinen). Die Verbindungen werden alle erzeugt bei genügend großer Anzahl von Layern. Das Ergebnis ist aber immer suboptimal um nicht zu sagen Schei.... Keine Ahnung ob der Router von Xilinx das Optimum zusammenstellt. Aber wie schon thomas sagte, man braucht dafür bestimmt extrem viel Erfahrung.
@ Sebastian (Gast) >Naja, also man kennt ja die Ergebnisse vom Autorouter bei Eagle & Co >(Platinen). Die Verbindungen werden alle erzeugt bei genügend großer >Anzahl von Layern. Das Ergebnis ist aber immer suboptimal um nicht zu >sagen Schei.... Autorouter von Platinen unterscheiden sich wesentlich von Autoroutern von CPLDs/FPGAs. MFG Falk
Hab' ich mir schon irgendwo gedacht. Für CPLDs ist der Floorplaner laut Hilfe eh nicht implementiert. Schade eigentlich. Wäre mal ganz nett gewesen da einen Blick reinzuwerfen.... Sebastian.
@ Sebastian (Gast)
>Für CPLDs ist der Floorplaner laut Hilfe eh nicht implementiert.
Doch, dort heisst er nur ChipViewer.
MFG
Falk
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.