
MICROCONTROLADOR
10
Elektor
grado. Así, el circuito integrado 7032S es el
más pequeño de la familia y tan sólo dispone
de dos LBAs, es decir, 32 macrocélulas. Por lo
tanto, los dos números que siguen a la cifra 7
indican el número de macrocélulas que hay en
el circuito integrado. La forma del encapsu-
lado y la cantidad de terminales también se
define si sólo unas pocas macrocélulas pue-
den tener un terminal de E/S.
El fichero que contiene la información de la
programación del circuito integrado se trans-
fiere desde el ordenador hacia el circuito inte-
grado sobre el conector con el interfaz JTAG. El
adaptador ByteBlaster une el puerto JTAG con
el puerto paralelo del ordenador. La versión más
nueva del programa ByteBlasterMV se puede
ejecutar en un amplio abanico de ordenadores
con diferentes sistemas operativos, al mismo
tiempo que puede soportar una gran variedad
de tensiones de alimentación (el modelo origi-
nal tan sólo podía trabajar con + 5 V). Anterior-
mente a este modelo estaba el adaptador Bit-
Blaster , que se conectaba en la interfaz serie
del ordenador. Más recientemente ha salido al
mercado una versión que trabaja con el puerto
USB. Sin embargo, no es demasiado impor-
tante determinar cuál es el camino que toma-
rán los datos para llegar hasta la interfaz JTAG.
Programación
En la programación de dispositivos CPLDs
existe una gran cantidad de paquetes de pro-
gramas desarrollados por el correspondiente
fabricante del componente. Así, la casa Altera
ofrece dos programas: MAX2PLUS y el
QUARTUS.
El MAX2PLUS es un conjunto de progra-
mas que tiene una relativa antigüedad. La
versión gratuita que se puede encontrar en la
página web del fabricante tan sólo permite
introducir la conectividad del circuito utili-
zando esquemas eléctricos del circuito o
ficheros de texto en formato AHDL. Las entra-
das Verilog y VHDL sólo pueden usarse en
una versión con licencia del programa. La
casa Altera ya ha anunciado que en un futuro,
no dará soporte a este paquete de programas.
Por su parte, el paquete QUARTUS ofrece
los lenguajes Verilog y VHDL en su edición
gratuita de Internet, y puede emplearse para
dispositivos FPGAs grandes, pero esto
requiere mucha mayor potencia de procesa-
miento de nuestro ordenador y también bas-
tante más memoria. Estos requerimientos no
deben suponer ningún problema para cual-
quier ordenador doméstico actual. Así, pode-
mos decir que el paquete Quartus ha sido uti-
lizado para realizar el desarrollo de este pro-
yecto. En la actualidad podemos descargar la
versión 3.0 de la página web de la casa Altera.
Una vez instalado es necesario aceptar los tér-
minos del Fichero de Licencia a tra-
vés de un correo electrónico. Para ello
necesitaremos el número de nuestro
disco duro o el de la tarjeta de red. La
respuesta a nuestro registro tan sólo
nos tomará unos pocos minutos.
El paquete QUARTUS permite
que la información del diseño pueda
introducirse a través de diferentes
formatos de ficheros. Los diseños
pueden estar organizados de manera
jerárquica o en un formato mezclado.
Para este proyecto hemos utilizado
un fichero de entrada de texto y
hemos almacenado el diseño senci-
llamente utilizando una jerarquía
plana (es decir, en una sola capa). A
lo largo del desarrollo se ha usado el
lenguaje de programación VERILOG,
el cual no baja al nivel de los compo-
nentes como lo hace el lenguaje
AHDL, pero es bastante más sencillo
de utilizar. Por ello, el lenguaje AHDL
será la mejor opción para aquellas
aplicaciones donde intentemos con-
seguir las máximas prestaciones de
un circuito integrado alojado en el
encapsulado más pequeño posible.
El fichero de diseño (XXX.v)
puede, en principio, generarlo y leerlo
cualquier programa editor de textos.
Sin embargo, el editor suministrado
en el paquete QUARTUS utiliza tex-
tos de diferentes colores para dife-
renciar las distintas partes del pro-
grama (palabras reservadas en color
azul, comentarios en verde, etc), algo
que hace mucho más fácil localizar
los errores de sintaxis, como el olvido
de una sentencia END, al mismo
tiempo que hace más sencilla la lec-
tura de los comentarios.
La cabecera del fichero
La Tabla 1 nos muestra la primera
parte del fichero .v perteneciente al
proyecto del contador de revolucio-
reg [8:0] Next_M;
reg [10:0] V;
reg [10:0] Next_V;
reg VRES;
reg Next_VRES;
reg DZ_IN_1D;
reg Next_DZ_IN_1D;
reg DZ_IN_2D;
reg Next_DZ_IN_2D;
reg TOR;
reg Next_TOR;
reg TOR_D;
reg Next_TOR_D;
reg TOR_NF;
reg Next_TOR_NF;
reg [15:0] LED;
reg [15:0] Next_LED;
reg [15:0] LED_R;
reg [15:0] Next_LED_R;
reg [15:0] LED_Z;
output [15:0] LED_R_OA;
reg [15:0] LED_R_OA;
output [15:0] LED_R_OB;
reg [15:0] LED_R_OB;
reg [15:0] MASK;
reg [4:0] i;
/*==============================================================*/
Kommentare zu diesen Handbüchern