《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 業(yè)界動(dòng)態(tài) > 一種用VHDL設(shè)計(jì)實(shí)現(xiàn)的有線電視機(jī)頂盒信源發(fā)生方案

一種用VHDL設(shè)計(jì)實(shí)現(xiàn)的有線電視機(jī)頂盒信源發(fā)生方案

2009-02-04
作者:(1)黃衛(wèi)農(nóng) 陳 健(2)徐

  摘 要: 介紹了一種有線電視機(jī)頂盒的信源發(fā)生方案。該方案采用可編程邏輯器件來(lái)完成計(jì)算機(jī)EISA總線輸出數(shù)據(jù)的格式轉(zhuǎn)換,,從而提高數(shù)據(jù)輸出速率,,滿足信源要求。而且,該方案采用了開(kāi)放性的結(jié)構(gòu),可以通過(guò)軟件修改來(lái)實(shí)現(xiàn)功能擴(kuò)充,。還詳細(xì)敘述了采用VHDL來(lái)進(jìn)行可編程邏輯器件的功能設(shè)計(jì)過(guò)程。
  關(guān)鍵詞: 有線電視機(jī)頂盒 VHDL語(yǔ)言 數(shù)據(jù)格式轉(zhuǎn)換 可編程邏輯器件(PLD)

?

  VHDL是隨著可編輯邏輯器件(PLD)的發(fā)展而發(fā)展起來(lái)的一種硬件描述語(yǔ)言,。它是1980年美國(guó)國(guó)防部VHSIC(超高速集成電路)計(jì)劃的一部分,,并于1986年和1987年分別成為美國(guó)國(guó)防部和IEEE的工業(yè)標(biāo)準(zhǔn)。作為一種硬件設(shè)計(jì)時(shí)采用的標(biāo)準(zhǔn)語(yǔ)言,,VHDL具有極強(qiáng)的描述能力,,能支持系統(tǒng)行為級(jí)、寄存器傳輸級(jí)和門(mén)級(jí)三個(gè)不同層次的設(shè)計(jì),,這樣設(shè)計(jì)師將在TOP-DOWN設(shè)計(jì)的全過(guò)程中均可方便地使用同一種語(yǔ)言。而且,,VHDL設(shè)計(jì)是一種“概念驅(qū)動(dòng)式”的高層設(shè)計(jì)技術(shù),,設(shè)計(jì)人員毋需通過(guò)門(mén)級(jí)原理圖描述電路,而是針對(duì)目標(biāo)進(jìn)行功能描述,,由于擺脫了電路細(xì)節(jié)的束縛,,設(shè)計(jì)人員可以專(zhuān)心于設(shè)計(jì)方案和構(gòu)思上,因此設(shè)計(jì)工作省時(shí)省力,,加快了設(shè)計(jì)周期,,并且工藝轉(zhuǎn)換變得輕松。VHDL設(shè)計(jì)技術(shù)對(duì)可編程專(zhuān)用集成電路(ASIC)的發(fā)展起著極為重要的作用,。
  自從微軟提出“維納斯”計(jì)劃后,,機(jī)頂盒便成為信息產(chǎn)業(yè)追逐的主要目標(biāo),也是信息家電中的主流產(chǎn)品,。各國(guó)都在加緊對(duì)機(jī)頂盒的開(kāi)發(fā),,我國(guó)也提出了相應(yīng)的“女?huà)z”計(jì)劃,全國(guó)許多科研單位與生產(chǎn)廠家都在進(jìn)行這方面的研究,。由于我國(guó)有線電視資源豐富,,市場(chǎng)前景很大,因而對(duì)有線電視機(jī)頂盒的研究也就格外引人注目,。然而,,由于我國(guó)還未完全開(kāi)展數(shù)字電視業(yè)務(wù),因而在機(jī)頂盒的調(diào)試過(guò)程中,,要找到合適的信號(hào)源是很不容易的,,不得不采用通過(guò)計(jì)算機(jī)輸出標(biāo)準(zhǔn)視頻碼流的方式來(lái)實(shí)現(xiàn)??纱蠖鄶?shù)計(jì)算機(jī)EISA總線并行輸出的數(shù)據(jù)速率都難以滿足實(shí)際工作的需要,。雖然EISA總線可以一次輸出16位并行數(shù)據(jù),,但這對(duì)于一次只能處理8位并行數(shù)據(jù)的器件來(lái)說(shuō),仍需要一個(gè)轉(zhuǎn)換過(guò)程,。本文介紹了一種數(shù)據(jù)格式轉(zhuǎn)換的設(shè)計(jì)方案,。該方案采用VHDL對(duì)一塊CPLD芯片進(jìn)行編程,使其實(shí)現(xiàn)從16位并行數(shù)據(jù)到8位并行數(shù)據(jù)的轉(zhuǎn)換,,并將EISA口的數(shù)據(jù)輸出速率提高一倍,,達(dá)到信源要求。
