专利名称::用于移动电话和其它便携式设备的低功率固态存储控制器的制作方法用于移动电话和其它便携式设备的低功率固态存储控制器相关申请本专利申请要求2005年1月21日提交的、题为"用于移动电话和其它便携式设备的低功率固态存储控制器"的共同未决的美国临时专利申请No.60/646,206的权利,该临时专利申请以引用的方式并入本申请中。
背景技术:
:移动电话(作为消费者的电子设备)已经存在了相当长的时间。很多在移动电话中使用的芯片组的闪存容量都非常有限,典型的有用于存储电话揭:作参数、小电话薄等的NOR闪存;而为了存储大容量的数据,则需要具有实文件系统的NAND闪存。但是,市售的电话常常不支持较大的存储装置。电话的芯片组也可能无法正常地支持辅助存储器。显然所需辅助芯片的结构允许大容量的NAND闪存或者闪存模块能够,皮集成到现有的移动电话芯片组中,由此延续现有移动电话的结构并且对该结构进行扩展。进一步需要的是能够在独立模式下工作于低功率状态的固态存储控制器;并且,当控制器与诸如个人计算机或者苹果公司麦金托什机(Mac)等计算机系统相连时,它能够以很高的速度运转。图1示出了根据一个实施例的基于本公开所述新技术的增强型移动电话系统的总体结构;图2示出了根据一个实施例的移动电话中不同数据流向;图3示出了根据一个实施例的电话结构的增强功能性的总结结构。具体实施方式图1示出了基于本公开所述新技术的增强型移动电话系统100的总体结构。移动电话130包括原移动电话芯片组104(遗留的电话内核),芯片组104可以具有自身用来存储电话号码和系统参数的NOR闪存(图中没有示出NOR闪存)。移动电话130还包括USB串行连接线105,其通常连4妻到PC。但是,连接线105支持的传输速率不适合于传输大量数据,而且电话的控制器芯片可能无法处理NAND闪存的需求。本公开所述新技术的重点是增加了存储控制器芯片101,其包括USBU串行接口引擎(SIE)111、虚拟集线器110、USB2.0SIE112、实际存储控制器(CPU或者微控制器)113。通常,多种类型NAND闪存的固态存储器120可以连接到芯片101。另外,在某些情况下,外部闪存EM131(例如过渡闪存(Transflash)、xD卡、SD卡、记忆棒、记忆短棒等)可以连接到芯片101。USB2.0连接线103从虚拟集线器110引出,由此允许将系统100连接到USB主机102,例如PC、Mac或者任何其它类型的USB主机,包括无线USB和其它设备。在某些情况下,虚拟集线器可以是具有两个下游端口的USB2.0集线器。当电话与PC连接时,其中一个下游端口能够与一个高速USB(USB2.0)大容量存储装置通信,而另一个端口能够与一个全速USB(USB1.1)装置通信。这使得在内容在USB2.0端口向大容量存储装置传输的同时,电话能够在USB1.1端口充电。进一步,移动电话和其它便携式设备,例如音乐播放器、照片浏览器和多媒体中心,通常具有USB接口,该USB接口能够执行数种功能,例如在生产线上测试最终产品;为便携式设备的电池充电;作为扩展端口来连接诸如键盘、鼠标或者操纵杆的USB装置;以及在特定情况下,作为主机或者从设备的直接传输(OTG)功能端口。便携式设备对于其能够提供的功率值有严格的限制。为了完成不同的任务以及跟踪存储地址、音频和视频内容等,希望获得一种同时具有低功耗和速度快的特点的存储装置。由于便携式设备需要消耗的功率很低(例如移动电话在没有额外电池组的情况下,无法提供超过25毫安的电流)这一事实,因此尽可能地对USB接口设置较高的功率效率、前述运行中的性能。随着存储内容大小的增加(典型的MP3音乐文件占用1M空间来存储1分钟内容),希望尽可能快速地将存储内容传输到存储器中。图2示出了移动电话130的不同数据流向。PC102可以通过数据流传输线200和201以透明的方式访问原手机功能。它可以通过数据流传输线210、211和212访问内部闪存装置120或者外部闪存装置131。或者,控制器101会通过传输线213分别启动原芯片组104与内部闪存装置120或者外部闪存装置131之间的数据交换。通常在此情况下,控制器101作为内部芯片组104的USB主机,能够访问存储器和数据,并且能够按照需要将其传送到所述芯片组。例如,此方法能够用来存储和取回图像、声音、视频以及任何其它类似的文件,包括不适于存储在原NOR闪存(图中没有示出)内的大容量地址簿。控制器101在此处示为移动电话130中独立的芯片,但是在将来的新产品中它可以与已有的芯片组104集成在一起,形成新的芯片组(图中没有示出)。在某些情况下,这种布置使得电话保持了对旧的结构部件(例如核心电话功能和大容量存储装置的功能)的软件兼容性,并在其基础上增加了新的特性。一种实现前述布置的具体方法如图3所示,图3示出基于本公开所述新技术的电话结构的增强功能性的概貌。在某些情况下,使用两套多路复用器即软件多路复用器303和310,是十分重要的,这允许PC102和存储控制器芯片(SCC)101之间的连接用来从PC透明地连接入原移动电话芯片组(CPCS)104、或者在另一模式下用来该将内部闪存120和可能存在的外部闪存131(图中没有示出)表现为介质驱动器。此情况下,在PC侧,使用了针对遗留的电话内核的电话驱动器311,并且针对NAND闪存(120和/或131)使用了一个标准的大容量存储装置驱动器312。如果可能,大容量存储装置驱动器312应该是例如Windows和MacOS等操作系统所使用的标准驱动器。多路复用器310使得两个驱动器能够同时访问相同的USB端口并透明地切换,并且允许同时访问两个驱动器311和312。SCC101才妻受对CPCS104的访问,并让这些访问通过;此外,SCC101也4妻受对(内部或外部)闪存的访问并相应地对这些访问进行重定向。同样,CPCS104可以作为从设备向SCC101发出请求,从其中一个闪存载入数据并将这些数据移入CPCS。在一些情况下,为了简化多路复用功能,可以允许驱动器单独运行,这样既可以访问存储器也可以访问电话功能。在其它情况下,多i各复用功能可以在较高的区组下完成,通过对不同的访问复用不同的协议,而允许同时使用全连通性。显而易见,在不偏离本公开所述新技术的精神的前提下,本领域才支术人员可以对所述实施例进行多种改进。前述处理可以存储于计算机系统的内存中作为一系列待执行的指令。此外,执行前述处理的指令也可以被存储到其它形式的机器可读介质,包括磁盘和光盘。例如,前述处理可以被存储到例如磁盘和光盘等通过磁盘驱动器(或者计算机可读介质驱动器)可以访问的机器可读介质。进一步,这些指令可以通过数据网络以编译版本和链接版本下载到计算装置中。或者,执行前述处理的逻辑电路可以在附加的计算机和/或机器可读介质中实现,例如类似于大规模集成电路(LSI)的分立的硬件部件、专用集成电路(ASIC)、诸如电可擦写可编程只读存储器(EEPROM)的固件;以及电、光、声和其它形式的传播信号(例如载波、红外信号、数字信号等)等。由于在阅读以上说明书后,本领域普通技术人员可以毫无疑问地理解针对本发明所作的改进和修改,则可以理解,任何一个根据附图进行说明和描述的具体实施例都不应被认为是限制。因此,对不同实施例中细节的4又述不会限制权利要求的范围,权利要求本身所陈述的特征只是本发明的必要技术特征。附件A附件A:使用上述原理的控制器(C300)说明书本发明提出了控制固态存储器的低功耗、低成本的新方法。移动电话和其它便携式设备,例如音乐播放器、照片浏览器和多媒体中心,通常具有执行下列几种功能的USB接口在生产线上测试最终产品的接口;为便携式设备的电池充电;作为扩展接口来连接例如键盘、鼠标或者操纵杆等USB设备;作为主4^或者从设备的直接传输功能端口。便携式设备对于它们所能够提供的功率值有严格的限制,为了完成不同的任务以及跟踪存储地址、音频和视频内容等,希望获得同时具有低功耗和速度快的特点的存储设备。由于便携式设备需要消耗的功率很低(例如移动电话在没有额外电池组的情况下,无法提供超过25毫安的电流)这一事实,因此尽可能地对USB接口设置较高的功率效率、前述运行中的性能。随着存储内容大小的增加(典型的MP3音乐文件占用1M来存储1分钟内容),希望尽可能快速地将存储内容传输到存储器中。因此需要设计一种固态存储控制器,它能够在独立模式下工作于非常低功率的状态;当连接到例如个人计算机或者苹果MAC时,以非常高的速度工作。图1图示了一种这样的设计。图1.固态存储控制器<image>imageseeoriginaldocumentpage10</image>当电话与PC相连时,存储控制器会利用软件/硬件设备切断SIE和存储控制器之间的连接。虚拟集线器处理大部分硬件中的事务。当电话与PC或Mac连接时,固态存储控制器作为大容量存储装置。具体信息请参考图2。图2在与PC相连时<image>imageseeoriginaldocumentpage10</image>虚拟集线器可以是具有两个下游端口的USB2.0集线器。其中一个下游USB2.0总线端口能够与高速USB(USB2.0)大容量存储装置通信,而另一个端口能够与全速USB(USB1.1)装置通信。这样,当内容在USB2.0端口向大容量存储设备传输的同时,便携式设备能够在USBU端口充电。当设备与PC/Mac断开连接时,会出现下述事件USB复位指令(Reset)会被发送至移动电话;CPU会将自身配置为主机,并且与移动电话建立连接;反向协议允许数据在电话和固态存储控制器间传输。反向协议在正常的USB使用中,存储器位于从设备。而本示例的情况相反,存储器位于主机,并且当从设备(便携式设备)准备好接收数据时,数据需要传给从设备(便携式设备)。当从设备需要显示一幅图片或者播放一首MP3歌曲时,会出现此种情况。由于主机(存储控制器)无法知晓存储要求到达的时间,因此存储控制器会通过发送输入指令(InToken)和接收包含地址、长度以及指示读或写的标识的数据块,来周期性地查询移动电话,以判断移动电话是否需要任何数据。在任何传输过程中,USB2.0端口都应关闭。图3.当向/从固态存储控制器传输数据时<image>imageseeoriginaldocumentpage11</image>典型的反向协议事务表1描述了一种执行反向协议事务的方法。为了保持完整性,将一些冗余的步骤也列于表l中。这只是说明反向协议概念的典型例子,应该一皮给与最大的保护范围。例如,数据可以通过控制通道或者批量传输通道发送。请求标识(RequestFlags)可以作为USB大容量存储命令块/数据4t入或者输出/USB大容量存储状态块来执行。清楚起见,表l中列出了所述事务的状态阶段。表1.典型的反向协议事务<table>tableseeoriginaldocumentpage12</column></row><table>表2.—组典型的请求标识的定义<table>tableseeoriginaldocumentpage12</column></row><table>1从固态存储器获取数据的请求0x00012向固态存储器发送数据的请求0x0002固态存储的应用可以预见便携式设备设计具有多种应用,列出部分应用如下1.配置(格式化)固态存储器。由于严格的功率限制,当电源供应较低时,可能会偶然将不良数据写入固态存储器。在这种情况下,固态存储器能够中断响应或者阻止现存数据的严重丢失。恢复不良数据并且将存储器还原为出厂设置状态的应用是十分有用的。2.数据同步应用保证便携式设备能够将它的数据复制到个人计算机或者Mac中,这一应用将是很有用的。3.便携式设备上的图像生成器应用能够捕捉固态存储器的准确布置,所以能够在工厂中对其进行分析,这一应用对技术支持团队会有很大的帮助。小结这只是所述控制器可能的使用方式的一个实例。PC、Mac或者任何USB主机(包括但不限于USBOTG主机)可以用来与所述控制器建立连接。该链接可以是USB线或者无线USB。除可以基于大容量存储类以外,反向协议事务也可以基于图片桥(PictBridge)。可以用磁存储器来代替固态存储器,并且仍然能够很好的实现上述方案。因此,请求本专利能够尽可能地被授予最大的保护范围。权利要求1、一种存储控制器,包括第一接口,用于与一设备交换数据;第二接口,用于与一主机系统交换数据,并且向所述设备供电;固态存储器,用于向所述设备提供数据存储。2、根据权利要求1所述的存储控制器,其中所述固态存储器包括NAND闪存。3、根据权利要求1所述的存储控制器,其中所述第一接口包括第一通用串行总线(USB)。4、根据权利要求1所述的存储控制器,其中所述第二接口包括第二USB接口。5、根据权利要求1所述的存储控制器,进一步包括第一USB串行接口引擎(SIE)、虚拟集线器、第二USBSIE和微控制器。6、根据权利要求1所述的存储控制器,其中所述固态存储器包括外部闪存。7、根据权利要求4所述的存储控制器,其中所述第二USB接口与所述存储控制器的虚拟集线器相连。8、根据权利要求7所述的存储控制器,其中所述虚拟集线器对所述系统展现为具有两个下游端口的USB集线器。9、根据权利要求8所述的存储控制器,其中第一下游端口是第一速度存储装置,而第二下游端口是第二速度存储装置,其中第一速度高于第二速度,使得所述设备通过第一接口从所述系统获得电能,同时通过第二接口与所述存储器交换数据。10、根据权利要求1所述的存储控制器,其中所述设备包括移动电话、音乐播放器和照片浏览器中的一种。11、根据权利要求1所述的存储控制器,所述存储控制器被布置为分立元件。12、根据权利要求1所述的存储控制器,所述存储控制器被布置为与所述设备的芯片组集成在一起。13、根据权利要求1所述的存储控制器,进一步包括位于所述存储控制器的第一多路复用器和位于所述系统的第二多路复用器,所述第一多i各复用器和第二多路复用器在第一工作模式下允许所述系统和设备之间的连接透明地通过所述存储控制器,在第二工作模式下允许连接将所述存储器表现为介质驱动器。14、根据权利要求13所述的存储控制器,其中所述系统包括用于连接所述设备的第一驱动器和用于连接所述存储器的第二介质驱动器,所述第二多路复用器允许所述系统的第一和第二驱动器访问所述存储控制器的第二接口。15、根据权利要求14所述的存储控制器,其中所述第二多路复用器允许所述系统的第一和第二驱动器同时访问所述存储控制器的第二接口。16、根据权利要求14所述的存储控制器,其中所述第二多路复用器允许所述系统的第一和第二驱动器单独访问所述存储控制器的第二接口。17、根据权利要求1所述的存储控制器,其中所述控制器接收所述设备的请求,将数据从所述存储器载入到所述设备。18、一种存储控制器,包括第一接口装置,用于与一设备交换数据;第二接口装置,用于与一主机系统交换数据,并且向所述设备供电;固态存储器装置,用于向所述设备提供数据存储。19、根据权利要求4所述的存储控制器,其中所述第一USB接口和第二USB接口不同,但都是从包括USB1.1、USB2.0、USB1.1OTG、USB2.0OTG和无线USB的组中选择的。全文摘要一种存储控制器,包括第一接口,用于与例如移动电话的设备交换数据;第二接口,用于与一主机系统交换数据,从所述主机系统接收电能并且向所述设备供电;以及固态存储器,用于向所述设备提供数据存储。文档编号G11C5/06GK101133458SQ200680002447公开日2008年2月27日申请日期2006年1月20日优先权日2005年1月21日发明者丹·奇奇尼斯,圣陶许·库玛尔,尼古拉斯·安东诺普洛斯,斯瑞·M·耶尔,赖瑞·L·琼斯,阿罗基洋斯维米·范基度申请人:翁斯配克电子公司