hallo, ich möchte wie oben schon erwähnt, nicht verwendete pins auf 0 setzen. ich habe eine platine mit dem MachXO 2280 und habe gemerkt, dass die pins, die im design nicht verwendet werden alle auf 'high' sind. wie kann ich das machen (mit dem ispLever7.2)? im datasheet kann ich dazu nichts finden. mfg Andi
> wie kann ich das machen (mit dem ispLever7.2)?
Du definierst einen Vektor mit genausovielen Bits, wie du freie Pins
hast:
spare : out std_logic_vector(10 downto 0);
und weist dem einen Null-Vektor zu:
spare <= (others=>'0');
hi, danke für die antwort. an die methode habe ich auch schon gedacht. dachte vllt eher daran das über eines der tools zu machen oder ähnlich. danke mfg Andi
> Du definierst einen Vektor mit genausovielen Bits, wie du freie Pins > hast: > spare : out std_logic_vector(10 downto 0); Und dann zieht Dir der MachXO über die standardmäfigen Pull-Ups die ganze Zeit Strom... @Andi Z.: Im DesignPlanner kannst Du pull-down einstellen...
ok das war mir alles schon klar. sieht dann wohl so aus als müsste ich das ganze dann manuell einstellen. danke mfg Andi
> Und dann zieht Dir der MachXO über die standardmäfigen Pull-Ups die > ganze Zeit Strom... Ein Ausgang sollte keine Pullups haben :-o Denn jeder Ausgang wird mal high oder low sein. Und wenn dann Pullups oder Pulldowns aktiv wären, fließt immer unnötiger Strom.
>ich möchte wie oben schon erwähnt, nicht verwendete pins auf 0 setzen.
Eingangs- oder Ausgangspins ?
SuperWilly
>> nicht verwendete pins auf 0 setzen. > Eingangs- oder Ausgangspins ? ROTFL :-D Nicht verwendet heißt doch, dass du damit machen kannst, was du willst. Ich habe (schmerzlich) gelernt, dass offene Eingänge schlecht sind (Thema EMV/ESD). Besser ist es, einen Ausgang offen zu lassen und aktiv zu treiben.
mh naja, ich würde die als eingangspins schalten. oder wäre das eher schlecht?? bin mir da nicht ganz sicher wie nicht verwendete pins geschaltet werden sollten. mfg Andi
aha ok. also sollte man die als output deklarieren und aktiv treiben?! egal mit welchem pegel?
> ich würde die als eingangspins schalten. > oder wäre das eher schlecht?? Du darfst dann aber niemals vergessen, in der Toolchain implizit nicht verwendete Pins mit einem Pullup/-down zu versehen. Denn das Schlimmste, was passieren kann, ist ein hochohmiger Eingang. Der pegelt sich dann so etwa bei halber Versorgungsspannung ein und es leiten beide FETs der Eingangsstufe. Ergebnis: unnötig hoher Stromverbrauch und ein warmer Baustein.
> ROTFL :-D
Die Frage war, wie sich zeigt, doch nicht so witzig ;O)
ok. ich würde die pins dann doch lieber als ausgang setzen und diese dann mit 0 treiben. die pins werden ja ansich schon als ausgang gesetzt, nur eben mit einer 1. und das stört mich da ja noch andere ic's drauf sind die davon ja auch gesteuert werden. deshalb will ich das generell einstellen das der die pins automatisch so setzt wie ich möchte. also als ausgang mit '0'. mfg Andi
Noch eine Bemerkung: Falls Du Eingangspins hast, die Du nicht verwendest, solltest du unbedingt verhindern, dass Ausgänge (ohne Pin-Constraint) dort hingelegt werden. Ich habe (schmerzlich) gelernt, dass man alle Ausgänge mit einem Pin-Constraint versehen werden, ansonsten übernimmt das der Mapper ;O) Gruß, SuperWilly
>versehen werden
besser: versehen sollte
> die pins werden ja ansich schon als ausgang gesetzt, nur eben mit einer > 1. und das stört mich da ja noch andere ic's drauf sind die davon ja > auch gesteuert werden. Nein die werden nicht automatisch als Ausgang gesetzt, sondern sind standardmäßig Eingänge mit Pull-Up. Daher Du kannst da mit einem anderen Ausgang dran, ohne dass diese gegeneinander Treiben. Die Pull-Ups sind dafür da, dass beim Power Up ein definierter Pegel anliegt und dass die Eingänge nicht irgendwo flowten und damit, wie schon erörtert, unnötige Querströme Verursachen. Allerdings, wenn Du schreibst, dass an diversen Pins noch andere ICs hängen, die davon getrieben werden, dann sind ja wohl die Pins am FPGA sowieso als Ausgang vorgesehen. Ich vermute, dass das Hardware-Einheiten sind, die Du erst später mit in Dein Design einbeziehen möchtest. Da würde ich Dir aber dringend empfehlen diese schon im Top-Level Deines Designs vorzusehen und diesen dann erst mal mit definierten Pegeln zu Belegen. Du solltest auch darauf achten, dass beim Power-Up keine Bausteine gegeneinander treiben. Das kann schon mal vorkommen wenn z.B. zwei Highaktive Enable-Signale vom FPGA generiert werden sollen. Beim Power Up sind diese nämlich über die Pull-Ups aktiv. Da sollte man dann einen "stärkeren" Pull-Down auf der Leiterplatte vorsehen, der den Pull-Up überschreibt. Zum Glück sind solche Signale aber meist High-Aktiv und man kann sich das dann sparen.
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.