CN116501388A - 一种指令处理方法、装置、存储介质及设备 - Google Patents

一种指令处理方法、装置、存储介质及设备 Download PDF

Info

Publication number
CN116501388A
CN116501388A CN202310755621.XA CN202310755621A CN116501388A CN 116501388 A CN116501388 A CN 116501388A CN 202310755621 A CN202310755621 A CN 202310755621A CN 116501388 A CN116501388 A CN 116501388A
Authority
CN
China
Prior art keywords
data
processed
instruction
address
state information
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
Application number
CN202310755621.XA
Other languages
English (en)
Other versions
CN116501388B (zh
Inventor
黄海涛
江靖华
张坚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenliu Micro Intelligent Technology Shenzhen Co ltd
Original Assignee
Shenliu Micro Intelligent Technology Shenzhen Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenliu Micro Intelligent Technology Shenzhen Co ltd filed Critical Shenliu Micro Intelligent Technology Shenzhen Co ltd
Priority to CN202310755621.XA priority Critical patent/CN116501388B/zh
Publication of CN116501388A publication Critical patent/CN116501388A/zh
Application granted granted Critical
Publication of CN116501388B publication Critical patent/CN116501388B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明属于芯片开发技术领域,尤其涉及一种指令处理方法、装置、存储介质及设备。一种指令处理方法,包括以下步骤:从中央处理器核心获取原子指令;对原子指令进行译码,得到微指令及指令执行状态;根据待处理数据的地址、待处理数据状态信息的地址以及指令执行状态从存储装置中获取返回信息;根据返回信息及微指令得到结果数据,将结果数据传输至中央处理器核心。本发明通过上述步骤将原本放置在中央处理器核内部执行的原子指令放置在中央处理器核的外部进行处理,降低了中央处理器核心内逻辑的复杂度,减少中央处理器开发的复杂程度。

Description

一种指令处理方法、装置、存储介质及设备
技术领域
本发明属于芯片开发技术领域,尤其涉及一种指令处理方法、装置 、存储介质及设备。
背景技术
在现代社会中,芯片的应用场景越来越广泛,芯片的大小以及芯片的运行速度也日益成为使用者关注的焦点。
因此,如何提高芯片的运行速度也成为大部分芯片公司的研究重点。现有原子指令的处理,基本采用在中央处理器核心里面处理。但对于缺少能够执行原子指令的处理的中央处理器核心,要实现这一功能则需要添加译码执行部分,使得中央处理器核心内逻辑更加复杂。
发明内容
鉴于上述问题,本发明提供一种指令处理方法、装置、存储介质及设备,降低中央处理器核心执行指令的逻辑的复杂度。
本发明采用的技术方案为:一种指令处理方法,包括以下步骤:
从中央处理器核心获取原子指令;
对原子指令进行译码,得到微指令及指令执行状态;
根据待处理数据的地址、待处理数据状态信息的地址以及所述指令执行状态从存储装置中获取返回信息;
根据所述返回信息及所述微指令得到结果数据,将所述结果数据传输至所述中央处理器核心。
优选的,所述从中央处理器核心获取原子指令之前,包括:
获取并存储所述待处理数据的地址及所述待处理数据状态信息的地址。
优选的,所述从中央处理器核心获取原子指令,包括:
接收中央处理器核心传入的所述原子指令,并将所述原子指令存入程序存储器;
所述原子指令在程序存储器中排队等待处理。
优选的,所述程序存储器包括先进先出存储器。
优选的,所述存储装置包括缓存装置和主存装置;所述根据待处理数据的地址、待处理数据状态信息的地址以及所述指令执行状态从存储装置中获取返回信息,包括:
根据所述待处理数据的地址从所述缓存装置中获取待处理数据时,判断是否命中所述待处理数据;
若命中所述待处理数据,则获取所述缓存装置中的所述待处理数据,并根据所述待处理数据状态信息的地址和所述指令执行状态获取并更新所述待处理数据状态信息;
若未命中所述待处理数据,则从所述主存装置中获取所述待处理数据并根据所述待处理数据状态信息的地址获取所述待处理数据状态信息,且更新缓存装置中的所述待处理数据状态信息;
将所述待处理数据和所述待处理数据状态信息进行组合,得到所述返回信息。
优选的,所述若命中所述待处理数据,则获取所述缓存装置中的所述待处理数据,并根据所述待处理数据状态信息的地址和所述指令执行状态获取并更新所述待处理数据状态信息,包括:
从缓存装置中获取所述待处理数据以及命中路;
根据所述命中路以及所述待处理数据状态信息的地址获取所述待处理数据状态信息;
若所述指令执行状态为修改或复制指令,则更新所述待处理数据状态信息,并更新所述主存装置中的所述待处理数据状态信息。
优选的,所述根据所述返回信息及所述微指令得到结果数据,将所述结果数据传输至所述中央处理器核心,包括:
判断所述返回信息中的所述待处理数据状态信息是否处于上锁状态;
若所述待处理数据状态信息为已上锁状态,则所述结果数据为数据已被占用;
若所述待处理数据状态信息为未上锁状态,则根据所述微指令处理所述返回信息中的所述待处理数据,并将处理后的数据作为所述结果数据;
将所述结果数据传输至所述中央处理器核心。
一种指令处理装置,包括:
原子指令操作模块,用于从中央处理器核心获取原子指令;还用于对原子指令进行译码,得到微指令及指令执行状态;
状态位控制模块,用于根据待处理数据的地址、待处理数据状态信息的地址以及所述指令执行状态从存储装置中获取返回信息;
所述原子指令操作模块还用于根据所述返回信息及所述微指令得到结果数据,将所述结果数据传输至所述中央处理器核心。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被中央处理器执行时,使得所述中央处理器执行如前所述方法的步骤。
一种计算机设备,包括存储器和中央处理器,所述存储器存储有计算机程序,所述计算机程序被所述中央处理器执行时,使得所述中央处理器执行如前所述方法的步骤。
采用本发明实施例,具有如下有益效果:
本发明通过从中央处理器核心获取原子指令,然后对原子指令进行译码,得到微指令及指令执行状态。再根据待处理数据的地址、待处理数据状态信息的地址以及所述指令执行状态从存储装置中获取返回信息。最后,根据所述返回信息及所述微指令得到结果数据,将所述结果数据传输至所述中央处理器核心。通过上述步骤将原本放置在中央处理器核内部执行的原子指令放置在中央处理器核的外部进行处理,降低了中央处理器核心内逻辑的复杂度,减少中央处理器开发的复杂程度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中指令处理流程图;
图2为一个实施例中指令处理装置结构图;
图3为一个实施例中指令处理系统结构示意图;
图4为一个实施例中计算机设备内部结构图。
以下结合附图和实施例对本发明作进一步的解释。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请提供的指令处理方法进行详细说明。
本申请提供一种指令处理方法。图1为一个实施例中指令处理流程图。如图1所示,包括以下步骤:
步骤S101:从中央处理器核心获取原子指令。
具体的,可以由中央处理器核心主动传输至指令处理方。也可以通过指令处理方动态轮询中央处理器核心,获取需要处理的原子指令。
指令处理方可以是包括具备存储、运算和控制单元的功能模块的计算机设备。
步骤S102:对原子指令进行译码,得到微指令及指令执行状态。
未经过译码的原子指令无法直接执行相关操作。通过对原子指令进行译码,将指令解析为操作码和操作数。操作码代表指令功能(微指令),操作数代表功能的输入和输出(指令执行状态)。根据操作码和操作数再对待处理数据进行处理。
步骤S103:根据待处理数据的地址、待处理数据状态信息的地址以及指令执行状态从存储装置中获取返回信息。
具体的,通过待处理数据的地址获取待处理数据,根据待处理数据状态信息的地址获取待处理数据状态信息。根据这两个条件判断微指令是否执行。而指令执行状态判断是否需要更新待处理数据的状态信息。最后根据待处理数据状态信息和待处理数据确定返回信息的具体内容。
步骤S104:根据返回信息及微指令得到结果数据,将结果数据传输至中央处理器核心。
根据返回信息中的待处理信息状态进行判断,然后对返回的数据根据微指令做相应处理,得到结果数据。最后将结果数据传输至中央处理器核心。
本申请通过与中央处理器核进行交互,获取指令信息,将原子指令放在核外进行处理。通过将原子指令放在核外进行处理,减少在中央处理器核实现指令的复杂步骤,降低了原子指令的开发设计的复杂度,减少了原子指令的开发时间,提高了开发效率。
在一个可实施的实施例中,从中央处理器核心获取原子指令之前,包括:
获取并存储待处理数据的地址及待处理数据状态信息的地址。
进一步的,可以由系统总线配置待处理数据的地址以及待处理数据状态信息的地址。通过系统总线配置待处理数据的地址以及待处理数据状态信息的地址,能够对应待处理数据的物理地址,提高待处理数据的获取效率,加快原子指令的处理速度。
在一个可实施的实施例中,从中央处理器核心获取原子指令,包括:
步骤S201:接收中央处理器核心传入的原子指令,并将原子指令存入程序存储器。
需要说明的是,程序存储器也称为指令存储器,主要用于存储计算机执行程序所需的指令代码。在程序存储器内,指令以二进制形式存储,并通过指向下一个指令的地址来决定程序的执行顺序。程序存储器通常具有较快的读取速度和大容量的存储空间。
在接收中央处理器核心传入的原子指令时,需要将原子指令暂存在程序存储器中。
步骤S202:原子指令在程序存储器中排队等待处理。
需要说明的是,存储器中的指令排列可能是无序的。因此,原子指令在程序存储器中等待处理时,需要按照特定的顺序进行排队。
可以根据原子指令的应用场景选择不同的存储器,使原子指令按照特定的顺序进行排队。还可以通过利用不同的队列对原子指令进行存储,使原子指令按照队列的要求进行排队。
在一个可实施的实施例中,程序存储器包括先进先出存储器。
具体的,先进先出存储器分为写入专用区和读取专用区。读操作与写操作可以异步进行,写入区上写入的数据按照写入的顺序从读取端的区中读出。根据此特性能够对连续的原子指令进行缓存,防止在进机和存储操作时丢失指令。
在一个可实施的实施例中,存储装置包括缓存装置和主存装置。根据待处理数据的地址、待处理数据状态信息的地址以及指令执行状态从存储装置中获取返回信息,包括:
步骤S301:根据待处理数据的地址从缓存装置中获取待处理数据时,判断是否命中待处理数据。
需要说明的是,缓存装置是内存控制器附近的高速存储器。在访问缓存装置中的数据时,无需执行磁盘访问或网络传输等较慢的操作,因此可以加速数据访问速度。如果在缓存装置中找到待处理数据,则将其视为命中。
步骤S302:若命中待处理数据,则获取缓存装置中的待处理数据,并根据待处理数据状态信息的地址和指令执行状态获取并更新待处理数据状态信息。
具体的,使用在缓存装置中找到待处理数据,则从缓存装置中获取待处理数据。从缓存装置中获取待处理数据减少了从主存装置获取数据的等待时间,从而减少了整个系统的延迟。
根据待处理数据状态信息的地址可以获取处理数据状态信息,区分当前待处理数据是否处于上锁状态。并且根据指令执行状态判断是否需要对待处理数据进行上锁,是否需要改变待处理数据状态信息。
步骤S303:若未命中待处理数据,则从主存装置中获取待处理数据并根据待处理数据状态信息的地址获取待处理数据状态信息,且更新缓存装置中的待处理数据状态信息。
进一步的,在缓存装置中未找到待处理数据,则从主存装置中获取待处理数据。通常会根据一些具有高命中率的缓存算法(例如LRU)来判断当前待处理数据是否需要将待处理数据存储在缓存装置中。
此时,还可以利用总线读回的方式将待处理数据状态信息从主存装置中读入到缓存装置中。如果待处理数据状态信息需要发生变化,则将变化后的待处理数据状态信息替换至静态随机存取存储器。在静态随机存取存储器中进行待处理数据待处理数据状态信息的替换操作。
在完成在静态随机存取存储器中进行待处理数据状态信息的替换操作后,则需要将待处理数据状态信息写回到主存装置中,以保持数据的一致性。
步骤S304:通过待处理数据状态信息的地址从主存装置中获取处理数据状态信息后,还需要将待处理数据和待处理数据状态信息进行组合,得到返回信息。
具体的,待处理数据状态信息为上锁时,则返回信息中待处理数据状态信息显示为已占用。待处理数据状态信息为解锁时,则返回信息中待处理数据状态信息显示为未上锁。
在一个可实施的实施例中,若命中待处理数据,则获取缓存装置中的待处理数据,并根据待处理数据状态信息的地址和指令执行状态获取并更新待处理数据状态信息,包括:
步骤S401:从缓存装置中获取待处理数据以及命中路。
具体的,命中路是缓存装置中组关联式映射的一种实现方式。它将缓存装置中的每个组按照相应的映射规则划分为多个缓存行,每个缓存行中包含多个字节的数据,同时也包含一个标志位以及若干控制位。
步骤S402:根据命中路以及待处理数据状态信息的地址获取待处理数据状态信息。
具体的,通过命中路以及待处理数据状态信息的地址中的组索引,从静态随机存取存储器对应的地方取回对应的待处理数据状态信息。
步骤S403:若指令执行状态为修改或复制指令,则更新待处理数据状态信息,并更新主存装置中的待处理数据状态信息。
具体的,如果指令执行状态为上锁操作,若原来没上锁,反馈数据给核和报告已上锁,然后上锁更新信息状态位到主存装置和静态随机存取存储器,若原来已经上锁,不做任何修改。
如果指令执行状态为复制操作,则将待处理数据解锁,因为先确保上锁成功再做操作,所以不会有解锁失败操作。复制操作会更新将状态信息更新到主存装置和静态随机存取存储器,将数据更新到缓存装置。
步骤S404:指令执行状态若为其他状态只会做相应操作任何将计算后的待处理数据更新到缓存装置中,待处理数据状态信息不做修改。
在一个可实施的实施例中,根据返回信息及微指令得到结果数据,将结果数据传输至中央处理器核心,包括:
判断返回信息中的待处理数据状态信息是否处于上锁状态。
若待处理数据状态信息为已上锁状态,则结果数据为数据已被占用。
需要说明的是,在指令执行状态为上锁操作时,若待处理数据状态信息为已上锁状态,则认认为待处理数据无法上锁,已经给其他核获得权限,结果数据为数据已被占用。
若待处理数据状态信息为未上锁状态,则根据微指令处理返回信息中的待处理数据,并将处理后的数据作为结果数据。
需要说明的是,在指令执行状态为上锁操作时,反馈的结果数据应是数据已上锁。指令执行状态不为上锁操作时,结果数据为按照微指令处理后的数据。
将结果数据传输至中央处理器核心。
具体的,将结果数据传输至中央处理器核心以完成对待处理数据的操作。
本申请还提供了一种指令处理装置。图2为一个实施例中指令处理装置结构图。如图2所示,指令处理装置包括:
原子指令操作模块,用于从中央处理器核心获取原子指令。还用于对原子指令进行译码,得到微指令及指令执行状态。
状态位控制模块,用于根据待处理数据的地址、待处理数据状态信息的地址以及指令执行状态从存储装置中获取返回信息。
原子指令操作模块还用于根据返回信息及微指令得到结果数据,将结果数据传输至中央处理器核心。
图3为一个实施例中指令处理系统结构示意图。如图3所示,指令处理系统包括上述的原子指令操作模块、状态位控制模块,还包括程序存储器、配置模块以及状态信息协议模块。
其中,原子指令操作模块还包括原子指令状态机,用于从中央处理器核心获取原子指令和返回结果数据。
程序存储器,用于接收中央处理器核心传入的原子指令以及原子指令操作模块返回的结果数据。
状态信息协议模块用于参与状态位控制模块与主存装置交互,获取主存装置中的待处理数据状态信息,并根据状态位控制模块的请求对主存装置中待处理数据状态信息进行修改。
配置模块用于由系统总线配置待处理数据的地址以及待处理数据状态信息的地址。
状态位控制模块包括数据信息状态机、存储器访问地址计算模块、缓存模块以及静态随机存取存储器。
数据信息状态机用于接收原子指令操作模块发送的原子指令解析后的请求内容并反馈待处理数据和待处理数据状态信息。
缓存模块用于从缓存装置中获取返回待处理数据以及命中状态。在没有命中时,通过AXI协议从主存装置中获取待处理数据。
存储器访问地址计算模块用于通过待处理数据的地址以及待处理数据状态信息的地址,计算待处理数据和待处理数据状态信息所在位置。
数据信息状态机还用于与状态信息协议模块进行交互,通过状态信息协议模块用AXI协议从主存装置获取待处理数据状态信息并根据指令执行状态对主存装置中的待处理数据状态信息进行修改。
基于图3的指令处理系统,指令处理方法具体包括:
原子指令操作模块从中央处理器核心获取原子指令,放置于程序存储器中,并对原子指令进行译码,得到微指令及指令执行状态,并将指令执行状态传输至状态位控制模块。
状态位控制模块从配置模块中获取待处理数据的地址、待处理数据状态信息的地址。然后状态位控制模块根据待处理数据的地址、待处理数据状态信息的地址以及指令执行状态从存储装置中获取返回信息,并将返回信息返回给原子指令操作模块。
原子指令操作模块根据状态位控制模块返回的返回信息及微指令得到结果数据,将结果数据传输至程序存储器排队。再从程序存储器传输至中央处理器核心。
在一个实施例中,提出了一种计算机可读存储介质,存储有计算机程序,计算机程序被中央处理器执行时实现上述指令处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,实现上述指令处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
图4为一个实施例中计算机设备内部结构图。该计算机设备具体可以是终端,也可以是服务器。如图4所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现指令处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行指令处理方法。本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种指令处理方法,其特征在于,包括以下步骤:
从中央处理器核心获取原子指令;
对原子指令进行译码,得到微指令及指令执行状态;
根据待处理数据的地址、待处理数据状态信息的地址以及所述指令执行状态从存储装置中获取返回信息;
根据所述返回信息及所述微指令得到结果数据,将所述结果数据传输至所述中央处理器核心。
2.根据权利要求1所述的方法,其特征在于,所述从中央处理器核心获取原子指令之前,包括:
获取并存储所述待处理数据的地址及所述待处理数据状态信息的地址。
3.根据权利要求1所述的方法,其特征在于,所述从中央处理器核心获取原子指令,包括:
接收中央处理器核心传入的所述原子指令,并将所述原子指令存入程序存储器;
所述原子指令在程序存储器中排队等待处理。
4.根据权利要求3所述的方法,其特征在于,所述程序存储器包括先进先出存储器。
5.根据权利要求1所述的方法,其特征在于,所述存储装置包括缓存装置和主存装置;所述根据待处理数据的地址、待处理数据状态信息的地址以及所述指令执行状态从存储装置中获取返回信息,包括:
根据所述待处理数据的地址从所述缓存装置中获取待处理数据时,判断是否命中所述待处理数据;
若命中所述待处理数据,则获取所述缓存装置中的所述待处理数据,并根据所述待处理数据状态信息的地址和所述指令执行状态获取并更新所述待处理数据状态信息;
若未命中所述待处理数据,则从所述主存装置中获取所述待处理数据并根据所述待处理数据状态信息的地址获取所述待处理数据状态信息,且更新缓存装置中的所述待处理数据状态信息;
将所述待处理数据和所述待处理数据状态信息进行组合,得到所述返回信息。
6.根据权利要求5所述的方法,其特征在于,所述若命中所述待处理数据,则获取所述缓存装置中的所述待处理数据,并根据所述待处理数据状态信息的地址和所述指令执行状态获取并更新所述待处理数据状态信息,包括:
从缓存装置中获取所述待处理数据以及命中路;
根据所述命中路以及所述待处理数据状态信息的地址获取所述待处理数据状态信息;
若所述指令执行状态为修改或复制指令,则更新所述待处理数据状态信息,并更新所述主存装置中的所述待处理数据状态信息。
7.根据权利要求5所述的方法,其特征在于,所述根据所述返回信息及所述微指令得到结果数据,将所述结果数据传输至所述中央处理器核心,包括:
判断所述返回信息中的所述待处理数据状态信息是否处于上锁状态;
若所述待处理数据状态信息为已上锁状态,则所述结果数据为数据已被占用;
若所述待处理数据状态信息为未上锁状态,则根据所述微指令处理所述返回信息中的所述待处理数据,并将处理后的数据作为所述结果数据;
将所述结果数据传输至所述中央处理器核心。
8.一种指令处理装置,其特征在于,包括:
原子指令操作模块,用于从中央处理器核心获取原子指令;还用于对原子指令进行译码,得到微指令及指令执行状态;
状态位控制模块,用于根据待处理数据的地址、待处理数据状态信息的地址以及所述指令执行状态从存储装置中获取返回信息;
所述原子指令操作模块还用于根据所述返回信息及所述微指令得到结果数据,将所述结果数据传输至所述中央处理器核心。
9.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被中央处理器执行时,使得所述中央处理器执行如权利要求1至7中任一项所述方法的步骤。
10.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
CN202310755621.XA 2023-06-26 2023-06-26 一种指令处理方法、装置、存储介质及设备 Active CN116501388B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310755621.XA CN116501388B (zh) 2023-06-26 2023-06-26 一种指令处理方法、装置、存储介质及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310755621.XA CN116501388B (zh) 2023-06-26 2023-06-26 一种指令处理方法、装置、存储介质及设备

Publications (2)

Publication Number Publication Date
CN116501388A true CN116501388A (zh) 2023-07-28
CN116501388B CN116501388B (zh) 2023-10-03

Family

ID=87325115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310755621.XA Active CN116501388B (zh) 2023-06-26 2023-06-26 一种指令处理方法、装置、存储介质及设备

Country Status (1)

Country Link
CN (1) CN116501388B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117555741A (zh) * 2024-01-10 2024-02-13 深流微智能科技(深圳)有限公司 基于uvm的原子指令模块验证系统、方法、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5950012A (en) * 1996-03-08 1999-09-07 Texas Instruments Incorporated Single chip microprocessor circuits, systems, and methods for self-loading patch micro-operation codes and patch microinstruction codes
US20050235134A1 (en) * 2002-08-07 2005-10-20 Mmagix Technology Limited Apparatus, method and system for a synchronicity independent, resource delegating, power and instruction optimizing processor
CN101354641A (zh) * 2008-08-20 2009-01-28 炬力集成电路设计有限公司 一种外部存储器的访问控制方法及访问控制装置
US20140181474A1 (en) * 2012-12-26 2014-06-26 Telefonaktiebolaget L M Ericsson (Publ) Atomic write and read microprocessor instructions
CN114816769A (zh) * 2022-06-08 2022-07-29 中科南京智能技术研究院 一种向量处理器处理方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5950012A (en) * 1996-03-08 1999-09-07 Texas Instruments Incorporated Single chip microprocessor circuits, systems, and methods for self-loading patch micro-operation codes and patch microinstruction codes
US20050235134A1 (en) * 2002-08-07 2005-10-20 Mmagix Technology Limited Apparatus, method and system for a synchronicity independent, resource delegating, power and instruction optimizing processor
CN101354641A (zh) * 2008-08-20 2009-01-28 炬力集成电路设计有限公司 一种外部存储器的访问控制方法及访问控制装置
US20140181474A1 (en) * 2012-12-26 2014-06-26 Telefonaktiebolaget L M Ericsson (Publ) Atomic write and read microprocessor instructions
CN114816769A (zh) * 2022-06-08 2022-07-29 中科南京智能技术研究院 一种向量处理器处理方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
汪湛等: "基于VxWorks的某伺服控制系统原子指令设计", 《机电工程技术》, vol. 45, no. 6, pages 99 - 102 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117555741A (zh) * 2024-01-10 2024-02-13 深流微智能科技(深圳)有限公司 基于uvm的原子指令模块验证系统、方法、设备及介质
CN117555741B (zh) * 2024-01-10 2024-04-26 深流微智能科技(深圳)有限公司 基于uvm的原子指令模块验证系统、方法、设备及介质

Also Published As

Publication number Publication date
CN116501388B (zh) 2023-10-03

Similar Documents

Publication Publication Date Title
US8751737B2 (en) Method and apparatus for using a shared ring buffer to provide thread synchronization in a multi-core processor system
CN110275841B (zh) 访问请求处理方法、装置、计算机设备和存储介质
US8095727B2 (en) Multi-reader, multi-writer lock-free ring buffer
KR100758367B1 (ko) 향상된 마이크로프로세서에서의 스케줄링을 강화시키는 방법 및 장치
US8458282B2 (en) Extended write combining using a write continuation hint flag
CN116501388B (zh) 一种指令处理方法、装置、存储介质及设备
US10782896B2 (en) Local instruction ordering based on memory domains
US8966484B2 (en) Information processing apparatus, information processing method, and storage medium
US20120030421A1 (en) Maintaining states for the request queue of a hardware accelerator
US11714801B2 (en) State-based queue protocol
US9164907B2 (en) Information processing apparatus, parallel computer system, and control method for selectively caching data
CN109241128B (zh) 一种过期事件自动触发方法及系统
KR20150079429A (ko) 캐시 미시들에 대한 프로세서 읽기 후 쓰기 해저드를 다루기 위한 장치 및 그것의 동작 방법
CN111124270A (zh) 缓存管理的方法、设备和计算机程序产品
US9384131B2 (en) Systems and methods for accessing cache memory
CN116361232A (zh) 片上缓存的处理方法、装置、芯片及存储介质
CN117573574B (zh) 一种预取方法、装置、电子设备及可读存储介质
CN116701246B (zh) 一种提升缓存带宽的方法、装置、设备及存储介质
US20170139744A1 (en) Systems and methods for frame presentation and modification in a networking environment
CN117194283A (zh) 基于risc-v指令集的向量读写指令的处理方法
CN113961298A (zh) 一种页面切换方法、装置、设备及介质
US20110083030A1 (en) Cache memory control device, cache memory device, processor, and controlling method for storage device
US8112584B1 (en) Storage controller performing a set of multiple operations on cached data with a no-miss guarantee until all of the operations are complete
CN114463162A (zh) 图像缓存处理方法、装置、电子设备以及存储介质
US20190034351A1 (en) Zero thrash cache queue manager

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