《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于NiosII的HDLC協議控制系統的實現
基于NiosII的HDLC協議控制系統的實現
摘要: 介紹了基于NiosII軟核的HDLC通信協議的實現方法,并在協議實現的基礎上,完成了對無人值守基站系統的監控與管理?;径说墓δ苡苫贜iosII軟核的SoPC完成,PC機作為監控中心完成對基站的遠程監控與管理。本系統在保證雙方可靠通信的前提下,最終實現PC主控機與基站之間實時、可靠的信息交互與監控管理功能。
Abstract:
Key words :

  NiosII系統是Altera公司的SOPC解決方案,HDLC協議是通信領域中面向比特的高級數據鏈路控制規程。

  介紹了基于NiosII軟核的HDLC通信協議的實現方法,并在協議實現的基礎上,完成了對無人值守基站系統的監控與管理?;径说墓δ苡苫贜iosII軟核的SoPC完成,PC機作為監控中心完成對基站的遠程監控與管理。本系統在保證雙方可靠通信的前提下,最終實現PC主控機與基站之間實時、可靠的信息交互與監控管理功能。

  一 引言

  HDLC(High-level Data Link Control)協議是通信領域中應用最廣泛的協議之一,是面向比特的高級數據鏈路控制規程,具有強大的差錯檢測功能和同步傳輸特點,保證數據的可靠傳輸[3]。市場上很多專用的HDLC芯片因追求功能的完備,而使芯片的控制變得復雜。實際上對某些特殊的場合,可選擇HDLC協議中最符合系統要求的部分功能,設計一種功能相對簡單、使用靈活的控制器。

  NiosII系統是Altera公司的SoPC解決方案,它是一個運行在FPGA上的32位RSIC處理器。Altera公司對于NiosII的開發提供了強大的設計開發平臺QuartusII、SOPC Builder以及NiosII IDE[2] [4]。這樣,硬件電路與外設的連接,NiosII軟核的配置,C語言編寫與調試可有機地結合起來,大大提高了系統設計的效率,便于系統的更新與升級。

  本設計即是采用Altera公司的CYCLONEII芯片EP2C35-672 FPGA實現基于NiosII的HDLC協議控制系統。在完成通信協議、保證可靠通信的前提下,最終實現主控機與基站終端之間實時、可靠的信息交互與監控管理功能[1]。

  二 HDLC協議說明[3]

  HDLC協議具有以下特點:數據報文可透明傳輸;全雙工通訊;采用窗口機制和捎帶應答;采用幀校驗序列,并對信息幀進行順序編號,防止漏收或重收,傳輸可靠性高;傳輸控制功能和處理功能分離,應用非常靈活。HDLC執行數據傳輸控制功能,一般分為3個階段:數據鏈路建立階段、信息幀傳送階段、數據鏈路釋放階段。

  HDLC協議以幀為基本信息單位傳輸數據,無論是傳輸數據信息或是控制信息,每個幀都采用統一的幀格式,如圖1所示:

HDLC幀格式

圖1  HDLC幀格式

  1. 標志字段(F)

  HDLC協議規定,所有信息的傳輸必須以一個標志字開始,且以同一個標志字結束,這個標志字就是01111110。接收方可以通過搜索01111110來判斷幀的開始和結束,以此建立幀同步。

  2. 地址字段(A)

  地址字段表示鏈路上站的地址。地址字段為8位,也可用8的倍數進行擴展,用于標識接收該幀的站地址。

  3. 控制字段(C)

  控制字段為8位,用來表示幀類型、幀編號以及命令、響應等。由圖1知,由于C字段的構成不同,可以把HDLC幀分為三種類型:信息(I)幀、監控(S)幀、無編號(U)幀。在控制字段中,第1位是“0”的為I幀,第1、2位是“10”的為S幀,第1、2位是“11”的為U幀。

  4. 信息字段(I)

  信息字段內包含了用戶的數據信息和來自上層的各種控制信息。在I幀和某些U幀中,具有該字段。HDLC幀的信息長度是可變的,其長度由收發站緩沖器的大小和線路的差錯情況決定,但必須是8bit的整數倍。它可傳送標志字以外的任意二進制信息。

  5.幀校驗序列字段(FCS)

  幀校驗序列用于對幀進行CRC循環冗余校驗。在HDLC協議中采用16位循環冗余校驗碼進行差錯控制,其校驗范圍從地址字段的第1比特到信息字段的最后1比特的序列,并且規定為了透明傳輸而插入的“0”不在校驗范圍內。它的生成多項式為g(x)=X16+X12+X5+1。

  三 系統簡介

  基站系統往往被安置在比較分散、環境比較惡劣且無人值守的地方,因此它運行的可靠性就顯得尤為重要。SOPC的諸多特點滿足了此類系統的要求。基于此定位,該系統選用pc機作為監控中心,SOPC片上系統作基站端,它們之間采用HDLC協議來實現可靠通信。監控中心完成建立和斷開鏈路的功能,SOPC基站系統除了接收、執行監控中心發來的命令外,還要完成現場數據的采集控制,并將數據上傳至監控中心。

  對于通信雙方,數據都有發送與接收兩個傳輸方向,即上行數據流和下行數據流。發送數據時,按照HDLC協議,先將數據封裝成幀,即加上幀頭、地址字段、控制字段、信息字段、CRC校驗段、幀尾,當緩沖區有空間時,將成幀數據送交緩沖區待發送,數據幀再經UART送到對方的RS-232接口,數據進入收方的緩沖區,收方則執行與發送相反的操作,即從緩沖區讀出數據、對其解幀、CRC校驗判斷、解碼,并按照所提取的信息執行相應操作。完整的系統總框圖如圖2所示:

 

