CN100578467C - 一种基于通用串行总线的缓存装置 - Google Patents

一种基于通用串行总线的缓存装置 Download PDF

Info

Publication number
CN100578467C
CN100578467C CN200710087485A CN200710087485A CN100578467C CN 100578467 C CN100578467 C CN 100578467C CN 200710087485 A CN200710087485 A CN 200710087485A CN 200710087485 A CN200710087485 A CN 200710087485A CN 100578467 C CN100578467 C CN 100578467C
Authority
CN
China
Prior art keywords
storage medium
volatile storage
interface
write command
usb
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200710087485A
Other languages
English (en)
Other versions
CN101271424A (zh
Inventor
熊帆
李春华
杨光敏
刘云霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Petevio Institute Of Technology Co ltd
Original Assignee
Potevio Institute of Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Potevio Institute of Technology Co Ltd filed Critical Potevio Institute of Technology Co Ltd
Priority to CN200710087485A priority Critical patent/CN100578467C/zh
Publication of CN101271424A publication Critical patent/CN101271424A/zh
Application granted granted Critical
Publication of CN100578467C publication Critical patent/CN100578467C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种基于通用串行总线的缓存装置,该缓存装置作为主机的内存和硬盘之间的一级缓存。该缓存装置采用USB接口将接收自主机的USB操作命令发送给控制器;并将控制器返回的操作结果发送给主机;控制器对接收自USB接口的USB操作命令进行分析和处理;根据分析结果向挥发性存储介质接口发送读写指令;根据所述挥发性存储介质接口返回的指令执行结果确定所述操作结果,发送给USB接口;挥发性存储介质接口,用于连接挥发性存储介质,对挥发性存储介质进行读写。本发明采用挥发性存储介质接口连接挥发性存储介质,利用其随机读写速度较快的优势,提高计算机系统的性能。

Description

一种基于通用串行总线的缓存装置
技术领域
本发明涉及缓存技术,具体涉及一种基于通用串行总线(USB,UniversalSerial Bus)的缓存装置。
背景技术
计算机中所有运行的程序都需要通过内存执行。如果执行的程序很大或很多,就会导致内存消耗殆尽。
目前,常用的解决方法是当内存被占用完时,计算机通过调用硬盘空间来充当内存,以缓解内存的紧张。当保存到硬盘中的数据被调用时,计算机就对硬盘进行随机读写,这里的随机读写是相较于顺序读写而言。由于硬盘的随机读写速度为1MB/s左右,而内存的随机读写速度为3~4GB/s,因此,硬盘的随机读写速度比内存要慢很多。用户在使用计算机时就会感觉计算机反应很慢,具体表现为模式切换缓慢,软件启动或者软件反应缓慢等。
为了解决这个问题,Windows Vista引入了一个提升系统随机读写性能的新概念-Readyboost技术。Readyboost技术将USB2.0闪存盘作为内存和硬盘之间的一级缓存来提高软件运行性能。该技术将一些原来保存在硬盘上的,存取较多的数据存放在闪存盘上,读取时优先查找闪存盘,如果没有所要的数据,再查找硬盘。由于闪存盘随机读写速度为10~20MB/s,是硬盘的10~20倍,且对于零碎文件的处理具有一定优势,因此Readyboost技术能够在一定程度上提高系统性能。
然而,这项技术目前仅支持USB2.0接口的闪存盘和计算机内置读卡器中的闪存。具体要求是:4k随机读取的速度大于2.5MB/s,512k随机写入速度大于1.75MB/s。可见,现有的Readyboost技术所提供的扩展缓存方案对作为缓存介质的闪存盘的性能,有较为苛刻的要求。
另外,虽然计算机对闪存盘的随机读写速度能够达到10~20MB/s,大于硬盘的随机读写速度,但与内存相比还是很慢,作为缓存提速作用有限。因此,目前将闪存盘作为计算机系统缓存的方法,系统提速有限,用户不能明显感到系统性能的明显提升。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于通用串行总线的缓存装置,能够作为内存和硬盘之间的一级缓存,提高计算机系统的性能。
为达到上述目的,本发明的技术方案是这样实现的:本发明提供了一种基于通用串行总线的缓存装置,采用通用串行总线USB接口在主机与缓存装置之间建立一条USB通信通道,该缓存装置作为主机的内存和硬盘之间的一级缓存;该缓存装置包括USB接口、控制器和挥发性存储介质接口;
USB接口,与主机上的USB接口相连,用于接收主机发送的USB操作命令,并发送给所述控制器;将所述控制器返回的所述USB的操作命令操作结果发送给所述主机;
控制器,用于对接收自所述USB接口的所述USB操作命令进行分析和处理;根据分析结果,向挥发性存储介质接口发送读写指令;根据所述挥发性存储介质接口返回的指令执行结果确定所述操作结果,发送给所述USB接口;
挥发性存储介质接口,用于连接挥发性存储介质;将接收自所述控制器的读写指令发送给所述挥发性存储介质;将所述挥发性存储介质返回的指令执行结果发送给所述控制器。
该缓存装置进一步包括与所述挥发性存储介质接口相连的挥发性存储介质,用于接收并执行所述挥发性存储介质接口发送的读写指令,向所述挥发性存储介质接口返回指令执行结果。
为了提高缓存装置的可扩展性,该缓存装置进一步包括与所述挥发性存储介质接口相连的挥发性存储介质插槽,用于插接挥发性存储介质。
该缓存装置进一步包括插接于所述挥发性存储介质插槽上的挥发性存储介质,用于接收所述挥发性存储介质接口发送的读写指令,向所述挥发性存储介质接口返回操作结果。
其中,所述控制器包括分析模块和处理模块;所述分析模块,用于对接收自所述USB接口的USB操作命令进行分析和处理:
若经分析得到所述USB操作命令为非读写命令,则将所述非读写命令发送给所述处理模块,根据所述处理模块返回的非读写命令处理结果确定所述操作结果,将该操作结果发送给所述USB接口;
若经分析得到所述USB操作命令为读写命令,则向所述挥发性存储介质接口发送读写指令,对所述挥发性存储介质进行随机读写;根据所述挥发性存储介质接口返回的指令执行结果确定所述操作结果,将该操作结果发送给所述USB接口;
所述处理模块,用于执行、处理接收自所述分析模块的非读写命令,将非读写命令处理结果返回给所述分析模块。
为了能够采用该缓存装置存储数据,该缓存装置进一步包括非挥发性存储介质接口;
所述控制器进一步用于,根据分析结果,向所述非挥发性存储介质接口发送读写指令,对非挥发性存储介质进行块读写,根据所述非挥发性存储介质接口返回的指令执行结果确定所述操作结果,将该操作结果发送给所述USB接口;
所述非挥发性存储介质接口,用于连接非挥发性存储介质;将接收自所述控制器的读写指令发送给所述非挥发性存储介质;将所述非挥发性存储介质返回的指令执行结果发送给所述控制器。
该缓存装置进一步包括与所述非挥发性存储介质接口相连的用于存储数据的非挥发性存储介质;所述非挥发性存储介质接收并执行所述非挥发性存储介质接口发送的所述读写指令,向所述非挥发性存储介质接口返回指令执行结果。
其中,所述控制器包括分析模块、处理模块和判断模块;
所述分析模块,用于对接收自所述USB接口的USB操作命令进行分析和处理:
若经分析得到所述USB操作命令为非读写命令,则将所述非读写命令发送给所述处理模块,根据所述处理模块返回的非读写命令处理结果确定所述操作结果,将该操作结果返回给所述USB接口;
若经分析得到所述USB操作命令为读写命令,则发送给所述判断模块;将所述判断模块返回的操作结果发送给所述USB接口;
所述判断模块,根据接收自所述分析模块的读写命令,判断所述读写命令所要读写的存储介质:
当主机对所述挥发性存储介质进行缓存数据的随机读写操作时,所述判断模块经判断得到所述读写命令为对所述挥发性存储介质进行的读写命令,则向挥发性存储介质接口发送读写指令,对挥发性存储介质进行随机读写;根据所述挥发性存储介质接口返回的指令执行结果确定所述操作结果,发送给所述分析模块;
当主机对所述非挥发性存储介质进行存储数据的块读写操作时,所述判断模块经判断得到所述读写命令为对所述非挥发性存储介质进行的读写命令,则向非挥发性存储介质接口发送读写指令,对非挥发性存储介质进行块读写;根据所述非挥发性存储介质接口返回的指令执行结果确定所述操作结果,发送给所述分析模块;
所述处理模块,用于处理、执行接收自所述分析模块的非读写命令,将非读写命令处理结果返回给所述分析模块。
所述非挥发性存储介质进一步用于缓存数据;
当主机对所述非挥发性存储介质进行缓存数据的随机读写操作时,所述判断模块经判断得到所述读写命令为对所述非挥发性存储介质进行的读写命令,则向非挥发性存储介质接口发送读写指令,对非挥发性存储介质进行块读写;根据所述非挥发性存储介质接口返回的指令执行结果确定所述操作结果,发送给所述分析模块。
本发明中,所述USB接口为电气特性符合标准USB协议,物理结构尺寸不符合标准USB协议的非标准USB接口;
该缓存装置进一步包括转接线,该转接线一端为与所述缓存装置上所述非标准USB接口相匹配的非标准USB接口;另一端为与所述主机相匹配的标准USB接口。
所述挥发性存储介质包括通过寻址方式相连的、一片以上的挥发性存储介质芯片。
所述挥发性存储介质为动态随机存储器DRAM、同步动态随机存储器SDRAM、静态随机存储器SRAM、页模式随机存储器PMRAM、快速页模式随机存储器FPMRAM、扩充数据输出随机存储器EDORAM、突发扩充数据输出随机存储器BEDORAM、同步突发静态随机存储器SBSRAM、流水线突发静态随机存储器PBSRAM、视频随机存储器VRAM、缓存型视频随机存储器CVRAM、缓存型动态随机存储器CDRAM、增强型动态随机存储器EDRAM、磁电存储器中的任意一种。
所述非挥发性存储介质为闪存。
与现有技术相比,本发明所提供的基于通用串行总线的缓存装置采用挥发性存储介质接口,连接挥发性存储介质。利用挥发性存储介质随机读写速度较快的优势,作为计算机系统内存和硬盘之间的一级缓存,提高计算机系统的随机读写速度,从而提升了计算机系统性能。与现有技术USB闪存盘作为缓存相比,随机读写速度快,系统性能提升明显。
其次,本发明还可以在挥发性存储介质接口上连接挥发性存储介质插槽,将挥发性存储介质插接在该插槽中。在提高计算机系统随机读写速度的同时,用户可以灵活的更换插槽中的挥发性存储介质,增加了缓存装置的可扩展性。
另外,本发明还在缓存装置中增加了非挥发性存储介质,使得本发明的缓存装置还能作为普通数据存储设备使用,实现了一机双功。
附图说明
图1为本发明基于通用串行总线的缓存装置的组成结构示意图;
图2为本发明实施例一基于通用串行总线的缓存装置的组成结构示意图;
图3为图2中控制器220的组成结构示意图;
图4为采用图2的基于通用串行总线的缓存装置实现数据缓存的方法流程图;
图5为本发明实施例二基于通用串行总线的缓存装置的组成结构示意图。
图6为本发明实施例三基于通用串行总线的缓存装置的组成结构示意图;
图7为图6中控制器620的组成结构示意图;
图8为采用图6的基于通用串行总线的缓存装置实现数据缓存的方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明。
本发明关键在于:基于通用串行总线的缓存装置采用挥发性存储介质接口外接挥发性存储介质,作为缓存数据的存储介质;采用USB接口在主机与缓存装置之间建立一条USB通信通道。采用控制器为控制核心,按照USB协议在主机与缓存装置之间进行命令和数据的传输,在接收到主机随机读写命令后,则通过对挥发性存储介质进行实时的随机读写操作,实现数据缓存。
由于挥发性存储介质的读写速度快,可以达到GB/s级别,且可以采用实时随机读写,因此本发明的基于通用串行总线的缓存装置的控制器在接收到主机的随机读写命令后,立刻对挥发性存储介质进行随机读写操作,从而提高主机的性能。
这里,需要说明的是,主机对缓存装置进行随机读写是相较于顺序读写而言,而缓存装置中的控制器对缓存装置的介质进行随机读写是相较于块读写而言。控制器的随机读写所指示的读写数据量为任意大小,取决于主机对本发明缓存装置进行随机读写的数据量;而控制器的块读写所指示的读写数据量为预先确定的块大小,块的大小值一般为2的指数次幂,常用512字节。
其中,挥发性存储介质是掉电数据即失的存储介质,可以采用如下类型的随机存储器(RAM,Random Access Memory)。例如,动态随机存储器(DRAM,Dynamic RAM),同步动态随机存储器(SDRAM,SynchronousDynamic RAM),静态随机存储器(SRAM,Static RAM),页模式随机存储器(PMRAM,Page Mode RAM),快速页模式随机存储器(FPMRAM,Fast Page Mode RAM),扩充数据输出随机存储器(EDORAM,Extended DataOutput RAM),突发扩充数据输出随机存储器(BEDORAM,Burst ExtendedData Output RAM),同步突发静态随机存储器(SBSRAM,Synchronous BurstStacic RAM),流水线突发静态随机存储器(PBSRAM,Pipelined Burst StaticRAM),视频随机存储器(VRAM,Video RAM),缓存型视频随机存储器(CVRAM,Cached Video RAM),缓存型动态随机存储器(CDRAM,CachedDynamic RAM),增强型动态随机存储器(EDRAM,Enhanced DynamicRAM),磁电存储器;其中SDRAM又包括双倍速率(DDR,Double Date Rate)SDRAM,第二代双倍速率(DDRII)SDRAM,第三代双倍速率(DDRIII)SDRAM和四倍速率(QDR)SDRAM。
图1为本发明基于通用串行总线的缓存装置的组成结构示意图。如图1所示,该缓存装置包括USB接口110、控制器120和挥发性存储介质接口130。
其中,USB接口110,用于接收主机发送的USB操作命令,并发送给控制器120;将控制器120返回的操作结果发送给主机。
控制器120,用于接收USB接口110发送来的USB操作命令,对接收的USB操作命令进行分析和处理,然后根据分析结果,向挥发性存储介质接口130发送读写指令;控制器120还根据挥发性存储介质接口130返回的指令执行结果确定USB操作命令的操作结果,将该操作结果发送给USB接口110。该操作结果包括操作状态或者包括操作所获得的数据和操作状态。其中,操作状态是根据指令执行结果确定的,操作所获得的数据是从指令执行结果中获取的。
挥发性存储介质接口130,用于连接挥发性存储介质;将接收自控制器120的读写指令发送给挥发性存储介质140;将挥发性存储介质140返回的指令执行结果发送给控制器120。
基于以上技术方案,以下举实施例对本发明基于通用串行总线的缓存装置各种具体实施方式进行详细描述。
实施例一
图2为本发明实施例一基于通用串行总线的缓存装置的组成结构示意图。如图2所示,该缓存装置200包括USB接口210、控制器220和挥发性存储介质接口230和挥发性存储介质240。
其中,USB接口210,用于接收主机发送的USB操作命令,并发送给控制器120;将控制器120返回的操作结果发送给主机。这里所说的主机,为计算机系统。
USB接口210可以是符合USB标准的USB接口,即电气特性和物理结构尺寸均符合USB标准的接口,将缓存装置200与主机相连,提供主机与USB缓存装置之间的物理和电气通道。该USB接口210为USB 2.0及以后规范版本的高速接口。
USB接口210也可以采用非标准的USB接口,即只有电气特性符合USB标准,但物理结构尺寸不符合USB标准的接口。由于主机上的USB接口一般为标准USB接口,因此在这种情况下,还需要扩展一条转接线,将缓存装置200的USB接口210与主机的标准USB接口相连。具体可以这样实现:
采用一根电缆作为转接线,与主机的标准USB接口连接。该电缆一端是与缓存装置200的USB接口210物理尺寸结构相匹配的非标准的USB接口;另一端是与主机的标准USB接口物理尺寸结构相匹配的标准USB接口。这里,如果USB接口210是插头形式,则转接线与缓存装置200相连的一端就是与USB插头相配合的插槽。
控制器220,用于接收USB接口210发送来的USB操作命令,对接收的USB操作命令进行分析和处理,例如USB协议解析、数据格式转换、命令类型分析等,经分析得到该USB操作命令为对挥发性存储介质240进行的读写命令,则向挥发性存储介质接口230发送读写指令,对挥发性存储介质进行随机读写;控制器220还根据挥发性存储介质接口230返回的指令执行结果确定操作结果,将该操作结果发送给USB接口210。该控制器220可以采用微处理器实现,也可以不采用微处理器实现,例如,采用现场可编程逻辑阵列(FPGA)进行硬件编程实现。
由于在使用缓存装置时,主机需要首先对插入的缓存装置进行初始化,包括读取容量、格式化信息,厂商信息等信息,然后显示盘符。在将该缓存装置插入主机后,控制器220会接收到主机发送来的初始化命令,则控制器220对初始化命令进行分析后,将命令处理结果返回给主机。这些命令的处理采用现有技术的获取方法。
控制器220接收的读写命令和非读写命令统称为USB操作命令。USB操作命令都是主机通过USB接口210发送至控制器220的。因此,控制器220在接收到USB操作命令后,进行分析和处理,当USB操作命令为读写命令时,控制器220才向挥发性存储介质发送读写指令。
挥发性存储介质接口230,用于连接挥发性存储介质;将接收自控制器220的读写指令发送给挥发性存储介质240,对挥发性存储介质进行随机读写;将挥发性存储介质240返回的指令执行结果发送给控制器220。
本实施例中,挥发性介质接口230上固定的连接有挥发性存储介质240。该挥发性存储介质240,用于接收并执行挥发性存储介质接口230发送来的读写指令,根据该读写指令进行随机读写,向挥发性存储介质接口230返回指令执行结果。该挥发性存储介质240可以包括一片或者一片以上的挥发性存储介质芯片。当有多片挥发性存储介质芯片时,按现有寻址方式连接,同时控制器220按照现有的寻址方法对挥发性存储介质芯片进行随机读写。
控制器220是缓存装置的核心部件。图3为图2中控制器220的组成结构示意图。如图3所示,该控制器220包括分析模块和处理模块。
其中,分析模块用于接收USB接口210发来的USB操作命令,分析该USB操作命令类型:
如果是非读写命令,则对其进行的处理为:将该非读写命令发送给处理模块,根据处理模块返回的非读写命令处理结果确定操作结果,将该操作结果返回给USB接口210;其中,对于获取信息类的非读写命令,如果非读写命令处理结果显示处理成功,则将获取的信息和处理成功状态确定为操作结果;否则,则将处理失败状态确定为操作结果;对于不获取信息只进行操作的非读写命令,根据非读写命令处理结果,将处理成功/失败状态确定为操作结果。
当主机对缓存装置的缓存数据进行随机读操作,则USB操作命令为读命令,则对其进行的处理为:向挥发性存储介质接口230发送读指令,对挥发性存储介质进行随机读操作,根据挥发性存储介质接口230返回的读指令执行结果,确定USB操作命令的操作结果,发送给USB接口210。其中,如果随机读操作成功,则将随机读取的数据和读取成功状态确定为操作结果,返回给USB接口210;如果随机读操作失败,则将读取失败状态确定为操作结果返回给USB接口210。
当主机对缓存装置的缓存数据进行随机写操作,则USB操作命令为写命令,则对其进行的处理为:向挥发性存储介质接口230发送写指令,对挥发性存储介质进行随机写操作,该随机写指令中携带有所写数据;将所写数据以随机写方式写入挥发性存储介质,并根据写指令执行结果,确定USB操作命令的操作状态,发送给USB接口210。其中,如果随机写操作成功,则将写入成功状态确定为操作结果返回给USB接口210;如果随机写操作失败,则将写入失败状态确定为操作结果返回给USB接口210。
处理模块,执行、处理接收自分析模块的非读写命令,向分析模块返回非读写命令处理结果。例如,处理模块存储有挥发性存储介质240的容量、格式化容量等装置信息,根据非读写命令向分析模块返回这些装置信息,如果处理失败,则可以不返回结果。当处理失败状态作为操作结果经USB接口210返回给主机后,主机会要求重新进行处理。这些信息可以存储于该处理模块中,也可以由该处理模块通过挥发性存储介质接口230从挥发性存储介质240中获取。例如,处理模块根据挥发性存储介质240的容量,获取缓存装置的容量,作为装置信息返回。在这种情况下,处理模块还需要与挥发性存储介质接口230相连,如图3中虚线所示。
图4为采用图2的基于通用串行总线的缓存装置实现数据缓存的方法流程图。如图4所示,将缓存装置插入主机后,该方法包括以下步骤:
步骤401:缓存装置接收主机发来的初始化命令。初始化命令通过USB接口210发送至控制器220。控制器220分析该USB操作命令类型为非读写命令,则根据这些非读写命令进行相应处理,根据非读写命令处理结果确定操作结果,通过USB接口210返回给主机。一般装置在初始化时需要获取相应的装置信息,当获取装置信息成功,则将装置信息和处理成功状态确定为操作结果返回,返回的装置信息可以指示主机产生和显示缓存装置的盘符,以及该缓存装置的当前状态。
步骤402:控制器220开始等待USB操作命令。
步骤403:USB接口210接收主机发送来的USB操作命令,发送给控制器220。
步骤404:控制器220分析该USB操作命令的类型;分析出是读写命令后再进一步分析是读命令还是写命令。如果是读命令,则执行步骤405、406;如果是写命令;则执行步骤407、408。
步骤405:控制器220通过挥发性存储介质接口230向挥发性存储介质240发送读指令,从而实现对挥发性存储介质240进行实时随机读操作。
步骤406:挥发性存储介质240根据接收的读指令,进行数据的随机读操作,然后将读取数据作为读指令执行结果通过挥发性存储介质接口230返回给控制器220;控制器220将读取的数据和读取成功状态作为USB操作命令的操作结果返回给USB接口210。如果读取失败则不返回数据;控制器220将读取失败状态作为USB操作命令的操作结果返回给USB接口210。返回步骤402。
步骤407:控制器220通过挥发性存储介质接口230向挥发性存储介质240发送写指令,从而对挥发性存储介质240进行实时的随机写操作。
步骤408:控制器220根据挥发性存储介质240返回的写指令执行结果,确定USB操作命令的操作结果,通过USB接口210发送给主机。如果写指令执行结果指示写操作成功,则控制器220将写入成功状态作为操作结果返回给USB接口210;否则,返回写入失败状态。返回步骤402。
本实施例中,如果挥发性存储介质240由一片以上的挥发性存储介质芯片组成,则控制器220接收到随机读写命令后,根据挥发性存储介质的寻址方式,对对应的挥发性存储介质进行随机读写操作。
本发明在控制器120接收到读写命令后,立刻根据读写命令对挥发性存储介质进行随机读写操作,该随机读写的数据量为接收的读写命令中所需读写的数据量。因此,本发明的控制器可以对挥发性存储介质进行任意数据量的随机读写,而不是进行块读写。
由于挥发性存储介质是掉电数据即失的存储介质,因此在本发明缓存装置使用完毕,或者使用中从主机拆除该缓存装置,则缓存数据不会保存在存储介质中。可见,与现有技术采用非挥发性存储介质作为缓存装置的存储介质相比,本发明基于通用串行总线的缓存装置除了随机读写速度快的优点,还具有不必担心数据的丢失或被盗用的优势。
实施例二
为了增加本发明基于通用串行总线的缓存装置的可扩展性,本发明在实施例一的缓存装置200中增加了挥发性存储介质插槽,将挥发性存储介质插接与该挥发性存储介质插槽上。不同类型的挥发性存储介质采用与其相适应的挥发性存储介质插槽,挥发性存储介质插槽均为现有的原器件。因此,用户可以随意更换与挥发性存储介质插槽同种介质类型的挥发性存储介质,从而通过采用容量更大的、与挥发性存储介质插槽类型相符的挥发性存储介质,实现对本发明基于通用串行总线的缓存装置的扩展。
图5为本发明实施例二基于通用串行总线的缓存装置的组成结构示意图。如图5所示,该缓存装置500包括USB接口510、控制器520、挥发性存储介质接口530、挥发性存储介质插槽550。与图2示出实施例一的缓存装置200的组成结构不同之处在于,本实施例中的缓存装置500中,不包括挥发性存储介质,增加了连接于挥发性存储介质接口530的挥发性存储介质插槽550。而挥发性存储介质540插接于该挥发性存储介质插槽550上。
带有挥发性存储介质插槽550的缓存装置500外接挥发性存储介质540后,其工作原理与实施例一中缓存装置200的工作原理相同。
挥发性存储介质插槽550可以是DRAM插槽,SDRAM插槽,SRAM插槽,PMRAM插槽,FPMRAM插槽,EDORAM插槽,BEDORAM插槽,SBSRAM插槽,PBSRAM插槽,VRAM插槽,CVRAM插槽,CDRAM插槽,EDRAM插槽或磁电存储器插槽。挥发性存储介质插槽550必须与挥发性存储介质540配合使用。例如,挥发性存储介质插槽550采用,SDRAM插槽,那么插接于该SDRAM插槽上的挥发性存储介质必须是各种容量的SDRAM。
实施例三
本实施例中,基于通用串行总线的缓存装置的存储介质进一步包括非挥发性存储介质。非挥发性存储介质是掉电数据不失的存储介质。该非挥发性存储介质为本发明的缓存装置增加了一种保存数据的功能。本实施例中,非挥发性存储介质采用闪存。
图6为本发明实施例三基于通用串行总线的缓存装置的组成结构示意图。如图6所示,该缓存装置600包括USB接口610、控制器620、挥发性存储介质接口631、闪存介质接口632、挥发性存储介质640和闪存650。
其中,USB接口610,用于接收主机发送的USB操作命令,并发送给控制器620;将控制器620返回的操作结果发送给主机。
该USB接口610将缓存装置600与主机相连,提供主机与缓存装置600之间的物理通道和电气通道。USB接口610仍可以采用标准或非标准的USB接口。
控制器620,用于接收主机通过USB接口610发送来的USB操作命令,对该USB操作命令进行分析、处理和判断,根据分析判断结果,向挥发性存储介质接口631或闪存介质接口632发送读写指令,并根据返回的指令执行结果确定操作结果,将该操作结果返回给USB接口610。本实施例中,USB操作命令包括非读写命令、对挥发性存储介质640的读写命令和对闪存650的读写命令等,因此控制器620增加了一个判断操作,主要是判断对哪个存储介质进行读写操作。
挥发性存储介质接口631与控制器620相连,挥发性存储介质640与挥发性存储介质接口631相连。挥发性存储介质接口631的功能与实施例一中的挥发性存储介质接口230相同;挥发性存储介质640的功能与实施例一中的挥发性存储介质240相同。
闪存介质接口632,用于将接收自控制器620的读写指令,发送给闪存650;将闪存650返回的指令执行结果,发送给控制器620。该闪存介质接口632是与闪存650配合的非挥发性存储介质接口。如果采用其他非挥发性存储介质,则存储介质接口也要使用相配合的非挥发性存储介质接口。
闪存650,用于根据并执行接收自闪存介质接口632的读写指令,进行数据的块读写,向闪存介质接口632返回块读写指令执行结果。
由于控制器620功能的增加,则其内部组成结构也与实施例一有所区别。图7为图6中控制器620的组成结构示意图。如图7所示,与图3示出的控制器220相比,不同之处在于该控制器620进一步包括判断模块,与分析模块相连。
分析模块接收到USB接口610发来的USB操作命令,分析该USB操作命令类型;
当主机对缓存装置进行非读写操作时,分析模块接收的USB操作命令是非读写命令,则对其进行的处理为:将非读写命令发送给处理模块,接收处理模块返回的非读写命令处理结果,根据非读写命令处理结果确定操作结果,并将操作结果返回给USB接口610;
当主机对缓存装置进行读写操作时,则接收的USB操作命令是读写命令,对其进行的处理为:将读写命令发送给判断模块,将判断模块返回的操作结果发送给USB接口610。
判断模块,承担了控制器620的判断功能,用于根据接收自分析模块的读写命令,判断读写命令的所要读写的存储介质:
当主机对缓存装置的挥发性存储介质640进行缓存数据的随机读写操作时,则判断模块接收的读写命令是对挥发性存储介质640进行的读写命令。该判断模块向挥发性存储介质接口631发送读写指令,对挥发性存储介质640进行随机读写,根据挥发性存储介质接口631返回的指令执行结果确定操作结果,将该操作结果发送给分析模块;
当主机对缓存装置的闪存650存储数据的块读写操作时,则判断模块接收的读写命令是对闪存650进行的读写命令。该判断模块向闪存介质接口632发送读写指令,对闪存650进行块读写,根据闪存介质接口632返回的读写指令执行结果确定操作结果,将该操作结果发送给分析模块。
判断模块在判断所要读写介质时,根据主机发送的命令中的逻辑单元号进行判断,该逻辑单元号携带在主机发送的USB操作命令中发送至分析模块,指示了要对哪个介质进行操作。确定逻辑单元号的方法采用现有的确定方法。
在实际应用中,闪存650也可以用于缓存数据,作为主机外接的缓存数据存储介质。在这种情况下,当主机对缓存装置的闪存650缓存数据进行随机读写操作时,则判断模块接收的读写命令仍然是对闪存650进行的读写命令。该判断模块同样向闪存介质接口632发送读写指令,对闪存650进行块读写,根据闪存介质接口632返回的读写指令执行结果确定操作结果,将该操作结果发送给分析模块。
处理模块,用于执行、处理接收自分析模块的非读写命令,向分析模块返回非读写命令处理结果。如果,处理模块需要从挥发性存储介质接口631或闪存介质接口632中获取装置信息时,处理模块需要与挥发性存储介质接口631和闪存介质接口632相连,如图7中虚线所示。
本实施例中,就接收自主机的USB读写命令而言,控制器620并无法区分主机是在进行缓存数据的随机读写操作,还是在进行存储数据的读写操作,控制器620根据主机要读写的具体的介质,执行不同的读写操作。就控制器所发送的读写指令而言,随机读写和块读写使用同一条读写指令,因此对挥发性存储介质的随机读写和对闪存的块读写,其区别就体现在读写指令所读写的数据量不同。
图8为采用图6的基于通用串行总线的缓存装置实现数据缓存的方法流程图。如图8所示,将缓存装置插入主机后,该方法包括以下步骤:
步骤801:进行缓存装置的初始化。
步骤802:控制器620开始等待USB操作命令。
步骤803:USB接口610接收主机发送来的USB操作命令,发送给控制器620。
步骤804:控制器620接收USB操作命令,分析出该USB操作命令为读写命令后,判断是对哪种介质进行读写;如果是对闪存650进行块读写,执行步骤805、806。如果是对挥发性存储介质640进行随机读写,执行步骤807、808;
步骤805:控制器620通过闪存介质接口632向闪存650发送读写指令,对闪存650进行块读写。
步骤806:闪存650根据接收的读写指令,进行存储数据的块读写操作,返回指令执行结果。该指令执行结果通过闪存介质接口632发送至控制器620,控制器620根据该指令执行结果确定USB操作命令的操作结果,通过USB接口610返回给主机。返回步骤802。
其中,上述操作结果中包含读取数据和读取成功状态,或者包括读取失败状态。
步骤807:控制器620通过挥发性存储介质接口631向挥发性存储介质640发送读写指令,对挥发性存储介质640进行随机读写。
步骤808:挥发性存储介质640根据接收的读写指令,进行缓存数据的读写操作,返回读写指令执行结果。该读写指令执行结果通过挥发性存储介质接口631发送至控制器620,控制器620根据该读写指令执行结果确定USB操作命令的操作结果,通过USB接口610返回给主机。返回步骤802。
其中,上述操作结果中包含写入成功或失败状态。
本实施例中,闪存650也可以由一片以上的闪存介质芯片组成,按照现有的寻址方式相连。
本实施例加入的闪存650,利用非挥发性介质掉电数据不失的特性,在本发明基于通用串行总线的缓存装置中实现了数据存储功能,实现了一机双功。另外,闪存650还可以作为缓存数据的存储介质。
由以上所述可以看出,本发明所提供的基于通用串行总线的缓存装置能够提升计算机系统的性能。当缓存装置中设有挥发性存储介质插槽时,用户可以灵活的更换插槽中的挥发性存储介质,增加了缓存装置的可扩展性。此外,当在缓存装置中增加非挥发性存储介质,则可以将本发明的缓存装置作为普通的数据存储装置使用,实现了一机双功。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (13)

1、一种基于通用串行总线的缓存装置,其特征在于,采用通用串行总线USB接口在主机与缓存装置之间建立一条USB通信通道,该缓存装置作为主机的内存和硬盘之间的一级缓存;该缓存装置包括USB接口、控制器和挥发性存储介质接口;
USB接口,与主机上的USB接口相连,用于接收主机发送的USB操作命令,并发送给所述控制器;将所述控制器返回的所述USB的操作命令操作结果发送给所述主机;
控制器,用于对接收自所述USB接口的所述USB操作命令进行分析和处理;根据分析结果,向挥发性存储介质接口发送读写指令;根据所述挥发性存储介质接口返回的指令执行结果确定所述操作结果,发送给所述USB接口;
挥发性存储介质接口,用于连接挥发性存储介质;将接收自所述控制器的读写指令发送给所述挥发性存储介质;将所述挥发性存储介质返回的指令执行结果发送给所述控制器。
2、如权利要求1所述的缓存装置,其特征在于,该缓存装置进一步包括与所述挥发性存储介质接口相连的挥发性存储介质,用于接收并执行所述挥发性存储介质接口发送的读写指令,向所述挥发性存储介质接口返回指令执行结果。
3、如权利要求1所述的缓存装置,其特征在于,该缓存装置进一步包括与所述挥发性存储介质接口相连的挥发性存储介质插槽,用于插接挥发性存储介质。
4、如权利要求3所述的装置,其特征在于,该缓存装置进一步包括插接于所述挥发性存储介质插槽上的挥发性存储介质,用于接收所述挥发性存储介质接口发送的读写指令,向所述挥发性存储介质接口返回操作结果。
5、如权利要求2或4所述的缓存装置,其特征在于,所述控制器包括分析模块和处理模块;
所述分析模块,用于对接收自所述USB接口的USB操作命令进行分析和处理:
若经分析得到所述USB操作命令为非读写命令,则将所述非读写命令发送给所述处理模块,根据所述处理模块返回的非读写命令处理结果确定所述操作结果,将该操作结果发送给所述USB接口;
若经分析得到所述USB操作命令为读写命令,则向所述挥发性存储介质接口发送读写指令,对所述挥发性存储介质进行随机读写;根据所述挥发性存储介质接口返回的指令执行结果确定所述操作结果,将该操作结果发送给所述USB接口;
所述处理模块,用于执行、处理接收自所述分析模块的非读写命令,将非读写命令处理结果返回给所述分析模块。
6、如权利要求2所述的缓存装置,其特征在于,该缓存装置进一步包括非挥发性存储介质接口;
所述控制器进一步用于,根据分析结果,向所述非挥发性存储介质接口发送读写指令,对非挥发性存储介质进行块读写,根据所述非挥发性存储介质接口返回的指令执行结果确定所述操作结果,将该操作结果发送给所述USB接口;
所述非挥发性存储介质接口,用于连接非挥发性存储介质;将接收自所述控制器的读写指令发送给所述非挥发性存储介质;将所述非挥发性存储介质返回的指令执行结果发送给所述控制器。
7、如权利要求6所述的缓存装置,其特征在于,该缓存装置进一步包括与所述非挥发性存储介质接口相连的用于存储数据的非挥发性存储介质;
所述非挥发性存储介质接收并执行所述非挥发性存储介质接口发送的所述读写指令,向所述非挥发性存储介质接口返回指令执行结果。
8、如权利要求7所述的缓存装置,其特征在于,所述控制器包括分析模块、处理模块和判断模块;
所述分析模块,用于对接收自所述USB接口的USB操作命令进行分析和处理:
若经分析得到所述USB操作命令为非读写命令,则将所述非读写命令发送给所述处理模块,根据所述处理模块返回的非读写命令处理结果确定所述操作结果,将该操作结果返回给所述USB接口;
若经分析得到所述USB操作命令为读写命令,则发送给所述判断模块;将所述判断模块返回的操作结果发送给所述USB接口;
所述判断模块,根据接收自所述分析模块的读写命令,判断所述读写命令所要读写的存储介质:
当主机对所述挥发性存储介质进行缓存数据的随机读写操作时,所述判断模块经判断得到所述读写命令为对所述挥发性存储介质进行的读写命令,则向挥发性存储介质接口发送读写指令,对挥发性存储介质进行随机读写;根据所述挥发性存储介质接口返回的指令执行结果确定所述操作结果,发送给所述分析模块;
当主机对所述非挥发性存储介质进行存储数据的块读写操作时,所述判断模块经判断得到所述读写命令为对所述非挥发性存储介质进行的读写命令,则向非挥发性存储介质接口发送读写指令,对非挥发性存储介质进行块读写;根据所述非挥发性存储介质接口返回的指令执行结果确定所述操作结果,发送给所述分析模块;
所述处理模块,用于处理、执行接收自所述分析模块的非读写命令,将非读写命令处理结果返回给所述分析模块。
9、如权利要求8所述的缓存装置,其特征在于,所述非挥发性存储介质进一步用于缓存数据;
当主机对所述非挥发性存储介质进行缓存数据的随机读写操作时,所述判断模块经判断得到所述读写命令为对所述非挥发性存储介质进行的读写命令,则向非挥发性存储介质接口发送读写指令,对非挥发性存储介质进行块读写;根据所述非挥发性存储介质接口返回的指令执行结果确定所述操作结果,发送给所述分析模块。
10、如权利要求1所述的缓存装置,其特征在于,所述USB接口为电气特性符合标准USB协议,物理结构尺寸不符合标准USB协议的非标准USB接口;
该缓存装置进一步包括转接线,该转接线一端为与所述缓存装置上所述非标准USB接口相匹配的非标准USB接口;另一端为与所述主机相匹配的标准USB接口。
11、如权利要求2、4或7所述的缓存装置,其特征在于,所述挥发性存储介质包括通过寻址方式相连的、一片以上的挥发性存储介质芯片。
12、如权利要求2、4或7所述的缓存装置,其特征在于,所述挥发性存储介质为动态随机存储器DRAM、同步动态随机存储器SDRAM、静态随机存储器SRAM、页模式随机存储器PMRAM、快速页模式随机存储器FPMRAM、扩充数据输出随机存储器EDORAM、突发扩充数据输出随机存储器BEDORAM、同步突发静态随机存储器SBSRAM、流水线突发静态随机存储器PBSRAM、视频随机存储器VRAM、缓存型视频随机存储器CVRAM、缓存型动态随机存储器CDRAM、增强型动态随机存储器EDRAM、磁电存储器中的任意一种。
13、如权利要求7所述的缓存装置,其特征在于,所述非挥发性存储介质为闪存。
CN200710087485A 2007-03-19 2007-03-19 一种基于通用串行总线的缓存装置 Expired - Fee Related CN100578467C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200710087485A CN100578467C (zh) 2007-03-19 2007-03-19 一种基于通用串行总线的缓存装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200710087485A CN100578467C (zh) 2007-03-19 2007-03-19 一种基于通用串行总线的缓存装置

Publications (2)

Publication Number Publication Date
CN101271424A CN101271424A (zh) 2008-09-24
CN100578467C true CN100578467C (zh) 2010-01-06

Family

ID=40005411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710087485A Expired - Fee Related CN100578467C (zh) 2007-03-19 2007-03-19 一种基于通用串行总线的缓存装置

Country Status (1)

Country Link
CN (1) CN100578467C (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012113789A (ja) * 2010-11-26 2012-06-14 Buffalo Inc ハードディスクドライブ装置およびその処理装置
CN105867839B (zh) * 2016-03-21 2019-11-12 深圳忆联信息系统有限公司 一种数据处理方法、存储设备及电子设备
CN107480022A (zh) * 2017-08-22 2017-12-15 郑州云海信息技术有限公司 一种Storage RACK系统硬盘自动扫描检测的测试方法
CN108021801B (zh) * 2017-11-20 2021-07-06 深信服科技股份有限公司 基于虚拟桌面的防泄密方法、服务器及存储介质

Also Published As

Publication number Publication date
CN101271424A (zh) 2008-09-24

Similar Documents

Publication Publication Date Title
US11907538B2 (en) Extended utilization area for a memory device
US7613870B2 (en) Efficient memory usage in systems including volatile and high-density memories
CN103559146B (zh) 一种提高NAND flash控制器读写速度的方法
JP5275623B2 (ja) メモリコントローラ及びメモリシステム
CN103324578A (zh) 一种nand闪存设备及其随机写入方法
US20170364280A1 (en) Object storage device and an operating method thereof
US20170124077A1 (en) Flash module provided with database operation unit, and storage device
KR101561546B1 (ko) 메모리 장치 관리 방법, 그 관련 메모리 장치 및 그 관련 제어기
US10318165B2 (en) Data operating method, device, and system
CN109388517A (zh) 存储器控制器、包括存储器控制器的存储器系统和应用处理器
CN100578467C (zh) 一种基于通用串行总线的缓存装置
US9037781B2 (en) Method for managing buffer memory, memory controllor, and memory storage device
CN105608013B (zh) 一种集成mram的存储卡控制芯片及存储卡
US20160062884A1 (en) Data storage device and method for operating the same
CN106681659A (zh) 数据压缩的方法及装置
CN103577346A (zh) 存储器控制方法及存储器控制电路
CN113407120B (zh) 基于hmb的映射表管理方法、装置及计算机设备
US20170004095A1 (en) Memory Control Circuit and Storage Device
US20190236020A1 (en) Memory system and operating method thereof
CN109871337B (zh) 一种ssd存储媒介切换方法及其系统
CN112559385A (zh) 提升ssd写性能的方法、装置、计算机设备及存储介质
US6687821B1 (en) System for dynamically configuring system logic device coupled to the microprocessor to optimize application performance by reading from selection table located in non-volatile memory
US20190278703A1 (en) Memory system, operating method thereof and electronic device
US20190227940A1 (en) Memory system and operating method thereof
US8370599B2 (en) Storage system and controlling system and method thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: CHINA POTEVIO CO., LTD.

Free format text: FORMER OWNER: PUTIAN IT TECH INST CO., LTD.

Effective date: 20130927

C41 Transfer of patent application or patent right or utility model
C56 Change in the name or address of the patentee

Owner name: PUTIAN IT TECH INST CO., LTD.

Free format text: FORMER NAME: PUTIAN INST. OF INFORMATION TECHNOLOGY

CP03 Change of name, title or address

Address after: 100080 Beijing, Haidian, North Street, No. two, No. 6, No.

Patentee after: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd.

Address before: 100085, No. two, 2 street, base of information industry, Beijing

Patentee before: POTEVIO Institute of Information Technology

TR01 Transfer of patent right

Effective date of registration: 20130927

Address after: 100080, No. two, 2 street, Zhongguancun science and Technology Park, Beijing, Haidian District

Patentee after: CHINA POTEVIO CO.,LTD.

Address before: 100080 Beijing, Haidian, North Street, No. two, No. 6, No.

Patentee before: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd.

ASS Succession or assignment of patent right

Owner name: PUTIAN IT TECH INST CO., LTD.

Free format text: FORMER OWNER: CHINA POTEVIO CO., LTD.

Effective date: 20131210

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20131210

Address after: 100080 Beijing, Haidian, North Street, No. two, No. 6, No.

Patentee after: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd.

Address before: 100080, No. two, 2 street, Zhongguancun science and Technology Park, Beijing, Haidian District

Patentee before: CHINA POTEVIO CO.,LTD.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100106