基于FPGA实现的仿真内存、仿真内存的实现方法及计算机技术

技术编号:13423055 阅读:46 留言:0更新日期:2016-07-28 18:18
本发明专利技术公开了一种基于FPGA实现的仿真内存、仿真内存的实现方法及计算机。所述仿真内存基于FPGA中起数据通信功能的第一硬件部分、起数据存储功能的第二硬件部分、起控制功能的第三硬件部分实现。其中,第一硬件部分作为所述仿真内存的通信模块用于模拟实现真实内存的数据通道部分的功能;第二硬件部分中划定的一块存储区域作为所述仿真内存的存储模块,用于模拟实现真实内存的存储区域部分的功能;第三硬件部分作为所述仿真内存的内存控制模块用于模拟实现真实内存的内存控制器部分的功能。FPGA插入计算机主板内存接口时,所述通信模块、所述存储模块及所述内存控制模块共同构成所述仿真内存,依照内存工作原理协同工作从而模拟实现真实内存的所有功能。

【技术实现步骤摘要】

本专利技术涉及内存
,更具体地说,涉及一种基于FPGA实现的仿真内存、仿真内存的实现方法及计算机
技术介绍
传统计算机主要采用的是处理器、北桥、内存、南桥和硬盘的组合架构模式。内存具有数据读写速度快的特点,可满足用户对于高速率的数据读写要求,硬盘具有存储空间大,存储空间配置灵活的特点,可满足用户对于大容量数据的存储要求。由于硬盘的存储容量大且价格适中,市面上的主流硬盘均采用的是机械结构,其硬盘转速通常维持于5400rpm或7200rpm,且难以进一步提高。随着内存生产工艺及技术的发展,机械硬盘的数据存取效率已严重滞后于内存,内存在读写硬盘中的数据时,使得计算机主板内存接口的高速特性难以发挥,数据存取效率低下的机械硬盘逐渐成为制约计算机处理性能发展的瓶颈。因此迫切需要提出一种使硬盘的数据存取效率与内存的高速特性相匹配的方法。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术中硬盘的数据存取效率与内存的高速特性不匹配的缺陷,提供一种基于FPGA实现的仿真内存、仿真内存的实现方法及计算机。本专利技术解决其技术问题所采用的技术方案是:构造一种基于FPGA实现的仿真内存,所述仿真内存基于FPGA中起到数据通信功能的第一硬件部分、起到数据存储功能的第二硬件部分、以及起到控制功能的第三硬件部分实现;其中FPGA中起到数据通信功能的第一硬件部分作为所述仿真内存的通信模块,用于模拟实现真实内存的数据通道部分的功能;FPGA中起到数据存储功能的第二硬件部分中划定的一块存储区域作为所述仿真内存的存储模块,用于模拟实现真实内存的存储区域部分的功能;FPGA中起到控制功能的第三硬件部分作为所述仿真内存的内存控制模块,用于模拟实现真实内存的内存控制器部分的功能;在FPGA插入计算机主板内存接口时,所述通信模块、所述存储模块及所述内存控制模块共同构成所述仿真内存,依照内存工作原理协同工作从而模拟实现真实内存的所有功能。在本专利技术上述基于FPGA实现的仿真内存中,所述存储模块包括内存单元以及外接于FPGA的闪存单元;所述闪存单元预存操作系统数据,所述内存单元用于计算机上电开机时载入所述闪存单元中的操作系统数据,以及暂存计算机工作过程中仿真内存与北桥芯片及CPU之间的交换数据;所述通信模块电连接于计算机主板的内存接口,用于通过该内存接口与计算机CPU进行通信;所述内存控制模块电连接于所述通信模块所述存储模块之间,用于计算机开机上电时接收计算机CPU经内存接口输入的初始化内存操作指令,对存储模块中的内存单元进行初始化,以及在将仿真内存初始化操作执行完毕之后接收计算机CPU经内存接口输入的内存读写命令,根据内存读写命令对所述存储模块中的内存单元执行相应的数据存取操作。在本专利技术上述基于FPGA实现的仿真内存中,所述仿真内存还包括:外接于FPGA的备用电源,用于计算机主电源断电时为仿真内存供电;电源管理模块,电连接于所述内存控制模块、计算机主电源及备用电源,用于对计算机主电源进行断电监测,根据主电源断电监测结果对备用电源的启动及充放电操作进行相应控制。在本专利技术上述基于FPGA实现的仿真内存中,所述内存控制模块还用于判断计算机由主电源供电模式切换至备用电源供电模式时,接收FPGA发出的数据断电保护指令,执行将内存单元中当前存储的所有数据拷贝、搬移及暂存于闪存单元的数据断电保护操作;所述内存控制模块还用于判断计算机由备用电源供电模式恢复至主电源供电模式时,接收计算机CPU发出的系统恢复命令,将暂存于闪存单元的所有拷贝数据重新写入内存单元,以将计算机系统瞬时恢复到主电源异常断电之前的系统运行状态。在本专利技术上述基于FPGA实现的仿真内存中,所述内存控制模块还用于将数据断电保护操作执行完毕时,接收FPGA发出的拷贝数据完整性检测指令,对暂存于闪存单元的拷贝数据的完整性进行检测,生成拷贝数据完整性检测结果,并将拷贝数据完整性检测结果返回FPGA。在本专利技术上述基于FPGA实现的仿真内存中,所述内存控制模块将暂存于闪存单元的拷贝数据与内存单元中的原始数据进行逐字节地比对,根据字节比对结果生成拷贝数据完整性检测结果。本专利技术还构造一种仿真内存的实现方法,包括如下步骤:将FPGA中起到数据通信功能的第一硬件部分作为预实现的仿真内存的通信模块,用于模拟实现真实内存的数据通道部分的功能;从FPGA中起到数据存储功能的第二硬件部分中划定一块存储区域作为预实现的仿真内存的存储模块,用于模拟实现真实内存的存储区域部分的功能;将FPGA中起到控制功能的第三硬件部分作为预实现的仿真内存的内存控制模块,用于模拟实现真实内存的内存控制器部分的功能;在FPGA插入计算机主板的内存接口时,所述通信模块、所述存储模块及所述内存控制模块共同构成仿真内存,并依照内存的工作原理协同工作,从而模拟实现真实内存的所有功能。在本专利技术上述仿真内存的实现方法中,在FPGA插入计算机主板的内存接口时,所述通信模块、所述存储模块及所述内存控制模块共同构成仿真内存的步骤以及所述通信模块、所述存储模块及所述内存控制模块依照内存的工作原理协同工作,并通过北桥芯片与计算机CPU进行通信,从而实现真实内存的所有功能的步骤之间还包括如下步骤:所述内存控制模块接收由计算机CPU发出的内存初始化命令,对仿真内存执行初始化操作,所述内存控制模块对仿真内存执行初始化操作的步骤具体包括:内存控制模块接收到仿真内存初始化命令时,对FPGA的第一管脚、第二管脚、第三管脚及第四管脚的电平组合进行检测,依次得到第一电平组合、第二电平组合、第三电平组合及第四电平组合,依照预先建立的电平组合及指令映射表依次执行与第一电平组合对应的空操作、与第二电平组合对应的预充电操作、与第三电平组合对应的两次刷新操作、以及与第四电平组合对应的设置模式寄存器操作,从而完成仿真内存的初始化操作。在本专利技术上述仿真内存的实现方法中,在所述内存控制模块接收到仿真内存初始化命令时,对FPGA的第一管脚、第二管脚、第三管脚及第四管脚的电平组合进行检测,依次得到第一电平组合、第二电平组合、第三电平组合及第四电平组合,依照电平组合指令映射表依次执行与第一电平组合对应的空操作、与第二电平组合对应的预充电操作、与第三电平组合对应的两次刷新操作、以及与第四电平组合对应的设置模式寄存器操作,从而完成仿真内存的初始化操作的本文档来自技高网...

