数据处理方法及电子设备的制造方法

文档序号:9489395阅读:220来源:国知局
数据处理方法及电子设备的制造方法
【技术领域】
[0001] 本发明涉及存储技术,尤其涉及一种数据处理方法及电子设备。
【背景技术】
[0002] 电子设备如智能手机、平板电脑等普遍使用闪存(Flash)如NANDflash等存储 单元作为存储介质,闪存自顶而下的架构为:芯片(Chip)、逻辑单元(LU)、片(Plane)、块 (Block)、页(Page),每个上层的架构(除最底层)可以包括一个或多个下层的架构,例如 一个芯片可以包括一个或多个逻辑单元;其中逻辑单元可以采用逻辑单元号(LUN,Logic UnitNumber)标识,闪存中以块为擦除的基本单位,以页为基本的寻址单位(也即页为读 取操作的基本单位),其中,逻辑单元是能够独立响应处理器的指令的最小(基本)单位;
[0003] 闪存操作的一个典型特征是每个存储单元执行指令所需的时间也即延迟 (latency)较大,例如读取芯片中页(Page)的延迟为微秒级(如50us),对芯片中页进行编 程(Program)也即写入数据的延迟为微秒级(如500us),芯片中块擦除(BlockErase)的 延迟为毫秒(ms)级;在延迟期间电子设备的总线是空闲的,为了提高总线利用率,相关技 术引入了交错页编程(InterleavePageProgram)技术;
[0004] 以页读取为例,对于同一逻辑单元,在某一时刻只能对该逻辑单元中的一个页进 行读取,在通过总线向一个逻辑单元发送读取指令以使该逻辑单元执行读取数据并返回的 等待期间内,可以通过总线向闪存中其他的逻辑单元发送指令(例如插入对其他逻辑单元 的页进行读取的指令),从而实现了不同逻辑单元之间的指令的乱序执行,也即后发送的指 令可能早于先发送的指令(执行发送指令的逻辑单元与执行后发送指令的逻辑单元是不 同的逻辑单元)完成。
[0005] 相关技术中通过使用以下方案实现交错页编程技术:
[0006] 1)通过微码实现,需要很大的缓存(SRAM),而且对每个逻辑单元操作的通道都需 要单独的SRAM空间;同时微码设计复杂,修改困难,对于不同指令的乱序执行实现较难;
[0007] 2)通过处理器(CPU)调度实现,需要处理器维护队列,通过中断来与闪存进行交 互,并且需要查询闪存的状态,因此速度受限,不适合带宽要求比较高的场合,实时性差,对 处理器性能要求也较高,从而导致处理器的高功耗。
[0008] 综上,对于高效、低功耗的方式实现指令的乱序执行,以提升总线的利用率,进而 提升对闪存的读写速度,相关技术尚无有效解决方案。

【发明内容】

