升级时,我有两个剩余的2GB RAM模块从MacBook Pro中删除。我只是想知道它们是否可以与Arduino一起使用。我真是个初学者太多了,无论如何现在都不能尝试这样做,但是我很好奇这是否有可能,或者这是否是微控制器无法解决的太多内存。
升级时,我有两个剩余的2GB RAM模块从MacBook Pro中删除。我只是想知道它们是否可以与Arduino一起使用。我真是个初学者太多了,无论如何现在都不能尝试这样做,但是我很好奇这是否有可能,或者这是否是微控制器无法解决的太多内存。
Answers:
我要说的不是:最基本的不兼容性是那些模块上的引脚太多,甚至无法将其物理连接到Arduino。同样适用于类似的小型微控制器。ARM Cortex M3越来越近了,但是实际上很少有外部总线以这种方式连接RAM所必需的(我认为)。
但我会继续前进。假设您可以通过某种方式将芯片连接到Arduino,则另一个基本的电气兼容性问题是所需的电压。我认为这些RAM模块使用的是2.2V之类的奇数-在普通的Arduino板上甚至其他基本的业余爱好者微控制器中都没有。
假设一切都已完成,那么芯片将像Arduino的任何其他外部存储器一样工作。实际上,这一直都是做到的-人们添加外部EEPROM来存储重要的常数,或者添加SD / MMC卡来存储Web服务器日志等。当然,在这种情况下,RAM模块不会给Arduino带来真正的好处。它的主要特征是速度,而Arduino(也是,其他业余爱好者微控制器)通常不会以25MHz的速度打破时钟。他们太慢了,根本不在乎速度。而且,存储容量并不是大问题,因为与SD / MMC卡的接口非常容易,并且提供了足够的播放空间。
因此,即使有可能也不是明智的选择。
我会说不,并非在两者之间都没有插入大小合适的(引脚数)fpga,fpga与内存对话,而微控制器则使用分页方案与fpga对话。
可以想象,您可以使用闩锁系统来允许诸如arduino之类的东西生成32位地址,并且您可以设计出一些方案来生成刷新周期,但是这样做几乎没有意义,除非是作为一种技术。行使。
接口电路可能是结果系统中最复杂的部分,结果几乎没有实用价值。arduino将无法从RAM中执行代码,存储将是易失的,并且可能比arduino消耗更多的电量。如果要存储数据,则SPI EEPROM可能是更好的解决方案。
如果您查看DRAM芯片数据表,则DDR2的最低时钟速度约为50MHz +。因此,不能,您将无法通过微控制器与它们进行交互(除非它具有内置的硬件支持)。
您需要一个低压驱动器(SSTL),并需要某种方式来控制大约100个通道(每个差分通道,大约200个引脚。请考虑使用BGA。)
大多数DRAM必须至少刷新1kHz,并且可能要刷新得更多,才能降低误码率。然后,这将构成一项主要的后台任务,并用尽Arduino的大部分处理能力,甚至有可能以这种速率刷新内存。
不过,您可以看到某些微控制器(例如PIC24F / H / dsPIC33F)支持并行主总线接口,该接口允许访问某些类型的并行SRAM。甚至支持C语言,因为此外部存储器可以映射到多个代码变量中,甚至可以将内部和外部存储器组合在一起的块。外部存储器要求您编写一些PMB代码。但是,您最多只能处理1 MB。