《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動態(tài) > M8051 IP軟核的改進(jìn)性設(shè)計及其在視頻字符疊加器中的重應(yīng)用

M8051 IP軟核的改進(jìn)性設(shè)計及其在視頻字符疊加器中的重應(yīng)用

2008-09-05
作者:李建峰1, 謝 軍2,, 張金

  摘 要: 介紹了系統(tǒng)芯片SOC的概念和M8051 IP軟核" title="軟核">軟核的原理,,給出了視頻字符疊加器" title="字符疊加器">字符疊加器VAD_SOC中M8051 IP軟核的作用,詳細(xì)介紹了I2C主控制器" title="主控制器">主控制器模塊的設(shè)計,,給出了功能仿真波形,,最后對M8051IP軟核在視頻字符疊加器中的重應(yīng)用進(jìn)行了深入研究。
  關(guān)鍵詞: 系統(tǒng)芯片 微控制器 M8051 IP軟核 視頻字符疊加器


  隨著集成電路制造技術(shù)的快速發(fā)展,,集成電路的規(guī)模不斷擴(kuò)大,。這使得將復(fù)雜系統(tǒng)集成在單個芯片上成為可能,于是便出現(xiàn)了系統(tǒng)芯片SOC(System on a Chip),。傳統(tǒng)芯片設(shè)計方法" title="設(shè)計方法">設(shè)計方法關(guān)注的是如何創(chuàng)建一個全新的設(shè)計并進(jìn)行有效的驗(yàn)證,;如今在SOC設(shè)計中,基于IP模塊的功能組裝正在逐漸替代傳統(tǒng)的功能設(shè)計而成為主流設(shè)計方法,?;贗P模塊的SOC設(shè)計方法的基本思路是通過系統(tǒng)設(shè)計的應(yīng)用層次,利用現(xiàn)有的IP資源,,根據(jù)系統(tǒng)需求選用適當(dāng)?shù)腎P模塊,,進(jìn)行系統(tǒng)集成設(shè)計;基于IP模塊的SOC設(shè)計方法是采用IP模塊而不是采用基本邏輯或電路單元作為基礎(chǔ)單元,,即以功能組裝代替功能設(shè)計,。這就提高了設(shè)計者的設(shè)計能力,能夠較快地完成設(shè)計,,保證設(shè)計成功,,以極低的價格滿足市場需求。
  M8051 IP軟核是高性能的8位微控制器(MCU),,它的每個機(jī)器周期只需要兩個時鐘周期而不是標(biāo)準(zhǔn)8051[1] 軟核的十二個周期,,但是它的功能卻與標(biāo)準(zhǔn)的8051軟核兼容。這就使得M8051 IP軟核在同樣功耗的情況下運(yùn)行速度比標(biāo)準(zhǔn)的8051軟核提高六倍,,也就是說,,若在同樣的運(yùn)行速度下,M8051 IP軟核的功耗僅僅是標(biāo)準(zhǔn)8051軟核的六分之一,。這對于現(xiàn)在的便攜式數(shù)字產(chǎn)品或低功耗產(chǎn)品來說是相當(dāng)有競爭力的,。
  視頻字符疊加器是一種在視頻信號中疊加入字符或簡單的圖文信息,從而在屏幕的特定位置上與圖像信號同時進(jìn)行顯示的設(shè)備[2],。視頻字符疊加器VAD_SOC的結(jié)構(gòu)如圖1所示,,具體包括以下幾個IP模塊: M8051 IP軟核、I2C主控制器模塊,、 存儲器核和全彩色字符疊加處理器(FCA IP)等,。其實(shí)現(xiàn)的功能是將片外或內(nèi)置的疊加字符ROM(如E/E2PROM、雙口RAM或Flash)中儲存的字符信息轉(zhuǎn)變?yōu)榭莎B加在視頻信號上的信息,,同時通過內(nèi)部時序控制功能單元,,調(diào)節(jié)疊加字符在監(jiān)視器上的疊加位置、大小及其背景色和前景色等,。


  本文主要介紹M8051 IP軟核的改進(jìn)設(shè)計,,對其進(jìn)行有效的仿真和驗(yàn)證;并對M8051 IP軟核在視頻字符疊加器VAD_SOC中的重應(yīng)用進(jìn)行深入的研究,。
