Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12604 Discussions

boot NIOS from EPCS flash and use SDRAM to store instructions and data

Altera_Forum
Honored Contributor II
3,032 Views

Hi! In the qsys I have: 

1. Clock Source 

2. On-Chip Memory 

3. Nios II Processor 

4. System ID 

5. JTAG UART 

6. EPCS Serial Flash Controller 

7. PIO 

8. SDRAM Controller 

 

I want to use SDRAM (MT48LC4M32B2) to store instructions and data for NIOS application. In the NIOS II Processor properties reset vector is set to base address of EPCS controller. Exceptions vector is set to base address to SDRAM. In the NIOS EDS for Eclipce I can debug my application, it works. But in the NIOS flash programmer error occur: 

 

"Error: Error code: 4 for command: $SOPC_KIT_NIOS2/bin/nios2-flash-programmer "D:/Work/QuartusProjects/tests/test2/flash/test2_epcs_flash.flash" --base=0x2003800 --epcs --sidp=0x2004010 --id=0x0 --timestamp=1359654107 --device=1 --instance=0 '--cable=USB-Blaster on localhost [USB-0]' --program" 

 

What I did wrong? Thank you
0 Kudos
29 Replies
Altera_Forum
Honored Contributor II
191 Views

Could you access the EPCS from Nios? Try to write/read the EPCS with the alt_flash functions. 

 

You could verify if the firmware was flashed correct to EPCS. The firmware follows immediately after the fpga design in the EPCS. 

To get the start address in EPCS look at the firmware.flash. Its similar a srec file where the first S1, S2 or S3 record contains the start address. 

 

Reading from EPCS: 

nios2-flash-programmer --cable='USB-Blaster [USB-0]' --epcs --base=0x21000 --read-bytes <start_address_firmware>+<size_of_nios_firmware> --read epcs.out 

 

Jens
0 Kudos
Altera_Forum
Honored Contributor II
191 Views

I'll try to read/write the EPCS and write memory test of SDRAM. Thank you

0 Kudos
Altera_Forum
Honored Contributor II
191 Views

Test of SDRAM and Flash from NIOS application is ok! I write to all bytes 0xAA then read and verify it. Then I write 0x55 and verify it. In both devices it works good. But it still don't boot from flash after power on :-(

0 Kudos
Altera_Forum
Honored Contributor II
191 Views

anybody can help me?

0 Kudos
Altera_Forum
Honored Contributor II
191 Views

Could you attach your project as Quartus archive (qar file)?

0 Kudos
Altera_Forum
Honored Contributor II
191 Views

I attached zip file with my project, I don't now, how include software project to qar file, sorry

0 Kudos
Altera_Forum
Honored Contributor II
191 Views

I had a look at your design. Could you try to set the configuration device in the device and pin options? (see attachment) Which EPCS you are using? 

Do you need compressed bitstreams. (I'm using Stratix4 with compressed bitstream in a EPCS64 with no boot problems)
0 Kudos
Altera_Forum
Honored Contributor II
191 Views

In the forum is a similar thead for booting from EPCS with Cyclone3 

 

http://www.alteraforum.com/forum/showthread.php?t=6744 

 

may you have a look ...
0 Kudos
Altera_Forum
Honored Contributor II
191 Views

thank you, maybe I make a mistake...I don't know.

0 Kudos
Reply