關(guān) 閉

新聞中心

EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 探索內(nèi)存架構(gòu):處理性能的基石

探索內(nèi)存架構(gòu):處理性能的基石

作者: 時間:2007-10-08 來源:網(wǎng)絡(luò) 收藏
處理器架構(gòu)的一個主要性能特點是單位時間內(nèi)能執(zhí)行多少專用工作。EEMBC (微處理器基準(zhǔn)協(xié)會)基準(zhǔn)與Dhrystone MIPS (每秒百萬次指令) 評分不同,它描述了在系統(tǒng)應(yīng)用中執(zhí)行任務(wù)的處理器性能。EEMBC 基準(zhǔn)的1.0版本并未涉及對處理器性能系統(tǒng)級的影響,如內(nèi)存子系統(tǒng),因為該基準(zhǔn)經(jīng)常在處理器的第一內(nèi)起作用。但EEMBC的第二代針對網(wǎng)絡(luò)與數(shù)字娛樂的系統(tǒng)級基準(zhǔn),更實際地強調(diào)具有較大內(nèi)存的處理器。

處理器內(nèi)存子系統(tǒng)的系統(tǒng)級影響越來越重要,因為內(nèi)存類型和大小及系統(tǒng)中的存取方式規(guī)定了處理器內(nèi)核性能的上限。據(jù) ARM處理器部門的Gerard Williams III認(rèn)為,理 想內(nèi)存系統(tǒng)的處理器必然要采用,并有理想的存取總線的方式。芯片設(shè)計師必須首先了解處理器的IPC (每周期指令)能力,然后嘗試實現(xiàn)能將性能損失降到最低的內(nèi)存架構(gòu)。這種性能損失可能來自緩存或內(nèi)存存取影響,如由于容量損失、緩存大小或沖突失效形成的丟失率。

匹配良好的內(nèi)存子系統(tǒng)可以保持處理器的最大IPC 率,而匹配不好的內(nèi)存子系統(tǒng)會空置內(nèi)核的執(zhí)行單元,而大大地降低處理器的性能。雖然構(gòu)建與實現(xiàn)內(nèi)存子系統(tǒng)不會影響處理器內(nèi)核的性能,但還是具有很大的挑戰(zhàn)性,因為在處理器邏輯與內(nèi)存間存在的性能差異正隨著每次工藝技術(shù)的變化而逐步增大。實際上,內(nèi)存存取延遲的改進(jìn)及每個工藝技術(shù)步驟接收內(nèi)存請求的時間都比處理器內(nèi)核邏輯的同量時鐘速率提高要少。

同樣,軟件開發(fā)人員通過有預(yù)見性地在內(nèi)存子系統(tǒng)中安置編程指令與數(shù)據(jù),可實現(xiàn)的最佳性能影響,就是保持處理器的最大IPC率。然而,在設(shè)備使用情況下,內(nèi)存子系統(tǒng)中匹配不當(dāng)?shù)某绦蛑噶詈蛿?shù)據(jù),會極大地降低處理器的性能。Freescale關(guān)于防止M1存儲沖突的應(yīng)用注釋提供了一個范例,說明了由于存儲沖突會造成54% 處理器性能下降,開發(fā)人員可通過更好地安置數(shù)據(jù)器來避免發(fā)生這種情況(參考文獻(xiàn)1)。

一般而言,編譯器與仿真工具以全局的優(yōu)化對在內(nèi)存中放置指令和數(shù)據(jù)可提供有限的幫助。Green Hills的優(yōu)化編譯器支持內(nèi)存中的功能重新安排,以優(yōu)化緩存命中率。Texas Instruments的CodeSizeTune 基于仿真的編譯工具可幫助開發(fā)人員探索配置,采用影響代碼大小和執(zhí)行速度的不同的編譯器設(shè)置自動構(gòu)建和仿真不同版本軟件(圖1)。一般來說,對許多高效和實時約束系統(tǒng)來說,軟件開發(fā)人員的困難就是要了解內(nèi)存子系統(tǒng)以避免由于系統(tǒng)不能有效地使用處理與內(nèi)存資源,而承擔(dān)不必要的BOM (物料清單)成本。

延遲容差

