Tang Nano 9K Simple PicoRV32-based SoC on FPGA

Поділитися
Вставка

КОМЕНТАРІ • 14

  • @alexeygordienko6066
    @alexeygordienko6066 Місяць тому

    Man, thank you for your work on the manuals!👍

  • @alecsei393ify
    @alecsei393ify 6 місяців тому +1

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

    • @electronics.tinker
      @electronics.tinker  6 місяців тому +1

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

    • @stevetodd7383
      @stevetodd7383 6 місяців тому

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

    • @Mr_ASIC
      @Mr_ASIC 5 місяців тому

      @@stevetodd7383 stops at 135K with hard riscv64

    • @stevetodd7383
      @stevetodd7383 5 місяців тому

      @@Mr_ASIC no, that’s the Tang Mega, and AFIK the version of the FPGA that Sipeed actually ships (as opposed to what they advertised), doesn’t actually have a RiSC-V core. It’s also MUCH more expensive than the Nano line (think roughly $200 vs 20 for a Nano.

  • @stevetodd7383
    @stevetodd7383 6 місяців тому +1

    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  6 місяців тому +1

      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 6 місяців тому +1

      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.

  • @abbassahwan5107
    @abbassahwan5107 2 місяці тому

    Amazing I have been looking for a guide like this to build something on that same FPGA. Do you know if there is anyway I can get it to run linux?

    • @electronics.tinker
      @electronics.tinker  2 місяці тому

      My bet is that running Linux on PicoRV32 would not be possible unless you add support to Linux for the PicoRV32's non-standard interrupts. And then you would have to run MMU-less Linux which is possible but not a great idea in my opinion. And you would need at add support for the Gowin PSRAM to get enough memory.
      Running Linux on a larger soft core than PicoRV32 is probably possible on the Tang Nano 9K. See the litex project. I am 100% sure it is possible on the Tang Nano 20K, but even then I think it makes more sense on a hard RISC-V core that complies to the supervisor-level spec or a hard Cortex-A core. I don't know of a cheap FPGA with either, though.
      Connecting a Raspberry Pi Zero to a small Tang Nano board by something faster than i2c would be possible and interesting.
      Best wishes.

    • @abbassahwan5107
      @abbassahwan5107 2 місяці тому

      @@electronics.tinker thank you for your detailed response to my question!! I did look up the litex project. It says it is possible to be made on the 9k. Thank you for the information!!

  • @ВячеславПопов-ц3ж
    @ВячеславПопов-ц3ж 3 місяці тому

    Hello. Have you tried synthesizing a PicoRV32 microprocessor on a TangNano-20K board according to the Gowin PicoRV32 Quick Design manual
    Reference Manual IPUG915-1.3 with downloading the program from SPI-Flash?

    • @electronics.tinker
      @electronics.tinker  3 місяці тому +2

      No. I looked at it but decided that using the picorv32 direct from its author's git (github.com/YosysHQ/picorv32) was so much more transparent. It works the same way on the Tang Nano 20K. See my video on PicoRV32 interrupts. The github for it supports both the 9K and the 20K. Best wishes.