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++
12612 Discussions

Need help about flash programmer

Altera_Forum
Honored Contributor II
1,084 Views

I'm using QuartusII4.2+sp1,NiosII1.1,ByteBlasterII cable, and an EP1C12F324 on my custom board. 

I built a flash programmer design as the "NiosII Flash Programmer user guide" instructs(I use a flash and an EPCS4), then I build my system with this board. 

After every thing is done, I launch the flash programmer and want to program the software and the hardware image into epcs, it tells me that "Unrecognized EPCS device ID: -1". I'm sure that the EPCS and FPGA is OK, 'cause it can config my FPGA when I program the .pof into it. 

What's wrong with my EPCS?? 

 

The following is the message from the Flash programmer: 

<div class='quotetop'>QUOTE </div> 

--- Quote Start ---  

#! /bin/sh# # This file was automatically generated by the Nios II IDE Flash Programmer.# # It will be overwritten when the flash programmer options change.#  

 

cd H:/Year2005/February/Feb21/System_case7/Test_case04/software/System_case7_tes 

t_case04_soft2/Debug 

# Creating .flash file for the FPGA configuration 

$SOPC_KIT_NIOS2/bin/sof2flash --flash=U4 --offset=0x00000000 --epcs --input=H:/Y 

ear2005/February/Feb21/System_case7/Test_case04/Test_case04.sof --output=Test_ca 

se04.flash 

Info: ******************************************************************* 

Info: Running Quartus II Convert_programming_file 

Info: Command: quartus_cpf --no_banner --convert --device=EPCS16 --option=Test_c 

ase04.opt H:/Year2005/February/Feb21/System_case7/Test_case04/Test_case04.sof Te 

st_case04.pof 

Info: Quartus II Convert_programming_file was successful. 0 errors, 0 warnings 

    Info: Processing ended: Wed Jun 08 18:01:31 2005 

    Info: Elapsed time: 00:00:01 

Info: ******************************************************************* 

Info: Running Quartus II Convert_programming_file 

Info: Command: quartus_cpf --no_banner --convert Test_case04.pof Test_case04.rpd 

Info: Quartus II Convert_programming_file was successful. 0 errors, 0 warnings 

    Info: Processing ended: Wed Jun 08 18:01:32 2005 

    Info: Elapsed time: 00:00:01 

WARNING: Default charset GBK not supported, using ISO-8859-1 instead 

# Programming flash with the FPGA configuration 

$SOPC_KIT_NIOS2/bin/nios2-flash-programmer --input=Test_case04.flash --sof=h:/Ye 

ar2005/February/Feb21/System_case7/USB_Buf_Ver01/system/USB_Buf_Ver01.sof --epcs 

Jun 8, 2005 6:01:33 PM - (??) nios2-flash-programmer: Launching Quartus Programm 

er to download: 

  h:/Year2005/February/Feb21/System_case7/USB_Buf_Ver01/system/USB_Buf_Ver01. 

sof 

Unrecognized EPCS device ID: -1 

Jun 8, 2005 6:01:52 PM - (??) nios2-flash-programmer: Error opening target hardw 

are 

Jun 8, 2005 6:01:52 PM - (??) nios2-flash-programmer:    Unable to open flash-de 

vice after successfully communicating  

with target. 

It is likely that you are using a flash-programming FPGA design which 

was not created for your target board. 

 

  In order to program flash, you must first create a purpose-built 

  flash-programming design (i.e. FPGA configuration) and associate it with 

  your particular board.  The Nios development kit is delivered with purpose-bui 

lt 

  flash-programming designs pre-built for several development boards.  If you wi 

sh 

  to program flash on your own board, you must first create a flash-programming 

  design. 

 

  The process of creating a flash-programming design for your board is mostly 

  automated.  From a bash-shell, execute this script: 

 

        mk_target_board --help 

 

  The help-message includes references to other documentation on programming 

  flash and targeting Nios systems to custom board designs. 

- exiting. 

WARNING: Default charset GBK not supported, using ISO-8859-1 instead 

# Creating .flash file for the project 