在實現(xiàn)內(nèi)存架構(gòu)時最主要的擔(dān)心就是使處理器能夠?qū)ο到y(tǒng)使用的內(nèi)存的存取延遲實現(xiàn)容差。設(shè)計合理的內(nèi)存子系統(tǒng)可以掩藏系統(tǒng)多數(shù)的內(nèi)存存取延遲,并能提供足夠的讀/寫吞吐速率,即相同數(shù)據(jù)模塊中隨后發(fā)生的數(shù)據(jù)內(nèi)存存取時間,以支持連續(xù)存取。這種情況避免了空置處理器的執(zhí)行單位的指令和數(shù)據(jù)。內(nèi)存設(shè)計人員必須根據(jù)內(nèi)存的芯片面積、內(nèi)存消耗的總功率、軟件開發(fā)人員對內(nèi)存使用的方便性及工具等因素對內(nèi)存存取延遲進(jìn)行權(quán)衡(參見附文1“方便使用”)。

內(nèi)存存取延遲的直接誘因為用來執(zhí)行地址解碼、激活適當(dāng)字線、檢測位線及驅(qū)動檢測放大器輸出的時間。地址解碼延遲為鎖定地址,確定哪個字線需要激活的時間,此過程將O(n log n) 時間作為內(nèi)存行與列尋址大小的函數(shù)。因此,隨著內(nèi)存結(jié)構(gòu)的擴(kuò)大,解碼與尋址所需的時間也相應(yīng)增加。字線激活延遲是字線上升所需的時間,主要是與線長相關(guān)的RC 延遲,線長越長則延遲越長。位線檢測延遲是檢測放大器檢測單元內(nèi)容所需的時間。位線架構(gòu)、檢測驅(qū)動線的RC、單元與位的容量比、及檢測放大器拓?fù)涞榷紩绊懳痪€檢測延遲。輸出驅(qū)動延遲是一種RC 延遲,驅(qū)動從檢測放大器到輸出端傳送數(shù)據(jù)的時間。

內(nèi)存與管理內(nèi)存的邏輯占用了許多基于處理器設(shè)備的芯片面積。結(jié)果,內(nèi)存可以是設(shè)備的芯片成本最大的部件,也是系統(tǒng)中消耗動態(tài)和靜態(tài)功率最大的部件。許多類型的易失與非易失內(nèi)存各有好壞,系統(tǒng)設(shè)計人員必須要兼顧并管理重要的參數(shù),以較低的成本和功耗來實現(xiàn)足夠好的內(nèi)存性能。

為了兼顧掩藏內(nèi)存存取延遲、芯片成本及功耗,基于處理器的設(shè)備通常都依賴一個多層內(nèi)存結(jié)構(gòu),將少量快速而昂貴的內(nèi)存靠近處理器內(nèi)核,而將大量慢速內(nèi)存遠(yuǎn)離處理器內(nèi)核(圖2)。處理器寄存器是系統(tǒng)中最快且最難得的內(nèi)存資源,內(nèi)存體系還可以使用局部內(nèi)存或TCM(緊密耦合的內(nèi)存)、多階緩存、及易失性與非易失性片上內(nèi)存與片外內(nèi)存。

現(xiàn)代的優(yōu)化編譯器在管理使用處理器寄存器方面很合適,但在管理與優(yōu)化其它內(nèi)存上則較差。這種情況部分是由于利用本地查看程序代碼,優(yōu)化使用寄存器與戰(zhàn)術(shù)實施配合良好。為了在基于處理器的系統(tǒng)中優(yōu)化使用其它內(nèi)存結(jié)構(gòu),如TCM,需要更具全局性地查看系統(tǒng),此功能正出現(xiàn)在多數(shù)的編譯器中。

局部內(nèi)存或連接到處理器核的TCM通過局部或?qū)iT的內(nèi)存總線來存取類似于緩存的性能。內(nèi)存存取確定機(jī)制為TCM與緩存間的主要區(qū)別。人工暫時鎖定緩存線可在線級使能緩存,使其作為一個TCM。程序指令與通過TCM實施代碼存取具有確定的能力,但對于緩存,設(shè)計人員必須考慮緩存丟失的最壞情況?!皩τ诰彺鎭G失處理的典型經(jīng)驗法則是,存取延遲比前一級別增長一個數(shù)量級”Innovative Silicon的架構(gòu)總監(jiān)David Fisch 說?!癓2 內(nèi)存存取延遲是L1 緩存存取延遲的10 倍,而L3緩存存取延遲又是L2 內(nèi)存存取延遲的10倍。”使用TCM將任務(wù)加給軟件開發(fā)人員手動的管理內(nèi)存空間,通常是使用DMA 控制器,以便在處理器 需要時,使必要的代碼和數(shù)據(jù)在TCM 中。

