第三章 室內無線感測定位之設計
3.4 管線型 CORDIC 之室內無線感測定位模組之建置
角度與邊長關係圖,如圖3.3.1所示
圖3.4.1 角度與邊長關係圖
運用餘弦定理,構思入射角度定位法(Angle of arrival, AOA)之硬體架構。由式 3.4.1~3.4.3,可得知藉由兩邊與一夾角之關係,能輕易的求得第三邊的距離,抑或得三 邊長,換算求得所需之夾角角度。
3.4.1 3.4.2 3.4.3
為了建構其構想,本研究將管線型CORDIC 演算法結合單精度浮點運算器,進而實 現餘弦定理硬體架構。如圖 3.4.2 架構圖所示。首先,使用 CORDIC 演算法中 Rotation Linear,分別做輸入值相乘,而 Rotation Circular,抓取輸入值 i_angle 之值,用以求得 Cos 值。
圖3.4.2 餘弦定理架構圖
圖3.4.3 為餘弦定理的 ASM chart。一開始我們設定初始值為 i_num1 = b、i_num2 = c、
i_angle = cosα,當 mux1 =0 時,會將 b 值輸送到狀態 S1;mux1=1 時,會將會將 b 值輸 送到狀態S2;mux2 =0 時,會將 c 值輸送到狀態 S3;mux2=1 時,會將會將 c 值輸送到
狀態 S2。在 S1的狀態下會做 b 自身值相乘的動作,S3 的狀態也與 S1 狀態相同,做 c 自身值的相乘。S2狀態則是做b、c 兩變異數的相乘。在狀態 S4 時,會將 S1的X1與S2
的 X2值做相加的動作。狀態 S5時,會將 S2輸出的X2值,做自身值相加的動作,用意 在於詮釋2bc 的運算。狀態 S6,抓取S5的結果Y2,並與cosα 做相乘的動作。最後,在 S7下,會將的結果Z1與Z2做相減的動作,求得所需之a2。
圖3.4.3 餘弦定理 ASM Chart
假定參數值,a = 2 (10) = 0-10000000-01101010000010011110011(2)、b = 2(10) = 0-100 00000-00000000000000000000000(2)、c = 2(10) = -10000000-00000000000000000000000(2)、
∠α = 90˚(10) = 0-10000101-01101000000000000000000(2)、∠β = 45˚(10) = 0-10000100-01101 000000000000000000(2)、∠γ = 45˚(10) = 0-10000100-01101000000000000000000(2)。
將b、c、∠α,代入式 3.4.1 中,從時序驗證結果,可以求得 a2 = 0-10000001-11111 111111111110000000(2) = 7.999939 (10),如圖3.4.4 所示。
圖3.4.4 時序驗證
其後,使用FPGA 板實現硬體驗證結果,其數值結果相同,表示軟硬體建置方面皆 可成立,如圖3.4.5。圖 3.4.6,為硬體驗證結果,並將其驗證結果顯示在邏輯分析儀上。
圖3.4.5 FPGA 板硬體驗證結果
圖3.4.6 訊號於邏輯分析儀之硬體驗證
代入另一組的參數,a = 2 (10) = 0-10000000-01101010000010011110011(2)、c = 2(10)
= 0-10000000-00000000000000000000000(2)、∠β = 45˚(10) = 0-10000100-01101000000000 000000000(2),可得b2 = 0-10000000-11111111110111000000110(2) = 3.9989028(10),如圖 3.4.7 所示。
圖3.4.7 時序驗證
圖3.4.8 為 FPGA 板硬體驗證結果。圖 3.4.9,為經 FPGA 板輸出訊號至邏輯分析儀 之驗證結果。
圖3.4.8 FPGA 板硬體驗證結果
圖3.4.9 訊號於邏輯分析儀之硬體驗證
B. 正弦定理
圖3.4.10 正弦定理示意圖
為達到更完整的定位效果,將管線型CORDIC 結合於正弦定理運算式上,對於其量 測精準度提升,有一定的助益。
3.4.4
由式3.4.4 可以得知,邊長 a 與對角 A 的正弦值的比值,與邊長 b 對角 B 的正弦值 的比值,其比值比會相等。由此可知,若可得兩邊長,便可以輕易的得到兩邊正弦值的 比值比;甚至可以得到一角的角度,進而可以求得其他角的角度。
使用Vector mode Linear,做運算式除法的動作; Rotation Linear 為執行乘法動作 ; Rotation Circular 抓取輸入角度做 sin 值求解,如圖 3.4.11 所示。
圖3.4.11 正弦定理架構圖
圖3.4.12 為正弦定理 ASM chart。設定初始值,a、b、β。在 S1狀態下,將輸入進 來的a 與 b,做相除的動作,輸出 X 值。在 S2狀態下,做X 與 sinβ 的動作,得最後結
果sinα。
圖3.4.12 正弦定理 ASM chart
經由上述架構執行方式,將已知的兩邊值a 跟 b 做相除的動作,得其比值,再將其 值與sin 做相除的動作,便可以輕鬆得到 sinβ 之值。如以等腰三角形作為範例,假設其 等邊長為a = b = 1(10) = 0-01111111-00000000000000000000000(2),a 邊長之對應角 Angle_α
=45˚ (10) = 0-1000010001101000000000000000000(2)。代入其架構運算後,可得 sinβ =
0.70710678(10) = 0-01111110-01101010000010011110011(2),其時序驗證結果,如圖3.4.13 所示。
圖3.4.13 時序驗證
圖3.4.14 為 FPGA 板硬體驗證結果。圖 3.4.15,為經 FPGA 板輸出訊號至邏輯分析 儀之驗證結果。
圖3.4.14 FPGA 板硬體驗證結果
圖3.4.15 訊號於邏輯分析儀之硬體驗證 C. RSSI
假定,將無線通訊訊號置於自由空間中,排除所有的外在干擾因子,不受任何物質 影響情況下,根據文獻提供之公式3.4.5
Pr(d) = P0 - 20log10( ) [dBm] 3.4.5
讀取器可以求取出訊號強度值Pr(d)的差值。式 3.4.5 中,d 表示為讀取器與標籤天線之 間所相隔的距離。訊號強度值P0為31dBm。
λ = = 3.4.6
式3.4.6,λ 為波長,c 為光速,f 為訊號頻率。若考慮空間中有其他影響因素,根據文獻 推估經驗公式[5]:
RSSI(d) = PT – PL( d0) - 10ηlog10 +Xσ 3.4.7
式3.4.7,d 表示為讀取器與標籤之間所相隔的距離;RSSI(d)為讀取器端點,感測使 用者無線裝置訊號的強度值;PT表示傳輸功率;PL( d0)表示讀取器與標籤間參考距離 的 路徑損失功率;η 為傳輸路徑訊號衰減率;Xσ為高斯干擾變數,其含意表示為標籤與接 收端間的障礙物數量有關。
運用管線型CORDIC 演算法,結合式 3.4.7 之演算式,以建置訊號強度定位法。式 3.4.7 之架構圖,如圖 3.4.16 所示。
圖3.4.16 RSSI 架構圖
圖3.4.17 為 RSSI 架構圖之 ASM chart。在狀態 S1與S2分別會讀取我們所需的參數;
S3狀態下,會做相減的動作,輸出 X1;S4狀態下,會使用 log 將輸入的參數,做求取 dBm 的動作,得 X2;S5狀態下,會將 X1與X2做相減的動作。最後,S6狀態下,會將 結果輸出到決策,判斷為1,則繼續輸出結果;若為 0,則會回到最初重新計算。
圖3.4.17 RSSI 之 ASM Chart
假定參數傳輸功率pt = i_pt = 0-10000010-01000000000000000000000(2) = 10(10),路徑 損失功率為pL = i_pL = 0-10000001-01000000000000000000000(2) = 5(10),傳輸路徑訊號衰 減率為η= i_n = 0-10000000-00000000000000000000000(2) = 2(10),高斯干擾變數Xσ = i_xfi
= 0-10000010-01000000000000000000000(2) = 10(10),得其接收到之訊號強度值為o_rssi = 0-10000011-01101111001101110101011(2) = 22.95101(10),如圖3.4.18 所示。
圖3.4.18 RSSI 訊號強度定位法之時序驗證
若與計算機之計算結果為基準,將其數值與管線型CORDIC 之 RSSI 架構經軟體時 序驗證之值做比較,可得其結果約莫誤差為0.003%。
其後,運用Testbench 於 ModelSim 再次做軟體時序驗證外,用以分析各階段時序上 之驗證值,是否合乎預期。此外,也應用邏輯分析儀對此架構做硬體之驗證,如圖3.4.19 與圖3.4.20 所示。
圖3.4.19 Testbench 於 ModelSim6.2b 時序驗證
圖3.4.20 訊號於邏輯分析儀之硬體驗證
第四章 管線型 CORDIC 硬體架構