Jeg ble introdusert for denne tilstanden med høy impedans (det vil si ikke 0 og ikke 1) i en ledning.
Jeg har ikke «t forstår forskjellen mellom 0 og høy Z, jeg ser at disse begge er fravær av energi i ledningen.
For eksempel hvis jeg er på den ene siden av ledningen og på den andre siden der er et signal, hvordan kan jeg se forskjellen mellom 0 og Z?
Kommentarer
Svar
Jeg don» t vet så mye om andre logikkfamilier, men la meg fortelle deg om TTL:
Hvis du lar en inngang fra en TTL-port være frakoblet, vil porten lese det som en logikk 1. Folk sier at for å få en logikk 0 må du «kjøre porten lavt.» Men hva det egentlig betyr er at du må trekke strøm fra inngangspinnen for å trekke spenningen ned under logikk 0-terskelen.
En vanlig TTL-utgangspinne driver enten utgangslinjen høyt (i så fall strømmer det veldig lite strøm), ellers driver den linjen lavt (i så fall trekker utgangspinnen strøm fra hvor mange inngangspinner som helst det «vifter ut» til.
Merk: Disse strømene legger til. Det er derfor det er en grense for hvor mange innganger som kan drives fra en utgang.
A tri-stat e utdata kan enten drive utgangslinjen høyt, kjøre den lavt, eller gå inn i «hi-Z-tilstand» (aka, «høyimpedansetilstand», aka, «deaktivert», a.k.a., «tri-uttalt»). I høy-Z-tilstand kobles utgangspinnen effektivt ut.
Hensikten med tri-state-utganger er å tillate at mer enn en brikke kjører den samme linjen, som vanligvis kalles en buss i denne sammenhengen. Normalt, hvis du kobler to utganger sammen, når den ene går høy og den andre går lav, får du røyk — kanskje. Hvis ikke røyk, så får du en stor strøm som strømmer fra utgangen som prøver å kjøre linjen høyt til utgangen som prøver å kjøre linjen lavt, og du får en udefinert spenning på bussen.
Hvis du derimot har et antall tri-state-utganger koblet til bussen, er alt du trenger å gjøre å sørge for at bare en av disse utgangene er aktivert (dvs. ikke i høy-Z-tilstand ) når som helst.
Hvis ingen av sjåførene på bussen er aktivert, vil bussen «flyte» høyt, men sannsynligvis ikke i en veldefinert tid ramme. For å avhjelpe dette problemet er en TTL-buss med tri-state-drivere vanligvis koblet til V + gjennom en «pull up» -motstand som hjelper den til å oppnå en veldefinert logisk 1-tilstand i tide.
Svar
For eksempel hvis jeg er på den ene siden av ledningen og på den andre siden der er et signal, hvordan kan jeg se forskjellen mellom 0 og Z?
Du ringer fortelle forskjellen f.eks ved å følge krets:
LED-en vil lyser hvis signallinjen din er i 0 -status.
Den lyser ikke hvis den er i Z tilstand.
Svar
Hvis man kobler et oscilloskop til en ledning som er koblet til utganger som alle er i høyimpedansetilstand, får ledningen rikelig med støy i datamiljøet.
For å sikkert se, er en ledning koblet til bare til høyimpedansutganger, er å prøve å koble ledningen i sin tur til + logisk forsyningsspenning og GND via en motstand. Ledningens spenning følger ikke hvis noen sender ut 1 eller 0 til ledningen. Den riktige motstanden som kan trekke opp og ned, avhenger av den brukte logikkfamilien. Det er spesifisert i databladet for logikkfamilien.
Svar
hvis jeg er på den ene siden av ledningen og på den andre siden signaler (1, 0) eller høy Z, hvordan kan jeg oppdage forskjellen.
Det virkelige spørsmålet er, hvorfor vil du ha til?
Den vanlige årsaken til å ha høy Z er at flere enheter kan dele en ledning med bare en som setter data på den om gangen, og / eller for å bruke en pinne som både inngang og utgang. applikasjoner hvis alle enhetene er høye Z, så er logikknivået udefinert og ledningen vil «flyte» til hvilken restspenning som er tilstede.
Hvis du ser på et signal med et oscilloskop, så vil sondemotstanden (typisk 1 eller 10M Ω) trekke spenningen ned til bakken (svakt) og du kan ikke fortelle om den er aktivt trukket lavt (logikk 0) eller høy Z. En enkel måte du kan se forskjellen på, er å injisere et signal med høy impedans (f.eks. strømnettet via fingeren) som er kortsluttet w når logikken trekker høyt eller lavt.
En annen mulig bruk av høy Z er å generere en 3-nivå utgang. Kretsen nedenfor (fra en Amstrad CPC 464 hjemmecomputer) genererer 27 farger ved bruk av bare 3 digitale utganger fra portmatrisen. Hver utgang kan enten trekkes opp eller ned eller være høy Z. I høy Z bestemmes pin-spenningen av motstandene som er koblet mellom Vcc og 0V.
Svar
I digital logikk blir tri-tilstander (0,1, Z) ofte brukt for toveis «inout» -linjer. Dette sees ofte i FPGA-er (selv om dette er mindre vanlig i dagens mer moderne arkitekturer, der tri-state-modeller vanligvis blir syntetisert til LUT-er eller MUX-er bak kulissene).
Likevel, tri-state-buffere på FPGA IO-blokker eksisterer fremdeles i mange tekstiler. De brukes til å kontrollere retningen på datastrømmen. Hvis for eksempel en IO-linje er programmert til å bytte fra en utgang til en inngang, vil utgangsdriveren gå inn i en høy -impedans («Z»), deaktivering av utdata, og lar mottaksporten lese linjen.
Svar
Tenk på en digital port med 5 volt som 1 (HØY) og 0 volt som 0 (LAV). Vurder nå følgende tilfeller:
- Hvis utgangen er 0 (LAV), og hvis du kobler til en 5 volt batteri til utgangen gjennom en motstand på 5k vil strøm på 1mA strømme. Hvis du kobler utgangen til bakken (0 volt,) vil ingen strøm strømme.
- Hvis utgangen er 1 (HØY) og hvis du kobler et 5 volt batteri til utgangen gjennom en motstand på 5k vil ikke strøm strømme, men hvis du kobler utgangen til bakken (0 volt) gjennom en 5k motstand, vil 5mA strøm strømme.
- I Hi-Z-tilstand når du kobler utgangen til batteri eller til jordstrømmen vil ikke strømme i noe tilfelle fordi kretsen er åpen (dvs. høy impedans.)
0
er når ledning er koblet til0
potensialet.Z
er når ledningen er flytende (ikke koblet til noe som helst). Du kan ‘ t » oppdage » high-Z, men du kan trekke den opp eller ned.