CN103440215A - 基于fpga实现主设备对sdram存储器快速猝发访问的方法及装置 - Google Patents

基于fpga实现主设备对sdram存储器快速猝发访问的方法及装置 Download PDF

Info

Publication number
CN103440215A
CN103440215A CN2013103597626A CN201310359762A CN103440215A CN 103440215 A CN103440215 A CN 103440215A CN 2013103597626 A CN2013103597626 A CN 2013103597626A CN 201310359762 A CN201310359762 A CN 201310359762A CN 103440215 A CN103440215 A CN 103440215A
Authority
CN
China
Prior art keywords
sdram
access
address
main equipment
storer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013103597626A
Other languages
English (en)
Other versions
CN103440215B (zh
Inventor
栗永强
张永坡
布乃红
戚瑞民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CETC 41 Institute
Original Assignee
CETC 41 Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CETC 41 Institute filed Critical CETC 41 Institute
Priority to CN201310359762.6A priority Critical patent/CN103440215B/zh
Publication of CN103440215A publication Critical patent/CN103440215A/zh
Application granted granted Critical
Publication of CN103440215B publication Critical patent/CN103440215B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

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

Description

基于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状态机在初始状态等待访问请求,当检测到步骤302有效时,开始启动对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存储器的正确访问,根据访问要求,在相应的状态之间进行切换。
由上述技术方案可知,本发明使PCI局部总线协议在FPGA控制器内部实现,解决了PCI局部总线协议接口芯片的复杂控制;通过猝发方式可以实现SDRAM存储器的快速访问;采用同步设计技术,实现了低速总线的高速访问;对SDRAM控制器的时序访问采用状态机设计,提高了访问执行效率。总之,本发明根据PCI局部总线和SDRAM存储器的猝发传输特点,充分利用FPGA控制器的可编程特性,通过在FPGA控制器内部实现PCI局部总线协议,将主设备访问同步到对SDRAM存储器的访问,从而实现对SDRAM存储器的快速猝发访问。 
附图说明
图1、3均为本发明的工作流程图; 
图2为本发明的装置结构框图;
图4为本发明中PCI总线协议管理单元的连线示意图;
图5为本发明中SDRAM控制器的连线示意图。
具体实施方式
一种基于FPGA实现主设备对SDRAM存储器4快速猝发访问的方法,该方法包括下列顺序的步骤: 
(1)主设备访问:主设备执行指令,启动对SDRAM存储器4的访问;
(2)地址译码:FPGA控制器内部的PCI总线协议管理单元1判断主设备的访问信号是否和其内部配置空间相吻合,若吻合则将给出应答信号,响应主设备的访问请求;
(3)猝发访问:主设备根据指令给出猝发访问标志,若猝发访问标志有效,PCI总线协议管理单元1检测猝发状态,转换到内部局部总线,实现猝发访问;
(4)高速同步:高速同步处理单元2将内部局部总线同步到对SDRAM存储器4访问的高速总线,并向SDRAM控制器3发出访问请求;
5)SDRAM控制器3激活SDRAM存储器4:当SDRAM控制器3检测到高速同步处理单元2发出的访问请求时,根据其访问的当前地址,启动激活命令,对SDRAM存储器4相应的行单元进行激活。如图1所示。
PCI总线协议管理单元1包括PCI状态机,SDRAM控制器3包括SDRAM状态机,实现上述访问的时序控制主要由PCI状态机和SDRAM状态机完成。PCI状态机主要完成上电配置、开机识别、地址空间分配、地址译码、内部总线转换的时序控制;SDRAM状态机主要完成存储器控制命令的时序设计,给出控制设计流程,主要包括上电初始化、激活、刷新、预充、空操作、猝发访问等功能。 
PCI状态机主要完成上电配置、地址空间分配、地址译码、内部总线转换的时序控制。主设备对SDRAM存储器4的访问可以归结为两次握手,PCI状态机必须要正确设计这两次握手,才能保证整个电路可靠运行。首先是Devsel响应信号,译码电路进行正确译码,给PCI状态机发出正确控制信号,说明主设备正在对从设备进行访问,状态机发出Devsel信号给主设备,表示接受这次访问。然后是Trdy数据应答信号,状态机根据锁存的命令和地址,判断主设备的Irdy是否有效,由主设备发起的访问,Irdy通常有效,Irdy有效表示主设备已经准备好数据的接受和发送,如果从设备也准备好接受和发送,状态机电路驱动Trdy有效,主设备检测到Trdy有效,就结束整个交易过程。 
SDRAM状态机主要完成存储器控制命令的时序设计,给出控制设计流程。主要包括上电初始化、激活、刷新、预充、空操作、猝发访问等功能。为了提高存储器的访问速度,所有对存储器访问的接口命令由状态机控制。命令访问采用三步法完成,包括访问请求、访问响应、访问结束,通过状态机控制,可以有效地避免访问冲突,只有当前访问结束,状态机运行到正确状态,其它的访问命令才能有效。 
如图3所示,所述步骤(2)、(3)具体包括以下步骤: 
步骤101:PCI状态机为初始状态,等待开机上电配置或正常访问;
步骤102:PCI状态机的译码功能模块对主设备初始状态进行命令译码和地址译码,判定是对配置寄存器进行配置还是对SDRAM存储器4进行访问,同时锁存起始地址,用来对配置空间和SDRAM存储器4空间进行访问;
步骤103:检测到上电配置,PCI状态机进入配置响应状态,在步骤104时对步骤107中所申请的地址空间进行配置;
步骤105:检测主设备的配置结束信号是否有效,如果没有结束,则PCI状态机在步骤104进行等待,直到配置结束信号有效,PCI状态机运行到步骤106,配置访问结束,返回到初始状态;
步骤109:判定主设备发起的访问是否结束;
步骤110:进行放弃操作检测,当对SDRAM存储器4进行访问时,如果SDRAM存储器4没有响应,这次访问将结束,由从设备向主设备发起放弃这次访问操作;
步骤112:当步骤109和步骤110任何一步有效时,访问将结束,并返回到初始状态;
步骤111:当步骤109和步骤110都无效时,主设备访问将正常进行,将主设备总线访问转换到FPGA控制器内部总线访问,输出到高速同步处理单元2。
如图3所示,所述步骤(4)具体包括以下步骤: 
步骤201:由系统时钟对内部总线的地址总线、控制总线、数据总线进行同步处理;
步骤202:经过同步处理后发起对SDRAM控制器3的访问,同时告知步骤406;
步骤203:判定同步处理后的猝发访问标志是否结束,如果没有结束,将作为地址累加的必要条件,如果猝发访问结束,输出到SDRAM控制器3,作为SDRAM控制器3状态结束的充分调节;
步骤204:当步骤203进行连续访问,并且步骤205给出应答信号有效,将对初始地址进行地址累加,将累加后的地址输出到SDRAM控制器3;
步骤206:当步骤202有效时,检测应答信号,如果在规定的时间内,SDRAM控制器3没有响应,将向PCI总线协议管理单元1发出放弃本次访问操作的请求。
如图4所示,所述步骤(5)具体包括以下步骤: 
步骤301:SDRAM状态机在初始状态等待访问请求,当检测到步骤302有效时,开始启动对SDRAM存储器4的访问;
步骤302:根据起始地址对SDRAM存储器4相应的行单元进行激活,并给出应答信号到高速同步处理单元2,激活后开始对SDRAM存储器4进行猝发访问;
步骤303:猝发访问状态,根据累加地址,对相应的列单元的地址进行数据读写;
步骤304:检测猝发访问结束标志是否有效,持续猝发则运行步骤303,否则访问结束,运行到步骤305,SDRAM状态机返回到初始状态,等待下一次访问操作;
步骤305:猝发访问结束。
在正常访问时,PCI状态机将由步骤102跳转到步骤108,进入SDRAM存储器4访问状态,启动对SDRAM存储器4的访问;在对SDRAM存储器4访问时,要进行放弃操作检测和猝发访问结束检测。 
本装置包括PCI总线协议管理单元1,其输入输出端与高速同步处理单元2的输入输出端相连,高速同步处理单元2的输入输出端与SDRAM控制器3的输入输出端相连,SDRAM控制器3的输出端与SDRAM存储器4的输入端相连,如图2所示。PCI总线协议管理单元1主要完成开机识别、地址空间分配、地址译码等功能;高速同步处理单元2主要完成内部总线速率到SDRAM总线速率的转换,由于对SDRAM存储器4访问的速率较快,内部总线速率较慢,必须要进行地址总线、数据总线、控制总线的相位同步才能够满足要求,包括初始化地址组件、地址累加组件、数据总线缓存组件、控制总线同步组件、超时放弃组件等;SDRAM控制器3是实现存储器管理的关键电路,主要完成上电初始化、激活、预充、存储和刷新功能的控制; SDRAM存储器4采用32bit数据总线存储器,在上电配置时配置成页模式。 
如图4所示,所述的PCI总线协议管理单元1包括:译码功能模块,对来自主设备的命令Cbe[3..0]进行译码,并向状态机控制模块发出是配置访问还是SDRAM存储器4访问的命令,同时锁存地址;配置寄存器模块,是一个容量为256字节并具有特定记录结构的地址空间,该空间又分为头标区和设备有关区两部分,由主设备在上电时进行配置;内部总线转换模块,完成PCI总线电路特性到FPGA控制器内部电路特性的转换,实现对高速同步处理单元2的访问;状态机控制模块,用于控制PCI状态机。 
如图2所示,所述的高速同步处理单元2包括:初始化地址组件,当向SDRAM控制器3发出访问请求时,给出初始地址;地址累加组件,实现对SDRAM存储器4连续访问时地址的增加;数据总线缓存组件,实现对SDRAM存储器4读写数据的暂时缓存;控制总线同步组件,实现读写使能、请求访问、应答访问,控制相关总线的同步;超时放弃组件,当SDRAM存储器4繁忙而无法响应主设备的访问,将对PCI总线协议管理单元1发出放弃本次操作的请求,由PCI总线协议管理单元1完成对主设备访问的放弃操作。 
如图5所示,所述的SDRAM控制器3包括:激活组件,完成对所选SDRAM存储器4的行地址进行激活控制;刷新组件,实现在规定周期内对SDRAM存储器4的所有行进行刷新;预充组件,完成对所选择行激活后预充,当数据读写完毕后,要对所选择的行关闭;配置组件,完成上电的流程控制,设置SDRAM存储器4的猝发长度、缓冲长度等,为一次性上电控制组件;状态机组件,完成其它组件的时序控制功能,实现对SDRAM存储器4的正确访问,根据访问要求,在相应的状态之间进行切换。本装置中除了SDRAM存储器,其它三种装置是在FPGA控制器中进行设计,也就是说, PCI总线协议管理单元1、高速同步处理单元2和SDRAM控制器3在FPGA控制器中完成。 
综上所述,本发明使PCI局部总线协议在FPGA控制器内部实现,解决了PCI局部总线协议接口芯片的复杂控制;通过猝发方式可以实现SDRAM存储器4的快速访问;采用同步设计技术,实现了低速总线的高速访问;对SDRAM控制器3的时序访问采用状态机设计,提高了访问执行效率。总之,本发明根据PCI局部总线和SDRAM存储器4的猝发传输特点,充分利用FPGA控制器的可编程特性,通过在FPGA控制器内部实现PCI局部总线协议,将主设备访问同步到对SDRAM存储器4的访问,从而实现对SDRAM存储器4的快速猝发访问。 

