當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀] 1 意義 簡(jiǎn)單的多機(jī)間數(shù)據(jù)通信在我們的設(shè)計(jì)中很普遍,一般情況下數(shù)據(jù)傳輸距離很短,不會(huì)超過百十m,因此僅采用雙絞線加RS232或RS485標(biāo)準(zhǔn)就可以有效傳輸。但有時(shí)多機(jī)之間的距離也會(huì)很遠(yuǎn),如我們所設(shè)計(jì)的一個(gè)

      
1 意義

   簡(jiǎn)單的多機(jī)間數(shù)據(jù)通信在我們的設(shè)計(jì)中很普遍,一般情況下數(shù)據(jù)傳輸距離很短,不會(huì)超過百十m,因此僅采用雙絞線加RS232或RS485標(biāo)準(zhǔn)就可以有效傳輸。但有時(shí)多機(jī)之間的距離也會(huì)很遠(yuǎn),如我們所設(shè)計(jì)的一個(gè)氣象項(xiàng)目,就要求子站遍布在基站1km范圍內(nèi)。因此在考慮成本、不增加很多設(shè)備的前提下,有效防止噪聲干擾,保證子站與基站的數(shù)據(jù)高精確傳輸就很重要。

 

   通常多機(jī)短距通信中,可以在收發(fā)端加入奇校驗(yàn)、累加和校驗(yàn)等出錯(cuò)就重發(fā)的防噪聲措施;但以上措施都只能檢錯(cuò),不能糾錯(cuò),也就是說傳輸過程中不能容錯(cuò)。在遠(yuǎn)距離、干擾大、出錯(cuò)概率非常高的情況下,單純的出錯(cuò)就重發(fā)措施會(huì)失去工作效率和意義。因此,我們需要一種能容錯(cuò)的數(shù)據(jù)傳輸方式,就要對(duì)數(shù)據(jù)編碼。因此,不同傳輸環(huán)境的噪聲性質(zhì)不相同,對(duì)應(yīng)的編碼方式也不一樣,所以我們?cè)O(shè)計(jì)編碼時(shí)強(qiáng)調(diào)更多位的糾錯(cuò)冗余,以適合較多的環(huán)境,但相應(yīng)地就降低了傳輸速率。另外,出于通用性和簡(jiǎn)易性的考慮,我們的設(shè)計(jì)應(yīng)可直接加載于原有的有線或無線通信系統(tǒng)上,除數(shù)據(jù)連線外,不需對(duì)原有系統(tǒng)做任何改變。

在此,我們采用了交錯(cuò)編碼技術(shù)來增加數(shù)據(jù)傳輸過程的容錯(cuò)能力
。編解碼設(shè)備插入加載到通信系統(tǒng)原來的數(shù)據(jù)收發(fā)端口。因此,微處理器要發(fā)送的數(shù)據(jù)由原先的直接經(jīng)發(fā)送端(無線通信為調(diào)制器和發(fā)送器)發(fā)送,變?yōu)橄冉?jīng)編碼設(shè)備編碼,然后再經(jīng)原有的發(fā)送端發(fā)送;同理,接收端(無線通信為接收器和解調(diào)器)收到信息,經(jīng)解碼設(shè)備解碼出數(shù)據(jù),再傳送給微處理器。

2 設(shè)計(jì)方案

   為適應(yīng)多種信道,要求我們的設(shè)計(jì)能同時(shí)糾隨機(jī)錯(cuò)和突發(fā)錯(cuò),并且能有多位的糾錯(cuò)冗余。因此,我們基于常用的卷積碼和循環(huán)碼特性,自定義一種簡(jiǎn)單的線性分組碼作為糾錯(cuò)編碼,以便我們刻意去提高糾錯(cuò)的位數(shù)。同時(shí)我們采用交錯(cuò)發(fā)送技術(shù)來提高糾突發(fā)錯(cuò)能力,并利用FPGA去實(shí)現(xiàn)該方案。


 

(1)方案的應(yīng)用范圍

   我們所設(shè)計(jì)的方案用于遠(yuǎn)距離的多機(jī)通信。根據(jù)實(shí)際經(jīng)驗(yàn),本方案默認(rèn)微處理器收發(fā)的數(shù)據(jù)為8位并行數(shù)據(jù)+1位同步時(shí)鐘,因此提供8位數(shù)據(jù)線和1位同步線。對(duì)于串口,則可增加串行轉(zhuǎn)換的移位寄存器來轉(zhuǎn)化。


 

