LCD正在迅速成為汽車內的標準部件。隨著LCD技術的發展,迫切需要采用更好的顯示圖形內容控制和產生方法。傳統上,低成本汽車信息娛樂應用采用基于字符的LCD和真空熒光(VF)顯示屏,而低成本彩色薄膜晶體管(TFT)技術很快成為最突出的選擇方案,但在現有的低成本應用體系結構中采用彩色TFT有很大的難度。大部分低成本平臺沒有足夠的處理帶寬,特別是缺少帶有LCD控制器的處理器來控制并驅動彩色TFT LCD。此外,大部分現有的體系結構并沒有足夠的動態和非易失存儲器來存儲LCD需要的圖形內容。更復雜的設計問題是產生并管理圖形內容或者圖形用戶界面(GUI)時低效的設計過程,而現在可以通過彩色TFT LCD來解決這些問題。一般而言,如果沒有合適的設計資源,很難在硬件上實現LED背光驅動器、觸摸面板控制以及TFT控制所需要的大量I/O,現在這些難題有了解決方法,即,名為Thomas II電路板(圖1)的模塊化擴展平臺,它含有低成本Altera Cyclone III FPGA和Nios II嵌入式處理器。使用這一平臺,汽車電子設計人員很容易在現有系統體系結構中加入彩色TFT,開發低成本智能顯示模塊。 圖1 Thomas II演示平臺 模塊化擴展概念的內涵 模塊化擴展設計概念基于Thomas II電路板,它是由Momiji Design LLC和Altera公司聯合開發的。設計圍繞低成本Cyclone III FPGA (EP3C10或者EP3C5)展開,這一器件采用了引腳數量較少的E144 QFP封裝,在4層PCB上就能夠輕松完成布板。在實際應用中,Thomas II設計(圖2所示)可以用作單獨的模塊,具有完整的電源供電和支持外設,也可以集成到現有設計結構中。 圖2 Thomas II設計結構圖 Nios II嵌入式處理器是體系結構的核心,同時用于系統控制和圖形生成。采用嵌入式處理器后,系統可以單獨工作,也可以作為現有微控制器單元(MCU)的協處理器,因此,Thomas II設計可以實現低成本信息娛樂設計的模塊化擴展功能。通過一個簡單的UART,FPGA成為系統的圖形顯示控制器。它管理并控制所有的圖形內容產生和處理任務,從而把這些任務從主機MCU中分擔出來。任何串行或者并行通信接口,甚至是定制或者專用標準都很容易替代FPGA設計中的UART模塊。例如,通常用于實現VF或者字符LCD的通信協議都可以重新用于控制基于Thomas II概念的TFT。最吸引人的特性是主機體系結構和系統設計能夠基本保持不變,如圖3所示。 圖3 設計重用 一次硬件設計實現多款產品 不改動或者盡量少改動系統意味著同時節省了硬件和軟件資源。借助Thomas II概念,設計人員可以針對多款產品使用相同的核心硬件。根據產品需求來更新或者改變GUI,而不需要修改或者更新核心系統軟件。而且,還可以根據應用需求來調整LCD分辨率和底層圖形FPGA中的LCD控制器設計很容易適應各種標準和定制LCD分辨率(請參考圖4)。它還能夠滿足雙視角、多視角和其他非標準LCD格式。FPGA中實現LCD控制器的內在優勢是它可以定制或者適應LCD需要的數據和時序格式。 圖4 應用在WQVGA和QVGA LCD上的Thomas II電路板 注釋:圖像版權Disney/Pixar,得到其許可。 LCD控制器模塊是多層LCD控制器,含有兩個16位彩色圖像層和一個alpha層。每一層由單獨的DMA主機生成并進行控制。這樣,可以有效地劃分基于外部DRAM的幀緩沖。實質上,每個DMA主機在需要數據時讀取幀緩沖。這使得LCD控制器模塊能夠讀取外部存儲器中存儲的任意幀分辨率或者圖像尺寸。每一層主機讀取存儲器后,LCD控制器模塊把層組合(或者平滑)成一個組合幀,然后將其輸出至LCD。LCD控制器模塊組合了層之后,每一層都可以選擇組合alpha層或者“透明層”。Alpha層支持實現透明的覆蓋層,或者表面與下面層內容相混合。此外,每一層都可以完全打開或者關斷,根據需要來激活或者去激活每一層。這一概念的一個例子是視頻采集層上菜單所采用的覆蓋圖。 觸摸面板控制器簡化了和用戶的交互 為實現和用戶的交互,Thomas II設計還在FPGA中采用了觸摸面板控制器。設計支持四線阻性觸摸面板控制器,它可以控制任何標準四線觸摸面板。Nios II嵌入式處理器采集來自觸摸面板的用戶事件數據并進行管理,根據GUI和系統總設計,相應地提取或者執行命令。為方便并加速GUI的產生,嵌入式處理器很容易集成到AlTIa的圖形開發工具鏈中。利用Altia的圖形開發工具,藝術家、交互式設計人員、工程師和編程人員可以迅速構建概念原型、模型和可實施代碼,不存在誤解圖形總設計或者圖形交互的風險。從概念到代碼,這些工具大大縮短了總開發周期,同時保持了圖形設計的藝術完整性。Altia還提供Adobe Photoshop插件,名為PhotoProto,設計人員利用它很容易將視頻分量導出到Altia設計中,如圖5所示。在Altia設計中,開發人員可以在圖形設計中增加功能和行為。通過名為深屏(Deep Screen)的工具,在Altia設計中開發的原型或者概念生成Nios II嵌入式處理器連接庫圖形或者行為邏輯需要的所有一切。然后,Nios II處理器運行Altia模型,管理用戶和模型之間的實際交互。 圖5 Altia設計、PhotoProto和深屏工具 視頻采集和圖像處理 基于FPGA的設計中實現的另一功能是視頻采集,如圖2所示。視頻輸入模塊符合ITU-R BT.656數字視頻標準,完成以下操作:彩色空間轉換(CSC)、剪輯、去隔行、縮放和RGB 565包封。在Nios II嵌入式處理器的控制下,每一操作順序完成,并由寄存器對參數進行賦值。根據需要的輸出格式,還可以選擇對視頻輸入進行剪輯和調整(放大或者縮小)。采用寄存器后,可以針對各種顯示分辨率和輸入視頻格式(例如,NTSC、PAL和SECAM等)對系統進行定制。來自模塊的視頻數據通過32位DMA傳送至外部SDRAM幀緩沖。象素數據被封裝成565格式,使兩個象素能夠通過DMA以一個字的形式進行傳送。這顯著提高了視頻帶寬,以及存儲器訪問效率。Thomas II設計使用Altera Quartus II設計軟件支持的標準SDRAM存儲控制器。SDRAM提供足夠的視頻帶寬和存儲器總帶寬,是DDR的低成本替代方案(對于所需要的密度)。而且,采用SDRAM還減小了電路板布板的復雜度,從而降低了系統總成本。在功能上,DRAM為視頻和圖像幀緩沖提供共享存儲空間,還為Nios II嵌入式處理器提供程序存儲器。Avalon系統互聯架構連接SDRAM控制器和Nios II處理器以及其他系統模塊,為存儲器訪問和存儲器管理提供仲裁。Cyclone III FPGA最引人注目的一個特性是未來可以移植到其他存儲器拓撲和技術中。如果需要,很容易對設計進行修改,采用DDR或者DDR2存儲控制器,或者擴展SDRAM接口,以適應32位SDRAM器件。FPGA靈活的I/O環以及SOPC Builder工具中各種存儲控制器支持這一切的實現。Thomas II設計還支持視頻和圖像處理。緩沖后的源視頻存儲在SDRAM中,圖像處理算法由Nios II處理器來完成。而Cyclone III FPGA的靈活性則體現在可以把算法作為軟件、硬件,或者以軟硬件混合的形式來執行,這也是該器件的優勢所在。可以采用Altera的Nios II C語言至硬件(C2H)加速編譯器來分析軟件算法,將函數轉換成硬件加速定制指令。然后,Nios II處理器執行定制指令,不需要反復迭代處理周期。設計人員可以充分發揮Cyclone III FPGA架構并行處理特性的優勢,構建定制指令。內置數字信號處理(DSP)功能可用于完成各種圖像處理算法,例如,魚眼校正等。 結論 通過在低成本系統體系結構中采用彩色TFT,汽車電子設計人員能夠為市場帶來一系列在視覺和功能上都非常引人注目的實際應用。采用模塊化擴展方法開發的Thomas II電路板基于引腳數較少的低成本FPGA,為這些應用的實現提供了平臺。相應的設計軟件和工具不但加速了開發過程,而且還保持了GUI設計的完整性。此外,一片FPGA集成了各種功能,不需要改變主機體系結構和系統設計。如果需要,可編程技術還可以將設計靈活地移植到密度更大的FPGA中。 |