Claims (9)

1.一种基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法,该方法包括下列顺序的步骤:
(1)主设备访问:主设备执行指令,启动对SDRAM存储器的访问;
(2)地址译码:FPGA控制器内部的PCI总线协议管理单元判断主设备的访问信号是否和其内部配置空间相吻合,若吻合则将给出应答信号,响应主设备的访问请求;
(3)猝发访问:主设备根据指令给出猝发访问标志,若猝发访问标志有效,PCI总线协议管理单元检测猝发状态,转换到内部局部总线,实现猝发访问;
(4)高速同步:高速同步处理单元将内部局部总线同步到对SDRAM存储器访问的高速总线,并向SDRAM控制器发出访问请求;
(5)SDRAM控制器激活SDRAM存储器:当SDRAM控制器检测到高速同步处理单元发出的访问请求时,根据其访问的当前地址,启动激活命令,对SDRAM存储器相应的行单元进行激活。
2.根据权利要求1所述的基于FPGA实现主设备对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控制器内部总线访问,输出到高速同步处理单元。
3.根据权利要求1所述的基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法,其特征在于:所述步骤(4)具体包括以下步骤:
步骤201:由系统时钟对内部总线的地址总线、控制总线、数据总线进行同步处理;
步骤202:经过同步处理后发起对SDRAM控制器的访问,同时告知步骤406;
步骤203:判定同步处理后的猝发访问标志是否结束,如果没有结束,将作为地址累加的必要条件,如果猝发访问结束,输出到SDRAM控制器,作为SDRAM控制器状态结束的充分调节;
步骤204:当步骤203进行连续访问,并且步骤205给出应答信号有效,将对初始地址进行地址累加,将累加后的地址输出到SDRAM控制器;
步骤206:当步骤202有效时,检测应答信号,如果在规定的时间内,SDRAM控制器没有响应,将向PCI总线协议管理单元发出放弃本次访问操作的请求。
4.根据权利要求1所述的基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法,其特征在于:所述步骤(5)具体包括以下步骤:
步骤301:SDRAM状态机在初始状态等待访问请求,当检测到步骤302有效时,开始启动对SDRAM存储器的访问;
步骤302:根据起始地址对SDRAM存储器相应的行单元进行激活,并给出应答信号到高速同步处理单元,激活后开始对SDRAM存储器进行猝发访问;
步骤303:猝发访问状态,根据累加地址,对相应的列单元的地址进行数据读写;
步骤304:检测猝发访问结束标志是否有效,持续猝发则运行步骤303,否则访问结束,运行到步骤305,SDRAM状态机返回到初始状态,等待下一次访问操作;
步骤305:猝发访问结束。
5.根据权利要求2所述的基于FPGA实现主设备对SDRAM存储器快速猝发访问的方法,其特征在于:在正常访问时,PCI状态机将由步骤102跳转到步骤108,进入SDRAM存储器访问状态,启动对SDRAM存储器的访问;在对SDRAM存储器访问时,要进行放弃操作检测和猝发访问结束检测。
6.一种基于FPGA实现主设备对SDRAM存储器快速猝发访问的装置,其特征在于:包括PCI总线协议管理单元,其输入输出端与高速同步处理单元的输入输出端相连,高速同步处理单元的输入输出端与SDRAM控制器的输入输出端相连,SDRAM控制器的输出端与SDRAM存储器的输入端相连。
7.根据权利要求6所述的基于FPGA实现主设备对SDRAM存储器快速猝发访问的装置,其特征在于:所述的PCI总线协议管理单元包括:
译码功能模块,对来自主设备的命令Cbe[3..0]进行译码,并向状态机控制模块发出是配置访问还是SDRAM存储器访问的命令,同时锁存地址;
配置寄存器模块,是一个容量为256字节并具有特定记录结构的地址空间,该空间又分为头标区和设备有关区两部分,由主设备在上电时进行配置;
内部总线转换模块,完成PCI总线电路特性到FPGA控制器内部电路特性的转换,实现对高速同步处理单元的访问;
状态机控制模块,用于控制PCI状态机。
8.根据权利要求6所述的基于FPGA实现主设备对SDRAM存储器快速猝发访问的装置,其特征在于:所述的高速同步处理单元包括:
初始化地址组件,当向SDRAM控制器发出访问请求时,给出初始地址;
地址累加组件,实现对SDRAM存储器连续访问时地址的增加;
数据总线缓存组件,实现对SDRAM存储器读写数据的暂时缓存;
控制总线同步组件,实现读写使能、请求访问、应答访问,控制相关总线的同步;
超时放弃组件,当SDRAM存储器繁忙而无法响应主设备的访问,将对PCI总线协议管理单元发出放弃本次操作的请求,由PCI总线协议管理单元完成对主设备访问的放弃操作。
9.根据权利要求6所述的基于FPGA实现主设备对SDRAM存储器快速猝发访问的装置,其特征在于:所述的SDRAM控制器包括:
激活组件,完成对所选SDRAM存储器的行地址进行激活控制;
刷新组件,实现在规定周期内对SDRAM存储器的所有行进行刷新;
预充组件,完成对所选择行激活后预充,当数据读写完毕后,要对所选择的行关闭;
配置组件,完成上电的流程控制,设置SDRAM存储器的猝发长度、缓冲长度等,为一次性上电控制组件;
状态机组件,完成其它组件的时序控制功能,实现对SDRAM存储器的正确访问,根据访问要求,在相应的状态之间进行切换。
CN201310359762.6A 2013-08-18 2013-08-18 基于fpga实现主设备对sdram存储器快速猝发访问的方法及装置 Expired - Fee Related CN103440215B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310359762.6A CN103440215B (zh) 2013-08-18 2013-08-18 基于fpga实现主设备对sdram存储器快速猝发访问的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310359762.6A CN103440215B (zh) 2013-08-18 2013-08-18 基于fpga实现主设备对sdram存储器快速猝发访问的方法及装置

