Warum enthält der GPIO-Erweiterungs-Header der DE2-115-Platine von Altera 5 V und 3,3 V, aber der IO-Standard hat keine 5 V?

Das altera DE2-115-Board- Benutzerhandbuch Abschnitt 4.8 Seite 47 beschreibt den GPIO-Erweiterungs-Header. Es ist klar, dass es eine Stromversorgung von 3,3 V und 5 V hat.

Später heißt es jedoch: „Der Spannungspegel der E/A-Pins an den Erweiterungssteckleisten kann mit JP6 auf 3,3 V, 2,5 V, 1,8 V oder 1,5 V eingestellt werden (der Standardwert ist 3,3 V, siehe Abbildung 4- 17)."

(1) Ich bin verwirrt, warum wird eine 5-V-Stromversorgung bereitgestellt, wenn kein IO-Standard dem entspricht? Warum sollte der IO-Standard auf 1,5 V reduziert werden, wenn die bereitgestellte Stromversorgung nur auf 3,3 V abfällt? Sicherlich funktioniert ein IC, der 3,3 V benötigt, nicht mit IO von 1,5 V. Übersehe ich hier etwas?

(2) Auch wenn Klemmdioden an diesen Pins des Erweiterungsheaders vorhanden sind, ist es in Ordnung, einen 5-V-IC zu verwenden, der VOH (max) nahe 5 V haben soll?

Antworten (3)

  1. Das FPGA verwendet keine 5 V, aber einige der anderen Teile auf der Platine könnten dies tun. (Das von ihnen verwendete HD44780-LCD benötigt beispielsweise häufig 5 V an VCC.) Da es dort vorhanden ist, können sie es genauso gut am Erweiterungsanschluss bereitstellen, falls Sie es nützlich finden.

  2. Absolut nicht. Die Klemmdioden sind ein letzter Ausweg und sollen das FPGA nur vor kurzzeitiger Überspannung schützen. Das direkte Anschließen eines 5-V-Ausgangs an einen FPGA-Pin führt dazu, dass ein großer Strom durch die Schutzdiode fließt und diese zerstört.

    Einige Entwicklungsplatinen, die ich gesehen habe, verwenden kleine (z. B. 100 Ω) Reihenwiderstände an FPGA-I/Os, um den Strom durch Schutzdioden zu begrenzen. Dies begrenzt jedoch die Geschwindigkeit dieser I/Os, und ich würde nicht empfehlen, dass Sie sich bei großen Pegelverschiebungen wie 5 V auf 3,3 V darauf verlassen.

    Fazit: Wenn Sie ein reines 5-V-Teil an ein FPGA anschließen müssen, verwenden Sie einen echten Pegelumsetzer. Ein 74LVC245 zum Beispiel.

Ich verstehe, dass Sie 74LVC245 nur als Beispiel vorgestellt haben. Ich habe mich jedoch schon einmal mit Übersetzern auf Logikebene befasst. Was bringt es, eine Logikpegelübersetzung nur in eine Richtung zu haben, dh von 5 V auf 3,3 V und nicht umgekehrt (durch Erhöhen der Spannung von 3,3 V auf 5 V), wie dies beim 74LVC245 der Fall ist?
@quantum231 Die Richtung ist über den DIR-Eingang umschaltbar.
Ja, aber jeder IC dieses Typs erlaubt keine gleichzeitige 2-Wege-Kommunikation, wie sie beispielsweise für SPI benötigt wird, und für einen 2-Draht-SPI benötige ich möglicherweise 2 separate ICs.
Richtig, aber es gibt andere Teile, die besser geeignet sind, wenn das alles ist, was Sie brauchen. (Außerdem ist SPI meiner Erfahrung nach häufiger bei 3,3 V als bei 5 V.)
"Einige Entwicklungsplatinen ... verwenden kleine (z. B. 100 Ω) Vorwiderstände .... Dies begrenzt die Geschwindigkeit dieser E / A" - wahrscheinlich musste ich deshalb in der Vergangenheit einen Puffer zwischen einem FPGA verwenden Entwicklungsplatine und eine LED-Anzeige mit TLC59xx-Schieberegistern, obwohl die Ausgangsspezifikationen des FPGAs leicht die Spezifikationen des Schieberegisters übertrafen, um die maximale Geschwindigkeit zu erreichen. Es kann sehr verwirrend sein, wenn Sie glauben, dass Sie eine direkte Verbindung zwischen zwei Komponenten haben, und dann feststellen, dass das von Ihnen verwendete Modul diese stört ...

