Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20789 Discussions

Cyclone III: Cannot Access JTAG Chain

Altera_Forum
Honored Contributor II
1,142 Views

Hi guys, 

 

I am new to FPGAs and I have been playing with my Cyclone III. I was experimenting different sample codes such as the power measurement code and everything worked fine. When I tried to upload some new code however, the programmer shows me the "cannot access JTAG chain" error. I don't know why this is happening as I have hardly touched my dev board. I have once taken off the lid for the JP5 pin and all the LEDs went off, but as soon as I put the lid back on, the LEDs came back alive as before. Does this have anything to do with it? Other than that, I really don't know why this is happening. 

 

Thanks!
0 Kudos
4 Replies
Altera_Forum
Honored Contributor II
414 Views

Nevermind. I also put the lid on the JP8 pin and shut off the USB-Blaster enable. It's good again!

0 Kudos
Altera_Forum
Honored Contributor II
414 Views

I wonder if you (or anyone) could elaborate a bit more on this problem. I have a Cyclone III Development Board that is giving me the "Can't Access JTAG Chain" problem when I try to program it. I am simply trying to program it with the "my first FPGA" SOF file over the USB Blaster connection. I have tried both JTAG and Passive Serial modes. In Passive Serial mode I get a different error: "Unable to reset device before configuration" 

 

There is nothing in any of the documentation I've seen so far that gives any hints as to what to try or check when this kind of problem happens, so I'm at a bit of a loss. 

 

My board does not have anything on it with a designator that starts with "JP" so I'm not sure if we are using the same board or not. I configured the SW3 and SW1 switches exactly as specified in the documentation that came with the board. There are jumpers on J6 and J7, right where they were when I unpacked the board. There are no other jumpers on the board. 

 

I see nothing on my board that says "USB-Blaster enable". However SW3 has a switch designated as "MAX_ENABLE" and there is text above SW3 that says "EMB BLASTER". This switch is set to "1". 

 

Anyone have any idea why the USB Baster refuses to cooperate? 

Thanks, 

Lynwood Hines
0 Kudos
Altera_Forum
Honored Contributor II
414 Views

I have attached a screen shot showing information relevant to this problem. The computer management window shows that the Altera USB-Blaster is installed with no problems detected. The Quartus II window shows the "Can't access JTAG chain" message. The Programmer window shows what I was trying to program the Cyclone III with. And finally the JTAG Chain Debugger shows several error messages, most notably "No device detected". Unfortunately it's suggestions for what might be wrong are not helpful since I am working with Altera's Cyclone III Development Board and not a custom board. Also the development board appears to be working fine; it is doing the Cylone scanning thing with it's LEDs as an indication that it is working properly. 

 

I am making an assumption that a USB cable is the only connection I need between my computer and the development board.
0 Kudos
Altera_Forum
Honored Contributor II
414 Views

I found a solution to my problem. I can program the Cyclone III Development Board after setting SW3 (JTAG Control DIP Switch) to 1xx0. I think there is a problem with confusion over the mapping between open/closed, on/off, and 0/1, both on the board and in the documentation. These terms are used differently in different places, which is very confusing. 

 

Even worse, the settings for SW3 stated in the user's manual are just plain wrong. It says to set SW3 to on/off/off/on, which could be interpreted as either 1001 (traditional) or (0110) (active low logic). The board is labeled with "0" and "1" only so you have to guess which way it is. However, both 1001 and 0110 are wrong, and neither will let you program the board. Only 1xx0 works. Based on the fact that this configuration works and other markings on the board, I conclude that "0" means "on" for this particular switch bank, because this interpretation is consistent with SW3.1 == 1 and labeled as "FPGA_BYPASS" (no, we do not want to bypass the FPGA) and SW3.4 == 0 and labeled as "MAX_ENABLE" (yes, I want the USB-Blaster enabled). 

 

On SW1 however it appears that "0" means "off". The user manual says that the "MAX0" switch (SW1.5) must be set to "1" for the USB-Blaster to be enabled. Although as it turns out the position of this switch doesn't matter. As long as SW3 is set correctly the position of SW1.5 makes no difference. 

 

I hope the poor quality of documentation associated with this board isn't indicative of Altera's overall quality. I guess I'm going to find out as my project requires Altera FPGAs. I really hate wasting my time debugging bad documents.
0 Kudos
Reply