CN105320245A - 处理具有共同分量的信号的方法和系统 - Google Patents
处理具有共同分量的信号的方法和系统 Download PDFInfo
- Publication number
- CN105320245A CN105320245A CN201510364641.XA CN201510364641A CN105320245A CN 105320245 A CN105320245 A CN 105320245A CN 201510364641 A CN201510364641 A CN 201510364641A CN 105320245 A CN105320245 A CN 105320245A
- Authority
- CN
- China
- Prior art keywords
- component
- signal
- input signal
- circuit
- computing
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3293—Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3237—Power saving characterised by the action undertaken by disabling clock generation or distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/17—Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Image Processing (AREA)
- Power Sources (AREA)
- Complex Calculations (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
提供处理具有共同分量的信号的方法和系统。信号处理可包括:确定第一输入信号和第二输入信号共有的第一分量,并且从第一输入信号和第二输入信号中的至少一个输入信号提取第一分量,从第一输入信号提取第二分量,并从第二输入信号提取第二分量。第一输入信号的第二分量可与第二输入信号的第二分量不同。可使用提取的第二分量执行运算。可将第一分量与运算的结果进行组合。
Description
本申请要求于2014年6月27日提交的第62/018,157号美国临时专利申请、2015年5月14日提交的第14/712,675号美国专利申请以及2015年6月15日提交到韩国知识产权局的第10-2015-0084345号韩国专利申请的权益,所述专利申请通过引用全部包含于此。
技术领域
本公开涉及集成电路,更具体地讲,涉及在对具有共同分量的信号执行信号处理运算时减少功耗的集成电路。
背景技术
处理器,如图形处理单元(GPU)、数字信号处理器(DSP)、中央处理器(CPU)等,在各种不同的情景中执行许多不同类型的运算。这些运算经常需要大量的电力。现实是,在一段时间内反复执行运算以完成给定信号处理任务会进一步加剧处理器的功耗。例如,在图形处理的情况下,在渲染视频时对一图像或一系列的图像应用纹理过滤器耗电会尤其大。
发明内容
一种信号处理的方法包括:确定第一输入信号和第二输入信号共有的第一分量。所述方法还包括:从第一输入信号和第二输入信号中的至少一个输入信号提取第一分量,从第一输入信号提取第二分量,并从第二输入信号提取第二分量。第一输入信号的第二分量与第二输入信号的第二分量不同。所述方法还包括:使用提取的第二分量执行运算并将第一分量与运算的结果进行组合。
一种系统包括:相关性检测电路,被配置为确定第一输入信号和第二输入信号共有的第一分量。所述系统还包括:分量处理电路,被配置为从第一输入信号和第二输入信号中的至少一个输入信号提取第一分量,从第一输入信号提取第二分量,并从第二输入信号提取第二分量。第一输入信号的第二分量与第二输入信号的第二分量不同。所述系统还包括:运算电路,被配置为使用提取的第二分量执行运算;输出选择电路,被配置为将第一分量与运算的结果进行组合。
提供本发明内容部分仅用于介绍特定构思而不用于标识所要求保护的主题的关键特征或必要特征。本发明的许多其它特征和实施例将从附图和以下具体实施方式是清楚的。
附图说明
附图示出一个或更多个实施例;然而,附图不应该用来将本发明仅限制于这些实施例。在看过以下具体实施方式后且在参照附图后,各种方面和优点将会变得明显,其中:
图1是用于数据处理系统的示例性架构;
图2是示出用于信号处理的示例性系统的框图;
图3是示出图2的系统的示例性实施方式的框图;
图4是示出图2的系统的另一示例性实施方式的框图;
图5是示出用于信号处理的另一示例性系统的框图;
图6是示出图5的系统的示例性实施方式的框图;
图7是示出运算电路的示例性实施方式的框图;
图8是示出处理信号的示例性方法的流程图。
具体实施方式
虽然本公开用限定新的特征的权利要求得出结论,但应认为,通过考虑结合附图的描述将更好地理解这里所描述的各种特征。本公开中所描述的处理、机器、制成品及其任何变化用于示出的目的。任何特定的结构细节和功能细节被解释为不是限定性的,而仅仅是作为权利要求的基础且作为教导本领域技术人员多样地采用在几乎任何适当的详细结构中描述的特征的代表性基础。此外,在本公开中使用的术语和短语不是为了限制性的目的,而在于提供对所描述的特征的可理解的描述。
本公开涉及一种集成电路,更具体地讲,涉及一种在对具有共同分量的信号执行信号处理运算时减少功耗的集成电路。根据在本公开中所描述的发明布置,处理器可包括:电路装置(circuitry),被配置为识别在接收的信号中的共同分量。共同分量可区别于信号的非共同分量。共同分量是多位(bit)信号中的一部分(例如,一位或更多位),该部分与一个或更多个其它多位输入信号中的相应的部分或位相同或匹配。非共同分量是多位信号中与一个或更多个其它多位信号中的相同部分不同或不匹配的部分。
在一个方面,非共同分量可被提供给运算电路,而运算电路不对共同分量进行运算。例如,共同分量可不经过运算电路。由运算电路产生的结果可与共同分量组合。可通过有效地减小运算电路进行运算的输入信号的宽度来减少功耗。被运算的信号的宽度可被有效地减小共同分量的宽度。
在一些情况下,运算电路可通过对具有这样的型式的每个输入信号进行运算来仅对非共同分量进行运算,其中,在所述型式的每个输入信号中共同分量被置零。在另外一些情况下,运算电路中的本来将对共同分量的位进行运算的电路元件可被禁用,而对非共同分量的位进行运算的电路元件可根据具体情况被启用或保持激活。因此,运算电路不是对接收的信号的全部进行运算,而可仅对非共同分量进行运算。运算电路中本来将对共同分量的位进行运算的部分可被禁用,
这里描述的发明布置可被实现为由数据处理系统和/或数据处理系统内的诸如集成电路(IC)的电子电路执行的方法或处理。IC例如可以是处理器。在另一方面,发明布置可被实现为诸如电子电路的系统(例如,设备)。电子电路可被实现为可实现或包括处理器的IC。处理器的示例可包括但不限于中央处理器(CPU)、图形处理单元(GPU)、控制器、数字信号处理器(DSP)等。此外,处理器可以是更大的系统(诸如可编程IC、数据处理系统或其它计算和/或通信装置、娱乐和/或游戏系统或游戏机、汽车等)的一部分。
为了简明且清楚地示出的目的,附图中示出的元件没有必然按比例绘制。例如,为了清楚可夸大一些元件相对于另一些元件的尺寸。此外,在认为合适的情况下,在附图之中标号被重复以指示相应的特征、类似的特征等。
图1是用于数据处理系统的示例性架构100。架构100可用于实现包括能够执行本公开中描述的操作的处理器和存储器的各种不同系统和/或装置中的任何一个。在某些情况下,使用架构100实现的特定系统和/或装置可包括比这里示出的组件更少的组件或更多的组件。此外,包括的特定操作系统和/或应用可改变。可使用架构100的示例性系统可包括但不限于嵌入式系统、移动电话、个人计算装置(诸如,台式计算装置、膝上型计算装置和/或平板计算装置)、服务器、游戏机、娱乐系统、显示装置等。
如图所示,架构100包括至少一个处理器102。处理器102的示例可包括但不限于CPU、DSP、GPU、控制器、现场可编程门阵列或其它可编程集成电路装置等。处理器102包括被实现为电路装置并被配置为执行信号处理的系统105。在一个方面,系统105可被构造为对具有共同分量的信号进行运算。在另一方面,系统105可被构造为对信号进行运算并根据信号是否被确定为包括共同分量而应用不同的处理技术。虽然对包括共同分量的信号进行运算,但是相比于其它传统处理器和/或处理技术,系统105可使用更少的电力来执行运算。结果,处理器102可使用较少的电力,因此这里的架构100和/或使用和/或引入系统105的任何系统也将使用较少的电力。
处理器102可通过系统总线115或其它合适电路装置连接到存储器元件110。架构100可将程序代码存储在存储器元件110内。处理器102执行经由系统总线115从存储器元件110访问取得的程序代码。存储器元件110包括一个或更多个物理存储器装置,诸如,本地存储器120以及一个或更多个大容量存储装置125。本地存储器120是指随机存取存储器(RAM)或在实际执行程序代码期间通常使用的其它非永久性存储器装置。大容量存储装置125可被实现为硬盘驱动器(HDD)、固态驱动器(SSD)或其它永久性数据存储装置。架构100还可包括一个或更多个高速缓冲存储器(未示出),所述高速缓冲存储器为至少一些程序代码提供临时存储以便在执行程序代码期间减少必须从大容量存储装置125读取程序代码的次数。
输入/输出(I/O)装置(诸如键盘130、显示装置135和指示装置140)可选择性地连接到架构100。在一些情况下,如在使用触摸屏的情况下,I/0装置中的一个或更多个可被组合为显示装置135。在这种情况下,显示装置135还可实现键盘130和指向装置140。
I/O装置可直接或经由中间的I/O控制器连接到架构100。一个或更多个网络适配器145也可连接到架构100以使架构100经由中间的私有网络或公共网络连接到其它系统、计算机系统、远程打印机和/或远程存储装置。调制解调器、有线调制解调器、以太网卡、无线收发器和/或无线电是可与架构100一起使用的不同类型的网络适配器145的示例。根据使用架构100实现的特定装置,特定类型的网络适配器145或根据具体情况的网络适配器将改变。
如图1所示,存储器元件110可存储操作系统150并选择性地存储一个或更多个应用155。在一个方面,以可执行的程序代码实现的操作系统150和应用155可由架构100执行。这样,操作系统150和应用155可被视为架构100的一个集成部分。操作系统150、应用155和由架构100使用、产生和/或操作的任何数据项是当采用为使用架构100使用的系统的部分时提供功能的功能数据结构。
在一些情况下,架构100可包括操作系统150和应用155被实现为单个较大的程序的操作软件。例如,在架构100用于实现嵌入式系统的情况下,由操作系统150和应用155执行的功能可被组合和实现为一个集成程序。
仅出于示意性目的提出了架构100。在其它示例中,架构100可包括处理器102,诸如CPU和单独的GPU。通常,GPU被优化用于操纵计算机图形、执行图像处理等。在一些情况下,处理器(例如,CPU)可将通常由CPU执行的特定任务分担负载到GPU以进行处理。在其它示例中,GPU可被实现在处理器102之外的单独的电路装置板上。此外,与处理器102相比,GPU还可具有单独的存储器元件(例如,单独的本地存储器)。GPU可包括系统105而不是包括处理器102。在另一示例中,处理器102和GPU两者都可包括系统105。
在一个方面,系统105可被优化用于执行各种算术运算。作为示例,系统105可被优化用于执行可在各种应用中的任何一种应用中应用的插值。在一个示例性应用中,系统105可用于在对颜色值进行过滤的情景下执行插值以进行图像处理。例如,系统105可被优化用于执行线性插值。系统105可被配置为利用接收的输入信号中的相关性。在图像处理的情况下,例如,系统105可被优化利用接收的输入信号中的频率不变性,即频率相关性和空间局部性。空间局部性为第一输入信号指示第一纹理元素(texel),而第二输入信号指示图像中在第一纹理元素的预定距离内的不同的第二纹理元素。第一纹理元素和第二纹理元素可在图像中相邻。如这里所描述的那样,两个信号之间的共同分量的存在指示关于两个输入发生的可被利用以进行运算的频率相关性。
图2是示出图1的系统105的示例性实施方式的框图。如所论述的那样,在一个实施例中,可使用处理器内的电路装置来实现系统105。因此,图2中示出的各个框可表示处理器内的电路或电路装置。在图2的示例中,系统105包括相关性检测电路205、分量处理电路210、运算电路215和输出选择电路220。
相关性检测电路205可接收第一输入信号225的所有或一部分以及第二输入信号230的所有或一部分。在一个方面,如使用图2中的虚线示出的那样,相关性检测电路205可直接接收信号225和/或信号230。在另一方面,相关性检测电路205可通过信号235从分量处理电路210接收信号225和/或信号230中的每个信号的所有或一部分。
相关性检测电路205被配置为确定信号225和信号230是否包括信号225和信号230两者共有的一个或更多个分量,即,共同分量。在一个方面,共同分量可以是信号225和信号230的“x”个最高有效位(MSB),其中,“x”是大于0的整数值。X的值可小于或等于信号225和信号230的位(bit)数“n”。在另一方面,共同分量可以是信号225和信号230的“x”个最低有效位(LSB)。X的值可小于或等于信号225和信号230的位数“n”。此外,应理解,针对MSB所求的位数不需要等于针对LSB所求的位数。
如这里所使用的那样,术语“第一分量”表示输入信号的多个位,无论是LSB还是MSB。第一分量可以是小于或等于输入信号的位数n的多个位。第一分量可以是信号225和信号230所共有的,或者可以不是信号225和信号230所共有的。在图2的示例中,共同分量可限于固定大小,这是因为相关性检测电路205可被配置为仅比较信号225和信号230的特定部分,例如,特定位数的MSB和/或特定位数的LSB。
相关性检测电路将信号225与信号230进行比较以确定信号225和信号230的某部分或全部是否匹配。如图所示,相关性检测电路205可通过信号235指示匹配是否存在。信号235可连接到输出选择电路220并连接到分量处理电路210。信号235可指示信号225和信号230是否共有共同分量,例如,至少某部分匹配。
可使用各种已知电路中的任何一种来实现相关性检测电路205。例如,在一个方面,相关性检测电路205可被实现为识别信号225和信号230的共同的低频分量和不同的更高频率分量的频率分析电路。在另一方面,可使用布尔逻辑门(诸如电路装置异或电路装置以及或电路装置)或最前1检测器电路来实现相关性检测电路205。
信号225和信号230被提供给分量处理电路210。通常,分量处理电路210可被配置为在信号230和信号225中的每个信号中提取第一分量或将第一分量与第二分量分开。信号225和信号230中的每个信号中的第二分量可以是各个信号的剩余部分,例如,每个信号的没有包括在第一分量中的部分。在一个方面中,分量处理电路210处理各个通道内的信号225和信号230中的每个信号的第一分量和第二分量。
分量处理电路210可产生输出信号240和输出信号245。在一个方面,信号240可指示信号225和信号230中的每个信号的第一分量和第二分量。在一个方面,在信号225和信号230被发现相关的情况下,信号245可仅指示信号225或信号230的共同分量。如图所示,信号245可不经过运算电路215。
运算电路215可被配置为执行各种不同运算中的任何一个。例如,运算电路215可被配置为使用信号225和信号230或者信号225和信号230的部分来执行算术运算。在另一示例中,运算电路215可被配置为执行线性插值。然而,应理解,还可执行诸如加法、乘法等的其它运算。
在一种示例性使用情况下,运算电路215可被配置为执行如可在GPU内实现的纹理过滤。在这种情况下,运算电路215可被配置为在信号225和信号230之间执行线性插值。信号225可指示第一纹理元素,而信号230指示靠近第一纹理元素的第二纹理元素。例如,当在图像内进行测量时,第一纹理元素和第二纹理元素可彼此相邻或者至少在预定距离内。通常,针对纹理过滤,有大约40%的时间信号225和信号230相同。有大约70%的时间信号225和信号230的至少四个MSB匹配。这样,可通过将运算电路215限制为仅对信号225和信号230的不同的部分(例如,非共同分量)进行运算来减少功耗。
在另一示例中,运算电路215可被配置为使用权重将一个或更多个颜色值线性地组合以产生输出值。输出值可以是位于两个输入值之间的颜色值。对于由信号225和信号230指示的两个输入值I1和I2,给定线性权重值a1和a2(其中,a1+a2=1),则得到的输出值O(例如,过滤后的值)可被表示为O=a1×I1+a2×I2,其中,I1≤O≤I2,0<=a1,a2<=1.0。颜色值通常在0至255的范围中并且在过滤单元中至少需要八位的输入精确度。如果权重需要八位的精确度,则可使用8×8的乘法器。
在一个方面,运算电路215可包括两个不同的通道。第一通道可对信号220和信号225的x个MSB(例如,信号225和信号230的第一分量)进行运算。第二通道可对信号225和信号230的剩余部分(例如,第二分量)进行运算。运算单元215产生输出信号250。在一个方面,在信号225和信号230相关的情况下,信号250可指示由运算电路215执行的仅使用信号225和信号230的非共同分量产生的运算的结果。共同分量可不被运算电路215使用。在信号225和信号230不相关的情况下,信号250可指示对信号225和信号230的整体进行运算的结果,例如,处理信号225和信号230中的每个信号的第一分量和第二分量。
应理解,信号250可与信号235和信号245协调或同步。在信号225和信号230不共有共同分量或不相关的情况下,输出选择电路220可被配置为将信号250整体输出为信号255。在另一方面,在信号225的第一分量和第二分量与信号230的第一分量和第二分量都匹配的情况下,输出选择电路220可整体输出信号245。在另一方面,在信号225和信号230共有共同分量但是不完全匹配的情况下,输出选择电路220可将信号245与信号250的至少一部分组合而输出信号255。将信号245与信号250的一部分组合可表示将由信号245指示的共同分量与由信号250指示的仅对信号225和信号230的非共同分量进行运算的结果的至少一部分联结。
应理解,图2示出系统105的示例性实施方式,其中,第一分量和第二分量之间的界限或边界固定。在其它情况下,如这里将更详细描述的那样,第一分量和第二分量之间的边界可不固定。
图3是示出图2的系统105的示例性实施方式的框图。图3示出系统仅对信号225和信号230的x个MSB进行求值以确定信号是否相关的示例。如图所示,系统105包括相关检测电路205、分量处理电路210、运算电路215和输出选择电路220。为了清楚且容易地示出的目的,未示出图3的用于各种电路元件的时钟信号。为了示出的目的,信号225和信号230的位宽为n,n和m是大于0的整数且n>m。
分量处理电路210包括寄存器302、寄存器304、寄存器306和寄存器308。寄存器302接收信号225的第一分量,或x个MSB。在图3的示例中,信号225的第一分量还被表示为225[n-1:m]。在一个特定示例中,n可等于八,m等于四。然而,应理解,这里提供的示例用于示出的目的而不是为了限制。寄存器304接收信号225的还被表示为225[m-1:0]的第二分量,或剩余部分。寄存器306接收信号230的还被表示为230[n-1:m]的第一分量。寄存器308接收信号230的还被表示为230[m-1:0]的第二分量。寄存器302、寄存器304、寄存器306和寄存器308有效地输出由各个寄存器接收的信号的时钟控制型式或延迟型式。
分别来自寄存器302和寄存器306的信号360和信号362被提供给异或电路310的输入。如图所示,信号360和信号362中的每个信号在宽度上为“n-m”位。异或电路310产生提供给或电路314的输入的输出信号312。当信号360与信号362匹配时,信号312的每位都将为零。当信号360与信号362不匹配时,信号312的至少一位不为零。或电路314产生一位的输出信号315。响应于异或电路310确定信号360与信号362不匹配,信号315的值为1。当信号315的值为1时,信号225与信号230不相关。响应于异或电路310确定信号360与信号362匹配,信号315的值为0。当信号315的值为0时,信号225与信号230被视为具有共同分量。
反相器316接收信号315并产生信号318。信号318是信号315的反相型式。信号315可被提供给寄存器320。寄存器320输出可被作为选择信号提供给乘法器342的信号322。信号315和信号318还可用作用于图3中示出的一个或更多个电路块的时钟使能信号。如图所示,信号315和信号318作为时钟使能信号被提供给分量处理电路210。
分量处理电路210还可包括多个寄存器324、寄存器326、寄存器328、寄存器330和寄存器332。寄存器324和寄存器326均接收作为输入信号的信号360。寄存器324还接收作为时钟使能信号的信号318。寄存器326接收作为时钟使能信号的信号315。寄存器328从寄存器304接收作为输入的信号364。寄存器330接收作为输入的信号362并接收作为时钟使能信号的信号315。寄存器332从寄存器308接收作为输入的信号366。寄存器324、寄存器326、寄存器328、寄存器330和寄存器332有效地输出由各个寄存器接收的信号的时钟控制型式或延迟型式。运算电路215内的高位树(Uppertree)334还接收作为时钟使能信号的信号315。
寄存器324和寄存器326分别接收信号368和信号370。信号368和信号370两者指示225[n-1:m]的延迟型式,但是不同情况下被输出。信号318是信号315的反相型式,当寄存器324被启用并输出信号368时,寄存器326被禁用。当寄存器326被禁用或失活时,寄存器326不输出信号370,例如,寄存器326不转变(transition)。相似地,当寄存器326被启用并输出信号370时,寄存器324被禁用。当寄存器324被禁用时,寄存器324不输出信号368,例如,寄存器324不转变。寄存器328输出信号372,即,225[m-1:0]的延迟型式。寄存器330输出信号374,即230[n-1:m]的延迟型式。如图所示,响应于信号315的值为1,寄存器330被启用并输出信号374,这与寄存器326的启用同时发生。寄存器332输出信号376,即225[m-1:0]的延迟型式。
运算电路215从寄存器326、寄存器328、寄存器330和寄存器332分别接收信号370、信号372、信号374和信号376。在图3的示例中,运算电路215可被实现为插值器。如图所示,运算电路215包括高位树334、低位树(lowertree)336和进位选择加法器电路338。在一个方面,高位树334和低位树336可被实现为乘法器电路。高位树334接收信号370和信号374。信号370和信号374中的每个信号指示第一分量。低位树336接收信号372和信号376。信号372和信号376指示第二分量。
指示位[p-1:0]的权重信号348被提供给寄存器350。P可以是整数值。信号380和信号382的宽度(例如,p)可等于n。寄存器350将信号378输出到寄存器352和寄存器354中的每个寄存器。寄存器352输出信号380,寄存器354输出信号382。信号380和信号382可以是信号348的延迟型式。高位树334从寄存器352接收信号380。低位树336从寄存器354接收信号382。如图所示,寄存器352还接收作为时钟使能信号的信号315。因此,在与寄存器324和寄存器330相同的条件下,寄存器352可输出信号380。在一个方面,根据具体情况,高位树电路334和低位树电路336中的一个电路可接收由信号380或信号382指示的因数值,而另一电路可计算的因数值1-(信号380的值)或1-(信号382的值)。
在一个方面,在信号225和信号230为n位并且n=8且m=4的情况下,高位树334和低位树336均可被配置为4×8树结构。继续示例,进位选择加法器电路338可被实现为16位进位选择加法器电路。当高位树334和低位树336中的每个均激活时,高位树334和低位树336均可输出被提供给进位选择加法器电路338的12位信号。进位选择加法器电路338例如可将接收的信号相加并将16位信号(例如,信号340)输出到输出选择电路220。更具体地讲,在图3的示例中,信号340被提供给乘法器342的输入。如图所示,低位树336可将信号341输出到输出选择电路220。
输出选择电路220包括寄存器344和乘法器342。寄存器344将来自低位树336的输出与来自寄存器324的指示220[n-1:m]的信号368进行组合或联结。作为来自低位树336的输出与信号368的联结的信号346从寄存器344被输出并被提供给乘法器342的另一输入。乘法器342响应于用作乘法器342的控制信号或选择信号的信号322,使信号346或信号340通过作为信号255。
在第一运算状态下,信号225和信号230不相关。信号225和信号230的第一分量不匹配。相应地,寄存器326和寄存器330经由信号315启用,寄存器324经由信号318被禁用。如所指出的那样,信号315和信号318可用作时钟使能信号。寄存器324不转变并且使信号360不通过。寄存器326和寄存器330分别使信号370和信号374通过。寄存器352使信号380通过。高位树334可进行运算(例如,高位树334经由信号315被启用)以使用由信号380指示的权重来处理由信号370和信号374指示的第一分量。低位树336可进行运算以处理由信号372和信号376指示的第二分量。进位选择加法器电路338输出信号340。乘法器342响应于信号322使信号340通过而成为信号255。
在不同的第二运算状态下,信号225和信号230相关。信号225和信号230的第一分量匹配。相应地,寄存器326、寄存器330和寄存器352经由信号315被禁用,而寄存器324经由信号318被启用。寄存器326和寄存器330不转变,这样,寄存器326和寄存器330不分别输出信号370和信号374。寄存器352不转变。启用的寄存器324输出信号368。高位树334经由信号315失活,从而省电。仅低位树336被激活以处理非共同分量,得到的结果与信号368(例如,共同分量)联结。乘法器342响应于信号322使信号346通过而成为信号255。
在图3的示例中,从信号255提取共同分量。然而,应理解,可从信号230提取提供给寄存器344的共同分量。可从信号225或信号230提取共同分量。
图4是示出图2的系统105的另一示例性实施方式的框图。图4示出系统对信号225的第一分量和第二分量以及信号230的第一分量和第二分量进行求值以确定所述信号是否相关的示例。与图3相同,第一分量和第二分量之间的边界是固定的。如图所示,系统105包括相关检测电路205、分量处理电路210、运算电路215和输出选择电路220。为了清楚且容易地示出,未示出用于图4的各种电路的时钟信号。
分量处理电路210包括多个寄存器402、寄存器404、寄存器406和寄存器408。寄存器402接收信号225的被表示为225[n-1:m]的第一分量。信号225和信号230的位宽度为n,n和m为大于0的整数,且n>m。在一个特定示例中,n可等于八,m等于四。然而,应理解,这里提供的示例用于示出的目的而不是为了限制。此外,无论参照图3和/或参照图4,第一分量的宽度不需要等于第二分量的宽度。寄存器404接收信号230的被表示为230[n-1:m]的第一分量。寄存器406接收信号225的被表示为225[m-1:0]的第二分量,或剩余部分。寄存器408接收信号230的被表示为230[m-1:0]的第二分量。寄存器402、寄存器404、寄存器406和寄存器408有效地输出由各个寄存器接收的信号的时钟控制型式或延迟型式。
分别来自寄存器402和寄存器406的信号410和信号412可被提供给相关性检测电路205的输入。相关性检测电路205可包括异或电路414以及或电路418。例如,信号410和信号412可被提供给异或电路414的输入。如图所示,信号410和信号412中的每个信号在宽度上为“n-m”位。异或电路414产生提供给或电路418的输入的输出信号416。当信号410与信号412匹配时,信号416的每位都将为零。当信号410与信号412不匹配时,信号416的至少一位不为零。或电路418产生一位的输出信号420。响应于异或电路414确定信号410与信号412不匹配,信号420的值为1。当信号420的值为1时,信号410与信号412不匹配。响应于异或电路414确定信号410与信号412匹配,信号420的值为0。当信号420的值为0时,信号410和信号412被视为至少部分相关,这是因为第一分量匹配。
分别来自寄存器406和寄存器408的信号422和信号424还可被提供给相关性检测电路205的输入。相关性检测电路205还可包括异或电路426以及或电路430。例如,信号422和信号424可被提供给异或电路426的输入。如图所示,信号422和信号424中的每个信号在宽度上为“m”位。异或电路426产生提供给或电路430的输入的输出信号428。当信号422与信号424匹配时,信号428的每位都将为零。当信号422与信号424不匹配时,信号428的至少一位不为零。或电路430产生一位的输出信号432。响应于异或电路426确定信号422与信号424不匹配,信号432的值为1。当信号432的值为1时,信号422与信号424不匹配。响应于异或电路426确定信号422与信号424匹配,信号432的值为0。当信号432的值为0时,信号422和信号424因第二分量匹配而被视为至少部分相关。
在一个实施例中,包括输出选择电路220的其它电路之中作为信号(例如,信号410、信号412、信号422和/或信号424)的路径的各种线(wire)可被视为分量处理电路210的一部分。
在一个方面,信号420和信号432可被用作时钟使能信号。如图所示,信号420和信号432可被提供给运算电路215。更具体地讲,信号420可作为时钟使能信号被提供给线性插值(LERP)电路434。信号432可被作为时钟使能信号被提供给LERP电路436。
LERP电路434接收作为输入信号的信号410和信号412。LERP电路434还接收信号438,信号438可以是p位的多位信号,其中,p为整数值。P的值可以是非零。在一个方面,信号438的值可以是提供给所示出的LERP电路434和LERP电路436中的每个电路的权重因数。例如,一个LERP电路可使用信号438的值,而另一LERP电路使用值1-(信号438的值)。LERP电路434产生输出信号440。LERP电路436产生输出信号442。
输出选择电路220可包括寄存器444、寄存器446、寄存器448、进位选择加法器电路450和乘法器452。输出选择电路220被配置为将这里描述的各种信号进行组合。例如,寄存器444可被配置为将信号410和信号422联结为信号454。寄存器446可被配置为将信号440和信号422联结为信号456。寄存器448可被配置为将信号410和信号422联结为信号458。进位选择加法器电路450可被配置为将信号440和信号442相加和/或组合为信号460。
当整体考虑信号420和信号432时,信号420和信号432可被称为信号462。信号462(例如,两位信号)可作为选择信号被提供给乘法器452。乘法器452根据控制信号462使信号454、信号456、信号458或信号460通过而成为信号255。
以下的表1示出图4中示出的系统105的示例性实施方式的运算。如图所示,LERP电路434和LERP电路436两者仅需要在情况4被全部启用。在情况1-3,LERP电路434和LERP电路436中的至少一个电路被禁用,从而减少系统的功耗。在情况3中,LERP电路434和LERP电路436两者都可被禁用。通常,通过对信号225和信号230的第一分量和第二分量进行求值,在图3的示例中可因运算电路215的两个通道可在一些情况下被禁用而实现额外的省电。此外,相比于图3的示例,运算电路215的至少一个通道可被禁用的情况数增加。
表1
图5是示出图1的系统105的另一示例性实施方式的框图。如所论述的那样,可使用处理器内的电路装置实现系统105。因此,图5中示出的各个框可表示处理器内的电路或电路装置。在图5中示出的示例中,系统105包括相关性检测电路505、分量处理电路515、运算电路520和输出选择电路525。
相关性检测电路505接收第一输入信号530和第二输入信号535。相关性检测电路505被配置为确定信号530和信号535是否包括信号530和信号535两者共有的第一分量。在一个方面,第一分量可以是信号530和信号535的“x”个最高有效位(MSB),其中,“x”是大于或等于零的整数值。在图5的示例中,在位数方面,第一分量的宽度可以是可变的。可将信号530与信号535进行比较以确定特定位数的匹配MSB。如图所示,相关性检查电路505产生输出信号540。信号540被提供给掩码电路510。信号540指示信号530与信号535是否相关,例如,信号530与信号535是否具有共同的第一分量。如果信号530与信号535相关,则信号540指示共同的第一分量的匹配位数或位数大小。
可使用各种已知电路中的任何一种来实现相关性检测电路505。例如,在一个方面,相关性检测电路505可被实现为识别信号530和信号535的共同的低频分量和不同的更高频率分量的频率分析电路。在另一方面,可使用布尔逻辑门(诸如异或电路装置和/或或电路装置)来实现相关性检测电路505。
掩码电路510被配置为产生被输出到分量处理电路515、运算电路520和输出选择电路525的、由信号545指示的掩码。分量处理电路515可被配置为从信号530和信号535中的至少一个信号提取第一分量。分量处理电路515还可被配置为从信号530和信号535中的每个信号提取第二分量。在一个方面,分量处理电路515通过应用由掩码电路510产生的掩码来提取各种分量。虽然来自信号530和信号535的第一分量可以是共有的,但是信号530的第二分量可与信号535的第二分量不同。如所指出的那样,在图5的示例中,从系统105的一次迭代至另一迭代,第一分量(和第二分量)的宽度可变化。例如,在第一迭代中共同分量可以是1位,在第二迭代中共同分量可以是5位,在第三迭代中,共同分量可以是5位,在第四迭代中,共同分量可以是零位,第二分量由每次迭代中的信号的剩余位组成。在一些情况下,信号530和信号535的全部可被找到以进行匹配,例如,第二分量为零位。
分量处理电路515输出由信号515指示的第一分量和第二分量。应理解,在信号530和信号535不相关的情况下,第一分量在宽度上将不是零位,而信号530的第二分量是信号530的全部,信号535的第二分量是信号535的全部。分量处理电路515输出被提供给输出选择电路525的信号555的第一分量。如图所示,信号555可不经过运算电路520。
运算电路520执行一个或更多个选择的运算。运算电路520产生信号560作为输出而被提供给输出选择电路525。在一个方面,运算电路520使用由信号545指示的掩码来选择性地启用和/或禁用这里实现的选择的电路元件。例如,由于掩码指示共同的第一分量的特定位,因此当信号530和信号535相关时,掩码的位可用于将专用于对第一分量进行运算的运算电路520的电路元件失活或禁用。相似地,运算电路520可使用掩码来启用或激活对第二分量或非共同分量进行运算的运算电路520的电路元件。
输出选择电路525可被配置为将信号555与信560进行组合。例如,输出选择电路525可被配置为将信号555与信号560联结。在一个方面,输出选择电路525可使用由信号545指示的掩码来确定信号555将与信号560组合而通过的部分。例如,在信号530与信号535不相关的情况下,掩码将指示输出选择电路525使信号560的全部通过而成为信号565。在信号530和信号535相关的情况下,掩码指示输出选择电路525将信号560的特定位数与由信号555指示的第一分量联结并提供结果作为信号565。
图6是示出图5的系统105的示例性实施方式的框图。如图所示,系统105包括相关性检测电路505、掩码电路510、分量处理电路515、运算电路520和输出选择电路525。
在图6的示例中,可使用异或电路装置602来实现相关性检测电路505。可将信号530与信号535进行比较。相关性检测电路505产生指示信号530和信号535的特定位匹配或相同的信号540。例如,考虑信号530为八位二进制编码信号[11110100]并且信号535为八位二进制编码信号[11110100]的情况。如信号540指示的那样,对信号530和信号535执行的异或运算的结果为[00000010]。
掩码电路510可被实现为最前1位检测电路604。掩码电路510响应于接收的信号540产生由信号545指示的掩码。通常,掩码电路510检测信号540的最前1位,并将之后的每位转换为1。继续之前的示例,信号545将指示二进制编码掩码[00000011]。
分量处理电路515可包括共同分量提取电路606和非共同分量提取电路608。如图所示,分量处理电路515还包括反相器610。反相器610产生被提供给非共同分量提取电路608的掩码(例如,信号545)的反相型式。没有被反相的信号545被提供给非共同分量提取电路608。共同分量提取电路606被配置为从信号530提取共同分量(如果存在)。非共同分量提取电路608被配置为从信号530和信号535中的每个信号提取非共同分量(例如,第二分量)。在一个方面,如这里使用的应用于分量的术语“提取”可表示将信号的不是试图被提取的分量的部分(无论是第一分量、第二分量、共同分量还是非共同分量)的每位置零。在另一方面,提取可表示将信号的第一分量与第二分量分开。
可使用与电路装置来实现共同分量提取电路606,其中,与电路装置被配置为在信号530和信号545的反相型式之间执行逻辑与运算。例如,信号530[11110100]和信号545的反相型式[11111100]的逻辑与的结果为二进制编码值[11110100]。该示例中的第一共同分量为[111101]。信号530的剩余部分因两位最低有效位为[00]而置零。由共同分量提取电路606确定的结果可被输出为信号555。
可使用与电路装置来实现非共同分量提取电路608,其中,与电路装置被配置为在信号530和信号545之间执行逻辑与运算以及在信号535和信号545之间执行逻辑与运算。例如,信号530[11110100]和信号545[00000011]的逻辑与的结果为二进制编码值[00000000]。该示例中的共同分量[111101]被置零,留下信号530的恰好为[00]的两位最低有效位作为信号530的非共同第二分量。信号535[11110110]和信号545[00000011]的逻辑与的结果为二进制编码值[00000010]。该示例中,同样为[111101]的共同分量被置零,留下信号535的两位最低有效位[10]作为信号535的非共同第二分量。由非共同分量提取电路608确定的结果被输出为信号550。
运算电路520可仅使用经由信号550接收的非共同分量来执行一个或更多个运算。应理解,在信号530和信号535不相关的情况下,信号530和信号535的全部可经由信号550从非共同分量提取电路608被提供给运算电路520。
如图所示,信号545被提供给运算电路520。在一个方面,信号545可由运算电路545用来将专用于处理共同分量的位的电路元件失活或禁用。例如,如果位7、位6、位5、位4、位3和位2的值为信号530和信号535共有的,则运算电路520内的专用于对信号530和信号535的位7、位6、位5、位4、位3和位2进行运算的电路元件可被禁用。信号545的与共同位对应的位将被置零并可被用作这样的分量的时钟使能信号以禁用这样的分量。当信号530和信号535不相关时,信号545的每位将等于1并且不禁用运算电路520的任何电路元件。
输出选择电路525包括联结电路612。如图所示,联结电路612接收作为输入的信号555和信号560。联结电路612还可接收作为选择信号的信号545。信号545指示信号555的多少位将与信号560联结。例如,信号555指示共同分量。信号545指示共同分量555的位宽,这是因为掩码中的等于零的每位与共同分量的位对应。参照之前的示例,共同分量为六位。因此,信号555的六位与信号560的两位联结。信号555和信号560的联结结果的输出从输出选择电路525被输出作为信号565。
应理解,提供图6用于示出目的。这样,图6的示例不意图限制这里公开的发明布置。例如,在另一示例中,掩码可用于提取第一分量,而掩码的反相型式可用于提取第二分量。在这种情况下由电路装置执行的特定逻辑运算可与图6中示出的由电路装置执行的特定逻辑运算不同。在任何情况下,无论掩码被直接使用还是间接使用(例如,在掩码的反相型式被使用或应用于信号的情况下),掩码均可用于提取第一分量和第二分量。
图7是示出图5和/或图6的运算电路520的示例性实施方式的框图。在图7的示例中,运算电路520为插值电路。为了示出目的,信号530和信号535可以是八位信号。如图所示,信号530被提供给与门702。假设八位输入信号、八个与门702可用于处理输入信号520和权重信号714。信号535被提供给与门704。八个与门704可用于使用由反相器706产生的信号714的反相型式来处理信号535。
来自与门702中的每个与门和与门704中的每个与门的输出被或门708处理。可使用八个或门708。或门708产生八个部分乘积项,每个部分乘积项为n+1位宽度,例如,该示例中的九位。应理解,来自与门702和与门704的输出的排列可由或门708保持。例如,第一与门702可处理信号530的第一位(例如,MSB)。第一与门704可处理信号535的第一位(例如,MSB)。第二与门702和第二与门704分别处理信号530和信号535的下一MSB位或第二MSB位,以此类推。因此,第一或门708可处理来自与门702中的第一与门的输出以及与门704中的第一与门的输出。第二或门708可处理来自与门702的第二与门的输出以及来自与门704的第二与门的输出,以此类推。
与门710从或门708、信号535和指示掩码的信号545接收输出。与门710产生九个掩码部分乘积项,每个掩码部分乘积项为n+1位,例如,该示例中的九位。使用信号545将仅影响不被经过的部分乘积加法器712的输出的位清零。
在一个方面,被提供给各个与门710的信号545的掩码所指示的共同分量的每位的零值导致从所述与门产生零值。与门710的输出被提供给部分乘积加法器电路712。掩码部分乘积项的相加结果被输出为信号560。
在另一方面,针对与门710中的每个与门,信号545可用作时钟使能信号,例如,对时钟信号(未示出)进行门控。例如,每个与门710可接收作为时钟使能信号的信号545的相应的位。接收信号545的零位的这些与门710被禁用,例如,时钟信号被门控。
图8是示出处理信号的示例性方法800的流程图。可由参照本公开的图1、图2和/或图5描述的系统执行方法800。方法800可在第一输入信号和第二输入信号被接收的状态下开始。在一个方面,第一输入信号可指示第一纹理元素,而第二输入信号指示图像中靠近第一纹理元素的不同的第二纹理元素。例如,第一纹理元素和第二纹理元素在正被处理的图像中可彼此相邻。在另一示例中,第一输入信号可表示采样信号的第一样本,而第二输入信号表示相同的采样信号的第二样本或之后的样本。
在框805,系统确定第一输入信号和第二输入信号两者共有的第一分量。在一个方面,第一分量在系统的多次迭代期间可以是固定位数。在另一方面,第一分量在系统的多次迭代期间可以是可变化的位数。
在框810,系统提取第一输入信号和第二输入信号共有的第一分量。系统还可从第一输入信号和第二输入信号中的每个信号提取第二分量。第一输入信号的第二分量可与第二输入信号的第二分量不同。
在一个方面,可使用掩码提取第一分量和第二分量。可产生指示共同分量的MSB的位数的掩码。在另一方面,可通过将第一输入信号和第二输入信号简单地划分为固定宽度的分量来提取第一分量和第二分量,其中,第一输入信号和第二输入信号的每个分量经由自己的通道或线传送,从而保持分量之间的分离。
在框815,系统执行一个或更多个运算。例如,运算电路对输入信号执行一个或更多个运算。在第一输入信号与第二输入信号不相关的情况下,运算电路可使用第一输入信号和第二输入信号的全部来执行运算。如框815所示,运算电路可仅对第一输入信号和第二输入信号的第二分量执行运算。例如,在第一输入信号与第二输入信号相关的情况下,运算电路可仅使用第一输入信号和第二输入信号的第二分量来执行运算。在这种情况下,输入信号的第一分量被发现是匹配的并且运算电路不对输入信号的第一分量进行运算。
在执行选择的运算时,运算电路的一个或更多个电路元件可响应于正被处理的输入信号而被实时地启用和/或禁用。在一个方面,禁用电路元件可表示提供给被禁用的电路元件的输入信号被阻止转变,从而禁用的电路元件不转变。在另一方面,禁用电路元件可表示对时钟进行门控和/或将时钟使能信号提供给电路元件,从而禁用电路元件。
在框820,系统可将第一分量与框815中执行的运算的结果进行组合。在一个示例中,系统可将第一分量与框815的运算的结果联结,其中,第一分量被发现是第一输入信号和第二输入信号之间所共有的。
根据这里公开的发明布置,可通过利用接收的信号中的频率不变性和空间局部性来减少信号处理期间的功耗。输入信号的共同分量可被识别并与信号的不同的其它部分区分开。可通过对输入信号被发现为不同的部分进行运算并将处理的结果与共同分量接合来减少功耗。利用位宽减少的输入信号来有效地实现执行的各种运算,这可减少功耗。
这里使用的术语仅是为了描述特定实施例的目的而不意图进行限制。然而,现在将示出贯穿该专利文献应用的若干限定。
如这里所限定的,除非上下文另外明确指示,否则单数形式意图也包括复数形式。
如这里所限定的,术语“另一”表示至少第二个或更多个。
如这里所限定的,除非明确指出,否则术语“至少一个”、“一个或更多个”和“和/或”是在操作中作为连接词和反意连接词两者的开放式表述。例如,表述“A、B和C中的至少一个”、“A、B或C中的至少一个”、“A、B和C中的一个或更多个”、“A、B或C中的一个或更多个”和“A、B和/或C”中的每个表述表示只有A、只有B、只有C、A和B一起、A和C一起、B和C一起或者A、B和C一起。
如这里所限定的,除非另外指示,否则术语“结合联结”表示连接,无论是直接连接而没有任何中间元件或者间接连接而具有一个或更多个中间元件。两个元件可机械结合联结、电结合联结或通过通信信道、通路、网络或系统而交互联结链接。
如这里所限定的,术语“包括”和/或“包含”指示存在所陈述的特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或更多个其它特征、整体、步骤、操作、元件、组件和/或它们的组。
如这里所限定的,根据上下文,术语“如果”表示“当”或“响应于”。因此,根据上下文,短语“如果确定”或“如果[陈述的条件或事件]被检测到”可被解释为表示“当确定[陈述的条件或事件]”或“响应于确定[陈述的条件或事件]”或“当检测到[陈述的条件或事件]”或“响应于检测到[陈述的条件或事件]”。
如这里所限定的,术语“一个实施例”、“实施例”或类似的语言表示结合实施例描述的特定特点、结构或特征被包括在本公开描述的至少一个实施例中。因此,贯穿本公开,短语“在一个实施例中”、“在实施例中”和类似语言的出现可(但是不必需)全部参照相同的实施例。
如这里所限定的,术语“多个”表示两个或多于两个。
如这里所限定的,术语“处理器”表示被配置为执行包括在程序代码中的指令的至少一个硬件电路。硬件电路可以是IC。处理器的示例可包括但不限于CPU、阵列处理器、向量处理器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、专用集成电路(ASIC)、可编程逻辑电路装置、控制器、GPU等。
如这里所限定的,术语“实时”表示用户或系统对于将要做出的特定处理或确定感测得足够快或能够使处理器赶上一些外部处理的处理响应的级别。
如这里所限定的,术语“响应于”表示对动作或事件容易地进行响应或反应。因此,如果第二动作“响应于”第一动作被执行,则第一动作的发生与第二动作的发生之间存在因果关系。术语“响应于”指示因果关系。
有时,术语“信号”可在本公开中用于描述诸如终端、引脚、信号线、线的物理结构和经由物理结构传送的相应信号。术语“信号”可表示一个或更多个信号,诸如单个位经由单条线的传输或多个并行位经由多条并行线的传输。此外,每个信号可表示通过信号连接的两个或更多个组件之间的双向通信。
术语第一、第二等可在这里用于描述各种元件。这里元件不应被这些术语所限制,除非另外指出或者上下文另外明确指示,否则这些术语仅用于将一个元件与另一元件进行区分。
附图中的流程图和框图示出根据本发明布置的各种方面的系统和方法的可行实施方式的架构、功能和操作。在一些替代实施方式中,框中指出的操作可不按附图中指示的顺序发生。例如,相继示出的两个框可基本上同时被执行,或根据涉及的功能框有时可按照相反顺序被执行。还将指出,框图和/或流程图中的每个框以及框图和/或流程图中的框的组合可由基于专用硬件的系统实现,所述系统执行特定功能或实施或执行专用硬件和计算机指令的组合。
如具体要求保护的那样,可在权利要求中找到的所有装置或步骤加功能元件的相应结构、材料、动作和等同物意图包括用于结合其它要求保护的元件来执行功能的任何结构、材料或动作。
一种信号处理的方法可包括:确定第一输入信号和第二输入信号共有的第一分量,并且从第一输入信号和第二输入信号中的至少一个输入信号提取第一分量,从第一输入信号提取第二分量,并从第二输入信号提取第二分量。第一输入信号的第二分量可与第二输入信号的第二分量不同。所述方法可包括:使用提取的第二分量执行运算并将第一分量与运算的结果进行组合。
确定第一输入信号和第二输入信号两者共有的第一分量的步骤可包括:产生指示第一输入信号或第二输入信号中的第一分量与第二分量之间的边界的掩码。
提取的步骤可包括:使用掩码从第一输入信号和第二输入信号中的至少一个输入信号提取第一分量;使用掩码从第一输入信号提取第二分量;使用掩码从第二输入信号提取第二分量。
使用提取的第二分量执行运算的步骤可包括:启用多个电路元件中的被配置为执行对提取的第二分量进行的运算的电路元件;禁用所述多个电路元件中的被配置为执行对第一输入信号的第一分量和第二输入信号的第一分量进行的运算的电路元件。
使用提取的第二分量执行运算的步骤可包括:仅使用第一输入信号的第二分量和第二输入信号的第二分量来执行运算。
在一个方面,运算可以是或包括插值。在另一方面,第一输入信号可包括第一纹理元素,第二输入信号可包括第二纹理元素。在另一方面,第一输入信号是采样信号的第一样本,第二输入信号是所述采样信号的第二样本。
在另一方面,针对确定步骤的多次迭代中的每次迭代,第一分量可具有可变的宽度。在另一方面,针对确定步骤的多次迭代中的每次迭代,第一分量可具有固定的宽度。
一种系统可包括:相关性检测电路,被配置为确定第一输入信号和第二输入信号共有的第一分量;分量处理电路,被配置为从第一输入信号和第二输入信号中的至少一个输入信号提取第一分量,从第一输入信号提取第二分量,并从第二输入信号提取第二分量。第一输入信号的第二分量可与第二输入信号的第二分量不同。所述系统还可包括:运算电路,被配置为使用提取的第二分量执行运算;输出选择电路,被配置为将第一分量与运算的结果进行组合。
在一个方面,第一分量可具有可变的宽度。在这种情况下,所述系统还可包括:掩码电路,被配置为产生指示第一输入信号或第二输入信号的第一分量与第二分量之间的边界的掩码。输出选择电路可包括:联结电路,被配置为根据掩码将第一分量与运算的结果联结。
分量处理电路可包括:共同分量提取电路,被配置为使用掩码的反相型式提取第一分量;非共同分量提取电路,被配置为使用掩码从第一输入信号提取第二分量并从第二输入信号提取第二分量。
在一个方面,运算电路可包括插值电路。在另一方面,运算电路可包括:第一多个电路元件,对提取的第二分量进行运算;第二多个电路元件,对第一分量进行运算。响应于确定第一分量是第一输入信号和第二输入信号共有的,可启用所述第一多个电路元件并禁用所述第二多个电路元件。
在一些情况下,第一分量和第二分量可具有固定的宽度。
第一输入信号可以是是采样信号的第一样本,第二输入信号可以是所述采样信号的第二样本。
在另一方面,所述系统可以是处理器。例如,处理器可以是图形处理单元。第一输入信号可包括第一纹理元素,第二输入信号包括第二纹理元素。
这里提供的本发明布置的描述是为了示出的目的而不意图穷举公开的形式和示例或限制于公开的形式和示例。这里使用的术语被选择用于解释本发明布置的原理、实际应用或对于市场上出现的技术的技术改进和/或用于使本领域普通技术人员能够理解这里公开的实施例。在不脱离本发明布置描述的范围和精神的情况下的修改和变化对于本领域普通技术人员是清楚的。因此,应参照权利要求而不是指示这样的特征和实施方式的范围的以上公开。
Claims (20)
1.一种信号处理的方法,包括:
确定第一输入信号和第二输入信号共有的第一分量;
从第一输入信号和第二输入信号中的至少一个输入信号提取第一分量,从第一输入信号提取第二分量,并从第二输入信号提取第二分量,其中,第一输入信号的第二分量与第二输入信号的第二分量不同;
使用提取的第一输入信号的第二分量和第二输入信号的第二分量来执行运算;
将第一分量与运算的结果进行组合。
2.如权利要求1所述的方法,其中,确定第一输入信号和第二输入信号共有的第一分量的步骤包括:
产生指示第一输入信号或第二输入信号中的第一分量与第二分量之间的边界的掩码。
3.如权利要求2所述的方法,其中,提取的步骤包括:
使用掩码从第一输入信号和第二输入信号中的至少一个输入信号提取第一分量;
使用掩码从第一输入信号提取第二分量;
使用掩码从第二输入信号提取第二分量。
4.如权利要求1所述的方法,其中,使用提取的第一输入信号的第二分量和第二输入信号的第二分量来执行运算的步骤包括:
启用多个电路元件中的被配置为执行对提取第一输入信号的第二分量和第二输入信号的第二分量进行的运算的电路元件;
禁用所述多个电路元件中的被配置为执行对第一输入信号的第一分量和第二输入信号的第一分量进行的运算的电路元件。
5.如权利要求1所述的方法,其中,使用提取的第一输入信号的第二分量和第二输入信号的第二分量来执行运算的步骤包括:
仅使用第一输入信号的第二分量和第二输入信号的第二分量来执行运算。
6.如权利要求1所述的方法,其中,运算包括在第一输入信号和第二输入信号之间进行插值。
7.如权利要求1所述的方法,其中,第一输入信号包括第一纹理元素,第二输入信号包括第二纹理元素。
8.如权利要求1所述的方法,其中,针对确定步骤的多次迭代中的每次迭代,第一分量具有可变的宽度。
9.如权利要求1所述的方法,其中,针对确定步骤的多次迭代中的每次迭代,第一分量具有固定的宽度。
10.如权利要求1所述的方法,其中,第一输入信号是采样信号的第一样本,第二输入信号是所述采样信号的第二样本。
11.一种系统,包括:
相关性检测电路,被配置为确定第一输入信号和第二输入信号共有的第一分量;
分量处理电路,被配置为从第一输入信号和第二输入信号中的至少一个输入信号提取第一分量,从第一输入信号提取第二分量,并从第二输入信号提取第二分量,其中,第一输入信号的第二分量与第二输入信号的第二分量不同;
运算电路,被配置为使用提取的第一输入信号的第二分量和第二输入信号的第二分量来执行运算;
输出选择电路,被配置为将第一分量与运算的结果进行组合。
12.如权利要求11所述的系统,其中,第一分量具有可变的宽度,所述系统还包括:
掩码电路,被配置为产生指示第一输入信号或第二输入信号的第一分量与第二分量之间的边界的掩码。
13.如权利要求12所述的系统,其中,输出选择电路包括:联结电路,被配置为根据掩码将第一分量与运算的结果联结。
14.如权利要求12所述的系统,其中,分量处理电路包括:
共同分量提取电路,被配置为使用掩码的反相型式来提取第一分量;
非共同分量提取电路,被配置为使用掩码从第一输入信号提取第二分量并从第二输入信号提取第二分量。
15.如权利要求11所述的系统,其中,运算电路包括:
插值电路,被配置为在第一输入信号和第二输入信号之间进行插值。
16.如权利要求11所述的系统,其中,运算电路包括:
第一多个电路元件,对提取的第一输入信号的第二分量和第二输入信号的第二分量进行运算;
第二多个电路元件,对第一分量进行运算;
其中,响应于确定第一分量是第一输入信号和第二输入信号共有的,启用所述第一多个电路元件并禁用所述第二多个电路元件。
17.如权利要求11所述的系统,其中,第一分量和第二分量具有固定的宽度。
18.如权利要求11所述的系统,其中,第一输入信号是采样信号的第一样本,第二输入信号是所述采样信号的第二样本。
19.如权利要求11所述的系统,其中,所述系统为处理器。
20.如权利要求19所述的系统,其中:
处理器为图形处理单元;
第一输入信号包括第一纹理元素,第二输入信号包括第二纹理元素。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462018157P | 2014-06-27 | 2014-06-27 | |
US62/018,157 | 2014-06-27 | ||
US14/712,675 US9946331B2 (en) | 2014-06-27 | 2015-05-14 | System and method to process signals having a common component |
US14/712,675 | 2015-05-14 | ||
KR1020150084345A KR102435525B1 (ko) | 2014-06-27 | 2015-06-15 | 공통 컴포넌트를 갖는 신호들을 처리하는 방법 |
KR10-2015-0084345 | 2015-06-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105320245A true CN105320245A (zh) | 2016-02-10 |
CN105320245B CN105320245B (zh) | 2021-05-04 |
Family
ID=54931084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510364641.XA Active CN105320245B (zh) | 2014-06-27 | 2015-06-26 | 处理具有共同分量的信号的方法和系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9946331B2 (zh) |
JP (1) | JP2016012350A (zh) |
KR (1) | KR102435525B1 (zh) |
CN (1) | CN105320245B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5059942A (en) * | 1990-01-03 | 1991-10-22 | Lockheed Sanders, Inc. | Bit masking compare circuit |
CN1365049A (zh) * | 2001-01-10 | 2002-08-21 | 三星电子株式会社 | 用于计算机算术运算的部分匹配部分输出高速缓冲存储器 |
CN101030295A (zh) * | 2006-02-27 | 2007-09-05 | 精工爱普生株式会社 | 利用运算处理装置的数据变换方法、纹理生成方法、程序、记录媒体及投影机 |
US7466867B2 (en) * | 2004-11-26 | 2008-12-16 | Taiwan Imagingtek Corporation | Method and apparatus for image compression and decompression |
CN102087740A (zh) * | 2009-12-08 | 2011-06-08 | 英特尔公司 | 用于通用计算的纹理单元 |
CN102129861A (zh) * | 2010-01-15 | 2011-07-20 | 富士通株式会社 | 信号变换方法和系统 |
CN102905126A (zh) * | 2011-07-25 | 2013-01-30 | 索尼公司 | 图像处理方法、编码设备、解码设备以及图像处理装置 |
CN103503032A (zh) * | 2011-05-02 | 2014-01-08 | 索尼电脑娱乐公司 | 图形硬件中的纹理化 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5185856A (en) | 1990-03-16 | 1993-02-09 | Hewlett-Packard Company | Arithmetic and logic processing unit for computer graphics system |
US6025853A (en) | 1995-03-24 | 2000-02-15 | 3Dlabs Inc. Ltd. | Integrated graphics subsystem with message-passing architecture |
US5892516A (en) | 1996-03-29 | 1999-04-06 | Alliance Semiconductor Corporation | Perspective texture mapping circuit having pixel color interpolation mode and method thereof |
US6882364B1 (en) * | 1997-12-02 | 2005-04-19 | Fuji Photo Film Co., Ltd | Solid-state imaging apparatus and signal processing method for transforming image signals output from a honeycomb arrangement to high quality video signals |
US6356276B1 (en) | 1998-03-18 | 2002-03-12 | Intel Corporation | Median computation-based integrated color interpolation and color space conversion methodology from 8-bit bayer pattern RGB color space to 12-bit YCrCb color space |
US20030105945A1 (en) * | 2001-11-01 | 2003-06-05 | Bops, Inc. | Methods and apparatus for a bit rake instruction |
US7016415B2 (en) | 2002-07-16 | 2006-03-21 | Broadcom Corporation | Modifying motion control signals based on input video characteristics |
US6825838B2 (en) * | 2002-10-11 | 2004-11-30 | Sonocine, Inc. | 3D modeling system |
US7130467B1 (en) * | 2003-03-19 | 2006-10-31 | Microsoft Corporation | Real time data matching |
US7646817B2 (en) | 2003-03-28 | 2010-01-12 | Microsoft Corporation | Accelerating video decoding using a graphics processing unit |
US7355603B2 (en) | 2004-08-04 | 2008-04-08 | Nvidia Corporation | Filtering unit for floating-point texture data |
JP4434155B2 (ja) * | 2006-02-08 | 2010-03-17 | ソニー株式会社 | 符号化方法、符号化プログラムおよび符号化装置 |
US8681098B2 (en) | 2008-04-24 | 2014-03-25 | Oblong Industries, Inc. | Detecting, representing, and interpreting three-space input: gestural continuum subsuming freespace, proximal, and surface-contact modes |
US8644643B2 (en) | 2006-06-14 | 2014-02-04 | Qualcomm Incorporated | Convolution filtering in a graphics processor |
US8711144B2 (en) | 2006-08-01 | 2014-04-29 | Siemens Medical Solutions Usa, Inc. | Perception-based artifact quantification for volume rendering |
US8051123B1 (en) | 2006-12-15 | 2011-11-01 | Nvidia Corporation | Multipurpose functional unit with double-precision and filtering operations |
US8441497B1 (en) | 2007-08-07 | 2013-05-14 | Nvidia Corporation | Interpolation of vertex attributes in a graphics processor |
US8325184B2 (en) | 2007-09-14 | 2012-12-04 | Qualcomm Incorporated | Fragment shader bypass in a graphics processing unit, and apparatus and method thereof |
US8724829B2 (en) | 2008-10-24 | 2014-05-13 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for coherence detection |
US9235392B2 (en) * | 2014-01-22 | 2016-01-12 | Nvidia Corporation | System, method, and computer program product for improved power efficiency during program code execution |
-
2015
- 2015-05-14 US US14/712,675 patent/US9946331B2/en active Active
- 2015-06-15 KR KR1020150084345A patent/KR102435525B1/ko active IP Right Grant
- 2015-06-24 JP JP2015126451A patent/JP2016012350A/ja active Pending
- 2015-06-26 CN CN201510364641.XA patent/CN105320245B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5059942A (en) * | 1990-01-03 | 1991-10-22 | Lockheed Sanders, Inc. | Bit masking compare circuit |
CN1365049A (zh) * | 2001-01-10 | 2002-08-21 | 三星电子株式会社 | 用于计算机算术运算的部分匹配部分输出高速缓冲存储器 |
US7466867B2 (en) * | 2004-11-26 | 2008-12-16 | Taiwan Imagingtek Corporation | Method and apparatus for image compression and decompression |
CN101030295A (zh) * | 2006-02-27 | 2007-09-05 | 精工爱普生株式会社 | 利用运算处理装置的数据变换方法、纹理生成方法、程序、记录媒体及投影机 |
CN102087740A (zh) * | 2009-12-08 | 2011-06-08 | 英特尔公司 | 用于通用计算的纹理单元 |
CN102129861A (zh) * | 2010-01-15 | 2011-07-20 | 富士通株式会社 | 信号变换方法和系统 |
CN103503032A (zh) * | 2011-05-02 | 2014-01-08 | 索尼电脑娱乐公司 | 图形硬件中的纹理化 |
CN102905126A (zh) * | 2011-07-25 | 2013-01-30 | 索尼公司 | 图像处理方法、编码设备、解码设备以及图像处理装置 |
Non-Patent Citations (1)
Title |
---|
DAVID BROOKS等: "Value-based clock gating and operation packing", 《ACM TRANSACTIONS ON COMPUTER SYSTEMS (TOCS)》 * |
Also Published As
Publication number | Publication date |
---|---|
US9946331B2 (en) | 2018-04-17 |
KR20160001639A (ko) | 2016-01-06 |
JP2016012350A (ja) | 2016-01-21 |
KR102435525B1 (ko) | 2022-08-23 |
US20150379673A1 (en) | 2015-12-31 |
CN105320245B (zh) | 2021-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Krishnan | Probability and random processes | |
KR102224510B1 (ko) | 데이터 관리를 위한 시스템들 및 방법들 | |
US9235798B2 (en) | Methods and systems for handling data received by a state machine engine | |
Tsigkanos et al. | A 3.3 Gbps CCSDS 123.0-B-1 multispectral & hyperspectral image compression hardware accelerator on a space-grade SRAM FPGA | |
CN111160485B (zh) | 基于回归训练的异常行为检测方法、装置及电子设备 | |
CN110955659B (zh) | 处理数据表的方法及系统 | |
CN113450215A (zh) | 交易数据的风险检测方法、装置和服务器 | |
CN110647973A (zh) | 运算方法及相关方法和产品 | |
CN111429388B (zh) | 一种图像处理方法、装置和终端设备 | |
US20080281897A1 (en) | Universal execution unit | |
CN113449160A (zh) | 数据智能筛选方法、装置、设备及介质 | |
CN112241904A (zh) | 商品销售量预测方法、装置、计算机设备和存储介质 | |
CN105320245A (zh) | 处理具有共同分量的信号的方法和系统 | |
EP3200098A1 (en) | Methods and apparatus for comparing different types of data | |
CN107688596B (zh) | 突发话题检测方法及突发话题检测设备 | |
US20230367884A1 (en) | Cyber attack scenario generation method and device | |
KR20180038812A (ko) | 복수의 쿠폰 정보를 포함하는 통합 바코드를 생성 및 판독하는 방법 및 이를 수행하는 어플리케이션 | |
CN110763984A (zh) | 逻辑电路失效率确定方法、装置、设备及存储介质 | |
JP5915154B2 (ja) | 集積回路最適化プログラム及び集積回路最適化装置 | |
US10693494B2 (en) | Reducing a size of multiple data sets | |
Valverde et al. | A software controlled hardware acceleration architecture for image processing using an embedded development board | |
CN110214315A (zh) | 信息处理系统、信息处理设备、外围设备、数据传输方法和存储数据传输程序的非暂时性存储介质 | |
Marchetti et al. | iDaVIE-v: immersive Data Visualisation Interactive Explorer for volumetric rendering | |
US11599816B2 (en) | Method and system for identifying target platform | |
WO2023086022A2 (en) | System and method for early fake account detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |