CN100383728C - 可执行等待及延后指令的程序地址运算器架构 - Google Patents

可执行等待及延后指令的程序地址运算器架构 Download PDF

Info

Publication number
CN100383728C
CN100383728C CNB2005100933245A CN200510093324A CN100383728C CN 100383728 C CN100383728 C CN 100383728C CN B2005100933245 A CNB2005100933245 A CN B2005100933245A CN 200510093324 A CN200510093324 A CN 200510093324A CN 100383728 C CN100383728 C CN 100383728C
Authority
CN
China
Prior art keywords
signal
address
program
instruction
program address
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.)
Active
Application number
CNB2005100933245A
Other languages
English (en)
Other versions
CN1920769A (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.)
YINGGUANG TECHNOLOGY CORP
Padauk Tech Co Ltd
Original Assignee
YINGGUANG TECHNOLOGY CORP
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 YINGGUANG TECHNOLOGY CORP filed Critical YINGGUANG TECHNOLOGY CORP
Priority to CNB2005100933245A priority Critical patent/CN100383728C/zh
Publication of CN1920769A publication Critical patent/CN1920769A/zh
Application granted granted Critical
Publication of CN100383728C publication Critical patent/CN100383728C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供一种可执行等待(wait)及延后(delay)指令的程序地址(program address)运算器架构,其将程序地址回馈至多任务器的输入端,可使程序增加一“wait”指令以执行等待的动作,此“wait”指令亦可以由增加一频率网关单元来控制;另外,一种“delay”指令将程序地址回馈至多任务器的输入端,并使用一累计器做为数个频率延迟的控制机制。因此本发明提供一种可执行等待及延后指令的程序地址运算器架构,可使程序精简容易撰写,有效避免程序的重复执行并且可以精准控制程序执行的时序,降低程序对事件发生的反应时间。

Description

可执行等待及延后指令的程序地址运算器架构
技术领域
本发明是有关一种微控制器的地址运算器架构,特别是有关一种可执行等待及延后指令的程序地址运算器架构。
背景技术
目前在计算机执行的汇编语言,最常执行的程序是按照一行一行指令执行,如以下程序所示:
move  ax,0x00;
move  bx,0x02;
add  ax,bx;
在一些情况下则需要有循环的执行,如以下程序所示:
       move  ax,0x20;
loopl:sub  ax,1;
       jnz loop1;
       nop;
或者是:
       move  cx,0x20;
       move  ax,0x30;
loop2:sub  ax,1;
       loopnz loop2;
       nop;