1 VHDL的特點(diǎn)
  VHDL是一種面向設(shè)計(jì)的,、多層次,、多領(lǐng)域且得一致認(rèn)同的、標(biāo)準(zhǔn)的硬件描述語(yǔ)言,。它主要有如下特點(diǎn):
  ·能形式化地抽象表示電路的結(jié)構(gòu)和行為,,降低了硬件電路設(shè)計(jì)的難度。
  ·采用自上到下(Top-Down)的設(shè)計(jì)方法,,支持邏輯設(shè)計(jì)中層次與領(lǐng)域的描述,;它支持三個(gè)層次的描述:行為描述、RTL方式描述,、門(mén)級(jí)描述(邏輯綜合),。
  ·可進(jìn)行系統(tǒng)的早期仿真以保證設(shè)計(jì)的正確性。
  ·主要設(shè)計(jì)文件是VHDL語(yǔ)言編寫(xiě)的源程序,,便于文檔管理,。
  ·硬件描述與實(shí)現(xiàn)工藝無(wú)關(guān)。
  由于VHDL語(yǔ)言已作為一種IEEE的工業(yè)標(biāo)準(zhǔn),,因而其語(yǔ)言標(biāo)準(zhǔn),、規(guī)范、語(yǔ)法比較嚴(yán)格,,易于共享和復(fù)用,。而且,VHDL設(shè)計(jì)技術(shù)齊全,、方法靈活,、支持廣泛。目前大多數(shù)EDA工具幾乎在不同程度上都支持VHDL語(yǔ)言,。
2 CPLD外部引腳說(shuō)明
  該方案中所用的芯片是Xilinx公司的CPLD 9500系列芯片,,其類(lèi)型為XC95108-7 PC84。這種芯片共有84個(gè)外部引腳,,其中5個(gè)引腳接地,,6個(gè)引腳接電源,4個(gè)引腳用于JTAG,,剩下的引腳為I/O引腳,。根據(jù)EISA總線的信號(hào)特征和信源的要求,,該芯片所使用的外部引腳為如圖1所示。


  圖1中輸入信號(hào):
   DATA_IN 15~0    輸入的數(shù)據(jù)信號(hào)
   ADDRESS 15~0    輸入的地址信號(hào)
   RESET        復(fù)位信號(hào)
   AEN         地址允許信號(hào)
   CLK         輸入時(shí)鐘信號(hào)
   IOW         I/O寫(xiě)信號(hào)
  輸出信號(hào):
   IO_CS        16位I/O片選信號(hào)
   DATA_OUT 7~0    輸出的數(shù)據(jù)信號(hào)
   DEN         輸出數(shù)據(jù)使能信號(hào)
   DCLK         輸出數(shù)據(jù)時(shí)鐘信號(hào)
3 系統(tǒng)整體設(shè)計(jì)
  系統(tǒng)啟動(dòng)后,,主機(jī)向I/O口發(fā)出地址信號(hào),。AEN為低電平時(shí),系統(tǒng)進(jìn)行地址譯碼,。譯碼成功后,,產(chǎn)生一使能信號(hào)ENABLE打開(kāi)數(shù)據(jù)暫存單元。數(shù)據(jù)到來(lái)后,,數(shù)據(jù)暫存單元將總線上的16位并行數(shù)據(jù)鎖存在暫存器中,,同時(shí)產(chǎn)生一允許信號(hào)PERMIT,允許進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,。接下來(lái)系統(tǒng)根據(jù)當(dāng)前所處的狀態(tài)進(jìn)行選擇輸出,,完成格式的轉(zhuǎn)換,并產(chǎn)生相應(yīng)的輸出數(shù)據(jù)使能信號(hào)DEN和輸出數(shù)據(jù)時(shí)鐘信號(hào)DCLK,。整個(gè)過(guò)程結(jié)束后,,將各信號(hào)復(fù)位,開(kāi)始新的轉(zhuǎn)換周期,。因此,整個(gè)系統(tǒng)應(yīng)包括五個(gè)邏輯部分:地址譯碼,、數(shù)據(jù)暫存,、狀態(tài)控制、復(fù)位控制,、轉(zhuǎn)換輸出,。