$SOPC_KIT_NIOS2/bin/elf2flash --flash=U9 --base=0x00400000 --end=0x800000 --rese 

t=0x1000 --input=System_case7_test_case04_soft2.elf --output=cfi_flash_0.flash - 

-boot=$SOPC_KIT_NIOS2/components/altera_nios2/boot_loader_cfi.srec 

WARNING: Default charset GBK not supported, using ISO-8859-1 instead 

# Programming flash with the project 

$SOPC_KIT_NIOS2/bin/nios2-flash-programmer --input=cfi_flash_0.flash --sof=__NO_ 

SOF_PLEASE__ --base=0x00400000 

Jun 8, 2005 6:01:52 PM - (??) nios2-flash-programmer: Input file empty--no data  

to program into flash. Exiting. 

WARNING: Default charset GBK not supported, using ISO-8859-1 instead 

# Creating .flash file for the project 

$SOPC_KIT_NIOS2/bin/elf2flash --flash=U4 --epcs --base=0x0 --end=0x7fffffff --in 

put=System_case7_test_case04_soft2.elf --output=epcs_controller.flash --boot=$SO 

PC_KIT_NIOS2/components/altera_nios2/boot_loader_epcs.srec 

WARNING: Default charset GBK not supported, using ISO-8859-1 instead 

# Programming flash with the project 

$SOPC_KIT_NIOS2/bin/nios2-flash-programmer --input=epcs_controller.flash --sof=_ 

_NO_SOF_PLEASE__ --epcs 

Jun 8, 2005 6:01:53 PM - (??) nios2-flash-programmer: SOF-download skipped. 

Unrecognized EPCS device ID: -1Jun 8, 2005 6:02:01 PM - (??) nios2-flash-program 

mer: Error opening target hardware 

 

Jun 8, 2005 6:02:01 PM - (??) nios2-flash-programmer:    Unable to open flash-de 

vice after successfully communicating  

with target. 

It is likely that you are using a flash-programming FPGA design which 

was not created for your target board. 

 

  In order to program flash, you must first create a purpose-built 

  flash-programming design (i.e. FPGA configuration) and associate it with 

  your particular board.  The Nios development kit is delivered with purpose-bui 

lt 

  flash-programming designs pre-built for several development boards.  If you wi 

sh 

  to program flash on your own board, you must first create a flash-programming 

  design. 

 

  The process of creating a flash-programming design for your board is mostly 

  automated.  From a bash-shell, execute this script: 

 

        mk_target_board --help 

 

  The help-message includes references to other documentation on programming 

  flash and targeting Nios systems to custom board designs. 

- exiting. 

WARNING: Default charset GBK not supported, using ISO-8859-1 instead[/b] 

--- Quote End ---  

0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
376 Views

RM, 

 

The "-1" return value means that the design cannot read the EPCS&#39;s silicon ID. 

 

Does the memtest software example (for EPCS) pass? If so, then you need to double check the command line used for &#39;mk_target_board&#39;, as the problem is likely with the SOF that this procedure created. 

 

Also, if at all possible, I&#39;d recommend updating/upgrading to Quartus II/Nios II 5.0. 

 

Cheers, 

 

- slacker
0 Kudos
Altera_Forum
Honored Contributor II
376 Views

I solved this problem. 

Originaly, in the mk_target_board design, I changed the asmi component into the epcs_controller, 

&#39;cause in NiosII the epcs_controller supersede the asmi component. Maybe I did not change the  

base address of epcs_controller to the asmi&#39;s, or something else. Then I kept the asmi component 

and did not use the epcs_controller. 

When I fixed this bug, new problem emerged. The flash programmer told me that it cannot synchonize with the target device. 

In previous posts, someone has mentioned that increasing the clk frequency may solve this problem. Then I upgrade the clk 

from 48M to 80M, then it works. 

 

Thank u.
0 Kudos
Altera_Forum
Honored Contributor II
376 Views

Which flash are you using ?. Did you only change the PLL on your flash programmer target board, or did you change it also in the SOPC builder clock frequency ?.

0 Kudos
Reply