博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用FPGA和MiSTer进行复古计算
阅读量:2530 次
发布时间:2019-05-11

本文共 2127 字,大约阅读时间需要 7 分钟。

另一个周末即将来临,我可以花一些时间从事我的激情项目,包括使用单板计算机,使用模拟器以及使用烙铁进行一般修补。 今年早些时候,我写过关于 。 一位同事将我们对旧技术的痴迷称为“ ”。

在“数字考古学”世界中,我听说了一种通过使用 (FPGA)来模拟旧系统的新方法。 这个概念让我很感兴趣,因此我花了一个周末来学习更多。 具体来说,我想知道是否可以使用FPGA模拟Commodore Amiga。

什么是FPGA?

当您构建电路板时,所有内容实际上都是在硅中蚀刻的。 您可以更改在其上运行的软件,但是物理电路是不可变的。 因此,如果要向其添加新组件或稍后对其进行修改,则受到硬件物理特性的限制。 使用FPGA,您可以对硬件进行编程以模拟新组件或更改现有组件。 这是通过可编程逻辑门实现的(因此得名)。 这为物联网(IoT)设备提供了很大的灵活性,因为以后可以对其进行更改以满足新的要求。

Terasic DE10-Nano

今天,FPGA被用于许多设备,包括智能手机,医疗设备,机动车辆和飞机。 由于FPGA可以轻松修改并且通常具有低功耗要求,因此这些器件无处不在! 它们的制造成本也不高,并且可以配置为多种用途。

Commodore Amiga设计的芯片具有特定用途和有趣的名称。 例如,“加里”是一个门阵列,后来在A3000和A4000上升级“他”时变成了“胖加里”。 “ Bridgette”是一个集成的总线缓冲区,而令人愉悦的“ Amber”是A3000上的一个“闪烁固定器”。 利用可编程门模拟这些芯片的能力为Amiga仿真提供了理想的平台。

介绍MiSTer项目

我一直在使用的板是的 。 该设备开箱即用,非常适合学习FPGA的工作原理,使您可以使用各种工具来入门。

Terasic DE10-Nano

建立在该板的顶部,并采用子板来提供内存扩展,SDRAM和改进的I / O,所有这些均建立在基于Linux的发行版上。 为了将其用作仿真平台,它通过使用“核心”进行了扩展,这些“核心”定义了电路板将要仿真的架构。

用MiSTer发行版刷新设备后,您可以加载“核心”,该核心是要使用的芯片的定义以及用于管理仿真系统的关联菜单的组合。

Terasic DE10-Nano

与运行仿真软件的Raspberry Pi相比,这些内核为仿真提供了更多的本机体验,通常,在基于软件的仿真器上不能完美运行的应用程序在MiSTer上可以正常运行。

如何开始

在线上有大量资源可以帮助您入门。 第一站是MiSTer的上的 ,其中包含有关将所有内容组合在一起的分步说明。 如果您希望从视觉上看板,请从 YouTube频道观看 。 有关配置 (mini Amiga的缩写)内核以加载磁盘或使用Amiga的经典和 ,请查看YouTube上精彩 。

核心数

MiSTer具有可用于多种系统的内核。 我的主要兴趣是由Minimig核心提供的Amiga仿真。 我还对在大学期间使用过的Commodore 64和PET以及BBC微型计算机感兴趣。 我玩《 也情有独钟,这是我承认的(很多年后!)是我本周末在大学计算机实验室预订时间的真正原因。

加载内核后,您可以通过连接的键盘并通过按F12来访问“内核”菜单来与之交互。 要访问外壳程序,可以使用F9键登录,该键会为您显示一个登录提示。 您将需要一个 (相当于PC的BIOS),以使Amiga运行。 您可以从获得这些文件, 出售 kickstart,其中包含启动系统所需的ROM以及可以在MiSTer上使用的游戏,演示和硬盘文件。 将kickstart ROM存储在SD卡的根目录中,并将其命名为“ KICK.ROM”。

在我的MiSTer板上,即使我的Pi有更多的可用内存,我也可以运行不在Raspberry Pi上运行的Amiga演示。 仿真更加准确,运行效率更高。 通过扩展板,我什至可以使用旧硬件,例如原始的Commodore显示器和Amiga游戏杆。

源代码

MiSTer项目的所有代码均可在其 。 您可以访问核心以及主要的MiSTer设置,关联的脚本和菜单文件。 这些会被积极更新,并且有一个坚实的社区正在积极开发,错误修复和改善所有贡献,因此请定期检查更新。 该仓库具有大量可用信息,可帮助您启动和运行。

安全注意事项

定制的灵活性带来了潜在的 。 所有MiSTer安装都在根帐户上附带了预设密码,因此,您要做的第一件事就是更改密码。 如果您使用该设备为游戏搭建机柜,并且已授予该设备访问网络的权限,则可以使用默认的登录凭据来利用该设备,从而可能导致第三方访问您的网络。

对于非MiSTer项目,FPGA公开了一个过程能够监听另一个过程的能力,因此限制对设备的访问应该是您要做的第一件事。 在构建应用程序时,应隔离进程以防止不必要的访问。 如果您打算将开发板部署在其他用户或共享应用程序可以访问的地方,则这一点尤其重要。

查找更多信息

在线上有很多有关此类项目的信息。 以下是一些您可能会有所帮助的资源。

社区

  • (公共Facebook组)

子板

视频和演练

  • :这是复古的未来吗?

在哪里购买硬件

MiSTer项目

  • (亚马逊)

其他FPGA

  • (Adafruit)
  • ,DE10-Nano和其他高性能FPGA的制造商

翻译自:

转载地址:http://vpszd.baihongyu.com/

你可能感兴趣的文章
摩拜单车2019春招笔试题
查看>>
Django之中间件
查看>>
数组对象排序
查看>>
react入门----事件监听
查看>>
针对利用tzselect修改时间及ln -sf 修改系统时间不好使的情况 linux 6.5
查看>>
34.QT模型(表格绘制)
查看>>
从零开始做一个开源项目 学习笔记
查看>>
URAL 1586. Threeprime Numbers 数位dp
查看>>
java学习之—栈匹配字符串符号
查看>>
VMware与宿主机同一网段
查看>>
AOP 实现请求参数打印
查看>>
网络编程基础,传输层服务
查看>>
快速排序
查看>>
opengl绘制图片
查看>>
tensorflow学习3---mnist
查看>>
牛客多校训练AFJ(签到)
查看>>
HDU 3251 Being a Hero 最小割
查看>>
Spring简介
查看>>
mac 安装redis
查看>>
Py修行路 python基础 (四)运算 copy
查看>>