3.1 系統(tǒng)的整體框圖
  系統(tǒng)的整體框圖如圖2所示。


3.2 系統(tǒng)的工作時(shí)序
  轉(zhuǎn)換過(guò)程的時(shí)序如圖3所示,。


4 VHDL語(yǔ)言描述
4.1 各單元模塊的描述

·地址譯碼單元
  計(jì)算機(jī)與I/O設(shè)備間的正確通信是通過(guò)對(duì)I/O空間的尋址操作來(lái)完成的,。每個(gè)I/O端口都分配了一個(gè)地址。在該方案中,,將端口的地址設(shè)定為0280H,,采用完全譯碼的方式。同時(shí)為了避免DMA操作控制總線,,設(shè)計(jì)時(shí)讓aen亦參與譯碼,,并由時(shí)鐘信號(hào)進(jìn)行觸發(fā)控制。譯碼成功后,,產(chǎn)生一使能信號(hào)enable(高電平有效),,同時(shí)將io_cs信號(hào)拉低。
·數(shù)據(jù)暫存單元
  enable信號(hào)無(wú)效時(shí),,數(shù)據(jù)暫存單元為高阻狀態(tài),。該信號(hào)和寫(xiě)信號(hào)iow(低電平有效)都變?yōu)橛行Ш?,在接下?lái)的一個(gè)時(shí)鐘的下降沿(確保采樣時(shí)數(shù)據(jù)有效),將總線上的數(shù)據(jù)讀入數(shù)據(jù)暫存單元,,并產(chǎn)生一允許信號(hào)permit,,允許系統(tǒng)進(jìn)行格式轉(zhuǎn)換。
·狀態(tài)控制單元
  這是系統(tǒng)的控制部分,。系統(tǒng)狀態(tài)的控制是由系統(tǒng)的控制信號(hào)simbol,、sign在時(shí)鐘信號(hào)的驅(qū)動(dòng)下實(shí)現(xiàn)的。系統(tǒng)每完成一次8位數(shù)據(jù)的輸出,,在同一時(shí)鐘的下降沿,,狀態(tài)發(fā)生改變,產(chǎn)生另外一控制信號(hào)varb (低電平有效),。復(fù)位后,,系統(tǒng)又回到初始狀態(tài)。狀態(tài)變化過(guò)程如下:

  
·轉(zhuǎn)換輸出單元
  轉(zhuǎn)換輸出單元是系統(tǒng)的核心,,它包括三個(gè)部分:數(shù)據(jù)格式的轉(zhuǎn)換,、數(shù)據(jù)使能信號(hào)DEN的輸出、數(shù)據(jù)時(shí)鐘信號(hào)DCLK的輸出,。數(shù)據(jù)的轉(zhuǎn)換輸出是由系統(tǒng)當(dāng)前所處的狀態(tài)決定的,。permit信號(hào)有效后,在時(shí)鐘的上升沿,,轉(zhuǎn)換輸出單元檢測(cè)系統(tǒng)狀態(tài):狀態(tài)為first時(shí),,輸出高8位;狀態(tài)為second時(shí),,輸出低8位,;狀態(tài)為third時(shí),系統(tǒng)復(fù)位,,從而完成一次轉(zhuǎn)換,,開(kāi)始下一轉(zhuǎn)換周期。在轉(zhuǎn)換過(guò)程中,,系統(tǒng)同時(shí)完成對(duì)信號(hào)simbol,、sign(低電平有效)的控制。
  輸出數(shù)據(jù)使能信號(hào)DEN是根據(jù)MPEG-2標(biāo)準(zhǔn)碼流格式產(chǎn)生的,,用于數(shù)據(jù)信號(hào)的同步,。在MPEG-2標(biāo)準(zhǔn)中,碼流是以包的形式傳送的,。每一個(gè)數(shù)據(jù)包都有一個(gè)統(tǒng)一的包標(biāo)識(shí)符PID,,它的十六進(jìn)制形式為47H。從包中的第一個(gè)字節(jié)(47H)開(kāi)始,DEN變?yōu)橛行?高電平),,并保持到第188字節(jié),。在接下來(lái)的16個(gè)字節(jié)時(shí)間里,DEN保持低電平,。
  輸出數(shù)據(jù)時(shí)鐘信號(hào)DCLK用作解復(fù)用單元的采樣時(shí)鐘,,它是由控制信號(hào)sign、permit以及系統(tǒng)當(dāng)前所處的狀態(tài)控制產(chǎn)生的,。為了保證采樣時(shí)數(shù)據(jù)保持有效,,DCLK的輸出比相應(yīng)的輸出數(shù)據(jù)要延遲半個(gè)機(jī)器周期。
