公司簡介 產品資訊 教育訓練 活動資訊 鈦思書網 技術支援 工程師俱樂部 會員登入


 
     
 

Accelerating Fixed-Point Design for an
Ultra Wideband Wireless Communication System

 
  加速超寛頻無線通訊系統之定點設計 (下)  

Martin Clark, Mike Mulligan, Dave Jackson, and Darel Linebarger
The MathWorks, Inc

 


     
 

 

浮點參考(Floating-Point Reference) Reference)

Simulink 的資料型態”覆載(override)”讓任何子系統或整個模型的定點與浮點間的轉換更加的方便。在作為比對基準的浮點參考模型中,我們先將頻道信噪比設定為較高的值 (60 dB),這可幫助我們把焦點放在觀察不同的定點數設定對符號失真的影響之上。

圖五所示為兩個UWB系統模擬的結果,包括:(a)基頻等量接收訊號的功率頻譜(涵蓋三個子頻);(b)頻道相位估計和補償之後的訊號。功率頻譜(圖五a)中的 DC null 來自 OFDM 傳送器,其他範圍則顯示訊號在不同頻率和多重通道中的衰減量。OFDM 頻率的動態範圍大約為 30 dB,從圖中可看出相位補償訊號的強度。一個明顯的 X 表示近乎完美的相位補償(圖五b)。


定點設計方法(Fixed-Point Design Methodology)

下一個重要的步驟,就是為系統中每一個定點運算模塊決定字元長度和小數點位置;當然,字元長度和小數點位置也決定了訊號的動態範圍。若動態範圍設計不好,將會造成溢位(overflow)和潛值(underflow)等不好的影響,並且造成整體效能上的衰減。因此,在定點設計當中最重要的一件事情就是進行訊號動態範圍的分析。我們使用下列方式完成 UWB 定點設計:
  • 先找出系統中與訊號處理相關的子系統模組,再依序針對每個子系統進行定點數設計分析,同時啟動後續子系統的浮點覆載功能。
  • 針對目前分析的子系統模塊:
  • 先啟動浮點覆載功能,分析輸出訊號的動態範圍
  • 調整字元長度和小數點位置,讓溢位和潛值最小化
  • 解除浮點覆載功能,重新檢查動態範圍,評估系統整體效能
這個運算程序是不斷的反覆,乏味且冗長耗時;為了加速這個過程,我們使用 MATLAB 來進行動態範圍圖形化分析,詳情如下所述。


舉例:傳送端設計 (Example: Transmitter Design)

在UWB 模型中,我們建立一個模塊:以統計上的直方分布圖來表示訊號強度;這是一個輕易將訊號動態範圍視覺化的好方法。如圖二所示,此模塊(圖中的 ”Fixed-Point Analysis” 模塊) 連接到發射器增益輸出。圖六(a)表現出浮點參考的直方分布圖,包含實部(in-phase)和虛部(quadrature)。由位元數來說,以2為底的 log 等級在動態範圍視覺化十分有用,例如:字元長度。

除了0 (圖上的2-15)以外,99.9%的時間裡,訊號強度都介於2-13 至 22,因此可用16 位元來表示訊號。這個 90 dB 的大型動態範圍在 OFDM 裡相當普遍,實際上是隨機訊號經過 IFFT的結果(中央極限定理)。

這個分析模塊會自動建議2-14或許是一個最佳的scaling factor,判定基準是讓溢位和潛值發生的次數為最小。以這個建議為基礎,我們設定發射器中所有運算模塊的字元長度為16位元,小數位元數設為14bit(首先設定convert 模塊的定點參數值,然後選擇發射器其他運算模塊的定點參數為“Same as input”)。同時,我們啟動接收器子系統的資料型態浮點覆載功能,強迫所有接收器中的模塊的資料型態為 double,以突顯發射器的小數點位置所造成的影響。

圖七是直方分布圖的結果和相位補償訊號的座標圖。請注意和圖五之浮點參考相比,圖七(b)這張座標圖顯得稍微混亂。直方分布圖中顯示出浮點參考的最高值為2 (此長條圖中虛線代表浮點參考,而垂直的直線則代表定點運算結果),即使這些高權重位元僅有1%時間的發生機率,卻足以造成128點之接收端 FFT 的輸出失真。

因此我們需要將小數點位置移動1~2個位元(減少小數點位元),這可能造成增益輸出有潛值的誤差(圖八a 的左邊部分),但是這種影響應該極為細微,因為當傳送的訊號值小於2-10,就會淹沒於通道雜訊中。如 圖八 顯示小數設 12bit 的改進結果。

以上的例子是一個偏重整數部分位元數(減少小數點位元)的設計。但是,這樣的準則並非永遠都是最好的方法。因為有時候訊號的值也有可能很小,而這樣的很小的值對演算的正確性來說往往也相當重要,譬如說用在頻道估計和補償演算法的時候。因此,小數點位置的微調就變得更加重要且必要,尤其是針對較小的字元長度。

因此,自動運算工具雖然提供了粗略的估計(讓溢位和潛值發生的次數為最小),但更細部的微調往往需要配合圖像和洞察力來完成。

接下來只要運用同樣的方法來分析發射端每個模塊的輸出訊號動態範圍、調整模塊的定點設定、並且把同樣的做法應用到接收端的設計上,就可以一步一步的完成整個設計。


應用在較小的字元長度(Smaller Word Lengths)

在這個 UWB 系統中,我們利用 16bits 的設計來突顯定點設計可能發生的問題,接著我們應用到較小字元長度:例如,當我們在乎溢位甚於潛值(一般狀況下皆為如此),則用來表示小數的位元在整個字元長度中所佔的比例就會比較小。

使用相同的工具和方法,我們也可以設計一個10位元的 UWB 系統,每位元錯誤率為0.1%,且和浮點參考相比時,僅降低0.5 dB的信噪比。

更進一步來說,將相關的參數設成變數,集中在 MATLAB 的 workspace 下管理,將可以幫助我們在不同的定點設計中快速切換。更甚者,我們也能寫一個 MATLAB 程式執行關於不同字元長度和通道環境的模擬與比較。

   結論

本文詳細說明如何在一個UWB無線通訊系統中加速定點設計的技巧,這樣的方法也可以用來探討晶片大小(或電源消耗)以及無線範圍之間的權重與取捨。


References

[1] S. Stroh, “Ultra-wideband: multimedia unplugged,” IEEE Spectrum, October 2003.

[2] J. Heiskala and J. Terry, “OFDM wireless LANs: a theoretical and practical guide,” Sams Publishing, 2002.

[3] http://www.multibandofdm.org

[4] http://www.ieee802.org/15/pub/TG3a.html

[5] http://matlabcentral.com, File Exchange: “IEEE 802.11a WLAN Model” and “UWB Fixed-Point Model.”


 

( a )
( b )
圖五. UWB Simulation Scopes.

 


圖六. Histogram of OFDM Transmitter Output: Floating-Point Reference.

 

( a )
( b )

圖七. Results for 2-14 Scaling.

 

( a )
( b )


圖八. Improved Results with 2-12 Scaling.