Fonaments de Circuits Digitals Combinacionals i Seqüencials

Enviado por Programa Chuletas y clasificado en Tecnología Industrial

Escrito el en catalán con un tamaño de 9,9 KB

Circuits digitals combinacionals

Són aquells en què, a cada instant, l'estat lògic de les seves sortides depèn únicament de l'estat de les seves entrades. Són circuits MSI (Medium Scale Integration).

Circuits de comunicació

Codificadors

És un circuit combinacional de n sortides i d'un nombre d'entrades inferior o igual a 2n que, en activar-se una de les entrades, genera a la sortida una combinació binària corresponent a aquesta entrada.

Tipus de codificadors:
  • Sense prioritat: Només pot activar-se una entrada cada cop. Si s'activen múltiples entrades simultàniament, poden aparèixer codis binaris erronis a les sortides.
  • Amb prioritat: Permeten que s'activin simultàniament dues o més entrades, donant prioritat a l'entrada de major pes segons un esquema predefinit i generant el codi corresponent a aquesta.

Descodificadors

És un circuit combinacional proveït de n entrades i un nombre de sortides (m) menor o igual a 2n. Converteixen un codi binari d'entrada a un altre codi o senyal d'activació a la sortida. Funcionen de manera que, en aparèixer una combinació binària específica a les seves entrades, s'activa una sola (o un conjunt específic) de les seves sortides.

Multiplexors (MUX)

Són sistemes combinacionals que funcionen com a selectors de dades. Tenen múltiples entrades de dades (D0, D1, ..., Dn-1), entrades de selecció (S) i una única sortida (Y). La combinació binària aplicada a les entrades de selecció determina quina de les entrades de dades es connecta a la sortida. Estan formats internament per un cert nombre de portes AND connectades a una porta OR.

Demultiplexors (DEMUX)

Fan la funció inversa dels multiplexors. Tenen una única entrada de dades (D), entrades de selecció (S) i un nombre determinat de sortides (Y0, Y1, ..., Yn-1). Les m entrades de selecció (on 2m = n) determinen a quina de les n sortides es dirigeix la informació present a l'entrada de dades.

Circuits aritmètics

Comparador

És un circuit combinacional que indica a la sortida la relació d'igualtat (A=B) o desigualtat (A>B, AA i B de n bits cadascun, expressats en algun tipus de codi binari.

Sumador binari

Efectua la suma de dos nombres binaris.

  • Semisumador (Half Adder): És el més senzill. Suma dos bits (A, B) sense tenir en compte el transport (carry-in) d'operacions anteriors. Genera una sortida de suma (S) i una sortida de transport (carry-out, Cout).
  • Sumador complet (Full Adder): Per sumar paraules de múltiples bits, es fan servir sumadors complets en cascada. Aquests sumen dos bits (A, B) i tenen en compte el transport d'entrada (carry-in, Cin) provinent de l'etapa anterior. Genera una sortida de suma (S) i una sortida de transport (Cout). La taula de la veritat inclou la variable addicional Cin.

Restador binari

Realitza una acció similar a la dels sumadors, però basada en l'operació aritmètica de la substracció. El transport en la resta s'anomena préstec (borrow). Es poden implementar com a semisubstractors i substractors complets, o utilitzant sumadors amb la tècnica del complement a 2.

Unitats Aritmètiques i Lògiques (ALU)

Són circuits integrats específics que permeten realitzar un conjunt d'operacions aritmètiques (suma, resta, increment, decrement) i lògiques (AND, OR, NOT, XOR) entre dos operands d'entrada (A, B). Unes entrades de selecció (S) determinen quina operació es realitza. Típicament tenen:

  • Dos busos d'entrada de dades (operands) de n bits.
  • Un bus de m bits per a la selecció de l'operació a realitzar.
  • Un bus de sortida de dades (resultat) de n bits.
  • Senyals d'estat (flags) com ara transport (carry), zero, signe, desbordament (overflow).
  • Una taula de codis operatius que defineix quina operació correspon a cada combinació de les entrades de selecció.

Circuits digitals seqüencials

Es caracteritzen per la seva capacitat de memoritzar informació (estat intern). Els valors de les sortides, en un moment determinat, no depenen exclusivament dels valors de les entrades en aquest instant, sinó que també depenen de l'estat anterior del circuit.

Biestables (Flip-Flops)

Són els circuits seqüencials fonamentals, constituïts per portes lògiques, capaços d'emmagatzemar un bit d'informació. Es poden classificar principalment en asíncrons (latches, controlats directament pel nivell de les entrades) i síncrons (flip-flops, controlats per un senyal de rellotge, CLK).

