《电子技术应用》
您所在的位置:首页 > 电子元件 > 其他 > 扫盲:FPGA开发板为什么要使用SDRAM呢

扫盲:FPGA开发板为什么要使用SDRAM呢

2022-11-23
来源:英尚微电子

  SDRAM有一个同步接口,在响应控制输入前会等待一个时钟信号,这样就能和计算机的系统总线 同步。时钟被用来驱动一个有限状态机,对进入的指令进行管线(Pipeline)操作。

  这使得SDRAM与没有同步接口的异步DRAM相比,可以有一个更复杂的操作模式。

  管线 意味着芯片可以在处理完之前的指令前,接受一个新的指令 。在一个写入的管线 中,写入命令在另一个指令执行完之后可以立刻执行,而不需要等待数据写入存储队列的时间。

  在一个读取的流水线中,需要的数据 在读取指令发出之后固定数量的时钟频率后到达,而这个等待的过程可以发出其它附加指令。这种延迟被称为等待时间(Latency),在为计算机购买内存时是一个很重要的参数。

  SDRAM在计算机中被广泛使用,从起初的SDRAM到之后一代的DDR(或称DDR1),然后是DDR2 和DDR3 进入大众市场,2015年开始DDR4进入消费市场。如UMI型号 UD408G5S1AF的一款8Gb 32位 DDR4 SDRAM,是一款支持使用在英特尔Arria 10 SoC FPGA以及Kintex Ultrascale FPGA中的存储器。

  32位 DDR4 SDRAM非常适合边缘类计算,或对PCB面积有紧凑要求的深度学习计算设备。英尚微支持32位DDR4 SDRAM送样及测试。

  为什么要使用内存控制器

  动态内存的驱动比静态内存的驱动更加复杂…我们需要行,列和存储体以及刷新周期来处理。但是由于SDRAM的高速性和低单位成本使其引人注目。

  因此我们需要的是一种访问SDRAM的方法,但是要易于使用静态内存。这就是创建内存控制器的原因。它们充当转换层:一方面,它们为用户提供了易于使用的内存接口,然后进行了繁琐的工作来驱动真实的SDRAM信号。

  SDRAM引脚

  如果我们看一下SDRAM的引脚,那么会有一些新来者。

29.JPG

  地址和数据总线仍然存在,但是地址总线只有11位(用于提供要打开的行,然后提供列地址)。BA引脚指定了存储区(由于在我们的示例中只有2个存储区,因此我们仅需要一个引脚)。

  WE,CAS和RAS一起用作命令引脚,因此我们可以向SDRAM发送8个不同的命令(命令包括“打开行”,“读取”,“写入”和“关闭行”)。使用了其他一些引脚(但未在图片上显示),例如时钟,片选,字节使能…

  请注意,在动态内存中,“打开行”称为激活,“关闭行”称为预充电。

  刷新

  SDRAM是动态存储器:由于每个存储器位值(0或1)都保存在一个微小的电容器中,电荷随时间衰减,因此需要定期刷新其内容。

  但是衰减率足够低,只要定期对其进行读取和重新写入(“刷新”),制造商就可以保证不会丢失任何数据。

  有两种刷新机制

  · FPGA将“自动刷新”命令发送到SDRAM。

  只要确保它定期完成(SDRAM数据表会告诉您最小刷新频率)。

  · FPGA“经常”访问每一行。

  打开一行会导致SDRAM中的“感测放大器”获得该行所有电容器电荷的副本。然后,当该行关闭时,较早检测到的值将被复制回电容器中,从而刷新过程中的数据。



更多信息可以来这里获取==>>电子技术应用-AET<<

mmexport1621241704608.jpg

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。