Debugging software in an ACEX device with Nios 32 via JTAG

Hi,

I have been debugging a software application running in an Altera APEX device with Nios 32 (including OCI-Core) via JTAG with no problem at all. Now, I am trying to do the same with an ACEX (EP1K100FC256-2) with no success. The problem seems to be when the debugger tries to connect to the remote target via JTAG. After issuing a "nios-debug" command under SOPC Builder shell I get the following error: "mdi error: found 0 devices instead of 1".

It seems as the "nios-debug" script supplied by Altera doesn't recognize ACEX devices, but not quite sure about.

Any idea? What is more, any of you have ever debugged software via JTAG with an ACEX?

Thank you very much in advance.

Joe

Reply to
Joe Sabater
Loading thread data ...

Hi Joe,

Using an ACEX device is the cause of this issue. The OCI debug core (via JTAG) relies on some enhanced connectivity to JTAG implemented with APEX (and subsequent) FPGA families. The same limitation applies for use of the SignalTap on-chip logic analyzer (in fact, the SignalTap app note lists which device families can be used). Going back to the Nios kit, this means that the older device families that Nios supports (ACEX 1K & FLEX 10KE) will not support the OCI core via JTAG.

Because of your report I put in a request that we provide a more explicit warning (or error) message in SOPC Builder if you try to activate OCI and are targeting FLEX or ACEX (in addition to updating relevant documentation). As it is now, I noticed that there are a number of warning messages in Quartus that say that the OCI logic is being synthesized away because of this device limitation -- so this is really the only warning of this limitation.

In Nios versions prior to 3.0, we had a different debug solution that operated over serial port rather than JTAG. While I don't recommend going backwards in terms of Nios CPU version, if its absolutely essential that you use the GDB debugger with your ACEX device, you might consider (temporarily) going back to Nios v2.2 to use the non-JTAG debugging... this method operates over UART, and therefore does not require the special JTAG enhancements which came out after ACEX. If its possible to debug with your APEX device and then move to a final test of your ACEX-based product with OCI turned off, this would be the easiest solution.

Jesse Kempa Altera Corp. jkempa at altera dot com

Reply to
Jesse Kempa

Ooops!

Just wanted to correct myself here- in Nios 3.0 (and later), you *can* use the old UART-based debug solution, allowing the use of GDB/Insight debugging in Flex & Acex-based Nios designs. The newer device families allow use of the OCI (JTAG-based) debug core as noted above, but the older devices can still be debugged using the serial port.

Thanks to Mr. Sabater for pointing this out.

Jesse Kempa Altera Corp. jkempa at altera dot com

Reply to
Jesse Kempa

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.