mikrocontroller.net

Forum: FPGA, VHDL & Co. Ungenutzte Pins am FPGA


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Lisa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie sollte man mit ungenutzten Pins am FPGA umgehen?
Beim Microcontroller kann es ja sinnvoll sein, diese auf ein Level zu 
ziehen, um z.B. Strom zu sparen, der sonst durch ständige Umladevorgänge 
in den floatenden Eingangsstufen verbraucht würde.

Wie sieht das bei FPGAs aus?
Kann man das überhaupt verallgemeinern, oder kommt es auf den 
FPGA-Hersteller/Typ an?

Autor: Vancouver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn die entsprechenden IOPads unkonfiguriert bleiben, sind die Pins 
hochohmig. Die floaten dann zwar herum, aber da die Eingangstreiber 
disabled sind, richtet das keinen Schaden an und man kann die Pins 
einfach hängen lassen.
Macht auch Sinn, sonst müsste man bei großen FPGA alle unbenutzen Pins 
auf einen definierten Level legen, was das Platinenlayout schon massiv 
kompliziert machen kann.

Autor: User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für FPGAs gilt das gleiche, keine CMOS Eingänge floaten lassen.
Es gibt für alle Synthesetools eine Einstellung was mit ungenutzen Pins 
passieren soll. Da kann man "0", "1" oder auch Pull-Up einstellen.

Bei Altera/Intel ist es das hier im QSF-File:
set_global_assignment -name RESERVE_ALL_UNUSED_PINS "AS INPUT TRI-STATED 
WITH WEAK PULL-UP"

Autor: Lisa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die schnellen Antworten.
Leider scheinen diese sich etwas zu widersprechen.

@User Was genau sind ungenutzte Pins? Dürfen diese Pins gar nicht im 
constraints-file auftauchen, oder sind Pins gemeint, die nicht 
getrieben/gelesen werden, aber trotzdem z.B. im Hauptmodul des HDL-Codes 
als Eingang vorkommen, aber nicht weiter verwendet werden.

Autor: Blechbieger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei Intel gibt mehrere verschiedene Optionen mit Vor- und Nachteilen. 
Manche reduzieren den Stromverbrauch, andere z.B. den Ground Bounce. 
Diese Optionen haben dann auch unterschiedliche Anforderungen an die 
Beschaltung der Pins.

Autor: Tobias B. (Firma: www.elpra.de) (ttobsen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lisa schrieb:
> @User Was genau sind ungenutzte Pins? Dürfen diese Pins gar nicht im
> constraints-file auftauchen, oder sind Pins gemeint, die nicht
> getrieben/gelesen werden, aber trotzdem z.B. im Hauptmodul des HDL-Codes
> als Eingang vorkommen, aber nicht weiter verwendet werden.

Auch hier haengt es von FPGA Hersteller / Typ und der zugehoerenden 
software ab.

In der Regel kannst du aber davon ausgehen, dass Pins die im Hauptmodul 
vorkommen aber nicht weiter verwendet werden wegoptimiert werden und 
dann die gesetzte Regel fuer nicht verwendete Pins greift.

Autor: Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei einigen Famlien von Logikbausteinen (CPLD, FPGA) von Xilinx gibt es 
auch die interessante Option, einen Pin mit dem KEEPER-Attribut zu 
versehen. Solch ein Pin wird dann durch einen schwachen Treiber auf den 
Pegel gezogen, den er eh schon hat. Hierdurch hat mit eine ähnliche 
Charakteristik wie bei einem Pull-Up- oder Pull-Down-Widerstand, aber es 
fließen keine unnötigen Ausgleichsströme, wenn der Pin extern doch auf 
einen anderen festen Pegel gezogen werden sollte.

Ob das für Deinen konkreten Fall das richtige ist, muss von Pin zu Pin 
separat entschieden werden.

Autor: Lisa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die interessanten Antworten.

Ich werde dann wohl erst herausfinden müssen, was meine Tools machen und 
wie ich dieses Verhalten überhaupt beeinflussen kann.
Konkret sind das Yosys zusammen mit nextpnr auf einem ice40 FPGA.
Ich denke mal, dass in diesem Fall wohl nextpnr die Entscheidung über 
ungenutzte Pins treffen bzw. festlegen muss.

Autor: Weltbester FPGA-Pongo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lies dir am Besten die Beschreibung der IOs mal durch.
In deinem Fall wäre pull down oder GND sicher das Passendste.

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.

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