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

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

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

3天內不再提示

通過FPGA與VHDL設計三線制同步串行通信控制器并進行功能仿真

電子設計 ? 作者:電子設計 ? 2018-10-07 11:12 ? 次閱讀

同步串行通信在航天工程領域中有著廣泛的應用,其中,三線制同步串行通信以其連線少、操作方便、通信速度快等特點,被成功應用在與外圍串行設備的數據通信中。

目前大多數微控制器微處理器都配置有同步串行通信接口,但含有三線制同步串行通信接口的微控制器或微處理器卻不多,因此在需要應用三線制進行通信的場合,就需要對系統進行三線制同步串行通信接口的擴展,利用FPGA[2]可以實現三線制同步串行通信。由于FPGA具有工作速度高、可配置性強、靈活性好等突出優點,可以滿足高速同步串行通信。根據三線制同步串行通信機制,通過采用Xilinx公司的FPGA器件[3]設計并實現了三線制同步串行通信控制器的IP軟核。該控制器具有高速、易調試、配置靈活等優點,有效利用了FPGA內部硬件資源,減小了系統體積,縮短了系統開發周期。

1 三線制同步串行通信機制介紹

在計算機領域內,有串行傳送和并行傳送兩種數據傳送方式。并行數據傳送中,數據在多條并行1 bit寬的傳輸線上同時由源端傳送到目的端,這種傳送方式也稱為比特并行或字節串行。串行數據傳送中,數據在單條1 bit寬的傳輸線上,逐位按順序分時傳送。

同步傳輸過程中,發送端和接收端必須使用共同的時鐘源才能保證它們之間的準確同步。同步傳輸時,在幀同步脈沖信號觸發下,串行數據信息以連續的形式發送,每個時鐘周期發送1 bit數據。因此,同步傳輸時數據成批連續發送,信息字符間不留任何空隙,它嚴格按照約定的速率發送和接收。為達到接收和發送的準確同步,通常在發送端利用編碼器把要發送的數據和發送時鐘組合在一起,通過傳輸線發送到接收端,在接收端再用解碼器從數據流中分離出接收時鐘。常用的編碼解碼器有曼徹斯*和NRZ-L碼。

三線制同步串行通信采用的碼型為NRZ-L碼,其時序邏輯關系如圖1所示。

圖1三線制同步串行通信邏輯關系圖

三線制同步信號包括:幀同步信號、時鐘信號和串行數據,通常采用中斷方式接收。串行數據接收或發送時,首先幀同步信號先觸發一個瞬時脈沖,之后保持低電平有效,數據在時鐘信號的上升沿保持穩定,并開始采樣,每個時鐘周期接收或者發送一位串行數據,直至數據接收或者發送完畢,系統再轉而處理其他相關操作。在數據發送或接收的整個過程中,幀同步信號一直處于低電平不變。

2 三線制同步串行通信控制器IP核設計

本設計最終目標是用硬件描述語言VHDL[4]構建一個三線制同步串行通信控制器,也就是建立一個基于FPGA實現的、可復用的IP核[5]。同時,可以將設計好的IP核保存,作為一個子模塊應用于其他需要此模塊的系統中,從而減輕大型設計的工作量,縮短開發周期。

2.1 三線制同步串行通信控制器IP核接口描述

本設計最終實現的目標是生成如圖2所示的IP核接口封裝。

通過FPGA與VHDL設計三線制同步串行通信控制器并進行功能仿真

圖2 三線制同步串行通信控制器IP 核接口封裝圖

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

表1三線制同步串行通信控制器IP核接口信號描述

2.2 三線制同步串行通信控制器IP核電路結構設計

按照設計目標,根據需要實現的功能,可將三線制同步串行通信控制器結構劃分成幾個大的功能模塊,這些模塊獨自完成一定的任務,結合起來實現通信控制器的整體功能。同時,劃分模塊功能后,可以更方便地用硬件描述語言VHDL對其進行描述。

如圖3所示,根據設計要求,可將三線制同步串行通信控制器劃分成3個主要功能模塊:接口模塊、接收模塊和發送模塊。

通過FPGA與VHDL設計三線制同步串行通信控制器并進行功能仿真

圖3 三線制同步串行通信控制器結構圖

(1)接口模塊:用于各種全局信號的邏輯組合譯碼控制。同時,對輸入的系統時鐘進行時鐘分頻,為接收模塊和發送模塊提供串行同步時鐘信號。

(2)接收模塊:用于接收外圍串行設備傳來的串行數據,此功能模塊的核心是接收FIFO和串/并變換兩大模塊,其中接收FIFO作為數據緩沖器暫存接收到的數據。在接收數據標志、接收移位寄存器和接收移位計數器的配合驅動下,串行數據按照MSB先、LSB后的順序經過串/并變換后,并行數據被存儲于接收FIFO中,等待中斷響應后CPU對數據進行處理。

