CN111475437A - 固态硬盘soc芯片fpga原型验证ddr的装置、方法、计算机设备及存储介质 - Google Patents
固态硬盘soc芯片fpga原型验证ddr的装置、方法、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111475437A CN111475437A CN202010289991.5A CN202010289991A CN111475437A CN 111475437 A CN111475437 A CN 111475437A CN 202010289991 A CN202010289991 A CN 202010289991A CN 111475437 A CN111475437 A CN 111475437A
- Authority
- CN
- China
- Prior art keywords
- fpga
- command
- ddr
- rate memory
- module
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
Abstract
本发明涉及一种固态硬盘SOC芯片FPGA原型验证DDR的装置、方法、计算机设备及存储介质,装置包括FPGA,PFGA内设置有双沿速率内存控制逻辑模块,接口协议转换模块和FPGA双沿速率内存物理接口模块,FPGA双沿速率内存物理接口模块的连接有DDR颗粒;双沿速率内存控制逻辑模块用于输出与ASIC一致的标准总线协议的命令数据给接口协议转换模块;接口协议转换模块用于将命令数据转成FPGA双沿速率内存物理接口模块接口协议的命令数据,并发送;FPGA双沿速率内存物理接口模块用于将接收到的命令数据发送DDR颗粒。本发明由FPGA双沿速率内存物理接口模块发送给DDR颗粒,能够在FPGA上验证ASIC的双沿速率内存控制逻辑模块,灵活性高,成本更低。
Description
技术领域
本发明涉及固态硬盘领域,更具体地说是指一种固态硬盘SOC芯片FPGA原型验证DDR的装置、方法、计算机设备及存储介质。
背景技术
SSD(Solid State Drive,固态硬盘)的SOC芯片验证过程中,SOC芯片中一般包含DDR SDRAM(double date rate synchronous dynamic random access memory,双倍速率同步动态随机存储器)控制单元,一般有DDR Controller(Memory Controller,内存控制逻辑)和DDR PHY(Physical Interface,物理层接口),FPGA(Field-Programmable GateArray,现场可编程逻辑门阵列)原型验证的时候,由于PHY是仅用于ASIC(专门应用集成电路),无法集成到FPGA中。DDR PHY负责数据传输,风险低;主要是DDR controller负责总线的仲裁,调度,需要在FPGA上验证。
FPGA原型验证,传统的做法是直接采用FPGA的DDR IP,这样的缺点是无法在FPGA上验证ASIC的DDR Controller,只能依赖EDA仿真保证,风险高。而且DDR Controller负责多个端口总线的仲裁,firmware团队在开发的时候,需要尽可能与ASIC一致。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种固态硬盘SOC芯片FPGA原型验证DDR的装置、方法、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:
第一方面,本发明提出一种固态硬盘SOC芯片FPGA原型验证DDR的装置,包括FPGA,所述PFGA内设置有双沿速率内存控制逻辑模块,接口协议转换模块和FPGA双沿速率内存物理接口模块,所述FPGA双沿速率内存物理接口模块的连接有DDR颗粒;
所述双沿速率内存控制逻辑模块用于接收AXI总线协议的命令数据,并对AXI总线标准的命令数据进行调度和仲裁,输出与ASIC一致的标准总线协议的命令数据给所述接口协议转换模块;
所述接口协议转换模块用于将标准总线协议的命令数据转成所述FPGA双沿速率内存物理接口模块接口协议的命令数据,并发送给所述FPGA双沿速率内存物理接口模块;
所述FPGA双沿速率内存物理接口模块用于将接收到的命令数据发送给DDR颗粒。
第二方面,本发明提出一种固态硬盘SOC芯片FPGA原型验证DDR的方法,基于如上所述的固态硬盘SOC芯片FPGA原型验证DDR的装置,包括以下步骤:
通过双沿速率内存控制逻辑模块接收AXI总线协议的命令,仲裁解析读命令得到DFI接口协议的命令并输出给接口协议转换模块;
通过接口协议转换模块将DFI接口协议的命令转换成FPGA双沿速率内存物理接口模块接口协议的命令,并发输出给FPGA双沿速率内存物理接口模块;
通过FPGA双沿速率内存物理接口模块将命令输出给DDR颗粒;
DDR颗粒根据接收到的命令,进行数据读取或数据写入。
第三方面,本发明提出一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述的固态硬盘SOC芯片FPGA原型验证DDR的方法。
第四方面,本发明提出一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如上任所述的固态硬盘SOC芯片FPGA原型验证DDR的方法。
本发明与现有技术相比的有益效果是:本发明通过在FPGA中设置一个接口协议转换模块,将双沿速率内存控制逻辑模块接收到的AXI总线协议的命令数据转换为DFI接口协议的命令数据,并输出给FPGA双沿速率内存物理接口模块,由FPGA双沿速率内存物理接口模块发送给DDR颗粒,能够在FPGA上验证ASIC的双沿速率内存控制逻辑模块(DDRcontroller),灵活性高的同时成本更低。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的固态硬盘SOC芯片FPGA原型验证DDR的装置的示意性框图;
图2为本发明实施例提供的固态硬盘SOC芯片FPGA原型验证DDR的方法的流程示意图;
图3为本发明实施例提供的固态硬盘SOC芯片FPGA原型验证DDR的方法的子流程示意图;
图4为本发明实施例提供的固态硬盘SOC芯片FPGA原型验证DDR的方法的另一子流程示意图;
图5为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
图1是本发明实施例提供的一种固态硬盘SOC芯片FPGA原型验证DDR的装置的示意性框图。该固态硬盘SOC芯片FPGA原型验证DDR的装置包括用于执行下述固态硬盘SOC芯片FPGA原型验证DDR的方法的模块,该装置可以被配置于台式电脑、平板电脑、手提电脑等终端中。
具体地,请参阅图1,该固态硬盘SOC芯片FPGA原型验证DDR的装置包括FPGA,PFGA内设置有依次连接的双沿速率内存控制逻辑模块,接口协议转换模块和FPGA双沿速率内存物理接口模块,FPGA双沿速率内存物理接口模块还连接有DDR颗粒,具体的,DDR颗粒外挂于FPGA。
其中,FPGA(Field-Programmable Gate Array,现场可编程逻辑门阵列),是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
其中,双沿速率内存控制逻辑模块(DDR Controller)用于接收AXI总线协议的命令数据,并对AXI总线标准的命令数据进行调度和仲裁,输出与ASIC一致的标准总线协议的命令数据给接口协议转换模块。
在本实施例中,主机通过AXI总线或其他通用总线协议发送命令或者数据,而双沿速率内存控制逻辑模块能够同时接收多组AXI总线的命令或数据,并在内部对接收到信息进行调度和仲裁,输出一组标准总线的指令或数据,在本实施例中,标准总线为DFI((DDRPHY interface)接口协议,从而与ASIC保持一致,并下发给接口协议转换模块再进行转换。上述的通用总线协议包括但不局限于AXI/AHB/APB等通用总线协议。
其中,接口协议转换模块用于将标准总线协议的命令数据转成FPGA双沿速率内存物理接口模块接口协议的命令数据,并发送给FPGA双沿速率内存物理接口模块。
在本实施例中,通过接口协议转换模块用于将标准总线协议的命令数据转成FPGA双沿速率内存物理接口模块接口协议的命令数据,并发送给FPGA双沿速率内存物理接口模块,在由FPGA双沿速率内存物理接口模块发送给DDR颗粒。接口协议转换模块的存在使得可以在FPGA上直接验证ASIC的双沿速率内存控制逻辑模块,保证双沿速率内存控制逻辑模块与ASIC保持一致,DDRPHY接口转换桥的资源消耗小,进而整个PFGA的消耗的资源面积小;另外,对于不同接口的DDRPHY,均可以采用上述处理方式,通用性和灵活性更高。
FPGA双沿速率内存物理接口模块(FPGA DDRPHY)用于将接收到的命令数据发送给DDR颗粒。
在本实施例中,在接口协议转换模块中将双沿速率内存控制逻辑模块接收的命令或数据转换成FPGA双沿速率内存物理接口模块可以接收的接口协议数据,保证命令或数据可以通过FPGA双沿速率内存物理接口模块输送到DDR颗粒中,完成对应的数据读与写。在本实施例中,FPGA双沿速率内存物理接口模块为FPGA内部自带的DDRPHY。
接口协议转换模块为DFI2USR bridge,也称为DDRPHY接口转换桥。
本方案通过在FPGA中设置一个接口协议转换模块,将双沿速率内存控制逻辑模块接收到的AXI总线协议的命令数据转换为DFI接口协议的命令数据,并输出给FPGA双沿速率内存物理接口模块,由FPGA双沿速率内存物理接口模块发送给DDR颗粒,能够在FPGA上验证ASIC的双沿速率内存控制逻辑模块(DDR controller),灵活性高的同时成本更低。
图2是本发明实施例提供的固态硬盘SOC芯片FPGA原型验证DDR的方法的流程示意图。如图2所示,本方法基于上述实施例所述的固态硬盘SOC芯片FPGA原型验证DDR的装置,具体的,该方法包括以下步骤S110至S150。
S10、通过双沿速率内存控制逻辑模块接收AXI总线协议的命令,仲裁解析读命令得到DFI接口协议的命令并输出给接口协议转换模块。
在本实施例中,双沿速率内存控制逻辑模块(DDR Controller)、接口协议转换模块和FPGA双沿速率内存物理接口模块(FPGA DDRPHY)依次连接设置于FPGA中,FPGA(Field-Programmable Gate Array,现场可编程逻辑门阵列),是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
主机通过AXI总线或其他通用总线协议发送命令或者数据,而双沿速率内存控制逻辑模块能够同时接收多组AXI总线的命令或数据,并在内部对接收到信息进行调度和仲裁,输出一组标准总线的指令或数据,也即是DFI((DDRPHY interface)接口协议,从而与ASIC保持一致,并下发给接口协议转换模块再进行转换。上述的通用总线协议包括但不局限于AXI/AHB/APB等通用总线协议。
在一实施例中,步骤S10包括步骤S11。
S11、通过双沿速率内存控制逻辑模块接收AXI总线协议的读/写命令,仲裁解析读/写命令,得到与ASIC一致的DFI接口协议的读/写命令并输出给接口协议转换模块。
在本实施例中,双沿速率内存控制逻辑模块接收的命令包括读命令和写命令,读命令用于从外挂的DDR颗粒中读取到目标数据,而写命令用于将目标数据写入到DDR颗粒中。双沿速率内存控制逻辑模块通过仲裁/解析接收到的命令,保证双沿速率内存控制逻辑模块和ASIC的一致性,消耗的资源面积小,同时灵活性更高。
S20、通过接口协议转换模块将DFI接口协议的命令转换成FPGA双沿速率内存物理接口模块接口协议的命令,并发输出给FPGA双沿速率内存物理接口模块。
在本实施例中,通过接口协议转换模块用于将标准总线协议的命令数据转成FPGA双沿速率内存物理接口模块接口协议的命令数据,并发送给FPGA双沿速率内存物理接口模块,在由FPGA双沿速率内存物理接口模块发送给DDR颗粒。接口协议转换模块的存在使得可以在FPGA上直接验证ASIC的双沿速率内存控制逻辑模块,保证双沿速率内存控制逻辑模块与ASIC保持一致,消耗的资源面积小,同时灵活性更高。
S30、通过FPGA双沿速率内存物理接口模块将命令输出给DDR颗粒。
在本实施例中,在接口协议转换模块中将双沿速率内存控制逻辑模块接收的命令或数据转换成FPGA双沿速率内存物理接口模块可以接收的接口协议数据,保证命令或数据可以通过FPGA双沿速率内存物理接口模块输送到DDR颗粒中,完成对应的数据读与写。在本实施例中,FPGA双沿速率内存物理接口模块为FPGA内部自带的DDRPHY。
S40、DDR颗粒根据接收到的命令,进行数据读取或数据写入。
在本实施例中,DDR颗粒在接收到来自FPGA双沿速率内存物理接口模块的读命令或写命令时,会根据命令的类型作出对应的响应。具体的,在接收到读命令时,会返回读数据给FPGA双沿速率内存物理接口模块,并由FPGA双沿速率内存物理接口模块、接口协议转换模块和双沿速率内存控制逻辑模块依次转换成适合的接口协议数据传输给主机,完成数据读取;DDR颗粒在接收到写命令时,响应对应的写命令,并继续通过双沿速率内存控制逻辑模块、接口协议转换模块和FPGA双沿速率内存物理接口模块接收待写入的写数据,完成数据写入。
参考图3,在一实施例中,步骤S40包括步骤S411-S414。
S411、通过FPGA双沿速率内存物理接口模块接收DDR颗粒根据读命令返回的读数据,并将读数据输出给接口协议转换模块。
S412、通过接口协议转换模块将读数据转换成符合AXI总线协议的读数据,并输出给双沿速率内存控制逻辑模块。
S413、通过双沿速率内存控制逻辑模块将读数据使用AXI总线发出,完成数据读取。
在本实施例中,FPGA双沿速率内存物理接口模块将DDR颗粒返回的读数据输出给接口协议转换模块,并由接口协议转换模块将读数据转换成符合AXI总线协议的读数据,最后由双沿速率内存控制逻辑模块将读数据使用AXI总线发出,完成数据读取整个过程都直接基于FPGA实现,ASIC与双沿速率内存控制逻辑模块保持一致。
参考图4,在一实施例中,步骤S40包括步骤S421-S424。
S421、DDR颗粒接收并响应写命令之后,通过双沿速率内存控制逻辑模块继续接收AXI总线协议的写数据,仲裁解析写数据得到DFI接口协议的写数据并输出给接口协议转换模块。
S422、通过接口协议转换模块将DFI接口协议的写数据转换成FPGA双沿速率内存物理接口模块接口协议的写数据,并发输出给FPGA双沿速率内存物理接口模块。
S423、通过FPGA双沿速率内存物理接口模块将写数据写入到DDR颗粒中,完成数据写入。
在本实施例中,在DDR颗粒接收并响应写命令之后,继续通过双沿速率内存控制逻辑模块继续接收AXI总线协议的写数据,并将写数据依次转换成DFI接口协议的写数据,以及符合FPGA双沿速率内存物理接口模块接口协议的写数据,并最终在DDR颗粒中完成写入,整个过程都直接基于FPGA实现,ASIC与双沿速率内存控制逻辑模块保持一致。
本方案通过在FPGA中设置一个接口协议转换模块,将双沿速率内存控制逻辑模块接收到的AXI总线协议的命令数据转换为DFI接口协议的命令数据,并输出给FPGA双沿速率内存物理接口模块,由FPGA双沿速率内存物理接口模块发送给DDR颗粒,能够在FPGA上验证ASIC的双沿速率内存控制逻辑模块(DDR controller),灵活性高的同时成本更低。
请参阅图5,图5是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图5,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种固态硬盘SOC芯片FPGA原型验证DDR的方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种固态硬盘SOC芯片FPGA原型验证DDR的方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种固态硬盘SOC芯片FPGA原型验证DDR的装置,其特征在于,包括FPGA,所述PFGA内设置有依次连接的双沿速率内存控制逻辑模块,接口协议转换模块和FPGA双沿速率内存物理接口模块,所述FPGA双沿速率内存物理接口模块还连接有DDR颗粒;
所述双沿速率内存控制逻辑模块用于接收AXI总线协议的命令数据,并对AXI总线标准的命令数据进行调度和仲裁,输出与ASIC一致的标准总线协议的命令数据给所述接口协议转换模块;
所述接口协议转换模块用于将标准总线协议的命令数据转成所述FPGA双沿速率内存物理接口模块接口协议的命令数据,并发送给所述FPGA双沿速率内存物理接口模块;
所述FPGA双沿速率内存物理接口模块用于将接收到的命令数据发送给DDR颗粒。
2.根据权利要求1所述的固态硬盘SOC芯片FPGA原型验证DDR的装置,其特征在于,所述标准总线协议为DFI接口协议。
3.根据权利要求1所述的固态硬盘SOC芯片FPGA原型验证DDR的装置,其特征在于,所述的DDR颗粒外挂于所述FPGA。
4.根据权利要求1所述的固态硬盘SOC芯片FPGA原型验证DDR的装置,其特征在于,所述接口协议转换模块为DDRPHY接口转换桥。
5.一种固态硬盘SOC芯片FPGA原型验证DDR的方法,其特征在于,基于权利要求1-4任一项所述的固态硬盘SOC芯片FPGA原型验证DDR的装置,包括以下步骤:
通过双沿速率内存控制逻辑模块接收AXI总线协议的命令,仲裁解析读命令得到DFI接口协议的命令并输出给接口协议转换模块;
通过接口协议转换模块将DFI接口协议的命令转换成FPGA双沿速率内存物理接口模块接口协议的命令,并发输出给FPGA双沿速率内存物理接口模块;
通过FPGA双沿速率内存物理接口模块将命令输出给DDR颗粒;
DDR颗粒根据接收到的命令,进行数据读取或数据写入。
6.根据权利要求5所述的固态硬盘SOC芯片FPGA原型验证DDR的方法,其特征在于,所述通过双沿速率内存控制逻辑模块接收AXI总线协议的命令,仲裁解析读命令得到DFI接口协议的命令并输出给接口协议转换模块的步骤,包括:
通过双沿速率内存控制逻辑模块接收AXI总线协议的读/写命令,仲裁解析读/写命令,得到与ASIC一致的DFI接口协议的读/写命令并输出给接口协议转换模块。
7.根据权利要求6所述的固态硬盘SOC芯片FPGA原型验证DDR的方法,其特征在于,所述DDR颗粒根据接收到的命令,进行数据读取或数据写入的步骤,包括:
通过FPGA双沿速率内存物理接口模块接收DDR颗粒根据读命令返回的读数据,并将读数据输出给接口协议转换模块;
通过接口协议转换模块将读数据转换成符合AXI总线协议的读数据,并输出给双沿速率内存控制逻辑模块;
通过双沿速率内存控制逻辑模块将读数据使用AXI总线发出,完成数据读取。
8.根据权利要求6所述的固态硬盘SOC芯片FPGA原型验证DDR的方法,其特征在于,所述DDR颗粒根据接收到的命令,进行数据读取或数据写入的步骤,包括:
DDR颗粒接收并响应写命令之后,通过双沿速率内存控制逻辑模块继续接收AXI总线协议的写数据,仲裁解析写数据得到DFI接口协议的写数据并输出给接口协议转换模块;
通过接口协议转换模块将DFI接口协议的写数据转换成FPGA双沿速率内存物理接口模块接口协议的写数据,并发输出给FPGA双沿速率内存物理接口模块;
通过FPGA双沿速率内存物理接口模块将写数据写入到DDR颗粒中,完成数据写入。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求5至8中任一项所述的固态硬盘SOC芯片FPGA原型验证DDR的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求5至8中任一项所述的固态硬盘SOC芯片FPGA原型验证DDR的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010289991.5A CN111475437A (zh) | 2020-04-14 | 2020-04-14 | 固态硬盘soc芯片fpga原型验证ddr的装置、方法、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010289991.5A CN111475437A (zh) | 2020-04-14 | 2020-04-14 | 固态硬盘soc芯片fpga原型验证ddr的装置、方法、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111475437A true CN111475437A (zh) | 2020-07-31 |
Family
ID=71751866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010289991.5A Pending CN111475437A (zh) | 2020-04-14 | 2020-04-14 | 固态硬盘soc芯片fpga原型验证ddr的装置、方法、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111475437A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113255263A (zh) * | 2021-06-07 | 2021-08-13 | 上海国微思尔芯技术股份有限公司 | 颗粒带分割方法、装置、计算机设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184148A (zh) * | 2011-04-18 | 2011-09-14 | 北京航空航天大学 | 一种基于fpga的at96总线控制器ip核及其构建方法 |
CN203260029U (zh) * | 2013-04-28 | 2013-10-30 | 杭州士兰微电子股份有限公司 | 基于fpga的系统芯片原型验证调试装置 |
CN105159853A (zh) * | 2015-09-25 | 2015-12-16 | 中国船舶重工集团公司第七0九研究所 | 基于fpga的dfi标准ddr3控制器 |
CN105260331A (zh) * | 2015-10-09 | 2016-01-20 | 天津国芯科技有限公司 | 一种双总线内存控制器 |
US10579303B1 (en) * | 2016-08-26 | 2020-03-03 | Candace Design Systems, Inc. | Memory controller having command queue with entries merging |
-
2020
- 2020-04-14 CN CN202010289991.5A patent/CN111475437A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184148A (zh) * | 2011-04-18 | 2011-09-14 | 北京航空航天大学 | 一种基于fpga的at96总线控制器ip核及其构建方法 |
CN203260029U (zh) * | 2013-04-28 | 2013-10-30 | 杭州士兰微电子股份有限公司 | 基于fpga的系统芯片原型验证调试装置 |
CN105159853A (zh) * | 2015-09-25 | 2015-12-16 | 中国船舶重工集团公司第七0九研究所 | 基于fpga的dfi标准ddr3控制器 |
CN105260331A (zh) * | 2015-10-09 | 2016-01-20 | 天津国芯科技有限公司 | 一种双总线内存控制器 |
US10579303B1 (en) * | 2016-08-26 | 2020-03-03 | Candace Design Systems, Inc. | Memory controller having command queue with entries merging |
Non-Patent Citations (2)
Title |
---|
习羽: ""通信SoC芯片DDR3控制器的设计与验证"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
何定铼等: ""基于FPGA的DDR3 PHY转接口设计"", 《2019年(第四届)中国航空科学技术大会论文集》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113255263A (zh) * | 2021-06-07 | 2021-08-13 | 上海国微思尔芯技术股份有限公司 | 颗粒带分割方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11789880B2 (en) | Load reduced nonvolatile memory interface | |
US11042297B2 (en) | Techniques to configure a solid state drive to operate in a storage mode or a memory mode | |
CN112559399A (zh) | 一种多axi接口的ddr控制器及其控制方法 | |
US10846256B2 (en) | Multi-endpoint device sideband communication system | |
US11372674B2 (en) | Method, apparatus and system for handling non-posted memory write transactions in a fabric | |
US6567881B1 (en) | Method and apparatus for bridging a digital signal processor to a PCI bus | |
JP2003296267A (ja) | バスシステム及びバスシステムを含む情報処理システム | |
US9047264B2 (en) | Low pin count controller | |
CN111475437A (zh) | 固态硬盘soc芯片fpga原型验证ddr的装置、方法、计算机设备及存储介质 | |
US20200089550A1 (en) | Broadcast command and response | |
US20240053888A1 (en) | Integrated circuit and processing method for memory access, electronic device, and medium | |
US10176133B2 (en) | Smart device with no AP | |
WO2012103768A1 (zh) | 数据处理方法及装置、pci-e总线系统、服务器 | |
CN113220608B (zh) | 一种NVMe命令处理器及其处理方法 | |
CN110825326A (zh) | 提升ssd随机读性能的方法、装置、计算机设备及存储介质 | |
CN113031863B (zh) | Ssd命令相关性管理方法、装置、计算机设备及存储介质 | |
US11354130B1 (en) | Efficient race-condition detection | |
CN113824741A (zh) | 一种iic设备的通信方法、装置、设备、系统及介质 | |
US7890687B2 (en) | Motherboard and interface control method of memory slot thereof | |
US11762414B2 (en) | Methods for preventing PCIe misconfigurations | |
JP6104065B2 (ja) | 複数のブロックの書き込み制御を用いるメモリ・システム、装置、および方法 | |
CN113297111B (zh) | 人工智能芯片及其操作方法 | |
CN116561036B (zh) | 数据访问控制方法、装置、设备及存储介质 | |
US11500747B2 (en) | Computer initialization debug message display system | |
CN109710411B (zh) | Tlp字段资源管理方法、装置、计算机设备及存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200731 |
|
RJ01 | Rejection of invention patent application after publication |