《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于CPLD的曼徹斯特編碼技術
基于CPLD的曼徹斯特編碼技術
王 奇,王英民,牛奕龍,陶林偉
(西北工業大學,陜西 西安 710072)
摘要: 研究了曼徹斯特編解碼方法,采用VHDL語言在CPLD上實現了編解碼,使系統的功能高度集成,提高了系統的靈活性與兼容性。通過MAX+PLUS II仿真了2 MB/s速率下的編解碼,結果和理論分析一致,驗證了編解碼電路設計的有效性和可行性。
Abstract:
Key words :

摘  要: 研究了曼徹斯特編解碼方法,采用VHDL語言在CPLD上實現了編解碼,使系統的功能高度集成,提高了系統的靈活性與兼容性。通過MAX+PLUS II仿真了2 MB/s速率下的編解碼,結果和理論分析一致,驗證了編解碼電路設計的有效性和可行性。
關鍵詞:CPLD;曼徹斯特編解碼;MAX+PLUS II

    在工業現場控制網絡中,曼徹斯特碼由于編碼方式簡單易行、無直流分量,且含有豐富的時鐘信息,常被用作高速基帶數據傳輸。曼徹斯特編碼已經廣泛應用在數控測井和無線監控等領域。
    要實現曼徹斯特編解碼,專業的編解碼器必不可少,目前曼徹斯特編解碼器HD-6408、HD-6409最高速率只有1 MB/s,而且這種器件是對串行信號進行編解碼,在電路設計中需要專門的并/串、串/并轉換支持,增加了設計成本。
    本文主要介紹一種通過CPLD來實現曼徹斯特編解碼的方法,在CPLD內部完成并/串、串/并轉換以及曼徹斯特編解碼,提高了編解碼的通用性,大大節省了開發成本,并且可以實現更高的編碼速率。
1 曼徹斯特碼
  在曼徹斯特編碼[1-2]中,每一位的中間有一個跳變,位中間的跳變既作時鐘信號,又作數據信號。從高到低跳變表示“0”,從低到高跳變表示“1”。
  從曼徹斯特碼的特點可以看出曼徹斯特碼是一種自同步碼,且沒有直流分量,因此抗干擾能力強。但其缺點是編碼后每一個碼元都被調成2個電平,所以數據傳輸速率只有調制速率的1/2。
2 可編程邏輯器件的選擇
  系統中CPLD器件選擇Altera公司的MAX7000系列[3]的EPM7128AETC100-10。EPM7128AE系列CPLD具有2 500個可用門,內部具有128個宏單元,最多可用I/O引腳100個,時鐘最高可達192.3 MHz,使用3.3 V電壓供電。
  本文的編解碼分別在2個CPLD中完成。編碼端的CPLD內部程序框圖如圖1所示,首先鎖存并行信號,然后根據編碼時鐘把并行數據用移位寄存器進行并/串轉換,最后曼徹斯特編碼模塊對串行NRZ數據進行編碼輸出。


  解碼端的CPLD內部程序框圖如圖2所示,首先曼徹斯特解碼模塊把輸入的曼徹斯特碼解碼成NRZ碼,并從碼元中提取同步時鐘,然后在移位寄存器中對串行NRZ碼完成串/并轉換,最后把并行信號鎖存到鎖存器中并輸出。


3 曼徹斯特編解碼器設計
  在編解碼器的設計中,VHDL設計語言和原理圖方式混合使用,提高了軟件設計的靈活性。
3.1 編碼器設計
  (1)同步頭
  解碼時,何時開始一個解碼周期是解碼正確與否的關鍵,為此在曼徹斯特碼的前面增加了4個時鐘周期(此時鐘是數據傳輸速率的2倍)的高電平作為同步頭。編碼時首先輸出同步頭,接著輸出曼徹斯特碼元。解碼器檢測到此同步頭時啟動一個解碼周期。
  本文中采用的曼徹斯特編碼的數據幀格式如圖3所示,第1~2位為高電平,作為數據幀的同步頭;第3~18位是16個經過曼徹斯特編碼的數據位。


  (2)曼徹斯特編碼
  根據曼徹斯特碼的特點,常規設計方法是將NRZ碼和時鐘信號相異或進行編碼,這種方法的缺點是會在數據的跳變沿產生毛刺。設計中采用如下編碼方式:
  選用二倍頻于數據傳輸速率的時鐘,當時鐘個數為奇數時,曼徹斯特碼等于NRZ碼;當時鐘個數為偶數時,曼徹斯特碼等于NRZ碼取反。
  這種編碼方式簡單易行,而且解決了常規通過異或方式編碼產生的毛刺現象。
