【技术实现步骤摘要】
基于FPGA的eMMC控制器及其工作方法
本专利技术涉及eMMC存储控制器领域,尤其涉及基于FPGA的eMMC控制器及其工作方法。
技术介绍
传统的大容量存储介质多采用NANDFLASH,NANDFLASH生产厂商主要包括:三星、东芝、美光和海力士等,由于NANDFLASH存储芯片没有固定的标准,如果当前的NANDFLASH不能满足当前需求而需要更换时,硬件和驱动程序都需要根据每家公司的产品和技术特性来重新设计;另外NANDFLASH产品几乎每年制程技术都会推陈出新,导致相应存储介质的更新换代,相应的NANDFLASH驱动程序需要重新设计,这不但增加了产品的研发周期,也给项目带来了开发成本和开发效率等多方面的浪费。由于NANDFLASH的制程工艺不能保证在其生命周期中保持性能的可靠,因此在NANDFLASH的生产及使用过程中将会不可避免的产生坏块,因而,为保证其所存储数据的可靠性,NANDFLASH的驱动程序需增加坏块管理。如果操作时序和电路稳定性不存在问题的话,NANDFLASH一般不会造成整个块或者整个页不能读取或是全部出错,而会出现整个块或者整个页中只有一个或者几个bit出错,因而驱动程序中需加入ECC除错机制来提升数据传输的可靠性。由于NANDFLASH每个块的最大擦写次数是一定的,大约为一百万次,为延长NANDFLASH的使用寿命,驱动程序中需加入平均抹写储存区块技术。而随着NANDFLASH的更新换代,驱动程序中的坏块管理、ECC除错机制和平均抹写储存区块技术都需要进行重新设计,这样会给项目带来多方面的浪费。eMMC为MMC协会所订立的内嵌式存 ...
【技术保护点】
基于FPGA的eMMC控制器,其特征是,包括初始化模块、主控模块、eMMC接口逻辑模块、数据处理模块和时钟控制模块;所述初始化模块与eMMC接口逻辑模块双向通信,所述主控模块分别与eMMC接口逻辑模块和数据处理模块双向通信,所述时钟控制模块分别与初始化模块、主控模块和eMMC接口逻辑模块连接;工作时,所述初始化模块与上层应用系统通信,所述主控模块与上层应用系统双向通信,所述eMMC接口逻辑模块和数据处理模块均与eMMC芯片双向通信,所述数据处理模块通过外部缓存与上层应用系统双向通信。
【技术特征摘要】
1.基于FPGA的eMMC控制器,其特征是,包括初始化模块、主控模块、eMMC接口逻辑模块、数据处理模块和时钟控制模块;所述初始化模块与eMMC接口逻辑模块双向通信,所述主控模块分别与eMMC接口逻辑模块和数据处理模块双向通信,所述时钟控制模块分别与初始化模块、主控模块和eMMC接口逻辑模块连接;工作时,所述初始化模块与上层应用系统通信,所述主控模块与上层应用系统双向通信,所述eMMC接口逻辑模块和数据处理模块均与eMMC芯片双向通信,所述数据处理模块通过外部缓存与上层应用系统双向通信;所述初始化模块与eMMC接口逻辑模块进行交互,向eMMC接口逻辑模块发送初始化所需命令,通过eMMC接口逻辑模块控制eMMC芯片来完成对eMMC芯片的初始化,包括eMMC芯片的识别、电压匹配、模式配置;初始化完成后,所述初始化模块向上层应用系统发送初始化完成的标志信号;所述模式配置为在eMMC芯片进入Transfer_state后,对eMMC芯片进行高速模式、数据位宽及数据单双沿模式的配置;将eMMC芯片配置为8位数据位宽和双沿模式。2.如权利要求1所述的基于FPGA的eMMC控制器,其特征是,所述主控模块与上层应用系统进行交互,根据上层应用系统发来的读写命令、读写地址及读写长度,通过向eMMC接口逻辑模块和数据处理模块发送对应的控制命令,来完成数据的存储和读取。3.如权利要求1所述的基于FPGA的eMMC控制器,其特征是,所述eMMC接口逻辑模块负责实现eMMC底层的物理规范协议,按照协议中的时序驱动eMMC芯片,根据初始化模块和主控模块发来的控制命令,实现对eMMC芯片的控制,同时完成对命令的CRC校验。4.如权利要求1所述的基于FPGA的eMMC控制器,其特征是,所述数据处理模块与主控模块和eMMC芯片进行交互,读取上层应用系统写入外部缓存的数据并写入eMMC芯片中,读取eMMC芯片中的数据并写入外部缓存中,同时完成数据的CRC校验。5.如权利要求1所述的基于FPGA的eMMC控制器,其特征是,所述时钟控制模块为整个eMMC控制器在相应阶段提供所需的时钟信号,并控制实现时钟的切换。6.如上述任一权利要求所述的基于FPGA的eMMC控制器所采用的工作方法,其特征是,分为如下步骤:步骤(1):系统上电后,eMMC控制器首先对eMMC芯片进行初始化操作;步骤(2):初始化操作完成后,eMMC控制器向上层应用系统发出初始化完成的标志信号;步骤(3):eMMC控制器等待上层应用系统发送的控制命令;步骤(4):eMMC控制器收到上层应用系统发来的控制命令,包括读写命令、读写地址及读写长度,首先判断命令属性,根据命令属性对eMMC芯片进行相应的控制操作,操作完成后回到步骤(3)。7.如权利要求6所述的基于FPGA的eMMC控制器所采用的工作方法,其特征是,所述初始化操作包括eMMC芯片的识别、电压匹配、模式配置;所述模式配置为在eMMC芯片进入Transfer_state后,对eMMC芯片进行高速模式、数据位宽及数据单双沿模式的配置。8.如权利要求7所述的基于FPGA的eMMC控制器所采用的工作方法,其特征是,所述模式配置为将eMMC芯片配置为8位数据位宽和双沿模式。9.如权利要求6所述的基于FPGA的eMMC控制器所采用的工作方法,其特征是,所述步骤(4)中,如果所判断的命令属性为单块写命令,则对eMMC芯片进行单块写操作的工作流程如下:步骤(4a-1):主控模块向eMMC接口逻辑模块发送CMD24单块写命令;步骤(4a-2):单块写命令CMD24发送成功后,主控模块向数据处理模块发送开始写入数据的信号,数据处理模块读取上层应用系统写入外部缓存的数据,并按照协议所规定的...
【专利技术属性】
技术研发人员:周杰,郝立燕,李建厂,张健,周雷,
申请(专利权)人:山东量子科学技术研究院有限公司,安徽量子通信技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。