CN107622027A - 一种多合一Flash控制器及制卡方法 - Google Patents

一种多合一Flash控制器及制卡方法 Download PDF

Info

Publication number
CN107622027A
CN107622027A CN201710854265.1A CN201710854265A CN107622027A CN 107622027 A CN107622027 A CN 107622027A CN 201710854265 A CN201710854265 A CN 201710854265A CN 107622027 A CN107622027 A CN 107622027A
Authority
CN
China
Prior art keywords
module
flash
flash memory
controller
control
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
Application number
CN201710854265.1A
Other languages
English (en)
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.)
Nanjing Yang Yang Microelectronics Technology Co Ltd
Original Assignee
Nanjing Yang Yang Microelectronics Technology 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 Nanjing Yang Yang Microelectronics Technology Co Ltd filed Critical Nanjing Yang Yang Microelectronics Technology Co Ltd
Priority to CN201710854265.1A priority Critical patent/CN107622027A/zh
Publication of CN107622027A publication Critical patent/CN107622027A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种多合一Flash控制器及制卡方法,控制器包括控制模式选择引脚、SPI/SD/EMMC总线协议解析模块、微处理器模块、数据缓存模块、闪存管理控制模块以及芯片的模拟模块;总线协议解析模块与微处理器、模拟模块以及数据缓存模块连接,总线协议解析模块外部设有控制模式选择引脚,控制模式选择引脚连接控制器内部的选择器电路,启动对应控制模式;总线协议解析模块对数据进行解析,并通知微处理器模块进行分析,内置软件针对不同的命令控制闪存管理模块进行相应的控制。该控制器将三种专用芯片功能集成到一颗芯片上,加速了芯片开发进度,有效降低了芯片设计成本和流片成本。

Description

