TMS320F2812慢速外設(shè)接口的時(shí)序控制
掃描二維碼
隨時(shí)隨地手機(jī)看文章
TMS320F2812通常能夠?qū)崿F(xiàn)與常用外圍芯片的時(shí)序匹配,如RAM、D/A等;但是,當(dāng)遇到讀、寫周期十分緩慢的輸入/輸出設(shè)備,如液晶顯示模塊、打印機(jī)、鍵盤時(shí),就需要設(shè)計(jì)相應(yīng)的外部硬件等待電路。本文對定點(diǎn)DSP芯片的外部接口時(shí)序進(jìn)行分析和研究;著重探討TMS320F2812與液晶顯示模塊直接連接時(shí)的時(shí)序匹配問題,并提供相關(guān)解決方案。
關(guān)鍵詞 TMS320F2812 慢速外設(shè) LMl9264A 時(shí)序控制
引 言
TMS320F2812(以下簡稱F2812)是美國德州儀器公司(TI公司)推出的C2000家族中最新一代產(chǎn)品。該芯片采用32位操作,大大提高了處理能力,主頻可以工作在150 MHz(時(shí)鐘周期可達(dá)6.67 ns),其先進(jìn)的內(nèi)部和外設(shè)結(jié)構(gòu)使得該處理器主要用于大存儲(chǔ)設(shè)備管理、高性能的控制場合。較之C2000系列的其他產(chǎn)品,該芯片的時(shí)序操作更加靈活、獨(dú)立。為了進(jìn)一步理解F2812和緩慢外設(shè)的接口和設(shè)計(jì)技術(shù),有必要討論該芯片時(shí)序操作的特點(diǎn)。
1 F2812的讀寫時(shí)序特點(diǎn)
在F2812中,對外部器件的讀、寫訪問都是通過外部接口模塊XINTF來實(shí)現(xiàn)的。它類似于C240X的外部接口,但也作了三方面的改進(jìn)。
①原來的TMS320LF240X系列,程序存儲(chǔ)空間、數(shù)據(jù)存儲(chǔ)空間和I/o空間都映射在相同的地址(0000~FFFF),對它們的訪問是通過不同的指令來區(qū)分的;而在F2812中,外部接口模塊分成了5個(gè)固定的存儲(chǔ)映像區(qū)域:XZCS0、XZCSl、XZCS2、XZCS6、XZCS7,可尋址1 MB的片外存儲(chǔ)器空間,具有獨(dú)立的地址。
②F2812的每個(gè)XINTF區(qū)都有一個(gè)片選信號。其中,有地區(qū)域的片選信號在內(nèi)部是“與”在一起的,組成了一個(gè)共享的芯片選擇,比如XZCSo和XZXSl共享一個(gè)片選信號XZCSO、ANDI,XZCS6和XZCS7共享一個(gè)片選信號XZCS6XZCS7.在這種方式下,同一個(gè)外部器件可被連到兩個(gè)區(qū),或者可以用外部譯碼邏輯來區(qū)分這兩個(gè)區(qū)。
③5個(gè)固定存儲(chǔ)映像區(qū)域的每一個(gè)區(qū)還可以分別對等待狀態(tài)數(shù)、讀寫選通信號的建立時(shí)間、激活時(shí)間和保持時(shí)間進(jìn)行編程。
可編程的等待狀態(tài)、芯片選擇和可編程的選通時(shí)間使得該接口與外部存儲(chǔ)器及外設(shè)脫離了聯(lián)系,可以靈活、獨(dú)立地進(jìn)行外部擴(kuò)展。這里,對外部器件進(jìn)行讀、寫訪問的基時(shí)鐘是xINTF內(nèi)部時(shí)鐘xTIMCLK。通過寫XINTF-CNJF2寄存器的XTIMCLK位,可以將該時(shí)鐘配置成與SYSCLK0UT相等和等于SYSCLKOUT的1/2,并且,對任何一個(gè)映射在XINTF區(qū)的外部器件進(jìn)行讀、寫訪問都可劃分為建立、激活和跟蹤三個(gè)階段。可以通過相應(yīng)的XTIMINCO/1/2/6/7寄存器來設(shè)置這三個(gè)階段的周期,使之滿足系統(tǒng)的需要。F2812的讀寫時(shí)序如圖1、2所示。
由圖1、2可知,在建立階段,相應(yīng)XINTF區(qū)的片選信號變?yōu)榈碗娖?,地址有效;默認(rèn)情況下,該階段的周期為最大值——6個(gè)XTIMCLK周期。在激活階段,對外部器件進(jìn)行訪問:在讀訪問時(shí),讀選通信號(XRD)變低并將數(shù)據(jù)鎖入DSP;在寫訪問時(shí),寫使能信號(XWE)變低并將數(shù)據(jù)放置在數(shù)據(jù)總線上。默認(rèn)情況下,該階段的周期為最大值——14個(gè)XTIMCLKK。在跟蹤階段,讀或?qū)戇x通信號變回為高電平,但其地址仍保持有效。默認(rèn)情況下,該階段的周期為最大值——6個(gè)XTIMCLK周期。
由此可得,F(xiàn)2812的讀、寫周期(激活階段)的最大值為14個(gè)XTIMCLK周期。如果將XTIMCLK的頻率設(shè)置為SYSCLKOUT的1/2,則讀、寫周期的最大值為180 ns;并且,其讀、寫操作數(shù)據(jù)的保持時(shí)間最大可以達(dá)到6個(gè)XTIMCLK周期——80 ns。因此,F(xiàn)2812能夠?qū)崿F(xiàn)與常用外圍芯片的時(shí)序匹配,如RAM、D/A等;但是,當(dāng)遇到讀、寫周期十分緩慢的輸入/輸出設(shè)備,如液晶顯示模塊、打印機(jī)、鍵盤時(shí),就需要設(shè)計(jì)相應(yīng)的外部硬件等待電路。
2 液晶顯示模塊的讀寫時(shí)序
以深圳市拓普微公司的LM19264A漢字圖形液晶顯示模塊為例,讀寫時(shí)序如圖3、4所示。
該液晶模塊的使能信號E的周期tcYc最小為1500 ns,使能信號脈沖寬度tWEH、twEL最小為700 ns。在E為高電平時(shí),該液晶模塊處于讀、寫周期。如果采用直接控制方式,即CPU采用總線方式控制液晶模塊,DSP的讀、寫周期最大值為180 ns,而液晶模塊的讀、寫周期,即E的高電平信號,最小為700 ns。DSP的讀、寫時(shí)序不能滿足該液晶模塊的要求。如果采用間接的控制方式,即CPU采用并口方式控制液晶模塊,可以實(shí)現(xiàn)二者的時(shí)序匹配,但會(huì)降低接口效率。顯然,最好的方法就是設(shè)計(jì)相應(yīng)的外部硬件等待電路來擴(kuò)展DSP的讀、寫周期。[!--empirenews.page--]
3 F2812的XREADY信號
F2812通過采樣XREADY信號,可以擴(kuò)展讀、寫訪問的激活階段。因此,可以利用該信號講行硬件展展.從而產(chǎn)生任何數(shù)目的等待狀態(tài)。
在F2812中,對XREADY信號的采樣可以分為同步采樣和異步采樣兩種。同步采樣時(shí),在總的建立+激活周期之前,對XREADY采樣一個(gè)XTIMCLK周期;而異步采樣時(shí),在總的建立+激活周期之前,要對XREADY采樣三個(gè)XTIMCLK周期。可見,在異步采樣方式中,XREADY信號需要保持三個(gè)XTIMCLK周期,不會(huì)因?yàn)閄READY信號在激活周期之前的一個(gè)低電平擾動(dòng)就產(chǎn)生等待狀態(tài),增強(qiáng)了系統(tǒng)的抗擾能力。默認(rèn)情況下,該芯片采用異步采樣方式。
無論是同步采樣還是異步采樣,如果發(fā)現(xiàn)XREADY信號為低,則激活階段擴(kuò)展一個(gè)XTIMCLK周期,在下一個(gè)XTIMCLK周期期間,XREADY再次被采樣。這個(gè)過程一直繼續(xù),直至XREADY采樣為高。因此,可以利用F2812的XREADY信號和相關(guān)的外部讀、寫控制信號,通過硬件擴(kuò)展,與外部設(shè)備進(jìn)行直接的連接訪問。
4 相關(guān)硬件設(shè)計(jì)
4.1 DSP與液晶模塊的直接訪問接口
這里,將液晶模塊映射在DSP的XZCS6區(qū)上,由于制造商已經(jīng)裝配好了液晶顯示驅(qū)動(dòng)和分壓電路,并提供了驅(qū)動(dòng)電路接口,使得液晶顯示模塊和微處理器的接口十分方便。該模塊共有13條信號線。RS是寄存器選擇,低電平選擇指令寄存器,高電平選擇數(shù)據(jù)寄存器。R/w是讀寫控制端,低電平寫顯示模塊,高電平讀顯示模塊。CSA、CSB為驅(qū)動(dòng)器片選信號線,可以選擇相應(yīng)的顯示區(qū)域。E為允許輸入信號線(數(shù)據(jù)讀、寫操作允許信號),高電平有效。DB0~DB7為數(shù)據(jù)線。功能框圖如圖5所示。
在實(shí)際電路設(shè)計(jì)中還需注意,由于該液晶顯示模塊是5 V設(shè)備,所以在連接控制線、數(shù)據(jù)線時(shí)需要加電平隔離和轉(zhuǎn)換器件。可以使用74LS245芯片。
4.2基于CPLD的硬件等待電路
由于DSP芯片需要通過XREADY信號來延長讀、寫周期,使之與液晶顯示模塊的E的高電平信號相匹配,所以設(shè)計(jì)了外部硬件等待電路。該電路是通過CPLD芯片EPM7064S來實(shí)現(xiàn)的。EPM7064S是Ahera公司的MAX7000系列產(chǎn)品。它可以很容易地實(shí)現(xiàn)地址譯碼、等待時(shí)序的插入,并且是通過編寫程序來實(shí)現(xiàn)各種邏輯的,容易修改,可移植性強(qiáng),便于調(diào)試。其中,它的輸入時(shí)鐘為TMS320F2812的輸出信號XCLKOUT。
相關(guān)VHDL語言描述如下:
[!--empirenews.page--]
擴(kuò)展了32個(gè)XCLKOUT周期,等待狀態(tài)為853 ns,滿足液晶模塊的時(shí)序要求;但在實(shí)際應(yīng)用中,由于液晶模塊的顯示速度過快,顯示效果不是很好。這里,由于采用了CPLD芯片,可以修改VHDL程序,將循環(huán)次數(shù)由32次增加到146次,從而可以很方便地將等待狀態(tài)延長為4 μS左右,實(shí)際效果也滿足了要求。
5 DSP對液晶模塊連續(xù)的讀寫訪問
當(dāng)F2812對液晶顯示模塊進(jìn)行連續(xù)的讀、寫操作時(shí),兩個(gè)連續(xù)的讀、寫周期(激活階段)之間的時(shí)間間隔為上一個(gè)操作的跟蹤階段和這一個(gè)操作的建立階段,最大為12個(gè)XTIMCLK周期(156 ns),不能延時(shí)。而由液晶的時(shí)序圖可知,對液晶的連續(xù)兩次操作的時(shí)間間隔,即使能信號E為低電平的時(shí)問,最小為700 ns??梢姡瑑烧咧g時(shí)序不能匹配。于是,在連續(xù)兩個(gè)命令之間加人了延時(shí)語句。雖然這種方法較之硬件實(shí)現(xiàn)效率要低,但完全可以滿足系統(tǒng)的設(shè)計(jì)要求。
6 結(jié)論
F2812的外部接口設(shè)計(jì)較之已有的DSP更加獨(dú)立、靈活。本文給出的它與外部慢速設(shè)備時(shí)序匹配的方法,簡單清楚、訪問直接、控制編程容易,有助于深入了解F2812芯片的時(shí)序特點(diǎn),進(jìn)一步方便了該芯片的推廣使用。