緩存由速度稍慢的內(nèi)存構(gòu)成來掩藏大量速度較慢內(nèi)存的延遲。較慢的內(nèi)存密度更大,所以也更便宜。緩存依賴暫存的空間局部區(qū)域來掩藏較慢內(nèi)存的存取延遲。“暫存局部性” 描述了這種區(qū)域特點:如果處理器請求一些數(shù)據(jù),那么,處理器很快又需要相同的數(shù)據(jù)。通過在存儲中保留數(shù)據(jù)復(fù)本,緩存可以避免數(shù)據(jù)進(jìn)入較慢的內(nèi)存中。“空間局部性” 描述了區(qū)域的另一種特性:即處理器請求在某個內(nèi)存位置的代碼,而下一處理器請求為下一內(nèi)存位置或與其相近位置的代碼。利用在初始取數(shù)同時預(yù)取靠近當(dāng)前請求數(shù)據(jù)的一定量的數(shù)據(jù),緩存在其存儲中就可以有下幾個數(shù)據(jù)位置,而不會從較慢內(nèi)存中發(fā)生另一取數(shù)的延遲。

較大緩存通常意味著犧牲更多芯片面積而實現(xiàn)較少的緩存丟失。提高表示特定的內(nèi)存可存在于緩存中的位置數(shù)的緩存相關(guān)性,幾乎總能減少緩存丟失。緩存線長度可根據(jù)應(yīng)用的特性作正向或反向變化。Tensilica首席架構(gòu)師Bill Huffman告訴我們:“配置緩存是一項迭代任務(wù),它高度依賴可在處理器中執(zhí)行的應(yīng)用集?!?/P>

平衡各種緩存參數(shù)是一個復(fù)雜的過程,涉及到在芯片面積與丟失率間的取舍(圖3)。圖中列出了JPEG編碼應(yīng)用的緩存配置范圍:從負(fù)載丟失率為13.4% 的4k字節(jié)直接映射的16 字節(jié)線的配置,到負(fù)載丟失率為1.9%的32k字節(jié)、四路相關(guān)的64 字節(jié)線的配置(參考文獻(xiàn)2)。盡管緩存越大越好,但對32k字節(jié)緩存有優(yōu)勢收益遞減的趨勢。提高緩存線大小所具有的性能優(yōu)勢比緩存大小增加一倍所提高的性能更多,緩存線越長,芯片成本越小。盡管大緩存相關(guān)性越高越好,但在此例中,從兩路到四路相關(guān)性能產(chǎn)生的優(yōu)勢很少。簡而言之,對于配置緩存并沒有明確的經(jīng)驗法則。

決策驅(qū)動器


處理器內(nèi)核架構(gòu)為內(nèi)存架構(gòu)選項中設(shè)計人員的第一選擇。原因是設(shè)計人員構(gòu)建內(nèi)核時假定了內(nèi)存組件與內(nèi)核如何接口并對其如何補充。Von Neumann 和Harvard 架構(gòu)為兩種常見的處理器架構(gòu),分別模仿并實施不同的方法來查看和存取內(nèi)存。基于von Neumann 架構(gòu)模型的處理器將系統(tǒng)內(nèi)存建模成保存程序指令和數(shù)據(jù)的單一存儲結(jié)構(gòu),并有單一總線接口服務(wù)所有程序和數(shù)據(jù)存取?;贖arvard 架構(gòu)的處理器對系統(tǒng)內(nèi)存建模,程序指令和數(shù)據(jù)作為物理和邏輯分離存儲結(jié)構(gòu),以不同的總線接口,一個用于指令,另一個用于數(shù)據(jù)。Harvard 架構(gòu)支持同時存取程序指令與數(shù)據(jù),而von Neumann 架構(gòu)則不會。

