国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于FPGA 對主從通信的優(yōu)化設計

2021-11-19 09:22黃姣英李勝玉楊達明
現(xiàn)代電子技術 2021年22期
關鍵詞:雙口接收數(shù)據(jù)主從

黃姣英,李勝玉,高 成,楊達明

(北京航空航天大學可靠性與系統(tǒng)工程學院,北京 100191)

RS 485 是一種采用差分收發(fā)形式的串行通信標準,采用其標準的主從通信具有傳輸距離長、速度較高、電平兼容性好、使用靈活方便、成本低廉和可靠度高等優(yōu)點,并在監(jiān)測、交通、工業(yè)自控中廣泛應用[1-4]。魏金文等人提出了一種基于嵌入式的RS 485 多機通信方案探究,分析了普通自動地址識別模式通信下存在的隱患和傳輸系統(tǒng)效率低下的原因[5]。鄢濤等提出一種基于FPGA 和外接1 MB SRAM,并采用RS 485 標準的數(shù)據(jù)通信協(xié)議的點對點傳輸設計[6]。劉純提出基于FPGA 的RS 485 主從通信協(xié)議,實現(xiàn)了點對多的高速數(shù)據(jù)傳輸[7]。白曦提出一種基于狀態(tài)機的RS 485 總線的主從通信方法,解決了主從設備收發(fā)沖突問題[8]。

本文基于FPGA 在RS 485 主從通信接收端利用串并轉(zhuǎn)換模塊對數(shù)據(jù)進行識別過濾,采用雙口RAM 替代傳統(tǒng)FIFO,使得上位機PC 可以靈活讀取緩存數(shù)據(jù)。實驗結果證明,整個主從系統(tǒng)傳輸效率得到提升,數(shù)據(jù)接收端每步采用反饋機制,提高了傳輸系統(tǒng)的可靠性。

1 數(shù)據(jù)幀格式

8B/10B 編碼內(nèi)含有一些特殊字符,可用作幀同步字符和其他的分隔符或控制字符,有助于比特流的碼組定位和信息識別[9-10]。根據(jù)同步高速協(xié)議標準把傳輸幀格式的幀頭定義為8B/10B 編碼中的K28.5 字符“0101111100”,幀尾采用K28.1 字符“1001111100”。在任意數(shù)據(jù)組合中,K28.5 與K28.1 只作為控制字符出現(xiàn),而在數(shù)據(jù)部分不會出現(xiàn),因此可以有效地避免幀同步的假同步現(xiàn)象,如圖1 所示。

圖1 幀格式

Label 可以根據(jù)接收端點個數(shù)進行設計,本次擬采用2 bit,分別為00,01,10,11。User data 可以根據(jù)用戶自己定義,本次采用7 bit,每個DATA 都采用1 bit 奇偶校驗。為避免傳輸數(shù)據(jù)混亂和傳輸效率低下的現(xiàn)象,發(fā)送端和接收端的DATA 格式統(tǒng)一采用包括Label 和Parity 在內(nèi)的10 bit格式,如圖2 所示。

圖2 DATA 格式

2 主從通信方案設計

RS 485 主從通信結構如圖3 所示,發(fā)送端由上位機PC 下達數(shù)據(jù)發(fā)送指令到數(shù)據(jù)發(fā)送端FPGA,發(fā)送端與接收端均采用Xilinx 公司的Spartan 6 系列FPGA。串行數(shù)據(jù)通過ADM2582E 集成式隔離數(shù)據(jù)收發(fā)器使得TTL 電平與差分信號相互轉(zhuǎn)換,最后數(shù)據(jù)由接收端FPGA 接收。接收端上位機PC 通過基于AU9254A21 的USB 集線器向數(shù)據(jù)接收端FPGA 采集數(shù)據(jù),驗證主從通信系統(tǒng)的可靠性和完整性。

圖3 主從通信結構圖

2.1 接收端設計

接收端在接收數(shù)據(jù)前需要預設置,為達到高精度采樣,本設計以最高系統(tǒng)時鐘50 MHz 進行位同步采樣,高速數(shù)據(jù)傳輸需要進行位同步與數(shù)據(jù)幀同步[11]。首先進行位同步,接收端把每次在系統(tǒng)時鐘條件下采樣的數(shù)據(jù)存放在2 個10 bit 寄存器,當filt_data1 寄存器為1 與filt_data2 寄存器為0 時即證明接收數(shù)據(jù)開始,見圖4。

圖4 位同步示意圖

當檢測到位同步時,串并轉(zhuǎn)換模塊向采樣時鐘模塊傳遞一個使能啟動信號,采樣時鐘開始對數(shù)據(jù)進行采樣,如圖5 所示。本設計采用10 MHz 的采樣時鐘與數(shù)據(jù)傳輸速率相匹配,在設置一個10 bit 移位寄存器條件下,每10 bit 串行數(shù)據(jù)進行一次串并轉(zhuǎn)換,當該寄存器完整收到編碼中的K28.5 字符“0101111100”時,證明位同步和幀同步已完成。

圖5 接收端結構圖

2.2 數(shù)據(jù)識別功能與雙口RAM 設計

本設計把數(shù)據(jù)識別過濾功能融入到了數(shù)據(jù)串并轉(zhuǎn)換模塊中,首先對接收到的數(shù)據(jù)進行Label 識別判斷,如果符合本接收端數(shù)據(jù),則轉(zhuǎn)移到雙口RAM;如果不符合,直接對冗余數(shù)據(jù)進行過濾。然后基于狀態(tài)機設計了一種反饋裝置,當幀同步檢測、奇偶校驗和雙口RAM 任意一步發(fā)現(xiàn)數(shù)據(jù)錯誤即向上位機報錯,中止后續(xù)數(shù)據(jù)傳輸操作,如圖6 所示。數(shù)據(jù)識別過濾部分代碼如下:

