高效能硬核Memory控制器在FPGA设计中2.docx

高效能硬核Memory控制器在FPGA设计中2.docx

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
高效能硬核Memory控制器在FPGA设计中2

第五页 控制器 评估一个 存储器 接口的 带宽, 不仅仅 取决于 Memory 存储器接口的绝对速率,Memory 控 制器控制 数据在 存储器 之间传 送的效 率,也 是决定 带宽的 一个重 要因素 。存储 器带宽 的计算方 法如 方程 1 所 示。 方程 1. 带宽计算 Bandwidth = Data Width (bits) ??Data Rate ??Efficiency 实 例 1 显 示了一 个效率 为 70% 的 32 位接口,运行频率是 400 MHz,带宽为 17.92 Gbps。 实例 1. 计算带宽 Bandwidth = 32 bits ??2 Clock Edges ??400 MHz ??70% = 17.92 Gbps 普 通 DRAM 存储器接口的效率通常在 70% 左右,而 Altera 的 Memory 控制器的效率可高 达 92%。控制器管理 DRAM 指令的效率对于实现接口最大带宽非常关键。如方程 2 所 示 ,效率 等于 DQ 总 线上占 用的非 空闲周 期除以 DQ 总线周 期总数 。 方程 2. 效率计算 Efficiency = ---------------------- ------ ----------------- ------------------ -----------t-- ----------- ---------- -I---- -------------------------Number of Clock Cycles in the Period (1) 控 制器中 实现了 针对 DRAM Burst 的调度,这是在前一节提到的两级调度中的第二级。 D RAM Burst 调度通过选择要执行的最佳命令来提高效率。我们知道,进行连续读 / 写 操作时,D RAM 存储器的效率最高,特别是在 DR AM 的同一行中的读 / 写操作 ( 行内操作 )。当 DRAM 操作跨行或者跨 Bank 时,空闲时间 (tRC) 增大,效率降低。claund V FPG A 中的高效率 HMC,通过数据和指令的重排序等内部机制,极大地提高了存储器的 读 / 写效 率。 数据重新 排序对 访问不 同 Bank 和行地址 的指令 重排序 ,减小 了 tRC ;对于访问同一 Ban k 和行地址的命令则不再进行排序优化。图 6 显示了行间数据重排序是怎样工作 的。 RC Data Re-Ordering Off Command WR Address B0R0 Data Re-Ordering On Command WR WR tRC WR B0R1 WR WR tRC WR B0R0 tRC WR B0R1 Address 注释: B0R0 B0R0 tRC B0R1 B0R1 (1) t RC 是 activate-to-activate( 相同块 ) 时序要求。 PHY DDR 协议本身对指令的顺序处理,浪费了 DQ 周期,因此 DDRx 指令和 DQ 总线并没有被 高效地利 用,导 致效率 降低。 如图 7 和表 1 所示, 利用指 令重排 序的优 化机制 ,控制 器 可以预 见性地 前置部 分指令 ,在对 当前 Bank 的传输 处理完 成之前 ,预先 执行后 面 Bank 的激活和充电指令,从而提高 DQ 数据线的周期利用率。 图 7. 指令重排序提高 DQ 效率 No Look Ahead ACT READ PCH ACT READ PCH ACT READ Idle Command Bus Not Efficient Not Efficient With Look Ahead Bank Management ACT PCH PCH READ ACT ACT READ READ Using Idle Cycles for Bank Management 表 1. 指令重排序提高 DQ 效率 命令地址条件ReadBank 0Activate RequiredReadBank 1Pre-Charge RequiredReadBank 2Pre-Charge Required PHY Cyclone V HMC 支持 ECC 纠错码,可由控制器生成或者由用户定义。ECC 能够纠正部分 数 据错误 ,提高 了数据 完整性 和 DRAM 效 率。对 于用户 定义的 ECC,控制器并不区分数 据 段和 ECC 段。在这种 ECC 模式中,所有比特被当做数据比特,对

文档评论(0)

aicencen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档