在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一種關于FPGA的兩種誤碼儀實現方法設計

電子工程師 ? 來源:微型機與應用 ? 作者:劉浩,劉睿強,盧 ? 2021-04-07 11:10 ? 次閱讀

摘 要: 設計了一種基于EPF10KRC208-4的誤碼儀,該設計充分利用了FPGA強大的可編程能力和豐富的資源,以及軟件開發平臺Quartus Ⅱ的完備功能,具有體積小巧、攜帶方便、測量精確等優點。其核心部分分別采用了逐位比較法和移位寄存器法,并在仿真過程中設置了多種誤碼情況進行對比。最后,根據仿真結果分析了方案的可行性和兩種方法的優缺點。

自20世紀下半葉以來,信息技術的飛速發展在軍事領域掀起了軍事變革的浪潮,使武器裝備、作戰模式和作戰理論的本質發生了深刻變化。信息技術促進了衛星通信、光纖通信等現代通信手段與現代偵查監視系統、計算機網絡和武器控制的結合,實現了情報、通信、指揮與控制一體化的情報指揮控制系統(C3I系統)正改變著傳統的作戰模式,使戰爭形態由機械化戰爭轉變為信息化戰爭。

隨著通信技術的不斷發展,數字通信正在逐步取代模擬通信成為主要的通信方式。而誤碼是影響數字通信系統最重要的因素,因為誤碼直接破壞了信息傳遞的正確性。然而在信息化戰場上,存在各種各樣復雜的干擾,人為干擾如雷達波、各種電器開關通斷產生的短脈沖等的電磁波,敵方的電子干擾、各種干擾彈、機動馬達和炮擊爆炸等電磁輻射,還有非人為的雷電、宇宙輻射、鄰近通信系統等的干擾,這些干擾往往是導致信道產生誤碼的最重要因素。

為了正確地評估戰場環境下通信系統的性能,本文研究了基于FPGA的誤碼儀設計,采用FPGA使設計具有結構小巧,攜帶方便等優點,其核心部分的設計分別采用了逐位比較法和移位寄存器法。

1 基本原理

設計過程中FPGA開發環境采用Altera公司的開發軟件Quartus Ⅱ 9.0,它集成邏輯分析、功率分析、時序優化和EDA工具等功能,使設計變得十分簡潔。

1.1 逐位比較法的基本原理

pIYBAGBtIXOAfoOlAABRX60W9z8252.png

逐位比較法誤碼儀示意圖如圖1所示,誤碼儀由發送和接收兩部分組成[3]。發送部分由碼型發生器組成,Select為測試碼類型選擇輸入,接收部分由時鐘同步器、本地碼產生器、逐位比較器和誤碼統計模塊組成。

其原理為:在低頻時鐘CLK1的驅動下,將碼型發生器生成的測試碼m序列輸入到被測信道,然后由接收端接收,并提取時鐘同步器進行時鐘同步。在8倍高頻時鐘CLK8的驅動下,提取數據流的時鐘信號。時鐘同步完成后,位同步器輸出頻率同CLK1的同步時鐘CLK一致,其上升沿對準接收數據的中間部分,以保證接收數據的正確性。

m序列經過被測信道后,進入接收端的本地碼產生器和逐位比較器。接收端把接收到的m序列前N個碼元(N為m序列發生器級數)對本地碼產生器進行灌碼,并把所灌碼作為本地產生器的初值。本地碼產生器的結構與發送端的碼型發生器結構相同,因此,如果所灌碼正確,就可以產生與發送端完全一致的m序列,該序列與接收到的數據在逐位比較器中進行逐位比較。

如果測試數據在傳輸中有誤碼,則在逐位比較過程中可以檢測出來。逐位比較器將檢測到的誤碼信號傳輸給誤碼統計模塊,該模塊的功能是進行誤碼數累計,累計的數據傳送給計算顯示模塊。當一段時間內誤碼數量超過所設上限,則該模塊給出失步信號LostSyn,說明此時系統失步,統計的誤碼數據無效,需重新同步。失步信號LostSyn使本地碼產生器重新進行灌碼,并產生新的本地序列。后續步驟同上。

1.2 移位寄存器法的基本原理

o4YBAGBtIL-Ae-sRAABPriSgetI558.png