Publications (2)

Publication Number Publication Date
CN103440215A true CN103440215A (zh) 2013-12-11
CN103440215B CN103440215B (zh) 2017-09-19

Family

ID=49693906

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310359762.6A Expired - Fee Related CN103440215B (zh) 2013-08-18 2013-08-18 基于fpga实现主设备对sdram存储器快速猝发访问的方法及装置

Country Status (1)

Country Link
CN (1) CN103440215B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105159853A (zh) * 2015-09-25 2015-12-16 中国船舶重工集团公司第七0九研究所 基于fpga的dfi标准ddr3控制器
CN105279116A (zh) * 2015-10-08 2016-01-27 中国电子科技集团公司第四十一研究所 基于fpga的ddr控制器及控制方法
CN103970708B (zh) * 2014-03-18 2017-01-04 中国航天科工信息技术研究院 一种fpga与通用处理器之间的通信方法及系统
CN110046113A (zh) * 2019-05-06 2019-07-23 华峰测控技术(天津)有限责任公司 一种基于fpga的sdram控制系统及控制方法
CN111813726A (zh) * 2020-07-10 2020-10-23 中科芯集成电路有限公司 控制信号从高速总线向低速总线的转换方法
CN113032307A (zh) * 2021-03-26 2021-06-25 山东英信计算机技术有限公司 一种集成器件访问请求处理方法及相关组件

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793994A (en) * 1996-01-31 1998-08-11 3Com Corporation Synchronous event posting by a high throughput bus
CN2739704Y (zh) * 2004-11-19 2005-11-09 华南理工大学 基于pci总线的ip核仿真验证平台
CN201083766Y (zh) * 2007-10-12 2008-07-09 陕西海泰电子有限责任公司 高速任意波形发生器
CN101588175A (zh) * 2009-06-24 2009-11-25 北京理工大学 一种fpga阵列处理板
CN102025889A (zh) * 2010-11-29 2011-04-20 大连捷成实业发展有限公司 基于fpga和sdram的高清数字视频帧同步的系统
CN103218331A (zh) * 2012-12-07 2013-07-24 浙江大学 采用同步模式切换及帧优先级自动调整的总线装置及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793994A (en) * 1996-01-31 1998-08-11 3Com Corporation Synchronous event posting by a high throughput bus
CN2739704Y (zh) * 2004-11-19 2005-11-09 华南理工大学 基于pci总线的ip核仿真验证平台
CN201083766Y (zh) * 2007-10-12 2008-07-09 陕西海泰电子有限责任公司 高速任意波形发生器
CN101588175A (zh) * 2009-06-24 2009-11-25 北京理工大学 一种fpga阵列处理板
CN102025889A (zh) * 2010-11-29 2011-04-20 大连捷成实业发展有限公司 基于fpga和sdram的高清数字视频帧同步的系统
CN103218331A (zh) * 2012-12-07 2013-07-24 浙江大学 采用同步模式切换及帧优先级自动调整的总线装置及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨映辉: "基于FPGA的SDRAM控制器设计及应用", 《信息科技辑》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103970708B (zh) * 2014-03-18 2017-01-04 中国航天科工信息技术研究院 一种fpga与通用处理器之间的通信方法及系统
CN105159853A (zh) * 2015-09-25 2015-12-16 中国船舶重工集团公司第七0九研究所 基于fpga的dfi标准ddr3控制器
CN105159853B (zh) * 2015-09-25 2018-04-24 中国船舶重工集团公司第七0九研究所 基于fpga的dfi标准ddr3控制器
CN105279116A (zh) * 2015-10-08 2016-01-27 中国电子科技集团公司第四十一研究所 基于fpga的ddr控制器及控制方法
CN105279116B (zh) * 2015-10-08 2017-12-01 中国电子科技集团公司第四十一研究所 基于fpga的ddr控制器及控制方法
CN110046113A (zh) * 2019-05-06 2019-07-23 华峰测控技术(天津)有限责任公司 一种基于fpga的sdram控制系统及控制方法
CN110046113B (zh) * 2019-05-06 2024-02-09 华峰测控技术(天津)有限责任公司 一种基于fpga的sdram控制系统及控制方法
CN111813726A (zh) * 2020-07-10 2020-10-23 中科芯集成电路有限公司 控制信号从高速总线向低速总线的转换方法
CN111813726B (zh) * 2020-07-10 2023-03-07 中科芯集成电路有限公司 控制信号从高速总线向低速总线的转换方法
CN113032307A (zh) * 2021-03-26 2021-06-25 山东英信计算机技术有限公司 一种集成器件访问请求处理方法及相关组件

