基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法及装置制造方法及图纸

技术编号:9434542 阅读:192 留言:0更新日期:2013-12-12 00:36
本发明专利技术涉及基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法,包括:主设备启动对SDRAM存储器的访问;FPGA控制器内部的PCI总线协议管理单元响应主设备的访问请求;PCI总线协议管理单元检测猝发状态,转换到内部局部总线,实现猝发访问;高速同步处理单元将内部局部总线同步到对SDRAM存储器访问的高速总线,并向SDRAM控制器发出访问请求;SDRAM控制器根据其访问的当前地址,启动激活命令,对SDRAM存储器相应的行单元进行激活。本发明专利技术还公开了一种基于FPGA实现主设备对SDRAM存储器快速猝发访问的装置。本发明专利技术充分利用FPGA控制器的可编程特性,通过在FPGA控制器内部实现PCI局部总线协议,将主设备访问同步到对SDRAM存储器的访问,从而实现对SDRAM存储器的快速猝发访问。

【技术实现步骤摘要】
基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法及装置
本专利技术涉及电数字数据处理领域,尤其是一种基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法及装置。
技术介绍
SDRAM存储器为同步动态随机存储器,其具有容量大、速度快、价格低廉的优点,从而成为数据缓存的首选存储介质。目前,采用SDRAM存储器作为存储介质的技术应用,在主设备访问的时候多是不连续的,无法实现主设备对SDRAM存储器的快速猝发访问。公开号为CN200410091955的专利文献《一种提高SDRAM处理带宽的方法》专利文献主要是通过对存储的数据内容的改进达到提高效率的目的;公开号为CNZO0510061654的专利文献《一种同步动态存储器控制器的设计方法》提出一种地址解析优化的方法,避免连续访问同一个Bank,但这样的方法仅对地址连续的情况有效,如果地址是随机变化的,这种优化的方法就没有效果;公开号为CN101140797的专利文献《同步动态存储器的读写方法和读写装置》提出了缓存当前访问命令和地址,判断上一读写访问请求的状态,根据当前读写访问和判断结果进行相应的读写处理的方法,对于快速猝发访问无法适用。
技术实现思路
本专利技术的首要目的在于提供一种在主设备对SDRAM存储器进行连续访问时,能够进行协议转换、高速同步以及存储器状态控制,从而实现对SDRAM存储器快速猝发访问的基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法。为实现上述目的,本专利技术采用了以下技术方案:一种基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法,该方法包括下列顺序的步骤:(1)主设备访问:主设备执行指令,启动对SDRAM存储器的访问;(2)地址译码:FPGA控制器内部的PCI总线协议管理单元判断主设备的访问信号是否和其内部配置空间相吻合,若吻合则将给出应答信号,响应主设备的访问请求;(3)猝发访问:主设备根据指令给出猝发访问标志,若猝发访问标志有效,PCI总线协议管理单元检测猝发状态,转换到内部局部总线,实现猝发访问;(4)高速同步:高速同步处理单元将内部局部总线同步到对SDRAM存储器访问的高速总线,并向SDRAM控制器发出访问请求;(5)SDRAM控制器激活SDRAM存储器:当SDRAM控制器检测到高速同步处理单元发出的访问请求时,根据其访问的当前地址,启动激活命令,对SDRAM存储器相应的行单元进行激活。所述步骤(2)、(3)具体包括以下步骤:步骤101:PCI状态机为初始状态,等待开机上电配置或正常访问;步骤102:PCI状态机的译码功能模块对主设备初始状态进行命令译码和地址译码,判定是对配置寄存器进行配置还是对SDRAM存储器进行访问,同时锁存起始地址,用来对配置空间和SDRAM存储器空间进行访问;步骤103:检测到上电配置,PCI状态机进入配置响应状态,在步骤104时对步骤107中所申请的地址空间进行配置;步骤105:检测主设备的配置结束信号是否有效,如果没有结束,则PCI状态机在步骤104进行等待,直到配置结束信号有效,PCI状态机运行到步骤106,配置访问结束,返回到初始状态;步骤109:判定主设备发起的访问是否结束;步骤110:进行放弃操作检测,当对SDRAM存储器进行访问时,如果SDRAM存储器没有响应,这次访问将结束,由从设备向主设备发起放弃这次访问操作;步骤112:当步骤109和步骤110任何一步有效时,访问将结束,并返回到初始状态;步骤111:当步骤109和步骤110都无效时,主设备访问将正常进行,将主设备总线访问转换到FPGA控制器内部总线访问,输出到高速同步处理单元。所述步骤(4)具体包括以下步骤:步骤201:由系统时钟对内部总线的地址总线、控制总线、数据总线进行同步处理;步骤202:经过同步处理后发起对SDRAM控制器的访问,同时告知步骤406;步骤203:判定同步处理后的猝发访问标志是否结束,如果没有结束,将作为地址累加的必要条件,如果猝发访问结束,输出到SDRAM控制器,作为SDRAM控制器状态结束的充分调节;步骤204:当步骤203进行连续访问,并且步骤205给出应答信号有效,将对初始地址进行地址累加,将累加后的地址输出到SDRAM控制器;步骤206:当步骤202有效时,检测应答信号,如果在规定的时间内,SDRAM控制器没有响应,将向PCI总线协议管理单元发出放弃本次访问操作的请求。所述步骤(5)具体包括以下步骤:步骤301:SDRAM状态机在初始状态等待访问请求,当检测到访问请求有效时,开始启动对SDRAM存储器的访问;步骤302:根据起始地址对SDRAM存储器相应的行单元进行激活,并给出应答信号到高速同步处理单元,激活后开始对SDRAM存储器进行猝发访问;步骤303:猝发访问状态,根据累加地址,对相应的列单元的地址进行数据读写;步骤304:检测猝发访问结束标志是否有效,持续猝发则运行步骤303,否则访问结束,运行到步骤305,SDRAM状态机返回到初始状态,等待下一次访问操作;步骤305:猝发访问结束。在正常访问时,PCI状态机将由步骤102跳转到步骤108,进入SDRAM存储器访问状态,启动对SDRAM存储器的访问;在对SDRAM存储器访问时,要进行放弃操作检测和猝发访问结束检测。本专利技术的另一目的在于提供一种基于FPGA实现主设备对SDRAM存储器快速猝发访问的装置,包括PCI总线协议管理单元,其输入输出端与高速同步处理单元的输入输出端相连,高速同步处理单元的输入输出端与SDRAM控制器的输入输出端相连,SDRAM控制器的输出端与SDRAM存储器的输入端相连。所述的PCI总线协议管理单元包括:译码功能模块,对来自主设备的命令Cbe[3..0]进行译码,并向状态机控制模块发出是配置访问还是SDRAM存储器访问的命令,同时锁存地址;配置寄存器模块,是一个容量为256字节并具有特定记录结构的地址空间,该空间又分为头标区和设备有关区两部分,由主设备在上电时进行配置;内部总线转换模块,完成PCI总线电路特性到FPGA控制器内部电路特性的转换,实现对高速同步处理单元的访问;状态机控制模块,用于控制PCI状态机。所述的高速同步处理单元包括:初始化地址组件,当向SDRAM控制器发出访问请求时,给出初始地址;地址累加组件,实现对SDRAM存储器连续访问时地址的增加;数据总线缓存组件,实现对SDRAM存储器读写数据的暂时缓存;控制总线同步组件,实现读写使能、请求访问、应答访问,控制相关总线的同步;超时放弃组件,当SDRAM存储器繁忙而无法响应主设备的访问,将对PCI总线协议管理单元发出放弃本次操作的请求,由PCI总线协议管理单元完成对主设备访问的放弃操作。所述的SDRAM控制器包括:激活组件,完成对所选SDRAM存储器的行地址进行激活控制;刷新组件,实现在规定周期内对SDRAM存储器的所有行进行刷新;预充组件,完成对所选择行激活后预充,当数据读写完毕后,要对所选择的行关闭;配置组件,完成上电的流程控制,设置SDRAM存储器的猝发长度、缓冲长度等,为一次性上电控制组件;状态机组件,完成其它组件的时序控制功能,实现对SDRAM存储器的正确访问,根据访问要求,在相应的状态之间进行切换。由上述技术方案可本文档来自技高网...
基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法及装置

