

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 畢業(yè)設(shè)計(jì)外文資料翻譯</p><p> 專 業(yè): 電子信息工程 </p><p> 姓 名: </p><p> 學(xué) 號(hào): 100701113 </p><p>
2、外文出處: http://www.altera.com.cn/literature/</p><p> lit-nio2.jsp/nios II Processor Reference Handbook </p><p> 附 件: 1.外文資料翻譯譯文;2.外文原文。 </p><p> 附件1
3、:外文資料翻譯譯文</p><p> 第二章 處理器架構(gòu) </p><p> 本章介紹了Nios的硬件結(jié)構(gòu),包括Nios II架構(gòu)的所有單元功能和Nios II處理器硬件實(shí)現(xiàn)的基本面。本章包含以下幾個(gè)部分:</p><p><b> ■“處理器實(shí)現(xiàn)” </b></p><p><b> ■“注冊(cè)文
4、件”</b></p><p><b> ■“算術(shù)邏輯單元”</b></p><p> ■“復(fù)位和調(diào)試信號(hào)”</p><p> ■“異常和中斷控制器”</p><p> ■“內(nèi)存和I / O組織”</p><p> ■ “JTAG調(diào)試模塊”</p><p&g
5、t; Nios II架構(gòu)描述的指令集架構(gòu)(ISA ) 。在ISA架構(gòu)中需要一組用于指令功能單元的實(shí)現(xiàn)。Nios II的處理器核心是由Nios II指令集硬件設(shè)計(jì)和本文中所描述的功能單元來(lái)實(shí)現(xiàn)。該處理器核心不包括外圍設(shè)備或外界邏輯連接。它僅包括Nios II體系結(jié)構(gòu)所需實(shí)現(xiàn)電路。Nios II的架構(gòu)包括了以下功能:</p><p><b> ■注冊(cè)文件</b></p><
6、;p> ■算術(shù)邏輯單元(ALU )</p><p> ■自定義邏輯接口指令</p><p><b> ■異??刂破?lt;/b></p><p> ■內(nèi)部或外部中斷控制器</p><p><b> ■指令總線</b></p><p><b> ■數(shù)據(jù)總線
7、</b></p><p> ■內(nèi)存管理單元(MMU )</p><p> ■存儲(chǔ)器保護(hù)單元(MPU )</p><p> ■數(shù)據(jù)高速緩存存儲(chǔ)器和指令</p><p> ■數(shù)據(jù)緊耦合存儲(chǔ)器接口和指令</p><p><b> ■JTAG調(diào)試模塊</b></p>&
8、lt;p><b> 處理器實(shí)現(xiàn) </b></p><p> Nios II體系結(jié)構(gòu)的功能單元由Nios II的基礎(chǔ)指令集構(gòu)成。然而,這并不表示任何單元功能都由硬件實(shí)施。 Nios II的架構(gòu)指令集的描述,并不是一個(gè)特定的硬件實(shí)現(xiàn)。一種單元功能可以由硬件來(lái)實(shí)現(xiàn),仿真軟件,或完全省略。Nios II的實(shí)現(xiàn)是由特定的Nios II的處理器核心來(lái)完成的。所有定義的指令集的實(shí)現(xiàn)可以參考的Ni
9、os II處理器參考手冊(cè)的相關(guān)章節(jié)。各個(gè)執(zhí)行情況如核心尺寸的減小或性能的提高都應(yīng)達(dá)到特定的目標(biāo)。這種Nios II的架構(gòu)的靈活性允許不同的目標(biāo)應(yīng)用程序適應(yīng)。</p><p> 各個(gè)變量通常包含3種功能模式:本身包含的功能、增加的功能、硬件或軟件仿真實(shí)現(xiàn)。實(shí)例如下:</p><p> ■更多的功能,例如,微調(diào)性能,可以增加或降低指令高速緩沖存儲(chǔ)器的量。更大的緩存增加大型程序的執(zhí)行速度,而
10、規(guī)模較小的緩存節(jié)省芯片內(nèi)存。</p><p> ■包含的功能,例如,為了降低成本,可以選擇省略JTAG調(diào)試模塊。這一功能可以節(jié)省邏輯芯片和存儲(chǔ)器資源,但它消除了軟件調(diào)試器對(duì)應(yīng)用程序的調(diào)試能力。</p><p> ■硬件或軟件仿真實(shí)現(xiàn),例如,在控制應(yīng)用程序很少進(jìn)行復(fù)雜的運(yùn)算,可以在仿真軟件選擇適合的除法指令來(lái)實(shí)現(xiàn)。硬件芯片卸下除法指令上,但會(huì)增加程序的操作執(zhí)行時(shí)間。</p>
11、<p> 有關(guān)Nios II內(nèi)核支持的功能信息,請(qǐng)參考Nios II處理器參考手冊(cè)的核心實(shí)施細(xì)則的篇章。關(guān)于用戶想了解Nios II處理器參數(shù)的完整詳細(xì)信息,請(qǐng)參閱Nios II處理器參考手冊(cè)的實(shí)例篇章。</p><p><b> 寄存器文件</b></p><p> Nios II的架構(gòu)支持一個(gè)平面寄存器文件,包括32個(gè)32位通用整數(shù)寄存器,以及多
12、達(dá)32個(gè)32位控制寄存器。該架構(gòu)支持管理員和用戶模式,可以使系統(tǒng)在運(yùn)行應(yīng)用錯(cuò)誤程序時(shí)可以保護(hù)控制寄存器。</p><p> Nios II處理器可以有一個(gè)或多個(gè)映射寄存器集。映射寄存器集是一套完整的Nios II的通用寄存器。狀態(tài)寄存器的CRS字段表示該寄存器為正在使用。一個(gè)指令通常訪問(wèn)一個(gè)通用寄存器。</p><p> 映射寄存器組的一個(gè)典型功能是加速上下文切換。當(dāng)映射寄存器運(yùn)行時(shí),
13、 Nios II處理器有兩個(gè)特殊的指令rdprs和wrprs 來(lái)移動(dòng)寄存器組之間的數(shù)據(jù)。映射寄存器由系統(tǒng)內(nèi)核操作,并是可見(jiàn)的應(yīng)用程序代碼。 Nios II處理器最多可以有63映射寄存器集。</p><p> 有關(guān)映射寄存器集實(shí)現(xiàn)和使用的詳細(xì)信息,請(qǐng)參閱Nios II處理器“寄存器”的編程模型和“異常處理”參考手冊(cè)。有關(guān)rdprs和wrprs指令的詳細(xì)內(nèi)容,請(qǐng)參閱Nios II處理器指令集參考手冊(cè)參考章節(jié)。<
14、;/p><p> Nios II的架構(gòu)允許增加的浮點(diǎn)寄存器。</p><p><b> 算術(shù)邏輯單元</b></p><p> Nios II的ALU用來(lái)存儲(chǔ)通用寄存器的數(shù)據(jù)。 ALU將從一個(gè)或兩個(gè)寄存器的輸入和運(yùn)算結(jié)果存回寄存器。 </p><p><b> 未實(shí)現(xiàn)的指令 </b></p
15、><p> 有些Nios II處理器內(nèi)核實(shí)現(xiàn)不是由硬件提供完整的Nios II指令集實(shí)現(xiàn)的。沒(méi)有硬件支持的指令被稱為未實(shí)現(xiàn)的指令。 </p><p> 該處理器產(chǎn)生異常時(shí),它會(huì)發(fā)出一個(gè)未實(shí)現(xiàn)指令讓你的異常處理程序可以調(diào)用,模擬在操作的例程軟件。未實(shí)現(xiàn)指令不影響的程序員對(duì)程序的處理。想了解未實(shí)現(xiàn)指令的列表,請(qǐng)參閱Nios II處理器參考手冊(cè)的“編程模型”實(shí)例章。</p><
16、;p><b> 自定義指令 </b></p><p> Nios II的架構(gòu)支持用戶自定義指令。 Nios II的ALU直接連接到自定義邏輯指令,使您能夠?qū)崿F(xiàn)在業(yè)務(wù)被訪問(wèn)和使用完全一樣的原生指令的硬件。 </p><p> 欲了解更多信息,請(qǐng)參考Nios II用戶指南的自定義指令和Nios II處理器參考手冊(cè)的自定義指令實(shí)例。</p><
17、;p><b> 浮點(diǎn)指令 </b></p><p> Nios II的架構(gòu)支持由754-1985標(biāo)準(zhǔn)庫(kù)提供的單精度浮點(diǎn)指令?;靖↑c(diǎn)自定義指令包括單精度浮點(diǎn)的加法,減法,乘法和除法,并且可有基本指令集進(jìn)行相關(guān)運(yùn)算。這些浮點(diǎn)指令由自定義指令實(shí)現(xiàn)。浮點(diǎn)參數(shù)編輯器在進(jìn)行除法運(yùn)算時(shí)允許省略浮點(diǎn)從而使運(yùn)行代碼不會(huì)產(chǎn)生大量的除法浮點(diǎn)。當(dāng)你省略了除法浮點(diǎn) 指令時(shí),Nios II的編譯器自動(dòng)實(shí)現(xiàn)除
18、法浮點(diǎn)運(yùn)算。在Qsys中,自定義指令的浮點(diǎn)根據(jù)硬件在包含自定義浮點(diǎn)的組件庫(kù)中說(shuō)明。</p><p> 要添加的自定義浮點(diǎn)指令,在Nios II內(nèi)核處理器SOPC中生成,想了解更多,請(qǐng)查詢Nios II處理器參考手冊(cè)的“自定義指令”實(shí)例。</p><p> Nios II的浮動(dòng)自定義指令說(shuō)明是基于Altera的浮點(diǎn)宏功能包含:ALTFP_MULT,ALTFP_ADD_SUB和ALTFP_
19、DIV。</p><p> 有關(guān)浮點(diǎn)宏功能,包括的更多信息和設(shè)備資源的使用,請(qǐng)參閱宏功能用戶指南,可在Altera網(wǎng)站的IP和宏功能的相關(guān)文獻(xiàn)。 </p><p> 在Nios II軟件開(kāi)發(fā)工具識(shí)別的C代碼,它利用的優(yōu)勢(shì)浮點(diǎn)指令存在于處理器核心。當(dāng)自定義浮點(diǎn)指令存在于你的目標(biāo)硬件,Nios II的編譯器編譯你的代碼以使用自定義指令進(jìn)行浮點(diǎn)運(yùn)算,包括加法,減法,乘法,除法和NEWLIB數(shù)
20、學(xué)庫(kù)。</p><p><b> 軟件開(kāi)發(fā)的思考</b></p><p> 為您的硬件設(shè)計(jì)的最佳選擇取決于之間的浮點(diǎn)平衡用法,硬件資源使用情況和性能。而浮點(diǎn)定制說(shuō)明加快浮點(diǎn)運(yùn)算,它們大大加快了您的硬件設(shè)計(jì)。如果資源的使用是一個(gè)問(wèn)題,則考慮重新加工您算法來(lái)減少浮點(diǎn)運(yùn)算。 </p><p> 您可以在你的軟件中使用#pragma指令,從而比較
21、硬件和軟件的浮點(diǎn)指令的實(shí)現(xiàn)。下面的#pragma指令由Nios II編譯器忽略浮點(diǎn)指令,并由軟件實(shí)現(xiàn)。這些#pragma指令的作用域是整個(gè)C文件。</p><p> ■ #pragma no_custom_fadds—強(qiáng)制軟件實(shí)現(xiàn)浮點(diǎn)加</p><p> ■ #pragma no_custom_fsubs—強(qiáng)制軟件實(shí)現(xiàn)的浮點(diǎn)減</p><p> ■ #prag
22、ma no_custom_fmuls—強(qiáng)制軟件實(shí)現(xiàn)的浮點(diǎn)乘</p><p> ■ #pragma no_custom_fdivs—強(qiáng)制軟件實(shí)現(xiàn)的浮點(diǎn)除</p><p> Nios II的指令集仿真器(ISS)在Nios II集成開(kāi)發(fā)環(huán)境(IDE)不支持自定義指令。如果你需要運(yùn)行軟件在國(guó)際空間站上,禁用軟件浮點(diǎn)定制指令與在#pragma指令。</p><p>
23、所有浮點(diǎn)自定義指令都是單精度運(yùn)算。雙精度浮點(diǎn)運(yùn)算是在軟件中實(shí)現(xiàn)。當(dāng)浮點(diǎn)定制指令不存在,在Nios II編譯把浮點(diǎn)常量作為雙精度值。然而,隨著自定義浮點(diǎn)指令,在Nios II編譯器中將浮點(diǎn)常量因?yàn)槟J(rèn)情況下的單精度數(shù)。這使得所有浮點(diǎn)表達(dá)式在硬件中進(jìn)行評(píng)估,并節(jié)約運(yùn)行速度。</p><p> 如果您不希望浮點(diǎn)常量被自定義成單精度值,每一個(gè)恒定值前加L,則指示編譯器將常量作為一個(gè)雙精度浮點(diǎn)值。在這種情況下,如果一個(gè)表
24、達(dá)式包含一個(gè) 浮點(diǎn)常量,表達(dá)式中的每一項(xiàng)被轉(zhuǎn)換為雙精度。表達(dá)式被計(jì)算用軟件實(shí)現(xiàn)的雙精度四則運(yùn)算表示,但運(yùn)算速度的減慢。</p><p> 如果是GCC4編譯器工具鏈,預(yù)編譯的庫(kù)編譯雙精度浮點(diǎn)常量。預(yù)編譯浮點(diǎn)行為庫(kù)函數(shù)如sin()和cos()是不受的存在浮點(diǎn)自定義指令影響的。</p><p> 以獲得關(guān)于Nios II處理器的復(fù)位信號(hào)更多信息,請(qǐng)參閱Nios II處理器參考手冊(cè)的“高級(jí)功
25、能選項(xiàng)”實(shí)例。對(duì)于Nios II處理器矢量和調(diào)試信號(hào)的更多信息,請(qǐng)參閱Nios II處理器參考手冊(cè)中“JTAG調(diào)試模塊選項(xiàng)”的實(shí)例篇章。</p><p><b> 異常和中斷控制器 </b></p><p> Nios II處理器包括硬件處理異常,包括硬件中斷。它也包括一個(gè)可選的外部中斷控制器(EIC)接口。該EIC界面,您可以通過(guò)添加自定義的中斷控制器來(lái)處理一個(gè)
26、復(fù)雜的系統(tǒng)。 </p><p><b> 異??刂破?</b></p><p> Nios II的架構(gòu)有一個(gè)簡(jiǎn)單的向量異??刂破鱽?lái)處理所有的異常類型。異??刂破?,包括內(nèi)部硬件中斷,從而使處理器執(zhí)行轉(zhuǎn)移到異常地址。異常處理程序地址確定異常控制器,并調(diào)度一個(gè)合適的異常程序。異常地址由在Qsys中的Nios II處理器參數(shù)指定的編輯器和SOPC構(gòu)成。 </p>
27、;<p> 所有的異常都是精確的。該處理器已完成執(zhí)行精確的手段的錯(cuò)誤指令之前的所有指令,并沒(méi)有開(kāi)始執(zhí)行說(shuō)明以下錯(cuò)誤指令。一旦異常處理程序清除異常則異常處理器恢復(fù)執(zhí)行程序。</p><p><b> EIC接口</b></p><p> EIC接口可以提高硬件中斷的性能,還可以減少程序的中斷延遲。EIC接口通常用于與映射寄存器組結(jié)合,而你需要的不僅僅
28、是Nios II內(nèi)部提供32個(gè)中斷控制器。</p><p> Nios II處理器通過(guò)EIC接口連接到EIC 。目前,EIC中斷由Qsys和SOPC內(nèi)部的中斷控制器連接構(gòu)成。</p><p> EIC自動(dòng)選擇并連接到Nios II處理器,與中斷處理程序的地址和寄存器組選擇信息相連接。EIC特定中斷算法的實(shí)現(xiàn),一般根據(jù)中斷優(yōu)先級(jí)來(lái)判斷處理順序。 Nios II處理器不依賴于任何特定的中斷
29、優(yōu)先級(jí)方案中的EIC。對(duì)于外部中斷,EIC接口自主提供中斷級(jí)別。 Nios II處理器用于確定中斷程序的中斷級(jí)。任何外部中斷可配置一個(gè)沒(méi)有被屏蔽 status.PIE位,并且沒(méi)有中斷級(jí)別。EIC接口可以通過(guò)軟件配置。當(dāng)EIC接口和映射寄存器集在Nios II內(nèi)核實(shí)現(xiàn)時(shí),你必須確保你的軟件是在Nios II EDS9.0或更高版本上建立的。早期版本有ERET指令與映射寄存器不兼容的實(shí)現(xiàn)功能。</p><p> E
30、IC的典型例子,在嵌入式外設(shè)IP用戶指南的中斷向量控制器章節(jié)中。有關(guān)EIC使用細(xì)節(jié),請(qǐng)參考Nios II處理器參考手冊(cè)的編程模型“異常處理”一章。</p><p><b> 內(nèi)部中斷控制器</b></p><p> Nios II的架構(gòu)支持32個(gè)內(nèi)部硬件中斷。處理器核心有32個(gè)電平敏感的中斷請(qǐng)求(IRQ)輸入,IRQ0至IRQ31,提供了獨(dú)特的輸入為每個(gè)中斷源。
31、IRQ優(yōu)先級(jí)是由軟件決定,該架構(gòu)支持中斷嵌套??梢酝ㄟ^(guò)啟用和禁用任何單獨(dú)的中斷源來(lái)控制使能寄存器,其中包含一個(gè)中斷軟件使能位由IRQ輸入。軟件可以通過(guò)啟用和禁用使用的PIE位來(lái)控制狀態(tài)寄存器。當(dāng)且僅當(dāng)下列所有條件為真時(shí),硬件中斷產(chǎn)生:</p><p> ■狀態(tài)寄存器的PIE位為1 </p><p> ■一個(gè)中斷請(qǐng)求輸入,IRQ<n>,有效 </p><p
32、> ■相應(yīng)的n位使能寄存器的值為1</p><p> 在SOPC中,Nios II處理器內(nèi)核提供中斷向量自定義指令,從而加速中斷向量調(diào)度,以減少程序的中斷延遲。EIC接口的中斷向量自定義指令與Altera的中斷向量控制器比使用效率較低,從而棄用Qsys。 Altera建議使用EIC接口。</p><p> 有關(guān)中斷向量定制指令,請(qǐng)參閱Nios II處理器參考手冊(cè)“自訂指令選項(xiàng)”
33、實(shí)例。</p><p> 內(nèi)存和I / O組織</p><p> 本節(jié)介紹了Nios II內(nèi)存的硬件細(xì)節(jié),I / O的組織。涵蓋了一般概念所有的Nios II的處理器系統(tǒng),以及從系統(tǒng)到系統(tǒng)的功能。Nios II內(nèi)存和I / O的組織的靈活特性是Nios II處理器系統(tǒng)與傳統(tǒng)的微控制器之間的最顯著差異。由于Nios II處理器在存儲(chǔ)器和外設(shè)是可配置的,因此內(nèi)存和I / O組織變化是從系統(tǒng)
34、到系統(tǒng)。Nios II的核心采用以下提供的指令對(duì)內(nèi)存和I/ O進(jìn)行訪問(wèn): </p><p> ■主端口指令,Avalon 內(nèi)存映射(Avalon-MM)主端口通過(guò)系統(tǒng)互聯(lián)架構(gòu)連接到指令存儲(chǔ)器 </p><p> ■緩存指令,將高速緩沖存儲(chǔ)器的內(nèi)容存儲(chǔ)到Nios II內(nèi)核 </p><p> ■數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)主端口,Avalon-MM主端口和系統(tǒng)互聯(lián)架構(gòu)外設(shè)
35、連接 </p><p> ■高速數(shù)據(jù)緩存存儲(chǔ)器內(nèi)部的數(shù)據(jù)存儲(chǔ)到Nios II的核心 </p><p> ■緊耦合指令或數(shù)據(jù)存儲(chǔ)器端口的接口快速將Nios II內(nèi)核外的數(shù)據(jù)存儲(chǔ)到芯片內(nèi)</p><p> Nios II的架構(gòu)可處理硬件程序的細(xì)節(jié),所以程序員可以開(kāi)發(fā)Nios II的應(yīng)用程序,來(lái)實(shí)現(xiàn)具體的知識(shí)硬件。</p><p> 對(duì)于編
36、程問(wèn)題的詳細(xì)信息,請(qǐng)參閱Nios II處理器參考手冊(cè)的編程模型章。</p><p><b> 指令和數(shù)據(jù)總線 </b></p><p> Nios II體系結(jié)構(gòu)支持獨(dú)立的指令和數(shù)據(jù)總線,它作為哈佛架構(gòu)。指令和數(shù)據(jù)總線連接Avalon-MM主端口和Avalon-MM的規(guī)范接口。該數(shù)據(jù)主端口連接到內(nèi)存和外圍元件,而指令主端口只連接到內(nèi)存組件。</p>&
37、lt;p><b> 內(nèi)存和外設(shè)訪問(wèn) </b></p><p> Nios II架構(gòu)通過(guò)的內(nèi)存映射I/ O接口訪問(wèn)數(shù)據(jù)存儲(chǔ)器和外設(shè)映射到數(shù)據(jù)主端口的地址空間。該 Nios II的架構(gòu)使用小端字節(jié)順序,字和半字存儲(chǔ)在內(nèi)存的高位地址。 </p><p> Nios II體系結(jié)構(gòu)不指定有關(guān)內(nèi)存的任何外設(shè)、數(shù)量、類型,并依賴于系統(tǒng)與外圍設(shè)備相連接。通常情況下,Nio
38、s II處理器系統(tǒng)包含快速片上的混合存儲(chǔ)器和較慢的片外存儲(chǔ)器。外設(shè)通過(guò)接口將存在的外設(shè)數(shù)據(jù)存儲(chǔ)到芯片。</p><p><b> 指令主端口</b></p><p> Nios II的指令總線通過(guò)一個(gè)32位的Avalon -MM主端口來(lái)實(shí)現(xiàn)。該指令主端口執(zhí)行單一的功能,取指令是由處理器執(zhí)行,該指令主端口不執(zhí)行任何寫操作。</p><p>
39、 指令主端口是一個(gè)流水線的Avalon -MM主端口。支持流水線的Avalon -MM轉(zhuǎn)讓與最大限度地減少同步存儲(chǔ)以及減緩流水線的延遲,并增加了系統(tǒng)的整體最大存儲(chǔ)值。該主端口指令可以發(fā)出連續(xù)的讀取請(qǐng)求,將之前的數(shù)據(jù)讀取,并且讀取后請(qǐng)求返回。Nios II處理器可以連續(xù)緩存指令和執(zhí)行分支并且指令管道盡可能保持活躍。</p><p> 指令主端口始終獲取32位的數(shù)據(jù)。該主端口指令依賴于互連系統(tǒng)結(jié)構(gòu)和動(dòng)態(tài)總線的邏輯。
40、通過(guò)動(dòng)態(tài)總線,每次指令一個(gè)完整的字,不管目標(biāo)存儲(chǔ)器的寬度,都自動(dòng)返回。因此,程序不需要知道Nios II處理器系統(tǒng)內(nèi)存的寬度。</p><p> Nios II架構(gòu)支持芯片以較慢速度訪問(wèn)內(nèi)存來(lái)提高指令端口提取指令的性能。想了解更多詳細(xì)內(nèi)容,請(qǐng)參閱“高速緩存內(nèi)存“一節(jié)第2-13頁(yè)。 Nios II的架構(gòu)支持緊密耦合內(nèi)存,可以延遲訪問(wèn)片上存儲(chǔ)器。更多信息,請(qǐng)參閱讀2-14頁(yè)的“緊耦合存儲(chǔ)器”章節(jié)的有關(guān)詳細(xì)信息。&l
41、t;/p><p><b> 數(shù)據(jù)主端口 </b></p><p> Nios II的數(shù)據(jù)總線支持一個(gè)32位的Avalon-MM主端口。數(shù)據(jù)主端口擁有兩個(gè)功能: </p><p> ■閱讀來(lái)自存儲(chǔ)器或外設(shè)的數(shù)據(jù)時(shí),處理器執(zhí)行的負(fù)載指令 </p><p> ■將數(shù)據(jù)寫入存儲(chǔ)器或外設(shè)時(shí),處理器執(zhí)行一個(gè)存儲(chǔ)指令 </p
42、><p> 字節(jié)使能主端口上的信號(hào),通過(guò)要寫入指定的其中四個(gè)字節(jié)通道來(lái)存儲(chǔ)操作。當(dāng)Nios II的核心與數(shù)據(jù)高速緩沖存儲(chǔ)器被配置為大于四個(gè)字節(jié),數(shù)據(jù)主端口支持流水線的Avalon-MM傳輸。當(dāng)該數(shù)據(jù)的高速緩存只有4個(gè)字節(jié)大小,任何內(nèi)存流水線都是由數(shù)據(jù)主端口來(lái)感知等待狀態(tài)。裝載和存儲(chǔ)操作可以在一個(gè)單一時(shí)鐘周期內(nèi)完成,數(shù)據(jù)主端口連接到內(nèi)存的零等待狀態(tài)。</p><p> 在Nios II架構(gòu)支
43、持芯片以高速緩存來(lái)提高平均數(shù)據(jù)訪問(wèn)速度較慢的內(nèi)存?zhèn)鬏斝阅?。更多信息,?qǐng)參閱“快取記憶體”第2-13頁(yè)的說(shuō)明。 Nios II的架構(gòu)支持緊密耦合內(nèi)存,可以延遲訪問(wèn)片上存儲(chǔ)器。請(qǐng)參閱第2頁(yè)-14因?yàn)榧?xì)節(jié)“緊耦合存儲(chǔ)器”。</p><p> 共享內(nèi)存的指令和數(shù)據(jù)</p><p> 通常情況下,指令和數(shù)據(jù)主端口共享一個(gè)包含指令和數(shù)據(jù)的存儲(chǔ)器。而處理器內(nèi)核具有獨(dú)立的指令和數(shù)據(jù)總線,整體Nios
44、II處理器的系統(tǒng)可能呈現(xiàn)一個(gè)單一的,共享指令/數(shù)據(jù)總線到外面的世界。 Nios II處理器的外部視圖系統(tǒng)依賴于在系統(tǒng)中和的結(jié)構(gòu)的存儲(chǔ)器和外圍設(shè)備系統(tǒng)互連結(jié)構(gòu)。</p><p> 該數(shù)據(jù)和指令主端口不會(huì)導(dǎo)致一個(gè)僵局狀態(tài),其中一個(gè)端口抑制其他端口。為了獲得最高的性能,指定數(shù)據(jù)主端口高底是由指令和數(shù)據(jù)共享主內(nèi)存的優(yōu)先權(quán)序列端口決定的。</p><p><b> 高速緩存存儲(chǔ)器<
45、;/b></p><p> Nios II的架構(gòu)支持高速緩存存儲(chǔ)器的兩個(gè)指令主端口(指令緩存)和數(shù)據(jù)主端口(數(shù)據(jù)緩存)。高速緩存存儲(chǔ)器駐留片上作為Nios II處理器核心的一個(gè)組成部分。高速緩沖存儲(chǔ)器可以提高使用速度慢的Nios II處理器系統(tǒng)的平均內(nèi)存訪問(wèn)時(shí)間片外存儲(chǔ)器,例如SDRAM用于程序和數(shù)據(jù)的存儲(chǔ)。</p><p> 指令和數(shù)據(jù)高速緩存在運(yùn)行時(shí)永遠(yuǎn)啟用,但方法是提供軟件
46、繞過(guò)數(shù)據(jù)緩存,以便外設(shè)訪問(wèn)不返回緩存的數(shù)據(jù)。緩存管理和緩存的一致性是由軟件來(lái)處理。Nios II的指令集提供了緩存管理指令。</p><p><b> 可配置的高速緩存 </b></p><p> 高速緩沖存儲(chǔ)器是可選的。需要更高的存儲(chǔ)性能(或通過(guò)聯(lián)系,需要高速緩存存儲(chǔ)器)是依賴于應(yīng)用程序。許多應(yīng)用程序所需要的最小的可能的處理器內(nèi)核,并且可以折衷表現(xiàn)為尺寸。 &l
47、t;/p><p> Nios II處理器內(nèi)核可能包括一個(gè)或兩個(gè)高速緩沖存儲(chǔ)器,另外,對(duì)于核心,提供數(shù)據(jù)或指令高速緩存,高速緩沖存儲(chǔ)器是用戶可配置的。包含高速緩沖存儲(chǔ)器的,不影響程序的功能,但它確實(shí)會(huì)影響速度,該處理器取指令和讀取/寫入數(shù)據(jù)。</p><p><b> 高速緩沖存儲(chǔ)器 </b></p><p> 高速緩沖存儲(chǔ)器中以提高性能的效果
48、是基于以下前提: </p><p> ■定期存儲(chǔ)器位于芯片,和訪問(wèn)時(shí)間相比芯片記憶較長(zhǎng) </p><p> ■循環(huán)指令最大關(guān)鍵性能比緩存指令小</p><p> ■性能關(guān)鍵型數(shù)據(jù)最大塊比數(shù)據(jù)緩存較小 </p><p> 最佳的高速緩存配置為特定的應(yīng)用程序,雖然可以做出決定是有效跨越廣泛的應(yīng)用。例如,如果一個(gè)Nios II處理器系統(tǒng)僅包
49、括速度快,片上存儲(chǔ)器(即,它從來(lái)沒(méi)有訪問(wèn)速度慢,片存儲(chǔ)器),指令或數(shù)據(jù)高速緩沖存儲(chǔ)器是不可能提供任何性能增益。如另一個(gè)例子,如果一個(gè)程序的臨界循環(huán)為2 K字節(jié),但指令緩存為1 KB,指令緩存并不能提高執(zhí)行速度。在事實(shí)上,指令高速緩沖存儲(chǔ)器可能在這種情況下降低性能。</p><p> 如果一個(gè)應(yīng)用程序總是要求以位于高速緩存中特定的數(shù)據(jù)的代碼段或內(nèi)存性能方面的原因,緊密耦合內(nèi)存功能可以提供一個(gè)更合適的解決方案。請(qǐng)參
50、閱“緊耦合存儲(chǔ)器”2-14頁(yè)的詳細(xì)信息。</p><p><b> 緩存旁路方法 </b></p><p> Nios II的體系結(jié)構(gòu)提供了用于繞過(guò)數(shù)據(jù)高速緩存的下列方法: </p><p> ■I / O負(fù)載和存儲(chǔ)指令 </p><p><b> ■31位旁路緩存</b></p>
51、;<p> I / O負(fù)載和存儲(chǔ)指令加載和存儲(chǔ)I / O指令的方法,如ldio和STIO旁路數(shù)據(jù)緩存和迫使一個(gè)Avalon-MM的數(shù)據(jù)轉(zhuǎn)移到一個(gè)指定的地址。 </p><p> 31位旁路緩存方法 </p><p> 數(shù)據(jù)主端口上的31位旁路緩存方法使該地址的31位作為標(biāo)記,指示是否處理器應(yīng)該從數(shù)據(jù)高速緩存,或旁路轉(zhuǎn)移到它。這是一個(gè)方便的軟件,可能需要緩存某些地址和旁路
52、等。軟件可以通過(guò)地址作為函數(shù)之間的參數(shù),而不必指定是否被尋址的數(shù)據(jù)的任何進(jìn)一步的信息被高速緩存。 </p><p> 要了解哪些內(nèi)核實(shí)現(xiàn)的緩存旁路方法,請(qǐng)參考Nios II處理器參考手冊(cè)的核心實(shí)施細(xì)則的篇章。</p><p><b> 緊耦合存儲(chǔ)器</b></p><p> 緊耦合存儲(chǔ)器提供保證的低延時(shí)內(nèi)存訪問(wèn)性能關(guān)鍵型應(yīng)用程序。相比于高
53、速緩沖存儲(chǔ)器中,緊密耦合</p><p> 內(nèi)存提供了以下好處:</p><p> ■性能類似高速緩存存儲(chǔ)器</p><p> ■軟件可以保證性能的關(guān)鍵代碼或數(shù)據(jù)位于緊耦合存儲(chǔ)器</p><p> ■無(wú)實(shí)時(shí)緩存間接,如加載,無(wú)效,或沖洗記憶在物理上,一個(gè)緊耦合存儲(chǔ)器端口是在Nios II的一個(gè)單獨(dú)的主端口 處理器核心,類似的指令或數(shù)據(jù)
54、的主端口。一個(gè)Nios II的核心可以有零個(gè),一個(gè)或多個(gè)緊密耦合的存儲(chǔ)器。在Nios II架構(gòu)支持緊密耦合的存儲(chǔ)器,用于指令和數(shù)據(jù)的訪問(wèn)。每個(gè)緊密耦合存儲(chǔ)器端口直接連接到只有一個(gè)內(nèi)存有保障的低,固定延遲。內(nèi)存是外部的Nios II的核心,位于芯片。 </p><p> 緊耦合存儲(chǔ)器的訪問(wèn) </p><p> 緊耦合存儲(chǔ)器占用正常的地址空間,像其他的內(nèi)存通過(guò)系統(tǒng)互聯(lián)架構(gòu)連接的設(shè)備。緊耦合
55、存儲(chǔ)器的地址范圍(如果有的話)在系統(tǒng)生成時(shí)確定。 </p><p> 使用常規(guī)的加載和存儲(chǔ)指令的軟件訪問(wèn)緊耦合存儲(chǔ)器。從軟件的角度來(lái)看,訪問(wèn)緊耦合存儲(chǔ)器與其他存儲(chǔ)器相比是沒(méi)有區(qū)別的。</p><p><b> 高效緊耦合存儲(chǔ)器</b></p><p> 一個(gè)系統(tǒng)可以使用緊密耦合內(nèi)存以達(dá)到最大性能訪問(wèn)的代碼或數(shù)據(jù)的特定部分。例如,中斷密集型
56、應(yīng)用程序可以將異常處理程序代碼到一個(gè)緊密耦合的存儲(chǔ)器,以最大限度地減少中斷延遲。同樣的,計(jì)算密集的數(shù)字信號(hào)處理(DSP),應(yīng)用程序可以將數(shù)據(jù)緩沖區(qū)入緊耦合存儲(chǔ)器的最快可能的數(shù)據(jù)訪問(wèn)。 </p><p> 如果應(yīng)用程序的內(nèi)存需求是足夠小,以適應(yīng)整個(gè)芯片上,它是可以使用緊密耦合的存儲(chǔ)器專用代碼和數(shù)據(jù)。大應(yīng)用程序必須選擇性地選擇要在緊耦合存儲(chǔ)器包括以最大限度地提高成本性能權(quán)衡。 </p><p&g
57、t; 有關(guān)更多的緊密耦合內(nèi)存原則,請(qǐng)閱讀Nios II處理器手冊(cè)的緊耦合內(nèi)存章節(jié)。</p><p><b> 地址地圖 </b></p><p> 地址映射為存儲(chǔ)器和外設(shè)的Nios II處理器系統(tǒng)設(shè)計(jì)依賴。你的Qsys和SOPC Builder中指定的地址映射。但是也有一些處理器的一部分,特別值得一提三個(gè)地址: </p><p><
58、b> ■復(fù)位地址 </b></p><p><b> ■異常地址 </b></p><p> ■中斷處理程序的地址 </p><p> 程序員通過(guò)使用宏和驅(qū)動(dòng)程序訪問(wèn)存儲(chǔ)器和外設(shè)。因此,靈活的地址映射不會(huì)影響應(yīng)用程序的開(kāi)發(fā)人員。存儲(chǔ)器管理單元 </p><p> 可選的Nios II的MMU提
59、供以下特性和功能: </p><p> ■虛擬地址到物理地址的映射 </p><p><b> ■存儲(chǔ)器保護(hù)</b></p><p> ■32位虛擬地址和物理地址,一個(gè)4 GB的虛擬地址空間映射到高達(dá)4 GB的物理內(nèi)存 </p><p> ■4 KB大小的頁(yè)和幀</p><p> ■可直
60、接訪問(wèn)低512 MB的物理地址空間 </p><p> ■硬件轉(zhuǎn)換后備緩沖器(TLB的),加速地址轉(zhuǎn)換 </p><p> ■獨(dú)立的TLB指令和數(shù)據(jù)訪問(wèn) </p><p> ■讀,寫和執(zhí)行每頁(yè)控制權(quán)限 </p><p> ■每頁(yè)默認(rèn)緩存行為控制 </p><p> ■TLB的作為n路組相聯(lián)高速緩存軟件的頁(yè)表
61、</p><p> ■TLB的大小和結(jié)合在Nios II處理器參數(shù)配置編輯 </p><p> ■頁(yè)表(或等效的數(shù)據(jù)結(jié)構(gòu))格式由系統(tǒng)決定軟件 </p><p> ■由系統(tǒng)軟件確定TLB項(xiàng)替換策略 </p><p> ■由系統(tǒng)軟件確定TLB項(xiàng)寫入策略</p><p> 有關(guān)MMU實(shí)現(xiàn)的更多信息,請(qǐng)參Nios I
62、I處理器參考手冊(cè)編程型號(hào)的篇章。 </p><p> 你可以選擇包括MMU在內(nèi)的程序,來(lái)例化您的Nios II硬件系統(tǒng)。MMU始終處于啟用狀態(tài),并數(shù)據(jù)和指令高速緩存的虛擬索引,標(biāo)記緩存。幾個(gè) </p><p> 參數(shù)可供選擇,來(lái)優(yōu)化MMU為您的系統(tǒng)增速。 </p><p> 有關(guān)用戶要了解Nios II的MMU的完整詳細(xì)信息,請(qǐng)參閱Nios II處理器參考手冊(cè)
63、的實(shí)例篇章。</p><p> Nios II的MMU是可選的,相互排斥其外的Nios II微處理器。 Nios II的系統(tǒng)可以包括任一個(gè)MMU或MPU,但不能同時(shí)包含一個(gè)MMU和MPU在同一個(gè)Nios II處理器內(nèi)核。</p><p><b> 存儲(chǔ)器保護(hù)單元 </b></p><p> 可選的Nios II MPU提供以下特性和功能:
64、 </p><p><b> ■存儲(chǔ)器保護(hù) </b></p><p> ■最多32個(gè)指令地區(qū)和32個(gè)地區(qū)的數(shù)據(jù) </p><p> ■可變的指令和數(shù)據(jù)區(qū)的大小 </p><p> ■區(qū)域內(nèi)存量大小或高地址限制規(guī)定 </p><p> ■讀取和寫入訪問(wèn)權(quán)限的數(shù)據(jù)區(qū)域 </p>
65、<p> ■執(zhí)行訪問(wèn)權(quán)限的指令地區(qū) </p><p><b> ■重疊區(qū)域</b></p><p> 有關(guān)MPU實(shí)現(xiàn)的詳細(xì)信息,請(qǐng)參閱Nios II處理器參考手冊(cè)的編程模型章。 </p><p> 你可以選擇包括主控板在內(nèi)的硬件系統(tǒng),來(lái)實(shí)例化您的Nios II硬件系統(tǒng)。MPU始終啟用,幾個(gè)參數(shù)可供選擇,來(lái)優(yōu)化MPU為您的系統(tǒng)
66、服務(wù)。 </p><p> 有關(guān)用戶想了解Nios II微處理器的完整詳細(xì)信息,請(qǐng)參閱Nios II處理器參考手冊(cè)實(shí)例篇章。 </p><p> Nios II的MPU是可選的,相互排斥的Nios II的MMU。 Nios II的系統(tǒng)可以包括任一MPU或MMU,但不能同時(shí)包含一個(gè)微控制器和MMU在同一個(gè)Nios II處理器內(nèi)核。</p><p><b>
67、; JTAG調(diào)試模塊 </b></p><p> Nios II的架構(gòu)支持JTAG調(diào)試模塊,提供芯片仿真功能從主機(jī)PC遠(yuǎn)程控制處理器?;赑C的軟件調(diào)試工具與JTAG調(diào)試模塊進(jìn)行通信,并提供設(shè)施,例如以下功能: </p><p><b> ■下載程序到內(nèi)存 </b></p><p><b> ■啟動(dòng)和停止執(zhí)行 &l
68、t;/b></p><p> ■設(shè)置斷點(diǎn)和觀察點(diǎn) </p><p> ■分析寄存器和存儲(chǔ)器 </p><p> ■收集實(shí)時(shí)執(zhí)行跟蹤數(shù)據(jù)</p><p> 調(diào)試模塊連接到Altera 的JTAG電路中。然后通過(guò)調(diào)試探針可以對(duì)標(biāo)準(zhǔn)的JTAG接口訪問(wèn)外部處理器FPGA中。在處理器方面,調(diào)試模塊連接到信號(hào)內(nèi)的處理器核心。調(diào)試模塊具有不可
69、屏蔽的控制處理器,和不需要存根軟件測(cè)試下鏈接到應(yīng)用程序。所有系統(tǒng)在管理員可見(jiàn)模式下運(yùn)行,處理器的資源可用于調(diào)試模塊。對(duì)于跟蹤數(shù)據(jù)收集,調(diào)試模塊存儲(chǔ)在跟蹤存儲(chǔ)器中的數(shù)據(jù)無(wú)論是芯片還是在調(diào)試探頭。調(diào)試模塊增益控制處理器無(wú)論是通過(guò)產(chǎn)生一個(gè)硬件中斷信號(hào),或通過(guò)寫中斷指令到程序的內(nèi)存來(lái)執(zhí)行。在這兩種情況下,該處理器將執(zhí)行轉(zhuǎn)移到位于斷點(diǎn)地址的例程。地址被指定在Qsys中的Nios II處理器參數(shù)編輯器和SOPC中 。</p><
70、p> 軟處理器內(nèi)核,如Nios II處理器提供獨(dú)特的調(diào)試功能超越傳統(tǒng)的,固定處理器的功能。在Nios II軟性質(zhì)處理器可以讓你的系統(tǒng)在開(kāi)發(fā)中使用一個(gè)全功能的調(diào)試調(diào)試核心,后來(lái)刪除了調(diào)試功能,以節(jié)省邏輯資源。為釋放版本的產(chǎn)品,JTAG調(diào)試模塊的功能可被減少,或完全刪除。</p><p> 以下各節(jié)描述了Nios II JTAG調(diào)試模塊的功能硬件。的所有硬件功能的使用依賴于主機(jī)的軟件,如Nios II軟件構(gòu)
71、建工具的Eclipse,它管理的連接針對(duì)處理器和控制調(diào)試過(guò)程。</p><p><b> JTAG目標(biāo)連接 </b></p><p> 該JTAG目標(biāo)連接提供到通過(guò)連接到處理器的能力標(biāo)準(zhǔn)的JTAG引腳上的Altera的FPGA中。這提供了基本的功能,以啟動(dòng)或停止處理器,并檢查和編輯寄存器和存儲(chǔ)器。該JTAG最低要求為Nios II閃存編程器。 </p>
72、<p> 當(dāng)處理器沒(méi)有最低時(shí)鐘頻率的要求,Altera公司建議您設(shè)計(jì)的系統(tǒng)時(shí)鐘頻率至少四倍JTAG時(shí)鐘頻率,以確保芯片上的儀器(OCI)核心功能正常。</p><p><b> 下載并執(zhí)行軟件</b></p><p> 下載軟件是指為可執(zhí)行代碼和數(shù)據(jù)下載到的能力通過(guò)JTAG連接處理器的內(nèi)存。下載軟件后,JTAG調(diào)試模塊可以退出調(diào)試模式并將執(zhí)行權(quán)轉(zhuǎn)由
73、內(nèi)存可執(zhí)行代碼的開(kāi)始。</p><p><b> 軟件斷點(diǎn)</b></p><p> 軟件斷點(diǎn)讓你駐留在RAM中的指令上設(shè)置斷點(diǎn)。該軟件斷點(diǎn)機(jī)制寫入斷點(diǎn)指令轉(zhuǎn)換成可執(zhí)行代碼存儲(chǔ)在RAM中。當(dāng)處理器執(zhí)行的指令休息,控制轉(zhuǎn)移到JTAG調(diào)試模塊。</p><p><b> 硬件斷點(diǎn)</b></p><p
74、> 硬件斷點(diǎn)允許你對(duì)居住在指令上設(shè)置斷點(diǎn)非易失性存儲(chǔ)器,如閃存。硬件斷點(diǎn)機(jī)制連續(xù)監(jiān)視處理器的當(dāng)前指令的地址。如果該指令的地址硬件斷點(diǎn)地址匹配時(shí),JTAG調(diào)試模塊需要控制處理器。</p><p> 硬件斷點(diǎn)使用JTAG調(diào)試模塊的硬件實(shí)現(xiàn)觸發(fā)功能。</p><p><b> 硬件觸發(fā) </b></p><p> 硬件觸發(fā)器激活基于對(duì)指
75、令或條件調(diào)試操作 實(shí)時(shí)程序執(zhí)行過(guò)程中的數(shù)據(jù)總線。觸發(fā)器可以做多叫停處理器執(zhí)行。例如,觸發(fā)器可以被用來(lái)使跟蹤數(shù)據(jù)收集在實(shí)時(shí)處理器執(zhí)行。</p><p><b> 目標(biāo)觸發(fā)器 </b></p><p> JTAG調(diào)試模塊提供了兩個(gè)級(jí)別的觸發(fā)功能,稱為目標(biāo)觸發(fā)器。目標(biāo)觸發(fā)器使能JTAG調(diào)試模塊,B事件上觸發(fā)而A事件不觸發(fā)轉(zhuǎn)化為,A事件導(dǎo)致觸發(fā)動(dòng)作,使觸發(fā)器B事件觸發(fā)。
76、</p><p><b> 觸發(fā)值的范圍 </b></p><p> JTAG調(diào)試模塊可對(duì)數(shù)據(jù)或地址值的范圍上的數(shù)據(jù)觸發(fā)總線。這種機(jī)制使用兩個(gè)硬件觸發(fā),共同創(chuàng)造一個(gè)觸發(fā)條件激活的范圍在規(guī)定范圍內(nèi)的值。</p><p><b> 跟蹤捕獲</b></p><p> 跟蹤捕獲是指能夠記錄的指令,
77、由指令執(zhí)行的因?yàn)樗趯?shí)時(shí)執(zhí)行代碼的處理器。 JTAG調(diào)試模塊提供以下跟蹤功能:</p><p> ■捕獲執(zhí)行跟蹤(指令總線周期)。</p><p> ■捕獲數(shù)據(jù)跟蹤(數(shù)據(jù)總線周期)。</p><p> ■對(duì)于每個(gè)數(shù)據(jù)總線周期,捕獲地址,數(shù)據(jù),或兩者兼而有之。</p><p> ■啟動(dòng)和停止捕獲跟蹤,實(shí)時(shí),基于觸發(fā)器。</p>
78、;<p> ■手動(dòng)啟動(dòng)和主機(jī)控制下停止跟蹤。</p><p> ■可選擇停止捕獲跟蹤時(shí),跟蹤緩沖區(qū)已滿,留下處理器執(zhí)行。</p><p> ■在片上內(nèi)存緩沖區(qū)的JTAG調(diào)試模塊中存儲(chǔ)跟蹤數(shù)據(jù)。 (此內(nèi)存是只能通過(guò)JTAG連接。 )</p><p> ■存儲(chǔ)跟蹤數(shù)據(jù)在片調(diào)試探頭較大的緩沖區(qū)。</p><p> 某些跟蹤功
79、能需要額外的許可證或調(diào)試工具來(lái)自第三方調(diào)試提供商。例如,一個(gè)片上跟蹤緩沖器的一個(gè)標(biāo)準(zhǔn)功能Nios II處理器,而是采用了片上跟蹤緩沖器需要額外的調(diào)試軟件和MIPS科技或勞特巴赫有限公司提供的硬件。</p><p> 有關(guān)詳細(xì)信息,請(qǐng)搜索關(guān)于MIPS科技網(wǎng)站(www.mips.com)和勞特巴赫有限公司網(wǎng)站(www.lauterbach.com)的“Nios II”。</p><p>&l
80、t;b> 執(zhí)行與數(shù)據(jù)跟蹤 </b></p><p> JTAG調(diào)試模塊支持跟蹤指令總線(執(zhí)行跟蹤)時(shí),數(shù)據(jù)總線(數(shù)據(jù)跟蹤),或兩者同時(shí)進(jìn)行。執(zhí)行跟蹤記錄只有的指令地址執(zhí)行,使您能夠分析在內(nèi)存(即,在其中的函數(shù))代碼執(zhí)行。數(shù)據(jù)跟蹤與記錄相關(guān)的數(shù)據(jù)每個(gè)加載和存儲(chǔ)操作的數(shù)據(jù)總線上。 </p><p> JTAG調(diào)試模塊可以篩選數(shù)據(jù)總線跟蹤實(shí)時(shí)捕捉以下內(nèi)容: </p&
81、gt;<p><b> ■負(fù)載地址</b></p><p><b> ■存儲(chǔ)地址</b></p><p> ■雙方加載和存儲(chǔ)地址 </p><p><b> ■負(fù)載數(shù)據(jù)</b></p><p><b> ■加載地址和數(shù)據(jù) </b>&
82、lt;/p><p><b> ■存儲(chǔ)地址和數(shù)據(jù) </b></p><p> ■地址和數(shù)據(jù)的加載和存儲(chǔ) </p><p> ■在觸發(fā)事件的數(shù)據(jù)總線單一樣本</p><p><b> 跟蹤幀</b></p><p> 幀是一個(gè)單位的內(nèi)存分配,收集跟蹤數(shù)據(jù)。然而,幀并不是一個(gè)
83、絕對(duì)的衡量跟蹤標(biāo)準(zhǔn)。</p><p> 為了跟上處理器執(zhí)行實(shí)時(shí)步伐,進(jìn)行優(yōu)化執(zhí)行跟蹤,只存儲(chǔ)選中的地址,如分支,電路,陷阱和中斷。這些地址,可以從主機(jī)端的調(diào)試軟件,可以由指令執(zhí)行跟蹤進(jìn)行重建指定的精確。此外,執(zhí)行跟蹤數(shù)據(jù)以壓縮格式被存儲(chǔ),使得一個(gè)幀代表以上的一個(gè)指令。如這些優(yōu)化的結(jié)果,實(shí)際開(kāi)始和結(jié)束點(diǎn)跟蹤收集在執(zhí)行過(guò)程中可能會(huì)從用戶指定的啟動(dòng)和結(jié)束略有不同。</p><p> 數(shù)據(jù)跟蹤
84、存儲(chǔ)要求100%跟蹤緩沖區(qū)實(shí)時(shí)加載和存儲(chǔ)。當(dāng)存儲(chǔ)到跟蹤緩沖區(qū),數(shù)據(jù)跟蹤幀的優(yōu)先級(jí)低于執(zhí)行跟蹤框架。因此,當(dāng)數(shù)據(jù)幀在實(shí)時(shí)存儲(chǔ)時(shí),執(zhí)行和跟蹤數(shù)據(jù)都不能保證正好與每個(gè)同步等。</p><p> 附件2:外文原文(復(fù)印件)</p><p> Processor Architecture</p><p> This chapter describes the hardw
85、are structure of the Nios®</p><p> II processor, including a discussion of all the functional units of the Nios II architecture and the fundamentals of the Nios II processor hardware implementation. Th
86、is chapter contains the </p><p> following sections:</p><p> ■ “Processor Implementation” on page 2–2</p><p> ■ “Register File” on page 2–3</p><p> ■ “Arithmetic Lo
87、gic Unit” on page 2–4</p><p> ■ “Reset and Debug Signals” on page 2–8</p><p> ■ “Exception and Interrupt Controllers” on page 2–8</p><p> ■ “Memory and I/O Organization” on page
88、2–10</p><p> ■ “JTAG Debug Module” on page 2–17</p><p> The Nios II architecture describes an instruction set architecture (ISA). The ISA in turn necessitates a set of functional units that im
89、plement the instructions. A Nios II processor core is a hardware design that implements the Nios II instruction set and supports the functional units described in this document. The processor core does not include periph
90、erals or the connection logic to the outside world. It includes only the circuits required to implement the Nios II architecture.</p><p> The Nios II architecture defines the following functional units:<
91、/p><p> ■ Register file</p><p> ■ Arithmetic logic unit (ALU)</p><p> ■ Interface to custom instruction logic</p><p> ■ Exception controller</p><p> ■ In
92、ternal or external interrupt controller</p><p> ■ Instruction bus </p><p> ■ Data bus </p><p> ■ Memory management unit (MMU)</p><p> ■ Memory protection unit (MPU)
93、</p><p> ■ Instruction and data cache memories</p><p> ■ Tightly-coupled memory interfaces for instructions and data</p><p> ■ JTAG debug module</p><p> Processor I
94、mplementation</p><p> The functional units of the Nios II architecture form the foundation for the Nios II instruction set. However, this does not indicate that any unit is implemented in hardware. The Nios
95、 II architecture describes an instruction set, not a particular hardware implementation. A functional unit can be implemented in hardware, emulated in software, or omitted entirely. </p><p> A Nios II imple
96、mentation is a set of design choices embodied by a particular Nios II processor core. All implementations support the instruction set defined in the Instruction Set Reference chapter of the Nios II Processor Reference Ha
97、ndbook. Each implementation achieves specific objectives, such as smaller core size or higher performance. This flexibility allows the Nios II architecture to adapt to different target applications. </p><p>
98、 Implementation variables generally fit one of three trade-off patterns: more or less of a feature; inclusion or exclusion of a feature; hardware implementation or software emulation of a feature. An example of each tra
99、de-off follows: </p><p> ■ More or less of a feature—For example, to fine-tune performance, you can increase or decrease the amount of instruction cache memory. A larger cache increases execution speed of l
100、arge programs, while a smaller cache conserves on-chip memory resources.</p><p> ■ Inclusion or exclusion of a feature—For example, to reduce cost, you can choose to omit the JTAG debug module. This decisio
101、n conserves on-chip logic and memory resources, but it eliminates the ability to use a software debugger to debug applications.</p><p> ■ Hardware implementation or software emulation—For example, in contro
102、l applications that rarely perform complex arithmetic, you can choose for the division instruction to be emulated in software. Removing the divide hardware conserves on-chip resources but increases the execution time of
103、division operations. </p><p> For information about which Nios II cores supports what features, refer to the Nios II Core Implementation Details chapter of the Nios II Processor Reference Handbook. For comp
104、lete details about user-selectable parameters for the Nios II processor, refer to the Instantiating the Nios II Processor chapter of the Nios II Processor Reference Handbook.</p><p> Register File</p>
105、<p> The Nios II architecture supports a flat register file, consisting of thirty-two 32-bit general-purpose integer registers, and up to thirty-two 32-bit control registers. The architecture supports supervisor
106、and user modes that allow system code to protect the control registers from errant applications.</p><p> The Nios II processor can optionally have one or more shadow register sets. A shadow register set is
107、a complete set of Nios II general-purpose registers. When shadow register sets are implemented, the CRS field of the status register indicates which register set is currently in use. An instruction access to a general-pu
108、rpose register uses whichever register set is active.</p><p> A typical use of shadow register sets is to accelerate context switching. When shadow register sets are implemented, the Nios II processor has t
109、wo special instructions, rdprs and wrprs, for moving data between register sets. Shadow register sets are typically manipulated by an operating system kernel, and are transparent to application code. A Nios II processor
110、can have up to 63 shadow register sets.</p><p> For details about shadow register set implementation and usage, refer to “Registers” and “Exception Processing” in the Programming Model chapter of the Nios I
111、I Processor Reference Handbook. For details about the rdprs and wrprs instructions, refer to the Instruction Set Reference chapter of the Nios II Processor Reference Handbook. </p><p> The Nios II architect
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子信息工程外文翻譯
- 電子信息工程技術(shù)外文翻譯
- 電子信息工程畢業(yè)設(shè)計(jì)外文翻譯
- 電子信息工程專業(yè)畢業(yè)論文外文翻譯
- 電子信息工程外文資料翻譯----信號(hào)源
- 外文翻譯---電子信息專業(yè)介紹及發(fā)展
- 電子信息工程 外文翻譯 外文文獻(xiàn) 英文文獻(xiàn) 微處理器
- 電子信息工程專業(yè)
- 電子信息工程 微處理器 外文翻譯 外文文獻(xiàn) 英文文獻(xiàn)
- 電子信息工程淺析
- 電子信息工程淺析
- 電子信息工程的理解
- 電子信息工程論文(英文)
- 電子信息專業(yè)外文翻譯--at89c51的概況
- 電子信息工程專業(yè)培養(yǎng)方案
- 電子信息工程學(xué)院
- 電子信息工程 專業(yè)建設(shè)規(guī)劃
- 電子信息工程專業(yè)培養(yǎng)方案
- 電子信息工程專業(yè)導(dǎo)論論文
- 電子信息工程專業(yè)實(shí)習(xí)周報(bào)
評(píng)論
0/150
提交評(píng)論