(3)發送模塊:用于向外圍串行設備發送串行數據,此功能模塊的核心是發送FIFO和并/串變換兩大模塊。CPU將要發送的數據先放到系統的并行數據總線上,并被暫存于發送FIFO中,在響應發送中斷信號后,并行數據按照MSB首發、LSB后發的順序,在控制信號驅動下,經過并/串變換,發送的數據最終以串行數據格式被送往外圍串行設備端口

三線制同步串行通信控制器IP核實體名接口用VHDL語言定義如下:

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核進行綜合和功能仿真。數據發送仿真波形如圖4所示,數據接收仿真波形如圖5所示。可以看出,仿真結果完全正確,符合設計的預定目標。

圖4 數據發送仿真波形

圖5 數據接收仿真波形

從圖4的仿真波形中可以看到,data信號線上是系統要向外圍串行設備發送的并行數據,在各種控制信號邏輯組合滿足情況下,系統響應發送中斷信號Int后,CPU先將待發送的數據暫存在04H地址緩沖寄存器中,在幀同步脈沖信號Sgate正脈沖觸發下,每個Sclk周期發送一位串行數據Sdata。圖中并行數據99H和E3H對應的串行數據分別為“10011001”和“11100011”。

同理,從圖5可知,當開始接收數據時,在Rgate正脈沖觸發下,Rdata數據信號線上待接收的二進制串行數據通過串/并變換成“11101010”和“11010111”,并分別暫存在07H和06H所對應的地址緩沖寄存器中,在接收中斷信號Int響應下,將對應的并行數據“EA”和“D7”傳送到系統數據總線上,CPU對數據進行處理。

本文在對三線制同步串行通信機制進行介紹的基礎上,對三線制同步串行通信控制器IP核進行了結構劃分和詳細設計,并結合Xilinx公司的FPGA器件,采用VHDL硬件描述語言,對設計方案進行了仿真與驗證,通過功能仿真波形得出了設計方案的正確性,并被成功用于航天某工程項目中。因其兼具較高的數據傳輸率和IP核的可移植性,可以預見,其在通信領域中將具有更加廣闊的發展空間。

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

    關注

    1629

    文章

    21748

    瀏覽量

    603910
  • 控制器
    +關注

    關注

    112

    文章

    16384

    瀏覽量

    178334
  • vhdl
    +關注

    關注

    30

    文章

    817

    瀏覽量

    128159
