1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Arduino on NUMATO FPGA boards

Discussion in 'FPGA Boards' started by mistery, May 27, 2015.

  1. Kazam

    Kazam New Member

    Joined:
    Jul 2, 2015
    Messages:
    21
    Likes Received:
    1
    Trophy Points:
    3
    Gender:
    Male
    Location:
    Stockholm
    Hi,

    I have some more time now and want to get this working. :)

    Looking over the VHDL I have two questions:

    1. I tried disabling the multiplier and the barrel shifter to see how much area could be saved. This reduced the utilization from 57% to 50% of slices. Is this recommended or discouraged?

    2. As I understand it the BRAM is generated from slices in the FPGA but can I use the BRAM generator in ISE to instead use the dedicated BRAM resources to reduce utilization?
     
  2. mistery

    mistery Member

    Joined:
    May 26, 2015
    Messages:
    66
    Likes Received:
    4
    Trophy Points:
    8
    Gender:
    Male
    Location:
    Zagreb
    Home Page:
  3. gornjas

    gornjas New Member

    Joined:
    Jul 15, 2015
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    1
    Location:
    in the cloud
    Disabling the multiplier requires compiling and linking with a library with software multiplication (MULT instructions disabled). Such a library is already available in f32c/src, but we haven't integrated it in FPGArduino (yet). This applies only to MI32 binaries, since RV32I binaries never include multiplication instructions, so for C_arch = ARCH_RV32 setting C_mult_enable to false has no effect.

    Barrel shifter may be (partially) disabled to save a few LUTs on both MI32 and RV32 without recompiling or relinking, the only tradeoff is slower (iterative) shifting by 1 to 7 places. Shifts by 8, 16 and 24 places are still performed in a single cycle.

    As of the BRAM generator in ISE, I had nothing but trouble with it, so you are free to try it out yourself, but be warned not to expect much help from us on that endeavour. Custom 6K BRAM modules for s3A50 containing MI32 bootloader just hit the github repo, so I'd encourage you to use that.

    Note that RV32 configuration just barely fits into S3A50, though we couldn't get the serial communication to work via the onboard USB PIC. The MI32 with should also fit as of today (consuming 702 of 704 available slices), though again that variant uses a reduced MI32 instruction subset which calls for a specialized library, which we hope to prepare shortly.
     
  4. Kazam

    Kazam New Member

    Joined:
    Jul 2, 2015
    Messages:
    21
    Likes Received:
    1
    Trophy Points:
    3
    Gender:
    Male
    Location:
    Stockholm
    Great, I'm followong this on Github now so no need to cross-post for my sake.

    Investigating at the moment and seems really promising I think!
     
  5. Kazam

    Kazam New Member

    Joined:
    Jul 2, 2015
    Messages:
    21
    Likes Received:
    1
    Trophy Points:
    3
    Gender:
    Male
    Location:
    Stockholm
    Cloned the latest rep and had a look at the Mimas project. Noticed that the sio.vhd baudrate was set to 115200. Did you receive new firmware that gets around the 19200 limitation?

    /K
     
  6. admin

    admin Administrator Staff Member

    Joined:
    Jan 23, 2015
    Messages:
    169
    Likes Received:
    11
    Trophy Points:
    18
    Sorry for the delay, Attaching firmware with 115200 baud rate support. Our developer tried loopback testing at 115200 baud and worked fine.

    Thanks,
    Tom
     

    Attached Files:

  7. Kazam

    Kazam New Member

    Joined:
    Jul 2, 2015
    Messages:
    21
    Likes Received:
    1
    Trophy Points:
    3
    Gender:
    Male
    Location:
    Stockholm
    Will there also be a 115200 MimasV2 firmware?
    /K
     
  8. mistery

    mistery Member

    Joined:
    May 26, 2015
    Messages:
    66
    Likes Received:
    4
    Trophy Points:
    8
    Gender:
    Male
    Location:
    Zagreb
    Home Page:
    Is there new configuration tool now for Elbert?
    After I loaded firmware I got only

    Configuration download started...
    Configuration failed...

    from old config tool I will try to use python later
     
  9. mistery

    mistery Member

    Joined:
    May 26, 2015
    Messages:
    66
    Likes Received:
    4
    Trophy Points:
    8
    Gender:
    Male
    Location:
    Zagreb
    Home Page:
    Python is working, and after rereading your post I succesfully got loopback, now I will try to get the f32c to answer...
     
  10. mistery

    mistery Member

    Joined:
    May 26, 2015
    Messages:
    66
    Likes Received:
    4
    Trophy Points:
    8
    Gender:
    Male
    Location:
    Zagreb
    Home Page:
    Got the working blnik leds from arduino on Elbert V2.

    It is very hard to enter serial mode even with your serial loopback, pic firmware seems to be buggy.
     
  11. Kazam

    Kazam New Member

    Joined:
    Jul 2, 2015
    Messages:
    21
    Likes Received:
    1
    Trophy Points:
    3
    Gender:
    Male
    Location:
    Stockholm
    Tried to get this working and pulled the latest GitHup repo. Noticed the serial baudrate is still 115200 in the Xilinx project and couldn't get anything to upload. The project synthesized good though and I uderstand the BRAM part now. Great!

    Any news on the 115200 firmware for MiimasV2?

    /K
     
  12. mistery

    mistery Member

    Joined:
    May 26, 2015
    Messages:
    66
    Likes Received:
    4
    Trophy Points:
    8
    Gender:
    Male
    Location:
    Zagreb
    Home Page:
    Great, I have tested new version with VGA output.
    Yes we still do not have 115200 firmware, on Elbert is working great for uploading.
    So you need to change C_init_baudrate: integer := 115200; to 19200 for now, maybe we could put it in
    -- SoC configuration options

    Did you try soime arduino sketch?
    SD sard should work to, but I was unable to get it work.
    Serial I2C is working
    I still have problems wirh getting serial output with Serial.print in arduino, but for that we are waiting new firmware

    You can even write your code in C, you have some examples https://github.com/f32c/f32c/tree/master/src/examples
     
  13. mistery

    mistery Member

    Joined:
    May 26, 2015
    Messages:
    66
    Likes Received:
    4
    Trophy Points:
    8
    Gender:
    Male
    Location:
    Zagreb
    Home Page:
  14. admin

    admin Administrator Staff Member

    Joined:
    Jan 23, 2015
    Messages:
    169
    Likes Received:
    11
    Trophy Points:
    18
    Hi Guys, sorry again for not responding for a while. We were quite busy with some other stuff this week so couldn't find some time to look at the 115200 baud issue. We will take a look at it on Monday and update.

    Thanks,
    Tom
     
  15. mistery

    mistery Member

    Joined:
    May 26, 2015
    Messages:
    66
    Likes Received:
    4
    Trophy Points:
    8
    Gender:
    Male
    Location:
    Zagreb
    Home Page:
    no problem we have work to so no hurry

    do not bother to too much with Elbert for now it is ok I can normally upload code with arduino.

    Next week developers will try to support DDR SDRAM on Mimas, so if you manage try to do Mimas 115200 pic firmware.
    If they succeed it may be possible to put some mips linux on board :)
     
  16. Kazam

    Kazam New Member

    Joined:
    Jul 2, 2015
    Messages:
    21
    Likes Received:
    1
    Trophy Points:
    3
    Gender:
    Male
    Location:
    Stockholm
    MIPS Linux would be really helpful! I'm working on a project that could use a TCP/IP stack.
     
  17. admin

    admin Administrator Staff Member

    Joined:
    Jan 23, 2015
    Messages:
    169
    Likes Received:
    11
    Trophy Points:
    18
    Hi,

    Please find attached mimas V2 firmware with 115200 baud support.

    Thanks,
    Tom
     

    Attached Files:

  18. Kazam

    Kazam New Member

    Joined:
    Jul 2, 2015
    Messages:
    21
    Likes Received:
    1
    Trophy Points:
    3
    Gender:
    Male
    Location:
    Stockholm
    Thank you for your work. Tested on Windows 10 and the firmware upgrade went smoothly.

    Getting "Hello world" from the test bin @115200bps.

    I will boot into my Linux partition tomorrow, hopefully, and try to get the Arduino stuff to work.

    Great! :)
     
  19. Kazam

    Kazam New Member

    Joined:
    Jul 2, 2015
    Messages:
    21
    Likes Received:
    1
    Trophy Points:
    3
    Gender:
    Male
    Location:
    Stockholm
    Arduino code compiles and uploads without problem with this firmware.
     
  20. admin

    admin Administrator Staff Member

    Joined:
    Jan 23, 2015
    Messages:
    169
    Likes Received:
    11
    Trophy Points:
    18

Share This Page