以上的程序写法为程序设计师经常使用的基本语法。
公知在目前所使用的地址运算器架构如图1所示,多任务器(multiplex)12从程序序列器(program sequencer)10接收选择讯号后,再从输入讯号选择相对应的程序地址(program address)当做下个程序地址,并传送至程序地址缓存器(program address register)14,当做程序地址,因此当程序在执行时,每一个指令只被执行一次,接着多任务器12选择下一个指令执行,当有循环要执行时会使用一些指令或是增加硬件的方式让指令被重复执行以检查特定状况是否发生,最常使用的方式是使用一个或数个计数缓存器(counter register)储存循环的次数,程序序列器10使用计数缓存器的输出结果找寻下一个指令执行。然而,此种执行指令的方式存在有下列缺点:(1)基于每一个指令执行完后立即执行下一个指令,若是在等待一些讯号或事件发生时,必需增加一些额外的指令来完成,其中一部份指令执行检查状况是否发生,一部份指令是将执行程序跳回到原来程序开始的部分而使得执行检查的指令能再重新跑(run)一遍;(2)因为检查指令只是检查循环程序的一部份,事件发生的时间点可能在循环程序内的任何指令,微控制器无法精确侦测事件发生的时间点,除了延迟对事件发生的响应时间外,对时序精准度的掌握亦大大的降低;(3)如果程序是用来作为一时间延迟的方式,一些多余的程序将会被执行,计数器需要被重写,并执行循环程序,假如延迟时间不是循环执行时间的整倍数就必须加入虚设码(dummy code),使得程序代码增加,当系统需要执行延迟的程序时,就会增加这些虚设码的执行运算;(4)在硬件执行上由于循环计数器使用额外的计数器与逻辑电路以实现其运算,因而增加了硬件的成本。
有鉴于此,本发明针对上述的问题,提出一种可执行等待及延后指令的程序地址运算器架构,可以避免程序因执行循环检查而产生的缺点,使得程序更为精简并简化微控制器缓存器的使用,且使程序可以很精准的依所需要的时序执行。
发明内容
本发明的主要目的在于提供一种可执行等待及延后指令的程序地址运算器架构,使得程序可以利用“wait”指令去等待外围讯号发生改变,而不需再写循环程序去检查某一讯号或状态的发生,如此不但可以简化程序的设计,并且可以降低程序对外围讯号变化所需的反应时间。
本发明的另一目的在于提供一种可执行等待及延后指令的程序地址运算器架构,程序可以利用“delay”指令去设定所需要的延长时序,而不需再写循环程序去递减或比较某一设定值,可避免在程序代码中增加一些虚设码(dummy code),并且可以准确的控制程序执行时所需各项动作的时序。
本发明的再一目的在于提供一种可执行等待及延后指令的程序地址运算器架构,其可使程序代码减少且使程序设计师可以很容易的以一指令完成传统架构需要数个程序代码才能完成的功能,并可更精准的掌控程序执行的时序。
为实现上述目的,本发明提供的一种可执行等待指令的程序地址运算器架构,其由一文字(word)作为在程序中表达指令执行的命令,该程序地址运算器架构包括:
一程序序列器(program sequencer),其接收一第一组讯号,从该第一组讯号中经判断并输出一选择讯号;
一多任务器(multiplex),其连接该程序序列器并接收该程序序列器输出的选择讯号,该多任务器亦接收一第二组讯号,并依该选择讯号从该第二组讯号中选择一讯号输出以作为一下个程序地址;以及
一程序地址缓存器,其连接该多任务器以接收该下个程序地址,并有一回路可将程序地址回传至该多任务器的输入端成为该第二组讯号中的讯号。
所述的可执行等待指令的程序地址运算器架构,其中该第一组讯号为数个电路单元输出的讯号。
所述的可执行等待指令的程序地址运算器架构,其中该等电路单元包括:指令译码器、微控制器状态、算数逻辑单元、以及等待的装置。
所述的可执行等待指令的程序地址运算器架构,其中该等待的装置为外围装置的讯号、外部输入频率、缓存器的内容或是内存的内容。
所述的可执行等待指令的程序地址运算器架构,其中该第二组讯号包括:该程序地址、下一个指令地址、指令位移地址、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址。
所述的可执行等待指令的程序地址运算器架构,其中该文字为“wait”。
依据本发明提供的一种可执行等待指令的程序地址运算器架构,其由一文字(word)作为在程序中表达指令执行的命令,该程序地址运算器架构包括:
一程序序列器(program sequencer),其接收一第一组讯号,从该第一组讯号中经判断并输出一选择讯号;
一频率网关单元,其系连接该程序序列器以接收该选择讯号,并同时接收一频率讯号,该频率网关单元最后输出一时序控制讯号;
一多任务器(multiplex),其可接收一第二组讯号,并从该第二组讯号中选择一讯号输出以作为一下个程序地址;以及
一程序地址缓存器,其连接该频率网关单元并接收该时序控制讯号,该程序地址缓存器亦连接该多任务器以接收该下个程序地址,最后依该时序控制讯号选择下个程序地址成为程序地址。
所述的可执行等待指令的程序地址运算器架构,其中该第一组讯号为数个电路单元输出的讯号。
所述可执行等待指令的程序地址运算器架构,其中该等电路单元包括:指令译码器、微控制器状态、算数逻辑单元、以及等待的装置。
所述可执行等待指令的程序地址运算器架构,其中该等待的装置为外围装置的讯号、外部输入频率、缓存器的内容或是内存的内容。
所述可执行等待指令的程序地址运算器架构,其中该第二组讯号包括:下一个指令地址、指令位移地址、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址。
所述的可使指令延后执行的运算器架构,其中该文字为“wait”。
依据本发明提供的一种可执行延后指令的程序地址运算器架构,其由一文字(word)作为在程序中表达指令执行的命令,该程序地址运算器架构包括:
一累计器(accumulator),其接受一指令输出数字讯号并接受递减结果;
一算数逻辑单元(ALU),其接受累计器数字讯号并递减一数值,输出该递减结果及运算结束讯号;
一程序序列器(program sequencer),其连接该算数逻辑单元以接收该运算结束讯号,另外接收一第一组讯号,从该第一组讯号中经判断并输出一选择讯号;
一多任务器(multiplex),其连接该程序序列器并接收该程序序列器输出的选择讯号,该多任务器可接收一第二组讯号,并从该第二组讯号中选择一讯号输出以作为下个程序地址;以及
一程序地址缓存器,其连接该多任务器以接收该下个程序地址成为程序地址,程序地址缓存器亦连接一多任务器,并经由一回路将该程序地址回传至该多任务器的输入端成为该第二组讯号中的讯号。
所述可执行延后指令的程序地址运算器架构,其中该累计器可为一缓存器。
所述可执行延后指令的程序地址运算器架构,其中该第一组讯号为数个电路单元输出的讯号。
所述可执行延后指令的程序地址运算器架构,其中该等电路单元包括:指令译码器、微控制器状态、以及算数逻辑单元。
所述可执行延后指令的程序地址运算器架构,其中该第二组讯号包括:该程序地址、下一个指令地址、指令位移地址、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址。
所述可执行延后指令的程序地址运算器架构,其中,该文字为“delay”。
依据本发明提供的一种可执行延后指令的程序地址运算器架构,其由一文字(word)作为在程序中表达指令执行的命令,该程序地址运算器架构包括:
一累计器(accumulator),其接受一指令输出数字讯号并接受递减结果;
一算数逻辑单元(ALU),其接受累计器数字讯号并递减一数值,输出该递减结果及运算结束讯号;
一程序序列器(program sequencer),其连接算数逻辑单元以接收该运算结束讯号,另外接收一第一组讯号,从该第一组讯号中经判断并输出一选择讯号;
一频率网关单元,其连接该程序序列器以接收该选择讯号,并同时接收一频率讯号,该频率网关单元最后输出一时序控制讯号;
一多任务器(multiplex),其连接该程序序列器并接收该程序序列器输出的选择讯号,该多任务器亦接收一第二组讯号,并从该第二组讯号中选择一讯号输出以作为下个程序地址;以及
-程序地址缓存器,其连接该频率网关单元并接收该时序控制讯号,该程序地址缓存器亦连接该多任务器以接收该下个程序地址成为程序地址,最后依该时序控制讯号选择下个程序地址成为程序地址。
所述可执行延后指令的程序地址运算器架构,其中该累计器可为-缓存器。
所述可执行延后指令的程序地址运算器架构,其中该第一组讯号为数个电路单元输出的讯号。
所述可执行延后指令的程序地址运算器架构,其中该等电路单元包括:指令译码器、微控制器状态、以及算数逻辑单元。
所述可执行延后指令的程序地址运算器架构,其中该第二组讯号包括:下一个指令地址、指令位移地址、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址。
所述可执行延后指令的程序地址运算器架构,其中该文字为“delay”。
附图说明
图1为公知的程序地址运算器架构。
图2为本发明可执行等待指令的程序地址运算器架构示意图。
图3为本发明另一种可执行等待指令的程序地址运算器架构示意图。
图4为本发明可执行延后指令的程序地址运算器架构示意图。
图5为本发明另一种可执行延后指令的程序地址运算器架构示意图。
具体实施方式
以下由具体实施例配合附图作式详加说明,当更容易了解本发明的目的、技术内容、特点及其所达成的功效。
本发明是由微控制器架构来执行等待及延后指令,在程序语言表达上使用文字(word)作为在程序中表达指令执行的命令,此微控制器架构可以使程序精准掌握微控制器执行的时序,简化程序设计以及避免重复执行循环程序以等待事件的发生。
请参阅图2为本发明可执行等待指令的程序地址运算器架构方块示意图,本发明包括一程序序列器(program sequencer)20可接收数个讯号,并从其中选择对应讯号输出以作为下个程序地址的选择讯号;一多任务器(multiplex)22连接程序序列器20并接收其输出的选择讯号,多任务器22可接收数个讯号,并依选择讯号从所接收的讯号中选择一讯号输出以作为下个程序地址;以及一程序地址缓存器24,其连接多任务器22以接收下个程序地址,输出程序地址供微控制器控制程序,并有一回路可将程序地址回传至多任务器22的输入端成为多任务器22的输入讯号。
其中,程序序列器20输入的讯号为数个电路单元输出的讯号,包括:指令译码器201、微控制器状态202、算数逻辑单元203、以及等待的装置(图2以外围装置来表示等待的装置,以简化),等待的装置可以为外围装置204的讯号、外部输入频率、缓存器的内容或是内存的内容;多任务器22输入的讯号包括:选择讯号、下一个指令地址(程序计数器+1)、指令位移地址(程序计数器+指令中的位移)、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址。
当使用上述架构时,在程序语言中加“wait”或等同功能的文字、符号的指令即可执行等待外围装置讯号变化的动作,在一般状况下多任务器22输出下个程序地址是由程序序列器20控制,控制的方式是由程序序列器20从各个输入讯号中,经判断并输出选择讯号,再将选择讯号输出至多任务器22即可决定多任务器22输出的讯号做为下个程序地址。下面程序代码所示为等待一外围装置IO port的bit 7(IO.7)输入讯号由“0”变为“1”:
wait1  IO.7;
a=b+c;
当IO.7为“1”的时候,程序序列器20选择“wait”之后的指令(a=b+c)执行(即程序计数器+1),在等待IO.7变成“1”之前,程序序列器20会选择程序地址缓存器24所回馈至多任务器22的程序地址当做下个程序地址,只要期待的事件没发生,执行的指令就停留在该指令上,如此使得撰写程序变得容易,程序较为精简,并且降低事件的反应时间。
请参阅图3所示为本发明另一种可执行等待指令的程序地址运算器架构示意图,包括:一程序序列器(program sequencer)30可接收数个讯号,并从其中选择一讯号输出以作为选择讯号;一频率网关单元36连接程序序列器30以接收其输出的选择讯号,并同时接收一频率讯号,频率网关单元36最后输出一时序控制讯号;一多任务器(multiplex)32连接程序序列器30以接收其输出的选择讯号,并同时接收数个讯号并从其中选择一讯号输出以作为下个程序地址;以及一程序地址缓存器34连接多任务器32以接收下个程序地址,并连接频率网关单元36以接收时序控制讯号,最后依时序控制讯号以控制程序地址缓存器是否由多任务器32输出的下个程序地址做更新动作,或是仍旧使用原有的程序地址当新的程序地址。
其中,程序序列器30输入的讯号为数个电路单元输出的讯号,包括:指令译码器301、微控制器状态302、算数逻辑单元303、以及等待的装置(图3以外围装置来表示等待的装置,以简化),等待的装置可以为外围装置304的讯号、外部输入频率、缓存器的内容或是内存的内容;多任务器32输入的讯号包括:选择讯号、下一个指令地址(程序计数器+1)、指令位移地址(程序计数器+指令中的位移)、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址。
根据上述架构,当使用“wait”指令时,可使得程序保持在等待事件发生的状态,待等待事件发生时,例如“wait”等待讯号变化“0->1”,再执行下一个指令,且事件可以是外围装置的讯号、外部输入频率、缓存器的内容或是内存的内容。
再者,请参阅图4为本发明可执行延后指令的程序地址运算器架构示意图,包括:一算数逻辑单元(ALU)403接受一数字讯号、执行递减一数值,并输出递减结果以及运算结束讯号至程序序列器40;一累计器(accumulator)47连接算数逻辑单元403、指令译码器401,累计器47接受指令译码器401的延后指令,输出一数字讯号至算数逻辑单元403并接受算数逻辑单元403输出的递减结果;一程序序列器(program sequencer)40连接算数逻辑单元403以接收运算结束讯号,另外接收数个讯号,并从其中选择对应讯号并输出选择讯号以作为选择下个程序地址的用;一多任务器(multiplex)42连接程序序列器40并接收其输出的选择讯号,并可接收数个讯号且依选择讯号选择一讯号输出以作为下个程序地址;以及一程序地址缓存器44连接多任务器42以接收下个程序地址,并有一回路可将程序地址回传至多任务器42的输入讯号。
其中,程序序列器40输入的讯号为数个电路单元输出的讯号,包括:指令译码器401、微控制器状态402、算数逻辑单元403;多任务器42输入的讯号包括:选择讯号、下一个指令地址(程序计数器+1)、指令位移地址(程序计数器+指令中的位移)、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址。另外,累计器47的功能也可以用缓存器来取代。
使用上述的结构,在程序语言中只需以“delay”即可执行延后程序代码的动作,其作为延迟数个频率之用,如下列程序代码所表示:
Assign A=100;//A is accumulator
Delay A;
C=E+F;
该结果为程序地址将停留在“Delay A”程序地址,等待100个微控制器运作的频率,然后再执行“C=E+F”指令。
若需要延迟不同的频率,在程序中只需以数字表示即可,执行延后指令且累计器47数值不为0时,运算结束讯号通知程序序列器40,并让多任务器42选择自程序地址缓存器44输出的程序地址当做下个程序地址,当累计器47的数值被递减至0时,运算结束讯号通知程序序列器40,并让多任务器42选择下个新指令(即C=E+F)。
请参阅图5所示为本发明另一种可执行延后指令的程序地址运算器架构示意图,包括:一累计器57接受一指令输出数字讯号并接受递减结果;一算数逻辑单元(ALU)503接受累计器57数字讯号并递减一数值,最后输出递减结果至累计器并输出一运算结束讯号;一程序序列器(programsequencer)50连接算数逻辑单元以接收运算结束讯号,另外接收数个电路单元输出的讯号,从其中经判断并输出一选择讯号;一频率网关单元56连接程序序列器50以接收选择讯号,并同时接收一频率讯号,频率网关单元56最后输出一时序控制讯号;一多任务器(multiplex)52连接程序序列器50并接收其输出的选择讯号,多任务器52亦接收下一个指令地址(程序计数器+1)、指令位移地址(程序计数器+指令中的位移)、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址等讯号,并从其中选择一讯号输出以作为下个程序地址;以及一程序地址缓存器54连接频率网关单元56以接收时序控制讯号,程序地址缓存器54亦连接多任务器52以接收下个程序地址成为程序地址,最后依时序控制讯号选择下个程序地址成为程序地址。其中,数个电路单元包括:指令译码器501、微控制器状态502、以及算数逻辑单元503。另外,累计器57功能也可以用缓存器来取代。
上述架构在程序语言是以“delay”或等同功能的文字、符号表示执行延后执行程序代码的动作,可延迟数个频率。
本发明利用上述的微控制器架构,使得程序在撰写时可以精简,尤其是帮助程序设计师避免使用循环来控制程序执行的时序以及时间的延迟。
以上所述审由实施例说明本发明的特点,其目的在使熟习该技术者能了解本发明的内容并据以实施,而非限定本发明的专利范围,故,凡其它未脱离本发明所揭示的精神所完成的等效修饰或修改,仍应包含在本发明的申请专利范围中。