一种多合一Flash控制器及制卡方法
技术领域
本发明属于集成电路芯片设计领域,特别涉及一种多合一Flash控制器及其制卡方法。
背景技术
目前有专用SPI Flash控制器芯片、SD Flash控制器芯片、eMMC Flash控制器芯片,基于不同的应用场景来选用不同接口类型的控制器芯片。不同接口的 Flash控制芯片只有接口协议部分不同,内部Flash控制管理部分的设计都是相同的。随着Flash容量和性能的不断提高,对Flash管理控制越来越复杂。导致控制器芯片的开发难度越来越大,工艺要求越来越高,随之而来的控制器整个开发成本很高。
发明内容
本发明的目的是提供一种将SPI、SD、eMMC三种总线协议整合在一颗芯片内部的方案。实现有效共享芯片内部设计资源,在不大幅增大Flash控制芯片面积的前提下,将三种专用芯片功能集成到一颗芯片上,加速了芯片开发进度,有效降低了芯片设计成本和流片成本。
本发明提供的一种多合一Flash控制器,所述控制器包括控制模式选择引脚、总线接口模块、微处理器模块、数据缓存模块、闪存管理控制模块;
所述总线协议解析模块与微处理器、模拟模块以及数据缓存模块连接,所述总线协议解析模块外部连接有控制模式选择引脚,所述控制模式选择引脚连接控制器内部的选择器电路,启动对应控制模式;
所述总线协议解析模块对数据进行解析,并通知微处理器模块进行分析,内置软件针对不同的命令控制闪存管理模块进行相应的控制。
所述总线协议解析模块用于解析SPI、SD、EMMC三种闪存各自对应的接口协议,所述控制模式选择引脚针对SPI、SD、EMMC三种闪存设置触发信号。
所述为处理器模块包含只读存储器和存取存储器,所述只读存储器用于存放引导程序和数据,所述存取存储器用于存储变量。
所述数据缓存模块用于存放不同型号闪存上传或下载的数据信息。
该控制器还包括程序SRAM模块,所述程序SRAM模块用于存放所述控制器对每个型号芯片的对应的控制指令、接口协议。
针对上述控制器本发明还提供一种多合一Flash控制器的制卡方法,对控制器上电,从闪存管理控制模块读取软件列表;然后从所述闪存管理控制模块将程序下载在程序SRAM上对程序进行烧制;
所述烧制过程首先通过引导程序启动到某一型号芯片模式,读取闪存管理控制模块中闪存的ID,确认闪存型号;
再将控制程序下传到闪存中;
分别针对各型号芯片进行控制程序烧制。
该方法利用Snopsys公司的design compiler工具对所述控制程序进行烧制。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
我们针对控制器芯片内部各模块利用Snopsys公司的design compiler工具,基于中芯国际SMIC 110nm的工艺库进行综合,得到各模块的面积报告。从结果来看:SD/MMC,SPI协议解析模块所占的总面积为3.6%。其他共用模块所占面积超过96%。充分说明三合一模式对于芯片面积的影响很小,也就是三合一控制器芯片相比单一芯片成本增加非常有限。但用一次芯片生产成本得到三颗不同的芯片,这样大大降低了芯片生产成本。
附图说明
图1为本发明中微处理器模块示意图;
图2为本发明中Flash管理控制模块示意图;
图3为本发明内部结构示意图;
图4、图5为制卡程序流程;
图6为芯片上电工作;
图7为SPI模式结构框图;
图8为SD模式结构框图;
图9为eMMC模式结构框图;
图10为SPI模式数据写入流程示意图;
图11为SD/eMMC模式情形1数据写入流程示意图;
图12为SD/eMMC模式情形2数据写入流程示意图。
具体实施方式
本发明的实施提供一种SPI/SD/EMMC三合一Flash控制器,为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
如图1、图2、图3所示,本发明提供的SPI/SD/EMMC三合一Flash控制器在结构上,具体为:
本发明提供的一种多合一Flash控制器,所述控制器包括控制模式选择引脚、总线接口模块、微处理器模块、数据缓存模块、闪存管理控制模块;
所述总线协议解析模块与微处理器、模拟模块以及数据缓存模块连接,所述总线协议解析模块外部连接有控制模式选择引脚,所述控制模式选择引脚连接控制器内部的选择器电路,启动对应控制模式;
所述总线协议解析模块对数据进行解析,并通知微处理器模块进行分析,内置软件针对不同的命令控制闪存管理模块进行相应的控制。
如图7、图8、图9所示,所述总线协议解析模块用于解析SPI、SD、EMMC 三种闪存各自对应的接口协议,所述控制模式选择引脚针对SPI、SD、EMMC 三种闪存设置触发信号。
所述为处理器模块包含只读存储器和存取存储器,所述只读存储器用于存放引导程序和数据,所述存取存储器用于存储变量。
所述数据缓存模块用于存放不同型号闪存上传或下载的数据信息。
该控制器还包括程序SRAM模块,所述程序SRAM模块用于存放所述控制器对每个型号芯片的对应的控制指令、接口协议。
根据模式选择信号mode_sel0,mode_sel1确定工作模式,启动相对应的接口模块(SPI/SD/eMMC),接口总线IF_Data_bus的数据会进入接口模块和数据缓存模块。接口模块进行相对应接口协议的解析,根据解析结果,如果是写入操作在 MCU模块软件的控制下把数据缓存器中的数据写入Flash闪存中。如果是读出操作,由MCU模块把数据从Flash闪存读出并写到数据缓存模块,然后启动接口模块将数据按照所选择接口协议规格送到接口总线IF_Data_bus。
针对上述控制器本发明还提供一种多合一Flash控制器的制卡方法,对控制器上电,从闪存管理控制模块读取软件列表;然后从所述闪存管理控制模块将程序下载在程序SRAM上对程序进行烧制;
所述烧制过程首先通过引导程序启动到某一型号芯片模式,读取闪存管理控制模块中闪存的ID,确认闪存型号;
再将控制程序下传到闪存中;
分别针对各型号芯片进行控制程序烧制。
该方法利用Snopsys公司的design compiler工具对所述控制程序进行烧制。
软件模式切换实现
控制芯片和Flash电路生产后,需要针对不同的flash型号写入不同的程序,这个过程称为制卡。我们采用在制卡阶段写入对应接口模式的软件的方式,而没有采用一个软件集成三总线功能的方式。这样可以减少了芯片内部软件存储模块的容量,有效利用了芯片空间,降低芯片成本。控制模块(控制器+Flash)在出厂时由制卡软件写入相对应模式的软件代码。为实现此种方式,我们在芯片内部内置SRAM,上电后可以通过ROM程序自动读取Flash中的软件代码,并载入到SRAM中。软件流程如图4、图5、图6所示。
控制器总体结构上划分为总线协议解析模块、微处理器模块和Flash管理控制模块。
1)芯片内部MCU,ROM,iRAM为微处理器模块,内置软件程序。由三种模式可以共享。,如图1所示。
2)Program0SRAM,Promgram1SRAM,SRAM Mapping Table,Flash XC, ECC,ChanelCtrl等Flash管理控制模块由三种模式可以共享。(如图2所示)
3)增加两个芯片管脚Mode_sel0,mode_sel1来选择工作模式。
4)控制器芯片内部结构如图3所示。内部模块分为SPI/SD/eMMC总线协议解析模块(Protocol interpreter),微处理器模块,数据缓存模块,Flash管理控制模块以及芯片必要的Analog模块。
5)闪存的特性是以页为单位写入数据,通用的闪存页的大小是2k字节,4k 字节,8k字节。主机对于不同总线模式的操作方式不同,SPI接口定义主机端以页(page)为单位对控制器进行读写操作,SD/eMMC接口定义主机端以512字节为单位进行读写操作。为了实现内部硬件资源共享,首先在软件结构上需要针对不同模式设计相应的处理流程。
图10至图12分别为各种闪存写入数据的流程示意图,以2k bytes page写入为例子。为了共享内部数据缓存资源。
SPI接口数据写入过程,SPI模式因为是以页为单位进行读写操作。需要一页字节的数据缓冲空间,为了不增加额外的ram,硬件设计上把SD/eMMC模式下用于copy-back功能的16k SRAM,用于SPI模式下的数据缓存0和数据缓存 1。写入流程如图10。
同样以一页2k字节为例子,SD/eMMC接口定义主机以512字节为单位写入,所以SD/eMMC需要增加一个数据处理模块,将数据凑齐2k字节才能写入闪存。此处分两种情形,情形1:主机下发的数据,正好满2k字节,软件只要把这2k数据写入页数据缓存,然后写入flash即可,如图11。
情形2:主机下发的数据不足2k字节,就停止了传输,此时软件需要从Flash 读取要写入页的数据,并复制不足的部分数据到页数据缓存,把一页凑齐然后写入flash。
采用软件实现控制器内各闪存的数据共享功能还有很多种,就不一一列举了。采用本发明所提供的三合一flash控制器能够有效利用控制器的各功能模块,节约控制器成本。
如图4至图6所示,控制器设计方法为:
1)控制器工作模式设定:通过外置管脚设定。
2)设定工作模式后,内部由选择器电路启动相应的总线协议解析模块。
3)同时微处理器模块也切换到相应总线协议处理模式。
4)总线协议解析模块对数据进行解析,并通知微处理器模块进行分析,内置软件针对不同的命令控制闪存管理模块进行相应的处理。
本实施例针对控制器芯片内部各模块利用Snopsys公司的design compiler工具,基于中芯国际SMIC 110nm的工艺库进行综合,得到各模块的面积报告。从结果(表1)来看:SD/MMC,SPI协议解析模块所占的总面积为3.6%。其他共用模块所占面积超过96%。充分说明三合一模式对于芯片面积的影响很小,也就是三合一控制器芯片相比单一芯片成本增加非常有限。但用一次芯片生产成本得到三颗不同的芯片,这样大大降低了芯片生产成本。
表1
本发明具体应用途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进,这些改进也应视为本发明的保护范围。

