新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DSP與慢速設(shè)備接口的實(shí)現(xiàn)

DSP與慢速設(shè)備接口的實(shí)現(xiàn)

作者: 時(shí)間:2008-09-04 來(lái)源:網(wǎng)絡(luò) 收藏
是一種高性能的數(shù)字信號(hào)處理器。由于其具有快速的計(jì)算能力和強(qiáng)大的信息處理能力,因此被廣泛地應(yīng)用到工業(yè)自動(dòng)化、國(guó)防科研等領(lǐng)域中。與常規(guī)單片機(jī)相比,的內(nèi)部結(jié)構(gòu)和時(shí)序發(fā)生了很大的變化。所以單片機(jī)適用的芯片,并不一定適用。對(duì)于非常熟悉單片機(jī)電路的設(shè)計(jì)人員,在進(jìn)行DSP電路設(shè)計(jì)時(shí),應(yīng)特別注意芯片的選型和時(shí)序的搭配。尤其在處理DSP與或器件時(shí),正確的時(shí)序搭配是至關(guān)重要的。

  為了適應(yīng)較慢的外部存儲(chǔ)器和輸入/輸出,DSP配備了軟件可編程的等待狀態(tài)發(fā)生器,可以將外部總線周期擴(kuò)展到數(shù)個(gè)機(jī)器周期。由于受硬件條件的限制,這種擴(kuò)展通常也是有限的,如C54XX系列的DSP最多只能擴(kuò)展到14個(gè)機(jī)器周期,C2XX系列的DSP最多只能擴(kuò)展到7個(gè)機(jī)器周期。但在實(shí)際應(yīng)用過(guò)程中,經(jīng)常會(huì)遇到讀寫(xiě)周期更慢的輸入/輸出,如液晶顯示模塊、打印機(jī)、鍵盤(pán)等。因此,僅通過(guò)軟件編程控制內(nèi)部狀態(tài)等待發(fā)生器是不能輸入/輸出時(shí)序匹配的,必須進(jìn)行外部硬件擴(kuò)展設(shè)計(jì)。

  在DSP與外圍設(shè)備設(shè)計(jì)過(guò)程中,通常采用雙CPU的方法,由DSP完成高速數(shù)據(jù)處理和計(jì)算,用普通單片機(jī)(如51系列單片機(jī))系統(tǒng)的輸入/輸出功能。這種方法由于采用了兩種結(jié)構(gòu)不同的CPU,增加了系統(tǒng)的復(fù)雜性,而且接口和調(diào)試難度加大。本文將利用DSP的READY(外部設(shè)備準(zhǔn)備就緒)引腳,通過(guò)硬件擴(kuò)展外部狀態(tài)自動(dòng)等待,從而使DSP與輸入/輸出設(shè)備能直接連接以實(shí)現(xiàn)訪問(wèn)的時(shí)序匹配。這種方法接口容易,硬件擴(kuò)展電路并不復(fù)雜,而且內(nèi)、外等待狀態(tài)結(jié)合起來(lái)使用,可產(chǎn)生任何數(shù)目的等待狀態(tài),甚至可以將外部硬件等待狀態(tài)設(shè)計(jì)為受控方式,只在需要的時(shí)候啟動(dòng)外部等待狀態(tài)。這樣,使用的時(shí)候就會(huì)更加靈活。

1 DSP的I/O讀寫(xiě)時(shí)序

  現(xiàn)以TMS320F206 DSP芯片為例進(jìn)行介紹。其時(shí)鐘頻率設(shè)為20MHz,它的外部讀寫(xiě)時(shí)序如圖1所示。

  TMS320F206的讀周期為一個(gè)時(shí)鐘周期(50ns),寫(xiě)周期為兩個(gè)時(shí)鐘周期。讀、寫(xiě)操作數(shù)據(jù)的保持時(shí)間T1、T2只有幾個(gè)納秒。內(nèi)部可編程等待狀態(tài)發(fā)生器最多只能擴(kuò)展到等待7個(gè)時(shí)鐘周期,即350ns。利用內(nèi)部狀態(tài)等待,只能實(shí)現(xiàn)DSP與常用單片機(jī)的外圍芯片的讀寫(xiě)時(shí)序相匹配。