移位寄存器法誤碼儀的示意圖如圖2所示,誤碼儀的設計也包括發送部分和接收部分。發送部分由碼型發生器組成,接收部分由時鐘同步器、誤碼檢測器和誤碼統計模塊組成。碼型發生器與上一種方法工作方式不同,在同一次測試中要先后產生兩種碼型,先產生時鐘同步碼,再產生m序列。時鐘同步碼只用于接收端時鐘提取,時鐘同步器工作原理與第一種方法相同。時鐘同步后時鐘同步器發出Syn信號通知碼型發生器產生m序列,這樣可以避免測試數據的丟失,保證誤碼檢測的正確性。

該方法的最大特點是用一個誤碼檢測器代替了上一種方法的本地碼產生器和逐位比較器。當時鐘同步后,m序列經過被測信道直接進入接收端的誤碼檢測模塊進行誤碼檢測,而不需要再產生本地碼,這種設計方法的優點是抗干擾能力更強,設計也簡單;缺點是占用FPGA資源多,耗用83%的邏輯單元,設計多種碼型時占用資源更是明顯增多。而逐位比較法對FPGA資源要求不高,僅占13%的邏輯單元,容易實現多種碼型測試。誤碼統計模塊的工作原理與前一種方法相同。

2 設計方法

2.1 逐位比較法的設計方法

pIYBAGBtIN-AUNCMAAAOvFQ38IY627.png

碼型發生器模型圖如圖3所示,其核心為m序列發生器。其中,CLK1為產生測試數據的基準時鐘;Select為碼型選擇輸入端,在這里設計了兩種碼型,通過控制Select端狀態來實現測試碼型的切換;ErrorIN為手動誤碼輸入端,該端連接一個按鈕,按一次按鈕產生一個誤碼;DATA為數據輸出端口

pIYBAGBtIPiALRXwAAAO6zfCLpA500.png

圖4為時鐘同步器模型,其核心為一個抽樣電路。CLK8為8倍高頻時鐘輸入端,DataIN為數據輸入端,SynCLK為同步時鐘輸出端,Syn為時鐘同步標志位。設計的方法為:數據輸入端DataIN作為抽樣電路的控制端,高電平時抽樣電路工作,在一個周期內抽樣電路需進行3點抽樣,當輸入數據的寬度無法滿足3點抽樣時,視為干擾,繼續進行時鐘同步搜索。當3點抽樣皆為高電平時,才視為正常數據,使該模塊輸出同步時鐘和時鐘同步標志位。該同步時鐘作為接收端后續電路的時鐘信號。

o4YBAGBtIQiAIfmcAAAOpZPrDg0253.png

圖5為本地碼產生模塊模型圖,其核心為灌碼電路設計和m序列發生器。CLK為時鐘輸入端(后續模塊相同),DataIN為數據輸入端,Reset為復位端,DATA為本地碼輸出端。灌碼電路設計的關鍵是,在進行灌碼時,將m序列發生器(最長線型反饋移位寄存器)的循環回路斷開,使其成線性移位寄存器;當灌碼完成后,將m序列發生器循環回路接通,此后,DataIN輸入的數據無效,即可按照所灌初值自行產生m序列。當出現失步或者手動復位時,復位信號從Reset端輸入使該模塊重新進行灌碼操作。

pIYBAGBtIR2AEPiMAAALu1BeI5I739.png

圖6所示為逐位比較器模型圖,其核心為一個異或門和相應的時延電路。其中A為本地碼輸入端;B為接收數據的輸入端,其在內部需要經過一定的時延,再跟A端數據接到異或門;EN為使能端。若出現誤碼,則在某時刻B端的碼元跟A端的碼元相異,經過異或門后輸出一個高電平,其他相同的碼元經過異或運算后輸出為低電平,這樣就能判別誤碼的情況了。Q即為誤碼輸出端,高電平表示有誤碼,一個時鐘的高電平表示有一個誤碼。

pIYBAGBtIS6AW6YFAAAPD6d3hZ0284.png

圖7為誤碼統計模塊模型圖,其核心為高電平到窄脈沖的轉換電路和誤碼計數電路。其中ErrorIN為誤碼信號輸入端,其在內部經過轉換電路轉換為窄脈沖信號;LostSyn為失步信號輸出端;Z[16..1]為誤碼統計數據輸出端。在給定時間內誤碼數量達到上限,則給出失步信號。失步信號通過一個8位計數器給出,該計數器8位輸出連接到一個8位與非門,通過改變連接方法可以設置0~255的任何一個定時值。另外,在其內部設計一個清零電路,清零周期即為所設時間段,每個周期結束時的一個時鐘清零電平將計數器清零,以保證每個周期從零計數。誤碼數據統計器為16位計數器。

