memory - 速度比较eeprom-flash-sram

标签 memory avr

目前正在为 atmel tiny45 微 Controller 编码,我使用了几个查找表。存放它们的最佳地点在哪里?您能大致了解一下 sram-flash-eeprom 之间的内存速度差异吗?

最佳答案

EEPROM 是迄今为止最慢的替代方案,写入访问时间约为 10 毫秒。读取访问与 FLASH 访问一样快,加上地址设置和触发的开销。因为 EEPROM 的地址寄存器没有自动递增,每个字节读取至少需要 4 条指令。

SRAM 访问是最快的(直接寄存器访问除外)。

FLASH 比 SRAM 慢一点,并且在每种情况下都需要间接寻址(Z 指针),这可能需要也可能不需要 SRAM 访问,具体取决于表的结构和访问模式。

指令的执行时间见AVR Instruction Set ,尤其是 LPMLDSLDLDD 指令。

关于memory - 速度比较eeprom-flash-sram,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14728968/

相关文章:

c - aligned_alloc返回赋值警告

c - c中的局部变量和内存

java - 如何减少spring boot的内存使用?

c - 为什么我的程序只能在调试器中运行?

c - Atmega @ 8MHZ 延迟 8 倍到快

c - 在 EEPROM 中保存数组

c - 不同文件中的相同函数返回不同的结果

java - Java数据结构的空间复杂度

常数积分表达式所需的错误

c - 生成/输出时钟脉冲(C代码)