- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DDR SDRAM控制器IP及其嵌入式的应用
DDR SDRAM控制器IP及其嵌入式的应用
摘要 :本文在介绍DDR SDRAM的工作原理基础上,提出了一种DDR SDRAM控制器的实现方法;DDR SDRAM的数据选通特性也在本文中给予了详细的讨论。本文提出的DDR SDRAM控制器实现方法通过了FPGA功能验证,并在LCD TV控制芯片中得到了成功地嵌入式应用。
1、引言
LCD TV 控制芯片主要功能是将电视信号所用的隔行扫描转换为液晶电视所用的逐行扫描。这需要处理大量的数据,自然对存储器的存取速度要求很高。所以在这里选择了DDR SDRAM。
2、DDR SDRAM控制器的设计
DDR SDRAM,即双数据率同步随机访问存储器(Double Data Rate Synchronous Dynamic Random Access Memory)它采用双数据率技术,支持在时钟的上升沿和下降沿同时进行数据传输。从而有效增强了数据的吞吐量。其带宽最大可以达到相应SDRAM的两倍。到目前为止,DDR SDRAM已经在PC领域取代了SDRAM而成为内存的标准设备。它在其它领域也扮演着越来越重要的地位。
2.1 系统结构
DDR SDRAM控制器核心包括四个主要模块:SDRAM控制器、控制接口模块、命令模块和数据通道模块。DDR SDRAM控制器模块是顶层模块,它包括三个低一级的模块。控制接口模块从主机接受命令和相关的地址,它将解析命令并将其请求发送给命令模块;命令模块从控制接口模块接受到命令和地址后将会生产适当的命令送到SDRAM中;数据通道模块会在在WRITEA和READA命令出现时处理数据。顶层模块同样会有两个PLL模块来生成CLOCK_LOCK和2X模式,从而提高I/O端口的时序和2X的时钟信号。
在这里简单介绍一下双边沿寄存器的电路实现原理,原理图见图2
图2中当时钟在高电平时,由晶体管M1~M4组成的正锁存器在节点X上采样被反相的D输入。节点Y维持在稳定状态,因为期间M9和M10关断。在时钟的下降沿,上面的从锁存器M5~M8导通并驱动被反相的X值到输出Q。在时钟为低电平阶段,下面的主锁存器(M1,M4,M9,M10)导通,在节点Y上采样被反相的D输入。注意,由于器件M1和M4被重复使用,所以减少了D输入的负载。在上升沿, 下面的从锁存器导通并驱动被反相的Y值到节点Q。数据因此在两个边沿上都发生改变。注意,上下两个从锁存器以互补形式工作,即在每一个时钟阶段,它们之中只有一个是导通的。在这篇论文就简单的介绍一下双边沿寄存器的大概原理。
下面将详细介绍各个模块的设计。
2.2、 接口模块的设计
接口控制模块解析和储存来自主机的命令,它将NOP、WRITERA、READA、REFRESH、PRECHA- RGE和LOAD_REG命令和地址一起传送给命令模块。
接口控制模块也包括一个16位的自减加法器和控制电路,它们被用来为命令模块产生定期的刷新命令。16位的自减加法器会从REG2中获得初始数值并自减到0。当自减加法器自减到0时,将发出REFRESH_REQ信号并保持一段时间直到命令模块产生应答信号为止。这个应答信号也会使自减加法器从REG2中重新获得数值,然后再不断的重复上面的操作。REG2中存放着REFRESH命令需要的时间,它是一个16位的值。它的值是通过等式int(REF_PERIOD/CLK_PERIOD)获得的。控制接口模块如图3。
例如,如果一个SDRAM设备连接到控制器需要64ms、4096个刷新周期,那么这个设备必须要64ms/4096=15.625μs来执行REFRESH命令。如果SDRAM和控制器在100MHz的时钟下工作,那么REG2的最大值为15.625/0.01μs=1562 μs。
2.3、数据通道模块的设计
数据通道模块为SDRAM和主机之间提供了数据接口。WRITEA命令时主机数据会送到DATAIN端口,而 READA命令时则会通过DATAOUT端口向主机传输数据。数据通道到控制模块间的数据宽度是它到DDR SDRAM设备数据宽度的两倍。数据通道模块中的DATAIN和DATAOUT端口固定为32位,DQ端口固定为16位。为了建立比32位大得多的数据通道,可以级联数据通道模块。DATAIN端口在写数据和传输数据时都是在CLK200的时钟下进行的(两倍于CLK100的时钟频率),这样就可以倍增数据到DQ端口。当读的时候将会CLK200采样数据然后用CLK100将读数据分离出来。数据通道模块在对DDR 设备进行写操作时会产生DQS信号。
2.4、命令模块的设计
命令模块接受来自控制接口
原创力文档


文档评论(0)