Nios II的LlED顯示屏控制器設計
摘要:基于μC/OS-II實時操作系統實現多任務管理運行模式,采用Nios II 32位處理器作為LED顯示屏控制系統的核心,控制單屏幕多窗口任意顯示。整個控制系統在一片FPGA上實現,使用SOPC Builder軟件定制集成IP核,通過外擴存儲設備實現數據的海量存儲,解決了FPGA內部資源相對不足的問題。同時,合理組織數據存儲方式,降低了數據處理和控制系統的復雜度。
關鍵詞:Nios II;大屏幕顯示;FPGA;μC/OS-II
引言
目前,LED大屏幕顯示系統按數據傳輸方式分為兩類:一是同步實時顯示,即計算機顯示系統的內容同時在LED視頻顯示屏上顯示;二是異步通信更新數據顯示,計算機通過USB、通用串行接口、以太網等通信方式將數據傳送給獨立視頻源顯示屏。通常,異步通信控制方式只能將屏幕作為一個完整的區域顯示,對于較大屏幕的顯示系統,有時需要將整屏分為若干個窗口分別顯示不同的內容,且內容的更新只是某一個或幾個窗口。針對這種情況,本文提出了一種基于Nios II 32位處理器的設計方案,能有效地實現單屏幕多窗口的任意位置顯示,使得顯示方式更加靈活方便。
1 系統總體設計
1.1 系統硬件結構
LED顯示系統主要由計算機系統、數據通信傳輸模塊、數據處理模塊、掃描控制模塊、顯示驅動模塊和LED屏構成,如圖1所示。
計算機系統將要顯示的點陣信息通過RS485串行接口送往存儲設備,數據處理模塊讀取存儲設備的數據并進行各種特技顯示處理,將處理好的數據送往掃描控制模塊,顯示驅動模塊接收到掃描控制模塊的數據后送往LED屏上顯示。數據通信傳輸模塊、數據處理模塊、掃描控制模塊3部分均在FPGA上實現,即構成LED異步控制器。
1.2 系統軟件方案
軟件基于Nios II IDE開發完成,應用程序基于μC/OS-II實時操作系統實現。軟件程序主要由2個任務和1個定時器中斷服務程序組成,任務問采用信號量的方式進行通信。任務1將上位機傳送到CF卡存儲設備的數據寫入內存中;任務2從內存中讀取數據并進行分析處理,把分析處理完的數據送往掃描控制模塊。為了充分利用μC/OS-II的實時性和多任務的特點,采用嵌入式文件系統進行數據管理。
2 控制系統硬件部分設計
數據處理模塊由Nios II軟核CPU、1片SDRAM和1片Flash存儲器組成。Nios II軟核CPU是整個控制器的核心,負責數據的處理;SDRAM作為CPU處理數據時的緩存使用;Flash存儲器用于存儲點陣信息數據和LED屏顯示控制參數。
評論