999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA 的PPM 調制解調系統設計

2021-03-11 03:48:50施洪生
電子技術應用 2021年2期
關鍵詞:系統設計

侯 歡,施洪生

(北京交通大學 電氣工程學院,北京100044)

0 引言

在數字電路設計中,現場可編程門陣列(Field Programmable Gate Array,FPGA)技術得到越來越廣泛的應用,特別是在通信領域。 對于FPGA 處理器之間的通信,一般采用傳統的有線連接,例如UART、CAN 等方式。 可當FPGA 處理器之間存在相對運動(即一個FPGA 處理器在旋轉側,而另一個在固定側)時,傳統有線通信方法會帶來不便,而無線通信恰好適用于此情況。 將基于FPGA 的PPM 調制解調無線數據通信技術應用在風機齒輪箱應力測試中,可以規避傳統有線式齒輪箱測量的種種風險[1],并且可以簡化復雜的滑環工裝設計,更加準確地對齒輪箱應力進行測試,同時也可以將此技術應用于其他旋轉器件的信號測試場合,例如,在數控機床技術中對其卡盤在不同轉速下的夾緊力性能進行實時監測;在航空航天技術中對其航空發動機旋翼的應力、扭矩等進行測試。

隨著無線通信技術的不斷發展,無線通信的方式也不斷出現,其中各種方式的誤碼率、抗干擾能力和傳輸速率也不同,為了提高數據傳輸的速率和抗干擾能力,本設計采用光電耦合的無線數據傳輸方式,其具有良好的抗干擾能力,它利用光波作為載波對信號進行傳輸,可以達到很高的傳輸速率,在光無線通信領域中,保證一定的速率下,要求傳輸功率盡可能小。脈沖位置調制(PPM)是一種正交調制方式,相比于傳統的開關鍵控(OOK)調制,它具有更高的光功率利用率和頻帶利用率,并能進一步提高傳輸信道的抗干擾能力[2]。 且基于FPGA 的脈沖位置調制(PPM)可以在高轉速、數據量大的旋轉件中快速、可靠地傳輸測量到的數據,因而本設計采用基于FPGA 的脈沖位置調制(PPM)方式。

1 系統整體結構

本設計由旋轉側數據的采集和發送以及固定側數據的接收和處理兩部分組成,其中發送側包括PPM 調制電路的實現,接收側包括PPM 解調電路的實現。 發送側是將A/D 轉化后的數據通過CRC 生成器加入CRC 校驗碼,再通過PPM 調制模塊轉化為PPM 脈沖信號,最后通過發送電路的紅外發射二極管以光的形式發送出去。接收側是將接收電路中的紅外接收頭接收到的數據通過PPM 解調模塊將數據解碼出來,再將數據進行CRC校驗,最后將數據傳給上位機進行顯示和處理。 系統整體設計流程如圖1 所示,圖2 為發送數據流程圖,圖3為接收數據流程圖。

圖1 系統整體結構

圖2 發送數據流程圖

圖3 接收數據流程圖

2 PPM 調制系統設計及仿真

PPM 調制的編碼方式是將輸入的n 位二進制數據映射在脈沖位置調制一幀的L(L=2n)個時隙中,即在L個時隙中對應的第l 個時隙發送一個光脈沖信號[2],l 代表的是時隙的位置數。

2.1 PPM 調制系統設計

PPM 調制是將輸入數據轉化為不同時隙位置的脈沖,此過程可以用一個計數器來進行計數,從而在不同時隙輸出脈沖的過程[2]。 以時鐘脈沖作為一個標準的時間間隔,將計時過程轉換成一個計數的過程。 計數模塊在時鐘的上升沿開始計數,當計數數據與二進制調制數據相等時就在相應的時隙輸出高電平,其余時隙輸出低電平,由此得到一個不同周期內不同位置上出現脈沖的波形。

在程序設計中PPM 調制思路如下,將系統時鐘分別進行四分頻和八分頻,其中四分頻時鐘是計數器的時鐘信號,八分頻時鐘是串并轉換的時鐘信號。 串行數據經過串并轉換模塊轉化為并行數據,根據系統所需要的是4PPM,將系統時鐘信號經過四分頻器轉化為周期為4的計數器,把串并轉換輸出的數據和計數器數據輸入到比較器模塊中進行比較,如果兩者相同則輸出高電平,反之輸出低電平。最后經過一個脈沖成形模塊輸出窄脈沖,這樣可以減小鄰近信道對其的干擾。 圖4 是PPM 調制Verilog 流程圖。

圖4 PPM 調制Verilog 流程圖

本設計是對4PPM 調制系統的設計,因此需要將A/D轉化出來的數據進行串并轉換,使這些數據轉換為兩位一組的數據,此部分是實現PPM 調制的關鍵。 串并轉換可以通過移位寄存器來實現,本設計的思路是:先將第一位進入系統的數據緩存到寄存器中,等到第二個數據進來后,在下一個時鐘的上升沿到來時將這兩位數據同時輸出。 其主要代碼如下:

