Wieviel Resourcen noch vorhanden?

Gast #687460
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
Gast
> 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
Gast
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
Gast
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.
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....

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
Gast
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.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 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.