Fascículo 1 - · PDF fileEvolución de los Microprocesadores. ... Componentes...

37
1 Semestre 6 Fascículo 1 Procesadores

Transcript of Fascículo 1 - · PDF fileEvolución de los Microprocesadores. ... Componentes...

1

Semestre 6

Fascículo

1

Procesadores

Procesadores Semestre 6

Procesadores

Procesadores

Semestre 6 Procesadores

Tabla de contenido Página

Presentación de la asignatura 1

Competencias generales 2

Contenido mínimo de la asignatura 5

Introducción 9

Conceptos previos 10

Mapa conceptual Fascículo 1 11

Logros 11

Sistemas Numéricos, Principios de Diseño de Lógica

Combinatoria y Lógica Secuencial 12

Familias Lógicas 12

Propiedades Álgebra de Boole 14

Mapas de Karnaugh 19

Memorias- Flip Flops 23

Máquinas de Estado 26

Resumen 31

Bibliografía recomendada 32

Nexo 32

Seguimiento al autoaprendizaje 33

Créditos: 1

Tipo de asignatura: Teórico – Práctica

Procesadores Semestre 6

Procesadores

Copyright©2008 FUNDICIÓN UNIVERSITARIA SAN MARTÍN

Facultad de Universidad Abierta y a Distancia,

“Educación a Través de Escenarios Múltiples”

Bogotá, D.C.

Prohibida la reproducción total o parcial sin autorización

por escrito del Presidente de la Fundación.

La actualización de este fascículo estuvo a cargo de

ALEJANDRA CASTILLO

Docente tutor – Programa de Ingeniería de Sistemas a Distancia.

Sede Bogotá, D.C.

Corrección de estilo

ADRIANA RODRÍGUEZ VALENCIA.

Diseño gráfico y diagramación a cargo de

SANTIAGO BECERRA SÁENZ

ORLANDO DÍAZ CÁRDENAS

Impreso en: GRÁFICAS SAN MARTÍN

Calle 61A No. 14-18 - Tels.: 2350298 - 2359825

Bogotá, D.C., Marzo de 2012

1

Fascículo No. 1

Semestre 6

Procesadores

Procesadores

Presentación General de la Asignatura

Hoy, es casi imposible pensar en un equipo electrónico que no posea

algún microcontrolador que se encargue de guiar diferentes funciones de

un aparato electrónico y programar una buena cantidad de objetos con

estos componentes. Por ejemplo, los títulos en pantalla de un TV, el control

del mecanismo de carga y descarga de un video, el sistema de apagado

automático de un video y hasta el control de tiempos y cocción de un hor-

no-microondas poseen un circuito integrado que se ocupa de comandar

éstas y otras muchas funciones. Los microcontroladores realizan estas

funciones y hacen parte del sistema de control del aparato. Existen mu-

chos fabricantes de estos componentes como National, Philips, Motorola,

Microchip, Texas, etc.

Se podría afirmar que gracias a los microcontoladores cualquier sistema

de control puede ser reemplazado por su circuito equivalente. Los siste-

mas informáticos dedicados ó empotrados son cada vez más comunes en

todo el mundo, hoy existen más ordenadores de propósito específico que

de propósito general; una tendencia que va en aumento si se tiene en

cuenta que, la mayoría de electrodomésticos, automóviles y automatismos

disponen de este tipo de sistemas.

Estas condiciones del mercado contribuyen a que aumente la demanda de

profesionales en ingeniería con conocimientos y manejo de sistemas autó-

nomos y con capacidad de explicar el funcionamiento y el diseño equipos

electrónicos con microcontroladores. Estos también se utilizan en el diseño

de dispositivos periféricos USB incluyendo su conexión con el sistema

operativo.

El estudio y aplicación de éstos resulta clave en el aprendizaje de la inge-

niería, pues con ellos se generan sistemas electrónicos que ofrecen solu-

ciones a diversos problemas sociales, culturales y económicos, al tiempo

2

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

que se crean espacios para que los Ingenieros hagan aportes prácticos y

puntuales a su medio social.

El análisis de la arquitectura y el funcionamiento de los microcontroladores

le permiten al estudiante crear modelos mentales que contribuyen a es-

tructurar su pensamiento y representan para la estructura organizacional

una gran herramienta.

Competencias generales de la asignatura

Los estudiantes a través del contenido deben alcanzar el desarrollo de las

siguientes habilidades y actitudes:

Competencia Cognitiva:

Esta competencia hace énfasis en la capacidad que tiene cada estudiante

en formación de ingeniero de apropiarse del conocimiento para transfor-

mar sus ideas y generar comprensión.

Reconoce las relaciones entre los elementos, el proceso y salida del

sistema de información.

Reconoce y diferencia cada uno de los componentes de la arquitectura

interna de un microprocesador y un microcontrolador.

Comprende el funcionamiento de un microcontrolador y aplica este co-

nocimiento en sus proyectos.

Desarrolla habilidades para la utilización de las Tecnologías de la Infor-

mación y las Comunicaciones.

Competencia Comunicativa:

El estudiante utiliza el conocimiento adquirido y busca los medios para

transmitir ese saber a los demás.

Argumenta de forma fluida las diferencias entre los diversos sistemas de