2.2 移位寄存器法的設計方法

移位寄存器法的時鐘同步器和誤碼統計模塊的設計方法與上一種方法相同。下面僅介紹一下碼型發生器和誤碼檢測器的設計。

pIYBAGBtITuAZarJAAAOaMXwKKs456.png

圖8為碼型發生器模型圖,其核心為m序列發生器和方波發生器。其模型圖跟逐位比較法的不同之處在于輸入端沒有Select端,而有Syn端。Syn信號來自時鐘同步器的同步標志位Syn。該輸入通過控制一個開關電路來達到切換方波發生器和m序列發生器的目的。由于移位寄存器設計方法耗用資源多,不適合設計多種碼型,這里僅設計了一種m序列發生器,所以沒有Select端。當然,如果不考慮成本,也可以設計多種碼型。

pIYBAGBtIUqAbV8fAAATieXjF70419.png

圖9為誤碼檢測器模型圖,其核心為一個串入并出移位寄存器和一個并入串出移位寄存器。其中,DataIN為數據輸入端,STLD為并入串出移位寄存器的移位加載端,Error為誤碼輸出端。

pIYBAGBtIVeAXGH-AABBXPWP2zg312.png

圖10為誤碼檢測器設計思路示意圖。m序列每一周期的排列規則是固定不變的,即每個周期中的對應位都是相同的。移位寄存器法就是利用了這種周期性。假設該方法設計的碼型為511碼,又設每個周期的第20~24位的排列是“11001”,則移位寄存器對應位設計如圖10所示。按照這種設計方法,當一個周期的511個碼元正好出現在SREG1的輸出端口上時,如果傳輸的碼元無誤碼,則SREG2的輸入端口全是低電平,否則,對應的高電平即為誤碼,此時給STLD端口一個低電平,則將SREG1的511個輸出數據經過上述處理后加載到SREG2。SREG2在CLK的驅動下,將加載進來的數據從Error端口串行輸出,高電平即代表誤碼。

3 仿真分析

下面利用Quartus Ⅱ開發平臺對上述兩種方法在給定多種條件下進行時序仿真,并進行分析。

pIYBAGBtIAGASL0-AAHRGQ9qJb0408.png

圖11、圖12所示是在沒有手動加入誤碼的情況下(即ErrorIN為低電平)兩種方法的仿真截圖,所用碼型皆為511碼,所用時鐘頻率相同,分別在兩個不同的時間段進行了截取。從圖11、圖12可以看出,逐位比較法在時間t=499.0 ns處完成了時鐘同步,移位寄存器法在時間t=500 ns處完成了時鐘同步,在所給時間段內,兩種方法的誤碼輸出皆為低電平。對于移位寄存器法,在時間t=205.275 ?滋s處移位加載端STLD加載有效,把一個周期的511個碼元經過處理后同時加載到SREG2,此后每隔一個周期就給出一個加載有效信號。

o4YBAGBtH-yARenXAAHXkbnqlFA545.png

圖13、圖14所示是手動加了一個誤碼的情況下兩種方法的仿真截圖,碼型和頻率同前,分別在3個不同時間段進行了截取。由圖13、圖14可以看出,在時鐘同步之后,ErrorIN有一段高電平,此操作即給測試碼手動加入了一個誤碼。在此必須注意,加入的誤碼是落在測試碼的前9個碼元之內的。對于逐位比較法,這種誤碼將會使逐位比較法灌碼碼元出現誤碼。如圖13所示,在時間t=10.45 ?滋s之后連續出現了誤碼,直到t=108.85 ?滋s誤碼數在設定時間內達到了上限,系統判斷為失步并給出LostSyn信號后,又重新進行灌碼等一序列操作,才使誤碼數歸零,繼續進行測試。而逐位比較法則可以正確地檢測出誤碼。

o4YBAGBtH7eAGmceAAHMiCV1xF0877.png

圖15、圖16也是手動加了一個誤碼的情況下兩種方法的仿真截圖,截取了兩個時間段。與前一仿真相比,所給條件唯一不同就是加入的誤碼落在測試碼的前9個碼元之外,即逐位比較法首次灌碼碼元正確。由圖15、16中可以看出,在給定條件下,兩種方法都沒有出現失步現象,而且都能正確檢測出誤碼信息。結果說明,逐位比較法能否正確檢測出誤碼,取決于所灌碼元正確與否,也即抗干擾能力差,如果出現連續的灌碼碼元誤碼,則也會連續出現失步現象。而移位寄存器法不會出現這個問題。