(2)方案的實(shí)現(xiàn)

方案的實(shí)現(xiàn)如圖1所示。

①在子站、基站的收發(fā)端口與微處理器之間分別加入相應(yīng)的編解碼設(shè)備,使得子站與基站間傳輸?shù)臄?shù)據(jù)先經(jīng)過編解碼再傳輸,以達(dá)到增強(qiáng)容錯(cuò)的能力。

②用幀結(jié)構(gòu)實(shí)現(xiàn)碼字的交錯(cuò)。

③遠(yuǎn)距離傳輸,收發(fā)端最好選用同步方式,但這不是本設(shè)計(jì)的內(nèi)容,不予以討論。

3)基于精度,對(duì)數(shù)據(jù)的每一位單獨(dú)編碼

   實(shí)際應(yīng)用中,對(duì)數(shù)據(jù)精確的定義并非數(shù)據(jù)的完全重合,而是要求某一個(gè)精度。完全重合只對(duì)用做標(biāo)志的數(shù)據(jù)有意義,對(duì)單純計(jì)算用的數(shù)據(jù)并沒有必要。基于精度要求,顯然一個(gè)數(shù)據(jù)信息的高位對(duì)精度影響遠(yuǎn)比低位大(如:FFH,當(dāng)最高位出錯(cuò)變?yōu)?FH時(shí),精度變化最大,而最低位出錯(cuò)變?yōu)镕EH時(shí),精度變化最?。R虼?,我們并沒有對(duì)8位數(shù)據(jù)信息進(jìn)行整體編碼,而是逐位分開進(jìn)行編碼:高數(shù)據(jù)位,采用更長(zhǎng)的編碼,以保證更高的正確率;低數(shù)據(jù)位,則可采用較短的編碼,兼顧效率和設(shè)備容量。具體編碼如表1所列。

   對(duì)8個(gè)位遠(yuǎn)逐位編碼,8個(gè)生成矩陣為1維矢量。因此用FPGA實(shí)現(xiàn)編碼時(shí),采用查表法更方便,如表2所列。

   之所以選用010等作為碼字,是因?yàn)?1相間在組合為幀發(fā)送時(shí),可以減少連0或連1的出現(xiàn)概率。

(4)幀結(jié)構(gòu)實(shí)現(xiàn)交錯(cuò)發(fā)送技術(shù)

    為糾突發(fā)錯(cuò),碼字要按交錯(cuò)格式發(fā)送。因此,用幀實(shí)現(xiàn)碼字的交錯(cuò),數(shù)據(jù)發(fā)端按幀發(fā)送,數(shù)據(jù)收端按幀解碼。8個(gè)碼字共48位(6字節(jié)),加幀頭2字節(jié),所以,幀為8字節(jié)。為說明幀結(jié)構(gòu),暫以字母表示碼字各位:

碼字0:a2a1a0; 碼字3:d4d3d2ed1d0;

碼字1:b2b1b0; 碼字4:e6e5e4e3e2e1e0;

碼字2:c4c3c2c1c0; 碼字5:f6f5f4f3f2f1f0;

碼字6:g8g7g6g5g4g3g2g1g0;

碼字7:h8h7h6h5h4h3h2h1h0;

幀結(jié)構(gòu)如表3所列。



 
 

利用幀頭1和幀頭2的重合特點(diǎn)來檢測(cè)幀頭,因?yàn)榇a字交錯(cuò)發(fā)送時(shí)相鄰兩字節(jié)對(duì)應(yīng)位基本01相間的。由表3可得,第3字節(jié)到第8字節(jié),相鄰字節(jié)至少有6位不相同。因此可借用漢明距的糾錯(cuò)思想,認(rèn)為幀頭1和2不重合的位在2位以內(nèi),則表示正確收到幀頭。


3 FPGA實(shí)現(xiàn)設(shè)計(jì)

(1)單工條件下的實(shí)現(xiàn)

用兩塊FPGA分別實(shí)現(xiàn)編碼器和解碼器。按前面的編解碼原理,編碼器接收子站8位信息和1位同步,輸出8字節(jié)×8位幀結(jié)構(gòu)編碼作遠(yuǎn)程傳輸,解碼器收到幀結(jié)構(gòu)編碼,輸出8位信息和1位同步給基站。(在實(shí)際應(yīng)用中,子基站兩MPU還要加入通常的累加和檢錯(cuò)或偶校驗(yàn)檢錯(cuò)。因不屬編解碼內(nèi)容,不作討論。)


