Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
Announcements
Need Forum Guidance? Click here

Search our FPGA Knowledge Articles here.
19104 Discussions

Cyclone II / NIOS II alt_flash_open_dev("/dev/epcs_controller") issues (EPCQ)

Altium_user
Beginner
388 Views

Good afternoon,

Quartus 13.0.1 Build 232, (EP2C20), Windows 10, 64BIT (working on legacy project..)

I'm struggling with a Flash Memory upgrade. I've been using EPCQ16 for a while now, and without issue. I've decided to upgrade to EPCQ32, and everything does what it's supposed to, apart from the firmware, I cannot get alt_flash_open_dev("/dev/epcs_controller") to return a handle so that I can perform alt_read_flash() successfully.

 

My firmware hangs at this point in the code.

 

I would like to know if anyone has any thoughts that will help me to fix this.

 

Everything else works. Quite frustrating.

 

Thanks,

M

0 Kudos
7 Replies
NurAiman_M_Intel
Employee
364 Views

Hi,


Thank you for contacting Intel community.

Do you mean that Nios II Processor Flash controller not find the EPCS registers and fail when trying to program the flash?


If yes, please refer to our KDB below:

https://www.intel.com/content/www/us/en/programmable/support/support-resources/knowledge-base/soluti...


Regards,

Aiman



Altium_user
Beginner
350 Views

Hi NurAiman_M_Intel,

 

Thanks for answering my post.

 

Using a EPCQ/EPCS16, this works fine and has done for years. The handle returned from the function (alt_flash_open_dev("/dev/epcs_controller")) gives reference to a memory address in the SRAM (because I've instantiatied a variable in SDRAM); data sheet states that as long as the returned value isn't zero, then the operation has been successful.

 

Using the EPCQ32, (same footprint and pinout [using ASx1 mode and not ASx4]), the point where I can step the code to the line where alt_flash_open_dev("/dev/epcs_controller") is, returns '0x0', which is indicative of failure to open/read/communicate device. I'm going to scope it up to see if there is actually a bit stream fired off at this point to see if the NIOS II processor actually attempts a transaction.

 

In Quartus I've instructed the AS device to be EPCQ32, and not Auto.

 

I'm totally stumped! The device is brand new, I can upload the sof to it without issue, I can erase the IC though NIOS II flash programmer, so I know something is transacting, just when it comes to the firmware trying to interact with the Flash IC, I can't perform the instruction because it hangs..

 

Thank you for any help.

 

Regards,

Matthew

SyafieqS
Moderator
306 Views

Matthew,


Is this issue occur in latest version of Quartus for you supported device?

Can you use latest version I believe this should be fixed.


Altium_user
Beginner
286 Views

Good Morning SyafieqS_Intel,

 

The versions of Quartus/NIOS that I can use is pretty limited because of applicability to device - I have to work with Cyclone II compatible Quartus/NIOS, which ceases with Quartus/NIOS > v13.1.

 

I would have to try other versions to see what happens, but I'm a little concerend that this wouldn't work because support for the FPGA wouldn't be there.

 

Anything above the support level would mean that spurious behaviour may occur.

 

I've recently downloaded v21.1, so I ought to try that.

 

Thanks,

M

SyafieqS
Moderator
251 Views

Matthew.


May I know if there is any update?


Altium_user
Beginner
240 Views

Hi SyafieqS_Intel,

 

As yet, I've no managed to try the suggestion. I'll be revisiting this issue in the coming weeks. I have a feeling using the latest issue Quartus/NIOS won't help because of compatibility issues with Cyclone II.

 

From what I've come to understand, v21.1 has the the capability to drive legacy stuff, but as yet, haven't had the time to dedicate to this problem.

 

I'll feedback when I can, so hopefully I can post a resolution!

 

Thanks,
M

SyafieqS
Moderator
193 Views

Hi Matthew,


I will put this to close pending since you need more time to work on this. I now transition this thread to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you.


Reply