3.2 解碼器設計
  曼徹斯特解碼框圖如圖4所示,主要分為4個部分:同步頭檢測電路、同步時鐘提取器、解碼的判決器和計數器。


  其中同步頭檢測電路和判決器采用VHDL語言設計,同步時鐘提取器和計數器使用原理圖方式設計。下面分別介紹這4部分:
    (1)同步頭檢測電路
    同步頭檢測電路有2個功能:檢測同步頭和去掉同步頭。這部分電路不斷對接收到的數據進行檢測,當檢測到同步頭后,向其他3部分發送使能信號,控制這3個部分開始工作,并且同步頭檢測電路還將去掉同步頭后的標準曼徹斯特碼發送給判決器,由判決器對接收到的曼徹斯特碼解碼。
    (2)同步時鐘提取器[4]
  曼徹斯特碼的一個優點是本身含有時鐘信息,可以很方便地進行位同步。時鐘提取器就是要從曼徹斯特碼中提取出同步時鐘。從曼徹斯特碼的特點可以看出每個碼元中間都有一次跳變,時鐘提取電路提取出跳變信息,以此來恢復出位同步時鐘。
  同步時鐘提取電路如圖5所示,DataIn是輸入的曼徹斯特碼;CLK16x是解碼用的高倍時鐘;DataIn2是曼徹斯特碼經過2次時延后的信號,此信號與經過1次時延的信號異或運算得到曼徹斯特碼的跳變信息;CLR是從曼徹斯特碼中提取出的跳變信息,把這個跳變信息作為計數器的清零信號,同時利用高倍時鐘就可以從輸入的曼徹斯特碼中恢復出同步時鐘,圖5中CLKOUT是同步時鐘的輸出端,可用于電路的其他部分。


  (3)判決器
  判決器是曼徹斯特解碼的核心部分,采用16倍頻于傳輸速率的時鐘作為解碼時鐘。解碼流程圖如圖6所示。在接收到曼徹斯特碼后使用16倍頻的時鐘對信號進行采樣,為了正確解碼出一位NRZ碼,需要進行16次采樣,即一個解碼周期等于16個時鐘周期。


  解碼時設置了2個計數器:tHigh和tClock。tHigh用于記錄每16次采樣時前8次采樣的高電平的個數。如果tHigh等于8,那么原始碼元就是“1”,反之為“0”。在每次采樣時tClock都會加1,記錄采樣的次數。當tClock等于16時,一個解碼周期完成,將tHigh和tClock清零。
  在實際設計中,為了提高對解碼的抗干擾能力,將tHigh的判決門限設定為8-2,即6,當tHigh≥6就認為原始信號是“1”,反之為“0”。
    (4)計數器
  計數器的時鐘是從曼徹斯特碼恢復出的同步時鐘,主要用來記錄解碼的位數,當解碼完16位時,表明一幀數據解碼完成,產生解碼完成信號,可用這個信號通知外部處理單元對解碼后的信號進行讀取。
