當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]用FPGA實(shí)現(xiàn)DSP與液晶顯示器的快速接口

  隨著器件集成工藝的發(fā)展和Soc器件的出現(xiàn),現(xiàn)在的數(shù)字系統(tǒng)正在越來越多地采用可編程器件設(shè)計(jì)。這樣,不僅開發(fā)周期短,而且在價(jià)格和使用難易度上也顯示了很大的優(yōu)勢(shì)。更為重要的是,還能利用器件的現(xiàn)場(chǎng)可編程特性,根據(jù)應(yīng)用的要求對(duì)器件進(jìn)行動(dòng)態(tài)配置,簡(jiǎn)便易行地完成功能的添加或變化。

  在高速的數(shù)字信號(hào)處理系統(tǒng)中,要涉及到大量的計(jì)算,為了提高運(yùn)算速度,正大量使用DSP器件。目前的可編程器件,其時(shí)鐘頻率可以很高,在高速數(shù)字信號(hào)處理系統(tǒng)中將發(fā)揮越來越大的作用。因此,DSP+FPGA的方案正越來越多地被電子工程師們采用。

  在很多的實(shí)際數(shù)字系統(tǒng)中,往往需要良好的用戶界面,其中LCD是被大量采用的顯示器件。由于LCD是典型的慢速設(shè)備(相對(duì)于DSP來講),在與高速微處理器接口時(shí),會(huì)耗費(fèi)大量時(shí)間,這在高速系統(tǒng)設(shè)計(jì)中是不允許的。如果DSP有不太富裕的處理余量,如何利用它對(duì)LCD完成控制呢??jī)H僅在兩者之間加入鎖存器之類的簡(jiǎn)單接口電路,往往不能對(duì)LCD完成控制。不過,有了FPGA,就可以在不增加成本的情況下,在DSP和LCD之間設(shè)計(jì)一條雙向的快速通道。

  1 DSP和LCD的時(shí)序

  TI公司是DSP在全球的主要供應(yīng)商,其低價(jià)位的TMS320VC54x系列DSP深受廣大電子工程師的青睞。下面以TMS320VC5416為例介紹DSP的時(shí)序。TMS320VC5416將尋址范圍分為存儲(chǔ)器空間、程序空間和I/O空間。其中,對(duì)I/O空間的操作由地址線、數(shù)據(jù)線和三根信號(hào)線IOSTRB、R/W和IS來完成,其時(shí)序圖如圖1所示。

  讀操作和寫操作由R/W信號(hào)線上的高低電平?jīng)Q定。如果不采用外部插入等待周期的方法,僅靠?jī)?nèi)部的等待周期設(shè)置寄存器,訪問外部I/O空間時(shí)最多可以插入14個(gè)等待周期。如果DSP運(yùn)行在100MHz的主頻上(實(shí)際上TMS320VC16可以運(yùn)行在最高160MHz的主頻上),也只有0.14μs。這對(duì)于LCD來說來遠(yuǎn)遠(yuǎn)不夠的。


  常見的192×64點(diǎn)陣的LCD(FM19264)實(shí)際上是由3塊獨(dú)立的64×64點(diǎn)陣LCD構(gòu)成的,共享地址線和數(shù)據(jù)線,可由CS1、CS2和CS3分別選中。每小塊LCD都有各自獨(dú)立的指令寄存器和數(shù)據(jù)寄存器,由控制線D/I上的高低電平選擇。數(shù)據(jù)的鎖存或出現(xiàn)在數(shù)據(jù)線上由E信號(hào)決定。LCD主要控制管腳的功能如表1所示。對(duì)LCD寫操作的時(shí)序圖如圖2所示。LCD的每次讀寫操作最少要1μs。如果能使DSP對(duì)LCD的訪問象對(duì)高速設(shè)備訪問一樣,就能夠最大限度地減小DSP資源的浪費(fèi),并且能夠減少系統(tǒng)的復(fù)雜性,這就需要在FPGA中添加一個(gè)DSP與LCD之間的高速雙向通道。

[!--empirenews.page--]

表1 LCD主要控制管腳功能

  對(duì)每塊LCD的控制,是通過操作指令寄存器和數(shù)據(jù)寄存器實(shí)現(xiàn)的。在屏幕指定位置寫入數(shù)據(jù),要分三步(①寫入行地址,②寫入列地址,③寫入數(shù)據(jù))才能完成,不但耗時(shí)而且增加了軟件編程的復(fù)雜程度。如果能夠?qū)⒅噶詈蛿?shù)據(jù)合在一起作為一條指令,那么設(shè)計(jì)一套簡(jiǎn)單的指令譯碼電路執(zhí)行電路就可完成這項(xiàng)任務(wù)。

  2 硬件電路設(shè)計(jì)

  硬件框圖如圖3所示。LCD的原始控制指令如表2所示。

