CN101257483A - 一种应用于无线通信***基带信号处理的可配置处理器 - Google Patents
一种应用于无线通信***基带信号处理的可配置处理器 Download PDFInfo
- Publication number
- CN101257483A CN101257483A CNA2008100330364A CN200810033036A CN101257483A CN 101257483 A CN101257483 A CN 101257483A CN A2008100330364 A CNA2008100330364 A CN A2008100330364A CN 200810033036 A CN200810033036 A CN 200810033036A CN 101257483 A CN101257483 A CN 101257483A
- Authority
- CN
- China
- Prior art keywords
- configurable
- input
- wireless communication
- communication system
- bit
- 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.)
- Pending
Links
Images
Landscapes
- Logic Circuits (AREA)
Abstract
本发明属于集成电路设计技术领域,具体为一种应用于无线通信***基带信号处理的可配置处理器。该可配置处理器架构中包含四个异质可配置运算处理单元,由一个控制器所控制。这四个可配置运算处理单元针对无线通信基带信号处理中的四种粗颗粒的基本算术与逻辑运算,分别是乘加运算、逻辑运算、加法密集型运算和串行比特运算。由于不同协议的基带处理过程均可以分解为这四种粗颗粒度的基本算术与逻辑运算来完成,因此这四个异质可配置运算处理单元可以相互配合完成相应的基带处理要求。并且,通过不同的配置信息,适用于多种无线通信协议。
Description
技术领域
本发明属于集成电路设计技术领域,具体涉及一种应用于无线通信***基带信号处理的可配置处理器架构,尤其涉及四个异质可配置运算处理单元结构。
背景技术
目前,在无线通信领域,存在着多种协议,适用于不同的频段、场合和功能,例如应用于无线局域网的802.11系列协议,蜂窝移动通信***的GSM,CDMA协议等等。随着人们对各种数据通信功能需求的增加,需要在同一个设备上实现多种协议,因此,能够支持多协议的可配置基带处理器成为了一种发展趋势。基于不同协议的基带处理的各个模块在功能、参数和性能上都存在比较大的区别,因此基带算法功能级的硬件复用已经不再适用。此外,目前多协议通常采用FPGA(现场可编程门阵列)或高性能的DSP加上加速硬件来实现,资源消耗较大。
发明内容
本发明的目的在于提供了一种应用于无线通信***基带信号处理的能够支持多种协议的可配置处理器架构。
本发明提出的可配置处理器,包含四个异质可配置运算处理单元,由一个控制器所控制,这四个异质可配置运算处理单元分别针对无线通信***基处理中的四种粗颗粒基本运算单元,适用于多种通信协议。其结构见图1所示。控制器102与无线通信***基带信号可配置处理器中的四个异质可配置运算处理单元之有数据输入通道107和数据输出通道108,并具有配置信道通道109。
上述四个异质可配置运算单元分别针对无线通信基带信号处理过程中的四个粗颗粒基本运算。由于各种不同协议的基带运算均可以分解为上述基本运算,因此使用这种可配置处理器的架构,能够灵活地完成各种基带运算。这种方法高度复用硬件,非常灵活,并且具有有很强的数据处理能力。
上述四个异质可配置运算单元分别针对乘加运算、逻辑运算、加法密集型运算和串行比特运算,分别称为可配置乘加算术运算单元(简记为(RAU)103,可配置逻辑运算单元(简记为(RLU)104,可配置串行比特操作运算单元(简记为BSU)105和可配置加法密集运算单元(简记为AAU)106。
可配置乘加算术运算单元(RAU)103针对无线通信基带处理过程中的乘加运算,可以实现乘法、加/减法、乘加、累加等操作;RAU由多个相同的簇结构组成,每一个簇结构中包含一个16bit的booth编码器201,一个12-2压缩器202,一个4-2压缩器203,一个32bit全加器204和一个桶形移位器205;Booth编码器201用于实现16bit乘法操作的booth编码;12-2压缩器202和4-2压缩器203分别完成12-2和4-2的信息压缩;全加器204用于实现两输入的全加;桶状移位器205可实现任意小于16比特宽度的右移,防止运算结果的溢出。RAU中所包含的各个簇结构以及每个簇中运算模块内部的工作状况,例如加减法的选择、操作数的类型,处理的数据宽度等,都可以通过外部信号109进行配置。见图2所示。
可配置逻辑运算单元(RLU)104用于实现无线通信***中的逻辑与、或、非、异或等各种基本逻辑操作以及可以基于真值表实现的复杂逻辑操作。RLU是基于查找表(LUT)结构的,由多个相同的簇结构组成。每一个RLU簇结构中包含一个4行16列的4输入LUT阵列301。每一列LUT共用一个可以配置的16bit的查找表内容302,用于实现与、或、非、异或等基本逻辑运算功能以及基于查找表结构的复杂逻辑运算,可以同时完成16个相同的4输入逻辑运算操作。RLU中所包含的各个簇结构以及每个簇中运算模块内部的工作状况,例如查找表内容,输入输出数据的分割方式(如按行顺序输入303、按列垂直输入304,按行顺序输出305,按列垂直输出306),都可以通过外部信号109进行配置。见图3所示。
可配置串行比特操作运算单元(BSU)105用于实现无线通信***中的各种串行比特操作。BSU由多个相同的簇结构组成,每一个BSU簇结构中包括一个8bit移位寄存器401,一个两输入与门阵列(AND Array)402,一个多输入异或门403和一个输入多路选择器404。8bit移位寄存器401在每一个时钟周期完成1bit的移位运算。两输入与门阵列402中,每一个两输入与门的一个输入来自上述8bit移位寄存器或旁路bit,另一个输入来自外部配置输入,可以视为mask407,mask=1输出移位寄存器或旁路bit的数值,mask=0即输出为0,这样就实现了对上述8bit移位寄存器以及旁路bit的选择功能。多输入异或门405将上述通过与门阵列选择后bit的异或相加,得到输出结果。每一个簇的移位寄存器输出结果406和异或输出结果405都可以被旁路到其他簇的输入端,因此使用了输入多路选择器404用于实现8bit移位寄存器输入bit的选择。BSU中所包含的各个簇结构以及每个簇中运算模块内部的工作状况,例如与门阵列的每个mask数值,输入多路选择器的控制信息,都可以通过外部信号109进行配置。见图4所示。
可配置加法密集运算单元(AAU)106用于实现无线通信***中的各种加法密集型操作,可以同时完成多个加法、减法运算以及绝对值计算。AAU由多个相同的簇结构组成,每一个AAU簇结构中包括三个全加器502、503、504和一个二选一选择器505。三个全加器502、503、504可以实现3个16bit宽度的两输入501加/减法运算或6个8bit宽度的两输入501加/减法运算;二选一选择器505用于第2全加器503和第3全加器504的结果选择,二选一选择器的控制位取决于第1全加器502的输出高位MSB506。AAU中所包含的各个簇结构以及每个簇中运算模块内部的工作状况,例如加减法的选择、操作数的类型,处理的数据宽度等,都可以通过外部信号109进行配置。见图5所示。
上述的四个异质可配置运算处理单元使用一个控制器102进行控制。控制器102通过发送独立的配置信息109给各个运算单元,完成控制功能。除此之外,该控制器还用于控制各个运算单元的输入数据107和输出数据108。
本发明的独到之处在于,首先,将无线通信基带信号处理的所有运算分解为四个粗颗粒的基本算术与逻辑运算,使用了四个异质可配置运算单元分别针对上述运算进行处理。其次,使用这种可配置处理器的架构来实现这些基本运算的硬件复用,最大程度地节省了硬件开销,该架构灵活性很高,并且具有很强的数据处理能力。
附图说明
图1为本发明提出的应用于无线通信***基带信号处理的可配置处理器架构。
图2为本发明提出的可配置乘加算术运算单元(RAU)的一个簇结构。
图3为本发明提出的可配置逻辑运算单元(RLU)的一个簇结构。
图4为本发明提出的可配置串行比特操作运算单元(BSU)的一个簇结构。
图5为本发明提出的可配置加法密集运算单元(AAU)的一个簇结构。
图中标号:101为应用于无线通信***的可配置基带处理器部分,102为控制器,103为可配置乘加算术运算单元(RAU),104为可配置逻辑运算单元(RLU),105为可配置串行比特操作运算单元(BSU),106为可配置加法密集运算单元(AAU),107为输入数据通道,108为输出数据通道,109为配置信息通道。
201为Booth编码器,202为12-2压缩器,203为4-2压缩器,204为全加器,205为桶形移位器,206为RAU一个簇结构的输入,207为RAU一个簇结构的输出,208为从输出直连到12-2压缩器的旁路输出,209为从12-2压缩器得到的结果,送入相邻的簇结构中。
301是LUT,302是每行LUT里的查找表内容,303是按行顺序输入方式,304是按列垂直输入方式,305是按行顺序输出方式,306是按列垂直输出方式。
401是8-bit移位器,402是两输入与阵列,403是异或门,404是输入多路选择器,405是异或输出,406是移位器输出,407是与阵列的Mask,408是旁路异或输入。
501是AAU的输入加数,502是第1加法器,503是第2加法器,504是第3加法器,505是二选一选择器,506是第1加法器输出的MSB。
具体实施方式
在工作时,根据外部通过配置信息通道109送入不同的配置信息,四个可配置运算单元103、104、105、106被分别配置成为完成基带***中特定的运算模块。其中RAU103可以通过不同的配置信息完成例如FFT,FIR,BFWT等运算,且运算的点数和系数是可变的;RLU104可以通过不同的配置信息完成各种基于查找表的操作,例如QPSK调制、16-QAM调制、CCK变换等运算;BSU105可以通过不同的配置信息完成诸如扰码、信道编码等运算;AAU106可以通过不同的配置信息完成诸如Viterbi解码的ACS运算、取模运算等。下面具体阐述使用这些可配置运算单元来完成基带***中的特定运算单元。
在RAU的每一个簇结构中,首先配置信息选择是否使用Booth编码(201),若使用,则这个RAU簇被配置为使用乘法,否则,输入认为为加数,不进行Booth编码。Booth编码器201将16bit的操作数编码为9个部分积,连同另外三个加数一起送入12-2压缩器202,由此,一个RAU簇可以完成形如a×b+c+d+e的乘加运算或12个数的连加操作。12-2压缩器202完成这12个数的压缩过程,送入4-2压缩器203。4-2压缩器203压缩器的输入除了来自当前4-2压缩器203的两个操作数外,还有两个操作数来自相邻RAU簇结构的4-2压缩器203。后两个操作数的选择与否也是由配置信息决定的,这样,两个簇结构也可以结合在一起完成运算,最高支持两个乘法与六个加法的复杂运算。这样的运算也是FFT基2蝶形运算的基本结构。8个RAU簇结构,两两合并后,每次可以完成一个FFT基2蝶形运算。4-2压缩器203的计算结果被送入全加器204进行累加,再送入桶形移位器205进行任意小于16bit的移位操作,防止计算溢出。移位操作的位数也是由配置信息109所决定的。计算结果即RAU一个结构簇的输出207可以被直接旁路到12-2压缩器的输入端208,因此,使用RAU簇结构也可以完成乘累加(MAC)的计算。
RLU在工作时,有两种输入模式,一种是按行的顺序输入303,输入数据按照4个LUT行顺序输入。另一种是按列垂直输入304,输入数据按照16个LUT列垂直输入,适合于根据查找表操作的不同数据要求,并且,输入数据的间隔也是可配置的。例如,在进行16-QAM调制时,I/Q两路分别调制,每2个bit生成一个符号(用3bit的补码表示),数据采用按行顺序输入,每个簇结构中,每行LUT的4-bit输入均按照2bit的间隔顺序输入,三列的LUT采用同样的输入,分别产生3*16bit的补码输出,按照相对应的查找表,完成16-QAM的调制。同样的,输出也分为两种模式,按行顺序输出305和按列垂直输出306,并且输出数据的间隔也可以通过配置信息109进行设置。
BSU中的8-bit移位器401每个时钟周期将数据向右移动一个bit。其中的每个bit(共8个)都输出到两输入与门阵列402中。除此以外,两输入与门阵列402的输入还包括旁路异或输入408,即其余BSU簇结构的异或输出405。对于两输入与门阵列402中的每个两输入与门,一个输入为上述来自8-bit移位器402或旁路异或输入408,另一个输入作为配置信息109给入,可以认为是第一个输入的Mask,用于选择这些bit是否需要进入到接下来的异或操作403中。这样的结构完全符合无线通信***中扰码和卷积信道编码的要求。此外,多个BSU簇结构可以通过输入多路选择器404进行合并。多路选择器404的输入可以为其他簇的移位器输出406以及所有簇的异或输出405,也可以为从控制器102通过输入数据通道107处送来的数据107。这样,多个BSU簇结构可以组合在一起,得到更长bit的移位器,由此可以支持比8bit的约束长度更长的卷积编码器,CRC操作等。多个BSU簇结构也可以组合在一起,完成扰码、卷积编码等比特串行操作的并行运行。这些组合的选择也是通过配置信息109来控制的。
AAU可以工作在两种模式下。第一种模式中,三个加法器502、503、504分别计算三个16bit的两输入加法。第二种模式中,第2加法器503和第3加法器504仍然计算两个16bit的两输入加法,但是这两个操作结果通过一个二选一选择器505,选择其中一个结果输出。这个二选一选择器505的控制信息是由第1加法器502的结果最高位MSB506决定的。在这种模式下,第1加法器的输入可以是第2加法器503和第3加法器504的输入结果。在这第二种模式下,当第1加法器被配置成减法操作时,就可以完成Viterbi解码中的ACS(加-比-选)操作。当第2加法器503和第3加法器504同时配置成减法,并使用同样的两个操作数(即做a-b和b-a),第1加法器同样配置成a-b的操作,就可以通过第1加法器的输出MSB506一次实现|a-b|的运算。同样地,这些运算模式的选择也是通过配置信息109来实现的。
最后应说明的是:以上所提的几个实例以及运算模式是用以说明而非限制本发明的技术方案。尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:对本发明进行修改或者等同替换,而不脱离本发明的精神和范围的任何修改或局部替换,其均应涵盖在本发明的权利要求范围当中。
参考文献:
[1]Afshin Niktash,Hooman T.Parizi and Nader Bagherzadeh,Application of a HeterogeneousReconfigurable Architecture to OFDM Wireless Systems,Circuits and Systems,2007.ISCAS2007.IEEE International Symposium on
[2]Ada S.Y.Poon,An Energy-Efficient Reconfigurable Baseband Processor for WirelessCommunications,IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION(VLSI)SYSTEMS,VOL.15,NO.3,MARCH 2007
[3]Fujisawa,Hisanori;Saito,Miyoshi;Nishijima,Seiichi;Odate,Naoki;Sakai,Yuki;Yoda,Katsuhiro;Sugiyama,Iwao;Ishihara,Teruo;Hirose,Yoshio;Yoshizawa,Hideki,Flexible SignalProcessing Platform Chip for Software Defined Radio with 103 GOPS Dynamic Reconf1gurableLogic Cores,Solid-State Circuits Conference,2006,ASSCC,ASSCC 2006.IEEE Asian
[4]V.G.Oklobdzija;D.Villeger;Multiplier design utilizing improved column compression treeand optimized final adder in CMOS technology.VLSI Technology,Systems,and Applications,1993.Proceedings of Technical Papers,1993 International Symposium on 1993 Page(s):209-212;Digital Object Identifier 10.1109/VTSA.1993.
[5]D.T.Shen and A.Weinberger,“4-2 Carry-Save Adder Implementation Using Send Circuits,”IBM Technical Disclosure Bulletin,Vol.20,No.9,Feb.1978.
[6]A.Weinberger,“4:2 Carry-Save Adder Module,IBM Technical Disclosure Bulletin,vol 23,Jan.1981.
[7]Jan M.Rabaey;Anantha Chandrakasan;Borivoje Nikolic;Digital Integrated Circuits:ADesign Perspective(Second Edition);Prentice Hall.
Claims (5)
1、一种应用于无线通信***基带信号处理的可配置处理器,其特征在于包括四个异质可配置运算处理单元,由一个控制器所控制;这四个异质可配置运算处理单元分别针对无线通信***基带处理中的四种粗颗粒基本运算处理单元,适用于多种通信协议;这里所述的四个异质可配置运算单元,分别为:
可配置乘加算术运算单元,记为RAU,用于实现无线通信***中的乘法、加/减法、乘加、累加操作;
可配置逻辑运算单元,记为RLU,用于实现无线通信***中的逻辑与、或、非、异或等各种基本逻辑操作,以及基于真值表实现的复杂逻辑操作;
可配置串行比特操作运算单元,记为BSU,用于实现无线通信***中的各种串行比特操作;
可配置加法密集运算单元,记为AAU,用于实现无线通信***中的各种加法密集型操作,同时完成多个加法、减法运算以及绝对值计算;
这四个异质可配置运算处理单元都受控于由控制器输入的配置信置。
2、根据权利要求1所述的可配置处理器,其特征在于所述可配置乘加算术单元由多个相同的簇结构组成,每一个簇结构中包含一个16bit的booth编码器(201),一个12-2压缩器(202),一个4-2压缩器(203),一个32bit全加器(204)和一个桶形移位器(205);Booth编码器(201)用于实现16bit乘法操作的booth编码;12-2压缩器(202)和4-2压缩器(203)分别完成12-2和4-2的信息压缩;全加器(204)用于实现两输入的全加;桶状移位器(205)可实现任意小于16比特宽度的右移,防止运算结果的溢出。
3、根据权利要求1所述的可配置处理器,其特征在于所述的可配置逻辑运算单元由多个相同的簇结构组成;每一个RLU簇结构中包含一个4行16列的4输入查找表阵列,每一列查找表共用一个可以配置的16bit的查找表内容,用于实现与、或、非、异或基本逻辑运算功能以及基于查找表结构的复杂逻辑运算,同时完成16个相同的4输入逻辑运算操作。
4、根据权利要求1所述的可配置处理器,其特征在于所述的可配置串行比特操作运算单元由多个相同的簇结构组成;每一个簇结构中包括:
一个8bit移位寄存器,每一个时钟周期完成1bit的移位运算;
一个两输入与门阵列,用于实现bit的选择功能;
一个多输入异或门,用于实现已选择bit的异或相加;
一个输入多路选择器,用于实现8bit移位寄存器输入bit的选择;
5、根据权利要求1所述的可配置处理器,其特征在于所述的可配置加法密集运算单元由多个相同的簇结构组成;每一个簇结构中包括:
三个全加器,实现3个16bit宽度的两输入加/减法运算或6个8bit宽度的两输入加/减法运算;
一个二选一选择器,用于第2全加器和第3全加器的结果选择,二选一选择器的控制位取决于第1全加器的输出高位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100330364A CN101257483A (zh) | 2008-01-24 | 2008-01-24 | 一种应用于无线通信***基带信号处理的可配置处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100330364A CN101257483A (zh) | 2008-01-24 | 2008-01-24 | 一种应用于无线通信***基带信号处理的可配置处理器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101257483A true CN101257483A (zh) | 2008-09-03 |
Family
ID=39891955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008100330364A Pending CN101257483A (zh) | 2008-01-24 | 2008-01-24 | 一种应用于无线通信***基带信号处理的可配置处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101257483A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010057375A1 (zh) * | 2008-11-19 | 2010-05-27 | 北京大学深圳研究生院 | 一种可配置处理器体系结构和控制方法 |
CN103546902A (zh) * | 2013-10-24 | 2014-01-29 | 北京锐安科技有限公司 | 基带信号处理装置及车载空口监测设备 |
CN110084362A (zh) * | 2019-03-08 | 2019-08-02 | 中国科学院计算技术研究所 | 一种面向神经网络的对数量化装置及方法 |
-
2008
- 2008-01-24 CN CNA2008100330364A patent/CN101257483A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010057375A1 (zh) * | 2008-11-19 | 2010-05-27 | 北京大学深圳研究生院 | 一种可配置处理器体系结构和控制方法 |
CN103546902A (zh) * | 2013-10-24 | 2014-01-29 | 北京锐安科技有限公司 | 基带信号处理装置及车载空口监测设备 |
CN110084362A (zh) * | 2019-03-08 | 2019-08-02 | 中国科学院计算技术研究所 | 一种面向神经网络的对数量化装置及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20020103841A1 (en) | Dynamically configurable processor | |
Sousa et al. | On the Design of RNS Reverse Converters for the Four-Moduli Set ${\bf\{2^{\mmb n}+ 1, 2^{\mmb n}-1, 2^{\mmb n}, 2^{{\mmb n}+ 1}+ 1\}} $ | |
CN100465877C (zh) | 高速***式乘累加器mac装置 | |
Venkatachalam et al. | Approximate sum-of-products designs based on distributed arithmetic | |
CN116400883A (zh) | 一种可切换精度的浮点乘加器 | |
CN110688086A (zh) | 一种可重构的整型-浮点加法器 | |
CN101136070B (zh) | 基于可重构架构的多协议射频标签读写器基带处理器 | |
CN104090737A (zh) | 一种改进型部分并行架构乘法器及其处理方法 | |
CN110858137B (zh) | 除以整数常数的浮点除法 | |
CN101257483A (zh) | 一种应用于无线通信***基带信号处理的可配置处理器 | |
CN108809329A (zh) | 一种能同时处理极化码和ldpc码的bp译码器的配置方法 | |
CN107092462B (zh) | 一种基于fpga的64位异步乘法器 | |
EP3767455A1 (en) | Apparatus and method for processing floating-point numbers | |
An et al. | 29.3 an 8.09 tops/w neural engine leveraging bit-sparsified sign-magnitude multiplications and dual adder trees | |
US9189456B2 (en) | Technique for optimization and re-use of hardware in the implementation of instructions used in Viterbi and turbo decoding, using carry save arithmetic | |
CN209879493U (zh) | 乘法器 | |
Bioul et al. | Decimal addition in FPGA | |
CN100363885C (zh) | 乘累加装置 | |
WO2008023342A1 (en) | Configurable logic device | |
Jaberipur et al. | Stored-transfer representations with weighted digit-set encodings for ultrahigh-speed arithmetic | |
US20130179484A1 (en) | Efficient Technique for Optimal Re-Use of Hardware In the Implementation of Instructions Used in Viterbi, Turbo and LPDC Decoders | |
CN1658152B (zh) | 乘法器-累加器块模式划分 | |
Mamidi et al. | Instruction set extensions for software defined radio | |
CN110597485B (zh) | 模块化多位加法器及计算*** | |
US8583998B2 (en) | System and method for Viterbi decoding using application specific extensions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080903 |