Claims (7)

1.一种多合一Flash控制器,其特征在于,所述控制器包括控制模式选择引脚、总线接口模块、微处理器模块、数据缓存模块、闪存管理控制模块;
所述总线协议解析模块与微处理器、模拟模块以及数据缓存模块连接,所述总线协议解析模块外部连接有控制模式选择引脚,所述控制模式选择引脚连接控制器内部的选择器电路,启动对应控制模式;
所述总线协议解析模块对数据进行解析,并通知微处理器模块进行分析,内置软件针对不同的命令控制闪存管理模块进行相应的控制。
2.根据权利要求1所述的一种多合一Flash控制器,其特征在于,所述总线协议解析模块用于解析SPI、SD、EMMC三种闪存各自对应的接口协议,所述控制模式选择引脚针对SPI、SD、EMMC三种闪存设置触发信号。
3.根据权利要求1所述的一种多合一Flash控制器,其特征在于,所述为处理器模块包含只读存储器和存取存储器,所述只读存储器用于存放引导程序和数据,所述存取存储器用于存储变量。
4.根据权利要求1所述的一种多合一Flash控制器,其特征在于,所述数据缓存模块用于存放不同型号闪存上传或下载的数据信息。
5.根据权利要求1至4任一项所述的一种多合一Flash控制器,其特征在于,该控制器还包括程序SRAM模块,所述程序SRAM模块用于存放所述控制器对每个型号芯片的对应的控制指令、接口协议。
6.一种多合一Flash控制器的制卡方法,其特征在于,对控制器上电,从闪存管理控制模块读取软件列表;然后从所述闪存管理控制模块将程序下载在程序SRAM上对程序进行烧制;所述烧制过程首先通过引导程序启动到某一型号芯片模式,读取闪存管理控制模块中闪存的ID,确认闪存型号;
再将控制程序下传到闪存中;
分别针对各型号芯片进行控制程序烧制。
7.根据权利要求6所述的一种多合一Flash控制器的制卡方法,其特征在于,该方法利用Snopsys公司的design compiler工具对所述控制程序进行烧制。
CN201710854265.1A 2017-09-20 2017-09-20 一种多合一Flash控制器及制卡方法 Pending CN107622027A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710854265.1A CN107622027A (zh) 2017-09-20 2017-09-20 一种多合一Flash控制器及制卡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710854265.1A CN107622027A (zh) 2017-09-20 2017-09-20 一种多合一Flash控制器及制卡方法

