《分裂基数2/8快速傅立叶转换装置及方法.pdf》由会员分享,可在线阅读,更多相关《分裂基数2/8快速傅立叶转换装置及方法.pdf(18页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN102339272A43申请公布日20120201CN102339272ACN102339272A21申请号201010236529522申请日20100716G06F17/1420060171申请人联咏科技股份有限公司地址中国台湾新竹科学园区创新一路13号2楼72发明人唐恒泰74专利代理机构上海专利商标事务所有限公司31100代理人任永武54发明名称分裂基数2/8快速傅立叶转换装置及方法57摘要本发明是一种SR2/8FFT装置,包括一存储器、一SRFFT处理器及一控制单元。控制单元包括一输入控制区块、一SRFFT控制区块及一输出控制区块。输入控制区块决定一第一次序,并依第一。
2、次序将输入数据加载对应的存储库,使得SRFFT处理器可在单一时脉周期内对这些存储库同时撷取数据。SRFFT控制区块决定一2M点FFT的分解架构,并控制SRFFT处理器沿着分解架构重复执行蝴蝶计算。每一次蝴蝶计算的输入数据次序符合第一次序。SRFFT控制区块控制每一次蝴蝶计算后的输出结果被写回输入数据所对应的存储库。输出控制区块决定一第二次序,并控制输出结果依第二次序输出为输出数据。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书9页附图6页CN102339285A1/2页21一种分裂基数SR2/8快速傅立叶转换FFT装置,包括一存储器,包含多个存储库,并用以接。
3、收2M笔输入数据,每一笔数据具有一原始地址,M为正整数;一分裂基数快速傅立叶转换SRFFT处理器,用以执行一时间降次DIT分裂基数蝴蝶计算;以及一控制单元,包括一输入控制区块,用以依据所述这些存储库的个数及所述这些原始地址的位反向地址决定一第一次序,并用以控制该存储器依该第一次序将所述这些输入数据加载对应于该第一次序的所述这些存储库内,使得该SRFFT处理器可在单一时脉周期内从所述这些存储库同时撷取数据;一分裂基数快速傅立叶转换SRFFT控制区块,用以决定对应该2M笔输入数据的一2M点FFT的分解架构,并控制该SRFFT处理器沿着该分解架构重复执行蝴蝶计算,其中每一次蝴蝶计算的输入数据次序符合。
4、该第一次序,该SRFFT控制区块还用以控制每一次蝴蝶计算后的输出结果被写回输入数据所对应的存储库;及一输出控制区块,用以当该DITSR蝴蝶计算完成后,依据所述这些存储库的个数及2M笔输出数据的原始地址决定一第二次序,并用以控制写回并储存在所述这些存储库内的所述这些输出结果依该第二次序输出为2M笔输出数据,该2M笔输出数据包含的输出结果依序对应符合第一次序之该2M笔输入数据。2根据权利要求1所述的SR2/8FFT装置,其特征在于,每一笔输入数据在对应的该存储库的地址由该笔输入数据的位反向地址值除以存储库个数取其商数的整数值得到。3根据权利要求1所述的SR2/8FFT装置,其特征在于,当该SRFF。
5、T处理器所执行的蝴蝶计算为SR8蝴蝶计算时,该SRFFT控制区块还用以产生4个旋转因子以提供给SR8蝴蝶计算,使得SR8蝴蝶计算的末4个输入分别被旋转达特定角度。4根据权利要求1所述的SR2/8FFT装置,其特征在于,该SRFFT控制区块将该2M点FFT依M阶段不同基数的蝴蝶计算分解得到一分解执行次序,并控制该SRFFT处理器沿着该分解执行次序执行所述这些蝴蝶计算,其中每一阶段不同基数的蝴蝶计算可能被重复执行,且每一次蝴蝶计算馈入输入端的输入数据符合该第一次序。5根据权利要求4所述的SR2/8FFT装置,其特征在于,该SRFFT控制区块以一有限状态机构成,该有限状态机记录多个状态,每一个状态包。
6、含多个变量,所述这些变量包括一阶段、表示蝴蝶计算开始位置的一基本位置、表示每阶段处理的数据数目的一区块大小、表示该阶段的蝴蝶计算两输入端间距的一样本空间、及一上一状态。6根据权利要求1所述的SR2/8FFT装置,其特征在于,每一笔输出数据在所读取的该存储库的地址由该笔输出数据的原始地址值除以存储库个数取其商数的整数值得到。7一种分裂基数SR2/8快速傅立叶转换FFT方法,应用于一SR2/8FFT装置,该SR2/8FFT装置包括一存储器、一分裂基数快速傅立叶转换SRFFT处理器以及一控制单元,该存储器包含多个存储库,该SRFFT处理器用以执行一时间降次DITSR蝴蝶计算,该控制单元包括一输入控制。
7、区块、一分裂基数快速傅立叶转换SRFFT控制区块及一输出控制区块,该SR2/8FFT方法包括该存储器接收2M笔输入数据,每一笔数据具有一原始地址,M为正整数;权利要求书CN102339272ACN102339285A2/2页3该输入控制区块依据所述这些存储库的个数及所述这些原始地址的位反向地址决定一第一次序;该输入控制区块控制该存储器依该第一次序将所述这些输入数据加载对应于该第一次序的所述这些存储库内,使得该SRFFT处理器可在单一时脉周期内从所述这些存储库同时撷取数据;该SRFFT控制区块决定对应该2M笔输入数据的一2M点FFT的分解架构,并控制该SRFFT处理器沿着该分解架构重复执行蝴蝶计。
8、算,其中每一次蝴蝶计算的输入数据次序符合该第一次序;该SRFFT控制区块控制每一次蝴蝶计算后的输出结果被写回输入数据所对应的存储库;以及当该DITSR蝴蝶计算完成后,该输出控制区块依据所述这些存储库的个数及2M笔输出数据的原始地址决定一第二次序,并并用以控制写回并储存在所述这些存储库内的所述这些输出结果依该第二次序输出为2M笔输出数据,该2M笔输出数据包含的输出结果依序对应符合第一次序的该2M笔输入数据。8根据权利要求7所述的SR2/8FFT方法,其特征在于,还包括由每一笔输入数据的位反向地址值除以存储库个数取其商数的整数值得到该笔输入数据在对应的该存储库的地址。9根据权利要求7所述的SR2/。
9、8FFT方法,其特征在于,还包括当该SRFFT处理器所执行的蝴蝶计算为SR8蝴蝶计算时,该SRFFT控制区块产生4个旋转因子以提供给SR8蝴蝶计算,使得SR8蝴蝶计算的末4个输入分别被旋转达特定角度。10根据权利要求7所述的SR2/8FFT方法,其特征在于,还包括该SRFFT控制区块将该2M点FFT依M段阶不同基数的蝴蝶计算分解得到一分解执行次序,并控制该SRFFT处理器沿着该分解执行次序执行所述这些蝴蝶计算,其中每一阶段不同基数的蝴蝶计算可被重复执行,且每一次蝴蝶计算馈入输入端的输入数据符合第一次序。11根据权利要求10所述的SR2/8FFT方法,其特征在于,是以一有限状态机构成该SRFFT。
10、控制区块,该有限状态机记录多个状态,每一个状态包含多个变量,所述这些变量包括一阶段、表示蝴蝶计算开始位置的一基本位置、表示每阶段处理的数据数目的一区块大小、表示该阶段的蝴蝶计算两输入端间距的一样本空间、及一上一状态。12根据权利要求7所述的SR2/8FFT方法,其特征在于,还包括由每一笔输出数据的原始地址值除以存储库个数取其商数的整数值得到该笔输出数据在所读取的该存储库的地址。权利要求书CN102339272ACN102339285A1/9页4分裂基数2/8快速傅立叶转换装置及方法技术领域0001本发明有关一种分裂基数SPLITRADIX,SR2/8快速傅立叶转换FASTFOURIERTRAN。
11、SFORM,FFT装置及方法,且特别是有关一种简单且有效的SR2/8FFT装置及方法。背景技术0002快速傅立叶转换FASTFOURIERTRANSFORM,FFT常见于数字信号处理的实时应用中。依据欧洲数字影音广播标准DVBT/DAB,正交频分多路复用ORTHOGONALFREQUENCYDIVISIONMULTIPLEXER,OFDM系统被广泛地应用,而专属的FFT/IFFT处理单元对于OFDM系统及数字通讯而言更是适于达到高频宽的目标。0003众所周知地,在FFT算法中,相较于基数RADIX4FFT,分裂基数SPLITRADIX,SR2/8FFT可以节省约1/3多乘法运算。SR2/8FF。
12、T如下列偶数项FFT及奇数项FFT的表达式所示,并请参照图6及图7,图6绘示频率降次SR8蝴蝶运算的示意图,图7绘示时间降次SR8蝴蝶运算的示意图。00040005偶數項FFT000600070008WHEREK0,1,2,N/81ANDL1,3,5,7奇數項FFT0009因此,SR2/8FFT可更有效地利用资源或时间。然而,SR2/8FFT的不规则分解架构使其难以用硬件实现,而被视为较适于用软件实现。0010现举SR2/4FFT算法为例做说明。SR2/4FFT及基数4FFF的蝴蝶BUTTERFLY处理器有4个输入及4个输出。对应于一固定输入时脉及有限硬件资源,存储器与蝴蝶处理器间的数据存取必。
13、须尽可能地快。同时读取及写入SR2/4FFT的蝴蝶处理器的四个输入可以得到最快的FFT速度,即每一个蝴蝶运算只耗费1时脉周期CLOCKCYCLE。0011假定存储器包含4个存储库MEMORYBANK,则基数4FFT处理器在处理16笔输入数据时的时间降次DECIMATIONINTIME,DIT基数4蝴蝶计算的数据输入序列如表1所示。说明书CN102339272ACN102339285A2/9页500120013表10014在表1中,于阶段1开始前,数据0数据3被放在存储库0,数据8数据11被放在存储库1,数据4数据7被放在存储库2,数据12数据15被放在存储库3。因此,在阶段1,基数4蝴蝶处理器。
14、的4个输入可以在单一时脉周期同时读取数据,例如0,8,4,12。然而,在阶段2,基数4蝴蝶处理器需要4个时脉周期才能从存储器读取数据,例如0,2,1,3。因此,整体FFT的运算速度降低,导致整体系统的效率不佳。发明内容0015本发明的目的是提供一种分裂基数2/8快速傅立叶转换装置及方法,利用存储器管理使得分裂基数快速傅立叶转换处理器可以在单一时脉周期同时对存储器撷取/写入多笔数据,并利用规则的分解架构,使得分裂基数快速傅立叶转换处理器可用低成本硬件实现。0016根据本发明的第一方面,提出一种分裂基数SR2/8快速傅立叶转换FFT装置,包括一存储器、一分裂基数快速傅立叶转换SRFFT处理器以及一。
15、控制单元。存储器包含多个存储库,并用以接收2M笔输入数据,每一笔数据具有一原始地址,M为正整数。SRFFT处理器用以执行一时间降次DITSR蝴蝶计算。控制单元包括一输入控制区块、一SRFFT控制区块及一输出控制区块。输入控制区块用以依据这些存储库的个数及这些原始地址的位反向地址决定一第一次序,并用以控制存储器依第一次序将这些输入数据加载对应的存储库内,使得SRFFT处理器可在单一时脉周期内从这些存储库同时撷取数据。SRFFT控制区块用以决定对应此2M笔输入数据的一2M点FFT的分解架构,并控制SRFFT处理器沿着分解架构重复执行蝴蝶计算。其中每一次蝴蝶计算的输入数据次序符合第一次序。SRFFT。
16、控制区块还用以控制每一次蝴蝶计算后的输出结果被写回输入数据所对应的存储库。输出控制区块用以当DITSR蝴蝶计算完成后,依据这些存储库的个数及2M笔输出数据的原始地址决定一第二次序,并并用以控制写回并储存在所述这些存储库内的所述这些输出结果依第二次序输出为2M笔输出数据,2M笔输出数据包含的输出结果依序对应符合第一次序的2M笔输入数据。0017根据本发明的第二方面,提出一种分裂基数SR2/8快速傅立叶转换FFT方法,应用于一SR2/8FFT装置,SR2/8FFT装置包括一存储器、一分裂基数快速傅立叶转换SRFFT处理器以及一控制单元。存储器包含多个存储库。SRFFT处理器用以执行一时间降次DIT。
17、SR蝴蝶计算。控制单元包括一输入控制区块、一SRFFT控制区块及一输出控制区块。此SR2/8FFT方法包括下列步骤。存储器接收2M笔输入数据,每一笔数据具有一原始地址,M为正整数。输入控制区块依据这些存储库的个数及这些原始地址的位反向地址说明书CN102339272ACN102339285A3/9页6决定一第一次序。输入控制区块控制该存储器依第一次序将这些输入数据加载对应的这些存储库内,使得SRFFT处理器可在单一时脉周期内从这些存储库同时撷取数据。SRFFT控制区块决定对应此2M笔输入数据的一2M点FFT的分解架构,并控制SRFFT处理器沿着分解架构重复执行蝴蝶计算,其中每一次蝴蝶计算的输入。
18、数据次序符合第一次序。SRFFT控制区块控制每一次蝴蝶计算后的输出结果被写回输入数据所对应的存储库。当DITSR蝴蝶计算完成后,输出控制区块依据这些存储库的个数及2M笔输出数据的原始地址决定一第二次序,并并用以控制写回并储存在这些存储库内的这些输出结果依第二次序输出为2M笔输出数据,2M笔输出数据包含的输出结果依序对应符合第一次序的2M笔输入数据。0018本发明的有益技术效果是本发明的SR2/8FFT装置及方法,利用简单且有效的存储器管理方法,将输入数据依特定次序加载存储器的存储库内,使得SRFFT处理器可以在单一时脉周期内同时对存储器撷取多笔数据,故不需采用较存储器MEMORY来得贵的寄存器。
19、REGISTER储存数据。此外,本发明亦利用有限状态机实现对FFT的规则分解架构,使得SRFFT处理器可用低成本硬件实现。因此,本发明的SR2/8FFT装置及方法具有高效率及低成本的优点。附图说明0019为了对本发明的上述及其它方面有更佳的了解,下文特举较佳实施例,并配合附图进行详细说明,其中0020图1绘示依照本发明较佳实施例的SR2/8FFT装置的示意图。0021图2绘示依照本发明较佳实施例的第一次序的部分运算流程的示意图。0022图3是依照本发明较佳实施例的16点SR2/8FFT分解架构的示意图。0023图4A图4F绘示依照本发明较佳实施例的利用有限状态机执行SR2/8FFT分解架构的流。
20、程图。0024图5绘示依照本发明较佳实施例的第二次序的部分运算流程的示意图。0025图6绘示频率降次SR8蝴蝶运算的示意图。0026图7绘示时间降次SR8蝴蝶运算的示意图。具体实施方式0027本发明提出一种分裂基数SPLITRADIX,SR2/8快速傅立叶转换FASTFOURIERTRANSFORM,FFT装置及方法,利用存储器管理使得分裂基数快速傅立叶转换处理器可以在单一时脉周期CLOCKCYCLE同时对存储器撷取/写入多笔数据,并利用规则的分解架构,使得分裂基数快速傅立叶转换处理器可用低成本硬件实现。0028请参照图1,其绘示依照本发明较佳实施例的SR2/8FFT装置的示意图。SR2/8F。
21、FT装置100包括一存储器110、一SRFFT处理器120以及一控制单元130。存储器110包含多个存储库MEMORYBANK,并用以接收2M笔输入数据,每一笔输入数据具有一原始地址,M为正整数。考量到成本及效率,在此较佳实施例中的存储器110至多包含8个存储库。SRFFT处理器120用以从存储器110读取数据以执行一时间降次DECIMATIONINTIME,DITSR蝴蝶计算BUTTERFLYCOMPUTATION。0029控制单元130包括一输入控制区块140、一SRFFT控制区块150以及一输出控制说明书CN102339272ACN102339285A4/9页7区块160。输入控制区块1。
22、40依据存储器110所包含的存储库的个数及2M笔输入数据的原始地址的位反向BITREVERSED地址决定一第一次序。接着,输入控制区块140控制存储器110依第一次序将2M笔输入数据加载对应于第一次序的多个存储库内,使得SRFFT处理器120在进行每一阶段的蝴蝶计算时都可在单一时脉周期内从存储库同时撷取数据。其中,每一笔输入数据在对应的存储库的地址由输入数据的位反向地址值除以存储库个数取其商数的整数值得到。0030对应于2M笔输入数据,SRFFT处理器120要执行一2M点FFT运算,因此SRFFT控制区块150会决定此2M点FFT的分解架构。SRFFT控制区块150将2M点FFT依M阶段不同基。
23、数的蝴蝶计算分解得到一分解执行次序,并控制SRFFT处理器120沿着分解执行次序执行蝴蝶计算,其中每一阶段不同基数的蝴蝶计算可能被重复执行,且每一次蝴蝶计算馈入输入端的输入数据符合第一次序。0031当SRFFT处理器120所执行的蝴蝶计算为SR8蝴蝶计算时,SRFFT控制区块150会产生4个旋转因子TWIDDLEFACTOR以提供给SR8蝴蝶计算,使得SR8蝴蝶计算的末4个输入分别被旋转达特定角度。此4个旋转因子例如为W1/N、W5/N、W3/N及W7/N,其中在每一次蝴蝶计算完成后,SRFFT控制区块150控制每一次蝴蝶计算后的输出结果被写回输入数据所对应的存储库。0032当SRFFT处理器。
24、120沿着分解执行次序完成DITSR蝴蝶计算后,输出控制区块160依据存储器110所包含的存储库的个数及2M笔输出数据的原始地址决定一第二次序。接着,输出控制区块160控制写回并储存在多个存储库内的每一笔输出结果依第二次序输出为2M笔输出数据,此2M笔输出数据包含的输出结果依序对应符合第一次序的2M笔输入数据。其中,每一笔输出结果在所写回并储存的存储库的地址由对应的输出数据的原始地址值除以存储库个数取其商数的整数值得到。0033接下来举16M4笔输入数据,及存储器110包含8个存储库为例做说明,然而并不限于此。假定此16笔输入数据为X0X15,每一笔数据包含原始地址A30即A3A0。又假定此8。
25、个存储库为B0B7,对应于16笔输入数据,每一个存储库包含2个地址A0A1以储存输入数据。输入控制区块140依据存储器110的存储库个数8及16笔输入数据的原始地址的位反向地址决定如表2所示的第一次序。其中,每一笔输入数据在对应的存储库的地址由输入数据的位反向地址值除以存储库个数取其商数的整数值得到。请配合参照图2,其绘示依照本发明较佳实施例的第一次序的部分运算流程的示意图。其中,基于8个存储库,故取每隔3个反向位进行异或XOR的运算,再将异或运算结果乘上2的幂次方,并加总得出要加载的存储库。0034说明书CN102339272ACN102339285A5/9页800350036表20037对。
26、应于16笔输入数据,SRFFT处理器120要执行一16点FFT运算,因此SRFFT控制区块150会决定此16点FFT的分解架构。请参照图3,其示依照本发明较佳实施例的16点SR2/8FFT分解架构的示意图。SRFFT控制区块150将16点FFT依4阶段不同基数的蝴蝶计算分解得到一分解执行次序如图3中的箭号所示。SRFFT控制区块150控制SRFFT处理器120沿着分解执行次序执行蝴蝶计算。SRFFT控制区块150可以一有限状态机FINITESTATEMACHINE构成,有限状态机记录多个目前状态,每一个目前状态包含多个变量,例如阶段S、表示蝴蝶计算开始位置的基本位置BP、表示每阶段处理的数据数。
27、目的区块大小BS、表示阶段S的蝴蝶计算两相邻输入端样本之间距SS、及前一状态LS。其中,蝴蝶计算输入端样本0,1,2,3,7的存储器读取位置为将BP,BPSS,BPSS2,BPSS3,BPSS7经由表2所示的第一次序转换得的。有限状态机实质上可由一临时文件REGISTERFILE配合一状态指针STATEPOINTER实现。每储存一次目前状态,状态指针加1;每恢复RESTORE一次前一状态,状态指针减1。说明书CN102339272ACN102339285A6/9页90038请参照图4A图4F,其绘示依照本发明较佳实施例的利用有限状态机执行SR2/8FFT分解架构的流程图。基于本实施例的16点S。
28、R2/8FFT,于步骤S402中,S4,BS16,BP0,SS2。在步骤S404中,BS16大于8,故进入步骤S406,LS1,并储存目前状态,状态指针变为1。上述步骤对应于图3中的阶段4,但此时并未执行阶段4的蝴蝶计算。在步骤S408中,S3,BS8,SS1。回到步骤S404中,BS8,故进入步骤S406,LS1,并储存目前状态,状态指针变为2。上述步骤对应于图3中的阶段4进入阶段3,但此时亦未执行阶段3的蝴蝶计算。0039接着,在步骤S408中,S2,BS4,SS1。回到步骤S404中,BS4小于8,故连结步骤G。在步骤S410中,BS4,故进入步骤S412,执行基数4蝴蝶计算。上述步骤对。
29、应于图3中的阶段3进入阶段2,且基于目前状态记录的多个变量,SRFFT处理器120同时撷取储存于存储库B0,A0、B1,A0、B2,A0及B3,A0的数据X0、X8、X4及X12以进行基数4蝴蝶计算。SRFFT控制区块150控制基数4蝴蝶计算的输出结果写回存储库B0,A0、B1,A0、B2,A0及B3,A0为X0、X8、X4及X12。之后,连结步骤H。0040在步骤S414中,状态指针2大于0,故进入步骤S416,恢复前一状态,S3,BS8,BP0,SS1,LS1,状态指针变为1。于步骤S418中,由于LS1,故连结步骤A。在步骤S420中,由于BS8小于16,故连结步骤E,进入步骤S422,。
30、执行SR8蝴蝶计算。上述步骤对应于图3中的阶段2回到阶段3,且基于目前状态记录的多个变量,SRFFT处理器120同时撷取储存于存储库B0,A0、B1,A0、B2,A0、B3,A0、B4,A0、B5,A0、B6,A0及B7,A0的数据X0、X8、X4、X12、X2、X10、X6及X14以进行SR8蝴蝶计算。SRFFT控制区块150控制SR8蝴蝶计算的输出结果写回存储库B0,A0、B1,A0、B2,A0、B3,A0、B4,A0、B5,A0、B6,A0及B7,A0为X0、X8、X4、X12、X2、X10、X6及X14。之后,连结步骤H。0041在步骤S414中,状态指针1大于0,故进入步骤S416,。
31、恢复前一状态,S4,BS16,BP0,SS2,LS1,状态指针变为0。于步骤S418中,由于LS1,故连结步骤A。由于BS16,故经由步骤S420及S424进入步骤S426,LS5,储存目前状态,状态指针变为1。然后,于步骤S428中,S1,BP8,BS2,SS1。上述步骤对应于图3中的阶段3回到阶段4,但此时亦未执行阶段4的蝴蝶计算而是进入阶段1。0042回到步骤S404中,BS2小于8,故连结步骤G。在步骤S410中,BS2,故进入步骤S430,执行基数2蝴蝶计算。上述步骤对应于图3中的阶段4进入阶段1,且基于目前状态记录的多个变量,SRFFT处理器120同时撷取储存于存储库B0,A1与B。
32、1,A1、B2,A1与B3,A1、B4,A1与B5,A1、以及B6,A1与B7,A1的数据X1与X9、X5与X13、X3与X11,以及X7与X15以进行4次基数2蝴蝶计算。SRFFT控制区块150控制4次基数2蝴蝶计算的输出结果写回存储库B0,A1与B1,A1、B2,A1与B3,A1、B4,A1与B5,A1、以及B6,A1与B7,A1为X1与X9、X5与X13、X3与X11,以及X7与X15。之后,连结步骤H。0043在步骤S414中,状态指针1大于0,故进入步骤S416,恢复前一状态,S4,BS16,BP0,SS2,LS5,状态指针变为0。于步骤S418及S432S436中,由于LS5,故连。
33、结步骤E,进入步骤S422,执行SR8蝴蝶计算。上述步骤对应于图3中的阶段1回说明书CN102339272ACN102339285A7/9页10到阶段4,且基于目前状态记录的多个变量,SRFFT处理器120同时撷取储存于存储库B0,A0、B2,A0、B4,A0、B6,A0、B1,A1、B3,A1、B5,A1及B7,A1的数据X0、X4、X2、X6、X1、X5、X3及X7以进行一次SR8蝴蝶计算。SRFFT控制区块150控制SR8蝴蝶计算的输出结果写回存储库B0,A0、B2,A0、B4,A0、B6,A0、B1,A1、B3,A1、B5,A1及B7,A1为X0、X4、X2、X6、X1、X5、X3及X。
34、7。0044此外,SRFFT处理器120更同时撷取储存于存储库B1,A0、B3,A0、B5,A0、B7,A0、B0,A1、B2,A1、B4,A1及B6,A1的数据X8、X12、X10、X14、X9、X13、X11及X15以进行另一次SR8蝴蝶计算。其中,X9、X13、X11及X15在SR8蝴蝶计算前分别被4个旋转因子W1/N、W5/N、W3/N及W7/N旋转达特定角度。SRFFT控制区块150控制SR8蝴蝶计算的输出结果写回存储库B1,A0、B3,A0、B5,A0、B7,A0、B0,A1、B2,A1、B4,A1及B6,A1为X8、X12、X10、X14、X9、X13、X11及X15。0045在。
35、完成上述2次SR8蝴蝶计算之后,状态指针变为1,是故在步骤S414之后,SRFFT处理器120的DITSR蝴蝶计算结束。此时,储存在8个存储库内的16笔输出结果X0X15即为输入数据X0X15的FFT运算结果。当SRFFT处理器120沿着如图3所示的分解执行次序完成DITSR蝴蝶计算后,输出控制区块160依据存储器110所包含的存储库的个数及16笔输出数据的原始地址决定如表3所示的第二次序。接着,输出控制区块160控制写回并储存在多个存储库内的每一笔输出结果依第二次序输出为16笔输出数据,此16笔输出数据包含的输出结果依序对应符合第一次序的16笔输入数据。其中,每一笔输出结果在所写回并储存的存。
36、储库的地址由对应的输出数据的原始地址值除以存储库个数取其商数的整数值得到。请配合参照图5,其绘示依照本发明较佳实施例的第二次序的部分运算流程的示意图。其中,基于8个存储库,故取每隔3个位进行异或XOR的运算,再将异或运算结果乘上2的幂次方,并加总得出要加载的存储库。0046说明书CN102339272ACN102339285A8/9页110047表30048由表3可得知,此16笔输出数据包含的输出结果依序对应符合第一次序的16笔输入数据。0049此外,本发明上述实施例的FFT运算架构亦可适用于分裂基数SPLITRADIX,SR2/4FFT,而存储器100须包含4个存储库即可。其中,当上述的FF。
37、T运算架构应用于SR2/4FFT时,在第一次序的部分运算流程中,基于4个存储库,故取每隔2个反向位行异或XOR的运算,再将异或运算结果乘上2的幂次方,并加总得出输入数据要加载的存储库。0050本发明更提出一种SR2/8FFT方法,应用于一SR2/8FFT装置,SR2/8FFT装置包括一存储器、一SRFF处理器以及一控制单元。存储器包含多个存储库。SRFFT处理器用以执行一DITSR蝴蝶计算。控制单元包括一输入控制区块、一SRFFT控制区块及一输出控制区块。此SR2/8FFT方法包括下列步骤。存储器接收2M笔输入数据,每一笔数据具有一原始地址,M为正整数。输入控制区块依据这些存储库的个数及这些原。
38、始地址的位反向地址决定一第一次序。输入控制区块控制该存储器依第一次序将这些输入数据加载对应的这些存储库内,使得SRFFT处理器可在单一时脉周期内从这些存储库同时撷取数据。说明书CN102339272ACN102339285A9/9页120051SRFFT控制区块决定对应此2M笔输入数据的一2M点FFT的分解架构,并控制SRFFT处理器沿着分解架构重复执行蝴蝶计算,其中每一次蝴蝶计算的输入数据次序符合第一次序。SRFFT控制区块控制每一次蝴蝶计算后的输出结果被写回输入数据所对应的存储库。当DITSR蝴蝶计算完成后,输出控制区块依据这些存储库的个数及2M笔输出数据的原始地址决定一第二次序,并用以控。
39、制写回并储存在这些存储库内的这些输出结果依第二次序输出为2M笔输出数据,2M笔输出数据包含的输出结果依序对应符合第一次序的2M笔输入数据。0052上述SR2/8FFT方法的运作原理已详述于SR2/8FFT装置100及图1图5的相关内容中,故于此不再重述。0053本发明上述实施例所揭露的SR2/8FFT装置及方法,具有多项优点,以下仅列举部分优点说明如下0054本发明的SR2/8FFT装置及方法,利用简单且有效的存储器管理方法,将输入数据依特定次序加载存储器的存储库内,使得SRFFT处理器可以在单一时脉周期内同时对存储器撷取多笔数据,故不需采用较存储器MEMORY来得贵的寄存器REGISTER储。
40、存数据。此外,本发明亦利用有限状态机实现对FFT的规则分解架构,使得SRFFT处理器可用低成本硬件实现。因此,本发明的SR2/8FFT装置及方法具有高效率及低成本的优点。0055综上所述,虽然本发明已以较佳实施例揭露如上,然而其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种等同的改变或替换。因此,本发明的保护范围当视后附的本申请权利要求范围所界定的为准。说明书CN102339272ACN102339285A1/6页13图1图2说明书附图CN102339272ACN102339285A2/6页14图3说明书附图CN102339272ACN102339285A3/6页15图4A说明书附图CN102339272ACN102339285A4/6页16图4B图4C图4D图4E说明书附图CN102339272ACN102339285A5/6页17图4F说明书附图CN102339272ACN102339285A6/6页18图5图6图7说明书附图CN102339272A。