為了選擇一個優(yōu)化的內(nèi)存設(shè)計 ,設(shè)計人員還必須了解應(yīng)用的特點和要求。對內(nèi)存設(shè)計的考慮有: 應(yīng)用的數(shù)據(jù)如何進(jìn)出系統(tǒng),處理器能否直接加載數(shù)據(jù)或外部代理,DMA控制器能否將數(shù)據(jù)載入處理器的局部RAM中?同時也必須對輸出提出類似的問題:處理器會不會直接驅(qū)動輸出端口?或由外部代理,如DMA 控制器來驅(qū)動,能否將數(shù)據(jù)從處理器的局部RAM 傳輸?shù)絀/O 接口中?其它問題包括:什么是應(yīng)用的啟動過程?系統(tǒng)能否有效地利用特殊內(nèi)存接口?片上內(nèi)存資源能否容納所有的代碼與應(yīng)用數(shù)據(jù),還是僅能容納性能敏感的代碼與數(shù)據(jù)?

應(yīng)用啟動要求從何處存儲初始化代碼,以及系統(tǒng)通過什么接口進(jìn)行存取。片上OTP(一次性可編程)ROM很小且具有較高的芯片密度,所以對于儲存啟動代碼非常有用。它支持快速啟動,因為在啟動后到開始執(zhí)行不需要等待時間。初始化代碼可能在閃存中的某個位置駐存并執(zhí)行,也可以存在于芯片外內(nèi)存中,也可映射到片上指令RAM中,這可造成系統(tǒng)啟動時間較長。如果應(yīng)用代碼和數(shù)據(jù)能駐存于片上內(nèi)存中,就沒有必要支持片外內(nèi)存接口。如果性能敏感的程序代碼可載入局部內(nèi)存中,設(shè)計人員就不需要實施緩存了。

設(shè)計人員可根據(jù)已知應(yīng)用的約束條件調(diào)整處理器,這些處理器僅包括應(yīng)用所需的隨機(jī)和非易失性內(nèi)存量。TCM的大小和參數(shù)、緩存或特殊內(nèi)存都是針對應(yīng)用而設(shè)計的。針對較寬應(yīng)用的處理器通常實施一個普通的內(nèi)存架構(gòu),這些架構(gòu)包括應(yīng)用的最大資源要求,以提供較少資源的各種設(shè)備來滿足較低的成本要求。對于采用類似處理器核架構(gòu)的系統(tǒng),內(nèi)存子系統(tǒng)成為更高級的驅(qū)動器,以提供系統(tǒng)可交付的處理性能、功耗及價格(參見附文2“多種選擇”)。

內(nèi)存控制器對所服務(wù)的內(nèi)存模塊的實現(xiàn)進(jìn)行抽象處理,使其成為對處理器系統(tǒng)的數(shù)據(jù)管道。它們包含讀取內(nèi)存模塊所必須的邏輯,根據(jù)所服務(wù)內(nèi)存的類型,還包括寫入、刷新、測試與校正錯誤內(nèi)存等。對于片上內(nèi)存,內(nèi)存控制器能夠顯示公司的專有發(fā)明,它的處理器設(shè)備不同于競爭者的類似設(shè)備。結(jié)果,多數(shù)的處理器廠商不愿過于詳細(xì)地討論其內(nèi)存控制器。他們指出了一種用于內(nèi)存控制器的技術(shù),包括使用寬數(shù)據(jù)總線,多路復(fù)用或交錯式存取內(nèi)存庫、、流水線、交易記錄以及專門和不確定的存取模式等。

除了實現(xiàn)的內(nèi)存的特性外,影響內(nèi)存控制器設(shè)計和效率的系統(tǒng)級因素還包括物理尋址如何映射到內(nèi)部演示內(nèi)存系統(tǒng)上,尋址模式的類 型(如突發(fā)、隨機(jī)與并行存取模式)、混合讀寫、未使用的內(nèi)存如何進(jìn)入低功耗模式。其主要的使用模型通常確定了內(nèi)存控制器的架構(gòu),以使圖形或多媒體控制器可優(yōu)化進(jìn)行序列存取,而通訊系統(tǒng)的內(nèi)存控制器可在較大的內(nèi)存范圍內(nèi)優(yōu)化隨機(jī)存取。對于有系統(tǒng)級可靠性要求的嵌入式內(nèi)存,針對額外的復(fù)雜性,內(nèi)存控制器可提供ECC(錯誤糾正代碼)保護(hù)。

