RVfpga:了解 FPGA 上的 RISC-V 架构和实施

网络研讨会注册:

注册

网络研讨会录像:

待设置

总结

加入DigiKey,深入了解RISC-V处理器核心的内部工作原理以及在目标(Xilinx)FPGA器件中实施RISC-V处理器软件核心的方法。RVfpga网络研讨会涵盖了下一代程序员和工程师需要掌握的RISC-V潜力的基础知识。DigiKey很荣幸与Imagination Technologies合作,成为本次网络研讨会的赞助方,研讨会的主讲人是Sarah Harris教授(UNLV)。网络研讨会的参与者将学习以下内容:

  • 将商用RISC-V核心和片上系统(SoC)定向到FPGA
  • 编程RISC-V SoC
  • 向RISC-V SoC添加更多功能
  • 分析和修改RISC-V核心和内存层次结构

完成RVfpga网络研讨会后,参与者将对商业RISC-V处理器、SoC和生态系统形成扎实的理解。

如果你无法参加直播网络研讨会,请务必进行注册,我们将在结束后向你发送会议录像!本次网络研讨会将仅以英语进行。

主讲人

Sarah L. Harris
内华达大学拉斯维加斯分校电子与计算机工程副教授

Sarah L. Harris是内华达大学拉斯维加斯分校的电子与计算机工程副教授。她在斯坦福大学获得了硕士和博士学位。在2014年加入内华达大学拉斯维加斯分校之前,她曾是哈维默德学院的教职员工(2004-2014)。她还曾就职于惠普、英伟达和达姆施塔特工业大学,并与西南研究所、英特尔和Imagination Technologies等公司开展过合作。她是三本广受欢迎的教科书的合著者:《Digital Design and Computer Architecture, 2nd Edition》(2007年)、《ARM Edition》(2015年)和《RISC-V Edition》(2021年)。Harris博士目前还领导或共同领导着两项由美国国家科学基金会资助的关于智能城市和在STEM教育中集成家庭支持的项目。她的研究兴趣包括计算机体系结构、嵌入式系统和机器学习在生物医学工程和机器人技术中的应用。

软件

Vivado 下载

Vivado 下载 - Windows

Vivado 下载 - Linux

Vivado 设置

  • Vivado HL WebPACK

05_00

  • Nexys A7开发板驱动程序(可选)

Vivado 安装 Digilent 开发板文件

Vivado → 工具 → 设置:

硬件

Nexys A7-100T Artix-7系列FPGA评估板

指南

指南:培训和教学资源 - Imagination大学项目

论坛:Imagination大学项目论坛 – Imagination大学项目

网络研讨会问答

在无需进行合成和实施设计的情况下,PlatformIO是如何做到直接在NEXYS A-7上构建比特流的?

  • 我们提供了基准SoC的比特流,可供你直接使用。我们还提供了SoC的源代码,便于你在Vivado中进行构建,如需了解详细信息,请参见实验课5。

如何使用PlatformIO更新基准SoC上的新指令内存内容?

  • 我们在PlatformIO上安装了由Chips Alliance提供的平台,其中包括工具链——openocd。

如何访问这些实验课文件?它们会发布在Github上吗?

贵方是否会提供RVfpga的源代码?还是只提供比特流?

  • 两者都提供。

从现在起一个月内是否会支持Basys3开发板?

  • 我们不能确定确切的时间,但应该会在接下来的几个月内提供支持。请直接联系我们,我们会分享更多细节。

网络研讨会标题就是误导人,会议与RISC-V架构完全无关,只是展示如何使用开发板!简直是浪费时间!

  • 非常抱歉,大约在会议进行到一半的时候,Sarah将介绍如何向核心添加附加的CPU指令并与通风设备配合运作。

关于问答环节:演示结束后是否会提供幻灯片材料?

  • 会,我们将在今天的网络研讨会结束后提供会议录像和幻灯片。

假设我有一个类似于Nexys7(Arty7)的开发板,并且非常熟悉Vivado,那么编辑开发环境以支持我的可用开发板是否容易?

  • 你好,你的开发板上使用的是哪种FPGA?设计大约占用A100-T的55%……(A35-T可能太小了)。问题是SoC可能不适合FPGA。我们近期将提供一个更小的基于EL2的RVfpga版本,适用于Basys 3或Arty A7。

A100-t

  • 我也有那种开发板,并且也希望在上面运行RVFpga……我不太确定还缺少什么,需要花很多时间来研究。

这门课程是远程的吗?

看不到更新的幻灯片了。

  • 如果屏幕卡住了,请刷新浏览器。

编译器呢?材料中会有提供吗?

  • 这实际上是gcc,通过PlatformIO提供。

imgtec的链接无效,怎么办?

是否包含位指令?

  • 它们不包含在EH1中,但我们在实验课18中提供了练习,要求用户加入位指令。

我可以在VS Code中使用C++吗?

  • 使用gcc-RISC-V工具链可支持C++。

我能在目前的STM32芯片上使用吗?

  • 很遗憾,不能……要运行此版本的RVFpga,你需要使用FPGA。

我以为RISC-V的硬件代码是VHDL,而不是Verilog?你只是把它作为工具使用吗?

  • SweRV EH1和SweRVolf(也就是RVfpga的基础)是用Verilog编写的。

Gshare BP是否会产生时间成本,还是可与执行并行?

  • BP是Fetch阶段的一部分。

我假设Visual Studio IDE有一个配置文件,对吗?我总是会花很多时间来解决这些设置问题。

  • 在这种情况下,我们可以使用Platformio来完成此设计的项目设置工作。

