一种sdram控制器及其控制方法

文档序号:9396822阅读:578来源:国知局
一种sdram控制器及其控制方法
【技术领域】
[0001]本发明涉及一种SDRAM控制器,尤其是涉及一种SDRAM控制器及其控制方法。
【背景技术】
[0002]随着图像视频显示技术不断发展,图像视频嵌入式系统得到了广泛应用。图像视频嵌入式系统中主要通过SDRAM控制器将视频数据和显示数据写入SDRAM中或者从SDRAM中读取视频数据和显示数据。
[0003]现有的SDRAM控制器通常包括两个SDRAM驱动器,每个SDRAM驱动器用于驱动一个SDRAM进行读操作或者写操作。SDRAM控制器与两个SDRAM —起构成乒乓存取结构,一个SDRAM驱动器控制一片SDRAM读数据,同时另一个SDRAM驱动器控制另一个SDRAM写数据,具体控制方法为:一个SDRAM驱动器控制数据写入一个SDRAM中,同时另一个SDRAM驱动器控制从另一个SDRAM中读取相应数据;当数据写入完成后,两个SDRAM驱动器切换两个SDRAM的工作状态,一个SDRAM从写状态切换到读状态,另一个SDRAM从读状态切换到写状态,周而复始。
[0004]但是现有的SDRAM控制器存在以下问题:每个SDRAM要么仅仅出于读状态,要么仅仅处于写状态,需要通过两个SDRAM同时工作才能完成一路数据(或者视频数据或者显示数据)的存取操作,由此造成资源浪费,并且存取操作灵活性不足。

【发明内容】