3.3 軟件仿真
    (1)編碼仿真[5]
    本文使用VHDL語言進行設計,使用MAX+PLUS II進行仿真,仿真的數據編碼速率設為2 MB/s,仿真圖形如圖7所示。其中D[0..5]是發送端的并行信號;DSP_CLK是由外部提供的40 MHz的時鐘信號,在CPLD中進行10分頻,產生需要的4 MHz的二倍頻時鐘信號;MAN_OUT是最終的曼徹斯特碼。從圖7可以看出,曼徹斯特碼的最前面有4個時鐘周期的高電平,是編碼信號的同步頭。
  從圖7中還可以看出,輸入的并行信號是0xA756,由于程序中使數據的最低位在前,最高位在后,因此進行并串轉換后的NRZ碼是0110,1010,1110,0101,對應的曼徹斯特碼為01 10 10 01,10 01 10 01,10 10 10 01,01 10 01 10(如圖7中MAN_OUT所示)。


  (2)解碼仿真
  仿真時所用的解碼時鐘是16 MHz,仿真圖如圖8所示。其中,DataIn是輸入的曼徹斯特碼,速率是原始數據速率的2倍,即4 MB/s;DataIn2是由輸入信號延遲一個時鐘周期產生的;CLK16x是外部提供的16 MHz高倍時鐘信號;CLR是從曼徹斯特碼提取的跳變信息;CLKOUT是恢復出的時鐘信號;enable是同步頭檢測電路產生的使能信號;NRZ是判決器輸出的NRZ碼;q[0..15]是解碼出的數據,從圖8中可以看出其值為0xA756,正確解碼了輸入的曼徹斯特碼。
  本文使用VHDL語言在Altera公司的EMP7128AETC100-10實現了曼徹斯特編解碼,在MAX+PLUS II下正確實現了2 MHz時鐘下的編解碼。比專用器件具有更高的速率和更好的靈活性。大大增加了曼徹斯特編解碼的可移植性,并且為編解碼器的擴展預留了足夠的空間。
