Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
17255 Discussions

NIOSII Boot Configuration with EPCS and JTAG-SFL

Altera_Forum
Honored Contributor II
5,278 Views

Hello, 

 

i have a problem with configuring and booting my system from an epcs device. The topic is more about the correct design-flow, so i think this should be the right sub-fourm. 

 

the test-system 

The hardware i am experimenting on is a DE0 board from Terasic. It has a EP3C16 FPGA with an EPCS16 Flash connected. 

I generated an QSYS design with Clock Source, NiosIIe, On-Chip RAM, RS232 UART, System ID, Timer, JTAG UART, Parallel I/O, and EPCS Serial Flash Controller. 

The reset vector is set to the EPCS controller, the exception vector is set to the ram. 

The software consists of a RS232 console that controls on-board LEDs with the parallel I/O. 

 

what does work 

I can configure the FPGA via JTAG or via AS (after programming the EPCS device via JTAG SFL), both works well. This means only FPGA configuration, no software loading. 

In Eclipse i can download the software via JTAG and run it. Principally all works. 

 

what does not work 

The next step i want to learn is how to load software from the epcs device. I am still working for some days and it does not work. 

 

workflow 

I build the software in eclipse and use "make mem_init_generate" to build a hex-file from the elf-file. 

In Quartus i try to read the hex-file within the "Convert Programming File" - dialog. 

The generation of the JTAG Indirect Configuration File fails with the message "Data in HEX File overlaps between data blocks at address 8 and address 0". 

 

Here i found a description of a nearly similar problem: .altera.com/support/kdb/solutions/rd09282011_907.html 

But the solution does not work, maybe because its Quatrus 11.0 and i am using 12.0. 

 

my question 

Can anyone tell me a workflow for programming FPGA configuration data and software into a EPCS device via JTAG SFL? 

 

best regards, 

lodentoni
0 Kudos
25 Replies
Altera_Forum
Honored Contributor II
533 Views

Fortunately there are several workflows, I'm glad you found someone that works! I'm sorry we couldn't find the cause of your problem with the Nios flash programmer, I don't really like unsolved mysteries ;) But it's no use spending hours on it if you found another solution that works. Both flows can be entirely automatized with command line scripts, so I don't think there is any advantage or disadvantage of using one over the other.

0 Kudos
Altera_Forum
Honored Contributor II
533 Views

Hello, 

I think there is a bug in Q12, 13. I have been programming with Q7.2.. Q9.1 into a Cyclone II with an EPCS connected without any problems. Now with Q12, Q13 and an Arria V, the exact same flow yields the EPCS registers not being found - in both Eclipse and using command line nios-2-flash-programmer calls. I also removed the Jtag Uart, without any luck. I think Altera need to fix this. I have wasted a week on it.  

Bart
0 Kudos
Altera_Forum
Honored Contributor II
533 Views

 

--- Quote Start ---  

Hello, 

I think there is a bug in Q12, 13. I have been programming with Q7.2.. Q9.1 into a Cyclone II with an EPCS connected without any problems. Now with Q12, Q13 and an Arria V, the exact same flow yields the EPCS registers not being found - in both Eclipse and using command line nios-2-flash-programmer calls. I also removed the Jtag Uart, without any luck. I think Altera need to fix this. I have wasted a week on it.  

Bart 

--- Quote End ---  

 

Is this bug fixed in 13.1?
0 Kudos
Altera_Forum
Honored Contributor II
533 Views

 

--- Quote Start ---  

Hello, 

I think there is a bug in Q12, 13. I have been programming with Q7.2.. Q9.1 into a Cyclone II with an EPCS connected without any problems. Now with Q12, Q13 and an Arria V, the exact same flow yields the EPCS registers not being found - in both Eclipse and using command line nios-2-flash-programmer calls. I also removed the Jtag Uart, without any luck. I think Altera need to fix this. I have wasted a week on it.  

Bart 

--- Quote End ---  

 

This might help: http://www.altera.com/support/kdb/solutions/rd11112013_614.html
0 Kudos
Altera_Forum
Honored Contributor II
533 Views

Hello, 

 

Just an update to this post. 

I am able to get the NIOS flash loader work on Q12.0 sp2. Initially I didn' export the EPCS pins to the top level. You need to export the EPCS pins and assign the pins using Pin Planner. Also change the pin settings to Regular IO in Device and Pin options--> dual purpose pins--> use as regular IO's. This resolved my problem of EPCS registers not found error.  

 

Regards
0 Kudos
Reply