《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > DSP與慢速設(shè)備接口的實(shí)現(xiàn)

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

2008-09-03
作者:傅曉云 杜經(jīng)民 李寶仁

  摘? 要: 介紹了DSP與慢速" title="慢速">慢速設(shè)備接口的一種時(shí)序轉(zhuǎn)換方法。通過(guò)該方法,可以解決DSP與傳統(tǒng)輸入輸出設(shè)備" title="輸出設(shè)備">輸出設(shè)備時(shí)序不匹配的問(wèn)題,從而實(shí)現(xiàn)DSP與8080、6800等時(shí)序兼容的或其它慢速讀寫周期的輸入/輸出設(shè)備的直接連接,如液晶顯示模塊" title="液晶顯示模塊">液晶顯示模塊、打印機(jī)、鍵盤等。這種時(shí)序轉(zhuǎn)換方法能使DSP在工業(yè)控制和測(cè)試設(shè)備中獲得更加廣泛的應(yīng)用。

  關(guān)鍵詞: DSP? TMS320F206? 液晶顯示模塊? 時(shí)序匹配

?

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

  為了適應(yīng)較慢的外部存儲(chǔ)器和輸入/輸出設(shè)備,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ì)遇到讀寫周期更慢的輸入/輸出設(shè)備,如液晶顯示模塊、打印機(jī)、鍵盤等。因此,僅通過(guò)軟件編程控制內(nèi)部狀態(tài)等待發(fā)生器是不能實(shí)現(xiàn)輸入/輸出時(shí)序匹配的,必須進(jìn)行外部硬件擴(kuò)展設(shè)計(jì)。

  在DSP與慢速外圍設(shè)備接口設(shè)計(jì)過(guò)程中,通常采用雙CPU的方法,由DSP完成高速數(shù)據(jù)處理和計(jì)算,用普通單片機(jī)(如51系列單片機(jī))實(shí)現(xiàn)系統(tǒng)的輸入/輸出功能。這種方法由于采用了兩種結(jié)構(gòu)不同的CPU,增加了系統(tǒng)的復(fù)雜性,而且接口和調(diào)試難度加大。本文將利用DSP的READY(外部設(shè)備" title="外部設(shè)備">外部設(shè)備準(zhǔn)備就緒)引腳,通過(guò)硬件擴(kuò)展實(shí)現(xiàn)外部狀態(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讀寫時(shí)序

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

?

?

  TMS320F206的讀周期為一個(gè)時(shí)鐘周期(50ns),寫周期為兩個(gè)時(shí)鐘周期。讀、寫操作數(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ī)的外圍芯片的讀寫時(shí)序相匹配。

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

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

?

?

  該液晶模塊的讀寫周期Tcyc最小為1000ns,脈沖寬度Pw最小為450ns,讀寫操作" title="讀寫操作">讀寫操作數(shù)據(jù)保持時(shí)間最小為10ns。如果采用直接連接方式將TMS320F206與該液晶模塊接口,即使采用最大的狀態(tài)等待數(shù)目,DSP的讀寫時(shí)序也不能滿足該液晶模塊的要求。為實(shí)現(xiàn)二者的時(shí)序匹配,本文將給出一種合適的外部硬件等待擴(kuò)展方法,以實(shí)現(xiàn)DSP與液晶模塊的直接讀寫訪問(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)行外部讀寫操作時(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á)到212×50ns,使用者可以根據(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的讀寫信號(hào)相或,產(chǎn)生外部設(shè)備的讀寫控制信號(hào),這樣可以充分保證讀寫操作時(shí)數(shù)據(jù)的保持時(shí)間。該電路所產(chǎn)生的時(shí)序如圖5所示。

?

?

?

  經(jīng)過(guò)以上硬件狀態(tài)等待擴(kuò)展,DSP對(duì)外部設(shè)備讀寫周期達(dá)到1600ns,讀寫操作的數(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為讀寫控制輸入端,“1”為讀操作,“0”為寫操作;E為使能控制輸入端,高電平有效。按圖6的接法,用兩根地址線A8、A9分別與RS、R/W相連,根據(jù)每個(gè)引腳的功能定義,液晶模塊的指令口寫地址為0000H,指令口讀地址為0200H,數(shù)據(jù)口寫地址為0100H,數(shù)據(jù)口讀地址為0300H。DSP對(duì)液晶模塊的訪問(wèn)控制子程序如下:

  lcdcwaddr????? ? .set 0000h???????? ; 指令口寫地址

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

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

  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,[寫地址]?     ; 寫操作

??????????? ???……………………

????????????   ?? call lcddisable

??????????????????  ret

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

  如果外部設(shè)備具有單獨(dú)的讀寫控制引腳,可直接與圖4中的DEV-RD和DEV-WE分別相連,然后將數(shù)據(jù)線與地址線對(duì)應(yīng)連接,就能夠進(jìn)行直接讀寫訪問(wè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)用空間。

?

參考文獻(xiàn)

1 點(diǎn)陣字符型液晶顯示模塊使用手冊(cè). 精電國(guó)際集團(tuán), 2001.7

2 TMS320C2XX數(shù)字信號(hào)處理器用戶指南.武漢力源電子股份有限公司,1998.8

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。