通過對誤碼儀兩種實現方法的設計、仿真與分析可以看出,逐位比較法耗用邏輯單元少,擴展性能也好,適合設計多種PN碼的測試。但它的抗干擾能力也相對較差,一旦灌碼碼元出現誤碼,則后續測試會出現一連串誤碼,導致測試結果錯誤,直到系統判斷為失步,才能再次進行灌碼操作,重新測試。而移位寄存器法的抗干擾能力好,但耗用資源多,不適合多種PN碼測試的設計。結果表明,兩種方法都是可行的,但各有優缺點,在實踐中可以根據實際需求進行選擇。

參考文獻

[1] 樊昌信,曹麗娜。通信原理(第六版)[M]。北京:國防工業出版社,2006.

[2] 褚振勇,齊亮,田紅心,等.FPGA設計及應用[M]。西安:西安電子科技大學,2006.

[3] 李斌。基于FPGA的誤碼儀的研究與設計[D]。武漢:武漢理工大學,2006.

[4] 吳繼華,王誠.Altera FPGA/CPLD設計(初級篇)[M]。北京:人民郵電出版社,2005.

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1630

    文章

    21759

    瀏覽量

    604348
  • EDA工具
    +關注

    關注

    4

    文章

    268

    瀏覽量

    31842
  • 開發軟件
    +關注

    關注

    1

    文章

    25

    瀏覽量

    12976
