RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

MCU IP核特定層次化數(shù)據(jù)通道模型的設(shè)計(jì)及仿真驗(yàn)證分析

電子設(shè)計(jì) ? 來源:電子技術(shù)應(yīng)用 ? 作者:李秀娟,王祖強(qiáng), ? 2021-06-23 17:00 ? 次閱讀

作者:李秀娟,王祖強(qiáng),張?zhí)?/p>

隨著IC產(chǎn)業(yè)的發(fā)展,IP核的需求越來越高。微控制器MCU(Micro Control Unit)是嵌入式系統(tǒng)的核心,8位MCU IP核具有很高的通用性和靈活性,廣泛地應(yīng)用于工業(yè)控制、機(jī)械設(shè)備、家用電器以及汽車等各個(gè)領(lǐng)域。本文設(shè)計(jì)的MCU IP核與Microchip公司PIC16C57完全兼容。MCU IP核采用哈佛結(jié)構(gòu),內(nèi)部單元可簡化為時(shí)序控制和數(shù)據(jù)通道兩部分。時(shí)序控制部分為數(shù)據(jù)通道提供控制信號(hào),控制數(shù)據(jù)流動(dòng)方向以及數(shù)據(jù)通路的選擇,它是IP核的指揮中心;數(shù)據(jù)通道部分在控制部分的控制下,具體實(shí)現(xiàn)MCU IP核的指令功能,它是影響MCU性能、功耗等因素的關(guān)鍵,是整個(gè)芯片設(shè)計(jì)的重點(diǎn)。

本文在設(shè)計(jì)該款MCU IP核的數(shù)據(jù)通道部分過程中,提出了一種特定的數(shù)據(jù)通道模型;最后,通過對整個(gè)MCU IP核仿真綜合,對該數(shù)據(jù)通道模型進(jìn)行了驗(yàn)證。

1 數(shù)據(jù)通道模型及數(shù)據(jù)總線Verilog HDL模型

1.1 數(shù)據(jù)通道模型結(jié)構(gòu)圖

本文設(shè)計(jì)的MCU數(shù)據(jù)通道模型包含各數(shù)據(jù)通道單元及單條雙向數(shù)據(jù)總線。其中數(shù)據(jù)通道單元主要由特殊功能寄存器、通用寄存器及運(yùn)算單元ALU等電路組成,每個(gè)通道單元還可再分為多個(gè)子通道單元。數(shù)據(jù)通道頂層模型如圖1所示,數(shù)據(jù)主要在數(shù)據(jù)總線及各數(shù)據(jù)通道單元中流動(dòng),由一條雙向數(shù)據(jù)總線完成每個(gè)數(shù)據(jù)組元的讀寫操作,充當(dāng)每個(gè)組元源總線及目的總線雙重功能,并由特定電路完成總線數(shù)據(jù)的讀寫操作。該數(shù)據(jù)通道模型的最大特點(diǎn)為:通過n個(gè)子通道選擇信號(hào),各數(shù)據(jù)通道單元內(nèi)部可再分為n個(gè)子數(shù)據(jù)通道,由1/n譯碼器實(shí)現(xiàn)每一個(gè)時(shí)刻只有一條子通道選通。上層的數(shù)據(jù)通道控制信號(hào)仍然有效,作為子層數(shù)據(jù)通道的公共開關(guān)。依次類推,該數(shù)據(jù)通道模型可以是多層的。數(shù)據(jù)通道層次模型如圖2所示。

數(shù)據(jù)通道模型內(nèi)數(shù)據(jù)的流動(dòng)在時(shí)間軸上是時(shí)刻向前的,而數(shù)據(jù)流動(dòng)的軌跡則呈現(xiàn)為相互環(huán)繞的螺旋形。

1.2 內(nèi)部數(shù)據(jù)總線的Verilog HDL模型

數(shù)據(jù)通道模型中內(nèi)部數(shù)據(jù)總線分別由三態(tài)門和多路選擇器實(shí)現(xiàn)讀寫操作,使用特定的硬件描述語言Verilog HDL代碼模型進(jìn)行描述。對于掛接n個(gè)數(shù)據(jù)通道單元的m位數(shù)據(jù)通道內(nèi)部數(shù)據(jù)總線,讀、寫兩種操作的Verilog HDL代碼模型分別表示如下:

2 設(shè)計(jì)實(shí)現(xiàn)

