1 ROM 、RAM、IROM、IRAM
ROM:read only memory 只读存储器
ROM是指程序运行的过程中不能直接通过数据总线、地址总线进行数据的写操作,必须借助于相关的控制器接口来进行数据的写操作。
ROM大部分对应着外部存储器,主要是用来存储永久性数据的,程序不能在其上运行,也不能在保存程序运行时的数据。比如硬盘、Flash(U盘、Nand、iNand、SSD)、光盘等。但是也有特例,比如Norflash,能够映射到CPU内存的地址空间中,可以直接用来运行程序。至于Norslash在程序运行的过程中能不能修改其中的内容,暂时不清楚。
实际上,STM8S文档中描述其中EEPROM分为两个存储块,一个为Flash:主要用来存储和运行程序,一个为数据EEPROM:主要用来存储想要永久保存的用户数据。Flash部分主要通过写保护使得程序运行过程中不能进行写操作,否则程序会停止执行。
RAM:ramdom access memory 随机访问存储器
RAM主要是指内部存储器,可以用来运行程序和保存程序运行时所用到的数据,比如SRAM、DRAM、DDR等。CPU可以通过数据总线、地址总线直接访问RAM中的数据。
注意
CPU连接内存和外存的连接方式不同。内存需要直接地址访问,所以是通过地址总线&数据总线的总线式访问方式连接的(好处是直接访问,随机访问;坏处是占用CPU的地址空间,大小受限);外存是通过CPU的外存接口来连接的&