procesamiento de la información.

Propone diferentes aplicaciones que se le pueden dar a los microproce-

3

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

sadores dependiendo de su arquitectura.

Expone de forma fluida la lectura de esquemas de conexión y caracterís-

ticas del microcontrolador.

Capacidad de análisis y diseño de circuitos combinacionales y secuenciales,

síncronos y asíncronos, y de utilización de microprocesadores y circuitos inte-

grados.

Competencia Valorativa:

Abarca todo el proceso valorativo, no sólo ético-moral sino en general, en

tanto toda interpretación y comprensión es una valoración desde un marco

determinado, desde una particularidad.

Investiga y se apropia de la información para realizar disertaciones so-

bre un tema específico.

Aclara sus dudas y acepta con madurez las observaciones que en cuan-

to a su trabajo se le realizan.

Competencia Contextual:

En esta competencia se hace referencia a la capacidad de cada individuo

para desenvolverse en un contexto social.

Investiga con los grupos de trabajo para facilitar el proceso de aprendi-

zaje.

Conocimientos básicos sobre el uso y programación de los ordenado-

res, sistemas operativos, bases de datos y programas informáticos con

aplicación en ingeniería.

4

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

5

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Contenido mínimo de la asignatura

Fascículo 1

Electrónica Digital y Secuencial.

Sistemas Numéricos, Principios de Diseño de Lógica Combinatoria y

Lógica Secuencial.

Familias Lógicas.

Propiedades Álgebra de Boole.

Mapas de Karnaugh.

Lógica secuencial.

Memorias- Flip Flops.

Máquinas de Estado.

Fascículo 2

Introducción a los Microprocesadores y Microcontroladores.

Introducción a la arquitectura microprocesadores y microcontroladores.

Evolución de los Microprocesadores.

Arquitectura del Procesador.

Bus del Sistema.

Decodificadores.

Puertos.

Memorias.

El microcontrolador .

Microcontroladores disponibles en el mercado.

Cómo seleccionar un microcontrolador.

Componentes básicos de un microcontrolador.

Fascículo 3

Lenguaje Ensamblador del Microprocesador

Instrucciones para el ensamble del programa.

Simulación del programa.

Etiquetas del lenguaje Assembler.

Directivas.

6

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Banderas.

Operandos y direcciones.

Stack

Formato de las instrucciones.

Saltos Condicionales e Incondicionales.

Convenciones en la escritura del código fuente.

Fascículo 4

Descripción interna del microcontrolador Motorola.

Arquitectura Interna.

Arquitectura Interna del Microcontrolador.

Sistemas Embebidos.

Puertos de entrada y salida digital.

Volúmenes.

Entornos de programación.

La latencia de interrupción.

Fascículo 5

Microcontrolador Motorola Freescale HC08.

Características del Microcontrolador Motorola Freescale.

Unidad de Procesamiento Central CPU.

Características específicas de los Microcontroladores HC908QT/QY.

Descripción de pines de I/O.

Módulos Disponibles para la familia HC908.

Ejecución de Instrucciones.

Descripción de Registros de la CPU.

Pila CPU08

Contador del Programa

Registros de Código de Condición CCR

Modos de Direccionamiento

7

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Fascículo 6

Consideraciones y direccionamiento del Microcontrolador.

Descripción de Registros de la CPU.

Consideraciones sobre la pila de la CPU08.

Contador del programa.

Modos de direccionamiento.

Memoria.

Descripción funcional.

Modulo Oscilador.

Sistemas Empotrados.

Gestión de Tiempo.

Mercado de los Microcontroladores.

Fascículo 7

Plataforma CodeWarrior.

Entorno de Programación.

Introducción al sistema de desarrollo CodeWarrior.

Reconocimiento con la interfaz CodeWarrior.

Ejecución y compilación de programa prueba.

Compilación del sistema y pruebas.

Programación para Micro HC8.

Fascículo 8

Robot seguidor de línea.

Objetivo.

Logros.

Mapa lógico de diseño del proyecto.

Robot e Inteligencia Artificial.

Puente H.

Sensor Infrarrojo.

Diseño Robot.

8

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Funcionamiento lógico.

Mecánica del Robot.

Materiales.

9

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Introducción

El objetivo de la electrónica es la fabricación de circuitos con capacidad

para realizar una amplia gama de operaciones. Los circuitos también podr-

ían ejecutarse en otras tecnologías (mecánicas, electromagnéticas, etc.)

pero en la actualidad, los electrónicos tienen un menor costo, una alta

velocidad de cómputo y una gran capacidad de integración. En un circuito

electrónico las magnitudes físicas externas (presión, temperatura, etc.) se

transforman en señales eléctricas (voltaje, intensidad) mediante sensores,

operan con dichas señales y las transforman o convierten en otras magni-

tudes físicas.

Los sistemas combinacionales se construyen mediante funciones Boolea-

nas de sus variables de entrada. Sin embargo, no todo sistema digital es

combinacional sino que existen sistemas en los que la correspondencia

entre el vector de entrada y el vector de salida no es unívoca; es decir, no

se pueden obtener las salidas como funciones de sólo las entradas. Los

sistemas secuenciales necesitan recordar su pasado, la secuencia de vec-

