Forum: FPGA, VHDL & Co. M4A5 unbelegte Pins in Abel


von J. V. (janvi)


Lesenswert?

habe ein Design mit einem M4A5-32 unter Abel bzw. IspLever-Classic. Die 
Sache funktioniert wie beabsichtigt, aber in bestimmten Betreibsfällen 
gibt es auf der Ausgangsleitung wilde Schwingungen (ca. 100Mhz) welche 
durch "Handauflegen" der Schaltung wieder verschwinden.


Nun habe ich Verdacht auf offene Eingänge am Chip die übersprchen. Viele 
Leitungen sind nicht programmiert, nicht beschaltet, leider auch kein 
Pullup. Das sind IO pins, reine Input bzw. Clock pins und JTAG pins.

Im Constraint File habe ich schon langsame Ausgänge eingestellt-> keine 
Änderung. Was ist mit offenen Eingängen zu tun, bzw. kann man hier 
irgenwie Pullups programmieren ? An welcher Pinsorte ist ein HW Pullup 
oder GND nötig?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Offene CMOS-Eingangspins sind generell schlecht, weil sich dort dann 
eine Spannung im Bereich um Vcc/2 einstellt und beide Transistoren des 
Eingangstreibers "halb" leiten. Dadurch hat das IC eine erhöhte 
Stromaufnahme und ist sehr sensibel für Einkopplungen.
Und wenn dann noch eine wacklige Versorgung (Entkopplung ungünstig) 
dazukommt, dann kann das Ganze sogar zu schwingen beginnen...

Abhilfe: Pullups/Pulldowns einbauen oder die nicht benötigten Pins als 
Ausgang definieren.

von Lattice User (Gast)


Lesenswert?

Die Eingänge M4A5 haben entweder einen weak Pullup, oder einen Keeper 
(Bus friendly laut Datenblatt). Default ist Pullup.
In beiden Fällen liegt bei einem unbeschalteten Eingang ein definierter 
Pegel an. Das kann also nicht die Ursache sein.

von Janvi (Gast)


Lesenswert?

Die Ursache war ein nachgeschalteter RS422 Differentialtreiber. Ich habe 
dort ein ca. 10cm langes Kabel eingesteckt mit einem unbekannten Sub-D 
Stecker aus der Grabbelkiste (mit integrierten Entstör-L). Der 
Bustreiber fängt mit etwa 100 Mhz an zu klingeln. Schliesst man die 
Treiberleitung korrekt ab oder hängt eine Last dran, ist alles wieder im 
grünen Bereich.

von Matthias (Gast)


Lesenswert?

Lattice User schrieb:
> Die Eingänge M4A5 haben entweder einen weak Pullup

ist das bei denen standardmässig so oder wurde das von dir so 
programmiert?

von Schlumpf (Gast)


Lesenswert?

Matthias schrieb:
> ist das bei denen standardmässig so oder wurde das von dir so
> programmiert?

Das "programmiert" man nicht, sondern gibt es im Constraintfile vor.
Das Constraintfile kann über den "Constraint Editor" modifiziert werden.
Dort findest du unter dem Reiter "Global Constraints" den Punkt 
"PULLUP". Hier kann entweder "UP" oder "HOLD" eingestellt werden.

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
Noch kein Account? Hier anmelden.