Level-Shifter.

Wenn Sie einen Stromkreis mit 5 V betreiben möchten, können Sie die 5-V-Leitung für die Stromversorgung Ihres Stromkreises verwenden. Sie verwenden dann die 3,3 V und 5 V, um Pegelumsetzer mit Strom zu versorgen, um eine Schnittstelle mit den GPIO-Pins herzustellen.

Wenn Sie Ihre Schaltung mit 1,5 V oder 1,8 V betreiben möchten (z. B. Hochgeschwindigkeitsspeicher haben normalerweise diese Pegel), können Sie einfach einen Regler verwenden, um die Stromversorgung für die Schaltung zu erhalten, und dann den E / A-Standard auf 1,5 einstellen V oder 1,8 V.

Wenn Sie ein 3,3-V-Gerät verwenden möchten, wählen Sie die 3,3-V-Logikpegel! Nur weil Sie eine niedrigere Spannung wie 1,5 V auswählen können, heißt das nicht, dass Sie dies tun sollten. Sie haben die Wahl, die E/A-Spannung an die angeschlossene Schaltung anzupassen.


Schließlich, nein , es ist nicht in Ordnung, einen 5-V-Ausgang von einer Schaltung direkt an den FPGA-Pin anzuschließen, Sie müssen einen Pegelumsetzer verwenden. Wenn Sie dies nicht tun, braten Sie die E / A-Pin-Klemmdiode und dann den E / A-Pin selbst.

Diese Informationen finden Sie im Cyclone IV-Datenblatt auf Seite 12. In Tabelle 1-15 wird deutlich angegeben, dass die maximale Eingangsspannung (Vih max) 3,6 V für den 3,3 VI/O-Standard beträgt.

Weitere Antwort auf Punkt (1) über die Antwort von Tom Carpenter hinaus : zum Ausführen anderer Geräte, die nicht unbedingt mit der digitalen FPGA-E / A verbunden sind. Ich habe mit einer kundenspezifischen Erweiterungsplatine für die 2x 40-poligen GPIO-Anschlüsse von Terasic-Produkten unter Verwendung von Altera-FPGAs gearbeitet, bei denen alle digitalen Signale 3,3 V betrugen, aber einige der Peripheriegeräte und andere Geräte +5 V verwendeten. Dazu gehörten der ADC und der DAC (3,3-V-Digital-I/O, +5-V-Analogseite), eine Spannungsreferenz und die Operationsverstärkerschaltungen für die Signalverarbeitung.

Bei Bedarf könnten die +5V sogar verwendet werden, um eine "saubere" 3,3V- oder andere Spannungsversorgung für Geräte auf der Erweiterungsplatine zu erzeugen.

Für (2) lautet die Antwort meistens nein . Es ist jedoch immer noch möglich, eine 5-V-Logik mit dem richtigen Schutz und zusätzlichen Schaltungen anzuschließen. Wenn Sie nicht wie bevorzugt einen Level-Shifting-IC verwenden können, beachten Sie diese älteren Altera-App-Hinweise:

Diese App-Hinweise sind jedoch weniger anwendbar, da die Geschwindigkeit der I/O-Technologieschnittstellen zunimmt und die Spannungskompatibilität abnimmt. Versuchen Sie, wann immer möglich, Logikumschalter zu verwenden.

Bedeutet die Verwendung des Logikpegelumsetzers, dass ich nicht die maximale IO-Frequenz erreichen kann, zu der der FPGA in der Lage ist?
@quantum231 hängt von der Wahl des Level-Shifters ab. Da die 40-polige GPIO-Schnittstelle nicht für Hochgeschwindigkeitssignale gedacht ist, werden der Anschluss und das Layout wahrscheinlich Ihre Signalgeschwindigkeit einschränken. Sie möchten eine weitere EE.SE-Frage stellen, um die Wahl des Level-Shifters zu diskutieren.