Forum Discussion

SThor8's avatar
SThor8
Icon for Occasional Contributor rankOccasional Contributor
5 years ago

Error: s0: Error during execution of "{C:/intelfpga/20.1/quartus/../nios2eds/Nios II Command Shell.b

Hi

Windows 10 Pro
Version 2004
OS buid 19041.330

Quartus prime version 20.1 Build 711 standard edition

The platform designer generates the following error.

Error: s0: Error during execution of "{C:/intelfpga/20.1/quartus/../nios2eds/Nios II Command Shell.bat} make all 2>> stderr.txt": child process exited abnormally

When the platform designer tries to generate HDL code

I have tried to both switch on and off the “Windows Subsystem for Linux” according to
https://www.intel.com/content/altera-www/global/en_us/index/support/support-resources/knowledge-base/tools/2018/error--s0--error-during-execution-of---c--intelfpga-xx-x-quartus.html

but no luck (seems odd to switch off “Windows Subsystem for Linux” when the bat file Nios II Command Shell.bat is using wsl).

I can from a command prompt execute the bat file (“Windows Subsystem for Linux” on)

C:\intelFPGA\20.1\nios2eds>
C:\intelFPGA\20.1\nios2eds>"Nios II Command Shell.bat"
------------------------------------------------
Altera Nios2 Command Shell

Version 20.1, Build 711
------------------------------------------------
stefan@DESKTOP-MH7IPN4:/mnt/c/intelFPGA/20.1/nios2eds$ exit
exit

C:\intelFPGA\20.1\nios2eds>

But the platform designer can not execute it, any ideas ?

Regards

Info: p0: "ddr3" instantiated altera_mem_if_ddr3_phy_core "p0"
Info: m0: "ddr3" instantiated altera_mem_if_ddr3_afi_mux "m0"
Error: s0: Error during execution of "{C:/intelfpga/20.1/quartus/../nios2eds/Nios II Command Shell.bat} make all 2>> stderr.txt": child process exited abnormally
Error: s0: Execution of command "{C:/intelfpga/20.1/quartus/../nios2eds/Nios II Command Shell.bat} make all 2>> stderr.txt" failed
Error: s0: /mnt/c/intelfpga/20.1/quartus/bin64/uniphy_mcc.exe -ac_code sequencer_mc/ac_rom.s -inst_code sequencer_mc/inst_rom.s -ac_rom ../system_ddr3_s0_AC_ROM.hex -inst_rom ../system_ddr3_s0_inst_ROM.hex -header sequencer/sequencer_auto.h -vheader ../sequencer_auto_h.sv -ac_rom_init sequencer/sequencer_auto_ac_init.c -inst_rom_init sequencer/sequencer_auto_inst_init.c -DAC_ROM_USER_ADD_0=0_0000_0000_0000 -DAC_ROM_USER_ADD_1=0_0000_0000_1000 -DAC_ROM_MR0=0001000110001 -DAC_ROM_MR0_CALIB= -DAC_ROM_MR0_DLL_RESET=0001100110000 -DAC_ROM_MR1=0000001000100 -DAC_ROM_MR1_OCD_ENABLE= -DAC_ROM_MR2=0000000001000 -DAC_ROM_MR3=0000000000000 -DAC_ROM_MR0_MIRR=0001001001001 -DAC_ROM_MR0_DLL_RESET_MIRR=0001011001000 -DAC_ROM_MR1_MIRR=0000000100100 -DAC_ROM_MR2_MIRR=0000000010000 -DAC_ROM_MR3_MIRR=0000000000000 -DQUARTER_RATE=0 -DHALF_RATE=1 -DFULL_RATE=0 -DNON_DES_CAL=0 -DAP_MODE=0 -DGUARANTEED_READ_BRINGUP_TEST=0 -DMEM_ADDR_WIDTH=13 -DHARD_PHY=0
Error: s0: UniPHY Sequencer Microcode Compiler
Error: s0: Copyright (C) 2020  Intel Corporation. All rights reserved.
Error: s0: Info: Reading sequencer_mc/ac_rom.s ...
Error: s0: Info: Reading sequencer_mc/inst_rom.s ...

