CN110399645A - 基于固态硬盘的fpga原型验证加速系统及实现方法 - Google Patents

基于固态硬盘的fpga原型验证加速系统及实现方法 Download PDF

Info

Publication number
CN110399645A
CN110399645A CN201910577565.9A CN201910577565A CN110399645A CN 110399645 A CN110399645 A CN 110399645A CN 201910577565 A CN201910577565 A CN 201910577565A CN 110399645 A CN110399645 A CN 110399645A
Authority
CN
China
Prior art keywords
central processing
processing unit
order
fpga
data
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
CN201910577565.9A
Other languages
English (en)
Other versions
CN110399645B (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.)
Memory Technology (shenzhen) Co Ltd
Suzhou Industrial Park Memory Technology Co Ltd
Shenzhen Union Memory Information System Co Ltd
Original Assignee
Memory Technology (shenzhen) Co Ltd
Suzhou Industrial Park Memory Technology Co Ltd
Shenzhen Union Memory Information System Co Ltd
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 Memory Technology (shenzhen) Co Ltd, Suzhou Industrial Park Memory Technology Co Ltd, Shenzhen Union Memory Information System Co Ltd filed Critical Memory Technology (shenzhen) Co Ltd
Priority to CN201910577565.9A priority Critical patent/CN110399645B/zh
Publication of CN110399645A publication Critical patent/CN110399645A/zh
Application granted granted Critical
Publication of CN110399645B publication Critical patent/CN110399645B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本申请涉及一种基于固态硬盘的FPGA原型验证加速系统、实现方法、计算机设备和存储介质,其中该实现方法包括:在IC设计的前期阶段,在FPGA上验证芯片架构及固件是否影响性能;固件在FPGA上进行原型验证以及评估性能;若性能出现问题,则在数据通路中增加监测模块,通过所述监测模块精准定位问题是芯片架构还是固件设计不合理。本发明实现了将搜索操作完全由软硬件配合完成,测试性能软件和环境与ASIC相同;能够在FPGA上测试性能,和ASIC测试结果相比,误差小,实现了提高调试效率。

Description

