CN1215281A - 处理器 - Google Patents

处理器 Download PDF

Info

Publication number
CN1215281A
CN1215281A CN98117664.XA CN98117664A CN1215281A CN 1215281 A CN1215281 A CN 1215281A CN 98117664 A CN98117664 A CN 98117664A CN 1215281 A CN1215281 A CN 1215281A
Authority
CN
China
Prior art keywords
mentioned
signal
clock signal
arithmetic element
arithmetic
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
CN98117664.XA
Other languages
English (en)
Other versions
CN1157641C (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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN1215281A publication Critical patent/CN1215281A/zh
Application granted granted Critical
Publication of CN1157641C publication Critical patent/CN1157641C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

一种处理器设置运算控制器、运算单元、存储器。运算控制器,接受来自时钟信号控制器的非选通时钟信号,发布用于指定运算单元中使用资源的参数信号,同时微控制器发布运算启动信号,请求信号被触发。对应于该请求信号,时钟信号控制器分别向运算单元及存储器提供选通信号。运算控制器,判断运算单元提供的状态信号是否满足终了条件,在终了条件得到满足的情况下,将隔断请求信号。这样,停止向运算单元及存储器提供时钟信号。

Description

处理器
本发明涉及具有数据依存性的时钟脉冲选通功能的处理器。
众所周知,如果没有必要使处理器中的线路模块动作,可以使用时钟脉冲选通技术停止向线路模块提供时钟信号。以此,能降低处理器的消耗功率。
在专利特开平8-65496号公报中记载的图像处理装置中,有2个线路模块,对于不同的工作模式,至少中止向其中的一个线路模块提供时钟信号。至于是哪一种工作模式,由图像处理装置外部的工作模式信号来决定。
在专利特开平5-324871号公报中记载的微型计算机中,装备有中央处理器(CPU)及多种的外围硬件,其中在各外围硬件设备的内部,设计有核心部分及时钟控制器。由CPU选择的时间开始,在定时器所选定的时间间隔内,各时钟控制器才允许向核心部分提供时钟信号。
符合MPEG(Moving Picture Expert Group-动态影像协会)标准的图像编码器中,具备有实现动态预测、DCT(Discrete Cosine Transform-离散余弦变换)、量子化、可变长符号化等目的的各种运算单元。众所周知,各运算单元的处理时间依赖于图像数据。然而,在上述以往的图像处理装置以及微型计算机中,都没能够实现决定于数据的时钟脉冲选通。
本发明的目的是提供具有数据依存性的时钟脉冲选通功能的处理器。
为了实现这个目的,在本发明中,由运算控制器监视运算单元的工作状况,在该预算单元实际动作期间,才允许运算单元提供时钟信号。
具体而言,本发明所涉及的处理器,由运算单元、微控制器、运算控制器及时钟信号控制器构成。其中,运算单元对数据进行运算处理,该运算单元还具有提供描述运算处理状况的状态信号的功能。微控制器具有发布运算起始信号的功能。运算控制器接受到微控制器提供的运算起始信号,就触发请求信号,根据运算单元提供的状态信号来判断是否满足结束条件,一旦满足结束条件,就隔断请求信号。时钟信号控制器在请求信号被触发的情况下,向运算单元提供时钟信号使运算单元可以实施运算处理;在请求信号被隔断的情况下,停止向运算单元提供时钟信号。
根据本发明,运算单元所需要的运算处理时间是依赖于数据的。在运算处理提前结束的情况下,运算控制器就提前隔断请求信号。因而,时钟信号控制器就可以实现依赖于数据的时钟信号选通过程。
下面对附图进行简单说明。
图1、本发明所涉及处理器的构成实例的方块图。
图2、图1中第1线路模块的内部构成的方块图。
图3、图2中运算控制器的内部构成的方块图。
图4、图2中运算单元的内部构成的方块图。
图5、图1中第2线路模块的内部构成的方块图。
图6、图1中第3线路模块的内部构成的方块图。
图7、图1中时钟信号控制器的内部构成的方块图。
图8、图7中第1门电路的内部构成的方块图。
图9、图7中第2门电路的内部构成的方块图。
图10、本发明所涉及处理器的其它构成实例的方块图。
图11、图10中微控制器的内部构成的方块图。
图12、图10中第1线路模块的内部构成的方块图。
图13、图10中第2线路模块的内部构成的方块图。
图14、图10中第3线路模块的内部构成的方块图。
图15、图10中时钟信号控制器的内部构成的方块图。
图16、图15中第1门电路的内部构成的方块图。
图17、图11中电功率消耗的名细表的实例。
图18、图10中处理器的执行程序的实例。
图19、本发明所涉及处理器的又一个构成实例的方块图。
图20、图19中处理器的动作实例的流程图。
发明的详细说明
图1为本发明所涉及的处理器的构成例。图1中的处理器,由微控制器10,可以并行动作的第1、第2及第3线路模块100、200、300和时钟信号控制器400构成。INIT是提供给微控制器10的外部起始信号,SYSCLK是提供给微控制器10以及时钟信号控制器400的系统时钟信号。微控制器10可以由程序控制,运算起始信号INIT1及参数信号PRMTR1、运算起始信号INIT2及参数信号PRMTR2、运算起始信号INIT3及参数信号PRMTR3分别提供给第1线路模块100、第2线路模块200、第3线路模块300。第1线路模块100接受数据输入DIN,第3线路模块300提供数据输出DOUT。第2线路模块200将地址数据ADRS12和地址数据ADRS23分别提供给第1线路模块100和第3线路模块300。DATA12是由第1线路模块100传送给第2线路模块200的数据。DATA23是由第2线路模块200传送给第3线路模块300的数据。第1线路模块100将请求信号REQ1提供给时钟信号控制器400,而从时钟信号控制器400接受非选通时钟信号NGCLK1及选通时钟信号GCLKA1、GCLKM1。第2线路模块200将请求信号REQ2提供给时钟信号控制器400,而从时钟信号控制器400接受非选通时钟信号NGCLK2及选通时钟信号GCLKA2、GCLKM2。第3线路模块300将请求信号REQ3提供给时钟信号控制器400,而从时钟信号控制器400接受非选通时钟信号NGCLK3及选通时钟信号GCLKA3、GCLKM3。
图2所示的是图1中第1线路模块的内部构成。第1线路模块100,由运算控制器110、运算单元120及内存130构成。运算控制器110,接受来自微控制器10的信号INIT1及PRMTR1、来自时钟信号控制器400的信号NGCLK1,向时钟信号控制器400提供信号REQ1。此外,运算控制器110,向运算单元120提供参数设定信号PSET1,而从运算单元120接受状态信号STAT1。运算单元120,由外部接受DIN信号、由时钟控制器400接受GCLKA1信号,而向内存130提供地址数据ADRS11以及数据DATA11。内存130是,例如时钟同步SRAM(Static RandomAccess Memory一静态随机存取存储器),接受第2线路模块200的ADRS12信号及时钟信号控制器400的GCLKM1信号,向第2线路模块200提供DATA12。
图3所示的是图2中运算控制器110的内部构成。运算控制器110由解码器111、启动闩锁112、比较器113、逻辑门114、请求寄存器115构成。解码器111,接受来自微控制器10的INIT1及PRMTR1、来自请求寄存器115的REQ1、时钟信号控制器400的NGCLK1,向运算单元提供PSET1。另外,解码器111将终了条件信号ECOND1提供给比较器113。当REQ1为L(低)位时,INIT1和PRMTR1有效,解码器开始工作。启动闩锁112,由一段或复数段双稳态触发电路组成,将脉冲信号的INIT1对NGCLK1进行同步锁定。因而,在对应于触发电路的段数的NGCLK1的循环期间内,启动闩锁112的输出才为H(高)位。比较器113的输出,将运算单元120提供的STAT1和解码器111提供的ECOND1进行比较。比较器113的输出,在STAT1和ENCOD1一致的情况下,提供H电平;在STAT1和ENCOD1不一致的情况下,提供L电平。逻辑门电路114,在启动闩锁电路112的输出为H电平或比较器113的输出为L电平的情况下,将H电平信号提供给请求寄存器115;在不是这种情况下,将L电平信号提供给请求寄存器115。请求寄存器115,对和NGCLK1同步的逻辑门114的输出进行锁定处理。请求寄存器115的输出为REQ1。另外,在初始状态下,REQ1为L电平。
图4所示的是图2中运算单元120的内部构成。运算单元120,由第1运算器121、第2运算器122、地址生成器123、运算状况判断器124、控制寄存器125构成,上述构成件接受各时钟信号控制器400的GCLKA1信号。第1运算器121,从外部接受DIN,将运算结果提供给第2运算器122。第2运算器122将DATA11提供给内存130。当然,第1运算器121的运算结果也可以作为DATA11。地址生成器123,将ADRS11提供给内存130。运算状况判断器124,监视第1运算器121、第2运算器122以及地址生成器123的工作状况并将STAT1提供给运算控制器110。由运算控制器110提供的PSET1,包含关于运算单元120具备的复数资源中哪一种是应该使用的信息。控制寄存器125保存这些信息,并传送给第1运算器121、第2运算器122、地址生成器123以及运算状况判断器124。
图5所示的是图1中第2线路模块200的内部构成。第2线路模块200装备有运算控制器210、运算单元220、内存230。运算控制器210,接受来自微控制器10的INIT2和PRMTR2、来自时钟信号控制器400的NGCLK2,并向时钟信号控制器400提供REQ2。另外,运算控制器210,将参数设定信号PSET2供给运算单元220,接受来自运算220的状态信号STAT2。运算单元220,接受来自第1线路模块100的DATA12、来自时钟信号控制器400的GCLKA2,并向第1线路模块100提供ADRS12。此外,运算单元220,分别向内存230提供地址ADRS22、向第3线路模块300提供ADRS23及DATA23,并和内存230交换数据DATA22。内存230,例如是时钟同步的SRAM,接受来自时钟信号控制器400的GCLKM2。运算控制器210及运算单元220各自的内部构成,分别和图3以及图4中所示的一样。但是,在运算单元220中,装备有3个地址生成器。
图6所示的是图1中第3线路模块300的内部构成。第3线路模块300装备有运算控制器310、运算单元320、内存330。运算控制器310,接受来自微控制器10的INIT3和PRMTR3、来自时钟信号控制器400的NGCLK3,并向时钟信号控制器400提供REQ3。另外,运算控制器310,将参数设定信号PSET3提供给运算单元320,并从接受来自运算单元320的状态信号STAT3。运算单元320,接受来自时钟信号控制器400的GCLKA3,向外部提供DOUT。此外,运算单元320,向内存330提供地址ADRS33,并接受来自内存330的数据DATA3。内存330,例如是时钟同步的SRAM,接受来自第2线路模块200的ADRS23及DATA23、来自时钟信号控制器400的GCLKM3。运算控制器310及运算单元320各自的内部构成,分别和图3以及图4中所示的一样。
图7所示的是图1中时钟信号控制器400的内部构成。时钟信号控制器400,装备有具有相同内部构造的3个第1门电路410、420、430和具有相同内部构造的3个第2门电路440、450、460。信号SYSCLK被提供给所有这些门电路。运算控制器110的REQ1,提供给第1门电路410以及第2门电路440。运算控制器210的REQ2,提供给第1门电路420以及3个第2门电路440、450、460。第2门电路450的1的输入固定在L电平。运算控制器310的REQ3,提供给第1门电路430以及第2门电路460。第1门电路410,分别向运算控制器110提供NGCLK1和向运算单元120提供GCLKA1。第1丁电路420,分别向运算控制器210提供NGCLK2和向运算单元220提供GCLKA2。第1门电路430,分别向运算控制器310提供NGCLK3和向运算单元310提供GCLKA3。第2门电路440向内存130提供GCLKM1;第2门电路450向内存230提供GCLKM2;第2门电路460向内存330提供GCC3。
图8所示的是图7中第1门电路410的内部构成。第1门电路410,装备有请求寄存器411、逻辑门电路412、缓冲存储器413。请求寄存器411,将来自运算控制器110的REQ1对SYSCLK进行同步锁定。逻辑门电路412,在请求寄存器411的输出为H电平时,将SYSCLK作为GCLKA1传送给运算单元120;在请求寄存器411的输出为L电平时,则停止向运算单元120传送SYSCLK。在停止传送SYSCLK时,GCLKA1被固定为H电平。缓冲寄存器413,将SYSCLK作为NGCLK1一直传送给运算控制器110。
图9所示的是图7中第2门电路440的内部构成。第2门电路440,装备有第1请求寄存器441、第2请求寄存器442、逻辑门电路443及444。第1请求寄存器441,将来自运算控制器110的REQ1对SYSCLK进行同步锁定。第2请求寄存器442,将来自运算控制器210的REQ2对SYSCLK进行同步锁定。逻辑门电路443、444,在第1请求寄存器441、第2请求寄存器442的输出其中一个为H电平时,将SYSCLK作为GCLKM1传送给内存130;在第1请求寄存器441、第2请求寄存器442的输出其中一个为L电平时,则停止向内存130传送SYSCLK。在停止传送SYSCLK时,GCLKM1被固定为H电平。
对图1中的处理器,在INIT被赋值的情况下,微控制器10将依从内置的指令存储器(图中未标出)中的程序开始动作。微控制器10,可以使第1、第2以及第3线路模块100、200、300并行地工作。例如,当第1线路模块100处于工作状态时,微控制器10可以向第1线路模块100发布INIT及PRMTR1信号。PRMTR1是指示信号,表明第1线路模块100中运算单元120所具有的资源中哪些是可以被使用的。第1线路模块100中的运算单元110,一直接受来自时钟信号控制器400的NGCLK1信号,因而,微控制器10发布INIT1可以使REQ1直接处于H电平。时钟信号控制器400,对应于REQ1,开始将GCLKA1提供给运算单元120、将GCLKM1提供给内存130。另一方面,运算控制器110中的解码器111,在REQ1处于L电平时,读取PRMTR1并对此进行解码处理。该解码处理的结果反映在PSET1及ECOND1。PSET1及ECOND1的各字节,分别对应于运算单元120中可以实施控制的资源。即,运算控制器110,具有这样的功能,对应于PRMTR1来设定运算单元120的内部构成,并改变ECOND1。运算单元120,对DIN实施运算处理,将运算处理结果DATA11写入内存130。STAT1反映运算单元120的运算处理状况。运算控制器110,判断运算单元120提供的STAT1是否满足终了条件(由ECOND1定义),在终了条件满足的情况下,将REQ1置于L电平。换而言之,在运算单元120的运算处理结束时,REQ1恢复为L电平。时钟信号控制器400,对应于REQ1为L电平的触发,将停止向运算单元120提供GCLKA1以及向内存130提供GCLKM1。
如上所述,在图1中的处理器中,运算控制器110、210、310分别监视运算单元120、220、320的工作状况,在实际工作过程中,只允许向运算单元提供时钟信号,因而可以实现数据依存性的时钟信号选通功能。所以,和以往的时钟信号选通相比,减少了处理器的功耗。
图10所示的是本发明所涉及处理器的其它构成实例。图10中的处理器,由微控制器500,可以并行动作的第1、第2及第3线路模块101、201、301,时钟信号控制器600构成。INIT是提供给微控制器500的外部起始信号、LPWR是提供给微控制器500的低功耗信号、SYSCLK是提供给微控制器500及时钟信号控制器600的系统时钟信号。微控制器可以由程序控制,分别将运算起始信号INIT1发布给第1线路模块101及时钟信号控制器600;参数信号PRMTR1发布给第1线路模块101;运算起始信号INIT2发布给第2线路模块201及时钟信号控制器600;参数信号PRMTR2发布给第2线路模块201;运算起始信号INIT3发布给第3线路模块301及时钟信号控制器600;参数信号PRMTR3发布给第3线路模块301。另外,微控制器500,分别在运算起始信号INIT1发布之前将启动信号INITC1、在运算起始信号INIT2发布之前将启动信号INITC2、在运算起始信号INIT3发布之前将启动信号1NITC3发布给时钟信号控制器600。第1线路模块,接受数据输入DIN,将数据输出DOUT提供给第3线路模块301。第2线路模块201,分别将地址ADRS12提供给第1线路模块101、将地址ADRS23提供给第3线路模块301。DATA12是第1线路模块101向第2线路模块201传送的数据、DATA23是第2线路模块201向第3线路模块301传送的数据。第1线路模块101,分别将忙信号BUSY1提供给微控制器500、请求信号REQ1提供给时钟信号控制器600;并接受时钟信号控制器600提供的选通时钟信号GCLKC1、GCLKA1、GCLKM1。第2线路模块201,分别将忙信号BUSY2提供给微控制器500、请求信号REQ2提供给时钟信号控制器600;并接受时钟信号控制器600提供的选通时钟信号GCLKC2、GCLKA2、GCLKM2。第3线路模块301,分别将忙信号BUSY3提供给微控制器500、请求信号REQ3提供给时钟信号控制器600;并接受时钟信号控制器600提供的选通时钟信号GCLKC3、GCLKA3、GCLKM3。
图11所示的是图10中微控制器500的内部构成。微控制器500,由指令内存501、指令寄存器502、指令解码器503、指令定序器504、地址生成器505、计数器506、指令执行控制器507、功耗表格508构成。指令定序器504,接受外部的INIT开始工作,分别将地址控制信号ACONT提供给地址生成器505、将读取控制信号FCONT提供给指令寄存器502、将解码控制信号DCONT提供给指令解码器503,将计数控制信号CCONT提供给计数器506。指令内存501,将对应于地址生成器505提供的指令地址IADR,把相应的指令传送给指令寄存器502。指令寄存器502,在根据FCONT许可的情况下,从指令内存501中读取预置的指令。指令寄存器503,在根据DCONT许可的情况下,对指令寄存器502提供的指令进行解码处理。解码的结果(包括是否要求运算处理的指令、该运算处理应该由哪个线路模块实施等信息),被传送给指令定序器504及指令执行控制器507。指令解码器503,在解码后的指令是第1线路模块101中要求运算处理的指令的情况下,将BUSY1隔断,并依此为条件发布INITC1;在解码后的指令是第2线路模块201中要求运算处理的指令的情况下,将BUSY2隔断,并依此为条件发布INITC2;在解码后的指令是第3线路模块301中要求运算处理的指令的情况下,将BUSY3隔断,并依此为条件发布INITC3。指令定序器504,在解码后的指令是第1线路模块101中要求运算处理的指令的情况下,将BUSY1隔断,并依此为条件发布INIT1和PRMTR1;在解码后的指令是第2线路模块201中要求运算处理的指令的情况下,将BUSY2隔断,并依此为条件发布INIT2和PRMTR2;在解码后的指令是第3线路模块301中要求运算处理的指令的情况下,将BUSY3隔断,并依此为条件发布INIT3和PRMTR3。计数器506将指示下次应获取的指令计数值COVNT提供给指令定序器504。BUSY1、BUSY2、BUSY3也被提供给指令执行控制器507。指令执行控制器507,在接受到外部的LPWR后就开始工作,参照功耗表格508对功耗进行预测。在预测的功耗超过LPWR制定的最大功耗的情况下,指令执行控制器507将保持信号HOLD赋予指令定序器504。指令定序器504,在解码后的指令,例如是第1线路模块101要求运算处理的指令、HOLD被赋值的情况下,保留对INIT1和PRMTR1的发布。在这种情况下,不再进行指令的获取和解码过程的进一步实施,ACONT、FCONT、DCONT以及CCONT分别被冻结。
图12所示的是图10中第1线路模块101的内部构成。第1线路模块101,由运算控制器140、运算单元120、内存130构成。运算控制器140,具备提供BUSY1的功能,和图2中的运算控制器110不同的是以GCLKC1替代NGCLK1。
图13所示的是图10中第2线路模块201的内部构成。第2线路模块201,由运算控制器240、运算单元220、内存230构成。运算控制器240,具备提供BUSY2的功能,和图5中的运算控制器210不同的是以GCLKC2替代NGCLK2。
图14所示的是图10中第3线路模块301的内部构成。第3线路模块301,由运算控制器340、运算单元320、内存330构成。运算控制器340,具备提供BUSY3的功能,和图6中的运算控制器310不同的是以GCLKC3替代NGCLK3。
图15所示的是图10中时钟信号控制器600的内部构成。时钟信号控制器600,由具有相同内部构成的3个第1门电路610、620、630,具有相同内部构成的3个第2门电路440、450、460构成,其中各第2门电路和图9中所示的相同。SYSCLK被提供给所有这些门电路。由运算控制器140提供的REQ1,被传送给第1门电路610和第2门电路440。由运算控制器240提供的REQ2,被传送给第1门电路620和第2门电路440、450、460。第2门电路450的1的输入被固定在L电平。由运算控制器340提供的REQ3,被传送给第1门电路630和第2门电路460。第1门电路610,接受微控制器500发布的INIT1和INITC1,并分别将GCLKC1提供给运算控制器140、将GCLKA1提供给运算单元120。第1门电路620,接受微控制器500发布的INIT2和INITC2,并分别将GCLKC2提供给运算控制器240、将GCLKA2提供给运算单元220。第1门电路630,接受微控制器500发布的INIT3和INITC3,并分别将GCLKC3提供给运算控制器340、将GCLKA3提供给运算单元320。第2门电路440,将GCLKM1提供给内存130;第2门电路450,将GCLKM2提供给内存230;第2门电路460,将GCLKM3提供给内存330。
图16所示的是图15中第1门电路610的内部构成。第1门电路610,装备有请求寄存器611、逻辑门电路612、启动寄存器613、逻辑门电路614、615。请求寄存器611,将来自运算控制器140的REQ1对SYSCLK进行同步锁定。逻辑门电路612,将INITC1、INIT1以及REQ1的逻辑和提供给启动寄存器613。启动寄存器613,将上述逻辑和对SYSCLK进行同步锁定。逻辑门电路614,在请求寄存器611的输出被赋予H电平时,将SYSCLK作为GCLKA1传送给运算单元120;在请求寄存器611的输出被赋予L电平时,将停止向运算单元120传送SYSCLK。当停止传送SYSCLK时,GCLKA1被固定在H电平。逻辑门电路615,在请求寄存器613的输出被赋予H电平时,将SYSCLK作为GCLKC1传送给运算单元140;在请求寄存器613的输出被赋予L电平时,将停止向运算单元140传送SYSCLK。当停止传送SYSCLK时,GCLKC1被固定在H电平。
对图10中的处理器,在INIT被赋值的情况下,微控制器500将依从指令存储器501中的程序开始动作。微控制器500,可以使第1、第2以及第3线路模块101、201、301并行地工作。例如,当第1线路模块101的运算处理请求指令被指令解码器503解码处理后,将BUSY1的隔断作为条件,在指令定序器504发布INIT1及PRMTR1之前,指令解码器503将发布INITC1。时钟信号控制器600中的第1门电路610,相应INITC1的赋值,开始向运算控制器140提供GCLKC1。故,指令定序器504发布INIT1后,第1线路模块101中的运算控制器140可以使REQ1直接处于H电平。时钟信号控制器600,相应于REQ1的赋值,开始将GCLKA1提供给运算单元120、将GCLKM1提供给内存130。运算单元120,对DIN实施运算处理,将运算结果DATA11写入内存130。STAT1反映运算单元120的运算处理状况。运算控制器140,判断运算单元120提供的STAT1是否满足终了条件,在终了条件满足的情况下,将REQ1置于L电平。换而言之,在运算单元120的运算处理结束时,REQ1被恢复为L电平。时钟信号控制器600,相应于REQ1为L电平触发,停止向运算控制器140提供GCLKC1、停止向运算单元120提供GCLKA1以及停止向内存130提供GCLKM1。
如上所述,在图10中的处理器中,运算控制器140、240、340分别监视运算单元120、220、320的工作状况,在实际工作过程中,只允许向运算单元提供时钟信号,因而可以实现数据依存性的时钟信号选通功能。由于根据指令解码器503,只允许向制定的运算控制器提供时钟信号,因而和图1的情况相比,进一步降低了处理器的功耗。
图17所示的是图11中功耗表格508的内容的实例。另外,图18所示的是图10中处理器的执行程序的实例。对应图10中的处理器,可以控制第1、第2、第3线路模块101、201、301功耗的总和,使之不超过LPWR所指定的最大功耗。对图10中处理器,将LPWR赋值后,就设定了指令执行控制器507的最大功耗,每个线路模块功耗的当前值被初始化为0。在该例子中,最大功耗被设定为80。接下来,当INIT被赋值后,位控制器500就按图18中的程序开始工作。首先,SET指令被指令解码器503解码,指令执行控制器507参照功耗表格508,依据SET指令预测当运算单元120实现运算处理时功耗以1为单位的增加。因线路模块每一功耗的当前值的总和为0,可以理解即使运算单元依据SET指令进行运算处理,功耗也不会超过80。因而,指令执行控制器507,不对HOLD赋值。指令定序器504,依照SET指令直接发布INIT1和PRMTR1。这时,指令解码器503对下一个MPY指令进行解码。第1线路模块101功耗的当前值,在BUSY1由L电平转换为H电平时,被刷新为1。该当前值,在BUSY1由H电平转换为L电平时,被复位为0。以下是同样的过程,每解码一个指令,指令执行控制器507,就对依据解码后的指令进行运算处理的情况,预测功耗到底增加了多少。因而,当功耗超过80时,HOLD就被赋值。在图18的例子中,DCT指令被解码时,HOLD被赋值。这时,SET指令、MPY指令及ADD指令均已执行完毕,而VIF指令正在执行,这时功耗当前值的总和为45。所以,当依据DCT指令进行运算处理时,功耗变为88,超过了80。HOLD被赋值后,指令定序器504将保留运算启动信号及参数信号的发布。这样,就可以控制第1、第2以及第3线路模块101、102、103的功耗的总和不超过80,实现功耗的平均化。
图19所示的是本发明所涉及处理器的又一个构成例子。图19中的处理器,由MPEG图像编码器700、帧显示内存800构成。显示内存800,例如由多个同步DRAM(Dynamic Random Access Memory-动态随机存取存储器)构成。MPEG图像编码器700,由微控制器710,内存接口720,可以并行动作的第1、第2、第3线路模块730、740、750,时钟信号控制器760构成。第1线路模块730,是图像输入接口(VIF)模块。第2线路模块740,是宏模块(MBF),由预测第1动作(第1ME)的模块741、预测第2动作(第2ME)的模块742、模式选择处理(MSP)模块743、DCT量子化(DCTQ)模块744、可变长符号化(VLC)模块745构成。这5个线路模块741~745构成了宏模块通道。第3线路模块750,是代码/主接口(CIF/HIF)模块。VDIN是给予VIF模块730的图像数据输入,VDOUT是由CIF/HIF模块750提供的图像数据输出(编码输出),VCONT是由主处理器(在图中没有显示)提供给CIF/HIF模块750的控制信号,ECLK是由外部提供给时钟信号控制器760的系统时钟信号。时钟信号控制器760,分别向微控制器710提供非选通时钟信号、向内存接口720提供选通时钟信号。另外,时钟信号控制器760,向7个线路模块730、741、742、743、744、745、750提供选通时钟信号。
微控制器710,可以由程序控制,和内存接口720、VIF模块730、MBP模块740以及CIF/HIF模块750相互交换信息。特别是微控制器710具备向MBP模块740中的5个线路模块741~745发送运算启动信号和参数信号的功能。
VIF模块730,被微控制器710启动后,通过向请求信号赋值,请求时钟信号的供给。时钟信号控制器760,相应于该请求信号,开始向VIF模块730提供时钟信号。VIF模块730,将图像数据输入VDIN变换成MPEG的形式,进行数据替换。用于表征该处理结果的当前图像数据,通过内存接口720,被写入到显示内存800中。这样,对一连串的数据输入处理完毕后,VIF模块730不再对请求信号赋值。时钟信号控制器760,相应于请求信号的隔断,停止向VIF模块730提供时钟信号。
第1ME模块741,从微控制器710处接受运算启动信号及参数信号,通过向请求信号赋值,请求时钟信号的供给。参数信号,是用来表示第1ME模块741中运算单元所具有的多数资源当中,哪些资源是应该使用的。时钟信号控制器760,相应于请求信号,开始向第1ME模块741提供时钟信号。第1ME模块741中的运算单元,通过内存接口720从显示内存800中读取参考图像数据以及当前图像数据,预测第1动作,例如检测出1个显示单元精度的移动向量,将得到的向量数据传送给第2ME模块742。1个宏模块的处理完毕后,第1ME模块741将隔断请求信号。
时钟信号控制器760,对应于请求信号的隔断,停止向第1ME模块741提供时钟信号。
第2ME模块742,从微控制器710处接受运算启动信号及参数信号,通过向请求信号赋值,请求时钟信号的供给。参数信号,是用来表示第2ME模块742中运算单元所具有的多数资源当中,哪些资源是应该使用的。时钟信号控制器760,相应于请求信号,开始向第2ME模块742提供时钟信号。第2ME模块742中的运算单元,基于移动向量数据通过内存接口720从显示内存800中读取参考图像数据以及当前图像数据,预测第2动作,例如检测出半个显示单元精度的移动向量并进行移动补偿,将得到的差分数据传送给MSP模块743。1个宏模块的处理完毕后,第2ME模块742将隔断请求信号。时钟信号控制器760,对应于请求信号的隔断,停止向第2ME模块742提供时钟信号。
MSP模块743,从微控制器710处接受运算启动信号及参数信号,通过向请求信号赋值,请求时钟信号的供给。参数信号,是用来表示MSP模块743中运算单元所具有的多数资源当中,哪些资源是应该使用的。时钟信号控制器760,相应于请求信号,开始向MSP模块743提供时钟信号。MSP模块743的运算单元,基于差分数据对宏模块进行统计计算、准备TCT所用数据、将数据传递给DCTQ模块744。1个宏模块的处理完毕后,MSP模块743将隔断请求信号。时钟信号控制器760,对应于请求信号的隔断,停止向MSP模块743提供时钟信号。
DCTQ模块744,从微控制器710处接受运算启动信号及参数信号,通过向请求信号赋值,请求时钟信号的供给。参数信号,是用来表示DCTQ模块744中运算单元所具有的多数资源当中,哪些资源是应该使用的。时钟信号控制器760,相应于请求信号,开始向DCTQ模块744提供时钟信号。DCTQ模块744的运算单元,根据准备好的数据进行宏模块的DCT运算并实行量子化、将数据传递给VLC模块745。1个宏模块的处理完毕后,DCTQ模块744将隔断请求信号。时钟信号控制器760,对应于请求信号的隔断,停止向DCTQ模块744提供时钟信号。
VLC模块745,从微控制器710处接受运算启动信号及参数信号,通过向请求信号赋值,请求时钟信号的供给。参数信号,是用来表示VLC模块745中运算单元所具有的多数资源当中,哪些资源是应该使用的。时钟信号控制器760,相应于请求信号,开始向VLC模块745提供时钟信号。VLC模块745中的运算单元,根据传递过来的数据,进行可变长符号化处理。用于表征该处理结果的符号化数据,通过内存接口720,被写入到显示内存800中。1个宏模块的处理完毕后,VLC模块745将隔断请求信号。时钟信号控制器760,对应于请求信号的隔断,停止向VLC模块745提供时钟信号。
CIF/HIF模块750,从微控制器710处接受运算启动信号及参数信号,通过向请求信号赋值,请求时钟信号的供给。时钟信号控制器760,相应于请求信号,开始向CIF/HIF模块750提供时钟信号。CIF/HIF模块750,在指定的时序内通过内存接口720从显示内存800中读取出符号化数据,向外部提供图像数据输出VDOUT。这样,对一连串数据输出处理完毕后,CIF/HIF模块750将隔断请求信号。时钟信号控制器760,对应于请求信号的隔断,停止向CIF/HIF模块750提供时钟信号。另外,CIF/HIF模块750,具备从主处理器(在图中没有显示)得到控制信号VCONT并向微控制器710传递的功能。
图20所示的是图19的处理器中第1ME模块741、第2模块742、MSP模块743、DCTQ模块744及VLC模块745的通道动作过程。图中MB1~MB8表示的是各个处理对象的宏模块。通道间隔,设定为各线路模块中处理每一宏模块所需时间的最大值。图中的多数的阴影部分,分别表示各个死时间(空闲时间)。即,在5个线路模块741~745中的每一个,每一宏模块的处理时间都依赖于图像数据,运算处理提前完毕的线路模块,提前隔断对时钟信号控制器760的请求信号。这样,对应于个死时间,停止提供时钟信号,处理器的功耗得以降低。具体而言,在第1及第2 ME模块741、742中,利用地址生成器将对全部参照图像数据进行搜寻,或利用运算器发现参照图像数据中和当前图像数据最类似的领域时,隔断请求信号。但是,在VLC模块745中,对于预测成功和失败的情况,数据处理量相差很大。
此外,本发明除了MPEG图像解码器等的利用外,也能适用于其它目的的处理器。

Claims (9)

1.一种处理器,其特征在于由以下部分构成:运算单元,其功能为,对数据进行运算处理、并提供状态信号表征运算处理状况;微控制器,其功能为,发布运算启动信号;运算控制器,其目的在于,当接受到上述微控制器发布的上述运算启动信号的情况下对请求信号赋值,判断上述运算单元提供的上述状态信号是否满足终了条件,在终了条件满足的情况下,将隔断上述请求信号;时钟信号控制器,其目的在于,当上述请求信号被赋值的情况下,向上述运算单元提供时钟信号,使上述运算单元可以进行运算处理,当上述请求信号被隔断的情况下,停止向上述运算单元提供上述时钟信号。
2.根据权利要求1中所记载的处理器,其特征在于上述微控制器还具备以下功能,发布参数信号用于表征上述运算单元所具有的多数资源当中,哪些资源是应该使用的;上述运算控制器还具备,对应于上述参数信号,设定上述运算单元的内部构成、并改变上述终了条件的功能。
3.根据权利要求1中所记载的处理器,其特征在于上述时钟信号控制器具备请求寄存器,用于将上述请求信号对上述系统时钟信号进行同步锁定;上述时钟信号控制器具备当上述请求寄存器的输出被赋值的情况下,向上述运算单元传送上述系统时钟信号,当上述请求寄存器的输出被隔断的情况下,停止向上述运算单元提供上述系统信号的手段。
4.根据权利要求3中所记载的处理器,其特征在于上述时钟信号控制器,还具备始终将上述系统时钟信号传递给上述运算控制器的手段。
5.根据权利要求3中所记载的处理器,其特征在于上述微控制器,还具备在上述运算启动信号发布之前发布控制器信号的功能;上述时钟信号控制器,还具有启动寄存器,其目的在于将上述控制器启动信号、上述运算启动信号及上述请求信号的逻辑和对上述系统时钟信号进行同步锁定;上述时钟信号控制器,还具备当上述启动寄存器的输出被赋值时,向运算控制器传递系统时钟信号,使上述运算控制器可以工作,当上述启动寄存器的输出被隔断时,停止向上述运算控制器传递上述系统时钟信号的手段。
6.根据权利要求1中所记载的处理器,其特征在于上述微控制器,还具有在上述运算单元实施运算处理的情况下,预测功耗是否超过所定的最大功耗,当不超过上述最大功耗时,直接发布运算启动信号,当超过上述最大功耗时,保留对运算启动信号的发布的功能。
7.根据权利要求1中所记载的处理器,其特征在于上述运算单元,是用于图像数据处理的单元。
8.一种处理器,其特征在于由以下部分构成:复数的运算单元,其功能为,对各数据进行运算处理、并提供状态信号表征运算处理状况;微控制器,其功能为,对上述复数的运算单元发布运算启动信号;复数的运算控制器,其目的在于,当接受到各个上述微控制器发布的上述运算启动信号的情况下对请求信号赋值,判断各对应运算单元提供的上述状态信号是否满足终了条件,在终了条件满足的情况下,将隔断上述请求信号;对于上述复数的时钟信号控制器的任意一个,当上述请求信号被赋值的情况下,向上述运算单元提供时钟信号,使上述运算单元可以进行运算处理,当上述请求信号被隔断的情况下,停止向上述运算单元提供上述时钟信号。
9.根据权利要求8中所记载的处理器,其特征在于上述复数的运算单元,均为用于图像数据处理的编码器的部分处理单元。
CNB98117664XA 1997-09-03 1998-09-01 处理器 Expired - Fee Related CN1157641C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP238014/1997 1997-09-03
JP238014/97 1997-09-03
JP23801497 1997-09-03

Publications (2)

Publication Number Publication Date
CN1215281A true CN1215281A (zh) 1999-04-28
CN1157641C CN1157641C (zh) 2004-07-14

Family

ID=17023879

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB98117664XA Expired - Fee Related CN1157641C (zh) 1997-09-03 1998-09-01 处理器

Country Status (4)

Country Link
US (1) US6173408B1 (zh)
EP (1) EP0901061B1 (zh)
CN (1) CN1157641C (zh)
DE (1) DE69810721T2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1316354C (zh) * 2002-06-14 2007-05-16 松下电器产业株式会社 处理器、程序变换装置和变换方法
CN100407108C (zh) * 2001-10-22 2008-07-30 国际商业机器公司 节省处理集成电路功率的方法及其全局功率控制器

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6301671B1 (en) * 1998-03-23 2001-10-09 International Business Machines Corporation Apparatus and method for power reduction control in a video encoder device
ATE277378T1 (de) * 1999-10-25 2004-10-15 Texas Instruments Inc Intelligente leistungssteuerung in verteilten verarbeitungssystemen
US7620832B2 (en) * 2000-09-20 2009-11-17 Mips Technologies, Inc. Method and apparatus for masking a microprocessor execution signature
US6625737B1 (en) * 2000-09-20 2003-09-23 Mips Technologies Inc. System for prediction and control of power consumption in digital system
US6704876B1 (en) * 2000-09-26 2004-03-09 Sun Microsystems, Inc. Microprocessor speed control mechanism using power dissipation estimation based on the instruction data path
US7269746B1 (en) * 2000-11-27 2007-09-11 Hewlett-Packard Development Company L.P. Method of transmitting identification data from an option pack to a main unit before the option pack is fully powered
JP3485885B2 (ja) * 2000-12-11 2004-01-13 三洋電機株式会社 半導体集積回路装置の設計方法
JP4831899B2 (ja) * 2001-08-28 2011-12-07 富士通セミコンダクター株式会社 半導体集積回路及びクロック制御方法
JP3641448B2 (ja) * 2001-09-06 2005-04-20 松下電器産業株式会社 演算処理装置
JP3919740B2 (ja) * 2003-07-30 2007-05-30 株式会社ソニー・コンピュータエンタテインメント 回路動作制御装置および情報処理装置
US20050097554A1 (en) * 2003-11-03 2005-05-05 Burden David C. Charge rationing aware scheduler
JPWO2005106623A1 (ja) * 2004-04-28 2008-03-21 松下電器産業株式会社 Cpuクロック制御装置、cpuクロック制御方法、cpuクロック制御プログラム、記録媒体、及び伝送媒体
CN100553342C (zh) * 2004-07-13 2009-10-21 松下电器产业株式会社 移动检测装置
JP2006107127A (ja) * 2004-10-05 2006-04-20 Nec Electronics Corp 半導体集積回路装置
US20060158444A1 (en) * 2005-01-18 2006-07-20 Sitronix Technology Corp. Voltage variation processing mechanism built-in a microcontroller
WO2007089014A1 (ja) * 2006-02-03 2007-08-09 National University Corporation Kobe University デジタルvlsi回路およびそれを組み込んだ画像処理システム
WO2009010092A1 (en) * 2007-07-17 2009-01-22 Sca Hygiene Products Gmbh 3d embossing
JP5231800B2 (ja) * 2007-12-26 2013-07-10 株式会社東芝 半導体集積回路装置および半導体集積回路装置のクロック制御方法
US8365175B2 (en) * 2009-03-10 2013-01-29 International Business Machines Corporation Power management using dynamic application scheduling
TW201035911A (en) * 2009-03-17 2010-10-01 Novatek Microelectronics Corp Video processing method and video processing device
US8397253B2 (en) * 2009-07-23 2013-03-12 Fmr Llc Inserting personalized information into digital content
US9009451B2 (en) * 2011-10-31 2015-04-14 Apple Inc. Instruction type issue throttling upon reaching threshold by adjusting counter increment amount for issued cycle and decrement amount for not issued cycle
US9582026B2 (en) 2014-09-30 2017-02-28 Samsung Electronics Co., Ltd. System-on-chip to support full handshake and mobile device having the same
GB2534409A (en) * 2015-01-23 2016-07-27 Sony Corp Data encoding and decoding
US20160301945A1 (en) * 2015-02-09 2016-10-13 Hitachi Information & Telecommunication Engineering, Ltd. Image compression/decompression device
US10255462B2 (en) 2016-06-17 2019-04-09 Arm Limited Apparatus and method for obfuscating power consumption of a processor
WO2019105332A1 (en) * 2017-11-28 2019-06-06 Bitmain Technologies Inc. Computational integrated circuit chip and corresponding circuit board

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5775335A (en) 1980-10-27 1982-05-11 Hitachi Ltd Data processor
DE3137870C2 (de) 1981-09-23 1985-01-10 Siemens AG, 1000 Berlin und 8000 München Einrichtung zur Taktversorgung eines Zentralprozessors
JPS63178620A (ja) 1987-01-19 1988-07-22 Nec Corp クロツクストロ−ブ回路
JPH03123919A (ja) 1989-10-06 1991-05-27 Toshiba Corp コンピュータシステム
JPH04107623A (ja) * 1990-08-28 1992-04-09 Seiko Epson Corp 表示装置
JPH04140810A (ja) 1990-10-02 1992-05-14 Nec Corp 情報処理装置
JPH04302014A (ja) 1991-03-28 1992-10-26 Tokyo Electric Co Ltd 論理回路駆動装置
US5452401A (en) * 1992-03-31 1995-09-19 Seiko Epson Corporation Selective power-down for high performance CPU/system
JPH05324871A (ja) 1992-05-27 1993-12-10 Nec Corp マイクロコンピュータ
US5452434A (en) * 1992-07-14 1995-09-19 Advanced Micro Devices, Inc. Clock control for power savings in high performance central processing units
JP2636695B2 (ja) * 1993-08-03 1997-07-30 日本電気株式会社 パイプライン処理回路
US5615376A (en) * 1994-08-03 1997-03-25 Neomagic Corp. Clock management for power reduction in a video display sub-system
JPH0865496A (ja) 1994-08-24 1996-03-08 Fuji Film Micro Device Kk 画像処理装置
US5996083A (en) * 1995-08-11 1999-11-30 Hewlett-Packard Company Microprocessor having software controllable power consumption
US5834961A (en) 1996-12-27 1998-11-10 Pacific Communication Sciences, Inc. Gated-clock registers for low-power circuitry
US5951689A (en) * 1996-12-31 1999-09-14 Vlsi Technology, Inc. Microprocessor power control system
US5961617A (en) * 1997-08-18 1999-10-05 Vadem System and technique for reducing power consumed by a data transfer operations during periods of update inactivity

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100407108C (zh) * 2001-10-22 2008-07-30 国际商业机器公司 节省处理集成电路功率的方法及其全局功率控制器
CN1316354C (zh) * 2002-06-14 2007-05-16 松下电器产业株式会社 处理器、程序变换装置和变换方法

Also Published As

Publication number Publication date
EP0901061A2 (en) 1999-03-10
EP0901061A3 (en) 2000-02-02
CN1157641C (zh) 2004-07-14
DE69810721T2 (de) 2003-05-22
DE69810721D1 (de) 2003-02-20
US6173408B1 (en) 2001-01-09
EP0901061B1 (en) 2003-01-15

Similar Documents

Publication Publication Date Title
CN1157641C (zh) 处理器
EP1861787B1 (en) Bus access arbitration scheme
US5790851A (en) Method of sequencing lock call requests to an O/S to avoid spinlock contention within a multi-processor environment
Gray On introducing noise into the bus-contention channel
AU2400499A (en) A parallel huffman decoder
Hill et al. Lessons learned from implementing BSP
US10805622B2 (en) High efficiency video coding method and apparatus, and computer-readable storage medium
CN105718315A (zh) 一种任务处理方法及服务器
CN1021147C (zh) 具有共用控制存储器的多处理机控制器
Setia et al. Analysis of processor allocation in multiprogrammed, distributed-memory parallel processing systems
Boahen Retinomorphic vision systems II: Communication channel design
CN116089049B (zh) 基于异步并行i/o请求的进程同步调度方法、装置以及设备
CN102495762B (zh) 一种线程调度方法、线程调度装置及多核处理器系统
US20050005050A1 (en) Memory bus assignment for functional devices in an audio/video signal processing system
Gray III Countermeasures and tradeoffs for a class of covert timing channels
US7836235B2 (en) Resource management device
Hill et al. Lessons learned from implementing BSP
US9928159B2 (en) System and method to select a packet format based on a number of executed threads
CN111078598B (zh) 存储模块数据访问控制方法、数据访问装置和芯片
US20130205090A1 (en) Multi-core processor having hierarchical communication architecture
Lin et al. Zero-buffer inter-core process communication protocol for heterogeneous multi-core platforms
Vrba et al. The Nornir run-time system for parallel programs using Kahn process networks
CN1869860A (zh) 一种异步时钟域参数的配置方法及装置
US20050119870A1 (en) Processor system with execution-reservable accelerator
JPH05334241A (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: 20040714

Termination date: 20120901