《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 多項式擬合在log-add算法單元中的應用及其FPGA實現
多項式擬合在log-add算法單元中的應用及其FPGA實現
來源:電子技術應用2011年第2期
魏開容,吉立新,楊鎮西
國家數字交換系統工程技術研究中心,河南 鄭州450002
摘要: 綜合考慮面積和速度等因素,采用一次多項式擬合實現了簡單快速的log-add算法單元。實驗結果表明,在相同的精度要求下,其FPGA實現資源占用合理,硬件開銷好于其他次數的多項式擬合實現方案。
中圖分類號: TN402
文獻標識碼: A
文章編號: 0258-7998(2011)02-0046-03
Application and FPGA implementation of polynomial fitting in log-add algorithm
Wei Kairong,Ji Lixin,Yang Zhenxi
National Digital Switch System Engineering & Technological R&D Center, Zhengzhou 450002,China
Abstract: This paper is about using one order polynomial fitting to implement the log-add algorithm for simple and fast units, considering factors such as size and speed. Experimental results show that the resource utilization of FPGA implementation is reasonable and hardware cost is better than other orders of the polynomial fitting in the same accuracy requirement.
Key words : polynomial fitting;log-add algorithm;FPGA implementation


    在多路實時語音處理系統中,基于高斯混合概率模型[1,2]的系統后端運算量非常大,采用log-add算法單元可以簡化運算,提高運算效率。其函數形式為[3]:

   查表法可以認為是多項式次數為0的情況,隨著精度要求的增加,查找表會變得很大[5]。函數逼近可以采用多項式擬合,首先根據所需要的精度確定多項式次數和分段的大小,然后計算每一段的多項式系數。
    設分段的大小為d(d=2-k,k=0,1,2…),計算各段系數時,各段函數平移到區間[0,d),如圖2所示。用Matlab進行多項式擬合依次得到各段系數。由此可以得出各段的擬合多項式為:

    這樣實現時可以把二進制的定點數x分為MSBs和LSBs兩段。MSBs對應段標號i,由段標號取出系數ci0,ci1,ci2…;LSBs對應浮點數xl,代表段內偏移值。由圖3可以計算出f(x)。

    MSBs和LSBs應該這樣選取,例如定標為Q32.f,選擇d=1/2,則MSBs為高32-(f-1)位,LSBs為低f-1位;選擇d=1/4, 則MSBs為高32-(f-2)位,LSBs為低f-2位……;如果MSBs為32或31,則變成了查表法。
2 多項式擬合的實現方案
2.1 多項式次數與分段大小、精度的關系

    用Matlab進行仿真,表1列出了各種精度要求下各次多項式所需的分段大小(d),其中?啄為精度要求,?茁為多項式的次數。
    由表1可以看出,相同次數的情況下,精度要求越高,分段大小d越小;而相同精度的情況下,次數越高,分段大小d越大。另外,次數越低,精度越高,分段大小d下降的數量級越快。



    表2列出各次多項式在不同精度要求下,所需要系數個數(n)的分布情況。

    由表2可以看出,其結果與表1趨于一致。相同次數下,精度要求越高,所需要的系數個數n越多;而相同精度下,次數越高,所需要系數個數n越少。n隨著次數的降低和精度的提高迅速增大。
    與n相反,多項式的計算量隨著多項式次數的增加而增加。根據horner算法[3]多項式的表達式如下:
  
    式(6)表明,多項式次數增加1次,計算多項式的函數值增加1次乘法和1次加法。多項式系數存儲量與多項式的計算量是其FPGA實現時互相制約的兩個因素。
3 仿真結果
    為了取得面積與速度的平衡,根據測試結果及實際系統的要求,選擇δ=10-4、β=1來實現。本文采用Xilinx ISE Design Suite 10.1進行仿真測試。定標取Q32.23,其硬件實現計算流程如圖4,輸入為定點數x,由MSBs和LBSs取得系數和xl,經過reg系數寄存器及1次乘法和1次加法,輸出y。

    時序仿真結果結果如圖5。輸入x是32 bit的無符號定點數,輸出為y;clk是時鐘;reset為復位信號;MSBs是x的高位,用于得到多項式系數;LSBs是x的低位即自變量;temp是用于緩存中間結果,coef[...]是多項式系數。輸出延遲3個時鐘周期,流水線填滿后,每個時鐘周期輸出一個結果。

    例如輸入32’h00333333(浮點數0.4),從圖中可以看出其輸出y為24’h41aba5,與實際函數值24’h41aa7c存在誤差。其實現結果與浮點結果比較誤差如圖6。可以看出定點數誤差在800以內,也就是浮點數約10-4以內,誤差范圍與表1相一致。

    使用ISE軟件的XST工具綜合,選擇設備為Xilinx公司Virtex5系列的XC5VFX100T(speed-2)。其資源占用情況如表3,其中Xilinx公司的乘加硬件設備DSP48E用于算法中的乘法運算及加法運算[6]。

    可以對比δ=10-4,β=0,1,2,3四種實現方式的硬件開銷,如表4。

    由表4可以看出,雖然多項式次數為0時使用寄存器(Registers)和查找表(LUTs)最少,且乘法和加法次數(DSP48Es)為0,但由于其使用了24×40 960 ROM,占用存儲面積較大;而一次多項式擬合雖然所占用查找表(LUTs)一項相對較多,但綜合考慮,其他資源占用都比較均衡。其整體的資源開銷要好于其他方案。
    log-add算法單元作為高斯混合概率模型FPGA實現的基本算法單元,能夠簡化運算、提高運算效率。在系統精度要求10-4的情況下,采用一次多項式擬合能夠有效地節省硬件開銷,實現簡單快速log-add算法單元,為大規模實時處理多路語音數據提供了重要保證。
參考文獻
[1] Douglas A.Reynolds,THOMAS E.Quatieri,Robert B.Dunn. Speaker verification using adapted gaussian mixture models[J].Digital Signal Processing,2000(10).
[2] Kazuo Miura,Hiroki Noguchi,Hiroshi Kawaguchi,et al.A  low memory bandwidth gaussian mixture model(GMM)  processor for 20,000-word real-time speech recognition FPGA system[J].ICECE Technology,2008.FPT.2008.
[3] MELNIKOFF S J,FQUIGLEY S.Implementing the Log-add  Algorithm in Hardware[J].Electronics Letters,2003.
[4] LEE B R,BURGESS N.A pallrallel Look-up logarithmic number system addition subtraction scheme for FPGA[J]. Proc.FPT,2003.
[5] 李煒,沈緒榜.對數數值系統的研究[J].微電子學與計算機,2004.
[6] 胡彬.Xilinx ISE Design Suite 10.x FPGA開發指南—邏輯設計篇[M].北京:人民郵電出版社,2008.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 久久91精品国产99久久yfo | 亚洲日本aⅴ片在线观看香蕉 | 亚洲综合一区二区三区 | 久久免费精品视频 | 2020黄网| 日韩精品一区二区三区中文字幕 | 欧美人与鲁交大毛片免费 | 久久精品一区二区免费看 | 男人透女人超爽视频免费 | 日韩成人午夜 | 欧美日韩视频一区二区 | 成年网站在线在免费播放 | 香蕉午夜| 蜜桃日本一道无卡不码高清 | 日韩一品在线播放视频一品免费 | 日本欧美一级二级三级不卡 | 9191精品国产免费不久久 | 亚洲欧洲日韩综合色天使不卡 | 网站免费满18成年在线观看 | 岛国精品成人 | 久久综合给合久久狠狠狠97色69 | 国产成人一区二区三区精品久久 | 在线免费黄网 | 国产三级黄色片 | 色综合夜夜嗨亚洲一二区 | 国产在线拍揄自揄视精品不卡 | 欧美性猛交xxxxxxxx软件 | 伊人色综合久久天天网蜜月 | 欧美人成片免费看视频不卡 | 亚洲国产欧美91 | 国产一级毛片在线 | 久久久久成人精品一区二区 | dy888午夜国产午夜精品 | 97se亚洲综合在线韩国专区福利 | 欧美一区二区视频三区 | 久久91综合国产91久久精品 | 成人禁在线观看午夜亚洲 | 久久精品国产99国产精品 | 亚洲国产成人91精品 | 久久一区二区精品综合 | 成年人免费小视频 |