FPGA下载网页游戏推荐

0

FPGA(Field-Programmable Gate Array)是一种可编程逻辑器件,主要用于电子设计和嵌入式系统中,进行硬件加速和定制化设计。使用FPGA下载和运行网页游戏可能不是通常的做法,因为FPGA主要用于处理数字信号,而不是处理图形或网页内容。通常,网页游戏是通过CPU或GPU在浏览器中运行的,这些处理器能够实时处理复杂的图形和计算任务。

然而,如果你对FPGA有深入的了解,想要进行一些实验,比如使用FPGA来实现一种加速器,用于处理网页游戏中的特定计算密集型任务,比如图像处理或物理引擎,你可以考虑以下步骤:

1. 选择游戏:选择一款计算密集型的网页游戏,如棋类游戏或者需要大量计算的3D游戏。

2. 分析游戏:理解游戏中的计算瓶颈,找出哪些部分可以通过硬件加速来提高性能。

3. FPGA编程:使用 FPGA开发工具(如Xilinx ISE或Altera Quartus)编写硬件描述语言(如Verilog或VHDL)的程序,实现一个加速器。

4. 下载和配置:将FPGA程序下载到硬件上,配置好接口,使其能与CPU或GPU通信。

5. 集成:将FPGA加速器与游戏引擎集成,确保数据传输和控制的正确性。

请注意,这需要一定的硬件设计和嵌入式系统开发知识,并且不是所有网页游戏都适合这种优化方式,而且实际效果可能因游戏的复杂度和FPGA的性能而异。对于大部分网页游戏,通常使用CPU或GPU的性能已经足够。

老掌机新玩法:FPGA模拟平台让GBA实现了同屏玩联机游戏

当然回归理性来说,要说实用性和有什么意义,这样玩还是显得无聊些,毕竟如今网络对战这么先进,也有VBA Link这种软件方式实现,甚至大家直接买两台二手的GBA来联机玩都会更简单直接,但这些根本不重要,我们可以看到自己曾经热爱的游戏机,原来还可以这样继续有新玩法的时候,始终都是件让人兴奋的事情,而这种感觉可能就是大家所说的情怀吧。

但这些本质上还是使用现代硬件架构的软件模拟,不能解决软件模拟带来的问题。如任天堂迷你FC实际上是在ARM架构上运行Linux系统。

对高难度的动作游戏来说,虽然延迟只有毫秒级别,但还是能感觉到手感不同三国单机魂玉的是什么游戏,老游戏难度普遍又高,输入延迟使一些高级技巧难以操作。

FPGA下载网页游戏推荐

对比来看,在两个平台上游戏都可以流畅运行,FPGA 解决方案也可以在 1920×1080 分辨率下以 60 fps 的速度渲染游戏。两者之间主要的区别在于功耗,FPGA 板的功耗是 660 mW,PC 的功耗是 35W。注意,据我了解,该游戏根本没使用 Ryzen CPU 中的 GPU,而是使用 SIMD 指令来加速游戏。虽然,依靠 GPU 进行 3D 图形加速的类似游戏消耗可能都挺少的,但仍然还是高于 FPGA 板的。另外,他们此次使用的 FPGA 是 28 纳米制程的,也就是说在与 Ryzen CPU 相同的 7纳米制程工艺的 FPGA 上预期效率就会提高 6 倍。

该游戏开发需要一些数学函数,包括:浮点加法、减法、乘法、除法、倒数、平方根、平方根倒数、向量点积、向量归一化等。出于性能原因和设计情况,使用定点对应函数更容易适应目标 FPGA,也更利于与其他类型(整数和浮点数)进行相应转换。

一般来说,在 FPGA 上使用的 Verilog 和 VHDL 语言都不太适合游戏开发或其他复杂的应用程序。因此,阿根廷的开发人员 Victor Suarez Rovere 和宾夕法尼亚州的系统工程师 Julian Kemmerer 就决定使用 Julian 的“PipelineC”类 C 硬件描述语言(HDL)、Victor 的解析器,以及数学类型库的 CflexHDL 工具来开发,先通过标准编译在 PC 上运行相同的代码,然后再通过自定义 C 到 VHDL 转换器在 FPGA 上运行相同的代码。

《Spheres Vs Shapes》是一款开源的 3D 光线追踪游戏,用 C 语言编写后又被转换为了 FPGA 比特流。据说该游戏在 FPGA 硬件上的运行效率是在 AMD Ryzen 处理器上运行的 50 倍。

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

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

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

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

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

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

Apple I Oric Atmos (with SD support) ZX Spectrum Kyp (native VGA output)

Spectrum with PZX ZX Spectrum Kyp+VGA+TSound+SAA1099 Flappy Bird

Acorn Atom Amstrad CPC 6128 (no SD support) ZX Spectrum Kyp C16 / C116 / Plus4

为Doom而生!大神纯FPGA实现Doom游戏芯片,无CPU、无指令计数器

但同时,作者表示给定的模块中没有两个相同的指令,每个指令各自实现算法的精确子部分。此外,状态还决定了流程以及选择下个状态,所以没有可以编程或重排列的指令。基于此,他的想法是将算法完全嵌入到电路本身,而不执行任何其他操作。

针对此看法,作者承认使用了 vga、sdram 控制器、帧缓冲器、texturing、分频器和渲染器等几种状态机,并且每个状态机都有活动状态指数。其中,渲染器最大,具有 69 个状态。并且,作者也同意将状态指数看作是一种指令计数器,尽管它是非常专业的指令。

专题: 单机游戏三国棋   单机游戏反三国   单机三国游戏2