28
CAPITULO 1 Diseño Intuitivo de Sistemas Digitales Ing. Ronald Ponguillo Intriago [email protected]

1_DisenioIntuitivo

Embed Size (px)

Citation preview

Page 1: 1_DisenioIntuitivo

CAPITULO 1

Diseño Intuitivo de Sistemas Digitales

Ing. Ronald Ponguillo Intriago [email protected]

Page 2: 1_DisenioIntuitivo

Temas a tratar…

Introducción.

VHDL circuito SWAP

Circuito SWAP

Ing. Ronald Ponguillo Intriago2

Page 3: 1_DisenioIntuitivo

Introducción

Las técnicas manuales de diseño no son usadas actualmente, pero ayudan mucho para desarrollar la intuición para entender como operan los Sistemas Digitales.

Además, las técnicas manuales del diseño proporcionan una ilustración de los tipos de manipulaciones que pueden ser realizados actualmente por herramientas CAD, dando nos una apreciación de los beneficios proporcionados por automatización del proceso del diseño

Ing. Ronald Ponguillo Intriago3

Page 4: 1_DisenioIntuitivo

1. 7400 - NAND/2 In 23. 74138 - Dec/3-a-8

2. 7402 - NOR/2 In 24. 74139 - Dec/2-a-4

3 7404 - NOT 25. 74143 - Cont/Latch/Dec-Driver

4. 7408 - AND/2 In 26. 74147 - Cod-Prior/10-a-4

5. 7410 - NAND/3 In 27. 74150 - Mux/16-a-1

6. 7411 - AND/3 In 28. 74151 - Mux/8-a-1

7. 7414 - NOT/Sch. Trigger 29. 74153 - Mux/4-a-1

8. 7420 - NAND/4 In 30 74154 - Dec/4-a-16

9. 7421 - AND/4 In 31. 74157/158 - Mux/2-a-1

10. 7427 - NOR/3 In 32. 74160/161/162/163 - Cont/Bin-Dec

11. 7430 - NAND/8 In 33. 74169 - Cont/Up-Down

12. 7432 - OR/2 In 34. 74174/175 - 6/4 FF/D

13. 7442 - Dec/BCD-a-Dec 35. 74181 - ALU

14. 7447/48 - Decoder-Driver 36. 74184 - Conv-Cod/BCD-Bin

15. 7470 - FF/JK 37. 74185 - Conv-Cod/Bin-BCD

16. 7474 - FF/D 38. 74190/191/192/193 - Cont/Up-Down/Bin-BCD

17. 7483/183/283 - Sumador 39. 74194 - Reg/Universal

18. 7485 - Comparador 40. 74240/241/244 - 8 Buffer/3-state Out

19. 7486 - XOR 41. 74260 - NOR/5 In

20. 7489/189/289 - RAM 42. 74279 - Celdas bin.

21. 74125 - 4 Buffer/3-state out 43. 74374 - 8 FF/D/3-state out

22. 74133 - NAND/13 In 44. 74377/378/379 - 8/6/4 FF/D con Enable

Ing. Ronald Ponguillo Intriago4

Page 5: 1_DisenioIntuitivo

Diseño intuitivo por Partición Funcional de un Sistema Digital para intercambiar

los datos de dos registros

El diseño por Partición Funcional consiste en una apropiada conexión de los componentes entre si, con el fin que el conjunto de componentes interconectados realice la operación deseada.

Cuando el circuito Controlador del Sistema Digital es también implementado por Partición Funcional, este método de diseño se llama intuitivo porque requiere tanto de conocimiento de los componentes digitales como de mucha intuición.

Ing. Ronald Ponguillo Intriago5

Page 6: 1_DisenioIntuitivo

Ing. Ronald Ponguillo Intriago6

Page 7: 1_DisenioIntuitivo

Los Sistema Digitales muy a menudo contienen un conjunto de registros para almacenar los datos. Todos los registros están conectados a un bus para transferir los datos desde y hacia registros

Un Sistema Digital real puede tener otros circuitos conectados al bus. Por lo tanto, los datos que se almacenan en los registros pueden provenir de otros circuitos. Es por esto que la salida de cada registro debe ser conectada al bus por medio de un buffer de tres estados de n-bit.

Ing. Ronald Ponguillo Intriago7

Page 8: 1_DisenioIntuitivo

Cuando se desea almacenar el dato en un registro, el circuito de Control manda la señal de habilitación Rin al registro el cual se va a cargar

El circuito de Control también produce las señales de habilitación de salida Rout de los buffer cuando se desea sacar el dato desde algún registro

Este sistema puede ser utilizado de varias maneras. Los datos pueden cargarse desde afuera, transferirse de un registro a otro o a otros, intercambiarse entre los registros.

Ing. Ronald Ponguillo Intriago8

Page 9: 1_DisenioIntuitivo

Sistema Digital SWAP Asumimos que tenemos solo tres registros, R1,

R2 y R3.

