Professional Documents
Culture Documents
Parte 1
INTRODUCCIN
El programa Quartus II1 es una herramienta de software producida por Altera2 para el anlisis y la sntesis de diseos en lenguaje HDL. 3
Altera es un fabricante lder de dispositivos lgicos programables, entre ellos, la CPLD que se emplear en el curso. Por este motivo, es necesario aprender a utilizar el Quartus II.
1- http://www.altera.com/products/software/quartus-ii/subscription-edition/qts-se-index.html Edicin Web: http://www.altera.com/products/software/quartus-ii/web-edition/qts-we-index.html 2- http://www.altera.com/ 3- HDL son las siglas para Hardware Description Language.
2
Para los fines de este curso, el programa Quartus II nos permitir no slo disear un circuito y comprobar su correcto funcionamiento mediante herramientas de simulacin, sino tambin trasladarlo a un dispositivo como la CPLD, permitiendo una primera aproximacin a la comunicacin Software-Hardware en lo relativo a Electrnica Digital.
Proceso de diseo de Quartus II
3
NUEVO PROYECTO
10
Ejemplo a estudiar
Para facilitar la explicacin y demostracin de los conceptos desarrollados en este tutorial, se utilizar como ejemplo la funcin lgica: f x1x2 x2 x3
x1 0 0 x2 0 0 x3 0 1 f 0 1
0
0 1 1 1 1
1
1 0 0 1 1
0
1 0 1 0 1
0
0 0 1 1 1
Tabla de verdad.
11
SCHEMATIC CAPTURE
1. Block Editor
2. Insercin de componentes
3. Insercin de pines de INPUT y OUTPUT 4. Conexin de nodos
12
Block Editor
Herramienta para realizar diseos esquemticos:
New Device Design Files Block Diagram / Schematic file
rea de Trabajo
13
Insercin de un componente
El Block Editor provee de varias libreras con elementos de circuito que pueden ser importados al esquemtico. Para el ejemplo se usar la librera primitives, la cual contiene las compuertas lgicas bsicas. Para insertar un componente: Doble click en el rea de trabajo Edit Insert Symbol Click en el cono Symbol Tool.
14
Insercin de un componente
Se abrir una ventana con las libreras existentes. Para buscar los componentes de este ejemplo entrar a: E insertar:
15
Insercin de un componente
Tip til:
Click derecho sobre el componente permite acceder a muchas opciones para girarlo, voltearlo y ver sus propiedades.
16
17
18
Conexin de terminales
Asegurarse de estar en el modo Selection and Smart Drawing Tool.
Para conectar los componentes, posicionar el cursor en el terminal del primer componente (debe aparecer un smbolo de una cruz), hacer click y mantener hasta llegar al terminal del otro componente (debe aparecer un cuadrado) y luego soltar.
La opcin de rubberbanding permite que al mover un componente, se mantengan sus conexiones. Para borrar una conexin, hacer click derecho sobre la misma y elegir la opcin Delete. Tambin es posible hacerlo clickeando sobre la conexin + la tecla Delete (Suprimir).
19
Conexin de terminales
Una vez realizadas todas las conexiones, el esquema queda:
Nota: Para diagramas con mayor cantidad de conexiones, es recomendable conectar los nodos asignndoles nombre, en lugar de usar cables, para mayor claridad.
20
COMPILACIN
21
Compilacin
Bsicamente, el primer paso luego de armado el circuito, es traducir (mediante la herramienta Synthesis Tool) el esquemtico en expresiones lgicas. El siguiente paso (technology mapping) determina cmo se deber implementar cada expresin lgica en los elementos disponibles en el dispositivo elegido. Si entramos a Tools Compiler Tool veremos los 4 mdulos principales que son administrados por el Compilador (Compiler)
22
Compilacin
El Compilador puede correr cada uno de estos mdulos por separado o, bien, todos en secuencia. Clickeando en el cono de Start Compilation se escoger esta ltima opcin.
Una forma eficiente de emplear estas herramientas es corriendo solamente los mdulos que son necesarios para cada fase del proceso de diseo, principalmente porque en diseos ms grandes el tiempo de compilacin puede variar (y significar una gran espera) entre mdulo y mdulo.
ERRORES Quartus arroja mensajes en la Messages window, producidos durante la compilacin. All se podr detectar la presencia de errores o warnings. En caso de que est todo en orden, se le informar al usuario que la compilacin result exitosa, con 0 errores y 0 warnings.
23
SIMULACIN
24
25
Ajuste al ancho de pantalla: View Fit in Window (para que el rango de tiempo deseado se vea completo en la pantalla)
Tarea: Indagar en Assignments Settings:
26
27
Para facilitar la comprensin, deseamos que queden en otro orden. Para eso, se clickea sobre el nombre del pin, se mantiene clickeado y se lo arrastra hasta la posicin deseada.
28
Seleccionar con el mouse un lapso de tiempo de la seal deseada (por ejemplo, entre 20 ns y 40 ns de la seal x3) y setear su valor (en este caso, 1). La barra de herramientas permite elegir, entre otras opciones:
0 1 X: Unknown Z: High Impedance DC: Dont Care INV: Inverting its existing value
29
TIP: Una forma rpida de ir cambiando los valores lgicos de los intervalos de tiempo, es valerse de la herramienta Waveform Editing Tool. Se selecciona el intervalo de tiempo como se mencion anteriormente, y automticamente invierte el valor lgico del mismo [si estaba en 0 lo pone en 1; si estaba en 1 lo pone en 0]
30
2
Processing Generate Functional Simulation Netlist Clickear y esperar a que procese.
32
33