tores de entrada a través de la cual se ha llegado a la situación presente;

para ello han de tener memoria, que se configura mediante un vector de

estado el cual contiene la información que el sistema necesita sobre su

pasado.

La memoria se consigue mediante realimentación lógica, en tanto que las

variables de estado son, a la vez, variables de salida y de entrada en las

funciones de evolución del estado. Tres vectores, entrada, estado y salida,

y dos conjuntos de funciones, las de evolución del estado (estado anterior

y entradas determinan el nuevo estado) y las de activación de las salidas

(que dependen, también, del estado y de las entradas). La evolución de un

sistema secuencial puede ser representada mediante un grafo de estados,

a partir del cual pueden construirse las funciones de modificación del esta-

10

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

La electrónica es la rama

de la física y especializa-

ción de la ingeniería, que

estudia y emplea sistemas

cuyo funcionamiento se

basa en la conducción y el

control del flujo microscó-

pico de los electrones u

otras partículas cargadas

eléctricamente.

do. En ocasiones, hay dos formas diferenciadas de configurar el grafo de

estados, distinguiendo salidas distintas con estados diferentes (autómata

de Moore) o reduciendo el número de estados al mínimo y admitiendo que

un mismo estado pueda tener varios vectores de salida.

El presente fascículo presenta gradualmente los conceptos básicos nece-

sarios para comprender y describir los sistemas secuenciales. La necesi-

dad de memoria, como recuerdo del pasado de un sistema secuencial, se

concreta en el concepto de estado. Pero existe otra perspectiva comple-

mentaria que lleva a la memoria a la necesidad de almacenar datos y resul-

tados, es decir, conservar información que puede ser utilizada posterior-

mente. El biestable como celda capaz de almacenar un bit y el registro

(conjunto de biestables) como bloque con capacidad de almacenar una

palabra binaria son los elementos básicos de la memoria.

Conceptos previos

Para iniciar el estudio del fascículo 1. Es primordial repasar algunos con-

ceptos propios de conversiones numéricas (decimal, binario y Hexadeci-

mal) y significados sobre electrónica básica (voltaje, corriente, potencia,

resistencia). Así pues, el estudiante debe resolver los ejercicios propues-

tos a continuación y socializarlos con sus compañeros y con el tutor las

inquietudes.

1. Realice las siguientes conversiones de sistema decimal a sistema binario y

hexadecimal.

2. Realice las siguientes conversiones de sistema binario a decimal

11

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

3. Realiza las siguientes operaciones con números binarios:

1 0 1 0 1 0 + 1 1 1 0 0 1

1 1 1 0 1 1 + 0 1 1 1 0 1

4. Describa que es Voltaje, corriente, potencia y resistencia

Mapa conceptual fascículo 1.

Al finalizar el estudio del presente fascículo, el estudiante debe estar en capa-

cidad de:

Retomar los conceptos vistos en electrónica digital e o introducir concep-

tos básicos para la iniciar el curso en diseño de microprocesadores y mi-

crocontroladores.

Diseñar con los estados "Enable" y "Disable" para habilitar/deshabilitar una

función.

Identificar y Reconocer el funcionamiento de los flip-flop y la diferencia en-

tre un "latch" con puertas NOR y uno con puertas NAND.

Comprender la diferencia entre un circuito combinacional y uno secuencial.

Resolver problemas de interacción lógica aplicada a lógica combinacional.

Explicar la diferencia entre los circuitos combinatorios y los secuenciales.

LogrosLogrosLogros

12

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Sistemas numéricos, Principios de Diseño de

Lógica Combinatoria y Lógica Secuencial

Familias lógicas

Los sistemas digitales representan y manipulan además de números mu-

chos otros elementos discretos de información. Los sistemas digitales

pueden representar cualquier elemento discreto de información utilizando

el código binario adecuado. Los códigos deben de estar en BINARIO por-

que los circuitos digitales sólo pueden interpretar y almacenar “unos” y

“ceros”. Es importante entender que los códigos binarios simplemente

cambian los símbolos, no el significado de los elementos de información

que representan, es por esto que si examinamos la información almacena-

da por ejemplo en una computadora, veremos que la mayor parte de la

información representa algún tipo de información codificada en no núme-

ros binarios. La lógica binaria se ocupa de variables que adoptan dos va-

lores discretos y de operaciones que asumen un significado lógico. Los

dos valores que pueden adoptar las variables reciben diferentes nombres.

Verdadero, Falso

Si, No

Alto, Bajo

Uno, Cero

En este caso es conveniente pensar en ellos en términos de bits y asignar-

les los valores de 1 y de 0. A este tipo de lógica binaria que se implementa

se le conoce como “álgebra Booleana”.

Función AND

Esta operación se representa con un punto (∙) o bien omitiendo el opera-

dor por ejemplo:

A ∙ B = Z equivalente a AB = Z

13

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Estas operaciones se leen como “A AND B es igual a Z” La operación lógi-

ca AND significa que Z = 1 sólo si A = 1 y B = 1, en cualquier otro caso Z

= 0 (No olvide que A y B son variables binarias y únicamente pueden tener

un valor de 1 ó 0). De estas condiciones se puede obtener una tabla que

represente la operación AND.

A B Z

0 0 0

0 1 0

