发明内容 本发明所要解决的技术问题是要避免上述现有技术的不足之处而提出电脑外部设备中附加存储功能的方法及其体系结构。现有的电脑外设没有存储功能,其所需要的驱动程序及有关的文档资料或数据文件,必须存放在附带的软盘或光盘里,使用不方便,如当电脑外设移动后重新在一部电脑上安装时,往往发现驱动程序盘已遗失或损坏,不能使用。另外当驱动程序更新后也需要再找来软盘或光盘作备份。针对上述缺点和使用上的不方便,本发明提出一种在电脑外设上附加存储功能,为电脑外设提供存放其驱动程序及有关数据和文件的空间。
本发明解决上述技术问题采用的技术方案如下:
设计制造一种具有附加存储功能的电脑外部设备,通过通用总线接口与电脑主机相连接,包括实现电脑外部设备应用功能的应用系统,尤其还包括供存储数据的附加半导体存储装置、以及与所述通用总线接口相连的通用总线接口切换开关或通用总线接口集线器;所述附加半导体存储装置、应用系统分别与所述通用总线接口切换开关或通用总线接口集线器相连接,并经通用总线接口与电脑主机进行数据交换。
所述应用系统包括用于实现应用功能的应用系统子模块和应用系统通用总线接口控制子模块,所述应用系统通用总线接口控制子模块与所述通用总线接口切换开关或通用总线接口集线器相连接。
所述附加半导体存储装置包括半导体存储子模块和存储装置通用总线接口控制子模块,所述存储装置通用总线接口控制子模块与所述通用总线接口切换开关或通用总线接口集线器相连接。
所述附加半导体存储装置还包括使能开关,用于开放或禁止所述附加存储装置的应用,所述使能开关与存储装置通用总线接口控制子模块连接。
所述通用总线接口切换开关根据用户的要求,选择所述应用系统接入电脑主机实现电脑外部设备的应用功能,或者选择附加半导体存储装置接入电脑主机实现数据存储功能。
所述通用总线接口集线器可供所述应用系统和所述附加半导体存储装置同时接入电脑主机并实现各自的应用功能。
所述应用系统和所述附加半导体存储装置具有不同的逻辑单位编号。
所述附加半导体存储装置的存储介质为Flash Memory或EEPROM或MRAM或FRAM的一种或多种。
所述通用总线接口包括但不限于USB接口、IEEE1394接口、蓝牙接口、IrDA接口、HomeRF接口、IEEE802.11a接口和/或IEEE802.11b接口。
本发明的另一种具有附加存储功能的电脑外部设备,通过通用总线接口与电脑主机相连接,包括实现电脑外部设备应用功能的应用系统子模块,尤其还包括用于存储数据的半导体存储子模块、以及与所述应用系统子模块、半导体存储子模块连接的复合控制器子模块;所述复合控制子模块与所述半导体存储子模块、应用系统子模块共同实现数据存取和/或电脑外部设备的应用功能。
所述半导体存储子模块和所述应用系统子模块设置有不同的逻辑单位编号。
在所述另一种具有附加存储功能的电脑外部设备中还包括使能开关,用于开放或禁止所述半导体存储子模块的应用,所述使能开关与所述复合控制器子模块连接。
在所述另一种具有附加存储功能的电脑外部设备中所述复合控制子模块和半导体存储子模块共同实现数据存储功能;所述复合控制子模块和应用系统子模块共同实现电脑外部设备的应用功能;所述的半导体存储子模块的存储介质为Flash Memory或EEPROM或MRAM或FRAM的一种或多种。所述通用总线接口包括但不限于USB接口、IEEE1394接口、蓝牙接口、IrDA接口、HomeRF接口、IEEE802.11a接口和/或IEEE802.11b接口。
实施在电脑外部设备中附加存储功能的方法,所述电脑外部设备包括应用系统和通用总线接口,包括如下步骤:
A.在电脑外部设备中还设置附加半导体存储装置以及通用总线接口切换开关或通用总线接口集线器;
B.所述附加半导体存储装置和应用系统通过通用总线接口切换开关经通用总线接口选择接入电脑主机,实现所述应用系统的外部设备应用功能和/或附加半导体存储装置的数据存取功能;或者所述附加半导体存储装置和应用系统通过通用总线接口集线器经通用总线接口同时接入电脑主机,实现所述应用系统的外部设备应用功能和附加半导体存储装置的数据存取功能。
所述附加半导体存储装置中还至少设置有所述电脑外部设备的驱动程序。
所述附加半导体存储装置和应用系统设置有不同的逻辑单位编号。
本发明还可以实施第二种电脑外部设备中附加存储功能的方法,所述电脑外部设备包括应用系统子模块和通用总线接口,包括如下步骤:
A.在电脑外部设备中设置半导体存储子模块以及复合控制器子模块;
B.所述附加半导体存储子模块和应用系统子模块通过所述复合控制器子模块经通用总线接口接入电脑主机,实现所述应用系统的外部设备应用功能和/或附加半导体存储装置的数据存取功能。
在上述第二种方法中,所述半导体存储子模块还至少设置有所述电脑外部设备的驱动程序,所述半导体存储子模块和应用系统子模块设置有不同的逻辑单位编号。
与现有技术相比较,本发明利用一条通道既能与外设中的半导体存储装置进行数据通讯,又可以通过此通道驱动外设按传统模式工作,丰富了外设的功能,方便了人们的使用。
具体实施方式 下面结合图1~13对本发明的各实施例作进一步详细说明:
由图1可知,一种具有附加存储功能的电脑外部设备,通过通用总线接口60与电脑主机相连接,包括实现电脑外部设备应用功能的应用系统400,尤其是还包括供存储数据的附加半导体存储装置100、以及与所述通用总线接口60相连的通用总线接口切换开关或通用总线接口集线器30;所述附加半导体存储装置100、应用系统400分别与所述通用总线接口切换开关或通用总线接口集线器30相连接,并经通用总线接口60与电脑主机进行数据交换。
所述应用系统400包括用于实现应用功能的应用系统子模块50和应用系统通用总线接口控制子模块40,所述应用系统通用总线接口控制子模块40与所述通用总线接口切换开关或通用总线接口集线器30相连接。
所述附加半导体存储装置100包括半导体存储子模块10和存储装置通用总线接口控制子模块20,所述存储装置通用总线接口控制子模块20与所述通用总线接口切换开关或通用总线接口集线器30相连接。
所述附加半导体存储装置100还包括使能开关,用于开放或禁止所述附加存储装置100的应用,所述使能开关与存储装置通用总线接口控制子模块20连接。
所述通用总线接口切换开关30根据用户的要求,选择所述应用系统400接入电脑主机实现电脑外部设备的应用功能,或者选择附加半导体存储装置100接入电脑主机实现数据存储功能。
所述通用总线接口集线器30可供所述应用系统400和所述附加半导体存储装置100同时接入电脑主机并实现各自的应用功能。
所述应用系统400和所述附加半导体存储装置100具有不同的逻辑单位编号。
所述附加半导体存储装置100的存储介质为Flash Memory或EEPROM或MRAM或FRAM的一种或多种。
所述通用总线接口60包括但不限于USB接口、IEEE1394接口、蓝牙接口、IrDA接口、HomeRF接口、IEEE802.11a接口和/或IEEE802.11b接口。
由图11可知,本发明再一种具有附加存储功能的电脑外部设备,通过通用总线接口60与电脑主机相连接,包括实现电脑外部设备应用功能的应用系统子模块50,尤其是还包括用于存储数据的半导体存储子模块10、以及与所述应用系统子模块50、半导体存储子模块10连接的复合控制器子模块70;所述复合控制子模块70与所述半导体存储子模块10、应用系统子模块50共同实现数据存取和/或电脑外部设备的应用功能。
所述半导体存储子模块10和所述应用系统子模块50设置有不同的逻辑单位编号。
所述本发明再一种具有附加存储功能的电脑外部设备还包括使能开关,用于开放或禁止所述半导体存储子模块10的应用,所述使能开关与所述复合控制器子模块70连接。
所述复合控制子模块70和半导体存储子模块10共同实现数据存储功能;所述复合控制子模块70和应用系统子模块50共同实现电脑外部设备的应用功能;
所述的半导体存储子模块10的存储介质为Flash Memory或EEPROM或MRAM或FRAM的一种或多种。
所述通用总线接口60包括但不限于USB接口、IEEE1394接口、蓝牙接口、IrDA接口、HomeRF接口、IEEE802.11a接口和/或IEEE802.11b接口。
实施在电脑外部设备中附加存储功能的方法,所述电脑外部设备包括应用系统400和通用总线接口60,包括如下步骤:
A.电脑外部设备中还设置附加半导体存储装置100以及通用总线接口切换开关或通用总线接口集线器30;
B.所述附加半导体存储装置100和应用系统400通过通用总线接口切换开关经通用总线接口60选择接入电脑主机,实现所述应用系统400的外部设备应用功能和/或附加半导体存储装置100的数据存取功能;或者所述附加半导体存储装置100和应用系统400通过通用总线接口集线器经通用总线接口60同时接入电脑主机,实现所述应用系统400的外部设备应用功能和附加半导体存储装置100的数据存取功能。
所述方法中附加半导体存储装置100还至少设置有所述电脑外部设备的驱动程序。
所述方法中附加半导体存储装置100和应用系统400设置有不同的逻辑单位编号。
本发明还有第二种在电脑外部设备中附加存储功能的方法,所述电脑外部设备包括应用系统子模块50和通用总线接口60,包括如下步骤:
A.电脑外部设备中设置半导体存储子模块10以及复合控制器子模块70;
B.所述附加半导体存储子模块10和应用系统子模块50通过所述复合控制器子模块70经通用总线接口60接入电脑主机,实现所述应用系统400的外部设备应用功能和/或附加半导体存储装置100的数据存取功能。
在所述第二种方法中,所述半导体存储子模块10还至少设置有所述电脑外部设备的驱动程序。
在所述第二种方法中,所述半导体存储子模块10和应用系统子模块50设置有不同的逻辑单位编号。
如图2所示是本发明的另一个实施例:一种具有附加存储功能的电脑外部设备的硬件功能方框图,在外设中设置应用系统400、附加快闪存储装置100和USB总线接口切换开关(Switch)或USB HUB(集线器)子模块31,附加快闪存储装置101借助USB(通用串行总线)接口61与电脑主机系统相连接。附加快闪存储装置100包括:USB与快闪存储控制器子模块21、快闪存储器(Flash Memory)11;USB总线接口切换开关(Switch)或USB HUB子模块31分别与应用系统400和USB与快闪存储控制器子模块21联接,USB与快闪存储控制器子模块21和快闪存储器11联接,这些联接支持信号和数据的双向流动。
本实施例中,通用接口采用USB接口,半导体存储介质采用快闪存储器。快闪存储器11是由一块或多块半导体快闪存储器芯片组成,按现有寻址方式连接,该模块的功能是存储原普通电脑外部设备即应用系统400的驱动程序和其它数据文件。
快闪存储器11对应一个存储空间,也可以将其划分为至少两个存储空间。
USB与快闪存储控制器子模块21完成与主机系统的连接,并解释、转换、控制和传输USB接口协议;完成对USB接口61的初始化和控制、接受从电脑主机发送来的命令和数据、解释并执行电脑主机发送来的命令、将数据存储到快闪存储器11中或从中读取数据、将执行结果通过USB接口61返回给电脑主机。
USB总线接口切换开关或USB集线器子模块31,可选择附加快闪存储装置100接入电脑主机,作为与电脑主机相连的一个存储盘,或选择应用系统400接入主机直接应用,实现原电脑外设的功能;而USB集线器则可同时选择快闪存储器11和应用系统400接入主机,此时主机可同时识别和支持快闪存储器11和应用系统400。
如图3所示是本发明具有附加存储功能的电脑外部设备的又一个实施例:本实施例中,通用接口采用IEEE1394接口,半导体存储介质采用快闪存储器。在应用系统400上联接附加快闪存储装置100和IEEE1394总线接口切换开关(Switch)或IEEE1394 HUB(集线器)子模块32,附加快闪存储装置100借助IEEE1394接口62与电脑主机系统相连接。附加快闪存储装置100包括:IEEE1394与快闪存储控制器子模块22、快闪存储器(Flash Memory)11;IEEE1394总线接口切换开关(Switch)或IEEE1394 HUB子模块32分别与应用系统400和IEEE1394与快闪存储控制器子模块22联接,IEEE1394与快闪存储控制器子模块22与快闪存储器11联接,这些联接支持信号和数据的双向流动。
本实施例中,快闪存储器11由一块或多块半导体快闪存储器芯片组成,按现有寻址方式连接,该模块的功能是存储原普通电脑外部设备即应用系统400的驱动程序和其它数据文件。
快闪存储器11对应一个存储空间,也可以将其划分为至少两个存储空间。
IEEE1394与快闪存储控制器子模块22完成与主机系统的连接,并解释、转换、控制和传输IEEE1394接口协议;完成对IEEE1394接口62的初始化和控制、接受从电脑主机发送来的命令和数据、解释并执行电脑主机发送来的命令、将数据存储到快闪存储器11中或从中读取数据、将执行结果通过IEEE1394接口62返回给电脑主机。
IEEE1394总线接口切换开关或IEEE1394集线器子模块32,可选择附加快闪存储装置100接入电脑主机,作为与电脑主机相连的一个存储盘,或选择应用系统400接入主机直接应用,实现原电脑外设的功能。
图4为快闪存储器11的存储空间分配图,每个存储空间包括数据区、专用信息区、数据缓存区和整个附加存储装置专用信息区。整个附加存储装置专用信息区存储附加快闪存储装置100的信息,例如但不限于闪存坏块的记录、用户密码、数字签名等,专用信息区也可以不要。整个存储模块也可划分成N个存储空间。每个存储空间可以对应一个存储盘。
图5为本发明如图2所示具有附加存储功能的电脑外部设备的实施例执行SFF8070i设备子类、Bulkonly传输协议并通过USB总线接口切换开关或USB集线器子模块31选择附加快闪存储装置100接入电脑主机作为与电脑主机相连的一个存储盘实现存储功能时的内部工作流程图。
第一步:与电脑主机系统的USB接口相连接,从USB接口61获取供电,附加半导体存储装置100上电;初始化USB与快闪存储控制器子模块21,初始化USB接口;检测快闪存储器11、读取附加半导体存储装置100的专用信息;
第二步:等待操作请求;
第三步:在有操作请求时,判断是否为标准的USB操作请求;
第四步:如果是标准的USB操作请求,则处理标准的USB操作请求,并返回操作结果或状态信息,回到第二步;
第五步:如果不是标准的USB操作请求,则判断是否读容量操作请求;
第六步:如果是读容量操作请求,则返回设备存储容量,回到第二步,否则判断是否读数据操作请求;
第六步:如果是读数据操作请求,则将逻辑地址换算成闪存芯片的序列号和该闪存芯片上的物理地址及根据坏块记录信息跳过闪存中的坏快等相应处理,并从中读取数据、返回该数据,回到第二步;否则判断是否写数据操作请求;
第七步:如果是写数据操作请求,则将逻辑地址换算成闪存芯片的序列号和该闪存芯片上的物理地址及根据坏块记录信息跳过闪存中的坏快等相应处理,并将数据写入缓存,将新写入的数据与原来的数据在缓存中合并,再将合并的数据写入缓存,回到第二步,否则判断是否其它操作请求;
第八步:如果是其它操作请求,则进行相应的处理,并返回处理结果和状态信息,回到第二步,否则直接回到第二步。
一旦主机关电,或将设备从主机系统拔掉,设备将停止工作。
图6是本发明如图2所示的实施例采用切换开关时生产厂家使用附加存储装置存放程序或文档的流程。
第一步:USB总线切换开关拔到选择附加存储装置;
第二步:将USB插头插入主机USB口;
第三步:操作系统0S立即产生一个可移动存储装置的盘符;
第四步:生产厂家可把原普通电脑外部设备应用系统400有关的驱动程序、数据或文档文件拷贝到刚生成的可移动存储装置;
第五步:从主机USB口拔除USB插头。
图7是图2所示的实施例采用切换开关时用户使用附加半导体存储装置100及应用系统400(原普通电脑外部设备)的流程。
第一步:开关拔选择附加半导体存储功能;
第二步:将USB插头插入主机USB口;
第三步:操作系统OS立即产生一个可移动存储装置的盘符;
第四步:用户可把与应用系统400(原普通电脑外部设备)有关的驱动程序、数据或文档文件从刚生成的可移动存储装置拷贝到硬盘指定的目录,以便安装驱动程序等;
第五步:用户也可以使用该附加存储盘存放或读取其它文件或数据、或更新设备驱动程序;
第六步:从主机USB口拔除USB插头;
第七步:开关拔到选择应用系统400(普通电脑外部设备)一边;
第八步:将USB插头插入主机USB口;
第九步:操作系统OS会找到新的USB设备(原普通电脑外部设备400),并询问该设备的驱动程序在哪里,用户输入刚备份的驱动程序的路径,操作系统即可正常使用该外设的应用系统400。
图8为图2所示的实施例内部采用USB HUB时生产厂家使用附加存储装置存放程序或文档的流程。
第一步:将USB插头插入主机USB口;
第二步:操作系统OS立即自动识别并产生一个可移动存储装置的盘符;
第三步:生产厂家可把于应用系统400(原普通电脑外部设备)有关的驱动程序、数据或文档文件拷贝到刚生成的可移动存储装置(盘);
第四步:从主机USB口拔除USB插头。
图9是图2所示的实施例内部采用USB HUB时,用户使用附加存储装置及设备的流程。
第一步:将USB插头插入主机USB口。
第二步:操作系统OS立即自动识别并产生一个可移动存储装置的盘符,用户可看到设备的驱动程序或有关的数据文件等。
第三步:操作系统OS会找到新的USB设备(原普通电脑外部设备400),并询问该设备的驱动程序在哪里,用户输入刚识别到的驱动程序的路径,操作系统即可正常使用该外设。
第四步:用户也可以使用该附加存储盘存放或读取其它文件或数据、或更新的设备驱动程序。
图10A是图2所示的实施例内部切换开关31的电路原理图。USB连接器的2、3脚连接切换开关SW1,切换开关SW1在两种状态之间切换,第一种状态连接可实现电脑外部设备应用功能的应用系统400,第二种状态通过两个22欧姆的电阻R1、R2连接AOSD,在R1、R2与AOSD之间分别通过1兆欧姆的电阻接地。
图10B是图2所示的实施例内部21存储装置USB总线接口控制子模块的电路原理图。U5为USB控制器,U4为3.3V三端稳压电源,U4为U5提供3.3V电源供应。XT1为6MHz晶振,与U5连接。
图10C是图2所示的实施例内部11闪存存储子模块的电路原理图。U2为NAND闪存存储器,与U5连接并为其所控制。
目前的常见的主机的操作系统如Windows Me/2000/XP/Mac OS9.x/X/Linux 4.2.x都自带通用接口的大容量存储设备(Mass Storage)的驱动程序,当本发明实施例具有附加存储功能的电脑外设接入电脑主机时,主机可以自动识别出该外设中的存储子设备(使用主机中自带的存储设备驱动程序,无需借助额外的驱动程序),然后从该存储设备中寻找应用系统子设备的驱动程序,并自动安装应用系统子设备的驱动程序,从而实现应用系统子设备的驱动程序的自动安装。
实践证明,本发明利用一条通道既能与外设中的半导体存储装置进行数据通讯,又可以通过此通道驱动外设按传统模式工作,丰富了外设的功能,方便了人们的使用。