Publications (1)

Publication Number Publication Date
CN107622027A true CN107622027A (zh) 2018-01-23

Family

ID=61090099

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710854265.1A Pending CN107622027A (zh) 2017-09-20 2017-09-20 一种多合一Flash控制器及制卡方法

Country Status (1)

Country Link
CN (1) CN107622027A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108287671A (zh) * 2018-04-10 2018-07-17 南京扬贺扬微电子科技有限公司 一种具有boot功能的SD卡及其制卡方法
CN111817924A (zh) * 2020-09-01 2020-10-23 深圳芯邦科技股份有限公司 一种测试方法及相关设备
CN112395218A (zh) * 2020-10-29 2021-02-23 南京扬贺扬微电子科技有限公司 具有DDR高传输介面的新型SPI-NAND Flash存储芯片及操作方法
CN114816571A (zh) * 2022-04-15 2022-07-29 西安广和通无线通信有限公司 外挂闪存的方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060184724A1 (en) * 2005-02-11 2006-08-17 M-Systems Flash Disk Pioneers, Ltd. NAND flash memory system architecture
CN101004798A (zh) * 2006-12-30 2007-07-25 凤凰微电子(中国)有限公司 支持高性能计算、大容量存储、高速传输和新型应用的智能卡
CN101527161A (zh) * 2009-04-23 2009-09-09 浙江正原电气股份有限公司 一种快速烧写NAND flash的方法和装置
CN101814058A (zh) * 2010-03-17 2010-08-25 苏州国芯科技有限公司 通用存储装置
CN205670293U (zh) * 2016-05-25 2016-11-02 北京润科通用技术有限公司 一种数据存储系统
CN106569839A (zh) * 2015-10-08 2017-04-19 华为技术有限公司 电路板及其固件烧录方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060184724A1 (en) * 2005-02-11 2006-08-17 M-Systems Flash Disk Pioneers, Ltd. NAND flash memory system architecture
CN101004798A (zh) * 2006-12-30 2007-07-25 凤凰微电子(中国)有限公司 支持高性能计算、大容量存储、高速传输和新型应用的智能卡
CN101527161A (zh) * 2009-04-23 2009-09-09 浙江正原电气股份有限公司 一种快速烧写NAND flash的方法和装置
CN101814058A (zh) * 2010-03-17 2010-08-25 苏州国芯科技有限公司 通用存储装置
CN106569839A (zh) * 2015-10-08 2017-04-19 华为技术有限公司 电路板及其固件烧录方法
CN205670293U (zh) * 2016-05-25 2016-11-02 北京润科通用技术有限公司 一种数据存储系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108287671A (zh) * 2018-04-10 2018-07-17 南京扬贺扬微电子科技有限公司 一种具有boot功能的SD卡及其制卡方法
CN111817924A (zh) * 2020-09-01 2020-10-23 深圳芯邦科技股份有限公司 一种测试方法及相关设备
CN112395218A (zh) * 2020-10-29 2021-02-23 南京扬贺扬微电子科技有限公司 具有DDR高传输介面的新型SPI-NAND Flash存储芯片及操作方法
CN112395218B (zh) * 2020-10-29 2024-04-09 南京扬贺扬微电子科技有限公司 具有DDR高传输介面的SPI-NAND Flash存储芯片及操作方法
CN114816571A (zh) * 2022-04-15 2022-07-29 西安广和通无线通信有限公司 外挂闪存的方法、装置、设备及存储介质
CN114816571B (zh) * 2022-04-15 2023-06-16 西安广和通无线通信有限公司 外挂闪存的方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN107622027A (zh) 一种多合一Flash控制器及制卡方法
CN107977217B (zh) 在线加载xilinx-fpga多版本更新程序的方法
US10296217B2 (en) Techniques to configure a solid state drive to operate in a storage mode or a memory mode
US7856546B2 (en) Configurable processor module accelerator using a programmable logic device
CN106951388A (zh) 一种基于PCIe的DMA数据传输方法及系统
EP4009184A1 (en) Network-on-chip data processing method and device
CN106707848A (zh) 一种控制系统的控制程序组织结构和下载方法
CN107832078B (zh) 基于dsp的fpga程序在线更新电路
CN106843955A (zh) 基于文件压缩及非接触式的fpga动态配置方法
CN102736938A (zh) Fpga配置程序的烧写方法
CN101334758A (zh) 用于嵌入式系统扩展存储空间的装置和方法
CN105446920A (zh) 基于龙芯的fpga嵌入式计算机及其配置方法
CN102253844B (zh) 一种启动处理器的方法和设备
CN104461660A (zh) 一种异构系统的多模式动态加载方法
CN108153536B (zh) 一种动态调整ram空间的dsp在线升级方法
CN103678187A (zh) 一种微控制单元及其控制方法
US20200133649A1 (en) Processor controlled programmable logic device modification
CN201708785U (zh) 一种实现fpga实时动态配置的系统
CN104714792A (zh) 多进程共享数据处理方法和装置
CN101788946B (zh) Cpld上连接有e2prom设备的固件烧结方法及装置
CN203250312U (zh) 一种接口形式可扩展的通用核心处理子板
CN108399076A (zh) 一种基于uefi的固件更新方法与装置
CN109656838A (zh) 处理器系统及其存储器控制方法
WO2020113421A1 (zh) 一种挂载文件系统的方法、终端设备及存储介质
CN106571156B (zh) 一种高速读写ram的接口电路及方法

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: 20180123

RJ01 Rejection of invention patent application after publication