+ Post New Thread
Results 1 to 2 of 2
  1. #1
    Member level 2
    Points: 309, Level: 3

    Join Date
    Oct 2018
    Posts
    47
    Helped
    1 / 1
    Points
    309
    Level
    3

    HPS-FPGA issues on Intel Cyclone V

    Hello.

    In my learning process I'm trying to work with HPS and FPGA. I am working with a Terasic DE10-Nano.
    I have created a system in the Quartus' "Platform Designer" with the HPS and other peripherals. The VHDL is done and it compiles fine.
    After this, I also have the C program compilated throught the "Intel Embedded Command Shell", everything went right, and I copied the program to the board.

    Now here's are my doubts and problems. The MSEL configuration I guess it is "000000". I have conected to the board through UART and I have communication, I am programming it throught another miniUSB port.
    When I program it I can't boot the OS. I have tried different ways:

    -Program it without SD card and inserting it after the programming is completed.
    -Run with SD, stop the boot by pressing any key, programming, and after this, insert the command boot. (On MSEL="000000" it doesn't boot, but it does when is on "010100"). Anyway, if it doesn't boot I can't do anything, but if it boots, the program doesn't work. It executes, but doesn't work.

    Now I'm thinking about flashing another image on the SD, I don't know if it will work. Any ideas?

    As always, thanks for your help.

    •   AltAdvertisment

        
       

  2. #2
    Member level 2
    Points: 309, Level: 3

    Join Date
    Oct 2018
    Posts
    47
    Helped
    1 / 1
    Points
    309
    Level
    3

    Re: HPS-FPGA issues on Intel Cyclone V

    Well, i have been investigating about this topic and finally, by trial and error, I found the answer. I am replying here just in case somebody is in my same situation.

    1st: You must design the system and program your HDL code. Follow the Intel GHRD aka. Golden Hardware Reference Design. This is important for the HPS memory configuration.
    2nd: Compile it. It will fail. If you have sintaxis errors, correct them, but it will fail after the sinthesis, in the pin planner.
    3rd: Run the tcl scripts for hps_sdram_p0_parameters and hps_sdram_p0_assignments.
    4th: Compile again, it will suceed. But still wrong.
    5th: Go to the pin planner and removed the unused pins, if there are. Important, assign the right pin values for Clock and the peripherals you use. The HPS pins should be correct, but probably, the rest of the peripherals are wrong.
    6th: Compile again.
    7th: Convert the generated sof file to rbf. You should find an script on the examples CD, "sof_to_rbf.bat".
    8th: Copy the rbf file to the SD and edit the u-boot.src file to load the rbf on the board boot.
    9th: Compile the C program using the Intel FPGA Embedded Command Shell. First you should have generated the headers based on the system you designed. There's a script called "generate.sh" to do so.
    10th: Boot the SD and run the program.

    If you need more details, now you can ask me, and i will try to help if I have the enough knowledge.


    1 members found this post helpful.

--[[ ]]--