嵌入式sdram存储模块的制作方法

文档序号:6770098阅读:196来源:国知局
专利名称:嵌入式sdram存储模块的制作方法
技术领域
本实用新型涉及一种基于SDRAM芯片的嵌入式缓存模块,属于数据存储技术领 域。
背景技术
对于信号采集中对高速数据处理的嵌入式应用场合,例如雷达、电子对抗、通信、 软件无线电、地震地质信号分析等多种应用领域中对信号进行连续高速的采集和处理应用 中,由于处理器运行速度和外部信号变化速度不能很好地匹配,所以要加入缓存进行协调 处理。当外部信号变化速度快于处理器运行速度时,需要用缓存板将采集的外部信号进行 暂存,待处理器处理完上一批数据后,再将暂存在缓存板里的数据调入处理器进行处理,这 样可避免数据的丢失。当外部信号变化速度慢于处理器运行速度时,可先将采集到的完整 数据暂存在缓存板里,然后一次性调入处理器,这样可以提高处理器处理数据的速度,从而 提高整个系统的处理能力。通常构成高速缓存的方案三种第一种是FIFO (先进先出)方式。FIFO存储器就 象数据管道一样,数据从管道的一头流入、从另一头流出,先进入的数据先流出。FIFO具有 两套数据线而无地址线,可在其一端写操作而在另一端读操作,数据在其中顺序移动,因而 能够达到很高的传输速度和效率,且由于省去了地址线而有利于PCB板布线。缺点是只能 顺序读写数据,因而显得比较呆板,而且大容量的高速FIFO非常昂贵;第二种是高速SRAM (静态随机存储器)切换方式。高速SRAM只有一套数据、地址和控制总线,可通过三态缓冲 门分别接到数据采样器和处理器上。当需要采样数据时,SRAM由三态门切换到数据采样器 一侧,以使采样数据写入其中。当数据采样结束后,SRAM再由三态门切换到处理器一侧以便 处理器进行读写。这种方式的优点是SRAM可随机存取,同时存储速度很快,缺点是SRAM集 成度低,功耗大,同等容量的体积大,其价格昂贵。第三种是当前市面上已有的SDRAM方式。 在这种方式下通常有两种类型一种是采用市场上的专用SDRAM接口芯片,这种方式控制 接口固定,访问有限,与采样电路连接时,需要设计一个接口转换电路,满足专用芯片的接 口时序,会加大电路的复杂度;另一种是采用带有SDRAM接口的处理器,例如TMS320C6000 系列的DSP (数字信号处理器),但是容量有限,不易扩展,而且这种方式通常要求对采集数 据进行预处理。
发明内容为解决已有存储系统存储带宽低、存取速度慢、不便管理的特点和技术问题,本实 用新型提供了一种基于SDRAM的嵌入式缓存模块,这种模块易于系统集成,本存储模块还 具有存储带宽高、存储容速度快,并能回读工作状态信息而易于管理,克服了传统存储设备 复杂、功耗体积大的特点。为达到上述技术效果,本实用新型的技术方案是嵌入式SDRAM存储模块,包括SDRAM存储模块、FPGA控制器、接插件A和接插件B,所述SDRAM存储模块为5片,SDRAM存储模块的输入输出端与FPGA控制器的通用输入输出 口连接,接插件A和接插件B的输入端与FPGA控制器的通用输入输出口连接,接插件A和 接插件B的输出端与FPGA控制器的通用输入输出口连接;接插件A的数据输入接口和接插 件B的数据输入接口将存储数据传输至FPGA控制器,再由FPGA控制器写入SDRAM存储模 块;接插件B将用户命令传输至FPGA控制器或将FPGA控制器内部状态寄存器的数据传至 用户板卡,接插件B的数据输出接口将FPGA控制器从SDRAM存储模块读取的数据传至用户 板卡。接插件A设置有加载调试的接口。所述SDRAM存储模块为(同步动态随机存储器)。所述SDRAM存储模块的输入输出端是通用I/O 口。所述FPGA控制器的通用输入输出口是通用I/O 口。所述接插件A和接插件B为连接用户板卡与嵌入式SDRAM存储板的定位接头。本实用新型所涉及的存储模块是基于SDRAM类型的存储芯片,控制器采用目前技 术比较成熟的FPGA (现场可编程大规模集成电路),其具有编程方便,设计灵活,便于构造 大容量的SDRAM存储器的特点,只需根据系统技术进行设计。在本实用新型中,FPGA作为 SDRAM芯片控制器和各种数据流的桥接,数据和命令通过接插件(连接电子线路的定位接 头)由用户板卡传送到FPGA或由FPGA传送到用户板卡,然后FPGA根据输入的用户命令来 对SDRAM存储器进行相应的读写操作。嵌入式存储模块由三部分构成SDRAM组成的存储模块、FPGA构建的控制器、用于 传输数据和命令的接插件。模块框图及连接关系如

