用于sram接口转sdram接口的电路及转换方法

文档序号:6769174阅读:236来源:国知局

专利名称::用于sram接口转sdram接口的电路及转换方法
技术领域
:本发明涉及同步动态存储器(SynchronousDynamicRandomAccessMemory,简称SDRAM),特别是一种用于同步静态存储器(SynchronousRandomAccessMemory.,简称SRAM)接口转SDRAM接口的电路及转换方法。
背景技术
:随着芯片技术的发展和PC的广泛应用,SDRAM的价格越来越低廉。与此同时,手持终端的应用越来越丰富,手持终端软件的体积越来越庞大,对内存的要求也越来越大。SRAM最大的缺点就是价格昂贵,相同容量的SRAM的价格是SDRAM的十倍左右。因此如何采用SDRAM取代SRAM,来降低终端设备的成本,成了急需解决的问题。
发明内容为克服上述已有技术的不足,本发明要解决的技术问题是提供一种用于SRAM接口转SDRAM接口的电路及转换方法,应用在手持终端当中,SRAM接口转成SDRAM接口,CPU可以通过SRAM总线接口对SDRAM进行读、写等操作。为解决上述技术问题,本发明的技术方案是一种用于SRAM接口转SDRAM接口的电路,包括CPU、复杂可编程逻辑器件和SDRAM芯片,所述的CPU包括一个SRAM接口,该SRAM接口的写控制端WE、读控制端RE、片选信号端CS、地址信号端ADDR分别与所述复杂可编程逻辑器件的第一写控制端WE1、读控制端RE、片选信号端CS、第一地址信号端ADDR1相连,所述的CPU的数据信号端DATA与所述SDRAM芯片的数据信号端DATA相连,所述复杂可编程逻辑器件的列地址锁存信号RAS、行地址锁存信号CAS、第二写控制端WE2、块地址信号端BANK、第二地址信号端ADDR2、时钟使能信号CKE分别与所述SDRAM芯片的列地址锁存信号RAS、行地址锁存信号CAS、写控制端WE、块地址信号端BANK、地址信号端ADDR、时钟使能信号CKE相连。所述复杂可编程逻辑器件是Lattice公司的LC4064V,其驱动时钟MCLK是50腿z的压控振荡器。所述SDRAM芯片的片选信号端CS直接接地。所述复杂可编程逻辑器件每隔64毫秒向所述的SDRAM芯片发送数据自动刷新的命令序列。所述复杂可编程逻辑器件每隔64毫秒向所述SDRAM发送时钟挂起命令序列。一种应用上述用于SRAM接口转SDRAM接口的电路的转换方法,包括以下步骤所述的SDR雇芯片上电以后的初始化步骤;所述的CPU向所述复杂可编程逻辑器件发出读数据命令之后的读SDRAM步骤;所述的CPU向所述复杂可编程逻辑器件发出写数据命令之后的写SDRAM步骤。该方法还包括所述SDRAM芯片的自刷新步骤,包括步骤D1:自刷新;步骤D2:返回所述SDRAM芯片的所有管脚的初始化状态。该方法还包括所述SDRAM芯片的时钟挂起步骤,包括步骤E1:初始化所述SDRAM芯片的所有管脚的状态;步骤E2:时钟挂起;步骤E3:返回所述SDRAM芯片的所有管脚的初始化状态。所述的初始化步骤包括步骤A1:初始化所述SDRAM芯片的所有管脚的状态;步骤A2:给所有的数据块预充电;步骤A3:根据时钟频率和地址范围设置所述SDRAM芯片的相关参数;步骤A4:返回所述SDRAM芯片的所有管脚的初始化状态。所述的读SDRAM步骤包括步骤B1:给所有的数据块预充电;步骤B2:根据CPU给出的地址总线,激活所述SDRAM芯片的相应数据块;步骤B3:读取SDRAM芯片;步骤B4:给相应的数据块预充电;步骤B5:返回所述SDRAM芯片的所有管脚的初始化状态。所述的写SDRAM步骤包括步骤C1:给所有的数据块预充电;步骤C2:根据地址总线,激活所述SDRAM芯片的相应数据块;步骤C3:写SDRAM芯片;步骤C4:给相应的数据块预充电;步骤C5:返回所述SDRAM芯片的所有管脚的初始化状态。与现有技术相比,本发明的有益效果是本发明提出一种用于SRAM接口转SDRAM接口的电路及转换方法,该方法采用复杂可编程逻辑器件(Co即lexProgrammableLogicDevice,简称CPLD)模拟SRAM和SDRAM时序,使CPU可以通过SRAM总线接口对SDRAM芯片进行读、写等操作;同时该方法还实现了SDRAM的自刷新和挂起等操作,以降低SDRAM的功耗。该方法应用在手持终端当中,采用SDRAM取代SRAM,大大降低终端设备的成本。该方法没有完全实现SDRAM的时序规范,只是根据SRAM的时序要求,实现对SDRAM的相关操作,这样的好处是方法实现起来简单和可靠,并且占用CPLD的逻辑单元非常少,非常适合应用在手持终端这样设备当中。图l是本发明的系统框图。图1中的信号说明WE:写控制信号。RE:读控制信号。CS:CPU的片选信号ADDR:地址信号DATA:数据信号MCLK:CPLD模块的时钟信号。RAS:SDRAM的列地址锁存信号。CAS:SDRAM的行地址锁存信号。BANK:SDRAM的块地址信号。CKE:SDRAM的时钟使能信号。CLK:SDRAM的时钟信号。图2是CPU通过SRAM接口读数据的时序图。图3是CPU通过SRAM接口写数据的时序图。图4是CPLD实现的逻辑模块的状态转换图。具体实施例方式下面结合附图和实施例对本发明的具体实施方式做进一步详细的说明,但不应以此限制本发明的保护范围。表1是SDRAM操作的真值表。SDRAM的时序要求完整的操作如表1所示。本发明方法为了节省CPLD的逻辑单元,没有完全实现表l所罗列的操作。该方法实现的逻辑操作如下①PrechargeallBanks:给所有的数据块预充电②Moderegisterset:根据CLOCK的频率和地址范围设置SDRAM的相关参数。③BankActive:根据地址总线,激活相关的块。④Read读⑤Write写⑥PrechargeSelectedBank⑦Clocksuspend时钟挂起⑧AutoRefresh自动刷新◎NoOperation:初始化SDRAM的所有管脚的状态。本发明方法把上述所有的逻辑操作组合起来,实现了CPU通过SRAM总线对SDRAM进行读、写和SDRAM的自刷新等操作。表l<table>tableseeoriginaldocumentpage9</column></row><table><table>complextableseeoriginaldocumentpage10</column></row><table>表l解释如下:Command:操作命令CKEn-1:第N-l个时钟CKEn:第N个时钟CS:片选信号RAS:列地址锁存信号CAS:行地址锁存信号WE:写使能信号ADDR:地址总线A10/AP:第IO根地址线BA:块地址ModeRegisterSet:设置模式寄存器NoOperation:空操作BankActive:激活数据块Read:读数据ReadwithAutoprecharge:带予页充的读数据命令Write:写数据WritewithAutoprecharge:带预充的写数据命令PrechargeallBanks:预充所有的数据块PrechargeSelectedBank:预充相应的数据块BurstStop:停止连续操作AutoRefresh:自动刷新BurstReadSingleWrite:连续读&单个写SelfRefresh:自刷新Prechargepowerdown:预充掉电Clocksuspend-时钟挂起表l中,各符号含义如下H:高电平L:低电平V:相应的数值(由数据的地址决定)X:高阻态。如图l所示,本发明用于SRAM接口转SDRAM接口的电路,包括CPU、复杂可编程逻辑器件和SDRAM芯片。所述的CPU包括一个SRAM接口,该SRAM接口的写控制端WE、读控制端RE、片选信号端CS、地址信号端ADDR分别与所述复杂可编程逻辑器件的第一写控制端WE1、读控制端RE、片选信号端CS、第一地址信号端ADDRl相连,所述的CPU的数据信号端DATA与所述SDRAM芯片的数据信号端DATA相连。所述复杂可编程逻辑器件的列地址锁存信号RAS、行地址锁存信号CAS、第二写控制端WE2、块地址信号端BANK、第二地址信号端ADDR2、时钟使能信号CKE分别与所述SDRAM芯片的列地址锁存信号RAS、行地址锁存信号CAS、写控制端WE、块地址信号端BANK、地址信号端ADDR、时钟使能信号CKE相连。CPLD作为CPU和SDRAM之间的一个桥梁,CPU通过SRAM接口向CPLD发送读写请求;CPLD根据CPU的时序要求,向SDRAM发送相关的命令序列。复杂可编程逻辑器件是Lattice公司的LC4064V,包含64个逻辑单元,实现了CPU通过SRAM总线对SDRAM进行操作,利用SDRAM芯片取代SRAM作为系统的数据存储体。相同数据容量SDRAM的价格比SRAM要便宜很多;LC4064V只有64个可编程的逻辑单元,是一款价格非常低廉的CPLD;所以本发明方案的价格非常便宜,具有很强的实用价值。CPLD的MCLK是整个逻辑系统的驱动时钟,实现过程中可以选择50MHz的压控振荡器。SDRAM的CS信号在实现过程中直接接地,这样可以节省CPLD的逻辑单元。复杂可编程逻辑器件每隔64毫秒向所述的SDRAM芯片的每行数据发送N个数据自动刷新的命令序列,从而了保证SDRAM的数据完整性。N由SDRAM的行的数量决定。例如,64MB(MegaByte)的SDRAM包含4096行数据单元,所以每隔64毫秒,应该发送4096个自动刷新命令。为了节省整个系统的功耗,复杂可编程逻辑器件每隔64毫秒向所述SDRAM发送1个时钟挂起命令序列。图2是CPU通过SRAM接口读数据的时序图。CS在读数据过程中为低电平,ADDR输出相应的地址之后,RE为低电平,CPU读取数据线上的数据。所有信号之间的时延可以根据示波器测量的数据和SDRAM的时延参数进行调整。图3是CPU通过SRAM接口写数据的时序图。CS在写数据过程中为低电平,ADDR输出相应的地址之后,CPU设置数据线上的数据,WE为低电平,通知SRAM芯片存储数据。所有信号之间的时延可以根据实际的情况进行细微地调整。图4是CPLD实现的逻辑模块的状态转换图。本发明采用CPLD实现一个逻辑模块,该逻辑模块根据CPU的SRAM接口的时序要求,实现对SDRAM的读写操作。同时,该逻辑模块根据SDRAM的自动刷新要求,每隔64毫秒,向SDRAM发送N个自动刷新的命令序列,完成SDRAM的自刷新操作。为了节省整个系统的功耗,该逻辑模块每隔64mS,向SDRAM发送时钟挂起的命令序列。本发明方法按照表1的相关操作的组合,实现了CPU通过SRAM总线对SDRAM进行读、写和SDRAM的自刷新等操作。具体的实现方式如下本发明应用上述用于SRAM接口转SDRAM接口的电路的转换方法,包括以下步骤所述的SDRAM芯片上电以后的初始化步骤;所述的CPU向所述复杂可编程逻辑器件发出读数据命令之后的读SDRAM步骤;所述的CPU向所述复杂可编程逻辑器件发出写数据命令之后的写SDRAM步骤。(1)SDRAM上电以后,需要对SDRAM进行初始化,使SDRAM进入预设的状态。初始化步骤包括步骤Al:NoOperation,即初始化所述SDRAM芯片的所有管脚的状态;步骤A2:PrechargeallBanks,即给所有的数据块预充电;步骤A3:Moderegisterset,根据时钟频率和地址范围设置所述SDRAM芯片的相关参数,如CAS的时延,BURST的类型和BURST的长度等;步骤A4:返回所述SDRAM芯片的所有管脚的初始化状态,即返回NoOperation状态。(2)接收到CPU的读数据要求之后,对SDRAM进行如下的操作,使相关地址的数据出现在数据总线上。读SDRAM步骤包括步骤Bl:PrechargeallBanks;步骤B2:BankActive,根据CPU给出的地址总线,激活所述SDRAM芯片的相关块;步骤B3:Read,读取SDRAM芯片;步骤B4:PrechargeSelectedBank,给相应的数据块预充电;步骤B5:返回所述SDRAM芯片的所有管脚的初始化状态,即返回NoOperation状态。(3)接收到CPU的写数据要求之后,对SDRAM进行如下的操作,使相关地址的数据写入SDRAM当中。写SDRAM步骤包括步骤Cl:PrechargeallBanks,给所有的数据块预充电;步骤C2:BankActive,根据地址总线,激活所述SDRAM芯片的相关块;步骤C3:Write,写SDRAM芯片;步骤C4:PrechargeSelectedBank,给相应的数据块预充电;步骤C5:返回所述SDRAM芯片的所有管脚的初始化状态。(4)SDRAM要求64毫秒之内必须对所有的存储单元进行一次刷新。SDRAM芯片的自刷新步骤,包括步骤Dl:AutoRefresh自动刷新步骤D2:返回所述SDRAM芯片的所有管脚的初始化状态。(5)SDRAM的状态转换增加时钟挂起这个状态是为了减小本文所介绍的方法的整体功耗。SDRAM芯片的时钟挂起步骤,包括步骤E1:初始化所述SDRAM芯片的所有管脚的状态;步骤E2:Clocksuspend,即时钟挂起,这是SDRAM的一个状态,SDRAM输入管脚状态的变化见表l,输出管脚没有变化;步骤E3:返回所述SDRAM芯片的所有管脚的初始化状态。以上所述仅为本发明的较佳实施例而已,并非用来限定本发明的实施范围。即凡依本发明申请专利范围的内容所作的等效变化与修饰,都应为本发明的技术范畴。权利要求1、一种用于SRAM接口转SDRAM接口的电路,其特征在于包括CPU、复杂可编程逻辑器件和SDRAM芯片,所述的CPU包括一个SRAM接口,该SRAM接口的写控制端WE、读控制端RE、片选信号端CS、地址信号端ADDR分别与所述复杂可编程逻辑器件的第一写控制端WE1、读控制端RE、片选信号端CS、第一地址信号端ADDR1相连,所述的CPU的数据信号端DATA与所述SDRAM芯片的数据信号端DATA相连,所述复杂可编程逻辑器件的列地址锁存信号RAS、行地址锁存信号CAS、第二写控制端WE2、块地址信号端BANK、第二地址信号端ADDR2、时钟使能信号CKE分别与所述SDRAM芯片的列地址锁存信号RAS、行地址锁存信号CAS、写控制端WE、块地址信号端BANK、地址信号端ADDR、时钟使能信号CKE相连。2、根据权利要求1所述的用于SRAM接口转SDRAM接口的电路,其特征在于所述复杂可编程逻辑器件是Lattice公司的LC4064V,其驱动时钟MCLK是50MHz的压控振荡器。3、根据权利要求1所述的用于SRAM接口转SDRAM接口的电路,其特征在于所述SDRAM芯片的片选信号端CS直接接地。4、根据权利要求1所述的用于SR雇接口转SDRAM接口的电路,其特征在于所述复杂可编程逻辑器件每隔64毫秒向所述的SDRAM芯片发送数据自动刷新的命令序列。5、根据权利要求1所述的用于SRAM接口转SDRAM接口的电路,其特征在于所述复杂可编程逻辑器件每隔64毫秒向所述SDRAM发送时钟挂起命令序列。6、一种应用上述权利要求15所述用于SRAM接口转SDRAM接口的电路的转换方法,其特征在于包括以下步骤所述的SDRAM芯片上电以后的初始化步骤;所述的CPU向所述复杂可编程逻辑器件发出读数据命令之后的读SDRAM步骤;所述的CPU向所述复杂可编程逻辑器件发出写数据命令之后的写SDRAM步骤。7、根据权利要求6所述的SRAM接口转SDRAM接口的转换方法,其特征在于该方法还包括所述SDRAM芯片的自刷新步骤,包括步骤D1:自刷新;步骤D2:返回所述SDRAM芯片的所有管脚的初始化状态。8、根据权利要求6所述的SRAM接口转SDRAM接口的转换方法,其特征在于该方法还包括所述SDRAM芯片的时钟挂起步骤,包括步骤E1:初始化所述SDRAM芯片的所有管脚的状态;步骤E2:时钟挂起;步骤E3:返回所述SDRAM芯片的所有管脚的初始化状态。9、根据权利要求6所述的SRAM接口转SDRAM接口的转换方法,其特征在于所述的初始化步骤包括步骤A1:初始化所述SDRAM芯片的所有管脚的状态;步骤A2:给所有的数据块预充电;步骤A3:根据时钟频率和地址范围设置所述SDRAM芯片的相关参数;步骤A4:返回所述SDRAM芯片的所有管脚的初始化状态。10、根据权利要求6所述的SRAM接口转SDRAM接口的转换方法,其特征在于所述的读SDRAM步骤包括步骤B1:给所有的数据块预充电;步骤B2:根据CPU给出的地址总线,激活所述SDRAM芯片的相应数据块;步骤B3:读取SDRAM芯片;步骤B4:给相应的数据块预充电;步骤B5:返回所述SDRAM芯片的所有管脚的初始化状态。所述的写SDRAM步骤包括步骤C1:给所有的数据块预充电;步骤C2:根据地址总线,激活所述SDRAM芯片的相应数据块;步骤C3:写SDRAM芯片;步骤C4:给相应的数据块预充电;步骤C5:返回所述SDRAM芯片的所有管脚的初始化状态。全文摘要本发明公开了一种用于SRAM接口转SDRAM接口的电路和转换方法,该转换电路包括CPU、CPLD和SDRAM芯片,CPU包括一个SRAM接口,该SRAM接口的WE、RE、CS、ADDR端分别与CPLD的相应信号端相连,CPU的数据信号端DATA与SDRAM芯片的数据信号端DATA相连。CPLD的列地址锁存信号RAS、行地址锁存信号CAS、第二写控制端WE2、块地址信号端BANK、第二地址信号端ADDR2、时钟使能信号CKE分别与所述SDRAM芯片的相应信号端相连。本发明应用在手持终端当中,SRAM接口转成SDRAM接口,CPU可以通过SRAM总线接口对SDRAM进行读、写等操作。文档编号G11C7/10GK101364428SQ200810200129公开日2009年2月11日申请日期2008年9月19日优先权日2008年9月19日发明者武石申请人:嘉兴闻泰通讯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1