【技术保护点】
一种基于FPGA实现的仿真内存,其特征在于,所述仿真内存基于FPGA中起到数据通信功能的第一硬件部分、起到数据存储功能的第二硬件部分、以及起到控制功能的第三硬件部分实现;其中FPGA中起到数据通信功能的第一硬件部分作为所述仿真内存的通信模块,用于模拟实现真实内存的数据通道部分的功能;FPGA中起到数据存储功能的第二硬件部分中划定的一块存储区域作为所述仿真内存的存储模块,用于模拟实现真实内存的存储区域部分的功能;FPGA中起到控制功能的第三硬件部分作为所述仿真内存的内存控制模块,用于模拟实现真实内存的内存控制器部分的功能;在FPGA插入计算机主板内存接口时,所述通信模块、所述存储模块及所述内存控制模块共同构成所述仿真内存,依照内存工作原理协同工作从而模拟实现真实内存的所有功能。

【技术特征摘要】
1.一种基于FPGA实现的仿真内存,其特征在于,所述仿真内存基于
FPGA中起到数据通信功能的第一硬件部分、起到数据存储功能的第二硬件部
分、以及起到控制功能的第三硬件部分实现;其中
FPGA中起到数据通信功能的第一硬件部分作为所述仿真内存的通信模
块,用于模拟实现真实内存的数据通道部分的功能;
FPGA中起到数据存储功能的第二硬件部分中划定的一块存储区域作为
所述仿真内存的存储模块,用于模拟实现真实内存的存储区域部分的功能;
FPGA中起到控制功能的第三硬件部分作为所述仿真内存的内存控制模
块,用于模拟实现真实内存的内存控制器部分的功能;
在FPGA插入计算机主板内存接口时,所述通信模块、所述存储模块及所
述内存控制模块共同构成所述仿真内存,依照内存工作原理协同工作从而模拟
实现真实内存的所有功能。
2.根据权利要求1所述的基于FPGA实现的仿真内存,其特征在于,所
述存储模块包括内存单元以及外接于FPGA的闪存单元;所述闪存单元预存操
作系统数据,所述内存单元用于计算机上电开机时载入所述闪存单元中的操作
系统数据,以及暂存计算机工作过程中仿真内存与北桥芯片及CPU之间的交
换数据;
所述通信模块电连接于计算机主板的内存接口,用于通过该内存接口与计
算机CPU进行通信;
所述内存控制模块电连接于所述通信模块所述存储模块之间,用于计算机
开机上电时接收计算机CPU经内存接口输入的初始化内存操作指令,对存储