Also Published As

Publication number Publication date
CN103440215B (zh) 2017-09-19

Similar Documents

Publication Publication Date Title
CN103440215A (zh) 基于fpga实现主设备对sdram存储器快速猝发访问的方法及装置
CN106951379B (zh) 一种基于axi协议的高性能ddr控制器及数据传输方法
US7269704B2 (en) Method and apparatus for reducing system inactivity during time data float delay and external memory write
CN102226895B (zh) 协处理器和主处理器共享存储器的系统及访问方法
US20220043758A1 (en) Low latency memory access
US20210183434A1 (en) Protocol For Refresh Between A Memory Controller And A Memory Device
US9411754B2 (en) Dynamic frequency memory control
CN105279116A (zh) 基于fpga的ddr控制器及控制方法
EP3032373B1 (en) Device power management state transition latency advertisement for faster boot time
EP2207101A1 (en) Method and device for parallel interfacing
CN101859289A (zh) 一种片外存储器访问控制器
US8433835B2 (en) Information processing system and control method thereof
CN102609380B (zh) 基于axi总线的sdram控制器写数据快速响应方法
EP0588250A2 (en) PSRAM refresh controller
US20060236001A1 (en) Direct memory access controller
US11783885B2 (en) Interactive memory self-refresh control
CN113590520B (zh) Spi系统自动写入数据的控制方法及spi系统
CN111722827A (zh) 一种高效ddr访问方法及应用
CN101510182B (zh) 低速dma接口的片上系统和内存访问方法
CN102243526A (zh) 双倍数据速率内存的内存控制器及其控制方法
US8301816B2 (en) Memory access controller, system, and method
CN1937075B (zh) 数据传送操作完成检测电路和包含其的半导体存储器件
CN107967230A (zh) I3c电路设备、系统和通信方法
CN108228517A (zh) I3c电路设备、系统及通信方法
CN113961497A (zh) 通信电路系统、方法、芯片以及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170919