CN100368990C - 利用定时器控制异步计算的指令的方法 - Google Patents
利用定时器控制异步计算的指令的方法 Download PDFInfo
- Publication number
- CN100368990C CN100368990C CNB2005100617801A CN200510061780A CN100368990C CN 100368990 C CN100368990 C CN 100368990C CN B2005100617801 A CNB2005100617801 A CN B2005100617801A CN 200510061780 A CN200510061780 A CN 200510061780A CN 100368990 C CN100368990 C CN 100368990C
- Authority
- CN
- China
- Prior art keywords
- timer
- timing
- instruction
- register
- initial value
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
本发明公开了利用定时器控制异步计算的指令的方法。该方法步骤如下:1)对指令译码得到源和模式码;2)根据源确定定时器初值;3)根据模式码对定时器进行启动、停止、重置等操作;4)当定时器计时溢出,则产生异常信号报错。本发明具有结构简单、应用灵活的特点。在不添加额外模块的基础上,把本发明的定时控制装置嵌入到普通处理器的体系结构中,即可实现该定时控制指令;且本发明通过一条定时控制指令既可替代传统应用中需要多条指令才能实现的定时器操作。同时本发明解决了异步计算出错而不响应的问题,并可防止多地址空间块传输出错长时间不结束的情况。
Description
技术领域
本发明涉及用于多地址空间异步计算定时控制指令的方法及其装置。
背景技术
计算密集应用领域常采用主机-加速器结构来提高运算效率,主机与加速器之间存在大规模的数据传输,很容易因为传输通路出错而造成传输过程长时间不结束的情况。此外,若加速器中存在异步计算单元,则该单元异步计算也可能因为出错而导致长时间不输出计算结果和应答信号。对于此类常见出错问题的检测,通常是采用定时器编程来实现。然而定时器设置需要多条指令实现,在频繁使用定时器的应用中,显得比较繁复。
发明内容
本发明的目的在于针对现有技术的不足,提供一种适用于多地址空间异步计算定时控制指令的方法及其装置。
本发明的用于多地址空间异步计算定时控制指令的方法,其步骤如下:
1)利用指令译码器对定时控制指令进行译码,得到源和模式码;
2)确定定时器初值:
当源为寄存器地址时,据此对通用寄存器组进行寻址,并读取其中的数据作为定时器初值;
当源为立即数时,设该立即数为定时器初值;
3)根据模式码对定时器进行操作:
当模式码对应启动模式时,则把定时器初值存入定时寄存器,作为定时器计时初值,同时启动定时器;
当模式码对应停止模式时,则把定时器设置为非选通状态,终止计时;
当模式码对应重置模式时,则把定时寄存器中的前一次定时器初值重新写入定时器,开始新一轮计时;
4)当定时器计时溢出,则产生异常信号输出。
采用上述定时控制指令方法的控制装置包括指令译码器、定时控制单元、通用寄存器组、定时寄存器和定时器,指令译码器的输出端分别和定时控制单元、通用寄存器组以及定时寄存器的输入端相连,通用寄存器组的输出端和定时寄存器的第二个输入端相连,定时寄存器的输出端和定时器的输入端相连,由源为立即数的数据作为定时器的初值与定时寄存器内的定时器初值进行比较的定时器,指令译码器的输出端分别和定时控制单元、通用寄存器组以及定时寄存器的输入端相连,通用寄存器组的输出端和定时寄存器的第二个输入端相连,定时寄存器的输出端和定时器的输入端相连,定时器的溢出信号输出端和定时控制单元的另一输入端相连,定时控制单元的两个控制信号输出端分别和定时寄存器的第三个输入端以及定时器的第二个输入端相连,定时控制单元的另一个输出端为异常信号输出端。
本发明具有以下技术效果:
1.实现结构简单:可以在不添加额外模块的基础上,把本发明的定时控制装置嵌入到普通处理器的体系结构中,即可实现该定时控制指令。
2.应用灵活:采用一条定时控制指令替代传统应用中需要多条指令才能设置定时器的情况。
3.出错检测:通过定时控制指令定时,解决异步计算出错不响应的问题,同时也避免传输过程出错而导致长时间不结束的情况。
附图说明
图1是定时控制装置结构框图;
图2是多地址空间异步计算定时控制指令格式图;
图3是本发明的定时控制装置在主机-加速器多地址空间异步计算中的应用架构框图。
具体实施方式
下面结合附图详细说明本发明。
参照图1,本发明的利用定时器控制异步计算的指令方法的装置包括指令译码器1、定时控制单元2、通用寄存器组3、定时寄存器4和定时器5,指令译码器1的输出端分别和定时控制单元2、通用寄存器组3以及定时寄存器4的输入端相连,通用寄存器组3的输出端和定时寄存器4的第二个输入端相连,定时寄存器4的输出端和定时器5的输入端相连,定时器5的溢出信号输出端和定时控制单元2的另一输入端相连,定时控制单元2的两个控制信号输出端分别和定时寄存器4的第三个输入端以及定时器5的第二个输入端相连,定时控制单元2的另一个输出端为异常信号输出端。
定时指令的控制步骤如下:
1)由指令译码器1对定时控制指令进行译码,译码之后得到源和模式码;
2)确定定时器初值:
当源为寄存器地址时,根据其对通用寄存器组3进行寻址,并读取其中的数据作为定时器初值;当源为立即数时,则其即为定时器初值;
3)根据模式码对定时器5进行操作:
当模式码对应启动模式时,定时控制单元2把定时器初值存入定时寄存器4,并把定时器初值写入定时器5,作为定时器计时初值,同时启动定时器5;
当模式码对应停止模式时,定时控制单元2控制定时器5转入非选通状态,终止计时;
当模式码对应重置模式时,把定时寄存器4中的定时器初值重新写入定时器5,开始新一轮计时;
4)当定时器5计时溢出时,定时控制单元2响应该溢出,产生异常信号输出。
这里,所说的定时控制指令长度为32位(如图2所示),指令域包括操作码域、预留域、模式域和源域。其中,指令的第0位至第15位是源域,用以存放立即数或者寄存器地址;指令的第16位至第17位是模式域,用以存放2位定时器控制模式二进制码,分别对应3种模式——启动、停止和重置;指令的第18位至第26位是预留域,用于便于今后扩充该指令;指令的第27位至第31位是操作码域,用于标志该定时控制指令。
图3示出了本发明的定时控制装置在主机-加速器多地址空间异步计算中的应用架构框图。本发明的定时控制装置置于加速器架构里的协处理器10中。
协处理器需要控制实现不同地址空间之间的块数据传输,包括主存储器11和各分布存储器12之间、异步计算单元13和分布存储器12之间、不同的分布存储器12之间。上述块数据传输过程中的出错检测可以由本发明的定时控制指令来实现。在每次传输之前,通过本发明定时控制指令的启动模式,设置并启动定时器。如果数据传输成功完成,则在此过程中定时器没有减少到0,因此定时控制装置不会产生异常信号输出,且在下一次传输开始之前,会再次通过定时控制指令的启动模式,开始新一轮计时。若数据传输过程出错(某次传输因为通路原因不能完成而造成长时间等待),则当定时器溢出时,定时控制装置就会产生异常信号,输出到协处理器中的异常处理单元。
同时,本发明的定时控制指令还可用来检测由于异步计算单元计算出错而导致长时间不响应的情况。在每次计算开始之前,通过本发明定时控制指令的启动模式,设置并启动定时器。如果异步计算成功完成,则在此过程中定时器没有减少到0,因此定时控制装置不会产生异常信号输出,且在下一次异步计算开始之前,会再次通过定时控制指令的启动模式,开始新一轮计时。若异步计算过程出错(因为异步计算中某一步不能完成而造成长时间等待),则当定时器溢出时,定时控制装置就会产生异常信号,输出到协处理器中的异常处理单元。
在多地址空间块数据传输或者异步计算过程中,若有需要,还可以通过本发明的定时控制指令进行停止模式,来人为终止定时器计时。此外,还有重置模式来重新启动定时器开始新一轮计时,其计时初值即为前一次的定时器初值。
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
Claims (2)
1.利用定时器控制异步计算的指令的方法,其特征是采用包括指令译码器(1)、定时控制单元(2)、通用寄存器组(3)、定时寄存器(4)和定时器(5)的装置,指令译码器(1)的输出端分别和定时控制单元(2)、通用寄存器组(3)以及定时寄存器(4)的输入端相连,通用寄存器组(3)的输出端和定时寄存器(4)的第二个输入端相连,定时寄存器(4)的输出端和定时器(5)的输入端相连,定时器(5)的溢出信号输出端和定时控制单元(2)的另一输入端相连,定时控制单元(2)的两个控制信号输出端分别和定时寄存器(4)的第三个输入端以及定时器(5)的第二个输入端相连,定时控制单元(2)的另一个输出端为异常信号输出端,按以下步骤进行:
1)利用指令译码器对定时控制指令进行译码,得到源和模式码;
2)确定定时器初值:
当源为寄存器地址时,据此对通用寄存器组进行寻址,并读取其中的数据作为定时器初值;
当源为立即数时,设该立即数为定时器初值;
3)根据模式码对定时器进行操作:
当模式码对应启动模式时,则把定时器初值存入定时寄存器,作为定时器计时初值,同时启动定时器;
当模式码对应停止模式时,则把定时器设置为非选通状态,终止计时;
当模式码对应重置模式时,则把定时寄存器中的前一次定时器初值重新写入定时器,开始新一轮计时;
4)当定时器计时溢出,则产生异常信号输出。
2.根据权利要求1所述的利用定时器控制异步计算的指令的方法,其特征是所说的定时控制指令长度为32位,其中指令的第0位至第15位是用于存放立即数或者寄存器地址的源域,指令的第16位至第17位是用于存放启动、停止和重置3种定时器模式的二进制码的模式域,指令的第18位至第26位是预留扩充模式的预留域,指令的第27位至第31位是标志定时控制指令的操作码域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100617801A CN100368990C (zh) | 2005-12-02 | 2005-12-02 | 利用定时器控制异步计算的指令的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100617801A CN100368990C (zh) | 2005-12-02 | 2005-12-02 | 利用定时器控制异步计算的指令的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1776608A CN1776608A (zh) | 2006-05-24 |
CN100368990C true CN100368990C (zh) | 2008-02-13 |
Family
ID=36766152
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100617801A Expired - Fee Related CN100368990C (zh) | 2005-12-02 | 2005-12-02 | 利用定时器控制异步计算的指令的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100368990C (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5414829A (en) * | 1990-03-29 | 1995-05-09 | Intel Corporation | Override timing control circuitry and method for terminating program and erase sequences in a flash memory |
CN1229995A (zh) * | 1998-03-24 | 1999-09-29 | 日本电气株式会社 | 非易失性半导体存储器装置 |
CN1300005A (zh) * | 1999-12-13 | 2001-06-20 | 杭州华盛微电子有限公司 | 中央处理器或微控制器的数据相关判别及选择传递电路 |
-
2005
- 2005-12-02 CN CNB2005100617801A patent/CN100368990C/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5414829A (en) * | 1990-03-29 | 1995-05-09 | Intel Corporation | Override timing control circuitry and method for terminating program and erase sequences in a flash memory |
CN1229995A (zh) * | 1998-03-24 | 1999-09-29 | 日本电气株式会社 | 非易失性半导体存储器装置 |
CN1300005A (zh) * | 1999-12-13 | 2001-06-20 | 杭州华盛微电子有限公司 | 中央处理器或微控制器的数据相关判别及选择传递电路 |
Also Published As
Publication number | Publication date |
---|---|
CN1776608A (zh) | 2006-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1269029C (zh) | 流水线处理器的异常管理 | |
KR20060124598A (ko) | 기억 장치 | |
TWI242120B (en) | Method and apparatus for providing error correction within a register file of a CPU | |
JP4574994B2 (ja) | メモリ外付けマイコン | |
KR920005739B1 (ko) | 기억부(memoryunit)에 사용되는 부분기입 제어회로. | |
CN1327447C (zh) | 半导体存储装置及使用该器件的电子信息装置 | |
CN100368990C (zh) | 利用定时器控制异步计算的指令的方法 | |
US7742544B2 (en) | System and method for efficient CABAC clock | |
WO2017067038A1 (zh) | 半导体存储器操作方法 | |
US20110078387A1 (en) | Writing to memory using shared address buses | |
TWI657450B (zh) | 反及閘快閃記憶體的讀取方法 | |
JP2009238359A (ja) | 誤り訂正機能確認回路及び誤り訂正機能確認方法とそのコンピュータプログラム、並びに記憶装置 | |
JP2010224806A (ja) | コントローラ及び半導体記憶装置 | |
US6820191B2 (en) | Apparatus and method for executing an instruction with a register bit mask for transferring data between a plurality of registers and memory inside a processor | |
TWI783842B (zh) | 記憶體壞塊掃描方法及其電路系統 | |
CN100346291C (zh) | 多地址空间的块传输指令的控制方法及其装置 | |
CN113067581B (zh) | 解码系统、解码方法、电子设备及存储介质 | |
JP3211750B2 (ja) | 情報処理装置及びパイプライン処理方法 | |
JP2003223372A (ja) | メモリ制御装置及びシリアルメモリ | |
JPS60214043A (ja) | パイプライン制御回路 | |
CN118642759A (zh) | 指令执行方法、装置、计算机设备、可读存储介质和程序产品 | |
JP2000029508A (ja) | プログラマブルコントローラ | |
JPH09282302A (ja) | マイクロコンピュータ | |
TW201901444A (zh) | 反及閘快閃記憶體的讀取方法 | |
JPS61201363A (ja) | シングルチツプマイクロコンピユ−タ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080213 Termination date: 20111202 |