优秀的 Verilog/FPGA开源项目介绍(十二)- 玩FPGA不乏味

点击蓝字关注我们

关注、星标公众号,精彩内容每日送达
来源:网络素材

优秀的 Verilog/FPGA开源项目介绍(十二)- 玩FPGA不乏味

Hello,大家好,之前给大家分享了大约一百多个关于FPGA的开源项目,涉及PCIe、网络、RISC-V、视频编码等等,这次给大家带来的是不枯燥的娱乐项目,主要偏向老的游戏内核使用FPGA进行硬解,涉及的内核数不胜数,主要目标是高的可实现性及复现性。

因为是娱乐项目,所以用本文中会有很多动图,下面开始。

1、zxuno

42145ff914dbd91954bf3fd5650b0d25.png

项目地址如下:

https://github.com/zxdos/zxuno

官方网站:

https://zxuno.speccy.org/faq.shtml

74242b60045ec6120cd7e300ffd7334e.png

第一个,zx-uno,这是一个使用Xilinx Spartan XC6SLX9 FPGA实现整个 ZX Spectrum 计算机系列(ZX Spectrum是英国第一批家喻户晓的家用电脑之一,类似于美国的Commodore 64。但正是由于它的简单性、多功能性和伟大的设计,软件公司很快就赶上了为它编写各种软件的潮流)以及 ULAPlus、TurboSound 等系统的计算机,大小与 Raspberry Pi 相同。

支持的软核:

ZX Spectrum ZX81 SAM Coupé MSX1 C64 Atari 800XL
Jupiter ACE Oric Atmos BBC Micro VIC-20 Acorn Electron ZX Spectrum TBBlue Apple II 
Acorn Atom Amstrad CPC 6128 (no SD support) ZX Spectrum Kyp C16 / C116 / Plus4
Sharp MZ-700 PC/XT 512k PC/XT 2Mb PET ZX Spectrum 128 Kyp Multicomp CP/M
Galaksija Amstrad CPC 6128 (SD support) Amstrad CPC 464
Spectrum with PZX ZX Spectrum Kyp+VGA+TSound+SAA1099 Flappy Bird
TRS-80 ZX Spectrum (ESP26 UART support) Jupiter ACE (AY-3-8910, SD support)
Apple I Oric Atmos (with SD support) ZX Spectrum Kyp (native VGA output)

同时也支持很多街机内核,就不过多介绍了,自己去项目主页看一看,瞧一瞧!

按照开源地址制作硬件后(包含源文件及Gerber,可以直接打样),BOM如下:

2148082e8a732a6b02c8972b9c3232a4.png

硬件展示如下:

99b516fb5d3337e3e69ee4bec2ccdcf8.gif

然后就是启动:

fba690376da48b41c186167146b21347.gif

接下来就是测试

8f00e9cab7afcb71b8c1d95c191ba59f.gif

最后就是尽情享受

e98c42510512600fd4241645c378d292.gif

最后就是本项目是众筹项目,外壳也是必须的,下面是几种外壳产品:

6bc32a3ab1f9e47c4a23b22b3b17c8ec.png 84a7f6ac96bbade97f607c08ebabbc7c.png

805c83150b18f88770ee7766967cdd5f.jpeg

a72a2fab8cb34f7395dbbf633acdfd6a.jpeg

4b2e259740187cf0744e15914d2e16c2.jpeg

757dec07823a5be340e10be1e89844e3.jpeg

2、sidewinder

8cf6e2129cdb3002f8d92887173fc09d.png

https://github.com/ManuFerHi/SidewinderFPGA

主要参数:

FPGA BOARD EP4CE22

SDRAM 256Mbit

项目提供硬件原理图(PDF),Gerber(可以直接打板)

硬件展示

5b8488cab6f62d5af720ff435edff184.gif

启动

923c40351d18f2ca5f34e9179ae35be2.gif

计算机启动

27b297f21cb6950683dbe458786a4494.gif

游戏选择

bddf89e4df60b2cb63750fb3270d27d2.gif

游戏演示

3e91a79e30fc0da99b7bddfa3cb2992a.gif

mister

https://github.com/MiSTer-devel/Main_MiSTer

最后一个就是mister,其实还有很多其他类似的项目,但是有了这个项目其他项目就相形见绌了,这一个项目可以看做是N个项目的集合,而且mister的强大基本会在未来几年内不会被超越。

3d5ee8bc5c6314b72b039d892e3deb70.png

2e8d6ff75203f492b44304296f7c7ab4.png