本文以數(shù)據(jù)通道單元ALU為例介紹數(shù)據(jù)通道模型的層次結(jié)構(gòu)。ALU是MCU IP核的運(yùn)算單元,是數(shù)據(jù)的加工處理部件,是數(shù)據(jù)通道中最特殊的數(shù)據(jù)通道單元。它實(shí)現(xiàn)加、減、與、或、異或、非、左移、右移、半字節(jié)交換等九種運(yùn)算,其中前五種是雙操作數(shù)操作,其余四種是單操作數(shù)操作。對于雙操作數(shù)操作,ALU數(shù)據(jù)通道單元一邊采用兩條兩個(gè)源操作數(shù)數(shù)據(jù)通道,另一邊采用一條目標(biāo)操作數(shù)數(shù)據(jù)通道;而單操作數(shù)操作僅需開啟一條源操作數(shù)數(shù)據(jù)通道。

本文的ALU采用低功耗設(shè)計(jì)。通過控制部分譯碼得出ALU主要實(shí)現(xiàn)四種運(yùn)算:算術(shù)運(yùn)算、邏輯運(yùn)算、移位運(yùn)算以及半字節(jié)交換運(yùn)算。本文通過加、減操作復(fù)用一個(gè)8位超前進(jìn)位加法器,將ALU模塊分為8個(gè)運(yùn)算單元,構(gòu)成8個(gè)子數(shù)據(jù)通道。通過對ALU子數(shù)據(jù)通道選通信號(hào)aluop[2:0]進(jìn)行譯碼對8條子通道進(jìn)行選通,如表1所示。在系統(tǒng)復(fù)位或者不工作時(shí),各運(yùn)算單元處于休眠狀態(tài);在每條指令的執(zhí)行周期,ALU中8個(gè)子數(shù)據(jù)通道始終只有一條子數(shù)據(jù)通道處于選通工作狀態(tài)。不同類的指令對應(yīng)不同的數(shù)據(jù)通道,把對ALU運(yùn)算的控制轉(zhuǎn)化為對ALU內(nèi)子數(shù)據(jù)通道的選擇,降低了ALU整體功耗。

一般來說,數(shù)據(jù)通道的選通由選通信號(hào)控制,而數(shù)據(jù)通道的開啟必須由整個(gè)MCU IP核控制部分產(chǎn)生的四相不重疊時(shí)鐘節(jié)拍控制,分別為clk1、clk2、clk3、clk4。時(shí)鐘節(jié)拍不參與數(shù)據(jù)通道的選擇,所起作用只是數(shù)據(jù)通道的開啟。數(shù)據(jù)通道內(nèi)數(shù)據(jù)的流動(dòng)是有方向的,本文中數(shù)據(jù)流動(dòng)的方向性體現(xiàn)為不同時(shí)鐘節(jié)拍控制的不同數(shù)據(jù)通道的開啟。以單操作數(shù)指令半字節(jié)交換指令(SWAP)為例說明,半字節(jié)交換指令只需開啟一條源操作數(shù)通道。如圖3所示,控制部分在clk1時(shí)取出指令,產(chǎn)生控制信號(hào),進(jìn)入數(shù)據(jù)通道操作;在clk2時(shí),在存儲(chǔ)單元中選擇源操作數(shù)寫入數(shù)據(jù)總線,開啟ALU運(yùn)算單元的源操作數(shù)alu_xbus_a[7:0]數(shù)據(jù)通道,此時(shí)內(nèi)部雙向數(shù)據(jù)總線充當(dāng)ALU源總線;在clk3時(shí),根據(jù)ALU模塊子通道選通信號(hào)aluop[3:0]選擇ALU功能模塊SWAP,開啟源操作數(shù)進(jìn)入ALU進(jìn)行半字節(jié)交換運(yùn)算的數(shù)據(jù)通道;在clk4時(shí),將ALU運(yùn)算單元的運(yùn)算結(jié)果aluout[7:0]通過數(shù)據(jù)總線寫入到各目的數(shù)據(jù)通道單元中,即開啟目的操作數(shù)數(shù)據(jù)通道,此時(shí)內(nèi)部雙向數(shù)據(jù)總線充當(dāng)ALU目的總線。