內(nèi)存控制器的流量模式在單核處理器系統(tǒng)與多核處理系統(tǒng)之間有很大區(qū)別。單核系統(tǒng)的內(nèi)存處理器可使用一個數(shù)據(jù)流,但在多核心系統(tǒng)中的共享內(nèi)存,內(nèi)存控制器需要有處理多個數(shù)據(jù)流及隨機(jī)流量的能力。對于多核設(shè)計,內(nèi)存架構(gòu)必須支持快速及有效的信息傳遞,以及處理器間的數(shù)據(jù)共享。盡管不同的方法可實現(xiàn)這些目標(biāo),但沒有單一配置對所有類型的通信都有效。快速的點對點通道及隊列,對交換短小且重要的信息非常重要,然而共享內(nèi)存對于共享較大的數(shù)據(jù)結(jié)構(gòu)更為有益。當(dāng)使用共享內(nèi)存時,用戶需要對同步和內(nèi)存管理的編程支持。

隨著越來越多的嵌入式系統(tǒng)組合到多內(nèi)核作為設(shè)計的一部分,特別的異構(gòu)內(nèi)核,開發(fā)工具的發(fā)展會更好地協(xié)助開發(fā)人員從空間和時間上安置代碼和數(shù)據(jù),來實現(xiàn)更好的延遲容差,并使復(fù)雜性越來越高的設(shè)計發(fā)揮出最佳性能。開發(fā)工具必須可協(xié)助開發(fā)人員更好地了解系統(tǒng)的全局行為。并將該行為與系統(tǒng)中可用的內(nèi)存子系統(tǒng)進(jìn)行匹配。否則,內(nèi)存和芯片設(shè)計人員必須繼續(xù)將更復(fù)雜的控制算法組合到內(nèi)存控制器中,以明確地補償軟件設(shè)計人員和開發(fā)工具對內(nèi)存系統(tǒng)的行為缺少可視性的缺點。

參考文獻(xiàn)
1. Schuchmann, David, “Tuning an Application to Prevent M1 Memory Contention,” Application Note AN3076, Freescale Semiconductor Inc, May 2006.
2. “How to Optimize SOC Performance Through Memory Tuning,” White Paper, Tensilica.

附文1:方便使用

