您尚未登录。

楼主 #1 2021-01-25 00:56:28

metro
会员
注册时间: 2019-03-09
已发帖子: 445
积分: 489

有个大胆的想法——用树莓派Pico模拟NES?

Pico镇楼
Pico.jpg
相信这个小玩意大家都知道了,双核Cortex-M0+,时钟频率133MHz(实际上保底可以超频到250MHz+),自带PIO、SIO等一系列有趣的外设,并且拥有2MB SPI Flash(自带16KB的cache)+264KB SRAM的内存.
那么问题来了,已知:

  1. 之前我在Nios II上移植过NES的模拟器,可以跑到20 fps左右(不包含索引色处理的部分,声音暂时也没做),而且当时没有用上汇编优化,(不排除超频的前提下)RP2040的性能应该足以模拟NES了。

  2. RP2040有两个核心,可以像NES一样,一个模拟2A03(CPU+APU),另一个模拟PPU,两者可以同时工作。

  3. RP2040的片上内存达到了264KB,不考虑显示部分的话应该够用了,而且显示部分可以由一个核心直接渲染,不需要把一整帧渲染后的RGB图像存储下来,大大节约了空间。

  4. RP2040支持XIP,可以把Flash直接映射到内存空间,最大支持16MB,足以放下所有的NES游戏并且直接寻址,有cache的话速度应该还不错。

  5. RP2040的PIO可以用来处理输出并且自带FIFO,根据别人的demo来看直接输出VGA应该没啥问题。

  6. RP2040的SIO中的Interpolator应该很适合用来处理音频数据。

感觉经过以上分析,似乎在Pico(RP2040)上跑个NES模拟器是可行的?欢迎大家讨论。

离线

#2 2021-01-25 09:41:21

raspberryman
会员
注册时间: 2019-12-27
已发帖子: 503
积分: 465

Re: 有个大胆的想法——用树莓派Pico模拟NES?

想法够大胆,接spi的mpu屏幕?

离线

#3 2021-01-26 17:47:37

blade_cheng
会员
注册时间: 2018-10-15
已发帖子: 72
积分: 68

Re: 有个大胆的想法——用树莓派Pico模拟NES?

30块钱太贵了,这个玩意儿是给玩Arduino的人多一个选择

离线

#4 2021-01-26 17:49:06

blade_cheng
会员
注册时间: 2018-10-15
已发帖子: 72
积分: 68

Re: 有个大胆的想法——用树莓派Pico模拟NES?

而且超频也不仅仅是把主时钟频率提上去就完了,要考虑flash读等待周期吧

离线

#5 2021-01-26 18:49:01

armstrong
会员
注册时间: 2019-04-10
已发帖子: 287
积分: 196.5

Re: 有个大胆的想法——用树莓派Pico模拟NES?

我觉得还不如esp32有得玩。

离线

楼主 #6 2021-01-30 01:18:37

metro
会员
注册时间: 2019-03-09
已发帖子: 445
积分: 489

Re: 有个大胆的想法——用树莓派Pico模拟NES?

blade_cheng 说:

而且超频也不仅仅是把主时钟频率提上去就完了,要考虑flash读等待周期吧

一方面,RP2040有SRAM,而且AHB-Lite总线的Crossbar映射是完整的,意味着两个核的访问可以做到互不冲突,可以把关键代码放到SRAM以提升效率;另外,RP2040对于Flash有16KB的Cache,这个Cache应对(简单的)NES游戏来说应该是比较够用的。

离线

楼主 #7 2021-01-30 01:22:52

metro
会员
注册时间: 2019-03-09
已发帖子: 445
积分: 489

Re: 有个大胆的想法——用树莓派Pico模拟NES?

armstrong 说:

我觉得还不如esp32有得玩。

感觉ESP32和RP2040是两种不大一样的玩意,前者的卖点非常突出(互联、性能够用),简单操作就可以做出非常有趣的东西;后者则把料都堆在了提升数字处理性能的地方(虽然部分搭配确实有待商榷,比如神奇的高频双核Cortex-M0+),属于需要细致研究才能做出有意义成品的芯片,但是玩好了可以实现意想不到的效果,可能更适合geek向的应用。

离线

#8 2021-01-30 10:06:52

微凉VeiLiang
会员
所在地: 深圳
注册时间: 2018-10-28
已发帖子: 630
积分: 525
个人网站

Re: 有个大胆的想法——用树莓派Pico模拟NES?

感觉可以,就是声音如果是带dac会好很多

离线

#9 2021-01-30 10:43:37

rick lou
会员
所在地: 中国北京海淀
注册时间: 2019-09-12
已发帖子: 219
积分: 207.5

Re: 有个大胆的想法——用树莓派Pico模拟NES?

连接psram扩展内存

离线

#10 2021-01-30 14:30:23

hjjft
会员
注册时间: 2017-10-20
已发帖子: 17
积分: 16.5

Re: 有个大胆的想法——用树莓派Pico模拟NES?

刚成功移植nes模拟器到SWM32SRET6上,移植了3个版本,经过实际验证,推荐正点原子的版本,经过汇编优化,79种Mapper,支持的游戏多。Pico双核133MHz的U跑起来应该毫无压力。

离线

#11 2021-01-31 14:11:09

rick lou
会员
所在地: 中国北京海淀
注册时间: 2019-09-12
已发帖子: 219
积分: 207.5

Re: 有个大胆的想法——用树莓派Pico模拟NES?

spi接st7789屏幕,stm32h750能到45fps(接了ip6404l和mx25l256)

离线

#12 2021-11-16 13:55:31

smiletiger
会员
注册时间: 2021-07-28
已发帖子: 127
积分: 35

Re: 有个大胆的想法——用树莓派Pico模拟NES?

该评论内容与本帖子无关,鼓励各位坑友积极发言讨论与帖子有关的内容!

离线

  • 不通过:其他

#13 2024-03-12 18:52:12

aquasnake
会员
注册时间: 2024-01-09
已发帖子: 111
积分: 513

Re: 有个大胆的想法——用树莓派Pico模拟NES?

pico可以用spi flash转化到模拟并口flash,就这个,就已经足够了,不仅可以做游戏机,还能做游戏卡.

它可以做到比其他的单片机更接近硬件实体机,而且pio模拟vga,甚至hdmi都不在话下!

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn