小型足迹和可配置的PCIe核心
项目描述
__ _ __ ___ _________
/ / (_) /____ / _ \/ ___/ _/__
/ /__/ / __/ -_) ___/ /___/ // -_)
/____/_/\__/\__/_/ \___/___/\__/
Copyright 2015-2022 / EnjoyDigital
A small footprint and configurable PCIe core
powered by Migen & LiteX
[> 简介
LitePCIe提供了一个小型足迹和可配置的PCIe核心。
LitePCIe是LiteX库的一部分,其目标是通过提供简单、优雅和高效的组件实现,降低复杂FPGA核心的入门门槛,这些组件用于当今的SoC,如以太网、SATA、PCIe、SDRAM控制器...
使用Migen描述HDL允许核心高度和易于配置。
LitePCIe可以作为LiteX库使用,也可以通过生成您将用作标准核心的Verilog RTL与您的标准设计流程集成。
[> 特性
PHY
- Xilinx Ultrascale(+) (最高PCIe Gen3 X16)。
- Xilinx 7系列 (最高PCIe Gen2 X8)。
- Intel Cyclone5 (最高PCIe Gen2 X4)。
- 64/128/256/512位数据路径。
- 时钟域交叉。
核心
- TLP层。
- 重排序。
- MSI (单,多向量)/MSI-X。
- 交叉开关。
前端
- DMA (带有Scatter-Gather)。
- MMAP (AXI/Wishbone从/主)。
- PTM (目前仅在Xilinx 7系列/Gen2 X1上)。
软件
- Linux驱动程序 (MMAP和DMA)。
[> FPGA已验证
LitePCIe已在商业和开源设计中使用
- 3G-SDI捕获/回放板: http://www.enjoy-digital.fr/experience/pcie_3g_sdi.jpg
- SDR MIMO 2x2 板:https://www.amarisoft.com/products-lte-ue-ots-sdr-pcie/#sdr
- SDR MIMO 4x4 板:http://www.enjoy-digital.fr/experience/pcie_ad937x.jpg
- SDR CPRI 板:http://www.enjoy-digital.fr/experience/pcie_sfp.jpg
- PCIe TLP 嗅探器/注入器:https://ramtin-amin.fr/#nvmedma
- 以及其他商业设计...
[> 可能的改进
- 添加标准化接口(AXI,Avalon-ST)
- 添加 Intel Stratix 支持
- 添加 Lattice 支持
- 添加更多文档
- ...见下文支持和咨询 :)
如果您想支持这些功能,请通过 florent [AT] enjoy-digital.fr 联系我们。
[> 入门
- 安装 Python 3.6+ 和 FPGA 供应商的开发工具。
- 按照 LiteX 的 wiki 安装指南 安装 LiteX 和核心。
- 您可以在 LiteX-Boards 和 examples 目录中找到核心与 LiteX 集成的示例。
[> 测试
单元测试在 ./test/ 中可用。要运行所有单元测试
$ ./setup.py test
也可以单独运行测试
$ python3 -m unittest test.test_name
[> 许可证
LitePCIe 在非常宽松的双条款 BSD 许可证下发布。根据此许可证条款,您有权将 LiteEth 用于封闭源代码的专有设计。即使我们不要求您这样做,这些事情也是非常棒的,所以如果可能的话,请这样做
- 告诉我们您正在使用 LitePCIe
- 在涉及 LitePCIe 帮助的研究相关的出版物中引用 LitePCIe
- 向我们发送反馈和建议改进
- 当出现问题时报错
- 将您对 LitePCIe 所做的修改和改进发送给我们。
[> 支持和咨询
我们热爱开源硬件,并喜欢与他人分享我们的设计。
LitePCIe 由 EnjoyDigital 开发和维护。
如果您想了解更多关于 LitePCIe 的信息,或者您已经是满意的用户并希望将其扩展到您的需求,EnjoyDigital 可以提供标准商业支持以及咨询服务。
所以请随时联系我们,我们很乐意与您合作!(并最终缩短可能改进的列表 :))
[> 联系
电子邮件:florent [AT] enjoy-digital.fr
项目详情
关闭
litepcie-2023.12.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 6e79e3daf46b810ec550dd2c8c28c2ead8f86dd177ae5a94b535c52ec11b281e |
|
MD5 | 359bf9c10f02102abf65cb65bbc03c02 |
|
BLAKE2b-256 | 36d47fb652be0624ef9b29d71768189f6fb4872a17413c84a730a7c9687d761c |