图1所示,其中存储模块用于对数据的暂存,由5片高速SDRAM构成,能对主机板写入的数据实时 响应,做到无丢失的存储。存储模块的功能描述如下存储模块共有mode A和mode B两种存储模式mode A表示主机板写入数据为5 路,每路数据为250M DDR、12bits模式;读出数据为125MHz、12bits模式。mode B表示主机 板写入数据为4路,每路数据为250M DDR、20bits模式;读出数据为125MHz、IObits模式。主机板在读取数据时,共有三种存储器空间分配模式,通过数据读取端口分区指 示信号R_PAR进行选择为00时,表示主机板通过数据读取端口从大区模式的存储器空间 中读取缓存的数据;为01时,表示主机板通过数据读取端口从小区模式的A区中读取缓存 的数据;为10时,表示主机板通过数据读取端口从小区模式的B区中读取缓存的数据;为 11时,默认为00。主机板在写入数据时,共有三种存储器空间分配模式,通过数据读取端口分区指 示信号W_PAR进行选择为00时,表示主机板通过数据写入端口向大区模式的存储器空间 中写入需要缓存的数据;为01时,表示主机板通过数据写入端口向小区模式的A区中写入 需要缓存的数据;为10时,表示主机板通过数据写入端口向小区模式的B区中写入需要缓 存的数据;为11时,默认为00。FPGA主控器用于SDRAM的读写控制和数据的桥接。该部分程序框图如图2所示, 其中命令模块主要用于接收用户端口发送的控制命令和向用户反馈FPGA内部控制程序 的工作状态,当接收到用户的相关控制命令后就向FPGA内部相关程序发出控制信号。该模块工作在由用户提供的75MHz的主频下。LVDS, DDR数据接收模块主要用于将用户发送的250MHz、DDR格式80bits/60bits 数据按照一定格式进行接收。将用户发送的80bits/60bits差分信号转化为FPGA内部信 号,然后将250MHZ的DDR数据转化为250MHz的160bits数据写入FIFO缓存。SDRAM缓存控制器根据命令端口命令将FIFO中缓存数据写入SDRAM存储器,该模 块工作在133MHz。当命令模块发出读命令,SDRAM缓存控制器将根据命令端口给出的相应 的地址进行读操作,并把读出的数据发送到FIFO数据缓存中。当命令模块发出读命令后,dualportRAM将根据FIFO数据缓存状态,将读出数据 进行缓存。该模块工作在125MHz。LVDS、SDR数据发送模块,将根据命令模块指令,把缓存在dualportRAM中的数据 依次分别读出,转化为LVDS差分信号发送给用户接口。FPGA同时提供内部状态信息,用户可回读此信息以了解存储板的工作情况。本实用新型共有两个接插件接插件A和接插件B,接插件A的数据输入接口和接 插件B的数据输入接口用于将存储数据传输至FPGA,再由FPGA写入SDRAM ;接插件B的命 令接口用于将用户命令传输至FPGA或将FPGA内部状态寄存器的数据传至用户板卡,接插 件B的数据输出接口用于将FPGA从SDRAM读取的数据传至用户板卡。接插件A含有加载 调试接口,可用于加载调试。加载方式可通过板卡自身加载,或由用户板通过接插件加载。有益效果本实用新型所涉及的是一种基于SDRAM的嵌入式缓存模块,并通过高 速FPGA和接插件实现了用户板卡和存储模块间的命令和数据通讯,由于FPGA配置灵活并 且具有高速传输数据的能力,从而使得该存储模块易于系统集成,存储速度快,而且用户可 通过接插件B的命令接口回读FPGA的工作状态信息,实时了解FPGA的工作状态而使本实 用新型易于管理。本实用新型还克服了传统存储设备复杂、功耗体积大的特点。说明书附图[0028]图1为本实用新型的模块系统框图;[0029]图2为FPGA主控器程序框图;[0030]图3为SDRAM读操作流程;[0031]图4为SDRAM写操作流程;[0032]图5为SDRAM刷新操作流程;[0033]图6为命令端口的命令字写入时序示意图;[0034]图7为命令端口的数据读取时序示意图;[0035]图8为从命令端口回读状态字或命令字的时序示意图[0036]图9为通过命令端口设置工作参数的时序示意图;[0037]图10为模式A下的·纹据写入时序图;[0038]图11为模式B下的·纹据写入时序图;[0039]图12为模式A下的·纹据读取时序图;[0040]图13为模式B下的·纹据读取时序图;[0041]图14为模式A下的·纹据读取格式示意图;[0042]图15为模式B下的·纹据读取格式示意图。
具体实施方式
实施例1嵌入式SDRAM存储模块,包括SDRAM存储模块、FPGA控制器、接插件A和接插件B, 其特征在于所述SDRAM存储模块为5片,SDRAM存储模块的输入输出端与FPGA控制器的 通用输入输出口连接,接插件A和接插件B的输入端与FPGA控制器的通用输入输出口连 接,接插件A和接插件B的输出端与FPGA控制器的通用输入输出口连接;接插件A的数据 输入接口和接插件B的数据输入接口将存储数据传输至FPGA控制器,再由FPGA控制器写 入SDRAM存储模块;接插件B将用户命令传输至FPGA控制器或将FPGA控制器内部状态寄 存器的数据传至用户板卡,接插件B的数据输出接口将FPGA控制器从SDRAM存储模块读取 的数据传至用户板卡。上述实施方式的工作原理和过程如下一种基于SDRAM的缓存板主控模块包括一片Xilinx公司的高性能系列FPGA,它通 过SAMTEC公司的高速接插件完成接口以及逻辑控制,实现板间高速数据传输、SDRAM阵列 读写控制、主机命令响应及状态交互。SDRAM存储阵列模块包括 5 片 White Electronic Designs Corporation最新大容 量SDRAM芯片,数据总容量为10GBit。板间高速数据传输接口分为数据写入端口及数据读取端口,二者独立操作。其中, 数据写入端口采用LVDS25电平方式,总线速率为250MHz DDR (即数据率为500MHz),数据 位宽60bits(mode Α)或80bits (mode B);数据读取端口采用LVDS25电平方式,总线速率 为 125MHz,数据位宽 12bits(mode Α)或 IObits (mode B)。缓存板可以充分利用“写”操作的时间空隙尽快地从SDRAM阵列中读取主机板所 需要的数据。命令端口采用LVC0MS25电平方式,总线速率为75MHz,所有命令端口的操作同步 于此时钟。 SDRAM读写操作和刷新操作流程如图3— 5所示控制逻辑中写的优先级高于读的优先级,当有写数据命令时,首先执行写SDRAM 的命令,读命令将等待到写命令执行完成后,继续执行。当系统初始化完成,写命令到来并 且SDRAM处于可以执行写命令的状态,系统开始对SDRAM的写操作。在读操作过程中,写命 令达到,读操作将执行完成后,开始执行写操作,为了保证在这种情况下,不丢失数据故写 操作FIFO的深度设计为SDRAM爆发写操作深度的4倍。在写操作时,首先对SDRAMO进行写操作,激活R0W,等待SDRAM可以写入数据后,开 始写入256个64bit数据;在写SDRAMO数据结束前5个时钟周期,判断系统是否满足继续 写入数据条件,如果满足就激活SDRAMl的相关ROW ;等待SDRAMO的256个数据写完,就中断 SDRAMO写,同时开始对SDRAMl写入数据;在SDRAMl写入数据的过程中,SDRAMO就继续完 成precharge、Auto refresh等操作,并将SDRAMO返回idle状态,如果条件满足继续写入 数据;在SDRAMl写数据结束前5个时钟周期,系统如果满足继续写入数据的条件,就去激活 SDRAMO的相关R0W,等待SDRAMl的256个数据写完,就中断SDRAMl写,同时开始对SDRAMO 写入数据;SDRAMl就继续完成precharge、Auto refresh等操作。如果系统继续满足写入 数据的条件,以上过程将周而复始的执行。当系统不满足继续写入数据的条件时,SDRAM将返回IDLE状态。当系统初始化完成后,系统满足读操作条件,就对SDRAMO发起读操作,首先激活 row,等待SDRAMO满足读要求后,进入256个数据的读状态(注意由于SDRAM特点,当CL=3 时,数据延迟3个时钟周期有效);在SDRAMO读操作结束前5个时钟周期,判断系统是否满 足读操作要求,满足就激活SDRAMl的相关row;等待SDRAMO读数据完成时,中断SDRAMO读 操作,同时SDRAMl就开始读操作;在SDRAMl读操作的过程中,SDRAMO继续完成precharge、 auto refresh等操作后,返回IDLE状态。在SDRAMl读操作结束前5个时钟周期,判断 系统是否满足读操作要求,满足就激活SDRAMO的相关row ;等待SDRAMl读数据完成,中 断SDRAMl读操作,同时SDRAMO开始读操作;在SDRAMO读操作过程中,SDRAMl继续完成 precharge,auto refresh等操作后,返回IDLE状态。如果系统读SDRAM的条件继续满足, 相关操作将周而复始的进行。当系统不满足继续读数据的条件时,SDRAM将返回IDLE状态。FPGA逻辑系统将根据系统时钟计数auto refresh是否使能。当系统计数满足刷 新要求计数时,将auto refresh状态处于使能状态,如果SDRAM没有处于刷新与读/写的 冲突状态,则立即执行auto refresh,并将auto refresh状态置为不使能状态。如果SDRAM 处于刷新与读/写的冲突状态,则延后执行auto refresh,在此过程中保持auto refresh 状态处于使能状态,当SDRAM处于IDLE以后,立即执行Auto refresh,同时将auto refresh 状态置为不使能状态。命令接口和数据接口的时序如图6—15所示命令端口由时钟信号C_CLK、写信号C_WEN、写数据总线C_DIN、读信号C_REN、读数 据总线C_D0UT、地址总线C_ADDR、全局复位信号RESET、模式控制信号MODE、数据写入端口 分区指示信号W_PAR以及数据读取端口分区指示信号R_PAR组成。命令端口主要完成工作 模式的配置、分区选择、SDRAM缓存数据回读起始地址及长度的配置等,并且能够回读各种 状态信息。命令端口所有信号同步于时钟信号C_CLK。数据写入端口由时钟信号W_CLK、写信号W_EN、数据总线W_DIN组成。数据写入端 口主要完成高速数据的接收,然后按照内部地址管理信息的指示将数据在SDRAM阵列中进 行缓存。数据写入端口所有信号同步于时钟信号W_CLK。主机板通过数据写入端口向SDRAM 存储板写入待存储的数据可以分为两种模式,分别为Mode A和Mode B。在模式A下,SDRAM 存储板为主机板提供5路、48bits位宽的存储空间;在模式B下,SDRAM存储板为主机板提 供4路、SObits位宽的存储空间。两种模式下的数据写入时序示意图如图10及图11所示。数据读取端口由时钟信号R_CLK、读信号R_EN、数据总线R_D0UT组成。数据读取 端口主要完成SDRAM存储阵列中缓存数据的读取操作,数据读取的起始地址及读取长度由 命令端口设置。数据读取端口所有信号同步于时钟信号R_CLK。主机板通过数据读取端口 从SDRAM存储板读取缓存数据可以分为两种模式,分别为Mode A和Mode B。在模式A下, SDRAM存储板向主机板输出1路、12bits位宽的缓存数据;在模式B下,SDRAM存储板向主 机板输出1路、IObits位宽的缓存数据。两种模式下的数据读取时序示意图如图12及图 13所示。读取数据操作要求SDRAM存储板能够尽快响应,即必须充分利用两次“数据写入” 的间隔时间响应“读”数据请求,协助主机板完成数据读取操作。实施例2嵌入式SDRAM存储模块,包括SDRAM存储模块、FPGA控制器、接插件A和接插件B,其特征在于所述SDRAM存储模块为5片,SDRAM存储模块的输入输出端与FPGA控制器的 通用输入输出口连接,接插件A和接插件B的输入端与FPGA控制器的通用输入输出口连 接,接插件A和接插件B的输出端与FPGA控制器的通用输入输出口连接;接插件A的数据 输入接口和接插件B的数据输入接口将存储数据传输至FPGA控制器,再由FPGA控制器写 入SDRAM存储模块;接插件B将用户命令传输至FPGA控制器或将FPGA控制器内部状态寄 存器的数据传至用户板卡,接插件B的数据输出接口将FPGA控制器从SDRAM存储模块读取 的数据传至用户板卡。 接插件A设置有加载调试的接口。
权利要求1.嵌入式SDRAM存储模块,包括SDRAM存储模块、FPGA控制器、接插件A和接插件B, 其特征在于所述SDRAM存储模块为5片,SDRAM存储模块的输入输出端与FPGA控制器的 通用输入输出口连接,接插件A和接插件B的输入端与FPGA控制器的通用输入输出口连 接,接插件A和接插件B的输出端与FPGA控制器的通用输入输出口连接;接插件A的数据 输入接口和接插件B的数据输入接口将存储数据传输至FPGA控制器,再由FPGA控制器写 入SDRAM存储模块;接插件B将用户命令传输至FPGA控制器或将FPGA控制器内部状态寄 存器的数据传至用户板卡,接插件B的数据输出接口将FPGA控制器从SDRAM存储模块读取 的数据传至用户板卡。
2.根据权利要求1所述的嵌入式SDRAM存储模块,其特征在于接插件A设置有加载 调试的接口。
专利摘要本实用新型公开了一种嵌入式SDRAM存储模块,包括SDRAM存储模块、FPGA控制器、接插件A和接插件B,其特征在于所述SDRAM存储模块为5片,SDRAM存储模块的输入输出端与FPGA控制器的通用输入输出口连接,接插件A和接插件B的输入端与FPGA控制器的通用输入输出口连接,接插件A和接插件B的输出端与FPGA控制器的通用输入输出口连接,本实用新型具有易于系统集成,本存储模块不仅存储带宽高、存储容速度快,而且能回读工作状态信息而易于管理,还克服了传统存储设备复杂、功耗体积大的特点。
文档编号G11C11/413GK201859658SQ20102062834
公开日2011年6月8日 申请日期2010年11月29日 优先权日2010年11月29日
发明者戴荣, 白湘洲, 阴陶 申请人:成都傅立叶电子科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1