introducciÓn a los sistemas 2014 · verdad de las ocho compuertas lógicas se listan en la figura...

16
INTRODUCCIÓN A LOS SISTEMAS DIGITALES Parte 1 2014 MATERIAL DE APOYO A LOS TEMAS DE LA UNIDAD I Basado en la obra del autor M. Morris Mano: Arquitectura de Computadoras 3era. edición

Upload: others

Post on 18-Mar-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

INTRODUCCIÓN A LOS SISTEMAS DIGITALES Parte 1

2014

MATERIAL DE APOYO A LOS TEMAS DE LA UNIDAD I – Basado en la obra del autor M. Morris Mano: Arquitectura de Computadoras – 3era. edición

Page 2: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 2

INTRODUCCION A LOS SISTEMAS DIGITALES

1. COMPUTADORAS DIGITALES

La computadora digital es un sistema digital que ejecuta diversas tareas de

computación. La palabra digital implica que la información en la computadora se

representa por variables que toman un número limitado de valores discretos. Estos

valores se procesan internamente por componentes que pueden mantener un número

limitado de estados discretos. Los dígitos decimales 0, 1, 2,..., 9, por ejemplo,

proporcionan 10 valores discretos. Las primeras computadoras electrónicas digitales,

desarrolladas a finales de los años 40, se usaron principalmente para cómputos

numéricos. En este caso los elementos discretos son los dígitos. De esta aplicación ha

surgido el término computadora digital. En la práctica, las computadoras digitales

funcionan más confiablemente si sólo se usan dos estados. Por la restricción física de los

componentes y porque la lógica humana tiende a ser binaria (por ejemplo, proposiciones

de cierto o falso, sí o no), los componentes digitales que están restringidos a tomar

valores discretos se restringen aún más a tomar sólo dos valores y se dice que son

binarios.

Las computadoras digitales emplean el sistema numérico binario, que tiene

dos dígitos: 0 y 1. A un dígito binario se le llama bit. La información se representa

en las computadoras digitales en grupos de bits. Con diversas técnicas de

codificación, se puede hacer que los grupos de bits representen no sólo los números

binarios, sino también otros símbolos discretos, como los dígitos decimales o las

letras del alfabeto. Usando juiciosamente los arreglos binarios y diversas técnicas de

codificación, los grupos de bits desarrollan conjuntos completos de instrucciones

para ejecutar distintos tipos de cómputos.

En contraste con los números decimales comunes, que emplean el sistema en base

10, los números binarios constituyen un sistema en base 2 con dos dígitos: 0 y 1. El

equivalente decimal de un número binario se puede encontrar expandiendo éste en una

serie de potencias en la base 2. Por ejemplo, el número binario 1001011, representa una

cantidad que puede convertirse a un número decimal multiplicando cada bit por la base

elevada a una potencia entera como sigue:

1x26 + 0x2

5 +0x2

4+1x2

3+0x2

2+1x2

1+1x2

0

Los siete bits 1001011 representan un número binario cuyo equivalente decimal es 75.

Sin embargo, este mismo grupo de siete bits representa la letra K cuando se usa junto con

un código binario para las letras del alfabeto.

También puede representar un código de control para especificar alguna decisión lógica

en cierta computadora digital. En otras palabras, los grupos de bits en una computadora

digital sirven para representar muchas cosas diferentes. Esto es similar al concepto de que

las mismas letras de un alfabeto se utilicen para construir diferentes lenguajes, como el

inglés y el francés.

Un sistema de computadora se subdivide a veces en dos entidades funcionales:

hardware y software. El hardware de computadora consta de todos los componentes

electrónicos y dispositivos electromecánicos que comprenden la entidad física del

dispositivo. El software consiste en las instrucciones y los datos que la computadora

manipula para ejecutar las diversas tareas de procesamiento de datos. A una secuencia de

instrucciones para computadora se le llama programa. Los datos que son manipulados por

el programa constituyen la base de datos.

Page 3: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 3

Un sistema de computadora está compuesto por su hardware y el software del sistema

disponible para su uso. El software del sistema de una computadora consiste en una

colección de programas cuyo propósito es hacer un uso más efectivo de la computadora.

Dentro del software del sistema, el conjunto de programas fundamental sin el cual no se

