亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA的串行接口芯片的設(shè)計與應(yīng)用

        2011-10-09 09:45:58秦實宏姚湘陵
        電子設(shè)計工程 2011年23期
        關(guān)鍵詞:信號功能實驗

        王 敏,秦實宏,陳 騰,姚湘陵

        (武漢工程大學(xué) 電氣信息學(xué)院,湖北 武漢 430205)

        隨著計算機技術(shù)的快速發(fā)展,串行通訊的應(yīng)用非常廣泛,為實現(xiàn)串行通信功能一般使用專用串行接口芯片,但是這種接口芯片存在體積較大、接口復(fù)雜以及成本較高的缺點,使得硬件設(shè)計更加復(fù)雜,并且結(jié)構(gòu)與功能相對固定,無法根據(jù)設(shè)計的需要對其邏輯控制進行靈活的修改[1]。在傳統(tǒng)的微機接口實驗箱上作進一步開發(fā)。為進一步提高實驗效果和學(xué)生動手能力,實驗中增加芯片設(shè)計部分,為硬件描述語言的理論教學(xué)提供實驗機會。同時接口芯片不再采用傳統(tǒng)的通用芯片,而用FPGA實現(xiàn),提供源代碼,在實驗中直接對FPGA進行編程。利用FPGA代替?zhèn)鹘y(tǒng)的接口實驗芯片,使得系統(tǒng)內(nèi)硬件的功能可以像軟件一樣被編程。這種設(shè)計方法運用到實際的硬件實驗環(huán)境中,增強與拓寬了實驗系統(tǒng)的功能,使實驗系統(tǒng)具有極強的靈活性和適應(yīng)性。

        1 總體設(shè)計方案

        利用FPGA進行串行接口芯片的設(shè)計,其設(shè)計平臺結(jié)構(gòu)框圖如圖1所示,其中,軟件平臺采用多功能微型計算機實驗軟件 MFS(Multi Function Soft,簡稱 MF),MF 將實驗程序開發(fā)工具(匯編語言、C/C++語言程序開發(fā)包),故障診斷程序和外設(shè)模塊實驗演示程序集成在一個環(huán)境中,構(gòu)成一個用戶應(yīng)用程序集成開發(fā)環(huán)境(IDE)。芯片設(shè)計完成后,將其源程序下載到FPGA中,通過USB與PC機連接,在IDE軟件平臺中編寫上位機程序來完成芯片設(shè)計的驗證工作,被控設(shè)備為微機接口實驗箱。

        圖1 平臺結(jié)構(gòu)框圖Fig.1 Structure diagram of platform

        2 芯片設(shè)計

        可編程串行接口芯片8251A是用來作為CPU與外設(shè)或調(diào)制解調(diào)器之間的接口芯片,適合作異步起止式數(shù)據(jù)格式和同步面向字符數(shù)據(jù)格式的接口芯片,其功能很強[2]。8251A的內(nèi)部結(jié)構(gòu)如圖2所示。從功能上將其分為5個部分:數(shù)據(jù)總線緩沖、讀/寫控制邏輯、發(fā)送模塊、接收模塊、調(diào)制控制模塊。

        根據(jù)8251A的外部特性和內(nèi)部邏輯,采用層次和模塊化的方法,將頂層設(shè)計中分為4個模塊,如圖3所示。在模塊內(nèi)部定義了發(fā)送和接收數(shù)據(jù)的緩存寄存器,用于實現(xiàn)數(shù)據(jù)總線緩沖器。

        圖2 8251A內(nèi)部結(jié)構(gòu)框圖Fig.2 Internal structure of 8251A

        圖3 8251A模塊劃分Fig.3 Module division of 8251A

        圖3中,左邊與CPU相連,右邊與其他串行接口相連。數(shù)據(jù)在控制信號的作用下首先被保存在鎖存模塊中,鎖存模塊再根據(jù)CnD信號將方式命令字和數(shù)據(jù)分別送給方式字和命令字處理模塊和發(fā)送邏輯模塊處理。方式字和命令字處理模塊接收方式字并解析命令字產(chǎn)生控制信號。發(fā)送邏輯模塊和接收邏輯模塊是主要模塊,分別實現(xiàn)數(shù)據(jù)的發(fā)送和接收,實現(xiàn)發(fā)送和接收過程控制分別由發(fā)送和接收狀態(tài)機完成[3]。

        2.1 鎖存模塊

        該模塊完成CPU端數(shù)據(jù)和地址的鎖存,通過nCS與nWR信號有效來鎖存地址和數(shù)據(jù)。

        2.2 方式字和命令字處理模塊

        方式字和命令字處理模塊完成初始化的方式字和命令字解碼,產(chǎn)生各種控制信號,并處理初始化完成后的命令字。復(fù)位信號生效后,數(shù)據(jù)輸入端(din)的方式字同步于時鐘輸出到方式字輸出(mode_out),同時設(shè)置方式字設(shè)置完成有效,然后才能解析接收到的命令字來輸出錯誤復(fù)位、發(fā)送接收使能信號位有效。

        在8251A的應(yīng)用上,CPU端發(fā)送方式字和命令字是有先后順序的,先發(fā)送方式字后,才能再發(fā)送后續(xù)的各種命令字。需要設(shè)置一個方式字完成標(biāo)識信號,或者使用一個簡單的狀態(tài)機完成方式字和命令字的處理,方式字命令字的處理還要注意和時鐘同步,可以加入中間寄存器,中間寄存器根據(jù)讀寫邏輯保存方式字和命令字,然后通過時鐘同步輸出。

        2.3 發(fā)送邏輯模塊

        發(fā)送邏輯模塊根據(jù)方式字的設(shè)置,按照規(guī)定的字長、奇偶位和停止位來發(fā)送數(shù)據(jù),該模塊主要實現(xiàn)并串?dāng)?shù)據(jù)轉(zhuǎn)換、按順序的數(shù)據(jù)發(fā)送、生成奇偶校驗碼、分頻計數(shù)等功能。按照這個思路可將發(fā)送邏輯模塊分為幾個子模塊,如圖4所示。其中Tx_fifo為可選子模塊,用于數(shù)據(jù)的緩存,Tx_shift_mux為并串轉(zhuǎn)換移位輸出子模塊。Tx_state_machine為發(fā)送狀態(tài)機子模塊,Tx_clk_cn為發(fā)送數(shù)據(jù)位和分頻計數(shù)子模塊,Tx_parity_gen為奇偶校驗位生成模塊,這3個子模塊產(chǎn)生信號控制Tx_shift_mux按照方式字的要求同步于發(fā)送時鐘輸出串行數(shù)據(jù)。

        圖4 發(fā)送邏輯模塊的子模塊劃分Fig.4 Sub-module division of send logic module

        2.4 接收邏輯模塊

        接收邏輯模塊和發(fā)送邏輯模塊的實現(xiàn)類似,只是數(shù)據(jù)流方向相反,當(dāng)檢測到串行輸入引腳RxD上為低電平時,開始接收數(shù)據(jù)。數(shù)據(jù)接收部分將接收的串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù),并作錯誤檢查,更新狀態(tài)字,使RxRDY引腳信號有效。該模塊可分成4個子模塊來實現(xiàn),如圖5所示,Rx_shift_mux子模塊將串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù),Rx_clk_cn子模塊對接收的數(shù)據(jù)位和時鐘分頻計數(shù),Rx_state_machine為主要控制子模塊,Rx_parity子模塊為奇偶校驗子模塊。接收邏輯模塊中最后的并行數(shù)據(jù)需要用寄存器緩存。

        圖5 接收邏輯模塊的子模塊劃分Fig.5 Sub-module division of receive logic module

        3 實驗應(yīng)用

        3.1 8251A功能仿真

        完成芯片的設(shè)計和VHDL源代碼實現(xiàn)后,通過Modelsim軟件來驗證邏輯的正確性[4]。仿真中需要測試文件來產(chǎn)生信號激勵,同時對接收的數(shù)據(jù)進行驗證。測試模塊和8251A的連接方式如圖6所示。

        圖6 功能仿真信號連接圖Fig.6 Functional simulation signal connection diagram

        8251A_top為測試系統(tǒng)最頂層的模塊,8251Atb為Test Bench模塊,該模塊產(chǎn)生激勵信號,先后寫方式字和命令字,然后發(fā)送數(shù)據(jù),由于8251A的txd和rxd相連,發(fā)送的數(shù)據(jù)又可通過rxd讀回來,通過比較寫的數(shù)據(jù)和讀的數(shù)據(jù),如果相同則發(fā)送和接收都不存在問題,由于8251A功能特性較多,這里只作基本的數(shù)據(jù)發(fā)送和接收功能的測試。測試文件的實現(xiàn)流程如圖7所示。

        圖7 測試文件實現(xiàn)流程圖Fig.7 Flow chart of test file

        ModelSim中仿真的波形如圖8所示。根據(jù)8251A的外部特性和內(nèi)部結(jié)構(gòu),從圖中可以看出基本的數(shù)據(jù)發(fā)送和接收數(shù)據(jù)和信號都符合邏輯要求,各種狀態(tài)中斷信號也滿足要求。

        圖8 功能仿真波形圖Fig.8 Oscillogram of functional simulation

        3.2 綜合實現(xiàn)

        FPGA開發(fā)板是以Xilinx公司的Spartan 3A系列中的XC3S200A為主芯片,采用Xilinx提供的開發(fā)套件ISE來完成芯片設(shè)計的驗證工作。綜合完成后的邏輯網(wǎng)表使用ISE工具將網(wǎng)表中的邏輯單元配置到具體型號的FPGA器件上,這個工作稱為“實現(xiàn)”(Implementation)。Xilinx的實現(xiàn)過程分為翻譯(Translate)、映射(Map)和布局布線(Place&Route)3 步[5]。

        3.3 下載測試

        在布局布線完成后,使用ISE的iMPACT工具可以將生成的配置文件加載到實際的硬件環(huán)境中測試,成功配置好FPGA后,編寫上位機來測試設(shè)計的芯片8251A,下載芯片代碼對FPGA編程,打開WINDOWS超級終端,選擇波特率9 600,根據(jù)程序設(shè)置8位數(shù)據(jù)位,1位停止位,無奇偶校驗,數(shù)據(jù)流控制設(shè)置為”Xon/Xoff”,在多功能微機接口與原理實驗平臺上,可實現(xiàn)8251A與主機RS232接口的通信。實驗現(xiàn)象為:在超級終端中輸入字符,實驗運行環(huán)境下能接收到;在實驗環(huán)境下輸入字符,超級終端中能接收到。如圖9所示:

        圖9 實驗現(xiàn)象Fig.9 Experimental phenomena

        4 結(jié) 論

        采用FPGA設(shè)計串行接口芯片8251A,實現(xiàn)了8251A的異步傳輸方式,數(shù)據(jù)的發(fā)送和接收,由于FPGA芯片具有重復(fù)編程的能力,該方案可以應(yīng)用于接口實驗系統(tǒng)設(shè)計中,根據(jù)不同的實驗要求規(guī)劃不同的實驗控制邏輯,然后將實驗邏輯下載到FPGA芯片中完成實驗功能。與傳統(tǒng)的接口實驗方法相比較,實驗時可以省去了大量繁瑣的接線時間,可以把重點放在電路的設(shè)計、仿真和驗證上,可以更好地達到實驗?zāi)康?,增強與拓寬了實驗系統(tǒng)的功能,使實驗系統(tǒng)具有極強的靈活性和適應(yīng)性。隨著計算機技術(shù)的發(fā)展,計算機教學(xué)實驗的內(nèi)容和方法也應(yīng)改變。但是,目前計算機實驗教學(xué)中,仍然是“驗證式”的實驗為主,而“開放式”的設(shè)計與制作型實驗還很少,其中的一個原因就是實驗設(shè)備和實驗條件的限制[6]。的設(shè)計方法可以應(yīng)用于實驗設(shè)備改進,為微機接口實驗課程改革提供了基礎(chǔ),讓單一的“驗證式”傳統(tǒng)實驗教學(xué)模式,盡早改變成既有“驗證式”,又有“開放式”實驗教學(xué)模式。

        [1]王利民,屠玲剛,潘忠鴿,等.基于FPGA的串口通信設(shè)計與實現(xiàn)[J].黑龍江科技信息,2010(21):88-89.

        WANG Li-min,TU Ling-gang,PAN Zhong-ge,et al.Design and implementation of serial port communication based on FPGA[J].Heilongjiang Science and Technology Information,2010(21):88-89.

        [2]周功業(yè),黃文蘭,盧建華.現(xiàn)代微機系統(tǒng)與接口技術(shù)[M].北京:高等教育出版社,2005.

        [3]王子劍,田小剛,鄔軍偉.基于FPGA的異步串行通訊[J].廣西工學(xué)院學(xué)報,2008,19 (4):25-29.

        WANG Zi-jian,TIAN Xiao-gang,WU Jun-wei.Asynchronous serial port communication based on FPGA [J].Journal of Guangxi University of Technology,2008,19(4):25-29.

        [4]楊躍.FPGA應(yīng)用開發(fā)實戰(zhàn)技巧精粹[M].北京:人民郵電出版社,2009.

        [5]孫航,胡靈博,于連鋒,等.Xilinx可編程邏輯器件應(yīng)用與系統(tǒng)設(shè)計[M].北京:電子工業(yè)出版社,2008.

        [6]李欣光.探討基于FPGA技術(shù)的微機組成原理實驗系統(tǒng)[J].實驗室科學(xué),2009,12(6):79-81.

        LI Xin-guang.An FPGA-based experimentsystem for principles of microcomputers[J].Laboratory Science,2009,12(6):79-81.

        猜你喜歡
        信號功能實驗
        也談詩的“功能”
        中華詩詞(2022年6期)2022-12-31 06:41:24
        記一次有趣的實驗
        信號
        鴨綠江(2021年35期)2021-04-19 12:24:18
        完形填空二則
        做個怪怪長實驗
        基于FPGA的多功能信號發(fā)生器的設(shè)計
        電子制作(2018年11期)2018-08-04 03:25:42
        關(guān)于非首都功能疏解的幾點思考
        NO與NO2相互轉(zhuǎn)化實驗的改進
        實踐十號上的19項實驗
        太空探索(2016年5期)2016-07-12 15:17:55
        基于LabVIEW的力加載信號采集與PID控制
        老熟妇高潮av一区二区三区啪啪| 狠狠色噜噜狠狠狠狠色综合久| 久久国产精品波多野结衣av| 亚洲五月七月丁香缴情| 中文字幕人乱码中文字幕乱码在线| av无码国产精品色午夜| 亚洲成色www久久网站夜月| 911国产在线观看精品| 久久精品国产自产对白一区| 日本一道综合久久aⅴ免费| 天堂√中文在线bt| 九九精品国产99精品| 精品嫩模福利一区二区蜜臀| av中文字幕潮喷人妻系列| 精品午夜福利1000在线观看| 成人自拍视频国产一区| 蜜桃传媒网站在线观看| 97在线观看视频| 久草国产视频| 国产日本精品一区二区| 精人妻无码一区二区三区| 亚洲欧洲巨乳清纯| 色优网久久国产精品| 国产亚洲精品在线视频| 日本中文字幕一区二区高清在线| 国产网站视频| 久久这黄色精品免费久| 色综合天天综合欧美综合| 亚洲精品国偷自产在线99正片| 精品无码一区二区三区小说| 人妻少妇av中文字幕乱码| 国产va免费精品高清在线观看| 久久国产偷| 久久这黄色精品免费久| 丰满人妻被两个按摩师| 日本亚洲国产一区二区三区| 亚洲伊人久久综合精品| 中文字幕一区二区人妻秘书 | av手机在线观看不卡| 99久久国产综合精品五月天| 精品国产亚欧无码久久久|