Diferencia entre revisiones de «Diseño de circuitos digitales y tecnología de computadores/Implementación de funciones lógicas»

Contenido eliminado Contenido añadido
Creación y adición de imagenes. Completado supuesto práctico.
m Corrección de deficiencias de formato ya añadidos comentarios a circuito multifunción
Línea 1:
==Introducción==
==Sistema combinacional==
 
Un ''sistema combinacional'' es la realización física de una función lógica. El estado lógico de la salida, considerado un instante, depende sólo de la combinación binaria que hay en la entrada y es independiente de combinaciones previas.
 
===Obtener la función lógica de un circuito combinacional===
Dado un circuito combinacional podemos obtener la función de salida anotando sucesivamente las expresiones booleanas que producen las distintas puertas lógicas a partir de la entradas.
 
Línea 10 ⟶ 8:
</center>
 
===Simplificación de circuitos===
Antes de componer el circuito combinacional que realiza una función lógica, es conveniente simplificar ésta para minimizar el número de puertas lógicas que necesita el circuito. Existen tres métodos para simplificar funciones:
* <p>algebraico: utiliza los teoremas y postulados del álgebra de Boole; se utiliza para un número de variables de 2 a 3.</p>
* <p>[[w:Mapa de Karnaugh|tabular o de Karnaugh]]: se utiliza para un número de variables de 2 a 5.</p>
* <p>[[w:Algoritmo Quine-McCluskey|numérico o de Quine-McCluskey]]: se usa para un número de variables superior a 5.</p>
 
===Multifunción===
Un sistema combinacional puede realizar varias funciones lógicas que comparten las mismas variables. Este sistema se denomina ''multifunción''. Para simplificar una multifunción se simplifica cada función independientemente. En la composición del circuito combinacional no se debe repetir la realización de términos comunes a varias salidas. En el circuito siguiente, las funciones '''f''' y '''g''' tienen en común el término '''<span style="text-decoration:overline">b</span>cd'''.
{|
|-
| <p><math>f = a\overline{b} + \overline{b}cd</math> <br /> <math>g = \overline{a}b + \overline{b}cd</math></p>
| rowspan="2"|[[Archivo:Common_term_multifunction.svg|Término común de un circuito combinacional multifunción]]
| Obsérvese que en las intersecciones de líneas en forma de cruz no existe contacto, los puntos de conexión se representan uniendo las líneas en forma de T.
|}
 
| <p><math>f = a\overline{b} + \overline{b}cd</math> <br /> <math>g = \overline{a}b + \overline{b}cd</math></p>
===Circuitos combinacionales con puertas NAND o NOR===
 
<center>
| rowspan="2"|[[Archivo:Common_term_multifunction.svg|Término común de un circuito combinacional multifunción]]
</center>
 
Obsérvese que:
| Obsérvese que* en las intersecciones de líneas en forma de cruz no existe contacto,; los puntos de conexión se representan uniendo las líneas en forma de T.
* en lugar de dibujar puertas NOT para obtener la negación de las variables ''a'' y ''b'', se utiliza un círculo para representar la inversión en las entradas correspondientes de las puertas AND.
* se han agrupado dos puertas AND en un sólo bloque compuesto, así como dos puertas OR en otro, colocándo la etiqueta de identificación solamente en el rectángulo superior; esta notación es usual para representar varias funciones digitales idénticas contenidas en un único circuito integrado.
 
===Circuitos combinacionales con puertas NAND o NOR===
Las puertas elementales AND, OR y NOT son suficientes para realizar cualquier función lógica. También es posible realizar cualquier función lógica utilizando sólo puertas NAND o sólo puertas NOR, que son de fabricación más sencilla y por ende, más baratas. Para que una función lógica se pueda implementar sólo con puertas NAND o NOR, se transforma algebraicamente usando los teoremas de DeMorgan de modo que:
* Para utilizar sólo puertas NAND, no puede haber ninguna suma y debe haber al menos una negación que afecte a toda la expresión algebraica.
Línea 36 ⟶ 38:
</center>
 
===Resolución de supuestos prácticos===
Cuando se nos plantea un problema basado en funciones lógicas, para resolverlo se siguen los siguientes pasos:
# comprender el problema y obtener el nº de entradas y salidas necesarias
Línea 54 ⟶ 56:
Hallar el circuito combinacional que cumpla estas condiciones.
|sol=
Las entradas son las condiciones de carrera A, B y C (0 = inactiva, 1 = activada), y la salida es el contactor R (0 = abierto, 1 = accionado).
 
Para obtener la función lógica en forma de suma de minterms sólo necesitamos las combinaciones para las cuales R vale 1, así que podemos ahorrarnos el esfuerzo de escribir el resto de combinaciones de la tabla de verdad para las cuales R vale 0.
Línea 62 ⟶ 64:
<tr><td>1</td><td>0</td><td>0</td><td>1</td></tr>
<tr><td>0</td><td>1</td><td>1</td><td>1</td>
<td><math>FR =
A \cdot \overline{B} \cdot \overline{C} +
\overline{A} \cdot B \cdot C +
Línea 76 ⟶ 78:
<br />
<center>
<math>FR = A\overline{B}(\overline{C}+C) + \overline{A}C(B+\overline{B}) = A\overline{B}+\overline{A}C</math>
</center>
<br />
<p>Para construir el circuito combinacional mediante puertas NAND transformamos la función R aplicando los teoremas de DeMorgan.</p>
<br />
<math>FR =
\overline{\overline{ A\overline{B}+\overline{A}C }} =
\overline{ \overline{A\overline{B}} \cdot \overline{\overline{A}C} }
</math>
<br />
<center>[[Archivo:Combinational_circuit_NAND_gates.svg|300px|Circuito combinacional con puertas NAND]]</center>
}}<!--FIN EJEMPLO-->
 
{{en desarrollo}}