收藏 人收藏

    評論

    相關推薦

    AMC1204有兩種封裝,SOIC-8和SOIC-16,功能樣嗎?為什么要推出兩種封裝?

    呢?AMC1204,AMC1304這樣做有什么好處嗎? 2、AMC1204有兩種封裝,SOIC-8和SOIC-16,功能樣嗎?為什么要推出兩種封裝?
    發表于 12-27 07:22

    ADS1292R有 \"1 ch ECG + 1 ch呼吸偵測\" 或 \"2 ch ECG\" 兩種模式,是否可以在產品上實現自行切換兩種使用模式?

    請問 ADS1292R 有 \"1 ch ECG + 1 ch 呼吸偵測\" 或 \"2 ch ECG\" 兩種模式,是否可以在產品上實現讓用戶自行切換兩種使用模式?
    發表于 12-13 14:43

    一種簡單高效配置FPGA方法

    本文描述了一種簡單高效配置FPGA方法,該方法利用微處理器從串行外圍接口(SPI)閃存配置FPGA設備。這種
    的頭像 發表于 10-24 14:57 ?690次閱讀
    <b class='flag-5'>一種</b>簡單高效配置<b class='flag-5'>FPGA</b>的<b class='flag-5'>方法</b>

    噪聲傳導的兩種模式

    噪聲傳導有兩種模式,一種為差模傳導,一種為共模傳導。
    的頭像 發表于 10-15 11:33 ?331次閱讀
    噪聲傳導的<b class='flag-5'>兩種</b>模式

    Linux應用層控制外設的兩種不同的方式

    眾所周知,linux下切皆文件,那么應用層如何控制硬件層,同樣是通過 文件I/O的方式來實現的,那么應用層控制硬件層通常有兩種方式。
    的頭像 發表于 10-05 19:03 ?585次閱讀
    Linux應用層控制外設的<b class='flag-5'>兩種</b>不同的方式

    兩種常見的硬件消抖實現方式

    由于機械按鍵在操作過程中會產生抖動現象,這種抖動信號如果不加以處理,就可能導致單片機等電子設備誤判按鍵狀態,從而引發錯誤操作。本文將詳細介紹兩種常見的硬件消抖實現方式:RS觸發器和電容濾波。 RS
    的頭像 發表于 09-25 16:54 ?1473次閱讀
    <b class='flag-5'>兩種</b>常見的硬件消抖<b class='flag-5'>實現</b>方式

    比較分析兩種不同的可提高柵極驅動電流的方法

    電子發燒友網站提供《比較分析兩種不同的可提高柵極驅動電流的方法.pdf》資料免費下載
    發表于 09-23 11:13 ?0次下載
    比較分析<b class='flag-5'>兩種</b>不同的可提高柵極驅動電流的<b class='flag-5'>方法</b>

    晶閘管的阻斷狀態有兩種是什么

    晶閘管(Thyristor)是一種半導體器件,具有單向導電性,廣泛應用于電力電子領域。晶閘管的阻斷狀態有兩種:正向阻斷狀態和反向阻斷狀態。以下是對這兩種阻斷狀態的分析。 正向阻斷狀態 正向阻斷狀態
    的頭像 發表于 08-14 16:49 ?788次閱讀

    地物光譜兩種天空光測量方法比較

    地物光譜兩種天空光測量方法比較天空光是指太陽光經過大氣分子及大氣氣溶膠散射后經任意方向到達地面的輻射。
    的頭像 發表于 07-29 14:40 ?442次閱讀
    地物光譜<b class='flag-5'>儀</b>的<b class='flag-5'>兩種</b>天空光測量<b class='flag-5'>方法</b>比較

    wdm設備的兩種傳輸方式

    系統中,有多種傳輸方式,其中最常見的兩種是密集波分復用(DWDM)和粗波分復用(CWDM)。 1. 密集波分復用(DWDM) 1.1 DWDM技術原理 密集波分復用(Dense Wavelength Division Multiplexing,簡稱DWDM)是一種將多個不
    的頭像 發表于 07-18 09:45 ?504次閱讀

    控制器有哪兩種實現方式?各有何優缺點?

    介紹這兩種實現方式的優缺點。 硬件控制器 硬件控制器是一種使用專用硬件電路來實現控制功能的控制器。它通常由組邏輯電路、寄存器、計數器等組成
    的頭像 發表于 06-30 10:33 ?1374次閱讀

    GYFTA、GYFTY兩種光纜的區別

    GYFTA和GYFTY兩種光纜的區別主要在于它們的結構和應用場景。 GYFTA光纜是一種室外非金屬加強芯松套管層絞聚乙烯粘連鋁帶護套光纜。這種光纜的結構特點是它使用了非金屬加強芯,并且光纜的外護套
    的頭像 發表于 03-26 10:26 ?2111次閱讀

    兩種簡單、精確、靈活的熱電偶溫度測量方法

    電子發燒友網站提供《兩種簡單、精確、靈活的熱電偶溫度測量方法.pdf》資料免費下載
    發表于 02-28 14:41 ?1次下載

    異或門兩種常見的實現方式

    兩種實現方式都能夠實現異或門的功能,具體的選擇取決于設計需求和邏輯門的可用性。實際構建異或門時,可以使用離散電子元件(如晶體管、二極管等)或整合電路芯片(如 TTL、CMOS 等)來實現
    的頭像 發表于 02-04 17:30 ?1.3w次閱讀
    異或門<b class='flag-5'>兩種</b>常見的<b class='flag-5'>實現</b>方式

    OpenCV兩種不同方法實現粘連大米分割計數

    測試圖如下,圖中有個別米粒相互粘連,本文主要演示如何使用OpenCV用兩種不同方法將其分割并計數。
    的頭像 發表于 01-22 14:55 ?1801次閱讀
    OpenCV<b class='flag-5'>兩種</b>不同<b class='flag-5'>方法</b><b class='flag-5'>實現</b>粘連大米分割計數
    主站蜘蛛池模板: 一级日本高清视频免费观看| 伊人毛片| 色吧欧美| 特别黄的免费视频大片| 五月婷婷中文字幕| 男女性生动态免费视频| 亚洲男人的天堂久久香蕉网| 老师您的兔子好软水好多动漫视频| 精品国产中文一级毛片在线看| 正在播放久久| 四虎欧美在线观看免费| 日本一线a视频免费观看| 久久综合偷偷噜噜噜色| 大乳妇女bd视频在线观看| 新版天堂中文在线8官网| 免费在线观看大片影视大全| 性夜影院爽黄a爽免费看网站| 亚洲精品一区二区中文| 亚洲亚洲人成网站在线观看| 日本国产视频| 四虎成人免费网站在线| 日本番囗| 国产激情片| 天天干成人网| 亚洲成a人片8888kkkk| 免费一区二区视频| 台湾佬自偷自拍情侣在线| 免费的黄色片| 久久成人综合| 正在播放国产女免费| 中国又粗又大又爽的毛片| 手机福利在线| h视频在线观看视频观看| 1314酒色网| 亚洲性后网| 美国色天使| 天天综合在线视频| 免费看黄色片网站| 亚洲国产成人最新精品资源| 香港经典a毛片免费观看爽爽影院 香港日本三级在线播放 | 亚洲jjzzjjzz在线观看|