《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 一種8位嵌入式RISC MCU IP核數(shù)據(jù)通道模型設(shè)計
一種8位嵌入式RISC MCU IP核數(shù)據(jù)通道模型設(shè)計
李秀娟, 王祖強, 張 甜
摘要: 在8位MCU IP核設(shè)計中,數(shù)據(jù)通道部分的設(shè)計是整個設(shè)計的關(guān)鍵之一。采用自頂向下的設(shè)計方法,提出了一種特定的層次化數(shù)據(jù)通道模型。該數(shù)據(jù)通道模型由整齊的時鐘節(jié)拍控制數(shù)據(jù)通道的開啟,經(jīng)過精心設(shè)計的各層子數(shù)據(jù)通道的選通,有效地避免了內(nèi)部數(shù)據(jù)總線讀寫沖突,規(guī)范了設(shè)計,降低了功耗,縮短了設(shè)計周期。
Abstract:
Key words :

  摘 要: 在8位MCU" title="MCU">MCU IP" title="IP">IP核設(shè)計中,數(shù)據(jù)通道" title="數(shù)據(jù)通道">數(shù)據(jù)通道部分的設(shè)計是整個設(shè)計的關(guān)鍵之一。采用自頂向下的設(shè)計方法,提出了一種特定的層次化數(shù)據(jù)通道模型。該數(shù)據(jù)通道模型由整齊的時鐘節(jié)拍控制數(shù)據(jù)通道的開啟,經(jīng)過精心設(shè)計的各層子數(shù)據(jù)通道的選通,有效地避免了內(nèi)部數(shù)據(jù)總線讀寫沖突,規(guī)范了設(shè)計,降低了功耗,縮短了設(shè)計周期。
  關(guān)鍵詞: MCU IP 數(shù)據(jù)通道 Verilog HDL


  隨著IC產(chǎn)業(yè)的發(fā)展,IP核的需求越來越高。微控制器MCU(Micro Control Unit)是嵌入式系統(tǒng)的核心,8位MCU IP核具有很高的通用性和靈活性,廣泛地應(yīng)用于工業(yè)控制、機械設(shè)備、家用電器以及汽車等各個領(lǐng)域。本文設(shè)計的MCU IP核與Microchip公司的PIC16C57完全兼容[1]。MCU IP核采用哈佛結(jié)構(gòu),內(nèi)部單元可簡化為時序控制和數(shù)據(jù)通道兩部分。時序控制部分為數(shù)據(jù)通道提供控制信號,控制數(shù)據(jù)流動方向以及數(shù)據(jù)通路的選擇,它是IP核的指揮中心;數(shù)據(jù)通道部分在控制部分的控制下,具體實現(xiàn)MCU IP核的指令功能,它是影響MCU性能、功耗等因素的關(guān)鍵,是整個芯片設(shè)計的重點。
  本文在設(shè)計該款MCU IP核的數(shù)據(jù)通道部分過程中,提出了一種特定的數(shù)據(jù)通道模型;最后,通過對整個MCU IP核仿真綜合,對該數(shù)據(jù)通道模型進行了驗證。
1 數(shù)據(jù)通道模型及數(shù)據(jù)總線Verilog HDL" title="Verilog HDL">Verilog HDL模型
1.1數(shù)據(jù)通道模型結(jié)構(gòu)圖
  本文設(shè)計的MCU數(shù)據(jù)通道模型包含各數(shù)據(jù)通道單元及單條雙向數(shù)據(jù)總線。其中數(shù)據(jù)通道單元主要由特殊功能寄存器、通用寄存器及運算單元ALU等電路組成,每個通道單元還可再分為多個子通道單元。數(shù)據(jù)通道頂層模型如圖1所示,數(shù)據(jù)主要在數(shù)據(jù)總線及各數(shù)據(jù)通道單元中流動,由一條雙向數(shù)據(jù)總線完成每個數(shù)據(jù)組元的讀寫操作,充當(dāng)每個組元源總線及目的總線雙重功能,并由特定電路完成總線數(shù)據(jù)的讀寫操作。該數(shù)據(jù)通道模型的最大特點為:通過n個子通道選擇信號,各數(shù)據(jù)通道單元內(nèi)部可再分為n個子數(shù)據(jù)通道,由1/n譯碼器實現(xiàn)每一個時刻只有一條子通道選通。上層的數(shù)據(jù)通道控制信號仍然有效,作為子層數(shù)據(jù)通道的公共開關(guān)[2]。依次類推,該數(shù)據(jù)通道模型可以是多層的。數(shù)據(jù)通道層次模型如圖2所示。

 


  數(shù)據(jù)通道模型內(nèi)數(shù)據(jù)的流動在時間軸上是時刻向前的,而數(shù)據(jù)流動的軌跡則呈現(xiàn)為相互環(huán)繞的螺旋形。
