[发明专利]支持多种闪存芯片的驱动方法无效
申请号: | 200710170489.7 | 申请日: | 2007-11-16 |
公开(公告)号: | CN101436137A | 公开(公告)日: | 2009-05-20 |
发明(设计)人: | 孟祥宁 | 申请(专利权)人: | 希姆通信息技术(上海)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 上海智信专利代理有限公司 | 代理人: | 薛 琦 |
地址: | 200051上海市长宁*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 支持 多种 闪存 芯片 驱动 方法 | ||
技术领域
本发明涉及一种闪存(flash)驱动方法,适用于需要用闪存作为程序空间的设备。
背景技术
由于现在闪存种类繁多,各个厂家对闪存类型及读写操作也有所不同,所以给软件管理带来诸多的不便。例如,当前硬件所使用的由闪存厂商所生产产品是Spansion品牌,由于闪存产品供应不足问题需要更换闪存厂商产品,所以就必须重新写一套闪存驱动程序来适应新的硬件,这不仅给软件管理、测试工作带来不便,而且也会对生产带来诸多的不便。又如,如果为了备料的方便,往往在立项前就选定多个厂家的闪存产品,以防闪存产品供应不上的问题。但是,这会有对程序的管理带来诸多的不便,因为对应不同的闪存芯片,虽然在功能上是一致的,但是还是需要有相应的闪存驱动版本的程序。
发明内容
本发明的目的就是为了解决以上问题,提供一种闪存驱动的整合方案,以实现对不同厂商生产闪存芯片的兼容,减少软件维护的工作量。
为实现上述目的,本发明提出一种闪存驱动的整合方法,包括如下步骤:
S1建立AMD以及intel指令集驱动程序的表;
S2当设备上电时,从闪存芯片中读取厂商信息;
S3根据厂商的信息,调用相应的闪存驱动程序。
所述步骤S1主要是为了在之后能够容易实现闪存驱动程序的调用。
所述步骤S2中读取厂商信息(生产厂商ID,器件ID),由于闪存读写指令集分为两大类(AMD和intel),所以在读取厂商信息时需要用两种指令集来读取,具体步骤包括:
S21用AMD指令集读取闪存的厂商信息;
S22用intel指令集读取闪存的厂商信息;
所述步骤S3中根据厂商的信息,调用相应的闪存驱动程序,步骤包括:
S31、建立各种闪存厂商信息表;
S32、用读到的厂商信息与已建立的闪存厂商的信息进行比较,判别出可能的生产厂商及闪存型号。
S33、最后根据上述这些信息,选取相应的闪存驱动程序。
其中在步骤S31中所建立的闪存厂商信息表,是事先写好的存放在闪存芯片中的表,该表中的内容有:闪存生产厂商ID,闪存器件ID,闪存的区段(sector)表,闪存存储空间大小以及所用的驱动类型。
本发明的优点是:由于采用本发明的方案,程序可以自动识别闪存的类型,从而使闪存驱动整合得以实现。
附图说明
图1为读取闪存厂商信息流程示意图。
图2为根据厂商的信息调用相应的闪存驱动流程示意图。
具体实施方式
下面通过具体的实施例并结合附图对本发明作进一步详细的描述。
例如,如果闪存芯片是KS01608 Bottom Boot,那么在程序中就必须先建立该闪存的各种信息。如,该芯片的信息:厂商ID(memocom):0x89,器件ID:0x88C3,适用的驱动指令集:intel指令集,闪存的map表为16M Bottom类型。
见图1,在步骤1001模块上电后,步骤1002用AMD指令集读取闪存厂商信息,可以读到的厂商ID为0x89,器件ID为0x88C3。步骤1003用intel指令集读取闪存厂商信息,可以读到ID为0x89,器件ID为0x88C3。这里可以看到用两种指令集读取的厂商信息是一致的,这只是一个特例。一般情况下,读取的值是不一致的,如果是intel指令集的闪存,那么用intel指令集读取的值是正确的,AMD指令集读取的值一般是不正确的,反过来也是一样的。
见图2,步骤2001用查表的方法查找厂商ID表,步骤2002看是否存在KS01608的厂商ID,由于在之前已经建立了该芯片的信息,所以可以查询到该芯片厂商是memocom,由于该芯片的指令集为intel,所以将保留用intel指令集读取的器件ID,丢弃AMD指令集读取的器件ID,接着步骤2003可以查询到KS01608的器件ID。最后,步骤2004根据上述的信息,就可以得到该芯片的map表以及驱动是intel指令集,之后,步骤2005在程序将使用intel指令集来对闪存进行操作。
当然,本发明的应用并不限于上述例子中提及的厂家的闪存芯片,本发明对于其它厂家的闪存芯片也同样可应用,处理方法与上述的方法一致。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于希姆通信息技术(上海)有限公司,未经希姆通信息技术(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710170489.7/2.html,转载请声明来源钻瓜专利网。