Foros ZackYFileS

Foros ZackYFileS (http://foros.zackyfiles.com/index.php)
-   Interface OSLINK & JTAG (http://foros.zackyfiles.com/forumdisplay.php?f=114)
-   -   Manual de cómo usar el JTag en tu Philips DSX 607x (http://foros.zackyfiles.com/showthread.php?t=376474)

Master-DJ 27/11/2005 02:40

Manual de cómo usar el JTag en tu Philips DSX 607x
 
--------------------------------------------------
Manual de cómo usar el JTag en tu Philips DSX 607x
--------------------------------------------------

Buenas a todos, aquí os dejo un manual o más bien mis experiencias, con todos los detalles que puedo de cómo leer y escribir la flash a través del puerto paralelo con el JTag de 0,40 centimos(sin cortar las pistas, va de coña) o si preferéis, con un JTag externo. A través de este método podemos resucitar decos muertos sólo de la serie 6072(he leido por ahí que la serie 6071 si se queda frito, vamos que el display se queda apagado, no puede arrancar y haría falta un oslink) y el tiempo para programar la Flash se reduce a unos 10 minutos con verificación en lugar de los 105 minutos que tarda a través del puerto serie.
Animo a la gente postee todas sus experiencias con este método para quede un manual lo más completo posible.
Las pruebas las he realizado con un deco Philips DSX 6072 holandés de color plata(por dentro es indéntico a cualquier deco de *****) conectado a un portatil Celeron 400 con Windows XP Professional(si tienes el 98 o Millenium, fijo que tienes menos problemas que con el 2000 o XP) con un cable paralelo macho-macho de unos 2 metros(oiréis por ahí que cuanto más corto mejor). Ahhh, y que no falte el software, Pionero v5.0, el mismo que usan para los decos Pioneer.

Resumen que necesitamos:
*Deco Philips Serie DSX 6071 ó 6072 con JTag, ya sea interno o externo.
*Un cable paralelo macho-macho.
*Un PC con Windows 98, Me, 2000 ó XP.
*Software Pionero v5.0.

1º Configuración del puerto paralelo
Cuando arracamos el PC hay que mirar cómo está configurado el puerto paralelo(desde el icono "Mi PC" vamos a "Propiedades", te sale la ventana de "Propiedades del sistema", vamos a la pestaña "Hardware", damos al botón "Administrador de dispositivos", te abre la ventana "Administador de dispositivos", buscamos "Puerto (Com & Paralelo)" y selecionamos "Puerto de impresora" para ver las propiedades) en mi caso estaba en modo ECP+EPP con "usar cualquier interrupción asiganda al puerto". Antes no me funcionaba el Pionero si no le asignaba una IRQ al puerto paralelo. Además, si ves que no chuta el programa y lo tienes en modo ECP ó EPP, para cambiarlo lo tendrás que hacer desde la BIOS de tu ordenador.

2º Configuración del Pionero v5.0
Ejecutamos el programa, nos sale una ventana con un montón de pestañas, seleccionamos la pestaña "Configuración", nos salen todavía más pestañas, seleccionamos la pestaña "JTag" en el cual tengo la siguiente configuración:
*TCK delay: 0 steps
*WaitStart Bits: 1024
*Ignore Windows Verion: Sin activar
*Verify flash writing: Activado (si la quitamos tarda 5 minutos en volcar la flash, pero claro, no te revisa si te lo ha escrito bien)
*Force writing in all blocks: Sin activar (si el bloque que va a escribir coincide con el bloque había anteriormente en la flash del deco, se lo salta)
*Add checksum to the firmware: Sin activar
*Decoder model and main board type: Philips 607x
Hay más opciones que no te deja tocarlos porque se autoconfiguran al elegir el tipo de deco.
Otra cosa, es posible que el programa arranque en inglés, dentro del grupo de pestañas de "Configuración", tiene que haber una que ponga "Language", ahí podéis cambiarlo al Castellano, también está en Catalán, curioso.

3º La prueba de fuego
Ya tenemos casi todo listo, solo nos queda probar a ver que pasa. El deco basta que se quede en stanby(recomiendo que lo apagues de la corriente y lo vuelvas a encender), es posible cuando conectes el cable paralelo al deco, se apague el display, tranqui, no pasa nada, es porque el deco detecta el pc o el JTag. Desde el Pionero, nos vamos a la pestaña "Firmware (JTag)", le damos al botón "CPU Code" y esperamos a ver que pasa. Si te da el siguiente error:

Abriendo LPT1
Reset DCU activado
Estado de la DCU : Run-Test/Idle
----------------------------------------
Cdigo de la CPU (IDCODE) : FFFFFFFF
Cdigo de CPU erroneo! Comprueba que el decodificador est encendido y que el jtag est bien

construido.
----------------------------------------
Reset DCU desactivado
Cerrando LPT1

mal asunto, no hay conexión, tendríamos que revisar todos los pasos anteriores, también el JTag, sobre todo si es casero. En cambio si nos dice:

Abriendo LPT1
Reset DCU activado
Estado de la DCU : Run-Test/Idle
----------------------------------------
Cdigo de la CPU (IDCODE) : 4D407041
Fabricante : STMicroelectronics
Familia : ST20
Variante : STi5512
Revisin : 4
----------------------------------------
Reset DCU desactivado
Cerrando LPT1

genial, tienes contacto con el deco, y ya puedes leer o escribir lo que quieres en tu deco.

4º Hacer un Backup a tu deco
Antes de nada, tenemos que hacerle un Backup a nuestro deco, para ello tenemos que indicarle al programa que dirección tiene que empezar a leer y cuanto a de leer. En la casilla "Address" tenemos que poner la dirección "7FE00000", que es desde donde tiene que empezar a leer, en la casilla "lenght" ponemos "200000", en "Use" tenemos que elegir la opción "File" y le damos luego al botón "Receive". El programa nos abrirá una ventana para elegir el nombre y la ubicación del archivo de la Flash y en 5 minutitos tendremos listo un archivo imagen de la Flash de nuestro deco.
Habrá gente que se preguntará, ¿y la eeprom que pasa? Bueno, eeprom es tres cuartos de lo mismo, pero con otra dirección de la memoria, para ello ponemos en "Address" la dirección "2000" y en "Lenght" el tamaño "1000".
Para mentes inquietas os dejo el mapa de memoria de estos decos por si queréis mirar esa parte de la memoria que no se puede escribir.

Philips DSX-6071
DIR.INICIO – DIR.FINAL - LONGITUD DESCRIPCION TAMAÑO ARCHIVO
0x00002000 – 0x00002FFF - 0x0001000 REGISTOS CONFIGURACION EMI ( 4.096 Bytes - 4 Kb)
0x20000000 – 0x3FFFFFFF - 0x2000000 ESPACIO INTERNO PERIFERICOS ( 536.870.912 Bytes - 524.288 Kb)
0x7FE00000 – 0x7FE0FFFF - 0x0010000 SIN USAR ( 65.536 Bytes - 64 Kb)
0x7FE10000 – 0x7FE7FFFF - 0x0070000 LISTA CANALES ( 458.752 Bytes - 448 Kb)
0x7FE80000 – 0x7FFFFFFF - 0x0180000 FIRMWARE + BOOT LOADER ( 1.572.864 Bytes - 1.536 Kb)
0x7FE00000 - 0x7FFFFFFF - 0x0200000 TODO EL FIRMWARE ( 2.097.152 Bytes - 2.048 Kb)
Nota: en éste model el "Boot loader" está mezclado con el firmware. Hay que tener esto en cuenta

porque si se actuliza de manera incompleta se puede quedar "muerto" y solo se podría recuperar con un OSLink.

Philips DSX-6072
DIR.INICIO – DIR.FINAL - LONGITUD DESCRIPCION TAMAÑO ARCHIVO
0x00002000 – 0x00002FFF - 0x0001000 REGISTOS CONFIGURACION EMI ( 4.096 Bytes - 4 Kb)
0x20000000 – 0x3FFFFFFF - 0x2000000 ESPACIO INTERNO PERIFERICOS ( 536.870.912 Bytes - 524.288 Kb)
0x7FE00000 – 0x7FE0FFFF - 0x0010000 SIN USAR ( 65.536 Bytes - 64 Kb)
0x7FE10000 – 0x7FE7FFFF - 0x0070000 LISTA CANALES ( 458.752 Bytes - 448 Kb)
0x7FE80000 – 0x7FFDFFFF - 0x0160000 FIRMWARE ( 1.441.792 Bytes - 1.408 Kb)
0x7FFE0000 – 0x7FFFFFFF - 0x0020000 BOOT LOADER ( 131.072 Bytes - 128 Kb)
0x7FE00000 - 0x7FFFFFFF - 0x0200000 TODO EL FIRMWARE ( 2.097.152 Bytes - 2.048 Kb)
(Sacado del manual "JTag para Philips DSX-607x WHILIS 2004")

Con esta chuletilla, podríamos leer exactamente sólo parte de la flash que contenga la lista de canales, editarla, y volver a escribirla con la modificaciones que hallamos hecho. Además, este pedazo de programa viene con un editor de canales muy completo, por si queremos añadir canales, colocarlos, borrar canales, etc...

5º Escribir una nueva Flash
Este paso es como el anterior, sólo que en lugar de darle al botón "Recibir" le tenemos que dar al botón "Enviar". Recomiendo encarecidamente que os aseguréis de la dirección de inicio, aseguráos de que es la "7FE00000". Sólo mencionaros que tarda un poquitin, debido a que tiene que verificar cada bloque escrito, saltandose por supuesto los que están en blanco, Tarda unos 10 minutos, podría tardar menos si le quitamos la opción "Verify flash writing", pero que son 5 minutos más comparados con los 105 minutos que tarda por el puerto serie.



Bueno, espero que os sirva de algo e insisto, postear todas vuestras experiencias para mejor este manual.
Muchas gracias a todos y un saludo.

hithorso 27/11/2005 04:05

Muchas gracias por compartir con nosotros el estupendo manual. Ya está añadido a la chincheta sobre jtag y resurreccion de decos.

benja999 16/12/2005 01:40

Éste manual deberia estar más arriba,...

hithorso 16/12/2005 03:08

lo esta beja, esta en la chincheta correspondiente.

novam 19/12/2005 16:14

xhithorso me parecio leer en un post que decias que el dsx 6071 tiene mas memoria que el dsx 6072 y en estas tablas de ambos no consigo entenderlo. ¿Me lo podias explicar?
Gracias anticipadas, un saludo.

hithorso 19/12/2005 18:53

No hay muchoq ue entender, entre que el 6072 tiene el sector 18 bloquedo y dos chips menos de memoria, pues tiene menos capacidad de memoria que un 6071.

http://imagenes.filescenter.com/ver.php/2e87227.bmp

novam 20/12/2005 01:43

Ok gracias por la explicacion y por la molestia de colgar una imagen.
Un saludo.

Edito para aprovechar y te hago una pregunta.
Cuando cambio firmware (en deco libre de mi propiedad) atraves del rs232 usando LookerFlash 1.0 al acabar pongo eeprom a FF, la pregunta es ¿si lo cambio con jtag usando Pionero 5 es conveniente borrar la eeprom al terminar? Te anticipo que sin borrarla todo funciona aparentemente bien. Ah uso hdl.
Gracias.

hithorso 20/12/2005 03:11

Depende. Vamos a ver.
LA eeprom indica al deco la relacción de datos entre los sectores de datos y los de firms. De tal forma que viene a indicar que tal dato pertenece a la sección de antenas de tal sitio y tal lugar.
Si empleas firms donde guarden los datos en diferentes sitios tendras que borrar la eeprom porque no será compatible con el firm anterior. Pero si pones un firm sobre otro que tenias que comparten una misma eeprom, que los lugares donde guardan los datos son los mismos, pues no necesitas borrar la eeprom. Es más, si no cambias los sectores de datos y solo cambias los del firm, cambiaras el firm sin modificar ninguno de los datos que tengas del firm anterior. Podras guardar de esa forma la configuracion del firm anterior en el firm posterior. Pero claro, debes estar muy seguro de que comparten una misma eeprom porque sino el deco ira mal o directamente dejaras el deco muerto y tendras que recuperarlo con oslink o jtag.

novam 20/12/2005 18:41

Ok entendido, para guardar la configuración uso la Service Card que luego cargo en el deco si meto un firmware igual al anterior, si no no la uso. La pregunta iba enfocada por el tema de limpieza del firmware y los posibles conflictos.
Muchas gracias.
Un saludo.


La franja horaria es GMT +2. Ahora son las 02:25.

Powered por vBulletin™ Version 3.8.10
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.
Traducido por vBsoporte - vBulletin en español
ZackYFileS - Foros de Debate