自在自线亚洲а∨天堂在线-中文字幕一区视频播放-扒开双腿猛进入喷水高潮叫声-欧美日本亚洲一区二区-老熟妇高潮偷拍一区二区-国产精品高清一区二区不卡-午夜色福利视频一区二区三区-亚洲国产成人精品福利在线观看-亚洲欧美成人一区二区在线电影

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
基于FPGA技術(shù)實(shí)現(xiàn)DSP的UART
基于FPGA技術(shù)實(shí)現(xiàn)DSP的UART
 更新時(shí)間:2008-8-3 16:09:32  點(diǎn)擊數(shù):6
【字體: 字體顏色


    摘 要:本文介紹了基于FPGA技術(shù)實(shí)現(xiàn)DSP的UART的一種方法,應(yīng)用 Xilinx ISE4.0開發(fā)軟件實(shí)現(xiàn)了UART邏輯的譯碼。通過(guò)實(shí)驗(yàn),驗(yàn)證了硬件邏輯的正確性及合理性;同時(shí)也為DSP與PC機(jī)之間的通信提供了一種新的思想方法。

關(guān)鍵詞:FPGA ,DSP,UART,硬件邏輯


  前言


    隨著信息技術(shù)與革命的深入和計(jì)算機(jī)技術(shù)的飛速發(fā)展,數(shù)字信號(hào)技術(shù)已經(jīng)逐漸發(fā)展成為一門關(guān)鍵的技術(shù)學(xué)科;而DSP芯片的出現(xiàn)則為數(shù)字信號(hào)處理算法的實(shí)現(xiàn)提供了可能。當(dāng)前,DSP芯片廣泛地應(yīng)用在通信與電子系統(tǒng)、信號(hào)處理系統(tǒng)、自動(dòng)控制、雷達(dá)、軍事、航空航天、醫(yī)療、家用電器、電力系統(tǒng)等許多領(lǐng)域,而且新的應(yīng)用領(lǐng)域在不斷地被發(fā)掘。TMS320系列芯片都設(shè)有串行端口,即 DSP可以用串口直接與外圍器件(包括PC機(jī))進(jìn)行通信。通常儀器儀表還需經(jīng)常跟臺(tái)式機(jī)或隨身的便攜機(jī)發(fā)生通信。對(duì)于DSP來(lái)說(shuō),在進(jìn)行串口通信時(shí)即可以用軟件來(lái)實(shí)現(xiàn),同時(shí)對(duì)硬件的要求也相對(duì)簡(jiǎn)單;另外也可以用硬件來(lái)實(shí)現(xiàn)。這里所說(shuō)的硬件是指由EDA技術(shù)實(shí)現(xiàn)的硬件邏輯,而不是指真正意義上的硬件。其中,基于EDA技術(shù)的可編程的ASIC越來(lái)越來(lái)被廣大電子工程師所開發(fā)利用,這是因?yàn)檫@種技術(shù)有許多優(yōu)點(diǎn):用軟件實(shí)現(xiàn)硬件功能,從而大大減小了電路板的尺寸,提高了電路的可靠性和可移植性,同時(shí)還縮短了產(chǎn)品的開發(fā)周期,降低了開發(fā)成本,易于產(chǎn)品的升級(jí)換代。而DSP的串行通信的硬件實(shí)現(xiàn)就是此技術(shù)的應(yīng)用,即利用FPGA(Field Programmable Gate Array)對(duì)指令進(jìn)行譯碼實(shí)現(xiàn)此功能的。所選芯片是Xilinx公司的XC4000系列的產(chǎn)品。


    1、FPGA器件介紹


    本系統(tǒng)所用芯片是 Xilinx公司的XC4000系列的產(chǎn)品。FPGA是由美國(guó)Xilinx公司于1985年推出的,并且連續(xù)推出一代又一代集成度更高,速度更快、價(jià)格更低的新型器件,Xilinx公司的可編程邏輯性能及使用靈活性方面一直保持著FPGA產(chǎn)品的領(lǐng)導(dǎo)地位。其典型產(chǎn)品如XC4000和Virtex系列都是采用CMOS SRAM工藝制造,可反復(fù)編程,并能實(shí)現(xiàn)芯片功能的動(dòng)態(tài)重構(gòu)。FPGA的設(shè)計(jì)可在廠家提供的開發(fā)系統(tǒng)中快速有效的完成,生成的設(shè)計(jì)文件已構(gòu)造代碼的形式存儲(chǔ)在FPGA外的存儲(chǔ)器件中,系統(tǒng)上電時(shí)將這些構(gòu)造代碼讀入FPGA內(nèi),由SRAM構(gòu)成的存儲(chǔ)器,并有各個(gè)配置存儲(chǔ)單元控制FPGA中的可編程資源實(shí)現(xiàn)用戶的專用設(shè)計(jì)。本系統(tǒng)中應(yīng)用的XC4000XL/XLA系列中的器件,這種系列器件供電電壓為3.3V、I/O兼容5V,采用0.25μmCOMS工藝,并且XC4000系列可滿足密度高達(dá)50萬(wàn)系統(tǒng)門的需求,片內(nèi)帶有高速的RAM,并為包括各種內(nèi)核方案在內(nèi)的各種軟件所接受。本系統(tǒng)中所用的芯片型號(hào)為 XC4010XL,其主要結(jié)構(gòu)特點(diǎn)是:950個(gè)邏輯單元,最大系統(tǒng)門為10K,最大RAM為13K位,觸發(fā)器數(shù)為1120,最大可用的I/O數(shù)為160。


    2、Xilinx開發(fā)軟件介紹


    現(xiàn)在所接觸到的Xilinx開發(fā)軟件有兩種:一種Foundation series1.5;一種是Xilinx ISE4.0版本。這兩種軟件開發(fā)系統(tǒng)都可開發(fā)設(shè)計(jì)、系統(tǒng)仿真、下載編程等功能。下面主要介紹XilinxISE4.0 開發(fā)工具。Xilinx ISE4.0是Xilinx公司于2001年推出的用于FPGA和CPLD器件的開發(fā)工具軟件。運(yùn)行步驟如下:


    (1)、新建工程


    首先啟動(dòng)Xilinx ISE4.0軟件,進(jìn)入Project Navgator,軟件提示打開一個(gè)已存在的Project或新建一個(gè)Project。若選擇新建一個(gè)Project,將出現(xiàn)一個(gè)New Project對(duì)話框,在此對(duì)話框中,可設(shè)定一個(gè)工程名及路徑,同時(shí)還可以選擇器件類型及設(shè)計(jì)語(yǔ)言類型。


    (2)、設(shè)計(jì)輸入


    建立一個(gè)工程后,就可以確定數(shù)據(jù)輸入方式了。在 Source in Project框中,點(diǎn)擊右鍵,選擇NEW SOURCE菜單,就出現(xiàn)設(shè)計(jì)輸入選擇對(duì)話框。 Xilinx ISE4.0軟件是有原理圖、HDL語(yǔ)言和狀態(tài)圖三種輸入工具,并可利用這3種輸入工具創(chuàng)建具有圖形化頂層的宏模塊,同時(shí)可被原理圖編輯器和HDL編輯器調(diào)用。另外用原理圖作輸入工具時(shí),可應(yīng)用庫(kù)中的各種宏單元。


    (3)編譯與綜合


    完成自己的設(shè)計(jì)后,就可以點(diǎn)擊設(shè)計(jì)的對(duì)象,然后對(duì) processes of current source框中進(jìn)行操作,雙擊該框中的Generate programming file,若設(shè)計(jì)沒(méi)有錯(cuò)誤,軟件就順序完成Design Entry Utilities 、Synthesize、Implment Design及Generate programming file操作,最后生產(chǎn)可編程的數(shù)據(jù)格式*.bit文件;若有錯(cuò),軟件將會(huì)中斷上面的順序操作,停在出錯(cuò)的那一步,必在狀態(tài)框中顯示出錯(cuò)誤。


    (4)下載編程


    在對(duì)系統(tǒng)設(shè)計(jì)進(jìn)行確認(rèn)無(wú)誤后,把各輸入和輸出端口適配到期間的引腳,這個(gè)步驟可由軟件自動(dòng)完成,也可手工完成,生成ucf文件,此時(shí)引腳就鎖定了。若要下載編程的話,雙擊Generate programming file中的configure device(iMPACT),就會(huì)出現(xiàn)iMPACT界面,可以選擇通過(guò)并口下載,也可以通過(guò)JTAG下載。若下載編程成功的話,就可以驗(yàn)證設(shè)計(jì)的正確性及合理性。


    3 DSP串口說(shuō)明及其配置


    在TMS320C3X系列DSP結(jié)構(gòu)中,只有一個(gè)串口,包括串口接收三個(gè)管腳DR0、CLKR0、 FSR0和串口發(fā)送三個(gè)管腳DX0、CLKX0、FSX0。串口的配置是通過(guò)串口全局控制寄存器、FSR0/DR0/CLKR0控制寄存器、 FSX0/DX0/CLKX0控制寄存器來(lái)實(shí)現(xiàn)的。下面就串口的管腳介紹如下:


    (1)DR0(接收數(shù)據(jù)口):數(shù)據(jù)通過(guò)此口輸入到DSP;
    (2)CLKR0(接收時(shí)鐘口):它是用來(lái)接收外部時(shí)鐘信號(hào),該時(shí)鐘信號(hào)可接收數(shù)據(jù)口的數(shù)據(jù)移入接收寄存器中;
    (3)FSR0(接收幀同步口):用來(lái)作為接收外部幀同步脈沖信號(hào),標(biāo)志數(shù)據(jù)接收的開始;
    (4)DX0(數(shù)據(jù)發(fā)送口):通過(guò)該口把發(fā)送移位寄存器中的數(shù)據(jù)串行發(fā)送出去;
    (5)CLKX0(發(fā)送時(shí)鐘口):該腳把發(fā)送移位寄存器中的數(shù)據(jù)通過(guò)發(fā)送時(shí)鐘信號(hào)將數(shù)據(jù)發(fā)送到數(shù)據(jù)發(fā)送口。該串口可配置成使用內(nèi)部時(shí)鐘或外部時(shí)鐘,若為內(nèi)部時(shí)鐘,此端口為輸出口;若為外部時(shí)鐘,此端口為輸入口;
    (6) FSX0(發(fā)送幀同步口):該端口的信號(hào)可作為發(fā)送數(shù)據(jù)開始的標(biāo)志,它可由內(nèi)部時(shí)鐘產(chǎn)生,此時(shí)該端口作為輸出腳;也可有外部時(shí)鐘產(chǎn)生,此時(shí)該端口作為輸入腳。


    串口相應(yīng)控制寄存器的配置:


    串口全局控制寄存器(0X808040):0E140040H,
    FSR0/DR0/CLKR0控制寄存器(0X808042):00000111H,
    FSX0/DX0/CLKX0控制寄存器(0X808043):00000111H,


    定時(shí)器0相應(yīng)寄存器配置:
 
    定時(shí)器0全局控制寄存器(0X808020):000003C1H
    定時(shí)器0周期控制寄存器(0X808028):00000068H


    4 硬件原理


    這里所選擇的DSP芯片是TMS320C30,所用晶振為25MHz,DSP的串口(如圖1)與UART邏輯相連,其中UART邏輯包括發(fā)送邏輯和接收邏輯。所說(shuō)的硬件實(shí)現(xiàn)DSP的UART,就是指UART邏輯部分的實(shí)現(xiàn)是由FPGA來(lái)實(shí)現(xiàn)的。FPGA接收DSP串口的三個(gè)信號(hào)CLKX0、DX0、 FSR0,并對(duì)其進(jìn)行譯碼,輸出串行數(shù)據(jù),然后通過(guò)RS232接口把數(shù)據(jù)送到PC機(jī);另外PC機(jī)下行發(fā)命令,通過(guò)RS232傳送到UART邏輯中的接收邏輯中,并對(duì)其進(jìn)行譯碼,產(chǎn)生下面三個(gè)信號(hào)CLKR0、DR0、FSR0,把這三個(gè)信號(hào)通過(guò)DSP的串口送給DSP,從而完成UART的通信。系統(tǒng)中所用的 FPGA芯片型號(hào)為XC4010XL-TQ144-9 ,它可以用JTAG下載編程,也可以用并口,通過(guò)目標(biāo)板進(jìn)行從串行模式下載編程。


    5 具體實(shí)現(xiàn)


    在設(shè)計(jì)UART的接收和發(fā)送硬件邏輯部分都是在FPGA中完成的,由于Xilinx ISE4.0開發(fā)系統(tǒng),即可用VHDL語(yǔ)言作為輸入,也可用原理圖作為輸入。根據(jù)系統(tǒng)的實(shí)現(xiàn)來(lái)說(shuō),本部分用原理圖設(shè)計(jì)更簡(jiǎn)潔,邏輯關(guān)系更清楚。對(duì)于整個(gè)系統(tǒng)來(lái)說(shuō),波特率為9600bps,RS232傳輸?shù)臄?shù)據(jù)格式為1位起始位、1位停止位和8位數(shù)據(jù)位。下面就DSP的UART的接收和發(fā)送兩部分邏輯分別作一介紹。
 
    5.1 串口發(fā)送邏輯部分


    發(fā)送部分硬件邏輯原理圖如圖2,工作原理如下:這部分的時(shí)鐘是由DSP的H3提供。DSP把移位寄存器中的數(shù)據(jù)通過(guò)串口發(fā)送數(shù)據(jù)口(DX0)發(fā)送到FPGA,FPGA接收到數(shù)據(jù),同時(shí)也接收到DSP串口輸出幀同步信號(hào)(FSX0)及串口輸出時(shí)鐘信號(hào)(CLKX0)。串口數(shù)據(jù)在H3的作用下經(jīng)過(guò)一個(gè)D觸發(fā)器,然后與停止位相或,再通過(guò)一個(gè)有清零和片選的D觸發(fā)器,在H3作為時(shí)鐘的情況下輸出串口數(shù)據(jù) DOUT送到RS232口,按照傳輸10位數(shù)據(jù)的格式送到PC機(jī);UART邏輯中的起始位是由DSP的FSX腳提供的信號(hào)通過(guò)邏輯關(guān)系實(shí)現(xiàn)的,當(dāng)8位數(shù)據(jù)輸出完后,就由硬件邏輯產(chǎn)生一個(gè)停止位。DSP的串口作為輸出時(shí),發(fā)送串口配置為爆發(fā)模式。


    5.2 串口接收邏輯部分


    接收部分的工作原理如下:由RS232出來(lái)的數(shù)據(jù)DIN輸入到FPGA中,DIN經(jīng)過(guò)FPGA中的D觸發(fā)器,轉(zhuǎn)換成DSP接收的數(shù)據(jù)DR0。對(duì)DSP來(lái)說(shuō),把它的定時(shí)器設(shè)置為104uS的周期信號(hào),即相應(yīng)的波特率為9600bps,在每一位數(shù)據(jù)到來(lái)時(shí),把它存到8位移位寄存器中。圖3中需要兩種時(shí)鐘,一個(gè)為H3,一個(gè)為H2 (H3/2),通過(guò)一定的邏輯關(guān)系,產(chǎn)生DSP所需的接收時(shí)鐘CLKR0信號(hào)和接收幀同步FSR0信號(hào)。DSP通過(guò)串口接收數(shù)據(jù)時(shí),設(shè)置的速率為H3的 1/8,并且DSP的串口設(shè)置為固定的爆發(fā)模式。


    6 結(jié)束語(yǔ)


    應(yīng)用FPGA技術(shù)實(shí)現(xiàn)DSP的UART,是DSP與外部設(shè)備之間通信的一個(gè)亮點(diǎn)。在系統(tǒng)的設(shè)計(jì)中,通信是必不可少的一部分,而在不增加芯片的情況下,FPGA就可完成DSP的UART。通過(guò)實(shí)驗(yàn)和仿真,系統(tǒng)可靠工作,很好的實(shí)現(xiàn)了DSP與PC機(jī)的UART。

[1]



  • 上一篇: 基于C8051F320 USB接口的數(shù)據(jù)采集存儲(chǔ)電路的設(shè)計(jì)
  • 下一篇: 新基于AT89C52的家用電話控制和報(bào)警系統(tǒng)的設(shè)計(jì)
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1