puede hacer uso de la computadora se le conoce como sistema operativo, es el encargado

de administrar los recursos de la computadora (CPU, memoria, dispositivos de E/S, etc.),

y de proveer la interfaz con el usuario para que pueda hacer uso de todas las aplicaciones.

Se distinguen de los programas de aplicación escritos por el usuario con el propósito de

resolver problemas particulares. Por ejemplo, un programa en un lenguaje de alto nivel

escrito por un usuario para resolver necesidades de procesamiento de datos particulares es

un programa de aplicación, pero el compilador que traduce el programa en lenguaje de

alto nivel a lenguaje de máquina es un programa de sistema. El cliente que compra un

sistema de computadora necesitaría, además del hardware, cualquier software disponible

necesario para la operación eficaz de la computadora. El software del sistema es una parte

indispensable del sistema total de la computadora. Su función es compensar las

diferencias que existen entre las necesidades del usuario y la capacidad del hardware.

El hardware de la computadora se divide por lo general en tres grandes partes,

como se muestra en la figura 1. La unidad central de procesamiento (CPU, central

processing unit) contiene una unidad aritmética y lógica para la manipulación de datos,

varios registros para almacenar los datos y circuitos de control para leer de la memoria y

ejecutar instrucciones. La memoria de la computadora almacena las instrucciones y los

datos. Se le llama memoria de acceso aleatorio (RAM, random access memory) porque la

CPU puede acceder a cualquier parte de la memoria en forma aleatoria y recuperar la

información binaria dentro de un intervalo fijo. Y el sistema de E/S formado por el

controlador que contiene circuitos electrónicos para comunicarse y controlar la

transferencia de información entre la computadora y un determinado dispositivo de

entrada y salida conectado a la computadora como teclados, impresoras, terminales,

unidades de discos y otros dispositivos de comunicación.

En nuestra asignatura trataremos de entender cómo funcionan estos elementos y cómo

interactúan para que el usuario pueda realizar las operaciones que desea. Cuando se trata

del hardware de la computadora, es costumbre distinguir entre lo que se refiere a la

organización de computadora, su diseño y arquitectura.

La organización de la computadora se refiere a la manera en que los componentes

operan y la forma en que se conectan para formar el sistema de la computadora. Se

supone que los diversos componentes están en su lugar y la tarea es investigar la

estructura organizacional para verificar que las partes de la computadora funcionen como

se proponía.

El diseño de la computadora se ocupa del diseño del hardware de la computadora.

Una vez que se formulan las especificaciones de la computadora, es tarea del diseñador

desarrollar el hardware para el sistema. El diseño de la computadora se ocupa de la

determinación de qué hardware debe usarse y cómo deben conectarse las partes. Este

aspecto del hardware se conoce a veces como implantación de la computadora.

La arquitectura de la computadora se ocupa de la estructura y comportamiento de

la computadora desde el punto de vista del usuario. Incluye los formatos de información,

el conjunto de instrucciones y las técnicas para direccionamiento de memoria. El diseño

de la arquitectura de un sistema de computadora se ocupa de las especificaciones de los

varios módulos funcionales, tales como los procesadores y la memoria, y de

estructurarlos conjuntamente en un sistema de computadora.

Page 4: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 4

Figura 1: Esquema de los componentes de hardware de una computadora (Autor: Rodríguez Roselló,

Miguel Angel)

En nuestra asignatura presentamos los temas asociados con el hardware de la

computadora. Primero, estudiaremos los distintos componentes digitales usados en la

organización y diseño de los sistemas de computadora, luego la arquitectura de la unidad

central de procesamiento y los pasos que necesarios para programar una computadora

digital elemental. Al final, presentamos los aspectos básicos de la organización de la

entrada salida.

2. COMPUERTAS LOGICAS

La información binaria se representa en las computadoras digitales por cantidades físicas

llamadas señales. Las señales eléctricas tales como los voltajes existen en todas partes de

la computadora, en cualquiera de los dos estados reconocidos. Los dos estados

representan una variable binaria que puede ser igual a 1 o a 0. Por ejemplo, una

computadora digital en particular puede emplear una señal de 3 volts para representar el 1

binario y 0.5 volts para representar el 0 binario. Las terminales de entrada de los circuitos

lógicos aceptan señales binarias de 3 y 0.5 volts y los circuitos responden en las