1 0 0

1 1 1

El símbolo lógico de la negación Booleana se representa en la siguiente

figura

Función OR

Esta operación se representa con un signo más (+) por ejemplo:

A + B = Z

Este ejercicio se lee como “A OR B es igual a Z” En este caso la operación

realizada se puede describir como: Z = 0 si A = 0 y B = 0, en cualquier

otro caso Z = 1 De la misma manera es posible construir una tabla que

represente la operación OR.

A B Z

0 0 0

0 1 1

1 0 1

1 1 1

El símbolo lógico de la negación Booleana se representa en la siguiente

figura

A

B

Z

A

B

Z

14

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Figura 1: George Boole

George Boole (2 de noviembre de 1815 - 8

de diciembre de 1864) fue

un matemático y filósofo

británico. Como inventor del

álgebra de Boole, que marca

los fundamentos de la

aritmética computacional

moderna, Boole es conside-

rado como uno de los fun-

dadores del campo de las

Ciencias de la Computación.

En 1854 publicó "An Investi-

gation of the Laws of

Thought" en el que desarro-

llaba un sistema de reglas

que le permitían expresar,

manipular y simplificar pro-

blemas lógicos y filosóficos

cuyos argumentos admiten

dos estados (verdadero o

falso) por procedimientos

matemáticos.

Función NOT

La representación de esta operación se realiza por un apostrofe ( ’ ) ó por

una testa ( ‾ ) por ejemplo:

A” = Z

Ā = Z

Se puede observar que esta operación solamente tiene una entrada y una

salida. De modo que la operación se lee como “A negada igual a Z” y sig-

nifica que Z es lo contrario de A, Así si A = 1, entonces Z = 0, y si A = 0,

entonces Z = 1. A esta operación también se llama operación de comple-

mento, ya que cambia “1” por “0” y “0” por “1”. La tabla que representa la

operación NOT es muy simple y se presenta a continuación:

A Z

1 0

0 1

El símbolo lógico de la negación booleana se representa en la siguiente

figura

Propiedades Álgebra de Boole

En electrónica digital se trabaja con variables que pueden tener sólo dos

valores, 0 ó 1. Por suerte los primeros ingenieros quienes trabajaron con

electrónica digital ya encontraron las matemáticas necesarias desarrolla-

das, pues en 1854, mucho antes de que se diera a conocer el invento del

transistor, George Boole definió un álgebra para manipular variables que

sólo podían tener los valores verdadero y falso, lo cual permitía según Boo-

le investigar las leyes del pensamiento. En este fascículo se introducen los

conceptos básicos de las leyes, reglas y teoremas del álgebra Booleana y

sus aplicaciones a los circuitos digitales. (Cfr. Floyd, 2000).

A Z

15

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Adición Booleana

La suma Booleana es equivalente a la operación OR y sus reglas son:

A B X

0 0 0

0 1 1

1 0 1

1 1 1

Ejemplo:

1. Si A = 1 y B = 0 el resultado es:

A = 1

B = 0

Multiplicación Booleana

La multiplicación booleana es equivalente a la operación AND y sus reglas

son:

A B X

0 0 0

0 1 0

1 0 0

1 1 1

En las reglas básicas de la multiplicación, para que el resultado sea igual a

cero (0), es necesario que al menos una de las variables sea igual a cero

(0), si las dos variables equivalen a uno (1) el resultado también será uno

(1). Ejemplo: Si A = 1 y B = 0 el resultado es:

A = 1

Leyes de operación para el algebra Booleana

Al igual que en otras áreas de las matemáticas, existe en el álgebra de

Boole una serie de reglas y leyes bien determinadas que tienen que se-

X = 0

X = 0

16

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

guirse para aplicarla correctamente. Las leyes básicas del algebra de Boo-

le (la Ley conmutativa de la suma y la multiplicación y la Ley asociativa de

la suma y la multiplicación y la Ley distributiva) son las mismas que las del

algebra ordinaria.

Ley conmutativa

La ley conmutativa de la suma se representa con la compuerta lógica

OR, para dos variables se escribe de la siguiente manera:

A + B = B + A

En la terminología de los circuitos lógicos el símbolo = significa “equiva-

lente a”.

A A

B B

La ley conmutativa de la multiplicación se representa con la compuerta

lógica OR, para dos variables se escribe de la siguiente manera:

AB = BA

A B

B A

Esta ley establece que el orden en que se aplica a las variables la opera-

ción OR y AND es indiferente.

Ley asociativa

La ley asociativa de la suma para tres variables se escribe de forma alge-

braica de la siguiente manera:

A + (B + C) = (A + B) + C

Esta ley establece que al aplicar la operación OR a más de dos variables,

el resultado es el mismo independientemente de la forma en que se agru-

pen las variables.

A + B B + A

AB BA

17

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Ejemplo:

Es equivalente a:

La ley asociativa de la multiplicación para tres variables se escribe de

forma algebraica de la siguiente manera:

A (BC) = (AB) C

Esta ley establece que al aplicar la operación AND a más de dos variables,

el resultado es el mismo independientemente de la forma en que se agru-

pen las variables.

Ejemplo:

Es equivalente a:

Ley distributiva

La ley distributiva establece que al utilizar tres variables, de las cuales pri-

