《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的三線制同步串行通信控制器設計
基于FPGA的三線制同步串行通信控制器設計
馮春陽1,張遂南1,王 瑋2
1.西安微電子技術研究所,陜西 西安710054;2.中國兵器工業(yè)第202研究所,陜西 咸陽7120
摘要: 為了簡化應用系統(tǒng)中的三線制同步串行通信擴展接口,減小系統(tǒng)體積,降低系統(tǒng)功耗,通過研究三線制同步串行通信的原理,利用FPGA,結合硬件描述語言VHDL,設計了三線制同步串行通信控制器功能框架結構,介紹了各組成模塊的功能及工作過程,并對該控制器IP核的接口信號進行了詳細描述與定義,最后在Xilinx ISE和ModelSim SE平臺下對該控制器IP核進行了綜合和功能仿真。
Abstract:
Key words :

摘  要: 為了簡化應用系統(tǒng)中的三線制同步串行通信擴展接口,減小系統(tǒng)體積,降低系統(tǒng)功耗,通過研究三線制同步串行通信的原理,利用FPGA,結合硬件描述語言VHDL,設計了三線制同步串行通信控制器功能框架結構,介紹了各組成模塊的功能及工作過程,并對該控制器IP核的接口信號進行了詳細描述與定義,最后在Xilinx ISE和ModelSim SE平臺下對該控制器IP核進行了綜合和功能仿真。
關鍵詞: 三線制同步串行通信;FPGA;VHDL;IP核

  同步串行通信[1]在航天工程領域中有著廣泛的應用,其中,三線制同步串行通信以其連線少、操作方便、通信速度快等特點,被成功應用在與外圍串行設備的數據通信中。
  目前大多數微控制器或微處理器都配置有同步串行通信接口,但含有三線制同步串行通信接口的微控制器或微處理器卻不多,因此在需要應用三線制進行通信的場合,就需要對系統(tǒng)進行三線制同步串行通信接口的擴展,利用FPGA[2]可以實現三線制同步串行通信。由于FPGA具有工作速度高、可配置性強、靈活性好等突出優(yōu)點,可以滿足高速同步串行通信。根據三線制同步串行通信機制,通過采用Xilinx公司的FPGA器件[3]設計并實現了三線制同步串行通信控制器的IP軟核。該控制器具有高速、易調試、配置靈活等優(yōu)點,有效利用了FPGA內部硬件資源,減小了系統(tǒng)體積,縮短了系統(tǒng)開發(fā)周期。
1 三線制同步串行通信機制介紹
  在計算機領域內,有串行傳送和并行傳送兩種數據傳送方式。并行數據傳送中,數據在多條并行1 bit寬的傳輸線上同時由源端傳送到目的端,這種傳送方式也稱為比特并行或字節(jié)串行。串行數據傳送中,數據在單條1 bit寬的傳輸線上,逐位按順序分時傳送。
  同步傳輸過程中,發(fā)送端和接收端必須使用共同的時鐘源才能保證它們之間的準確同步。同步傳輸時,在幀同步脈沖信號觸發(fā)下,串行數據信息以連續(xù)的形式發(fā)送,每個時鐘周期發(fā)送1 bit數據。因此,同步傳輸時數據成批連續(xù)發(fā)送,信息字符間不留任何空隙,它嚴格按照約定的速率發(fā)送和接收。為達到接收和發(fā)送的準確同步,通常在發(fā)送端利用編碼器把要發(fā)送的數據和發(fā)送時鐘組合在一起,通過傳輸線發(fā)送到接收端,在接收端再用解碼器從數據流中分離出接收時鐘。常用的編碼解碼器有曼徹斯特碼和NRZ-L碼。
  三線制同步串行通信采用的碼型為NRZ-L碼,其時序邏輯關系如圖1所示。

  三線制同步信號包括:幀同步信號、時鐘信號和串行數據,通常采用中斷方式接收。串行數據接收或發(fā)送時,首先幀同步信號先觸發(fā)一個瞬時脈沖,之后保持低電平有效,數據在時鐘信號的上升沿保持穩(wěn)定,并開始采樣,每個時鐘周期接收或者發(fā)送一位串行數據,直至數據接收或者發(fā)送完畢,系統(tǒng)再轉而處理其他相關操作。在數據發(fā)送或接收的整個過程中,幀同步信號一直處于低電平不變。