Biestables asíncrons (Latches)

Són activats pel nivell de tensió de les entrades de control.

  • Biestable R-S (Reset-Set): És el biestable elemental. Té dues entrades, Set (S) i Reset (R), i normalment dues sortides complementàries (Q i Q'). Pot ser construït amb dues portes NOR o dues portes NAND. Té un estat prohibit o indeterminat quan R i S s'activen simultàniament (R=S=1 per a NOR, R=S=0 per a NAND).

Biestables síncrons (Flip-Flops)

Canvien d'estat de manera sincronitzada amb un senyal de rellotge (CLK). Poden ser activats per nivell (quan el rellotge està a 1 o 0, menys comú actualment) o, més habitualment, per flanc (transició del senyal de rellotge).

  • Biestable R-S síncron: Similar a l'asíncron, però les entrades R i S només tenen efecte quan el senyal de rellotge està actiu (p. ex., durant el pols de rellotge o en el flanc actiu). Encara presenta l'estat indeterminat (R=S=1).
  • Biestable J-K: És una millora del R-S síncron que resol la indeterminació. Si J=1 i K=1, el biestable commuta (canvia al seu estat oposat) a cada flanc actiu del rellotge.
  • Biestable T (Toggle): S'obté normalment unint les entrades J i K d'un biestable J-K. Té una única entrada T. Si T=0, manté l'estat; si T=1, commuta a cada flanc actiu del rellotge.
  • Biestable D (Data/Delay): Té una única entrada de dades D. La sortida Q pren el valor de l'entrada D després del flanc actiu del rellotge. És el biestable més utilitzat per emmagatzemar dades en registres.

Els biestables síncrons activats per flanc són els més comuns i canvien d'estat només durant la breu transició del senyal de rellotge: sigui el flanc de pujada (transició 0 → 1) o el flanc de baixada (transició 1 → 0). Això proporciona una sincronització precisa i evita problemes associats amb els biestables activats per nivell.

Comptadors

És un circuit seqüencial les sortides del qual representen, en un codi determinat (normalment binari o BCD), el nombre d'impulsos de rellotge que s'han aplicat a la seva entrada. Està constituït per un conjunt de biestables interconnectats entre si.

Classificació dels comptadors:
  • Segons el sentit del compte:
    • Ascendents (Up Counter): Incrementen el compte amb cada impuls de rellotge.
    • Descendents (Down Counter): Disminueixen el compte amb cada impuls de rellotge.
    • Reversibles (Up/Down Counter): Poden comptar en ambdós sentits, controlats per una entrada addicional.
  • Segons la sincronització amb el rellotge:
    • Asíncrons (Ripple Counters): El senyal de rellotge extern només s'aplica directament al primer biestable. La sortida de cada biestable actua com a senyal de rellotge per al següent. Són més simples però més lents i pateixen retard de propagació.
    • Síncrons: El senyal de rellotge s'aplica simultàniament a les entrades de rellotge de tots els biestables. Tots els biestables canvien d'estat alhora (o gairebé). Són més ràpids i fiables, però generalment més complexos.

Registres de desplaçament

Són circuits seqüencials d'aplicació general constituïts per un conjunt de biestables (normalment tipus D) connectats en cascada, de manera que la sortida d'un biestable està connectada a l'entrada del següent. Són capaços d'emmagatzemar una paraula binària formada per tants bits com biestables contingui i permeten desplaçar aquesta informació (cap a la dreta o cap a l'esquerra) a través dels biestables a cada pols de rellotge.

Classificació segons l'entrada/sortida de dades:
  • SISO (Serial-In, Serial-Out): L'entrada de dades és sèrie (un bit a la vegada) i la sortida també és sèrie.
  • SIPO (Serial-In, Parallel-Out): L'entrada és sèrie, però totes les sortides dels biestables estan disponibles simultàniament (sortida paral·lel). Útil per convertir dades sèrie a paral·lel.
  • PISO (Parallel-In, Serial-Out): Les dades s'introdueixen simultàniament a tots els biestables (entrada paral·lel) i es llegeixen seqüencialment per la sortida de l'últim biestable (sortida sèrie). Útil per convertir dades paral·lel a sèrie.
  • PIPO (Parallel-In, Parallel-Out): Les dades s'introdueixen en paral·lel i es llegeixen també en paral·lel. Serveix principalment per a l'emmagatzematge temporal de dades.

Entradas relacionadas: