CN107908579A - 一种ONFI与eMMC接口高速转换装置 - Google Patents
一种ONFI与eMMC接口高速转换装置 Download PDFInfo
- Publication number
- CN107908579A CN107908579A CN201710913675.9A CN201710913675A CN107908579A CN 107908579 A CN107908579 A CN 107908579A CN 201710913675 A CN201710913675 A CN 201710913675A CN 107908579 A CN107908579 A CN 107908579A
- Authority
- CN
- China
- Prior art keywords
- emmc
- onfi
- modules
- data
- 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
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/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/387—Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
-
- 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/382—Information transfer, e.g. on bus using universal interface adapter
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种ONFI与eMMC接口高速转换装置,其特征在于包括ONFI接口模块、转换模块和eMMC接口模块,ONFI接口模块和eMMC接口模块通过转换模块相连接;所述转换模块包括eMMC控制模块、命令检测模块、状态反馈模块和数据缓存通路;所述命令检测模块分别与ONFI接口模块、状态反馈模块和eMMC控制模块相连接;所述状态反馈模块分别与ONFI接口模块、eMMC控制模块、数据缓存通路和命令检测模块相连接;所述数据缓存通路分别与状态反馈模块、ONFI接口模块和eMMC控制模块相连接。只需通过实现本ONFI与eMMC接口高速转换装置即可以实现ONFI控制芯片与eMMC颗粒之间的数据传输,而不需要重新设计ONFI控制芯片,具有成本低,开发周期短的优点。
Description
技术领域
本发明涉及固态硬盘控制领域,特别涉及一种ONFI与eMMC接口高速转换装置。
背景技术
ONFI规范的由来ONFI(Open NAND Flash Interface,开放式NAND快闪存储器接口规范)是一种Flash闪存接口的标准,它是Intel为统一当初混乱的闪存接口所倡导的标准,ONFI是为了方便Flash的设计封装进行统一制定的标准。eMMC是目前被广泛使用的嵌入式多媒体存储介质;ONFI接口则是NAND Flash及其控制芯片的主流接口,eMMC是为了方便应用开发方便统一和屏蔽NAND FLASH的一些特性,内部实行对NAND FLASH进行有效的管理而设计的。主机使用通过eMMC接口访问固态硬盘,eMMC控制器再通过ONFI接口访问和管理NAND FLASH器件。然而近年来NAND Flash工艺迭代频繁,因此必须重新设计NAND flash控制芯片来配合NAND Flash的更新迭代,具有成本高,开发周期长的缺点。
发明内容
针对以上缺陷,本发明目的是如何提高NAND Flash控制器的兼容性,缩短产品开发周期。
为了解决以上问题本发明提出了一种ONFI与eMMC接口高速转换装置,其特征在于包括ONFI接口模块、转换模块和eMMC接口模块,ONFI接口模块和eMMC接口模块通过转换模块相连接;所述ONFI接口模块实现与NAND FLASH控制器按ONFI标准实现数据通信,所述eMMC接口模块实现与eMMC颗粒实现数据通信;所述转换模块包括eMMC控制模块、命令检测模块、状态反馈模块和数据缓存通路;所述命令检测模块分别与ONFI接口模块、状态反馈模块和eMMC控制模块相连接;所述状态反馈模块分别与ONFI接口模块、eMMC控制模块、数据缓存通路和命令检测模块相连接;所述数据缓存通路分别与状态反馈模块、ONFI接口模块和eMMC控制模块相连接。
所述的ONFI与eMMC接口高速转换装置,其特征在于所述的命令检测模块接收来自ONFI接口模块的命令信息和读写擦地址信息,并将命令分类为读写擦命令和Feature命令;将读写擦命令直接下发给eMMC控制模块;Feature命令先进行解析并转换为通用的总线格式再下发给eMMC控制模块。
所述的ONFI与eMMC接口高速转换装置,其特征在于所述的数据缓存通路实现接收来自ONFI接口的数据并转发给eMMC控制模块,或者接收eMMC控制模块的数据并转发ONFI接口;数据缓存通路的数据通路采用一组乒乓RAM来实现数据流水,采用一个CRC模块来实现校验数据完整性。
所述的ONFI与eMMC接口高速转换装置,其特征在于所述eMMC控制模块包括通用eMMC主机控制器、总线模块、读写擦控制模块和Feature命令转换模块;读写擦控制模块直接接收来自命令检测模块下发的读写擦命令和数据地址,并将其转换成一系列的总线操作,直接控制通用eMMC主机控制器发起读写擦操作;Feature命令转换模块接收来自命令检测模块的Feature命令,并转换成对应的总线操作来直接配置通用eMMC主机控制器的内部寄存器从而实现预定的功能;通用eMMC主机控制器的主端总线与数据缓存通路的从端相接,通过DMA的方式从数据缓存通路中主动获取数据或者将数据下发至数据缓存通路。
所述的ONFI与eMMC接口高速转换装置,其特征在于所述状态反馈ONFI接口模块、数据缓存通路、eMMC控制模块和命令检测模块的运行产生的状态信息,并将各种状态转换为ONFI格式的状态信息通过ONFI接口返回。
本发明取得的有益效果:eMMC将NAND Flash及其控制器封装在内部,通过eMMC接口即可进行数据传输,因此只需通过实现本ONFI与eMMC接口高速转换装置即可以实现ONFI控制芯片与eMMC颗粒之间的数据传输,而不需要重新设计ONFI控制芯片。具有成本低,开发周期短的优点。
附图说明
图1是外部连接示意图;
图2是ONFI与eMMC接口高速转换装置系统框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是外部连接示意图;外部的ONFI控制芯片可以通过ONFI与eMMC接口高速转换装置与eMMC颗粒进行数据通信。ONFI与eMMC接口高速转换装置相对于ONFI控制芯片是从设备,相对于eMMC颗粒则为主设备。
图2是ONFI与eMMC接口高速转换装置系统框图,ONFI与eMMC接口高速转换装置包括ONFI接口模块、转换模块和eMMC接口模块,ONFI接口模块和eMMC接口模块通过转换模块相连接;ONFI接口模块实现与NAND FLASH控制器按ONFI标准实现数据通信,eMMC接口模块实现与eMMC颗粒实现数据通信;转换模块包括eMMC控制模块、命令检测模块、状态反馈模块和数据缓存通路;命令检测模块分别与ONFI接口模块、状态反馈模块和eMMC控制模块相连接;状态反馈模块分别与ONFI接口模块、eMMC控制模块、数据缓存通路和命令检测模块相连接;数据缓存通路分别与状态反馈模块、ONFI接口模块和eMMC控制模块相连接。eMMC控制模块包括通用eMMC主机控制器、总线模块、读写擦控制模块和Feature命令转换模块。
ONFI接口模块用来接收命令和传输数据,通过一个命令检测模块将ONFI命令转译并下发至eMMC控制模块,eMMC控制模块的eMMC控制电路根据不同的命令通过eMMC总线接口发起各种命令;ONFI接口写入的数据通过内部数据通路,由eMMC控制电路获得数据并从eMMC接口模块发出,eMMC接口接收的读数据将写入内部数据通路,并通过ONFI接口发出;数据传输状态则通过一个状态反馈模块由ONFI接口获取。
主要模块功能描述如下:
ONFI接口模块:是与NAND Flash控制器进行数据通信的主要接口,包括接收NANDFlash控制器的命令和数据,返回命令状态和数据,在该模块中实现命令、地址、状态以及数据分别管理和传输。
eMMC接口模块:与eMMC颗粒进行数据通行的主要接口,包括发起eMMC命令,接口eMMC响应,发送并接受数据等。
命令检测模块:接收来自ONFI接口模块的命令信息和读写擦地址信息。为了达到高性能,读写擦这类命令将单独进行处理,并直接下发eMMC控制模块。除读写擦的其他命令,如feature命令,将解析并转换为通用的总线格式,如AXI/AHB/APB等。
数据缓存通路:接收来自ONFI接口模块的数据并由eMMC控制模块获取,或者接收eMMC控制模块的数据并由ONFI接口模块获取。该模块中实现了一组乒乓RAM来实现数据流水,同时设计了一个CRC模块来保证数据完整性。
eMMC控制模块:实现eMMC主机端功能的模块,包括发起各类eMMC命令和读写数据操作。命令,响应以及数据将通过eMMC接口模块与外部eMMC颗粒通行。该模块主要包含了一个通用的eMMC主机控制器,该控制器为市场主流的通用IP,通过通用总线(AXI/AHB)实现对与外部模块的数据交互和控制。在该模块中,通用eMMC主机控制器的从端总线将与读写擦控制模块和feature转总线模块相接。读写擦控制模块接收来自命令检测模块下发的读写擦命令和数据地址,并将其转换成一系列的总线操作,直接控制通用eMMC主机控制器发起读写擦操作。Feature转总线模块则接收来自命令检测模块的feature命令,并转换成对应的总线操作来配置通用eMMC主机控制器的内部寄存器从而实现特定的功能。同时通用eMMC主机控制器的主端总线将与数据缓存通路的从端相接,通过DMA(不同的eMMC主机IP可能有不同的实现方式)的方式从数据缓存通路中主动获取数据或者将数据下发至数据缓存通路。
状态反馈模块:承担整个系统的状态收集和状态反馈,接收来自各个主要模块中产生的状态信息,并将各种状态转换为ONFI格式的状态信息通过ONFI接口返回。
通过上述模块以及模块间数据流的定义,可以实现ONFI端与eMMC端的数据传输。
通用eMMC主机控制器需要通过总线配置内部寄存器来实现其eMMC控制器的功能。具有实施是例如:定义set_feature命令为总线写操作,将feature命令的地址映射为寄存器的总线的地址,发送的32比特数据为总线写入的数据;定义get_feature命令为总线读操作;将feature命令的地址映射为寄存器的总线的地址,接收的32比特数据即为总线读出的数据。通过命令检测模块检测set/get_feature命令,并通过feature转总线模块将命令转换为具体的总线读写操作。通过上述的命令设计就可以实现外部ONFI控制器对内部通用eMMC主机控制器的配置,从而实现了对外部eMMC颗粒的管理和控制。
为了实现数据的高效传输,通用eMMC主机控制器需要快速响应读写命令,因此对读写命令需要进行单独的处理。在本方案中,通过命令检测模块识别读写命令并下发至eMMC控制模块的读写擦控制模块。根据通用eMMC主机控制器的读写操作规则,读写命令在读写擦控制模块中将转换为具体的总线操作直接配置通用eMMC主机控制器进入读写数据模式,通用eMMC主机控制器将向外部eMMC颗粒下发eMMC读写命令并传输或接收数据。
eMMC要实现高速传输,需要进行大量连续数据的传输,因此需要对读写命令进行一些特殊处理来实现数据的连续传输。在本方案中,使用页缓存编程命令(page cacheprogram)作为连续数据编程操作的命令,使用页编程命令(page program)作为连续数据编程的最后一笔数据编程命令。eMMC控制模块在收到第一个页缓存编程命令后立即发起写操作,向外部eMMC颗粒发起连续数据块写命令(CMD25)并开始发送块数据,在收到页编程命令后,待最后一笔数据发送完成后,发送传输中止命令结束传输。同样在读操作时,使用回拷命令(copyback)作为连续数据读的命令标示,下发的回拷命令的数目代表连续读数据的块数,最后通过相同数目的读命令读取数据。eMMC控制模块在收到第一个回拷命令的后立即下发多块读命令(CMD18),并从eMMC颗粒接收读数据,在接收到最后一块读数据后,发起传输中止命令结束传输。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。
Claims (5)
1.一种ONFI与eMMC接口高速转换装置,其特征在于包括ONFI接口模块、转换模块和eMMC接口模块,ONFI接口模块和eMMC接口模块通过转换模块相连接;所述ONFI接口模块实现与NAND FLASH控制器按ONFI标准实现数据通信,所述eMMC接口模块实现与eMMC颗粒实现数据通信;所述转换模块包括eMMC控制模块、命令检测模块、状态反馈模块和数据缓存通路;所述命令检测模块分别与ONFI接口模块、状态反馈模块和eMMC控制模块相连接;所述状态反馈模块分别与ONFI接口模块、eMMC控制模块、数据缓存通路和命令检测模块相连接;所述数据缓存通路分别与状态反馈模块、ONFI接口模块和eMMC控制模块相连接。
2.根据权利要求1所述的ONFI与eMMC接口高速转换装置,其特征在于所述的命令检测模块接收来自ONFI接口模块的命令信息和读写擦地址信息,并将命令分类为读写擦命令和Feature命令;将读写擦命令直接下发给eMMC控制模块;Feature命令先进行解析并转换为通用的总线格式再下发给eMMC控制模块。
3.根据权利要求2所述的ONFI与eMMC接口高速转换装置,其特征在于所述的数据缓存通路实现接收来自ONFI接口的数据并转发给eMMC控制模块,或者接收eMMC控制模块的数据并转发ONFI接口;数据缓存通路的数据通路采用一组乒乓RAM来实现数据流水,采用一个CRC模块来实现校验数据完整性。
4.根据权利要求3所述的ONFI与eMMC接口高速转换装置,其特征在于所述eMMC控制模块包括通用eMMC主机控制器、总线模块、读写擦控制模块和Feature命令转换模块;读写擦控制模块直接接收来自命令检测模块下发的读写擦命令和数据地址,并将其转换成一系列的总线操作,直接控制通用eMMC主机控制器发起读写擦操作;Feature命令转换模块接收来自命令检测模块的Feature命令,并转换成对应的总线操作来直接配置通用eMMC主机控制器的内部寄存器从而实现预定的功能;通用eMMC主机控制器的主端总线与数据缓存通路的从端相接,通过DMA的方式从数据缓存通路中主动获取数据或者将数据下发至数据缓存通路。
5.根据权利要求4所述的ONFI与eMMC接口高速转换装置,其特征在于所述状态反馈ONFI接口模块、数据缓存通路、eMMC控制模块和命令检测模块的运行产生的状态信息,并将各种状态转换为ONFI格式的状态信息通过ONFI接口返回。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710913675.9A CN107908579A (zh) | 2017-09-30 | 2017-09-30 | 一种ONFI与eMMC接口高速转换装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710913675.9A CN107908579A (zh) | 2017-09-30 | 2017-09-30 | 一种ONFI与eMMC接口高速转换装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107908579A true CN107908579A (zh) | 2018-04-13 |
Family
ID=61840379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710913675.9A Pending CN107908579A (zh) | 2017-09-30 | 2017-09-30 | 一种ONFI与eMMC接口高速转换装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107908579A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102411480A (zh) * | 2010-05-11 | 2012-04-11 | 马维尔国际贸易有限公司 | 具有嵌入有控制模块的固态存储器的混合存储系统 |
CN103280238A (zh) * | 2013-06-27 | 2013-09-04 | 山东量子科学技术研究院有限公司 | 基于FPGA的eMMC控制器及其工作方法 |
CN105389283A (zh) * | 2015-12-11 | 2016-03-09 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于CoreConnect总线的电子盘控制器电路及控制方法 |
CN105549916A (zh) * | 2015-12-31 | 2016-05-04 | 湖南国科微电子股份有限公司 | PCIe固态硬盘控制器、基于PCIe的存储系统及其数据读写方法 |
US9372632B2 (en) * | 2011-08-26 | 2016-06-21 | Sandisk Technologies Inc. | Controller with extended status register and method of use therewith |
CN106776391A (zh) * | 2016-12-13 | 2017-05-31 | 成都信息工程大学 | 一种NAND Flash控制器的控制方法和装置 |
-
2017
- 2017-09-30 CN CN201710913675.9A patent/CN107908579A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102411480A (zh) * | 2010-05-11 | 2012-04-11 | 马维尔国际贸易有限公司 | 具有嵌入有控制模块的固态存储器的混合存储系统 |
US9372632B2 (en) * | 2011-08-26 | 2016-06-21 | Sandisk Technologies Inc. | Controller with extended status register and method of use therewith |
CN103280238A (zh) * | 2013-06-27 | 2013-09-04 | 山东量子科学技术研究院有限公司 | 基于FPGA的eMMC控制器及其工作方法 |
CN105389283A (zh) * | 2015-12-11 | 2016-03-09 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于CoreConnect总线的电子盘控制器电路及控制方法 |
CN105549916A (zh) * | 2015-12-31 | 2016-05-04 | 湖南国科微电子股份有限公司 | PCIe固态硬盘控制器、基于PCIe的存储系统及其数据读写方法 |
CN106776391A (zh) * | 2016-12-13 | 2017-05-31 | 成都信息工程大学 | 一种NAND Flash控制器的控制方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101599004B (zh) | 基于fpga的sata控制器 | |
CN103034603B (zh) | 多通道闪存卡控制装置及其控制方法 | |
CN103559152B (zh) | 基于pcie协议的cpu访问本地总线的装置及方法 | |
CN102495920B (zh) | 一种FPGA用基于PCIe的集成化逻辑分析模块 | |
CN105183680B (zh) | 实现PCIe接口转CF卡接口的FPGA芯片及方法 | |
CN108228513B (zh) | 一种基于fpga架构的智能串口通讯装置 | |
CN105573951B (zh) | 一种针对数据流传输的ahb总线接口系统 | |
CN204028898U (zh) | 一种硬盘、兼容多种固态硬盘任意混插的服务器 | |
CN105224482A (zh) | 一种fpga加速卡高速存储系统 | |
CN101436171B (zh) | 模块化通信控制系统 | |
US11899612B2 (en) | Online upgrading method and system for multi-core embedded system | |
CN103218337B (zh) | 基于wishbone总线实现主与主、从与从通信的片上系统和方法 | |
CN102609389A (zh) | 一种基于vpx总线实现的数字信号处理平台 | |
CN104811643B (zh) | 基于sd卡阵列的图像数据高速存储系统 | |
CN101414291A (zh) | 一种主从分布式系统和应用于该系统的并行通信方法 | |
CN103403667A (zh) | 数据处理方法和设备 | |
CN101162448A (zh) | 一种usb高速数据隧道的硬件传输方法 | |
CN107957970A (zh) | 一种异构多核的通讯方法及固态硬盘控制器 | |
CN104714918A (zh) | 主机环境下高速fc总线数据接收及缓冲方法 | |
CN107908587A (zh) | 基于usb3.0的实时数据采集传输装置 | |
CN104239252A (zh) | 数据存储系统的数据传输方法、装置及系统 | |
CN102521184A (zh) | 一种在pci总线上实现数据高速传输的方法 | |
CN209624766U (zh) | 一种基于fpga的高速信号采集存储及回放系统 | |
CN105718396B (zh) | 一种大数据主设备传输的i2c总线装置及其通讯方法 | |
CN101021821A (zh) | 先进高性能系统总线连接装置及先进高性能系统总线装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180413 |