- Grundläggande princip för avkodare:
- Nackdelar med standardavkodare:
- Prioriterad avkodare:
- 3: 8 avkodare:
- 4:16 Avkodare:
- Tillämpningar:
Avkodare är en typ av kombinationskrets som avkodar ett litet bitvärde till ett stort bitvärde. Den används normalt i kombination med kodare som gör precis motsatsen till vad en avkodare gör, så läs om Kodare här innan du fortsätter med avkodare. Återigen, precis som kodare, finns det också många typer av avkodare men antalet utgångsledningar i en avkodare kommer alltid att vara mer än antalet ingångsledningar. Vi lär oss hur en avkodare fungerar och hur vi kan bygga en för vårt projekt i denna handledning.
Grundläggande princip för avkodare:
Som tidigare sagt är avkodaren bara en motdel i en kodare. Det tar ett visst antal binära värden som ingångar och avkodningar sedan till fler rader med hjälp av logik. Ett prov avkodare visas nedan som tar i 2 Linjer som indata och omvandlar dem till 4 rader.
En annan tumregel med avkodare är att om antalet ingångar betraktas som n (här n = 2) så kommer antalet utgångar alltid att vara lika med 2 n (2 2 = 4) vilket är fyra i vårt fall. Avkodaren har 2 ingångsledningar och 4 utgångsledningar; därför kallas denna typ av avkodare som 2: 4 avkodare. De två ingångsstiften benämns som I1 och I0 och de fyra utgångsstiften heter från O0 till O3 som visas ovan.
Det är också viktigt att veta att en vanlig avkodare som den som visas här har en nackdel med att inte kunna skilja mellan att båda ingångarna är noll (inte ansluten till andra kretsar) och att båda ingångarna är låga (logik 0). Denna nackdel kan lösas med en prioritetsavkodare som vi kommer att lära oss senare i den här artikeln. Sanningstabellen för en vanlig avkodare visas nedan
Från avkodarens sanningstabell kan vi skriva det booleska uttrycket för varje utgångsrad, följ bara där utgången blir hög och bilda en OCH-logik baserat på värdena I1 och I0. Det liknar mycket Encoder-metoden, men här använder vi AND-logiken istället för ELLER-logiken. Det booleska uttrycket för alla fyra raderna ges nedan, där symbolen (.) Representerar OCH-logik och symbolen (') representerar INTE logik
O 0 = I 1 '. I 0 ' O 1 = I 1 '. I 0 O 2 = I 1. I 0 ' O 3 = I 1. I 0
Nu när vi har alla fyra uttrycken kan vi konvertera dessa uttryck till en kombinationslogisk grindkrets med AND-grindarna och INTE grindarna. Använd bara AND-grindarna istället för (.) Och en NOT-grind (inverterad logik) istället för en (') så får du följande logikdiagram.
Låt oss bygga kretsschemat för avkodaren 2: 4 på brädbrädet och kontrollera hur det fungerar i verkligheten. För att få det att fungera som en hårdvara måste du använda den logiska grinden IC som 7404 för NOT gate och 7408 för AND gate. De två ingångarna I0 och I1 tillhandahålls genom en tryckknapp och utgången observeras genom LED-lampor. När du väl har upprättat anslutningen på brädbrädan skulle det se ut så här på bilden nedan
Kortet drivs av en extern + 5V-strömförsörjning, som i sin tur driver Gate IC genom Vcc (stift 14) och jord (stift 7) stift. Ingången ges av tryckknappar, när den trycks in är den logisk 1 och när den inte trycks in ger den logik 0, läggs också ett neddragningsmotstånd med värdet 1k längs ingångslinjerna för att förhindra att stiften flyter. Utgångsledningarna (O0 till O3) ges genom dessa röda LED-lampor, om de lyser är det logiskt 1 annat är det logiskt 0. Den fullständiga funktionen för denna avkodarkrets visas i videon nedan
Observera att sanningstabellen för varje ingång visas i det övre vänstra hörnet och lysdioden lyser också på samma ordnade sätt. På samma sätt kan vi också skapa logikdiagram för alla typer av avkodare och bygga dem på hårdvara som denna. Du kan också titta på de lätt tillgängliga avkodnings-IC: erna om ditt projekt passar en.
Nackdelar med standardavkodare:
Precis som en kodare lider standardavkodaren också av samma problem. Om båda ingångarna inte är anslutna (logik X) kommer utgången inte att förbli noll. Istället kommer avkodaren att betrakta det som logisk 0 och biten O0 kommer att göras hög.
Prioriterad avkodare:
Så vi använder prioritetsavkodaren för att övervinna detta problem, denna typ av avkodare har en extra ingångsstift märkt som “E” (Enable) som kommer att anslutas till den giltiga stiftet för prioritetsavkodaren. Den blockschema för en prioritet Decoder visas nedan.
Den sanningstabell för en prioritetskodare visas också nedan, här X representerar ingen anslutning och '1' betecknar logisk hög och '0' representerar logisk låg. Observera att aktiveringsbiten är 0 när det inte finns någon anslutning på ingångslinjerna och följaktligen kommer också utgångslinjerna att förbli noll. På detta sätt kommer vi att kunna övervinna den ovannämnda nackdelen.
Som alltid från sanningstabellen kan vi driva det booleska uttrycket för utgångslinjerna O0 till O3. Det booleska uttrycket för sanningstabellen ovan visas nedan. Om du tittar närmare kan du märka att uttrycket är samma som för en normal 2: 4-avkodare men Enable-bit (E) har gjorts till OCH med uttrycket.
O 0 = EI 1 '. I 0 ' O 1 = EI 1 '. I 0 O 2 = EI 1. I 0 ' O 3 = E 1 1. I 0
Kombinationslogikdiagrammet för ovanstående booleska uttryck kan byggas med ett par växelriktare (NOT Gates) och 3-ingång OCH-grindar. Byt bara ut symbolen (') med växelriktare och symbolen (.) Mot AND-grinden så får du följande logikdiagram.
3: 8 avkodare:
Det finns också några högre ordningsavkodare som 3: 8-avkodaren och 4: 16-avkodaren som används oftare. Dessa avkodare används ofta i IC-paket till kretsens komplexitet. Det är också mycket vanligt att kombinera avkodare med lägre ordning som 2: 4-avkodare för att bilda en avkodare med högre ordning. Vi vet till exempel att en 2: 4-avkodare har 2 ingångar (I0 och I1) och 4 utgångar (O0 till O3) och en 3: 8-avkodare har tre ingångar (I0 till I2) och åtta utgångar (O0 till O7). Vi kan använda följande formler för att beräkna antalet lägre ordningsavkodare (2: 4) som krävs för att bilda en avkodare av högre ordning som 3: 8 avkodare.
Nödvändigt antal lägre avkodare = m2 / m1 Var, m2 -> antal utgångar för lägre ordning Avkodare m1 -> antal utgångar för högre ordning avkodare
I vårt fall kommer m1-värdet att vara 4 och värdet på m2 kommer att vara 8, så att använda dessa värden i ovanstående formler får vi
Nödvändigt antal 2: 4 avkodare för 3: 8 avkodare = 8/4 = 2
Nu vet vi att vi behöver två 2: 4-avkodare för att bilda en 3: 8-avkodare, men hur ska dessa två vara anslutna för att samlas. Nedanstående blockschema visar just det
Som du ser är ingångarna A0 och A1 anslutna som parallella ingångar för båda avkodarna och sedan aktiveras stiftet för den första avkodaren för att fungera som A2 (tredje ingång). Den inverterade signalen från A2 ges till Enable-stift på den andra avkodaren för att få utgångarna Y0 till Y3. Här hänvisas utgångarna Y0 till Y3 till lägre fyra mintermer och utgångarna Y4 till Y7 kallas högre fyra mintermer. Mintermerna med lägre ordning erhålls från den andra avkodaren och mintermerna med högre ordning erhålls från den första avkodaren. Även om en märkbar nackdel med denna typ av kombinationsdesign är att avkodaren inte har en aktiveringsstift som gör den mottaglig för de problem som vi har diskuterat tidigare.
4:16 Avkodare:
På samma sätt som en 3: 8-avkodare kan en 4: 16-avkodare också konstrueras genom att kombinera två 3: 8-avkodare. För en 4: 16-avkodare har vi fyra ingångar (A0 till A3) och sexton utgångar (Y0 till Y15). Medan för en 3: 8-avkodare har vi bara tre ingångar (A0 till A2).
Vi har redan använt formlerna för att beräkna antalet avkodare som krävs, i detta fall kommer m1 att vara 8 eftersom 3: 8 avkodare har 8 utgångar och värdet på m2 kommer att vara 16 eftersom 4:16 avkodaren har 16 utgångar, så att använda dessa värden i formlerna ovan får vi
Nödvändigt antal 3: 8 avkodare för 4:16 avkodare = 16/8 = 2
Därför kräver vi två 3: 8-avkodare för att konstruera en 4:16-avkodare. Arrangemanget av dessa två 3: 8-avkodare kommer också att likna det vi gjorde tidigare. Blockdiagrammet för anslutning av dessa två 3: 8-avkodare visas nedan.
Här betraktas utgångarna Y0 till Y7 som lägre åtta mintermer och utsignalen från Y8 till Y16 betraktas som högre åtta mintermer. Nedre högra mintermer skapas direkt med ingångarna A0, A1 och A2. Samma signaler ges också till de tre ingångarna på den första avkodaren, men den första avkodarens aktiveringsstift används som den fjärde ingångsstiftet (A3). Den inverterade signalen från den fjärde ingången A3 ges till den andra avkodarens aktiveringsstift. Den första avkodaren matar ut det högre åtta mintermsvärdet.
Tillämpningar:
En avkodare används vanligtvis i kombination med en kodare och därför delar de båda samma applikationer. Utan avkodare och kodare hade modern elektronik som mobiltelefoner och bärbara datorer inte varit möjligt. Få viktiga tillämpningar av avkodare listas nedan.
- Sekvenseringssignalapplikation
- Timing Signal Applications
- Nätverkslinjer
- Minneselement
- Telefonnät