专利名称:手机处理器兼容多种芯片的方法
技术领域:
本发明涉及移动通讯设备控制方法,特别涉及一种手机处理器兼容多种芯片的方法。
背景技术:
现有技术,一个手机程序一般仅支持一种NandFlash和DDR SDRAM芯片配置,如果 更换NandFlash和DDR SDRAM,需要重新调整程序参数,重新编译程序后才可以使用。由于 不能使用同一个程序来兼容不同的硬件,一套代码需要对每种存储芯片配置修改生成各自 的程序,对于生产和开发调试需要多耗费大量的时间。Nand Flash+DDR SDram MCP 芯片是指把 Nand Flash 芯片和 DDR SDRAM 芯片封 装在同一个芯片封装里,使用时两部分各自独立运行。使用该芯片可以减小PCB板上放置 NandFlash和DDR SDRAM存储器的面积,有利于产品小型化。容量为2Gb Nand Flash+lGbDDR SDRAM 的常用型号有 MICRON 的 MT29C2G24MAAAAHAKC-5 IT, ELPIDA 的 EHD013111MA,和 HYNIX 的 H8BC0SI0MBR-46M。手机启动引导程序是指手机软件系统在系统加电后运行的第一段软件代码,它 的主要工作是初始化硬件设备,加载操作系统到内存中,并且启动操作系统。通常启动引导 程序还有通过USB 口或者串口下载操作系统代码到手机存储器的功能。手机处理器DDR SDRAM时钟频率控制手机系统在处于睡眠模式时,一般需要把 DDRSDRAM的时钟频率降低,以节省电能。以高通QSC6270手机芯片为例,它的DDR SDRAM正 常工作频率为92. 1MHz,可以降低到61. 44MHz和9. 6MHz来运行。手机在处于启动阶段时, 一般需要先在低速SDRAM时钟下运行,待硬件初始化完毕后,再切换到高速SDRAM时钟下运 行。DDR SRAM 的配置参数一般包含 TRFC TRP TRAS TRC TMRD TXP TXSR TffRTRCD TDAL TRRD,不同厂家略有不同。由于Nand Flash和DDR SDRAM均为存储器,后面使用存储器来统称两者。有鉴于此,本领域技术人员针对上述问题,提供了一种手机处理器兼容多种芯片 的方法。
发明内容
本发明提供了一种手机处理器兼容多种芯片的方法,克服了现有技术的困难,能 够用同一个程序兼容多家存储器芯片,通过一次程序编译即可下载到不同硬件配置的电路 板上,可以节省软件编译、生产、测试环节的时间和步骤,降低生产、开发和测试成本。本发明采用如下技术方案本发明提供了一种手机处理器兼容多种芯片的方法,包括启动阶段和系统驱动程 序;所述启动阶段包括以下步骤
3
(11)手机上电,Boot程序启动;(12)配置系统时钟频率;(13)读取 NandFlash ID ;(14)判断是否是已知型号Nand Flash ID,若是,则执行步骤(16),若否,则执行步 骤(15);(15)配置默认SDRAM时序,执行步骤(17);(16)获取对应DDR SDRAM参数,配置到SDRAM控制器;(17)加载并启动操作系统;所述系统驱动程序包括以下步骤(21)驱动程序更改DDR控制器参数;(22)获取当前时钟频率下的DDR配置参数;03)判断Nand Flash ID是否已经读取,若是,则执行步骤Q5),若否,则执行步 骤(24);(24)读取 Nand Flash ID ;(25)根据Nand Flash ID找出并配置对应SDRAM芯片的参数。优选地,所述步骤的触发条件为系统DDR SDRAM时钟频率改变。由于采用了上述技术,与现有技术相比,本发明的手机处理器兼容多种芯片的方 法能够用同一个程序兼容多家存储器芯片,通过一次程序编译即可下载到不同硬件配置的 电路板上,可以节省软件编译、生产、测试环节的时间和步骤,降低生产、开发和测试成本, 硬件电路板通过软件兼容,针对不同的芯片做出独立的参数配置,在系统运行时可以达到 于各自芯片的最佳性能。以下结合附图及实施例进一步说明本发明。
图1为本发明的手机处理器兼容多种芯片的方法的启动阶段流程图;图2为本发明的手机处理器兼容多种芯片的方法的系统驱动程序流程图。
具体实施例方式下面通过图1至2来介绍本发明的一种具体实施例。实施例1如图1至2所示,本发明提供了一种手机处理器兼容多种芯片的方法,包括启动阶 段和系统驱动程序;所述启动阶段包括以下步骤(11)手机上电,Boot程序启动;(12)配置系统时钟频率;(13)读取 NandFlash ID ;(14)判断是否是已知型号Nand Flash ID,若是,则执行步骤(16),若否,则执行步 骤(15);(15)配置默认SDRAM时序,执行步骤(17);
(16)获取对应DDR SDRAM参数,配置到SDRAM控制器;(17)加载并启动操作系统;所述系统驱动程序包括以下步骤(21)驱动程序更改DDR控制器参数;(22)获取当前时钟频率下的DDR配置参数;03)判断Nand Flash ID是否已经读取,若是,则执行步骤Q5),若否,则执行步 骤(24);(24)读取 Nand Flash ID ;(25)根据Nand Flash ID找出并配置对应SDRAM芯片的参数。所述步骤的触发条件为系统DDR SDRAM时钟频率改变。本发明的实际使用情况如下本发明的手机处理器兼容多种芯片的方法通过在软件中兼容同一容量而不同种 类的NandFlash+DDR SDRAM MCP芯片,可以使用同一个软件去生产、开发、调试不同厂家的 存储器。软件兼容分三个内容,分别是启动引导程序兼容、操作系统驱动程序兼容、下载程 序兼容。启动引导程序兼容的方法是在启动程序里面首先通过读取Nand Flash的ID来区 分不同厂家的芯片,由于MCP芯片中Nand Flash和DDR SDRAM是封装在一起的,通过Nand Flash的ID即可得知所用的DDR SDRAM的型号,然后再根据对应的DDR SDRAM芯片配置手 机DDR SDRAM控制器的时序。操作系统驱动程序兼容的方法是在操作系统启动后,获取并保存Nand Flash的 ID,在手机处理器进行DDR SDRAM时钟频率控制时使用所保存的Nand Flash ID来获取所 用SDRAM所用的时序参数,配置到手机的DDR SDRAM控制器中。这样在手机切换SDRAM时 钟时可以兼容不同的SDRAM芯片。下载程序分USB下载和JTAG两种,在USB下载时,如果使用了外部SDRAM存储,那 么需要通过读取Nand Flash ID来先配置DDR SDRAM时序,如果没有使用外部SDRAM存储, 则不需要此操作;在JTAG下载时,由于它一般仅用于调试,可以使用一个通用的DDRSDRAM 时序来配置CMM脚本。本发明的手机处理器兼容多种芯片的方法已经在使用高通QSC6270芯片的W80手 机上实施,情况如下在启动程序的设计是配置DDR SDRAM控制器参数之前先读取Nand Flash ID, 具体在函数 dbl_target_configure_hw_at_low_speed 的配置 ebi2 总线函数 dbl_ebi2_ configure (dbl_flash_if)调用之后,读取Nand Flash ID,存储到变量里面,然后函数配 置 SDSRAM 控制器的函数 dbl_ddr_configure (clk_speed- > hclk)会调用 ddr_on_ebil_ enum_typedbl_get_ddr_on_ebil ()来获取对应的SDRAM型号,这里根据存储的Nand Flash ID来判断所对应的SDRAM型号且在配置参数里增加对应的内容。在操作系统驱动程序里面兼容设计是在系统更改DDR SDRAM时钟频率时根据对应 的Nand Flash ID来配置不同的SDRAM参数。具体是在函数 void boot_get_ddr_params_for_hbfc(boot_hclk_freq_ typetarget_hclk_freq, boot_ddr_hbfc_params ~k -k ddr_params);
如果没有读出Nand Flash ID,那么先读取并存储,然后根据不同的Nand Flash ID对应的SDRAM芯片型号,传递对应的参数到ddr_params里面。对下载程序,由于USB 下载没有使用SDRAM存储,所以不需要配置SDRAM参数;对于JTAG下载调试,需要更改 setupebi l_20mhz. cmm 里面HWI0_SDRAM_DEV_PARAM_CFG1_ADDR ;HWIOSDRAMDEVPARAMCFG2
HWIOSDRAMDEVPARAMCFG3这3个地址的参数为公共时序即可。综上可知,由于采用了上述技术,本发明的手机处理器兼容多种芯片的方法能够 用同一个程序兼容多家存储器芯片,通过一次程序编译即可下载到不同硬件配置的电路板 上,可以节省软件编译、生产、测试环节的时间和步骤,降低生产、开发和测试成本,硬件电 路板通过软件兼容,针对不同的芯片做出独立的参数配置,在系统运行时可以达到于各自 芯片的最佳性能。以上所述的实施例仅用于说明本发明的技术思想及特点,其目的在于使本领域内 的技术人员能够了解本发明的内容并据以实施,不能仅以本实施例来限定本发明的专利范 围,即凡依本发明所揭示的精神所作的同等变化或修饰,仍落在本发明的专利范围内。
权利要求
1.一种手机处理器兼容多种芯片的方法,其特征在于包括启动阶段和系统驱动程序;所述启动阶段包括以下步骤(11)手机上电,Boot程序启动;(12)配置系统时钟频率;(13)读取NandFlash ID ;(14)判断是否是已知型号NandFlash ID,若是,则执行步骤(16),若否,则执行步骤 (15);(15)配置默认SDRAM时序,执行步骤(17);(16)获取对应DDRSDRAM参数,配置到SDRAM控制器;(17)加载并启动操作系统; 所述系统驱动程序包括以下步骤(21)驱动程序更改DDR控制器参数;(22)获取当前时钟频率下的DDR配置参数;(23)判断NandFlash ID是否已经读取,若是,则执行步骤Q5),若否,则执行步骤 (24);(24)读取Nand Flash ID ;(25)根据NandFlash ID找出并配置对应SDRAM芯片的参数。
2.如权利要求1所述的手机处理器兼容多种芯片的方法,其特征在于所述步骤 的触发条件为系统DDR SDRAM时钟频率改变。
全文摘要
本发明揭示了一种手机处理器兼容多种芯片的方法,包括启动阶段和系统驱动程序;所述启动阶段包括以下步骤(11)手机上电,Boot程序启动;(12)配置系统时钟频率;(13)读取NandFlash ID;(14)判断是否是已知型号Nand Flash ID,若是,则执行步骤(16),若否,则执行步骤(15);(15)配置默认SDRAM时序,执行步骤(17);(16)获取对应DDR SDRAM参数,配置到SDRAM控制器;(17)加载并启动操作系统;所述系统驱动程序包括以下步骤(21)驱动程序更改DDR控制器参数;(22)获取当前时钟频率下的DDR配置参数;(23)判断Nand Flash ID是否已经读取,若是,则执行步骤(25),若否,则执行步骤(24);(24)读取Nand Flash ID;(25)根据Nand Flash ID找出并配置对应SDRAM芯片的参数。
文档编号G06F9/445GK102081538SQ201110004408
公开日2011年6月1日 申请日期2011年1月11日 优先权日2011年1月11日
发明者董强 申请人:上海华勤通讯技术有限公司