mero se sumen dos de estas variables y luego el resultado de estas se

multiplique por otra variable aislada o fuera del paréntesis, equivale a mul-

A

B

C

A + ( B + C )

A

B

C (A + B) + C

A

B

C

A (BC)

BC

A

B

C

AB

(AB)C

18

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

tiplicar esta variable aislada por cada una de las variables dentro del parén-

tesis.

A (B + C ) = AB + AC

Esta ley también expresa el proceso de sacar factor común.

Es equivalente a:

Teoremas o reglas del algebra de Boole

El álgebra de Boole, utiliza doce reglas básicas las cuales se utilizan en el

proceso de simplificación de las funciones Booleanas. Las nueves prime-

ras reglas estarán en términos a la aplicación a las puertas lógicas. Las tres

últimas reglas se obtienen a partir de las reglas más sencillas y de las leyes

anteriormente descritas. (Cfr. Floyd, 2000).

Regla 1. A+0=A Si se aplica la operación OR a una variable cualquiera y a 0,

el resultado es siempre igual a la variable.

Regla 2. A+1=1 Si se aplica la operación OR a una variable cualquiera y a 1,

el resultado es siempre igual a 1.

Regla 3. A∙0=0 Si se aplica la operación AND a una variable cualquiera y a 0,

el resultado es siempre igual a 0.

Regla 4. A∙1=A Si se aplica la operación AND a una variable cualquiera y a 1,

el resultado es siempre igual a la variable.

Regla 5. A + A = A Si se aplica la operación OR a una variable cualquiera

consigo misma, el resultado es siempre igual a la variable.

B + C B

C

A A (B+C)

A

B

A C

AB

AC

AB + AC

19

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Figura 2: Maurice karnaugh

Ingeniero de telecomunica-

ciones estadounidense. Gra-

duado en la universidad de

Yale en el 1952, es actual-

mente gobernador emérito

del ICCC (International Coun-

cil for Computer Communica-

tion). Ha trabajado como

investigador en los Laborato-

rios Bell desde 1952 a 1966 y

en el centro de investigación

de IBM de 1966 a 1993. Así

mismo, ha impartido de in-

formática en el Politécnico de

Nueva York de 1980 a 1999, y

desde 1975 es miembro del

IEEE

Regla 6. A + Ā = 1 Si se aplica la operación OR a una variable cualquiera y a

su complemento, el resultado es siempre igual a 1.

Regla 7. A ∙ A = A Si se aplica la operación AND a una variable consigo mis-

ma, el resultado es siempre igual a la variable.

Regla 8. A ∙ Ā = 0 Si se aplica la operación AND a una variable cualquiera y a

su complemento, el resultado es siempre igual a 0.

Regla 9. Ā = A El complemento del complemento de una variable es siem-

pre la propia variable.

Regla 10. A + AB = A Esta regla se obtiene aplicando la ley distributiva, re-

glas 2 y 4, de la siguiente manera:

A+AB = A(1+B)

= A ∙ 1

= A

Regla 11. A + ĀB = A+B Esta regla se obtiene de la siguiente manera:

A+ĀB = (A+AB)+ĀB

= A+(A+Ā)B

= A+1 ∙ B

= A+B

Regla 12. (A+B)(A+C)= A+ BC Esta regla se obtiene de la siguiente mane-

ra:

(A+B)(A+C) =AA+AC+AB+BC

=A+AC+AB+BC

=A+BC

Mapas de Karnaugh

Un mapa de Karnaugh es una representación gráfica de una función lógica

a partir de una tabla de verdad. El número de celdas del mapa es igual al

número de combinaciones que se pueden obtener con las variables de

entrada. Los mapas se pueden utilizar para 2, 3, 4 y 5 variables.

Mapa de Karnaugh empleando Suma de Productos (SDP) La simplifi-

cación de expresiones lógicas mediante el mapa de Karnaugh utiliza un

20

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

método gráfico basado en la Suma de Productos. Mapa de Karnaugh de

tres variables:

El mapa de Karnaugh se construye a partir de la tabla de verdad de la fun-

ción lógica. El mapa por medio de una matriz de 8 celdas, representa los

ocho mintérminos posibles que se pueden obtener con tres variables, en

un arreglo de una matriz de 2x4. Por tanto, la primera fila contiene el primer

valor posible ("0") y la segunda fila el valor ("1"). Las variables 2 y 3 se

agrupan por columna y se distribuyen en las cuatro columnas de acuerdo

a las combinaciones posibles para obtener los mintérminos requeridos.

Sus valores son 00, 01, 10 y 11. Por ejemplo, la celda m2 corresponde al

mintérmino 2, ubicado en la fila 0 y la columna 10. La unión de estos dos

números da el número 010, cuyo equivalente es el término A’·B·C’ ó el de-

cimal 2.

Tabla 1

Mapa de Karnaugh de tres variables

Tabla 2

Esquema de tres variables

La característica de ordenamiento de un mapa de Karnaugh radica en el

cambio de un solo bit en los términos de las celdas adyacentes de filas y

21

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

columnas. Las entradas BC se colocan secuencialmente, cambiando cada

vez una sola variable, por eso resulta el orden: 00, 01, 11 y 10. En la inter-

