CN103500076A - 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 - Google Patents
一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 Download PDFInfo
- Publication number
- CN103500076A CN103500076A CN201310475462.4A CN201310475462A CN103500076A CN 103500076 A CN103500076 A CN 103500076A CN 201310475462 A CN201310475462 A CN 201310475462A CN 103500076 A CN103500076 A CN 103500076A
- Authority
- CN
- China
- Prior art keywords
- equipment
- computer
- flash memory
- usb
- data
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 88
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 11
- 238000013461 design Methods 0.000 claims abstract description 9
- 238000005457 optimization Methods 0.000 claims abstract description 9
- 238000012544 monitoring process Methods 0.000 claims abstract description 4
- 239000007787 solid Substances 0.000 claims description 23
- 238000000034 method Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 claims description 11
- 230000001133 acceleration Effects 0.000 claims description 10
- 230000000694 effects Effects 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 238000009434 installation Methods 0.000 claims description 6
- 238000007726 management method Methods 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 claims description 4
- 244000035744 Hura crepitans Species 0.000 claims description 3
- 238000013459 approach Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 3
- 230000006835 compression Effects 0.000 claims description 3
- 238000007906 compression Methods 0.000 claims description 3
- 230000007774 longterm Effects 0.000 claims description 3
- 230000008672 reprogramming Effects 0.000 claims description 2
- 238000013468 resource allocation Methods 0.000 claims description 2
- 230000011218 segmentation Effects 0.000 claims description 2
- 238000004088 simulation Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 claims 1
- 230000003760 hair shine Effects 0.000 claims 1
- 238000012795 verification Methods 0.000 claims 1
- 238000012546 transfer Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- FYYHWMGAXLPEAU-UHFFFAOYSA-N Magnesium Chemical compound [Mg] FYYHWMGAXLPEAU-UHFFFAOYSA-N 0.000 description 2
- PXHVJJICTQNCMI-UHFFFAOYSA-N Nickel Chemical compound [Ni] PXHVJJICTQNCMI-UHFFFAOYSA-N 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000005059 dormancy Effects 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 229910052749 magnesium Inorganic materials 0.000 description 2
- 239000011777 magnesium Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 238000005728 strengthening Methods 0.000 description 2
- 244000163122 Curcuma domestica Species 0.000 description 1
- 235000003392 Curcuma domestica Nutrition 0.000 description 1
- 238000002679 ablation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 235000003373 curcuma longa Nutrition 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000010793 electronic waste Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007087 memory ability Effects 0.000 description 1
- 229910052759 nickel Inorganic materials 0.000 description 1
- 238000007747 plating Methods 0.000 description 1
- 235000020004 porter Nutrition 0.000 description 1
- 230000036316 preload Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 150000003839 salts Chemical class 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000007958 sleep Effects 0.000 description 1
- 239000007921 spray Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 235000013976 turmeric Nutrition 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
- G06F9/4413—Plug-and-play [PnP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
- G06F2212/2146—Solid state disk being detachable, e.g.. USB memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/217—Hybrid disk, e.g. using both magnetic and solid state storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/22—Employing cache memory using specific memory technology
- G06F2212/221—Static RAM
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/283—Plural cache memories
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
一种基于多通道SLCNAND与DRAM缓存的新USB协议计算机加速设备,包含主控芯片及SLCNAND模块,具备USB接口来连接计算机,在SLCNAND与内存DRAM中为计算机创建并分配缓存文件,缓存***与应用程序的常用文件以及预读频繁读写的零散文件,作为高速缓存。同时,设备驱动还对USB协议进行改善,对于传统的USB接口协议中的BOT协议进行优化,并在USB传输协议上做资源分配优化。设备的算法与架构还采用如下设计:1.设备将应用程序进行虚拟化处理,从而预存所有程序文件与程序所需***环境文件在设备中;2.多通道模式,阵列模组集成多块SLCNAND芯片并采用多通道主控;3.通过对用户习惯长期监测,判断出***即将使用的数据,预存在设备中;4.对***内存提供智能压缩与后台自动释放。
Description
技术领域
该产品属于计算机设备领域,是一种基于多通道SLC NAND阵列与DRAM缓存的新USB协议的电脑加速设备。
背景技术
计算机的更新换代非常快,而产品型号众多,设备种类繁多,年代跨度大,***平台复杂,目前暂时缺乏有效的通用型升级解决方案。
1. 为什么需要电脑加速型功能的产品
技术的发展总把硬件甩在后面。电影变高清,***出Win8,游戏的最低配置纷纷变四核了,微软新推出的Office2013就要占掉2G内存。升级电脑成本很高,一般都要数千元。目前,这种升级是一个棘手的问题,现有的解决方案一般是升级电脑配新机器,不但花费近万,而且旧机器从此闲置成为占空间的电子垃圾,或者也有不少用户自行购买零配件来拆机换部件,技术要求较高,难度也很大,比如换CPU,换硬盘不但需要准确接驳机箱中的各种数据线与插口,还需要导出旧硬盘的数据并重装***与各类软件,一般用户根本不会。而且成本依然居高不下,与主板的兼容性也存在很大问题。
也有一些软件可以优化电脑***,比如360优化大师,加速球,但是这些都没有在实质上改善硬件能力,只是清理电脑缓存垃圾等,和很多人常说的电脑用久了就重装一下***可以变快很类似。本身并没有增强计算机的性能。
2. 电脑加速的瓶颈在哪里?在于硬盘的速度,尤其是小文件频繁读写和随机读写
近十年来,CPU和内存的性能提高了100多倍,但硬盘的性能只提高了两倍。整个数据处理的瓶颈,就在硬盘上。只要能打通这个瓶颈,信息传输就走上了“高速公路”。
正因为此,固态硬盘才被用于取代机械硬盘。固态硬盘(Solid State Disk)用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元组成。固态硬盘的接口规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致。基于闪存的固态硬盘是固态硬盘的主要类别,其内部构造十分简单,固态硬盘内主体其实就是一块PCB板,而这块PCB板上最基本的配件就是控制芯片,缓存芯片(部分低端硬盘无缓存芯片)和用于存储数据的闪存芯片。除了主控芯片和缓存芯片以外,PCB板上其余的大部分位置都是NAND Flash闪存芯片了。
固态硬盘没有普通硬盘的电机和旋转介质,因此启动快、抗震性极佳。固态硬盘不用磁头,磁盘读取和写入速度快,延迟很小。读写速度一般可以达到100M每秒以上。准确的说,预期速度在138M每秒左右,其计算方式如下:在不采取任何加速措施的情况下,Flash 典型的读时序由命令和数据部分组成,读时间为78us,因此典型的读带宽为216Mbps。Flash 的写时序主要可以分为3 个阶段:命令阶段(Command),通过命令字设置写入过程的开始和结束,并设置页面地址;数据阶段(Data),将数据加载到Flash 的数据缓冲中;编程阶段(Program),将数据缓冲中的数据真正编程到Flash 阵列中。典型的写周期最小为25ns,编程时间在220us-500us 左右,因此其写入时间为275us,最大带宽为61.4Mbps。对于一个典型的应用,有50%的读和50%的写,则综合速率为216× 50%+61.4× 50%=138.7Mbps。当然,入门级固态硬盘还达不到此速度。
虽然速度比起机械硬盘那还是快不少,但是坏处也是很多的,比如价格贵,容量小,电池航程较短,写入寿命有限等等。关键是价格贵容量小,确切的说是不贵的就容量小,五百元左右的入门级金士顿SSD NOW只有32G容量。容量大的就价格贵,同样是1TB的大小,机械硬盘200元左右,固态硬盘至少五千。因此在新的出厂的电脑中,固态硬盘也仍然没有取代机械硬盘。
而且老电脑升级主要要考虑可行性,以及性价比,这两个方面。可行性上:首先是兼容性问题。早期的主板并不支持固态硬盘。具体地说,90年代到2010年期间的主板基本上都不能够支持固态硬盘。就可行性而言:首先对于绝大多数老电脑来说,安装SSD是无效的,因为11年以前的电脑根本就不支持SATA 2协议,更别提SATA3了,主板接口最大支持速度就是100M每秒的普通IDE或者SATA硬盘协议,根本无法用SSD获得加速效果。而更换主板几乎不可能。其次,依然是不方便,一般的用户并不擅长自己更换硬盘,更换硬盘尤其意味着更换整个***,拷贝所有的文件,重装各种驱动,消耗至少一两天的时间。再者,SSD设置复杂,只有在Win7或者Win8下才可以超过普通硬盘速度,XP不识别SSD的Trim指令、4k对齐以及ACHI。不但不能加速,还会无法使用电脑,在大多数情况下会蓝屏、死机,原因您可以参考计算机医生网的分析。可是如果给老电脑装Win7的话,CPU和内存吃得消吗?
就性价比而言:第一就是价格高,固态硬盘的入门级32G-64G的价格都要五百元左右,可是64G在安装Win7***与Office之后就基本没有剩余空间了。而入门级128G的价格就已经逼近千元。升级旧电脑来说这个成本已经不值得。第二就是寿命短,固态硬盘一般都是MLC闪存,其寿命在得不到正确保养下很短。而开启Trim,4k对齐等保养措施一般客户不会。
3. 那么目前是否有其他的低成本更方便的技术方案来解决硬盘速度的瓶颈?
当前也有用其他设备来加速电脑的尝试。目前所知的就是英特尔的迅盘:迅盘是一块PCI-E接口的扩展卡,搭载有一块或两块MLC NAND闪存,作为一个Mini PCI-E 1x规格的扩展卡,通过PCI-E总线与***I/O控制器进行数据交换。迅盘所采用的闪存模块为NAND,而并非NOR,这是由于NAND在存取数据的性能方面要优于NOR,且具备更好的性价比。
在***的支持下,可提供ReadyBoost和ReadyDrive功能,这些功能将直接对***在启动、休眠、安装程序、拷贝文件、载入游戏等有关磁盘操作的任务上进行性能提升。官方资料表明,迅盘可以使开机速度加快20%,同时减少硬盘转数以节省功耗。
ReadyBoost功能简介:
当ReadyBoost确定闪存内的缓存比硬盘内的缓存更能满足随机读取需求时,它便会从闪盘介质内随机读取数据。硬盘会一次性的批量读出大量数据,并暂时储存在迅盘中,供***随时调用;同时需要写入的数据也先暂存在迅盘中,等积累到一定数量后再统一写入到硬盘中,这种随用随取的读/写机制对提高***性能很有帮助。在这段时间里,硬盘处于闲置状态,而且迅盘的容量越大,硬盘闲置的时间越长,从而减少机械转动次数和电量消耗,延长笔记本电池的续航时间。
ReadyDriver功能简介:
ReadyDrive事实上就是微软对混合硬盘(带有内部闪存部件的硬盘)的称呼。这种硬盘除了闪存显而易见的随机访问速度优势外,最大的诱惑还是在于其中保存的数据“立等可取”—因为对于闪存而言,既不需要启动磁头,也不用等待磁头转动到合适的位置。Hybird硬盘的启动、休眠、睡眠速度更快,而且功耗更低。因为当操作***读写缓存时,驱动器本身可以暂时停止工作,不消耗任何电力。而从休眠状态恢复运行时,笔记本电脑也能够马上从缓存中读取数据开始工作,而不用像往常那样,先得等待驱动器的磁头启动起来。
在迅盘的驱动程序中可以看出,使用者可以通过软件界面设定该模块提供ReadyBoost、ReadyDrive功能,还是两者兼具。
但是,迅盘依然不是一个有效的升级方案。也正因为此,现在已经不太有人提起。其失败的主要原因在于:1. 不能用于台式机,也不能用于绝大多数笔记本。所有上网本以及多数笔记本电脑均不支持迅盘模块,因为这不仅要求笔记本电脑提供一个额外的Mini PCI-E插槽,同时更重要的还要求笔记本电脑的SATA接口支持ACHI功能;2. 安装复杂,一般用户并不会拆机安装mini PCI-E,以至于无法用于旧电脑升级; 3.效果不好。PCI-E总线的速度本身被限制在150M每秒以下,而英特尔的闪存则还远达不到这个速度,实测在35M每秒的随机读写速度,对硬盘提升不大,比固态硬盘还不如,英特尔的迅盘体积受限,无法加装缓存或者并行模组,或更多主控IC; 4.价格昂贵。4G的迅盘定价就在100美元;5. ***兼容性差。这一点本身就足以排除迅盘用于给旧电脑加速的可能了。无论Readydrive还是Readyboost都只能用于Windows Vista以上的操作***,而旧电脑绝大多数都是XP的操作***,也只能在XP下流畅运行。
发明内容
因此,在本发明中,一种基于多通道并行计算SLC NAND闪存专门设计的用于加速电脑的外接式硬件设备被提出。 [0017] 为了有效提升旧电脑的性能,并同时满足简易的安装使用能力与需求,本发明采用了如下方案: 一种即插即用的USB接口的电子设备,该电子设备的包含有主控芯片以及SLC NAND闪存模块(或者以MLC NAND模拟SLC工作状态,如iSLC NAND闪存是在MLC NAND基础上改进的产品,是通过特定的闪存管理算法,把MLC NAND的2-Bit Per Cell重新编程为1-Bit Per Cell,让MLC NAND的工作方式变得更接近SLC NAND)。一般包含并行计算的多块SLC模组以及多个主控IC,或一个多通道的主控IC,从而达到类似RAID的效果。该设备的工作原理为:设备通过USB接口与计算机连接,在阻变存储器中为计算机创建缓存文件,缓存***与应用程序的常用文件以及预读频繁读写的零散文件,利用阻变存储器的高速随机访问以及快速读写速度,减少计算机***对硬盘(包括基于NAND的固态硬盘)的访问,为计算机提供加速并提升I/O性能。
如果是在USB2.0的模式下,则SLC的速度还会受到很大限制,因此,设备并且使用DRAM缓存,来作为敏捷型的一级缓存,可以通过两种方式实现:一、在设备中自带DRAM缓存作为映射表和数据缓存区,比如以每1MB的DRAM缓存映射1GB的SLC NAND;二、在建立缓存时调用计算机的内存,划分一部分与设备中的SLC NAND共同组成高速快取的cache区。
同时,设备的驱动还对USB协议进行了改善,对于传统的USB接口协议中阻碍快速数据传输的BOT协议(Bulk-Only Transport)进行优化,在USB传输协议上做了资源分配优化,配置更多***资源给设备,并且支持类似NCQ的多任务传输功能,大幅提升多QD下的随机读写速率。
设备的算法与架构还采用了如下设计:1. 对***内存提供智能压缩与后台自动释放,从而避免计算机因内存不足调用虚拟内存而增大对硬盘的读写;2. 通过对用户习惯进行长期监测识别,判断出***即将使用哪些数据,预存在设备SLC NAND闪存模块中,CPU将直接从设备中获取数据,再将其转入内存中,从而减少对硬盘的读写;3. 双通道模式,该阵列模组将2块SLC NAND闪存芯片集成在一起,并采用双通道主控,从而能够以双通道模式工作。作为一个逻辑磁盘组,将数据以分段的方式存储在这个逻辑磁盘组的不同物理磁盘上,进行数据存取时,阵列中的相关磁盘并行工作,减低数据存取的时间,从而达到和RAID 0(磁盘阵列0)相同的加速效果,使读写速度更快。固态存储器的性能瓶颈一般在内部的核心接口上,可以采取***级或设备级的并行访问来改进。
另外很重要的一点是,设备将应用程序进行虚拟化处理,从而预存所有程序文件与程序***环境文件在设备中。(虚拟化原理有多种,主要是利用沙盒的虚拟化技术,先把应用程序安装到运行中所有的动作都记录起来并处理成本地的文件,当执行主程序文件时,它会临时产生一个虚拟环境来执行,类似影子***一样,一切涉及的操作都是在这个虚拟环境中完成,并不会去动原本的***。这样处理后所有的调用文件都在应用程序的存放目录,也就是SLC NAND闪存模块下,而不会安装到硬盘。)这一处理最彻底地避免了程序使用中的硬盘读写。
这样做是为了实现更快的程序运行、更为简单的程序安装与操作、更强大的***运行能力,并具有广泛兼容性的***程序运行能力。使得该应用程序可以无需安装,直接以即插即用的形式在计算机运行,并且是高速运行。而后设备再将该应用程序以数据形式导入到服务端。这种做法还减少了***服务项,尤其是大大减少了计划任务项,扩展加载项与开机启动项,从而在增强***应用功能的同时达到***优化。
设备方案见说明书附图1. 该设备可以在XP,Vista,Win7,Win8等各种Windows操作***的计算机上使用,并且只要有USB接口的计算机就能使用。
关于几个关键问题的说明如下:
1. 为什么使用SLC NAND的并行技术而不是仅仅DRAM缓存?
首先,如果仅仅应用DRAM缓存的话,以目前的技术能力,一般可以实现1MB:1GB的缓存能力,DRAM缓存大小有限。再者,以DRAM作为映射表,在自检前把颗粒上的映射表第一时间加载到缓存里,需要更新的时候再回写回颗粒上来提速是个比较有效率的提速方式,但前提是固件内的映射表掉电后的反推修复算法要做的好,不然只会是造成大量丢盘的隐患,技术风险较大。最后,缓存技术的主要缺点是需要对缓存进行信息读取来构建索引,从而会引入额外的读事务而增大***的开销,电路较为复杂,功耗更大。如果利用FPGA(FieldProgrammingGateArray)或者Flash自带的部分缓存来加速读写,则对整个***来说缓存资源太少,无法进行整体调度,会导致缓冲的频繁失效而增大***的响应时间。
2. 为什么要采用外接USB方式而不是内置的SATA方式?
很显然,USB即插即用是最方便也最简单的使用方式,兼容性最高,几乎所有电脑都有USB接口。任何内置接口都不方便使用,也不会被社会大众采纳。那么USB接口的速度会收到影响吗?实际上只要进行如下的分类讨论就很明显了。
对于2009年以前的电脑,USB接口一般为USB 2.0,速度带宽480M每秒,相当于最高数据传输为60M每秒。看起来不高。但是,09年以前的电脑没有固态硬盘,一般的机械硬盘的随机数据存取速度都小于20M每秒,一般在10M每秒左右,远低于USB2模式的60M带宽。只要能够对USB协议进行优化,利用满60M的速度,可以加速接近6倍!(在下面介绍的实际生产样品中,在USB2下的速度就达到了57M每秒)
而对于有USB3的电脑,则USB3的速度实际上大于SATA 3。先以带宽来看,USB 3.0提供了5Gbps(625MB/s)的大小,虽然SATA III的6Gbps账面带宽较大,不过因为传输架构的换算方式并不相同,因此换算成MB/s时仅为600MB/s,在理论值上会比USB 3.0的625MB/s来得小,更不用说是SATA II的3Gbps(300MB/s)了。 再以方便性来讨论这两者,USB是每台计算机不可或缺的端口,USB 3.0不但可以向下兼容、拥有即插即用的便利性,在供电方面更从500mA增加到了900mA,而造就了其相当大的优势。
3. 为什么要修改USB协议?
USB以往就一直存在相当严重的带宽利用率低下的问题,USB 2.0的带宽为480Mbps(60MB/s),但就算实际使用传输速度高达100MB/s以上的优盘也无法用到完整的带宽,速度上限仅有约一半的 33MB/s左右,这是因为USB的半双工传输模式与BOT(Bulk Only Transfer)传输协议所导致的关系。半双工的数据传输方式就像是对讲机,当一方按下发话钮时另一方只能收听声音,必须等待对方说完才可以按下发话钮进行发话,也就是说半双工的模式虽然提供了双向数据传输的功能,但是数据的传输方向仅有单向而已。而BOT协议则是一种单线程的传输架构,必须等待一笔数据区块完整送达之后才能够发送出下一笔数据,也就是说不论这条马路有多宽,但是就只能够允许一台车子在这条马路上行驶,这样的方式根本没有办法有效纾解后方庞大的车流量,而会造成资料区块「塞车」的情形发生。而当USB提升到3.0的规格,虽然使用了额外的五个接点,改为全双工的数据传输模式,可以同时进行双向的数据传输,带宽比起上一代也提升了有十倍之多, 不过其传输架构还是在BOT之下,因此我们必须予以优化加速。
BOT的加速模式在上述的比喻下就很好理解了:既然在BOT的架构之下,马路上就只能够有一台车在行驶,一个人开是一台,小客车坐满5个人也是一台,大型客运坐满50人也还是一台,在要运送一定数目的 人数时,每次都是大型客运在路上行驶,就可以减少许多车流量了。所谓的USB Turbo模式就是基于这样的原理来设计的,将数据整理成较大数据区块再进行传送,而且不论何种储存媒体,对于大档案的处理能力总是比小档案要来得好,因 此使用这种方式可以显著提升数据传输速度。
4. 为什么要虚拟化***程式?
虚拟化将***环境也虚拟化成一系列的文件形式,在运行的时候启动。这就将程序运行的所有所需读写都转移到程序所在目录,也就是外接的SLC NAND闪存芯片中,不会再需要***盘的读写。对于本设备而言,意味着被加速电脑的硬盘将不再运行程序文件或程序调用的***文件,所有这些都在外接的SLC NAND闪存芯片中运行。这一处理最彻底地避免了程序使用中的硬盘读写,否则在应用程序运行过程中不可避免对硬盘依然会有读写。
同时,这样做是为了实现更快的程序运行、更为简单的程序安装与操作、更强大的***运行能力,并具有广泛兼容性的***程序运行能力。使得该应用程序可以无需安装,直接以即插即用的形式在计算机运行,并且是高速运行。而后设备再将该应用程序以数据形式导入到服务端。这种做法还减少了***服务项,尤其是大大减少了计划任务项,扩展加载项与开机启动项,从而在增强***应用功能的同时达到***优化。
本发明内容的有益效果
相比于传统的电脑升级,本设备具备如下优点:1.操作简单:升级老电脑往往需要拆机换内存换硬盘,如果要加快速度还要动手焊主板换CPU,忙活一两天还常常倒腾坏,或出现蓝屏,各种接口之间的兼容性问题也绝非一般用户搞得清楚的。最妥当的办法是自己当搬运工将电脑抱到电脑城去现场升级,但价格很高,猫腻很多,常常被偷换部件。用加速棒只需要安装驱动插上电脑点击几下就可以完成。
2.效果较好:对于USB2.0的普通机械硬盘的电脑,程序启动运行速度可以提升3-6倍,对于USB3.0的较新机械硬盘或混合硬盘的电脑,程序启动运行速度可以提升10-20倍,对于USB3.0的固态硬盘的电脑,程序启动运行速度可以提升2-3倍.(此外,其实对于一般的电脑,都可以从PCI-E或者 ExpressCard转接出USB3.0,相比于原装的USB3.0,这些转接出的USB3.0速度较低,数据传输大约在150M每秒。因此老电脑也可以用上USB3.0的)。
3.成本低廉:双通道SLC NAND闪存再加上最新的双通道主控生产成本在一百元以下。
本发明内容的实施案例
本发明已经生产出样品。样品上预装了双贴双通道的SLC NAND存储模块高速缓存区,并用USB3.0接口进行高速通信,作为本地***的随机存储区达到加速、提升缓存性能的目的。在USB3.0接口下,其测试读取为260M每秒,写入为240M每秒,已经双倍于固态硬盘的速度,在USB2.0兼容接口下,其测试读取为59M每秒,写入为45M每秒,其I/O与随机读写性能都已经远远超过机械硬盘。见附图2所示。
设备能够调取***部分的内存与SLC NAND组成复杂型缓存,除了应用并行技术构成了双通道的SLC NAND缓存外,设备调用计算机的DRAM内存中一部分出来(用户可以决定调用多少,但是设备会计算给出建议值),作为映射表与高速一级缓存区,以8G的SLC NAND为随机数据与频繁读写文件缓存,以剩下的8G的SLC NAND为虚拟化程序存储安装区。
设备在与计算机连接后会自动进行USB协议优化,实现BOT Turbo模式,并分配更多资源给设备,改变USB传输协议之后原本只支持单线的缓存交换,变成可同时处理多重缓存任务读写,类似硬盘NCQ技术,更充分发挥了设备作为***新内存的作用。优化前USB2接口速度为32M每秒左右,优化后达到57M每秒。优化前USB3下读190,写200,优化后双双超过250M每秒,可见这一工作十分重要。
设备的算法与架构包括了: 1. 对***内存提供智能压缩与后台自动释放;2. 通过对用户习惯进行长期监测识别,判断出***即将使用哪些数据,预存在设备中;3. 双通道模式,银灿IS903主控,阵列模组集成2块8G的镁光SLC NAND芯片并采用双通道主控;4.设备将应用程序进行虚拟化处理,从而预存所有程序文件与程序所需***环境文件在设备中。
用户只需要***电脑并安装驱动便可以开启上述功能了,见附图3所示。
设备还具有图形界面的控制台,提供智能化的自动管理与控制,可以选择性的载入通道与分区。见附图4所示,因需要暂时隐去了拟定的产品名称。新增加的外接‘内存’可以通过控制面板查看与管理。其他详细介绍如下。
1.样品使用材料
2块8G的镁光DDR SLC NAND芯片,SLC DDR 同步闪存,单通道 [SLC-8K]。样品设备的SLC NAND芯片与电路图见附图5所示。沉金工艺,4层USB差分阻抗PCB,保证USB信号传输良好;其他: 电源IC采用DC/DC转换,优质贴片晶振,通过24小时盐雾测试镀镍USB插头;工作温度: 0℃至+60℃;存储温度:-20℃至+70℃。
2.样品硬件架构
在样品上,我们采用银灿IS903双通道主控芯片,搭载两块8G的SLC NAND存储模块,属于双贴双通道方案,见附图6所示。在USB3.0接口下,其测试读取为260M每秒,写入为240M每秒,已经超过固态硬盘的速度,可以为最新出厂的计算机加速!在USB2.0接口下,其测试读取为59M每秒,写入为45M每秒,由于USB2.0的电脑一般为机械硬盘,随机数据速度仅为10-15M每秒,所以缓存速度提升了3倍,对于***加速效果十分明显。如果USB2.0的机械硬盘的老电脑通过PCMCIA或ExpressCard转接到USB3后,则可以提速十倍。
3.样品缓存机制
除了应用并行技术构成了双通道的SLC NAND缓存外,设备调用计算机的DRAM内存中128M内存出来,作为映射表与高速一级缓存区,以8G的SLC NAND为随机数据与频繁读写文件缓存,以剩下的8G的SLC NAND为虚拟化程序存储安装区。
4.样品采用的虚拟化方案
用户可以直接用设备中预载的数千款已经虚拟化的常用程序,或者将本机应用程序进行虚拟化处理,从而预存所有程序文件与程序***环境文件在设备中,见附图7所示。(虚拟化原理前面已经阐述了,主要是利用沙盒的虚拟化技术,先把应用程序安装到运行中所有的动作都记录起来并处理成本地的文件,当执行主程序文件时,它会临时产生一个虚拟环境来执行,类似影子***一样,一切涉及的操作都是在这个虚拟环境中完成,并不会去动原本的***。这样处理后所有的调用文件都在应用程序的存放目录,也就是SLC NAND闪存模块下,而不会安装到硬盘。)这一处理最彻底地避免了程序使用中的硬盘读写。
参考文献:[1]. 王芳,李恪,苏林,耿立红.空间太阳望远镜的星载固态存储器研制[J].电子学报,2004年第3期:472-475。
[2]. 王超,张惠臻,周学海,马宏星.异质存储***中的高速缓存机制研究[J].电子学报,2011 年第6期:1267-1271。
附图说明:
图 1. 设备的原理图。
图2. 样品设备的使用效果图,USB2下达到了60M每秒。
图3. 样品设备的使用操作图,USB即插即用。
图4. 样品设备的使用中加速内存控制台界面。
图5. 样品设备的SLC NAND芯片与电路板图。
图6. 样品设备的双通道主控图。
图7. 样品设备中所有已经虚拟化的程序通过一个控制中心管理启动图示。
Claims (10)
1.一种即插即用的通用串行总线接口的电子设备,该电子设备的包含有主控芯片以及SLC NAND闪存模组(或者以MLC NAND模拟SLC工作状态,如iSLC NAND闪存是在MLC NAND基础上改进的产品,是通过特定的闪存管理算法,把MLC NAND的2-Bit Per Cell重新编程为1-Bit Per Cell,让MLC NAND的工作方式变得更接近SLC NAND),且该设备的工作原理具备两个核心:一、设备通过USB接口与计算机连接,在SLC NAND模块中为计算机创建缓存文件,(缓存文件可以包括:***与应用程序的常用文件、预读频繁读写的零散文件、随机数据等),利用SLC NAND闪存的高速随机访问以及快速读写速度,减少计算机***对硬盘(包括基于NAND的固态硬盘)的访问,为计算机提供加速并提升I/O性能;二、设备并且使用DRAM缓存,可以通过如下两种方式中的任意一种或两种实现:一、在设备中自带DRAM缓存作为映射表和数据缓存区,比如以每1MB的DRAM缓存映射1GB的SLC NAND;二、在建立缓存时调用计算机的内存,划分一部分与设备中的SLC NAND共同构成高速快取的cache,从而可以利用DRAM与SLC NAND不同的特点进行任务分配。
2.根据权利要求1的一种设备,其特征在于,设备还对USB协议进行改善,例如对于传统的USB接口协议中阻碍快速数据传输的BOT协议进行优化,在USB传输协议上做了***资源分配的优化,提供更多资源给USB设备。
3.根据权利要求1的一种设备,其特征在于,设备的算法与架构还采用了如下设计:设备将应用程序进行虚拟化处理,从而预存所有程序文件与程序***环境文件在设备中——虚拟化原理有多种,主要是利用沙盒的虚拟化技术,先把应用程序安装到运行中所有的动作都记录起来并处理成本地的文件,当执行主程序文件时,它会临时产生一个虚拟环境来执行,类似影子***一样,一切涉及的操作都是在这个虚拟环境中完成,并不会去动原本的***,这样处理后所有的调用文件都在应用程序的存放目录,也就是SLC NAND闪存模块下,而不会安装到硬盘,这一处理最彻底地避免了程序使用中的硬盘读写。
4.根据权利要求1的一种设备,其特征在于,设备的算法与架构还采用了如下设计:通过对用户习惯进行长期监测识别,判断出***即将使用哪些数据,预存在根据权利要求1的该种设备中,CPU将直接从设备中获取数据,再将其转入内存中,从而减少对硬盘的读写。
5.根据权利要求1的一种设备,其特征在于,设备的算法与架构还采用了如下设计:多通道模式,阵列模组集成多块SLC NAND闪存芯片并采用多通道主控——具备可选的阵列模组,该阵列模组将多块SLC NAND闪存或3D V-NAND芯片集成在一起,并采用多通道主控,从而能够以双通道或多通道模式工作,例如,多个物理芯片组成一个阵列,作为一个逻辑磁盘组,将数据以分段的方式存储在这个逻辑磁盘组的不同物理磁盘上,进行数据存取时,阵列中的相关磁盘并行工作,减低数据存取的时间,从而达到和RAID 0(磁盘阵列0)相同的加速效果,使读写速度更快。
6.根据权利要求1的一种设备,其特征在于,设备的算法与架构还采用了如下设计:具备两重缓存,除了SLC NAND闪存模块之外还具有MLC NAND闪存模块,以SLC NAND闪存模块为一级缓存,MLC NAND闪存模块为二级缓存。
7.根据权利要求1的一种设备,其特征在于,设备的算法与架构还采用了如下设计:对***内存提供智能压缩与后台自动释放,从而避免计算机因内存不足调用虚拟内存而增大对硬盘的读写。
8.根据权利要求1的一种设备,其特征在于,设备和远程服务器通信,用户通过设备将程序安装到远程服务器,然后由远程服务器的云计算来分担本地宿主计算机的程序运行、游戏运行等计算任务,在本地计算机上显示用户界面:为实现该目的,设备还可能包含了3G网络模块或更高速的网络模块,用于和远程服务器传输数据,而无需借用宿主计算机的网络,从而可以在网络环境不好的地区实现云计算功能;如果只是将用户界面以及键盘,鼠标动作和屏幕的更新信息,通过3G模块用3G网络在本地计算机和服务器之间传递.传递的是键盘,鼠标动作和屏幕的更新信息,是图片增量变化的那部分信息,一般情况下,这种变化的信息只有几K到几十K而已,3G网络是没有问题的。
9.根据权利要求1的一种设备,其特征在于,该设备还为本地计算机提供了安全验证机制的升级,通过将该设备的硬件指纹(闪存、显卡、通讯模块等均有硬件指纹)和用户自行设置的密码组合作为加密机制,为电脑提供类似U盾的文件防护、计算机锁等功能。
10.根据权利要求1的一种设备,其特征在于,设备还提供即插即用的操作***,可以通过设置BIOS从USB接口启动该设备预装在非易失存储区内的操作***。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310475462.4A CN103500076A (zh) | 2013-10-13 | 2013-10-13 | 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 |
PCT/CN2014/087627 WO2015051711A1 (zh) | 2013-10-13 | 2014-09-28 | 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 |
US15/028,028 US20160253093A1 (en) | 2013-10-13 | 2014-09-28 | A new USB protocol based computer acceleration device using multi I/O channel SLC NAND and DRAM cache |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310475462.4A CN103500076A (zh) | 2013-10-13 | 2013-10-13 | 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103500076A true CN103500076A (zh) | 2014-01-08 |
Family
ID=49865292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310475462.4A Pending CN103500076A (zh) | 2013-10-13 | 2013-10-13 | 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20160253093A1 (zh) |
CN (1) | CN103500076A (zh) |
WO (1) | WO2015051711A1 (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104035897A (zh) * | 2014-06-12 | 2014-09-10 | 上海新储集成电路有限公司 | 一种存储控制器 |
CN104298474A (zh) * | 2014-10-13 | 2015-01-21 | 张维加 | 一种基于服务端与外部缓存***的外接式计算设备加速方法与实现该方法的设备 |
CN104298620A (zh) * | 2014-10-10 | 2015-01-21 | 张维加 | 一种耐擦写低能耗的外接计算机加速设备 |
WO2015051694A1 (zh) * | 2013-10-11 | 2015-04-16 | 张维加 | 一种基于新材料的外接的计算机加速设备 |
WO2015051711A1 (zh) * | 2013-10-13 | 2015-04-16 | 张维加 | 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 |
CN104598844A (zh) * | 2014-12-31 | 2015-05-06 | 湖南国科微电子有限公司 | 一种防止固态硬盘***文件损坏的掉电保护方法及装置 |
WO2016115957A1 (zh) * | 2015-01-19 | 2016-07-28 | 张维加 | 一种面向用户与应用的计算机与智能设备加速方法和装置 |
CN106951194A (zh) * | 2017-03-30 | 2017-07-14 | 张维加 | 一种新结构的计算机设备 |
CN107957852A (zh) * | 2017-10-13 | 2018-04-24 | 记忆科技(深圳)有限公司 | 一种提升固态硬盘性能一致性的方法 |
CN108646980A (zh) * | 2018-04-27 | 2018-10-12 | 江苏华存电子科技有限公司 | 一种有效利用内存带宽的方法 |
CN112115077A (zh) * | 2020-08-31 | 2020-12-22 | 瑞芯微电子股份有限公司 | 一种dram内存驱动优化方法和装置 |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11614893B2 (en) | 2010-09-15 | 2023-03-28 | Pure Storage, Inc. | Optimizing storage device access based on latency |
US12008266B2 (en) | 2010-09-15 | 2024-06-11 | Pure Storage, Inc. | Efficient read by reconstruction |
US10148755B2 (en) * | 2015-08-27 | 2018-12-04 | Dell Products L.P. | System and method to redirect USB mass storage devices in high latency VDI environments |
KR101923661B1 (ko) * | 2016-04-04 | 2018-11-29 | 주식회사 맴레이 | 플래시 기반 가속기 및 이를 포함하는 컴퓨팅 디바이스 |
US11977484B2 (en) * | 2016-07-19 | 2024-05-07 | Sap Se | Adapting in-memory database in hybrid memory systems and operating system interface |
US10783146B2 (en) | 2016-07-19 | 2020-09-22 | Sap Se | Join operations in hybrid main memory systems |
US10437798B2 (en) | 2016-07-19 | 2019-10-08 | Sap Se | Full system simulator and memory-aware splay tree for in-memory databases in hybrid memory systems |
US10540098B2 (en) | 2016-07-19 | 2020-01-21 | Sap Se | Workload-aware page management for in-memory databases in hybrid main memory systems |
US10452539B2 (en) * | 2016-07-19 | 2019-10-22 | Sap Se | Simulator for enterprise-scale simulations on hybrid main memory systems |
US10698732B2 (en) | 2016-07-19 | 2020-06-30 | Sap Se | Page ranking in operating system virtual pages in hybrid memory systems |
US10474557B2 (en) | 2016-07-19 | 2019-11-12 | Sap Se | Source code profiling for line-level latency and energy consumption estimation |
US10387127B2 (en) | 2016-07-19 | 2019-08-20 | Sap Se | Detecting sequential access data and random access data for placement on hybrid main memory for in-memory databases |
US11010379B2 (en) | 2017-08-15 | 2021-05-18 | Sap Se | Increasing performance of in-memory databases using re-ordered query execution plans |
TW202014898A (zh) | 2018-10-04 | 2020-04-16 | 宏碁股份有限公司 | 電腦系統、其遊戲載入方法及電腦程式產品 |
US10909012B2 (en) * | 2018-11-12 | 2021-02-02 | H3 Platform, Inc. | System having persistent memory |
KR20200076491A (ko) * | 2018-12-19 | 2020-06-29 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
CN111858016A (zh) | 2019-04-29 | 2020-10-30 | 阿里巴巴集团控股有限公司 | 计算作业处理方法、***、移动设备及加速设备 |
KR20210068699A (ko) | 2019-12-02 | 2021-06-10 | 삼성전자주식회사 | 스토리지 장치, 스토리지 시스템 및 스토리지 장치의 동작 방법 |
CN114205344B (zh) * | 2020-08-31 | 2023-02-28 | 华为技术有限公司 | 媒体文件传输的方法及装置 |
US11614880B2 (en) | 2020-12-31 | 2023-03-28 | Pure Storage, Inc. | Storage system with selectable write paths |
US11847324B2 (en) | 2020-12-31 | 2023-12-19 | Pure Storage, Inc. | Optimizing resiliency groups for data regions of a storage system |
CN113064843A (zh) * | 2021-03-24 | 2021-07-02 | 深圳市时创意电子有限公司 | 一种固态硬盘的制造方法与固态硬盘 |
CN116302799B (zh) * | 2023-02-18 | 2024-06-28 | 深圳市晶封半导体有限公司 | 一种固态硬盘温控方法 |
CN117555492B (zh) * | 2024-01-12 | 2024-03-29 | 合肥开梦科技有限责任公司 | 存储器控制器、存储器管理方法及存储装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1862479A (zh) * | 2006-06-19 | 2006-11-15 | 威盛电子股份有限公司 | 磁盘阵列的数据配置结构及其数据存取方法 |
CN101082891A (zh) * | 2007-05-10 | 2007-12-05 | 忆正存储技术(深圳)有限公司 | 并行闪存控制器 |
US20100042773A1 (en) * | 2008-08-12 | 2010-02-18 | Phison Electronics Corp. | Flash memory storage system and data writing method thereof |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8166229B2 (en) * | 2008-06-30 | 2012-04-24 | Intel Corporation | Apparatus and method for multi-level cache utilization |
CN103500076A (zh) * | 2013-10-13 | 2014-01-08 | 张维加 | 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 |
-
2013
- 2013-10-13 CN CN201310475462.4A patent/CN103500076A/zh active Pending
-
2014
- 2014-09-28 US US15/028,028 patent/US20160253093A1/en not_active Abandoned
- 2014-09-28 WO PCT/CN2014/087627 patent/WO2015051711A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1862479A (zh) * | 2006-06-19 | 2006-11-15 | 威盛电子股份有限公司 | 磁盘阵列的数据配置结构及其数据存取方法 |
CN101082891A (zh) * | 2007-05-10 | 2007-12-05 | 忆正存储技术(深圳)有限公司 | 并行闪存控制器 |
US20100042773A1 (en) * | 2008-08-12 | 2010-02-18 | Phison Electronics Corp. | Flash memory storage system and data writing method thereof |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015051694A1 (zh) * | 2013-10-11 | 2015-04-16 | 张维加 | 一种基于新材料的外接的计算机加速设备 |
WO2015051711A1 (zh) * | 2013-10-13 | 2015-04-16 | 张维加 | 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 |
CN104035897B (zh) * | 2014-06-12 | 2018-04-24 | 上海新储集成电路有限公司 | 一种存储控制器 |
CN104035897A (zh) * | 2014-06-12 | 2014-09-10 | 上海新储集成电路有限公司 | 一种存储控制器 |
CN104298620A (zh) * | 2014-10-10 | 2015-01-21 | 张维加 | 一种耐擦写低能耗的外接计算机加速设备 |
CN104298474A (zh) * | 2014-10-13 | 2015-01-21 | 张维加 | 一种基于服务端与外部缓存***的外接式计算设备加速方法与实现该方法的设备 |
WO2016058560A1 (zh) * | 2014-10-13 | 2016-04-21 | 张维加 | 一种基于服务端与外部缓存***的外接式计算设备加速方法与实现该方法的设备 |
CN104598844A (zh) * | 2014-12-31 | 2015-05-06 | 湖南国科微电子有限公司 | 一种防止固态硬盘***文件损坏的掉电保护方法及装置 |
WO2016115957A1 (zh) * | 2015-01-19 | 2016-07-28 | 张维加 | 一种面向用户与应用的计算机与智能设备加速方法和装置 |
CN106951194A (zh) * | 2017-03-30 | 2017-07-14 | 张维加 | 一种新结构的计算机设备 |
CN107957852A (zh) * | 2017-10-13 | 2018-04-24 | 记忆科技(深圳)有限公司 | 一种提升固态硬盘性能一致性的方法 |
CN107957852B (zh) * | 2017-10-13 | 2021-08-13 | 记忆科技(深圳)有限公司 | 一种提升固态硬盘性能一致性的方法 |
CN108646980A (zh) * | 2018-04-27 | 2018-10-12 | 江苏华存电子科技有限公司 | 一种有效利用内存带宽的方法 |
CN112115077A (zh) * | 2020-08-31 | 2020-12-22 | 瑞芯微电子股份有限公司 | 一种dram内存驱动优化方法和装置 |
CN112115077B (zh) * | 2020-08-31 | 2022-04-19 | 瑞芯微电子股份有限公司 | 一种dram内存驱动优化方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US20160253093A1 (en) | 2016-09-01 |
WO2015051711A1 (zh) | 2015-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103500076A (zh) | 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备 | |
EP3920034B1 (en) | Systems and methods for scalable and coherent memory devices | |
CN102012791B (zh) | 基于Flash的数据存储PCIE板卡 | |
US8769241B2 (en) | Virtualization of non-volatile memory and hard disk drive as a single logical drive | |
CN103049397B (zh) | 一种基于相变存储器的固态硬盘内部缓存管理方法及*** | |
EP3382557B1 (en) | Method and apparatus for persistently caching storage data in a page cache | |
US8719495B2 (en) | Concatenating a first raid with a second raid | |
US8392670B2 (en) | Performance management of access to flash memory in a storage device | |
US20140189198A1 (en) | Memory allocation for fast platform hibernation and resumption of computing systems | |
CN103500075A (zh) | 一种基于新材料的外接的计算机加速设备 | |
WO2016058560A1 (zh) | 一种基于服务端与外部缓存***的外接式计算设备加速方法与实现该方法的设备 | |
CN103412822A (zh) | 操作非易失性内存和数据操作的方法和相关装置 | |
US9417819B2 (en) | Cache device for hard disk drives and methods of operations | |
CN112148628A (zh) | 用于主机管理的存储的卸载碎片整理操作 | |
CN104298620A (zh) | 一种耐擦写低能耗的外接计算机加速设备 | |
US20110106815A1 (en) | Method and Apparatus for Selectively Re-Indexing a File System | |
CN1885922A (zh) | 一种进行电视机软件升级的方法及其装置 | |
CN202030403U (zh) | 电梯快速调试装置 | |
CN113487006A (zh) | 一种可移动人工智能辅助计算设备 | |
CN205983448U (zh) | 用于固态硬盘的控制芯片及固态硬盘 | |
CN101493844B (zh) | 实现嵌入式存储器多主接口的方法及装置 | |
US9208073B2 (en) | Firmware storage and maintenance | |
KR102643803B1 (ko) | 멀티 호스트 컨트롤러와 이를 포함하는 반도체 장치 | |
CN106909324A (zh) | 一种基于沙盒重定向的计算机加速设备 | |
CN203386202U (zh) | 计算机通讯*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140108 |