1 M8051 IP軟核結(jié)構(gòu)及其改進(jìn)性設(shè)計
1.1 M8051 IP軟核的結(jié)構(gòu)

  M8051 IP軟核的功能結(jié)構(gòu)框圖如圖2所示,,主要由五部分組成,。


  (1)算術(shù)邏輯單元" title="算術(shù)邏輯單元">算術(shù)邏輯單元(ALU)部分:位算術(shù)邏輯單元、帶進(jìn)位的算術(shù)邏輯單元,、8位的算術(shù)邏輯單元,,操作數(shù)的選擇、乘法/除法單元,。
  (2)數(shù)據(jù)存儲與交換部分:內(nèi)部數(shù)據(jù)存儲器,、內(nèi)部專用寄存器及其復(fù)用、專用功能寄存器的復(fù)用,、核級專用功能寄存器,。
  (3)狀態(tài)機(jī)與程序存儲部分:主狀態(tài)機(jī)、程序計數(shù)器,、程序計數(shù)器的運(yùn)算單元,。
  (4)指令譯碼部分:取指令、指令譯碼,。
  (5)外圍設(shè)備部分:(I/O)端口寄存器,、中斷、定時器,、計數(shù)器,、通用串行口。
  從圖2可以看出,,M8051 IP軟核與傳統(tǒng)8051單片機(jī)在組成部分及指令系統(tǒng)部分是兼容的,,但功能上有些不同,詳見表1,。所以,,若要將M8051 IP軟核集成到視頻字符疊加器VAD_SOC中,則需要進(jìn)行一些簡單的功能擴(kuò)展和可復(fù)用設(shè)計,。


1.2 I2C主控制器的RTL級實(shí)現(xiàn)
  I2C總線是Philips公司提出的一種串行數(shù)據(jù)傳輸技術(shù),,通過數(shù)據(jù)線(SDA)和時鐘線(SCL)兩個總線即可完成全雙工同步數(shù)據(jù)的發(fā)送和接收,在需要與外圍器件進(jìn)行低速通信時,,I2C總線是個不錯的選擇,。目前8051 IP軟核是片上系統(tǒng)中用得比較多的微控制器核之一,但是其沒有集成I2C總線,,應(yīng)用起來很不靈活,。所以在設(shè)計片上系統(tǒng)時常常需要將I2C系統(tǒng)集成到8051 IP核中,以方便其與MCU的外圍接口連接,,擴(kuò)展8051 IP核的功能,。由于篇幅的限制,本文只對I2C主控制器模塊進(jìn)行簡單研究。I2C主控制器模塊是根據(jù)Philips公司的8xc552的I2C接口原理設(shè)計的,。由于通常情況下單片機(jī)系統(tǒng)都作為主系統(tǒng)使用,,一些功能是不需要的,所以圖3只是本設(shè)計用到的I2C原始的功能結(jié)構(gòu)簡化框圖,。


1.2.1 I2C主控制器的端口源代碼格式[3]
  I2C主控制器端口源代碼格式如下:
  module i2c_top (s1sfrdi,si,sda,scl,regresult,source_addr,
  destine_addr, sfr_write, rmw, internal_reset, pclk_en, pclk);
  output [7:0] s1sfrdi;
  output scl ,si;
  inout sda;
  input [7:0] regresult;
  input [7:0] source_addr;
  input [7:0] destine_addr;
  input sfrwe, rmw, internal_reset;
  input pclk, pclk_en;
  ……
  endmodule
1.2.2 I2C主控制器與M8051 IP軟核的接口
  I2C主控制器的數(shù)據(jù)端口(SDA)是雙向端口,,利用串行數(shù)據(jù)線SDA傳輸數(shù)據(jù),所以不使用總線時必須關(guān)閉三態(tài)門的輸出控制端,,即sda_oen為“0”;另一方面,,數(shù)據(jù)可以通過引腳直接進(jìn)入模塊內(nèi)部,,但必須設(shè)置輸出控制端為“1”,即sda_oen為“1”,。I2C主控制器與M8051 IP軟核的接口如圖4所示,。


1.2.3 I2C主控制器的軟件仿真與結(jié)果
  在I2C主控制器設(shè)計過程中,主要用Modelsim SE PLUS5.6,、QUARTUS2.0等軟件作為前端的仿真工具并 針對I2C主控制器的主接收和主發(fā)送兩個狀態(tài)機(jī)的不同激勵條件,,編寫測試代碼進(jìn)行測試。電路仿真時序波形圖如圖5和圖6所示,。