actividad 2.4.1., la pulsación de cada cuadro activa el mintérmino corres-

pondiente.

Figura 3

Mapa de Tres Variables

Ejemplo:

Sea la función del ejemplo anterior, simplificarla por medio del método del

mapa. La tabla de verdad del ejemplo anterior es la siguiente,

Tabla 3 Tabla de Verdad de la Función F

El mapa de Karnaugh se configura de acuerdo a los mintérminos igua-

les a 1

Figura 4 Mapa De Karnaugh de la Función F

22

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Mapas de Karnaugh empleando Producto de Sumas (PDS)

La simplificación de expresiones lógicas mediante el mapa de Karnaugh

también es posible mediante el método de producto de sumas. En este

método, cada celda representa un maxtérmino. La construcción del mapa

es similar a la suma de productos. La diferencia radica en que cada celda

representa un maxtérmino.

Figura 5: Mapa de tres Variables

Por ejemplo, la celda m2 corresponde al maxtérmino 2, ubicado en la fila 0

y la columna 10. La unión de estos dos números da el número 010, cuyo

equivalente es el término A+B’+C. La representación de la función lógica

se hace simplemente copiando los ceros de la tabla de verdad en las cel-

das del mapa. Este método es más apropiado cuando en la columna de

resultados de la tabla de verdad predominan los ceros.

Condiciones de No Importa

Hasta el momento se ha asumido que la función es igual a 0 en los casos

donde la función no es igual a 1. En algunas aplicaciones esta suposición

no es siempre verdadera ya que existen combinaciones de entrada que no

presentan. En un mapa de Karnaugh estas combinaciones de entrada sir-

ven de herramienta para simplificar la función y su representación se hace

por medio de una X en la celda del mapa. Según la agrupación que con-

venga se asume un valor de 1 ó 0 para la X con el fin de obtener la expre-

sión más simple.

23

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Ejemplo: Simplificar la función de Boole F5 = S (m0, m4, m7, m9) con

condiciones de importa, NI = S (m1, m5, m11, m14). Los mintérminos se

marcan con un 1, las condiciones de no importa con una X y las celdas

restantes con 0. En suma de productos obtenemos, F5 = A’·C’·D’ +

A'·B’·C’ + A’·B·C·D + A·B'·D

Figura 6:

Mapa De la función Fs

Memorias FLIP FLOPS

En la lógica secuencial a diferencia de la lógica combinatoria se hace uso

de un elemento básico llamado flip-flop. El flip-flop es un elemento de me-

moria que almacena un bit de información. Algunos textos usan este nom-

bre para referirse a los cerrojos, pero en la mayoría de las publicaciones se

hace la diferencia entre flip-flop y latch.

Figura 7.

Tipo de Circuitos Secuenciales

Este último término es el que traducimos como cerrojo. Los circuitos lógi-

cos secuenciales se dividen básicamente en dos grupos: Los circuitos

asincrónicos y los circuitos sincrónicos. Los primeros pueden cambiar los

estados de sus salidas como resultado del cambio de los estados de las

entradas, mientras que los circuitos sincrónicos pueden cambiar el estado

24

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

de sus salidas en instantes de tiempo discretos bajo el control de una se-

ñal de reloj.

Los flip-flops son dispositivos sincrónicos y el estado de sus salidas es

controlado en instantes de tiempo discretos por una señal de reloj. Al igual

que los cerrojos los hay de varios tipos y sus aplicaciones son diversas.

Los flip-flops son dispositivos que responden una señal de reloj durante los

cambios de 1 a 0 lógico o de 0 a 1 lógico, según el tipo de flip-flop. Para

lograr que los flip-flops respondan al cambio de la señal del reloj es nece-

sario implementar un circuito que detecte el flanco de subida o bajada de

la seña de reloj. En la interactividad 5.5.1 se observa uno de estos circui-

tos, el cual se conoce como flip-flop D maestro/esclavo. Un flip-flop de este

tipo contiene dos cerrojos, uno de ellos actúa como maestro y el otro co-

mo esclavo. Durante la transición de la señal de reloj de 1 a 0 lógico las

entradas se emplean para determinar la salida del maestro. Cuando la se-

ñal de reloj pasa de 0 a 1 lógico el estado del maestro se trasmite al escla-

vo. De esta forma se garantiza que las salidas Q y Q' del flip-flop cambien

cada vez que ocurre una transición de 0 a 1 en la señal de reloj. Haga click

sobre la entrada D del cerrojo maestro y observe como se transmite la in-

formación al cerrojo esclavo y de este a la salida.

Figura 8: Flip-Flop Maestro/Esclavo

Flip-Flop S-R (Set-Reset)

Este dispositivo es similar al cerrojo S-R de la lección anterior, la diferencia

radica en la inclusión de una señal de reloj, que actúa como señal de con-

firmación del paso de los datos hacia el circuito principal, el cual se encar-

25

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

ga de memorizar los datos. Este tipo de flip-flop no es muy comercial así

que no se darán más detalles sobre este dispositivo en este curso

Figura 9: Flip-Flop SR

A diferencia de los sistemas combinacionales, en los sistemas se-

cuenciales, los valores de las salidas, en un momento dado, no

