CN111831327A - 可执行指令的电子装置以及指令执行方法 - Google Patents
可执行指令的电子装置以及指令执行方法 Download PDFInfo
- Publication number
- CN111831327A CN111831327A CN201910310318.2A CN201910310318A CN111831327A CN 111831327 A CN111831327 A CN 111831327A CN 201910310318 A CN201910310318 A CN 201910310318A CN 111831327 A CN111831327 A CN 111831327A
- Authority
- CN
- China
- Prior art keywords
- storage device
- operation data
- processing circuit
- instruction
- read
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
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/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
Abstract
一种可执行指令的电子装置,包含:一处理电路;一第一储存装置,耦接处理电路,用以储存至少一指令以及第一运算资料;以及一第二储存装置,耦接处理电路。若处理电路自第一储存装置读取至少一指令以及对应被读取的指令的第一运算资料,且第二储存装置并未储存对应被读取的指令的第一运算资料,处理电路会将读取的第一运算资料备份至第二储存装置。
Description
技术领域
本发明有关于可执行指令的电子装置以及指令执行方法,特别有关于可增进运算资料读取效率的可执行指令的电子装置以及指令执行方法。
背景技术
习知技术中,处理器(processor)要执行指令(instruction)时,可能须要读取与指令相对应的运算资料或字面常量(literal constant)。读取字面常量和指令的请求通常是同时由处理器发出,然而,字面常量和指令通常储存在相同的储存装置,因此其读取动作可能会有所冲突,进而影响到指令的执行。
发明内容
本发明一目的为提供一种可执行指令的电子装置,其可改善习知技术中读取指令和字面常数的问题。
本发明另一目的为提供一种指令执行方法,其可改善习知技术中读取指令和字面常数的问题。
本发明一实施例公开一种可执行指令的电子装置,包含:一处理电路;一第一储存装置,耦接处理电路,用以储存至少一指令以及第一运算资料;以及一第二储存装置,耦接处理电路。若处理电路自第一储存装置读取至少一指令以及对应被读取的指令的第一运算资料,且第二储存装置并未储存对应被读取的指令的第一运算资料,处理电路会将读取的第一运算资料备份至第二储存装置。
本发明另一实施例公开一种指令执行方法,使用在包含一处理电路、一第一储存装置以及一第二储存装置的一电子装置上,包含:以处理电路自第一储存装置读取至少一指令以及对应被读取的指令的第一运算资料;以及判断第二储存装置是否储存对应被读取的指令的第一运算资料,若无则将读取的第一运算资料备份至第二储存装置。
根据前述实施例,可让指令与字面常数可储存在不同的储存装置,可改善习知技术中读取动作可能会有所冲突,因而影响到指令的执行的问题。
附图说明
图1绘示了根据本发明一实施例的电子装置的方块图;
图2和图3绘示了图1所示的电子装置的动作示意图;
图4绘示了根据本发明另一实施例的电子装置的方块图;
图5和图6绘示了根据本发明实施例的电子装置的较详细方块图。
符号说明:
100、500电子装置
101处理电路
SA_1第一储存装置
SA_2第二储存装置
SA_3第三储存装置
VR_1、VR_2变动储存区
FR_1、FR_2固定储存区
具体实施方式
以下将以多个实施例来说明本发明的内容。各实施例中的元件可藉由硬体实现(例如电路或装置),或是藉由韧体(例如在处理器中写入程序)来实现。此外,各实施例中的元件在不影响其功能的前提下,可分割为更多元件或是整合为更少元件。而且,本发明中的“第一”、“第二”等用语仅用以表示其为不同的元件或步骤,并非用以表示其顺序。
图1绘示了根据本发明一实施例的电子装置的方块图。如图1所示,电子装置100包含一处理电路101、一第一储存装置SA_1以及一第二储存装置SA_2。处理电路101分别耦接至第一储存装置SA_1以及第二储存装置SA_2。第一储存装置SA_1用以储存指令IN以及字面常量LC,而第二储存装置SA_2用以储存运算资料CD。指令IN包含至少一指令、字面常量LC包含至少一字面常量、运算资料CD包含至少一笔运算资料。在一实施例中,处理电路101为一处理器,而第一储存装置SA_1以及一第二储存装置SA_2可为任何储存功能的装置例如暂存器(register)、记忆体、光碟或硬碟。
图2和图3绘示了图1所示的电子装置的动作示意图。如图2所示,处理电路101欲执行指令IN_1时,会从第一储存装置SA_1读取指令IN_1,若执行读取指令IN_1时需要读取文字常量LC_1,处理电路101会确认第二储存装置SA_2中是否存有相对应指令IN_1的文字常量LC_1,若无则如图2所示般从第一储存装置SA_1读取相对应的文字常量LC_1,并将文字常量LC_1复制到第二储存装置SA_2。若执行读取指令IN_1时需要读取运算资料CD_1,处理电路101会从第二储存装置SA_2读取相对应指令IN_1的运算资料CD_1。执行指令IN_1、文字常量LC_1以及运算资料CD_1可以分别为执行指令IN、文字常量LC以及运算资料CD的一部份或全部。在一实施例中,执行读取指令IN_1时仅会需要读取文字常量LC_1和运算资料CD_1其中之一。
若第二储存装置SA_2中已存有相对应指令IN_1的文字常量LC_1,或者处理电路101于图2的动作后再一次的执行指令IN_1,则会如图3所示般从第一储存装置SA_1读取指令IN_1但从第二储存装置SA_2读取文字常量LC_1,而不是如图2所示从第一储存装置SA_1读取文字常量LC_1。在图3中,若执行读取指令IN_1时需要读取运算资料CD_1,处理电路101会从第二储存装置SA_2读取相对应指令IN_1的运算资料CD_1。
在一实施例中,运算资料CD为程式中的变数(variable)。以下程式码为指令IN、字面常量LC以及运算资料CD的一个例子,用以计算圆面积a。还请留意,指令IN、字面常量LC以及运算资料CD并不限于底下的例子。
Main(){
int r;
int a;
input r;
load r;
a=πr2
output
其中r为前述的运算资料CD,可因input值的不同而改变。int,input,load和output均为指令,而π为前述的字面常量,为固定值。
如前所述,第一储存装置SA_1和第二储存装置SA_2可为各种形态的储存装置。在一实施例中,第一储存装置SA_1和第二储存装置SA_2为快取记忆体,用以暂存来自其他储存装置的资料。图4绘示了根据本发明另一实施例的电子装置的方块图。如图4所示,第一储存装置SA_1和第二储存装置SA_2会耦接到一第三储存装置SA_3。第三储存装置SA_3的存取速度低于第一储存装置SA_1和第二储存装置SA_2的存取速度。举例来说,第一储存装置SA_1和第二储存装置SA_2为快取记忆体而第三储存装置SA_3为动态记忆体(DRAM)或是硬碟。第三储存装置SA_3可如图4般位于电子装置100内,但也可位于电子装置100外。
在处理电路101自第一储存装置SA_1读取指令IN中任一指令以及字面常量LC中任一字面常量前,处理电路101会从第三储存装置SA_3复制欲读取的指令以及欲读取的字面常量到第一储存装置SA_1。此外,在处理电路101自第二储存装置SA_2读取运算资料CD中任一运算资料前,处理电路101会从第三储存装置SA_3复制欲读取的运算资料到第二储存装置SA_2。也就是说,处理电路101会将部份资料先从第三储存装置SA_3暂存到第一储存装置SA_1或第二储存装置SA_2,以加快读取速度。
在一实施例中,第一储存装置SA_1和第二储存装置SA_2更包含多个储存区。如图5所示的实施例,电子装置500也包含第一储存装置SA_1和第二储存装置SA_2,第一储存装置SA_1包含变动储存区VR_1和固定储存区FR_1,而第二储存装置SA_2包含变动储存区VR_2和固定储存区FR_2。固定储存区FR_1储存固定的指令FIN以及字面常量FLC,变动储存区VR_1储存可变动的指令VIN。举例来说,当有新的指令要写入变动储存区VR_1且储存空间不足时,旧的指令会先被移除来释放储存空间。固定储存区FR_2储存固定的运算资料FCD,变动储存区VR_2储存可变动的运算资料VCD。举例来说,当有新的运算资料要写入变动储存区VR_2且储存空间不足时,旧的运算资料会先被移除来释放储存空间。若图5的结构使用在图2的实施例中,处理电路101会将读取的字面常量LC_1备份至变动储存区VR_2。
在一实施例中,第一储存装置SA_1和第二储存装置SA_2为快取记忆体,用以暂存来自其他储存装置的资料。图6绘示了根据本发明另一实施例的电子装置的方块图。如图6所示,第一储存装置SA_1的变动储存区VR_1和第二储存装置SA_2的变动储存区VR_2会耦接到第三储存装置SA_3。第三储存装置SA_3的存取速度低于第一储存装置SA_1和第二储存装置SA_2的存取速度。举例来说,第一储存装置SA_1和第二储存装置SA_2为快取记忆体而第三储存装置SA_3为动态记忆体(DRAM)或是硬碟。第三储存装置SA_3可如图4般位于电子装置100内,但也可位于电子装置100外。
在处理电路101自第一储存装置SA_1读取图1中的指令IN中任一指令以及图1中的字面常量LC中任一字面常量前,处理电路101会从第三储存装置SA_3复制欲读取的指令以及欲读取的字面常量到变动储存区VR_1。此外,在处理电路101自第二储存装置SA_2读取图1中的运算资料CD中任一运算资料前,处理电路101会从第三储存装置SA_3复制欲读取的运算资料到变动储存区VR_2。也就是说,处理电路101会将部份资料先从第三储存装置SA_3暂存到第一储存装置SA_1或第二储存装置SA_2,以加快读取速度。
前述的机制可运用在字面常量以外的运算资料,此类运算资料与前述的运算资料CD不同,因此根据前述实施例,本发明所提供的电子装置可简示为:
一种可执行指令的电子装置,包含:一处理电路(例如图1 101);一第一储存装置(例如图1SA_1),耦接处理电路,用以储存至少一指令(例如图1IN)以及第一运算资料(可为图1的字面常量LC或其他运算资料);以及一第二储存装置(例如图1SA_2),耦接处理电路。若处理电路自第一储存装置读取至少一指令以及对应被读取的指令的第一运算资料,且第二储存装置并未储存对应被读取的指令的第一运算资料,处理电路会将读取的第一运算资料备份至第二储存装置。第二储存装置可储存第二运算资料((可为图2的运算资料CD)。据此也可得到相对应的指令执行方法,其步骤依据前述实施例可轻易推得,故在此不再赘述。
根据前述实施例,可让指令与字面常数可储存在不同的储存装置,可改善习知技术中读取动作可能会有所冲突,因而影响到指令的执行的问题。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (10)
1.一种可执行指令的电子装置,包含:
一处理电路;
一第一储存装置,耦接所述处理电路,用以储存至少一指令以及第一运算资料;以及
一第二储存装置,耦接所述处理电路:
其中若所述处理电路自所述第一储存装置读取至少一所述指令以及对应被读取的所述指令的所述第一运算资料,且所述第二储存装置并未储存对应被读取的所述指令的所述第一运算资料,所述处理电路会将读取的所述第一运算资料备份至所述第二储存装置。
2.根据权利要求1所述的电子装置,其中所述处理电路若须再读取对应被读取的所述指令的所述第一运算资料,则从所述第二储存装置读取而不从所述第一储存装置读取。
3.根据权利要求1所述的电子装置,其中所述第二储存装置更用以储存第二运算资料,若所述处理电路自所述第一储存装置读取至少一所述指令,所述处理电路会从所述第二储存装置读取对应被读取的所述指令的所述第二运算资料。
4.根据权利要求3所述的电子装置,其中所述第一运算资料为字面常量。
5.根据权利要求3所述的电子装置,其中所述第二储存装置为一快取记忆体,在所述处理电路自所述第二储存装置读取所述第二运算资料前,所述处理电路从一第三储存装置复制所述指令到所述第一储存装置,其中所述第三储存装置的存取速度低于所述第二储存装置。
6.根据权利要求3所述的电子装置,其中所述第二储存装置包含一固定储存区以及一变动储存区,所述固定储存区储存固定的所述第二运算资料,所述变动储存区储存可变动的所述第二运算资料,所述处理电路会将读取的所述第一运算资料备份至所述第二储存装置中的所述变动储存区。
7.根据权利要求3所述的电子装置,其中所述处理电路同时从所述第二储存装置读取对应被读取的所述指令的所述第一运算资料以及所述第二运算资料。
8.根据权利要求1所述的电子装置,其中所述第一储存装置为一快取记忆体,在所述处理电路自所述第一储存装置读取所述指令以及所述第一运算资料前,所述处理电路从一第三储存装置复制所述指令以及所述第一运算资料到所述第一储存装置,其中所述第三储存装置的存取速度低于所述第一储存装置。
9.根据权利要求1所述的电子装置,其中所述第一储存装置包含一固定储存区以及一变动储存区,所述固定储存区储存固定的所述指令以及所述第一运算资料,所述变动储存区储存可变动的所述指令。
10.一种指令执行方法,使用在包含一处理电路、一第一储存装置以及一第二储存装置的一电子装置上,包含:
以所述处理电路自所述第一储存装置读取至少一指令以及对应被读取的所述指令的第一运算资料;以及
判断所述第二储存装置是否储存对应被读取的所述指令的所述第一运算资料,若无则将读取的所述第一运算资料备份至所述第二储存装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910310318.2A CN111831327A (zh) | 2019-04-17 | 2019-04-17 | 可执行指令的电子装置以及指令执行方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910310318.2A CN111831327A (zh) | 2019-04-17 | 2019-04-17 | 可执行指令的电子装置以及指令执行方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111831327A true CN111831327A (zh) | 2020-10-27 |
Family
ID=72915445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910310318.2A Pending CN111831327A (zh) | 2019-04-17 | 2019-04-17 | 可执行指令的电子装置以及指令执行方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111831327A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023016481A1 (zh) * | 2021-08-13 | 2023-02-16 | 华为技术有限公司 | 一种数据处理方法及相关装置 |
-
2019
- 2019-04-17 CN CN201910310318.2A patent/CN111831327A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023016481A1 (zh) * | 2021-08-13 | 2023-02-16 | 华为技术有限公司 | 一种数据处理方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7970806B2 (en) | Methods and apparatus for file management using partitioned file metadata | |
US7613870B2 (en) | Efficient memory usage in systems including volatile and high-density memories | |
US7383392B2 (en) | Performing read-ahead operation for a direct input/output request | |
RU2003119149A (ru) | Система и способ для предварительной выборки данных в кэш-памяти, основанной на интервале неудач | |
US7725646B2 (en) | Method of using a flash memory for a circular buffer | |
CN102543179A (zh) | 串行接口存储器中的同时读取与写入存储器操作 | |
CN101131671A (zh) | 控制对非易失性存储器的访问 | |
US11416256B2 (en) | Selectively performing ahead branch prediction based on types of branch instructions | |
US11494308B2 (en) | Methods and devices for bypassing the internal cache of an advanced DRAM memory controller | |
US20110119662A1 (en) | Method for updating firmware of embedded system | |
US20100205609A1 (en) | Using time stamps to facilitate load reordering | |
CN112181902B (zh) | 数据库的存储方法、装置及电子设备 | |
JP7425685B2 (ja) | 電子制御装置 | |
CN111831327A (zh) | 可执行指令的电子装置以及指令执行方法 | |
US8312216B2 (en) | Data processing apparatus and data processing method | |
US20150205721A1 (en) | Handling Reads Following Transactional Writes during Transactions in a Computing Device | |
US10430287B2 (en) | Computer | |
US7058938B2 (en) | Method and system for scheduling software pipelined loops | |
TWI707272B (zh) | 可執行指令的電子裝置以及指令執行方法 | |
EP1962184A1 (en) | Processor and method of performing speculative load operations of the processor | |
CN108984117B (zh) | 一种数据读写方法、介质及设备 | |
CN112684981B (zh) | 固态硬盘读操作记录方法、系统、装置及可读存储介质 | |
JP5487725B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
EP2434409A1 (en) | Processor and method thereof | |
JP2988048B2 (ja) | 辞書情報常駐アクセス装置 |
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 |