用于阵列处理的可编程的延迟指数的数据通路寄存器堆制造技术

技术编号:2864247 阅读:223 留言:0更新日期:2012-04-11 18:40
一个延迟编址数据通路的寄存器堆,其被设计用于组成多处理器或阵列信号处理系统中的单元的可编程处理器。对于滤波器更新延时为变量的自适应滤波器,内插因子必须是可编程的内插滤波器,和抽取因子必须是可编程的抽取滤波器来说,该延迟可编址寄存器堆是特别有用的。通过减少执行任务所需的循环次数,该可编程性用这个有效的方法而被实现。一个参数,即“延迟限制”值在启动时被编程,从而在处理器的寄存器堆内建立一个内部延迟线。从而,通过在运行时间中指定延迟指数,任何延迟寄存器都可以被编址。当处理回路开始新的反复操作时,延迟线前进一个存储单元,即模“延迟限制”。(*该技术在2022年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及数字信号处理,并更加特别地涉及在阵列处理及其它多处理器系统中优化数据存取。
技术介绍
循环缓冲区通常可以在数字信号处理器中发现,比如模拟装置ADSP 2181或Philips REAL DSP,其中,在通过模操作修改地址之后,存储段可以被编址。在此情况下,数据在一个循环中被取出,并且被存储在寄存器中,以及在下一个循环中被用作操作对象。在这类实例中,循环缓冲区被保存在存储器中,并且为了处理缓冲区中存储的数据或恰当地向缓冲区写入新的数据,存储器读/写指令必须被使用。这类指令增加了计算开销、指令集的复杂度以及增加了额外的存储处理时间。除了循环缓冲区的这类常规应用之外,不存在允许寄存器堆直接模编址或者在阵列处理器中使用模编址的已知设计。模编址允许简化数据元件系列的依次链接,其中,当系列末尾被达到时,序列折回到开始。例如,在有用0到N编号的N个数据存储单元的循环缓冲区中,其中,系统被这样建立,因此给定存储单元X的下一个存储单元被定义为X+1,模编址允许(N-1)+1=0(mod N),从而实现环绕效应。换言之,循环存储器可以被这样建立,因此给定存储单元X的下一个存储单元被定义为X-1,然后0-1=(N-1)(mod N),又实现了环绕效应。例如,在共同未决的美国专利申请序列号09/968,119的公开内容中,在被设计用于高通过量重复信号处理的多处理器或阵列处理器环境中,单独的单元已经被限制或者取消存储器编址能力。在此情况下,在存储器中保存一个循环缓冲区增加了处理的复杂度;这是根本不可能的。等效于在存储器中启用循环缓冲区,在处理中简化模编址数据被存储于其中的当前寄存器,从而简化了这类阵列处理器单元中的延迟线等等。不存在允许在数据通路指令中模编址的已知设计。为了解决常规技术中的缺失,需要一个用数据通路指令来模编址寄存器的方法和设备。该方法将允许处理器在当前寄存器中保存诸如延迟线之类的连续数据系列,从而排除了存储器处理能力的需要。
技术实现思路
一个延迟编址数据通路寄存器堆,其被设计用于组成多处理器或阵列信号处理系统中的单元的可编程处理器。对于滤波器更新延时为变量的自适应滤波器,内插因子必须是可编程的内插滤波器,和抽取因子必须是可编程的抽取滤波器来说,该延迟可编址寄存器堆是特别有用的。通过减少执行任务所需的循环次数,该可编程性用这个有效方法而被实现。单个参数,即″延迟限制″值在启动时被编程,从而在处理器的寄存器堆内建立一个内部延迟线。从而,通过在运行时间中指定延迟指数,任何延迟寄存器都可以被编址。当处理回路开始新的反复操作时,延迟线前进一个存储单元,即模″延迟限制″。图例简要说明附图说明图1-2说明指针修改寄存器编址;图1A和2A分别是具有数据寄存器的可仿效内容的图1和2;图3描述一个根据本专利技术的延迟索引的寄存器组的实例;图4描述图3的寄存器被移位1的情况;图5描述了一个作为均衡器的自适应滤波器的典型结构;图6描述了内插滤波器的多相实施;图7描述了一个抽取滤波器;和图8描述了用于抽取滤波器的双寄存器堆。在本专利技术的一个或多个实施例被详细说明之前,应当理解本专利技术不受限于其申请书中的详细结构和在以下描述中阐述的或在附图中说明的元件安排。本专利技术能够适用于其它实施例并且能够用多种方式被实践或执行。此外,应当理解,在此使用的措词和术语是为了描述的目的而不应该被认为是任何方式的限制。最优方案详细说明卷积是在许多申请中,特别是在数字滤波器中都能找到的基本的信号处理操作。数字滤波器可以使用阵列处理技术而被优致地实现,比如在上述共同未决的美国专利申请序列号09/968,119(″主申请″)中说明的用于多标准信道解码器(MSCD)的可重构的自适应滤波器阵列处理器。可重构的处理器阵列由同样的处理器单元组成,每个处理器单元都能够与离它最新的处理器单元通信并且能够被编程来分别执行单个任务。由于需要支持高数据速率和约束成本,因此那些单元必须是简易和有效的。通过设计有效的指令集和支持实现指令的结构,单元的效率在某种程度上被确定。本专利技术说明了延迟地址寄存器的设计和相应的指令。这类指令可以在各种滤波应用中被充分利用,包括例如在阵列处理环境中的自适应滤波和多速率滤波。延迟编址数据通路寄存器堆能够被用于任何基于滤波器设计的阵列并且不受限于在主申请中说明的二维阵列。为了具体说明本专利技术,先讨论一下关于寄存器编址模式。让给定的处理器具有标号为RI_x的寄存器堆集,其中,x是0和N-1之间的一个值,和N是数据通路寄存器的总数。此外,让处理器具有一个典型的类似于RISC的指令集和一个执行指定回路的顺序控制器。例如,一个加法指令的形式为ADD SRC1 SRC2 DST,其中,SRC1是源操作对象1,SRC2是源操作对象2和DST是目标寄存器。三个操作对象都从寄存器堆提取。一般地,像ADD RI_0 RI_1 RI_2的指令将简单地合计寄存器堆的存储单元0和1中的寄存器的内容并且把结果存储在存储单元2中。在C语言注释中,这将被写作RI[2]=RI+RI[1]。在这些实例中,所有的编址都是内含的和静态的(按时改正)。指针修改编址的工作原理略有不同。指针修改编址是一种间接编址形式。一个附加寄存器组、即指针寄存器组被保存,从而用相应的指针寄存器组的内容来映射数据通路寄存器的地址。从而,让指针寄存器组被称作RD_x。类似于ADD RI_0 RI_1 RI_2的指令被实际地转换成方法RI[RD[2]]=RI[RD]+RI[RD[1]]。从而,指令的操作对象是其地址被包含在RD_x寄存器组中的数据寄存器。如果指针寄存器组的内容是这样的以致RD_x=x,则指针修改编址的工作情况将正好和前一段落中说明的隐含编址的工作情况一样。本专利技术使用延迟指数编址。延迟指数编址是指针修改编址的修改形式。它本质上是寄存器堆的指针修改编址,其具有某些RD(指针)寄存器堆内容的初始条件和每个数据周期自动移位指针的机理。RD的内容在启动时被依次增加,其意味着RD_0=0、RD_1=1,...,RD_N=N等等。然后,每当处理循环重新开始,即着每当程序计数器变成0,指针寄存器组中的寄存器内容就被移位到下一个寄存器中,其意味着(″下一个″被定义为后续的)RD_x(当前的)=RD_(x-1)(先前的),并且第一寄存器的内容被调入到最后一个。(如果″下一个″被定义为在前的,则等效移位能够出现,RD_x(当前的)=RD_x+1(先前的),并且最后一个寄存器的内容被调入到第一个寄存器中。)这可以通过参考图1和图2被说明。在RD_x 110、210和RI_x 120、220的这些附图描述的每一个中,寄存器组被示出。为了例证的目的,每组寄存器包括地址为0到3的4个寄存器。寄存器150、250的地址在每个寄存器的(输出)端上被示出。下一个在此被定义为后续的,因此每次移位,给定的RD_x寄存器的内容被转入后续的寄存器,并且最后的寄存器的内容被调入第一个寄存器。指针指出RD_x寄存器的内容的在RI_x寄存器组中的指向。在图1中,t=n 101,即启动情况在左边被说明,其中,RD_x=x。当t=n+1 102时,在图1的右边说明的是,指针寄存器RD_x的内容被移位,因此如上所述RD_x(当前的)=RD_(x_本文档来自技高网
...

【技术保护点】
一种用于处理器的模可编址的数据通路寄存器堆,包括:    第一组寄存器(RDX)(110、210、310、410)和    第二组寄存器(RI_X)(120、220、320、420);    其中,第一组寄存器(110、210、310、410)存储第二组寄存器(120、220、320、420)的地址,并且其中,第二组寄存器(120、220)储存数据;和    其中,第一组寄存器(110、210、310、410)中的两个或更多的寄存器被顺序排列在一个循环结构中,因此第一寄存器依次向上一个后面的下一个传递。

【技术特征摘要】
US 2001-12-21 10/026,2581.一个用于处理器的模可编址的数据通路寄存器堆,包括第一组寄存器(RDX)(110、210、310、410)和第二组寄存器(RI_X)(120、220、320、420);其中,第一组寄存器(110、210、310、410)存储第二组寄存器(120、220、320、420)的地址,并且其中,第二组寄存器(120、220)储存数据;和其中,第一组寄存器(110、210、310、410)中的两个或更多的寄存器被顺序排列在一个循环结构中,因此第一寄存器依次向上一个后面的下一个传递。2.权利要求1的寄存器堆,其中,每当处理器回路开始新的反复操作,循环结构中的寄存器(110、210、310、410)就根据公式RDX=RD_(X+k)(模M)来改变它们的内容,其中,k是一个整数;和其中,模M等于来自用于循环结构的第一组(110、210、310、410)的寄存器的数目乘以非零值|k|,和当k=0时乘以1。3.权利要求2的寄存器堆,其中,k是0、+/-1、+/-3或+/-4中的一个。4.权利要求3的寄存器堆,其中,第一组(110、210、310、410)中的N个寄存器被编号为0到N-1。5.权利要求4的寄存器堆,其中,该循环结构被用来存储N个数据抽样序列,每个抽样比序列中的先前抽样延迟一个抽样周期。6.权利要求5的寄存器堆,其中,参数N在处理器操作启动时是可编程的,并且它是一个大于最大支持延迟的数,表示为抽样周期单元。7.权利要求6的寄存器堆,其中,抽样被存储在RI_X寄存器组(120、220、320、420)中。8.权利要求7的寄存器堆,其中,RI_X(120、220、320、420)寄存器由循环结构中的RD_X寄存器指向。9.权利要求8的寄存器堆,其中,抽样被存储在RIX寄存器组(120、220、320、420)中的连续存储单元中。10.一个多处理器系统,包括多个单元,每个单元有一个单独的处理器;其中,每个单元有权利要求6的寄存器堆,和其中,处理器能够执行操作对象是RD_X寄存器(110、210、310、410)的指令。11.权利要求10的系统,其中,每个单元有一个可编程参数,该可编程参数为该单元设置N的值。12.优化数字信号处理的一个方法,包括在第一寄存器组(RDX)(110、210、310、410)中实现模编址;启动处理器,从而通过操作指向数据的寄存器来操作第二寄存器组(120、220、320、420)中的数据。13.权利要求12的方法,其中,每当处理器回路开始一个新的反复操作,在第一寄存器组(110、210、310、410)中的寄存器就根据公式RD_X=RD_(X+k)(模M)来改变它们的内容,其中,k是一个整数;和其中,模M等于用来指向第二寄存器组(1...

【专利技术属性】
技术研发人员:K维亚纳坦GF布恩斯
申请(专利权)人:皇家飞利浦电子股份有限公司
类型:发明
国别省市:NL[荷兰]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利