我们从2011年坚守至今,只想做存粹的技术论坛,记录你的技术足迹,有空就回来看看。  由于网站在外面,点击附件后可能要20秒才弹出下载,请耐心等待,勿重复点击

 找回密码
 立即注册
搜索
查看: 2554|回复: 23

[技术讨论] FPGA开发板为什么要使用SDRAM

[复制链接]

该用户从未签到

540

主题

20

回帖

0

积分

二级逆天

积分
0

终身成就奖

发表于 2020-6-28 14:43:29 | 显示全部楼层 |阅读模式
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的引脚,那么会有一些新来者。


地址和数据总线仍然存在,但是地址总线只有11位(用于提供要打开的行,然后提供列地址)。BA引脚指定了存储区(由于在我们的示例中只有2个存储区,因此我们仅需要一个引脚)。WE,CAS和RAS一起用作命令引脚,因此我们可以向SDRAM发送8个不同的命令(命令包括“打开行”,“读取”,“写入”和“关闭行”)。使用了其他一些引脚(但未在图片上显示),例如时钟,片选,字节使能...

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




刷新


SDRAM是动态存储器:由于每个存储器位值(0或1)都保存在一个微小的电容器中,电荷随时间衰减,因此需要定期刷新其内容。但是衰减率足够低,只要定期对其进行读取和重新写入(“刷新”),制造商就可以保证不会丢失任何数据。

有两种刷新机制
· FPGA将“自动刷新”命令发送到SDRAM。
只要确保它定期完成(SDRAM数据表会告诉您最小刷新频率)。

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



8Gbit DDR4(x32bit)_Datasheet_v1.0.pdf (1.49 MB, 下载次数: 4)
回复

使用道具 举报

  • TA的每日心情
    慵懒
    2024-6-14 16:03
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    0

    主题

    1万

    回帖

    7618

    积分

    二级逆天

    积分
    7618

    终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

    QQ
    发表于 2020-6-28 16:41:45 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    7 小时前
  • 签到天数: 27 天

    [LV.4]偶尔看看III

    49

    主题

    1万

    回帖

    7万

    积分

    三级逆天

    积分
    70204

    终身成就奖特殊贡献奖原创先锋奖社区居民忠实会员社区劳模最爱沙发社区明星原创达人优秀斑竹奖宣传大使奖

    QQ
    发表于 2020-6-29 05:39:55 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    332

    回帖

    0

    积分

    二级逆天

    积分
    0

    终身成就奖原创先锋奖

    发表于 2020-7-8 08:19:44 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    117

    回帖

    0

    积分

    二级逆天

    积分
    0

    终身成就奖特殊贡献奖原创先锋奖

    发表于 2020-7-13 08:39:51 | 显示全部楼层
    时钟信号要同步的话,那么也得差分线设计了吧?
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    332

    回帖

    0

    积分

    二级逆天

    积分
    0

    终身成就奖原创先锋奖

    发表于 2020-7-22 08:10:13 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    295

    回帖

    0

    积分

    二级逆天

    积分
    0

    终身成就奖

    发表于 2020-8-4 07:14:31 | 显示全部楼层
    学习了学习了
    回复

    使用道具 举报

    该用户从未签到

    9

    主题

    66

    回帖

    137

    积分

    二级逆天

    积分
    137

    终身成就奖

    发表于 2020-9-18 13:58:51 | 显示全部楼层
    学习了学习了
    回复

    使用道具 举报

    该用户从未签到

    4

    主题

    6

    回帖

    0

    积分

    一级逆天

    积分
    0

    终身成就奖

    发表于 2020-12-22 10:12:17 | 显示全部楼层
    请教一下带ECC的DDR4和不带ECC的DDR4有没有不同?
    回复

    使用道具 举报

    该用户从未签到

    8

    主题

    287

    回帖

    0

    积分

    二级逆天

    积分
    0

    终身成就奖社区居民

    QQ
    发表于 2021-1-17 16:31:32 | 显示全部楼层
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

    本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

    平平安安
    TOP
    快速回复 返回顶部 返回列表