1.2 內(nèi)部數(shù)據(jù)總線的Verilog HDL模型
  數(shù)據(jù)通道模型中內(nèi)部數(shù)據(jù)總線分別由三態(tài)門和多路選擇器實現(xiàn)讀寫操作,使用特定的硬件描述語言Verilog HDL代碼模型進行描述。對于掛接n個數(shù)據(jù)通道單元的m位數(shù)據(jù)通道內(nèi)部數(shù)據(jù)總線,讀、寫兩種操作的Verilog HDL代碼模型分別表示如下[3]
  (1)數(shù)據(jù)總線讀操作代碼模型
  wire [m-1:0] anout;
  assign anout=controln?dbus:{m’{1’bz}};
  ……
  其中,anout[m-1:0]是n個數(shù)據(jù)通道單元n的輸出數(shù)據(jù),controln是第n個數(shù)據(jù)通道單元的寫操作控制信號,dbus[m-1]是m位數(shù)據(jù)總線數(shù)據(jù)。
  (2) 數(shù)據(jù)總線的寫操作代碼模型
  wire [m-1:0] dbus;
  assign dbus=sel1?a1out:
  sel2?a2out:
  ......
  seln?anout;
  其中,dbus[m-1]是m位數(shù)據(jù)總線數(shù)據(jù);a1out,a2out......anout是數(shù)據(jù)通道單元輸出數(shù)據(jù);sel1,sel2......seln是數(shù)據(jù)單元選通條件。
2 設(shè)計實現(xiàn)
  本文以數(shù)據(jù)通道單元ALU為例介紹數(shù)據(jù)通道模型的層次結(jié)構(gòu)。ALU是MCU IP核的運算單元,是數(shù)據(jù)的加工處理部件,是數(shù)據(jù)通道中最特殊的數(shù)據(jù)通道單元。它實現(xiàn)加、減、與、或、異或、非、左移、右移、半字節(jié)交換等九種運算,其中前五種是雙操作數(shù)操作,其余四種是單操作數(shù)操作。對于雙操作數(shù)操作,ALU數(shù)據(jù)通道單元一邊采用兩條兩個源操作數(shù)數(shù)據(jù)通道,另一邊采用一條目標(biāo)操作數(shù)數(shù)據(jù)通道;而單操作數(shù)操作僅需開啟一條源操作數(shù)數(shù)據(jù)通道。
  本文的ALU采用低功耗設(shè)計。通過控制部分譯碼得出ALU主要實現(xiàn)四種運算:算術(shù)運算、邏輯運算、移位運算以及半字節(jié)交換運算。本文通過加、減操作復(fù)用一個8位超前進位加法器,將ALU模塊分為8個運算單元,構(gòu)成8個子數(shù)據(jù)通道。通過對ALU子數(shù)據(jù)通道選通信號aluop[2:0]進行譯碼對8條子通道進行選通,如表1所示。在系統(tǒng)復(fù)位或者不工作時,各運算單元處于休眠狀態(tài);在每條指令的執(zhí)行周期,ALU中8個子數(shù)據(jù)通道始終只有一條子數(shù)據(jù)通道處于選通工作狀態(tài)。不同類的指令對應(yīng)不同的數(shù)據(jù)通道,把對ALU運算的控制轉(zhuǎn)化為對ALU內(nèi)子數(shù)據(jù)通道的選擇,降低了ALU整體功耗[4]
  一般來說,數(shù)據(jù)通道的選通由選通信號控制,而數(shù)據(jù)通道的開啟必須由整個MCU IP核控制部分產(chǎn)生的四相不重疊時鐘節(jié)拍控制,分別為clk1、clk2、clk3、clk4。時鐘節(jié)拍不參與數(shù)據(jù)通道的選擇,所起作用只是數(shù)據(jù)通道的開啟。數(shù)據(jù)通道內(nèi)數(shù)據(jù)的流動是有方向的,本文中數(shù)據(jù)流動的方向性體現(xiàn)為不同時鐘節(jié)拍控制的不同數(shù)據(jù)通道的開啟。以單操作數(shù)指令半字節(jié)交換指令(SWAP)為例說明,半字節(jié)交換指令只需開啟一條源操作數(shù)通道。如圖3所示,控制部分在clk1時取出指令,產(chǎn)生控制信號,進入數(shù)據(jù)通道操作;在clk2時,在存儲單元中選擇源操作數(shù)寫入數(shù)據(jù)總線,開啟ALU運算單元的源操作數(shù)alu_xbus_a[7:0]數(shù)據(jù)通道,此時內(nèi)部雙向數(shù)據(jù)總線充當(dāng)ALU源總線;在clk3時,根據(jù)ALU模塊子通道選通信號aluop[3:0]選擇ALU功能模塊SWAP,開啟源操作數(shù)進入ALU進行半字節(jié)交換運算的數(shù)據(jù)通道;在clk4時,將ALU運算單元的運算結(jié)果aluout[7:0]通過數(shù)據(jù)總線寫入到各目的數(shù)據(jù)通道單元中,即開啟目的操作數(shù)數(shù)據(jù)通道,此時內(nèi)部雙向數(shù)據(jù)總線充當(dāng)ALU目的總線。

 


  需要說明的是,圖3中數(shù)據(jù)databus[7:0]來自數(shù)據(jù)總線,由數(shù)據(jù)通道單元特殊功能寄存器和通用寄存器提供數(shù)據(jù)。其中特殊功能寄存器包括F0間址寄存器、F1實時時鐘/計數(shù)寄存器RTCC、F2程序計數(shù)器PC,F(xiàn)3狀態(tài)計數(shù)器STATUS、F4寄存器選擇寄存器FSR以及F5、F6、F7 I/O寄存器。可以向下再分為8條子數(shù)據(jù)通道,子通道選通信號為fsel[2:0],而上層數(shù)據(jù)通道開關(guān)控制信號為rf_spr_re、rf_spr_we,即特殊功能寄存器讀寫控制信號。其具體實現(xiàn)與ALU數(shù)據(jù)通道單元類似,這里不再贅述。
  在該款MCU IP核數(shù)據(jù)通道模型中,數(shù)據(jù)總線全部采用本文所述的Verilog HDL代碼模型描述。基于中心國際SMIC 0.35μm工藝庫(工作電壓為3伏),使用Synopsys公司VCS和 DC對該款MCU IP核進行了仿真綜合,并進行了功耗分析。綜合分析結(jié)果得出,該數(shù)據(jù)通道電路結(jié)構(gòu)規(guī)整,設(shè)計得到了簡化,總體功耗約為49.5980mW,實現(xiàn)了低功耗設(shè)計。
  本文使用固定電路結(jié)構(gòu)描述內(nèi)部數(shù)據(jù)總線,通過特定層次化數(shù)據(jù)通道模型的設(shè)計,體現(xiàn)了自頂向下(Top-Down)的設(shè)計方法,降低了整個MCU IP 核設(shè)計的復(fù)雜度,縮短了設(shè)計周期。該設(shè)計適用于大規(guī)模系統(tǒng)芯片設(shè)計。
