CN200880015021.3
2008.03.28
CN101681253A
2010.03.24
授权
有权
授权|||实质审查的生效IPC(主分类):G06F 7/04申请日:20080328|||公开
G06F7/04
金士顿科技股份有限公司
Y·钱; B·W·陈; C·T·邓
美国加利福尼亚州
2007.5.9 US 11/746,576; 2007.5.9 US 11/746,556; 2007.5.9 US 11/746,582
上海专利商标事务所有限公司
任永武
本发明揭露一种固态磁盘系统。前述系统包含一使用者信标,以及耦接至前述主机系统的至少一层的安全虚拟存储控制器。前述系统还包含多个虚拟存储装置,前述虚拟存储装置耦接至至少一安全虚拟存储控制器。本发明的系统以及方法可适用于一快闪式存储器、磁盘存储系统、可携式存储装置、企业存储系统、个人计算机、服务器、无线存储器以及多媒体存储系统。
1. 一种固态磁盘系统,其特征在于包含:一使用者信标;至少一安全虚拟存储控制器,耦接至一主机系统;以及多个虚拟存储装置,耦接至前述至少一安全虚拟存储控制器。2. 如权利要求1所述的系统,其特征在于所述至少一虚拟存储控制器包含:一第一层安全存储控制器;以及多个第二层虚拟存储控制器,具有一接口,所述第二层虚拟存储控制器兼容于所述第一层虚拟存储控制器。3. 如权利要求2所述的系统,其特征在于所述第二层安全虚拟存储控制器的数量可通过所述接口增加至所述第一层安全虚拟存储控制器。4. 如权利要求2所述的系统,其特征在于所述第一层安全虚拟存储控制器是利用一第一编码引擎以提供安全性。5. 如权利要求4所述的系统,其特征在于所述各第二层安全虚拟存储控制器是利用一第二编码引擎以提供安全性。6. 如权利要求1所述的系统,其特征在于所述至少一虚拟存储控制器还包含一编码引擎以提供安全性。7. 如权利要求5所述的系统,其特征在于所述使用者信标作为一提供所述主机系统密码认证的媒介。8. 如权利要求5所述的系统,其特征在于所述第一编码引擎以及所述各第二编码引擎可分别被致能、失能与配置。9. 如权利要求2所述的系统,其特征在于所述第一层安全虚拟存储控制器包含:一存储主机接口;一中断处理器,耦接至所述存储主机接口;一主机指令与数据处理器;一中央处理单元;一软件重置器,耦接至所述中央处理单元;一程序存储器;一控制器标识符码;一随机存取存储器及一缓冲器;一数据写入处理器;一数据读取处理器:一通行指令处理器;一状态与属性撷取处理器;一区域指令处理器;一编码引擎;一虚拟存储处理器;以及多个存储装置接口。10. 如权利要求2所述的系统,其特征在于所述各第二层安全虚拟存储控制器包含:一存储主机接口;一中断处理器,耦接至所述存储主机接口;一主机指令与数据处理器;一中央处理单元;一软件重置器,耦接至所述中央处理单元;一程序存储器;一控制器标识符码;一随机存取存储器及一缓冲器;一数据写入处理器;一数据读取处理器:一通行指令处理器;一状态与属性撷取处理器;一区域指令处理器;一编码引擎;一虚拟存储处理器;以及多个存储装置接口。11. 如权利要求9所述的系统,其特征在于所述存储主机接口包含一串行高速硬盘接口,且所述各存储装置接口包含一串行高速硬盘接口。12. 如权利要求9所述的系统,其特征在于所述存储主机接口包含一平行高速硬盘接口,且所述各存储装置接口包含一串行高速硬盘接口。13. 如权利要求10所述的系统,其特征在于所述存储主机接口包含一串行高速硬盘接口,且所述各存储装置接口包含一安全数字接口。14. 如权利要求13所述的系统,其特征在于所述安全数字接口包含一存储装置卡、多媒体卡、一微型快闪卡、通用串行总线装置、存储棒、高速卡、逻辑区块寻址-与非、开放式与非闪存接口、内嵌式多媒体卡与内嵌式安全数字卡的任一接口。15. 如权利要求1所述的系统,其特征在于通过增加额外的安全虚拟存储控制器,以加强存储能力及效能。16. 如权利要求9所述的系统,其特征在于当所述主机与装置以不同速度运作时,所述中断处理器以及所述软件重置器形成一机制,以便所述主机与装置同步。17. 如权利要求10所述的系统,其特征在于当所述主机与装置以不同速度运作时,所述中断处理器以及所述软件重置器形成一机制,以便所述主机与装置同步。18. 一种固态磁盘系统,其特征在于包含:一使用者信标;一第一层安全虚拟存储控制器,耦接至一主机系统;多个第二层虚拟存储控制器,具有一接口,所述第二层虚拟存储控制器兼容于所述第一层虚拟存储控制器;以及多个第二层虚拟存储装置的下层,耦接至所述第二层虚拟存储控制器的上层。19. 如权利要求18所述的系统,其特征在于所述第二层安全虚拟存储控制器的数量可通过所述接口增加至所述第一层安全虚拟存储控制器。20. 如权利要求18所述的系统,其特征在于所述第一层安全虚拟存储控制器是利用一第一编码引擎提供安全性予所述第一层安全虚拟存储控制器。21. 如权利要求20所述的系统,其特征在于所述各第二层安全虚拟存储控制器是利用一第二编码引擎分别提供安全性予所述各第二层安全虚拟存储控制器。22. 如权利要求21所述的系统,其特征在于一信标是用以作为提供所述主机系统一密码认证的媒介。23. 如权利要求21所述的系统,其特征在于所述第一编码引擎以及所述各第二编码引擎可分别被致能、失能与配置。24. 如权利要求18所述的系统,其特征在于所述第一层安全虚拟存储控制器还包含:一存储主机接口;一中断处理器,耦接至所述存储主机接口;一主机指令与数据处理器;一中央处理单元;一软件重置器,耦接至所述中央处理单元;一程序存储器;一控制器标识符码;一随机存取存储器及一缓冲器;一数据写入处理器;一数据读取处理器:一通行指令处理器;一状态与属性撷取处理器;一区域指令处理器;一编码引擎;一虚拟存储处理器;以及多个存储装置接口。25. 如权利要求18所述的系统,其特征在于所述各第二层安全虚拟存储控制器还包含:一存储主机接口;一中断处理器,耦接至所述存储主机接口;一主机指令与数据处理器;一中央处理单元;一软件重置器,耦接至所述中央处理单元;一程序存储器;一控制器标识符码;一随机存取存储器及一缓冲器;一数据写入处理器;一数据读取处理器:一通行指令处理器;一状态与属性撷取处理器;一区域指令处理器;一编码引擎;一虚拟存储处理器;以及多个存储装置接口。26. 如权利要求24所述的系统,其特征在于所述存储主机接口包含一串行高速硬盘接口,且所述各存储装置接口包含一串行高速硬盘接口。27. 如权利要求24所述的系统,其特征在于所述存储主机接口包含一平行高速硬盘接口,且所述各存储装置接口包含一串行高速硬盘接口。28. 如权利要求25所述的系统,其特征在于所述存储主机接口包含一串行高速硬盘接口,且所述各存储装置接口包含一安全数字接口。29. 如权利要求28所述的系统,其特征在于所述安全数字接口包含一存储装置卡、多媒体卡、微型快闪卡、通用串行总线装置、存储棒、高速卡、逻辑区块寻址-与非、开放式与非闪存接口、内嵌式多媒体卡与内嵌式安全数字卡的任一接口。30. 如权利要求18所述的系统,其特征在于通过增加额外的安全虚拟存储控制器,以加强存储能力及效能。31. 如权利要求24所述的系统,其特征在于当所述主机与装置以不同速度运作时,所述中断处理器以及所述软件重置器形成一机制,以所述主机与装置同步。32. 如权利要求25所述的系统,其特征在于当所述主机与装置以不同速度运作时,所述中断处理器以及所述软件重置器形成一机制,以便所述主机与装置同步。33. 一种令一安全且可扩充的固态磁盘系统与一主机再次同步的方法,其特征在于包含下列步骤:对请求上传串流主机系统或上层虚拟存储控制器显示一忙碌状态;发送一识别指令至一下传串流存储装置目录;测试所述经识别的下传串流存储装置;将一编码引擎初始化;以及启动一中断处理器以同步所述安全且可扩充的固态磁盘系统以及所述主机。34. 如权利要求33所述的方法,其特征在于启动所述中断处理器的步骤包含:对所述主机产生一中断;以及对所述区域中央处理单元产生一软件重置。35. 如权利要求33所述的方法,其特征在于当所述固态磁盘系统被再次同步且初始化,则启动一主机指令处理器。36. 如权利要求35所述的方法,其特征在于所述主机指令启动的步骤包含:分析所述指令队列;判断所述指令为一数据读取指令、一数据写入指令、一状态与属性撷取指令、一通行指令以及一区域指令其中之一;当所述指令为一数据读取指令时,则发送所述指令至一数据读取处理器;当所述指令为一数据写入指令时,则发送所述指令至一数据写入处理器;当所述指令为一通行指令时,则发送所述指令至一通行指令处理器;以及当所述指令为一状态与属性撷取指令时,则发送所述指令至一状态与属性撷取处理器,否则发送所述指令至一区域处理器。37. 一种计算机可读取记录媒体,其包含程序指令用以使一安全且可扩充的固态磁盘系统与一主机再次同步,其特征在于所述程序指令包含:对请求上传串流主机系统或上层虚拟存储控制器显示一忙碌状态;发送一识别指令至一下传串流存储装置目录;测试所述经识别的下传串流存储装置;将一编码引擎初始化;以及启动一中断处理器以同步所述安全且可扩充的固态磁盘系统以及所述主机。38. 如权利要求37所述包含程序指令的计算机可读取记录媒体,其特征在于启动所述中断处理器的程序指令还包含:对所述主机产生一中断;以及对所述区域中央处理单元产生一软件重置。39. 如权利要求37所述包含程序指令的计算机可读取记录媒体,其特征在于当所述固态磁盘系统被再次同步且初始化,则启动一主机指令处理器。40. 如权利要求38所述包含程序指令的计算机可读取记录媒体,其特征在于所述主机指令启动的程序指令包含:分析所述指令队列;判断所述指令为一数据读取指令、一数据写入指令、一状态与属性撷取指令、一通行指令以及一区域指令其中之一;当所述指令为一数据读取指令时,则发送所述指令至一数据读取处理器;当所述指令为一数据写入指令时,则发送所述指令至一数据写入处理器;当所述指令为一通行指令时,则发送所述指令至一通行指令处理器;以及当所述指令为一状态与属性撷取指令时,则发送所述指令至一状态与属性撷取处理器,否则发送所述指令至一区域处理器。41. 一种用于一固态磁盘系统的区域指令处理器,其特征在于包含:一处理器;以及一区域指令目录,是于所述处理器中执行,所述指令目录包含使用者提供指令、一区域状态撷取指令以及厂商提供指令。42. 如权利要求41所述的区域指令处理器,其特征在于所述使用者提供指令是被专业领域应用程序中的功能使用,所述使用者提供指令包含密码功能指令与存储分割指令,其中所述厂商提供指令是用于厂商配置所述固态磁盘系统,所述厂商提供指令包含一虚拟存储处理器指令、编码引擎组态指令、密码属性组态指令以及一测试模式指令。43. 如权利要求42所述的区域指令处理器,其特征在于所述厂商提供指令包含虚拟存储处理器组态指令、编码引擎组态指令、密码属性组态指令以及一测试模式指令。44. 如权利要求43所述的区域指令处理器,其特征在于所述虚拟存储处理器组态指令包含虚拟存储属性撷取指令与虚拟存储命令模式设定指令。45. 如权利要求43所述的区域指令处理器,其特征在于所述编码引擎组态指令包含一编码模式设定指令、一编码引擎致能指令以及一译码金钥撷取指令。46. 如权利要求41所述的区域指令处理器,其特征在于所述使用者提供指令包含密码功能指令与存储分割指令。47. 如权利要求46所述的区域指令处理器,其特征在于所述密码功能指令包含一密码设定指令、一密码更改指令、一密码认证指令、一密码目录设定指令、一尝试撷取次数指令以及初始化一分割请求指令。48. 如权利要求47所述的区域指令处理器,其特征在于所述初始化一分割请求指令包含一译码金钥设定指令以及一新译码金钥撷取指令。49. 如权利要求46所述的区域指令处理器,其特征在于所述存储分割指令包含一虚拟存储属性撷取指令、初始化分割大小指令以及一格式化指令。50. 一种固态磁盘系统的厂商提供的方法,其特征在于包含下列步骤:于固态磁盘系统的一安全虚拟存储控制器中,加载厂商预设设定;配置所述安全虚拟存储控制器;配置所述固态磁盘系统的一编码引擎;以及致能所述编码引擎,以使用所述固态磁盘系统。51. 一种用于配置一固态磁盘系统的一虚拟存储处理器的方法,其特征在于包含下列步骤:将所述虚拟存储处理器设定为虚拟存储模式;根据一实体存储装置目录聚集所述虚拟存储;建立一虚拟存储装置目录;根据所述装置目录,通过所述虚拟存储处理器建立一实体至逻辑地址表;以及将所述虚拟存储处理器的一状态设定为就绪。52. 一种用于配置一固态磁盘系统的一编码引擎的方法,其特征在于包含下列步骤:发送一编码模式设定指令;发送一尝试设定次数的一最大值指令;发送一译码金钥撷取指令以及提供一随机数金钥;当要求一主密码时,则发送一主密码撷取指令;当要求一主密码时,则发送一主密码设定指令;存储所述解碼金钥;以及将一编码引擎供应标志设定为就绪。53. 如权利要求52所述的方法,其特征在于当所述固态磁盘系统被设定为一管理模式时,所述译码金钥系存储于一管理服务器中,其中当所述固态磁盘系统未被设定为一管理模式时,所述译码金钥是存储于一通用串行总线装置信标中。54. 如权利要求53所述的方法,其特征在于所述编码引擎可被失能。55. 一种计算机可读取记录媒体,所述计算机可读取记录媒体包含程序指令用以配置一虚拟存储处理器,其特征在于所述程序指令包含:将所述虚拟存储处理器设定为虚拟存储模式;根据一实体存储装置目录聚集所述虚拟存储;建立一虚拟存储装置目录;根据所述装置目录,通过所述虚拟存储处理器建立一实体至逻辑地址表;以及将所述虚拟存储处理器的一状态设定为就绪。56. 一种计算机可读取记录媒体,所述计算机可读取记录媒体包含程序指令用以配置一固态磁盘系统的一编码引擎,其特征在于所述程序指令包含:发送一编码模式设定指令;发送一尝试设定次数的一最大值指令;发送一译码金钥撷取指令以及提供一随机数金钥;当要求一主密码时,则发送一主密码撷取指令;当要求一主密码时,则发送一主密码设定指令;存储所述解碼金钥;以及将一编码引擎供应标志设定为就绪。57. 如权利要求56所述包含程序指令的计算机可读取记录媒体,其特征在于当所述固态磁盘系统被设定为一管理模式时,所述译码金钥是存储于一管理服务器中,其中当所述固态磁盘系统未被设定为一管理模式时,所述译码金钥是存储于一通用串行总线装置信标中。58. 如权利要求57所述包含程序指令的计算机可读取记录媒体,其特征在于所述编码引擎可被失能。
安全且可扩充的固态磁盘系统 技术领域 本发明是关于一种存储系统;更详细地说,本发明是关于一种安全且可扩充(scalable)的固态磁盘系统。 背景技术 快闪式(flash based)的固态磁盘(solid state disk;SSD)已慢慢地堀起,并自工业、国防以及企业应用端逐渐地被一般使用者消费端所广为接受。这股趋势背后最主要的驱动力即来自于先进的快闪技术发展以及快闪组件本身的优势。快闪式的固态磁盘与现有硬盘机(hard disk drive;HDD)相较之下,其具有以下的优点: 1.功率耗损较低。 2.重量较轻。 3.逸散热量较低。 4.无噪音。 5.无机械组件。 然而,在逐渐取代硬盘机的同时,固态磁盘也有一些待解决的问题,如: 1.成本较高。 2.密度较低。 3.系统效能较差。 此外,一般固态磁盘通常只能管理4阶、8阶、16阶、32阶或更多组件的一闪存群组,因此在以下方面更具有高难度的设计挑战: 1.管理众多快闪装置接口的输出接脚(pin-outs)。 2.遍及于众多快闪组件间的均匀抹除(wear-leveling)。 3.固态磁盘系统的可制作性与可测试性。 4.支持新快闪技术及可从中获益的时间差距。 5.上市时间。 6.自新快闪技术中所可节省的成本。 现有硬盘机并无内建的安全防护。若一具有一硬盘机的主机系统被偷走后,则其硬盘机的内容将可轻易地被存取以及盗用。即使可通过一软件将整个磁盘进行加密,现有硬盘机在实际应用上仍存在着以下问题: 1.因软件的加密与解密所造成的系统效能牺牲。 2.必须另外安装驱动程序以进行加密动作。 3.若密码认证功能仅属于前述硬盘机,则仍具有被攻击的危险。 倘若固态磁盘由利基型产品(niche product)转变成较为普遍的使用者产品而成为主流,则固态磁盘必须针对上述缺点进行改善,且须另外增加诸如安全性、可扩充性等其它优点。 图1是一现有安全数字(secure digital;SD)快闪卡的方块图,其包含一实体接口11、一安全数字卡控制器12以及闪存13。实体接口11通过接口总线(interface bus)14连接至一主机系统。利用一安全数字卡、微型快闪(compact flash;CF)卡以及通用串行总线(universal serial bus;USB)驱动器即可组成一简易型式的固态磁盘。 于一现有存储系统中,例如美国专利申请案第10/707,871号(其公开号为20050005044)、第10/709,718号(其公开号为20050005063)、美国公告专利第6,098,119号、第6,883,083号、第6,877,044号、第6,421,760号、第6,138,176号、第6,134,630号、第6,549,981号以及美国公开专利第20030120865号所揭露的存储系统,于系统启动或运作期间(runtime),一存储控制器将自动安装及配置磁盘驱动器。前述的存储控制器可执行基本的存储识别以及汇总功能(aggregation functionality)。现有技术的主要优点即在于运作期间,能够检测磁盘驱动器的插入以及移除。然而现有技术却无法在系统启动期间识别主机系统与存储系统之间存在的异步特性。由于存储控制器的功能相当于一虚拟控制器,因此在主机系统启动期间,存储控制器需要花费时间识别、测试及配置前述实体驱动器。假如没有使主机系统与存储系统再次同步(re-synchronize)的机制存在,则主机系统仅会停止并且没有办法识别及安装虚拟逻辑存储器。据此,现有系统顶多只能当作次要存储系统,而非主要存储系统。美国公告专利第6,098,119号的另一个缺点则是系统要求各实体驱动器于安装期间需有一或多个预先加载(preload)的「参数设定(parametersettings)」。此一缺点将对自动安装造成限制。 大多数的现有系统并未针对存储器的延伸性(expandability)或可扩充性(scalability)提供解决的方法。尽管美国专利申请案第10/707,871号(其公开号为20050005044)号以及第10/709,718号(其公开号为20050005063)提出了具有扩充性的存储虚拟计算机系统,其是着重于描述耦接至一实体主机(可能为一主机计算机或一服务器)的「外接式」存储虚拟控制器。这些专利并未针对上述虚拟存储的启动问题提出讨论。这些专利的虚拟存储的架构仍仅能作为次要存储器之用。 此外,现有系统亦无法解决密码认证与硬件加密的驱动安全性的问题。其中硬件加密已然成为笔记型计算机中不可或缺的主要驱动应用产品。 如图2所示,美国专利第7,003,623号是一种较为简明的固态磁盘系统。前述固态磁盘系统包含一串行高速硬盘接口(serial advanced technologyattachment;SATA)至闪存控制器25以及一组闪存13。前述SATA至闪存控制器25包含一SATA主机接口251以及多个快闪装置接口252。SATA主机接口是用以连接(interfacing)主机系统20的SATA主机控制器21,同时快闪装置接口252是用以连接闪存13。 各闪存13具有约略15至23个信号接脚以连接至控制器25。SATA主机接口251则需要4个信号接脚以连接至前述SATA主机控制器21。SATA至闪存控制器25则需要总数至少为124的信号接脚来管控8个闪存13;或总数为244的信号接脚来管控16个闪存13。 同样如图2所示,控制器25必须管控错误更正码(error correction code;ECC)、均匀抹除、坏区块重新映像(bad block re-mapping)、闲置存储空间的分配以及众多内部至闪存式固态磁盘的作业记录(book keeping tasks)。由此可见,随着闪存组件数目的增加,控制器的复杂度也将随之上升。如此一来,不仅将对控制器的成本造成影响,于现有的固态磁盘系统上,还增加了可制造性与可测试性方面的问题。就本质上而言,现有技术不具备可扩充的特性,意即相同的控制器将无法被使用于二种或更多不同种类密度的设计。若同一控制器需使用于二种或更多不同种类密度的设计,则控制器的接脚数量必须至少能容纳124个接脚,以连接四个闪存;或244个接脚,以连接八个闪存;或甚至484个接脚,以连接十六个闪存芯片。因此,现有系统仅能限用于小密度应用的固态磁盘,而不具备完整的可延伸及可扩充的特性。 据此,一种能解决上述问题的系统以及方法系必须的。而本发明即可满足此类需求。 发明内容 本发明系揭露一种固态磁盘系统。前述系统包含一使用者信标(usertoken)以及一耦接至一主机系统的第一层安全虚拟存储控制器。前述系统亦包含多个第二层安全虚拟存储控制器以及多个第三层虚拟存储装置。其中,前述第二层安全虚拟存储控制器皆具有一与前述第一层虚拟安全存储控制器兼容的接口,而前述等第三层虚拟存储装置系耦接至前述第二层虚拟存储控制器。 根据本发明的系统与方法可提供下列优点。 1.前述系统与方法系采用一安全虚拟存储控制器结构。 2.前述系统与方法系采用一种基于前述安全虚拟存储控制器结构的可扩充的固态磁盘系统。 3.前述系统与方法是基于现今普遍并盛行的快闪卡/装置上所建立的区块,以采纳(tap into)最新的快闪组件技术的成本、密度及系统效能。 4.前述系统与方法使用虚拟存储处理器统合密度及系统效能。 5.前述系统与方法可视需求使用较多层的虚拟存储控制器以扩充密度及系统效能。 6.前述系统与方法可视需求于前述虚拟存储控制器中使用编码引擎,以实时(on-the-fly)处理于上传串流与下传串流的间数据交换的加/解密作业。其中,前述数据交换的进行系于主机与装置的间。 7.前述系统与方法使用一USB信标来作为固态磁盘的独立密码认证。 8.前述系统与方法系允许前述安全且可扩充的固态磁盘(secure-and-scalable solid state disk;SNS-SSD)利用使用者自开机、休眠至一般使用阶段的经验来取代硬盘机。 根据本发明的系统及方法系适用于一快闪式存储器、磁盘存储系统、可携式存储装置、企业存储系统、个人计算机、服务器、无线存储器以及多媒体存储系统。 附图说明 图1是现有技术的一安全数字卡的方块图; 图2是现有技术的一主机系统与一现有固态磁盘系统的耦接示意图; 图3是一主机系统与一USB信标耦接至一基于三层结构的SATA式安全且可扩充的固态磁盘统的方块图; 图4是安全虚拟存储控制器的方块图; 图5是一主机系统与一USB信标耦接至一基于四层结构的PATA式安全且可扩充的固态磁盘系统的方块图; 图6是初始化前述安全虚拟存储控制器的流程图; 图7是中断处理器执行的流程图; 图8是主机命令处理器执行的流程图; 图9是安全虚拟存储控制器的区域命令处理器,其内部的区域命令表; 图10是执行厂商准备的流程图; 图11是配置前述虚拟存储处理器的流程图; 图12是配置编码引擎的流程图; 图13是前述编码引擎的方块图; 图14A-图14D分别为前述主机系统的冷开机、关机、休眠以及由休眠被唤醒的流程图; 图15是USB信标开机的流程图;以及 图16是密码认证的流程图。 具体实施方式 本发明是关于一种存储器系统。更详细地说,本发明是关于一种安全且可扩充的固态磁盘系统。以下的叙述是使熟悉此项技术领域者可以利用本发明,同时提供本发明的应用及所需条件。下述的实施例仅用以例举本发明的实施态样,以及阐释本发明的技术特征,并非用以限制本发明的范畴。任何熟悉此技术者可轻易完成的改变或均等性的安排均属于本发明所主张的范围。 图3是一主机系统与一USB信标耦接至一SATA式的安全且可扩充的固态磁盘系统的方块图。主机系统30包含一处理器(图未绘示)、存储器(图未绘示)、输入/输出(input/output;/I/O)、一USB接口(图未绘示)以及一SATA主机控制器34。SATA主机控制器34系经由一USB接口连接至一USB信标35,并通过一SATA主机接口321与安全且可扩充的固态磁盘系统31共同作业。 于主机系统30开机之后以及存取安全且可扩充的固态磁盘系统31之前,USB信标35是作为一独立媒介(agent),用以提供密码认证功能。前述功能可为一属于前述USB信标35的软件功能。或较佳地,前述功能可为USB信标35中,连结至网络服务的浏览器连结,使用浏览器连结的原因系其较普遍且其仅占用系统资源的一小部份即能运作于不同平台装置。 安全且可扩充的固态磁盘系统31包含一第一层安全虚拟存储控制器32、二个第二层安全虚拟存储控制器33以及八个第三层存储装置安全数字卡10。 前述第一层虚拟存储控制器32包含一SATA主机接口321、一编码引擎323以及并联的多个SATA装置接口322。于本实施例中,主机端的存储接口可为一串行ATA或SATA。前述存储主机接口可为任一种型式的输入输出接口,例如SATA、串行式小型计算机系统接口(serial attached small computer systeminterface;SAS)、高速外围控制器接口(peripheral controller interface;PCI express)、平行高速硬盘接口(parallel advanced technologyattachment;PATA)、USB、蓝芽、超宽带(Ultra-wideband;UWB)或无线接口。虚拟存储控制器32将于图4所绘示的安全虚拟存储控制器40中做更详细地说明。 第二层虚拟存储控制器33包含一SATA主机接口331、一编码引擎333以及并联的多个安全数字装置接口332。虚拟存储控制器33并不直接耦接至闪存,而是耦接至第三层存储装置,即一安全数字(secure digital;SD)卡10。只要接脚数、成本、系统效能合理,SD卡10可以任何一种快闪式卡或驱动器取代,例如:微型快闪卡(compact flash card;CF card)、多媒体卡(multimediacompact card;MMC card)、USB驱动器或存储棒(memory stick)。于本实施例中,各安全数字卡10具有六个信号接脚。四个数字安全组件即需要总数24个信号接脚,其中各前述安全数字卡具有两个闪存组件,而非现有技术中,八个闪存组件所需的总数为120个信号接脚。因此,本发明可自控制器芯片的结构上减少一大笔花费,且具备较佳的可制造性及可测试性。 即使第一层安全虚拟存储控制器32及第二层安全虚拟存储控制器33可能具有不同型式的装置接口,两者的结构实质上是相同的。只要存储装置接口322与存储主机接口331兼容,第一层安全虚拟存储控制器32即可串接(cascaded)同时扩充更多的第二层安全虚拟存储控制器33。据此,通过此一扩充动作,系统的密度及效能将以指数增加。在最简易的安全且可扩充的固态磁盘系统的结构中,主机系统30是直接与第二层虚拟存储控制器33其中之一耦接。此种最小的安全且可扩充的固态磁盘系统仅包含第二层存储控制器33与第三层存储装置10的两层结构。 第一层的编码引擎323与第二层的编码引擎333皆可视需求独立地被致能(enable)、失能(disable)与配置(configured)。一般情况而言,仅需上层的编码引擎,其它下层的编码引擎都将被失能。编码引擎将于图13中做更详细地说明。 于主机存储接口上,可利用一SATA主机接口331与第一层虚拟存储控制器32耦接。在本实施例中,存储接口可为一串行ATA或SATA。虚拟存储控制器33将于图4所绘示的安全虚拟存储控制器40中做更详细地说明。 如图4所示,安全虚拟存储控制器40包含一存储主机接口41、一中断处理器42、一主机指令及数据处理器43、一中央处理单元(central processingunit;CPU)44、一程序存储器45、一随机存取存储器(random access memory;RAM)及缓冲器46、一数据写入处理器401、一数据读取处理器402、一通行(pass-through)指令处理器403、一状态与属性撷取处理器404、一区域指令处理器405、一编码引擎406、一虚拟存储处理器407以及多个存储装置接口408。 只要存储接口兼容,本发明的虚拟存储控制器可被串接并扩充。倘若需要增加密度,则可通过增加第二层虚拟存储控制器以达到扩充密度的目标。据此,可进一步增加更多的第三层存储装置以扩充密度。与现有技术相比较,本发明的安全且可扩充的固态磁盘系统可提供指数级的存储密度扩充。 相较于现有技术的固态磁盘系统,本发明的安全且可扩充的固态磁盘系统通过标准的快闪卡(如安全数字卡10)作为闪存基础区块(building block),将可带来许多好处: 1.闪存的平均抹除被指定完成于局部的安全数字卡10。整体的快闪组件并不需要大幅度的平均抹除。 2.可制造性与可测试性系于安全数字卡的存储装置层进行。装置层与固态磁盘系统层相较,更易于管理。 3.由于设计与发展被指定完成于安全数字卡10内的标准安全数字控制器12,因此支持并取得新快闪技术的优势即无任何时间延迟。 4.上市时间更短。只要安全数字卡10在成本、密度和系统效能许可之下,前述安全且可扩充的固态磁盘系统31即可开始贩卖。 5.由于安全数字卡10的基础区块结构,将可自新快闪技术中省下许多成本。 6.由于虚拟存储处理器32、33,系统效能得以改善。虚拟存储处理器32、33可提供虚拟存储密度集合(aggregation)以及所需的系统效能集合。平行运作时,理论上的系统效能将相同于安全数字卡的数量与各安全数字卡实质上系统效能的两者乘积。 7.安全性系由硬件的编码引擎323或333提供。密码认证功能则独立地属于一USB信标35中。因此,前述安全且可扩充的固态磁盘系统具备较佳的系统效能以及安全性。 存储主机接口41系用以与上传串流主机系统30或另一上层的安全虚拟存储控制器耦接。存储装置接口408系用以与下传串流存储装置10或另一下层的安全虚拟存储控制器耦接。 图5是根据本发明另一实施例的方块图,其是一具有PATA接口的安全且可扩充的固态磁盘系统39。主机系统50包含一处理器(图未绘示)、存储器(图未绘示)、输入输出(图未绘示)、一USB接口(图未绘示)以及一PATA主机控制器54。PATA主机控制器54通过一USB接口与一USB信标35连接,并通过一PATA主机接口381与具有一PATA接口的安全且可扩充的固态磁盘系统共同作业。 前述具有PATA接口的安全且可扩充的固态磁盘系统39包含一第一层安全虚拟存储控制器38、一第二层安全虚拟存储控制器32、二个第三层安全虚拟存储控制器33以及八个第四层存储装置安全数字卡10。如上所述,本发明的结构在密度和系统效能上同样是可被扩充且串接的。 如图4所示,程序存储器45可存储防火墙以及虚拟存储控制器信息,随机存取存储器及缓冲器46则可存储数据封包用以快取(caching)操作。 数据写入处理器401通过编码引擎耦接至虚拟存储处理器407,编码引擎是用以实时进行硬件加密作业。数据可自缓冲器中被转换、加密并传送至虚拟存储处理器407。 数据读取处理器402通过编码引擎耦接至虚拟存储处理器407,编码引擎系用以实时进行硬件解密作业。数据可自虚拟存储处理器407被转换、加密并传送至缓冲器。 通行指令处理器403用以处理未要求任何区域处理的指令。通行指令系未经加密或翻译即直接被传送至下传串流。 状态与属性撷取处理器404回报特定状态及/或属性至上传串流主机系统,或较上层的虚拟存储控制器。若前述状态或属性耗费区域控制器太多时间回报,状态与属性撷取处理器404将对前述请求上传串流的主机系统或较上层的虚拟存储控制器显示一忙碌状态。当前述特定状态或属性收集完成时,中断处理器42以及计算机例行程序70将开始作业。中断处理器42产生一软件重置47至中央处理单元44,用以使前述安全虚拟存储控制器40进行暖开机。据此,中断处理器42即中断前述系统的上传串流,并再次询问虚拟存储控制器40以回报正确的状态或属性。于主机与装置以不同速度运作时,此一机制将令其同步,且于同步的要求提出后,前述装置需要耗费较多时间进行安排。 通过程序存储器45中预先规划的一特定ID(identity),各安全虚拟存储控制器40将可被识别。图6是初始化安全虚拟存储控制器的流程图。于开机后,安全虚拟存储控制器40第一次被初始化60,于步骤61中,即判断虚拟存储控制器是否已就绪。若是,则于步骤62中,主机指令处理器被启动。否则,于步骤63中,控制器将发送一识别指令至下传串流的存储装置目录。一旦下传串流的存储装置10被识别后,前述实体存储装置10于步骤64中将被测试。接着,经由步骤65,编码引擎被初始化。虚拟存储控制器于步骤66中被设定为就绪。随后执行步骤67,中断处理器被启动。 图7是中断处理器执行的流程图。首先,经由步骤71判断虚拟存储控制器的下传串流是否有一中断要求。若是,经由步骤74同意前述中断要求的服务。否则,于步骤72中,产生一中断至上传串流主机,或一较上层的虚拟存储控制器,以再次配置安全虚拟控制器40。步骤73实质上产生一软件重置47至区域中央处理单元44,使前述安全虚拟存储控制器40进行暖开机。于主机与装置以不同速度运作时,此一机制将令其同步,其中,前述装置于开机初始化后需要耗费较多时间进行安排。 以上叙述即为初始化安全虚拟存储控制器40的过程。 图8为前述主机指令处理器执行的流程图。前述主机指令与数据处理器43列队(queue up)并缓冲存储主机接口41与编码引擎406之间的指令与数据封包。通过步骤80,将撷取出来的指令队列移交至主机指令处理器的例行程序以便于处理。于步骤83中,若前述撷取出来的指令队列被判断为一数据写入指令,一数据写入指令处理器401即被唤醒。于步骤84中,若前述撷取出来的指令队列被判断为一数据读取指令,一数据读取指令处理器402即被唤醒。于步骤82中,若前述撷取出来的指令队列被判断为一通行指令,一通行指令处理器403即被唤醒。于步骤85中,若前述撷取出来的指令队列被判断为一状态/属性撷取指令,一状态/属性撷取处理器404即被唤醒。否则,一区域指令处理器405将被唤醒。 区域指令处理器405处理编码引擎406、虚拟存储处理器407以及区域虚拟存储控制器40的区域函数。如图9所示,区域指令集90包含: A.使用者提供指令91 i.密码功能指令94 1.设定密码941 2.更改密码942 3.密码认证943 4.设定密码提示944 5.取得密码提示945 6.取得一尝试(attempt)次数946 7.初始化及分割要求947 a.设定加密金钥9471 b.取得新加密金钥9472 ii.存储分割指令95 7.取得虚拟存储属性951 8.初始化分割大小952 9.格式化953 B.区域状态撷取92 C.厂商提供指令93 i.虚拟存储处理器组态96 10.取得虚拟存储控制器识别(identity;ID)961 11.设定虚拟存储模式(集束磁盘、独立磁盘冗余数组或它者)962 ii.编码引擎组态97 12.设定编码模式971 13.致能编码引擎972 14.取得加密金钥973 iii.密码属性组态98 14.设定主密码981 15.设定尝试次数的最大值982 16.设定管理模式标志(flag)983 17.设定预设密码984 iv.测试模式指令99 使用者提供指令91系被专业领域应用程序使用的,其包含USB信标35内的密码认证功能。使用者提供指令91包含密码功能指令94以及存储分割指令95。厂商系使用厂商提供指令93配置固态磁盘系统。厂商提供指令93包含虚拟存储处理器组态96、编码引擎组态指令97、密码属性组态98以及测试模式指令99。区域状态撷取指令92是用以回传虚拟存储控制器的相应状态。 取得虚拟存储控制器ID指令961系用以回传存储于程序存储器45的特定ID。设定虚拟存储模式指令962可视系统效能的需求或功率消耗,设定集束磁盘(just a bunch of disks;JBOD)、独立磁盘冗余数组(redundant arraysof independent disks;RAID)或它者的操作模式。设定编码模式指令971系用以设定编码引擎的加密模式。致能编码引擎指令972系用以致能编码引擎。设定管理模式标志983用以于使用中(in the field)允许或禁止提供固态磁盘系统。若前述标志被设定为非管理模式,则必须利用USB信标以再次提供并初始化前述固态磁盘系统。若前述标志被设定为管理模式,则使用者必须连回至管理服务器,以再次提供及初始化固态磁盘系统。前述标志仅能由厂商设定。测试模式指令99可由制造商保留(reserved)以测试固态磁盘系统。 于就绪使用之前,固态磁盘系统于制作过程间必须先通过厂商准备。如图3所示,前述准备系通过将安全且可扩充的固态磁盘系统31经一适当的SATA主机控制器34或一USB信标35连结至一主机系统30而达成。图10是配置前述厂商准备的流程图。首先于步骤101,等待安全虚拟存储控制器就绪。当控制器就绪的后,厂商预设设定值于步骤102中被加载。于步骤103中,前述虚拟存储处理器开始被配置。之后,于步骤104中,前述编码引擎开始被配置。而于步骤105中,则视需求致能编码引擎。 图11是配置虚拟存储处理器的流程图。如图11所示,于步骤111中,虚拟存储模式被设定,即利用前述区域指令其中之一设定虚拟存储模式962。虚拟存储操作模式可被设定为JBOD、RAID或它者。因此,根据实体存储装置目录64(请参阅图6),一虚拟存储集合于步骤112便已完成。建立一虚拟存储识别目录。于步骤113中,一虚拟存储装置目录被建立。通过步骤114,利用虚拟存储处理器407(请参阅图4)建立一实体至逻辑地址转换目录。随后,于步骤115中,前述虚拟存储准备被设定为就绪状态。 图12为配置编码引擎的流程图。于步骤121中,通过前述等区域指令其中之一配置编码引擎,并发送一编码模式设定指令971。接着,于步骤122中,发送一尝试设定次数最大值的指令982。于步骤1220中,发送一取得加密金钥指令973。因此,于编码引擎406中,将利用一随机数产生器RNG 134产生一随机数金钥(图未绘示)。前述随机数金钥于步骤1220中被加密并回传以取得加密金钥指令973。若于步骤1221中要求一主密码,则于步骤1222中初始化一取得主密码指令程序并发送一设定主密码指令981。于步骤123中,判断标志是否为管理模式。若是,则于步骤124中,视需求将前述加密金钥存储于管理服务器。若否,则通过步骤125,将前述加密金钥存储于USB信标35。于步骤126中,通过密码设定指令981发送主密码至编码引擎。接着,加密后的主密码将被存储于固态磁盘系统中(图未绘示)。于步骤1260中,通过指令984设定一预设密码。接着,加密后的预设密码将被存储于固态磁盘系统中(图未绘示)。而编码引擎可被失能或致能。若编码引擎被致能,编码引擎于步骤127中,可视需求被设定为执行一特定加密模式。随后,编码引擎准备标志记于步骤128中被设为就绪。 图13是编码引擎的方块图。编码引擎406包含一随机数产生器RNG 134、一杂凑函数HASH 131、一第一通用加密引擎ENG2132、一第二数据加密引擎ENG3133、一存储上传串流接口135以及一存储下传串流接口136。编码引擎的详细实施方式请参阅美国专利申请案第11/643,101号。 主机系统30将取决于插入的USB信标35进行密码认证。请参阅图14A,于步骤140中,主机系统30通过冷开机之后。于步骤141中,USB信标35同样冷开机。并通过步骤142启动USB信标操作。 请参阅图14B,于步骤143中,主机系统30关机之后。于步骤144中,固态磁盘系统同样关机。而由于电力中断,于步骤145中,固态磁盘系统中的加密金钥将遗失。于步骤146中,只要加密金钥尚未通过加载USB信标35的密码认证功能回复,则前述固态磁盘系统将会维持加密。 请参阅图14D,于步骤1403中,主机系统30休眠之后。于步骤1404中,固态磁盘系统同样休眠。而由于电力中断,于步骤1405中,固态磁盘系统的加密金钥将遗失。于步骤1406中,只要加密金钥尚未通过加载USB信标35的密码认证功能回复,则前述固态磁盘系统将会维持加密状态。 请参阅图14C,于步骤1400中,当主机系统30自休眠中被唤醒之后。于步骤1401中,USB信标35同样冷开机,即如同图14A所绘示。最后,于步骤1402中,启动USB信标操作。 图15为USB信标开机的流程图。如图15所示,于步骤151中,一旦USB信标网络服务器开机。于步骤152中,前述USB信标等待存储器与编码引擎准备为就绪状态。接着于步骤153中,启动密码认证功能。前述密码认证功能的详细实施步骤请参阅美国专利申请案第11/643,101号。 于步骤154中,若通过使用者指令947产生初始与分割要求则编码引擎将自随机数产生器134取得一新随机数金钥(图未绘示)。而后,于步骤1541中,前述标志将被判断是否为管理模式。若否,则于步骤1543中,自USB信标35撷取加密金钥。否则,即于步骤1542中,自管理服务器撷取加密金钥。随后,于步骤1544中,前述加密金钥通过设定加密金钥指令9471被发送至编码引擎。编码引擎解密并撷取前述金钥(图未绘示)。编码引擎(图未绘示)撷取并解密前述加密的主密码。随后,自随机数产生器RNG 134(图未绘示)产生一新随机数金钥。前述主密码可通过编码引擎(图未绘示)使用前述新金钥加密。于步骤1545中,前述功能将通过初始化一取得新加密金钥指令9472。于步骤1546、1547中,可视需求将新加密金钥存储于管理服务器或USB信标35中。于步骤1548中,使用者要求并配置新使用者密码。主密码与使用者密码皆通过杂凑函数131重新产生并存储于固态磁盘系统(图未绘示)。并于步骤1549中,组态前述固态磁盘系统分割。 倘若前述要求并非初始化及分割,则于步骤155中,将判断是否产生一密码认证请求。若是,则于步骤1550中,启动密码认证。若否,将于步骤156中,判断是否有产生一更改密码请求。若是,则于步骤157中,启动密码更改功能。否则将通过步骤154,回到步骤155中,继续判断是否有新的密码功能请求。 图16是密码认证的流程图。首先,于步骤161中,判断前述密码是否已被认证。若是,则于步骤164中撷取并加载前述编码引擎金钥至编码引擎中,同时开启存取。随后,于步骤165中,卸载(dismount)USB信标。步骤166中,前述固态磁盘系统被安装。于步骤167,控制权转移至前述固态磁盘系统。若密码未被认证,于步骤162中,判断是否超出一尝试次数最大值(maximumnumber of attempts;MNOA)。若结果为肯定,则于步骤163中,启动一反击测量(counter measure)以抵抗恶意攻击。否则,于步骤168中,增加前述尝试次数(number of attempts;NOA)的计数。最后于步骤169中结束并返回图15绘示的密码循环的步骤154。 尽管根据本发明的安全且可扩充的固态磁盘系统可操作于安全数字卡、多媒体卡、微型快闪卡、USB装置、存储棒、高速卡、逻辑区块寻址-与非(logicalblock addressing-NAND;LBA-NAND)、开放式与非闪存接口(open NAND flashinterface;ONFI)、内嵌式多媒体卡(embed multimedia card;eMMC)与内嵌式安全数字卡(embed security digital card;eSD)的任一接口。所属领域的技术者可轻易地将前述磁盘系统置换成任一种类似的存储器装置,同时并不违反本发明的精神及保护范畴。 上述的实施例仅用来例举本发明的实施态样,以及阐释本发明的技术特征,并非用来限制本发明的保护范畴。任何熟悉此技术者可轻易完成的改变或均等性的安排均属于本发明所主张的范围,本发明的权利保护范围应以申请专利范围为准。
《安全且可扩充的固态磁盘系统.pdf》由会员分享,可在线阅读,更多相关《安全且可扩充的固态磁盘系统.pdf(40页珍藏版)》请在专利查询网上搜索。
本发明揭露一种固态磁盘系统。前述系统包含一使用者信标,以及耦接至前述主机系统的至少一层的安全虚拟存储控制器。前述系统还包含多个虚拟存储装置,前述虚拟存储装置耦接至至少一安全虚拟存储控制器。本发明的系统以及方法可适用于一快闪式存储器、磁盘存储系统、可携式存储装置、企业存储系统、个人计算机、服务器、无线存储器以及多媒体存储系统。 。
copyright@ 2017-2020 zhuanlichaxun.net网站版权所有经营许可证编号:粤ICP备2021068784号-1