基于固态硬盘的FPGA原型验证加速系统及实现方法
技术领域
本发明涉及固态硬盘技术领域,特别是涉及一种基于固态硬盘的FPGA原型验证加速系统、实现方法、计算机设备和存储介质。
背景技术
目前,SSD(固态硬盘)已经被广泛应用于各种场合,由于其在性能、功耗、环境适应性等方面的优秀指标,正逐步替换传统的硬盘。
在传统技术中,SSD-Solid State Drives(固态硬盘)SOC芯片验证,由于EDA验证的局限性,一般会配合使用FPGApropotyping verification,由于SSD SOC芯片强调性能,SOC架构及firmware(固件)设计都与性能强相关,一般有条件的话会使用emulator(模拟器)硬件加速仿真器去保证。但是,emulator需要重新搭建环境,操作流程复杂,并且价格昂贵。如果没有emulator,前期架构建模仿真,但是此方法与实际的应用场景有差别,并且无法验证firmware,一般会等到芯片回来之后再调试性能,调试手段少,调试周期长。
发明内容
基于此,有必要针对上述技术问题,提供一种可以能够实现提高调试效率的基于固态硬盘的FPGA原型验证加速系统、实现方法、计算机设备和存储介质。
一种基于固态硬盘的FPGA原型验证加速系统,所述系统包括:
高速串行计算机扩展总线,其中,ASIC使用的高速串行计算机扩展总线为PCIE3.0X4,FPGA中使用的高速串行计算机扩展总线为PCIE1.0X1;
非易失性内存主机控制器接口规范,其中,ASIC工作频率为250Mx128bit,FPGA中工作频率为62.5Mx128bit;
数据管理模块、NandFlash控制器、双倍速率同步动态随机存储器、静态随机存储器以及多个中央处理器。
在其中一个实施例中,所述系统还包括:
监控模块,所述监控模块用于统计出一段时间内读带宽/写带宽,从而实现协助定位在应用场景中哪一步导致性能下降。
一种基于固态硬盘的FPGA原型验证加速系统的实现方法,所述方法包括:
在IC设计的前期阶段,在FPGA上验证芯片架构及固件是否影响性能;
固件在FPGA上进行原型验证以及评估性能;
若性能出现问题,则在数据通路中增加监测模块,通过所述监测模块精准定位问题是芯片架构还是固件设计不合理。
在其中一个实施例中,所述方法还包括:
根据应用场景,插入监控模块,所述监控模块能够统计出一段时间内读带宽/写带宽,从而协助定位在所述应用场景中哪一步导致性能下降。
在其中一个实施例中,所述应用场景包括:
主机通过PCIE命令给NVME到命令缓存;
第一中央处理器去命令缓存中解析命令;
第一中央处理器将可以数据管理模块处理的写命令告诉数据管理模块;
第二中央处理器处理命令;
第三中央处理器读到写命令;
第三中央处理器配置好NandFlash控制器;
NandFlash控制器配置完成之后告知数据管理模块;
NandFlash控制器通过数据管理模块拿到数据,数据管理模块主动通过PCIE向主机索要数据,同时数据管理模块将数据写到DDR备份;
命令数据传输完成之后,数据管理模块将状态反馈给第一中央处理器。
在其中一个实施例中,所述应用场景还包括:
主机通过PCIE命令给NVME到命令缓存;
第一中央处理器去命令缓存中解析命令;
第二中央处理器处理命令;
第三中央处理器读到写命令;
第三中央处理器配置好NandFlash控制器;
NVME从主机拿到数据写到DDR里面;
NandFlash控制器主动到DDR拿到数据写到颗粒中。
在其中一个实施例中,所述应用场景还包括:
主机通过PCIE命令给NVME到命令缓存;
第一中央处理器去命令缓存中解析命令;
第二中央处理器处理命令;
第三中央处理器读到写命令;
第三中央处理器配置好NandFlash控制器;
NandFlash控制器主动到颗粒拿到数据写到DDR中;
NVME主动从DDR中取到数据,通过PCIE给主机。
在其中一个实施例中,所述应用场景还包括:
主机通过PCIE命令给NVME到命令缓存;
第一中央处理器去命令缓存中解析命令;
第一中央处理器将可以数据管理模块处理的写命令告诉数据管理模块;
第二中央处理器处理命令;
第三中央处理器读到读命令;
第三中央处理器配置好NandFlash控制器;
NandFlash控制器配置完成之后告知数据管理模块;
NandFlash控制器主动到颗粒拿到数据给数据管理模块,数据管理模块通过PCIE将数据给主机;
命令数据传输完成之后,数据管理模块将状态反馈给第一中央处理器。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项方法的步骤。
上述基于固态硬盘的FPGA原型验证加速系统、实现方法、计算机设备和存储介质,通过在IC设计的前期阶段,在FPGA上验证芯片架构及firmware是否影响性能。Firmware在FPGA上可以进行原型验证,也可以进行评估性能。如果性能出现问题,数据通路中,增加监测模块,精准定位是哪里问题,是芯片架构,还是firmware设计不合理。本发明将搜索操作完全由软硬件配合完成,测试性能软件和环境与ASIC相同;能够在FPGA上测试性能,和ASIC测试结果相比,误差小,实现了提高调试效率。
附图说明
图1为一个实施例中基于固态硬盘的FPGA原型验证加速系统的实现方法的流程示意图;
图2为一个实施例中基于固态硬盘的FPGA原型验证加速系统的示意图;
图3为一个实施例中AXI监控模块的示意图;
图4为一个实施例中基于固态硬盘的FPGA原型验证加速系统的实现方法的应用环境的流程示意图;
图5为另一个实施例中基于固态硬盘的FPGA原型验证加速系统的实现方法的应用环境的流程示意图;
图6为再一个实施例中基于固态硬盘的FPGA原型验证加速系统的实现方法的应用环境的流程示意图;
图7为又一个实施例中基于固态硬盘的FPGA原型验证加速系统的实现方法的应用环境的流程示意图;
图8为一个实施例中BM program的流程示意图;
图9为一个实施例中DDR program的流程示意图;
图10为一个实施例中DDR read的流程示意图;
图11为一个实施例中BM read的流程示意图;
图12为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
目前,SSD SOC芯片架构及firmware(固件)设计与性能相关,架构建模仿真,但是此方法与实际的应用场景有差别,并且无法验证firmware。EDA验证目前受限于仿真速度,一般只仿真E2E(endpoint to endpoint,点到点,从前端到后端)基本通路。使用emulator(模拟器)硬件加速仿真器的话,需要重新搭建环境,操作流程复杂,并且价格昂贵。若没有emulator,一般只能将性能调试放在芯片测试阶段,调试手段少,调试周期长。
本发明基于上述技术问题,在IC设计的前期阶段,在FPGA上验证芯片架构及firmware是否影响性能。Firmware在FPGA上可以进行原型验证,也可以进行评估性能。如果性能出现问题,数据通路中,增加监测模块,精准定位是哪里问题,是芯片架构,还是firmware设计不合理。
在一个实施例中,如图1所示,提供了一种基于固态硬盘的FPGA原型验证加速系统的实现方法,其特征在于,该方法包括:
步骤102,在IC设计的前期阶段,在FPGA上验证芯片架构及固件是否影响性能;
步骤104,固件在FPGA上进行原型验证以及评估性能;
步骤106,若性能出现问题,则在数据通路中增加监测模块,通过监测模块精准定位问题是芯片架构还是固件设计不合理。
在本实施例中,还提供了一种基于固态硬盘的FPGA原型验证加速系统,该系统用于执行上述方法中的步骤,具体包括:
高速串行计算机扩展总线,其中,ASIC使用的高速串行计算机扩展总线为PCIE3.0X4,FPGA中使用的高速串行计算机扩展总线为PCIE1.0X1;
非易失性内存主机控制器接口规范,其中,ASIC工作频率为250Mx128bit,FPGA中工作频率为62.5Mx128bit;
数据管理模块、NandFlash控制器、双倍速率同步动态随机存储器、静态随机存储器以及多个中央处理器。
具体地,参考图2所示的SSD FPGA原型验证加速系统。其中,PCIE:高速串行计算机扩展总线,实际ASIC使用PCIE3.0X4,FPGA中使用PCIE1.0X1;NVME:非易失性内存主机控制器接口规范,ASIC工作频率为250Mx128bit,FPGA中工作频率为62.5Mx128bit;BM:数据管理模块;NFC:nand flash控制器;DDR:双倍速率同步动态随机存储器;SRAM:静态随机存储器;CPU:中央处理器。
NFC/DDR/SRAM FPGA下的工作频率=(ASIC频率/12.8),最终在评估ASIC的性能=FPGA实测性能x12.8。
在一个实施例中,该方法还包括:
根据应用场景,插入监控模块,监控模块能够统计出一段时间内读带宽/写带宽,从而协助定位在应用场景中哪一步导致性能下降。
在一个实施例中,系统还包括:
监控模块,用于统计出一段时间内读带宽/写带宽,从而实现协助定位在应用场景中哪一步导致性能下降。
具体地,参考图3所示的AXI监测模块,其中,ar_cmd/rdata/aw_cmd/wdata为AXI(先进可扩展接口),start/end为启动/停止AXI监测模块,wdata_bw/rdata_bw统计出来的写带宽/读带宽。一般start/end及wdata_bw/rdata_bw都有CPU可控制,可观测。
根据典型的应用场景,插入AXI(先进可扩展接口)监控模块,能够统计出一段时间内读带宽/写带宽,从而协助定位场景中哪一步导致性能下降。
在上述实施例中,实现的技术效果包括:首先,将搜索操作完全由软硬件配合完成,测试性能软件和环境与ASIC相同。其次,能够在FPGA上测试性能,和ASIC测试结果相比,误差小。最后,整个数据通路中增加检测模块,方便定位问题原因。
在一个实施例中,如图4所示,提供了基于固态硬盘的FPGA原型验证加速系统的实现方法,该方法中的应用场景包括:
步骤402,主机通过PCIE命令给NVME到命令缓存;
步骤404,第一中央处理器去命令缓存中解析命令;
步骤406,第一中央处理器将可以数据管理模块处理的写命令告诉数据管理模块;
步骤408,第二中央处理器处理命令;
步骤410,第三中央处理器读到写命令;
步骤412,第三中央处理器配置好NandFlash控制器;
步骤414,NandFlash控制器配置完成之后告知数据管理模块;
步骤416,NandFlash控制器通过数据管理模块拿到数据,数据管理模块主动通过PCIE向主机索要数据,同时数据管理模块将数据写到DDR备份;
步骤418,命令数据传输完成之后,数据管理模块将状态反馈给第一中央处理器。
具体地,参考图8中BM program的应用场景,包括:
S1:Host通过pcie命令给nvme到command buffer(命令缓存);
S2:CPU0去command buffer中解析命令;
S3:CPU0将可以BM处理的写命令告诉BM;
S4:CPU1处理命令,如拆分成4K命令,更新ftl;
S5:CPU2读到写命令;
S6:CPU2配置好nfc;
S7:nfc ready之后告诉BM;
S8:NFC通过BM拿到数据,BM主动通过PCIE向host索要数据,同时BM将数据写到DDR备份;
S9:命令数据传输完成之后,BM将状态反馈给CPU0。
在一个实施例中,如图5所示,提供了基于固态硬盘的FPGA原型验证加速系统的实现方法,该方法中的应用场景包括:
步骤502,主机通过PCIE命令给NVME到命令缓存;
步骤504,第一中央处理器去命令缓存中解析命令;
步骤506,第二中央处理器处理命令;
步骤508,第三中央处理器读到写命令;
步骤510,第三中央处理器配置好NandFlash控制器;
步骤512,NVME从主机拿到数据写到DDR里面;
步骤514,NandFlash控制器主动到DDR拿到数据写到颗粒中。
具体地,参考图9中DDR program的应用场景,包括:
S1:Host通过pcie命令给nvme到command buffer(命令缓存);
S2:CPU0去command buffer中解析命令;
S3:CPU1处理命令,如拆分成4K命令,更新ftl;
S4:CPU2读到写命令;
S5:CPU2配置好nfc;
S6:nvme从host(主机)拿到数据,写到DDR里面;
S7:nfc主动到DDR拿到数据,写到颗粒中。
在一个实施例中,如图6所示,提供了基于固态硬盘的FPGA原型验证加速系统的实现方法,该方法中的应用场景包括:
步骤602,主机通过PCIE命令给NVME到命令缓存;
步骤604,第一中央处理器去命令缓存中解析命令;
步骤606,第二中央处理器处理命令;
步骤608,第三中央处理器读到写命令;
步骤610,第三中央处理器配置好NandFlash控制器;
步骤612,NandFlash控制器主动到颗粒拿到数据写到DDR中;
步骤614,NVME主动从DDR中取到数据,通过PCIE给主机。
具体地,参考图10中DDR read的应用场景,包括:
S1:Host通过pcie命令给nvme到command buffer(命令缓存);
S2:CPU0去command buffer中解析命令;
S3:CPU1处理命令,如拆分成4K命令,更新ftl;
S4:CPU2读到写命令;
S5:CPU2配置好nfc;
S6:nfc主动到颗粒拿到数据,写到DDR中;
S7:nvme主动从DDR中取到数据,通过PCIE给host。
在一个实施例中,如图7所示,提供了基于固态硬盘的FPGA原型验证加速系统的实现方法,该方法中的应用场景包括:
步骤702,主机通过PCIE命令给NVME到命令缓存;
步骤704,第一中央处理器去命令缓存中解析命令;
步骤706,第一中央处理器将可以数据管理模块处理的写命令告诉数据管理模块;
步骤708,第二中央处理器处理命令;
步骤710,第三中央处理器读到读命令;
步骤712,第三中央处理器配置好NandFlash控制器;
步骤714,NandFlash控制器配置完成之后告知数据管理模块;
步骤716,NandFlash控制器主动到颗粒拿到数据给数据管理模块,数据管理模块通过PCIE将数据给主机;
步骤718,命令数据传输完成之后,数据管理模块将状态反馈给第一中央处理器。
具体地,参考图11中BM read的应用场景,包括:
S1:Host通过pcie命令给nvme到command buffer(命令缓存);
S2:CPU0去command buffer中解析命令;
S3:CPU0将可以BM处理的读命令告诉BM;
S4:CPU1处理命令,如拆分成4K命令,更新ftl;
S5:CPU2读到读命令;
S6:CPU2配置好nfc;
S7:nfc ready之后告诉BM;
S8:nfc主动到颗粒拿到数据给BM,BM通过PCIE将数据给host;
S9:命令数据传输完成之后,BM将状态反馈给CPU0。
应该理解的是,虽然图1-11的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-11中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,提供了一种计算机设备,其内部结构图可以如图12所示。该计算机设备包括通过装置总线连接的处理器、存储器以及网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作装置、计算机程序和数据库。该内存储器为非易失性存储介质中的操作装置和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于固态硬盘的FPGA原型验证加速的实现方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以上各个方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以上各个方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种基于固态硬盘的FPGA原型验证加速系统,所述系统包括:
高速串行计算机扩展总线,其中,ASIC使用的高速串行计算机扩展总线为PCIE3.0X4,FPGA中使用的高速串行计算机扩展总线为PCIE1.0X1;
非易失性内存主机控制器接口规范,其中,ASIC工作频率为250Mx128bit,FPGA中工作频率为62.5Mx128bit;
数据管理模块、NandFlash控制器、双倍速率同步动态随机存储器、静态随机存储器以及多个中央处理器。
2.根据权利要求1所述的基于固态硬盘的FPGA原型验证加速系统,其特征在于,所述系统还包括:
监控模块,所述监控模块用于统计出一段时间内读带宽/写带宽,从而实现协助定位在应用场景中哪一步导致性能下降。
3.一种基于固态硬盘的FPGA原型验证加速系统的实现方法,其特征在于,所述方法包括:
在IC设计的前期阶段,在FPGA上验证芯片架构及固件是否影响性能;
固件在FPGA上进行原型验证以及评估性能;
若性能出现问题,则在数据通路中增加监测模块,通过所述监测模块精准定位问题是芯片架构还是固件设计不合理。
4.根据权利要求3所述的基于固态硬盘的FPGA原型验证加速系统的实现方法,其特征在于,所述方法还包括:
根据应用场景,插入监控模块,所述监控模块能够统计出一段时间内读带宽/写带宽,从而协助定位在所述应用场景中哪一步导致性能下降。
5.根据权利要求4所述的基于固态硬盘的FPGA原型验证加速系统的实现方法,其特征在于,所述应用场景包括:
主机通过PCIE命令给NVME到命令缓存;
第一中央处理器去命令缓存中解析命令;
第一中央处理器将可以数据管理模块处理的写命令告诉数据管理模块;
第二中央处理器处理命令;
第三中央处理器读到写命令;
第三中央处理器配置好NandFlash控制器;
NandFlash控制器配置完成之后告知数据管理模块;
NandFlash控制器通过数据管理模块拿到数据,数据管理模块主动通过PCIE向主机索要数据,同时数据管理模块将数据写到DDR备份;
命令数据传输完成之后,数据管理模块将状态反馈给第一中央处理器。
6.根据权利要求4所述的基于固态硬盘的FPGA原型验证加速系统的实现方法,其特征在于,所述应用场景还包括:
主机通过PCIE命令给NVME到命令缓存;
第一中央处理器去命令缓存中解析命令;
第二中央处理器处理命令;
第三中央处理器读到写命令;
第三中央处理器配置好NandFlash控制器;
NVME从主机拿到数据写到DDR里面;
NandFlash控制器主动到DDR拿到数据写到颗粒中。
7.根据权利要求4所述的基于固态硬盘的FPGA原型验证加速系统的实现方法,其特征在于,所述应用场景还包括:
主机通过PCIE命令给NVME到命令缓存;
第一中央处理器去命令缓存中解析命令;
第二中央处理器处理命令;
第三中央处理器读到写命令;
第三中央处理器配置好NandFlash控制器;
NandFlash控制器主动到颗粒拿到数据写到DDR中;
NVME主动从DDR中取到数据,通过PCIE给主机。
8.根据权利要求4所述的基于固态硬盘的FPGA原型验证加速系统的实现方法,其特征在于,所述应用场景还包括:
主机通过PCIE命令给NVME到命令缓存;
第一中央处理器去命令缓存中解析命令;
第一中央处理器将可以数据管理模块处理的写命令告诉数据管理模块;
第二中央处理器处理命令;
第三中央处理器读到读命令;
第三中央处理器配置好NandFlash控制器;
NandFlash控制器配置完成之后告知数据管理模块;
NandFlash控制器主动到颗粒拿到数据给数据管理模块,数据管理模块通过PCIE将数据给主机;
命令数据传输完成之后,数据管理模块将状态反馈给第一中央处理器。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求3至8中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求3至8中任一项所述的方法的步骤。
CN201910577565.9A 2019-06-28 2019-06-28 基于固态硬盘的fpga原型验证加速系统及实现方法 Active CN110399645B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910577565.9A CN110399645B (zh) 2019-06-28 2019-06-28 基于固态硬盘的fpga原型验证加速系统及实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910577565.9A CN110399645B (zh) 2019-06-28 2019-06-28 基于固态硬盘的fpga原型验证加速系统及实现方法

