CN118349286A - Processor, instruction processing device, electronic equipment and instruction processing method - Google Patents
Processor, instruction processing device, electronic equipment and instruction processing method Download PDFInfo
- Publication number
- CN118349286A CN118349286A CN202410782583.1A CN202410782583A CN118349286A CN 118349286 A CN118349286 A CN 118349286A CN 202410782583 A CN202410782583 A CN 202410782583A CN 118349286 A CN118349286 A CN 118349286A
- Authority
- CN
- China
- Prior art keywords
- instruction
- target
- unit
- bus
- processor
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title abstract description 10
- 239000002245 particle Substances 0.000 claims description 133
- 238000000034 method Methods 0.000 claims description 50
- 238000013500 data storage Methods 0.000 claims description 36
- 230000006399 behavior Effects 0.000 claims description 30
- 239000008187 granular material Substances 0.000 claims 5
- 230000005540 biological transmission Effects 0.000 description 36
- 238000010586 diagram Methods 0.000 description 14
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- CXOXHMZGEKVPMT-UHFFFAOYSA-N clobazam Chemical compound O=C1CC(=O)N(C)C2=CC=C(Cl)C=C2N1C1=CC=CC=C1 CXOXHMZGEKVPMT-UHFFFAOYSA-N 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 229940044442 onfi Drugs 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Classifications
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3818—Decoding for concurrent execution
- G06F9/382—Pipelined decoding, e.g. using predecoding
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
公开了一种处理器、指令处理的装置、电子设备以及指令处理方法,属于计算机领域。该处理器包括:取指令单元、指令解析单元、DQ指令执行单元和CA指令执行单元;其中,取指令单元、指令解析单元和第一目标单元形成第一指令流水线;取指令单元、指令解析单元和第二目标单元形成第二指令流水线;在满足目标条件的情况下,第一指令流水线和第二指令流水线并行执行,其中,第一目标单元包括DQ指令执行单元,第二目标单元所述CA指令执行单元。
Disclosed are a processor, an instruction processing device, an electronic device, and an instruction processing method, which belong to the field of computers. The processor includes: an instruction fetch unit, an instruction parsing unit, a DQ instruction execution unit, and a CA instruction execution unit; wherein the instruction fetch unit, the instruction parsing unit, and the first target unit form a first instruction pipeline; the instruction fetch unit, the instruction parsing unit, and the second target unit form a second instruction pipeline; when the target condition is met, the first instruction pipeline and the second instruction pipeline are executed in parallel, wherein the first target unit includes a DQ instruction execution unit, and the second target unit includes the CA instruction execution unit.
Description
技术领域Technical Field
本申请属于计算机领域,具体涉及一种处理器、指令处理的装置、电子设备以及指令处理方法。The present application belongs to the field of computers, and specifically relates to a processor, an instruction processing device, an electronic device, and an instruction processing method.
背景技术Background technique
为了满足数据存储要求,闪存技术应运而生。随着闪存颗粒接口带宽需求越来越高,闪存接口的数据传输速率不断提高,而闪存接口的命令/地址传输速率却没有变化。在传统的闪存接口传输协议(ONFi or Toggle)中,命令/地址和数据在同一组传输线上进行传输,随着数据传输速率提高,命令/地址传输时间占比增大,成为闪存颗粒接口带宽的瓶颈。为了解决闪存接口带宽提升问题,新的闪存颗粒协议,例如分离命令数据(SeparateCommand Address,简称SCA)协议中将命令/地址和数据传输分开,放到两个不同的传输总线上。命令/地址放到命令与地址(Command and Address,简称CA)总线上传输;数据放到数据(DATA,也叫DQ)总线上传输,实现命令/地址在CA总线上传输的同时,数据在DQ总线上传输。In order to meet the requirements of data storage, flash memory technology came into being. As the bandwidth requirements of flash memory interface become higher and higher, the data transmission rate of flash memory interface continues to increase, while the command/address transmission rate of flash memory interface has not changed. In the traditional flash memory interface transmission protocol (ONFi or Toggle), command/address and data are transmitted on the same set of transmission lines. As the data transmission rate increases, the proportion of command/address transmission time increases, which becomes the bottleneck of flash memory interface bandwidth. In order to solve the problem of improving flash memory interface bandwidth, new flash memory particle protocols, such as the Separate Command Address (SCA) protocol, separate command/address and data transmission and put them on two different transmission buses. Command/address is transmitted on the Command and Address (CA) bus; data is transmitted on the Data (DATA, also called DQ) bus, so that the command/address is transmitted on the CA bus while the data is transmitted on the DQ bus.
相关技术在处理闪存颗粒芯片的指令的过程中,通常通过专用的状态机实现SCA协议,这样存在处理指令效率低的问题。In the process of processing instructions of flash memory chip, the related technology usually implements the SCA protocol through a dedicated state machine, which has the problem of low efficiency in processing instructions.
发明内容Summary of the invention
本申请实施例提供一种处理器、指令处理的装置、电子设备以及指令处理方法,能够解决相关技术中通过状态机实现SCA协议导致处理指令效率低的问题。The embodiments of the present application provide a processor, an instruction processing device, an electronic device, and an instruction processing method, which can solve the problem of low instruction processing efficiency caused by implementing the SCA protocol through a state machine in the related art.
第一方面,本申请实施例提供了一种处理器,包括:In a first aspect, an embodiment of the present application provides a processor, including:
取指令单元,用于获取目标指令,并送至指令解析单元,所述目标指令为与闪存颗粒芯片适配的指令;An instruction fetch unit, used to fetch a target instruction and send it to an instruction parsing unit, wherein the target instruction is an instruction adapted to the flash memory chip;
指令解析单元,用于通过对所述目标指令进行解析处理,确定所述目标指令的指令类型,所述指令类型包括命令/地址CA操作指令,或者数据DQ操作指令;An instruction parsing unit, configured to determine an instruction type of the target instruction by parsing the target instruction, wherein the instruction type includes a command/address CA operation instruction or a data DQ operation instruction;
DQ指令执行单元,用于在所述指令类型为DQ操作指令的情况下,通过DQ总线向闪存颗粒芯片发送目标数据;A DQ instruction execution unit, used for sending target data to the flash memory particle chip through the DQ bus when the instruction type is a DQ operation instruction;
CA指令执行单元,用于在所述指令类型为CA操作指令的情况下,通过CA总线向闪存颗粒芯片发送CA信息或者与CA相关的配置信息;A CA instruction execution unit, configured to send CA information or CA-related configuration information to the flash memory chip through a CA bus when the instruction type is a CA operation instruction;
其中,所述取指令单元、所述指令解析单元和第一目标单元形成第一指令流水线;所述取指令单元、所述指令解析单元和第二目标单元形成第二指令流水线;Wherein, the instruction fetch unit, the instruction parsing unit and the first target unit form a first instruction pipeline; the instruction fetch unit, the instruction parsing unit and the second target unit form a second instruction pipeline;
在满足目标条件的情况下,所述第一指令流水线和所述第二指令流水线并行执行,其中,所述第一目标单元包括所述DQ指令执行单元,所述第二目标单元包括所述CA指令执行单元。When a target condition is met, the first instruction pipeline and the second instruction pipeline are executed in parallel, wherein the first target unit includes the DQ instruction execution unit, and the second target unit includes the CA instruction execution unit.
第二方面,本申请实施例提供了一种指令处理的装置,包括闪存颗粒芯片和第一方面所述的处理器,所述处理器通过CA总线与所述闪存颗粒芯片相连接,所述处理器通过DQ总线与所述闪存颗粒芯片相连接。In a second aspect, an embodiment of the present application provides an instruction processing device, comprising a flash memory particle chip and the processor described in the first aspect, wherein the processor is connected to the flash memory particle chip via a CA bus, and the processor is connected to the flash memory particle chip via a DQ bus.
第三方面,本申请实施例提供了一种存储设备,所述存储设备包括根据第二方面所述的装置。In a third aspect, an embodiment of the present application provides a storage device, wherein the storage device comprises the apparatus according to the second aspect.
第四方面,本申请实施例提供了一种电子设备,所述电子设备包括根据第三方面所述的存储设备。In a fourth aspect, an embodiment of the present application provides an electronic device, comprising the storage device according to the third aspect.
第五方面,本申请实施例提供了一种指令处理方法,由处理器执行,包括:In a fifth aspect, an embodiment of the present application provides an instruction processing method, which is executed by a processor and includes:
获取目标指令;Get target instructions;
对所述目标指令进行解析处理,并确定所述目标指令的指令类型,所述指令类型包括命令/地址CA操作指令,或者数据DQ操作指令;Parsing the target instruction and determining the instruction type of the target instruction, where the instruction type includes a command/address CA operation instruction or a data DQ operation instruction;
在所述指令类型为DQ操作指令的情况下,通过DQ总线向闪存颗粒芯片发送目标数据;When the instruction type is a DQ operation instruction, sending target data to the flash memory particle chip through the DQ bus;
在所述指令类型为CA操作指令的情况下,通过CA总线向闪存颗粒芯片发送CA信息或者与CA相关的配置信息;When the instruction type is a CA operation instruction, CA information or configuration information related to CA is sent to the flash memory chip through the CA bus;
在所述DQ操作指令需要写回的情况下,通过DQ总线从闪存颗粒芯片获取第一信息,并写入所述处理器内的数据存储空间;When the DQ operation instruction needs to be written back, first information is obtained from the flash memory chip through the DQ bus, and written into the data storage space in the processor;
在所述CA操作指令需要写回的情况下,通过CA总线从闪存颗粒芯片获取第二信息,并写入所述处理器内的数据存储空间。When the CA operation instruction needs to be written back, the second information is obtained from the flash memory chip through the CA bus and written into the data storage space in the processor.
第六方面,本申请实施例提供了一种存储介质,所述存储介质存储程序,当所述程序被执行时实现如第五方面所述的方法。In a sixth aspect, an embodiment of the present application provides a storage medium, which stores a program, and when the program is executed, implements the method described in the fifth aspect.
在本申请实施例中,提供一种处理器,包括:取指令单元,用于获取目标指令,并送至指令解析单元,所述目标指令为与闪存颗粒芯片适配的指令;指令解析单元,用于通过对所述目标指令进行解析处理,确定所述目标指令的指令类型,所述指令类型包括CA操作指令,或者DQ操作指令;DQ指令执行单元,用于在所述指令类型为DQ操作指令的情况下,通过DQ总线向闪存颗粒芯片发送目标数据;CA指令执行单元,用于在所述指令类型为CA操作指令的情况下,通过CA总线向闪存颗粒芯片发送CA信息或者与CA相关的配置信息;其中,所述取指令单元、所述指令解析单元和第一目标单元形成第一指令流水线;所述取指令单元、所述指令解析单元和第二目标单元形成第二指令流水线;在满足目标条件的情况下,所述第一指令流水线和所述第二指令流水线并行执行,其中,所述第一目标单元包括所述DQ指令执行单元,所述第二目标单元包括所述CA指令执行单元。如此,可以通过处理器的方式在处理闪存颗粒芯片的指令的过程中实现SCA协议,提高目标指令的处理速度。在满足目标条件的情况下,处理器可以通过第一指令流水线和第二指令流水线灵活地并行处理指令,进一步提高指令处理的效率。此外,在本申请实施例提供的处理器上,第一指令流水线与第二指令流水线共用取指令单元与指令解析单元,一定程度上可以减少处理器上的组件数量以及硬件面积。In an embodiment of the present application, a processor is provided, comprising: an instruction fetch unit, for fetching a target instruction and sending it to an instruction parsing unit, wherein the target instruction is an instruction adapted to a flash memory particle chip; an instruction parsing unit, for determining the instruction type of the target instruction by parsing the target instruction, wherein the instruction type includes a CA operation instruction or a DQ operation instruction; a DQ instruction execution unit, for sending target data to the flash memory particle chip through a DQ bus when the instruction type is a DQ operation instruction; a CA instruction execution unit, for sending CA information or configuration information related to CA to the flash memory particle chip through a CA bus when the instruction type is a CA operation instruction; wherein the instruction fetch unit, the instruction parsing unit and the first target unit form a first instruction pipeline; the instruction fetch unit, the instruction parsing unit and the second target unit form a second instruction pipeline; when the target condition is met, the first instruction pipeline and the second instruction pipeline are executed in parallel, wherein the first target unit includes the DQ instruction execution unit and the second target unit includes the CA instruction execution unit. In this way, the SCA protocol can be implemented in the process of processing the instructions of the flash memory particle chip by means of a processor, thereby improving the processing speed of the target instruction. When the target conditions are met, the processor can flexibly process instructions in parallel through the first instruction pipeline and the second instruction pipeline, further improving the efficiency of instruction processing. In addition, on the processor provided in the embodiment of the present application, the first instruction pipeline and the second instruction pipeline share the instruction fetch unit and the instruction parsing unit, which can reduce the number of components and hardware area on the processor to a certain extent.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
图1-1为本申请实施例提供的一种处理器的结构框图;FIG1-1 is a structural block diagram of a processor provided in an embodiment of the present application;
图1-2为本申请实施例提供的另一种处理器的结构框图;FIG1-2 is a structural block diagram of another processor provided in an embodiment of the present application;
图2为本申请实施例提供的一种目标格式的架构图;FIG2 is an architecture diagram of a target format provided in an embodiment of the present application;
图3为本申请实施例提供的一种指令处理的装置的结构框图;FIG3 is a structural block diagram of an instruction processing device provided in an embodiment of the present application;
图4为本申请实施例提供的一种指令处理方法的流程图;FIG4 is a flow chart of an instruction processing method provided in an embodiment of the present application;
图5为本申请实施例提供的一种处理器的外部环境架构图;FIG5 is a diagram of an external environment architecture of a processor provided in an embodiment of the present application;
图6为本申请实施例提供的一种处理器的架构图;FIG6 is an architecture diagram of a processor provided in an embodiment of the present application;
图7为本申请实施例提供的一种目标指令的处理过程的架构图。FIG. 7 is an architectural diagram of a target instruction processing process provided in an embodiment of the present application.
具体实施方式Detailed ways
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings here can be arranged and designed in various different configurations.
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。The terms "first", "second", etc. in the specification and claims of this application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than those illustrated or described here, and the objects distinguished by "first", "second", etc. are generally of one type, and the number of objects is not limited. For example, the first object can be one or more. In addition, "and/or" in the specification and claims represents at least one of the connected objects, and the character "/" generally indicates that the objects associated with each other are in an "or" relationship.
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the invention claimed for protection, but merely represents selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
如背景技术所描述,相关技术在处理闪存颗粒芯片的指令的过程中,通常通过专用的状态机实现SCA协议,这样存在处理指令效率低的问题。As described in the background art, in the process of processing instructions of flash memory chip, the related art usually implements the SCA protocol through a dedicated state machine, which has the problem of low efficiency in processing instructions.
在本申请实施例中,提供一种处理器,包括:取指令单元、指令解析单元、DQ指令执行单元和CA指令执行单元;其中,取指令单元、指令解析单元和第一目标单元形成第一指令流水线;取指令单元、指令解析单元和第二目标单元形成第二指令流水线;在满足目标条件的情况下,第一指令流水线和第二指令流水线并行执行,其中,第一目标单元包括DQ指令执行单元,第二目标单元所述CA指令执行单元。如此,可以通过处理器的方式在处理闪存颗粒芯片的指令的过程中实现SCA协议,提高目标指令的处理速度。在满足目标条件的情况下,处理器可以通过第一指令流水线和第二指令流水线灵活地并行处理指令,进一步提高指令处理的效率。此外,在本申请实施例提供的处理器上,第一指令流水线与第二指令流水线共用取指令单元与指令解析单元,一定程度上可以减少处理器上的组件数量以及硬件面积。In an embodiment of the present application, a processor is provided, comprising: an instruction fetch unit, an instruction parsing unit, a DQ instruction execution unit and a CA instruction execution unit; wherein the instruction fetch unit, the instruction parsing unit and the first target unit form a first instruction pipeline; the instruction fetch unit, the instruction parsing unit and the second target unit form a second instruction pipeline; when the target condition is met, the first instruction pipeline and the second instruction pipeline are executed in parallel, wherein the first target unit includes a DQ instruction execution unit and the second target unit includes a CA instruction execution unit. In this way, the SCA protocol can be implemented in the process of processing the instructions of the flash particle chip by means of a processor, thereby improving the processing speed of the target instructions. When the target condition is met, the processor can flexibly process instructions in parallel through the first instruction pipeline and the second instruction pipeline, further improving the efficiency of instruction processing. In addition, on the processor provided in the embodiment of the present application, the first instruction pipeline and the second instruction pipeline share the instruction fetch unit and the instruction parsing unit, which can reduce the number of components and hardware area on the processor to a certain extent.
此外,在相关技术中,在通过两条传输总线进行传输前,通常通过标量的流水线设计(一条指令流水线)处理指令,本申请实施例提供的处理器可以通过第一指令流水线和/或第二指令流水线实现超标量设计,更加灵活且高效地完成目标指令的处理。In addition, in the related art, instructions are usually processed through a scalar pipeline design (an instruction pipeline) before being transmitted through two transmission buses. The processor provided in the embodiment of the present application can implement a superscalar design through a first instruction pipeline and/or a second instruction pipeline, thereby completing the processing of target instructions more flexibly and efficiently.
相关技术中,在考虑适配多种闪存颗粒芯片的指令的情况下,往往还会预先设计大量的硬件电路。即使如此,依然无法兼容预先未设计的新指令,仍然会出现兼容性差,面积、成本大的问题。但在本申请实施例中,所述处理器具有用于存储与闪存颗粒芯片适配的各种指令的指令存储空间,所述指令存储空间用于存储所述目标指令。如此,可以通过修改处理器中的指令存储空间中的目标指令的方式,实现处理器适配不同存储厂家的不同闪存颗粒芯片,使处理器适配更多厂家的闪存颗粒芯片。相较于相关技术,本申请实施例提供的处理器具有更好的兼容性与适配性,同时还可以降低成本。In the related art, when considering the instructions for adapting to a variety of flash memory particle chips, a large number of hardware circuits are often pre-designed. Even so, it is still not compatible with new instructions that have not been designed in advance, and there will still be problems of poor compatibility, large area and cost. However, in the embodiment of the present application, the processor has an instruction storage space for storing various instructions adapted to the flash memory particle chip, and the instruction storage space is used to store the target instruction. In this way, the processor can be adapted to different flash memory particle chips of different storage manufacturers by modifying the target instruction in the instruction storage space in the processor, so that the processor can be adapted to flash memory particle chips of more manufacturers. Compared with the related art, the processor provided in the embodiment of the present application has better compatibility and adaptability, and can also reduce costs.
在本申请实施例中,所述目标指令为符合目标格式的指令;其中,所述目标格式包括:总线类型字段、数据字段、写回指示字段、长度字段、波形指示字段以及锁定字段。通过目标格式,处理器能够更好地控制CA总线和DQ总线间的执行行为(CA总线和/或DQ总线的接口间的波形,即,目标指令的信号行为)、数据、并行或排斥操作等。In the embodiment of the present application, the target instruction is an instruction that conforms to the target format; wherein the target format includes: a bus type field, a data field, a write-back indication field, a length field, a waveform indication field, and a lock field. Through the target format, the processor can better control the execution behavior between the CA bus and the DQ bus (the waveform between the interface of the CA bus and/or the DQ bus, that is, the signal behavior of the target instruction), data, parallel or exclusive operations, etc.
在本申请实施例中,处理器通过同时控制第一指令流水线和/或第二指令流水线,可以进一步实现同时控制CA总线和/或DQ总线。并且由于处理器同时控制CA总线和/或DQ总线,可以基于任意一条传输总线的行为,合理编排另一条传输总线的行为,更加容易地控制这两个传输总线间指令操作相互排斥的关系。In the embodiment of the present application, the processor can further realize simultaneous control of the CA bus and/or the DQ bus by simultaneously controlling the first instruction pipeline and/or the second instruction pipeline. And because the processor controls the CA bus and/or the DQ bus simultaneously, the behavior of any transmission bus can be reasonably arranged based on the behavior of the other transmission bus, making it easier to control the mutually exclusive relationship between the instruction operations of the two transmission buses.
需了解的是,本申请实施例中针对同一名词或情况的论述可前后参照。也就是说,在一个实施例中针对某一名词或情况的论述也可以应用于其他实施例中针对该名词或情况的描述,只要逻辑上不矛盾即可。It should be understood that the discussion of the same noun or situation in the embodiments of the present application can be referenced before and after. That is to say, the discussion of a certain noun or situation in one embodiment can also be applied to the description of the noun or situation in other embodiments, as long as there is no logical contradiction.
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的方法进行详细地说明。The method provided in the embodiment of the present application is described in detail below through specific embodiments and their application scenarios in conjunction with the accompanying drawings.
在本申请实施例中,闪存颗粒芯片可以为与非门存储芯片(Not And flash,简称NAND flash),本申请实施例提供的处理器可以用于控制闪存颗粒芯片的行为,例如实现应用层对闪存颗粒芯片的读写操作,或实现对闪存颗粒芯片的配置等等操作。In an embodiment of the present application, the flash memory particle chip can be a Not And flash (NAND flash for short), and the processor provided in the embodiment of the present application can be used to control the behavior of the flash memory particle chip, such as implementing the read and write operations of the application layer on the flash memory particle chip, or implementing the configuration of the flash memory particle chip and other operations.
图1-1为本申请实施例提供的一种处理器的结构框图。如图1-1所示,本申请实施例提供的处理器100包括:FIG1-1 is a block diagram of a processor provided in an embodiment of the present application. As shown in FIG1-1, a processor 100 provided in an embodiment of the present application includes:
取指令单元110,用于获取目标指令,并送至指令解析单元,所述目标指令为与闪存颗粒芯片适配的指令;The instruction fetching unit 110 is used to fetch a target instruction and send it to the instruction parsing unit. The target instruction is an instruction adapted to the flash memory chip.
指令解析单元120,用于通过对所述目标指令进行解析处理,确定所述目标指令的指令类型,所述指令类型包括CA操作指令,或者DQ操作指令;The instruction parsing unit 120 is used to determine the instruction type of the target instruction by parsing the target instruction, where the instruction type includes a CA operation instruction or a DQ operation instruction;
DQ指令执行单元130,用于在所述指令类型为DQ操作指令的情况下,通过DQ总线向闪存颗粒芯片发送目标数据;A DQ instruction execution unit 130, configured to send target data to the flash memory chip through a DQ bus when the instruction type is a DQ operation instruction;
CA指令执行单元140,用于在所述指令类型为CA操作指令的情况下,通过CA总线向闪存颗粒芯片发送CA信息或者与CA相关的配置信息;A CA instruction execution unit 140, configured to send CA information or CA-related configuration information to the flash memory chip through a CA bus when the instruction type is a CA operation instruction;
其中,所述取指令单元、所述指令解析单元和第一目标单元形成第一指令流水线;所述取指令单元、所述指令解析单元和第二目标单元形成第二指令流水线;Wherein, the instruction fetch unit, the instruction parsing unit and the first target unit form a first instruction pipeline; the instruction fetch unit, the instruction parsing unit and the second target unit form a second instruction pipeline;
在满足目标条件的情况下,所述第一指令流水线和所述第二指令流水线并行执行,其中,所述第一目标单元包括所述DQ指令执行单元,所述第二目标单元包括所述CA指令执行单元。When a target condition is met, the first instruction pipeline and the second instruction pipeline are executed in parallel, wherein the first target unit includes the DQ instruction execution unit, and the second target unit includes the CA instruction execution unit.
在本申请实施例中,所述处理器100可以为硬件设备,处理器100中的各个单元也可以具有相应的硬件模块。在本申请实施例提供的处理器中,各个单元相对应的硬件模块间,可以通过电路相连接,使各单元间能够传输数据。In the embodiment of the present application, the processor 100 may be a hardware device, and each unit in the processor 100 may also have a corresponding hardware module. In the processor provided in the embodiment of the present application, the hardware modules corresponding to each unit may be connected by a circuit so that data can be transmitted between the units.
在本申请实施例中,针对同一个操作,例如“写操作”,不同的闪存颗粒芯片厂家具有不同的指令表达方式。本申请实施例中的目标指令可以为针对闪存颗粒芯片的任意操作,且能够与闪存颗粒芯片适配的指令,例如针对闪存颗粒芯片的读写操作,或针对闪存颗粒芯片的自身配置操作指令。所述处理器100中的取指令单元110可以从处理器100外部获取目标指令,例如可以从应用层获取目标指令;所述取指令单元110还可以从处理器100内部获取目标指令,例如从处理器100内部存放指令的地方(即,后文提到的指令存储空间)获取目标指令。本申请实施例不对取指令单元110如何获取与闪存颗粒芯片适配的目标指令的方式做具体限制。In the embodiment of the present application, for the same operation, such as "write operation", different flash memory chip manufacturers have different instruction expressions. The target instruction in the embodiment of the present application can be any operation for the flash memory chip, and can be adapted to the flash memory chip, such as read and write operations for the flash memory chip, or self-configuration operation instructions for the flash memory chip. The instruction fetch unit 110 in the processor 100 can obtain the target instruction from outside the processor 100, for example, it can obtain the target instruction from the application layer; the instruction fetch unit 110 can also obtain the target instruction from inside the processor 100, for example, it can obtain the target instruction from the place where the instructions are stored inside the processor 100 (that is, the instruction storage space mentioned later). The embodiment of the present application does not specifically limit how the instruction fetch unit 110 obtains the target instruction adapted to the flash memory chip.
在本申请实施例中,目标指令可以为一个指令,也可以为多个指令,本申请实施例不对目标指令的个数做具体限制。进一步,目标指令可以为一个闪存颗粒芯片的一个指令,也可以为一个闪存颗粒芯片的多个指令,还可以为多个闪存颗粒芯片的多个指令,本申请实施例不对目标指令的数量与闪存颗粒芯片的数量间的对应关系做具体限制。In the embodiment of the present application, the target instruction may be one instruction or multiple instructions, and the embodiment of the present application does not impose a specific limit on the number of target instructions. Further, the target instruction may be one instruction of a flash memory particle chip, or multiple instructions of a flash memory particle chip, or multiple instructions of multiple flash memory particle chips, and the embodiment of the present application does not impose a specific limit on the correspondence between the number of target instructions and the number of flash memory particle chips.
在本申请实施例中,本申请实施例提供的处理器,可以基于SCA协议,处理针对闪存颗粒芯片的操作指令,将针对闪存颗粒芯片的操作指令分类为CA操作指令和DQ操作指令。具体地,指令解析单元120对所述目标指令进行解析处理,确定所述目标指令的指令类型,所述指令类型包括CA操作指令,或者DQ操作指令。所述CA操作指令可以为与闪存颗粒芯片自身的配置有关的操作指令,例如读取闪存颗粒芯片的状态的指令,修改闪存颗粒芯片上寄存器的状态的指令。所述DQ操作指令可以为与闪存颗粒芯片上存储的数据信息相关的指令,例如针对闪存颗粒芯片的读写操作指令。In an embodiment of the present application, the processor provided in the embodiment of the present application can process operation instructions for the flash memory particle chip based on the SCA protocol, and classify the operation instructions for the flash memory particle chip into CA operation instructions and DQ operation instructions. Specifically, the instruction parsing unit 120 parses and processes the target instruction to determine the instruction type of the target instruction, and the instruction type includes a CA operation instruction or a DQ operation instruction. The CA operation instruction can be an operation instruction related to the configuration of the flash memory particle chip itself, such as an instruction to read the state of the flash memory particle chip, and an instruction to modify the state of the register on the flash memory particle chip. The DQ operation instruction can be an instruction related to the data information stored on the flash memory particle chip, such as a read and write operation instruction for the flash memory particle chip.
在本申请实施例中,所述目标指令可以包括直接指示指令类型的字段,所述指令解析单元120对所述目标指令进行解析,并根据所述目标指令中包括的直接指示指令类型的字段确定所述目标指令的指令类型。所述指令解析单元120还可以对目标指令解析,基于所述目标指令中的数据占比,确定所述目标指令的指令类型,本申请实施例不对此指令解析单元120如何确定所述目标指令的指令类型组做具体限制。In an embodiment of the present application, the target instruction may include a field that directly indicates the instruction type, and the instruction parsing unit 120 parses the target instruction and determines the instruction type of the target instruction according to the field that directly indicates the instruction type included in the target instruction. The instruction parsing unit 120 may also parse the target instruction and determine the instruction type of the target instruction based on the data ratio in the target instruction. The embodiment of the present application does not specifically limit how the instruction parsing unit 120 determines the instruction type group of the target instruction.
如本申请实施例提供的图1-1所示,在指令解析单元120确定目标指令的指令类型后,可以基于指令类型,通过不同的指令执行单元执行目标指令。所述处理器100可以通过控制闪存颗粒芯片上的输入/输出(Input/Output,简称I/O)接口上的波形行为,实现对闪存颗粒芯片的控制。As shown in FIG. 1-1 provided in the embodiment of the present application, after the instruction parsing unit 120 determines the instruction type of the target instruction, the target instruction can be executed by different instruction execution units based on the instruction type. The processor 100 can control the flash memory particle chip by controlling the waveform behavior on the input/output (I/O) interface on the flash memory particle chip.
在本申请实施例中,所述DQ指令执行单元130在目标指令的指令类型为DQ操作指令时,将目标指令的操作内容转化为处理器上的I/O接口的波形行为,实现将目标指令的数字信号转化为模拟信号,并通过DQ总线将处理器100上的I/O接口的波形行为,传输给闪存颗粒芯片上的I/O接口,使闪存颗粒芯片基于闪存颗粒芯片上的I/O接口的波形行为,获取目标数据。In the embodiment of the present application, when the instruction type of the target instruction is a DQ operation instruction, the DQ instruction execution unit 130 converts the operation content of the target instruction into the waveform behavior of the I/O interface on the processor, thereby converting the digital signal of the target instruction into an analog signal, and transmits the waveform behavior of the I/O interface on the processor 100 to the I/O interface on the flash memory particle chip through the DQ bus, so that the flash memory particle chip obtains the target data based on the waveform behavior of the I/O interface on the flash memory particle chip.
在本申请实施例中,所述目标数据可以为任意试图存储在闪存颗粒芯片上的数据。所述目标数据可以来自所述目标指令本身,还可以由DQ指令执行单元130基于目标指令的指示,从处理器100内部获取,例如在处理器100内部设置有存放有数据的存储空间(例如下文描述的数据存储空间),所述目标数据可以由DQ指令执行单元130基于目标指令的指示,从处理器100内部存放有数据的存储空间获取。In the embodiment of the present application, the target data may be any data that is intended to be stored on the flash memory chip. The target data may come from the target instruction itself, or may be obtained from the processor 100 by the DQ instruction execution unit 130 based on the instruction of the target instruction. For example, a storage space for storing data (such as the data storage space described below) is provided inside the processor 100, and the target data may be obtained from the storage space for storing data inside the processor 100 by the DQ instruction execution unit 130 based on the instruction of the target instruction.
相应地,所述CA指令执行单元140在目标指令的指令类型为CA操作指令时,将目标指令的操作内容转化为处理器上的I/O接口的波形行为,实现将目标指令的数字信号转化为模拟信号,并通过CA总线将处理器100上的I/O接口的波形行为,传输给闪存颗粒芯片上的I/O接口,使闪存颗粒芯片基于闪存颗粒芯片上的I/O接口的波形行为,获取CA信息或者与CA相关的配置信息,并完成CA相关命令。Correspondingly, when the instruction type of the target instruction is a CA operation instruction, the CA instruction execution unit 140 converts the operation content of the target instruction into the waveform behavior of the I/O interface on the processor, realizes the conversion of the digital signal of the target instruction into an analog signal, and transmits the waveform behavior of the I/O interface on the processor 100 to the I/O interface on the flash memory particle chip through the CA bus, so that the flash memory particle chip obtains CA information or configuration information related to CA based on the waveform behavior of the I/O interface on the flash memory particle chip, and completes CA-related commands.
在本申请实施例中,所述CA信息可以为与闪存颗粒芯片自身相关的配置信息,例如修改后的闪存颗粒芯片的寄存器信息,闪存颗粒芯片在通过I/O接口的波形行为,得到CA信息或者与CA相关的配置信息后,进行CA指令对应的操作,例如修改寄存器信息。In an embodiment of the present application, the CA information may be configuration information related to the flash memory particle chip itself, such as the modified register information of the flash memory particle chip. After the flash memory particle chip obtains the CA information or configuration information related to CA through the waveform behavior of the I/O interface, the flash memory particle chip performs operations corresponding to the CA instructions, such as modifying the register information.
在本申请实施例中,所述第一指令流水线上的第一目标单元(DQ指令执行单元130)与DQ总线有关联。相应地,所述第二指令流水线的第二目标单元与CA总线有关联。所述目标条件可以表征所述DQ总线和所述CA总线能否并行处理目标指令。具体地,目标条件可以为第一指令流水线和第二指令流水线分别处理不同的闪存颗粒芯片的目标指令,或,目标条件可以为第一指令流水线当前处理的指令,与第二指令流水线当前处理的指令,不存在相斥的关系,那么第一指令流水线可以与所述第二指令流水线并行执行,提高处理目标指令的效率。在本申请实施例中,当第一指令流水线与所述第二指令流水线并行执行时,第一指令流水线上的目标指令与第二指令流水线上的目标指令可以为不同的闪存颗粒芯片的指令,也可以为同一个闪存颗粒芯片的指令,本申请实施例不对此做具体限制。In an embodiment of the present application, the first target unit (DQ instruction execution unit 130) on the first instruction pipeline is associated with the DQ bus. Correspondingly, the second target unit of the second instruction pipeline is associated with the CA bus. The target condition can characterize whether the DQ bus and the CA bus can process the target instruction in parallel. Specifically, the target condition can be that the first instruction pipeline and the second instruction pipeline process the target instructions of different flash memory particle chips respectively, or the target condition can be that the instruction currently processed by the first instruction pipeline does not have an exclusive relationship with the instruction currently processed by the second instruction pipeline, then the first instruction pipeline can be executed in parallel with the second instruction pipeline to improve the efficiency of processing the target instruction. In an embodiment of the present application, when the first instruction pipeline and the second instruction pipeline are executed in parallel, the target instruction on the first instruction pipeline and the target instruction on the second instruction pipeline can be instructions of different flash memory particle chips, or instructions of the same flash memory particle chip, and the embodiment of the present application does not impose specific restrictions on this.
在本申请实施例中,所述第一指令流水线与所述第二指令流水线在并行执行时,可以表示所述第一指令流水线上的任意一个单元(例如取指令单元110)都可以和第二指令流水线上与第一指令流水线上正在工作的单元不同的任意一个单元(例如指令解析单元120或第二目标单元)并行执行。例如,在第一指令流水线上的取指令单元获取X目标指令的同时,所述第二指令流水线上的第二目标单元(CA指令执行单元140)可以执行Y目标指令。在本申请实施例中,针对目标指令的任意字母描述,都表示不同的目标指令,例如前文所述的X目标指令与Y目标指令,下文所述的A目标指令、B目标指令等等。In the embodiment of the present application, when the first instruction pipeline and the second instruction pipeline are executed in parallel, it can be indicated that any unit on the first instruction pipeline (such as the instruction fetch unit 110) can be executed in parallel with any unit on the second instruction pipeline that is different from the unit that is working on the first instruction pipeline (such as the instruction parsing unit 120 or the second target unit). For example, while the instruction fetch unit on the first instruction pipeline obtains the X target instruction, the second target unit (CA instruction execution unit 140) on the second instruction pipeline can execute the Y target instruction. In the embodiment of the present application, any letter description for the target instruction represents a different target instruction, such as the X target instruction and the Y target instruction mentioned above, the A target instruction and the B target instruction mentioned below, and so on.
在本申请实施例中,当第一指令流水线上的DQ指令执行单元在执行目标指令时,若取指令单元和/或指令解析单元在空闲时期,取指令单元和/或指令解析单元可并行执行其他指令,所述其他指令与目标指令可以为同一闪存颗粒芯片的指令,也可以为不同闪存颗粒芯片的指令。例如取指令单元将针对A闪存颗粒芯片的A目标指令发送给指令解析单元后,可以再次获取针对A闪存颗粒芯片的B目标指令,使第一指令流水线和第二指令流水线间成为异构处理的两条并行指令流水线。此外,取指令单元不仅可以再次获取针对A闪存颗粒芯片的B目标指令,还可以获取针对B闪存颗粒芯片的A目标指令,本申请实施例不对此做具体限制。In the embodiment of the present application, when the DQ instruction execution unit on the first instruction pipeline is executing the target instruction, if the instruction fetch unit and/or the instruction parsing unit are in an idle period, the instruction fetch unit and/or the instruction parsing unit can execute other instructions in parallel, and the other instructions and the target instruction can be instructions of the same flash memory particle chip, or instructions of different flash memory particle chips. For example, after the instruction fetch unit sends the target instruction A for the flash memory particle chip A to the instruction parsing unit, it can obtain the target instruction B for the flash memory particle chip A again, so that the first instruction pipeline and the second instruction pipeline become two parallel instruction pipelines for heterogeneous processing. In addition, the instruction fetch unit can not only obtain the target instruction B for the flash memory particle chip A again, but also obtain the target instruction A for the flash memory particle chip B, and the embodiment of the present application does not impose specific restrictions on this.
在本申请实施例中,在满足目标条件的情况下,第二指令流水线上的CA指令执行单元执行A目标指令。同时,第一指令流水线上的DQ指令执行单元接收B目标指令以进行处理,实现所述第一指令流水线和所述第二指令流水线并行执行。In the embodiment of the present application, when the target condition is met, the CA instruction execution unit on the second instruction pipeline executes the target instruction A. At the same time, the DQ instruction execution unit on the first instruction pipeline receives the target instruction B for processing, so that the first instruction pipeline and the second instruction pipeline are executed in parallel.
在本申请实施例中,当不满足目标条件时,可以表示DQ总线和CA总线不能并行处理目标指令,例如当前第一指令流水线当前处理的指令(可视为DQ总线当前传输的目标数据对应的指令),与第二指令流水线当前处理的指令相斥,无法并行处理,可以由第二指令流水线上的第二目标单元中的CA指令执行单元进行等待,等待第一指令流水线上的目标指令完成。In an embodiment of the present application, when the target condition is not met, it may indicate that the DQ bus and the CA bus cannot process the target instructions in parallel. For example, the instruction currently processed by the first instruction pipeline (which can be regarded as the instruction corresponding to the target data currently transmitted by the DQ bus) is exclusive of the instruction currently processed by the second instruction pipeline and cannot be processed in parallel. The CA instruction execution unit in the second target unit on the second instruction pipeline may wait for the target instruction on the first instruction pipeline to be completed.
例如,在本申请实施例中,CA指令执行单元执行C目标指令。由于不满足目标条件,DQ指令执行单元无法并行执行D目标指令,所述第一指令流水线的DQ指令执行单元可以等待第二指令流水线上的C目标指令执行完毕后,执行D目标指令。For example, in the embodiment of the present application, the CA instruction execution unit executes the C target instruction. Since the target condition is not met, the DQ instruction execution unit cannot execute the D target instruction in parallel, and the DQ instruction execution unit of the first instruction pipeline can wait until the C target instruction on the second instruction pipeline is executed before executing the D target instruction.
在本申请实施例中,可以通过处理器的方式在处理闪存颗粒芯片的指令的过程中实现SCA协议,提高目标指令的处理速度。在满足目标条件的情况下,处理器可以通过第一指令流水线和第二指令流水线实现异构流水线,进一步提高指令处理的效率。此外,在本申请实施例提供的处理器上,第一指令流水线与第二指令流水线共用取指令单元110与指令解析单元120,一定程度上可以减少处理器上的组件数量以及硬件面积。In the embodiment of the present application, the SCA protocol can be implemented in the process of processing the instructions of the flash memory particle chip by means of a processor to improve the processing speed of the target instructions. When the target conditions are met, the processor can implement a heterogeneous pipeline through the first instruction pipeline and the second instruction pipeline to further improve the efficiency of instruction processing. In addition, on the processor provided in the embodiment of the present application, the first instruction pipeline and the second instruction pipeline share the instruction fetch unit 110 and the instruction parsing unit 120, which can reduce the number of components and hardware area on the processor to a certain extent.
图1-2为本申请实施例提供的一种处理器的结构框图。如图1-2所示,本申请实施例提供的处理器100还包括:DQ写回单元150和CA写回单元160。所述DQ写回单元150,用于在所述DQ操作指令需要写回的情况下,通过所述DQ总线从所述闪存颗粒芯片获取第一信息,并将所述第一信息写入所述处理器内的数据存储空间。所述CA写回单元160,用于在所述CA操作指令需要写回的情况下,通过所述CA总线从所述闪存颗粒芯片获取第二信息,并将所述第二信息写入所述处理器内的数据存储空间。其中,所述第一目标单元还包括所述DQ写回单元150,所述第二目标单元还包括所述CA写回单元160。FIG1-2 is a block diagram of a processor provided in an embodiment of the present application. As shown in FIG1-2, the processor 100 provided in an embodiment of the present application also includes: a DQ write-back unit 150 and a CA write-back unit 160. The DQ write-back unit 150 is used to obtain first information from the flash memory particle chip through the DQ bus when the DQ operation instruction needs to be written back, and write the first information into the data storage space within the processor. The CA write-back unit 160 is used to obtain second information from the flash memory particle chip through the CA bus when the CA operation instruction needs to be written back, and write the second information into the data storage space within the processor. Among them, the first target unit also includes the DQ write-back unit 150, and the second target unit also includes the CA write-back unit 160.
在本申请实施例中,所述目标指令还可以包括写回操作,所述写回操作用于将闪存颗粒芯片的配置信息或数据信息,写回给处理器100,以供处理器100进行下一步处理。例如处理器100保存闪存颗粒芯片写回的配置信息,或将闪存颗粒芯片写回的数据信息发送给用户。在本申请实施例中,若DQ操作指令需要写回,可以由DQ写回单元150执行;若CA操作指令需要写回,可以由CA写回单元160执行。In an embodiment of the present application, the target instruction may also include a write-back operation, which is used to write the configuration information or data information of the flash memory chip back to the processor 100 for the processor 100 to perform the next step of processing. For example, the processor 100 saves the configuration information written back by the flash memory chip, or sends the data information written back by the flash memory chip to the user. In an embodiment of the present application, if the DQ operation instruction needs to be written back, it can be executed by the DQ write-back unit 150; if the CA operation instruction needs to be written back, it can be executed by the CA write-back unit 160.
在本申请实施例中,在所述DQ操作指令需要写回的情况下,可以由所述DQ写回单元150通过所述DQ总线从所述闪存颗粒芯片获取第一信息。所述DQ写回单元150通过DQ总线将闪存颗粒芯片传输的模拟信号转化为第一信息的数据信号,从而获取第一信息。在本申请实施例中,所述第一信息可以为存储于闪存颗粒芯片上的任意数据,例如所述第一信息可以为用户存储于闪存颗粒芯片上的有效数据信息。In the embodiment of the present application, when the DQ operation instruction needs to be written back, the DQ write-back unit 150 can obtain the first information from the flash memory particle chip through the DQ bus. The DQ write-back unit 150 converts the analog signal transmitted by the flash memory particle chip into a data signal of the first information through the DQ bus, thereby obtaining the first information. In the embodiment of the present application, the first information can be any data stored on the flash memory particle chip, for example, the first information can be valid data information stored by the user on the flash memory particle chip.
在所述DQ写回单元150获取第一信息后,可以将所述第一信息写入所述处理器100内的数据存储空间170。所述数据存储空间170可以为处理器100内专用于存储数据内容的空间,处理器内任意数据都可以存放数据存储空间170内。所述数据存储空间170不仅可以被写入数据信息,还可以将数据信息写出至处理器100外部,例如处理器100外部包括专用于处理数据的传输路线,数据通路等,所述数据存储空间170将与处理器100无关的数据信息写出至处理器100外的数据通路。进一步,在DQ指令执行单元130通过DQ总线向闪存颗粒芯片发送目标数据的过程中,所述目标数据可以来自所述数据存储空间170,若数据存储空间170无法提供目标数据,所述目标数据还可以通过数据存储空间170获取来自处理器100外部的数据信息。After the DQ write-back unit 150 obtains the first information, the first information can be written into the data storage space 170 in the processor 100. The data storage space 170 can be a space dedicated to storing data content in the processor 100, and any data in the processor can be stored in the data storage space 170. The data storage space 170 can not only be written with data information, but also can write data information out to the outside of the processor 100. For example, the outside of the processor 100 includes a transmission route and a data path dedicated to processing data, and the data storage space 170 writes data information that is not related to the processor 100 to the data path outside the processor 100. Further, in the process of the DQ instruction execution unit 130 sending target data to the flash memory particle chip through the DQ bus, the target data can come from the data storage space 170. If the data storage space 170 cannot provide the target data, the target data can also obtain data information from outside the processor 100 through the data storage space 170.
相应地,在本申请实施例中,在所述CA操作指令需要写回的情况下,可以由所述CA写回单元160通过所述CA总线从所述闪存颗粒芯片获取第二信息。所述CA写回单元160通过CA总线实现将闪存颗粒芯片传输的模拟信号转化为第二信息的数据信号,从而获取第二信息。在本申请实施例中,所述第二信息可以为与闪存颗粒芯片相关的配置信息。Accordingly, in the embodiment of the present application, when the CA operation instruction needs to be written back, the CA write-back unit 160 can obtain the second information from the flash memory particle chip through the CA bus. The CA write-back unit 160 converts the analog signal transmitted by the flash memory particle chip into a data signal of the second information through the CA bus, thereby obtaining the second information. In the embodiment of the present application, the second information can be configuration information related to the flash memory particle chip.
在所述CA写回单元160获取第二信息后,可以将所述第二信息写入所述处理器100内的数据存储空间170。由于数据存储空间170包括了与CA操作指令相关的第二信息,在所述指令解析单元120解析目标指令的过程中,所述指令解析单元120也可以从数据存储空间170获取数据信息,例如获取修改后的闪存颗粒芯片的寄存器信息。After the CA write-back unit 160 obtains the second information, the second information may be written into the data storage space 170 in the processor 100. Since the data storage space 170 includes the second information related to the CA operation instruction, during the process of the instruction parsing unit 120 parsing the target instruction, the instruction parsing unit 120 may also obtain data information from the data storage space 170, for example, obtain the register information of the modified flash memory particle chip.
在本申请实施例中,通过DQ写回单元与CA写回单元,可以实现目标指令的写回操作,使针对闪存颗粒芯片的目标指令具有更广的指示范围,能够使闪存颗粒芯片执行更多的操作。In the embodiment of the present application, the write back operation of the target instruction can be implemented through the DQ write back unit and the CA write back unit, so that the target instruction for the flash memory particle chip has a wider indication range, enabling the flash memory particle chip to perform more operations.
在本申请实施例中,如图1-2所示的取指令单元110、指令解析单元120、DQ指令执行单元130和DQ写回单元150形成第一指令流水线;取指令单元110、指令解析单元120、CA指令执行单元140和CA写回单元160形成第二指令流水线。在满足目标条件的情况下,所述第一指令流水线上所述第一目标单元中的第一指定单元和所述第二指令流水线上所述第二目标单元中的第二指定单元并行执行,其中,所述第一指定单元包括所述DQ指令执行单元130和所述DQ写回单元150中的至少一者,所述第二指定单元包括所述CA指令执行单元140和所述CA写回单元160中的至少一者。In the embodiment of the present application, the instruction fetch unit 110, instruction parsing unit 120, DQ instruction execution unit 130 and DQ write-back unit 150 shown in FIG. 1-2 form a first instruction pipeline; the instruction fetch unit 110, instruction parsing unit 120, CA instruction execution unit 140 and CA write-back unit 160 form a second instruction pipeline. When the target condition is met, the first designated unit in the first target unit on the first instruction pipeline and the second designated unit in the second target unit on the second instruction pipeline are executed in parallel, wherein the first designated unit includes at least one of the DQ instruction execution unit 130 and the DQ write-back unit 150, and the second designated unit includes at least one of the CA instruction execution unit 140 and the CA write-back unit 160.
在本申请实施例中,在满足目标条件的情况下,在第一个时钟周期内,所述第二指令流水线上的CA写回单元执行E目标指令。同时,所述第一指令流水线上的DQ指令执行单元执行F目标指令,所述F目标指令也包括写回操作。在第二个时钟周期内,所述第二指令流水线上的CA写回单元仍然执行E目标指令,所述第一指令流水线行的DQ写回单元执行F目标指令,从而实现第一指令流水线上所述第一目标单元中的第一指定单元和所述第二指令流水线上所述第二目标单元中的第二指定单元并行执行。In an embodiment of the present application, when the target condition is met, in the first clock cycle, the CA write-back unit on the second instruction pipeline executes the E target instruction. At the same time, the DQ instruction execution unit on the first instruction pipeline executes the F target instruction, and the F target instruction also includes a write-back operation. In the second clock cycle, the CA write-back unit on the second instruction pipeline still executes the E target instruction, and the DQ write-back unit on the first instruction pipeline executes the F target instruction, thereby achieving the parallel execution of the first designated unit in the first target unit on the first instruction pipeline and the second designated unit in the second target unit on the second instruction pipeline.
在本申请实施例中,当不满足目标条件时,在目标指令被任意一条指令流水线(例如第一指令流水线)执行的期间,另一条指令流水线(例如第二指令流水线)将不执行指令。例如,所述第一指令流水线的DQ写回单元执行G目标指令。由于不满足目标条件,所述第二指令流水线中的CA指令执行单元无法执行H目标指令,所述CA指令执行单元可以在G目标指令执行完毕后,再执行H目标指令。In an embodiment of the present application, when the target condition is not met, during the period when the target instruction is executed by any instruction pipeline (e.g., the first instruction pipeline), another instruction pipeline (e.g., the second instruction pipeline) will not execute the instruction. For example, the DQ write-back unit of the first instruction pipeline executes the G target instruction. Since the target condition is not met, the CA instruction execution unit in the second instruction pipeline cannot execute the H target instruction. The CA instruction execution unit can execute the H target instruction after the G target instruction is executed.
在本申请实施例中,通过所述第一指令流水线上所述第一目标单元中的第一指定单元和所述第二指令流水线上所述第二目标单元中的第二指定单元并行执行的方式,可以使处理器处理目标指令的效率更加高速,同时,由于目标条件的限定,可以使本申请实施例提供的处理器更加合理地编排目标指令的处理逻辑顺序。In an embodiment of the present application, by executing in parallel the first designated unit in the first target unit on the first instruction pipeline and the second designated unit in the second target unit on the second instruction pipeline, the processor can process the target instruction more efficiently. At the same time, due to the limitation of the target conditions, the processor provided in the embodiment of the present application can more reasonably arrange the processing logic order of the target instruction.
在本申请实施例中,所述处理器还可以具有用于存储与闪存颗粒芯片适配的各种指令的指令存储空间,所述指令存储空间用于存储所述目标指令。所述指令存储空间中可以包括根据闪存颗粒芯片厂家的说明指导书,提前预设好与闪存颗粒芯片适配的指令的逻辑。例如,根据闪存颗粒芯片厂家的说明指导书,进行目标指令的代码编写以及汇编,最终得到与说明指导书相对应的目标指令,即,与闪存颗粒芯片适配的目标指令。所述指令存储空间中可以保存与多家闪存颗粒芯片厂家适配的目标指令,以此适配更多的闪存颗粒芯片。In an embodiment of the present application, the processor may also have an instruction storage space for storing various instructions adapted to the flash memory particle chip, and the instruction storage space is used to store the target instruction. The instruction storage space may include the logic of the instructions adapted to the flash memory particle chip preset in advance according to the instructions of the flash memory particle chip manufacturer. For example, according to the instructions of the flash memory particle chip manufacturer, the code of the target instruction is written and assembled, and finally the target instruction corresponding to the instructions is obtained, that is, the target instruction adapted to the flash memory particle chip. The instruction storage space can store target instructions adapted to multiple flash memory particle chip manufacturers, so as to adapt to more flash memory particle chips.
在本申请实施例中,可以由指令存储空间获取应用层的指令,并匹配得到对应的目标指令,以便取指令单元(如图1-1或图1-2任一图所示的110)从所述指令存储空间处获取目标指令。在本申请实施例中,还可以由取指令单元从应用层获取指令后,在指令存储空间进行匹配,得到与应用层指令对应的目标指令。In the embodiment of the present application, the instruction of the application layer can be obtained from the instruction storage space, and the corresponding target instruction can be matched, so that the instruction fetching unit (such as 110 shown in any one of Figures 1-1 or 1-2) can obtain the target instruction from the instruction storage space. In the embodiment of the present application, the instruction fetching unit can also obtain the instruction from the application layer and then match it in the instruction storage space to obtain the target instruction corresponding to the application layer instruction.
通过修改处理器中的指令存储空间存储的目标指令的方式,可以更加灵活地实现处理器适配不同存储厂家的不同闪存颗粒芯片。相较于相关技术,本申请实施例提供的处理器具有更好的兼容性与适配性,同时还可以降低成本。By modifying the target instructions stored in the instruction storage space of the processor, the processor can be more flexibly adapted to different flash memory chips of different storage manufacturers. Compared with the related art, the processor provided by the embodiment of the present application has better compatibility and adaptability, and can also reduce costs.
在本申请实施例中,所述目标指令为符合目标格式的指令。图2为本申请实施例提供的一种目标格式的架构图,如图2所示,本申请实施例提供的目标指令的目标格式包括总线类型字段、数据字段、写回指示字段、长度字段、波形指示字段以及锁定字段;所述总线类型字段(BUS_type)用于指示目标指令使用的总线类型是CA总线还是DQ总线;所述数据字段(Data)指示需要发送的数据内容,所述数据内容来自所述目标指令和/或数据存储空间;所述写回指示字段(R/W)用于指示目标指令是否有写回操作;所述长度字段(Length)用于指示当前操作的长度;所述波形指示字段(BUS_wave)用于指示所述目标指令的信号时序行为;所述锁定字段(Lock)指示所述目标指令是否与下一个不同总线的指令同步执行。In an embodiment of the present application, the target instruction is an instruction that conforms to the target format. Figure 2 is an architectural diagram of a target format provided in an embodiment of the present application. As shown in Figure 2, the target format of the target instruction provided in an embodiment of the present application includes a bus type field, a data field, a write-back indication field, a length field, a waveform indication field, and a lock field; the bus type field (BUS_type) is used to indicate whether the bus type used by the target instruction is a CA bus or a DQ bus; the data field (Data) indicates the data content to be sent, and the data content comes from the target instruction and/or the data storage space; the write-back indication field (R/W) is used to indicate whether the target instruction has a write-back operation; the length field (Length) is used to indicate the length of the current operation; the waveform indication field (BUS_wave) is used to indicate the signal timing behavior of the target instruction; the lock field (Lock) indicates whether the target instruction is executed synchronously with the next instruction of a different bus.
在本申请实施例中,所述处理器的指令解析单元可以根据所述目标格式中的所述总线类型字段确定目标指令的指令类型。若所述总线类型字段指示目标指令使用的总线类型是CA总线,可以将所述目标指令发送至CA指令执行单元;若所述总线类型字段指示目标指令使用的总线类型是DQ总线,可以将所述目标指令发送至DQ指令执行单元。In an embodiment of the present application, the instruction parsing unit of the processor can determine the instruction type of the target instruction according to the bus type field in the target format. If the bus type field indicates that the bus type used by the target instruction is a CA bus, the target instruction can be sent to the CA instruction execution unit; if the bus type field indicates that the bus type used by the target instruction is a DQ bus, the target instruction can be sent to the DQ instruction execution unit.
在本申请实施例中,所述数据字段(Data)指示需要发送的数据内容,所述数据内容还可以根据指示来自数据存储空间,若所述数据存储空间内无目标指令需要发送的数据内容,所述指令解析单元可以通过数据存储空间,从处理器外部(例如,数据通路)获取目标数据。In an embodiment of the present application, the data field (Data) indicates the data content to be sent, and the data content may also come from the data storage space according to the indication. If there is no data content that the target instruction needs to send in the data storage space, the instruction parsing unit may obtain the target data from outside the processor (for example, the data path) through the data storage space.
在本申请实施例中,所述写回指示字段(R/W)用于指示目标指令是否有写回操作。若所述写回指示字段(R/W)用于指示目标指令有写回操作,则在指令执行单元(DQ指令执行单元和/或CA指令执行单元)执行后,通过写回单元(DQ写回单元和/或CA写回单元)从所述闪存颗粒芯片获取待写回信息(第一信息和/或第二信息);若所述写回指示字段(R/W)用于指示目标指令不需要写回操作,在指令执行单元执行完毕后,则可以视为该目标指令已执行完毕。In an embodiment of the present application, the write-back indication field (R/W) is used to indicate whether the target instruction has a write-back operation. If the write-back indication field (R/W) is used to indicate that the target instruction has a write-back operation, then after the instruction execution unit (DQ instruction execution unit and/or CA instruction execution unit) executes, the write-back unit (DQ write-back unit and/or CA write-back unit) obtains the information to be written back (the first information and/or the second information) from the flash memory particle chip; if the write-back indication field (R/W) is used to indicate that the target instruction does not require a write-back operation, after the instruction execution unit completes execution, the target instruction can be deemed to have been executed.
在本申请实施例中,所述长度字段(Length)用于指示当前操作的长度。进一步,所述长度字段可以指示处理器端的DQ总线和/或CA总线的I/O接口的波形行为的长度。In the embodiment of the present application, the length field (Length) is used to indicate the length of the current operation. Further, the length field may indicate the length of the waveform behavior of the I/O interface of the DQ bus and/or CA bus on the processor side.
在本申请实施例中,所述波形指示字段(BUS_wave)用于指示所述目标指令的信号时序行为,控制与闪存颗粒相连的传输总线上每个物理线的跳变,通过引起不同物理线的跳变,形成不一样的波形行为,进一步使闪存颗粒芯片执行不同的目标指令。In an embodiment of the present application, the waveform indication field (BUS_wave) is used to indicate the signal timing behavior of the target instruction, control the jump of each physical line on the transmission bus connected to the flash memory particle, and form different waveform behaviors by causing the jump of different physical lines, thereby further enabling the flash memory particle chip to execute different target instructions.
在本申请实施例中,处理器端的DQ总线和/或CA总线的I/O接口的波形行为,可以通过长度字段(Length)和波形指示字段(BUS_wave)中的至少一者决定。In the embodiment of the present application, the waveform behavior of the I/O interface of the DQ bus and/or CA bus on the processor side can be determined by at least one of the length field (Length) and the waveform indication field (BUS_wave).
在本申请实施例中,所述锁定字段(Lock)指示所述目标指令是否与下一个不同总线的指令同步执行,所述下一个不同总线的指令与目标指令,可以为一个闪存颗粒芯片的指令,也可以为不同闪存颗粒芯片的指令,本申请实施例不对此做具体限制。若所述目标指令的锁定字段指示目标指令不与下一个不同总线的指令同步执行,可以理解为当前处理的目标指令将当前时刻的传输总线进行锁定,不允许不同传输总线的指令同时进行。In the embodiment of the present application, the lock field (Lock) indicates whether the target instruction is executed synchronously with the next instruction of a different bus. The next instruction of a different bus and the target instruction can be instructions of a flash memory particle chip or instructions of different flash memory particle chips. The embodiment of the present application does not impose specific restrictions on this. If the lock field of the target instruction indicates that the target instruction is not executed synchronously with the next instruction of a different bus, it can be understood that the target instruction currently being processed locks the transmission bus at the current moment, and does not allow instructions of different transmission buses to be executed at the same time.
在本申请实施例中,通过目标格式,处理器能够更好地控制CA总线和DQ总线间的执行行为(CA总线和/或DQ总线的接口间的波形,即,目标指令的信号行为)、数据、并行或排斥操作等。In an embodiment of the present application, through the target format, the processor can better control the execution behavior between the CA bus and the DQ bus (the waveform between the interfaces of the CA bus and/or the DQ bus, that is, the signal behavior of the target instruction), data, parallel or exclusive operations, etc.
在本申请实施例中,所述目标条件可以与所述锁定字段相关联,所述目标条件可以包括所述锁定字段指示与下一个不同总线的指令同步执行。若锁定字段指示目标指令与下一个不同总线的指令可以同步执行,那么本申请实施例提供的第一指令流水线上的第一目标单元和所述第二指令流水线上的第二目标单元可以并行执行,即DQ总线和CA总线可以同时传输数据信息,高效处理闪存颗粒芯片的目标指令。In an embodiment of the present application, the target condition may be associated with the lock field, and the target condition may include the lock field indicating that the target instruction and the next instruction of a different bus can be executed synchronously. If the lock field indicates that the target instruction and the next instruction of a different bus can be executed synchronously, then the first target unit on the first instruction pipeline provided by the embodiment of the present application and the second target unit on the second instruction pipeline can be executed in parallel, that is, the DQ bus and the CA bus can transmit data information at the same time, and efficiently process the target instruction of the flash memory particle chip.
在本申请实施例中,指令解析单元确定指令类型的同时,还可以通过锁定字段(BUS lock),确定是否满足目标条件,解决指令之间排斥问题。In the embodiment of the present application, the instruction parsing unit can determine the instruction type and, at the same time, determine whether the target condition is met through a lock field (BUS lock) to solve the problem of exclusion between instructions.
在本申请实施例中,处理器通过同时控制第一指令流水线和/或第二指令流水线,可以进一步实现同时控制CA总线和/或DQ总线。并且由于处理器同时控制CA总线和/或DQ总线,可以基于任意一条传输总线的行为,合理编排另一条传输总线的行为,更加容易地控制这两个传输总线间指令操作相互排斥的关系。In the embodiment of the present application, the processor can further realize simultaneous control of the CA bus and/or the DQ bus by simultaneously controlling the first instruction pipeline and/or the second instruction pipeline. And because the processor controls the CA bus and/or the DQ bus simultaneously, the behavior of any transmission bus can be reasonably arranged based on the behavior of the other transmission bus, making it easier to control the mutually exclusive relationship between the instruction operations of the two transmission buses.
在本申请实施例中,所述第一指令流水线上的各个单元可以并行执行多个第一目标指令,所述多个第一目标指令为针对不同闪存颗粒芯片的不同指令,例如所述CA指令执行单元在执行针对第一闪存颗粒芯片的第一目标指令,所述指令解析单元可以在执行针对第二闪存颗粒芯片的第一目标指令,所述取指令单元可以执行针对第三闪存颗粒芯片的第一目标指令。相应地,所述第二指令流水线上的各个单元可以并行执行多个第二目标指令,所述多个第二目标指令为针对不同闪存颗粒芯片的不同指令,所述目标指令包括第一目标指令和第二目标指令。In the embodiment of the present application, each unit on the first instruction pipeline can execute multiple first target instructions in parallel, and the multiple first target instructions are different instructions for different flash memory particle chips. For example, the CA instruction execution unit is executing the first target instruction for the first flash memory particle chip, the instruction parsing unit can be executing the first target instruction for the second flash memory particle chip, and the instruction fetching unit can execute the first target instruction for the third flash memory particle chip. Correspondingly, each unit on the second instruction pipeline can execute multiple second target instructions in parallel, and the multiple second target instructions are different instructions for different flash memory particle chips, and the target instructions include the first target instruction and the second target instruction.
在本申请实施例中,所述第一指令流水线上的各个单元依次执行多个第三目标指令,所述多个第三目标指令为针对同一闪存颗粒芯片的不同指令(即,一个晶粒(DIE)的指令)。例如针对同一闪存颗粒芯片,可以包括数据读传输开始的CA指令,数据读传输的DQ指令,数据读传输结束的CA指令。在第一个时钟周期内,取指令单元获取数据读传输开始的CA指令。在第二个时钟周期内,指令解析单元对数据读传输开始的CA指令进行解析,取指令单元获取数据读传输的DQ指令。在第三个时钟周期内,第二指令流水线的CA指令执行单元执行数据读传输开始的CA指令,指令解析单元对数据读传输的DQ指令进行解析,取指令单元获取数据读传输结束的CA指令。如此,实现所述第一指令流水线上的各个单元依次执行多个第三目标指令,所述多个第三目标指令为针对同一闪存颗粒芯片的不同指令;以及相应地,所述第二指令流水线上的各个单元依次执行多个第四目标指令,所述多个第四目标指令为针对同一闪存颗粒芯片的不同指令。在本申请实施例中,可以通过处理器中第一指令流水线和/或第二指令流水线的异构处理,更加高效地处理目标指令。In an embodiment of the present application, each unit on the first instruction pipeline sequentially executes a plurality of third target instructions, and the plurality of third target instructions are different instructions for the same flash memory particle chip (i.e., instructions for one die (DIE)). For example, for the same flash memory particle chip, it may include a CA instruction for starting data read transmission, a DQ instruction for data read transmission, and a CA instruction for ending data read transmission. In the first clock cycle, the instruction fetch unit obtains the CA instruction for starting data read transmission. In the second clock cycle, the instruction parsing unit parses the CA instruction for starting data read transmission, and the instruction fetch unit obtains the DQ instruction for data read transmission. In the third clock cycle, the CA instruction execution unit of the second instruction pipeline executes the CA instruction for starting data read transmission, the instruction parsing unit parses the DQ instruction for data read transmission, and the instruction fetch unit obtains the CA instruction for ending data read transmission. In this way, each unit on the first instruction pipeline sequentially executes a plurality of third target instructions, and the plurality of third target instructions are different instructions for the same flash memory particle chip; and accordingly, each unit on the second instruction pipeline sequentially executes a plurality of fourth target instructions, and the plurality of fourth target instructions are different instructions for the same flash memory particle chip. In the embodiment of the present application, the target instruction can be processed more efficiently through heterogeneous processing of the first instruction pipeline and/or the second instruction pipeline in the processor.
图3为本申请实施例提供的一种指令处理的装置的结构框图,如图3所示,本申请实施例提供的指令处理的装置300包括闪存颗粒芯片320和处理器310,所述处理器310通过CA总线与所述闪存颗粒芯片320相连接,所述处理器310通过DQ总线与所述闪存颗粒芯片320相连接。在本申请实施例提供的指令处理的装置300中的处理器310可以为图1-1或图1-2任一图所示的处理器100,因此该实施例的具体实施可以参见前文对应的处理器的实施,重复之处不再赘述。在本申请实施例中,所述指令处理的装置可以为包括了图1-1或图1-2任一图所示的处理器的硬件设备和闪存颗粒芯片的硬件设备的装置。FIG3 is a block diagram of a device for instruction processing provided in an embodiment of the present application. As shown in FIG3 , the device for instruction processing 300 provided in an embodiment of the present application includes a flash memory particle chip 320 and a processor 310. The processor 310 is connected to the flash memory particle chip 320 via a CA bus, and the processor 310 is connected to the flash memory particle chip 320 via a DQ bus. The processor 310 in the device for instruction processing 300 provided in an embodiment of the present application may be the processor 100 shown in any one of FIG. 1-1 or FIG. 1-2. Therefore, the specific implementation of this embodiment may refer to the implementation of the corresponding processor in the foregoing text, and the repeated parts will not be repeated. In an embodiment of the present application, the device for instruction processing may be a device including a hardware device of the processor shown in any one of FIG. 1-1 or FIG. 1-2 and a hardware device of the flash memory particle chip.
在本申请实施例提供的如图3所示的指令处理的装置中,所述闪存颗粒芯片的数目为N个,N个闪存颗粒芯片中的每一个闪存颗粒芯片与所述处理器通过CA总线相连接,且N个闪存颗粒芯片中的每一个闪存颗粒芯片与所述处理器通过DQ总线相连接,N为大于等于1的正整数。一个闪存颗粒芯片对应一个晶粒(DIE),针对一个闪存颗粒芯片的目标指令可以依次执行。在CA总线执行第一闪存颗粒芯片的CA指令时,DQ总线可以执行第二闪存颗粒芯片的DQ指令,实现并行传输,高效处理目标指令。In the instruction processing device shown in FIG. 3 provided in the embodiment of the present application, the number of the flash memory particle chips is N, each of the N flash memory particle chips is connected to the processor via a CA bus, and each of the N flash memory particle chips is connected to the processor via a DQ bus, and N is a positive integer greater than or equal to 1. One flash memory particle chip corresponds to one grain (DIE), and the target instruction for one flash memory particle chip can be executed in sequence. When the CA bus executes the CA instruction of the first flash memory particle chip, the DQ bus can execute the DQ instruction of the second flash memory particle chip, realizing parallel transmission and efficiently processing the target instruction.
在本申请实施例中,所述目标指令中的所述波形指示字段包括片选指示字段,所述片选指示字段用于供所述处理器从N个闪存颗粒芯片中确定出目标闪存颗粒芯片,且所述片选指示字段用于指示所述目标闪存颗粒芯片执行所述目标指令。处理器中的指令解析单元根据所述片选指示片段,在总线中确定目标闪存颗粒芯片的片选线,并控制片选线产生波动使目标闪存颗粒芯片的管脚能够接收到信号,实现处理器从N个闪存颗粒芯片中确定出目标闪存颗粒芯片。当目标闪存颗粒芯片在通过管脚接收到目标指令的波形时,可以执行目标指令。通过片选指示字段,从N个闪存颗粒芯片中确定出目标闪存颗粒芯片,提高确定目标闪存颗粒芯片的准确性。In an embodiment of the present application, the waveform indication field in the target instruction includes a chip select indication field, and the chip select indication field is used for the processor to determine the target flash memory particle chip from N flash memory particle chips, and the chip select indication field is used to instruct the target flash memory particle chip to execute the target instruction. The instruction parsing unit in the processor determines the chip select line of the target flash memory particle chip in the bus according to the chip select indication segment, and controls the chip select line to generate fluctuations so that the pin of the target flash memory particle chip can receive the signal, so that the processor determines the target flash memory particle chip from the N flash memory particle chips. When the target flash memory particle chip receives the waveform of the target instruction through the pin, it can execute the target instruction. Through the chip select indication field, the target flash memory particle chip is determined from the N flash memory particle chips, and the accuracy of determining the target flash memory particle chip is improved.
在本申请实施例中,图3所示的指令处理的装置可以为包括了图1-1或图1-2任一图所示的处理器和闪存颗粒芯片的控制器。In an embodiment of the present application, the instruction processing device shown in Figure 3 can be a controller including the processor and flash memory particle chip shown in any one of Figures 1-1 or 1-2.
本申请实施例还提供一种存储设备,所述存储设备可以为包括了上述的控制器的固态硬盘(Solid State Disk,简称SSD)、通用闪存存储(Universal Flash Storage,简称UFS)等。An embodiment of the present application further provides a storage device, which may be a solid state disk (SSD), a universal flash storage (UFS), etc. including the above-mentioned controller.
在本申请实施例中,还提供一种电子设备,所述电子设备包括如上述的存储设备。所述电子设备可以为上述固态硬盘或通用闪存存储的终端设备,例如个人移动电脑等设备,还可以为包括上述存储设备的服务器。In an embodiment of the present application, an electronic device is also provided, the electronic device comprising the above-mentioned storage device. The electronic device may be a terminal device storing the above-mentioned solid-state hard disk or universal flash memory, such as a personal mobile computer, or a server comprising the above-mentioned storage device.
此外,在本申请实施例中,还提供一种指令处理方法,由处理器执行。所述处理器可以为如图1-1或图1-2任一图所示的本申请实施例提供的处理器,还可以为其他能够实现SCA协议的处理器。图4为本申请实施例提供的指令处理方法的流程图,如图4所示,本申请实施例提供的指令处理方法包括以下步骤:In addition, in an embodiment of the present application, an instruction processing method is also provided, which is executed by a processor. The processor may be a processor provided in an embodiment of the present application as shown in any one of Figures 1-1 or 1-2, or may be other processors capable of implementing the SCA protocol. Figure 4 is a flow chart of an instruction processing method provided in an embodiment of the present application. As shown in Figure 4, the instruction processing method provided in an embodiment of the present application includes the following steps:
步骤410,获取目标指令。Step 410, obtaining the target instruction.
步骤420,对所述目标指令进行解析处理,并确定所述目标指令的指令类型,所述指令类型包括CA操作指令,或者DQ操作指令。Step 420: parse the target instruction and determine the instruction type of the target instruction, where the instruction type includes a CA operation instruction or a DQ operation instruction.
若所述指令类型为CA操作指令,可执行步骤440;如所述指令类型为DQ操作指令,可执行步骤430。If the instruction type is a CA operation instruction, step 440 may be executed; if the instruction type is a DQ operation instruction, step 430 may be executed.
在本申请实施例提供的步骤420中,所述目标指令为符合目标格式的指令。所述目标格式包括指示所述目标指令是否与下一个不同总线的指令同步执行的锁定字段。在确定所述目标指令的指令类型的同时,还可以根据所述目标指令的锁定字段,确认步骤430和步骤440能否并行执行。若所述锁定字段指示锁定,则所述步骤430和步骤440不能并行执行;若所述锁定字段指示不锁定,则所述步骤430和步骤440可以并行执行。In step 420 provided in the embodiment of the present application, the target instruction is an instruction that conforms to the target format. The target format includes a lock field indicating whether the target instruction is executed synchronously with the next instruction of a different bus. While determining the instruction type of the target instruction, it is also possible to confirm whether step 430 and step 440 can be executed in parallel based on the lock field of the target instruction. If the lock field indicates lock, then step 430 and step 440 cannot be executed in parallel; if the lock field indicates unlock, then step 430 and step 440 can be executed in parallel.
步骤430,在所述指令类型为DQ操作指令的情况下,通过DQ总线向闪存颗粒芯片发送目标数据。Step 430: When the instruction type is a DQ operation instruction, the target data is sent to the flash memory chip through the DQ bus.
步骤440,在所述指令类型为CA操作指令的情况下,通过CA总线向闪存颗粒芯片发送CA信息或者与CA相关的配置信息。Step 440: When the instruction type is a CA operation instruction, CA information or CA-related configuration information is sent to the flash memory chip through the CA bus.
若所述CA操作指令需要写回,可执行步骤460;若所述DQ操作需要写回,可执行步骤450。If the CA operation instruction needs to be written back, step 460 may be executed; if the DQ operation instruction needs to be written back, step 450 may be executed.
步骤450,在所述DQ操作指令需要写回的情况下,通过DQ总线从闪存颗粒芯片获取第一信息,并写入所述处理器内的数据存储空间。Step 450: When the DQ operation instruction needs to be written back, first information is obtained from the flash memory chip through the DQ bus and written into the data storage space in the processor.
步骤460,在所述CA操作指令需要写回的情况下,通过CA总线从闪存颗粒芯片获取第二信息,并写入所述处理器内的数据存储空间。Step 460, when the CA operation instruction needs to be written back, obtain the second information from the flash memory particle chip through the CA bus and write it into the data storage space in the processor.
在本申请实施例中,可以通过本申请实施例提供的处理器执行上述方法,提高目标指令的处理速度,控制DQ总线和CA总线间的排斥关系,解决指令间相斥的问题。In an embodiment of the present application, the above method can be executed by the processor provided in the embodiment of the present application to improve the processing speed of the target instruction, control the exclusive relationship between the DQ bus and the CA bus, and solve the problem of mutual exclusion between instructions.
为了更好地理解本申请实施例提供的处理器,现进行举例,需了解的是,举例并非限制。In order to better understand the processor provided in the embodiments of the present application, examples are given below. It should be understood that the examples are not limitations.
图5为本申请实施例提供的处理器的外部环境架构图,如图5所示,在本申请实施例中,如图1-1或图1-2任一图所示的SCA协议处理器收到应用层的操作请求后,将应用层操作转换为DQ总线和CA总线的操作行为。该处理器可以实现对闪存颗粒接口CA总线和DQ总线的同步控制,两个总线上的传输可以并行执行。在如图1-1或图1-2任一图所示的SCA协议处理器处理目标指令的过程中,可以从数据通路获取目标数据。SCA协议处理器得到目标指令执行后的数字信号,通过物理层总线(DQ总线和CA总线)将数字信号转换为模拟信号,进一步使闪存颗粒芯片读取。相应地,在写回过程中,物理层总线将闪存颗粒芯片反馈的模拟信号转换为数字信号。FIG5 is an external environment architecture diagram of a processor provided in an embodiment of the present application. As shown in FIG5, in an embodiment of the present application, after the SCA protocol processor shown in FIG1-1 or FIG1-2 receives an operation request from the application layer, it converts the application layer operation into the operation behavior of the DQ bus and the CA bus. The processor can realize synchronous control of the flash memory particle interface CA bus and the DQ bus, and the transmission on the two buses can be executed in parallel. In the process of the SCA protocol processor processing the target instruction as shown in FIG1-1 or FIG1-2, the target data can be obtained from the data path. The SCA protocol processor obtains the digital signal after the execution of the target instruction, converts the digital signal into an analog signal through the physical layer bus (DQ bus and CA bus), and further enables the flash memory particle chip to read. Correspondingly, during the write-back process, the physical layer bus converts the analog signal fed back by the flash memory particle chip into a digital signal.
图6为本申请实施例提供的一种处理器的架构图,如图6所示,在本申请实施例提供的处理器(即,图6所示的SCA协议处理器)中,通过超标量的流水线设计方法,包括了两个不同的指令流水线控制。如图6所示的处理器的各个单元的分工可以包括:FIG6 is an architecture diagram of a processor provided in an embodiment of the present application. As shown in FIG6 , in the processor provided in an embodiment of the present application (i.e., the SCA protocol processor shown in FIG6 ), two different instruction pipeline controls are included through a superscalar pipeline design method. The division of labor of each unit of the processor shown in FIG6 may include:
取指令单元从指令存储空间读取指令;The instruction fetch unit reads instructions from the instruction storage space;
指令解析单元对指令进行处理,判断该指令类型时CA操作指令还是DQ操作指令,然后按照指令类型分别发送给CA指令执行单元和DQ指令执行单元;The instruction parsing unit processes the instruction, determines whether the instruction type is a CA operation instruction or a DQ operation instruction, and then sends the instruction to the CA instruction execution unit and the DQ instruction execution unit respectively according to the instruction type;
如图6所示的处理器有两个执行单元可以并行执行,DQ指令执行单元,通过DQ总线物理层,向闪存颗粒发送数据;CA指令执行单元,通过CA总线物理层,向闪存颗粒发送命令、地址的配置数据;The processor shown in FIG6 has two execution units that can execute in parallel: a DQ instruction execution unit that sends data to the flash memory particles through the DQ bus physical layer; and a CA instruction execution unit that sends command and address configuration data to the flash memory particles through the CA bus physical layer.
如图6所示的处理器有两个写回单元可以并行执行,DQ写回单元:通过DQ总线物理层,从闪存颗粒读取数据,写入到主控芯片内部存储空间(即,如图6所示的数据存储空间);CA写回单元:通过CA总线物理层,从闪存颗粒读取配置、ID等数据信息,写入到主控芯片内部空间(即,如图6所示的数据存储空间)。The processor shown in FIG6 has two write-back units that can execute in parallel: a DQ write-back unit that reads data from flash memory particles through the DQ bus physical layer and writes it to the internal storage space of the main control chip (i.e., the data storage space shown in FIG6 ); and a CA write-back unit that reads configuration, ID and other data information from flash memory particles through the CA bus physical layer and writes it to the internal space of the main control chip (i.e., the data storage space shown in FIG6 ).
如图6所示的处理器中指令执行的流水线操作举例如下:An example of the pipeline operation of instruction execution in the processor shown in FIG6 is as follows:
应用层对闪存颗粒的操作在如图6所示的SCA协议处理器中按照指令执行。The operation of the application layer on the flash memory particles is executed according to the instructions in the SCA protocol processor shown in FIG6 .
处理器中指令按照取指令>指令解析>指令执行>写回,4级流水线执行。Instructions in the processor follow the order of instruction fetch > instruction parsing > instruction execution > write back, and are executed in a 4-stage pipeline.
处理器的指令可以分成CA总线操作和DQ总线操作两种类型。The processor's instructions can be divided into two types: CA bus operations and DQ bus operations.
指令执行阶段分别控制与闪存颗粒接口的CA总线和DQ总线。The instruction execution stage controls the CA bus and DQ bus that interface with the flash memory particles respectively.
写回操作读取闪存颗粒的数据或者配置信息,写入到主控芯片的数据存储空间,有的指令不需要写回。The write-back operation reads the data or configuration information of the flash memory particles and writes them to the data storage space of the main control chip. Some instructions do not need to be written back.
在本申请实施例提供的处理器中,指令存储空间与应用层控制进行交互,数据存储空间与数据通路进行交互。数据存储空间中保存的数据,不涉及到处理器自身的,可以写回数据通路。在DQ指令执行的过程中,可以先考虑从数据存储空间读取数据,数据存储空间无法提供,再通过数据存储空间从数据通路进行读取。数据存储空间还保存CA指令写回的数据信息,以便指令解析单元读取,若指令解析单元需要上一次指令的执行结果时。In the processor provided in the embodiment of the present application, the instruction storage space interacts with the application layer control, and the data storage space interacts with the data path. The data stored in the data storage space, which does not involve the processor itself, can be written back to the data path. During the execution of the DQ instruction, you can first consider reading data from the data storage space. If the data storage space cannot provide it, then read it from the data path through the data storage space. The data storage space also stores the data information written back by the CA instruction so that the instruction parsing unit can read it if the instruction parsing unit needs the execution result of the previous instruction.
此外,在本申请实施例提供的处理器中,可以使用通用的指令架构,例如图2所示的指令架构。基于图2所示的指令格式,所述处理器可以控制DQ总线与CA总线上的指令是否可以并行执行,即指令间是否有排斥关系,还可以控制每个指令在IO接口上的波形行为,发送/接收的数据和行为。In addition, in the processor provided in the embodiment of the present application, a general instruction architecture can be used, such as the instruction architecture shown in Figure 2. Based on the instruction format shown in Figure 2, the processor can control whether the instructions on the DQ bus and the CA bus can be executed in parallel, that is, whether there is an exclusive relationship between the instructions, and can also control the waveform behavior of each instruction on the IO interface, the data sent/received and the behavior.
为了更好地理解本申请实施例提供的指令处理的方法,现进行举例,需了解的是,举例并非限制。In order to better understand the instruction processing method provided in the embodiments of the present application, examples are given. It should be understood that the examples are not limitations.
图7为本申请实施例提供的目标指令的处理过程的架构图。如图7所示,在本申请实施例提供的目标指令的处理过程中,由图1-1或图1-2任一图所示的处理器按照指令顺序以及双指令流水线依次执行以下指令A~I。Figure 7 is an architecture diagram of the processing process of the target instruction provided in the embodiment of the present application. As shown in Figure 7, in the processing process of the target instruction provided in the embodiment of the present application, the processor shown in any one of Figures 1-1 or 1-2 executes the following instructions A~I in sequence according to the instruction sequence and the dual instruction pipeline.
指令B、F是数据传输指令(DQ指令),在DQ总线(BUS)上进行传输。其中B是读数据指令,需要写回DQ BUS数据;F是写数据指令,不需要写回。Instructions B and F are data transmission instructions (DQ instructions) and are transmitted on the DQ bus (BUS). B is a read data instruction and needs to write back the DQ BUS data; F is a write data instruction and does not need to write back.
指令A、C、D、E、H、I指令是命令、地址相关指令(CA指令),在CA BUS上进行传输。其中H是通过CA BUS读状态指令,需要写回CA BUS数据;其他指令只需要发送CA 信号,不需要写回数据。Instructions A, C, D, E, H, and I are command and address related instructions (CA instructions) and are transmitted on the CA BUS. Among them, H is a status read instruction through the CA BUS and needs to write back the CA BUS data; other instructions only need to send CA signals and do not need to write back data.
由于指令B与指令C所需接口BUS资源不冲突,这两个指令可以并行执行;Since the interface BUS resources required by instruction B and instruction C do not conflict, these two instructions can be executed in parallel;
由于指令F与指令H所需接口BUS资源不冲突,这两个指令可以并行执行;Since the interface BUS resources required by instruction F and instruction H do not conflict, these two instructions can be executed in parallel;
A、B、D命令分别是DIE 1的指令;这3个操作可以依次执行,不能并行执行。但是B在DQ BUS执行过程中,可以执行C–DIE2的CA BUS操作。A, B, and D are the instructions of DIE 1 respectively; these three operations can be executed sequentially but not in parallel. However, B can execute the CA BUS operation of C–DIE2 during the DQ BUS execution.
E、F、I命令分别是DIE n的指令;这3个操作可以依次执行,不能并行执行。但是F在DQ BUS执行过程中,可以执行H–DIE m的CA BUS操作。E, F, and I commands are the instructions of DIE n respectively; these three operations can be executed sequentially but not in parallel. However, F can execute the CA BUS operation of H–DIE m during the DQ BUS execution.
具体地,在第一个时钟周期(上下两个虚线行内可以理解为一个时钟周期)内,所述处理器的取指令单元获取DIE 1的数据传输开始命令A。Specifically, in the first clock cycle (the upper and lower dashed lines can be understood as one clock cycle), the instruction fetch unit of the processor obtains the data transmission start command A of DIE 1.
在第二个时钟周期内,所述处理器的取指令单元获取DIE 1数据读传输指令B,所述处理器的指令解析单元获取取指令单元在第一个时钟周期内获取的指令A。In the second clock cycle, the instruction fetch unit of the processor obtains the DIE 1 data read transfer instruction B, and the instruction parsing unit of the processor obtains the instruction A obtained by the instruction fetch unit in the first clock cycle.
在第三个时钟周期内,所述处理器的取指令单元获取DIE 2命令+地址C,所述处理器的指令解析单元获取取指令单元在第二个时钟周期内获取的指令B,所述第二指令流水线的CA指令执行单元执行A指令。In the third clock cycle, the instruction fetch unit of the processor obtains the DIE 2 command + address C, the instruction parsing unit of the processor obtains the instruction B obtained by the instruction fetch unit in the second clock cycle, and the CA instruction execution unit of the second instruction pipeline executes the A instruction.
在第四个时钟周期内,所述处理器的取指令单元获取DIE 1数据传输结束指令D,所述处理器的指令解析单元获取取指令单元在第三个时钟周期内获取的指令C,所述第一指令流水线的DQ指令执行单元执行指令B,所述CA总线获取DIE 1数据传输开始指令(即SCE)。In the fourth clock cycle, the instruction fetch unit of the processor obtains the DIE 1 data transmission end instruction D, the instruction parsing unit of the processor obtains the instruction C obtained by the instruction fetch unit in the third clock cycle, the DQ instruction execution unit of the first instruction pipeline executes instruction B, and the CA bus obtains the DIE 1 data transmission start instruction (i.e., SCE).
如此,通过一种异构流水线超标量的处理器设计方法,实现了SCA协议的控制。实现对闪存颗粒接口CA总线和DQ总线的同步控制,两个总线上的传输可以并行执行。Thus, the control of the SCA protocol is realized through a heterogeneous pipeline superscalar processor design method. The synchronous control of the CA bus and the DQ bus of the flash memory particle interface is realized, and the transmission on the two buses can be executed in parallel.
在本申请实施例中,通过处理器方式实现将应用层控制转换为NAND芯片IO接口的SCA协议波形;增加灵活性,可以通过指令存储空间适配标准协议以及各种厂家的存储芯片(Flash)自定义命令。通过超标量设计方法,拥有两个异构流水线,分别处理CA总线和DQ总线的控制,可以实现两个总线上信号传输并行执行。由于两个流水线共用取指令、指令解析单元,可以减少处理器的硬件面积。同时,同一个处理器控制CA总线和DQ总线行为,可以更加容易的控制这两个总线间指令操作相互排斥的关系。并且在本申请实施例中,通过通用的指令架构,用于控制CA总线和DQ总线的执行行为(波形)、数据、并行或排斥操作等。In an embodiment of the present application, the application layer control is converted into the SCA protocol waveform of the NAND chip IO interface by means of a processor; to increase flexibility, the standard protocol and custom commands of storage chips (Flash) of various manufacturers can be adapted through the instruction storage space. Through the superscalar design method, two heterogeneous pipelines are provided to handle the control of the CA bus and the DQ bus respectively, so that the signal transmission on the two buses can be executed in parallel. Since the two pipelines share the instruction fetch and instruction parsing units, the hardware area of the processor can be reduced. At the same time, the same processor controls the behavior of the CA bus and the DQ bus, which can more easily control the mutually exclusive relationship between the instruction operations of the two buses. And in an embodiment of the present application, a general instruction architecture is used to control the execution behavior (waveform), data, parallel or exclusive operations of the CA bus and the DQ bus.
通过本申请实施例提供的处理处理目标指令,还具有以下优势:1.可以同步控制DQ总线和CA总线行为:IO操作间是否可以并行执行,两个BUS间行为排斥关系。2.使用处理器方式,可以灵活指定命令/地址和数据发送的序列和时序,可以支持各种灵活的闪存操作;更灵活的适配不同厂家的各种操作命令。3.使用超标量设计方法,相对于使用两个独立的处理器分别控制CA总线和DQ总线的方案,只增加了一个执行单元和一个写回单元,资源面积比较少。The processing target instruction provided by the embodiment of the present application also has the following advantages: 1. The behavior of the DQ bus and the CA bus can be controlled synchronously: whether IO operations can be executed in parallel, and the behavior of the two BUS is exclusive. 2. Using the processor method, the sequence and timing of command/address and data transmission can be flexibly specified, and various flexible flash memory operations can be supported; more flexible adaptation to various operation commands from different manufacturers. 3. Using the superscalar design method, compared with the solution of using two independent processors to control the CA bus and the DQ bus respectively, only one execution unit and one write-back unit are added, and the resource area is relatively small.
本申请实施例还提供一种计算机可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。An embodiment of the present application also provides a computer-readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, the various processes of the above-mentioned method embodiment are implemented and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
其中,所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等。The readable storage medium includes a computer-readable storage medium, such as a computer read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。An embodiment of the present application provides a computer program product, which is stored in a storage medium. The program product is executed by at least one processor to implement the various processes of the above-mentioned method embodiment and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。It should be noted that, in this article, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises one..." does not exclude the presence of other identical elements in the process, method, article or device including the element. In addition, it should be noted that the scope of the method and device in the embodiment of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved, for example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM/RAM, a disk, or an optical disk), and includes a number of instructions for enabling a terminal (which can be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods described in each embodiment of the present application.
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410782583.1A CN118349286B (en) | 2024-06-18 | 2024-06-18 | Processor, instruction processing device, electronic equipment and instruction processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410782583.1A CN118349286B (en) | 2024-06-18 | 2024-06-18 | Processor, instruction processing device, electronic equipment and instruction processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118349286A true CN118349286A (en) | 2024-07-16 |
CN118349286B CN118349286B (en) | 2024-09-10 |
Family
ID=91823587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410782583.1A Active CN118349286B (en) | 2024-06-18 | 2024-06-18 | Processor, instruction processing device, electronic equipment and instruction processing method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118349286B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118885216A (en) * | 2024-09-29 | 2024-11-01 | 联芸科技(杭州)股份有限公司 | Instruction scheduling device and method |
CN119473956A (en) * | 2025-01-15 | 2025-02-18 | 联芸科技(杭州)股份有限公司 | Storage device controller and instruction scheduling method |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102144225A (en) * | 2008-05-29 | 2011-08-03 | 阿克西斯半导体有限公司 | Method & apparatus for real-time data processing |
CN107391400A (en) * | 2017-06-30 | 2017-11-24 | 中国科学院计算技术研究所 | A kind of memory expanding method and system for supporting complicated access instruction |
CN110968346A (en) * | 2018-09-28 | 2020-04-07 | 英特尔公司 | System for executing instructions for fast element unpacking into two-dimensional registers |
CN114253461A (en) * | 2020-09-24 | 2022-03-29 | 成都忆芯科技有限公司 | Mixed channel storage device |
CN115017543A (en) * | 2022-06-08 | 2022-09-06 | 南京英锐创电子科技有限公司 | Flash memory data reading method and device, computer equipment and storage medium |
WO2023035413A1 (en) * | 2021-09-08 | 2023-03-16 | 长鑫存储技术有限公司 | Read and write test method and apparatus, computer storage medium, and electronic device |
CN116560564A (en) * | 2023-03-27 | 2023-08-08 | 超聚变数字技术有限公司 | Data processing method, flash memory and storage device |
CN117215651A (en) * | 2023-09-20 | 2023-12-12 | 成都宏熠电子科技有限公司 | Instruction control device, method, electronic device, and readable storage medium |
CN117270771A (en) * | 2023-09-19 | 2023-12-22 | 平头哥(上海)半导体技术有限公司 | Acceleration unit, storage control chip, solid state disk and data reading method |
CN117873568A (en) * | 2023-12-28 | 2024-04-12 | 深圳大普微电子股份有限公司 | SSD controller, solid state disk and data processing method |
CN117931294A (en) * | 2024-03-22 | 2024-04-26 | 芯来智融半导体科技(上海)有限公司 | Instruction processing apparatus and processing system |
-
2024
- 2024-06-18 CN CN202410782583.1A patent/CN118349286B/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102144225A (en) * | 2008-05-29 | 2011-08-03 | 阿克西斯半导体有限公司 | Method & apparatus for real-time data processing |
CN107391400A (en) * | 2017-06-30 | 2017-11-24 | 中国科学院计算技术研究所 | A kind of memory expanding method and system for supporting complicated access instruction |
CN110968346A (en) * | 2018-09-28 | 2020-04-07 | 英特尔公司 | System for executing instructions for fast element unpacking into two-dimensional registers |
CN114253461A (en) * | 2020-09-24 | 2022-03-29 | 成都忆芯科技有限公司 | Mixed channel storage device |
WO2023035413A1 (en) * | 2021-09-08 | 2023-03-16 | 长鑫存储技术有限公司 | Read and write test method and apparatus, computer storage medium, and electronic device |
CN115017543A (en) * | 2022-06-08 | 2022-09-06 | 南京英锐创电子科技有限公司 | Flash memory data reading method and device, computer equipment and storage medium |
CN116560564A (en) * | 2023-03-27 | 2023-08-08 | 超聚变数字技术有限公司 | Data processing method, flash memory and storage device |
CN117270771A (en) * | 2023-09-19 | 2023-12-22 | 平头哥(上海)半导体技术有限公司 | Acceleration unit, storage control chip, solid state disk and data reading method |
CN117215651A (en) * | 2023-09-20 | 2023-12-12 | 成都宏熠电子科技有限公司 | Instruction control device, method, electronic device, and readable storage medium |
CN117873568A (en) * | 2023-12-28 | 2024-04-12 | 深圳大普微电子股份有限公司 | SSD controller, solid state disk and data processing method |
CN117931294A (en) * | 2024-03-22 | 2024-04-26 | 芯来智融半导体科技(上海)有限公司 | Instruction processing apparatus and processing system |
Non-Patent Citations (1)
Title |
---|
段青亚;刘文平;刘佑宝;: "基于片内总线的系统芯片(SoC)硬件调试器", 电力电子, no. 06, 15 December 2008 (2008-12-15) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118885216A (en) * | 2024-09-29 | 2024-11-01 | 联芸科技(杭州)股份有限公司 | Instruction scheduling device and method |
CN119473956A (en) * | 2025-01-15 | 2025-02-18 | 联芸科技(杭州)股份有限公司 | Storage device controller and instruction scheduling method |
Also Published As
Publication number | Publication date |
---|---|
CN118349286B (en) | 2024-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN118349286B (en) | Processor, instruction processing device, electronic equipment and instruction processing method | |
CN113254368B (en) | Data writing method and reading method from AXI bus to OPB bus | |
CN102004709B (en) | Bus bridge between processor local bus (PLB) and advanced extensible interface (AXI) and mapping method | |
CN106775434A (en) | A kind of implementation method of NVMe networkings storage, terminal, server and system | |
JP6998991B2 (en) | Information processing methods and equipment | |
CN111414325B (en) | Method for converting Avalon bus into Axi4 bus | |
CN111651384A (en) | Register reading and writing method, chip, subsystem, register bank and terminal | |
CN107391400A (en) | A kind of memory expanding method and system for supporting complicated access instruction | |
CN115827524A (en) | Data transmission method and device | |
CN112749113A (en) | Data interaction method, system, device and medium | |
JP2002140379A (en) | Method and device for high-level synthesis | |
US20220365892A1 (en) | Accelerating Method of Executing Comparison Functions and Accelerating System of Executing Comparison Functions | |
CN105718396B (en) | A kind of I of big data master transmissions2C bus units and its means of communication | |
CN113703843B (en) | A register data processing method, device and memory | |
CN113360448B (en) | Data packet processing method and device | |
US20090138673A1 (en) | Internal memory mapped external memory interface | |
CN112799723A (en) | Data reading method and device and electronic equipment | |
US10958597B2 (en) | General purpose ring buffer handling in a network controller | |
CN115134427B (en) | Communication protocol coordination method, device, computer equipment and storage medium | |
JP2006293927A (en) | Direct memory access controller and system lsi including direct memory access controller | |
US12039294B2 (en) | Device and method for handling programming language function | |
CN120179592B (en) | Multi-slave control system, method, device, program product and storage medium | |
US11714608B2 (en) | Device and method for handling programming language function | |
JP2013242816A (en) | Dsp card and data transfer method | |
CN111143141B (en) | State machine setting method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40107640 Country of ref document: HK |