當前位置:首頁 > 電源 > 數(shù)字電源
[導讀]介紹了一種基于FPGA的LED大屏設計方案,采用自頂向下的設計思想,設計了基于FPGA的雙口RAM和掃描控制電路,解決了傳統(tǒng)LED大屏設計中,控制系統(tǒng)復雜﹑可靠性差的問題。

摘  要:介紹了一種基于FPGA的LED大屏設計方案,采用自頂向下的設計思想,設計了基于FPGA的雙口RAM和掃描控制電路,解決了傳統(tǒng)LED大屏設計中,控制系統(tǒng)復雜﹑可靠性差的問題。
關(guān)鍵詞:單片機,F(xiàn)PGA, LED大屏幕,雙口RAM

目前采用的LED大屏幕顯示系統(tǒng)的控制電路,大多由單個或多個CPU及復雜的外圍電路組成,這種電路設計,單片機編程比較復雜,整個電路的調(diào)試比較麻煩,可靠性和實時性很難得到保證。針對這種情況,介紹一種基于cyclone EP1C6的LED大屏幕設計方案,該設計方案無須外掛FLASH  ROM和RAM,無須任何外部功能電路,所有功能均由一片cyclone EP1C6和一片單片機SPCE061A來實現(xiàn),具有數(shù)據(jù)處理速度快、可靠性高的特點。其中FPGA內(nèi)部雙口RAM的運用,為不同總線間的數(shù)據(jù)通信提供了一個新的解決方案?!?/P>

1  系統(tǒng)結(jié)構(gòu)及功能概述

設計對象是一塊具有192×128個紅色LED點陣的電子屏。整塊電子屏是模塊化的結(jié)構(gòu),每4個16×16的點陣塊為一個單元,共3×8個這樣的單元。屏上要求連續(xù)顯示5屏內(nèi)容,且每屏具有上下左右移動等動畫效果,實際應用中主控制室距離電子屏約為200米。結(jié)合設計對象的要求和大屏幕設計的特點,系統(tǒng)結(jié)構(gòu)框圖如圖1所示。

圖1  系統(tǒng)框圖

LED大屏設計系統(tǒng)由三個主要單元組成:上位機圖象/文字編輯與發(fā)送部分單元、主控板單元、LED電子屏。系統(tǒng)上位機由一臺PC機來控制,主要是編輯、發(fā)送圖象/文字信息到主控板,而主控板對這些數(shù)據(jù)進行處理后發(fā)送到大屏幕上顯示出來。

2     系統(tǒng)硬件設計

系統(tǒng)硬件設計主要是對主控板的設計,主控板的主要功能包括:數(shù)據(jù)通訊、數(shù)據(jù)存儲、數(shù)據(jù)處理、掃描控制等。傳統(tǒng)LED大屏設計由作為數(shù)據(jù)存儲器的FLASH  ROM和數(shù)據(jù)處理緩存器的RAM、CPU和可編程邏輯器件FPGA/CPLD、作為數(shù)據(jù)掃描緩沖區(qū)的RAM組成,其結(jié)構(gòu)如圖2所示。

   圖2 傳統(tǒng)LED大屏設計主控板結(jié)構(gòu)圖

傳統(tǒng)主控板硬件設計需要較多的外圍器件(有的設計中還不止一個CPU和CPLD),不僅硬件結(jié)構(gòu)和連線復雜,而且設計成本較高。此外,由于LED大屏幕數(shù)據(jù)量很大,各個分立存儲器之間、單片機與FPGA/CPLD之前數(shù)據(jù)實時可靠的傳輸也是一個問題。為解決這些問題,主控板硬件電路的設計選用一片凌陽單片機SPCE061A和一片F(xiàn)PGA cyclone EP1C6,其結(jié)構(gòu)框圖如圖3所示。

 

                   圖3 基于cyclone EP1C6的主控板結(jié)構(gòu)圖

2.1 cyclone EP1C6和SPCE061A簡介

