Download nota de aplicación
Document related concepts
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, issaiass@cwpanama.net, 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