Diseñaremos el circuito de control que permita realizar una sola función – intercambiar (swap) el contenido de los registros R1 y R2 usando el registro R3 para almacenamiento temporal

Realizaremos la operación en tres pasos

Primero transferimos el contenido de R2 a R3

Ing. Ronald Ponguillo Intriago9

Page 10: 1_DisenioIntuitivo

Luego transferimos el contenido de R1 a R2.

Finalmente, transferimos el contenido de R3 a R1 transferimos el contenido de R2 a R3

Ing. Ronald Ponguillo Intriago10

Page 11: 1_DisenioIntuitivo

Ing. Ronald Ponguillo Intriago11

Page 12: 1_DisenioIntuitivo

Implementación del circuito Controlador

Ing. Ronald Ponguillo Intriago12

R 2 o u t , R 3 i n

R 1 o u t , R 2 i n R 3 o u t , R 1 i n

w D Q

Clock Q

D Q D Q

Q Q

Reset

Figure 7.57 A shift-reg ister con tro l circuit.

Page 13: 1_DisenioIntuitivo

Código VHDL para el circuito SWAP.

Ing. Ronald Ponguillo Intriago13

Page 14: 1_DisenioIntuitivo

Debemos describir en VHDL cada uno de los subcircuitos: registros de sostenimiento, buffer de tres estados y el registro de desplazamiento que usamos como circuito de control. Para poder variar el número de bits de los datos utilizamos el parámetro genérico generic n.

Ing. Ronald Ponguillo Intriago14

Page 15: 1_DisenioIntuitivo

El registro reg es un registro especial con Mux de 2-a-1 en las entradas de datos. Solo cuando Rin = 1 el registro carga los datos externos con el flanco de subida de Clock.

Ing. Ronald Ponguillo Intriago15

Page 16: 1_DisenioIntuitivo

La arquitectura usa la sintaxis (others => ‘Z’) para especificar que la salida de cada buffer estará en estado de alta impedancia Z si la entrada de habilitación En = 0. Sino la salida Sal es igual a la entrada Ent.

Ing. Ronald Ponguillo Intriago16

Page 17: 1_DisenioIntuitivo

Ing. Ronald Ponguillo Intriago17

Page 18: 1_DisenioIntuitivo

El número de flip-flops es definido por el parámetro generic k.

La operación de desplazamiento a la derecha esta definida con for loop.

for loop es una declaración secuencial que permite especificar un número fijo de repeticiones en una descripción del diseño por comportamiento (que ejecuta una serie de declaraciones secuenciales múltiples veces).  

Ing. Ronald Ponguillo Intriago18

Page 19: 1_DisenioIntuitivo

Para usar los circuitos ya descritos en código VHDL como subcircuitos de diferentes sistemas digitales mas grandes se requiere declarar cada uno como un component. Para esto instanciamos un package llamado componentes en el cual se encuentran todos los circuitos descritos.

package es la unidad de diseño que especifica un conjunto de declaraciones que puede incluir atributos, componentes, constantes, archivos, tipos, etc.

Ing. Ronald Ponguillo Intriago19

Page 20: 1_DisenioIntuitivo

Ing. Ronald Ponguillo Intriago20

Page 21: 1_DisenioIntuitivo

Ing. Ronald Ponguillo Intriago21

Page 22: 1_DisenioIntuitivo

Este package podemos luego usarlo en la descripción de un Sistema Digital más complejo. Lo puede guardar en la carpeta con cualquier nombre (por ejemplo, work).

Ing. Ronald Ponguillo Intriago22

Page 23: 1_DisenioIntuitivo

Ing. Ronald Ponguillo Intriago23

Page 24: 1_DisenioIntuitivo

Al inicio de la descripción de architecture indicamos todas las signal, que son alambres internos que interconectan los subcircuitos entre si.

Luego describimos como están conectados todos los componentes del Sistema.

Ing. Ronald Ponguillo Intriago24

Page 25: 1_DisenioIntuitivo

Generic map es usada para asignar los valores de los parámetros genéricos de los componentes.

Port map es usada para asociar señales de port de cada componente con port y signal de otros componentes del Sistema.

Para poder inicialmente cargar los registros externamente agregamos las señales de control para los tres registros RinExt.

Ing. Ronald Ponguillo Intriago25

Page 26: 1_DisenioIntuitivo

Ing. Ronald Ponguillo Intriago26

Page 27: 1_DisenioIntuitivo

Este código no puede ser procesado por el compilador de Max+plusII VHDL porque este último no permite conectar juntas las salidas de los buffer de tres estados descritos en VHDL. Con los buffer como componentes discretos si se puede hacer esta conexión

Para poder compilar el código se requiere reemplazar los buffer por los Mux.

Ing. Ronald Ponguillo Intriago27

Page 28: 1_DisenioIntuitivo

Ing. Ronald Ponguillo Intriago28

Bus

R l R1 R l R2 R l Rk

Clock

Data

j – R

Multiplexers

Figure 7.60 U sing m u ltip lexers to im p lem ent a bus.