1、ROM和RAM指的都是半导体存储器,ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是在掉电之后就丢失数据。
2、RAM分为两大类:SRAM和DRAM。
SRAM为静态RAM(Static RAM/SRAM),SRAM速度非常快,是目前读写最快的存储设备,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。
DRAM为动态RAM(Dynamic RAM/DRAM),DRAM保留数据的时间很短,速度也比SRAM慢,不过它还是比任何的ROM都要快,但从价格上来说DRAM相比SRAM要便宜很多,计算机内存就是DRAM的。RAM价格相比ROM和FLASH要高。
3、LASH存储器又称闪存,它结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据(NVRAM的优势),U盘和MP3里用的就是这种存储器。
扩展资料:
存储器的概念很广,在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
计算机中全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。它根据控制器指定的位置存入和取出信息。有了存储器,计算机才有记忆功能,才能保证正常工作。
计算机中的存储器按用途存储器可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。
参考资料:
说下我的理解,仅供参考。SRAM和SDRAM应该是统一编址的,地址范围不一样,对应好运行地址应该就行。两种方式都需要指定code运行空间。1函数指针实现的话,定义一个函数指针,将运行地址赋值给它,再执行就行了。2指定运行地址要看具体使用的链接器,gcc的话应该就是lds,执行前需要先搬运,搬运方式就是memcpy。
系统存储器是一块独立的rom,用来存储启动代码,实现通过串口、usb、网口等对单片机的烧写。
用户闪存也是rom,用来存储你编写的程序。
sram就是用来保存程序运行时产生的临时数据的随机存储器。
内存:SRAM和DRAM
SRAM,静态RAM。每个单元由6个晶体管组成,用于CPU和GPU缓存;
DRAM,动态RAM。每个单元由1个晶体管组成,用于内存条;
寄存器(SRAM)
内核的 控制部件(CU) 中,含 指令寄存器(IR) 和 程序计数器(PC);
内核的算术及逻辑部件(ALU) 中, 累加器(ACC)
以上就是关于ROM、RAM、DRAM、SRAM和FLASH的区别是什么全部的内容,包括:ROM、RAM、DRAM、SRAM和FLASH的区别是什么、linux下如何指定函数从DDR跳转到指定内存(SRAM)中运行、各位嵌入式高手,我想问一下,STM32中,系统存储器,用户闪存,SRAM到底指的什么谢谢。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)