0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA中ROM与RAM相关知识汇总

FPGA设计论坛 来源:博客园 作者: Paul安 2021-09-08 11:12 次阅读

一、基本概念

最熟悉的两个词语应该是RAMROM,RAM(Random Access Memory)的全名为随机存取记忆体,它相当于PC机上的移动存储,用来存储和保存数据的。它在任何时候都可以读写,RAM通常是作为操作系统或其他正在运行程序的临时存储介质,它的一切都是最好的,唯一缺点断电一切东西都没有了。

一般情况下,现在移动设备也多了,我们叫它内存,更通常的叫运行内存。还有一个熟悉的词DDR2或DDR3,后面还会学习到的。

RAM 有两大类,一种称为静态RAM(Static RAM/SRAM),SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。

另一种称为动态RAM(Dynamic RAM/DRAM),DRAM是通过在电容器中积累电荷来保存数据的存储元件,电容器中充电状态是1,放电状态是0,由于电容器中的电荷在一点时间后会衰减,所以DRAM需要定期重新写入数据的Refrash操作,DRAM保留数据的时间很短,速度也比SRAM慢,不过它还是比任何的ROM都要快。

但从价格上来说DRAM相比SRAM要便宜很多,计算机内存就是DRAM的。DRAM分为很多种,根据访问方式和规格的不同,分为不同的种类常见的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM、SGRAM以及WRAM等。

DDR RAM(Double-Date-Rate RAM)也称作DDR SDRAM,这种改进型的RAM和SDRAM是基本一样的,不同之处在于它可以在一个时钟读写两次数据,这样就使得数据传输速度加倍了。

最早的为 FP DRAM,也称作快页内存,不过限于其定时刷新的工作原理,所以导致这种内存的数据存取速度并不快。但是这种内存却意外地成为了内存发展承上启下的关键因素。因为之后的内存规范,与FP DRAM在工作原理上可谓是非常相似。

随后EDO RAM出现在众人面前,这种内存也属于72Pin SIMM内存的范畴,不过由于有着更大的容量和更先进的寻址方式,所以在486时代非常盛行。这种内存与FP DRAM原理大致相同,但是由于这种内存简化了数据访问的流程,所以在存取速度上要比传统的DRAM要快上不少。

速度虽然缓慢,看到了RAM的重要性,出现了SDRAM。而第一代SDRAM被称为SDR SDRAM(Single Data Rate SDRAM)。64bit的带宽与当时处理器的总线宽度保持一致,这就表示一条SDRAM就能够让电脑正常运行,这样大大地降低了内存的购买成本。

由于内存的传输信号与处理器外频同步,所以在传输速度上,DIMM标准SDRAM要大幅领先于SIMM内存。SDRAM出世之时恰逢IntelAMD的主频大战,无论是主频、倍频和外频都在不断进行变化。倍频和主频的提升对于内存来说并不是问题,真正的问题在于处理器外频的提高需要SDRAM工作在更高的频率上。

所以SDRAM的频率也经过了数次升级。从最早的PC66到PC133,从SDRAM频率的变化就能看出处理器外频的升级。而在超频市场中,为了能够让处理器外频达到更高的水平,市面上还出现了PC150、PC166等规格,可以说SDRAM在频率上更加灵活,性能也能够满足平台的需求。

DDR SDRAM英文名称为Dual Date Rate SDRAM,从字面意思上也能知道,这种内存比第一代的SDR SDRAM多出一倍的传输速率。其秘密就在于DDR SDRAM在数据传输中同时使用了信号的上升沿和下降沿,这样在相同的时钟下,DDR SDRAM的传输速率得到了成倍的提高。

ROM(Read Only Memory)的全名为唯读记忆体,它相当于PC机上的硬盘,用来存储和保存数据。ROM数据不能随意更新,但是在任何时候都可以读取。即使是断电,ROM也能够保留数据。但是资料一但写入后只能用特殊方法或根本无法更改,但这么久了ROM已经有了很大的发展,不再是最初的摸样了。

rom最初不能编程,出厂什么内容就永远什么内容,不灵活。后来出现了prom,可以自己写入一次,要是写错了,只能换一片,自认倒霉。人类文明不断进步,终于出现了可多次擦除写入的EPROM,每次擦除要把芯片拿到紫外线上照一下,想一下你往单片机上下了一个程序之后发现有个地方需要加一句话,为此你要把单片机放紫外灯下照半小时,然后才能再下一次,这么折腾一天也改不了几次。

