Tang Nano 9K Simple PicoRV32-based SoC on FPGA

แชร์
ฝัง
  • เผยแพร่เมื่อ 12 มิ.ย. 2024
  • This video shows how to create a very simple system-on-a-chip (SoC) using the PicoRV32 RISC-V core and the Tang Nano 9K FPGA development board. The goal is a simple and consistent design that is not abstracted but is easy to extend. We show both Verilog for the SoC and C code for software on the PicoRV32 soft core.
    Chapters
    0:00 Introduction
    0:40 Pins & connections
    1:15 View of board
    1:25 UART output
    2:00 SoC's design
    2:49 PicoRV32 core
    4:26 Bus operation
    5:20 Write strobe signals
    6:08 Verilog files
    6:42 Top-level module
    10:12 Reset
    10:36 Slave device integration
    12:18 SRAM
    15:04 Countdown timer
    17:22 Software
    21:52 Resources & Timing
    22:47 Logic analyzer
    Links
    Project github: github.com/grughuhler/picorv32
    PicoRV32: github.com/YosysHQ/picorv32
    Gowin SRAM on Tang Nano 9K: • Block SRAM on the Tang...
    ADALM2000 Logic Analyzer: • ADALM2000 (M2K) Logic ...
    ADALM200: Intro: • Introduction to ADALM2...
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 6

  • @alecsei393ify
    @alecsei393ify 26 วันที่ผ่านมา

    AWESOME!!! Content... i will try to build that on my Tang Nano 25K... thank you so much!!!

    • @electronics.tinker
      @electronics.tinker  26 วันที่ผ่านมา +1

      Thank you for this kind comment. Good luck with the 25K.

    • @stevetodd7383
      @stevetodd7383 20 วันที่ผ่านมา

      Nano 25K? Did you mean the Primer 25K? As far as I know the Nano range stops at 20K

  • @stevetodd7383
    @stevetodd7383 20 วันที่ผ่านมา

    Xilinx (and Intel/Altera) FPGAs have moved to using 6 input LUTs, so they can do more per LUT compared to the 4 input models used by the GOWIN. Because of that the numbers aren’t strictly comparable.
    Even given the above, a full fat version of the PicoRISC should fit in the 9K you have available. A little light cheating (e.g. using the DSP blocks for hardware multiplication) can cut usage down, and you can hook up the 8MB of onboard PSRAM rather than using the limited BRAM available.

    • @electronics.tinker
      @electronics.tinker  20 วันที่ผ่านมา

      The litex project proves what you say about doing more on even the Tang Nano 9K. It's easy to get it to spit out a much more complete and capable SoC than mine-- including the PSRAM. But if you want to add to it, you have to understand and buy into Litex's tools and methods. For me it's too much abstraction while I am still getting experience with FPGAs. Thanks for your comments.

    • @stevetodd7383
      @stevetodd7383 20 วันที่ผ่านมา

      LiteX automates the process of creating an in-FPGA SoC design, letting you create full systems. The Nano 9K is in its supported boards list, but that doesn’t mean you can build a fully spec’d system on one.
      There is nothing wrong with wanting to do your own thing, and the suggestions were there as things you could do to enhance it. You might want to think about how you could support uploading arbitrary code to it at runtime for example.