根據(jù)本次主從通信所傳輸?shù)臄?shù)據(jù)格式可知,基于FPGA 設計的雙口RAM 是具有兩套完全獨立的數(shù)據(jù)線、地址線和讀寫使能線,并允許兩個獨立的系統(tǒng)同時對其進行隨機性訪問的存儲器,即共享多端口存儲器[12-15]。基于ISE 軟件采用Verilog 語言設計的雙口RAM 如圖7所示。上位機PC 可以通過尋址讀取RAM 里任意數(shù)據(jù),并且整體上讀寫可以同時進行,比傳統(tǒng)FIFO 更具有靈活性。

圖7 雙口RAM 設計圖

雙口RAM 有兩組輸入、輸出數(shù)據(jù)線(RAM_wr_data& RAM_rd_data);兩組地址(RAM_write_addr &RAM_read_addr);兩 個 使 能 端(RAM_wr_en &RAM_rd_en),一個端口只讀,另一個端口只寫,見表1。

表1 部分端口注釋表

3 數(shù)據(jù)分析

為模擬RS 485 主從通信數(shù)據(jù)傳輸,本文采用Matlab 隨機函數(shù)y=dec2bin(randi([0,1 023],1 000,1),10)生成一組1 000 個10 bit 0~1 024 的數(shù)據(jù),最后把生成的隨機數(shù)據(jù)復制在上位機PC 來進行總線數(shù)據(jù)傳輸。為進一步提供大量實驗樣本,本文利用搭建的主從通信傳輸平臺完成數(shù)倍于樣本的數(shù)據(jù)并且進行100 次傳輸。某次傳輸數(shù)據(jù)仿真如圖8 所示,主發(fā)送端數(shù)據(jù)定義為Uart_Send/Data,從屬接收端識別寄存器數(shù)據(jù)定義為rx_data,4 個接收端ram 分別定義為rx_data_r1、rx_data_r2、rx_data_r3 和rx_data_r4。為核算每次傳送數(shù)據(jù)是否存在丟幀現(xiàn)象,本次優(yōu)化設計為每個寄存器配備數(shù)據(jù)計數(shù)器,分別定義為num2,num3,num4,num5 和num6,誤碼率定義為rxw。

圖8 RS 485 模塊發(fā)送和接收數(shù)據(jù)仿真圖

本文隨機抽取5 組數(shù)據(jù),并與常規(guī)接收端的緩存數(shù)據(jù)進行對比,如表2 所示。

表2 優(yōu)化設計與常規(guī)設計緩存數(shù)據(jù)對比

由第1 組數(shù)據(jù)可知,常規(guī)型主從通信當每個接收端接收到1 000 個數(shù)據(jù)時傳遞給緩存器,本設計的第一個接收端根據(jù)識別傳遞到RAM 寄存器為241 個數(shù)據(jù),較常規(guī)優(yōu)化率為75.9%;第二個RAM 寄存器讀數(shù)為237,較常規(guī)優(yōu)化率為76.3%;第三、四個較常規(guī)優(yōu)化率依次為74.8%,73.0%。

由上文可知,在傳輸1 000個數(shù)據(jù)且接收端為4個的情況下,本設計較常規(guī)型主從通信平均優(yōu)化率為75%。為進一步證明本設計的優(yōu)化性,實驗又分別采取了1 000,2 000,4 000 和6 000 組數(shù)據(jù)進行傳輸,如圖9 所示。通過實驗結果分析證明,通信優(yōu)化率都達到了75%。本文設計雙口RAM 較傳統(tǒng)FIFO 數(shù)據(jù)讀寫平均有50%的提升,由此可知在具有1 個數(shù)據(jù)發(fā)射器和4 個從屬接收器的情況下,本文優(yōu)化設計相比常規(guī)型主從通信效率提升了37.5%。

圖9 優(yōu)化與常規(guī)設計接收數(shù)據(jù)對比圖

4 結 語

常規(guī)基于FPGA 的RS 485 主從通信具有體積小和成本低的特點,本優(yōu)化通過對FPGA 進行硬件編碼,相對于常規(guī)主從通信在數(shù)據(jù)處理方面具有顯著效率提升;數(shù)據(jù)收、發(fā)兩端每步都設置反饋程序,提高了數(shù)據(jù)傳輸?shù)目煽啃?。?jīng)數(shù)據(jù)分析可得,本優(yōu)化設計在從屬接收器數(shù)量越多的情況下數(shù)據(jù)處理效率越高。隨著主從通信設備硬件的發(fā)展,低成本、高效率和高可靠性仍是用戶的首選,實驗證明,本設計在主從通信方面具有較好的應用前景。

猜你喜歡
雙口接收數(shù)據(jù)主從
沖激噪聲背景下基于幅度預處理的測向新方法*
雙口形式的戴維寧定理在電路分析中的應用
低復雜度多輸入多輸出雷達目標角度估計方法
雙口RAM在機載嵌入式系統(tǒng)中的應用
FANUC系統(tǒng)PROFIBUS主從功能應用
單片機模擬串口數(shù)據(jù)接收程序的實現(xiàn)及優(yōu)化
基于主從控制的微電網(wǎng)平滑切換控制策略研究
基于飛行試驗數(shù)據(jù)的仿真模型主從一體化檢驗
雙口RAM讀寫正確性自動測試的有限狀態(tài)機控制器設計方法
雙口RAM在無人機三余度飛控計算機數(shù)據(jù)交換中的應用