terminales de salida con señales de 3 y 0.5 voltios para representar la entrada y salida

binarias correspondientes a 1 y 0 respectivamente.

La lógica binaria trata de las variables binarias y con las operaciones que asumen

un significado lógico. Sirve para describir, en forma algebraica o tabular, la manipulación

y el procesamiento de la información binaria. La manipulación de la información binaria

se hace mediante circuitos lógicos llamados compuertas. Las compuertas son bloques de

hardware que producen señales del 1 o el 0 binarios cuando los requerimientos lógicos de

entrada son satisfechos. En los sistemas de computadora digital se utiliza por lo general

una variedad de compuertas lógicas. Cada compuerta tiene un símbolo gráfico distinto y

su funcionamiento puede describirse por medio de una expresión algebraica. La relación

de entrada/ salida de las variables binarias para cada compuerta puede representarse en

forma tabular por una tabla de verdad.

Los nombres, los símbolos gráficos, las funciones algebraicas y las tablas de

verdad de las ocho compuertas lógicas se listan en la figura 2.

Cada compuerta tiene una o dos variables de entrada binarias designadas con A y B y una

variable binaria de salida designada por x. La compuerta AND (Y) produce la función

lógica AND: esto es, la salida es 1 si la entrada A y la entrada B son ambas igual a 1; de

otra manera, la salida es 0. Estas condiciones también se especifican en la tabla de verdad

Page 5: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 5

para la compuerta AND. La tabla que muestra la salida x es 1 sólo cuando la entrada A y

la entrada B son ambas 1. El símbolo de operación algebraica para la función AND (Y) es

el mismo que el símbolo de multiplicación de la aritmética ordinaria. Podemos usar un

punto entre las variables o bien concatenar las variables sin ningún símbolo de operación

entre ellas. Las compuertas AND (Y) pueden tener más de dos entradas, y por definición,

la salida es 1 si y sólo si todas las entradas son 1.

Figura 2: Compuertas lógicas digitales

Page 6: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 6

La compuerta OR (O) produce la función OR (O) inclusivo; esto es, la salida es 1

si la entrada A o la entrada B o ambas entradas son 1; de otra manera, la salida es 0. El

símbolo algebraico de la función OR (O) es +, similar al de la suma aritmética. Las

compuertas OR (O) pueden tener más de dos entradas, y por definición, la salida es 1 si

cualquier entrada es 1.

El circuito inversor invierte el sentido lógico de la señal binaria. Produce la

función NOT o complemento. El símbolo algebraico que se utiliza para el complemento

