CN104866456B - 电子装置和通信方法 - Google Patents
电子装置和通信方法 Download PDFInfo
- Publication number
- CN104866456B CN104866456B CN201510086487.4A CN201510086487A CN104866456B CN 104866456 B CN104866456 B CN 104866456B CN 201510086487 A CN201510086487 A CN 201510086487A CN 104866456 B CN104866456 B CN 104866456B
- Authority
- CN
- China
- Prior art keywords
- file
- request
- input
- storage device
- bit 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.)
- Active
Links
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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- 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/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- 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/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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/0688—Non-volatile semiconductor memory arrays
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)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer Security & Cryptography (AREA)
Abstract
提供了电子装置和通信方法。一种应用处理器的通信方法包括如下步骤:产生多个文件;通过将第一模式的输入/输出请求发送给存储装置来产生文件集通道,其中,输入/输出请求是与所述多个文件中的文件相应的输入/输出请求;通过将包括针对所述多个文件的第二模式的输入/输出请求的文件集信令发送给存储装置,来经由文件集通道将第一比特数据发送给存储装置,其中,第二模式的输入/输出请求中的每个输入/输出请求是针对所述多个文件中的相应文件的输入/输出请求,且所述多个文件中的每个文件表示第一比特数据的一个位以通过针对该文件的输入/输出请求来发送所述位的比特值。
Description
本申请请求2014年2月24日提交的第10-2014-0021414号韩国专利申请的优先权,所述申请的主题通过引用包含于此。
技术领域
本发明构思的一个或多个示例实施例涉及一种电子装置,更具体地讲,涉及一种电子装置的非标准通信方法。
背景技术
半导体存储器装置可被分类为易失性半导体存储器装置和非易失性半导体存储器装置。非易失性半导体存储器装置即使在断电时也可保留存储在其中的数据,另一方面,存储在非易失性半导体存储器装置中的数据可根据所使用的制造技术而是永久性的或可再编程的。非易失性半导体存储器装置可在计算机、航空、电信和消费电子工业的广泛应用领域中用于用户数据存储以及程序和微码存储。
发明内容
根据一个或多个示例实施例,一种应用处理器的通信方法包括如下步骤:产生多个文件;通过将第一模式的输入/输出(I/O)请求发送给存储装置来产生文件集通道,其中,I/O请求是与所述多个文件中的文件相应的I/O请求;通过将包括针对所述多个文件的第二模式的I/O请求的文件集信令发送给存储装置,来经由文件集通道将第一比特数据发送给存储装置,其中,第二模式的I/O请求中的每个I/O请求是针对所述多个文件中的相应文件的I/O请求,且所述多个文件中每个文件表示第一比特数据的至少一个位以通过针对该文件的I/O请求发送所述至少一个位的比特值。
根据示例实施例,一种存储装置的通信方法包括如下步骤:从主机接收与多个文件相应的第一输入/输出(I/O)请求;基于接收到的第一I/O请求识别非标准通信;在识别非标准通信之后,从主机接收对所述多个文件的第二I/O请求;将第二I/O请求解释为从主机发送的比特数据。
根据示例实施例,一种包括应用处理器的主机的通信方法包括如下步骤:在所述应用处理器处产生多个文件;在所述应用处理器处产生第一模式的输入/输出(I/O)请求,使得第一模式的I/O请求可被存储装置识别为用于建立主机与存储装置之间的文件集通道的请求,第一模式的I/O请求是与所述多个文件相应的I/O请求;通过将第一模式的I/O请求发送给存储装置,来建立主机与存储装置之间的文件集通道;在应用处理器处,产生第二模式的I/O请求,第二模式的I/O请求中的每个I/O请求是针对所述多个文件中的相应文件的I/O请求且所述多个文件每个文件表示比特数据的至少一个位以通过针对该文件的I/O请求发送所述至少一个位的比特值;通过将第二模式的I/O请求发送给存储装置,来经由文件集通道将比特数据发送给存储装置。
附图说明
通过参照附图对本发明构思的示例实施例进行的详细描述,本发明构思的示例实施例的上述和其它特点和优点将会变得更明显。附图意图描述本发明构思的示例实施例,且附图不应被解释为限制权利要求的范围。除非明确指出,否则附图不应被认为是按比例绘制的。
图1是示意性示出用于描述本发明构思的一个或多个示例实施例的电子装置的框图;
图2是示意性示出用于描述根据本发明构思的至少一个示例实施例的非标准通信的软件架构的示图;
图3是示意性示出根据本发明构思的一个或多个示例实施例的软件架构的示图;
图4是示意性示出根据本发明构思的至少一个示例实施例的使用文件集通道的非标准通信协议的示图;
图5是示意性示出根据本发明构思的至少一个示例实施例的使用读取请求来产生文件集通道的处理的示图;
图6是示出根据本发明构思的至少一个示例实施例的执行使用读取请求的文件集信令的发送的处理的示图;
图7是示意性示出根据本发明构思的至少一个示例实施例的执行使用读取请求的文件集信令的接收的方法的示图;
图8是示意性示出根据本发明构思的至少一个示例实施例的使用写入请求的非标准通信的示图;
图9是示意性示出根据本发明构思的一个或多个示例实施例的使用写入请求的非标准通信的示图;
图10是示意性示出根据本发明构思的一个或多个示例实施例的使用写入请求的非标准通信的示图;
图11是示意性示出根据本发明构思的至少一个示例实施例的主机的非标准通信的流程图;
图12是示意性示出根据本发明构思的一个或多个示例实施例的主机的非标准通信的流程图;
图13是示意性示出根据本发明构思的一个或多个示例实施例的主机的非标准通信的流程图;
图14是示意性示出根据本发明构思的至少一个示例实施例的存储装置的非标准通信的流程图;
图15是示意性示出根据本发明构思的至少一个示例实施例的使用文件集信令执行供应命令(vendor command)的方法的流程图;
图16是示意性示出根据本发明构思的至少一个示例实施例的移动装置的框图;
图17是示意性示出根据本发明构思的一个或多个示例实施例的移动装置的框图;
图18是示意性示出根据本发明构思的至少一个示例实施例的计算系统的框图;
图19是示意性示出根据本发明构思的至少一个示例实施例的固态驱动器的框图;
图20是示意性示出根据本发明构思的至少一个示例实施例的eMMC的框图;
图21是示意性示出根据本发明构思的至少一个示例实施例的UFS系统的框图;
图22是示意性示出根据本发明构思的至少一个示例实施例的移动装置的框图。
具体实施方式
在此公开了本发明构思的详细示例实施例。但是,在此公开的特定结构和功能细节仅代表描述本发明构思的示例实施例的目的。但是,本发明构思的示例实施例可以以各种可变形式来实现,且不应解释为仅限于在此阐述的实施例。因此,虽然本发明构思的示例实施例能够进行各种修改和可变形式,但是本发明构思的实施例以示例的方式示出在附图中并将在此被详细描述。但是,应该理解,不意图将本发明构思的示例实施例限制为公开的特定形式,相反,本发明构思的示例实施例覆盖落入本发明构思的示例实施例的范围内的所有修改、等同物和可变形式。贯穿附图的描述,相似标号表示相似元件。
将理解的是,尽管在这里可使用术语第一、第二等来描述各种元件,但是这些元件不应该受这些术语的限制。这些术语仅用来将一个元件与另一个元件区分开来。例如,在不脱离本发明构思的示例实施例的范围的前提下,第一元件可被称为第二元件,相似的,第二元件可被称为第一元件。如在此使用的,术语“和/或”包括一个或多个相关所列项的任意组合和所有组合。将理解的是,当元件被称作“连接到”或“结合到”另一元件时,该元件可以直接连接或结合到另一元件,或者可以存在中间元件。相反,当元件被称作“直接连接到”或“直接结合到”另一元件时,不存在中间元件。相同的标号始终表示相同的元件。应以相似方式解释用于描述元件之间的关系的其它术语(例如,“在……之间”与“直接在……之间”、“相邻”与“直接相邻”等)。
这里使用的术语仅为了描述特定实施例的目的,而不意图限制本发明构思的示例实施例。如这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式。还应理解的是,当在此使用术语“包含”和/或“包括”时,说明存在阐述的特征、整体、步骤、操作、元件和/或组件,但不排除存在或附加一个或多个其它特征、整体、步骤、操作、元件、组件和/或它们的组。
还应注意的是,在一些可变实施方式中,标注的功能/动作可不按附图中标注的顺序发生。例如,连续示出的两幅图可根据涉及的功能/动作实际上被同时执行或可以按相反顺序被执行。
在此参照本发明构思的理想化的实施例(和中间结构)的示意性示出来描述本发明构思的示例实施例。由此,可期望例如因制造技术和/或公差而导致的示出的形状的各种变形。因此,本发明构思的示例实施例不应被解释为限于在此示出的区域的特定形状,而是包括因例如制造导致的形状的偏差。
根据本发明构思的至少一个示例实施例的电子装置和通信方法可使用文件集信令(signaling)执行非标准通信,而不管硬件约束和软件约束为如何。这里,硬件约束可表示可能未由存储装置的标准接口通信协议定义的那些,而软件约束可表示即使存在标准协议也因缺少运行应用的权限而不能使用标准协议的情况。现在将描述文件集信令。
图1是示意性示出用于描述本发明构思的一个或多个示例实施例的电子装置10的框图。参照图1,电子装置10包括存储装置100和主机200。存储装置100和主机200中的每一个可包括处理器。如在此使用的,术语“处理器”可表示例如具有物理地构成为执行期望的操作的电路的硬件实现的数据处理装置,所述操作包括例如由包括在程序中的代码和/或指令表示的操作。上述硬件实现的数据处理装置的示例包括(但不限于)微处理器、中央处理器(CPU)、处理器核、多处理器、专用集成电路(ASIC)和现场可编程门阵列(FPGA)。此外,根据本发明构思的一个或多个示例实施例,上述处理器中的任意或全部处理器可被实现为例如片上系统(SoC)。在此描述为由存储装置100或主机200执行的所有功能可由存储装置100和主机200中的处理器分别执行和/或控制。
存储装置100存储将在主机200中使用的数据。存储装置100包括非标准通信确定器120,该非标准通信确定器120基于来自主机200的针对多个文件(以下,称为文件集)的输入/输出请求(例如,写入/读取请求),来确定非标准通信。非标准通信确定器120可通过硬件、软件和固件形式中的任意一种形式或全部形式被实现。非标准通信确定器120识别非标准通信的开始,并转换在非标准通信开始之后输入的针对文件集的输入/输出请求。非标准通信确定器120将在非标准通信开始之后将被发送到主机200的比特数据转换为针对文件集的输入/输出请求的成功/失败。
主机200包括用于与存储装置100执行非标准通信的应用220。例如,应用220可以是魔法师程序(magician program),该魔法师程序可以是例如用于管理、监控、改善和/或优化存储装置100的程序。应用220产生多个文件以产生/形成用于非标准通信的文件集通道,并向存储装置100提供针对多个文件(即,文件集)的特定模式的输入/输出请求。如果非标准通信确定器120识别出特定模式的输入/输出请求,则形成文件集通道。
根据以上描述,电子装置10使用文件集信令执行非标准通信。这里,文件集信令可表示代表从主机200发送至存储装置100或从存储装置100发送至主机200的至少一个比特的用于针对构成文件集的每个文件的输入/输出请求的每个信号。即,主机200经由文件集通道将比特数据发送至存储装置100,并且存储装置100经由文件集通道将比特数据发送至主机200。
图2是示意性示出用于描述根据本发明构思的至少一个示例实施例的非标准通信的软件架构的示图。参照图2,主机200包括文件系统210、应用220和装置驱动器230。
文件系统210可包括例如应用程序编程接口(API)、文件系统管理器和装置接口中的任意一个或全部。在进行非标准通信时,文件系统210根据应用220的请求产生用于形成文件集通道的多个文件或针对所述多个文件的输入/输出请求。
装置驱动器230将API提供给文件系统210,并将对硬件的访问请求(例如,输入/输出请求)转换为硬件(例如,存储装置100)可识别的命令。访问请求可由文件系统210发布。
根据本发明构思的一个或多个示例实施例,文件系统210和装置驱动器230被包括在操作系统(OS)中,且应用220安装在OS上。
根据本发明构思的一个或多个示例实施例的非标准通信被如下地执行。首先,实现了应用220的“file io api”可将盘输入/输出请求“disk io”发布给存储装置100。“fileio api”的示例包括在Windows操作系统中的CreateFile/ReadFile/WriteFile的api以及Linux操作系统中的open/read/write的api。
然后,通过产生多个文件(或,文件集)在应用220与存储装置100之间配置通信通道,对应用220发布的文件集的一部分的文件输入/输出请求“file io”被产生,由OS和文件系统210将文件输入/输出请求“file io”转换为盘输入/输出请求“disk io”,且盘输入/输出请求“disk io”被传送给存储装置100。存储装置100检测由此发送的盘输入/输出请求“disk io”,并确定根据非标准通信传送的信号的含义。非标准通信的示例涉及使用输入/输出读取或写入请求(诸如,读取或写入请求)将数据比特从主机200传输至存储装置100,或反之亦然。
然后,在文件集被产生之后的一般情况下,可不改变文件的地址。诸如磁盘重整的特定任务引起逻辑块地址(LBA)改变,但是在由应用220开放文件句柄或描述符的情况下不执行改变。在文件集被产生之后不改变地址可表示在应用220与存储装置100之间的文件集信令传输期间不改变地址,且可不表示逻辑块地址永远不变。
将被用于文件集信令传输的文件与文件是否具有互不相关的位置不相关,且如必要的话可不被存储而是被产生,且可在非标准通信之后被删除。根据文件系统210的构成文件集的文件可能不存在于连续区域中。文件系统210按簇单位产生构成文件集的文件,以将文件分配给确保连续性的多个扇区(sector)。
可以以获得关于应用220与存储装置100之间的相同LBA的信息的意图,来形成文件集通道。即使应用220可经由文件系统210知道文件名,应用220也无需直接知道逻辑块地址。存储装置100可知道盘输入/输出请求“disk io”发布的逻辑块地址,并通过文件系统的分析获得文件名。
形成文件集通道的方式是针对构成通信通道的N个文件从应用220发布具有特定模式的文件输入/输出请求“file io”的方式,且这种模式被预定的或(可选择地)期望的存储装置100检测。
本发明构思的至少一个示例实施例可支持使用应用220与存储装置100之间的文件集信令的非标准通信。
在图2中,应用220可经由文件系统210执行非标准通信。但是,本发明构思的一个或多个示例实施例不限于此。例如,本发明构思的至少一个示例实施例可被改变或修改,使得无需通过文件系统210也额外地执行非标准通信。
图3是示意性示出根据本发明构思的一个或多个示例实施例的软件架构的示图。参照图3,应用220a可经由文件系统210执行使用文件集通道的第一非标准通信,且可经由装置驱动器230执行不使用文件集通道的第二非标准通信。第一非标准通信可以与参照图2描述的非标准通信基本相同,因此省略其描述。
通过经由装置驱动器230a将命令发送给存储装置100,来执行第二非标准通信。根据本发明构思的一个或多个示例实施例,装置驱动器230a可依赖于操作系统OS(例如,Windows、Linux、MAC、Apple OS、Android等)。
应用220a被构造为执行第一非标准通信和第二非标准通信之一。例如,第二非标准通信被设置为默认,而在不执行第二非标准通信时执行第一非标准通信。相反,第一非标准通信被设置为默认,而在不执行第一非标准通信时执行第二非标准通信。
根据本发明构思的至少一个示例实施例的电子装置10可支持使用文件系统210的第一非标准通信和不使用文件系统210的第二非标准通信。
图4是示意性示出根据本发明构思的至少一个示例实施例的使用文件集通道的非标准通信协议的示图。参照图1至图3,当需要或者(可选择地)期望非标准通信时,主机200产生多个文件并将它们存储在存储装置100。主机200将对多个文件的具有预定模式或(可选择地)期望模式的多个输入/输出请求发送给存储装置,并且存储装置100识别出具有预定模式或(可选择地)期望模式的多个输入/输出请求,以形成用于非标准通信的文件集通道(S10)。
在形成文件集通道之后,主机200和存储装置100经由第一文件集信令和第二文件集信令彼此进行通信。例如,主机200经由第一文件集信令将比特数据传送到存储装置100(S20)。这里,第一文件集信令可由针对所述多个文件的输入/输出请求(例如,读取/写入请求)构成。在第一文件集信令,对文件的读取请求或更新(或,写入)请求被视作比特。此外,存储装置100基于来自主机200的第一文件集信令解析比特数据。即,对从主机200发送的所述多个文件的输入/输出请求可被解析为从主机200传输的比特数据。
存储装置100经由第二文件集信令将比特数据发送到主机200(S30)。这里,第二文件集信令可由与针对所述多个文件的输入/输出请求相应的成功/失败信息形成。但是,本发明构思的一个或更多个示例实施例不限于此。例如,可由与文件相关的信息以各种方式形成第二文件集信令。主机200基于来自存储装置100的第二文件集信令来解析比特数据。例如,存储装置100可将比特数据(例如,[01101100])编码为读取成功和/或读取失败消息的串,然后将读取成功和/或读取失败消息传送到主机200,主机200可对读取成功和/或读取失败消息的串进行解码以确定从存储装置100传送的比特数据。
现在将参照图5至图7来描述使用读取请求的非标准通信方法。
图5是示意性示出根据本发明构思的至少一个示例实施例的使用读取请求产生文件集通道的处理的示图。例如,图5中的阴影块可表示从主机200发布给数据存储装置100的读取请求。图5中的空白块可指示没有传送针对特定文件的读取请求的情况。图5中示出的块的垂直位置表示与块相应的时间点(即,t1至tn),这里,n是正整数。
参照图5,存储装置100将N个文件F1至FN的逻辑块地址OxXX、OxYY、OxAB…OxQQ和与所述逻辑块地址相应的盘输入/输出请求“disk io”进行分组和存储。例如,存储装置100可对针对N个文件F1至FN的逻辑块地址OxXX、OxYY、OxAB…OxQQ分别产生的读取请求的数量进行分组和存储。
例如,在第一序列Seq1期间,存储装置100存储(LBA1,1)、(LBA2,1)…(LBAN,1)。在第二序列Seq2期间,存储装置100存储(LBA1,1,2)、(LBA2,1,2)…(LBAN,1,2)。在第三序列Seq3期间,存储装置100存储(LBA1,1,2,3),(LBA2,1,2,3)…(LBAN,1,2,3)。
在存储装置100的非标准通信确定器120(参照图1)中,当被成功识别的文件集存在于一直到第三序列Seq3中时,形成文件集通道。
此外,应用220(参照图1)在序列Seq1至Seq3之后检查文件集通道是否被成功形成。这里,可根据是否发送和接收了文件集信令来检查文件集通道是否被成功形成,这将在后文进行描述。
本发明构思的至少一个示例实施例可包括通过识别针对文件集的特定模式的读取请求,来形成和/或产生文件集通道。
图6是示出根据本发明构思的至少一个示例实施例的执行使用读取请求的文件集信令的发送的处理的示图。例如,图6中的阴影块可表示从主机200发布给数据存储装置100的读取请求。图6中的空白块可表示没有传输针对特定文件的读取请求的情况。图6中示出的块的垂直位置表示与块相应的时间点(即,t1至tn),这里,“n”是正整数。
参照图6,在数据发送的情况下,应用220产生(N+2)个文件,并且应用220和存储装置100可识别(N+2)个文件的地址。这里,如此产生的文件的地址不需要连续。因此产生的文件的地址可不被约束。
N个文件F1至FN被用作用于发送比特数据的位线,并且剩余两个文件Ready(准备)和Tx(发送)被用作将数据设置发送到位线(bit line)。应用220经由对每个文件进行读取的读取请求发布盘输入/输出请求“disk io”。
根据一个或多个示例实施例,为了向存储装置100通知主机200准备经由非标准通信发送信号,由主机200针对文件Ready产生输入/输出请求“disk io”。例如,根据本发明构思的一个或多个示例实施例,当主机200将针对特定文件(例如,“Ready”文件)的特定输入/输出命令(例如,读取请求)发送给存储装置100时,主机200以信令向存储装置100通知主机200准备开始非标准通信,并且存储装置100将这种信令解释为主机200准备开始非标准通信的指示。
对文件F1至文件FN的集合中的文件的盘输入/输出请求“disk io”(即,读取请求)被发布。此时,存储装置100存储发布了盘输入/输出请求“disk io”的文件。通过发布针对文件Tx的盘输入/输出请求“disk io”来报告信号发送。存储装置100将与盘输入/输出请求“disk io”相关联的每个文件视作比特。即,文件被视作二进制数据(b101...1)、(b000...0)和(b111...1)。此时,通过发布针对文件集的盘输入/输出请求“disk io”一次,来传输N比特或(N+2)比特数据。例如,根据本发明构思的一个或更多示例实施例,当主机200将针对特定文件(例如,文件F1至Fn文件)的特定输入/输出命令(例如,读取请求)发送给存储装置100时,主机200以信令向存储装置100通知主机200将数据比特传送给存储装置100作为输入/输出信号,并且存储装置100将这种信令解释为经由非标准通信传送的数据比特。例如,当主机200和存储装置100被构造为将读取请求解释为对应于比特“1”,且将不存在读取请求解释为对应于比特“0”时,传送包括针对文件F1的读取请求、针对文件F2的不读取请求、针对文件F3的读取请求和针对文件F4的不读取请求的连续的命令串可被解释为比特数据(b1010)。此外,根据本发明构思的一个或多个示例实施例,当主机200将针对特定文件(例如,“Tx”文件)的特定输入/输出命令(例如,读取请求)发送给存储装置100时,主机200以信令向存储装置100通知主机200将要、当前正在或者(可选择地)已经完成了经由非标准通信发送数据比特,并且存储装置100将这种信令解释为主机200将要、当前正在或者(可选择地)已经完成了经由非标准通信发送数据比特的指示。
例如,如图6所示,发布针对文件Ready、F1至FN和Tx的读取请求来发送第一比特数据(b101…1)。例如,发布对文件Ready和Tx进行读取的读取请求以发送第二比特数据(b000…0)。例如,发布针对文件Ready、F1至FN和Tx的读取请求以发送第三比特数据(b111…01)。如上所述,根据一个或多个示例实施例,主机200和存储装置100可被构造为:针对非标准通信,读取请求对应于比特“1”,而不存在读取请求对应于比特“0”。
同时,图6所示的设置比特“0”或“1”的方法被示出为示例。根据一个或多个示例实施例,除了分别使用比特“0”或“1”来指示未被请求读取的数据和请求被读取的数据之外,比特“0”可被分配给被请求读取的文件,且比特“1”可被分配给未被请求读取的文件。
根据本发明构思的至少一个示例实施例的基于文件集信令的发送方法可通过利用比特来表示是否存在对文件集的读取请求,来发送数据。
图7是示意性示出根据本发明构思的至少一个示例实施例的执行使用读取请求的文件集信令的接收的方法的示图。例如,图7中的浅阴影块可表示从数据存储装置100发布给主机200的读取成功指示,并且图7中的深阴影块可表示从数据存储装置100发布给主机200的读取失败指示。图7中的空白块可表示未针对特定文件传送指示的情况。图7中示出的块的垂直位置表示与块相应的时间点(即,t1至tn),这里,“n”是正整数。
通过从存储装置100将指示读取请求成功的信号发送给应用200,来通知接收文件集信令的开始。例如,存储装置100可将针对与文件Ready相应的逻辑块地址的盘输入/输出请求“disk io”传送给主机200。
应用220从存储装置100接收指示对文件F1至FN的读取请求是否成功的信号。例如,当主机200和存储装置100被构造为将读取成功指示解释为对应于比特“1”且将无指示或读取失败指示解释为对应于比特“0”时,传送包括针对文件F1的读取成功指示、针对文件F2的无指示或读取失败指示、针对文件F3的读取成功指示、针对文件F4的无指示或读取失败指示的成功/失败信息的连续串可被解释为比特数据(b1010)。例如,存储装置100通过指示针对特定文件的读取请求成功来经由非标准通信将比特“1”传送给应用220。相反,存储装置100通过指示针对特定文件的读取请求失败来经由非标准通信将比特“0”传送给应用220。应用220使用OS的“file io api”的返回值来确定盘输入/输出请求“disk io”的成功/失败。根据本发明构思的一个或多个示例实施例,如图7所示,应用220通过组合文件输入/输出请求“file io”是成功的文件的索引来构造比特数据(b101…1)和(b000…0)。然后,当应用220接收到指示针对文件Rx的盘输入/输出请求“disk io”成功的信号时,完成执行文件集信令的接收的操作。
根据本发明构思的至少一个示例实施例的基于文件集信令的接收方法可通过利用比特来表示对文件集的读取请求是否成功,来接收数据。
同时,已参照图5至图7描述了使用读取请求的非标准通信。本发明构思的一个或多个示例实施例可应用于使用写入请求的非标准通信。
图8是示意性示出根据本发明构思的至少一个示例实施例的使用写入请求的非标准通信的示图。为了便于描述,假设图8所示的非标准通信使用三个文本文件1.txt、2.txt和3.txt,其中,每一个文本文件按簇存储在存储装置100中。这里,每个簇由图8所示出的逻辑扇区号(LSN)指示的多个扇区形成。为了便于描述,假设簇由四个扇区形成。例如,图8中的阴影块可表示从主机200发布给数据存储装置100的针对相应文件或逻辑扇区号的写入更新请求。图8中的空白块可指示未针对相应文件或逻辑扇区号传送写入更新请求的情况。图8中示出的块的垂直位置表示与块相应的时间点(即,t1至tn),这里,“n”是正整数。
参照图8,使用写入请求的非标准通信通过在存储了文件1.txt、2.txt和3.txt之后经由第一更新操作来形成文件集通道并执行第二更新操作,来执行文件集信令的发送。
下面将描述文件集信令的发送。当主机200的应用220(参照图1)期望与存储装置100执行非标准通信时,应用220向文件系统210(参照图1)请求产生文件1.txt、2.txt和3.txt。文件系统210基于应用220针对文件1.txt、2.txt和3.txt的请求产生文件1.txt、2.txt和3.txt,并向装置驱动器230(参照图2)请求产生相应的写入请求。文件1.txt、2.txt和3.txt的产生可包括分配文件1.txt、2.txt和3.txt的逻辑地址。装置驱动器230基于文件系统210的请求发布和发送存储装置100可识别的写入请求。因此,从装置驱动器230接收到针对文件1.txt、2.txt和3.txt中的每个文件的写入请求的存储装置100可识别文件1.txt、2.txt和3.txt的逻辑地址。
然后,执行第一更新操作以产生文件集通道。在第一更新操作期间,应用220以特定模式发布针对文件1.txt、2.txt和3.txt中的每个文件的更新请求。存储装置100通过识别第一更新请求来执行经由文件集通道的非标准通信。这里,文件集通道可包括文件1.txt、2.txt和3.txt。
然后,执行第二更新操作,以进行文件集信令的发送。例如,比特“1”被分配给将被更新的文件,而比特“0”被设置给将不被更新的文件。
例如,如图8所示,当主机200和存储装置100被构造为将针对特定文件的更新请求解释为对应于比特“1”并且将针对特定文件的不更新请求解释为对应于比特“0”时,传送包括针对文件1.txt的更新请求、针对文件2.txt的不更新请求和针对文件3.txt的更新请求的更新请求的连续串可被解释为比特数据(b101)。主机200还可以以与图8中所示出的方式相似的方式,对比特数据(b011)和(b110)进行传输。
在图8中,文件1.txt、2.txt和3.txt扩展名可以是“txt”。但是,本发明构思的一个或多个示例实施例不限于此。
本发明构思的至少一个示例实施例可使用指示是否需要针对文件集的更新操作的比特,来执行文件集信令的传输。
图8示出用于发送文件集信令的针对形成文件1.txt、2.txt和3.txt的簇单位的更新操作的示例。但是,本发明构思的一个或多个示例实施例不限于此。例如,本发明构思的至少一个示例实施例可被修改或改变,使得针对形成文件1.txt、2.txt和3.txt的簇的至少一个扇区执行更新操作,以发送文件集信令。
图9是示意性示出根据本发明构思的一个或多个示例实施例的使用写入请求的非标准通信的示图。参照图9,非标准通信方法与图8的非标准通信方法的不同之处在于,执行仅针对形成文件1.txt、2.txt和3.txt的簇的一个扇区的第二更新操作,以发送文件集信令。例如,图9中的阴影块可表示从主机200发布给数据存储装置100的针对相应文件或逻辑扇区号的写入更新请求。图9中的空白块可指示针对相应文件或逻辑扇区号没有传送写入更新请求的情况。图9中示出的块的垂直位置表示与块相应的时间点(即,t1至tn),这里,“n”是正整数。
在图8和图9中,描述了使用文件1.txt、2.txt和3.txt中的每个文件来传输1比特数据的示例。但是,本发明构思的一个或多个实施例不限于此。例如,可通过文件1.txt、2.txt和3.txt中的每个文件来传输n比特数据(n是2或大于2的整数)。例如,当主机200和存储装置100被构造为将针对特定文件的更新请求解释为对应于比特“1”且将针对特定文件不请求更新解释为对应于比特“0”时,如图9所示,传送包括针对文件1.txt的扇区S1的更新请求、针对文件2.txt的扇区S1不请求更新以及针对文件3.txt的扇区S1的更新请求的更新请求的连续串可被解释为比特数据(b101)。主机200还可以以与图9所示的方式相似的方式对比特数据(b011)和(b110)进行传输。
图10是示意性示出根据本发明构思的一个或多个示例实施例的使用写入请求的非标准通信的示图。参照图10,非标准通信方法与图8和图9的非标准通信方法的不同之处在于,执行第二更新操作以经由文件1.txt、2.txt和3.txt中的每个文件发送2比特数据。例如,图10中的阴影块可表示从主机200发布给数据存储装置100的针对相应文件或逻辑扇区号的写入更新请求。图10中的空白块可指示针对相应文件或逻辑扇区号没有传送写入更新请求的情况。图10中示出的块的垂直位置表示与块相应的时间点(即,t1至tn),这里,“n”是正整数。
如图10所示,簇由四个扇区S1至S4形成。扇区S1至S4中的每个扇区的两个比特在更新操作被设置为不同的值。例如,在更新操作期间,第一扇区S1的值被设置为“11”,第二扇区S2的值被设置为“01”,第三扇区S3的值被设置为“10”并且第四扇区S4的值被设置为“00”。例如,当主机200和存储装置100被构造为以上述方式将针对特定文件的更新请求解释为对应于特定比特对时,如图10所示,传送包括针对文件1.txt的扇区S1的更新请求、针对文件2.txt的扇区S2的更新请求以及针对文件3.txt的扇区S2的更新请求的更新请求的连续串可被解释为比特数据(b110101)。主机200还可以以与图10所示的方式相似的方式对比特数据(b001001)和(b111101)进行传输。
根据本发明构思的至少一个示例实施例的非标准通信方法可通过文件1.txt、2.txt和3.txt中的每个来发送2比特数据。
如上所述,图5至图10仅是关于使用“disk io”(读取请求或写入请求)的非标准通信的实施例。本发明构思的至少一个示例实施例可经由读取请求、写入请求或读取请求和写入请求的组合的各种方法来形成文件集通道,并发送和接收文件集信令。同时,本发明构思的至少一个示例实施例的文件集信令可根据传输比特的单位而被称作“簇集信令”或“扇区集信令”。
图11是示意性示出根据本发明构思的至少一个示例实施例的主机的非标准通信的流程图。现在将参照图1至图11来描述非标准通信方法。
如果需要主机200与存储装置100之间的非标准通信,则主机200的应用220向文件系统210请求产生多个文件。在步骤S110,主机200的文件系统210响应于应用220的请求,而产生文件的集合。
在步骤S120,主机200发送与文件的集合相应的预定或(可选择的)期望模式的输入/输出请求,以产生文件集通道。这里,输入/输出请求可由写入或读取请求形成。如果存储装置100识别出从主机200发送的预定或(可选择的)期望模式的输入/输出请求,则形成文件集通道。
在产生文件集通道之后,在步骤S130,主机200向存储装置100发送与文件的集合相应的输入/输出请求以传输比特数据。与文件的集合相应的输入/输出请求中的每个可被视作将被发送的至少一个比特。在产生文件集通道之后,可重复步骤S130以传输比特数据。
根据本发明构思的至少一个示例实施例的非标准通信方法可使用与文件的集合相应的输入/输出请求发送比特数据。
图12是示意性示出根据本发明构思的一个或多个示例实施例的主机的非标准通信的流程图。现在将参照图1至图10和图12来描述非标准通信方法。
主机200产生用于非标准通信的文件的集合(S210)。然后,主机200发送与文件的集合相应的预定或(可选择的)期望模式的输入/输出请求,以产生文件集通道。如果存储装置100识别出从主机200发送的预定或(可选择的)期望模式的读取请求,则形成文件集通道(S220)。在产生文件集通道之后,主机200向存储装置100发送与文件的集合相应的读取请求以传输比特数据(S230)。与文件的集合相应的读取请求中的每个可被视作将被发送的至少一个比特。在产生文件集通道之后,可重复步骤S230以传输比特数据。
根据本发明构思的至少一个示例实施例的非标准通信方法可使用与文件的集合相应的读取请求发送比特数据。
图13是示意性示出根据本发明构思的一个或多个示例实施例的主机的非标准通信的流程图。现在将参照图1至图10和图13来描述非标准通信方法。
主机200产生用于非标准通信的文件的集合(S310)。文件的集合可按簇写入存储装置100(S320);因此,主机200和存储装置100识别关于文件的集合的逻辑地址。然后,主机200发送与文件的集合相应的预定或(可选择的)期望模式的更新(或写入)请求,以产生文件集通道(S330)。如果存储装置100识别出从主机200发送的预定模式或(可选择的)期望模式的更新请求,则形成文件集通道(S330)。在产生文件集通道之后,主机200向存储装置100发送与文件的集合相应的更新请求,以传输比特数据(S340)。与文件的集合相应的更新请求中的每个可被视作将被发送的至少一个比特。在产生文件集通道之后,可重复步骤S340以传输比特数据。
根据本发明构思的至少一个示例实施例的非标准通信方法可使用与文件的集合相应的写入来发送比特数据。
图14是示意性示出根据本发明构思的至少一个示例实施例的存储装置的非标准通信的流程图。现在将参照图1至图10和图14来描述非标准通信方法。
存储装置100接收与针对文件集通道的文件的集合相应的第一输入/输出请求(S410)。存储装置100确定第一输入/输出请求的模式是否是预定模式或(可选择的)期望模式(S420)。如果接收到具有预定模式或(可选择的)期望模式的第一输入/输出请求,则存储装置100确定执行非标准通信。此时,可形成用于非标准通信的文件集通道。
然后,存储装置100接收与文件的集合相应的第二输入/输出请求以经由文件集通道接收比特数据(S430)。存储装置100将经由文件集通道接收到的第二输入/输出请求解释为从主机200发送的比特数据(S440)。
根据本发明构思的至少一个示例实施例的非标准通信可基于与文件的集合相应的输入/输出请求接收比特数据。
图12和图14描述了使用文件集信令的非标准通信方法。本发明构思的至少一个示例实施例的非标准通信方法可被用于发布供应命令(vendor command)。
图15是示意性示出根据本发明构思的至少一个示例实施例的使用文件集信令执行供应命令的方法的流程图。现在将参照图1至图15来描述执行供应命令的方法。使用文件集通道开放存储装置100与主机200之间的非标准通信通道(S510)。主机200发布用于管理存储装置100的供应命令,并经由文件集信令将供应命令发送给存储装置100(S520)。存储装置100解析经由文件集信令传输到的供应命令,以执行与解析的供应命令相应的操作(S530)。在结束对供应命令的操作之后,存储装置100经由文件集信令向主机200提供供应命令完成信息。
供应命令可以是例如仅限于主机200和/或存储装置100的特定供应商或型号的命令。
根据本发明构思的至少一个示例实施例的供应命令执行方法可发送针对文件集信令的供应命令。
下面将讨论根据本发明构思的一个或多个示例实施例的装置的示例。本发明构思的一个或多个示例实施例可应用于使用微SD卡的任何电子装置。
图16是示意性示出根据本发明构思的至少一个示例实施例的移动装置20的框图。参照图16,移动装置20包括应用处理器24,该应用处理器24被构造为嵌入或插入有微SD卡22。这里,微SD卡22可由图1中示出的存储装置100形成,且应用处理器24由图1中示出的主机200形成。可使用文件集信令执行微SD卡22和应用处理器24之间的非标准通信。
安装在一般移动装置的操作系统不将根权限(root authority)授权给应用。在这种情况下,即使存储卡(例如,SD卡、微SD卡、MMC、eMMC等)具有固件更新功能,应用也无法发布用于执行固件更新的命令。
作为对比,根据本发明构思的至少一个示例实施例的移动装置20没有约束地执行对于微SD卡22的固件更新,这是因为移动装置20基于普通输入/输出请求使用文件集信令执行非标准通信。
本发明构思的一个或多个示例实施例可应用于识别通用闪存(UFS)的电子装置。
图17是示意性示出根据本发明构思的一个或多个示例实施例的移动装置的框图。参照图17,移动装置30包括至少一个UFS装置32和应用处理器34。这里,UFS装置32由图1中示出的存储装置100形成,且应用处理器34由图1中示出的主机200形成。UFS装置32和应用处理器34中的每一个包括用于非标准通信的移动物理层M-PHY。使用文件集信令执行UFS装置32与应用处理器34之间的非标准通信。
根据本发明构思的至少一个示例实施例的移动装置30不受通信约束而经由使用文件集信令的非标准通信来管理UFS装置32。
本发明构思的一个或多个示例实施例可应用于使用主存储器的电子装置。
图18是示意性示出根据本发明构思的至少一个示例实施例的计算系统40的框图。参照图18,计算系统40包括中央处理单元41、存储器模块42、存储器控制器43以及存储装置44。中央处理单元41控制计算系统40的整体操作。存储器模块42由多个存储器芯片42-1至42-n形成。如图18所示,存储器芯片42-1至42-n中的每个存储器芯片被构造为具有堆叠了多个DRAM(或PRAM)的结构。这里,所述多个DRAM芯片中的每个DRAM芯片可包括至少一个主芯片M和至少一个从芯片S。
所述至少一个主芯片M和所述至少一个从芯片S可经由硅通孔技术(TSV)发送和接收信号。主芯片可与存储器控制器43交换时钟信号CLK、命令/地址信号CA和数据DQ。主芯片可将来自外部装置的信号经由TSV传输到从芯片,或向存储器控制器43提供从从芯片输出的信号。
中央处理单元41和存储器控制器43被构造为执行根据本发明构思的至少一个示例实施例的使用文件集信令的非标准通信。例如,中央处理单元41可具有针对主机200参照图1至图15的描述的结构和操作,且存储装置44可具有针对存储装置100参照图1至图15的描述的结构和操作。
本发明构思的一个或多个示例实施例可应用于固态驱动器(SSD)。
图19是示意性示出根据本发明构思的至少一个示例实施例的固态驱动器的框图。参照图19,固态驱动器(以下,称作SSD)1000包括多个非易失性存储器装置1100和SSD控制器1200。
非易失性存储器装置1100中每个可以是NAND闪速存储器、垂直NAND闪速存储器(VNAND)、NOR闪速存储器、电阻式RAM(PRAM)、相变RAM(PRAM)、磁阻式RAM(MRAM)、自旋转移力矩随机存取存储器(STT-RAM)等。此外,非易失性存储器装置1100中每个可被实现为具有三维阵列结构。本发明构思不仅可应用于电荷存储层由浮置栅极形成的闪速存储器装置,还可应用于电荷存储层由绝缘膜形成的电荷撷取闪速(CTF)存储器。
非易失性存储器装置1100被实现为被选择性地提供外部高电压VPPx。SSD控制器1200经由多个通道CH1至CHi(i是2或更大的整数)连接到非易失性存储器装置1100。SSD控制器1200包括一个或多个处理器1110、缓冲器存储器1220、ECC块1230、主机接口1250和非易失性存储器接口1260。SSD控制器1200被构造为与外部主机执行使用文件集信令的非标准通信。
缓冲器存储器1220存储驱动SSD控制器1200所需的数据。根据本发明构思的一个或多个示例实施例,缓冲器存储器1220可包括多条存储器线,其中每条存储器线存储数据或命令。在图19中,缓冲器存储器1220被示出为包括在SSD控制器1200中。但是,本发明构思的一个或多个示例实施例不限于此。缓冲器控制器1220可位于SSD控制器1200的外部。ECC块1230被构造为对输入/输出操作使用的数据的差错进行纠正。虽然在图19中未示出,但是还可包括代码存储器以存储驱动SSD控制器1200所需的代码数据。代码存储器可通过非易失性存储器装置来实现。
主机接口1250向外部装置提供接口。非易失性存储器接口1260向非易失性存储器装置1100提供接口。
根据本发明构思的至少一个示例实施例的SSD 1000可不受主机的约束而以例如针对图1至图15描述的方式执行非标准通信。
本发明构思的一个或多个示例实施例可应用于eMMC(例如,嵌入式多媒体卡、moviNAND、iNAND等)。
图20是示意性示出根据本发明构思的至少一个示例实施例的eMMC的框图。参照图20,eMMC 2000包括一个或多个NAND闪速存储器装置2100和控制器2200。
NAND闪速存储器装置2100是单数据率(SDR)NAND闪速存储器装置或双数据率(DDR)NAND闪速存储器装置。或者,NAND闪速存储器装置2100是垂直NAND闪速存储器装置(VNAND)。
控制器2200经由多个通道连接到NAND闪速存储器装置2100。控制器2200包括一个或多个控制器核2210、主机接口2250和NAND接口2260。控制器核2210可控制eMMC 2000的整体操作。主机接口2250被构造为执行控制器2200与主机之间的接口连接。NAND接口2260被构造为提供NAND闪速存储器装置2100与控制器2200之间的接口。根据本发明构思的一个或多个示例实施例,主机接口2250可以是并行接口(例如,MMC接口)。根据本发明构思的一个或多个示例实施例,eMMC 2000的主机接口2250可附加或(可选择地)是串行接口(例如,UHS-II、UFS接口等)。
控制器2200被构造为如参照图1至图17所描述地与主机执行使用文件集信令的非标准通信。控制器2200可通过用于非标准通信的硬件构造和组合硬件与软件和/或固件的构造而被实现。
eMMC 2000从主机接收电源电压Vcc和Vccq。这里,电源电压Vcc(例如,大约3.3V)可被提供给NAND闪速存储器装置2100和NAND接口2260,电源电压Vccq(例如,大约1.8V/3.3V)可被提供给控制器2200。根据本发明构思的一个或多个示例实施例,eMMC 2000可被选择性地提供外部高电压。
根据本发明构思的至少一个示例实施例的eMMC 2000可根据主机请求而不受约束地执行使用文件集信令的非标准通信,从而例如以针对图1至图15描述的方式提供方便管理。
根据本发明构思的一个或多个示例实施例可应用于通用闪存(UFS)。
图21是示意性示出根据本发明构思的至少一个示例实施例的UFS系统的框图。参照图21,UFS系统3000包括UFS主机3100、UFS装置3200和3300、嵌入式UFS装置3400以及可移除UFS卡3500。UFS主机3100可以是移动装置的应用处理器。UFS主机3100、UFS装置3200和3300、嵌入式UFS装置3400以及可移除UFS卡3500中的每一个可通过UFS协议与外部装置进行通信。UFS装置3200和3300、嵌入式UFS装置3400以及可移除UFS卡3500中的至少一个可通过图1中示出的存储装置100实现。
同时,嵌入式UFS装置3400和可移除UFS卡3500可使用与UFS协议不同的协议来执行通信。UFS主机3100和可移除UFS卡3500可通过各种卡协议(例如,UFD、MMC、SD(安全数字)、迷你SD、微SD等)进行通信。
根据本发明构思的一个或多个示例实施例可应用于移动装置。
图22是示意性示出根据本发明构思的至少一个示例实施例的移动装置4000的框图。参照图22,移动装置4000包括应用处理器4100、通信模块4200、显示/触摸模块4300、存储装置4400和移动RAM 4500。例如,应用处理器4100可具有以上针对主机200参照图1至图15描述的结构和操作,并且存储装置4400可具有以上针对存储装置100参照图1至图15描述的结构和操作。
应用处理器4100控制移动装置4000的整体操作。应用处理器4100可以以图1中示出的相同方式被构造。通信模块4200被实现为与外部装置执行有线通信或无线通信。显示/触摸模块4300被实现为显示由应用处理器4100处理的数据或通过触摸面板接收数据。存储装置4400被实现为存储用户数据。存储装置4400可以是,但不限于,存储器卡、eMMC、SSD或UFS装置。存储装置4400可通过图1中示出的存储装置100实现。
移动RAM 4500被构造为临时存储移动装置400的处理操作所需的数据。
根据本发明构思的至少一个示例实施例的移动装置4000执行使用文件集信令的非标准通信,从而改善整体系统性能。
本发明构思的一个或多个示例实施例包括发布“disk io”以与存储装置执行非标准通信。可使用本发明构思的一个或多个示例实施例,而不管硬件约束和软件约束为如何。这里,硬件约束可表示可能未由存储装置的标准接口通信协议定义的那些,软件约束可表示即使存在标准协议也因缺乏运行应用的权限而无法使用标准协议的情况。
可在如下的条件下使用文件集信令方法,所述条件包括:将信息从应用传输到存储装置、从存储装置获得信息、应用向存储装置请求自定义特征(custom feature)。
本发明构思的一个或多个示例实施例被构造为包括应用和存储装置。这里,存储装置可应用于能够产生“io”的所有存储介质,诸如,硬盘驱动器(HDD)、固态驱动器(SSD)、闪速拇指驱动器(Flash Thumb drive)等。此外,如果应用使用相应OS文件io api来执行关于文件的输入/输出,则相应OS文件系统使用将其转换为扇区地址的特性。此外,如果应用直接指定引起产生“io”的扇区地址或对扇区地址命名,则这种扇区地址无需修改而被用于非标准通信。
本发明构思的至少一个示例实施例可提供不管存储装置的标准化接口的类型和安装在存储装置上的文件系统的类型为如何也能够与存储装置通信的方法。
根据本发明构思的至少一个示例实施例的存储器系统和/或存储装置可根据各种不同封装技术的任意封装技术被封装。这种封装技术的示例可包括:层叠封装(PoP)、球栅阵列(BGA)、芯片级封装(CSP)、塑料有引线芯片载体(PLCC)、塑料双列直插式封装(PDIP)、裸片格栅封装(Die in Waffle Pack)、裸片级晶片(Die in Wafer Form)、板上芯片(COB)、陶瓷双列直插式封装(CERDIP)、塑料公制四方扁平封装(MQFP)、小外型IC(SOIC)、缩小外型封装(SSOP)、薄小外型封装(TSOP)、薄四方扁平封装(TQFP)、系统级封装(SIP)、多芯片封装(MCP)、晶片级制造封装(WFP)、晶片级加工的堆叠封装(WSP)等。
在此已描述了本发明构思的示例实施例,但是清楚的是,可以以多种方式改变本发明构思的示例实施例。这种改变不应被视作脱离本发明构思的示例实施例的意图精神和范围,并且如本领域技术人员清楚的是,这种修改意图包括在所附权利要求的范围内。
Claims (20)
1.一种应用处理器的通信方法,包括如下步骤:
产生多个文件;
通过将第一模式的输入/输出请求发送给存储装置来产生文件集通道,其中,输入/输出请求是与所述多个文件中的文件相应的输入/输出请求;
通过将包括针对所述多个文件的第二模式的输入/输出请求的文件集信令发送给存储装置,来经由文件集通道将第一比特数据发送给存储装置,其中,第二模式的输入/输出请求中的每个输入/输出请求是针对所述多个文件中的相应文件的输入/输出请求,所述多个文件中的每个文件表示第一比特数据的至少一个位,以经由针对该文件的输入/输出请求来发送所述至少一个位的比特值。
2.根据权利要求1所述的通信方法,其中,所述应用处理器包括应用,
所述产生多个文件的步骤包括:从所述应用将文件输入/输出请求传送给文件系统,
文件输入/输出请求是针对文件系统的产生所述多个文件的请求。
3.根据权利要求2所述的通信方法,还包括如下步骤:
在文件系统,将文件输入/输出请求改变为存储装置可识别的盘输入/输出请求。
4.根据权利要求3所述的通信方法,其中,所述产生多个文件的步骤包括:在文件系统,按簇单位产生所述多个文件。
5.根据权利要求1所述的通信方法,其中,第一模式的输入/输出请求和第二模式的输入/输出请求包括读取请求。
6.根据权利要求5所述的通信方法,其中,发送第一比特数据的步骤包括:通过针对所述多个文件中的第一文件发布读取请求且针对所述多个文件中的第二文件不发布读取请求来发送第二模式的输入/输出请求,其中,第一比特数据中的与第一文件相应的位具有第一比特值,而第一比特数据中的与第二文件相应的位具有第二比特值。
7.根据权利要求6所述的通信方法,其中,发送第一比特数据的步骤包括:
通过传送与准备文件相应的读取请求,来向存储装置指示准备发送第一比特数据;
通过传送与发送文件相应的读取请求,来向存储装置指示第一比特数据的发送。
8.根据权利要求5所述的通信方法,还包括如下步骤:
通过从存储装置接收针对所述多个文件的第一模式的读取指示,来经由文件集通道从存储装置接收第二比特数据,其中,第一模式的读取指示中的每个读取指示是针对所述多个文件中的相应文件的读取指示,使得所述多个文件中的每个文件表示第二比特数据的一个位,以通过针对该文件的读取指示接收所述位的比特值,
其中,接收第二比特数据的步骤包括:将第一模式的读取指示中的针对所述多个文件中的第三文件发布的读取成功指示解释为第二比特数据中的与第三文件相应的位具有第三比特值,以及将第一模式的读取指示中的针对所述多个文件中的第四文件发布的读取失败指示解释为第二比特数据中的与第四文件相应的位具有第四比特值。
9.根据权利要求8所述的通信方法,其中,接收第二比特数据的步骤包括:
响应于从存储装置接收到与准备文件相应的读取指示,来确定存储装置准备发送第二比特数据;
响应于从存储装置接收到与发送文件相应的读取指示,来确定从存储装置发送第二比特数据。
10.根据权利要求1所述的通信方法,其中,第一模式的输入/输出请求和第二模式的输入/输出请求包括写入请求。
11.根据权利要求10所述的通信方法,其中,写入请求包括更新请求,
其中,通过发送文件集信令来发送第一比特数据的步骤包括:通过发送针对所述多个文件的更新请求来发送第一比特数据,其中,每个发送的更新请求是针对所述多个文件中的相应文件的更新请求,且所述多个文件中的每个文件表示第一比特数据的一个位,以通过针对该文件的更新请求发送所述位的比特值,
其中,以簇为单位发送更新请求。
12.根据权利要求10所述的通信方法,其中,写入请求包括更新请求,
其中,通过发送文件集信令来发送第一比特数据的步骤包括:通过发送针对所述多个文件的更新请求来发送第一比特数据,其中,每个发送的更新请求是针对所述多个文件中的相应文件的更新请求,且所述多个文件中的每个文件表示第一比特数据的一个位,以通过针对该文件的更新请求发送所述位的比特值,
其中,以扇区为单位发送更新请求。
13.根据权利要求10所述的通信方法,其中,写入请求包括更新请求,
其中,通过发送文件集信令来发送第一比特数据的步骤包括:通过发送针对所述多个文件的更新请求来发送第一比特数据,其中,每个发送的更新请求是针对所述多个文件中的相应文件的更新请求,且所述多个文件中的每个文件表示第一比特数据的至少两个位,以通过针对该文件的更新请求发送所述至少两个位的比特值,
其中,以由连续的多个扇区形成的簇为单位发送更新请求,
其中,每个更新请求包括对所述多个扇区中的与所述至少两个位相应的扇区的更新请求。
14.根据权利要求1所述的通信方法,其中,用于发送第一比特数据的文件集信令是第一文件集信令,并且
所述方法还包括如下步骤:
使用第二文件集信令从存储装置接收比特数据,其中,第二文件集信令中表示数据的方式与第一文件集信令中表示数据的方式不同。
15.根据权利要求1所述的通信方法,还包括如下步骤:
确定是否需要与存储装置的非标准通信。
16.一种存储装置的通信方法,包括如下步骤:
从主机接收与多个文件相应的第一输入/输出请求;
基于接收到的第一输入/输出请求识别非标准通信;
在识别非标准通信之后,从主机接收对所述多个文件的第二输入/输出请求;
将第二输入/输出请求解释为从主机发送的比特数据。
17.根据权利要求16所述的通信方法,还包括如下步骤:
在识别非标准通信之后,向主机通知形成了文件集通道。
18.根据权利要求16所述的通信方法,还包括如下步骤:
在解释比特数据之后,向主机通知完成了非标准通信。
19.根据权利要求16所述的通信方法,还包括如下步骤:
使用与所述多个文件相应的输入/输出请求将文件集信令发送给主机,发送文件集信令的步骤包括:通过以每个发送的指示表示一个比特的方式发送表示多个输入/输出请求是否成功的指示,来发送比特。
20.一种包括应用处理器的主机的通信方法,包括如下步骤:
在应用处理器处产生多个文件;
在应用处理器处产生第一模式的输入/输出请求,使得第一模式的输入/输出请求可被存储装置识别为用于建立主机与存储装置之间的文件集通道的请求,第一模式的输入/输出请求是与所述多个文件相应的输入/输出请求;
通过将第一模式的输入/输出请求发送给存储装置,来建立主机与存储装置之间的文件集通道;
在应用处理器处,产生第二模式的输入/输出请求,第二模式的输入/输出请求中的每个输入/输出请求是针对所述多个文件中的相应文件的输入/输出请求,且所述多个文件中的每个文件表示比特数据的至少一个位,以通过针对该文件的输入/输出请求发送所述至少一个位的比特值;
通过将第二模式输入/输出请求发送给存储装置,来经由文件集通道将比特数据发送给存储装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2014-0021414 | 2014-02-24 | ||
KR1020140021414A KR102192198B1 (ko) | 2014-02-24 | 2014-02-24 | 전자 장치 및 그것의 통신 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104866456A CN104866456A (zh) | 2015-08-26 |
CN104866456B true CN104866456B (zh) | 2019-04-26 |
Family
ID=53882248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510086487.4A Active CN104866456B (zh) | 2014-02-24 | 2015-02-17 | 电子装置和通信方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US9582217B2 (zh) |
KR (1) | KR102192198B1 (zh) |
CN (1) | CN104866456B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10037163B2 (en) * | 2015-07-29 | 2018-07-31 | Sandisk Technologies Llc | Self-describing cluster association |
US10437483B2 (en) * | 2015-12-17 | 2019-10-08 | Samsung Electronics Co., Ltd. | Computing system with communication mechanism and method of operation thereof |
KR102276912B1 (ko) * | 2017-06-07 | 2021-07-13 | 삼성전자주식회사 | 스토리지 시스템 및 이의 동작 방법 |
JP7059985B2 (ja) * | 2018-08-10 | 2022-04-26 | 株式会社デンソー | 車両用電子制御システム、車両用マスタ装置、データ格納面情報の送信制御方法、データ格納面情報の送信制御プログラム、車両用マスタ装置側プログラム、センター装置、更新データの選定方法及びセンター装置側プログラム |
KR20200075565A (ko) * | 2018-12-18 | 2020-06-26 | 에스케이하이닉스 주식회사 | 스마트 카 시스템 |
JP7561501B2 (ja) | 2020-02-28 | 2024-10-04 | キヤノン株式会社 | 撮像装置、デバイス、制御方法、およびプログラム |
JP7482649B2 (ja) * | 2020-02-28 | 2024-05-14 | キヤノン株式会社 | 撮像装置、デバイス、制御方法、及びプログラム |
JP7518632B2 (ja) | 2020-02-28 | 2024-07-18 | キヤノン株式会社 | デバイス、制御方法、およびプログラム |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761426A (en) * | 1995-08-24 | 1998-06-02 | International Business Machines Corporation | Method for executing communication between processors in parallel computer |
CN1771495A (zh) * | 2003-05-07 | 2006-05-10 | 国际商业机器公司 | 分布式文件服务体系结构系统 |
CN1864127A (zh) * | 2003-07-28 | 2006-11-15 | 桑迪士克防护内容解决公司 | 用于控制一存储器件的系统、装置及方法 |
CN1980305A (zh) * | 2005-12-07 | 2007-06-13 | 村田机械株式会社 | 通信终端装置及通信方法 |
CN101156402A (zh) * | 2005-04-12 | 2008-04-02 | 株式会社东芝 | 安全网关系统及其方法和程序 |
CN102665237A (zh) * | 2012-04-24 | 2012-09-12 | 北京邮电大学 | Ir接口协议一致性仿真测试装置及互联互通测试方法 |
CN103399728A (zh) * | 2013-03-11 | 2013-11-20 | 威盛电子股份有限公司 | 在微处理器中的通信预取器 |
CN103455463A (zh) * | 2013-09-06 | 2013-12-18 | 北京四方继保自动化股份有限公司 | 一种主控单元通信接入和转出方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6832273B2 (en) | 2000-12-21 | 2004-12-14 | Microsoft Corporation | System and method to specify extended configuration descriptor information in USB devices |
TWI275944B (en) | 2005-08-31 | 2007-03-11 | Etrovision Technology | Data access based storage device communicating method |
US7634585B2 (en) | 2005-11-04 | 2009-12-15 | Sandisk Corporation | In-line cache using nonvolatile memory between host and disk device |
US20080010326A1 (en) | 2006-06-15 | 2008-01-10 | Carpenter Troy A | Method and system for securely deleting files from a computer storage device |
US7558907B2 (en) | 2006-10-13 | 2009-07-07 | Spansion Llc | Virtual memory card controller |
CN101383017B (zh) | 2007-09-06 | 2012-07-04 | 中国银联股份有限公司 | 一种智能sd卡及访问智能sd卡的方法 |
KR101072337B1 (ko) * | 2007-11-02 | 2011-10-11 | 후지쯔 세미컨덕터 가부시키가이샤 | 신호 처리 장치 및 통신 장치 |
US7962792B2 (en) | 2008-02-11 | 2011-06-14 | Siliconsystems, Inc. | Interface for enabling a host computer to retrieve device monitor data from a solid state storage subsystem |
US8375151B1 (en) * | 2009-02-12 | 2013-02-12 | Siliconsystems, Inc. | Command portal for securely communicating and executing non-standard storage subsystem commands |
KR101535226B1 (ko) | 2008-12-16 | 2015-07-27 | 삼성전자주식회사 | 중간 변환 장치를 통해 연결된 저장 장치 인증 방법 및 시스템 |
US8429395B2 (en) | 2009-06-12 | 2013-04-23 | Microsoft Corporation | Controlling access to software component state |
CN101763437B (zh) | 2010-02-10 | 2013-03-27 | 华为数字技术(成都)有限公司 | 高速缓冲存储实现方法及装置 |
US8290994B2 (en) * | 2010-05-05 | 2012-10-16 | International Business Machines Corporation | Obtaining file system view in block-level data storage systems |
KR101986355B1 (ko) * | 2012-09-14 | 2019-06-05 | 삼성전자주식회사 | 임베디드 멀티미디어 카드, 상기 임베디드 멀티미디어 카드를 포함하는 임베디드 멀티미디어 카드 시스템 및 상기 임베디드 멀티미디어 카드의 동작 방법 |
US9411521B2 (en) * | 2014-05-30 | 2016-08-09 | Macronix International Co., Ltd. | Method and apparatus for improving sequential memory read preformance |
-
2014
- 2014-02-24 KR KR1020140021414A patent/KR102192198B1/ko active IP Right Grant
-
2015
- 2015-02-17 CN CN201510086487.4A patent/CN104866456B/zh active Active
- 2015-02-23 US US14/628,598 patent/US9582217B2/en active Active
-
2017
- 2017-02-14 US US15/432,286 patent/US9864543B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761426A (en) * | 1995-08-24 | 1998-06-02 | International Business Machines Corporation | Method for executing communication between processors in parallel computer |
CN1771495A (zh) * | 2003-05-07 | 2006-05-10 | 国际商业机器公司 | 分布式文件服务体系结构系统 |
CN1864127A (zh) * | 2003-07-28 | 2006-11-15 | 桑迪士克防护内容解决公司 | 用于控制一存储器件的系统、装置及方法 |
CN101156402A (zh) * | 2005-04-12 | 2008-04-02 | 株式会社东芝 | 安全网关系统及其方法和程序 |
CN1980305A (zh) * | 2005-12-07 | 2007-06-13 | 村田机械株式会社 | 通信终端装置及通信方法 |
CN102665237A (zh) * | 2012-04-24 | 2012-09-12 | 北京邮电大学 | Ir接口协议一致性仿真测试装置及互联互通测试方法 |
CN103399728A (zh) * | 2013-03-11 | 2013-11-20 | 威盛电子股份有限公司 | 在微处理器中的通信预取器 |
CN103455463A (zh) * | 2013-09-06 | 2013-12-18 | 北京四方继保自动化股份有限公司 | 一种主控单元通信接入和转出方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104866456A (zh) | 2015-08-26 |
US9582217B2 (en) | 2017-02-28 |
US9864543B2 (en) | 2018-01-09 |
US20150242149A1 (en) | 2015-08-27 |
US20170153841A1 (en) | 2017-06-01 |
KR102192198B1 (ko) | 2020-12-17 |
KR20150100071A (ko) | 2015-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104866456B (zh) | 电子装置和通信方法 | |
CN110046506B (zh) | 存储设备和包括存储设备的存储系统及使用其进行操作的方法 | |
US10379903B2 (en) | Task queues | |
CN110447009B (zh) | 用于自适应命令获取聚合的系统和方法 | |
US11126584B2 (en) | Method for transferring request in storage device and method for issuing command in host | |
CN110674059B (zh) | 基于服务质量进行仲裁以优化企业固态驱动器 | |
CN106528461A (zh) | 储存设备及其中断生成方法 | |
CN109085997A (zh) | 用于非易失性存储器的存储器高效持续键值储存 | |
CN108073470A (zh) | 执行地址映射表的纠错的存储器系统及其控制方法 | |
US20160179388A1 (en) | Method and apparatus for providing programmable nvm interface using sequencers | |
CN108885584A (zh) | 使用主机存储器缓冲区的无序读取传输 | |
EP3061008B1 (en) | Data storage device supporting accelerated database operations | |
US9881680B2 (en) | Multi-host power controller (MHPC) of a flash-memory-based storage device | |
CN111492619A (zh) | 使用消息认证码的物理不可克隆函数 | |
CN108628548A (zh) | 从耦合于计算装置的单个存储装置模拟多个存储装置 | |
CN106205728A (zh) | 奇偶校验电路及包括该奇偶校验电路的存储器装置 | |
US8635463B2 (en) | Information storage apparatus, information storage method, and electronic device | |
CN114328303A (zh) | 存储设备、其操作方法及包括其的计算设备的操作方法 | |
US10353584B2 (en) | Data storage device and method for rewriting parameters thereof | |
KR102219759B1 (ko) | 저장 장치, 그것을 포함하는 데이터 저장 시스템 및 그것의 동작 방법 | |
CN103338107B (zh) | 密钥生成方法及密钥生成装置 | |
TWI582599B (zh) | 資料傳輸方法、記憶體控制器、資料傳輸系統 | |
US20170308326A1 (en) | Storage system and method for improved command flow | |
US9632706B2 (en) | Ordering of parallel data storage based on die programming durations | |
US9311257B2 (en) | Semiconductor memory device, memory system and method of operating the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |