前言:如果說要在16bit定點(diǎn)環(huán)境上使用DSP算法,如IIR構(gòu)成的2P2Z,會(huì)受到定點(diǎn)編程和量化精度的問題。如果說在float32環(huán)境上可以很容易進(jìn)行編程,那切換到定點(diǎn)環(huán)境上就不得不得考慮這些問題。通常情況下單精度浮點(diǎn)在小數(shù)點(diǎn)后的精度為1/(2^23),理論上使用32位定點(diǎn)IQ24就可以覆蓋單精度浮點(diǎn)的精度問題,但是在16bit上,使用i1.q15的方法來算,僅有1/(2^15)的精度,如果直接使用則會(huì)遇到量化精度引起的誤差問題。那么該如何把浮點(diǎn)切換到16bit的定點(diǎn)來呢,下面將一步一步的來進(jìn)行討論。
S1 傳遞函數(shù)離散
離散化:
帶入參數(shù),并出歸一化的z域傳遞函數(shù),這里把分母的z^2提出來,然后全部除以其它的數(shù)字,即可得到:
S2 使用IQ15的方法量化:
可見,a1項(xiàng)為最大,即可把全部數(shù)字除以a1項(xiàng),讓它用滿15bit的字長,可得:
然后乘以2^15,得到:
S3 提升B系數(shù):這里可以看到分子項(xiàng)上B0/B2的數(shù)字太小,所以為了提高量化精度,可以在B系數(shù)上繼續(xù)擴(kuò)大到2^12,這樣可以更多的利用字長,最后在輸出上除去引入增益即可。
可得B系數(shù)更新為。
然后考慮一下分母量化為32786時(shí)引入的增益:1.99998,在編程上考慮先左移1位然后再考慮小數(shù)點(diǎn)(32709/32678)即可引入增益。然后開始測(cè)試定點(diǎn)化后的PR控制器:
S4 測(cè)試:輸入測(cè)試信號(hào)為50hz正弦波:
run,這里使用floor函數(shù),進(jìn)行向下取整來進(jìn)行定點(diǎn)化:
S5 輸出:可見定點(diǎn)和浮點(diǎn)的輸出波形幾乎接近,存在很小的誤差,屬于可以接受的量化精度。
小結(jié):可見在充分利用上32768的精度后,PR控制器很好的運(yùn)行在16bit環(huán)境上,如果是32bit的定點(diǎn)環(huán)境,則無需這么麻煩,直接使用I6Q24即可達(dá)到單精度浮點(diǎn)的精度。本人能力有限,如果錯(cuò)誤懇請(qǐng)幫忙指正,謝謝觀看。
-
浮點(diǎn)
+關(guān)注
關(guān)注
0文章
31瀏覽量
13395 -
單精度
+關(guān)注
關(guān)注
0文章
8瀏覽量
2262
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
定點(diǎn)數(shù)字信號(hào)處理器(DSP)技術(shù)與應(yīng)用
TMS320VC5505定點(diǎn)數(shù)字信號(hào)處理器資料的英文詳細(xì)概述
![TMS320VC5505<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器資料的英文詳細(xì)概述](https://file.elecfans.com/web1/M00/4F/AE/pIYBAFrhMcWAPte-AADVYWxvX80236.png)
TMS320VC5441定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320VC5441<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS320C6455定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320C6455<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
SMJ320C6203定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![SMJ320C6203<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS320C6421定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320C6421<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS320VC5506定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320VC5506<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS320VC5502定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320VC5502<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS320VC5409A定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320VC5409A<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS320VC5416定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320VC5416<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS320VC5503定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320VC5503<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS320VC5507定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320VC5507<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS320C5517定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![TMS320C5517<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
SM320C6424-EP定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![SM320C6424-EP<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
SM320C6472定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表
![SM320C6472<b class='flag-5'>定點(diǎn)數(shù)字信號(hào)</b><b class='flag-5'>處理</b>器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評(píng)論