2 三線制同步串行通信控制器IP核設計
  本設計最終目標是用硬件描述語言VHDL[4]構建一個三線制同步串行通信控制器,也就是建立一個基于FPGA實現的、可復用的IP核[5]。同時,可以將設計好的IP核保存,作為一個子模塊應用于其他需要此模塊的系統(tǒng)中,從而減輕大型設計的工作量,縮短開發(fā)周期。
2.1 三線制同步串行通信控制器IP核接口描述
  本設計最終實現的目標是生成如圖2所示的IP核接口封裝。

  其中,三線制同步串行通信控制器IP核接口信號定義如表1所示。該IP核共有全局信號管腳8個,接收接口信號管腳和發(fā)送接口信號管腳各3個。

2.2 三線制同步串行通信控制器IP核電路結構設計
  按照設計目標,根據需要實現的功能,可將三線制同步串行通信控制器結構劃分成幾個大的功能模塊[6],這些模塊獨自完成一定的任務,結合起來實現通信控制器的整體功能。同時,劃分模塊功能后,可以更方便地用硬件描述語言VHDL對其進行描述。
  如圖3所示,根據設計要求,可將三線制同步串行通信控制器劃分成3個主要功能模塊:接口模塊、接收模塊和發(fā)送模塊。


  (1)接口模塊:用于各種全局信號的邏輯組合譯碼控制。同時,對輸入的系統(tǒng)時鐘進行時鐘分頻,為接收模塊和發(fā)送模塊提供串行同步時鐘信號。
  (2)接收模塊:用于接收外圍串行設備傳來的串行數據,此功能模塊的核心是接收FIFO和串/并變換兩大模塊,其中接收FIFO作為數據緩沖器暫存接收到的數據。在接收數據標志、接收移位寄存器和接收移位計數器的配合驅動下,串行數據按照MSB先、LSB后的順序經過串/并變換后,并行數據被存儲于接收FIFO中,等待中斷響應后CPU對數據進行處理。
  (3)發(fā)送模塊:用于向外圍串行設備發(fā)送串行數據,此功能模塊的核心是發(fā)送FIFO和并/串變換兩大模塊。CPU將要發(fā)送的數據先放到系統(tǒng)的并行數據總線上,并被暫存于發(fā)送FIFO中,在響應發(fā)送中斷信號后,并行數據按照MSB首發(fā)、LSB后發(fā)的順序,在控制信號驅動下,經過并/串變換,發(fā)送的數據最終以串行數據格式被送往外圍串行設備端口。
  三線制同步串行通信控制器IP核實體名接口用VHDL語言[4]定義如下:
ENTITY SerSendRec IS
PORT(  Rst_n:IN STD_LOGIC;
       Clk:IN STD_LOGIC;
       Cs:IN STD_LOGIC;
       Strobe:IN STD_LOGIC;
       Rw:IN STD_LOGIC;
       Addr:IN STD_LOGIC_VECTOR(2 DOWNTO 0);
       Rdata:IN STD_LOGIC;
       Rclk:OUT STD_LOGIC;
       Rgate:OUT STD_LOGIC;
       Int:OUT STD_LOGIC;
       Sdata:OUT STD_LOGIC;
       Sclk:OUT STD_LOGIC;
       Sgate:OUT STD_LOGIC;
       Data:INOUT STD_LOGIC_VECTOR(7 DOWNTO 0));