dependen exclusivamente de los valores de las entradas en dicho

momento, sino también dependen del estado anterior o estado in-

terno. El sistema secuencial más simple es el biestable, de los

cuales, el de tipo D (o cerrojo) es el más utilizado actualmente.

(Cfr. Floyd, 2000).

La mayoría de los sistemas secuenciales están gobernados por

señales de reloj. A éstos se los denomina "síncronos" o "sincróni-

cos", a diferencia de los "asíncronos" o "asincrónicos" que son

aquellos que no son controlados por señales de reloj. A continua-

ción se indican los principales sistemas secuenciales que pueden

encontrarse en forma de circuito integrado o como estructuras en

sistemas programados:

Contador

Registros

Flip-Flop D (Data)

El flip-flop D es muy similar al cerrojo D, y su diferencia radica en que la

señal habilitadora (enable) es reemplazada por el mecanismo del flip-flop

maestro/esclavo, el cual actualiza los datos cada vez que la señal de reloj

tiene una transición de 0 a 1 o 1 a 0 dependiendo del tipo de flip-flop.

Figura 10:

Flip Flop tipo D

26

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

La forma de operación de este flip-flop es muy sencilla:

Cuando D=0 y se presenta un cambio de 0 a 1 lógico en la entrada de reloj del

flip-flop la salida Q=0.

Cuando D=1 y se presenta un cambio de 0 a 1 lógico en la entrada de reloj del

flip-flop la salida Q=1.

En otras palabras, el dato en D se transfiere y memoriza en Q cada vez que

se presenta una transición de 0 a 1 lógico en la señal de reloj (CLK); esta

condición se conoce con el nombre de transición por flanco positivo.

La condición complementaria a la anterior es cuando la transición es de 1

a 0 lógico, en este caso se dice que la transición se da por flanco negativo.

Flip-Flop J-K

Este flip-flop es una versión modificada del flip-flop D, y su aplicación es

muy difundida en el Análisis y Diseño de Circuitos Secuenciales. El funcio-

namiento de este dispositivo es similar al flip-flop S-R, excepto que en este

no se presentan indeterminaciones cuando sus dos entradas se encuen-

tran en 1 lógico, si no que el flip-flop entra en un modo de funcionamiento

llamado modo complemento, en el cual, la salida Q cambia a su estado

complementario después de cada pulso de reloj. (Cfr. Floyd, 2000).

Figura 11:

Flip Flop JK

Máquinas de Estado

La teoría de máquinas de estado es el nombre con el que se conocen los

métodos de Análisis y Diseño de Circuitos Secuenciales Sincrónicos. Esta

lección constituye una introducción al tema del capítulo, donde se definirá

lo que son las máquinas de estado y los conceptos básicos para entender

27

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

la metodología de Análisis y Diseño de Circuitos Secuenciales. Las máqui-

nas de estado son circuitos secuenciales que se encuentran constituidos

por una etapa combinacional y una etapa de memoria, relacionadas de tal

forma que conforman un sistema secuencial para algún propósito especial.

Los registros y contadores con entradas asincrónicas son ejemplos de este

tipo de sistemas secuenciales. Los circuitos secuenciales se clasifican de-

ntro de una categoría conocida como máquinas de estado, de la cual se

distinguen comúnmente dos tipos:

Máquina de Mealy: En esta máquina de estados las salidas se encuentran

determinadas por el estado interno del sistema y por las entradas no sin-

cronizadas con el circuito. Se observa que las salidas del sistema son tan-

to sincrónicas como asincrónicas.

Figura 12:

Maquina de Estado de Mealy

Máquina de Moore: Las salidas solo dependen del estado interno y de

cualquier entrada sincronizada con el circuito, donde las salidas del siste-

ma son únicamente sincrónicas.

Figura 13:

Maquina de Estado de Moore

28

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Tablas de Estado

Una tabla de estado es un listado que contiene la secuencia de los estados

de entradas, estados internos y salidas del sistema, considerando todas

las posibles combinaciones de estados actuales y entradas. Las tablas de

estado por lo general se dividen en tres partes: estados actuales, estados

siguientes y salidas.

Tabla 4:

Tabla de Estado inicial

La tabla de estado para un circuito secuencial con m flip-flops y n entradas

