用于dram系统的验证方法

文档序号:8543835阅读:1133来源:国知局
用于dram 系统的验证方法
【技术领域】
[0001]本发明总体上涉及集成电路系统验证。尤其,本发明涉及一种用于动态随机存取存储器(DRAM)系统的验证方法,所述系统中读和写数据在自由运行差分时钟(afree-running differential forwarded clock)的两边沿传输,例如 GDDR5 (GraphicsDouble Data Rate, vers1n5)系统,更具体地涉及一种用于在验证中建立DRAM接口的方法。
【背景技术】
[0002]在半导体芯片设计阶段,工程师们以生产工作模型为目标,排除明显缺陷并考虑产品可能不合格的可能途径。由验证工程师判断他们是否取得成功。这可包括测试泛网络连接、确认各部件同步运行正常以及解决属于特定产品的特定问题。
[0003]随着成品率和上市时间安排的至关重要性,开发验证和分析方案以提供尽可能好的性能、同时最小化迭代时间和数据量很重要。随着尖端技术如片上系统(SoC)的出现,将标准IP核(Intellectual Property Cores)加入单晶娃的需求也增加了。在芯片设计中,包括基于IP核的SoC设计,改进的验证和分析流程可对产品的成功做出显著的贡献。
[0004]同时,半导体芯片产品设计的开始几步包括产品需求、产品架构设计以及子系统设计。子系统设计中的一个是存储系统。存储系统设计取决于各种因素,如存储容量、速度、能力、现有或发展的标准、现有设计的再利用以及其他需求。
[0005]近来为需要高带宽的应用设计的高性能的DRAM图像存储系统,如⑶DR5,提供高数据传输率(high data rates),使得相比以前的技术在更窄的存储接口上具有更多的带宽。然而,高性能的DRAM图像存储系统,如⑶DR5,在测试和验证方面遇到许多挑战。
[0006]例如,⑶DR5的一些有助于改进数据眼开口的特征以芯片上的高速时钟方案为目标,而其他的特征用于外部接口或者存储控制器与DRAM之间的互相连接上的实际信号。就这一点而言,之前的双数据速率(Double Data Rate,DDR)接口(如,DDR3、⑶DR3)对写和读使用选通脉冲。相应地,由于DRAM侧和控制器侧都能通过基于选通信号的时钟数据恢复(OTR)容易地提取读/写数据,在之前的DDR系统验证中DRAM接口调试通常不是一种必须的或一项测试项目。与此相反,GDDR5具有不使用选通脉冲的高速接口,其读和写数据在自由运行差分时钟的两边沿传输。由于GDDR5使用自由运行差分写时钟(WCK)引脚代替写入数据时钟(WDQS),以及使用自由运行的错误检测代码(EDC)引脚代替读取数据时钟(RDQS),要求存储控制器通过接口调试确认写数据和读数据的正确的数据相位和数据帧,且DRAM接口调试在⑶DR5系统验证中是一项测试项目。

【发明内容】