\t模块中的内存单元进行初始化,以及在将仿真内存初始化操作执行完毕之后接
收计算机CPU经内存接口输入的内存读写命令,根据内存读写命令对所述存
储模块中的内存单元执行相应的数据存取操作。
3.根据权利要求1所述的基于FPGA实现的仿真内存,其特征在于,所
述仿真内存还包括:外接于FPGA的备用电源,用于计算机主电源断电时为仿
真内存供电;
电源管理模块,电连接于所述内存控制模块、计算机主电源及备用电源,
用于对主电源进行断电监测,根据主电源断电监测结果对备用电源的启动及充
放电操作进行相应控制。
4.根据权利要求2所述的基于FPGA实现的仿真内存,其特征在于,所
述内存控制模块还用于判断计算机由主电源供电模式切换至备用电源供电模
式时,接收FPGA发出的数据断电保护指令,执行将内存单元中当前存储的所
有数据拷贝、搬移及暂存于闪存单元的数据断电保护操作;
所述内存控制模块还用于判断计算机由备用电源供电模式恢复至主电源
供电模式时,接收计算机CPU发出的系统恢复命令,将暂存于闪存单元的所
有拷贝数据重新写入内存单元,以将计算机系统瞬时恢复到主电源异常断电之
前的系统运行状态。
5.根据权利要求4所述的基于FPGA实现的仿真内存,其特征在于,所
述内存控制模块还用于将数据断电保护操作执行完毕时,接收FPGA发出的拷
贝数据完整性检测指令,对暂存于闪存单元的拷贝数据的完整性进行检测,生
成拷贝数据完整性检测结果,并将拷贝数据完整性检测结果返回FPGA。
6.根据权利要求5所述的基于FPGA实现的仿真内存,其特征在于,所
述内存控制模块将暂存于闪存单元的拷贝数据与内存单元中的原始数据进行

\t逐字节地比对,根据字节比对结果生成拷贝数据完整性检测结果。
7.一种仿真内存的实现方法,其特征在于,包括如下步骤:
将FPGA中起到数据通信功能的第一硬件部分作为预实现的仿真内存的
通信模块,用于模拟实现真实内存的数据通道部分的功能;
从FPGA中起到数据存储功能的第二硬件部分中划定一块存储区域作为
预实现的仿真内存的存储模块,用于模拟实现真实内存的存储区域部分的功
能;
将FPGA中起到控制功能的第三硬件部分作为预...

【专利技术属性】
技术研发人员:马先明
申请(专利权)人:研祥智能科技股份有限公司深圳市研祥特种计算机软件有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1