Allgemein Messen von 'Z'

Gast #1367202
Lesenswert?
• ▲
▼
du moechtest wissen, ob ein FPGA eine '0', eine '1' oder ein 'Z' treibt?

Ganz einfach: Du legst eine '0' und eine '1' an die Leitung an und 
pruefst, ob du auch eine '0' oder '1' zurueck lesen kannst! Im 
schlimmsten Fall gibt es einen Kurzschluss ueber den High-side des 
externen und ueber den Low-side deines Chips...
#1367415
Lesenswert?
• ▲
▼
@  Lothar Miller (lkmiller)

>> Gibt es eine Möglichkeit mit einem FPGA, am Ausgang ein 'Z' erfassen zu
>> können?
>Nein. Es gibt keinen definierten Zustand von 'Z', und damit auch keine
>Möglichkeit das Vorhandensein von 'Z' abzufragen.

Geht nicht, gibts nicht!

Kann man einfach mit einem Spannungsteiler aus zwei gleichen 
Widerständen, z.B. 2x100k gegen GND und VCC. Per Fensterkomparator kann 
man messen, ob die Spannung bei ~0,5Vcc liegt, dann ist der Ausgang auf 
Tristate.

MFG
Falk
Moderator (Firma: Titel) Persönliche Seite #1367576
Lesenswert?
• ▲
▼
Falk Brunner schrieb:
> Per Fensterkomparator kann man messen, ob die Spannung bei ~0,5Vcc liegt,
> dann ist der Ausgang auf Tristate.
Das war mir schon auch im Sinn...
Aber die ursprüngliche Frage war, ob es
>>> eine Möglichkeit mit einem FPGA
gebe, und da fallen mir nur die Actel-Chips ein, die so ein wenig 
Analog-Geraffel mit drauf haben.

Unbeantwortet ist bis dato:
>> Warum stellst du die Frage? Was willst du machen?
OP #1368572
Lesenswert?
• ▲
▼
Ok sorry hab erstmal nen Schnipsel in den Raum geschmissen ohne genauere 
Erläuterungen:-)
geht zunächst mal um das Testen von ICs im allgemeinen (kein spezieller) 
mit Scan-Pfad.
Jetzt gibt es hier auch bidirektionale Pins die überprüft werden mussen 
ob sie den Wert 1, 0 und Z annehmen wenn die Schaltung geeignet 
stimuliert wird.
Bei 0 und 1 ist ja alles klar, aber auf Z zu prüfen ist mir nicht klar.
Also ne externe Beschaltung ist auch völlig in Ordnung?
Wollte erstmal allgemein Wissen wie man irgendwie erkennen/prüfen kann 
ob der Treiber deaktiviert wurde?
Gast #1368680
Lesenswert?
• ▲
▼
Wenn die Lecktröme sehr gering sind, hält so eine Leitung in der Regel 
den letzten Spannungswert.
D.h. Schreibe eine eins, deaktiviere den Treiber, lies schnell zurück - 
die Leitung könnte längere Zeit auf high bleiben.

Jedenfalls war das in unserem Multi-DSP System mit SRAM/SDRAM/FPGA 
damals der Fall.
Moderator (Firma: Titel) Persönliche Seite #1368716
Lesenswert?
• ▲
▼
> D.h. Schreibe eine eins, deaktiviere den Treiber,
Und dann weißt du mit einer Wahrscheinlichkeit von 50% ob das Ding Z 
ist...

Nein, die richtige Mehtode ist doch von Falk schon genannt worden:
Einen definierten Spannungspegel von Vio/2 anlegen und hochohmig 
schalten. Dann kontrollieren, ob 0V, Vio, oder Vio/2 an der Leitung 
anliegt.
Gast #1370297
Lesenswert?
• ▲
▼
Einfach den messpunkt über einen 100kOhm widerstand an einen weiteren 
FPGA ausgangspin legen. Damit hast du einen umschaltbaren 
Pull-Up/Pull-Down.

Wenn du nun den ausgangspin einmal mit 0 und einmal mit 1 treibst und 
den messpunkt zurückliest, dann kann tristate angenommen werden wenn der 
messpunkt dem schwachen Pull-Up/Pull-Down folgt.

Benötigt natürlich einen weitern cycle in der auswerte logik.

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