CN107133407B - 一种高带宽下提高ddr ram接口带宽的fpga实现方法 - Google Patents
一种高带宽下提高ddr ram接口带宽的fpga实现方法 Download PDFInfo
- Publication number
- CN107133407B CN107133407B CN201710330941.5A CN201710330941A CN107133407B CN 107133407 B CN107133407 B CN 107133407B CN 201710330941 A CN201710330941 A CN 201710330941A CN 107133407 B CN107133407 B CN 107133407B
- Authority
- CN
- China
- Prior art keywords
- data
- read
- ddr
- generating
- fifo
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2117/00—Details relating to the type or aim of the circuit design
- G06F2117/08—HW-SW co-design, e.g. HW-SW partitioning
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
Abstract
本发明公开了一种高带宽下提高DDR RAM接口带宽的FPGA实现方法,包括以下步骤:1)计算并行级联的DDR RAM数量;2)采用FPGA设计mController,包括:2.1)生成刷新ZQ模块,用于多个DDR RAM周期刷新和ZQ同步;2.2)生成写命令模块,生成DDR RAM写命令,用于对并行级联的DDR RAM写地址统一管理;2.3)生成读命令模块,生成DDR RAM读命令,用于对并行级联DDR RAM的读地址统一管理;2.4)读同步判断模块,用来同步对齐DDR RAM返回的数据组合成新数据输出。采用mController将拆分后的数据写入并行级联的外部存储器,控制数据的同步写入和同步读出,并将数据整合成新的数据输出,提高了高带宽下DDR RAM的接口带宽,大于单个DDR RAM位宽的输入数据也能够被DDR RAM缓存,建立了高速的数据传输通道。
Description
技术领域
本发明涉及通信技术领域,具体的说,是一种高带宽下提高DDR RAM接口带宽的FPGA实现方法。
背景技术
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。FPGA与外部存储器建立数据通道,可以方便灵活的利用软件程序编程实现对数据的处理,但是由于目前的FPGA和外部DDR RAM(DDR2/DDR3等等)建立数据通道时,FPGA的DDR控制器IP只能管理一个DDR,因此只能一组或多组数据经过调度存储于同一个DDR内,当数据突发带宽超过单个DDR的有效带宽时,就会造成数据丢失。因此如何与外部存储器建立快速高效的数据传输通道,在高带宽下提高DDR RAM的接口带宽,成为FPGA急需解决的难题。
发明内容
本发明的目的在于提供一种高带宽下提高DDR RAM接口带宽的FPGA实现方法,用于解决现有技术中,FPGA的DDR控制器IP只能管理和调度存储于同一个DDR RAM一组或多组数据,当数据突发带宽超过单个DDR的有效带宽时,就会造成数据丢失的问题。
为了达到上述目的,本发明通过下述技术方案实现:
一种高带宽下提高DDR RAM接口带宽的FPGA实现方法,包括以下步骤:
1)根据输入数据的位宽,计算需要并行级联的DDR RAM数量X:当输入数据的位宽为M比特,单个DDR MIG的数据位宽为N比特,其中M>N,DDR的数量X的计算方法为:
M/N可以整除,X=M/N;
M/N不可以整除,X=M/N+1;
2)采用FPGA设计用于提高DDR RAM的接口带宽的mController,包括:
2.1)生成刷新ZQ模块Generate Refresh ZQ,用于多个DDR RAM之间周期刷新和ZQ同步;
2.2)生成写命令模块Generate Write command,生成DDR RAM写命令,用于对X个DDR RAM并行级联的写地址统一管理;
2.3)生成读命令模块Generate Read command,生成DDR RAM读命令,用于对X个DDR并行级联的读地址统一管理;
2.4)读同步判断模块Read Synchronous judge,用来同步对齐X个DDR RAM返回的X组数据,对齐后组合成一组数据输出。
当与FPGA通信的外部存储器输入的数据的位宽,高于单个DDR MIG的位宽时,需要并行级联多个DDR RAM来建立高速的数据传输通道时,计算出需要并行级联的DDR RAM的数量X,并将X个DDR RAM并行级联。对FPGA的RAM进行软件编程实现mController,用于提高并行级联DDR RAM的接口带宽,mController包括生成刷新ZQ模块、生成写命令模块、生成读命令模块和读同步判断模块,其中生成刷新ZQ模块:用于周期性生成自刷新请求信号和ZQ校准请求信号,所有DDR MIG接收相同的请求信号,保证每个DDR RAM刷新和校准路径延迟相同;生成写命令模块Generate Write command:该模块用来生成DDR写命令,对X个DDR RAM并行级联的写入地址wr_address{bank,row,col}统一管理;生成读命令模块:该模块用来产生DDR读命令,X个DDR并行级联的读地址统一管理。所述读地址为rd_address{bank,row,col};读同步判断模块Read Synchronous该模块用来对齐X个DDR返回的X组数据,对齐后合成一组数据输出。这样,当外部存储器输入的数据位宽大于单个DDR RAM的位宽时,通过DDRRAM并行级联,并由mController对输入数据进行拆分,分别写入不同的DDR RAM,通过写命令模块与读命令模块,使被拆分的数据在写入和读出过程中,保持不变并且数据延迟相同。通过读同步判断模块将拆分的数据重新组合成一组数据,并保证数据输出的完整。mController通过以上四个模块,对并行级联的多个DDR RAM进行控制与协调,提高了并行级联的DDR RAM的接口带宽。
进一步的优选,所述步骤2.1)具体包括:所述生成刷新ZQ模块周期性生成自刷新请求信号和ZQ校准请求信号,为X个DDR RAM提供ZQ周期的刷新。
ZQ是一个DDR3新增的脚,这个引脚通过片上校准引擎ODCE来自动校验数据输出驱动器导通电阻与ODT的终结电阻值。当生成刷新ZQ模块系统发出自刷新请求信号和ZQ校准请求信号时,将用时钟周期对导通电阻和ODT电阻进行重新校准。
进一步的优选,所述步骤2.2)具体包括:
2.2.1)所述生成写命令模块Generate Write command在写入数据时,仅产生一个写地址wr_address{bank,row,col},用于控制X个DDR RAM的写同步;
2.2.2)把输入数据分为X组新数据,din1[N-1:0],din2[2×N-1:N].....,dinX[M-1:(X-1)×N];
2.2.3)将X组新数据中的每一组数据连同写地址wr_address{bank,row,col}同步压入对应的写命令FIFO存储器Wr*_cmd_fifo;
2.2.4)当任意一个FIFO存储器将满时,暂停产生新的写命令。
生成写命令模块Generate Write command仅产生一个写地址wr_address{bank,row,col},将拆分后的数据din1[N-1:0],din2[2×N-1:N].....,dinX[M-1:(X-1)×N]连通写地址wr_address{bank,row,col},同步写入不同的DDR RAM中的写命令FIFO存储器Wr*_cmd_fifo。
进一步的优选,所述步骤2.3)具体包括:
所述生成读命令模块Generate Read command,同一次产生的读命令,序号相等,后续且产生的读命令的序号依次递增,在将该读命令压入对应的读命令FIFO存储器Rd*_cmd_fifo的同时,把序号压入到读同步判断模块Read Synchronous judge对应的数据恢复FIFO存储器Rd*_rec_fifo里面。
生成读命令模块Generate Read command可以产生多个读命令,可以进行数据的多次读取。每次产生的读命令附带递增的序号,用于识别和区分不同批次的读命令。
进一步的优选,所述步骤2.4)具体包括:
2.4.1)每个DDR RAM返回的读数据先压入各自对应的读数据FIFO存储器Rd*_dat_fifo,当X个读数据FIFO存储器都非空时,数据恢复FIFO存储器Rd*_rec_fifo弹出该数据对应的读命令的序号且X个序号相等时,即X个数据已经对齐,同时把X个读数据FIFO存储器Rd*_dat_fifo的数据弹出,并且组成一个新的输出数据。
2.4.2)当Rd*_rec_fifo全部非空,并且FIFO输出口同时弹出相应读命令的X个序号不相等时,返回信号至生成读命令Generate Read command模块里暂停产生读请求,当读命令FIFO存储器Rd*_cmd_fifo都被清空后,重复步骤2.3)和步骤2.4)。
在将数据读出时,将每个DDR RAM返回的数据以及读命令压入读数据FIFO存储器Rd*_dat_fifo,,判断读命令的序号是否为相同,若相同则说明是同一次读取,则将读数据FIFO存储器Rd*_dat_fifo中的数据对齐,弹出,重新组合成新的数据输出。当X个序号不相等时,说明同步机制出错,返回信号的Generate Read command模块里暂停产生读请求,当Rd*_cmd_fifo都被清空后,重新发起读请求,进行新一轮同步,避免锁死状态。
进一步的优选,所述步骤2)中还包括命令仲裁模块command FSM,用于仲裁读写命令的优先顺序。
因为每个DDR MIG只有一个命令通道,需要把读写命令仲裁在一起。当需要支持高突发时,写优先仲裁;当需要支持低延迟时读优先仲裁。
本发明与现有技术相比,具有以下优点及有益效果:
FPGA与外部存储器建立数据通道,可以方便灵活的利用软件程序编程实现对数据的处理,并且通过mController控制将拆分后的数据写入并行级联的外部存储器,并控制数据的同步写入和同步读出,并将数据整合成新的数据输出,提高了高带宽下DDR RAM的接口带宽,大于单个DDR RAM位宽的输入数据也能够被DDR RAM缓存,建立了高速的数据传输通道。
附图说明
图1为本发明的原理框图;
图2为mController的工作原理图。
具体实施方式
首先在对本发明的具体实施例详细介绍之前,对本申请中涉及的技术名词给予解释:
片上校准引擎ODCE(On-Die Calibration Engine,)
MIG:DDR RAM的IP核。
下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例1:
结合附图1和图2所示,一种高带宽下提高DDR RAM接口带宽的FPGA实现方法,包括以下步骤:
1)根据输入数据的位宽,计算需要并行级联的DDR RAM数量X:当输入数据的位宽为M比特,单个DDR MIG的数据位宽为N比特,其中M>N,DDR的数量X的计算方法为:
M/N可以整除,X=M/N;
M/N不可以整除,X=M/N+1;
2)采用FPGA设计用于提高DDR RAM的接口带宽的mController,包括:
2.1)生成刷新ZQ模块Generate Refresh ZQ,用于多个DDR RAM之间周期刷新和ZQ同步;
2.2)生成写命令模块Generate Write command,生成DDR RAM写命令,用于对X个DDR RAM并行级联的写地址统一管理;
2.3)生成读命令模块Generate Read command,生成DDR RAM读命令,用于对X个DDR并行级联的读地址统一管理;
2.4)读同步判断模块Read Synchronous judge,用来同步对齐X个DDR RAM返回的X组数据,对齐后组合成一组数据输出。
当与FPGA通信的外部存储器输入的数据的位宽,高于单个DDR MIG的位宽时,需要并行级联多个DDR RAM来建立高速的数据传输通道时,计算出需要并行级联的DDR RAM的数量X,并将X个DDR RAM并行级联。对FPGA的RAM进行软件编程实现mController,用于提高并行级联DDR RAM的接口带宽,mController包括生成刷新ZQ模块、生成写命令模块、生成读命令模块和读同步判断模块,其中生成刷新ZQ模块:用于周期性生成自刷新请求信号和ZQ校准请求信号,所有DDR MIG接收相同的请求信号,保证每个DDR RAM刷新和校准路径延迟相同;生成写命令模块Generate Write command:该模块用来生成DDR写命令,对X个DDR RAM并行级联的写入地址wr_address{bank,row,col}统一管理;生成读命令模块:该模块用来产生DDR读命令,X个DDR并行级联的读地址统一管理。所述读地址为rd_address{bank,row,col};读同步判断模块Read Synchronous该模块用来对齐X个DDR返回的X组数据,对齐后合成一组数据输出。这样,当外部存储器输入的数据位宽大于单个DDR RAM的位宽时,通过DDRRAM并行级联,并由mController对输入数据进行拆分,分别写入不同的DDR RAM,通过写命令模块与读命令模块,使被拆分的数据在写入和读出过程中,保持不变并且数据延迟相同。通过读同步判断模块将拆分的数据重新组合成一组数据,并保证数据输出的完整。mController通过以上四个模块,对并行级联的多个DDR RAM进行控制与协调,提高了并行级联的DDR RAM的接口带宽。
实施例2:
在实施例1的基础上,结合附图1和图2所示,所述步骤2.1)具体包括:所述生成刷新ZQ模块周期性生成自刷新请求信号和ZQ校准请求信号,为X个DDR RAM提供ZQ周期的刷新。ZQ是一个DDR3新增的脚,这个引脚通过片上校准引擎ODCE来自动校验数据输出驱动器导通电阻与ODT的终结电阻值。当生成刷新ZQ模块系统发出自刷新请求信号和ZQ校准请求信号时,将用时钟周期对导通电阻和ODT电阻进行重新校准。
进一步的优选,所述步骤2.2)具体包括:
2.2.1)所述生成写命令模块Generate Write command在写入数据时,仅产生一个写地址wr_address{bank,row,col},用于控制X个DDR RAM的写同步;
2.2.2)把输入数据分为X组新数据,din1[N-1:0],din2[2×N-1:N].....,dinX[M-1:(X-1)×N];
2.2.3)将X组新数据中的每一组数据连同写地址wr_address{bank,row,col}同步压入对应的写命令FIFO存储器Wr*_cmd_fifo;
2.2.4)当任意一个FIFO存储器将满时,暂停产生新的写命令。
生成写命令模块Generate Write command仅产生一个写地址wr_address{bank,row,col},将拆分后的数据din1[N-1:0],din2[2×N-1:N].....,dinX[M-1:(X-1)×N]连通写地址wr_address{bank,row,col},同步写入不同的DDR RAM中的写命令FIFO存储器Wr*_cmd_fifo。
进一步的优选,所述步骤2.3)具体包括:
所述生成读命令模块Generate Read command,同一次产生的读命令,序号相等,后续且产生的读命令的序号依次递增,在将该读命令压入对应的读命令FIFO存储器Rd*_cmd_fifo的同时,把序号压入到读同步判断模块Read Synchronous judge对应的数据恢复FIFO存储器Rd*_rec_fifo里面。
生成读命令模块Generate Read command可以产生多个读命令,可以进行数据的多次读取。每次产生的读命令附带递增的序号,用于识别和区分不同批次的读命令。
进一步的优选,所述步骤2.4)具体包括:
2.4.1)每个DDR RAM返回的读数据先压入各自对应的读数据FIFO存储器Rd*_dat_fifo,当X个读数据FIFO存储器都非空时,数据恢复FIFO存储器Rd*_rec_fifo弹出该数据对应的读命令的序号且X个序号相等时,即X个数据已经对齐,同时把X个读数据FIFO存储器Rd*_dat_fifo的数据弹出,并且组成一个新的输出数据。
2.4.2)当Rd*_rec_fifo全部非空,并且FIFO输出口同时弹出相应读命令的X个序号不相等时,返回信号至生成读命令Generate Read command模块里暂停产生读请求,当读命令FIFO存储器Rd*_cmd_fifo都被清空后,重复步骤2.3)和步骤2.4)。
在将数据读出时,将每个DDR RAM返回的数据以及读命令压入读数据FIFO存储器Rd*_dat_fifo,,判断读命令的序号是否为相同,若相同则说明是同一次读取,则将读数据FIFO存储器Rd*_dat_fifo中的数据对齐,弹出,重新组合成新的数据输出。当X个序号不相等时,说明同步机制出错,返回信号的Generate Read command模块里暂停产生读请求,当Rd*_cmd_fifo都被清空后,重新发起读请求,进行新一轮同步,避免锁死状态。
实施例3:
在以上实施例的基础上,结合附图1和图2所示,所述步骤2)中还包括命令仲裁模块command FSM,用于仲裁读写命令的优先顺序。
因为每个DDR MIG只有一个命令通道,需要把读写命令仲裁在一起。当需要支持高突发时,写优先仲裁;当需要支持低延迟时读优先仲裁。
以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。
Claims (5)
1.一种高带宽下提高DDR RAM接口带宽的FPGA实现方法,其特征在于,包括以下步骤:
1)根据输入数据的位宽,计算需要并行级联的DDR RAM数量X:当输入数据的位宽为M比特,单个DDR MIG的数据位宽为N比特,其中M>N,DDR的数量X的计算方法为:
M/N可以整除,X=M/N;
M/N不可以整除,X=M/N+1;
2)采用FPGA设计用于提高DDR RAM的接口带宽的mController,包括:
2.1)生成刷新ZQ模块Generate Refresh ZQ,用于多个DDR RAM之间周期刷新和ZQ同步;
2.2)生成写命令模块Generate Write command,生成DDR RAM写命令,用于对X个DDRRAM并行级联的写地址统一管理;
2.3)生成读命令模块Generate Read command,生成DDR RAM读命令,用于对X个DDR并行级联的读地址统一管理;
2.4)读同步判断模块Read Synchronous judge,用来同步对齐X个DDR RAM返回的X组数据,对齐后组合成一组数据输出;所述步骤2.4)具体包括:
2.4.1)每个DDR RAM返回的读数据先压入各自对应的读数据FIFO存储器Rd*_dat_fifo,当X个读数据FIFO存储器都非空时,数据恢复FIFO存储器Rd*_rec_fifo弹出该数据对应的读命令的序号且X个序号相等时,即X个数据已经对齐,同时把X个读数据FIFO存储器Rd*_dat_fifo的数据弹出,并且组成一个新的输出数据;
2.4.2)当Rd*_rec_fifo全部非空,并且FIFO输出口同时弹出相应读命令的X个序号不相等时,返回信号至生成读命令Generate Read command模块里暂停产生读请求,当读命令FIFO存储器Rd*_cmd_fifo都被清空后,重复步骤2.3)和步骤2.4)。
2.根据权利要求1所述的一种高带宽下提高DDR RAM接口带宽的FPGA实现方法,其特征在于,所述步骤2.1)具体包括:所述生成刷新ZQ模块周期性生成自刷新请求信号和ZQ校准请求信号,为X个DDR RAM提供ZQ周期的刷新。
3.根据权利要求1所述的一种高带宽下提高DDR RAM接口带宽的FPGA实现方法,其特征在于,所述步骤2.2)具体包括:
2.2.1)所述生成写命令模块Generate Write command在写入数据时,仅产生一个写地址wr_address{bank,row,col},用于控制X个DDR RAM的写同步;
2.2.2)把输入数据分为X组新数据,din1[N-1:0],din2[2×N-1:N].....,dinX[M-1:(X-1)×N];
2.2.3)将X组新数据中的每一组数据连同写地址wr_address{bank,row,col}同步压入对应的写命令FIFO存储器Wr*_cmd_fifo;
2.2.4)当任意一个FIFO存储器将满时,暂停产生新的写命令。
4.根据权利要求1所述的一种高带宽下提高DDR RAM接口带宽的FPGA实现方法,其特征在于,所述步骤2.3)具体包括:
所述生成读命令模块Generate Read command,同一次产生的读命令,序号相等,后续且产生的读命令的序号依次递增,在将该读命令压入对应的读命令FIFO存储器Rd*_cmd_fifo的同时,把序号压入到读同步判断模块Read Synchronous judge对应的数据恢复FIFO存储器Rd*_rec_fifo里面。
5.根据权利要求1-4中任意一项所述的一种高带宽下提高DDR RAM接口带宽的FPGA实现方法,其特征在于,所述步骤2)中还包括命令仲裁模块command FSM,用于仲裁读写命令的优先顺序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710330941.5A CN107133407B (zh) | 2017-05-11 | 2017-05-11 | 一种高带宽下提高ddr ram接口带宽的fpga实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710330941.5A CN107133407B (zh) | 2017-05-11 | 2017-05-11 | 一种高带宽下提高ddr ram接口带宽的fpga实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107133407A CN107133407A (zh) | 2017-09-05 |
CN107133407B true CN107133407B (zh) | 2020-07-10 |
Family
ID=59733214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710330941.5A Active CN107133407B (zh) | 2017-05-11 | 2017-05-11 | 一种高带宽下提高ddr ram接口带宽的fpga实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107133407B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109271335B (zh) * | 2018-07-24 | 2021-04-20 | 上海威固信息技术股份有限公司 | 一种多通道数据源ddr缓存的fpga实现方法 |
CN109376101B (zh) * | 2018-09-07 | 2020-10-30 | 西安电子科技大学 | 一种系统存储控制模块 |
CN109542799B (zh) * | 2018-11-05 | 2023-03-28 | 西安智多晶微电子有限公司 | 块存储器拼接方法、拼接模块、存储装置及现场可编程门阵列 |
CN111966628B (zh) * | 2020-07-30 | 2023-04-18 | 电子科技大学 | 一种多核组合式大容量数据同步存储方法 |
CN112069095B (zh) * | 2020-09-09 | 2022-01-28 | 北京锐马视讯科技有限公司 | Ddr3读写传输方法和装置 |
CN114490466B (zh) * | 2021-12-28 | 2024-04-30 | 深圳市紫光同创电子有限公司 | 一种实现数据连续存储的ddr ip核架构及方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020071321A1 (en) * | 2000-11-29 | 2002-06-13 | International Business Machines Corporation | System and method of maintaining high bandwidth requirement of a data pipe from low bandwidth memories |
CN100511470C (zh) * | 2004-11-29 | 2009-07-08 | 中兴通讯股份有限公司 | 双倍速动态随机存取存储器的读写方法 |
CN1798091A (zh) * | 2004-12-30 | 2006-07-05 | 中兴通讯股份有限公司 | 一种提高sdram处理带宽的方法 |
CN100517498C (zh) * | 2006-05-25 | 2009-07-22 | 深圳市恒扬科技有限公司 | 一种无读取延迟的先进先出存储器 |
CN101621469B (zh) * | 2009-08-13 | 2012-01-04 | 杭州华三通信技术有限公司 | 数据报文存取控制装置和方法 |
CN102118304B (zh) * | 2010-01-05 | 2014-03-12 | 中兴通讯股份有限公司 | 一种信元交换方法和装置 |
CN102117244B (zh) * | 2010-01-05 | 2012-10-17 | 上海硅知识产权交易中心有限公司 | Soc中支持多个音视频ip核寻址的ddr2的控制方法 |
CN102103548B (zh) * | 2011-02-22 | 2015-06-10 | 中兴通讯股份有限公司 | 提高双倍数据速率同步随机存储器读写速率的方法及装置 |
CN103678729B (zh) * | 2013-12-12 | 2016-08-17 | 中国电子科技集团公司第四十一研究所 | 一种基于fpga实现的高速a/d采样数据实时存储方法 |
CN105353245B (zh) * | 2015-11-16 | 2018-05-18 | 西安紫光国芯半导体有限公司 | 一种基于zq管脚的dram ddr校准电路及方法 |
CN105741237B (zh) * | 2016-01-26 | 2019-03-26 | 南京铁道职业技术学院 | 一种基于fpga图像翻转的硬件实现方法 |
-
2017
- 2017-05-11 CN CN201710330941.5A patent/CN107133407B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107133407A (zh) | 2017-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107133407B (zh) | 一种高带宽下提高ddr ram接口带宽的fpga实现方法 | |
CN113553277B (zh) | 一种ddr5 sdram的高吞吐率、低延迟phy接口电路装置 | |
US8700818B2 (en) | Packet based ID generation for serially interconnected devices | |
US8310897B2 (en) | Semiconductor memory device and data processing system including the semiconductor memory device | |
US6795906B2 (en) | Memory controller, interface device and method using a mode selection signal to support different types of memories | |
JP3763083B2 (ja) | 半導体メモリ装置とその読出及び書込方法 | |
US7694099B2 (en) | Memory controller having an interface for providing a connection to a plurality of memory devices | |
US20080181214A1 (en) | Apparatus and method for producing device identifiers for serially interconnected devices of mixed type | |
US20080155219A1 (en) | Id generation apparatus and method for serially interconnected devices | |
US20100005233A1 (en) | Storage region allocation system, storage region allocation method, and control apparatus | |
US10521141B2 (en) | Memory module and method system including the same | |
EP1355318A3 (en) | Semiconductor memory | |
US8850137B2 (en) | Memory subsystem for counter-based and other applications | |
US8271758B2 (en) | Apparatus and method for producing IDS for interconnected devices of mixed type | |
US10067689B1 (en) | Method and apparatus for high bandwidth memory read and write data path training | |
US8248866B2 (en) | Semiconductor storage device and its control method | |
US7996601B2 (en) | Apparatus and method of partially accessing dynamic random access memory | |
US20080140948A1 (en) | Apparatus and method for producing device identifiers for serially interconnected devices of mixed type | |
JP2017073122A (ja) | ディレイ可変素子を含むメモリモジュール及びそのディレイ設定方法 | |
JP2017045491A (ja) | 半導体メモリ、メモリシステム | |
CN111966628A (zh) | 一种多核组合式大容量数据同步存储方法 | |
JP2017027539A (ja) | プログラマブルコントローラ | |
JPH02177190A (ja) | メモリ装置 | |
CN112699067B (zh) | 一种指令寻址方法及装置 | |
US20220283743A1 (en) | Joint command dynamic random access memory (dram) apparatus and methods |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |