0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何创建FPGA内核/SoC所需的所有常用组件

OpenFPGA 来源:OpenFPGA 作者:OpenFPGA 2022-09-13 09:04 次阅读

FPGA创建SoC如此容易

项目地址

https://github.com/enjoy-digital/litex/wiki

LiteX 框架为创建 FPGA 内核/SoC、探索各种数字设计架构和创建完整的基于 FPGA 的系统提供了方便高效的基础架构。

简介

LiteX 提供了轻松创建 FPGA 内核/SoC 所需的所有常用组件:

总线(Wishbone、AXI、Avalon-ST)及其互连。

简单内核:RAMROM定时器UART、JTAG 等。

通过内核生态系统的复杂内核:LiteDRAM、LitePCIe、LiteEth、LiteSATA等......

各种 CPU 和 ISA:RISC-V、OpenRISC、LM32、Zynq、X86(通过 PCIe)等...

混合语言支持 VHDL/Verilog/(n)Migen/Spinal-HDL/etc...

通过各种桥接器和Litescope进行强大的调试基础设施。

通过Verilator直接/快速仿真

为开源和供应商工具链构建后端。

通过将 LiteX 与内核生态系统相结合,创建复杂的 SoC 变得比使用传统方法容易得多,同时提供更好的可移植性和灵活性:例如,基于 VexRiscv-SMP CPU、LiteDRAM、LiteSATA 构建的多核 Linux SoC与 LiteX 集成,在廉价的改造Acorn CLE215+ Mining Board上运行:

e35477c8-32fc-11ed-ba43-dac502259ad0.png

支持的硬件

https://github.com/litex-hub/litex-boards/tree/master/litex_boards/targets

e3cc7674-32fc-11ed-ba43-dac502259ad0.pnge4b9ca5a-32fc-11ed-ba43-dac502259ad0.png

典型的 LiteX 设计流程:

+---------------+
|FPGAtoolchains|
+----^-----+----+
||
+--+-----v--+
+-------+||
|Migen+-------->|
+-------+||Yourdesign
|LiteX+--->readytobeused!
||
+----------------------+||
|LiteXCoresEcosystem+-->|
+----------------------++-^-------^-+
(Eth,SATA,DRAM,USB,||
PCIe,Video,etc...)++
boardtarget
filefile



LiteX 已经支持各种软核 CPU:VexRiscv、Rocket、LM32、Mor1kx、PicoRV32、BlackParrot,并且与 LiteX 的核心生态系统兼容:

名称 描述
LiteX-Boards 板支持
精简版DRAM 动态随机存取存储器
LiteEth 以太网
精简版PCIe PCIe
LiteSATA SATA
LiteSD SD卡
LiteICLink 芯片通信
LiteJESD204B JESD204B
LiteSPI SPI/SPIFlah
LiteHyperBus HyperBus/HyperRam
LiteScope 逻辑分析仪

使用 LiteX 构建的设计示例:

围绕 LitePCIe 构建并与 LiteX 集成的定制 PCIe SDI 采集/播放板,允许完全控制 SDI 流和极低的延迟。

e517934c-32fc-11ed-ba43-dac502259ad0.png

SDS1104X-E 范围的替代固件/网关:

e615883a-32fc-11ed-ba43-dac502259ad0.png

Forest Kitten 33 上的 HBM2 测试基础设施:

e64af722-32fc-11ed-ba43-dac502259ad0.png

快速入门指南

安装 Python 3.6+ 和 FPGA 供应商的开发工具和Verilator(仿真器,可以不安装)。

安装 Migen/LiteX 和 LiteX 的核心:

wgethttps://raw.githubusercontent.com/enjoy-digital/litex/master/litex_setup.py
chmod+xlitex_setup.py
./litex_setup.py--init--install--user(--user安装到用户目录)--config=(minimal,standard,full)

需要更新所有存储库:

./litex_setup.py--update

注意:在 MacOS 上,确保您已安装HomeBrew。然后做,brew install wget。

注意:在 Windows 上,您可能必须将SHELL环境变量设置为SHELL=cmd.exe.

安装 RISC-V 工具链(仅当您想使用 CPU 测试/创建 SoC 时):

pip3installmesonninja
./litex_setup.py--gcc=riscv

建立目标......:

转到 litex-boards/litex_boards/targets 并执行您要构建的目标。

直接在您的计算机上安装Verilator并测试 LiteX,无需任何 FPGA 板:

在 Linux (Ubuntu) 上:

sudoaptinstalllibevent-devlibjson-c-devverilator
litex_sim--cpu-type=vexriscv

在 MacOS 上:

brewinstalljson-cverilatorlibevent
brewcaskinstalltuntap
litex_sim--cpu-type=vexriscv

在板上的串行端口 115200 8-N-1 上运行终端程序。

应该得到如下所示的 BIOS 提示。

e6d76fe0-32fc-11ed-ba43-dac502259ad0.png

在FPGA上完美复刻Windows 95


e75a4a78-32fc-11ed-ba43-dac502259ad0.jpg

优秀的 Verilog/FPGA开源项目介绍(十七)- AXI


e775fd04-32fc-11ed-ba43-dac502259ad0.jpg

优秀的 Verilog/FPGA开源项目介绍(十六)- 数字频率合成器DDS

想用FPGA加速神经网络,这两个开源项目你必须要了解


e7b742aa-32fc-11ed-ba43-dac502259ad0.jpg