2020版上会出现哪些问题?无法编译?还是其他配置变量不匹配等?

  • 有人已经在2020(某个版本)上进行了测试,证实了可行性,只需进行一处细微的更改即可,有关详细说明请参见Imagination论坛。

是否提供闭路字幕?

  • 我们目前不提供闭路字幕。

是否大家都遇到了连接问题?

  • 嗨,我们其他系统上的播放一切正常。你可以尝试刷新浏览器窗口,看看是否有帮助。

是否可以使用除了Nexys A7之外的FPGA开发板?

  • 可以,不过Sarah会在问答环节中详细介绍!

Digilent Basys3开发板可以使用吗?这是与Nexys相似的开发板。

  • 目前,这需要使用A100T一半以上的资源,35T可能有些困难……

你们使用的C编译器是什么?gcc还是LLVM后端?

  • 目前,platfomio使用的是gcc。

这些实验课可以下载吗?我找到了一些可用的实验课工具,但是没有看到实验课RVfpga:了解FPGA上的RISC-V架构和实施

RISC-V的本机总线是什么?

  • SweRV EH1包括AXI4和AHB总线。在RVfpga中,我们使用AXI4,并使用Wishbone来连接外设。

请问我在本科最后一年的毕业项目中可以使用RISC-V做些什么?

  • 任何需要处理后台任务的项目都可以,比如触摸屏、与其他器件进行接口连接、系统监控等。FPGA最适合用于并行计算任务。

能简要介绍一下如何进行触摸屏处理器项目吗?

  • 网上已经有很多这样的项目了,涵盖了许多处理器类型,很可能也包括RISC-V。通过搜索引擎很容易找到这些项目。

这开发板是特定的吗?比如我们能不能将此示例转移到其他开发板上,比如Nexys 200T?

  • 这完全取决于目标器件上的资源可用性。比较一下FPGA与Nexys A7上的器件。如果200T上的器件更大,那么应该可以转移。

对于所使用的推荐开发板,完全实施处理器需要使用多少资源?

  • 当前的实施占用了Nexys A7 Artix-7 FPGA的50%。如添加其他功能,可能会占用更多的资源。

不好意思,您刚才说使用的是Wishbone总线,而不是使用AXI总线,是吗?

  • 我们的核心使用的是AXI4总线,外设使用的是Wishbone总线。

有几个问题,我有些困惑。这似乎只是非常基础的嵌入式RISC C/ASM编程。FPGA是在什么时候起作用的?VHDL是什么时候使用的?

  • 实验课1-4是关于C/ASM编程的。实验课6-10是关于使用和添加外设的,这需要访问Verilog代码。实验课11-20是分析和修改处理器,也需要访问Verilog代码。

在讨论虚拟调试和提到使用VMWare时,是否必须使用VMWare,还是可以使用VirtualBox来托管虚拟机?

在下载和运行RVFPGA时,是否必须与学术机构有关联?个人可以自行注册吗?

  • 不需要,只要是最终用户就行。所有提交内容均由Imagination的两个用户审核。虽然问题主要与教育相关,但他们完全能理解。

RISC-V的指令集是由32位和16位指令组成,类似于Cortex-M处理器?还是只包含32位指令?

  • 包括32位和16位指令。

是否可以创建新指令或修改现有指令?是否所有内容都是开源的?

  • 是的,所有内容都是开源的。实验课18展示了添加新指令的方法。

能拼写一下您刚刚提到的安装板的名称吗?

与硅基RISCV相比,在FPGA上使用虚拟RISCV的优势是什么?

  • 你可以查看和分析SoC,还可以更改SoC(使用其他配置,扩展微体系结构,添加外设等)。

为什么选择使用SweRV核心而不是具有3或5个流水线的简化核心?

  • SweRV EH1是一个非常强大的核心,包含了有趣的微体系结构特性。我们计划以EL2为基础添加一个具有4个流水线的较小版本的RVfpga。

如何访问这些材料?教学材料是否可以通过培训和教学资源 - Imagination大学项目下载?

  • 是的,可以在那里下载,但需要进行注册。有两位Imgtec开发人员会手动批准访问请求……

访问imgtec大学教材需要先申请注册,并提供包括项目细节和人数等详细信息,为什么需要这些?

  • Imgtec一般希望大学教授使用这些材料来构建课程。只要诚实回答,两位Imgtec用户会批准请求的,我们完全理解这对普通开发人员来说似乎有些奇怪。

您好,只能使用Verilog语言吗?

  • 是的。

是所有20个实验课都可以访问,还是只有第一部分?

  • 整个项目,包括全部20个实验课都可以访问。

RVFpga核心能够在Artix7 FPGA上以多大的时钟速度运行?

  • 我们使用50MHz的时钟。

Imagination Technologies如何通过开发此核心盈利?通过销售培训吗?很难弄清其中的缘由及其可持续性。

  • RVFpga实际上是“新型”SGX核心中使用的IP……Imagination Technologies认为支持RISC-V可以创造更多使用其IP的机会。

是否提供参与证书?

  • 感谢询问。本网络研讨会不提供证书。

RVFPGA课程是否对在职工程师开放?如果是,可以在哪里参加?

无法获取访问权限。页面中到处都是“大学”字样。

  • 只需填写为最终用户即可……该页面主要面向大学,但其实由imgtec的两名开发人员负责进行审批……

是否提供可在大学课程中使用rvfpga材料的许可证?