www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Wieviel Resourcen noch vorhanden?


Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ 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

Autor: Joachim Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 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

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  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

Autor: thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hupps, da hab ich wohl zu lange nicht F5 gedrückt ;)

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ 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

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Sebastian (Gast)

>Für CPLDs ist der Floorplaner laut Hilfe eh nicht implementiert.

Doch, dort heisst er nur ChipViewer.

MFG
Falk

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.