參考文獻
[1] 楊剛,龍海燕.現代電子技術-VHDL與數字電路系統設計[M].北京:電子工業出版社,2004.
[2] VOLNEI A P著,VHDL數字電路設計教程[M]. 喬廬峰, 王志功譯.北京:電子工業出版社,2005.
[3] ALTERA. MAX7000A programmable logic device family data sheet. 2003.
[4] INTERSIL. HD-6408 Data Sheet. www.intersil.com.2006.
[5] RODGER E Z著.數字通信基礎[M].尹長川譯.北京:機械工業出版社,2005.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲乱码视频| 亚洲精品日韩一| 亚洲丰满在线| 国内精品模特av私拍在线观看| 欧美日韩在线免费视频| 欧美激情中文字幕一区二区| 久久免费视频网| 久久精品视频一| 久久国产欧美日韩精品| 欧美专区在线观看一区| 久久不见久久见免费视频1| 性刺激综合网| 欧美资源在线观看| 久久精品一二三| 久久久久一区| 毛片一区二区三区| 欧美国产在线观看| 欧美人妖在线观看| 欧美三级黄美女| 国产精品久久久久91| 国产精品v欧美精品v日韩精品| 国产精品xvideos88| 国产精品久久久久久亚洲调教| 欧美日韩少妇| 国产精品久久久久久久久久ktv| 欧美亚一区二区| 国产美女精品视频| 韩国三级电影久久久久久| 激情久久综合| 亚洲黄色在线看| 日韩一二在线观看| 国产精品99久久久久久久久久久久 | 在线观看91精品国产入口| 一区二区三区在线视频免费观看| 一区视频在线看| 亚洲黄色成人| 亚洲私人黄色宅男| 午夜在线视频一区二区区别| 欧美一级成年大片在线观看| 亚洲国产精品va| 99视频在线精品国自产拍免费观看 | 亚洲精品国偷自产在线99热| 一区二区电影免费观看| 欧美一区二区三区久久精品茉莉花 | 欧美日韩视频第一区| 国产精品青草久久久久福利99| 国产日韩欧美高清免费| 在线免费观看日韩欧美| 日韩一级裸体免费视频| 亚洲男人的天堂在线| 亚洲激情国产| 亚洲一区中文字幕在线观看| 久久国产黑丝| 欧美人与性动交α欧美精品济南到 | 午夜日韩在线观看| 亚洲三级色网| 午夜伦理片一区| 女仆av观看一区| 国产精品夫妻自拍| 一区免费视频| 亚洲欧美日韩第一区| 亚洲区欧美区| 欧美一区二区视频免费观看| 牛人盗摄一区二区三区视频| 国产精品久久久久一区二区三区共 | 国产一区二区三区在线免费观看| 在线看一区二区| 亚洲欧美成人精品| 亚洲精品一区久久久久久| 欧美亚洲一区二区在线观看| 欧美高清在线观看| 国产一区香蕉久久| 在线视频精品一| 亚洲国产精品久久久久秋霞不卡| 亚洲制服欧美中文字幕中文字幕| 狂野欧美一区| 国产精品日韩专区| 亚洲精品影院| 亚洲大胆在线| 久久9热精品视频| 欧美午夜精品久久久久久孕妇| 狠狠色综合色区| 亚洲欧美另类在线| 亚洲性人人天天夜夜摸| 欧美成人免费播放| 国产一区久久久| 亚洲免费在线视频一区 二区| 亚洲精选大片| 老司机免费视频久久| 国产精品一区二区三区四区 | 午夜在线一区| 午夜免费在线观看精品视频| 欧美久久一区| 亚洲第一页在线| 久久国产黑丝| 久久不见久久见免费视频1| 欧美视频在线观看免费| 亚洲人体一区| 亚洲精品久久久久久下一站 | 欧美天天综合网| 亚洲人永久免费| 亚洲激情婷婷| 久久亚洲综合| 国户精品久久久久久久久久久不卡| 亚洲欧美日韩精品久久亚洲区| 亚洲午夜一区| 欧美日韩一区在线播放| 亚洲区一区二| 亚洲精品国产精品国产自| 免费久久99精品国产自| 国产综合在线看| 久久电影一区| 久久久久久亚洲精品杨幂换脸| 国产日韩欧美一区在线| 午夜国产精品视频免费体验区| 亚洲欧美在线高清| 国产精品亚洲人在线观看| 亚洲午夜精品福利| 亚洲欧美国产一区二区三区| 欧美午夜片欧美片在线观看| 夜夜狂射影院欧美极品| 中文无字幕一区二区三区| 欧美人交a欧美精品| 99国产精品久久久久久久成人热| 99亚洲精品| 欧美午夜片在线观看| 亚洲小说欧美另类社区| 亚洲欧美网站| 国产日韩欧美综合精品| 香港成人在线视频| 久久精品一区| 在线观看91精品国产麻豆| 亚洲片在线资源| 欧美日本成人| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 亚洲大胆在线| 日韩一区二区精品视频| 欧美日韩免费观看一区二区三区| 99精品视频免费观看| 亚洲在线视频网站| 国产欧美日韩亚洲一区二区三区| 欧美一区二区三区视频在线| 久久婷婷麻豆| 亚洲精品美女久久久久| 亚洲资源av| 国产色综合网| 亚洲三级影片| 国产精品高清在线| 久久国产精品久久久久久| 欧美大片va欧美在线播放| 亚洲免费观看| 欧美一区亚洲二区| 伊人成人开心激情综合网| 亚洲麻豆国产自偷在线| 国产精品a级| 久久激五月天综合精品| 欧美激情一二三区| 亚洲淫性视频| 免播放器亚洲一区| 日韩视频欧美视频| 欧美中文在线观看| 亚洲国产一区二区视频| 欧美亚洲一区二区三区| 一区视频在线| 亚洲自拍偷拍一区| 1000部国产精品成人观看| 亚洲一区二区三区中文字幕在线| 国产欧美一区二区三区在线老狼 | 亚洲综合第一| 欧美大尺度在线观看| 亚洲伊人网站| 欧美精品xxxxbbbb| 亚洲欧美一区二区三区极速播放| 免费在线观看精品| 亚洲一区二区不卡免费| 欧美aaa级| 亚洲专区免费| 欧美激情第4页| 午夜亚洲激情| 欧美日韩精品一二三区| 欧美亚洲在线| 欧美日韩一区国产| 亚洲大胆人体在线| 国产精品视频一二三| 99精品99| 黑人一区二区三区四区五区| 在线亚洲一区| 亚洲第一久久影院| 欧美影院在线| 99精品视频一区二区三区| 久久人91精品久久久久久不卡| 亚洲精品美女91| 免费成人高清视频| 午夜精品久久久久久| 欧美日韩福利在线观看| 亚洲高清在线| 国产亚洲成年网址在线观看| 亚洲视频在线观看网站| 在线观看免费视频综合| 久久国产精品99精品国产|