[0007]有两种常见的在验证中设置DRAM接口的方案;
[0008]一种是在仿真环境中设置正式的调试序列,以在各种条件下建立DRAM链接。这种方案具有初始化时间长的缺点,需要大约?150000的时钟时间甚至需要硬件调试加速,这对于模块级和系统级仿真来说都是不可接受的。
[0009]另一个方案是跳过调试,但是把系统投入仿真环境已确定的状态,强制对存储控制器和存储物理层(PHY)中的时钟和FIFO指针偏置赋值。这种方案减少了调试时间,但是对于设计和测试环境的改变(如时钟频率改变、系统动力状态转换等)非常脆弱。而且,由于这种方案不能验证待测设计和系统的随机行为,在仿真中大量的强制赋值也成为一种潜在的风险。
[0010]为了克服以上这些缺点以及其他DRAM系统验证中的缺点,本发明提供了一种在验证系统的新的配置时序中建立DRAM接口的新方法。本发明的所述方法不受验证方式的支配,可在如System C、verilog或System Verilog语言下实行。
[0011]虽然本发明的实施方式专门地描述为从存储控制器的GDDR5接口到GDDR5存储设备,所述系统和方法可应用于许多系统。本发明的一方面提供了这样的方法和系统可在任何读和写数据在自由运行差分时钟的两边沿传输的DRAM系统中实行。
[0012]在体现第一方面的一个实施方式中,提供了一种验证方法。所述方法提供了用于任何读和写数据在自由运行差分时钟的两边沿传输的DRAM系统的验证,包括监测数据通路中的延时值,计算从指令分配到读数据的返回在数据通路中的延时,在待测设计中设置延时配置以与数据通路中的全部延时相匹配,以及基于延时设置配置与待测设计的DRAM接口。
[0013]在体现第二方面的一个实施方式中,所述验证方法包括监测物理层(PHY)中的RX接收和TX发送FIFO的写指针和读指针、监测数据通路中的时钟偏差,以及监测DRAM时序延迟。
[0014]在体现第三方面的一个实施方式中,所述验证方法包括调谐时钟信号的相位,其中调谐时钟信号的相位包括确定接收RX时钟信号是否与数据队列对齐,如果没有对齐,调整接收RX时钟信号的相位使其与数据队列对齐。所述方法可进一步包括确定发送TX时钟信号是否与数据队列对齐,如果没有对齐,调整发送TX时钟信号的相位使其与数据队列对齐。
[0015]在体现第四方面的一个实施方式中,所述验证方法包括Rx巾贞(Rxframe)调谐和TX帧(Txframe)调谐,其中所述调谐是基于数据通路中的全部延时。
【附图说明】
[0016]本发明以示例但不限制的形式图示在后附的附图中,其中
[0017]图1示出了联接到存储控制器上的GDDR5系统的简化的示范图;
[0018]图2示出了根据本发明的、将存储控制器作为待测设计(DUT)的GDDR5验证系统的示范图的一个示例性实施例;
[0019]图3示出了根据本发明的一个示例性的调谐序列;
[0020]图4 (A)给出了 Rx相位调谐的一个示例;
[0021]图4 (B)示出了用于图2中的系统的Rx相位调谐的算法;
[0022]图5给出了 Rx帧的示例以及示出了用于图2中的系统的Rx帧调谐的算法。
【具体实施方式】
[0023]下面将参照附图中所示的一些实施例具体描述本发明。在下文的描述中,描述了一些具体的细节以提供对本发明的更深的理解。然而,对于本领域的技术人员来说显而易见的是,即使不具有这些具体细节中的一些,本发明也可被实施。另一方面,一些公知的工艺步骤和/或结构没有被详细描述以避免不必要地使本发明变得难以理解。
[0024]图1示出了联接到存储控制器上的GDDR5系统的简化的示范图。
[0025]在图1所示的系统中,存储控制器包括三个部件:INTF(接口),SEQ(序列发生器),and PHY(物理层)。
[0026]INTF是对客户流量提供接口的功能模块。它在不同客户的流量中做一些调停。
[0027]SEQ是INTF和PHY之间的协议转换模块。它从INTF获得流量包然后将其转换成DRAM命令/数据信号以满足DRAM协议。SEQ以满足DRAM时序的方式安排TX/RX信号。
[0028]PHY是进行物理层信号转换的功能模块。对每个DRAM接口信号,它具有RX接收和TX发送。由于SEQ和PHY以不同的时钟运行,对每一个指令信号(CMD)和数据信号(DQ),PHY还具有自由运行的缓冲区(FIFO,先进先出),其位于使用mclk的SEQ和使用yelk的RX/TX之间。
[0029]图1中的DRAM总线功能模型(bfm)是⑶DR5bfm。当然,bfm可以是任何读和写数据在自由运行差分时钟的两边沿传输的DRAM。
[0030]如图1中的流程图所示,当SEQ接收来自上游的指令(CMD)后,分配该指令。⑶DR5从PHY内部的TX FIFO获得指令。如果该指令是读指令,⑶DR5将读数据返回给PHY中的RX FIFO然后再到SEQ。SEQ接收并将数据储存在数据接收存储器(Rxdata mem),然后将脉冲信号送回INTF/客户。
[0031]为了在验证中建立DRAM链接,至少要考虑Rx相位(Rxphase)和Rx帧(Rxframing)0
[0032]关于Rx相位,来自⑶DR5的数据(DQ)对于PHY的时钟yelk来说是异步信号。为了避免亚稳问题,有必要通过正确调谐在DQ处的接收相位的yelk对数据眼进行采样。这由PI (phase interpolator相位插值器)来执行。PI将I个yelk周期分成64等分。
[0033]关于Rx帧,I个数据帧是一个单独的数据脉冲。当信号完整性被调整之后,Rx帧应被调谐以确保当读数据从PHY返回时数据帧是正确的。
[0034]Rx相位和Rx帧都是挑战,因为⑶DR5具有没有选通的高速接口,其读和写数据在自由运行差分时钟的两边沿传输。
[0035]现在看附图2,根据本发明的、将存储控制器作为待测设计(DUT)的⑶DR5验证系统的一个实施例。
[0036]如图2所示,本发明的验证系统包括监测器和自动调谐配置时序。
[0037]在待测设计下面的监测器包括FIFO指针监测器、时钟偏差监测器和DRAM设置监测器。
[0038]FIFO指针是指PHY中的RX/TX FIFO的写指针(wptr)和读指针(rptr)。由于FIFO指针是自由运行的,知道指针距离就可以知道FIFO的延迟。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1