Publications (2)

Publication Number Publication Date
CN110399645A true CN110399645A (zh) 2019-11-01
CN110399645B CN110399645B (zh) 2023-07-07

Family

ID=68324246

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910577565.9A Active CN110399645B (zh) 2019-06-28 2019-06-28 基于固态硬盘的fpga原型验证加速系统及实现方法

Country Status (1)

Country Link
CN (1) CN110399645B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112581994A (zh) * 2020-12-11 2021-03-30 瓴盛科技有限公司 同步型存储装置的控制方法、装置和系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101373493A (zh) * 2008-09-22 2009-02-25 浪潮电子信息产业股份有限公司 一种多媒体存储网关专用soc芯片逻辑验证方法
CN101377793A (zh) * 2008-09-22 2009-03-04 浪潮电子信息产业股份有限公司 一种服务器安全监控管理用soc芯片逻辑验证方法
CN101639869A (zh) * 2009-08-28 2010-02-03 浪潮电子信息产业股份有限公司 一种ssd控制soc芯片逻辑验证方法
CN206757652U (zh) * 2017-04-14 2017-12-15 首都师范大学 一种基于FPGA+ARM异构多核SoC平台的目标检测系统
CN107766619A (zh) * 2017-09-26 2018-03-06 青岛海信电器股份有限公司 对芯片进行fpga原型验证的方法和装置
CN108985628A (zh) * 2018-07-16 2018-12-11 无锡江南计算技术研究所 一种计算机设备自主可控度评估方法
CN109684150A (zh) * 2018-12-24 2019-04-26 北京紫光得瑞科技有限公司 存储颗粒控制器的性能测试系统、测试方法及仿真平台

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101373493A (zh) * 2008-09-22 2009-02-25 浪潮电子信息产业股份有限公司 一种多媒体存储网关专用soc芯片逻辑验证方法
CN101377793A (zh) * 2008-09-22 2009-03-04 浪潮电子信息产业股份有限公司 一种服务器安全监控管理用soc芯片逻辑验证方法
CN101639869A (zh) * 2009-08-28 2010-02-03 浪潮电子信息产业股份有限公司 一种ssd控制soc芯片逻辑验证方法
CN206757652U (zh) * 2017-04-14 2017-12-15 首都师范大学 一种基于FPGA+ARM异构多核SoC平台的目标检测系统
CN107766619A (zh) * 2017-09-26 2018-03-06 青岛海信电器股份有限公司 对芯片进行fpga原型验证的方法和装置
CN108985628A (zh) * 2018-07-16 2018-12-11 无锡江南计算技术研究所 一种计算机设备自主可控度评估方法
CN109684150A (zh) * 2018-12-24 2019-04-26 北京紫光得瑞科技有限公司 存储颗粒控制器的性能测试系统、测试方法及仿真平台

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
王立华: ""基于FPGA的片上系统(SoC)原型验证的研究与实现"", 《硕士论文》 *
王立华: ""基于FPGA的片上系统(SoC)原型验证的研究与实现"", 《硕士论文》, 7 August 2007 (2007-08-07) *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112581994A (zh) * 2020-12-11 2021-03-30 瓴盛科技有限公司 同步型存储装置的控制方法、装置和系统

