兼容WHISHBONE總線的LED數(shù)碼管顯示控制器設(shè)計
1 引言
顯示器件是電子設(shè)備中不可缺少的部分,從燈泡,陰極射線管(CRT,cathode-ray tube)顯示器,到發(fā)光二級管(LED,light-emitting diode),液晶顯示屏(LCD,Liquid CrystalDisplay),顯示器件的發(fā)展伴隨著電子技術(shù)的不斷發(fā)展。目前,在小型便攜式電子設(shè)備中,LED和LCD顯示器件成為主要的顯示器件,其中發(fā)光二級管和IJED數(shù)碼管,主要用于狀態(tài)指示和數(shù)字字符顯示,LCD主要用于文字和圖形顯示。LED數(shù)碼管是用發(fā)光二級管組成字符筆畫或點
陣,用于顯示簡單字符和圖形。最常用的是七段LED數(shù)碼管,它用發(fā)光二級管組成數(shù)字字符8的七段筆畫,至少可以顯示十六進(jìn)制數(shù)字的十六個字符,再加上一個小數(shù)點顯示,常用于在電子設(shè)備上顯示數(shù)字字符串。其特點主要在于使用簡單,價格低廉,顯示亮度高,功耗小。器件可靠性很高。 在中小規(guī)模集成電路的系統(tǒng)設(shè)計中,有專用的IED譯碼集成電路可以使用。在片上系統(tǒng)(SOC,System OnChip)的設(shè)計過程中,也會經(jīng)常用到LED顯示控制器,但都是根據(jù)應(yīng)用需求單獨設(shè)計,可重用性差。本文設(shè)計的LED數(shù)碼管顯示控制器就是用于控制多位LED數(shù)碼管進(jìn)行掃描顯示的一個IP核,并且兼容WISHBONE總線,提高了IP核設(shè)計的可重用性,可以方便移植到任何使用WISHBONE總線的系統(tǒng)中。
2 WISHBONE總線簡介
WISHBONE總線[1],全稱WISHBONE片上系統(tǒng)互聯(lián)結(jié)構(gòu),是一種主要用于片上系統(tǒng)(SOC,Sys-tem 0n Chip)的總線標(biāo)準(zhǔn)。最初是由Silicore公司提出的?,F(xiàn)在已被移交給開源組織OpenCores維護(hù)。它因結(jié)構(gòu)極其簡單、靈活、可移植性好,又完全公開、完全免費,在SOC設(shè)計領(lǐng)域獲得眾多支持,在開源社區(qū)有大量可以免費使用的兼容WISHBONE總線的IP核。
WISHBONE總線采用的是Master/Slave的構(gòu)架,主、從部件通過內(nèi)部互聯(lián)網(wǎng)絡(luò)進(jìn)行互聯(lián),由Master來發(fā)起每次與Slave之間的數(shù)據(jù)傳輸。從設(shè)備只能響應(yīng)總線周期。它只定義了一種總線結(jié)構(gòu)--高速總線。如果是一個低速外部設(shè)備連接到總線上,則主設(shè)備或從設(shè)備可以在總線周期中插入若干等待周期來協(xié)調(diào)設(shè)備之間的速度。這樣要比設(shè)計兩個不同的總線接口簡單。Wishbone著重定義了IP核的接口信號和總線周期標(biāo)準(zhǔn)以實現(xiàn)IP核的重用,對于主從部件的互聯(lián)網(wǎng)絡(luò),它可以實現(xiàn)點到點(point-to-point)、數(shù)據(jù)流(dataflow)、共享總線(shared bus)、交叉開關(guān)(crossbarswitch)四種不同結(jié)構(gòu)形式。用戶必須根據(jù)具體情況對協(xié)議標(biāo)準(zhǔn)進(jìn)行擴(kuò)展和詳細(xì)設(shè)計,定義數(shù)據(jù)和地址寬度,數(shù)據(jù)順序和標(biāo)簽的意義。其它的許多特性都可以由用戶自行添加,從這個意義上說,Wishbone更像是給出了一個框架,等待用戶提出具體的實現(xiàn)方法和規(guī)范。Wishbone總線的主要特征概括如下:
所有應(yīng)用使用一個總線體系結(jié)構(gòu):
簡單、緊湊的體系結(jié)構(gòu);
支持多控制器:
64位地址空間:
8~64位數(shù)據(jù)總線(可擴(kuò)展);
支持三種總線周期:單次讀寫,塊讀寫和RMW(READ-MODIFY-WRITE)總線周期;
支持重試:
提供為慢速設(shè)備使用而扼制數(shù)據(jù)流的機制:
用戶自定義標(biāo)簽,確定數(shù)據(jù)傳輸類型;
用戶自定義仲裁方式。
3 LED數(shù)碼管顯示控制器設(shè)計
3.1功能及其主要特點
LED數(shù)碼管的顯示控制方式有掃描控制和獨立控制兩種方式。前者用于多位LED數(shù)碼管并列顯示的情況下,共用段控信號,通過掃描位控信號,實現(xiàn)分時顯示。由于人眼的視覺暫留現(xiàn)象,形成多位LED數(shù)碼管同時并列顯示的效果。這種方式的實現(xiàn)有軟件實現(xiàn)和硬件實現(xiàn)兩種,軟件實現(xiàn)是由程序控制掃描過程,硬件實現(xiàn)是由專用芯片或邏輯電路控制掃描過程,程序只需向掃描控制電路寫入控制字和各位數(shù)碼管的段碼或字符的BCD(Binary CodedDecimal)碼即可。獨立控制方式用于單獨一位或位數(shù)較少的情況,由主控設(shè)備獨立控制每一個數(shù)碼管的段控信號和位控信號。前一種控制方式下,對于多位數(shù)碼管的情況,可以有效減少連線數(shù)量,但控制過程相對復(fù)雜。后一種控制方式下顯示控制方式相對簡單,但不適合多位并列顯示的情況。
IED數(shù)碼管的段碼排列如圖1所示。其編碼順序為A B C D E F G Dp。
本文設(shè)計的LED顯示控制IP核是一個LED數(shù)碼管掃描顯示控制模塊。這個IP核可以同時控制8位LED數(shù)碼管并列顯示,每一位都可以獨立控制打開或關(guān)閉,當(dāng)某一位關(guān)閉時,該位將不再顯示。可以接共陰或共陽的數(shù)碼管,只需向IP核寫入數(shù)碼管類型控制位即可。為了實現(xiàn)顯示字符的靈活性,每位顯示的字符直接由段碼控制。
3.2結(jié)構(gòu)
該IP核的結(jié)構(gòu)如圖2所示。IP核包括WISHBONE總線接口,寄存器組和顯示掃描控制邏輯。
WISHBONE總線接口支持16位地址總線,8位數(shù)據(jù)總線,支持單次讀寫,塊讀寫,RMW總線周期。地址總線采用部分譯碼,取最低四位,使用16B地址空間。
3.3寄存器
IP核內(nèi)部寄存器包括八個段碼寄存器和兩個掃描控制寄存器。寄存器列于表1。
表中WO表示該寄存器的讀寫方式為只寫。
LED顯示段碼寄存器x(LED-Dx)存儲一位LED數(shù)碼管的段碼數(shù)據(jù)(A B C D E F G Dp)。LED-Dx(n)=l,表示該段顯示,LED-Dx(n)=0,表示該段熄滅??偩€復(fù)位時,其內(nèi)容清零,要在某位顯示某一字符,需要通過總線把段碼寫入相應(yīng)位的段碼寄存器。
LED顯示控制寄存器1(LED-CTRLl)存儲8位LED數(shù)碼管的顯示開關(guān)數(shù)據(jù),其中每一位對應(yīng)一位數(shù)碼管。LED-CTRLl(n)=1,表示該位顯示,LED-CTRLl(n)=0,表示該位不顯示,掃描控制電路會跳過該位。總線復(fù)位后其內(nèi)容清零,要顯示某位,應(yīng)首先在該寄存器相應(yīng)位寫入1。
LED顯示控制寄存器2(LED-CTRL2)只使用一位,存儲IED數(shù)碼管的類型,控制8位數(shù)碼管的顯示。LED-CTRL2(0)=1,表示LED數(shù)碼管是共陽的,LED-CTRL2(0)=0,表示LED數(shù)碼管為共陰的??偩€復(fù)位后其內(nèi)容清零,開始進(jìn)行顯示前,應(yīng)首先在該寄存器寫入數(shù)碼管類型控制位。
3.4輸入輸出接口
IP核全部寄存器為只寫。復(fù)位后全部清零,所以缺省情況下,IJED數(shù)碼管為共陰型,8位全部不顯示,每位數(shù)碼管的段顯示都處于熄滅狀態(tài)。在開始進(jìn)行顯示操作前,應(yīng)首先寫LED數(shù)碼管類型控制位,然后根據(jù)外接數(shù)碼管的個數(shù)和顯示需要,通過總線寫控制寄存器LED-CTRLl,打開要顯示的位。隨后只需更新段碼寄存器,就可以顯示相應(yīng)的字符了。
在總線頻率為10MHz情況下,該IP核的顯示刷新頻率為52Hz,沒有閃爍感覺。如果使用中,總線頻率與此不同,可以修改IP核參數(shù),使刷新頻率保持在50Hz以上即可。
4仿真與綜合
4.1功能仿真
通過總線,在LED-CTRL2中寫入0x01,設(shè)定LED數(shù)碼管的類型為共陽。在LED一CTRLl中寫入0xFF.8位數(shù)碼管全部打開。然后在段碼寄存器LED DO一7中分別寫入字符O一7的段碼(小數(shù)點不顯示):OxFC,Ox6O,OxDA,OxF2,Ox66,OXB6,OxBE,OXEO。在上述條件下對LED顯示控制IP核進(jìn)行功能仿真。仿真使用ModelSim 6.1f。
總線讀寫時序仿真結(jié)果如圖3所示。
4.2綜合
在Ahera Quartus 74l上對該IP核進(jìn)行綜合,目標(biāo)器件選擇Altera的Cyclone II EP2C70F672C6。綜合結(jié)果如下:
占用資源:邏輯單元224;
寄存器94;
估計頻率:279.4 MHz。
5總結(jié)
本文設(shè)計的LED數(shù)碼管顯示控制器IP核,已經(jīng)在我們設(shè)計的采控系統(tǒng)中成功應(yīng)用,完全達(dá)到設(shè)計要求。
在SOC的設(shè)計過程中,以IP核為基礎(chǔ)的設(shè)計方法已經(jīng)成為主流,IP核的重用是一個不可輕視的問題,而采用統(tǒng)一的總線接口規(guī)范是解決IP核重用問題的重要途徑[3]_。本文的設(shè)計嚴(yán)格遵循了WISH-BONE Rev.B.3規(guī)范,在任何采用該規(guī)范設(shè)計的系統(tǒng)中,可以直接使用。本文的設(shè)計對可復(fù)用IP核和SOC的設(shè)計起到一定借鑒作用。
led顯示器相關(guān)文章:led顯示器原理
評論