lógico es símbolo de prima (') o una barra sobre la variable.

El círculo en la salida del símbolo gráfico de un inversor designa un complemento

lógico. Un símbolo de triángulo por sí mismo designa un acoplador o buffer o registro

intermedio. Un acoplador no produce una función lógica particular, ya que el valor

binario de su salida es el mismo que el valor binario de su entrada.

La función NAND es el complemento de la función AND (Y), como se indica con

su símbolo gráfico, que consiste en un símbolo gráfico AND (Y) seguido de un círculo.

La designación NAND se deriva de abreviar NOT-AND. La compuerta NOR es el

complemento de la compuerta OR (O) y lleva un símbolo gráfico OR seguido de un

círculo. Tanto la compuerta NAND como la NOR pueden tener más de dos entradas, y la

salida es siempre el complemento de la función AND u OR, respectivamente.

La compuerta OR exclusiva (XOR) tiene un símbolo gráfico similar al de la

compuerta OR, excepto por una línea curva adicional del lado de la entrada. La salida de

esta compuerta es 1, si cualquiera de las entradas es 1 pero excluye la combinación

cuando ambas entradas son 1. La función XOR tiene su propio símbolo algebraico o

puede expresarse en términos de AND, OR y operaciones complemento como se muestra

en la figura 2. El NOR exclusivo es el complemento del XOR, como lo indica el círculo

en su símbolo gráfico. La salida de esta compuerta es 1 sólo si ambas entradas son igual a

1 o ambas entradas son igual a 0.

Un nombre más apropiado para la operación XOR sería la función impar; esto es, su

salida es 1 si un número impar de entradas es 1. Así, en una función XOR de tres entradas

(impar), la salida es 1 si sólo una entrada es 1 o si las tres entradas son 1. Las compuertas

OR (O) exclusivo y NOR exclusivo se encuentran comúnmente disponibles con dos

entradas, y sólo rara vez se encuentran con tres o más entradas.

3. ALGEBRA BOOLEANA

El álgebra booleana trata de las variables binarias y las operaciones lógicas. Las variables

se designan con letras como A, B, x e y. Las tres operaciones lógicas básicas son AND,

OR y complemento. Una función booleana puede expresarse algebraicamente con

variables binarias, los símbolos de operaciones lógicas, paréntesis y signos de igualdad.

Para un valor dado de las variables, la función booleana puede ser 1 o 0. Considere, por

ejemplo, la función booleana

F = x + y'z

La función F es igual a 1 si x es 1 o si tanto y' como z son igual a 1; de otra manera,

F es igual a 0. Pero decir que y' = 1 es equivalente a decir que y = 0 ya que y' es el

complemento de y. Por lo tanto, podemos decir que F es igual a 1 si x = 1 o si y = 0 y z =

1. La relación entre una función y sus variables binarias se puede representar en una tabla

de verdad. Para representar una función en una tabla de verdad necesitamos una lista de

las 2n combinaciones de las n variables binarias. Como se muestra en la figura 3(a), hay

ocho combinaciones distintas posibles para asignar los bits a las tres variables x, y y z. La

función F es igual a 1 para aquellas combinaciones donde x = 1 o y = 0 y z = 1; es igual a

Page 7: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 7

0 para todas las demás combinaciones.

Una función booleana puede transformarse de una expresión algebraica a un

diagrama lógico compuesto de AND, OR y compuertas inversas. El diagrama lógico para

F se muestra en la figura 3(b). Hay un inversor para la entrada y para generar su

complemento y'. Hay una compuerta AND (Y) para el término y'z, una compuerta OR se

usa para combinar los dos términos. En un diagrama lógico, las variables de la función se

toman como las entradas del circuito y el símbolo de la variable de la función se toma

como la salida del circuito.

Figura 3: Tabla de verdad y diagrama lógico para F = x +y`z

El propósito del álgebra booleana es facilitar el análisis y el diseño de los circuitos

digitales. Proporciona una herramienta práctica para:

1 Expresar en forma algebraica la relación de la tabla de verdad entre las variables

binarias.

2 Expresar en forma algebraica la relación de entrada/salida de los diagramas lógicos.

3 Encontrar circuitos más simples para la misma función.

Una función booleana especificada por una tabla de verdad puede expresarse

algebraicamente de muchas maneras diferentes. Manipulando una expresión booleana de

acuerdo con las reglas del álgebra booleana, se puede obtener una expresión más simple

que requiera menos compuertas. Para ver cómo se hace esto, primero debemos estudiar

las capacidades de manipulación del álgebra booleana.

La tabla 1lista las identidades básicas del álgebra booleana.

Todas las identidades de la tabla pueden probarse por medio de las tablas de verdad. Las

primeras ocho identidades muestran la relación básica entre una sola variable y sí misma,

o en conjunción de las constantes binarias 1 y 0.

Tabla 1: Identidades básicas de álgebra booleana

Page 8: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 8

Las siguientes cinco identidades (9 a 13) son similares a las del álgebra ordinaria. La identidad 14 no se aplica en el álgebra ordinaria, pero es muy útil en la manipulación de expresiones booleanas. Las identidades 15 y 16 se llaman teoremas de DeMorgan, que se tratan más adelante. La última identidad afirma que si una variable se complementa dos veces, uno obtiene el valor original de la variable.

Las identidades listadas en la tabla se aplican a variables solas o a las funciones booleanas expresadas en términos de variables binarias. Por ejemplo, considere la siguiente expresión algebraica booleana:

AB' + C'D + AB' + C'D Si x = AB' + C'D, la expresión puede escribirse como x + x. De la identidad 5 de la tabla 1 encontramos que x + x = x. Así la expresión puede reducirse a sólo dos términos:

AB' + C'D + A'B + C'D = AB' + C'D

El teorema de DeMorgan es muy importante al tratar con las compuertas NOR y NAND. Afirma que una compuerta NOR, que representa la función (x + y)' es equivalente a la función x' y'. Análogamente, una función NAND puede expresarse por (xy)' o (x' + y'). Por esta razón las compuertas NOR y NAND tienen dos distintos símbolos gráficos, como se muestra en las figura 4 y 5.

Figura 4: Dos símbolos gráficos para la compuerta NOR

Figura 5: Dos símbolos gráficos para la compuerta NAND

En lugar de representar una compuerta NOR con un símbolo gráfico OR

(O) seguido de un círculo, podemos representarlo por un símbolo gráfico AND

precedido de círculos en todas sus entradas. El símbolo AND invertido para la

compuerta NOR se sigue del teorema de DeMorgan y de la convención de que los

círculos pequeños denotan complementación. Análogamente, la compuerta NAND

tiene dos símbolos distintos, como se muestra en la figura 5.

Para ver cómo se emplea la manipulación del álgebra booleana para simplificar

circuitos digitales, considere el diagrama lógico de la figura 6(a).

La salida del circuito puede expresarse algebraicamente como sigue:

F = ABC + ABC' + A'C

Cada término corresponde a una compuerta AND, y la compuerta OR forma la suma

Page 9: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 9

lógica de los tres términos. Se necesitan dos inversores para complementar A' y C'. La

expresión puede simplificarse usando el álgebra booleana.

F = ABC + ABC' + A'C = AB(C + C') + A'C = AB + A'C

Nótese que (C + C') = 1 por la identidad 7 y AB . 1 = AB por la identidad 4 en la tabla 1.

El diagrama lógico de la expresión simplificada se dibuja en la figura 6(b).

Requiere sólo cuatro compuertas en lugar de las seis del circuito de la figura 6(a). Los dos

circuitos son equivalentes y producen la misma relación de tabla de verdad entre las

entradas A, B, C y la salida F.

Figura 6: Dos diagramas lógicos para la misma función booleana

COMPLEMENTO DE UNA FUNCIÓN

El complemento de una función F cuando se expresa en una tabla de verdad se obtiene

intercambiando unos y ceros en los valores de F en la tabla de verdad. Cuando la función

se expresa en forma algebraica, el complemento de una función puede derivarse por

medio del teorema de DeMorgan. La forma general del teorema de DeMorgan puede

expresarse como sigue:

(xl + x2 + x3 + ... + xn)' = x´1. x´2.x´3 … x´n

(x1.x2.x3 … xn)´= x´1+x´2+x´3+…+x´n

Del teorema general de DeMorgan podemos derivar un procedimiento simple para

obtener el complemento de una expresión algebraica. Esto se hace cambiando todas las

operaciones de OR a operaciones AND y todas las operaciones AND a operaciones OR y

luego complementando cada variable literal individual. Como un ejemplo, considere la

siguiente expresión y su complemento:

F = AB + C' D' + B' D

Page 10: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 10

F' = (A' + B')(C + D)(B + D')

La expresión complemento se obtiene intercambiando las operaciones AND y OR y

complementando cada variable individual. Note que el complemento de C' es C.

4. SIMPLIFICACION POR MAPAS DE KARNAUGH

La complejidad del diagrama lógico que implanta una función booleana se relaciona

directamente con la complejidad de la expresión algebraica a partir de la cual se

implanta tal función. La representación de la tabla de verdad de una función es única,

pero la función puede aparecer en muchas formas diferentes cuando se expresa

algebraicamente. La expresión puede simplificarse por medio de las relaciones básicas

del álgebra booleana. Sin embargo, ese procedimiento es algunas veces difícil porque

carece de reglas específicas para predecir cada paso sucesivo en el proceso manipulativo.

El método de mapas proporciona un procedimiento sencillo y directo para simplificar las

expresiones booleanas. Este método puede considerarse como un arreglo pictórico de la

tabla de verdad que permite una interpretación fácil para escoger el número mínimo de

términos necesarios para expresar algebraicamente la función. El método de mapas se

conoce también como mapa de Karnaugh o mapa K.

Cada combinación de variables en la tabla de verdad se llama término mínimo.

Por ejemplo, la tabla de verdad de la figura 3 contiene ocho términos mínimos. Cuando se

expresa en una tabla de verdad una función de n variables tendrá 2n términos mínimos,

equivalentes a los 2n números binarios obtenidos de n bits. Una función booleana es igual

a 1 para algunos términos mínimos y 0 para otros. La información de una tabla de verdad

puede expresarse, en forma compacta listando los equivalentes decimales de aquellos

términos mínimos que producen un 1 para la función. Por ejemplo, la tabla de verdad de

la figura 3 puede expresarse como sigue:

F(x, y, z) =∑ (1,4,5,6,7)

Las letras en paréntesis indican las variables binarias en el orden en que aparecen en la

tabla de verdad. El símbolo sigma ∑ representa la suma de los términos mínimos que

siguen en paréntesis. Los términos mínimos que producen 1 para la función se listan en su

equivalente decimal. Los términos mínimos ausentes de la lista son los que producen 0

para la función.

El mapa es un diagrama hecho de cuadros, y cada uno de éstos representa un

término mínimo. Los cuadrados correspondientes a los términos mínimos que producen 1

para la función se marcan con un 1 y los otros se marcan con un 0 o se dejan vacíos.

Reconociendo los diversos patrones y combinando los cuadrados marcados con unos en

el mapa, es posible derivar expresiones algebraicas alternas para la función, de las cuales

se selecciona la más conveniente.

Los mapas de funciones de dos, tres o cuatro variables se muestran en la figura 7.

El número de cuadros en el mapa de n variables es 2n. Los 2

n términos mínimos se lista n

con un número decimal equivalente para una referencia fácil. Los números de término

mínimo se asignan en un arreglo ordenado tal que los cuadrados adyacentes representen

términos mínimos que difieran por sólo una variable. Los nombres de las variables se

listan a ambos lados de la línea diagonal, en la esquina del mapa. Los ceros y los unos

marcados a lo largo de cada renglón y cada columna designan el valor de las variables.

Cada variable dentro de las llaves contiene la mitad de los cuadrados del mapa donde la

variable aparece sin símbolo de prima (´). La variable con símbolo de prima

(complementada) aparece en la mitad restante de los cuadrados.

Page 11: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 11

El término mínimo representado por un cuadrado se determina por las

asignaciones binarias de las variables, a lo largo de las orillas izquierda y superior del

mapa. Por ejemplo, el término mínimo 5 en el mapa de tres variables es 101 en binario,

que puede obtenerse del 1 en el segundo renglón concatenada con el 01 de la segunda

columna. Este término mínimo representa un valor para las variables binarias A, B y C,

con A y C sin primas y B con prima (esto es, AB'C) por otro lado, el término mínimo 5 en

el mapa de cuatro variables representa un término mínimo para cuatro variables. El

número binario contiene los cuatro bits 0101 y el término correspondiente que representa

es A'BC'D.

Figura 7: Mapas de Karnaugh para funciones de dos, tres y cuatro variables

Los términos mínimos de cuadrados adyacentes en el mapa son idénticos, excepto

por una variable, que aparece complementada en un cuadrado y sin complementar en el

cuadrado adyacente. De acuerdo con esta definición de ser adyacente; los cuadrados de

los extremos del mismo renglón horizontal pueden también considerarse adyacentes. Lo

mismo se aplica a los cuadrados superior e inferior de una columna. Como resultado, los

cuadrados de las cuatro esquinas de un mapa también pueden considerarse como

adyacentes.

Una función booleana representada por una tabla de verdad se grafica en el mapa

insertando unos en aquellos cuadrados donde la función es 1.

Los cuadrados que contengan unos se combinan en grupos de cuadrados adyacentes.

Estos grupos deben contener un número de cuadrados que sea una potencia entera de 2.

Los grupos de cuadrados adyacentes combinados pueden compartir uno o más cuadrados

con uno o más grupos. Cada grupo de cuadrados representa un término algebraico y el OR

de estos términos da una expresión algebraica simplificada de la función. Los siguientes

ejemplos muestran el uso del mapa para simplificar funciones booleanas.

En el primer ejemplo simplificaremos la función booleana

F(A, B, C) = ∑ (3,4,6,7)

Page 12: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 12

El mapa de tres variables para esta función se muestra en la figura 8. Hay cuatro

cuadrados marcados con números uno, cada cual para los términos mínimos que produce

un 1 para la función. Estos cuadrados pertenecen a los términos mínimos 3, 4, 6 y 7 y se

reconocen de la figura 7(b). Dos cuadrados adyacentes se combinan en la tercera

columna. Esta columna pertenece tanto a B como a C y produce el término BC. Los dos

cuadrados restantes con unos en las dos esquinas del segundo renglón son adyacentes y

pertenecen al renglón A y a las dos columnas de C', así que producen el término AC'. La

expresión algebraica simplificada para la función es el OR de los dos términos:

F = BC + AC'

Figura 8

El segundo ejemplo simplifica la siguiente función booleana:

F(A, B, C) = ∑(0,2,4,5,6)

Los cinco términos mínimos están marcados con unos en los cuadrados correspondientes

del mapa de tres variables se muestra en la figura 9.

Los cuatro cuadrados en la primera y cuarta columnas son adyacentes y representan el

término C'. Los cuadrados restantes marcados con 1 pertenecen al término mínimo 5 y

pueden combinarse con el cuadrado del término mínimo 4 para producir el término AB'.

La función simplificada es

F = C' +'AB'

Figura 9

El tercer ejemplo necesita un mapa de cuatro variables.

Page 13: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 13

F(A, B, C, D) = ∑ (0,1, 2, 6, 8, 9,10)

El área en el mapa cubierta por esta función de cuatro variables consiste de los cuadrados,

marcados con unos en la figura 10. La función contiene unos en las cuatro esquinas que,

tomados como grupo, dan el término B'D'. Esto es posible porque estos cuatro cuadrados

son adyacentes cuando el mapa se considera con las orillas superior e inferior, izquierda y

derecha tocándose.

Los dos unos a la izquierda del renglón superior se combinan con los dos unos a la

izquierda de la hilera inferior para que den el término B'C'. El 1restante en el cuadrado del

término mínimo 6 se combina con el término mínimo 2 para dar el término A'CD'. La

función simplificada es

F = B'D' + B'C' + A'CD'

Figura 10

5. CIRCUITOS COMBINATORIOS o COMBINACIONALES

Un circuito combinatorio es un arreglo de compuertas lógicas con un conjunto de

entradas y salidas. En cualquier momento dado, los valores binarios de las salidas son una

combinación binaria de las entradas. En la figura 11, se muestra un diagrama de bloques

de un circuito combinatorio. Las n variables de entrada binarias vienen de una fuente

externa, las m variables de salida binarias van a un destino externo, y entre éstas hay una

interconexión de compuertas lógicas. Un circuito combinatorio transforma la

información binaria de los datos de entrada dados a los datos de salida requeridos. Los

circuitos combinatorios se emplean en las computadoras digitales para generar decisiones

de control binarias y para proporcionar los componentes digitales requeridos para el

procesamiento de datos.

Figura 11: Diagrama de bloque de un circuito combinatorio

Un circuito combinatorio puede describirse mediante una tabla de verdad que

muestre la relación binaria entre las n variables de entrada y las m variables de salida. La

tabla de verdad enumera los valores binarios de salida correspondientes a cada una de las

2n combinaciones de entrada. Un circuito combinatorio puede especificarse también con

Page 14: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 14

m funciones booleanas, una por cada variable de salida. Cada función de salida se expresa

en términos de las n variables de entrada.

El análisis de un circuito combinatorio comienza con un diagrama de circuito

lógico determinado y culmina con un conjunto de funciones booleanas o una tabla de

verdad. Si el circuito digital va acompañado de una explicación verbal de su función, las

funciones booleanas o la tabla de verdad es suficiente para la verificación. Si la función

del circuito está en investigación, es necesario interpretar la operación del circuito a partir

de las funciones booleanas derivadas o de la tabla de verdad. El éxito de tal investigación

se realiza si uno tiene experiencia y familiaridad con circuitos digitales. La capacidad

para correlacionar una tabla de verdad o un conjunto de funciones booleanas con una

tarea de procesamiento de información es un arte que se adquiere con la experiencia.

El diseño de circuitos combinatorios parte del planteamiento verbal del problema y

termina con un diagrama de circuito lógico. El procedimiento comprende los siguientes

pasos:

1. Se establece el problema.

2. Se asignan símbolos literales (letras) a las variables de entrada y salida.

3. Se deriva la tabla de verdad que define la relación entre entradas y salidas.

4. Se obtienen las funciones booleanas para cada salida.

5. Se simplifica cada expresión booleana de la/s salida/s (ya sea aplicando las reglas del

Álgebra de Boole o la simplificación por Mapas de Karnaugh) .

6. Se traza el diagrama lógico.

Para demostrar el diseño de los circuitos combinatorios presentamos dos ejemplos de

circuitos aritméticos simples. Estos circuitos sirven como básicos de construcción para

circuitos aritméticos más complicados.

SEMISUMADOR El circuito aritmético digital más simple es el de la suma de dos dígitos binarios. Un circuito combinatorio que ejecuta la suma de dos bits se llama un semisumador. Uno que ejecuta la suma de tres bits (dos bits significativos y el acarreo previo) se llama sumador completo o total. El nombre anterior proviene del hecho de que se necesitan dos semisumadores para implantar un sumador completo.

Las variables de entrada de un semisumador se llaman bits sumando y cosumando. Las variables de salida se llaman suma y acarreo. Es necesario especificar dos variables de salida porque la suma de 1 + 1, es el binario 10, que tiene dos dígitos. Asignamos los símbolos x y y a las dos variables de entrada y S (por suma) y C (para acarreo) a las dos variables de salida. La tabla de verdad para el semisumador se muestra en la figura 12(a). La salida C es 0, a menos que ambas entradas sean 1. La salida S representa el bit menos significativo de la suma. Las funciones booleanas para las dos salidas pueden obtenerse directamente de la tabla de verdad:

S = x'y + xy' = x y

C = xy

El diagrama lógico se muestra en la figura 12(b). Consiste de una compuerta XOR y una compuerta AND.

Page 15: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 15

Figura 12: Semisumador

SUMADOR COMPLETO (TOTAL) El sumador completo es un circuito combinatorio que forma la suma aritmética de tres bits de entrada. Consiste de tres entradas y dos salidas. Dos de las variables de entrada, denotadas con x y y, representan los dos bits significativos a sumarse. La tercera entrada, z, representa el acarreo de la posición menos significativa previa. Las dos salidas son necesarias porque la suma aritmética de tres dígitos binarios fluctúa entre 0 y 3 y el 2 o el 3 binario, necesitan dos dígitos. Las dos salidas se designan por los símbolos S (por suma) y C (por acarreo). La variable binaria S da el valor del bit menos significativo de la suma. La variable binaria C da el acarreo de salida. La tabla de verdad para el sumador completo se muestra en la tabla 2. Los ocho

renglones bajo las variables de entrada designan todas las posibles combinaciones que

pueden tener las variables binarias. El valor de las variables de salida se determina de la

suma aritmética de los bits de entrada. Cuando todos los bits de entrada son 0, la salida S

es igual a 0; y es igual a 1 cuando sólo una entrada es igual a 1 o cuando las tres entradas

son iguales a 1. La salida C tiene un acarreo de 1 si dos o tres entradas son iguales a 1.

Los mapas de la figura 13 sirven para encontrar las expresiones algebraicas para las dos

variables de salida. Los unos en los cuadrados para los mapas de S y C se determinan

directamente de los términos mínimos en la tabla de verdad. Los cuadrados con unos para

la salida S no se combinan en grupos de cuadrados adyacentes. Pero ya que la salida es 1

cuando un número impar de entradas es 1, S es una función impar y representa la relación

XOR de las variables.

Tabla 2: Tabla de verdad para sumador completo

Los cuadrados con unos para la salida e pueden combinarse en una variedad de maneras.

Una expresión posible para C es

C = xy + (x'y + xy')z

Page 16: INTRODUCCIÓN A LOS SISTEMAS 2014 · verdad de las ocho compuertas lógicas se listan en la figura 2. Cada compuerta tiene una o dos variables de entrada binarias designadas con A

2014

Pág. 16

Figura 13: Mapas para sumador completo

Dándonos cuenta de que x'y + xy' = x y e incluyendo la expresión para la salida S,

obtenemos las expresiones booleanas para el sumador completo:

S= x y z

C = xy + (x y)z

El diagrama lógico del sumador completo se muestra en la figura 14.

Observa que el circuito del sumador completo consta de dos semisumadores y una

compuerta OR. El sumador completo también puede designarse por un diagrama de

bloque como se muestra en la figura 14(b).

Figura14: Circuito sumador completo