历史的车轮不断前进,伟大的EEPROM出现了,拯救了一大批程序员,终于可以随意的修改rom中的内容了,这一段话就说出了ROM的发展历程。

狭义的EEPROM:这种rom的特点是可以随机访问和修改任何一个字节,可以往每个bit中写入0或者1。这是最传统的一种EEPROM,掉电后数据不丢失,可以保存100年,可以擦写100w次。具有较高的可靠性,但是电路复杂/成本也高。

它的改写是由高电压或者由控制端的逻辑电平来完成的。因此目前的EEPROM都是几十千字节到几百千字节的,绝少有超过512K的。我们也就发现了EEPROM的确可以实现随意读写,EEPROM的全称是“电可擦除可编程只读存储器”,即Electrically Erasable Programmable Read-Only Memory。

可介绍的这两种都不存在大容量并且也十分昂贵,那我们平时见到的几十G的存储设备是什么?flash就应运而生了。flash属于广义的EEPROM,因为它也是电擦除的rom。但是为了区别于一般的按字节为单位的擦写的EEPROM,我们都叫它flash。flash做的改进就是擦除时不再以字节为单位,而是以块为单位,一次简化了电路,数据密度更高,降低了成本。上M的rom一般都是flash。

ROM的应用

对数指数、三角函数等常规计算通过写出真值表,将自变量以地址码的形式输至ROM,用ROM表来实现。还有码制转换,例如二进制码转格雷码。脉冲序列发生器,伪彩色处理电路,也就是将一幅黑白图像变成彩色图像显示,将灰度图像对应到red , green , blue三个通道上,最后将三个通道的颜色值合成为需要显示的RGB颜色值即可。具体可参考 https://blog.csdn.net/huixingshao/article/details/42706699 。

接下来说一下flash的分类,flash分为nor flash和nand flash。nor flash数据线和地址线分开,可以实现ram一样的随机寻址功能,可以读取任何一个字节。但是擦除仍要按块来擦。nand flash同样是按块擦除,但是数据线和地址线复用,不能利用地址线随机寻址。

读取只能按页来读取。NOR Flash的读取,用户可以直接运行装载在NOR FLASH里面的代码。NAND Flash没有采取内存RAM的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取512个字节,采用这种技术的Flash比较廉价。

用户不能直接运行NAND Flash上的代码,因此好多使用NAND Flash的开发板除了使用NAND Flah以外,还作上了一块小的NOR Flash来运行启动代码。nandflash引脚上复用,因此读取速度比nor flash慢一点,但是擦除和写入速度比nor flash快很多。

nand flash内部电路更简单,因此数据密度大,体积小,成本也低。因此大容量的flash都是nand型的。小容量的2~12M的flash多是nor型的。nor flash可以进行字节寻址,所以程序可以在nor flash中运行。嵌入式系统多用一个小容量的nor flash存储引导代码,用一个大容量的nand flash存放文件系统和内核。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21736

    浏览量

    603201
  • DRAM
    +关注

    关注

    40

    文章

    2314

    浏览量

    183470
  • ROM
    ROM
    +关注

    关注

    4

    文章

    572

    浏览量

    85752
  • RAM
    RAM
    +关注

    关注

    8

    文章

    1368

    浏览量

    114669
  • EDO
    EDO
    +关注

    关注

    0

    文章

    3

    浏览量

    7629

