Download nota de aplicación

Document related concepts

JTAG wikipedia , lookup

Open JTAG wikipedia , lookup

Programador (dispositivo) wikipedia , lookup

Programación en el sistema wikipedia , lookup

Field Programmable Gate Array wikipedia , lookup

Transcript
NOTA DE APLICACIÓN
Lógica Programable
LP0001
Date: 05/02/2007
Asunto:
PROGRAMADOR JTAG PARA CPLD’S/FPGA’S XILINX
Día de Preparación: 4 de Febrero del 2007
Moderador:
Título:
Día de Inicio:
Rangel Alvarado, [email protected], ADR Solutions Inc.,
Panamá
Ingeniero de Diseño (Lic. En Ing. Electromecánica)
Sábado 3 de Febrero del 2007
Nombre de Archivo: LP0001
1.1 Introducción: ..........................................1
1.5 Circuito Impreso de JTAG (no probado
aún): .............................................................. 2
1.2 ¿Qué es JTAG?:.....................................1
1.6 Conclusión: ........................................... 2
1.3 Circuito Esquemático de JTAG: ...........1
1.7 Bibliografía: ........................................... 2
1.4 Construcción en Plantilla de Proyectos:
.......................................................................2
1.1 Introducción:
El siguiente escrito muestra en definitivo como construir una tarjeta que está todavía en fase de
diseño en PCB pero cuya prueba en protoboard fue satisfactoria para lo que se conoce como el
“Parallel III Download Cable”, que no es más que un programador JTAG para circuitos integrados
CPLDs ó FPGAs de la empresa Xilinx Inc.
Comenzaremos introduciendo a “grosso modo” lo que es JTAG en sí en unas cuantas líneas y
finalmente pasaremos a lo que es el diseño esquemático, construcción en protoboard, circuito
impreso y finalmente fotografías de esta experiencia.
1.2 ¿Qué es JTAG?:
La palabra JTAG viene de “Joint Test Action Group” y viene del standard IEEE 1149.1. Esta interface
desarrollada por ingenieros es diseñada para verificar el funcionamiento de los circuitos digitales (su
lógica interna), “Boundary Scan”, y básicamente opera por medio de registros de corrimiento internos.
Esta es una interfaz de bajo costo y permite programar un circuito digital como este caso, exclusivo
para FPGAs de Xilinx.
Con el JTAG prácticamente se puede programar gran cantidad de FPGAs ubicados en nodos, porque
su estructura así mismo lo permite. Como se verá más adelante, prácticamente es una interfaz de
cuatro (4) pines (sin contar GND y VCC).
1.3 Circuito Esquemático de JTAG:
Existen varias versiones en la red de JTAG de este tipo que se encuentran con errores en la red.
Este, es un esquema funcional que ya ha sido validado. Hay interfaces baratas que solo llevan los
pines de comunicación a la PC, pero se corre el riesgo que si se trabaje la aplicación empotrada al
computador, como la conexión es directa y sin protección, el puerto puede ser dañado si no se tiene
el debido cuidado.
Es por esto que este circuito, que es un simple acondicionador de niveles (recuerde que los niveles de
algunos CPLDs/FPGAs son de bajo voltaje), a pesar de ser redundante, provee dos acciones:
• Acondicionar la señal que va hacia el computador y reforzarla
LP0001-040207-01
CABLE JTAG TIPO “PARALLEL III” DE XILINX
1/7
NOTA DE APLICACIÓN
Lógica Programable
LP0001
Date: 05/02/2007
•
Proveer seguridad que la circuitería que sea dañada sea solo el JTAG (más sin embargo,
aunque no es del 100% seguro, se reduce el riesgo casi al 100%).
Consultar Anexos para ver el esquemático del JTAG.
1.4 Construcción en Plantilla de Proyectos:
Utilizamos el protoboard como parte de este proyecto. Las fotos se muestran en la sección de
anexos.
1.5 Circuito Impreso de JTAG (no probado aún):
El circuito esquemático es funcional y el recomendado. Aunque no se ha probado aún, puedo dar la
mayor confiabilidad posible debido a que utilicé ORCAD para su diseño, el cual tiene métodos de
enrutado de “Design Rule Check” que hacen prácticamente que los errores sean casi nulos si se
toman las medidas pertinentes. Las dimensiones de la tarjeta son de X = 2580 mils,Y = 2500 mils.
Consultar Anexos para ver el PCB de JTAG.
1.6 Conclusión:
Para este desarrollo hemos de trabajar para nuestros proyectos con el JTAG y CPLDs/FPGAs de
Xilinx. El JTAG es una interface de Hardware/Software, que por la parte de Hardware, si se toma la
acción presentada podrá proteger de alguna manera su circuito y reforzar su señal.
1.7 Bibliografía:
1.7.1 Inicio de proyecto con CPLD de Xilinx XC9572XL
http://www.stud.fit.vutbr.cz/~xvasic11/cl.cpld
1.7.2 ¿Qué es JTAG?
http://www.xess.com/faq/M0000297.HTM
http://www.en.wikipedia.org/wiki/JTAG
1.7.3 Parallel III Download Cable (Xilinx Inc.)
http://toolbox.xilinx.com/docsan/xilinx4/data/docs/pac/appendixb.html
LP0001-040207-01
CABLE JTAG TIPO “PARALLEL III” DE XILINX
2/7
NOTA DE APLICACIÓN
Lógica Programable
LP0001
Date: 05/02/2007
ANEXOS
LP0001-040207-01
CABLE JTAG TIPO “PARALLEL III” DE XILINX
3/7
1
R1
J1
D1
D2
VCC_SENSE
VCC
100
M1
1
14
2
15
3
16
4
17
5
18
6
19
7
20
8
21
9
22
10
23
11
24
12
25
13
DIN
VCC_SENSE
CLK
TMS_IN
1N4148
1N4148
R2
4.7k
U2A
74HC125
3
DONE
R5
1.0k
C1
0.01uF
GND
2
R3 100
U1A
74HC125
1
CTRL
PROG
R7
2
3
U2B
74HC125
TDO
56
1
5
6
R6
4
C2
0.01uF
PROG
100
DONE
U1B
74HC125
M2
R8
5
DIN
DB 25 Connector Female
U2C
74HC125
R10
6
TDI
9
56
8
C3
0.01uF
A
DB25 FEMALE CONNECTOR
R9
U2D
74HC125
CTRL
100
J2
VCC_3.3
12
U1C
74HC125
R11
R12
9
CLK
11
8
13
2
4
6
8
10
12
TCK
100
56
10
TMS
TDI
TDO
TCK
GND
VCC
1
3
5
7
9
11
FPGA/CPLD JTAG
C4
0.01uF
VCC
U1D
74HC125
C6
0.01uF
R13
R14
12
TMS_IN
11
TMS
100
56
13
A
10
4
100
JTAG HEADER
FOR CPLDs AND
XILINX FPGAs
C5
0.01uF
JTAG LEVEL
SHIFTER CIRCUIT
Title
Size
Date:
1
Xilinx JTAG Parallel III Cable for CPLD/FPGA
Document Number
LP0001
Sunday, February 04, 2007
Rev
1.0
Sheet
1
of
1
NOTA DE APLICACIÓN
Lógica Programable
LP0001
Date: 05/02/2007
Fotografías del Proyecto:
Figura 1: (a) Tarjeta Objetivo.
La tarjeta a programar es un
prototipo casero con un CPLD
XC9572XL, es de bajo voltaje y
el JTAG en sí, incluyendo tierra y
alimentación es de seis pines.
(b.1)
(a)
(b) Circuito JTAG. (b.1) Parte
superior. Esta parte, al igual que
la
inferior
muestra
los
componentes
utilizados
del
JTAG.
(b.2)
Parte inferior.
Muestra la parte faltante del
JTAG.
(b.3)
Circuito JTAG
completo.
(b.3)
(b.2)
LP0001-040207-01
CABLE JTAG TIPO “PARALLEL III” DE XILINX
5/7
NOTA DE APLICACIÓN
Lógica Programable
LP0001
Date: 05/02/2007
Figura 2: Estado de operación y de programación del JTAG. (a) Estado de Operación. Muestra el JTAG operando satisfactoriamente accesando a un
dispositivo CPLD. (b) Programación Satisfactoria. Finalmente se muestra un programa satisfactorio del prototipo de board de JTAG funcional.
(a)
LP0001-040207-01
CABLE JTAG TIPO “PARALLEL III” DE XILINX
(b)
6/7
Lógica Programable
LP0001
NOTA DE APLICACIÓN
Date: 05/02/2007
Circuito Impreso (PCB):
Figura 3: Circuitos Impresos de JTAG. (a)
Vista Superior con Puentes. Se observa los
componentes serigrafiados y los agujeros
además de los puentes a realizar. (b) Vista
Inferior. La vista inferior contiene serigrafía
importante para guiar en el montaje. (c)
Serigrafía Superior. La parte de serigrafía
superior solo muestra la etiqueta de cada
componente y ubicación.
(c)
(a)
(b)
LP0001-040207-01
CABLE JTAG TIPO “PARALLEL III” DE XILINX
7/7