系統框圖

圖2  系統框圖

  四 基于NiosII的SOPC功能設計

  分為硬件設計與軟件設計,分別在QuartusII、SOPC Builder和NiosII IDE中完成。

  1  硬件設計               

  (1) 硬件設計結構

  硬件設計結構包括RS-232接口、PIO接口、顯示模塊和自定義CRC校驗指令,這些部分都是用NiosII軟核來配置的。NiosII作為系統的流程控制中心,其作用是不言而喻的,通過采用SOPC Builder對NiosII進行定制,極大的減少了系統的使用資源。整個系統硬件設計框圖如圖3所示:

NiosII硬件原理圖

圖3  NiosII硬件原理圖

 ?。?)NiosII軟核配置

  利用QuartusII軟件中的SOPC Builder,添加處理器、總線、片內ROM、PIO、UART、NiosII其它外設及接口。系統的頂層模塊由NiosII軟核處理器標準版和系統時鐘組成,系統時鐘通過鎖相環PLL再分配給各外設及SDRAM。

 ?。?)自定義CRC校驗指令

  可編程軟核處理器最大的特點是靈活到可以方便的增加指令,這樣可以把系統中用軟件處理耗時多的關鍵算法用硬件邏輯電路來實現。自定義指令其實就是用戶讓NiosII軟核完成的一個功能,這個功能由采用HDL語言描述的電路模塊來實現,該模塊被連接到NiosII軟核的算術邏輯部件上。

  CRC校驗的一般算法需要大量的邏輯與循環運算,如果用軟件來實現則要占用很多個時鐘周期,使系統的效率降低,而用硬件完成則僅需要幾個時鐘周期。NiosII正好提供了用戶自定義指令的功能,因此給NiosII添加自定義CRC校驗指令來完成該部分功能,大大提高了系統的效率。

  2  NiosII應用軟件設計

  NiosII應用軟件用C語言實現,完成了HDLC協議和對基站系統的控制兩個任務。首先完成HDLC協議中所要求的解幀校驗處理、數據重新打包轉發、錯誤處理等操作,確保通訊的暢通與可靠?;径嗽诮邮盏奖O控中心的命令后,在應用軟件的控制下,驅動設備執行相應操作,主要是對溫度、濕度、電壓、煙感度等參數的讀取及環境參數的調整,執行完畢后將結果反饋回監控中心?;诖怂枷?,NiosII軟件分為HDLC協議實現部分和命令執行部分。

  (1) 協議實現部分

  a、接收數據

  首先,建立鏈路完成對幀序列、各種外設參量、標志位等變量的初始化。函數void DeFrame( )用于每收到一幀后的解幀處理,即包括幀長度的判斷、CRC 校驗、幀類型辨認、幀序號的對照。CRC校驗碼的運算由函數ALT_CI_CRC_CCITT( )完成,具體操作是調用配置的自定義CRC校驗指令,賦數據值,然后通過硬件運算返回計算的CRC碼,再和數據幀中的校驗碼對比,相同則是正確信息,不等則判為錯誤信息。

  b、發送數據

  定義變量volatile int edge_capture來進行基站環境參數信息的捕捉,如溫度、濕度、電壓等。NiosII應用軟件根據對環境參量的讀取和判斷,還要對異常狀況做特殊處理。比如,如果某參量出現超標則必需立刻發送信息幀進行告警,以使用戶進行及時的調整。

  具體發送時,數據先裝幀再送入緩沖區等待。為了防止幀丟失造成通訊雙方處于僵滯的等待狀態,引入計時器,即每發一次信息幀都要啟動計時器進行計時,若計時器溢出,重發上一幀并重新計時。以發送電壓值為例,對其具體過程進行說明:

  void InfoVoltageFrame( );                                    //裝電壓幀

  void SendBuf(unsigned char Frame[],int SendDataLen);   //幀送緩沖區

  void TimeDelay( );                                         //啟動計時器

 

  若超時,置超時標志DelayFlag=1;

  在此條件下,調用函數ReSendFrame( );              //重發上一幀

  再次啟動計時器TimeDelay( );

  c、HDLC協議中滑動窗口的處理

  只將滑動窗口協議中最關鍵的幀序號變化的具體代碼呈現出來:

  ……

  If ((RvByte(2) And &HF)/2)=VR Then 'NS與VR作比較,相等則接收并發送確認幀

  VR = ((VR + 1) And & H7)

  ……

  If (RvByte(2) And &HF) = 1 Then    '收到確認S幀

  SysTime.Enabled = False

  VS = ((VS + 1) And & H7)

  ……

 ?。?)命令執行軟件部分

  這部分軟件主要是驅動設備執行相應命令。一方面,監控中心啟動自動監控功能, NiosII每隔5秒會接收到監控中心發來的讀取參量信息命令,NiosII執行命令并讀取外設參量送至發送緩存;另一方面,若環境參量發生變化,NiosII會對其進行判斷,如果超標則立即主動發告警信息幀給監控中心。

  五 結束語

  本文提出了一種基于FPGA的HDLC協議控制系統設計方案,并利用Altera公司的CYCLONEII芯片EP2C35-672來實現。實踐表明,利用NiosII實現的HDLC協議控制系統操作簡單、使用靈活,能夠很好地應用于各種小型通信設備。通過不同階段大量的測試,系統工作可靠、穩定,完成了實時可靠的通訊與準確的控制。

  本文作者創新點:

  1、 技術手段的創新:使用NiosII這種新型的SOPC技術實現了HDLC協議。

  2、 應用領域的創新:實現了對基站各種信息(如工作電壓、環境溫度、濕度、煙感度等)的實時監控與可靠管理。

  參考文獻

  1羅朝霞,張高記  基于TMS320F2407A DSP的MODBUS通信協議的實現 微計算機信息2005 No.20 P.138-139,

  2任愛鋒,初秀琴 等.基于FPGA的嵌入式系統設計.西安電子科技大學出版社.2004

  3謝希仁.計算機網絡教程.人民郵電出版社.2002

  4 Altera.NiosII Processor Reference Handbook.2006

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          亚洲欧洲日本mm| 亚洲欧美日本在线| 在线观看成人网| 欧美日韩国产在线播放| 欧美三级日本三级少妇99| 国产精品成人va在线观看| 国产精品一二三| 欧美精品久久久久久久免费观看| 欧美电影美腿模特1979在线看| 国产欧美一区二区精品忘忧草| 国产精品久久久久久久久久免费| 国产在线观看一区| 欧美激情欧美狂野欧美精品| 国产精品永久免费视频| 欧美一级视频免费在线观看| 欧美激情在线有限公司| 亚洲一区二区久久| 韩国三级电影一区二区| 性伦欧美刺激片在线观看| 国产一区二区三区免费不卡| 国产一区在线看| 国产精品久久久久秋霞鲁丝| 国产日韩1区| 午夜精品久久久久久久99黑人| 亚洲少妇中出一区| 一本色道婷婷久久欧美| 国产精品劲爆视频| 久久国产精品久久久久久| 欧美三级中文字幕在线观看| 欧美精品久久久久久久| 久久资源在线| 悠悠资源网久久精品| 欧美自拍偷拍午夜视频| 亚洲看片免费| 欧美xxx成人| 亚洲激情网站免费观看| 日韩视频一区二区三区| 国产精品成人一区二区三区吃奶| 国产精品99久久久久久有的能看| 亚洲欧美日韩系列| 欧美一级黄色录像| 欧美色道久久88综合亚洲精品| 亚洲国产精品一区二区久| 欧美日韩日日骚| 亚洲精品国产无天堂网2021| 免费看成人av| 国产伦精品一区二区三区免费迷| 国产一区二区中文字幕免费看| 国产伦精品一区二区三区免费迷| 一区二区三区在线视频免费观看| 久久久久九九视频| 国产精品免费区二区三区观看| 亚洲视频综合在线| 国产无一区二区| 欧美xx69| 亚洲综合日韩| 国内外成人免费视频| 亚洲毛片在线| 欧美午夜免费影院| 在线精品国产成人综合| 激情久久婷婷| 国产精品夜夜嗨| 欧美连裤袜在线视频| 好看的日韩视频| 久久疯狂做爰流白浆xx| 亚洲人成网站精品片在线观看| 亚洲精品日韩在线观看| 亚洲免费在线电影| 欧美激情精品久久久| 久久综合九色综合欧美就去吻| 亚洲免费视频在线观看| 国产精品永久| 亚洲一区亚洲| 国产精品不卡在线| 国产精品嫩草久久久久| 欧美1区2区视频| 久久高清国产| 一区二区三区在线视频播放| 亚洲私人影吧| 一区二区三区免费网站| 国产精品成人免费视频| 久久久久国产精品一区| 亚洲麻豆国产自偷在线| 久久婷婷人人澡人人喊人人爽| 99精品热视频只有精品10| 国产日韩欧美a| 欧美精品久久99久久在免费线| 在线观看日韩www视频免费| 欧美性色综合| 亚洲精品一区二区三区av| 欧美视频一区二区三区| 欧美日韩你懂的| 亚洲欧美精品在线观看| 国产九区一区在线| 国产精品久久久一本精品| 欧美二区在线观看| 久久国产精品网站| 亚洲在线一区二区| 影音欧美亚洲| 尤物yw午夜国产精品视频明星| 裸体丰满少妇做受久久99精品| 国产精品美女主播在线观看纯欲| 欧美α欧美αv大片| 国产精品国产三级欧美二区| 裸体丰满少妇做受久久99精品| 91久久精品日日躁夜夜躁欧美| 亚洲午夜精品久久久久久浪潮| 久久精品导航| 国产精品乱码一区二区三区| 一区二区av| 国产精品女人久久久久久| 国产一区二区丝袜高跟鞋图片| 欧美午夜理伦三级在线观看| 欧美福利影院| 在线精品视频免费观看| 久久久999成人| 极品中文字幕一区| 在线观看亚洲精品视频| 亚洲电影免费| 欧美电影打屁股sp| 亚洲男人第一av网站| 免费久久99精品国产自| 亚洲午夜电影| 久久亚洲精品视频| 亚洲自啪免费| 欧美激情一区二区久久久| 欧美日韩中文在线| 久久久99久久精品女同性| 久久成人国产精品| 久久精品国产亚洲一区二区三区| 亚洲精品久久嫩草网站秘色| 欧美大片免费| 亚洲精品社区| 欧美福利电影在线观看| 最新亚洲电影| 国产欧美精品在线| 日韩亚洲欧美综合| 美乳少妇欧美精品| 狠狠色狠狠色综合日日tαg| 久久gogo国模裸体人体| 久久久亚洲人| 一区二区精品在线| 欧美高清不卡| 久久亚洲私人国产精品va媚药| 久久精品91久久香蕉加勒比| 国产精品日韩欧美大师| 一区一区视频| 蜜桃av一区二区| 国产精品99久久99久久久二8| 亚洲欧美国产日韩天堂区| 国产精自产拍久久久久久蜜| 免费观看久久久4p| 亚洲在线中文字幕| 韩日精品视频| 欧美日韩一视频区二区| 国产精品久久九九| 亚洲国产精品99久久久久久久久| 亚洲人被黑人高潮完整版| 欧美日韩高清在线观看| 欧美先锋影音| 一区二区三区视频免费在线观看| 狠狠色丁香婷婷综合久久片| 亚洲午夜激情在线| 国产日韩亚洲欧美精品| 欧美激情1区2区| 欧美三级视频在线播放| 国内精品伊人久久久久av影院| 国产日韩欧美电影在线观看| 亚洲精品一品区二品区三品区| 欧美影视一区| 欧美日韩精品久久久| 国产精品一级久久久| 宅男噜噜噜66一区二区| 亚洲国产裸拍裸体视频在线观看乱了| 最新亚洲一区| 亚洲人在线视频| 欧美日韩福利视频| 欧美日韩在线视频一区| 亚洲美女免费精品视频在线观看| 亚洲人体一区| 一区二区三区国产精华| 激情综合中文娱乐网| 亚洲免费在线看| 欧美午夜不卡在线观看免费| 久久综合伊人77777麻豆| 欧美在线黄色| 欧美极品欧美精品欧美视频| 国产精品一区二区在线| 亚洲网站在线观看| 亚洲女人天堂成人av在线| 一区二区三区视频免费在线观看| 久久综合伊人77777蜜臀| 女同性一区二区三区人了人一| 亚洲字幕一区二区| 香蕉精品999视频一区二区| 国产精品日韩欧美| 性欧美办公室18xxxxhd| 欧美亚洲免费在线| 国产精品免费网站在线观看| 欧美精选在线| 国产日韩精品一区二区三区| 国产精品一区二区女厕厕| 久久伊人亚洲| 久久精品在线观看| 国内精品伊人久久久久av一坑| 亚洲精品视频在线观看网站| 日韩写真视频在线观看| 91久久线看在观草草青青| 亚洲国产日本| 国产欧美一区二区白浆黑人| 欧美一区二区三区免费在线看| 国产在线国偷精品产拍免费yy| 99综合精品| 欧美高清视频一二三区| 免费精品99久久国产综合精品| 1024精品一区二区三区| 国产精品尤物福利片在线观看| 欧美视频在线一区二区三区| 欧美久久久久中文字幕| 欧美国产亚洲精品久久久8v| 亚洲宅男天堂在线观看无病毒| 夜夜精品视频| 欧美另类亚洲| 久久综合五月天婷婷伊人| 国产一区香蕉久久| 美日韩精品视频| 99成人免费视频| 久久人人爽爽爽人久久久| 久久久久一区二区三区| 欧美日韩精品福利| 午夜精品久久久久久久久久久久久| 国产精品成人va在线观看| 欧美视频不卡中文| 亚洲作爱视频| 在线日韩成人| 亚洲精品一区在线观看| 欧美性淫爽ww久久久久无| 老司机亚洲精品| 欧美日韩国产欧美日美国产精品| 亚洲精品影视| 欧美三级不卡| 91久久国产综合久久91精品网站| 亚洲小视频在线观看| 国产一区二区三区电影在线观看| 免费在线观看成人av| 狠狠综合久久av一区二区老牛| 久久亚洲精选| 亚洲国产精品成人久久综合一区| 欧美日韩国产另类不卡| 欧美国产精品专区| 欧美激情日韩| 亚洲精品在线电影| 亚洲日产国产精品| 在线看片一区| 欧美精品一区二区三区久久久竹菊| 国产欧美一区二区三区国产幕精品| 久久国产欧美日韩精品| 久久久精品欧美丰满| 欧美高清视频一区二区| 国产精品一区毛片| 欧美一区二区三区四区在线| 狠狠色综合网站久久久久久久| 欧美xart系列在线观看| 欧美精品一区在线观看| 最新亚洲激情| 国产拍揄自揄精品视频麻豆| 欧美大尺度在线观看| 国产精品国产精品| 蜜臀av在线播放一区二区三区| 亚洲一区二区在线免费观看视频| 亚洲二区精品| 黄色成人精品网站| 国产精品卡一卡二卡三| 国产精品乱码久久久久久| av成人老司机| 久久精品日韩欧美| 亚洲第一中文字幕| 欧美日韩一区在线观看| 欧美本精品男人aⅴ天堂| 伊人狠狠色j香婷婷综合| 亚洲国产精品嫩草影院| 亚洲免费不卡| 91久久久久久久久久久久久| 国产亚洲欧美一区二区| 欧美激情2020午夜免费观看| 亚洲国产成人精品久久久国产成人一区| 欧美成黄导航| 久久久久久久久久码影片| 亚洲一区尤物| 一本一道久久综合狠狠老精东影业| 欧美在线播放一区| 欧美性色aⅴ视频一区日韩精品| 午夜国产欧美理论在线播放| 亚洲美女精品成人在线视频| 国产欧美成人| 欧美日韩四区| 国产精品久久久久国产a级| 日韩网站在线观看| 亚洲国产一区二区精品专区| 狠狠久久亚洲欧美| 欧美jjzz| 久久午夜精品一区二区| 亚洲精品乱码久久久久久按摩观| 国产亚洲二区| 欧美福利影院| 亚洲国产成人在线| 欧美国产日韩视频| 亚洲欧美色一区| 欧美日韩一区二| 国产婷婷精品| 欧美刺激午夜性久久久久久久| 久久综合亚洲社区| 欧美国产日韩在线观看| 久久女同互慰一区二区三区| 亚洲欧美经典视频| 夜夜爽av福利精品导航| 性做久久久久久久免费看| 亚洲片区在线| 欧美一级视频一区二区| 亚洲综合欧美| 国产精品极品美女粉嫩高清在线| 亚洲综合视频一区| 日韩午夜视频在线观看| 亚洲人成网站在线观看播放| 久久久久久久综合色一本| 国产精品一区在线播放| 久久久人成影片一区二区三区观看| 国产自产精品|