需要說明的是,圖3中數(shù)據(jù)databus[7:0]來自數(shù)據(jù)總線,由數(shù)據(jù)通道單元特殊功能寄存器和通用寄存器提供數(shù)據(jù)。其中特殊功能寄存器包括F0間址寄存器、F1實(shí)時(shí)時(shí)鐘/計(jì)數(shù)寄存器RTCC、F2程序計(jì)數(shù)器PC,F(xiàn)3狀態(tài)計(jì)數(shù)器STATUS、F4寄存器選擇寄存器FSR以及F5、F6、F7 I/O寄存器。可以向下再分為8條子數(shù)據(jù)通道,子通道選通信號(hào)為fsel[2:0],而上層數(shù)據(jù)通道開關(guān)控制信號(hào)為rf_spr_re、rf_spr_we,即特殊功能寄存器讀寫控制信號(hào)。其具體實(shí)現(xiàn)與ALU數(shù)據(jù)通道單元類似,這里不再贅述。

在該款MCUIP核數(shù)據(jù)通道模型中,數(shù)據(jù)總線全部采用本文所述的Verilog HDL代碼模型描述?;谥行膰HSMIC 0.35μm工藝庫(工作電壓為3伏),使用Synopsys公司VCS和 DC對該款MCU IP核進(jìn)行了仿真綜合,并進(jìn)行了功耗分析。綜合分析結(jié)果得出,該數(shù)據(jù)通道電路結(jié)構(gòu)規(guī)整,設(shè)計(jì)得到了簡化,總體功耗約為49.5980mW,實(shí)現(xiàn)了低功耗設(shè)計(jì)。

本文使用固定電路結(jié)構(gòu)描述內(nèi)部數(shù)據(jù)總線,通過特定層次化數(shù)據(jù)通道模型的設(shè)計(jì),體現(xiàn)了自頂向下(Top-Down)的設(shè)計(jì)方法,降低了整個(gè)MCU IP 核設(shè)計(jì)的復(fù)雜度,縮短了設(shè)計(jì)周期。該設(shè)計(jì)適用于大規(guī)模系統(tǒng)芯片開發(fā)設(shè)計(jì)。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7542

    瀏覽量

    151316
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17123

    瀏覽量

    350982
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5336

    瀏覽量

    120230