2.2 PPM 調制仿真

PPM 調制的頂層設計就是將調制部分的所有模塊都拼接在一塊,最終來實現調制的功能。 由于本設計是將A/D 轉換后的數據作為PPM 調制模塊的輸入數據,因此編寫Verilog 代碼來產生一個隨機的m 序列來代替A/D 轉換后的數據,最后在頂層設計中將m 序列發生器和PPM 調制模塊連接到一起形成完整的PPM 調制系統。 4PPM 調 制RTL 級 圖 如 圖5 所 示。 4PPM 調 制 仿 真 圖如圖6 所示。

在圖6 的4PPM 調制仿真中,截取其中一段如圖所示,PPM 調制系統輸入的數據為InDat(0x55、0x79、0xd8、0xd8、0x55、0x79),其中0x79(0111_1001)經串并轉換后變為01、11、10、01 四組數據,4 位計數器依次計數00、01、10、11,當串并轉換后的數據與計數器的數值相等時,輸出數據q 就為高電平,得到輸出的q 之后,再將其高電平的寬度縮小為原來的四分之一,這樣可以減小鄰近信道對其的干擾。 由此得到了最終的4PPM 調制波形dataout。在圖7 中,輸入0x79 時間段中,經過了8 個八分頻時鐘,輸入數據依次為01、11、10、01,在與計數器值count 相比較后,分別在4 個時隙的第二個位置、第四個位置、第三個位置、第二個位置輸出了一個脈沖,這剛好與PPM 調制原理一致,從而證明了系統設計的正確性。

3 PPM 解調系統設計及仿真

3.1 PPM 解調系統設計

PPM 解調可以由PPM 調制的逆向思路來實現,在FPGA 解調過程中首先要提取幀同步信號,本設計中采用在數據的頭和尾分別插入特殊的幀頭和幀尾,以此來判斷數據的起始位和終止位。 進入FPGA 的是有一定規律的脈沖信號,檢測到幀頭后,再確定脈沖在一幀數據中所占據的時隙位置。

4PPM 的編碼格式為:00 對應1000;01 對應0100;10 對應0010;11 對應0001,一幀PPM 數據由幀頭SOF(0111)、n 個字節的數據以及幀尾EOF(1101)組成,一般每幀數據有1 到16 個字節,而且兩幀數據之間的時間間隔是任意的。

表1 PPM 數據幀格式

本設計中,首先每16 個時鐘周期采集1 位PPM 信號(din),所以需要一個16 位的計數器count0;解碼2 bit需要采到4 位din 信號, 因此需要一個3 位的計數器count1;完成一個完整的8 位信號,需要解碼2 bit 數據4次,所以還需要一個3 位的計數器count2。 其次,用移位寄存器將輸入的8 位數據進行暫存以便對其進行讀取,與此同時, 輸出的8 bit 數據是2 bit 數據輸出累加到8 bit,所以也需要移位寄存器對輸出數據進行暫存。設計一個4 位寄存器reg1 對輸入的數據進行移位操作,一個8 位寄存器reg2 對輸出的數據進行暫存,等待8 bit 移滿,就進行數據的輸出;最后需要設計一個狀態機來判斷是否進行解碼,S0 表示沒有收到幀頭,處于未工作狀態;S1表示收到幀頭,開始進行解碼。 圖7 是PPM 解調Verilog流程圖。

圖7 PPM 解調Verilog 流程圖

圖5 4PPM 調制RTL 級圖

圖6 4PPM 調制仿真

在PPM 解調過程中,將最后解調出的數據以8 位數據的形式進行數據的輸出,所以需要一個8 位寄存器對數據進行緩存,等8 位數據移滿后將數據輸出。 其主要代碼如下所示:

3.2 PPM 解調仿真

在進行PPM 解調系統的仿真之前,首先需要編寫測試文件,然后將各個模塊加入到工程中[3]。 測試文件通過讀取"F:/PPM1.txt"的文件中的數據作為PPM 脈沖數據輸入到解調系統中,其中PPM 脈沖輸入數據如圖8所示,4PPM 解調仿真圖如圖9 所示。

圖8 PPM 脈沖輸入數據

由圖9 可以看出,解調出來的數據為0x55、0x79、0xd8、0xd8、0x55、0x79,與輸入的數據一致,而且輸出的數據都是在輸出數據有效標志位高電平之后輸出下一個字節的數據。 由此驗證了代碼功能的正確性。

4 CRC 生成器及CRC 校驗