[0005]本发明所要解决的技术问题之一是提供一种可以同时实现视频数据和显示数据的存取操作,不会造成资源浪费,存取操作灵活性较高的SDRAM控制器。
[0006]本发明解决上述技术问题之一所采用的技术方案为:一种SDRAM控制器,包括主控制器、视频数据控制单元和显示数据控制单元;
[0007]所述的视频数据控制单元包括第一前级FIFO缓存模块、第一从控制器、第一SDRAM驱动器和第一后级FIFO缓存模块,所述的第一前级FIFO缓存模块用于接入视频数据,所述的第一前级FIFO缓存模块与所述的第一从控制器连接,所述的第一从控制器分别与所述的第一 SDRAM驱动器和所述的第一后级FIFO缓存模块连接,所述的第一 SDRAM驱动器用于连接外部的第一 SDRAM ;
[0008]所述的显示数据控制单元包括第二前级FIFO缓存模块、第二从控制器、第二SDRAM驱动器和第二后级FIFO缓存模块,所述的第二前级FIFO缓存模块用于接入显示数据,所述的第二前级FIFO缓存模块与所述的第二从控制器连接,所述的第二从控制器分别与所述的第二 SDRAM驱动器和所述的第二后级FIFO缓存模块连接,所述的第二 SDRAM驱动器用于连接外部的第二 SDRAM ;
[0009]所述的主控制器分别与所述的第一从控制器和所述的第二从控制器连接;所述的主控制器根据图像视频嵌入式系统输出数据的要求分别控制所述的第一从控制器和所述的第二从控制器的工作,所述的第一从控制器控制所述的第一 SDRAM驱动器驱动第一SDRAM处于读状态或者写状态;所述的第二从控制器控制所述的第二 SDRAM驱动器驱动第二 SDRAM处于读状态或者写状态。
[0010]与现有技术相比,本发明的SDRAM控制器的优点在于通过主控制器来控制视频数据控制单元和显示数据控制单元;视频数据控制单元通过第一前级FIFO缓存模块缓存视频数据,第一从控制器控制第一 SDRAM驱动器驱动与其连接的外部的第一 SDRAM将视频数据读出或者写入,在第一 SDRAM处于写操作状态时,第一前级FIFO缓存模块缓存的视频数据被写入第一 SDRAM中,在第一 SDRAM处于读操作状态时,此时,第一前级FIFO缓存模块缓存的视频数据不再被写入第一 SDRAM中,第一 SDRAM内写入的视频数据被读出后通过第一从控制器存入第一后级FIFO缓存模块中,由此保证该外部的第一 SDRAM连续不断的读出和写入;显示数据控制单元通过第二前级FIFO缓存模块缓存显示数据,第二从控制器控制第二 SDRAM驱动器驱动与其连接的外部第二 SDRAM将显示数据读出或者写入,在第二 SDRAM处于写操作状态时,第二前级FIFO缓存模块缓存的显示数据被写入第二 SDRAM中,在第二SDRAM处于读操作状态时,此时,第二前级FIFO缓存模块缓存的显示数据不再被写入第二SDRAM中,第二 SDRAM内写入的显示数据被读出后通过第二从控制器存入第二后级FIFO缓存模块中,由此保证该外部的第二 SDRAM连续不断的读出和写入;由此同时实现视频数据和显示数据的存取操作,不会造成资源浪费,存取操作灵活性较高。
[0011]本发明所要解决的技术问题之二是提供一种可以同时实现视频数据和显示数据的存取操作,不会造成资源浪费,存取操作灵活性较高的SDRAM控制器的控制方法。
[0012]本发明解决上述技术问题之二所采用的技术方案为:一种SDRAM控制器的控制方法,包括以下步骤:
[0013]①将视频数据存储到第一前级FIFO缓存模块中,将显示数据存储到第二前级FIFO缓存模块中;
[0014]②将外部控制信号输入主控制器中,所述的外部控制信号包括输出选择信号、视频数据有效信号、视频数据行同步信号、视频数据帧同步信号、显示数据有效信号、显示数据包括的数据点总数量、显示数据起始行地址、显示数据起始列地址、显示数据结束行地址和显示数据结束列地址;所述的输出选择信号或者为选择视频数据输出信号,或者为选择显示数据输出信号,或者为选择视频数据和显示数据同步输出信号;视频数据帧同步信号为O或者1,视频数据帧同步信号为O时表示一帧视频数据开始传输中,视频数据帧同步信号为I时表不一帧视频数据传输完成;
[0015]③在主控制器中,根据显示数据包括的数据点总数量、显示数据起始行地址、显示数据起始列地址、显示数据结束行地址和显示数据结束列地址确定显示数据帧同步信号:当 S〈 (H1-H0)* (V1-V0)时,VALID = 0,当 S = (H1-H0)*(V1-V0)时,VALID = I ;其中,S 表示显示数据包括的数据点总数量,HO表示显示数据起始行地址、VO表示显示数据起始列地址、Hl表示显示数据结束行地址、Vl表示显示数据结束列地址,VALID表示显示数据帧同步信号,符号表示乘运算符号;当VALID = O时,表示一帧显示数据开始传输中,当VALID=I时,表示一帧显示数据传输完成;
[0016]④主控制器根据输出选择信号产生用于控制第一从控制器的第一控制信号和用于控制第二从控制器的第二控制信号,并将第一控制信号、视频数据有效信号、视频数据行同步信号和视频数据帧同步信号传送给第一从控制器,将第二控制信号、显示数据有效信号、显示数据起始行地址、显示数据起始列地址、显示数据结束行地址、显示数据结束列地址和显示数据帧同步信号传送给第二从控制器;当输出选择信号为选择视频数据输出信号时,第一控制信号为有效信号,视频数据控制单元进入工作状态,第二控制信号为无效信号,显示数据控制单元处于非工作状态;当输出选择信号为选择显示数据输出信号时,第一控制信号为无效信号,视频数据控制单元处于非工作状态,第二控制信号有效信号,显示数据控制单元进入工作状态;当输出选择信号为选择视频数据和显示数据同步输出信号时,第一控制信号和第二控制信号均为有效信号,视频数据控制单元和显示数据控制单元均进入工作状态;
[0017]视频数据控制单元进入工作状态的工作过程为:第一从控制器接收第一控制信号、视频数据有效信号、视频数据行同步信号和视频数据帧同步信号,并获取第一前级FIFO缓存模块中的视频数据、第一前级FIFO缓存模块的实时缓存用量和第一后级FIFO缓存模块的实时缓存用量,生成视频数据操作模式信号、视频数据读写切换信号和视频数据分页控制信号传送给第一 SDRAM驱动器;视频数据操作模式信号为视频数据写模式或者视频数据读模式;当视频数据操作模式信号为视频数据写模式时,第一 SDRAM驱动器驱动第一SDRAM进入写操作,第一 SDRAM驱动器产生写模式下的视频数据输出地址信息发送给第一SDRAM,第一 SDRAM按照视频数据输出地址信息将第一前级FIFO缓存模块中存入的视频数据依次写入;当视频数据操作模式信号为视频数据读模式时,第一 SDRAM驱动器驱动第一SDRAM进入读操作,第一 SDRAM驱动器产生读模式下的视频数据输出地址信息发送给第一SDRAM,第一前级FIFO缓存模块存入的视频数据不再被写入第一 SDRAM中,第一 SDRAM中按照视频数据输出地址信息将其内写入的视频数据读出,该读出的视频数据通过第一从控制器存入第一后级FIFO缓存模块中;
[0018]显示数据控制单元进入工作状态的工作过程为:第二从控制器接收第二控制信号、显示数据有效信号、显示数据起始行地址、显示数据起始列地址、显示数据结束行地址、显示数据结束列地址和显示数据帧同步信号,并获取第二前级FIFO缓存模块中的显示数据、第二前级FIFO缓存模块的实时缓存用量和第二后级FIFO缓存模块的实时缓存用量,生成显示数据操作模式信号、显示数据读写切换信号和显示数据分页控制信号,第二从控制器将显示数据起始行地址、显示数据起始列地址、显示数据结束行地址、显示数据结束列地址、显示数据操作模式信号、显示数据读写切换信号和显示数据分页控制信号传送给第二 SDRAM驱动器;显示数据操作模式信号为显示数据写模式或者显示数据读模式;当显示数据操作模式信号为显示数据写模式时,第二 SDRAM驱动器驱动第二 SDRAM进入写操作,第二 SDRAM驱动器产生写模式下的显示数据输出地址信息发送给第二 SDRAM,第二 SDRAM按照显示数据输出地址信息将第二前级FIFO缓存模块中存入的显示数据依次写入;当显示数据操作模式信号为显示数据读模式时,第二 SDRAM驱动器驱动第二 SDRAM进入读操作,第二SDRAM驱动器产生读模式下的显示数据输出地址信息发送给第二 SDRAM,第二前级FIFO缓存模块存入的显示数据不再被写入第二 SDRAM中,第二 SDRAM按照显示数
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1