cyclone EP1C6是Altera推出的一款高性價比FPGA,工作電壓3.3V,內(nèi)核電壓1.5V。采用0.13μm工藝技術(shù),全銅SRAM工藝,其密度為5980個邏輯單元,包含20個128×36位的RAM塊(M4K模塊),總的RAM空間達到92160位。內(nèi)嵌2個鎖相環(huán)電路和一個用于連接SDRAM的特定雙數(shù)據(jù)率接口,工作頻率高達200MHz[3]。

SPCE061A是凌陽科技推出的一款16位微控制器,內(nèi)嵌32K字FLASH和2K字SRAM,并集成了ICE仿真電路接口﹑通用I/O端口﹑定時器/計數(shù)器﹑中斷控制﹑CPU時鐘﹑模數(shù)轉(zhuǎn)換器A/D﹑DAC輸出﹑通用異步串行輸入輸出接口、串行輸入輸出接口﹑低電壓檢測/低電壓復位﹑看門狗等功能。CPU最高可工作在49MHz的主頻下,較高的處理速度使SPCE061A能夠非常容易、快速地處理復雜的數(shù)字信號[1]。

2.2主控板結(jié)構(gòu)及功能

主控板結(jié)構(gòu)如圖3所示,上位機發(fā)送的數(shù)據(jù)通過雙絞傳送到RS422接收模塊[2],經(jīng)轉(zhuǎn)換后送至單片機,由單片機的IOB7口以UART中斷的方式接收上位機發(fā)送的數(shù)據(jù)。單片機將接收的串口數(shù)據(jù)以兩個字節(jié)為單位逐一寫入內(nèi)置的FLASH中。單片機內(nèi)部的2K字SRAM在此作為一個緩存區(qū),每次單片機要向FPGA中寫一屏新的數(shù)據(jù)時,先按特定的地址從FLASH中讀出數(shù)據(jù)并存放到SRAM中,再將SRAM的數(shù)據(jù)并行寫到FPGA的雙口RAM中。

FPGA在其內(nèi)部配置一個雙口RAM緩存單片機寫入的數(shù)據(jù),同時將這些數(shù)據(jù)按照大屏的結(jié)構(gòu)和掃描電路的特點,從雙口RAM中有選擇性地讀出,并將讀出的數(shù)據(jù)由并轉(zhuǎn)串,按照一定的時序?qū)Υ笃咙c陣進行、列掃描,這個時序也是由FPGA產(chǎn)生的。掃描數(shù)據(jù)和時序控制信號從FPGA的I/O口輸出后,經(jīng)過一個由74LS245構(gòu)成的隔離驅(qū)動電路送至大屏幕。

2.3基于FPGA的雙口RAM的配置

基于FPGA的雙口RAM的配置是本設計的獨特之處。RAM作為中介將單片機送來的數(shù)據(jù)在LED電子屏上顯示出來,由于數(shù)據(jù)顯示是一種動態(tài)掃描方式,若采用一個RAM 區(qū),單片機在寫RAM 時,F(xiàn)PGA只能處于等待狀態(tài),F(xiàn)PGA讀RAM時,單片機寫數(shù)據(jù)也無法同時進行,導致屏幕刷新頻率降低,動態(tài)掃描不連續(xù),影響屏幕的顯示效果。因此設計了兩個同樣大小的RAM 區(qū):A區(qū)和B區(qū)。當單片機寫A區(qū)時, FPGA讀B區(qū)的數(shù)據(jù),單片機寫B(tài)區(qū)時,F(xiàn)PGA讀A區(qū)的數(shù)據(jù)。此外,由于FPGA掃描模塊可以達到很高的掃描速率,而單片機的運行速率則相對較低,且兩個模塊間有大量的數(shù)據(jù)交換,為此選擇高速雙口RAM,一方面保證單片機和FPGA同時讀寫數(shù)據(jù),另一方面保證了數(shù)據(jù)的處理速度。

    cyclone EP1C6提供了20個具有異步﹑雙端口﹑帶寄存器輸入口﹑可選擇的帶寄存器輸出口的存儲模塊—M4K模塊,每個M4K模塊的存儲容量為4Kbit。在QUARTUS軟件中進行簡單的設置,就可以將M4K模塊配置成雙口RAM,數(shù)據(jù)和地址的位寬可根據(jù)實際需要進行選擇。本文設計的RAM可容納兩屏的數(shù)據(jù),數(shù)據(jù)位寬為16位,地址為12位,其中地址的最高位作RAM分區(qū)用,每個區(qū)存儲一屏的數(shù)據(jù),兩屏讀寫同時進行,雙口RAM的配置如圖4所示。