2 M8051 IP軟核在視頻字符疊加器VAD_SOC中的重應(yīng)用
  M8051 IP軟核在視頻字符疊加器VAD_SOC中的重應(yīng)用的結(jié)構(gòu)如圖1所示,。它的主要任務(wù)是從程序存儲器中讀出指令代碼,經(jīng)編譯執(zhí)行后,,向周圍的相應(yīng)模塊提供操作命令和地址,、數(shù)據(jù)總線值,完成一個復(fù)雜的狀態(tài)機(jī)及對其它模塊的部分控制功能,,協(xié)同其它模塊共同工作,,實(shí)現(xiàn)將字庫中的字符取出放到全彩色字符疊加處理器上進(jìn)行顯示。工作流程如下:
  (1) 將要顯示的字符從PC機(jī)的鍵盤輸入,,經(jīng)串行口RS-232的接口寫入到字庫中,。
  (2) 從程序存儲器中讀出指令代碼,經(jīng)編譯執(zhí)行后,,向周圍的相應(yīng)模塊提供操作命令和地址,、數(shù)據(jù)總線值。
  (3) 繼續(xù)執(zhí)行代碼,,從字庫中讀入要顯示的字節(jié)數(shù)據(jù),,并將它存放在SFR(專用寄存器)中。
  (4) 繼續(xù)執(zhí)行代碼,,將專用寄存器中的數(shù)據(jù)傳送到雙口RAM中進(jìn)行緩存,。
  (5) 通過對控制模塊的控制,實(shí)現(xiàn)數(shù)據(jù)讀取、地址生成,,并按時空拓?fù)鋭澐值男问竭M(jìn)行行,、列地址及數(shù)據(jù)信號的選擇。
  (6) 最后,,將選擇出的信號通過三通接口加到視頻信號中進(jìn)行顯示,。
  基于以上考慮,本系統(tǒng)中M8051 IP核具有一定的專用性,,是針對具體的VAD_SOC系統(tǒng)而設(shè)計的,,因此不需完全拘泥于標(biāo)準(zhǔn)的MCU的所有特點(diǎn),只需設(shè)計出滿足VAD_SOC系統(tǒng)要求的嵌入式M8051 IP核即可,。
2.1 視頻字符疊加器VAD_SOC的設(shè)計及功能仿真
2.1.1設(shè)計流程

  第一步:生成VAD_SOC頂層初始網(wǎng)表,。在四個模塊開發(fā)之后,只需開發(fā)用于集成的網(wǎng)表,,即可用于模塊之間的連接,。
  第二步:處理VAD_SOC頂層中四個模塊的時序預(yù)算,此時每個模塊建立一個“黑盒”時序模型,。
  第三步:改進(jìn)VAD_SOC頂層布線,,在模塊實(shí)現(xiàn)的同時解決頂層的信號完整性問題。此外,,還要考慮前兩步中不需涉及的電源問題,,其中包括模擬模塊和I/O模塊問題。同時模塊層的實(shí)現(xiàn)也在此步進(jìn)行,,通過采用物理綜合方法來確保模塊層的時序收斂,。VAD_SOC頂層設(shè)計和四個模塊實(shí)現(xiàn)之間是同步進(jìn)行的。
  第四步:用模塊的實(shí)際尺寸修改VAD_SOC頂層描述,,這一步需用Aristo 的IC Wizard處理,,大約需要2~3小時。
2.1.2 視頻字符疊加器VAD_SOC的仿真波形
  視頻字符疊加器VAD_SOC的功能仿真是在NC_Verilog下進(jìn)行的,,圖7顯示了兩個場同步周期的字符疊加信號的仿真波形圖,。


  建立在IP模塊功能組裝基礎(chǔ)上的片上系統(tǒng)設(shè)計,使設(shè)計方法從電路設(shè)計轉(zhuǎn)向系統(tǒng)設(shè)計,,設(shè)計重心從邏輯綜合,、門級布局布線、后模擬轉(zhuǎn)向系統(tǒng)級模擬,、軟硬件聯(lián)合仿真,、以及若干個IP模塊組合在一起的物理設(shè)計。為了對各模塊特別是IP模塊進(jìn)行有效的測試,,還必須在模塊中加入可測性設(shè)計,;同時,在驗(yàn)證方法上要采用數(shù)字電路和模擬電路在一起的混合信號驗(yàn)證、軟硬件協(xié)同驗(yàn)證以及并行驗(yàn)證等多種方法,。經(jīng)過試驗(yàn)可知,,M8051 IP核在視頻字符疊加器VAD_SOC中實(shí)現(xiàn)了所需的基本功能,并且仿真主頻率可以達(dá)到33MHz,。
參考文獻(xiàn)
1 何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計.北京:北京航空航天大學(xué)出版社,,1990
2 傅萬鈞. 應(yīng)用電視技術(shù).北京:電子工業(yè)出版社,1994
3 夏宇聞.復(fù)雜數(shù)字電路與系統(tǒng)的Verilog HDL設(shè)計技術(shù).北京:北京航空航天大學(xué)出版社,,1998:87~100
4 Rochit Rajsuman. SOC設(shè)計與測試.北京:北京航空航天大學(xué)出版社, 2003:96~107

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