在紅外數據傳輸過程中,由于存在較多的干擾源,因此數據傳輸的過程中容易發生錯誤。 采用CRC 校驗進行差錯控制,可以比較正確可靠地實現紅外數據傳輸[4]。首先將A/D 轉換后的數據生成CRC 碼,將CRC 碼加入到A/D 轉換后的數據后面一起進入到調制模塊,將調制出來的PPM 數據經過發射電路發送出去,之后將紅外接收頭接收到的數據進行CRC 碼校驗。 這樣可以保證紅外傳輸部分的數據更加可靠。 本設計將CRC 校驗碼的Verilog 實現方法展現出來。

由于CRC-CCITT 的生成多項式G(X)為x16+x12+x5+1,輸入數據用多項式表示為C(X),將C(X)左移R 位,用C(x)×2R除以生成多項式G(x)得到的余數就是校驗碼[7]。根據CRC 校驗碼的生成原理,采用模二除法在程序設計中得到CRC 碼。 其結構圖如圖10 所示。 在接收側的CRC 校驗是一邊接收數據一邊進行校驗,當把數據都接收完畢后, 最終得出的CRC 校驗碼與固定的CRC 值進行比較,如果兩者相同則接收到了正確的數據,反之則接收到的數據有誤。

在測試文件中輸入數據為10101010 和11110000,最終得到的CRC 碼生成器仿真結果如圖11 所示,為0001010010100000 和1110111100011111, 與 用 理 論 計 算結果一致,因此確定了此電路設計的可行性。

5 結論

本文通過研究PPM 調制解調的原理,設計了基于FPGA 的PPM 調制解調系統,詳細論述了調制解調系統的程序設計原理以及CRC 校驗碼的實現。 用Verilog HDL 硬件描述語言編寫了PPM 調制代碼、PPM 解調代碼和CRC 校驗代碼,并在Modelsim 中進行了聯合仿真,從仿真結果可以看出PPM 調制解調系統設計的正確性。 加入了CRC 校驗,提高了后續實際應用中數據傳輸的可靠性。

圖9 4PPM 解調仿真圖

圖10 CRC 電路結構圖

圖11 CRC 碼生成器仿真圖

實際應用中與仿真必定會有偏差,在后續實用化中還需要對其進行完善與改進。

猜你喜歡
系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 91精品亚洲| 亚洲日本中文综合在线| 色偷偷av男人的天堂不卡| 欧美区国产区| 女人18毛片久久| 欧美成人午夜影院| 日本亚洲国产一区二区三区| 日韩色图在线观看| 一级毛片在线播放免费观看| 99久久精彩视频| 中文字幕亚洲第一| 午夜国产理论| 免费a级毛片视频| 欧美日韩国产成人高清视频| 亚洲成人在线网| 国产中文一区a级毛片视频| 亚洲资源在线视频| 性色在线视频精品| 久久一本精品久久久ー99| 丁香亚洲综合五月天婷婷| av在线手机播放| 亚洲大尺度在线| 免费国产高清视频| 亚洲成A人V欧美综合| 97国产精品视频自在拍| 高清亚洲欧美在线看| 国产精品无码久久久久AV| 久久91精品牛牛| 成人无码一区二区三区视频在线观看| 日本不卡视频在线| 99精品福利视频| 亚洲国产系列| 免费大黄网站在线观看| 中文字幕欧美日韩| 亚洲精品第1页| 亚洲a级在线观看| 国产成人乱码一区二区三区在线| 囯产av无码片毛片一级| 亚洲v日韩v欧美在线观看| 成人第一页| 欧美三级自拍| 在线无码av一区二区三区| 国产91av在线| 在线免费亚洲无码视频| 国产欧美日韩综合一区在线播放| 日本日韩欧美| 国产乱子伦视频三区| 欧美日韩国产高清一区二区三区| 国产黄色视频综合| 欧美日韩国产系列在线观看| 亚洲色图欧美在线| 亚洲国产综合精品中文第一| 国产成人禁片在线观看| 国产亚洲高清在线精品99| 中文字幕日韩欧美| 欧美日本在线播放| 性欧美精品xxxx| 四虎影视永久在线精品| 日韩中文精品亚洲第三区| 亚洲动漫h| 在线精品亚洲国产| 熟妇人妻无乱码中文字幕真矢织江 | 综合久久五月天| 亚洲女同一区二区| 国产亚洲成AⅤ人片在线观看| 亚洲色欲色欲www在线观看| 五月婷婷欧美| 中国国产一级毛片| 成人午夜网址| 国产欧美性爱网| 欧美亚洲欧美| 亚洲欧美另类日本| 久久a级片| 久久99精品久久久大学生| 狠狠色丁婷婷综合久久| 欧美不卡二区| 国产玖玖玖精品视频| 伊人久久大线影院首页| 亚洲人成影视在线观看| 丰满人妻中出白浆| 国产精品成人观看视频国产| 国产综合欧美|