tiene filas ( . El estado siguiente tiene m columnas, y el número de

columnas depende del número de salidas. Existe una forma más conve-

niente de organizar la información en la tabla de estado, la cual se muestra

en la Tabla 7.1.2, donde los estados se agrupan de tal modo que la tabla

se puede traducir a un diagrama de estados. Al igual que la tabla anterior

esta tiene tres secciones: estados actuales, estados siguientes y salidas,

sin embargo los estados se agrupan dependiendo del valor de las entra-

das. La sección de estados actuales agrupa los estados que ocurren antes

de una transición en la señal de reloj, la sección de estados siguientes lista

aquellos que ocurren después de la transición del reloj y la sección de sa-

lidas reúne los estados que se dan en el mismo instante de los estados

actuales. (Cfr. Amoros, 2001).

29

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Tabla 5: Tabla de estado forma simplificada

Haciendo un análisis de la operación del circuito de la figura 7.1.3. se pue-

de observar lo siguiente: Cuando la variable X=0 los estados actuales A y

B cambian a 0 después de la transición de reloj , y cuando X=1, los esta-

dos de las salidas se comportan tal como se resume en la tabla 3. Se plan-

tea como ejercicio verificar la información de la tabla.

Diagramas de Estado

Un diagrama de estados es una representación gráfica que indica la se-

cuencia de los estados que se presentan en un circuito secuencial, tenien-

do en cuenta las entradas y salidas. El diagrama se forma con círculos y

líneas. Los circulos representan los estados del circuito secuencial y cada

uno de ellos contiene un número que identifica su estado. Las líneas indi-

can las transiciones entre estados y se marcan con dos números separa-

dos por un (/), estos dos números corresponden a la entrada y salida pre-

sentes antes de la transición. A manera de ejemplo observe la línea que

une los estados 00 y 01 en el diagrama de estado de la figura 7.1.4. Esta

línea marcada como 1/0 indica que el circuito secuencial se encuentra en

el estado 00 mientras la entrada X=0 y la salida Y=0, y que después de

que ocurra una transición en la señal de reloj el estado cambia a 01.

30

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Tabla 6

Diagrama de Estados

El proceso de diseño de un circuito combinacional consiste en:

1. Determinar el número de variables de entrada y de salida ne-

cesarias, identificar las

2. variables de entrada, asignarles un nombre y hacer lo mismo

con las variables de salida.

3. Deducir la tabla de verdad que define las relaciones entre las

variables de entrada y de salida.

4. Simplificar las funciones representadas en la tabla de verdad.

5. Obtener el circuito a partir de las funciones simplificadas.

1.1.

1. Realice el esquema con compuertas lógicas de las siguientes opera-

ciones aritméticas.

a + ab = a + b

a (a + b) = ab

2. Hacer el circuito a partir de la siguiente función. F =(a + b) c · d

3. Tenemos una central de alarma que se disparará con la siguiente

combinación de sectores activados. Realizar la tabla de la verdad y

hacer el diseño del circuito

A y B activados; C y D en reposo

A y D activados; B y C en reposo

A, B y D activados; C en reposo

A activado y el resto en reposo

A, B y C activados; D en reposo

A y C activados; B y D en reposo

4. Encuentre la función del montaje del circuito, defina las variables de

entrada.

31

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

En la lógica combinacional los circuitos producen una respuesta instantá-

nea, es decir, las salidas se pueden calcular a partir de la combinación de

los valores de las entradas en el mismo instante. La lógica combinacional

no sirve para construir circuitos que con capacidad de memoria, es decir,

funciones lógicas cuya salida en el instante presente depende de entradas

en el pasado. Es entonces, cuando los circuitos secuenciales aparecen y

cobran relevancia conceptos que no eran tan trascendentes para los circui-

tos combinacionales, algunos de estos conceptos son: instante presente,

instante siguiente, estado, retroalimentación, tiempo de propagación, sin-

cronización, memoria, secuencia, conteo, etc. Obsérvese que el principal

concepto involucrado en todos los anteriores es el tiempo.

Figura 14

Esquema de un circuito Secuencial

32

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

FIGUERES Amorós, Emilio y Benavent, José Manuel y Garcerá Sanfeliu,

Gabriel, Simulación de Circuitos Electrónicos de Potencia con Pspice, l.

México: Alfa Omega Ed. 2001

FlOYD, Thomas L, Fundamentos de Sistemas Digitales, Séptima Edición.

Prentice Hall. España, 2000

MALIK, Norbert R, Desarrollo y Aplicación de Sistemas Digitales, Editorial

Paraninfo. 1995

Los planteamientos explicados en este fascículo deben ser tenidos en

cuenta para el tratamiento de problemas posteriores. En el siguiente fascí-

culo daremos introducción a las características y principios de diseño con

los microprocesadores y microcontroladores.

33

Procesadores

Procesadores

Fascículo No. 1

Semestre 6

Seguimiento al autoaprendizajeSeguimiento al autoaprendizajeSeguimiento al autoaprendizaje

Procesadores - Fascículo No. 1

Nombre_________________________________________________________

Apellidos______________________________Fecha ____________________

Ciudad _______________________________Semestre__________________ Resolver:

1. Realizar la conversión de decimal a hexadecimal de:753, seleccione la res-

puesta indicada

a. 1011110001

b. 1011111001

c. Ninguna de las anteriores

2. Realizar la conversión de hexadecimal a binario de:86BF

3. Minimizar, usando las propiedades del Álgebra del Boole las siguientes

expresiones

F(x, y, z) = x × y + y × z + x × y × z + x × y × z + x × y × z

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

4. Se quiere implementar un sistema con dos luces de alarma (diodos LED) y

tres sensores (entradas digitales). Se llamaran a las luces A y B a las luces

de alarma, y x2, x1 y x0 a los sensores digitales. El sistema deberá funcio-

nar del próximo modo:

La alarma A se dispara si se recibe señal del sensor x2 exclusivamente.

La alarma B se dispara si se recibe señal del sensor x0 de forma pri-

mordial

Las x Falta

Dos alarmas se disparan si se recibe señal de al menos dos sensores

cualesquiera.

a. Realizar una especificación tabular del sistema de alarma.

b. Realizar una implementación con puertas.