基于SOPC的通用TFT-LCD控制器IP核設計
LCD控制器的具體工作流程為刷新周期開始時,主端口模塊根據幀緩存地址生成邏輯所產生的地址完成主端口的讀操作,實現幀緩存中數據的讀取,并將該數據輸送給輸出緩沖模塊。同時,時序信號生成模塊依據LCD屏的時序規范生成行、場同步信號,以及與像素數據同步的相關顯示點的橫、縱坐標。
設計的LCD控制器包含硬件光標顯示模塊,所以在進行最后屏幕顯示時,像素輸出控制邏輯有兩部分的數據來源,一部分為從幀緩存中讀取的屏幕數據;另一部分為硬件光標的顯示數據。最后,像素輸出控制邏輯根據從端口模塊中各個系統寄存器內的信息向LCD屏幕發送將要顯示的圖像數據。
2 硬件光標模塊設計
硬件光標模塊為LCD控制器設計帶鼠標光標的顯示功能,為系統開發中添加鼠標接口提供了方便。光標顯示的實現方式有硬件方式和軟件方式,軟件方式比較復雜,且占用大量的CPU處理時間;硬件方式用硬件邏輯資源來實現,處理速度快,不占用CPU時間。硬件方式的設計思路是為光標的圖像數據設置單獨的存儲空間(RAM)用以保存,當LCD屏幕需要對光標進行顯示時,由硬件邏輯負責在輸出光標和背景圖像之間做出選擇。而軟件部分只需簡單地修改光標坐標寄存器的值,就可以完成光標在屏幕上的顯示操作。采用這種方法,大大提高了系統性能。硬件光標RAM模塊是通過MegWizard Plug-In Manager編輯器生成的,最終生成的存儲光標圖像數據的雙口RAM如圖3所示。
3 LCD控制器組件設計
將LCD控制器按總體設計要求編寫相應的硬件描述語言代碼,其端口定義的程序主要有系統時鐘、LCD時鐘、Avalon從端口、Avalon主端口和LCD輸出的定義。程序的主要內容有各種寄存器和連線的定義,行場參數的設定,行掃描狀態機、場掃描狀態機、Avalon主端口讀控制邏輯狀態機、幀緩存地址生成邏輯、LCD有效顯示數據信號生成邏輯、硬件光標模塊和兩個例化模塊的調用等。最終生成的元件符號如圖4所示。
評論