編程的簡易性對軟件開發(fā)人員來說是一種十分重要的特性??呻[藏內(nèi)存體系的平坦的地址空間,便于開發(fā)人員進(jìn)行編程。Microchip Technology數(shù)字信號控制器部門的技術(shù)人員Brian Boles 說,“一般來講,將應(yīng)用針對通用的內(nèi)存架構(gòu)而設(shè)計編譯器比較容易些?!币尵幾g器最佳地將代碼和數(shù)據(jù)分配到專用的內(nèi)存結(jié)構(gòu),而對應(yīng)用代碼的全局的動態(tài)特性沒有可視性是比較困難的。

對于操作系統(tǒng)的復(fù)雜應(yīng)用,如Linux,內(nèi)存架構(gòu)需要支持虛擬尋址。然而,使用大型操作系統(tǒng)滿足上市時間表壓力的開發(fā)人員來說,可能會失去對如何分隔軟件利用片上資源來節(jié)能和節(jié)省成本的深入考慮。沖突的某些問題是權(quán)衡與確定有多少片上內(nèi)存需要操作系統(tǒng)通過片上內(nèi)存運行,以及這種方法留給應(yīng)用的內(nèi)存數(shù)量。“到目前為止,通用操作系統(tǒng)沒有什么虛假的連接規(guī)定完整的物理到內(nèi)存系統(tǒng)的映射,促進(jìn)基礎(chǔ)內(nèi)存系統(tǒng)最佳使用?!盜ntel嵌入式與通訊集團(tuán)營銷經(jīng)理Phil Ames說?!叭欢谇度胧皆O(shè)計中采用手動調(diào)整軟件,使內(nèi)存系統(tǒng)得到最佳使用是十分普遍的?!?BR>
管理各種不同類別的內(nèi)存需要專門的軟件。例如,小容量NAND閃存(528 字節(jié)/每頁)與大容量 NAND 閃存(2112 字節(jié)/每頁)通常需要不同的閃存管理軟件。一個解決這種情況的方法是將軟件設(shè)計成模塊化嵌入層中,以使軟件開發(fā)人員在必須修改時,盡量減少重寫量。Toshiba內(nèi)存產(chǎn)品集團(tuán)的技術(shù)人員Doug Wong說:“NAND 閃存為最早的商品化內(nèi)存,將重要的智能特性加入內(nèi)存設(shè)備中,以使其更易使用?!盩oshiba的LBA-NAND 與兼容eMMC的嵌入式NAND 中都含有可執(zhí)行NAND管理功能的內(nèi)置控制器,如模塊管理、損耗均衡、及邏輯到物理模塊的轉(zhuǎn)換及自動錯誤校正等。這種方法明顯地降低了系統(tǒng)架構(gòu)師或軟件工程師在對FFS(閃存文件系統(tǒng))或FTL(閃存轉(zhuǎn)換層)管理NAND閃存設(shè)備的負(fù)擔(dān)。

附文2:多種選擇

以下的范例使用基于ARM7的NXP LPC2129 處理器內(nèi)核,說明了某些處理器核架構(gòu)對內(nèi)存架構(gòu)可能的第一決策影響(圖A)。ARM7 為三級流水線von Neumann架構(gòu)機(jī)器,有一個端口通過AHB(高級高性能總線)橋連接到ARM 高性能總線。該橋是提供在處理器與外設(shè)頻率間同步的必要途徑。以容納處理器接口,或作為與多個主控設(shè)備總線的接口。盡管該橋非常必要,但當(dāng)處理器通過AHB存取任何數(shù)據(jù)時,應(yīng)用一個雙時鐘延遲處理,如果地址超出序列,則應(yīng)用一個額外的性能處理。

一個放置程序和數(shù)據(jù)內(nèi)存的明顯位置是在AHB 一側(cè)的總線上,以便處理器可存取內(nèi)存,且外設(shè)可直接存取內(nèi)存數(shù)據(jù)。但是,AHB 橋還是應(yīng)用了兩周期的延遲處理。為了優(yōu)化 處理性能,設(shè)計人員將程序內(nèi)存放置在AHB橋的處理器的局部總線一側(cè)。盡管這種結(jié)構(gòu)提高了處理性能,但其它總線主控設(shè)備不能直接存取此內(nèi)存,迫使設(shè)計人員將更多的內(nèi)存放置在DMA 主控設(shè)備的AHB 一側(cè)。這種方法增加了舊工藝的成本,但在深亞微米工藝中,性能增加比成本增長更重要。

閃存比6T(6個三極管)SRAM 單元速度慢,但由于閃存具有非易失性、固態(tài)可靠性、較低的功耗及設(shè)計靈活性,所以在嵌入系統(tǒng)中使用閃存非常重要。在單一內(nèi)存類型內(nèi)的許多子體系結(jié)構(gòu)允許你調(diào)整架構(gòu)以滿足應(yīng)用的需求。這些需求包括存取速度、編程速度、讀電壓功耗水平及成本等。其它對閃存的重要考慮有,使用年限及支持的擦除次數(shù)。

嵌入式閃存的隨機(jī)存取速度約為50 ns、商業(yè)閃存約85 ns,在針對速度超過100 MHz的處理器時就會出現(xiàn)問題。然而,因為存取嵌入式閃存并不受針腳限制,嵌入式閃存子系統(tǒng)可使用帶有某些接口邏輯的較寬的位寬來提高性能。在此例中,128 位的寬度允許系統(tǒng)同時存取四個處理器數(shù)據(jù)字,該數(shù)據(jù)字為線性碼提供了80 MHz 的有效存取頻率。將以可邏輯四字的存取與讀取結(jié)合,在以閃存執(zhí)行時,可允許分支預(yù)測實現(xiàn)可接受的性能。這種方法實現(xiàn)了更為節(jié)省成本和功耗的SRAM 或閃存作為本地內(nèi)存以隨機(jī)存取數(shù)據(jù),多數(shù)為程序代碼的線性存取,而不僅是SRAM 實現(xiàn)。

有多種選擇可以實現(xiàn)總線架構(gòu)來支持高帶寬外設(shè)。一種是使用多層總線,它是一種矩陣,允許多個主控設(shè)備以不同方式存取內(nèi)存資源。另一種方法是設(shè)計一個AHB至AHB 橋,這樣就有兩個或更多的獨立總線。由于局部內(nèi)存SRAM 并不支持DMA,不論選擇哪種方法,任何高帶寬外設(shè)(如以太網(wǎng)或USB)都應(yīng)有專門的內(nèi)存資源可直接存取內(nèi)存。所存儲的數(shù)據(jù)包和幀的數(shù)量、數(shù)據(jù)速率及處理器速度決定著專用內(nèi)存的大小。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


關(guān)鍵詞: 嵌入式 緩存 緩沖

評論


相關(guān)推薦

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

關(guān)閉