查看: 4895|回复: 0

要让RISC-V跑起来究竟需要多大的FPGA?

[复制链接]
  • TA的每日心情
    擦汗
    2018-10-18 15:28
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2019-2-19 09:15:01 | 显示全部楼层 |阅读模式
    分享到:
    这两年,众所周知的国际大环境、国内大环境、行业大环境的缘故,RISC-V被弄得就跟雷雷大师曾经的太极功夫一样超级热,上周在加州面见一曾负责RISC-V推广的大佬(老外),他表示很诧异这玩意儿在中国的发烧现象。
    微信图片_20190219091022.jpg


    作为一个曾经的低级的Board Designer一直对IC、IP、处理器等上游的技术以近90度角来仰视,从不敢妄加评论,至今对RISC-V只敢远观。

    陆续看到不少国外的文章和案例,将RISC-V移植到FPGA里面,貌似使用的FPGA资源也没有多少,作为小脚丫FPGA平台的理念创始人,我也心心念念要将RISC-V塞到我们的小脚丫FPGA平台里面,这样就可以在我们的平台上跑8051、ARM Cortex M0以及当前炙手可热的RISC-V,为FPGA的玩家,尤其是高校从事微机原理教学的师生提供多一个选择。

    可,迄今未成,让我们的工程师(很遗憾我们还没有对计算机系统架构熟悉的资深工程师)在国内RISC-V名家的指点下几经尝试最终还是Fail,结论 - 我们用的FPGA内部资源不够。

    需要多大的资源?被告知要用X公司的某某系列才行。
    微信图片_20190219091202.jpg
    这跟我看到的文章不一样啊!因为我在多处英文文章里都看到RISC-V被不经意地提及到运行在某某fpga里面,而提到的fpga型号资源小小的。

    今天看到一篇在Crowsupply的一篇众筹文章 - “An FPGA board that fits inside your USB port”,也就是一个手指甲盖大小的能够塞到USB端口里面的FPGA板子,看下面的截图中的真相 - 能够运行RISC-V的软核。
    微信图片_20190219091225.jpg

    作者号称这玩意是初学FPGA或者RISC-V编程最简单的方式:
    微信图片_20190219091247.jpg

    并且运行Python、RISC-V代码、FPGA编程工具全开源!
    微信图片_20190219091310.jpg

    小小的身躯里面蕴涵着大乾坤。我从不崇拜那些买一块几千块钱的FPGA开发板,跑一些什么DDR、视频处理以及一些我听不懂的术语的功能就号称这样才是真正的FPGA开发者的,相反我一直觉得能在一个小得不能再小的空间和资源里玩出万千中花样的人才是真正的高手 - 这也是我们小脚丫fpga一向的理念!

    不服你也搞着这样的玩意出来?我也90度角仰视你。

    来看看全球Hacker届的几个大牛网站(第二个Hackaday是我们的)如何评价:

    微信图片_20190219091338.jpg


    看Hackster的评论 - FμPy、 MicroPython、Migen+MiSoC、LiteX,这些词我听都没听过。

    那这么牛x的东西用啥做的呢?看指标:
    Features & Specifications
    Fomu fits entirely inside a standard USB Type-A slot, except for a small area that pokes out to give you access to four copper pads. There is one RGB LED that lights up the case and is fully user-controllable. The main chip is an FPGA with about 5000 LUTs, enough for a CPU with some room left over.
    • FPGA: Lattice ICE40UP5K
    • Speed: 48 MHz external oscillator
    • RAM: 128 kB RAM for a soft CPU¹
    • Storage: 1 MB SPI flash²
    • Connectivity: USB 2.0 FS (12 Mbps)
    • Buttons: Four³
    • LEDs: One RGB

    ¹: The FPGA has 1024 kilo-bits of memory available. A separate block of memory is used for things like the processor register file, in addition to temporary memory for things like USB buffers. The CPU can use 64 or 128 kilobytes of memory, depending on configuration. ²: This is the minimum configuration amount – more may be available in the final version.
    ³: Fomu has four copper pads near the edge. We have not yet validated any capacitive touch solutions.
    这是一颗批量售价在不到20块钱RMB一颗的FPGA器件,内部资源只有5000LUTs足够搞定RISC-V的软核以及其它相关的功能。

    微信图片_20190219091406.jpg
    多余的不再多说,最后几个要点强调一下:
    • RISC-V没那么神秘,凡把一个别人暂时不懂、自己也略懂的东西忽悠得特别高大上的都是在耍流氓;
    • 在小小的系统里面能够玩转各种技术的才是真正的牛人,永远不要鄙视“太简单、资源太有限”,要知道真正的产品中就是要让你在有限的资源里跑尽可能多的功能;
    • 相关的资料和资源我在文章中已经提供了非常多的线索,有兴趣要了解更多的自己去查,从茫茫信息海洋中获取有价值的信息是工程师最基本的能力,不具备就不要走工程师这条路;
    • 我也希望RISC-V在中国有个健康的发展,并尽自己的微薄之力推进行业对RISC-V的认识。


    因此,我们会尽快找到对计算机系统架构真正熟悉的高手,并在三个月内在小脚丫上跑起RISC-V来。

    本文作者 苏老师
    来源 FPGA入门到精通



    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-3-29 19:24 , Processed in 0.107105 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.