[0009] 本发明实施例提供一种数据处理方法及电子设备,能够高效、低功耗的方式实现 指令的乱序执行,以提升总线的利用率,进而提升对存储器的读写速度。
[0010] 本发明实施例的技术方案是这样实现的:
[0011] 本发明实施例提供一种数据处理方法,所述方法包括:
[0012] 基于指令队列缓存中指令的优先级选取可执行指令,针对所选取的指令发送总线 请求以请求总线;
[0013] 在请求到总线时通过总线发送所述可执行指令至存储器中对应的目标存储单元, 并将所述可执行指令的计时信息读取至轮询队列缓存;
[0014] 在所述轮询队列缓存中任意的计时信息到达后发送总线请求以请求总线,以在请 求到总线时,通过总线查询所述计时信息归属的指令所对应的目标存储单元是否执行完 毕;
[0015] 在总线空闲时基于预设策略对接收到的总线请求进行仲裁,并基于仲裁结果分配 总线。
[0016] 本发明实施例提供一种电子设备,所述电子设备包括:
[0017] 指令管理器,用于基于指令队列缓存中指令的优先级选取可执行指令,针对所选 取的指令发送总线请求以请求总线;
[0018] 接口控制器,用于在所述指令管理器请求到总线时通过总线发送所述可执行指令 至存储器中对应的目标存储单元,并将所述可执行指令的计时信息读取至轮询队列缓存;
[0019] 轮询管理器,用于在所述轮询队列缓存中任意的计时信息到达后发送总线请求以 请求总线,以在请求到总线时,通过所述接口控制器、经由总线查询所述计时信息归属的指 令所对应的目标存储单元是否执行完毕;
[0020] 仲裁器,用于在总线空闲时基于预设策略对接收到的总线请求进行仲裁,并基于 仲裁结果分配总线。
[0021] 本发明实施例中,通过纯硬件实现(FPGA或CPLD实现)的数据处理结构对来自主 机端的写指令和读指令进行响应,由仲裁器基于预设策略对空闲的总线进行仲裁,以根据 仲裁结果将可执行指令发送至目标存储单元以实现数据读写,或根据仲裁结果查询目标存 储单元是否执行完毕已发送的指令;从而实现了对不同存储单元的交互操作,执行效率和 实时性高。
【附图说明】
[0022] 图1为本发明实施例中电子设备的结构示意图一;
[0023] 图2为本发明实施例中电子设备的结构示意图二;
[0024] 图3为本发明实施例中数据处理方法的实现流程示意图一;
[0025] 图4为本发明实施例中数据处理方法的实现流程示意图二;
[0026] 图5为本发明实施例中数据处理方法的实现流程示意图三;
[0027] 图6为本发明实施例中数据处理方法的实现流程示意图四。
【具体实施方式】
[0028] 下面结合附图和具体实施例对本发明作进一步详细说明。
[0029] 本发明实施例记载的电子设备可以以各种形式来实施,例如,上述的电子设备可 以是智能手机、平板电脑、笔记本电脑或穿戴式设备(如智能眼镜、智能手表等),电子设备 的操作系统可以是安卓操作系统、I0S操作系统或其他任意第三方开发的可以运行于微型 计算机结构(至少包括处理器和内存)的操作系统(如移动版Linux系统、黑莓QNX操作 系统等);上述的电子设备还可以是固态硬盘等用于存储数据的电子设备。
[0030] 电子设备中通过设置基于逻辑可编程门阵列(FPGA)或复杂可编程器件(CPLD)技 术实施本发明实施例记载的数据处理方法,参见图1,实施本发明实施例记载的数据处理方 法的电子设备至少包括以下功能单元:指令管理器200、接口控制器300、仲裁器100、存储 器400和轮询管理器500 ;上述功能单元构成了电子设备中响应数据读写的数据处理结构; 如前,上述的指令管理器200、接口控制器300、仲裁器100和轮询管理器500基于逻辑可编 程门阵列或复杂可编程器件实现,具有独立的数据处理结构和数据存储结构,上述的存储 器400是电子设备中用于存储数据的主要器件,可以由闪存(如NandFlash)实现;
[0031] 当然,根据电子设备的具体产品形态,如图2所示,电子设备中还可以包括处理器 (CPU)600,当电子设备为智能手机、平板电脑时该处理器作为应用处理器(AP)使用,负责 在数据处理结构与电子设备操作系统的应用层之间进行数据处理,例如根据应用层的读请 求向上述的数据结构发送读指令,将数据结构相应的数据传递给应用层;或根据应用层的 写请求向上述的数据结构发送写指令,使数据结构写入目标数据;也就是说,数据处理结构 是对来自处理器600的读指令或写指令进行响应,对于数据处理结构来说处理器相当于主 机(Host)端。
[0032] 基于图1和图2示出的电子设备,参见图3,本发明实施例记载的数据处理方法通 过以下步骤实现:
[0033] 步骤101,指令管理器200基于指令队列缓存中指令的优先级选取可执行指令,针 对所选取的指令发送总线请求以请求总线。
[0034] 指令管理器200从处理器600读取针对存储器400的指令(也即待执行的指令, 包括读指令和写指令),并将获取的指令存储在指令管理器200的指令队列缓存(如前,指 令队列缓存是以FPGA或CPLD实现的缓存结构),指令管理器200从处理器600读取的指 令的数量取决于指令管理器200的指令队列缓存中能够存储的指令的数量,当指令管理器 200将指令队列缓存中的一条指令通过接口控制器300发送至存储器400中的目标存储单 元(接口控制器300根据指令产生时序信号,使目标存储单元执行指令)并被目标存储单 元执行完毕之后,指令管理器200会删除指令队列缓存中对应的指令,并从处理器600读 取一条指令存储至指令队列缓存的队尾;存储单元400是指存储器400中能够响应处理器 600指令的基本单位(如逻辑单元,一个存储单元在某一时刻只能响应来自处理器600的一 个指令)。
[0035] 指令队列缓存中每个指令的格式示例如表1所示:
[0036]
[0037]表1
[0038] 参见表1,指令队列缓存中的每个指令包括:
[0039] 1)指令标识,用于唯一标识从处理器600读取的指令;
[0040] 2)可执行部分,也就是可执行的指令
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1