2 慢速設(shè)備的讀寫(xiě)時(shí)序

  現(xiàn)以MDL(S)16465字符液晶顯示模塊為例進(jìn)行介紹。其讀寫(xiě)時(shí)序如圖2和圖3所示。

  該液晶模塊的讀寫(xiě)周期Tcyc最小為1000ns,脈沖寬度Pw最小為450ns,讀寫(xiě)操作數(shù)據(jù)保持時(shí)間最小為10ns。如果采用直接連接方式將TMS320F206與該液晶模塊接口,即使采用最大的狀態(tài)等待數(shù)目,DSP的讀寫(xiě)時(shí)序也不能滿足該液晶模塊的要求。為實(shí)現(xiàn)二者的時(shí)序匹配,本文將給出一種合適的外部硬件等待擴(kuò)展方法,以實(shí)現(xiàn)DSP與液晶模塊的直接讀寫(xiě)訪問(wèn)控制。

3 DSP的READY信號(hào)

  TMS320F206提供兩種狀態(tài)等待選項(xiàng),一種是片內(nèi)狀態(tài)等待產(chǎn)生器,可以實(shí)現(xiàn)有限的可編程狀態(tài)等待;另一種是READY信號(hào),利用它可進(jìn)行硬件擴(kuò)展,從片外產(chǎn)生任何數(shù)目的狀態(tài)等待。

  DSP在進(jìn)行外部讀寫(xiě)操作時(shí),如果READY引腳信號(hào)為低電平,DSP將等待一個(gè)時(shí)鐘周期后再次檢查READY信號(hào)。在READY引腳被驅(qū)動(dòng)至高電平之前,程序處于等待狀態(tài),將不會(huì)繼續(xù)往下執(zhí)行。如果不使用READY信號(hào),DSP在進(jìn)行外部訪問(wèn)期間內(nèi),READY應(yīng)始終保持高電平。

  利用DSP的READY信號(hào)和相關(guān)外部訪問(wèn)控制信號(hào),通過(guò)硬件擴(kuò)展,可以實(shí)現(xiàn)外部自動(dòng)狀態(tài)等待,從而使DSP能夠與慢速外部設(shè)備進(jìn)行直接連接訪問(wèn)。

4 DSP與慢速外部設(shè)備的直接訪問(wèn)接口

  外部狀態(tài)等待硬件擴(kuò)展電路采用一片12級(jí)的二進(jìn)制波紋計(jì)數(shù)器74HC4040來(lái)實(shí)現(xiàn),該芯片每一級(jí)的輸出信號(hào)的頻率為前一級(jí)的一半。將TMS320F206的時(shí)鐘輸出信號(hào)CLKOUT1作為74HC4040的輸入時(shí)鐘,如果CLKOUT1為20MHz,那么最大等待時(shí)間可以達(dá)到21250ns,使用者可以根據(jù)外部設(shè)備的時(shí)序需要選用74HC4040的不同輸出引腳進(jìn)行等待控制。由于輸入時(shí)鐘的頻率較高,一般的CD4040或MC14040芯片響應(yīng)速度不夠快,至少應(yīng)選用74HC4040或響應(yīng)速度更快的芯片。

  自動(dòng)硬件等待擴(kuò)展電路如圖4所示。選用74HC4040的Q5腳輸出作為延時(shí)等待控制,等待時(shí)間為1600ns。將Q4腳輸出信號(hào)分別與DSP的讀寫(xiě)信號(hào)相或,產(chǎn)生外部設(shè)備的讀寫(xiě)控制信號(hào),這樣可以充分保證讀寫(xiě)操作時(shí)數(shù)據(jù)的保持時(shí)間。該電路所產(chǎn)生的時(shí)序如圖5所示。

  經(jīng)過(guò)以上硬件狀態(tài)等待擴(kuò)展,DSP對(duì)外部設(shè)備讀寫(xiě)周期達(dá)到1600ns,讀寫(xiě)操作的數(shù)據(jù)保持時(shí)間大于20ns,滿足液晶模塊的時(shí)序要求。此外,DSP在進(jìn)行內(nèi)部程序和數(shù)據(jù)訪問(wèn)時(shí),READY始終為高電平,不影響DSP的內(nèi)部運(yùn)行速度。應(yīng)用該電路,DSP與MDL(S)16465液晶模塊的直接訪問(wèn)連接如圖6所示。

  RS為液晶模塊的數(shù)據(jù)指令控制輸入端,“1”表示數(shù)據(jù),“0”表示指令;R/W為讀寫(xiě)控制輸入端,“1”為讀操作,“0”為寫(xiě)操作;E為使能控制輸入端,高電平有效。按圖6的接法,用兩根地址線A8、A9分別與RS、R/W相連,根據(jù)每個(gè)引腳的功能定義,液晶模塊的指令口寫(xiě)地址為0000H,指令口讀地址為0200H,數(shù)據(jù)口寫(xiě)地址為0100H,數(shù)據(jù)口讀地址為0300H。DSP對(duì)液晶模塊的訪問(wèn)控制子程序如下:

  lcdcwaddr .set 0000h ; 指令口寫(xiě)地址

  lcdcraddr .set 0200h   ; 指令口讀地址

  lcddwaddr .set 0100h; 數(shù)據(jù)口寫(xiě)地址

  lcddraddr .set 0300h   ; 數(shù)據(jù)口讀地址

  lcdenable: splk #6ff2h,60h     ;io1=1

