CN101196856A - 双端口访问单一动态存储器的接口 - Google Patents
双端口访问单一动态存储器的接口 Download PDFInfo
- Publication number
- CN101196856A CN101196856A CNA2008100544062A CN200810054406A CN101196856A CN 101196856 A CN101196856 A CN 101196856A CN A2008100544062 A CNA2008100544062 A CN A2008100544062A CN 200810054406 A CN200810054406 A CN 200810054406A CN 101196856 A CN101196856 A CN 101196856A
- Authority
- CN
- China
- Prior art keywords
- module
- processor
- interface
- controller
- read
- 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
Links
Images
Abstract
本发明涉及计算机接口,具体为双端口访问单一动态存储器的接口。解决采用双端口RAM器件作为共享存储器和采用总线的分时复用技术访问共享存储器存在的成本、存储器容量、系统性能、易用性等方面的缺陷。包括逻辑仲裁模块、处理器1时序命令接口模块、处理器1数据缓存模块、处理器2时序命令接口模块、处理器2数据缓存模块、动态存储器接口控制模块、初始化模块、刷新模块。该接口使两个或两个以上处理器可以同时并行地访问动态存储器;当一个处理器访问共享动态存储器时,另一个处理器不必等到当前正在访问存储器的处理器访问结束即可开始访问同一个动态存储器;存储器响应处理器的访问需要的时间进一步减少,提升了系统性能。
Description
技术领域
本发明涉及计算机接口,特别涉及处理器与存储器之间的接口,具体为双处理器端口访问单一动态存储器的接口。
背景技术
近年来,多处理器系统中共享存储器是研究的热点。当前对共享存储器的访问端口只有一个,这样就增加了多处理器对这个共享存储器访问的冲突的可能。当有两个或两个以上处理器对存储器进行访问时只能允许一个处理器对存储器进行访问,其它处理器处于等待状态,即各个处理器不能并行地访问存储器。为解决这个问题,现在普遍流行的技术主要有:利用双端口RAM器件、采用总线的分时复用技术。以上这些方法或多或少都存在着成本、存储器容量、系统性能、易用性等方面的缺陷。
直接采用双端口RAM器件作为共享存储器,实现起来也比较简单,可以给处理器提供两个存取端口,使两个处理器同时进行访问,无需总线仲裁。但是双端口RAM器件一般采用静态存储器(如SRAM),其容量不会太大,成本比较高,不适用于大容量共享存储器的场合。并且当两个处理器同时对双端口RAM进行写操作或者一读一写操作时,会产生冲突,需在软件或硬件上通过信箱等机制进行协调。
采用总线的分时复用技术访问共享存储器,两个处理器在不同的时间段享有对总线控制权,进而对存储器进行访问(例如参考专利文献1、2)。这种方法实现起来比较简单,无需复杂的仲裁逻辑,其核心方法是将存储器的访问时钟设为处理器访问时钟的两倍或更高,利用开关逻辑分时接通两个处理器和存储器之间的控制通路。采用这种方法,不需要对处理器的访问进行仲裁,实现简单,但是两个处理器只能以固定的时隙分时享有对共享存储器的控制权,即使访问的地址不发生冲突,两个或两个以上的处理器也不能同时对存储器进行访问。即处理器不能并行进行对存储器访问的工作,降低了处理器访问速率这一重要的系统性能。参考专利文献1利用一个2路选1的开关,加上一个时序调整的部件,让处理器以固定的时隙访问存储器。但是当访问动态存储器相同BANK的不同行时,必须在一行访问结束并关闭后才能打开另一行,固定时隙访问策略无法解决此类冲突,专利文献1不能应用于动态存储器的共享,其应用实例也是同步静态存储器SSRAM。参考文献2直接采用动态存储器(DRAM)颗粒组建共享存储器,其容量可以做的比较大,成本较低;在块访问时速度与静态存储器相当。但是该专利同样以固定的时隙分时处理多个处理器的读写请求,并且要求处理器必须以动态存储器(DRAM)的访问时序进行访问,这就要求存储器的带宽远远大于处理器端口的带宽,这对应用是十分不利的限制。而且目前有些处理器还不能直接对DRAM直接进行访问,需另加存储控制器,这不利于应用。
根据以上分析,目前市场上还没有一种针对现有的动态存储器(如DDR SDRAM、DDR2SDRAM等)作为共享存储器,实现高性能、大容量、低成本、灵活易用的共享存储控制系统(接口)。
[专利文献1]见申请号:01135091.1中国发明专利申请公开说明书。
[专利文献2]见专利号:US2006/0294322 A1美国发明专利公开说明书。
发明内容
本发明为了解决采用双端口RAM器件作为共享存储器和采用总线的分时复用技术访问共享存储器存在的成本、存储器容量、系统性能、易用性等方面的缺陷,提供一种双端口访问单一动态存储器的接口。该接口在容量、成本、易用性和系统性能等多方面得到综合优化,并能够给处理器提供两个(及两个以上)访问端口。
本发明是采用如下技术方案实现的:双端口访问单一动态存储器的接口,包括逻辑仲裁模块、处理器1时序命令接口模块、处理器1数据缓存模块、处理器2时序命令接口模块、处理器2数据缓存模块、动态存储器接口控制模块、初始化模块、刷新模块;本发明所述的动态存储器可以是DDR SDRAM、DDR2 SDRAM等;
逻辑仲裁模块由对来自初始化模块的初始化请求、来自刷新模块的刷新请求、来自处理器1时序命令接口模块的处理器1读写请求、来自处理器2时序命令接口模块的处理器2读写请求进行判决的请求判决模块,与请求判决模块相连的状态机模块,与状态机模块相连的控制命令生成模块构成;请求判决模块的判决的优先级顺序为:初始化请求、刷新请求、处理器1、2的读请求、处理器1、2的写请求,相同优先级情况下,对处理器1和处理器2采取先到先服务的策略;状态机模块负责整个接口的工作状态(即工作在哪一个请求状态下)的切换并根据所处的工作状态配合控制命令生成模块生成对处理器1时序命令接口模块的响应信号、对处理器2时序命令接口模块的响应信号、对动态存储器接口控制模块的控制命令、初始化响应信号、刷新响应信号;
处理器时序命令接口模块由时序命令译码模块、地址转化模块和与两者相连的控制器模块构成;时序命令译码模块对处理器发来的控制命令进行识别和转译,输送给控制器模块,使控制器模块向逻辑仲裁模块发出处理器读写请求信号,地址转化模块将处理器发来的地址切换成动态存储器的行和列信号,输送给控制器模块并由控制器模块向动态存储器接口控制模块发出地址信号;控制器模块同时接收来自逻辑仲裁模块的响应信号,之后向动态存储器接口控制模块发出读写命令,向处理器数据缓存模块发出控制命令;控制器模块还接收来自动态存储器接口控制模块的动态存储器状态信息(当前动态存储器的各个BANK及其各行的打开与关闭情况),控制器模块向动态存储器接口控制模块发出的读写命令依据该来自动态存储器接口控制模块的动态存储器状态信息;
处理器数据缓存模块由控制器模块、读写选通分离模块、读数据缓存模块、写数据缓存模块构成,控制器模块接收来自处理器时序命令接口模块中的控制器模块发出的对处理器数据缓存模块的控制命令,并对读写选通分离模块、读数据缓存模块、写数据缓存模块进行选通控制,读写选通分离模块将处理的读写数据分离到读、写数据缓存模块中;
动态存储器接口控制模块由控制器模块、内部命令选通模块、与内部命令选通模块相连的动态存储器命令模块和BANK管理模块、内部数据选通模块、与内部数据选通模块相连的动态存储器数据选通分离模块构成,控制器模块接收来自逻辑仲裁模块中的控制命令生成模块发出的控制命令并将BANK管理模块所负责的动态存储器状态信息反馈给处理器时序命令接口模块中的控制器模块,同时对动态存储器接口控制模块中的其它模块进行选通控制;内部命令选通模块在控制器模块的选通控制下对来自各处理器时序命令接口模块中的控制器模块的读写命令及地址信号,及来自初始化模块的初始化命令、来自刷新模块的刷新命令进行选通并送给动态存储器命令模块和BANK管理模块,动态存储器命令模块与动态存储器的控制信号线、地址信号线相连,BANK管理模块根据对动态存储器操作的命令和地址信号判断存储器内部各BANK和行的状态信息,并将该状态反馈给控制器模块;内部数据选通模块在控制器模块的选通控制下实现与各处理器数据缓存模块中的读数据缓存模块、写数据缓存模块的选通,动态数据选通分离模块直接与动态存储器的数据线相连,并将数据分离成读数据和写数据实现与内部数据选通模块之间的数据交换。
本发明所述的接口还包括快速数据通道模块,快速数据通道模块由控制器模块、地址比较模块I、地址比较模块II、地址比较模块III、地址比较模块VI、快速通道模块I、快速通道模块II构成;地址比较模块I接收自处理器1时序命令接口模块中的控制器模块发出的写地址信号和自处理器2时序命令接口模块中的控制器模块发出的读地址信号,地址比较模块II接收自处理器1时序命令接口模块中的控制器模块发出的读地址信号和自处理器2时序命令接口模块中的控制器模块发出的写地址信号,地址比较模块III接收自处理器1时序命令接口模块中的控制器模块发出的读地址信号和自处理器2时序命令接口模块中的控制器模块发出的读地址信号,地址比较模块IV接收自处理器1时序命令接口模块中的控制器模块发出的写地址信号和自处理器2时序命令接口模块中的控制器模块发出的写地址信号;快速通道模块I沟通处理器1数据缓存模块中的写数据缓存模块和处理器2数据缓存模块中的读数据缓存模块,快速通道模块II沟通处理器2数据缓存模块中的写数据缓存模块和处理器1数据缓存模块中的读数据缓存模块;处理器时序命令接口模块中的控制器模块还生成先于给逻辑仲裁模块的读写请求信号的给快速数据通道模块的地址比较请求信号,动态存储器接口控制模块还接收由快速数据通道模块中的控制器模块发来的控制信号,快速数据通道模块中的控制器模块接收该来自处理器时序命令接口模块中的控制器模块生成的地址比较请求信号,并控制地址比较模块I、地址比较模块II、地址比较模块III、地址比较模块IV进行地址比较,地址比较模块I将比较结果送给其控制器模块,该控制器模块根据比较结果生成对处理器1时序命令接口模块的快速写信号和对处理器2时序命接口模块的快速读信号,并返回给两个处理器时序命令接口模块中的控制器模块,使地址比较模块I的比较结果为相同时,快速数据通道模块中的控制器模块控制快速通道模块I开通,同时使处理器1时序命令接口模块中的控制器模块向处理器1数据缓存模块发出(写)控制命令,处理器2时序命令接口模块中的控制器模块向处理器2数据缓存模块发出(读)控制命令,地址比较模块II将比较结果送给其控制器模块,该控制器模块根据比较结果生成对处理器1时序命令接口模块的快速读信号和对处理器2时序命接口模块的快速写信号,并返回给两个处理器时序命令接口模块中的控制器模块,使地址比较模块II的比较结果为相同时,快速数据通道模块中的控制器模块控制快速通道模块II开通,同时使处理器1时序命令接口模块中的控制器模块向处理器1数据缓存模块发出(读)控制命令,处理器2时序命令接口模块中的控制器模块向处理器2数据缓存模块发出(写)控制命令,地址比较模块III将比较结果送给其控制器模块,该控制器模块根据比较结果生成对其中一个处理器时序命令接口模块的同读操作信号和对另一个处理器时序命令接口模块的同读非操作信号,并返回给两个处理器时序命令接口模块中的控制器模块,同时其控制器模块发出对动态存储器接口控制模块的同读控制信号,使地址比较模块III的比较结果为相同时,接收到同读操作信号的处理器时序命令接口模块中的控制器模块向逻辑仲裁模块发出读请求进而对动态存储器进行读操作,接收到同读非操作信号的处理器时序命令接口模块中的控制器模块不再向逻辑仲裁模块发出读请求,动态存储器接口控制模块中的控制器模块控制内部数据选通模块将从存储器读出的数据同时选通送给处理器1、2数据缓存模块中的读缓存,地址比较模块IV将比较结果送给其控制器模块,该控制器模块根据比较结果生成对其中一个处理器时序命令接口模块的同写操作信号和对另一个处理器时序命令接口模块的同写非操作信号,并返回给两个处理器时序命令接口模块中的控制器模块,使地址比较模块IV的比较结果为相同时,接收到同写操作信号的处理器时序命令接口模块中的控制器模块向逻辑仲裁模块发出写请求进而对动态存储器进行写操作,接收到同写非操作信号的处理器时序命令接口模块中的控制器模块不再向逻辑仲裁模块发出写请求并丢弃本次操作,等待处理器发来新的读写命令;
传统的电路设计一般采用专用集成电路(ASIC),ASIC器件虽然通过精心设计和先进的工艺保证良好的性能,但是由于开发成本高,设计周期长以及生成测试开销大,只有芯片量产后才具有较好的性价比。ASIC芯片一旦定型,其逻辑结构和性能更改比较困难。本发明的设计先在FPGA上完成,即以上各个模块采用硬件描述语言编写,仿真、调试后下载到FPGA器件内,证明可以实现双端口访问存储器。然后再进行定制ASIC的设计。
本发明所述接口的有益技术效果:1、两个或两个以上处理器可以同时并行地访问存储器;当一个处理器访问共享存储器时,另一个处理器不必等到当前正在访问存储器的处理器访问结束即可开始访问同一个动态存储器;存储器响应处理器的访问需要的时间进一步减少,使两个或两个以上的处理器可以并行地访问存储器,提升了系统性能。2、通过快速通道实现了两个处理器读写数据之间的快速交换,提升了系统的整体性能。3、采用预读技术,进一步降低处理器对存储器的直接操作,尤其适合处理器块读写的情况,提升了系统的整体性能。4、共享存储器采用容量比较大、成本比较低的动态存储器(DRAM)器件。这样一方面加大了共享存储器的容量,另一方面也降低了共享存储器系统的成本,使整个共享存储系统的性能得到了进一步的提高。由于动态存储器的特殊性,本控制系统完成对动态存储器的初始化、刷新等操作。5、处理器可以定制对存储器的访问时序。本发明可以在具体应用时定制成但不局限于以下时序模式如动态存储器、异步存储器、AMBA总线、PC104总线、WISHBONE总线的访问时序中的任一种时序访问动态存储器。这样简化了处理器对存储器访问的时序要求,具有易用性。
附图说明
图1是本发明所述接口的内部结构总图。
图2是本发明所述接口中的逻辑仲裁模块内部结构图。
图3是本发明所述接口的状态转移图。
图4是本发明所述接口中的处理器时序命令接口模块内部结构图。
图5是本发明所述接口中处理器时序命令接口模块生成动态存储器命令的状态转移图。
图6是本发明所述接口中的处理器数据缓存模块内部结构图。
图7是本发明所述接口中的动态存储器接口控制模块内部结构图。
图8是本发明所述接口中的快速数据通道模块内部结构图。
图1、2、4、6、7、8中同命令端和同号线端相连。
图中命令端为:A1-初始化模块的初始化请求,A2-刷新模块的刷新请求,A3-处理器1时序命令接口模块的处理器1读写请求,A4-处理器2时序命令接口模块的处理器2读写请求,A5-对处理器1时序命令接口模块的响应信号,A6-对处理器2时序命令接口模块的响应信号,A7-对动态存储器接口控制模块的控制命令,A8-初始化响应信号,A9-刷新响应信号,A10-处理器发来的控制命令,A12-处理器发来的地址,A13-向动态存储器接口控制模块发出地址信号,A14-向动态存储器接口控制模块发出的读写命令,A15-向处理器数据缓存模块发出的控制命令,A16-动态存储器状态信息,A17-初始化命令,A18-刷新命令,A19-处理器时序命令接口模块中的控制器模块发出的写地址信号,A20-处理器时序命令接口模块中的控制器模块发出的读地址信号,A21-处理器时序命令接口模块中的控制器模块生成的给快速数据通道模块的地址比较请求信号,A22-快速数据通道模块中的控制器模块发来的同读控制信号,A23-快速数据通道模块中的控制器模块向处理器1时序命令接口模块发出的快速写信号,A24-快速数据通道模块中的控制器模块向处理器2时序命接口模块发出的快速读信号,A25-快速数据通道模块中的控制器模块向处理器1时序命令接口模块发出的快速读信号,A26-快速数据通道模块中的控制器模块向处理器2时序命接口模块发出的快速写信号,A27-快速数据通道模块中的控制器模块向其中一个处理器时序命令接口模块发出的同读操作信号,A28-快速数据通道模块中的控制器模块向另一个处理器时序命令接口模块发出的同读非操作信号,A29-快速数据通道模块中的控制器模块向其中一个处理器时序命令接口模块发出的同写操作信号,A30-快速数据通道模块中的控制器模块向另一个处理器时序命令接口模块发出的同写非操作信号。
具体实施方式
FPGA器件与ASIC相比具有现场可编程的优点,而且用FPGA实现的成熟逻辑也可以方便的转换成ASIC。本实施例给出一种在FPGA上实现的双端口访问存储器的接口。在此例中,动态存储器选用DDR SDRAM,两个处理器的访问时序分别选用SDRAM存储器的访问时序和异步存储器的访问时序。
双端口访问单一动态存储器的接口,包括逻辑仲裁模块、处理器1时序命令接口模块、处理器1数据缓存模块、处理器2时序命令接口模块、处理器2数据缓存模块、动态存储器接口控制模块、初始化模块、刷新模块(如图1所示);本具体实施方式中,动态存储器选用DDRSDRAM。与其它现有接口一样,该接口还包括时钟模块,时钟模块将输入的时钟信号变换成系统内各个模块和动态存储器需要的各种时钟信号。根据存储器的具体类型和内部各个模块的具体需要进行时钟模块定制。比如,若动态存储器是DDR SDRAM,时钟模块则需提供DQS信号需要的90度和270度的相移信号。时钟模块在本实施方式中是调用FPGA内部的数字时钟延迟锁相环电路DLL单元,生成了90度、180度和270度的相移信号,以供其它各个模块使用。
逻辑仲裁模块由对来自初始化模块的初始化请求A1、来自刷新模块的刷新请求A2、来自处理器1时序命令接口模块的处理器1读写请求A3、来自处理器2时序命令接口模块的处理器2读写请求A4进行判决的请求判决模块,与请求判决模块相连的状态机模块,与状态机模块相连的控制命令生成模块构成(如图2所示);请求判决模块的判决的优先级顺序为:初始化请求、刷新请求、处理器1、2的读请求、处理器1、2的写请求,相同优先级情况下,对处理器1和处理器2采取先到先服务的策略;状态机模块负责整个接口的工作状态(即工作在哪一个请求状态下)的切换并根据所处的工作状态配合控制命令生成模块生成对处理器1时序命令接口模块的响应信号A5、对处理器2时序命令接口模块的响应信号A6、对动态存储器接口控制模块的控制命令A7、初始化响应信号A8、刷新响应信号A9;逻辑仲裁模块对接口内部其它模块进行控制,并且对接口内各个模块的请求进行仲裁,尤其是各个模块要对动态存储器直接访问时需要进行仲裁。接口的工作状态的状态转移图如图3所示。从这张图中可以看到接口中的处理器1、2时序命令接口模块和初始化、刷新模块与DDRSDRAM模块互连以及操作DDR SDRAM的情况。上电时,初始化模块获得DDR SDRAM总线使用权并根据DDR SDRAM操作要求对DDR SDRAM进行必要的初始化设置。由于DDR SDRAM需要定时刷新,所以在规定的刷新时刻,将DDR SDRAM的操作控制权交给刷新模块。其它的时间分配给处理器1和处理器2完成正常读写。如果遇到其它模块正在操作DDR SDRAM,系统在处理器1和处理器2时序命令接口模块自动插入等待周期。图中的各个状态切换由状态机模块实现。
处理器时序命令接口模块由时序命令译码模块、地址转化模块和与两者相连的控制器模块构成(如图4所示);时序命令译码模块对处理器发来的控制命令A10进行识别和转译,输送给控制器模块,使控制器模块向逻辑仲裁模块发出处理器读写请求信号A3(或A4),地址转化模块将处理器发来的地址A12切换成动态存储器的行和列信号,输送给控制器模块并由控制器模块向动态存储器接口控制模块发出地址信号A13;控制器模块同时接收来自逻辑仲裁模块的响应信号A5(或A6),之后向动态存储器接口控制模块发出读写命令A14,向处理器数据缓存模块发出控制命令A15;控制器模块还接收来自动态存储器接口控制模块的动态存储器状态信息A16(当前动态存储器的各个BANK及其各行的打开与关闭情况),控制器模块向动态存储器接口控制模块发出的读写命令A14依据该来自动态存储器接口控制模块的动态存储器状态信息A16;可以看出,控制器模块负责整个处理器时序命令接口模块的工作状态,以及对其它模块的命令生成。在生成对DDR SDRAM的操作命令时一方面依据处理器发来的读写命令请求,另一方面还要依据DDR SDRAM的各个BANK中行的打开和关闭状态(即来自动态存储器接口控制模块的存储器状态反馈信息),将这两方面结合起来生成对DDR SDRAM的合适的操作命令。命令生成的状态转移图如图5所示。该处理器时序命令接口模块可以定制,即根据不同的处理器,其时序命令译码模块分别配置成能够识别和翻译动态存储器、异步存储器、AMBA总线、PC104总线、WISHBONE总线中的任一种读写时序命令的形式。在本具体实施方式中,处理器1和处理器2时序命令接口模块中的时序命令译码模块分别配置成能够识别和翻译SDRAM存储器读写时序命令和异步存储器读写时序命令的形式。处理器时序命令接口模块可配置成对存储器进行预读操作,即处理器要访问N个数据,而处理器时序命令接口模块中的控制器模块向处理器数据缓存模块、动态存储器接口控制模块分别发出一次读出2N个数据的控制命令、读写命令及地址信号。当处理器下次进行读操作时,如果就是预读出的数据,则不用再对存储器进行读操作,直接把上次预读出的数据送给处理器,非常适合处理器经常处于块访问操作的场合。
处理器数据缓存模块由控制器模块、读写选通分离模块、读数据缓存模块、写数据缓存模块构成(如图6所示),控制器模块接收来自处理器时序命令接口模块中的控制器模块发出的对处理器数据缓存模块的控制命令A15,并对读写选通分离模块、读数据缓存模块、写数据缓存模块进行选通控制,读写选通分离模块将处理的读写数据分离到读、写数据缓存模块中;该处理器数据缓存模块分成读缓存和写缓存,将读写数据分开,可以很好的明确数据的性质,便于访问冲突的协调处理,同时为后面的快速数据通道提供了工作依据。读缓存用来缓存处理器要从存储器中读取的数据。它的作用类似一个快速缓冲贮存区(Cache),这里将处理器要读取的数据以及后续的连续地址中的数据一次读到缓存中,然后根据处理器的读请求适时地将数据送给处理器。写缓存是用来缓存处理器将要写到存储器中的数据流,一方面调整处理器和存储器的时序差异,另一方面,通过缓存技术可以把写入到存储器中的依次连续地址上的数据合并形成并发模式一次写入到存储器中。
动态存储器接口控制模块由控制器模块、内部命令选通模块、与内部命令选通模块相连的动态存储器命令模块和BANK管理模块、内部数据选通模块、与内部数据选通模块相连的动态存储器数据选通分离模块构成(如图7所示),控制器模块接收来自逻辑仲裁模块中的控制命令生成模块发出的控制命令A7并将BANK管理模块所负责的动态存储器状态信息A16反馈给处理器时序命令接口模块中的控制器模块,同时对动态存储器接口控制模块中的其它模块进行选通控制;内部命令选通模块在控制器模块的选通控制下对来自各处理器时序命令接口模块中的控制器模块的读写命令A14及地址信号A13,及来自初始化模块的初始化命令A17、来自刷新模块的刷新命令A18进行选通并送给动态存储器命令模块和BANK管理模块,动态存储器命令模块与动态存储器的控制信号线、地址信号线相连,BANK管理模块根据对动态存储器操作的命令和地址信号判断存储器内部各BANK和行的状态信息,并将该状态反馈给控制器模块;内部数据选通模块在控制器模块的选通控制下实现与各处理器数据缓存模块中的读数据缓存模块、写数据缓存模块的选通,动态数据选通分离模块直接与动态存储器的数据线相连,并将数据分离成读数据和写数据实现与内部数据选通模块之间的数据交换。动态存储器接口控制模块的主要任务是接收由逻辑仲裁模块发来的内部控制信号和从初始化模块、刷新模块、处理器1和处理器2时序命令接口模块发来的命令信号以及处理器1和处理器2数据缓存模块的读写数据信号等。另外本模块还把由BANK管理模块所负责的存储器状态信息(当前DDR SDRAM的各个BANK和行的打开与关闭情况)通知给处理器1、处理器2时序命令接口模块,以便其生成正确的操作DDR SDRAM的命令。根据内部控制信号,本模块的控制器模块控制内部命令选通模块和内部数据选通模块将适当的接口命令选通,把命令传给动态存储器命令模块和动态存储器数据选通分离模块。动态存储器命令模块和动态存储器数据选通分离模块分别直接连DDR SDRAM的控制信号、地址信号和数据信号。
本发明所述的接口还包括快速数据通道模块,快速数据通道模块由控制器模块、地址比较模块I、地址比较模块II、地址比较模块III、地址比较模块VI、快速通道模块I、快速通道模块II构成(如图8所示);地址比较模块I接收自处理器1时序命令接口模块中的控制器模块发出的写地址信号A19和自处理器2时序命令接口模块中的控制器模块发出的读地址信号A20,地址比较模块II接收自处理器1时序命令接口模块中的控制器模块发出的读地址信号A20和自处理器2时序命令接口模块中的控制器模块发出的写地址信号A19,地址比较模块III接收自处理器1时序命令接口模块中的控制器模块发出的读地址信号A20和自处理器2时序命令接口模块中的控制器模块发出的读地址信号A20,地址比较模块IV接收自处理器1时序命令接口模块中的控制器模块发出的写地址信号A19和自处理器2时序命令接口模块中的控制器模块发出的写地址信号A19;快速通道模块I沟通处理器1数据缓存模块中的写数据缓存模块和处理器2数据缓存模块中的读数据缓存模块,快速通道模块II沟通处理器2数据缓存模块中的写数据缓存模块和处理器1数据缓存模块中的读数据缓存模块;处理器时序命令接口模块中的控制器模块还生成先于给逻辑仲裁模块的读写请求信号的给快速数据通道模块的地址比较请求信号A21,动态存储器接口控制模块还接收由快速数据通道模块中的控制器模块发来的同读控制信号A22,快速数据通道模块中的控制器模块接收该来自处理器时序命令接口模块中的控制器模块生成的地址比较请求信号A21,并控制地址比较模块I、地址比较模块II、地址比较模块III、地址比较模块IV进行地址比较,地址比较模块I将比较结果送给其控制器模块,该控制器模块根据比较结果生成对处理器1时序命令接口模块的快速写信号A23和对处理器2时序命接口模块的快速读信号A24,并返回给两个处理器时序命令接口模块中的控制器模块,使地址比较模块I的比较结果为相同时,快速数据通道模块中的控制器模块控制快速通道模块I开通,同时使处理器1时序命令接口模块中的控制器模块向处理器1数据缓存模块发出(写)控制命令A15,处理器2时序命令接口模块中的控制器模块向处理器2数据缓存模块发出(读)控制命令A15,地址比较模块II将比较结果送给其控制器模块,该控制器模块根据比较结果生成对处理器1时序命令接口模块的快速读信号A25和对处理器2时序命接口模块的快速写信号A26,并返回给两个处理器时序命令接口模块中的控制器模块,使地址比较模块II的比较结果为相同时,快速数据通道模块中的控制器模块控制快速通道模块II开通,同时使处理器1时序命令接口模块中的控制器模块向处理器1数据缓存模块发出(读)控制命令A15,处理器2时序命令接口模块中的控制器模块向处理器2数据缓存模块发出(写)控制命令A15,地址比较模块III将比较结果送给其控制器模块,该控制器模块根据比较结果生成对其中一个处理器时序命令接口模块的同读操作信号A27和对另一个处理器时序命令接口模块的同读非操作信号A28,并返回给两个处理器时序命令接口模块中的控制器模块,同时快速数据通道模块中的控制器模块发出对动态存储器接口控制模块的同读控制信号A22,使地址比较模块III的比较结果为相同时,接收到同读操作信号A27的处理器时序命令接口模块中的控制器模块向逻辑仲裁模块发出读请求进而对动态存储器进行读操作,接收到同读非操作信号A28的处理器时序命令接口模块中的控制器模块不再向逻辑仲裁模块发出读请求,动态存储器接口模块中的控制器模块控制内部数据选通模块将从存储器读出的数据同时选通送给处理器1、2数据缓存模块中的读缓存,地址比较模块IV将比较结果送给其控制器模块,该控制器模块根据比较结果生成对其中一个处理器时序命令接口模块的同写操作信号A29和对另一个处理器时序命令接口模块的同写非操作信号A30,并返回给两个处理器时序命令接口模块中的控制器模块,使地址比较模块IV的比较结果为相同时,接收到同写操作信号A29的处理器时序命令接口模块中的控制器模块向逻辑仲裁模块发出写请求进而对动态存储器进行写操作,接收到同写非操作信号A30的处理器时序命令接口模块中的控制器模块不再向逻辑仲裁模块发出写请求并丢弃本次操作,等待处理器发来新的读写命令;快速数据通道模块是为解决两个处理器针对同一个存储器地址同时进行读写发生的冲突而设计的。当两个处理器同时读同一个存储器地址时,在存储器端总线上只需发生一个读动作,通过处理器数据缓存模块中的两个读缓存分别实现两个处理器的读出;当两个处理器同时写入同一个存储器地址时,只需完成其中一个或稍迟提出的写动作,所以在存储器端总线上也是只发生一个写动作;当其中一个处理器要读的数据正好是另一个处理器要写入的数据,就可以通过这个快速数据通道,把要写入的数据直接送到处理器的读缓存,同时在存储器端总线上实现一个写动作。利用快速数据通道模块过滤掉两个处理器针对同一个存储器地址同时进行读写发生的上述三种冲突后,本发明所述的接口集中考虑解决两个处理器同时读写不同的存储器地址的冲突,这样大大地简化了控制系统面临的控制风险。再具体地讲,快速数据通道模块是专为解决处理器1、处理器2读写冲突设计的,如果处理器1、处理器2在读写过程中,其读写数据不是同一个地址,即地址比较模块I、地址比较模块II、地址比较模块III、地址比较模块IV的输出为0时,本模块不动作。如果处理器1要读的数据地址与处理器2要写的数据地址相同,即地址比较模块II输出为1,这样就开启快速通道模块II,把处理器2写缓存中的数据快速地读到处理器1的读缓存中。这样处理器1时序命令接口模块就不用再对DDR SDRAM申请读操作。类似地,地址比较模块I和快速通道模块I的工作原理与上面完全一致。如果处理器1要读的数据地址与处理器2要读的数据地址相同,即地址比较模块III输出为1,这样就由快速数据通道模块的控制器模块分别向处理器1、2时序命令接口模块返回同读操作信号和同读非操作信号,同时向动态存储器接口控制模块的控制器发同读控制信号,处理器1时序命令接口模块收到同读操作信号后向逻辑仲裁模块请求读操作,进而访问动态存储器,处理器2时序命令接口模块收到同读非操作信号后不再向逻辑仲裁模块请求读操作,动态存储器接口控制模块中的控制器模块控制内部数据选通模块将从存储器中读出的数据同时送给处理器1、2数据缓存模块的读缓存中。如果处理器1要写的数据地址与处理器2要写的数据地址相同,即地址比较模块IV输出为1,这样就由快速数据通道模块的控制器模块分别向处理器1、2时序命令接口模块返回同写操作信号和同写非操作信号,处理器1时序命令接口模块接收到同写操作信号后向逻辑仲裁模块请求写操作,进而访问动态存储器,处理器2时序命令接口模块收到同写非操作信号后放弃本次写操作,等待处理器的下一个读写命令。进一步来说,当处理器1进行读操作,同时进行快速通道判断和预读判断,如果快速通道工作,则直接把处理器2数据缓存模块中的写缓存取出的数据送给处理器1。如果快速通道不工作,预读成功,则把处理器1数据缓存中的读缓存数据送给处理器1。如果快速通道不工作,预读也不成功,则处理器1时序命令接口模块向逻辑仲裁模块申请对存储器进行读操作。如果处理器1、2同时读同一个地址中的数据,则只有一个处理器时序命令接口模块生成的读命令送给动态存储器,而从动态存储器读出的数据同时送给处理器1、2数据缓存模块中的读缓存中,进而送给处理器。如果处理器1、2同时写一个地址中的数据,则只有一个处理器时序命令接口模块生成写命令,并将数据写到动态存储器中,另一个处理器丢弃本次写命令,等待处理器的下一个读写命令。
初始化和刷新模块生成对DDR SDRAM存储器的初始化和刷新操作。上电时,根据DDRSDRAM的操作手册,对其进行初始化操作。通过初始化操作,DDR SDRAM进入正常工作状态。另外,由于DDR SDRAM是依靠电容来存储信息的,电容又是倾向于放电的元器件,所以DDR SDRAM的每一行都要在64ms内至少刷新一次,这样就可以根据总行数算出刷新间隔。如果一片DDR SDRAM总共有4个BANK,每个BANK中又有4096行,每次执行刷新操作,4个BANK同时各自刷新其中一行,则刷新间隔为64ms/4096=15.625us。刷新模块中,包含了一个计数器,每15.625us向逻辑仲裁模块提出刷新DDR SDRAM操作的请求。在本实施例中刷新间隔是可以根据具体芯片的行数进行配置的。
Claims (6)
1.一种双端口访问单一动态存储器的接口,其特征为:包括逻辑仲裁模块、处理器1时序命令接口模块、处理器1数据缓存模块、处理器2时序命令接口模块、处理器2数据缓存模块、动态存储器接口控制模块、初始化模块、刷新模块;
逻辑仲裁模块由对来自初始化模块的初始化请求(A1)、来自刷新模块的刷新请求(A2)、来自处理器1时序命令接口模块的处理器1读写请求(A3)、来自处理器2时序命令接口模块的处理器2读写请求(A4)进行判决的请求判决模块,与请求判决模块相连的状态机模块,与状态机模块相连的控制命令生成模块构成;状态机模块负责整个接口的工作状态的切换并根据所处的工作状态配合控制命令生成模块生成对处理器1时序命令接口模块的响应信号(A5)、对处理器2时序命令接口模块的响应信号(A6)、对动态存储器接口控制模块的控制命令(A7)、初始化响应信号(A8)、刷新响应信号(A9);
处理器时序命令接口模块由时序命令译码模块、地址转化模块和与两者相连的控制器模块构成;时序命令译码模块对处理器发来的控制命令(A10)进行识别和转译,输送给控制器模块,使控制器模块向逻辑仲裁模块发出处理器读写请求信号(A3或A4),地址转化模块将处理器发来的地址(A12)切换成动态存储器的行和列信号,输送给控制器模块并由控制器模块向动态存储器接口控制模块发出地址信号(A13);控制器模块同时接收来自逻辑仲裁模块的响应信号(A5或A6),之后向动态存储器接口控制模块发出读写命令(A14),向处理器数据缓存模块发出控制命令(A15);控制器模块还接收来自动态存储器接口控制模块的动态存储器状态信息(A16),控制器模块向动态存储器接口控制模块发出的读写命令(A14)依据该来自动态存储器接口控制模块的动态存储器状态信息(A16);
处理器数据缓存模块由控制器模块、读写选通分离模块、读数据缓存模块、写数据缓存模块构成,控制器模块接收来自处理器时序命令接口模块中的控制器模块发出的对处理器数据缓存模块的控制命令(A15),并对读写选通分离模块、读数据缓存模块、写数据缓存模块进行选通控制,读写选通分离模块将处理的读写数据分离到读、写数据缓存模块中;
动态存储器接口控制模块由控制器模块、内部命令选通模块、与内部命令选通模块相连的动态存储器命令模块和BANK管理模块、内部数据选通模块、与内部数据选通模块相连的动态存储器数据选通分离模块构成,控制器模块接收来自逻辑仲裁模块中的控制命令生成模块发出的控制命令(A7)并将BANK管理模块所负责的动态存储器状态信息(A16)反馈给处理器时序命令接口模块中的控制器模块,同时对动态存储器接口控制模块中的其它模块进行选通控制;内部命令选通模块在控制器模块的选通控制下对来自各处理器时序命令接口模块中的控制器模块的读写命令(A14)及地址信号(A13),及来自初始化模块的初始化命令(A17)、来自刷新模块的刷新命令(A18)进行选通并送给动态存储器命令模块和BANK管理模块,动态存储器命令模块与动态存储器的控制信号线、地址信号线相连,BANK管理模块根据对动态存储器操作的命令和地址信号判断存储器内部各BANK和行的状态信息,并将该状态反馈给控制器模块;内部数据选通模块在控制器模块的选通控制下实现与各处理器数据缓存模块中的读数据缓存模块、写数据缓存模块的选通,动态数据选通分离模块直接与动态存储器的数据线相连,并将数据分离成读数据和写数据实现与内部数据选通模块之间的数据交换。
2.如权利要求1所述的双端口访问单一动态存储器的接口,其特征为:还包括快速数据通道模块,快速数据通道模块由控制器模块、地址比较模块I、地址比较模块II、地址比较模块III、地址比较模块VI、快速通道模块I、快速通道模块II构成;地址比较模块I接收自处理器1时序命令接口模块中的控制器模块发出的写地址信号(A19)和自处理器2时序命令接口模块中的控制器模块发出的读地址信号(A20),地址比较模块II接收自处理器1时序命令接口模块中的控制器模块发出的读地址信号(A20)和自处理器2时序命令接口模块中的控制器模块发出的写地址信号(A19),地址比较模块III接收自处理器1时序命令接口模块中的控制器模块发出的读地址信号(A20)和自处理器2时序命令接口模块中的控制器模块发出的读地址信号(A20),地址比较模块IV接收自处理器1时序命令接口模块中的控制器模块发出的写地址信号(A19)和自处理器2时序命令接口模块中的控制器模块发出的写地址信号(A19);快速通道模块I沟通处理器1数据缓存模块中的写数据缓存模块和处理器2数据缓存模块中的读数据缓存模块,快速通道模块II沟通处理器2数据缓存模块中的写数据缓存模块和处理器1数据缓存模块中的读数据缓存模块;处理器时序命令接口模块中的控制器模块还生成先于给逻辑仲裁模块的读写请求信号的给快速数据通道模块的地址比较请求信号(A21),动态存储器接口控制模块还接收由快速数据通道模块中的控制器模块发来的同读控制信号(A22),快速数据通道模块中的控制器模块接收该来自处理器时序命令接口模块中的控制器模块生成的地址比较请求信号(A21),并控制地址比较模块I、地址比较模块II、地址比较模块III、地址比较模块IV进行地址比较,地址比较模块I将比较结果送给其控制器模块,该控制器模块根据比较结果生成对处理器1时序命令接口模块的快速写信号(A23)和对处理器2时序命接口模块的快速读信号(A24),并返回给两个处理器时序命令接口模块中的控制器模块,使地址比较模块I的比较结果为相同时,快速数据通道模块中的控制器模块控制快速通道模块I开通,同时使处理器1时序命令接口模块中的控制器模块向处理器1数据缓存模块发出控制命令(A15),处理器2时序命令接口模块中的控制器模块向处理器2数据缓存模块发出控制命令(A15),地址比较模块II将比较结果送给其控制器模块,该控制器模块根据比较结果生成对处理器1时序命令接口模块的快速读信号(A25)和对处理器2时序命接口模块的快速写信号(A26),并返回给两个处理器时序命令接口模块中的控制器模块,使地址比较模块II的比较结果为相同时,快速数据通道模块中的控制器模块控制快速通道模块II开通,同时使处理器1时序命令接口模块中的控制器模块向处理器1数据缓存模块发出控制命令(A15),处理器2时序命令接口模块中的控制器模块向处理器2数据缓存模块发出控制命令(A15),地址比较模块III将比较结果送给其控制器模块,该控制器模块根据比较结果生成对其中一个处理器时序命令接口模块的同读操作信号(A27)和对另一个处理器时序命令接口模块的同读非操作信号(A28),并返回给两个处理器时序命令接口模块中的控制器模块,同时快速数据通道模块中的控制器模块发出对动态存储器接口控制模块的同读控制信号(A22),使地址比较模块III的比较结果为相同时,接收到同读操作信号(A27)的处理器时序命令接口模块中的控制器模块向逻辑仲裁模块发出读请求进而对动态存储器进行读操作,接收到同读非操作信号(A28)的处理器时序命令接口模块中的控制器模块不再向逻辑仲裁模块发出读请求,动态存储器接口模块中的控制器模块控制内部数据选通模块将从存储器读出的数据同时选通送给处理器1、2数据缓存模块中的读缓存,地址比较模块IV将比较结果送给其控制器模块,该控制器模块根据比较结果生成对其中一个处理器时序命令接口模块的同写操作信号(A29)和对另一个处理器时序命令接口模块的同写非操作信号(A30),并返回给两个处理器时序命令接口模块中的控制器模块,使地址比较模块IV的比较结果为相同时,接收到同写操作信号(A29)的处理器时序命令接口模块中的控制器模块向逻辑仲裁模块发出写请求进而对动态存储器进行写操作,接收到同写非操作信号(A30)的处理器时序命令接口模块中的控制器模块不再向逻辑仲裁模块发出写请求并丢弃本次操作,等待处理器发来新的读写命令;
3.如权利要求1或2所述的双端口访问单一动态存储器的接口,其特征为:动态存储器选用DDR SDRAM。
4.如权利要求1或2所述的双端口访问单一动态存储器的接口,其特征为:处理器时序命令接口模块可以定制,即根据不同的处理器,其时序命令译码模块分别配置成能够识别和翻译动态存储器、异步存储器、AMBA总线、PC104总线、WISHBONE总线中的任一种读写时序命令的形式。
5.如权利要求1或2所述的双端口访问单一动态存储器的接口,其特征为:处理器时序命令接口模块可配置成对存储器进行预读操作,即处理器要访问N个数据,而处理器时序命令接口模块中的控制器模块向处理器数据缓存模块、动态存储器接口控制模块分别发出一次读出2N个数据的控制命令、读写命令及地址信号。
6.如权利要求4所述的双端口访问单一动态存储器的接口,其特征为:处理器时序命令接口模块可配置成对存储器进行预读操作,即处理器要访问N个数据,而处理器时序命令接口模块中的控制器模块向处理器数据缓存模块、动态存储器接口控制模块分别发出一次读出2N个数据的控制命令、读写命令及地址信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100544062A CN101196856B (zh) | 2008-01-04 | 2008-01-04 | 双端口访问单一动态存储器的接口 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100544062A CN101196856B (zh) | 2008-01-04 | 2008-01-04 | 双端口访问单一动态存储器的接口 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101196856A true CN101196856A (zh) | 2008-06-11 |
CN101196856B CN101196856B (zh) | 2010-09-08 |
Family
ID=39547287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100544062A Expired - Fee Related CN101196856B (zh) | 2008-01-04 | 2008-01-04 | 双端口访问单一动态存储器的接口 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101196856B (zh) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980140A (zh) * | 2010-11-15 | 2011-02-23 | 北京北方烽火科技有限公司 | 一种ssram访问控制系统 |
CN101692173B (zh) * | 2009-10-16 | 2011-11-23 | 北京联合大学生物化学工程学院 | 双单片机共用一个串行存储器电路 |
CN102117244B (zh) * | 2010-01-05 | 2012-10-17 | 上海硅知识产权交易中心有限公司 | Soc中支持多个音视频ip核寻址的ddr2的控制方法 |
CN101877242B (zh) * | 2009-04-30 | 2013-03-13 | 旭曜科技股份有限公司 | 具隐藏更新及双端口能力的sram兼容嵌入式dram装置 |
CN101770437B (zh) * | 2008-12-30 | 2013-05-29 | 中国科学院电子学研究所 | 实现同步双端口存储器ip的并行读写的装置及方法 |
CN101764651B (zh) * | 2009-12-30 | 2013-06-05 | 中兴通讯股份有限公司 | 一种实现信号测试的方法和装置 |
CN103414658A (zh) * | 2013-08-05 | 2013-11-27 | 北京华为数字技术有限公司 | 查找表和报文缓存共享动态随机访问存储器的系统和方法 |
CN104407996A (zh) * | 2014-11-05 | 2015-03-11 | 广西科技大学鹿山学院 | 数据总线宽度不相等的双口ram读写与仲裁控制器 |
CN105097015A (zh) * | 2014-04-30 | 2015-11-25 | 中芯国际集成电路制造(上海)有限公司 | 双端口sram |
CN105159852A (zh) * | 2015-08-18 | 2015-12-16 | 珠海市一微半导体有限公司 | 双接口nfc标签电路及其数据传输方法 |
CN106649155A (zh) * | 2016-11-14 | 2017-05-10 | 山东高云半导体科技有限公司 | 一种低功耗、高数据吞吐量的sdr sdram控制器及其工作方法 |
TWI588841B (zh) * | 2013-06-25 | 2017-06-21 | 晨星半導體股份有限公司 | 記憶體控制器及其信號產生方法 |
CN109558346A (zh) * | 2018-11-05 | 2019-04-02 | 西安智多晶微电子有限公司 | 一种基于fpga的存储控制器 |
CN110161913A (zh) * | 2019-05-23 | 2019-08-23 | 上海钇莹电器有限公司 | 一种铝电解槽控制机多路数据采集板及多路数据采集方法 |
CN110209612A (zh) * | 2019-06-05 | 2019-09-06 | 中国核动力研究设计院 | 一种基于多状态的dpram访问方法及系统 |
CN110389913A (zh) * | 2019-07-26 | 2019-10-29 | 南京凯鼎电子科技有限公司 | 一种用于提高ddr总线利用率的反馈装置及方法 |
CN111078598A (zh) * | 2018-10-18 | 2020-04-28 | 珠海格力电器股份有限公司 | 存储模块数据访问控制方法、数据访问装置和芯片 |
CN111506528A (zh) * | 2020-06-01 | 2020-08-07 | 上海中广核工程科技有限公司 | 一种存储数据访问方法、通信设备 |
CN112052206A (zh) * | 2020-08-31 | 2020-12-08 | 浙江双成电气有限公司 | 基于仲裁的多端口数据存储系统 |
CN113126926A (zh) * | 2021-04-21 | 2021-07-16 | 北京物芯科技有限责任公司 | 一种ram访问验证方法、设备及装置 |
CN113740851A (zh) * | 2021-09-07 | 2021-12-03 | 电子科技大学 | 一种分时复用单ddr的sar成像数据处理系统 |
CN116662228A (zh) * | 2023-06-16 | 2023-08-29 | 深圳市东方聚成科技有限公司 | 分时复用局部存储器的访问方法 |
CN117033267A (zh) * | 2023-10-07 | 2023-11-10 | 深圳大普微电子股份有限公司 | 混合存储主控制器及混合存储器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1180356C (zh) * | 2001-11-27 | 2004-12-15 | 华为技术有限公司 | 一种双通道共享存储器的实现方法 |
US7617356B2 (en) * | 2002-12-31 | 2009-11-10 | Intel Corporation | Refresh port for a dynamic memory |
-
2008
- 2008-01-04 CN CN2008100544062A patent/CN101196856B/zh not_active Expired - Fee Related
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770437B (zh) * | 2008-12-30 | 2013-05-29 | 中国科学院电子学研究所 | 实现同步双端口存储器ip的并行读写的装置及方法 |
CN101877242B (zh) * | 2009-04-30 | 2013-03-13 | 旭曜科技股份有限公司 | 具隐藏更新及双端口能力的sram兼容嵌入式dram装置 |
CN101692173B (zh) * | 2009-10-16 | 2011-11-23 | 北京联合大学生物化学工程学院 | 双单片机共用一个串行存储器电路 |
CN101764651B (zh) * | 2009-12-30 | 2013-06-05 | 中兴通讯股份有限公司 | 一种实现信号测试的方法和装置 |
CN102117244B (zh) * | 2010-01-05 | 2012-10-17 | 上海硅知识产权交易中心有限公司 | Soc中支持多个音视频ip核寻址的ddr2的控制方法 |
CN101980140A (zh) * | 2010-11-15 | 2011-02-23 | 北京北方烽火科技有限公司 | 一种ssram访问控制系统 |
TWI588841B (zh) * | 2013-06-25 | 2017-06-21 | 晨星半導體股份有限公司 | 記憶體控制器及其信號產生方法 |
CN103414658A (zh) * | 2013-08-05 | 2013-11-27 | 北京华为数字技术有限公司 | 查找表和报文缓存共享动态随机访问存储器的系统和方法 |
CN103414658B (zh) * | 2013-08-05 | 2016-08-10 | 北京华为数字技术有限公司 | 查找表和报文缓存共享动态随机访问存储器的系统和方法 |
CN105097015A (zh) * | 2014-04-30 | 2015-11-25 | 中芯国际集成电路制造(上海)有限公司 | 双端口sram |
CN105097015B (zh) * | 2014-04-30 | 2018-02-23 | 中芯国际集成电路制造(上海)有限公司 | 双端口sram |
CN104407996A (zh) * | 2014-11-05 | 2015-03-11 | 广西科技大学鹿山学院 | 数据总线宽度不相等的双口ram读写与仲裁控制器 |
CN104407996B (zh) * | 2014-11-05 | 2017-06-30 | 广西科技大学鹿山学院 | 数据总线宽度不相等的双口ram读写与仲裁控制器 |
CN105159852A (zh) * | 2015-08-18 | 2015-12-16 | 珠海市一微半导体有限公司 | 双接口nfc标签电路及其数据传输方法 |
CN106649155A (zh) * | 2016-11-14 | 2017-05-10 | 山东高云半导体科技有限公司 | 一种低功耗、高数据吞吐量的sdr sdram控制器及其工作方法 |
CN111078598B (zh) * | 2018-10-18 | 2021-06-01 | 珠海格力电器股份有限公司 | 存储模块数据访问控制方法、数据访问装置和芯片 |
CN111078598A (zh) * | 2018-10-18 | 2020-04-28 | 珠海格力电器股份有限公司 | 存储模块数据访问控制方法、数据访问装置和芯片 |
CN109558346A (zh) * | 2018-11-05 | 2019-04-02 | 西安智多晶微电子有限公司 | 一种基于fpga的存储控制器 |
CN110161913A (zh) * | 2019-05-23 | 2019-08-23 | 上海钇莹电器有限公司 | 一种铝电解槽控制机多路数据采集板及多路数据采集方法 |
CN110209612B (zh) * | 2019-06-05 | 2021-04-13 | 中核控制系统工程有限公司 | 一种基于多状态的dpram访问方法及系统 |
CN110209612A (zh) * | 2019-06-05 | 2019-09-06 | 中国核动力研究设计院 | 一种基于多状态的dpram访问方法及系统 |
CN110389913A (zh) * | 2019-07-26 | 2019-10-29 | 南京凯鼎电子科技有限公司 | 一种用于提高ddr总线利用率的反馈装置及方法 |
CN110389913B (zh) * | 2019-07-26 | 2021-01-29 | 南京凯鼎电子科技有限公司 | 一种用于提高ddr总线利用率的反馈装置及方法 |
CN111506528A (zh) * | 2020-06-01 | 2020-08-07 | 上海中广核工程科技有限公司 | 一种存储数据访问方法、通信设备 |
CN111506528B (zh) * | 2020-06-01 | 2022-01-11 | 上海中广核工程科技有限公司 | 一种存储数据访问方法、通信设备 |
CN112052206A (zh) * | 2020-08-31 | 2020-12-08 | 浙江双成电气有限公司 | 基于仲裁的多端口数据存储系统 |
CN113126926A (zh) * | 2021-04-21 | 2021-07-16 | 北京物芯科技有限责任公司 | 一种ram访问验证方法、设备及装置 |
CN113740851A (zh) * | 2021-09-07 | 2021-12-03 | 电子科技大学 | 一种分时复用单ddr的sar成像数据处理系统 |
CN116662228A (zh) * | 2023-06-16 | 2023-08-29 | 深圳市东方聚成科技有限公司 | 分时复用局部存储器的访问方法 |
CN116662228B (zh) * | 2023-06-16 | 2024-01-30 | 深圳市东方聚成科技有限公司 | 分时复用局部存储器的访问方法 |
CN117033267A (zh) * | 2023-10-07 | 2023-11-10 | 深圳大普微电子股份有限公司 | 混合存储主控制器及混合存储器 |
CN117033267B (zh) * | 2023-10-07 | 2024-01-26 | 深圳大普微电子股份有限公司 | 混合存储主控制器及混合存储器 |
Also Published As
Publication number | Publication date |
---|---|
CN101196856B (zh) | 2010-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101196856B (zh) | 双端口访问单一动态存储器的接口 | |
CN101196857B (zh) | 双端口访问对称动态存储器的接口 | |
EP1488323B1 (en) | Memory system with burst length shorter than prefetch length | |
EP3433752B1 (en) | Self refresh state machine mop array | |
US5893136A (en) | Memory controller for independently supporting Synchronous and Asynchronous DRAM memories | |
US8140805B2 (en) | Memory component having write operation with multiple time periods | |
US6963516B2 (en) | Dynamic optimization of latency and bandwidth on DRAM interfaces | |
US8296541B2 (en) | Memory subsystem with positional read data latency | |
KR102444201B1 (ko) | 플랫폼 마지닝 및 디버그를 위한 소프트웨어 모드 레지스터 액세스 | |
US7694099B2 (en) | Memory controller having an interface for providing a connection to a plurality of memory devices | |
US20070055817A1 (en) | Memory hub with internal cache and/or memory access prediction | |
JP2008532140A (ja) | 複数内部データバス及びメモリバンクインターリービングを有するメモリデバイス及び方法 | |
JPH1083673A (ja) | メモリシステム、i/oサブシステムデバイスおよびメモリ装置を動作させる方法 | |
US20110296124A1 (en) | Partitioning memory for access by multiple requesters | |
JP2002109882A (ja) | 半導体メモリ装置、メモリシステム、及びメモリデータアクセス方法 | |
EP1668646B1 (en) | Method and apparatus for implicit dram precharge | |
CN100536021C (zh) | 大容量高速缓冲存储器 | |
US20050144370A1 (en) | Synchronous dynamic random access memory interface and method | |
US5802597A (en) | SDRAM memory controller while in burst four mode supporting single data accesses | |
US6490225B1 (en) | Memory having a synchronous controller and asynchronous array and method thereof | |
JP2024512684A (ja) | データファブリッククロックスイッチング | |
CN102522113B (zh) | 一种sdram桥接电路 | |
US7941594B2 (en) | SDRAM sharing using a control surrogate | |
US11854602B2 (en) | Read clock start and stop for synchronous memories | |
JPH11232180A (ja) | データ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100908 Termination date: 20150104 |
|
EXPY | Termination of patent right or utility model |