<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計應用 > 16位微控制器的設(shè)計與實現(xiàn)

          16位微控制器的設(shè)計與實現(xiàn)

          作者: 時間:2010-08-27 來源:網(wǎng)絡 收藏
          如圖4所示,在加法指令的最后一個周期(cycle=05),CU單元取指信號codefetche有效,則下一條指令的操作碼(6C,乘法操作碼)被預取出來,同時進行查表譯碼確定其指令字節(jié)長度和指令周期數(shù),隨后操作碼被存入指令寄存器instr中(此時,指令周期計數(shù)器cycle又從01開始計數(shù))。后面乘法指令的操作數(shù)也會不斷被取進來執(zhí)行,直到乘法指令最后一個周期時,又將下一條指令的操作碼預取進來。
          需要說明:codefetche為取操作碼信號,datafetche為取操作數(shù)信號。在指令最后一個周期時若有中斷請求,則插入LCALL指令進行中斷處理,讀取下一條指令。其流程如圖5所示。

          本文引用地址:http://www.ex-cimer.com/article/162885.htm


          2.4 指令譯碼過程
          在MCU設(shè)計過程中,首先完成對各條指令的指令分析工作,確定每個周期該做的動作,然后各部件依據(jù)指令分析表進行相關(guān)的指令譯碼(RAM控制器只譯RAM要做的動作,ALU只譯ALU要做的動作)。過程描述如下:在預取操作碼時,CU單元對操作碼進行譯碼確定指令的字節(jié)長度(nr_bytes)和指令周期數(shù)(nr_cycles)。然后CU依據(jù)指令字節(jié)長度(nr_bytes)取操作數(shù),其他部件依據(jù)指令和當前指令周期(curcycle)執(zhí)行相應的指令操作。表1為加法指令分析表,下面以加法指令的譯碼過程來說明整個譯碼流程:


          1)加法指令 ADD OPl OP2(將OPl+0P2結(jié)果寫入OPl中);其目標碼格式為:ADD OP2 OPl,其中OPl和OP2均為操作數(shù)地址。
          2)0周期 實際指上一條指令的最后一個時鐘周期,此周期codefetche取指信號有效,IPU單元將指令送入CU單元確定了指令周期和指令長度。
          3)l周期 取操作數(shù)信號datafetche有效,op2(地址)進來,被送入RAM地址線,發(fā)讀信號(從RAM寄存器陣列取操作數(shù)2)。
          4)2周期 操作數(shù)2被取入,并存入ALU中的a寄存器;此周期取操作數(shù)信號datafetche有效,opl(地址)進來,被送入RAM地址線,發(fā)讀信號。
          5)3周期 操作數(shù)l被取入,并存入ALU中的b寄存器;加法器立刻進行a+b運算。
          6)4周期 將加法結(jié)果放到RAM數(shù)據(jù)線上,地址線=opl,發(fā)寫信號。將加法結(jié)果寫回到opl中,并依據(jù)結(jié)果對PSW進行處理。
          7)5周期 無動作,用于寫回操作的過程。

          3 驗證結(jié)果
          3.1 仿真驗證

          芯片的功能與結(jié)構(gòu)設(shè)計,只是設(shè)計流程的一部分,為保證最終設(shè)計成功,必須對其全面仿真與功能驗證。對MCU的測試方法如下:1)功能模塊的單元測試,驗證模塊的功能正確性,包括接口時序等。2)系統(tǒng)集成測試,首先編寫簡單的機器碼測試向量進行初步調(diào)試:然后使用編譯器寫匯編程序,編譯成二進制機器碼進行程序功能測試。在集成測試中,編寫匯編測試程序,用編譯器編譯成機器碼,在Cadenee NC下運行這些測試程序進行仿真測試。對每條指令均測試了其各種尋址方式,且測試程序自動向DEBUG寄存器寫測試結(jié)果,以方便調(diào)試。經(jīng)過復雜的測試和不斷修正,驗證結(jié)果顯示MCU指令執(zhí)行的正確性。
          3.2 FPGA驗證
          使用的FPGA器件是StratixⅡ型號為EP1S40F780C7。綜合結(jié)果顯示:A8096使用3 565個LE(Logic Element)。時序分析結(jié)果:A8096可以運行在49.93 MHz的時鐘頻率下。A8096占用FPGA資源分布情況如圖6所示。



          4 結(jié)論
          本設(shè)計中,采用RISC技術(shù)中的硬布線控制邏輯,有利于減少MCU面積、降低功耗以及提高MCU執(zhí)行效率,F(xiàn)PGA實現(xiàn)表明其只占用了3 565個LE單元,工作時鐘可達50 MHz。同時該MCU具有很強的擴展性與實用性,應用領(lǐng)域廣泛,可方便與定時器、串行通訊接口(I2C)、串行外圍接口(SPI)、模數(shù)(A/D)轉(zhuǎn)換器等外圍功能單元組成各種嵌入式系統(tǒng),完全具備實際應用價值。


          上一頁 1 2 下一頁

          關(guān)鍵詞: 編解碼器

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();