CPLD XC95xxx Unbeschaltete I/Os - hochohmig?

Gast #994057
Lesenswert?

Hallo, kurze Frage...

(Bin noch recht unerfahren in Prog. Logik.)

Was für einen elektrischen Zustand nehmen I/Os von einen CPLD (XILINX 
95xxXL) ein wenn dieser "innen" sozusagen unbeschaltet ist. Z. B. ein 
Datenbuss D0..8 liegt am CPLD und ich verschalte nicht im inneren. 
Hochohmig, undef. ?
Möchte die erst später verwenden und will das diese nicht stören.

Kann man die I/O passive schalten.

(Am Rande: Verwende AltiumDesigner6.9)

Danke für Antworten.

mfg
Roland
#994200
Lesenswert?

Normalerweise sind die nicht benutzten Pins hochohmig.
Es gibt aber eine Fitter Option "Create programmable GNDs on unused 
I/Os", welche aus den unbenutzten Pins GND Pin macht. Diese Option ist 
bei schnellen Design und Bussen sehr empfehlenswert, indem man zwischen 
die benutzten Pins immer ein unbenutztes legt, das als GND Pin wirkt.
Wenn man diese Option verwendet, muß man dem Fitter mitteilen, welche 
zusätzlichen Pins davon ausgenommen werden sollen. Dies macht man über 
das UCF File, indem man das Pin mit Prohibit kennzeichnet.

Klaus
Moderator (Firma: Titel) Persönliche Seite #994244
Lesenswert?

> Normalerweise sind die nicht benutzten Pins hochohmig.
Wie deckt sich das mit der Aussage vom Datenblatt:
1
Each IOB also provides for bus-hold circuitry (also called a
2
“keeper”) that is active during valid user operation. The
3
bus-hold feature eliminates the need to tie unused pins
4
either high or low by holding the last known state of the input
5
until the next input signal is present. ....
6
When the device is not in valid user operation, the bus-hold
7
circuit defaults to an equivalent 50k ohm pull-up resistor in
8
order to provide a known repeatable device state. This
9
occurs when the device is in the erased state, in program-
10
ming mode, in JTAG INTEST mode, or during initial
11
power-up.

Und nach der Skizze vom DB sollte dieser Keeper sogar bei Ausgängen 
beteiligt sein. Allerdings steht da auch:
1
- Bus-hold circuitry on all user pin inputs
Gast #994642
Lesenswert?

Stimmt, den Bus-Hold habe ich vergessen, aber der kann über den Fitter 
deaktiviert werden.
Dass er beim Power On aktiv ist, kann sein.
Der "Keeper" ist nur für Bus-Ausgänge relevant und verhindert dass ein 
Bus, der von keinem angeschlossenen Busstein niederohmig getrieben wird, 
undefiniert herum-"floatet".
Wenn man vergisst ihn auszuschalten, dann wundert man sich beim Messen 
warum das Signal nicht richtig hochohmig wird, aber im beschriebenen 
Anwendungsfall mit dem nichtverwendeten Pins würde er vielleicht gar 
nicht stören.
Gast #994813
Lesenswert?

Hallo,

bin jetzt etwas verwirrt.
Trifft das auch für die XILINX 95xxxXL Familie zu?

Was muss ich nun tun?

Also Datenbus der aktiv ist liegt am CLPD der erstmal aber nix mit den 
Datenbus tut.


mfg
Roland
#994867
Lesenswert?

Such's Dir aus :
a) Nix tun. Dann werden unbenutzten Pins hochohmig.
b) Alle unbenutzten Pins auf GND legen.
   Dabei gibts wieder 2 Möglichkeiten um deine Bus-Pins auszunehmen.
   - Die Pins im UCF File mit PROHIBIT markieren.
   - In VHDL die Pins als out deklarieren und 'Z' zuweisen. Das hat den
     Vorteil, dass Du die Pins für eine spätere Verwendung schon 
vorbereitet
     hast, aber man muss kontrollieren, ob die Signale nicht 
wegoptimiert
     wurden, weil sie nicht verwendet werden. Das ist mir bei älteren 
ISE
     Versionen schon passiert, ich glaube die neuesten machen das nicht
     mehr.

In beiden Fällen sollte aber der Bus-Hold (Keeper) zum Zug kommen, das 
heisst der Pin ist nicht komplett hochohmig, sondern versucht den 
letzten Zustand '1' oder '0', der am Pin angelegt war (von innen oder 
außen ist egal) zu halten. Diese Schaltung ist nur schwach.
Wenn man das nicht will, muss man die Option in den Fitter Options 
deaktivieren.
Moderator (Firma: Titel) Persönliche Seite #994984
Lesenswert?

> In beiden Fällen sollte aber der Bus-Hold (Keeper) zum Zug kommen,
> das heisst der Pin ist nicht komplett hochohmig...
FULL ACK

Ich hatte an so einem CPLD schon mal offene Eingänge ohne Keeper.
Und was passiert dann?
Es stellt sich am Pin eine Spannung von ca. Vcc/2 ein  -->
beide Eingangstreiber-Transistoren leiten (P und N) -->
es fliesst ein deutlich wahrnehmbarer Strom, der bis zur 
Geruchsbelästigung führen kann... ;-)
#995013
Lesenswert?

Diese Erfahrung habe ich zwar nicht gemacht, aber ich habe eigentlich 
immer alle unbenutzten Ausgänge möglichst auf Programmable GND gelegt.
Wenn man den Fitter Report anschaut, sieht man bei den unbenutzten Pins 
sonst immer "TIE", was ich immer als Aufforderung verstanden habe, den 
Pin auf ein bekanntes Potential zu legen.
Was wir in unserer Firma auch immer machen, das ist die I/Os, welche an 
einen Stecker gehen, mit ESD Schutz zu versehen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren