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

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

3天内不再提示

如何实现DS34S132与DDR3存储器的对接

电子设计 作者:电子设计 2018-11-26 08:10 次阅读

DS34S132 32端口TDM - over –Packet IC采用外部DDR同步DRAM (DDR1)存储器缓存数据。内存空间需提供足够的缓存区域,以支持256条伪线(PW)/绑定中每一伪线的256ms数据包延迟变化(PDV)。如果数据包交换网络(PSN)没按正确的先后次序排列数据,存储器需确保对接收数据包的重新排序。由于目前DDR3已成为主流存储器件,为了使DS34S132更方便地采用DDR3,本应用介绍了如何实现DS34S132与DDR3存储器的对接。

图1所示为利用FPGA和DDR3取代DDR1的推荐电路框图。

如何实现DS34S132与DDR3存储器的对接

图1 用DDR3和FPGA取代DDR1

借助DDR SDRAM数据信号时钟信号的混合时序控制,DDR SDRAM接口能够支持速率高于典型SDRAM数据传输。例如,一个125MHz时钟频率的DDR SDRAM,可以实现同等频率SDRAM几乎两倍的带宽(BW)。因此,Maxim开始在其方案中用DDR1取代SDRAM,SDRAM用于Maxim的上一代TDM over Packet(TDMoP)器件。

DDR3 SDRAM采用的是DRAM接口规范。实际的DRAM存储数据阵列的存储架构与早期类型相似,具有相似的性能指标。DDR3 SDRAM的数据传输速率是DDR1的4倍,具有更宽频带。

目前,DDR1存储器模块的使用不如DDR2或DDR3广泛。但DDR2和DDR3向下、向上都不兼容DDR1.因此,DDR2或DDR3存储器模块不能工作在早期采用DDR的主板设计中,反之亦然。

DS34S132的DDR接口配置

针对DS34S132 TDMoP器件内部配置:

l DDR1接口必须设置成3类列地址选通(CAS)

l 必须计算"刷新频率",针对DDR3存储模块配置足够快的时间间隔

l DDR时钟频率为125MHz

值得注意的是,DDR3有8个扇区,DS34S132只有2个扇区选择位。因此,其中一半的DDR3存储器模块(上区)没有使用。

DDR3配置

DDR3应该运行在500MHz时钟速度,该频率是DDR1 125MHz时钟频率的四倍。

我们采用8位数据进行Verilog RTL仿真,BW为:500MHz x 2 x 8位。该BW是125MHz x 2 x 16 DDR的两倍,额外的BW用作从DDR3流水线回传数据给DS34S132,不需占用FPGA的FIFO存储器。对于DDR3,我们使用以下配置:

CAS延迟:8

CAS写延迟:6

DLL复位,然后再使能

我们用Micron DDR3 MT41J128M8(16M x 8 x 8扇区)进行仿真。当CL= 8(DDR3 - 1066)- 187时,DDR3的周期是1.87ns.如需支持其它DDR3配置/速度,可能还需提升资源配置。我们使用的DDR3仿真具有以下规格:

'elsif sg187 // sg187 is equivalent to the JEDEC DDR3-1066G (8-8-8) speed bin

eter TCK_MIN 1875; // tCK ps Minimum Clock Cycle Time

eter TJIT_PER 90; // tJIT(per) ps Period JItter

eter TJIT_CC 180; // tJIT(cc) ps Cycle to Cycle jitter

eter TERR_2PER 132; // tERR(2per) ps Accumulated Error (2-cycle)

eter TERR_3PER 157; // tERR(3per) ps Accumulated Error (3-cycle)

eter TERR_4PER 175; // tERR(4per) ps Accumulated Error (4-cycle)

eter TERR_5PER 188; // tERR(5per) ps Accumulated Error (5-cycle)

eter TERR_6PER 200; // tERR(6per) ps Accumulated Error (6-cycle)

eter TERR_7PER 209; // tERR(7per) ps Accumulated Error (7-cycle)

eter TERR_8PER 217; // tERR(8per) ps Accumulated Error (8-cycle)

eter TERR_9PER 224; // tERR(9per) ps Accumulated Error (9-cycle)

eter TERR_10PER 231; // tERR(10per)ps Accumulated Error (10-cycle)

eter TERR_11PER 237; // tERR(11per)ps Accumulated Error (11-cycle)

eter TERR_12PER 242; // tERR(12per)ps Accumulated Error (12-cycle)

eter TDS 75; // tDS ps DQ and DM input setup time relative to DQS

eter TDH 100; // tDH ps DQ and DM input hold time relative to DQS

eter TDQSQ 150; // tDQSQ ps DQS-DQ skew, DQS to last DQ valid, per group, per access