Claims (12)

1.一种可执行等待指令的程序地址运算器架构,其由一文字作为在程序中表达指令执行的命令,该程序地址运算器架构包括:
一程序序列器,其接收一第一组讯号,从该第一组讯号中经判断并输出一选择讯号;该第一组讯号为数个电路单元输出的讯号,该数个电路单元包括以下之一或多者:指令译码器、微控制器状态、算数逻辑单元、以及等待的装置;
一多任务器,其连接该程序序列器并接收该程序序列器输出的选择讯号,该多任务器亦接收一第二组讯号,并依该选择讯号从该第二组讯号中选择一讯号输出以作为一下个程序地址;以及
一程序地址缓存器,其连接该多任务器以接收该下个程序地址,并有一回路可将程序地址回传至该多任务器的输入端成为该第二组讯号中的讯号;该第二组讯号包括以下之一或多者:该程序地址、下一个指令地址、指令位移地址、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址。
2.如权利要求1所述的可执行等待指令的程序地址运算器架构,其中该等待的装置为外围装置的讯号、外部输入频率、缓存器的内容或是内存的内容。
3.如权利要求1所述的可执行等待指令的程序地址运算器架构,其中该文字为“wait”。
4.一种可执行等待指令的程序地址运算器架构,其由一文字作为在程序中表达指令执行的命令,该程序地址运算器架构包括:
一程序序列器,其接收一第一组讯号,从该第一组讯号中经判断并输出一选择讯号;该第一组讯号为数个电路单元输出的讯号,该数个电路单元包括以下之一或多者:指令译码器、微控制器状态、算数逻辑单元、以及等待的装置;
一频率网关单元,其连接该程序序列器以接收该选择讯号,并同时接收一频率讯号,该频率网关单元最后输出一时序控制讯号;
一多任务器,其可接收一第二组讯号,并从该第二组讯号中选择一讯号输出以作为一下个程序地址;该第二组讯号包括以下之一或多者:下一个指令地址、指令位移地址、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址;以及
一程序地址缓存器,其连接该频率网关单元并接收该时序控制讯号,该程序地址缓存器亦连接该多任务器以接收该下个程序地址,最后依该时序控制讯号选择下个程序地址成为程序地址。
5.如权利要求4所述可执行等待指令的程序地址运算器架构,其中该等待的装置为外围装置的讯号、外部输入频率、缓存器的内容或是内存的内容。
6.如权利要求4所述的可使指令延后执行的运算器架构,其中该文字为“wait”。
7.一种可执行延后指令的程序地址运算器架构,其由一文字作为在程序中表达指令执行的命令,该程序地址运算器架构包括:
一累计器,其接受一指令输出数字讯号并接受递减结果;
一算数逻辑单元,其接受累计器数字讯号并递减一数值,输出该递减结果及运算结束讯号;
一程序序列器,其连接该算数逻辑单元以接收该运算结束讯号,另外接收一第一组讯号,从该第一组讯号中经判断并输出一选择讯号;该第一组讯号为数个电路单元输出的讯号,该数个电路单元包括以下之一或多者:指令译码器、微控制器状态、以及算数逻辑单元;
一多任务器,其连接该程序序列器并接收该程序序列器输出的选择讯号,该多任务器可接收一第二组讯号,并从该第二组讯号中选择一讯号输出以作为下个程序地址;该第二组讯号包括以下之一或多者:该程序地址、下一个指令地址、指令位移地址、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址;以及
一程序地址缓存器,其连接该多任务器以接收该下个程序地址成为程序地址,程序地址缓存器亦连接一多任务器,并经由一回路将该程序地址回传至该多任务器的输入端成为该第二组讯号中的讯号。
8.如权利要求7所述可执行延后指令的程序地址运算器架构,其中该累计器为一缓存器。
9.如权利要求7所述可执行延后指令的程序地址运算器架构,其中,该文字为“delay”。
10.一种可执行延后指令的程序地址运算器架构,其由一文字作为在程序中表达指令执行的命令,该程序地址运算器架构包括:
一累计器,其接受一指令输出数字讯号并接受递减结果;
一算数逻辑单元,其接受累计器数字讯号并递减一数值,输出该递减结果及运算结束讯号;
一程序序列器,其连接算数逻辑单元以接收该运算结束讯号,另外接收一第一组讯号,从该第一组讯号中经判断并输出一选择讯号;该第一组讯号为数个电路单元输出的讯号,该数个电路单元包括以下之一或多者:指令译码器、微控制器状态、以及算数逻辑单元;
一频率网关单元,其连接该程序序列器以接收该选择讯号,并同时接收一频率讯号,该频率网关单元最后输出一时序控制讯号;
一多任务器,其连接该程序序列器并接收该程序序列器输出的选择讯号,该多任务器亦接收一第二组讯号,并从该第二组讯号中选择一讯号输出以作为下个程序地址;该第二组讯号包括以下之一或多者:下一个指令地址、指令位移地址、指令中的目标地址、内存储存的目标地址、一般缓存器储存的地址、特殊缓存器储存的地址、以及储存中断命令的地址;以
一程序地址缓存器,其连接该频率网关单元并接收该时序控制讯号,该程序地址缓存器亦连接该多任务器以接收该下个程序地址成为程序地址,最后依该时序控制讯号选择下个程序地址成为程序地址。
11.如权利要求10所述可执行延后指令的程序地址运算器架构,其中该累计器为一缓存器。
12.如权利要求10所述可执行延后指令的程序地址运算器架构,其中该文字为“delay”。
CNB2005100933245A 2005-08-25 2005-08-25 可执行等待及延后指令的程序地址运算器架构 Active CN100383728C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100933245A CN100383728C (zh) 2005-08-25 2005-08-25 可执行等待及延后指令的程序地址运算器架构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100933245A CN100383728C (zh) 2005-08-25 2005-08-25 可执行等待及延后指令的程序地址运算器架构