收藏 人收藏

    評論

    相關(guān)推薦

    FPGA的IP使用技巧

    ,并配置相應(yīng)的參數(shù)。 在進(jìn)行參數(shù)配置時(shí),務(wù)必注意參數(shù)的取值范圍、限制條件和影響。避免由于錯(cuò)誤的參數(shù)配置導(dǎo)致IP無法正常工作。 集成和驗(yàn)證 : 將所選的
    發(fā)表于 05-27 16:13

    IP生成文件:XilinxAltera

    asyn_fifo.veo 給出了例方式(或者在Edit ->Language Template->COREGEN 中找到verilog/VHDL 的例方式)。asyn_fifo.v 是該
    發(fā)表于 08-12 12:21

    fft ip仿真驗(yàn)證

    我用quartus II調(diào)用modelsim仿真fft ip,仿真結(jié)束后我想驗(yàn)證數(shù)據(jù)是否正確
    發(fā)表于 09-20 12:48

    使用ISE的CIC IP時(shí)仿真出來的結(jié)果求幫分析??!

    新手見諒使用IP設(shè)計(jì)了一個(gè)10階3級的CIC濾波器,輸入數(shù)據(jù)位寬12位,輸出最大22位但是仿真出來的結(jié)果有種溢出的感覺,想不通是怎么回事,求各位前輩幫忙
    發(fā)表于 10-13 16:56

    基于層次模型的USB2.0接口芯片IP固件的設(shè)計(jì)

    的接口芯片,但國內(nèi)對該領(lǐng)域的研究尚處于較初級的階段。本文對USB IP設(shè)計(jì)方法,提出了一種USB2.0設(shè)備接口IP固件的實(shí)現(xiàn)方案,該方案采用合理定義的
    發(fā)表于 12-03 15:24

    基于FPGA的數(shù)據(jù)采集控制器IP的設(shè)計(jì)方案和實(shí)現(xiàn)方法研究

    此提供了新的解決方案。IP(IP Core)是具有特定電路功能的硬件描述語言程序,可較方便地進(jìn)行修改和定制,以提高設(shè)計(jì)效率[3]。本文研究了基于FPGA的
    發(fā)表于 07-09 07:23

    分享一種8位嵌入式RISC MCU IP數(shù)據(jù)通道模型設(shè)計(jì)

    本文在設(shè)計(jì)該款MCU IP數(shù)據(jù)通道部分過程中,提出了一種特定數(shù)據(jù)通道
    發(fā)表于 06-01 06:27

    IP 核可交付成果

    仿真模型(可選)基本延遲模型。測試臺(tái)中使用的 BFM(總線功能模型)和總線監(jiān)視器 文檔文件 功能規(guī)范、描述和架構(gòu)主要特點(diǎn)和聲明全面的技術(shù)規(guī)格和數(shù)據(jù)
    發(fā)表于 02-18 21:51

    基于Avalon總線的可配置LCD控制器IP的設(shè)計(jì)

    本文討論了基于Avalon 總線流傳輸?shù)呐渲肔CD 顯示控制器IP 的設(shè)計(jì),根據(jù)自頂向下的設(shè)計(jì)思想,將IP 進(jìn)行層次功能劃分設(shè)計(jì),并對
    發(fā)表于 11-30 14:33 ?16次下載

    8位RISC MCU IP仿真的新方法

    本文所要驗(yàn)證的8位RISC MCU IP是與Microchip公司的8位MCU指令集完全兼容的IP
    發(fā)表于 07-19 10:13 ?1691次閱讀
    8位RISC <b class='flag-5'>MCU</b> <b class='flag-5'>IP</b>軟<b class='flag-5'>核</b><b class='flag-5'>仿真</b>的新方法

    基于MCU IPALU單元實(shí)現(xiàn)數(shù)據(jù)通道模型的設(shè)計(jì)并進(jìn)行仿真驗(yàn)證

    隨著IC產(chǎn)業(yè)的發(fā)展,IP的需求越來越高。微控制器MCU(Micro Control Unit)是嵌入式系統(tǒng)的核心,8位MCU IP
    的頭像 發(fā)表于 01-10 07:59 ?2545次閱讀
    基于<b class='flag-5'>MCU</b> <b class='flag-5'>IP</b><b class='flag-5'>核</b>ALU單元實(shí)現(xiàn)<b class='flag-5'>數(shù)據(jù)通道</b><b class='flag-5'>模型</b>的設(shè)計(jì)并進(jìn)行<b class='flag-5'>仿真</b><b class='flag-5'>驗(yàn)證</b>

    如何使用FPGA進(jìn)行仿真系統(tǒng)數(shù)據(jù)采集控制器IP設(shè)計(jì)的資料概述

    介紹了在大型工業(yè)模擬仿真系統(tǒng)中,利用FPGA和軟IP核實(shí)現(xiàn)數(shù)據(jù)采集及收發(fā)控制的方案,并對其進(jìn)行設(shè)計(jì)實(shí)現(xiàn)。重點(diǎn)闡述了在發(fā)送指令和采集接收兩種數(shù)據(jù)流模式下.該
    發(fā)表于 11-07 11:14 ?20次下載
    如何使用FPGA進(jìn)行<b class='flag-5'>仿真</b>系統(tǒng)<b class='flag-5'>數(shù)據(jù)</b>采集控制器<b class='flag-5'>IP</b><b class='flag-5'>核</b>設(shè)計(jì)的資料概述

    IP仿真的實(shí)體或塊級別是如何完成的

    。這里參照的模型主要用于對系統(tǒng)功能進(jìn)行驗(yàn)證以及和RTL模型的對照驗(yàn)證,該模型主要用Verilog HDL等語言來構(gòu)造。測試平臺(tái)的建立與子模塊
    的頭像 發(fā)表于 06-13 15:54 ?1199次閱讀

    VCS獨(dú)立仿真Vivado IP的問題補(bǔ)充

    仿真Vivado IP時(shí)分兩種情況,分為未使用SECURE IP和使用了SECURE IP
    的頭像 發(fā)表于 06-06 14:45 ?1735次閱讀
    VCS獨(dú)立<b class='flag-5'>仿真</b>Vivado <b class='flag-5'>IP</b><b class='flag-5'>核</b>的問題補(bǔ)充

    測試與驗(yàn)證復(fù)雜的FPGA設(shè)計(jì)(2)——如何在虹科的IP中執(zhí)行面向全局的仿真

    仿真驗(yàn)證是開發(fā)任何高質(zhì)量的基于FPGA的RTL編碼過程的基礎(chǔ)。在上一篇文章中,我們介紹了面向?qū)嶓w/塊的仿真,即通過在每個(gè)輸入信號(hào)上生成激勵(lì)并驗(yàn)證RTL代碼行為是否符合預(yù)期,對構(gòu)成每個(gè)
    的頭像 發(fā)表于 06-15 17:31 ?696次閱讀
    測試與<b class='flag-5'>驗(yàn)證</b>復(fù)雜的FPGA設(shè)計(jì)(2)——如何在虹科的<b class='flag-5'>IP</b><b class='flag-5'>核</b>中執(zhí)行面向全局的<b class='flag-5'>仿真</b>
    RM新时代网站-首页