為檢驗(yàn)電路設(shè)計(jì),假設(shè)輸入信號(hào)為11001010,編碼輸出的幀結(jié)構(gòu)為表4。

   同步信號(hào)clk_in上升沿到來時(shí),編碼器讀入數(shù)據(jù)信息11001010,并按內(nèi)部的波特率clk;在下降沿產(chǎn)生正確的幀格式編碼輸出(D4、D4、07、FB、07、FA、05、BA)。

      當(dāng)解碼器判斷收到幀頭(兩個(gè)D4),則將同步信號(hào)clk_out置高,再按內(nèi)部波特率clk在上升沿收6字節(jié)的幀結(jié)構(gòu)碼字,在同步信號(hào)的下降沿輸出譯碼(11001010)。

   當(dāng)傳輸過程出現(xiàn)突發(fā)錯(cuò)時(shí),第5字節(jié)改為FF,第7字節(jié)改為00,譯碼器給出信息11001010。

    因?yàn)樾畔⒆畹臀坏木幋a能糾1位錯(cuò),最高位能糾4位錯(cuò),所以,當(dāng)?shù)?~5字節(jié)、第6~8字節(jié)分別出現(xiàn)一個(gè)8位的突發(fā)錯(cuò),譯碼器均能完全糾正。出現(xiàn)
多個(gè)突發(fā)錯(cuò)時(shí),相應(yīng)的信息低位將出錯(cuò),但信息高位因具有更多位的糾錯(cuò)能力而仍能保持準(zhǔn)確性。我們?cè)O(shè)計(jì)的目標(biāo)也正是盡可能保證高位的正確,以保證精度。

(2)基于單工的雙工通信

    此時(shí)一片F(xiàn)PGA內(nèi)集成了編碼器和解碼器,與MPU相連的數(shù)據(jù)通信接口仍為8位數(shù)據(jù)線,由MPU發(fā)W/R寫讀信號(hào)來控制編解碼,因此同一時(shí)間只能單向傳送數(shù)據(jù),編解碼不能同時(shí)進(jìn)行。準(zhǔn)確地說,為半雙工通信。(要改為全雙工,須將MPU的數(shù)據(jù)線接口翻倍,非常占資源。)

   實(shí)際上,我們對(duì)編碼器和解碼器的輸出分別加了一個(gè)傳輸門(transfer_X器件)。該傳輸門由W/R信號(hào)控制,一旦傳輸門關(guān)閉,則將傳輸門的輸出置于高阻態(tài)("Z"),因此,編解碼器的輸入輸出不會(huì)相互干擾,從而能在同一數(shù)據(jù)線上進(jìn)行半雙工傳輸。


  

雙工編、解碼器的內(nèi)部電路如圖7所示。(編碼器,解碼器與單工的相同。)

MPU向FPGA寫信息,F(xiàn)PGA編碼輸出。W/R=0,信息為11001010。

MPU讀FPGA的信息,F(xiàn)PGA收幀結(jié)構(gòu)并解碼。W/R=1,解碼得11001010。

4 總結(jié)

①我們的設(shè)計(jì)目的主要在于增加數(shù)據(jù)的容錯(cuò)能力。FPGA設(shè)備加載于MPU的數(shù)據(jù)接口與數(shù)據(jù)通信芯片接口之間,數(shù)據(jù)仍按原系統(tǒng)的發(fā)送方式遠(yuǎn)距離傳輸,如圖8所示。因此原有的通信設(shè)備不必作改動(dòng),就能很方便地加載我們的設(shè)計(jì)。同時(shí),因?yàn)榫幋a采用的分組碼的位數(shù)可以根據(jù)實(shí)際應(yīng)用場(chǎng)合再做簡(jiǎn)單調(diào)整,因而能夠提供更大的噪聲冗余。   

②FPGA內(nèi)部提供統(tǒng)一的編解碼波特率,最高由FPGA時(shí)鐘頻率決定,仿真圖中采用100ns(10MHz)。MPU收發(fā)信息的波特率最高為編碼波特率的1/8,因?yàn)?字節(jié)的數(shù)據(jù)信息要轉(zhuǎn)換為8字節(jié)幀結(jié)構(gòu)。也就是說,我們是以降低通信的最高速率為代價(jià)來換取數(shù)據(jù)的高精度的。因此,我們的設(shè)計(jì)主要應(yīng)用于不要求過高速率的通信場(chǎng)合。
 
 
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