Gua para realizar el primer diseo con el Max+Plus II Introduccin A travs de esta gua aprenders como hacer un diseo utilizando el programa Max+plus II del curso de Circuitos Digitales II. Mediante un ejemplo sencillo veremos como ingresar un diseo, como simularlo, como asignar las seales deseadas a los pines adecuados del chip y finalmente como programarlo. El circuito que disearemos consiste en un circuito combinatorio que tiene como entrada la posicin de 4 switches y como salida el estado de 2 leds.
Las salidas debern cumplir con las siguientes ecuaciones: dl1 = ab!c + !abc + bd dl2 = ac + !b!d Siendo abcd el estado del switch S4[4..1].
Construir la tabla de verdad de estas funciones y verificar que las expresiones son mnimas. Antes de comenzar...
1. Crear un directorio de trabajo en el disco duro de la mquina (por ej: c:\archivos de programa\max2work\d+)
2. Abrir el programa
Cmo crear un proyecto?
3. Crear un nuevo proyecto. Para esto, en el men File, elegir Project y luego Name. Seleccionar el directorio de trabajo (por ej: c:\archivos de programa\max2work\d+). Ingresar el nombre del proyecto. Comenzaremos con el proyecto f1.
4. En el men MAX+plus II elegir Graphic Editor. Se abrir una ventana en la cual se podr comenzar a ingresar el circuito en forma grfica. Guardar este archivo como f1.gdf. En este archivo dibujaremos el circuito combinatorio correspondiente al led dl1.
5. Para ingresar una compuerta, hacer doble clic en la zona de dibujo. Se abrir una ventana que permite seleccionar el componente a ingresar. Teclear en el cuadro Symbol Name el tipo de compuerta indicando cantidad de entradas. Ejemplos: or2 (OR de 2 entradas), and4 (AND de 4 entradas), not (inversor), etc.
6. Las entradas y salidas del circuito se ingresan como cualquier componente, y sus nombres son input y output respectivamente. Los nombres de dichas seales se pueden cambiar haciendo doble clic sobre su etiqueta.
7. Para conectar los distintos componentes hacer clic en uno de los terminales de la compuerta y arrastrar el mouse hasta el punto que se desea conectar.
8. Una vez dibujado el circuito y salvado, se puede proceder a la compilacin. En el men MAX+plus II seleccionar Compiler. Se abrir la ventana del compilador. Ir al men Processing y seleccionar Functional SNF Extractor, esto permitir trabajar con el sistema a nivel lgico, sin considerar problemas de implementacin fsica (retardos, etc.). Presionar el botn Start para iniciar la compilacin. El archivo que se compila debe tener el mismo nombre que el proyecto. Al terminar, un cuadro indicar si hubo errores. Luego de corregidos todos los errores se deber ver en la pantalla algo similar a la siguiente figura para f1
9. Cerrar todas las ventanas dentro del programa y repetir los pasos 3 a 8 para el proyecto f2 correspondiente al circuito combinatorio del led dl2.
10. Ahora generaremos el proyecto tutorial. Para esto debemos primero generar los smbolos f1 y f2. Para esto abrir f1.gdf y en el menu File seleccionar Create Default Symbol. Repetir esto para f2. Luego de creados los smbolos cerrar todas las ventanas del programa y repetir los pasos 3 a 8 para crear el proyecto tutorial. Al hacer doble clic en la zona de dibujo aparecern disponibles los smbolos f1 y f2 para ser insertados en el proyecto.
Cmo simular un proyecto?
11. Seleccionar el proyecto que se desea simular. Para esto, en el men File, elegir Project y luego Name. Comencemos seleccionando f1.
12. Si la compilacin no tuvo errores, se puede pasar a la simulacin funcional del proyecto. En el men MAX+plus II seleccionar Waveform editor. Se abrir el editor de formas de onda en el cual se pueden dibujar las entradas para la simulacin. Dos valores importantes para fijar inicialmente son el tamao de la grilla (men Options > Grid size) y el tiempo total de simulacin (men File > End time). Mantener el Grid size en 100.00ns y cambiar el End time a 1.6us
13. Para ingresar una seal, hacer doble clic en la columna debajo de Name. Se abrir una ventana donde se debe ingresar el nombre de la seal y si es entrada o salida. Si se quieren ingresar todas las seales a la vez, presionar el botn derecho en la columna de Name. Luego seleccionar Enter Nodes from SNF... luego apretar el botn List, luego => y por ltimo OK.
14. Las formas de onda se pueden dibujar con ayuda de las herramientas que aparecen sobre la izquierda de la pantalla (permiten sobreescribir con 0, 1, X o Z la zona seleccionada, adems de ingresar relojes, contadores, etc.) Algo til es agrupar seales y verlas como un nmero en alguna base adecuada. Por ejemplo en el caso del proyecto f1 se pueden agrupar las seales abcd. Primero se deben ordenar de forma que la seal a sea la que est en la parte superior y la seal d en la inferior. Luego se deben seleccionar todas las seales. Presionar el botn derecho sobre la seleccin y hacer clic sobre Enter Group... Darle un nombre al grupo y seleccionar la base en la que se desea mostrar el nmero que forman las seales. Sobre la izquierda existe la opcin de generar un contador binario que puede ser til para generar todas las entradas posibles al circuito.
15. Una vez ingresadas todas las formas de onda de entrada, se debe salvar el archivo y ejecutar el simulador. Para esto ltimo ir al men MAX+plus II y seleccionar Simulator. Se abrir la ventana del simulador, donde con el botn Start se inicia la simulacin.
16. Para ver los resultados de la simulacin hay que volver a la ventana de formas de onda, donde estarn dibujadas las salidas del circuito. All se puede verificar el correcto funcionamiento del mismo de acuerdo a la especificacin inicial.
17. Cerrar todas las ventanas del programa y repetir los pasos 11 a 16 para los proyectos f2 y tutorial.
Cmo asignar el chip y los pines y generar los archivos para la grabacin? 18. Seleccionar el proyecto que se desea grabar en el chip. En este caso el proyecto tutorial. Para esto, en el men File, elegir Project y luego Name.
19. Una vez validado el diseo debemos generar los archivos para grabar en el chip. Para esto previamente hay que asignar el modelo de chip que se va a utilizar. Ir al men Assign y seleccionar Device..., desmarcar el casillero Show Only Fastest Speed Grades y seleccionar el dispositivo EPM3064ALC44-10 de la lista que ofrece el programa.
20. Asignar pines del dispositivo a cada seal de entrada o salida de acuerdo a la ubicacin de los switchs y los leds segn el manual de la placa. En el men Max+Plus II seleccionar Floorplan Editor. En el men Layout seleccionar Device View y Current Assignment y deseleccionar Full Screen. Luego asignar el pin correspondiente a cada seal arrastrando la seal desde la ventana Unassigned Nodes hasta la ubicacin adecuada en el diagrama del chip en la ventana inferior. Finalmente se debe ver en la pantalla algo similar a la siguiente figura.
21. Realizar la compilacin fsica del proyecto. En el men MAX+plus II seleccionar Compiler. Se abrir la ventana del compilador. Ir al men Processing y desseleccionar Functional SNF Extractor e iniciar la compilacin presionando Start. Si no hay errores debe obtenerse un archivo binario que se utilizar para grabar el chip (extensin .pof) y un archivo de texto con un reporte detallado de la compilacin (extensin .rpt).
Cmo grabar el chip?
22. La primera vez que se utiliza el software Max+PlusII para programar, se debe de indicar el tipo de programador que se utilizar. En PCs con Windows NT, antes de utilizar el programador se debe de instalar el driver para ByteBlasterMV oemsetup.inf, este se encuentra en el directorio \maxplus2\drivers del cd del curso. En PCs con Windows 2000 o XP, antes de utilizar el programador se debe de instalar el driver win2000.inf que se encuentra en el directorio \maxplus2\drivers\win2000 del cd del curso. Para indicar el programador utilizado se debe: a) En el men MAX+plus II seleccionar Programmer. Seleccionar Hardware Setup en el menu Options. b) Especificar el puerto paralelo en el cual se conectar el programador (en general LPT1) c) Seleccionar ByteBlasterMV en Hardware Type:. d) Presione OK.
23. Antes de programar el PLD, se debe verificar en el reporte (archivo con extensin .rpt) que la asignacin de patas sea correcta. Un error puede asignar una seal de salida a un pin conectado a un pulsador o switch y generar un cortocircuito.
24. En el men MAX+plus II seleccionar Programmer.
25. Desactivar la opcin Multi-Device JTAG Chain en el menu JTAG.
26. Si el archivo de programacin mostrado en el campo File: de la aplicacin de programacin no coincide con el archivo .pof deseado, este debe cambiarse. La seleccin de archivo de programacin se hace mediante Select Programming File en el menu File. Por defecto Max+PlusII selecciona el .pof con el mismo nombre que el proyecto, por lo cual en general este paso no es necesario.
27. Conecte la placa al puerto paralelo. La placa debe de estar alimentada ANTES de ser conectada al puerto paralelo
28. Seleccione Program
29. Verificar que el circuito funciona de acuerdo a los esperado.
30. Si has llegado hasta aqu has terminado tu primer proyecto
Tutorial de Emacs. Vea al final las condiciones de copiado. Generalmente los comandos de Emacs involucran la tecla CONTROL (algunas veces llamada CTRL O CTL) o la tecla meta (algunas veces llamada EDIT o ALT). En lugar de escribir completamente esto en cada ocasión, usaremos las siguientes abreviaturas. C-<car> significa mantener presionada la tecla CONTROL mientras teclea el carácter <car>. Por lo tanto C-f será: Mantenga presionada la tecla CONTROL y teclee f. M-<car> significa mantener presionada la tecla META o EDIT o ALT mientras teclea <car>. Si no hay teclas META, EDIT o ALT, en su lugar presione y libere la tecla ESC y luego teclee <car>. Escribimos <ESC> para referirnos a la tecla ESC. Nota importante: para terminar la sesión de Emacs teclee C-x C-c (dos caracteres). Para cancelar un comando parcialmente introducido, teclee C-g. Los caracteres «>>» en el margen izquierdo indican instrucciones para que usted trate de usar un comando. Por e