收藏 人收藏

    評論

    相關推薦

    怎么實現PID控制器VHDL-AMS行為級建模

    本文介紹VHDL-AMS的新概念和新特性。通過對PID控制原理進行數學分析,建立PID控制器的數學模型,實現PID
    發表于 05-06 07:59

    怎么實現基于CPLD的異步串行通訊控制器的設計?

    本文在對異步串行通信協議進行分析的基礎上,根據實際工程的需要,對異步串行通信控制器
    發表于 05-28 06:53

    基于FPGA串行接收模塊的設計

    為了使計算機能夠通過串口控制FPGA 的輸出信號,筆者根據異步串行通信的原理,設計了簡便易行的FPGA
    發表于 09-24 15:52 ?18次下載

    LED控制VHDL程序與仿真

    LED控制VHDL程序與仿真分別介紹采用FPGA對LED進行靜態和動態顯示的數字時鐘控制程序。1
    發表于 06-27 11:20 ?1517次閱讀

    三線制Microware同步串行EEPROM在MCS-51單

    介紹了三線制Microware串行總線及其相關的EEPROM,設計了該類EEPROM與AT89C51的連接和軟件模擬,并給出C51源程序。    關鍵詞:三線
    發表于 05-10 13:05 ?1641次閱讀
    <b class='flag-5'>三線</b>制Microware<b class='flag-5'>同步</b><b class='flag-5'>串行</b>EEPROM在MCS-51單

    VHDL設計專用串行通信芯片

    VHDL設計專用串行通信芯片 一種專用串行同步通信芯片(該芯片內部結構和操作方式以INS8250為參考)的
    發表于 10-12 19:07 ?1861次閱讀
    用<b class='flag-5'>VHDL</b>設計專用<b class='flag-5'>串行</b><b class='flag-5'>通信</b>芯片

    基于晶閘管的三線交流調壓電路分析與仿真

    基于晶閘管的三線交流調壓電路分析與仿真基于晶閘管的三線交流調壓電路分析與仿真
    發表于 06-16 18:21 ?0次下載

    三線串行通信接口電路性能

    基于光耦的三線串行通信接口電路性能提升的研究
    發表于 08-30 15:01 ?10次下載
    <b class='flag-5'>三線</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b>接口電路性能

    基于MSP430的三線串行接口通信系統

    通過研究三線串行接口的構成原理,設計了一種基于MSP430單片機和FPGA三線串行接口測試儀。
    發表于 11-22 09:00 ?4433次閱讀
    基于MSP430的<b class='flag-5'>三線</b><b class='flag-5'>串行</b>接口<b class='flag-5'>通信</b>系統

    基于FPGA的PCIe總線接口的DMA控制器的實現并進行仿真驗證

    本文實現的基于FPGA的PCIe總線接口的DMA控制器是在Altera PHY IP和Synopsys Core IP的基礎上實現的,利用Synopsys VIP驗證環境進行功能
    的頭像 發表于 01-11 10:57 ?1.3w次閱讀
    基于<b class='flag-5'>FPGA</b>的PCIe總線接口的DMA<b class='flag-5'>控制器</b>的實現<b class='flag-5'>并進行</b><b class='flag-5'>仿真</b>驗證

    MSP430和FPGA三線串行接口測試儀的設計詳析

    通過研究三線串行接口的構成原理, 設計了一種基于 MSP430 單片機和 FPGA三線串行
    發表于 05-02 10:07 ?5次下載
    MSP430和<b class='flag-5'>FPGA</b>的<b class='flag-5'>三線</b><b class='flag-5'>串行</b>接口測試儀的設計詳析

    VHDL-AMS的特性、仿真分析與在控制系統中的應用

    本文介紹VHDL-AMS的新概念和新特性。通過對PID控制原理進行數學分析,建立PID控制器的數學模型,實現PID
    的頭像 發表于 11-14 08:03 ?3365次閱讀
    <b class='flag-5'>VHDL</b>-AMS的特性、<b class='flag-5'>仿真</b>分析與在<b class='flag-5'>控制</b>系統中的應用

    采用VHDL預言實現基于Petri網的并行控制器設計并進行仿真驗證

    Petri網是離散事件系統建模的重要工具,本文使用硬件描述語言VHDL實現了基于Petri網的并行控制器。文中通過一個液位控制系統實例具體介紹了這一方法,并
    的頭像 發表于 04-22 08:10 ?1960次閱讀
    采用<b class='flag-5'>VHDL</b>預言實現基于Petri網的并行<b class='flag-5'>控制器</b>設計<b class='flag-5'>并進行</b><b class='flag-5'>仿真</b>驗證

    如何使用FPGA進行串行通信控制系統的設計

    在Altera Cyclone II 平臺上采用“自頂向下”的模塊化設計思想及VHDL 硬件描述語言,設計了串行通信控制系統。在Quartus II 軟件上編譯、
    發表于 11-07 11:18 ?6次下載
    如何使用<b class='flag-5'>FPGA</b><b class='flag-5'>進行</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b><b class='flag-5'>控制</b>系統的設計

    采用可編程邏輯器件實現三線同步串行通信的應用設計

    航天工程領域中,星地通訊等遠距離遙測遙控是嵌入式衛星數管計算機重要功能之一,利用三線同步串行遙測遙控通道對指令和數據進行收發操作是
    的頭像 發表于 06-08 15:32 ?2547次閱讀
    采用可編程邏輯器件實現<b class='flag-5'>三線</b>制<b class='flag-5'>同步</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b>的應用設計
    主站蜘蛛池模板: 日本三级s级在线播放| 久久大伊人| 性free3d| 婷婷综合七月激情啪啪| 色偷偷91综合久久噜噜| 欧美午夜视频在线| 久久亚洲欧美成人精品| 黄色日本视频网站| brazzersvideosex欧美最| 亚洲高清日韩精品第一区| 天天爆操| www干| 国产黄色大全| 国产在线99| 四虎黄色片| 美女污污网站| 182福利视频| 牛牛碰在线视频| 黄色在线看网站| 资源新版在线天堂| 四虎亚洲精品| 黄色一级毛片看一级毛片| 夜色成人| 国产精品久久久久久久午夜片| 丁香五月欧美成人| 在线播放亚洲视频| 日韩欧美一区二区三区视频| 久久男人网| 午夜高清视频在线观看| 操您啦| 男女一区二区三区免费| 四虎永久网址影院| 久碰香蕉精品视频在线观看| www射射一区| 黑人又大又粗又长又深受不了| 曰本aaaaa毛片午夜网站| 亚色成人| 黄色三级网站免费| 日韩一级片免费观看| 中文字幕在线观看一区二区 | 午夜毛片网站|