參考文獻
1 pic16c5x.pdf. Microchip Technology Inc.,1998
2 鐘旭恒,高明倫.基于數(shù)據(jù)通道指令流程圖的硬布線控制電路設(shè)計. 微電子學(xué)與計算機,2001;(5):8~11
3 夏宇聞.復(fù)雜數(shù)字電路與系統(tǒng)的Verilog HDL設(shè)計技術(shù).北京:北京航空航天大學(xué)出版社,2003:13
4 羅 文,楊 波.寄存器傳輸級低功耗設(shè)計方法.小型微型機算機系統(tǒng),2004;(7):1207~1211
5 孫海平,李 偉.基于資源共享的ALU設(shè)計.微電子學(xué)與計算機,2001;(5):16~20

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 笨蛋英子未删1至925下载| 日本在线视频网址| 成人试看120秒体验区| 亚洲JIZZJIZZ中国少妇中文| 欧美高清性XXXXHDVIDEOSEX| 免费黄色网址网站| 自拍偷在线精品自拍偷| 国产午夜精品1区2区3福利| 亚洲激情小视频| 国产精品自在线拍国产手机版| a级毛片毛片免费观看永久| 影音先锋成人资源| 四虎影视永久地址www成人| 黑人系列合集h| 国产精品1024永久免费视频| 7777久久亚洲中文字幕蜜桃| 大乳女人做受视频免费观看| sss欧美一区二区三区| 岛国免费v片在线播放| 中文字幕yellow在线资源| 无套内射视频囯产| 久久久久99精品成人片直播| 日韩中文字幕免费| 久热精品视频在线观看99小说| 欧美一区二区三区四区视频| 亚洲国产欧美精品| 欧美日韩一区二区三区麻豆| 亚洲欧美日韩在线| 永久免费毛片在线播放| 亚洲综合无码一区二区三区| 男人j桶女人p免费视频| 免费人成激情视频在线观看冫| 精品丝袜国产自在线拍亚洲 | 精品久久人人做人人爽综合| 又色又爽又黄的视频网站| 色一情一乱一伦一区二区三区日本 | 2022年亚洲午夜一区二区福利| 图片区日韩欧美亚洲| 99久久精品国产一区二区三区| 大奉打更人最新章节| 99自拍视频在线观看|