圖4   雙口RAM配置

其中wren是單片機往FPGA中寫入數(shù)據(jù)的寫使能信號,wraddress[11..0]是寫的地址信號, wrclock是寫時鐘,data[15..0]是寫的數(shù)據(jù),rdaddress[11..0]是讀的地址信號,rdclock是讀數(shù)據(jù)的時鐘信號,q[15..0]是讀出的數(shù)據(jù)。

2.4基于FPGA的獨立掃描單元

點陣模塊是紅色LED共陰模塊,4塊16×16點陣模塊連接成64×16點陣作為一個單元進行控制,整個大屏有3×8個這樣的單元。將LED的公共接口作為行控制,行掃描信號同時控制著一行中多個LED的通斷,以每個LED流過的電流為10mA計算,一個單元有64列,行掃描信號至少得提供1A左右的電流,因此,在掃描信號送到LED之前必須經(jīng)過一個三極管以提高驅(qū)動能力。三極管選用高速中功率達林頓管TIP127,它的集電極吸收電流最大可達5A,保證行驅(qū)動能力。由于點陣的每行需要一個三極管驅(qū)動,所以一個64×16的單元塊需要16個TIP127。行掃描電路采用帶鎖存的移位寄存器74LS595來控制,每片74LS595控制 8行點陣的選通與否。由于采用的掃描方式為每隔8行數(shù)據(jù)同時掃描,一片74LS595每次只能點亮一行的數(shù)據(jù),每行點亮的時間相等即占空比為1/8,因此屏幕亮度非常均衡。

列掃描電路的功能是把要顯示的行對應的列數(shù)據(jù)送到LED的陰極,列掃描也是由74LS595控制的。本文設計的屏幕的硬件結(jié)構(gòu)特點是:每8行LED的陰極是連在一起的,每片74LS595控制8列數(shù)據(jù),每隔8行同時掃描,對于一個64×16的點陣單元,共需要8×2個74LS595控制,每行上的74LS595都是級聯(lián)起來的。每完成一次列掃描,F(xiàn)PGA都要輸出一個鎖存信號給74LS595以鎖存列數(shù)據(jù),接著輸出行掃描信號點亮對應的行,再對行掃描數(shù)據(jù)進行鎖存,如此循環(huán)往復實現(xiàn)整個大屏幕的動態(tài)實時顯示功能[4]。

由于FPGA在行列掃描之前已經(jīng)對數(shù)據(jù)進行并串轉(zhuǎn)換,數(shù)據(jù)都是串行輸出的,每隔8行同時掃描,整個屏幕行掃描只需占用1個I/O口,列掃描只需占用16個I/O口,從而大大減少了對I/O的占用。采用FPGA設計掃描邏輯,掃描的關(guān)鍵不在是硬件連接,而是對芯片資源的配置。

3  軟件設計

系統(tǒng)的軟件設計由三部分組成:上位機圖象/文字編輯與發(fā)送軟件設計,單片機控制單元軟件設計,F(xiàn)PGA控制單元軟件設計。

3.1 上位機軟件設計

上位機的圖象/文字編輯與發(fā)送軟件由Visual Basic編寫,只須在界面中將屏幕大小設置為192×128,串口選擇COM1或COM2,波特率設置為9600,設置每屏起始地址和要發(fā)送的屏數(shù),調(diào)入包含相關(guān)信息的文件,點擊“發(fā)送”按鈕即可。該軟件適用于任何大小彩色/單色屏,提供了豐富的圖形/文字編輯﹑修改功能,也可以直接調(diào)用WINDOWS中的16色畫圖文件(*.bmp)。