【技术保护点】
一种基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法,该方法包括下列顺序的步骤:(1)主设备访问:主设备执行指令,启动对SDRAM存储器的访问;(2)地址译码:FPGA控制器内部的PCI总线协议管理单元判断主设备的访问信号是否和其内部配置空间相吻合,若吻合则将给出应答信号,响应主设备的访问请求;(3)猝发访问:主设备根据指令给出猝发访问标志,若猝发访问标志有效,PCI总线协议管理单元检测猝发状态,转换到内部局部总线,实现猝发访问;(4)高速同步:高速同步处理单元将内部局部总线同步到对SDRAM存储器访问的高速总线,并向SDRAM控制器发出访问请求;(5)SDRAM控制器激活SDRAM存储器:当SDRAM控制器检测到高速同步处理单元发出的访问请求时,根据其访问的当前地址,启动激活命令,对SDRAM存储器相应的行单元进行激活。

【技术特征摘要】
1.一种基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法,该方法包括下列顺序的步骤:(1)主设备访问:主设备执行指令,启动对SDRAM存储器的访问;(2)地址译码:FPGA控制器内部的PCI总线协议管理单元判断主设备的访问信号是否和其内部配置空间相吻合,若吻合则将给出应答信号,响应主设备的访问请求;(3)猝发访问:主设备根据指令给出猝发访问标志,若猝发访问标志有效,PCI总线协议管理单元检测猝发状态,转换到内部局部总线,实现猝发访问;(4)高速同步:高速同步处理单元将内部局部总线同步到对SDRAM存储器访问的高速总线,并向SDRAM控制器发出访问请求;(5)SDRAM控制器激活SDRAM存储器:当SDRAM控制器检测到高速同步处理单元发出的访问请求时,根据其访问的当前地址,启动激活命令,对SDRAM存储器相应的行单元进行激活。2.一种基于FPGA实现主设备对SDRAM存储器快速猝发访问的装置,其特征在于:包括PCI总线协议管理单元,其输入输出端与高速同步处理单元的输入输出端相连,高速同步处理单元的输入输出端与SDRAM控制器的输入输出端相连,SDRAM控制器的输出端与SD...

【专利技术属性】
技术研发人员:栗永强张永坡布乃红戚瑞民
申请(专利权)人:中国电子科技集团公司第四十一研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1