我们先看下这个项目的介绍:

MiSTer是一个开源项目,旨在使用现代硬件重新创建各种经典计算机(50+系统)、游戏机(25+种游戏机)和街机(10+种常用街机内核)。允许软件和游戏图像像在原始硬件(硬解)上一样运行,使用外围设备,如鼠标、键盘、操纵杆和其他游戏手柄。

硬件特性

使用DE10-NANO的开发板(很好购买)+SDRAM扩展板(不是必须,增加会增加好多内核适配)+低解板(不是必须)+USB HUB(不是必须)

所有需要的硬件都是开源的(AD的源文件),可以直接打板。

DE10-NANO的特点:

  • Altera Cyclone V SE FPGA with 110,000LE (41,500ALM) and 5,570Kbit of Block RAM.

  • ARM Cortex A9 dual-core CPU at 800MHz.

  • HDMI video and audio allowing connect to any modern monitor/TV.

  • DDR3 1GB available for both ARM and FPGA.

  • High speed ARM<->FPGA interconnect due to both being in the same chip.

硬件展示

e2803f90460e75f45ddf80be1d0a8ab0.gif

硬件组装完成

08fb3b6b478272d2fecbdfced8dfe254.gif

制作SD卡上系统

项目中提供了各种内核的源文件,可以根据自己需求进行移植,如果使用项目提供的板卡,则可以使用官方提供的SD卡镜像,镜像位置:

https://github.com/MiSTer-devel/mr-fusion/releases

制作过程如下:

06be1e1b60c97ba39a5fc26efc91018f.gif

启动

4c2b8e5fbcb5b7baabf52e58e9ee5a49.gif

更新游戏

因为跑得的Linux系统,所以可以使用SSH、TCP等工具通过网口从PC把游戏导入到SD卡内。

879679a389e268e4eb61baa60478d0ac.gif

计算机启动演示

af1c051d0af1726f416b2c2e9fe303fa.gif

873c6d0f1a04d1f2a7a822eac900b1a8.gif

当然Windows95这种也不在话下:

407ff55254b696a4d9deeb863f5d4d1b.gif

游戏演示

54ed59b7c839b79030b35e19d0284b97.gif

b53537660e2086b8db36f8db780aadd7.gif

总结

今天的项目就介绍到这里,有兴趣或者有什么问题可以联系我。想找找童年记忆的小伙伴,可以试一试最后的项目,如果觉得资金不够第一个第二个项目也是可以试一试的(第二个项目后续我会移植一下)。

2c69c1f2db28532ea21a5f6183a53dee.jpeg

想要了解FPGA吗?这里有实例分享,ZYNQ设计,关注我们的公众号,探索

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
优秀Verilog/FPGA 开源项目之一是 PCIe。PCIe(Peripheral Component Interconnect Express)是一种高速串行计算机扩展总线标准,用于连接外部设备和计算机系统。下面是我参考的介绍 PCIe 的 Verilog/FPGA 开源项目: 1. Rocket-Chip: Rocket-Chip 是由伯克利加州大学开发的一个开源项目,它提供了一个用于构建 RISC-V SoC(System on Chip)的开发平台。Rocket-Chip 的设计中包含了 PCIe 支持,可以作为 FPGA 上 PCIe IP 核的一个很好的参考实现。Rocket-Chip 提供了详细的文档和示例代码,使用户可以根据需要进行修改和定制。 2. SERVE: SERVE 项目是由一个非营利机构 Open Compute Project(OCP)发起的一个开源项目,旨在提供一种可扩展的 PCIe 设备框架。该框架可以实现支持 PCIe 接口的硬件设备在 FPGA 上的快速开发和部署。SERVE 项目提供了基于 Verilog 的 IP 核和软件驱动程序,使用户可以更加灵活地开发和定制其 PCIe 设备。 3. LitePCIe: LitePCIe 是一个用于 FPGA 的轻量级 PCIe 核,是开源项目 LiteX 中的一个组成部分。LitePCIe 具有灵活的架构,可方便用户进行定制。它提供了一套完成的功能,包括物理层、逻辑层和传输层。此外,LitePCIe 也有着很好的文档和示例代码,方便用户进行学习和使用。 这些 Verilog/FPGA 开源项目提供了丰富的资源和参考实现,适合于学习和使用 PCIe 在 FPGA 上的开发和实现。用户可以根据自己的需求选择合适的项目,借助这些资源,可以更加高效地进行 PCIe 设备的开发和部署。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值