Publications (2)

Publication Number Publication Date
CN1920769A CN1920769A (zh) 2007-02-28
CN100383728C true CN100383728C (zh) 2008-04-23

Family

ID=37778499

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100933245A Active CN100383728C (zh) 2005-08-25 2005-08-25 可执行等待及延后指令的程序地址运算器架构

Country Status (1)

Country Link
CN (1) CN100383728C (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1051995A (zh) * 1989-11-21 1991-06-05 德国Itt工业股份有限公司 数据驱动阵列处理器
CN1431584A (zh) * 2002-08-22 2003-07-23 智慧第一公司 延伸微处理器数据模式的装置及方法
CN1486465A (zh) * 2000-11-28 2004-03-31 奇普赖茨设计公司 单指令多数据路径处理器架构之条件程序处理

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1051995A (zh) * 1989-11-21 1991-06-05 德国Itt工业股份有限公司 数据驱动阵列处理器
CN1486465A (zh) * 2000-11-28 2004-03-31 奇普赖茨设计公司 单指令多数据路径处理器架构之条件程序处理
CN1431584A (zh) * 2002-08-22 2003-07-23 智慧第一公司 延伸微处理器数据模式的装置及方法

Also Published As

Publication number Publication date
CN1920769A (zh) 2007-02-28

Similar Documents

Publication Publication Date Title
US6721884B1 (en) System for executing computer program using a configurable functional unit, included in a processor, for executing configurable instructions having an effect that are redefined at run-time
US20190102179A1 (en) Processors and methods for privileged configuration in a spatial array
US7822958B1 (en) Booting mechanism for FPGA-based embedded system
US6725357B1 (en) Making available instructions in double slot FIFO queue coupled to execution units to third execution unit at substantially the same time
US20120144160A1 (en) Multiple-cycle programmable processor
US20130290693A1 (en) Method and Apparatus for the Automatic Generation of RTL from an Untimed C or C++ Description as a Fine-Grained Specialization of a Micro-processor Soft Core
US8271924B1 (en) Self-configuring components on a device
US8161444B1 (en) Allocating hardware resources for high-level language code sequences
CN104007954A (zh) 处理器和用于处理器的控制方法
US20010025363A1 (en) Designer configurable multi-processor system
US10289093B1 (en) Runtime adaptive generator circuit
US7028162B2 (en) Configurable processing block capable of interacting with external hardware
US5649174A (en) Microprocessor with instruction-cycle versus clock-frequency mode selection
CN100383728C (zh) 可执行等待及延后指令的程序地址运算器架构
US6327648B1 (en) Multiprocessor system for digital signal processing
US7953959B2 (en) Processor
US8761188B1 (en) Multi-threaded software-programmable framework for high-performance scalable and modular datapath designs
US20080126769A1 (en) Data processing with reconfigurable registers
US20040236929A1 (en) Logic circuit and program for executing thereon
US7162591B1 (en) Processor memory having a dedicated port
US8006074B1 (en) Methods and apparatus for executing extended custom instructions
KR20070109809A (ko) 반도체 집적회로와 그 테스트 방법
Mayer-Lindenberg High-level FPGA programming through mapping process networks to FPGA resources
US6233675B1 (en) Facility to allow fast execution of and, or, and test instructions
Li et al. The Kiel Esterel Processor-a semi-custom, configurable reactive processor

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