Is it possible to get the content from the stderr.txt files ?

47 Replies

  • KennyT_altera's avatar
    KennyT_altera
    Icon for Super Contributor rankSuper Contributor

    have you done the steps below?


    1) uninstall Ubuntu* 18.04 (if you have one)

    2) uninstall wsl

    3) re-install wsl

    4) download latest Ubuntu 18.04 from Microsoft Shop & install it

    5) execute following on Ubuntu shell :

    sudo apt-get update

    sudo apt install wsl

    sudo apt install dos2unix

    sudo apt install make

    sudo apt-get upgrade


    • FilipMiler's avatar
      FilipMiler
      Icon for New Contributor rankNew Contributor

      Yes, there is clean installation of WSL 1 (without update), Ubuntu 18.04 LTS and the linux packages (upgraded).

      I'm suspecting some issue with nios2-elf-gcc.exe which is used for compiling the alt_dchache_flush_all.c

  • KennyT_altera's avatar
    KennyT_altera
    Icon for Super Contributor rankSuper Contributor

    When you mention without update, did you work on the below?

    sudo apt-get update

    sudo apt install wsl

    sudo apt install dos2unix

    sudo apt install make

    sudo apt-get upgrade


    This is an important steps to follow.


    • Kaka_lq's avatar
      Kaka_lq
      Icon for New Contributor rankNew Contributor

      Hello,

      I met the same problem,

      uname -r return 4.4.0-19041-Microsoft.

      I followed:

      1) uninstall Ubuntu* 18.04 (if you have one)

      2) uninstall wsl

      3) re-install wsl

      4) download latest Ubuntu 18.04 from Microsoft Shop & install it

      5) execute following on Ubuntu shell :

      sudo apt-get update

      sudo apt install wsl

      sudo apt install dos2unix

      sudo apt install make

      sudo apt-get upgrade

      But not helpful.

      The error still exist.

      Error: s0: Error during execution of "{C:/intelfpga_lite/20.1/quartus/../nios2eds/Nios II Command Shell.bat} make all 2>> stderr.txt": child process exited abnormally
      Error: s0: Execution of command "{C:/intelfpga_lite/20.1/quartus/../nios2eds/Nios II Command Shell.bat} make all 2>> stderr.txt" failed
      Error: s0: /mnt/c/intelfpga_lite/20.1/quartus/bin64/uniphy_mcc.exe -ac_code sequencer_mc/ac_rom.s -inst_code sequencer_mc/inst_rom.s -ac_rom ../q_sys_mem_if_ddr3_emif_0_s0_AC_ROM.hex -inst_rom ../q_sys_mem_if_ddr3_emif_0_s0_inst_ROM.hex -header sequencer/sequencer_auto.h -vheader ../sequencer_auto_h.sv -ac_rom_init sequencer/sequencer_auto_ac_init.c -inst_rom_init sequencer/sequencer_auto_inst_init.c -DAC_ROM_USER_ADD_0=0_0000_0000_0000 -DAC_ROM_USER_ADD_1=0_0000_0000_1000 -DAC_ROM_MR0=0001000010001 -DAC_ROM_MR0_CALIB= -DAC_ROM_MR0_DLL_RESET=0001100010000 -DAC_ROM_MR1=0000000000000 -DAC_ROM_MR1_OCD_ENABLE= -DAC_ROM_MR2=0000000000000 -DAC_ROM_MR3=0000000000000 -DAC_ROM_MR0_MIRR=0001000001001 -DAC_ROM_MR0_DLL_RESET_MIRR=0001010001000 -DAC_ROM_MR1_MIRR=0000000000000 -DAC_ROM_MR2_MIRR=0000000000000 -DAC_ROM_MR3_MIRR=0000000000000 -DQUARTER_RATE=0 -DHALF_RATE=1 -DFULL_RATE=0 -DNON_DES_CAL=0 -DAP_MODE=0 -DGUARANTEED_READ_BRINGUP_TEST=0 -DMEM_ADDR_WIDTH=13 -DHARD_PHY=0
      Error: s0: UniPHY Sequencer Microcode Compiler
      Error: s0: Copyright (C) 2020 Intel Corporation. All rights reserved.
      Error: s0: Info: Reading sequencer_mc/ac_rom.s ...
      Error: s0: Info: Reading sequencer_mc/inst_rom.s ...
      Error: s0: Info: Writing ../q_sys_mem_if_ddr3_emif_0_s0_AC_ROM.hex ...
      Error: s0: Info: Writing ../q_sys_mem_if_ddr3_emif_0_s0_inst_ROM.hex ...
      Error: s0: Info: Writing sequencer/sequencer_auto_ac_init.c ...
      Error: s0: Info: Writing sequencer/sequencer_auto_inst_init.c ...
      Error: s0: Info: Writing sequencer/sequencer_auto.h ...
      Error: s0: Info: Writing sequencer/sequencer_auto.h ...
      Error: s0: Info: Writing ../sequencer_auto_h.sv ...
      Error: s0: Info: Microcode compilation successful
      Error: s0: /mnt/c/intelfpga_lite/20.1/quartus/../nios2eds/sdk2/bin/nios2-bsp hal sequencer_bsp .. --default_sections_mapping sequencer_mem --use_bootloader DONT_CHANGE
      Error: s0: nios2-bsp: Using /mnt/c/intelfpga_lite/20.1/nios2eds/sdk2/bin/bsp-set-defaults.tcl to set system-dependent settings.
      Error: s0: nios2-bsp: Updating existing BSP because sequencer_bsp/settings.bsp exists.
      Error: s0: Makefile:18: recipe for target 'setup' failed
      Error: s0: child process exited abnormally
      Error: s0: Cannot find sequencer/sequencer.elf
      Error: s0: An error occurred
      while executing
      "error "An error occurred""
      (procedure "_error" line
      invoked from within
      "_error "Cannot find $seq_file""
      ("if" then script line 2)
      invoked from within
      "if {[file exists $seq_file] == 0} {
      _error "Cannot find $seq_file"
      }"
      (procedure "alt_mem_if::util::seq_mem_size::get_max_memory_usage" line 14)
      invoked from within
      "alt_mem_if::util::seq_mem_size::get_max_memory_usage [file join "sequencer" "sequencer.elf""
      invoked from within
      "set calc_mem_size [alt_mem_if::util::seq_mem_size::get_max_memory_usage [file join "sequencer" "sequencer.elf"]]"
      ("if" then script line 2)
      invoked from within
      "if { !$do_only_rw_mgr_mc && !($bfm_mode || $hps_mode)} {
      set calc_mem_size [alt_mem_if::util::seq_mem_size::get_max_memory_usage [file join "sequenc..."
      (procedure "generate_qsys_sequencer_sw" line 943)
      invoked from within
      "generate_qsys_sequencer_sw $prepend_str $protocol $pre_compile_dir $fileset $inhdl_dir $rdimm $lrdimm 0 0 $nios_hex_file_name $ac_rom_init_file_name ..."
      invoked from within
      "set seq_mem_size_list [generate_qsys_sequencer_sw $prepend_str $protocol $pre_compile_dir $fileset $inhdl_dir $rdimm $lrdimm 0 0 $nios_hex_file_name ..."
      ("if" else script line 2)
      invoked from within
      "if {[::alt_mem_if::util::qini::qini_value alt_mem_if_seq_size_request 0] > 0} {
      set seq_mem_size [::alt_mem_if::util::qini::qini_value alt_mem_if_se..."
      (procedure "alt_mem_if::gen::uniphy_gen::generate_qsys_sequencer" line 238)
      invoked from within
      "alt_mem_if::gen::uniphy_gen::generate_qsys_sequencer "${name}" $protocol $tmpdir $fileset {}"
      invoked from within
      "set qsys_sequencer_files_list [alt_mem_if::gen::uniphy_gen::generate_qsys_sequencer "${name}" $protocol $tmpdir $fileset {}]"
      (procedure "alt_mem_if::gen::uniphy_gen::generate_sequencer_files" line 3)
      invoked from within
      "alt_mem_if::gen::uniphy_gen::generate_sequencer_files $name "DDR3" $tmpdir QUARTUS_SYNTH"
      invoked from within
      "foreach generated_file [alt_mem_if::gen::uniphy_gen::generate_sequencer_files $name "DDR3" $tmpdir QUARTUS_SYNTH] {
      set file_name [file tail $genera..."
      (procedure "generate_synth" line
      invoked from within
      "generate_synth q_sys_mem_if_ddr3_emif_0_s0"
      Info: s0: "mem_if_ddr3_emif_0" instantiated altera_mem_if_ddr3_qseq "s0"
      Error: Generation stopped, 191 or more modules remaining
      Info: q_sys: Done "q_sys" with 75 modules, 192 files
      Error: qsys-generate failed with exit code 1: 23 Errors, 2 Warnings
      Info: Finished: Create HDL design files for synthesis

    • Peter_R's avatar
      Peter_R
      Icon for New Contributor rankNew Contributor

      Hi,

      I'm a co-worker with SThor8. Still same problem with the EMIF IP. We have tested the suggested solution on several computers with clean Windows 10 2004 installations with exactly same error result when generating HDL. I've tested version 19.1 + patch and 20.1. However I had no problem with 19.1 + patch before the release of the Windows 10 2004 update.

      Regards

      Peter

  • KennyT_altera's avatar
    KennyT_altera
    Icon for Super Contributor rankSuper Contributor

    we make some fix on 20.3, kindly wait for it. 20.3 will allow M and m for WSL.


    Also, can you be specific on what steps that you had done beside installing the patch?


    • dncmrc's avatar
      dncmrc
      Icon for Occasional Contributor rankOccasional Contributor

      I ran into the same big M small m issue.

      Our solution was to use wsl to:

      1. unregister Ubuntu

      2. set as default WSL 1:

      wsl --set-default-version 1

      3. reinstall Ubuntu with all its updates as suggested by Intel

      If Ubuntu uses WSL 1 (even if you have WSL 2 installed) uname -r will return the right, upper case "M" Microsoft.

  • KennyT_altera's avatar
    KennyT_altera
    Icon for Super Contributor rankSuper Contributor

    Hi dnmrc,


    Since this is a different issue, can you open a new thread on this? We will address this differently.


    Thanks,


  • KennyT_altera's avatar
    KennyT_altera
    Icon for Super Contributor rankSuper Contributor

    Noted. We shall close this thread.


    Please post a response in the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you with your follow-up questions.


    • SThor8's avatar
      SThor8
      Icon for Occasional Contributor rankOccasional Contributor

      Hi

      Before you guys create a patch, remember there are several issues, at least 3

      1. Some of the building scripts is using uname-r to check the platform, this is where the big M and little m problem occur.

      One example is nios2_command_shell.sh others are

      2. Some scripts is not using uname -r but other ways to determinate the platform and they also get the problems with the M and m

      Most notable is reading the /proc/version file, like some perl scripts which fails because of the M and m

      One example is intelFPGA/20.1/nios2eds/bin/nios2-stackreport.pl

      which use

      open my $handle, "<", "/proc/version" || return;
      my $first_line = <$handle>;
      close $handle;
      return ($first_line =~ /Microsoft/);

      3. There is a hickup from the earlier used cygwin remains to the new wsl when it looks for "/bin/gnu/H-x86_64-pc-linux-gnu/bin" to create the build env variables.

      4. Paths problem for gcc at the very bottom.

      nios2-elf-gcc.exe: fatal error: cannot execute 'cc1': CreateProcess: No such file or directory

      gcc can not find the cc1 executable, it is not copied to the temporary build directory structure that is on the fly created when compiling nios.

      Regards Stefan

      • NikoR's avatar
        NikoR
        Icon for Occasional Contributor rankOccasional Contributor

        Hi Intel.

        Can you please give an update on the status on the UniPHY generate issue?

        Are there patches available for the various Quartus releases starting from 19.1 that fix the issues?

        Regards
        Nikolay