用于提高电信系统中压缩和解压缩算法的性能的系统的制作方法

文档序号:6404682阅读:185来源:国知局
专利名称:用于提高电信系统中压缩和解压缩算法的性能的系统的制作方法
背景技术
本发明一般涉及电信系统,尤其涉及这样一个系统,其能够在保持灵活性的同时使用于执行压缩和解压缩算法所需要的处理器周期数达到最小。
在电信系统中使用模数转换器对声音信号采样。从该转换器输出的数据是声音信号的线性表示。该线性数据一般用诸如μ-定律或A-定律的压缩算法进行编码。μ-定律是一种德克萨斯仪器公司(Texas Instruments(TI))的标准算法,它描述了在美国、加拿大以及日本所使用的脉冲编码调制(PCM)系统的模-数转换中执行的非线性压缩。A-定律是欧洲邮政电信委员会(CEPT)管理的标准算法,它描述了在欧洲及其他大多数国家所使用的PCM系统的模-数转换中执行的非线性压缩。经过编码的数据通过网络传输。在网络的接收端,数据得到解码。解码后的信号通过数-模转换器以产生模拟声音信号。
通常,μ-定律和A-定律编码器和解码器的算法或是在硬件中实现或是在软件中实现。第一种解决方案是在数据通道中以硬件模块的方式实现这些算法。因此,所有通过该数据通道的数据都受到编码或被解码。虽然这种方法是有效的,但它是不灵活的,因此对有些系统是不适合的。
另外一个解决方案是用软件或在处理器上实现这些算法,从而允许与硬件解决方案相比而言的增加的灵活性。然而这种算法会消耗大量的处理器周期,尤其是处理器正在为许多不同的信道提供服务的时候。这种方法虽然灵活,但是它较为耗时,因此对有些系统是不适合的。
还有另外一种解决方案是使用独立的、通过其存储器或输入输出接口可访问处理器的硬件模块来实现该算法。然而这些接口往往比内部处理器的操作要慢。因此,虽然这一解决方案能够和前几个解决方案相比有所改进,但此方案仍然会消耗大量的处理器周期。
因此,对系统而言存在这样一种需要,即,它既能够实现压缩和解压缩算法并提供灵活性,同时还能减少所需的处理器周期数。本发明的目的是消除或减轻至少上述的一些缺点。

发明内容
根据本发明的一个方面,提供了一种用于对至少一个输入信号执行压缩和解压缩的算术逻辑单元(ALU)。所述ALU包括下列单元。标准的ALU部件对至少一个输入信号执行标准的ALU操作。编码单元对至少一个输入信号执行压缩。解码单元对至少一个输入信号执行解压缩。指令解码器接收ALU指令并对其进行解码。输出选择器根据所述解码指令选择来自所述标准ALU部件、所述编码单元以及所述解码单元之一的结果,并提供这个结果作为输出。
附图的简要说明现在将参考附图以举例的方式对实施方案进行说明,其中