优秀的 Verilog/FPGA开源项目介绍(十四)- 使用FPGA实现LeNet-5 深度神经网络模型

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1624

    文章

    21608

    浏览量

    601079
  • 定时器
    +关注

    关注

    23

    文章

    3229

    浏览量

    114295
  • 数字设计
    +关注

    关注

    0

    文章

    46

    浏览量

    22282
  • 组件
    +关注

    关注

    1

    文章

    503

    浏览量

    17781

原文标题:用FPGA创建SoC如此容易

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Xilinx(r) Ultrascale(r) 16nm FPGA/SoC 电源解决方案

    `描述PMP10555 参考设计提供为移动无线基站应用中的 Xilinx® Ultrascale® 16nm 系列 FPGA/SoC 供电所需所有电源轨。此设计对
    发表于 05-11 10:46

    Altera Cyclone V SoC 电源

    `描述此参考设计提供为 Altera Cyclone V SoC FPGA 供电时所需所有电源轨。此设计使用 LMZ3 系列模块产生用于为 FPG
    发表于 05-11 16:49

    Xilinx Ultrascale 16nm FPGA/SoC电源解决方案

    描述PMP10555 参考设计提供为移动无线基站应用中的 Xilinx® Ultrascale® 16nm 系列 FPGA/SoC 供电所需所有电源轨。此设计对
    发表于 11-19 14:58

    面向移动通信无线基站的Xilinx(r) Ultrascale(r) 16nm FPGA/SoC电源解决方案

    描述PMP10555参考设计提供为移动无线基站移动无线应用中的 Xilinx® Ultrascale® 16nm 系列 FPGA/SoC 供电所需所有电源轨。此设计对
    发表于 09-28 06:56

    Altera公司SoC FPGA 简介

    本文是关于Altera公司SoC FPGA 的用户手册(英文版) 。文中主要介绍了什么是SoC FPGASoC
    发表于 09-05 14:03 153次下载
    Altera公司<b class='flag-5'>SoC</b> <b class='flag-5'>FPGA</b> 简介

    看技术专家:如何为您解决SoC FPGA设计难题

    电子发烧友网核心提示 :主要FPGA供应商已经开始销售集成了硬核处理器内核的低成本FPGA器件,SoCFPGA器件最终会成为主流。为能够充
    发表于 11-06 22:06 3352次阅读
    看技术专家:如何为您解决<b class='flag-5'>SoC</b> <b class='flag-5'>FPGA</b>设计难题

    面向移动通信无线基站的Xilinx Ultrascale 16nm FPGA/SoC电源解决方案

    PMP10555 参考设计提供为移动无线基站应用中的 Xilinx® Ultrascale® 16nm 系列 FPGA/SoC 供电所需所有电源轨。此设计对
    发表于 02-08 09:27 236次阅读

    SoC设计中嵌入FPGA(eFPGA)内核实用评估方法

    虽然系统级芯片( SoC )的架构师们已了解嵌入式FPGA( eFPGA )内核能如何为他们的ASIC/ SoC 设计增加价值,甚至是在规划
    的头像 发表于 09-20 09:51 4114次阅读

    PSoC Creator教程:如何创建组件符号

    赛普拉斯 PSoC Creator教程,包括时钟、生成组件等内容,例如添加API模板、设置组件参数、创建符号、添加Library Dpendency,创建电路图等。
    的头像 发表于 07-01 12:08 1959次阅读

    如何创建在目标平台上实现设计加速所需的软件镜像

    XSA 以及如何创建在目标平台上实现设计加速所需的软件镜像。 熟悉 OpenCL 的用户可能对内核 (kernel)一词已耳熟能详,在 OpenCL 中执行功能的位置即被称为内核
    的头像 发表于 10-26 15:48 1388次阅读
    如何<b class='flag-5'>创建</b>在目标平台上实现设计加速<b class='flag-5'>所需</b>的软件镜像

    使用Xilinx Vivado创建自己板卡文件

    board.xml - 定义关于板的所有信息。它包括基本信息(例如电路板名称、描述、供应商)、有关板上组件的信息(例如 FPGA 部件、LED、按钮)、有关板上组件
    的头像 发表于 06-02 09:08 3626次阅读

    SoC FPGA与MCU主要优势和劣势对比

    多核架构的代码开发有点类似于使用 SoC FPGA 时的代码开发,只是硬件加速是由 DSP 内核而不是可编程结构完成的。
    发表于 08-03 11:50 5559次阅读
    <b class='flag-5'>SoC</b> <b class='flag-5'>FPGA</b>与MCU主要优势和劣势对比

    什么是SoC、SOPC、SoC FPGA?用在什么场景?

    ,先了解一下SoC FPGA是什么,相对于SOPC、SoC有什么优缺点,甚至常用在什么场景中还是比较轻松的,这些知识能对SoC
    的头像 发表于 03-30 10:13 9474次阅读

    基于FPGASoC创建方案

    LiteX 框架为创建 FPGA 内核/SoC、探索各种数字设计架构和创建完整的基于 FPGA
    发表于 06-28 09:08 714次阅读
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>SoC</b><b class='flag-5'>创建</b>方案

    SLMLET,具有混合RISC-V内核,高速IF和eFPGA的S

    SLMLET,具有混合RISC-V内核,高速IF和eFPGASoC 演讲ppt分享
    发表于 07-17 16:34 2次下载