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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 在 Zynq MPSoC 上運(yùn)行 DOOM 游戲

          在 Zynq MPSoC 上運(yùn)行 DOOM 游戲

          作者: 時(shí)間:2016-08-03 來(lái)源:電子產(chǎn)品世界 收藏

            聽起來(lái)很好,但能否用另一個(gè)模式實(shí)現(xiàn)一些功能?

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

            對(duì)我們的機(jī)器稍加擴(kuò)展,就可以引入 HYPER 模式。HYPER 模式可以讀/寫所有初始寄存器(RegisterA、RegisterB、RegisterC、UserProgramCounter、RegisterSuper 和 SuperProgramCounter)以及兩個(gè)附加寄存器:RegisterHyper 和 HyperProgramCounter。HYPER 模式下的指令包括初始集以及下面的斜體字。

            ADD Register3 Register1 Register2 將 Register1 與 Register2 相加并把結(jié)果放在 Register3 中,即 Register3 = Register1 + Register2。

            MOVTO Register2 Register1 將 Register1 中地址所指向的存儲(chǔ)器內(nèi)容移到 Register2。

            MOVFROM Register2 Register1 將 Register1 的內(nèi)容移到 Register2 中地址所指向的存儲(chǔ)器。

            MOVTOPHYS Register2 Register1 將 Register1 中物理地址指向的存儲(chǔ)器內(nèi)容移到 Register2。

            MOVFROMPHYS Register2 Register1 將 Register1 的內(nèi)容移到 Register2 中地址指向的物理存儲(chǔ)器。

            ENTERSUPER 進(jìn)入處理器的 SUPER 模式。

            EXITSUPER 退出 SUPER 模式并進(jìn)入 USER 模式。

            ENTERHYPER 進(jìn)入處理器的 HYPER 模式。

            EXITHYPER 退出處理器的 HYPER 模式。

            SWITCHSUPER RegisterHyper 切換到 SUPER 程序,該程序?qū)⑹褂?RegisterHyper 中的值來(lái)執(zhí)行下一個(gè) SUPER 程序。

            HYPER 模式中的附加指令和寄存器允許處理器切換哪個(gè)程序在 SUPER 模式中運(yùn)行,就像 SUPER 模式允許處理器切換哪個(gè)程序在 USER 模式中運(yùn)行一樣。HYPER 模式的一個(gè)特性是能夠切換哪個(gè)存儲(chǔ)器 SUPER 模式能看到;當(dāng)一個(gè)在 HYPER 模式中運(yùn)行的程序執(zhí)行 SWITCHSUPER RegisterHyper 時(shí),底層存儲(chǔ)器完全斷開。這就是說(shuō)當(dāng) HYPER 模式中的程序執(zhí)行了 EXITHYPER 之后,下個(gè) SUPER 程序運(yùn)行之時(shí),SUPER 模式看到的實(shí)際物理存儲(chǔ)器與運(yùn)行在 SUPER 模式中的另一個(gè)程序使用的物理存儲(chǔ)器不同。SUPER 模式程序仍使用相同地址訪問(wèn)存儲(chǔ)器,但是該地址指向不同的物理位置。圖 1 顯示了執(zhí)行 SWITCHSUPER RegisterHyper 前后的處理器存儲(chǔ)器視圖。

            HYPER 模式很有用,是因?yàn)樗试S很多個(gè) SUPER 程序運(yùn)行。SUPER 模式中每個(gè)程序都可以是 OS;這些 OS 本身可以讓很多 USER 程序并列運(yùn)行.這意味著,我們可以在相同硬件上運(yùn)行多個(gè) OS,例如 Windows 和 Linux;在一個(gè)處理器上運(yùn)行 20 個(gè) Linux 實(shí)例;或者之間的任意組合。由于每個(gè)虛擬 OS 實(shí)例無(wú)法看到另一個(gè) OS 實(shí)例,因此如果一個(gè)崩潰,不會(huì)使另一個(gè)實(shí)例也崩潰。HYPER 模式的特性還有其他應(yīng)用:我們可以在多個(gè) OS 之間對(duì)系統(tǒng)資源分區(qū);監(jiān)測(cè) HYPER 模式下每個(gè) OS 的執(zhí)行,以在崩潰時(shí)重啟;以及在虛擬 OS 運(yùn)行時(shí)密切關(guān)注系統(tǒng)狀態(tài)。

            

           

            圖 1:HYPER 模式下執(zhí)行 SWITCHSUPER RegisterHyper 的前后區(qū)別

            隨著處理器從 USER 切換到 SUPER 模式,再?gòu)?SUPER 切換到 HYPER 模式,機(jī)器會(huì)賦予執(zhí)行代碼更多特權(quán)。本例中,USER 模式程序只有權(quán)使用四個(gè)寄存器(RegisterA、RegisterB、RegisterC 和 UserProgramCounter)和四個(gè)指令:(ADD、MOVTO、MOVFROM和ENTER-SUPER)。此外,USER 程序只能讀寫 0x0000_0100 至 0x0FFF_ FFFF 的存儲(chǔ)器。一旦進(jìn)入 SUPER 模式,處理器允許指令與 RegisterSuper 和 SuperProgramCounter 對(duì)話,并允許執(zhí)行 EXITSUPER 和 ENTERHYPER。此外,SUPER 程序可以訪問(wèn)從 0x0000_0000 至 0x7FFF_FFFF 的存儲(chǔ)器。



          關(guān)鍵詞: Zynq MPSoC

          評(píng)論


          相關(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); })();