Bonjour a tous,
J'ai pour mission de tester les sorties d'un FPGA qui sera monté sur un carte hybride. Plus precisement il est question de tester l'intégrité des "wire bonds" qui connecteront les pads du FPGA a la carte hybride.
Il existe malgré tout une importante contrainte : il n'est pas possible de programmer le FPGA.
Nous avons donc pensé a utiliser le circuit JTAG/BST disponible pour interagir sur les pins du CI et ainsi les activer et les désactiver a la demande.
Avant de continuer, j'ai une premiere question : est-ce vraiment possible, ou nous nous sommes completement emballés ?
J'ai donc acheté un FPGA de test, un Cyclone I de Altera (ce n'est pas le FPGA qu'il faudra tester au final mais c'est pour me faire la main sur un circuit moins cher) que j'ai connecté a un petit ATmega168 et j'ai commencé mes tests.
Je manipule normalement la machine a états (le TAP Controller) sans trop de problemes (j'arrive a recuperer les données du IDCODE register et du USERCODE register, je suppose donc que mon code fonctionne) mais j'ai l'impression que je n'arrive pas a modifier le Boundary Scan Register quand il est en mode PRELOAD.
Par exemple, si j'essaie de lui envoyer 339 "0" (c'est la taille du BSR) et que je lis le registre pour verifier j'obtiens qqc comme :
Je vous ai joint le code du ATmega, sauriez vous pourquoi ca ne fonctionne pas ? Je fais tout ce qu'il faut ?Code:110111100111100110101000110110111111111110111111111111100110111111110110101111110011111011001111111010110011010011011010110101101110000001110111101111011011010011101011111110011101111110110111111101111101110001111111110111101111111111111100110100111111110100111101111111111111101111111101101101100010101101101101111111111110111111100110101
Derniere chose, en lisant le fichier BSDL, je ne comprends pas quels bits il faut modifier pour mettre une sortie HIGH ou LOW. A quoi correspondent les bits "Control" ?
Merci d'avance a tous ceux qui prendront le temps de lire de mon message.
Datasheet du FPGA (EP1C3T144)
BSDL File
-----