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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Nios II軟核的多核處理器系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

          基于Nios II軟核的多核處理器系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

          ——
          作者:孔德春 施慧彬 時(shí)間:2014-04-24 來(lái)源:電子產(chǎn)品世界 收藏

            重要的是,在系統(tǒng)中Mutex本身無(wú)法從物理上防止共享資源被處理器同時(shí)訪問(wèn),而提供此功能是我們所編寫的軟件程序。在獲得相關(guān)共享資源前,軟件總是詢問(wèn)并獲得Mutex核。

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

            2.2 軟件設(shè)計(jì)

            本設(shè)計(jì)中,兩個(gè)處理器的軟件程序都擁有自己獨(dú)有的一段存儲(chǔ)空間,這些存儲(chǔ)空間都位于同一個(gè)物理存儲(chǔ)設(shè)備SDRAM上,如圖3所示,第一個(gè)處理器使用SDRAM中0x0到0x1FFFF之間的地址空間,第二個(gè)處理器使用0x20000到0x2FFFF之間的地址空間,并且以異常地址作為邊界。

            異常地址是程序加載的地址,決定著哪個(gè)處理器的軟件程序可以占據(jù)空間基地址運(yùn)行。 IDE負(fù)責(zé)鏈接處理器的軟件設(shè)計(jì)并映射到存儲(chǔ)器中,并為每個(gè)處理器提供其獨(dú)有的段空間來(lái)運(yùn)行軟件設(shè)計(jì)。對(duì)于每個(gè)處理器來(lái)說(shuō),有五個(gè)主要的代碼段需要映射到存儲(chǔ)器的固定地址中:.text,存放實(shí)際執(zhí)行的代碼;.rodata,存放實(shí)際執(zhí)行代碼中所使用的常量;.rwdata,存放讀寫變量和指針;Heap,自動(dòng)分配的空間;Stack,存放函數(shù)調(diào)用的參數(shù)和其他臨時(shí)的數(shù)據(jù)。

            同時(shí)在雙處理器系統(tǒng)中,每個(gè)處理器都必須從自己的啟動(dòng)存儲(chǔ)空間來(lái)啟動(dòng)。啟動(dòng)存儲(chǔ)器和程序存儲(chǔ)器一樣也能被分區(qū),只需在存儲(chǔ)器上設(shè)置每個(gè)處理器的復(fù)位地址就可以。

            3 系統(tǒng)軟硬件實(shí)現(xiàn)

            SopcBuilder是Altera公司提供的一款圖形化系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)工具,內(nèi)嵌于Quartus II軟件中。利用SopcBuilder實(shí)現(xiàn)的系統(tǒng)如圖4所示,包括了兩個(gè)軟核處理器以及其他內(nèi)外設(shè),連接關(guān)系表現(xiàn)了系統(tǒng)組件如何通過(guò)Avalon總線構(gòu)成一個(gè)可以工作的系統(tǒng)。系統(tǒng)配置對(duì)每個(gè)系統(tǒng)組件分配了基地址,以實(shí)現(xiàn)Avalon總線對(duì)組件的訪問(wèn)。

            對(duì)于利用SopcBuilder生成的系統(tǒng),通過(guò)JTAG接口下載配置到Altera的開(kāi)發(fā)板上,然后在 IDE中調(diào)用HAL API函數(shù)開(kāi)發(fā)C 語(yǔ)言應(yīng)用程序就可以在開(kāi)發(fā)板上運(yùn)行,以此來(lái)驗(yàn)證所設(shè)計(jì)的多核系統(tǒng)是否能夠正確運(yùn)行。本文利用Altera公司提供的例程hello_world_multi,再將其修改后,各個(gè)處理器通過(guò)交替獲得Mutex的所有權(quán),執(zhí)行相同的程序,并將處理數(shù)據(jù)存儲(chǔ)在片上共享存儲(chǔ)器上,最終通過(guò)CPU_1的JTAG_Uart打印到Nios II IDE終端。圖5為驗(yàn)證程序的運(yùn)行結(jié)果在Nios II IDE輸出窗口的打印,可以看出,兩個(gè)核都能通過(guò)Mutex獲得外設(shè)的控制權(quán),表明系統(tǒng)配置成功且能正確運(yùn)行。

            結(jié)語(yǔ)

            本文根據(jù)SOPC技術(shù)利用Quartus的SopcBuilder構(gòu)建硬件平臺(tái),利用Nios II IDE運(yùn)行軟件程序,實(shí)驗(yàn)結(jié)果表明:軟硬件設(shè)計(jì)正確,系統(tǒng)能正常運(yùn)行。同時(shí),本設(shè)計(jì)為以上的多核系統(tǒng)的設(shè)計(jì)提供了理論基礎(chǔ)。

          存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理



          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: FPGA Nios II 雙核 互斥核 RISC 201405

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