图1是具有编码和解码能力的算术逻辑单元(ALU)的方框图。
本发明的详细说明出于方便,附图中相同的标号指代了相同的结构。处理器的算术逻辑单元(ALU)是处理器的一部分,其执行一个指令的算术或逻辑功能。例如,对于一个加法指令,ALU将两个操作数加在一起,并提供他们的和以作为结果。通常,处理器的其它部分对指令进行解码、取出输入操作数以及写结果。
对处理器增加μ-定律和/或A-定律编码器和译码器指令允许使编码和解码作为软件解决方案的一部分,同时最小限度消耗处理器周期数。这是真实的,因为ALU被植入到处理器的内部,因此处理器不需要通过存储器或输入/输出接口访问编码器或解码器单元。
参考图1,其中示出了根据本发明实施方案所述的ALU,它通常由标号100指代。该ALU 100包括标准ALU操作逻辑块102、编码器104、解码器106、结果选择器108以及指令解码器110。和公知的技术一样,第一操作数(操作数1)和第二操作数(操作数2)被输入到标准ALU操作逻辑块102,第一操作数(操作数1)被进一步输入到编码器104和解码器106。标准ALU操作逻辑块102、编码器104和解码器106的输出被输入到结果选择器108。模式指示符是编码器104和解码器106的另一输入。指令解码器110用于对输入指令进行解码并从标准ALU操作逻辑块102、编码器104或解码器106选择结果。
标准ALU操作逻辑块102由算术和逻辑功能组成,这两个功能在现有技术的处理器状态下都是标准的。虽然有些ALU操作可能仅使用单个操作数,但标准ALU操作逻辑块102通常具有两个操作数,即操作数1和操作数2,以作为输入。在指令到达ALU之前,这些操作数由指令指定并由处理器的其它部分取出。处理器从寄存器或存储器中取出这些操作数。标准ALU块102对这些操作数执行各种算术和逻辑功能,并相应地提供多个结果。
类似地,编码器104接受单个操作数输入并产生一个单一的结果作为输出。模式指示符用于选择待使用μ-定律或A-定律编码算法中的哪一个。因此,在本实施方案中,模式指示符仅需要一位的宽度。编码器104包括μ-定律编码器和A-定律编码器,它们都符合国际电信联盟电信标准化部门(ITU-T)G.711规范。
解码器106也接受单个操作数输入并产生一个单一的结果作为输出。模式指示符用于选择待使用μ-定律或A-定律解码算法中的哪一个。解码器106包括都符合ITU-T G.711规范的μ-定律解码器和A-定律解码器。
指令解码器110将接收的指令作为其输入,对指令进行解码并将解码后的指令提供给结果选择器108。如果指令解码器110逻辑简单,则它可被嵌入结果选择器108自身。
结果选择器108对来自标准ALU操作逻辑块102、编码器104以及解码器106的结果进行多路复用(multiplex)。结果选择器用解码后的指令选择需要的结果,从而产生单一的ALU结果。ALU结果的选择机制与用于在标准ALU算法指令之间进行选择的机制类似。选择电路被扩充以包括编码和解码指令。ALU结果可被写入寄存器或存储器单元,结果的预定目的地被指定在指令中。通常由处理器的另外一个部分将结果写入其目的地。
图中没有示出的是一些标志。多数ALU操作都可以产生这些标志。一个标志是单独的一位,用于检查结果中的特殊条件。例如,零标志将用于检查结果是否为零,而负标志将用于检查结果是否为负。在本实施方案中,可以为各ALU操作都产生标志,并且可以按照与上述结果相同的方式对各标志进行多路复用。编码和解码操作不影响标志。因此,当选择了这些指令中的一个指令时,先前的标志被多路复用成为输出ALU标志,由此将相同的值重新写回标志寄存器中。
指令是处理器执行的程序代码的要素。它定义了待要执行的ALU操作。它还定义了在何处取出输入操作数以及在何处存放ALU输出结果。一条指令也可以包含其他影响指令执行的信息。因此,除编码器104和解码器106之外,新指令被增加入ALU以影响它们的使用。
用相应的指令唤醒编码器104和解码器106以进行编码和解码。这些指令表示为law_enc和law_dec。模式指示符确定出使用μ-定律算法还是使用A-定律算法来进行编码和解码。例如,如果模式指示符被设为“1”,则执行μ-定律编码;如果模式被设置为“0”,则执行A-定律编码。可选地,如果模式指示符被设为“0”则执行μ-定律编码;如果模式被设为“1”,则执行A-定律编码。在本实施方案中,模式指示符被存储在处理器内部的寄存器中。然而,怎样应用这一位则取决于所使用的处理器。在这种特定的应用中,该位被存入一个辅助寄存器中,辅助寄存器是一个独立于存储器地址空间的地址空间。
编码指令law_enc被编码为<law_enc dest,src>。这里的‘dest’是目的地址,‘src’是源地址。即,‘src’是这样一个位置,从这个位置取得用于编码指令law_enc的输入操作数(操作数1),而‘dest’则是编码指令law_enc的结果应该存放的位置。因此,根据一个实施方案,指令取出线性数据的一个字并返回一个编码字节。这个字根据模式指示符的状态被μ-定律算法编码或被A-定律算法编码。
解码指令law_dec被编码为<law_dec dest,src>。这里的‘dest’是目的地址,‘src’是源地址。根据一个实施方案,指令取出数据的一个编码字节并返回一个解码字。这个字节根据模式指示符的状态被μ-定律算法解码或被A-定律算法解码。
编码指令law_enc和解码指令law_dec像其它算术指令一样被建立。输入操作数与用作其它指令输入的输入操作数一样。虽然其它的一些算术操作要使用两个操作数,但law_enc和law_dec仅需要单个操作数。当执行law_enc或law_dec指令时,输出被选择作为ALU结果。ALU结果的选择机制和用于在标准ALU算法指令之间进行选择的机制相同。选择电路被简单扩充以包括law_enc和law_dec指令。
在一个备选的实施方案中,可用四条指令取代两条指令和模式指示符。如果需要将两种算法混合则这个实施方案是有用的。在这种实施方案中,可以有两个编码器和两个解码器,其中每一个都用于μ-定律和A-定律的编码和解码算法。因此,每条指令从相应的解码器或编码器选择一个结果,所以不再需要模式指示符。
在另一个实施方案中使用了第一实施方案所述的编码器和解码器单元,并且指令被用于根据是需要μ-定律或A-定律算法来转换模式指示符。
在还有一个实施方案中,模式指示符包括用于允许选择多于两个算法的多个位。在这个实施方案中,编码器和解码器可以包括几个算法,其允许包含有潜在的未来算法。
尽管参考特定的实施方案对本发明进行了说明,但对本领域普通技术人员而言,显然可以在不背离由所附权利要求定出的本发明的精神和范围的情况下对本发明做出各种修改。
权利要求
1.在一电信系统中,算术逻辑单元(ALU)用于处理至少一个输入信号,所述至少一个输入信号包括表征模拟信号的数字信号,所述ALU包括标准ALU部件,用于对所述至少一个输入信号执行标准的ALU操作;编码单元,用于对所述数字信号有选择地执行压缩;解码单元,用于对所述数字信号有选择地执行解压缩;指令解码器,用于接收和解码ALU指令;以及输出选择器,用于根据所述ALU指令选择来自所述标准ALU、所述编码单元以及所述解码单元之一的结果,并提供所述结果作为输出。
2.如权利要求1所述的ALU,其特征在于,所述编码单元和所述解码单元能够根据多个不同的算法有选择地执行压缩和解压缩。
3.如权利要求2所述的ALU,其特征在于,所述多个不同算法中的一个被选择用于执行压缩和解压缩。
4.如权利要求3所述的ALU,还包括模式指示符,用于选择所述多个不同算法中的一个。
5.如权利要求4所述的ALU,其特征在于提供有指令以用于设置所述模式指示符。
6.如权利要求1所述的ALU,其特征在于,所述编码单元和所述解码单元通过独特的指令来识别。
7.如权利要求1所述的ALU,还包括多个编码单元;以及多个解码单元,其中,所述多个编码单元之一和所述多个解码单元之一被分别提供用于多个压缩和解压缩算法的每一个。
8.如权利要求7所述的ALU,其特征在于,各所述多个编码单元和各所述多个解码单元分别通过独特的指令来识别。
9.如权利要求2所述的ALU,其特征在于,所述多个不同算法中的一个算法是μ-定律。
10.如权利要求2所述的ALU,其特征在于,所述多个不同算法中的一个算法是A-定律。
11.如权利要求7所述的ALU,其特征在于,所述多个不同压缩和解压缩算法中的一个算法是μ-定律。
12.如权利要求7所述的ALU,其特征在于,所述多个不同压缩和解压缩算法中的一个算法是A-定律。
13.一种在电信系统中用于处理至少一个输入信号的方法,所述至少一个输入信号包括表征模拟信号的数字信号,所述方法包括如下步骤对所述至少一个输入信号执行标准算术逻辑单元(ALU)操作,并产生第一结果;对所述数字信号有选择地执行压缩并产生第二结果;对所述数字信号有选择地执行解压缩并产生第三结果;接收并解码ALU指令;以及根据所述ALU指令从所述第一结果、所述第二结果和所述第三结果之一中选择出一个最终结果,并提供所述最终结果作为输出。
14.如权利要求13所述的方法,其特征在于,根据多个不同的算法有选择地执行压缩和解压缩。
15.如权利要求14所述的方法,其特征在于,所述多个不同算法中的一个被选择用于执行压缩和解压缩。
16.如权利要求15所述的方法,其特征在于,所述多个不同算法中的一个是通过模式指示符来选择的。
全文摘要
在一电信系统中,算术逻辑单元(ALU)接收输入信号。该输入信号包括表征模拟信号的数字信号。该ALU有选择地对数字信号执行压缩和解压缩。该ALU包括以下组成部分。标准ALU部件对输入信号执行标准的ALU操作。编码单元对数字信号有选择地执行压缩。解码单元对数字信号有选择地执行解压缩。指令解码器接收和解码ALU指令。输出选择器根据经过解码的指令选择来自标准ALU部件、编码单元以及解码单元之一的结果,并提供结果作为输出。
文档编号G06F7/575GK1639995SQ03805713
公开日2005年7月13日 申请日期2003年3月11日 优先权日2002年3月11日
发明者伊恩·梅什 申请人:希尔纳公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1