out 60h,iosr    ;lcd enabled

ret

  lcddisable: splk #6ff0h,60h; io1=0

out 60h,iosr; lcd disabled

ret

  lcdrw:call lcdenable

in 60h,[讀地址]   ; 讀操作

      ……………………

      out 61h,[寫(xiě)地址]     ; 寫(xiě)操作

……………………

    call lcddisable

 ret

  利用TMS320F206的IO1作為讀寫(xiě)使能控制信號(hào),調(diào)用LCDENABLE和LCDDISABLE兩個(gè)子程序打開(kāi)和關(guān)閉對(duì)液晶模塊的訪問(wèn)功能。除了需要調(diào)用兩個(gè)簡(jiǎn)單的控制子函數(shù)以外,讀寫(xiě)操作分別由IN和OUT兩條指令完成,實(shí)現(xiàn)對(duì)該液晶模塊的直接讀寫(xiě)訪問(wèn)。由于該液晶模塊沒(méi)有單獨(dú)的讀寫(xiě)控制引腳,訪問(wèn)控制要求比較特殊, 所以只能按照?qǐng)D6的方式進(jìn)行連接。該液晶模塊的控制時(shí)序可參見(jiàn)參考文獻(xiàn)[1]。

  如果外部設(shè)備具有單獨(dú)的讀寫(xiě)控制引腳,可直接與圖4中的DEV-RD和DEV-WE分別相連,然后將數(shù)據(jù)線與地址線對(duì)應(yīng)連接,就能夠進(jìn)行直接讀寫(xiě)訪問(wèn)控制。作者在處理鍵盤(pán)輸入和打印機(jī)輸出接口時(shí),就是采用這種連接方式。使用結(jié)果表明,訪問(wèn)和控制都十分可靠。

  由于DSP的應(yīng)用日益廣泛,作為一個(gè)完整的控制系統(tǒng)和測(cè)試設(shè)備,參數(shù)設(shè)置、結(jié)果顯示等基本的輸入/輸出功能是必不可少的。因此,DSP與慢速設(shè)備的接口將是各種科研和開(kāi)發(fā)中經(jīng)常遇到的問(wèn)題。本文給出的硬件接口方法能夠?qū)崿F(xiàn)DSP的外部訪問(wèn)自動(dòng)狀態(tài)等待,使高速的DSP芯片與傳統(tǒng)的慢速輸入輸出設(shè)備融入一個(gè)系統(tǒng),不僅有效地解決了DSP與各種慢速設(shè)備訪問(wèn)時(shí)序的匹配問(wèn)題,而且硬件電路設(shè)計(jì)簡(jiǎn)單、訪問(wèn)直接、控制編程容易,進(jìn)一步拓展了DSP在工業(yè)自動(dòng)控制和測(cè)試設(shè)備中的應(yīng)用空間。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