表2 LCD原始控制指令


  LCD的顯示畫面按8行為一頁的方式進(jìn)行劃分,共64行分成8頁。LCD具有列循環(huán)尋址功能,如果第一步設(shè)定了頁地址和列地址,那么以后每次向LCD寫入顯示數(shù)據(jù),列地址計(jì)數(shù)器就自動(dòng)加一。除非再設(shè)定列地址,否則列地址就一直累加下去,直到63。這樣就簡(jiǎn)化了寫入工作。 [!--empirenews.page--]

  考慮到實(shí)際應(yīng)用方便,可把一些常用的操作按指令的方式編碼。所得到的DSP控制指令如下:

控制顯示器開關(guān):0010 0000 1111 111x

指定顯示起始行:0100 0000 11xx xxxx

指定列地址和頁地址:0110 0yyy yyyy yxxxy:

列地址(0~191)x:

行地址寫入數(shù)據(jù):1000 0000 xxxx xxxx

讀顯示器狀態(tài):1010 0000 0000 0000

讀顯示數(shù)據(jù):1100 0000 0000 0000

  框圖中微指令ROM在接口控制中起著決定性的作用,每條指令的執(zhí)行都被看作一系列單步時(shí)序操作的集合。如果從ROM的某一地址開始依次讀出ROM里的數(shù)據(jù),那么在每一個(gè)數(shù)據(jù)位上就會(huì)出現(xiàn)隨時(shí)間變化的電平跳變。這樣就可以用它作為控制信號(hào)進(jìn)行控制操作。由于ROM是并行輸出的,如果用不同的數(shù)據(jù)位代表不同的控制信號(hào)線,就能很容量地實(shí)現(xiàn)各個(gè)信號(hào)線之間的同步操作。這樣就能很容易形成時(shí)序圖中的時(shí)序邏輯,而且擴(kuò)展方便。在上述的指令表示中,通過對(duì)高3位進(jìn)行譯碼,可以得到ROM尋址時(shí)的起始地址。ROM各個(gè)數(shù)據(jù)位的含義如下:

 

  其中,低七位是控制LCD的接口線,FREE是微程序執(zhí)行完標(biāo)志,每條指令所對(duì)應(yīng)的微程序分為招待狀態(tài)(有多條微指令,FREE位為0)和閑置狀態(tài)(一條指令,FREE位為1)。當(dāng)指令執(zhí)行狀態(tài)機(jī)檢測(cè)到FREE位的上跳沿時(shí),加載下一條指令。LD是數(shù)字寄存器從DSP獲得數(shù)據(jù)時(shí)的加載信號(hào),微程序執(zhí)行過程中,在某些指令執(zhí)行時(shí)需要加載數(shù)據(jù),可由該信號(hào)完成。RD是數(shù)據(jù)寄存器從LCD讀入數(shù)據(jù)的加載信號(hào),主要完成從LCD讀入數(shù)據(jù)。

  取指控制邏輯主要功能是根據(jù)FIFO的狀態(tài)決定是否寫入新的指令以及根據(jù)執(zhí)行狀態(tài)機(jī)的狀態(tài)讀入新的指令,填寫狀態(tài)寄存器,給出中斷信號(hào)。


  根據(jù)上述硬件設(shè)計(jì),DSP的軟件設(shè)計(jì)就大大簡(jiǎn)化了。以寫入數(shù)據(jù)為例,在寫入數(shù)據(jù)前先查詢一下接口模塊的狀態(tài),如果可以寫入就寫入數(shù)據(jù);否則保持現(xiàn)有數(shù)據(jù)指針,等待下次寫入。一讀一寫兩次外部I/O操作,如果按7個(gè)等待周期、主頻100MHz計(jì)算,只有140ns,加上判斷所需時(shí)間,200ns內(nèi)就可以完成寫入數(shù)據(jù)。這里,7個(gè)等待周期是考慮到系統(tǒng)內(nèi)還其它器件。如果只是對(duì)該接口模塊操作,兩三個(gè)等待周期是沒有問題的。這樣,100ns內(nèi)就可完成寫入數(shù)據(jù)。

  在實(shí)際應(yīng)用中,采用上述接口控制模塊來完成LCD控制大大減輕了DSP的壓力。推而廣泛,這種方法還可以應(yīng)用在其它慢速設(shè)備上,如打印機(jī)等,對(duì)于提高系統(tǒng)效率是比較有效的。需要指出的是,盡管這種方法能夠建立雙向快速通道,卻是以占用可編程器件有限的資源為代價(jià)的。但是隨著目前可編程器件容量的日益擴(kuò)大,這個(gè)問題已不是很突出的了。
 

 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