Forum Discussion
Altera_Forum
Honored Contributor
16 years agoHi there,
Sorry for the late reply...internet died for a few days. The first possible problem could be communication. Different chips have different pin specs, meaning the JTAG lines may need extra pull downs (or even pull ups in some cases), I would check your chips datasheet for that. If you use the JTAG chain debugger in Quartus 9.0 programmer, you can scan the chain and it'll tell you the IDcode its read from the chip - which is useful for showing any errors or bad connections. A 0xFFFFFFFF means the TDO line is held high, 0's means its low, and if the IDcode changes every time you scan then there is some clock skew or noise on the JTAG lines. The second problem could simply be Quartus programmer not behaving. I have tested my USB blaster with various non-Altera IC's and there seems to be two ways of doing it. The first is as you have tried, adding a device by its BSDL file,which contains the ID code of the device, its instruction length and various other chip-specific things. The second method is similar, but involves you adding the above information manually. This is the only way I have succeeded with getting the USB blaster to communicate with other vendors' devices. On the left hand side, click 'Add device', scroll down the 'device family' column to 'User defined' (second from the bottom in Quartus programmer 9.0). Once that is highlighted, on the right hand should be a list of any devices you have previously added. Click 'new' on the right, then give it a name, the instructon length and ID code. I have included a *.jpg file to show what it should look like for a generic device. - note: the IDcode is given as a hexadecimal number, whereas in the BSDL file, its binary... for your device: Instruction length = 5 IDcode = 0x00001197 IDcode mask = 0xFFFFFFFF If the above doesn't work, try the mask 0x0000FFFF - that is if your chip has a different 'version' to the one in the BSDL file - that means it just checks the ID of the device, and the manufacturer. All the above information is in the BSDL file, the link for which you provided. If all goes to plan, next time you scan, the name you gave the chip should pop up in Quartus, then you can add your jam file. I assume the SVF2JAM will work with maxim's SVF files since they suggested its use...it doesn't like lattice, or even some Xilinx SVF generated files so I had to knock up my own utility. Hope that helps, 9/10 times its a hardware error, either noise on the lines, wrong pull down resistors, or a broken PCB trace, but software problems are just as annoying. Thankfully, Quartus programmer seems pretty stable to me. Scott.