·復(fù)位控制單元
  轉(zhuǎn)換結(jié)束后,,需要對(duì)系統(tǒng)復(fù)位,,保證下一轉(zhuǎn)換的順利進(jìn)行。復(fù)位信號(hào)的產(chǎn)生取決于三個(gè)控制量:系統(tǒng)當(dāng)前狀態(tài)為third,、控制信號(hào)varb為低電平,、控制信號(hào)simbol為高電平。復(fù)位后,,輸出端為高阻狀態(tài),,其他信號(hào)均為無(wú)效值。系統(tǒng)回到初始狀態(tài),。
4.2 系統(tǒng)的門(mén)級(jí)描述
  整個(gè)系統(tǒng)的VHDL描述流程如圖4所示,。


  總之,機(jī)頂盒信源發(fā)生方案是機(jī)頂盒調(diào)試過(guò)程中的一個(gè)重要課題,。本文提出的解決方案具有簡(jiǎn)單,、實(shí)用、易實(shí)現(xiàn)的特點(diǎn),,經(jīng)實(shí)踐證明是可行的。同時(shí)在硬件實(shí)現(xiàn)時(shí)采用了VHDL的設(shè)計(jì)方法,,也給整個(gè)方案提供了很大的靈活性,。如果采用傳統(tǒng)的方法來(lái)實(shí)現(xiàn)該方案,則首先要選擇通用的邏輯器件,,然后進(jìn)行電路設(shè)計(jì),,完成各獨(dú)立功能模塊,再將各功能模塊連接起來(lái),,完成整個(gè)電路的硬件設(shè)計(jì),,最后才能進(jìn)行仿真和調(diào)試,直至整個(gè)系統(tǒng)的完成,。這樣一個(gè)過(guò)程往往需要比較長(zhǎng)的時(shí)間,,而且費(fèi)時(shí)費(fèi)力,特別是對(duì)一項(xiàng)大的工程,。而采用VHDL這類(lèi)高層設(shè)計(jì)技術(shù),,設(shè)計(jì)人員只需專(zhuān)心于設(shè)計(jì)方案和構(gòu)思上,,描述、編譯成功后,,經(jīng)過(guò)系統(tǒng)綜合,,便可直接進(jìn)行軟件仿真和調(diào)試。整個(gè)系統(tǒng)的完成周期大大縮短,,而且VHDL與工藝無(wú)關(guān),,它不限定模擬工具和設(shè)計(jì)方法,從而給設(shè)計(jì)師一個(gè)自由選擇的余地,。
  隨著電子工藝的日趨提高與完善,,ISP(系統(tǒng)內(nèi)可編程)功能為 PLD提供了更高的靈活性,使PLD能夠向高密度,、大規(guī)模的方向發(fā)展以滿足復(fù)雜系統(tǒng)的要求,,從而使可編程ASIC的設(shè)計(jì)逐步向高層設(shè)計(jì)轉(zhuǎn)移。作為一種重要的高層設(shè)計(jì)技術(shù),,VHDL亦成為當(dāng)代電子設(shè)計(jì)師們?cè)O(shè)計(jì)數(shù)字硬件時(shí)必須掌握的一種方法,。
參考文獻(xiàn)
1 侯伯亨,顧新編著.VHDL硬件描述語(yǔ)言與數(shù)字邏輯電路設(shè)計(jì).西安:西安電子科大出版社,,1999
2 VLSI Technology 1998 VES1820 Document for SetTop-Box
3 張玉清,,王春玲編著.IBM PC微型計(jì)算機(jī)原理及接口技術(shù).北京:人民郵電出版社,1997
4 張旭東,,廖先芳編著.IBM微型機(jī)實(shí)用接口技術(shù).北京:科學(xué)技術(shù)文獻(xiàn)出版社,,1993
5 常青、陳輝煌等著.可編程專(zhuān)用集成電路及其用與設(shè)計(jì)實(shí)踐,,北京:國(guó)防工業(yè)出版社,,1998
6 D R Coelho.The VHDL Handbook,Kluwer Academic Publishes,1989
7 IEEE Standard VHDL Language Reference Manual IEEE Standard 1076-1987

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:[email protected],。