




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、內(nèi)容摘要 1關(guān)鍵詞 1Abstract 1Key Words 11 .緒論 21.1 研究的意義21.2 本設(shè)計的主要功能 22. HDLO議綜述 32.1 HDLC協(xié)議的產(chǎn)生背景32.2 HDLC協(xié)議的幀結(jié)構(gòu)42.3 HDLC協(xié)議的規(guī)程分析 73. HDLO議控制器的設(shè)計 83.1 HDLC協(xié)議控制器設(shè)計方案選擇83.2 FPGA的設(shè)計原則93.3 HDLC協(xié)議控制器總框架103.4 HDLC幀發(fā)送器的設(shè)計 113.5 HDLC幀接收器的設(shè)計 15參考文獻 18致謝 19說明:在本頁中,“目錄”二字居中,宋體小二號,加黑, 其它統(tǒng)一由宋體小四號,不加黑排版打印、行間距為1.5內(nèi)容摘要:HDL
2、C (高級數(shù)據(jù)鏈路控制)協(xié)議是一種面向比特的鏈路控制規(guī)程,廣泛的用作數(shù)據(jù)鏈路層的控制協(xié)議。論文在分析和研究HDLC協(xié)議的基礎(chǔ)上,提出了一種基于FPGA (現(xiàn)場可編程門陣列)的 HDLC協(xié)議控制器的設(shè)計。對 HDLC協(xié) 議控制器的功能進行劃分,分別設(shè)計了標(biāo)志位的檢測和生成、插零和刪零、FCS的校 驗等控制模塊。采用VHDL硬件描述語言在FPGA內(nèi)部實現(xiàn)HDLC協(xié)議的各功能模塊,本設(shè)計 使用Quartus II 9.1平臺實現(xiàn)代碼編寫、綜合、編譯、仿真。對 HDLC鏈路控制規(guī)程 功能,幀控制和FCS校驗功能進行了仿真實現(xiàn)。關(guān)鍵詞:HDLC; FPGA;幀收發(fā)器;Abstract :(宋體,小四號,
3、加黑)xxxxxxxxxxxxxxxxxxx XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXX。(宋體,小四號,不加黑)Key words:(宋體,小四號,加黑)xxxDDxxxDDxxxDD(宋體,小四號,不加黑)231緒論1.1 研究的意義HDLC是一個在同步網(wǎng)上傳輸數(shù)據(jù)、面向位的數(shù)據(jù)鏈路層協(xié)議,它是由國際標(biāo)準(zhǔn) 化組織(ISO)制訂的。該協(xié)議被廣泛的用作數(shù)據(jù)鏈路層的控制協(xié)議,HDLC空制器在網(wǎng)絡(luò)設(shè)備中得到大量的使用,如列車通信網(wǎng)絡(luò)技術(shù)、綜合業(yè)務(wù)數(shù)字網(wǎng)ISDN X.25分組交換網(wǎng)以及幀中繼網(wǎng)等。怎樣在產(chǎn)品中設(shè)計與實現(xiàn)HDLCH絡(luò)協(xié)議也是一個技術(shù)研究的熱
4、點。HDLC勺一般實現(xiàn)方法為采用ASIC器件和軟件編程等。ASIC的芯片有Motorola 公司的MC92460,S儂司的MK502婷。應(yīng)用這些ASIC器件時設(shè)計簡單,功能針對性 強,性能可靠,適用于特定用途的大批量產(chǎn)品中。但是這類ASIC芯片存在開發(fā)時間長,一旦芯片固有缺陷就不容易解決等問題,而且HDLCB準(zhǔn)的文本較多,ASIC芯片出于專用性的目的難以通用于不同版本,缺乏靈活性。HDLC的軟件編程方法靈活,通過修改程序就可適用于不同的 HDLCB用,但程序運行占用處理器資源多,執(zhí)行速 度慢,實時性不易預(yù)測。FPGA( Field Programmable Gate Array,現(xiàn)場可編程門陣
5、列)器件采用硬件處理信號,可以反復(fù)編程,能夠兼顧速度和靈活性,并能多路并行處理。在中小批量通 信產(chǎn)品的設(shè)計中,F(xiàn)PGA是取代ASIC實現(xiàn)HDLC功能的一種合適選擇。1.2 本設(shè)計的主要功能本文實現(xiàn)了一種采用FPGA的HDLC協(xié)議控制器的設(shè)計和功能仿真。首先綜述了 HDLC協(xié)議的產(chǎn)生背景和幀結(jié)構(gòu),提出了基于 FPGA設(shè)計模式的控制器。以HDLC 協(xié)議幀的接收和發(fā)送為主體,在明確FPGA的設(shè)計原則的基礎(chǔ)上,對幀收發(fā)器進行分 功能模塊設(shè)計,編寫代碼,時序分析。以發(fā)送器為例,其中包括了標(biāo)志位的生成,插 零,F(xiàn)CS校驗等模塊的設(shè)計。接收器跟發(fā)送器設(shè)計思想類似。 在完成各個模塊的設(shè)計 后,使用了 Quar
6、tus II 9.1自帶仿真器對各個模塊的功能一一進行了仿真,并對HDLC協(xié)議及其規(guī)程進行了驗證和分析。2 HDLC協(xié)議綜述2.1 HDLC協(xié)議的產(chǎn)生背景計算機通信的早期,人們發(fā)現(xiàn)對于經(jīng)常發(fā)生誤碼的實際鏈路,只要加上了合適的 控制規(guī)程,就可以是通信變得比較可靠。這些規(guī)程都是數(shù)據(jù)鏈路層的協(xié)議, 都是面向 字符的。所謂面向字符,就是說在鏈路上所傳送的數(shù)據(jù)都是由規(guī)定的字符集中的字符 所組成的。而且,鏈路上傳送的控制信息也必須由同一個字符集中的若干指定的控制 字符構(gòu)成。面向字符的鏈路控制規(guī)程曾在計算機網(wǎng)絡(luò)的發(fā)展過程中起了重要的作用,但 隨著發(fā)展,這種規(guī)程就逐漸暴露出其弱點。其主要限制是:1 .通信線路
7、的利用率低,因為它采用的是停止等待協(xié)議,收發(fā)雙方交替地工作。2 .所有通信設(shè)備必須使用同樣字符的代碼,而不同版本的規(guī)程要求使用不同的代碼。3 .只對數(shù)據(jù)部分進行差錯控制,若控制部分出錯就無法控制,因而可靠性差。4 .不易擴展,每增加一種功能就需要設(shè)定一個新的控制字符。1974年,舊M公司推出了著名的體系結(jié)構(gòu) SNA。在SNA的數(shù)據(jù)鏈路層規(guī)程 上采用了面向比特的規(guī)程 SDLC (Synchronous Data Link Control)。后來IBM 將止匕 規(guī)程提交美國國家標(biāo)準(zhǔn)協(xié)會 ANSI和國際標(biāo)準(zhǔn)化組織ISO,建議成為國家和國際 標(biāo)準(zhǔn)。ANSI 把 SDLC 修改為 ADCCP (Adva
8、nced Data Communication Control Procedure作為美國國家標(biāo)準(zhǔn),而ISO把SDLC修改后稱為 HDLC (High-level Data Link Control),并作為國際標(biāo)準(zhǔn)ISO3309。HDLC協(xié)議有兩種鏈路配置和三種數(shù)據(jù)傳送方式:1 .非平衡模式:a.正常響應(yīng)方式 NRM (Nomal Response Mode)b.異步響應(yīng)方式 ARM (Asynchronous Response Mode)2 .平衡模式:c.異步平衡方式 ABM (Asynchronous Balanced Mode)2.2 HDLC協(xié)議的幀結(jié)構(gòu)HDLC的幀格式由六個字段組
9、成,這六個字段可以分為五種類型,即標(biāo)志序列(F)、地址字段(A)、控制字段(C)、信息字段(I)、幀校驗字段(FCS)。在幀結(jié) 構(gòu)中允許不包含信息字段I。標(biāo)志地址控制信息幀校驗序列標(biāo)志FACIFCSF0111111016/8 位16/8 位N位16/32 位01111110圖1 HDLC幀結(jié)構(gòu)標(biāo)志序列(F)HDLC旨定采用01111110為標(biāo)志序列,稱為F標(biāo)志。要求所有的幀必須以F標(biāo)志 開始和結(jié)束。接收設(shè)備不斷地搜尋F標(biāo)志,以實現(xiàn)幀同步,從而保證接收部分對后續(xù) 字段的正確識別。另外,在幀與幀的空載期間,可以連續(xù)發(fā)送F,用來作時間填充。在一審數(shù)據(jù)比特中,有可能產(chǎn)生與標(biāo)志字段的碼型相同的比特組合。
10、 為了防止這 種情況產(chǎn)生,保證對數(shù)據(jù)的透明傳輸,采取了比特填充技術(shù)。當(dāng)采用比特填充技術(shù)時, 在信碼中連續(xù)5個“1”以后插入一個“0”;而在接收端,則去除5個“1”以后的“0”, 恢復(fù)原來的數(shù)據(jù)序列,如圖4所示。比特填充技術(shù)的采用排除了在信息流中出現(xiàn)的標(biāo) 志字段的可能性,保證了對數(shù)據(jù)信息的透明傳輸。數(shù)據(jù)中某一段比特組合恰好0 0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0出現(xiàn)和F字段一樣的情況會誤認(rèn)為是F字發(fā)送端在5個連1之后0 0 1 0 0 1 1 1 1 1 0 1 000 1 0 1 0填入0比特再發(fā)送出去填入0比特在接收端將5個連1之后0 0 1 0 | 0 1 1
11、 1 1 1 110 0 0 1 0 1 0圖2比特填充當(dāng)連續(xù)傳輸兩幀時,前一個幀的結(jié)束標(biāo)志字段F可以兼作后一個幀的起始標(biāo)志字 段。當(dāng)暫時沒有信息傳送時,可以連續(xù)發(fā)送標(biāo)志字段,使接收端可以一直保持與發(fā)送 端同步。地址字段(A)地址字段表示鏈路上站的地址。使用平衡方式(采用 ABM,地址字段寫入應(yīng)答站 的地址。HDLC協(xié)議沒有給出地址字段的具體格式,只對其擴充方法及全站地址、無站地 址給出了定義??紤]到實際的需要與實現(xiàn)上的方便,定義地址字面結(jié)構(gòu)如下:012345671C/RXXXXXXX -未使用Bit0置“1”,表示地址字段只有一個字節(jié)C/R置“1”表示命令幀,置“ 0”表示響應(yīng)幀圖3地址字段
12、定義地址字段的長度采用8bit時,最多可以表示64個站的地址。地址字段 bit2bit7 為“111111'時,定義為全站地址,即通知所有的接收站接收有關(guān)的命令幀并按其動 作;bit2bit7為全“0”比特為無站地址,用于測試數(shù)據(jù)鏈路的狀態(tài)。因此有效地址 共有62個??刂谱侄?C)控制字段用來表示幀類型、幀編號以及命令、響應(yīng)等。由于 C字段的構(gòu)成不同, 可以把HDLC幀分為三種類型:信息幀、監(jiān)控幀、無編號幀,分別簡稱I幀(Information)、 S幀(Supervisory)、U幀(Unnumbered)。在控制字段中,第1位是“0”為I幀,第1、 2位是“10”為S幀,第1、2位
13、是“11”為U幀。比特12345678I幀0N (S)P/FN (R)S幀10S1S2P/FXXXU幀11M1M2P/FM3M4M5圖4基本模式控制字段比特12345678910111213141516I幀0N (S)P/FN (R)S幀10S1S2XXXXP/FN (R)U幀11M1M2UM3M4M5P/FXXXXXXX注:X-未使用,置0U-未定義,置1。圖5擴充模式控制字段信息字段(I)信息字段內(nèi)包含了用戶的數(shù)據(jù)信息和來自上層的各種控制信息。長度小于58Bytes。幀校驗序列字段(FCS)幀校驗序列用于對幀進行循環(huán)冗余校驗,其校驗范圍從地址字段的第1比特到信 息字段的最后一比特的序列,并
14、且規(guī)定為了透明傳輸而插入的“0”不在校驗范圍內(nèi), 長度定義由于單板中有部分 HDLC鏈路采用HDLC控制器實現(xiàn),而HDLC控制器只 能支持16bits的CRC2.3 HDLC協(xié)議的規(guī)程分析1 .使用統(tǒng)一的幀格式:實現(xiàn)數(shù)據(jù)、命令和響應(yīng)的傳輸,實施起來方便;2 .采用0'位插入法:使得規(guī)程可以支持任意的位流傳輸,保證了信息傳輸?shù)耐?明性;3 .采用窗口機制和捎帶應(yīng)答機制:全雙工工作方式,允許在未收到確認(rèn)的情況下, 連續(xù)發(fā)送多個幀,提高了信息傳輸?shù)男剩? .采用幀校驗序列,并設(shè)置窗口序號,可以提高信息傳輸?shù)恼_性和可靠性。 總之,面向二進制位的控制規(guī)程比面向字符型的控制規(guī)程具有較高的優(yōu)越性
15、。3 HDLC協(xié)議控制器的設(shè)計3.1 HDLC協(xié)議控制器設(shè)計方案選擇HDLC協(xié)議控制器實現(xiàn)方法有三種:ASIC器件、軟件編程以及FPGA器件。實現(xiàn)HDLC協(xié)議的ASIC芯片有Motorola公司的 MC92460、ZILOG 公司的 Z80230/8523R ST公司的MK5025等。這些集成電路使用簡易,功能針對性強,適 用于特定用途的大批量產(chǎn)品中。但 HDLC標(biāo)準(zhǔn)的文本較多,ASIC芯片出于專用性的 目的難于通用于不同版本,缺乏靈活性。而且,專用于HDLC的ASIC芯片其片內(nèi) 數(shù)據(jù)存儲器容量有限,通常只有不多字節(jié)的FIFO (先進先出存儲器)可用,存儲深度較淺,對于某些應(yīng)用來說,當(dāng)需要擴大
16、數(shù)據(jù)緩存的容量時,只能對 ASIC芯片再 外接存儲器或其它電路,這樣,ASIC芯片在使用中就會有一定的限制。HDLC的軟件編程實現(xiàn),包括 PC機和單片機,方法靈活,具有成本低、硬件結(jié) 構(gòu)簡單、軟件編程容易等特點。通過修改程序就可以適用于不同的HDLC協(xié)議要求的應(yīng)用。但是程序運行占用處理器資源多, 執(zhí)行速度慢,對信號的時延和同步性不易 預(yù)測。使用FPGA (Field Programmable GateArray,現(xiàn)場可編程門陣列),能夠有效的綜合 前兩種方法的優(yōu)點。FPGA采用硬件技術(shù)處理信號,可以通過軟件反復(fù)編程使用,能 兼顧速度和靈活性,可以實時預(yù)測和仿真。VHDL語言設(shè)計靈活,可以用模擬
17、器來驗 證程序的功能和時序的正確;不要求設(shè)計者非常熟悉器件的內(nèi)部結(jié)構(gòu),使得設(shè)計者可以集中精力從事設(shè)計構(gòu)思,可以在各 EDA平臺上運行。在中小批量通信產(chǎn)品的設(shè)計 生產(chǎn)中,用FPGA實現(xiàn)HDLC功能是一種較好的實現(xiàn)途徑。3.2 FPGA的設(shè)計原則完整的FPGA設(shè)計流程分為電路設(shè)計與輸入、功能仿真、綜合、綜合后仿真、 實現(xiàn)、布局布線后仿真、配置下載與調(diào)試等主要步驟。在設(shè)計FPGA系統(tǒng)時,主要考慮以下幾個原則:面積和速度的平衡原則與互換原 則、硬件原則、系統(tǒng)原則和同步設(shè)計原則。1)面積和速度的平衡原則與互換原則:這里的“面積”是指一個設(shè)計所消耗的 FPGA的邏輯資源數(shù)量。“速度”是指 設(shè)計在芯片上穩(wěn)定
18、運行時所能夠達(dá)到的最高頻率,與設(shè)計時眾多時序特征量密切相關(guān)。一般來說,速度的優(yōu)先級要高于資源耗費。當(dāng)兩者沖突時,采用速度優(yōu)先的準(zhǔn) 則。2)硬件原則對HDL代碼編寫而言,它的本質(zhì)作用在于描述硬件。所以評判一段 HDL代碼的 優(yōu)劣的最終標(biāo)準(zhǔn)是其描述并實現(xiàn)的硬件電路的性能(包括速度和面積兩個方面的指標(biāo))。3)系統(tǒng)原則系統(tǒng)原要求設(shè)計者能夠通過全局、整體上把握設(shè)計,從而提高設(shè)計質(zhì)量,優(yōu)化設(shè) 計效果。4)同步設(shè)計原則同步時序設(shè)計是FPGA設(shè)計的最重要原則之一。異步電路容易產(chǎn)生毛刺和競爭冒險;同步時序電路主要信號和輸出信號都由時鐘 驅(qū)動觸發(fā)器產(chǎn)生,能夠避免毛刺,信號穩(wěn)定。從資源使用方面考慮,在FPGA中,同
19、步設(shè)計并不比異步設(shè)計浪費資源。特別需 要注意的是,不同的時鐘域的接口需要進行同步。還要考慮全局時鐘布線資源的利用。全局時鐘資源由特殊的工藝實現(xiàn),具有很高 的扇出性能,且到達(dá)芯片內(nèi)部的所有可配置單元、FO單元和選擇性塊RAM的時延和抖動都為最小。邏輯設(shè)計中使用非常頻繁的時鐘信號、預(yù)設(shè)置信號、復(fù)位信號和使 能信號均應(yīng)從全局腳引入。3.3 HDLC協(xié)議控制器總框架幀發(fā)送器總控制端幀接收器local if由結(jié)構(gòu)圖可以看出,HDLC協(xié)議控制器分為總控制模塊、幀發(fā)送器、幀接收器, 按具體功能模塊劃分,每個幀控制器又劃分為控制、數(shù)據(jù)緩沖、插零、刪零、標(biāo)志位 等模塊。各個模塊之間的連接時依靠控制信號和寄存器的
20、配置實現(xiàn)的,通過配置好總控制模塊的各個控制信號,從而組成整體的 HDLC幀的收發(fā)功能。具體電路如下圖 所示:3.4 HDLC幀發(fā)送器的設(shè)計幀發(fā)送器是將信息按照HDLC協(xié)議的格式封裝成幀并發(fā)送出去,其中包括了幀頭 幀尾標(biāo)志位的插入、插零、FCS校驗和發(fā)送模塊。通過配置功能選擇寄存器 addr選 擇發(fā)送功能,并設(shè)置好時鐘、復(fù)位等控制信號即可實現(xiàn)幀發(fā)送器的功能。3.5 .1幀發(fā)送器的主要功能1)插零發(fā)送器接收到數(shù)據(jù)時,首先檢測是否數(shù)據(jù)中有 5個連續(xù)的1',如若有就在其后 面插入一個0' 02)標(biāo)志位生成當(dāng)接收到信號開始發(fā)送數(shù)據(jù)時,將“ 7E”加在幀頭和幀尾,并發(fā)送出去。3) CRC校
21、驗幀校驗序列用于對幀進行循環(huán)冗余校驗,其校驗范圍從地址字段的第1比特到信 息字段的最后一比特的序列,并且規(guī)定為了透明傳輸而插入的“0”不在校驗范圍內(nèi)。 4)數(shù)據(jù)緩沖3.4 .2幀發(fā)送器的組成控制模塊txfcstxchannel幀發(fā)送器功能組成模塊數(shù)據(jù)緩沖模塊(txbuff):數(shù)據(jù)緩沖模塊負(fù)責(zé)將接收到的數(shù)據(jù)緩存起來,然后供后續(xù)模塊調(diào)用數(shù)據(jù)。其端口定義如下圖:txbuff:txbuff_blk數(shù)據(jù)緩沖模塊管腳定義圖初始化之后,當(dāng)控制端收到發(fā)送數(shù)據(jù)的信號時,將 txenable和wr端口置1', 數(shù)據(jù)由txdatainbuff輸入,txbuff開始緩沖數(shù)據(jù),當(dāng)數(shù)據(jù)緩沖滿了將 full置
22、9;1'或達(dá) 到了預(yù)定的數(shù)值時會將txdone置'1'。數(shù)據(jù)緩沖完后,txdataavail置'1'表示此時 緩沖器內(nèi)數(shù)據(jù)可以供調(diào)用,數(shù)據(jù)由txdataoutbuff輸出。txbuff模塊對幀的數(shù)據(jù)量根據(jù)存儲模塊的大小和后面數(shù)據(jù)處理能力來決定,模塊 輸出的8比特并行數(shù)據(jù)。 CRC校驗?zāi)K(txfcs):在通信系統(tǒng)中傳輸數(shù)據(jù)的可靠性即誤碼率是非常重要的,因此在傳輸?shù)臄?shù)據(jù)中需要插入一定的校驗信息。根據(jù) HDLC協(xié)議的要求,數(shù)據(jù)發(fā)送前要對幀內(nèi)所有的數(shù) 據(jù)進行CRC多項式的計算,并將結(jié)果一起發(fā)送出去,CRC校驗的模塊引腳圖如下圖:txfcs:txfcs blk發(fā)
23、送器CRC校驗?zāi)K系統(tǒng)初始處于idle_st狀態(tài),當(dāng)收到讀數(shù)據(jù)信號時(rdy置1'),進入read_st狀 態(tài),如果txdataavail有效txfcs將rdbuff置“1”開始從txbuff中讀取數(shù)據(jù),然后將數(shù) 據(jù)一一進行CRC多項式運算,并將數(shù)據(jù)一起封裝在幀里面發(fā)送出去。 txsynch 模塊:txsynch模塊的功能是將總控制模塊、txbuff模塊、txfcs模塊和txchannel模塊連 接,模塊引腳圖如下:txsynch:txsynch_blkabortedtrans_d1abortframe d2abortedtrans d2elk d1a bort frame d1elk
24、 d2ackrdy d1rdy d2rst nvaiidframe d1validframe_d2wntebytedlwntebyte_d2txd_d17 0txd_d27.O)txsynch模塊引腳圖 txchannel 模塊:txchannel模塊又由zeroins、txcont、flag_ins3個模塊構(gòu)成,分別負(fù)責(zé)標(biāo)志位的生成和插零功能的實現(xiàn),其模塊引腳圖如下:txchannef:txcore blktxchannel模塊引腳圖1)標(biāo)志位生成模塊flagjns:標(biāo)志位生成模塊負(fù)責(zé)對待發(fā)送的數(shù)據(jù)進行幀頭尾的添加,其端口定義圖如下圖:flag_ins:flagmachineflag_ins
25、模塊引腳圖當(dāng)該模塊接收到控制使能信號時(TXEN置“1"),串行數(shù)據(jù)由TXD端口輸入, TX端口輸出已加好標(biāo)志位的串行數(shù)據(jù)流。標(biāo)志位的仿真時序圖如下圖:發(fā)送端標(biāo)志位仿真時序圖設(shè)定發(fā)送數(shù)據(jù)為“1010101。,由圖可知數(shù)據(jù)流中已加入“ 0x7E”的標(biāo)志位,這 是構(gòu)建HDLC幀的第一步。2)插零模塊zeroins:為了保證數(shù)據(jù)鏈路的透明傳輸(即可以傳輸任意組合的比特流),HDLC發(fā)送器在遇到5個連“1”的情況下,為了防止接收端誤判幀頭或幀尾,必須在其后填充一 個“0”比特。其模塊引腳圖如下:zeroins:backendmachine當(dāng)data7.0端口接收到數(shù)據(jù)時,在時鐘上升沿來到時利
26、用移位寄存器,進行 8位 數(shù)據(jù)并用轉(zhuǎn)換,在模塊內(nèi)定義一個5位的寄存器,對轉(zhuǎn)換后的連續(xù)的5比特數(shù)據(jù)進行 求與運算,若是連續(xù)的5個“1”比特,則在后面插入一個“ 0”比特。插零功能仿真時序圖如下:-Z。國 addrclkj 5G6田 data<> Lrxoe_n,TSt.l1.-rxclk* 2.rxen> 2.匕tKClk修工txenve_n發(fā)送端插零模塊仿真時序圖由圖可以看出,輸入數(shù)據(jù)值為“ 1111100。時,由于數(shù)據(jù)的高5位均為“1”,根 據(jù)每逢5個連續(xù)的“ 1”插一個“ 0”,所以輸出的數(shù)據(jù)流中變成了 “ 11111000。3.5 HDLC幀接收器設(shè)計幀接收器設(shè)計的模塊
27、與幀發(fā)送器的設(shè)計過程類似,接收器負(fù)責(zé)標(biāo)志位檢測、CRC生成、刪零模塊,基本與幀發(fā)送器相逆。同樣幀接收器的數(shù)據(jù)緩沖模塊也與幀發(fā)送器 的設(shè)計過程相似。通過配置addr寄存器即可實現(xiàn)HDLC幀接收器的整體功能。3.5 .1幀發(fā)送器的主要功能1)標(biāo)志檢測:此模塊檢測比特流中的“ 7E',作為數(shù)據(jù)幀開始和結(jié)束的標(biāo)志。2)刪零:接收數(shù)據(jù)時,每遇到連續(xù)的 5個“1”,就將其后面的一個“ 0”刪掉3) CRC僉測:采用CRC-12也可以不進行檢測。3.5 .2幀發(fā)送器的組成rxfcsrxbuff控制模塊rxsynchrxchannel數(shù)據(jù)緩沖模塊(rxbuff):幀接收器的數(shù)據(jù)緩沖模塊,跟發(fā)送器的緩沖
28、模塊功能相似,但是邏輯相逆。這里 是將從txchannel中收到的數(shù)據(jù)緩存起來,等到緩沖滿了,供用戶調(diào)用數(shù)據(jù)。數(shù)據(jù)緩沖模塊引腳圖如下:rxbuff: rxbuff_blk rxchannel 模塊:rxchannel 也包含了 rxcont、flagdetect 、zerodetect 這 3 個模塊。Rxchannel模塊引腳圖如下:rxchannel:rxchannel blkabortsi 卬旬 readbyteenable rdv rstframeerroi rxrdy rxclkvalidframe rxenrxdata7 0Rxchannel模塊引腳圖1)標(biāo)志位檢測功能模塊引腳圖:
29、FlagDetect:flag_detect接收器標(biāo)志位檢測引腳圖標(biāo)志位檢測的主要功能是檢測接收到數(shù)據(jù)流的幀頭,確定幀的邊界。幀頭判別式 如下:FlagVar := not ShiftReg(0) and ShiftReg(1) and ShiftReg(2) and ShiftReg(3)and ShiftReg(4) and ShiftReg(5) and ShiftReg(6) and not ShiftReg(7);FlagDetect <= FlagVar ;如果檢測到FlagDetect其值為高,則表明檢測到幀頭的出現(xiàn),這樣就可將為下個模 塊提高控制信號,提示可以開始接收數(shù)據(jù)
30、。若為零,則表示幀頭還未到來。標(biāo)志位檢測功能模塊仿真時序圖如下: addr clk_l cs_n data int_rx oe_n rstri rx rxclk rxen tk3101I II:mnnnrLnnnnnrLnnrLnnrLnnnnnnnRnnRnrR | II標(biāo)志位檢測功能模塊仿真時序圖1由圖可知,輸入標(biāo)志位“ 0x7E”之后緊跟著的是“ 111100000000111T數(shù)據(jù)流。輸出數(shù)據(jù)data如下圖所示:wjndata0rt dataLrt da-ta2ure data 3 re data4r£ dataEslre dataEslre dataETlre標(biāo)志位檢測功能
31、模塊仿真時序圖2這是輸出的8比特并行數(shù)據(jù),兩組數(shù)據(jù)分別是“ 1111000。和“00001111”,可見幀接收器正確的接收到了發(fā)出的數(shù)據(jù)。2)零檢測功能模塊引腳圖:ZeroDetect:zero backend零檢測功能模塊引腳圖零檢測功能模塊是檢測比特流中連續(xù)“ 1”的個數(shù),向后面的提供控制信號,以完成刪零判斷,檢測幀結(jié)束標(biāo)志的功能。模塊內(nèi)設(shè)置一個計數(shù)器,用來計算連續(xù)“1的個數(shù)。若是計數(shù)值為6且下一接收比特為“0”,表明檢測到結(jié)束標(biāo)志。當(dāng)計數(shù)器值為5且下一比特為“ 0”,則表明該“ 0”比特應(yīng)該刪去。零檢測功能模塊仿真時序圖如下:*1.Name0 ps 640. 0 ns L 2S us 1. 92 us 2. 5 BI20. 025 nsJ0 2.oe_n rst_i rx rxclkrxen tx txclk txeni I I r u n r n_r L.n n rLrmRan rLrmKRnrLnrLrmjiRrLnjm:rLrLrLrmrLnrLrLrmnRarLrLrLrimmrLrLrLr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國無線局域網(wǎng)行業(yè)市場深度發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 2025-2030中國無水氯化鐵行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 2025-2030中國旅游酒店行業(yè)市場現(xiàn)狀供需分析及重點企業(yè)投資評估規(guī)劃分析研究報告
- 2025-2030中國整形外科植入物行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 2025-2030中國數(shù)字智能平臺行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 2025-2030中國拌飯醬行業(yè)市場深度分析及趨勢策略與投資前景研究報告
- 2025-2030中國揚聲器聲布行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030中國手機銀行行業(yè)市場深度調(diào)研及競爭格局與投資前景研究報告
- 2025-2030中國意大利辣味香腸食品行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 2025-2030中國異戊烯醇行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 會計師聘書模板
- 粵教版科學(xué)四年級上冊全冊試卷(含答案)
- 計算機應(yīng)用基礎(chǔ)(Windows10+Office2016)(第3版)-教案 情境5、6 Word2016基本操作、實驗 Word 2016基本操作
- 《鐵路建設(shè)項目質(zhì)量安全紅線管理規(guī)定》
- 鹽酸丙卡特羅吸入溶液-藥品臨床應(yīng)用解讀
- 企業(yè)管理的創(chuàng)新管理
- DLT827-2002 燈泡貫流式水輪發(fā)電機組起動試驗規(guī)程
- 房屋租賃合同模板(10篇)
- 佛山市社會保險歷年費基費率一覽表
- 汽車電氣設(shè)備構(gòu)造與維修-第2版-配套課件
- 第4章無人機-氣象
評論
0/150
提交評論