Also Published As

Publication number Publication date
CN110399645B (zh) 2023-07-07

Similar Documents

Publication Publication Date Title
US10503848B2 (en) Target capture and replay in emulation
KR102222420B1 (ko) 메모리 물리 계층 인터페이스를 훈련하기 위한 통합 제어기
US11625521B2 (en) Method, emulator, and storage media for debugging logic system design
US9607120B2 (en) Implementing system irritator accelerator FPGA unit (AFU) residing behind a coherent attached processors interface (CAPI) unit
US10275386B2 (en) Memory physical layer interface logic for generating dynamic random access memory (DRAM) commands with programmable delays
US20170115969A1 (en) System and method for automatically generating device drivers for run time environments
CN109144515A (zh) Dcs图形化算法组态的离线仿真方法和装置
CN115146568B (zh) 一种基于uvm的芯片验证系统及验证方法
CN113868039A (zh) 一种测试方法、装置及相关设备
CN110399645A (zh) 基于固态硬盘的fpga原型验证加速系统及实现方法
US10891071B2 (en) Hardware, software and algorithm to precisely predict performance of SoC when a processor and other masters access single-port memory simultaneously
CN107704351B (zh) 一种芯片的验证方法和装置
CN102722382B (zh) 仿真过程中加载表项的方法及仿真设备
CN114548027A (zh) 在验证系统中追踪信号的方法、电子设备及存储介质
US20170185710A1 (en) Testbench Restoration Based On Capture And Replay
CN110928736B (zh) 内存参数调试方法及装置
US11734475B2 (en) Performance measurement methodology for co-simulation
CN102385547B (zh) 一种dram控制器时序校验功能的验证方法及系统
US11295052B1 (en) Time correlation in hybrid emulation system
US11500639B2 (en) Arithmetic processing apparatus and control method using ordering property
CN116842902B (zh) 针对黑盒模型的系统级仿真建模方法
CN117236277B (zh) 用于检查寄存器的方法及装置、电子设备
CN117234941A (zh) Mcu芯片验证平台和方法
JP2014149565A (ja) 検証プログラム、検証方法及び検証装置
WO2016138814A1 (zh) 同步动态随机存储器sdram的测试方法及装置

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