原文标题:FPGA中ROM与RAM相关知识总结

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    智能手机RAMROM是什么?

    智能手机发展至今,一直以来人们对于手机存储方面的叫法就非常凌乱,什么运行内存喇,内存喇,存储空间啦,RAMROM等等,不同的叫法把消费者们绕的云里雾里,概念混淆不清。在这些叫法,识别率最高的应该就是
    发表于 10-18 10:47 2793次阅读

    Xilinx FPGA入门连载59:FPGA 片内ROM FIFO RAM联合实例之功能概述

    的在线逻辑分析仪chipscope,我们可以观察FPGA片内ROM、FIFO和RAM的读写时序,也可以只比较ROM预存储的数据和RAM最后读
    发表于 03-16 12:43

    micrlaze RAM/ROM分配问题

    如果您正在使用微型光纤处理器并编译软件代码并且整个图像适合FPGA RAM ...则成为ROM。这是否意味着您每次要进行软件更改时都必须重新编译FPGA并获取新的.bit文件?有更简单
    发表于 05-20 06:37

    ARMROM/RAM/FLASH的相关知识有哪些?

    ARMROMRAM,FLASH基础知识备忘
    发表于 02-22 07:32

    ROMRAM、DRAM、SRAM和FLASH的区别

    常见存储器概念辨析:RAM、SRAM、SDRAM、ROM、EPROM、EEPROM、Flash存储器可以分为很多种类,其中根据掉电数据是否丢失可以分为RAM(随机存取存储器)和ROM
    发表于 12-04 14:23 2998次阅读

    了解内存工作原理,及ROMRAM、FLASH的区别

    偶然之间与同事谈论到ROMRAM,FLASH一些知识,而突然之间当我们去说这些英文单词的话还真是粗浅的知道,而在我们当中的MCU一些含义也不甚清楚,索性今天晚上就来汇总这方面的
    的头像 发表于 06-29 14:39 1.1w次阅读

    ROMRAM,FLASH深度知识盘点,绝对有你不清楚的地方

    前几天偶然之间与同事谈论到 ROMRAM,FLASH 一些知识,而突然之间当我们去说这些英文单词的话还真是粗浅的知道,而在我们当中的 MCU 一些含义也不甚清楚,索性今天晚上就来汇总
    的头像 发表于 10-30 11:28 720次阅读

    如何使用FPGA内部的ROM以及程序对该ROM的数据读操作

    FPGA本身是SRAM架构的,断电之后,程序就消失,那么如何利用FPGA实现一个ROM呢,我们可以利用FPGA内部的RAM资源实现
    的头像 发表于 02-08 16:30 1.2w次阅读
    如何使用<b class='flag-5'>FPGA</b>内部的<b class='flag-5'>ROM</b>以及程序对该<b class='flag-5'>ROM</b>的数据读操作

    如何使用FPGA内部的RAM以及程序对该RAM的数据读写操作

    RAMFPGA中常用的基础模块,可广泛用于缓存数据的情况,同样它也是ROM,FIFO的基础。本实验将为大家介绍如何使用FPGA内部的RAM
    的头像 发表于 02-08 15:50 1.4w次阅读
    如何使用<b class='flag-5'>FPGA</b>内部的<b class='flag-5'>RAM</b>以及程序对该<b class='flag-5'>RAM</b>的数据读写操作

    【ZYNQ Ultrascale+ MPSOC FPGA教程】第七章 FPGA片内ROM测试实验

    FPGA本身是SRAM架构的,断电之后,程序就消失,那么如何利用FPGA实现一个ROM呢,我们可以利用FPGA内部的RAM资源实现
    发表于 02-26 06:22 3次下载
    【ZYNQ Ultrascale+ MPSOC <b class='flag-5'>FPGA</b>教程】第七章 <b class='flag-5'>FPGA</b>片内<b class='flag-5'>ROM</b>测试实验

    区分单片机RAMROM、Flash

    复习单片机ROMRAM、Flash的区别
    发表于 12-01 20:36 20次下载
    区分单片机<b class='flag-5'>RAM</b>、<b class='flag-5'>ROM</b>、Flash

    详解ROMRAM的区别与相关知识

    内存是计算系统最重要的元素,因为没有它,计算机就无法执行简单的任务。 计算机内存有两种基本类型 - 主内存(RAMROM)和辅助内存(硬盘驱动器、CD 等) 。 随机存取存储器 (RAM
    的头像 发表于 04-05 13:39 4.3w次阅读
    详解<b class='flag-5'>ROM</b>和<b class='flag-5'>RAM</b>的区别与<b class='flag-5'>相关</b><b class='flag-5'>知识</b>点

    手机上的ROMRAM技术原理

    ROMRAM的区别是什么?ROMRAM都是一种存储技术,只是两者原理不同,RAM为随机存储,掉电不会保存数据,而
    的头像 发表于 03-30 14:53 2782次阅读

    单片机RAM vs ROM

    单片机RAM vs ROM
    的头像 发表于 09-28 17:57 1189次阅读

    什么是RAMROM

    RAM(Random Access Memory,随机存取存储器)和ROM(Read-Only Memory,只读存储器)是计算机存储系统的两种重要组成部分,它们在计算机的性能和功能上扮演着不同的角色。下面将分别详细解释
    的头像 发表于 08-30 11:38 3905次阅读