eter TDQSS 0.25; // tDQSS tCK Rising clock edge to DQS/DQS# latching transitioneter TDSS 0.20; // tDSS tCK DQS falling edge to CLK rising (setup time)

eter TDSH 0.20; // tDSH tCK DQS falling edge from CLK rising (hold time)

eter TDQSCK 300; // tDQSCK ps DQS output access time from CK/CK#

eter TQSH 0.38; // tQSH tCK DQS Output High Pulse Width

eter TQSL 0.38; // tQSL tCK DQS Output Low Pulse Width

eter TDIPW 490; // tDIPW ps DQ and DM input Pulse Width

eter TIPW 780; // tIPW ps Control and Address input Pulse Width

eter TIS 275; // tIS ps Input Setup Time

eter TIH 200; // tIH ps Input Hold Time

eter TRAS_MIN 37500; // tRAS ps Minimum Active to Precharge command time

eter TRC 52500; // tRC ps Active to Active/Auto Refresh command time

eter TRCD 15000; // tRCD ps Active to Read/Write command time

eter TRP 15000; // tRP ps Precharge command period

eter TXP 7500; // tXP ps Exit power down to a valid command

eter TCKE 5625; // tCKE ps CKE minimum high or low pulse width

eter TAON 300; // tAON ps RTT turn-on from ODTLon reference

eter TWLS 245; // tWLS ps Setup time for tDQS flop

eter TWLH 245; // tWLH ps Hold time of tDQS flop

eter TWLO 9000; // tWLO ps Write levelization output delay

eter TAA_MIN 15000; // TAA ps Internal READ command to first data

eter CL_TIME 15000; // CL ps Minimum CAS Latency

FPGA配置

FPGA的关键性能:

l 在上电时,初始化DDR3存储器芯片

l 初始化完成后,把从DS34S132发出DDR1命令转换成DDR3命令/数据

i. 读

ii. 写

iii. 预充电

iv. 使用数字时钟模块(DCM)对DS34S132的DDR1时钟(125MHz)进行4倍频,生成DDR3时钟(500MHz)。

v. 使用第二个DCM产生四个不同的相位DDR3时钟,提供DDR3沿触发时序。此外,利用一路反馈时钟(从一个IO端输出并返回)调整这些时钟相对于DDR1时钟沿的相位关系,有助于DS34S132及时读取数据。

据此,FPGA与DDR3存储器相结合,构成类似于DS34S132的DDR1功能。FPGA代码包括DCM和早期的DDR IO,可从Maxim网站下载程序和详细说明。

FPGA采用Spartan,Verilog RTL仿真速度等级为4,能够达到500MHz.FPGA选用接近300的触发器,不带FPGA RAM.我们还使用了两个DCM转换时钟频率。为了验证DDR1 - DDR3转换设计方案,在Verilog RTL仿真器进行以下测试:

DDR1模式测试并记录结果

通过FPGA测试DDR3模式,并记录结果

监测DDR3独立的读、写操作,并与DDR1读、写操作进行对比

图2和图3显示了DDR1和DDR3的读、写仿真结果。

在Verilog RTL仿真中,可以成功地通过FPGA从DDR3向器件发送有效信号,同样也可成功地读取器件信号并发送到DDR3.仿真结果证明,从DDR1到DDR3转换方案可以正确工作。

如何实现DS34S132与DDR3存储器的对接

图2 DDR1(上图)和DDR3(下图)的写操作仿真结果

如何实现DS34S132与DDR3存储器的对接

图3 DDR1(上图)和DDR3(下图)的读操作仿真结果

结论

本文利用Micron DDR3 MT41J128M8参数模型进行FPGA的Verilog RTL仿真,确保器件能够配合DDR3和Spartan FPGA工作。但该方案并不适用于所有DDR3器件,设计人员需要首先了解利用哪些DDR3进行设计。没有提供FPGA映射和位文件。

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

    关注

    1629

    文章

    21736

    浏览量

    603245
  • 存储器
    +关注

    关注

    38

    文章

    7490

    浏览量

    163818
  • 数据传输
    +关注

    关注

    9

    文章

    1886

    浏览量

    64584