END SerSendRec;
3 仿真與驗證
  利用Xilinx ISE和ModelSim SE工具平臺對三線制同步串行通信控制器IP核進行綜合和功能仿真。數據發(fā)送仿真波形如圖4所示,數據接收仿真波形如圖5所示。可以看出,仿真結果完全正確,符合設計的預定目標。

  從圖4的仿真波形中可以看到,data信號線上是系統(tǒng)要向外圍串行設備發(fā)送的并行數據,在各種控制信號邏輯組合滿足情況下,系統(tǒng)響應發(fā)送中斷信號Int后,CPU先將待發(fā)送的數據暫存在04H地址緩沖寄存器中,在幀同步脈沖信號Sgate正脈沖觸發(fā)下,每個Sclk周期發(fā)送一位串行數據Sdata。圖中并行數據99H和E3H對應的串行數據分別為“10011001”和“11100011”。
  同理,從圖5可知,當開始接收數據時,在Rgate正脈沖觸發(fā)下,Rdata數據信號線上待接收的二進制串行數據通過串/并變換成“11101010”和“11010111”,并分別暫存在07H和06H所對應的地址緩沖寄存器中,在接收中斷信號Int響應下,將對應的并行數據“EA”和“D7”傳送到系統(tǒng)數據總線上,CPU對數據進行處理。
  本文在對三線制同步串行通信機制進行介紹的基礎上,對三線制同步串行通信控制器IP核進行了結構劃分和詳細設計,并結合Xilinx公司的FPGA器件,采用VHDL硬件描述語言,對設計方案進行了仿真與驗證,通過功能仿真波形得出了設計方案的正確性,并被成功用于航天某工程項目中。因其兼具較高的數據傳輸率和IP核的可移植性,可以預見,其在通信領域中將具有更加廣闊的發(fā)展空間。
參考文獻
[1] 張德民.數據通信[M]. 北京:科學技術文獻出版社,1997.
[2] 任曉東.CPLD/FPGA高級應用開發(fā)指南[M].北京:電子工業(yè)出版社,2003.
[3] Xilinx Corp.Virtex-5  FPGA family complete data sheet.2008.
[4] 侯伯亨,顧新.VHDL硬件描述語言與數字邏輯電路設計[M]. 西安:西安電子科技大學出版社,2001.
[5] 李玉山,來新泉.電子系統(tǒng)集成設計技術[M].北京:電子工業(yè)出版社,2002.
 

此內容為AET網站原創(chuàng),未經授權禁止轉載。
主站蜘蛛池模板: 免费a级毛片在线播放| 国产日产欧美精品| 中文字幕在线观看日韩| 欧美乱人伦中文字幕在线不卡| 免费理论片51人人看电影| 阿v视频免费在线观看| 国产精品区免费视频| a在线观看网站| 成人中文精品3d动漫在线| 久久国产亚洲观看| 欧美一级大片在线观看| 亚洲综合无码一区二区三区| 精品视频一区二区三区在线播放| 国产在线不卡视频| 一个色中文字幕| 在线免费观看一级片| 一本色道久久88精品综合| 无码人妻少妇久久中文字幕| 久草热久草视频| 欧美性猛交xxxx乱大交极品| 交性大片欧美网| 精品国产一区二区三区久久影院| 国产亚AV手机在线观看| 五月天婷婷综合网| 国产高清一级毛片| chinese国产高清av内谢| 成人免费视频试看120秒| 久久九九精品国产av片国产| 欧美三级在线免费观看| 亚洲欧美日韩国产精品专区 | 黑人啊灬啊灬啊灬快灬深| 国产精品无码永久免费888| 99国产超薄丝袜足j在线观看| 少妇大胆瓣开下部自慰| 三级黄色在线免费观看| 成人精品视频99在线观看免费| 中文字幕日韩理论在线| 搡女人真爽免费视频大全| 久久97久久97精品免视看秋霞 | 六月婷婷中文字幕| 精品人妻一区二区三区四区在线 |