3.2  單片機控制單元軟件設計

單片機控制單元的軟件設計主要實現(xiàn)三大功能:串行數(shù)據(jù)接收和存儲、數(shù)據(jù)輸出和圖象顯示方式變換。串行數(shù)據(jù)接收部分主要是通過UART中斷接收并保存數(shù)據(jù)。圖象顯示方式變換部分實現(xiàn)圖象的變換如上移、下移、左移、右移等以實現(xiàn)豐富多彩的圖象顯示效果。單片機軟件設計是在凌陽科技的集成開發(fā)環(huán)境unSP IDE下完成的,主要由一個C文件和一個ASM文件組成,C文件包括5屏數(shù)據(jù)的循環(huán)送顯和圖像顯示方式變換,匯編文件包括中斷服務子程序和其他函數(shù)調(diào)用的子程序。

3.3 FPGA控制單元軟件設計

FPGA控制單元的設計是在QUARTUSII環(huán)境下完成,并用硬件描述語言VHDL描述,主要功能是配置雙口RAM、設計掃描控制電路。該單元的軟件設計模塊如圖5所示。

         圖5 FPGA控制單元軟件設計框圖

   雙端口RAM的配置完全通過在QUARTUS環(huán)境中設置菜單實現(xiàn),配置完成后將自動生成一個VHDL文件,描述雙口RAM的內(nèi)部邏輯功能,雙口RAM在整個程序設計作為一個元件調(diào)用。

基于FPGA的掃描模塊的軟件設計如下:首先對FPGA總時鐘clk進行64分頻得到clk1,clk1的低電平其間FPGA讀取雙口RAM的數(shù)據(jù),每4個clk周期讀一個16位的數(shù)據(jù),共讀出16個數(shù)。clk1的高電平期間FPGA進行列掃描,每2個clk周期同時輸出16個數(shù)的1位,共32個周期將這16個數(shù)由并轉(zhuǎn)串輸出到16根數(shù)據(jù)線上,由于單片機寫RAM的速度低于FPGA對數(shù)據(jù)的處理速度,剩下的32個clk周期用于等待單片機完成一個區(qū)的寫操作。12個clk1周期后,一行的數(shù)據(jù)全部掃描完畢,F(xiàn)PGA輸出一個列鎖存信號給74LS595鎖存這些數(shù)據(jù),同時輸出行掃描信號和行鎖存信號,接著掃描第二行,由于采用16根數(shù)據(jù)線進行隔8行掃描,整個LED電子屏128行只要完成8次行掃描即可,時序如圖6所示。

 

             圖6 掃描時序圖

 5   結(jié)束語

通過采用自頂向下的設計思想,運用EDA技術(shù)實現(xiàn)FPGA內(nèi)部雙口RAM的配置和掃描控制電路的設計,將復雜的系統(tǒng)設計集成在一起,只需一片F(xiàn)PGA就可以實現(xiàn)所需的功能,高集成度帶來的不僅是成本降低,還提高了系統(tǒng)的穩(wěn)定性和可靠性?;?cyclone EP1C6 的LED 大屏設計方案已成功應用于我院的LED圖文發(fā)布電子屏,實踐證明:本系統(tǒng)能以多種播出方式顯示各種字體和型號的文字和圖形信息,與同類設計相比,畫面清晰、性能穩(wěn)定、操作使用簡單,具有很好的應用前景。

參考文獻

1 羅亞非.  凌陽16位單片機應用基礎(chǔ). 北京:北京航空航天大學出版社,2003;12:163~173
2 石東海.  單片機數(shù)據(jù)通信技術(shù)從入門到精通. 西安:西安電子科技大學出版社,2002;11:104~109
3 潘松,黃繼業(yè).  EDA技術(shù)實用教程. 北京:科學出版社,2002;10:231~237
4 李愛國. 模塊化LED電子大屏幕的設計與實現(xiàn). 計算機應用研究,1998;2:74~75

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

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

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

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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