收藏 人收藏

    评论

    相关推荐

    JEDEC发布DDR3存储器标准的DDR3L规范

    JEDEC 固态技术协会,微电子产业标准全球领导制定机构,今天宣布正式发布JEDEC DDR3L规范。这是广受期待的DDR3存储器标准JESD79-3 的附件。这是
    发表于 08-05 09:10 3766次阅读

    DS34S132与TDMoP器件互操作的实现

    互操作性是一个系统经过很少甚至无需系统操作员介入而实现与其它系统协同工作的能力,本应用笔记介绍如何设置DS34S132 TDM-over-Packet (TDMoP) IC,使其与其它TDMoP器件实现互操作
    发表于 04-18 08:34 1964次阅读
    <b class='flag-5'>DS34S132</b>与TDMoP器件互操作的<b class='flag-5'>实现</b>

    DDR3存储器接口控制IP助力数据处理应用

    了设计的一大挑战。FPGA可通过在单个FPGA中实现多个视频处理来提供强大的处理能力。那么现在的挑战就变成了要使数据尽快且高效地从FPGA进出。DDR3存储器系统在大多数情况下可以为
    发表于 05-24 05:00

    基于DDR3存储器的数据处理应用

    了设计的一大挑战。FPGA可通过在单个FPGA中实现多个视频处理来提供强大的处理能力。那么现在的挑战就变成了要使数据尽快且高效地从FPGA进出。DDR3存储器系统在大多数情况下可以为
    发表于 05-27 05:00

    如何用中档FPGA实现高速DDR3存储器控制

    的工作时钟频率。然而,设计至DDR3的接口也变得更具挑战性。在FPGA中实现高速、高效率的DDR3控制是一项艰巨的任务。直到最近,只有少数高端(昂贵)的FPGA有支持与高速的
    发表于 08-09 07:42

    如何去实现高速DDR3存储器控制

    DDR3存储器控制面临的挑战有哪些?如何用一个特定的FPGA系列LatticeECP3实现DDR3
    发表于 04-30 07:26

    DS34S132,pdf datasheet (32-Por

    The IETF PWE3 SAToP/CESoPSN/HDLC-compliant DS34S132 provides the interworking functions
    发表于 07-25 22:09 16次下载

    DDR3存储器接口控制IP核在视频数据处理中的应用

     DDR3存储器系统可以大大提升各种数据处理应用的性能。然而,和过去几代(DDRDDR2)器件相比,DDR3
    发表于 07-16 10:46 1849次阅读
    <b class='flag-5'>DDR3</b><b class='flag-5'>存储器</b>接口控制<b class='flag-5'>器</b>IP核在视频数据处理中的应用

    如何实现DS34S132与其它TDMoP器件的互操作

    介绍如何设置DS34S132 TDM-over-Packet (TDMoP) IC,使其与其它TDMoP器件实现互操作。
    发表于 03-20 23:11 1597次阅读
    如何<b class='flag-5'>实现</b><b class='flag-5'>DS34S132</b>与其它TDMoP器件的互操作

    DS34S132使用DDR3内存模块应用笔记

    IC with a DDR3 memory chip. The DS34S132 uses an external double data rate (DDR) synchronous DRAM (or
    发表于 08-29 10:20 41次下载

    DS34S132 32路独立TDM端口

    IETF PWE3 SAToP/CESoPSN/HDLC兼容的DS34S132为L2TPv3/IP、UDP/IP、MPLS (MFA-8)以及城域以太网(MEF-8)网络提供将TDM数据流转换为TDM-over-Packet (
    发表于 09-27 11:11 1507次阅读
    <b class='flag-5'>DS34S132</b> 32路独立TDM端口

    基于FPGA的DDR3多端口读写存储管理的设计与实现

    为了解决视频图形显示系统中多个端口访问DDR3的数据存储冲突,设计并实现了基于FPGA的DDR3存储管理系统。
    发表于 11-18 18:51 7138次阅读
    基于FPGA的<b class='flag-5'>DDR3</b>多端口读写<b class='flag-5'>存储</b>管理的设计与<b class='flag-5'>实现</b>

    Stratix III FPGA的特点及如何实现和高速DDR3存储器的接口

    其他元件,占用了宝贵的电路板空间。 Stratix® III FPGA具有专用内置I/O电路,降低了高速DDR3存储器设计的难度。观看这一演示,了解怎样轻松实现1,067 Mbps DD
    的头像 发表于 06-22 02:04 3784次阅读

    FPGA如何与DDR3存储器进行正确的数据对接?

    大家好,我叫Paul Evans,是Stratix III产品营销经理。到目前为止,我已经从事了6年的双倍数据速率存储器工作,今天和大家一起讨论一下DDR3DDR3的主要难题之一是它引入了数据交错
    的头像 发表于 06-22 05:00 8780次阅读

    如何实现DS34S132与TDMOP器件的互操作

    可能为其它系统提供服务或接受其它系统的服务,从而使不同厂商的系统能够协同工作。本应用笔记着重介绍 Maxim TDM-over-Packet (TDMoP) IC,DS34S132。文章介绍了在 DS34S132 与其他厂商 TDMoP 器件之间
    发表于 12-04 02:21 5次下载
    如何<b class='flag-5'>实现</b><b class='flag-5'>DS34S132</b>与TDMOP器件的互操作