日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

高性能32位內(nèi)核與基于微控制器存儲(chǔ)架構(gòu)的集成

出處:阿立 發(fā)布于:2008-09-02 08:57:28

 ?。常病∥弧。停茫铡⌒阅懿町?/FONT>

  微控制器(MCU)領(lǐng)域如今仍由?。浮∥缓汀。保丁∥黄骷刂?,但隨著更高性能的?。常病∥惶幚砥鏖_(kāi)始在?。停茫铡∈袌?chǎng)創(chuàng)造巨大收益,在系統(tǒng)設(shè)計(jì)方面,芯片架構(gòu)師面臨著?。校谩≡O(shè)計(jì)人員早在十年前便遇到的挑戰(zhàn)。盡管新內(nèi)核在速度和性能方面都在不斷提高,一些關(guān)鍵支持技術(shù)卻沒(méi)有跟上發(fā)展的步伐,從而導(dǎo)致了嚴(yán)重的性能瓶頸。

  很多?。停茫铡⊥耆蕾囉趦煞N類(lèi)型的內(nèi)部存儲(chǔ)器件。適量的?。樱遥粒汀】商峁?shù)據(jù)存儲(chǔ)所需的空間,而 NOR 閃存可提供指令及固定數(shù)據(jù)的空間。

  在新?。常病∥粌?nèi)核的尺寸和運(yùn)行速度方面,嵌入式?。樱遥粒汀〖夹g(shù)正在保持同步。成熟的?。樱遥粒汀〖夹g(shù)在?。保埃埃停龋〉倪\(yùn)行范圍更易于實(shí)現(xiàn)。對(duì)?。停茫铡∷璧牡湫汀。遥粒汀∪萘縼?lái)說(shuō),這個(gè)速度級(jí)別也更具成本效益。

  但是標(biāo)準(zhǔn)的?。危希摇¢W存卻落在了基本?。常病∥粌?nèi)核時(shí)鐘速度之后,幾乎相差一個(gè)數(shù)量級(jí)。當(dāng)前的嵌入式?。危希摇¢W存技術(shù)的存取時(shí)間基本為 50ns?。ǎ玻啊。停龋?。這在閃存器件和內(nèi)核間轉(zhuǎn)移數(shù)據(jù)的能力方面造成了真正的瓶頸,因?yàn)楹芏鄷r(shí)鐘周期可能浪費(fèi)在等待閃存找回特定指令上。

  標(biāo)準(zhǔn)MCU 執(zhí)行模型——XIP?。ǎ澹兀澹悖酰簦濉。桑睢。校欤幔悖澹└觿×颂幚砥鲀?nèi)核速度和閃存存取時(shí)間之間的性能差距。

  大容量存儲(chǔ)中的應(yīng)用容錯(cuò)及?。樱遥粒洼^高的成本是選擇直接從閃存執(zhí)行的兩個(gè)主要原因。存儲(chǔ)在閃存內(nèi)的程序基本不會(huì)被系統(tǒng)內(nèi)的隨機(jī)錯(cuò)誤破壞,如電源軌故障。利用閃存直接執(zhí)行還無(wú)需為MCU器件提供足夠的 SRAM,來(lái)將應(yīng)用從一個(gè) ROM 或閃存器件復(fù)制至目標(biāo)?。遥粒汀?zhí)行空間。

  消除差距

  理想的情況是,改進(jìn)閃存技術(shù),以匹配32位內(nèi)核的性能。雖然當(dāng)前的技術(shù)有一定的局限,仍有一些有效的方法,可幫助架構(gòu)師解決性能瓶頸問(wèn)題。

  簡(jiǎn)單的指令預(yù)取緩沖器和指令高速緩存系統(tǒng)在32位MCU設(shè)計(jì)中的采用,將大大提高MCU的性能。下面將介紹系統(tǒng)架構(gòu)師如何利用這些技術(shù)將16位的MCU架構(gòu)升級(jí)至32位內(nèi)核CPU。

  在 MCU 設(shè)計(jì)中引入?。常参粌?nèi)核

  圖?。薄〗榻B了將現(xiàn)有16位設(shè)計(jì)升級(jí)至基本32位內(nèi)核的情況,顯示了新32 位內(nèi)核及其基本外設(shè)集合之間的基本聯(lián)系。由于我們?cè)谟懻搶⑿碌模常参惶幚砥鲀?nèi)核集成至新的?。停茫铡≡O(shè)計(jì),我們假設(shè)可采用新32位內(nèi)核采用以下規(guī)范。

  圖1  為現(xiàn)有設(shè)計(jì)引入32位內(nèi)核

 ?。常病∥粌?nèi)核——改良的哈佛架構(gòu)

  與很多 MCU 一樣,新的?。常参弧?nèi)核也采用改良的哈佛架構(gòu)。因此,程序存儲(chǔ)和數(shù)據(jù)存儲(chǔ)空間是在兩個(gè)獨(dú)立的總線構(gòu)架上執(zhí)行。一個(gè)純哈佛設(shè)計(jì)可防止數(shù)據(jù)在程序存儲(chǔ)空間被讀取,該內(nèi)核改良的哈佛架構(gòu)設(shè)計(jì)仍可實(shí)現(xiàn)這樣的操作,同時(shí),該32位內(nèi)核設(shè)計(jì)還可實(shí)現(xiàn)程序指令在數(shù)據(jù)存儲(chǔ)空間的執(zhí)行。

  在標(biāo)準(zhǔn)總線周期內(nèi),程序和數(shù)據(jù)存儲(chǔ)器接口允許插入等待狀態(tài),有助于響應(yīng)速度緩慢的存儲(chǔ)或存儲(chǔ)映射器件。

 ?。常参粌?nèi)核——工作頻率

  新內(nèi)核的工作時(shí)鐘頻率為120MHz,是被替代的16位內(nèi)核速度的六倍。

 ?。常参粌?nèi)核——指令存儲(chǔ)器接口

  指令存儲(chǔ)系統(tǒng)接口有一個(gè)32位寬的數(shù)據(jù)總線,以及一個(gè)總共地址空間為1MB的20位寬的地址總線。盡管?。常参粌?nèi)核具備更大的地址空間,而這足夠滿足這個(gè)MCU的目標(biāo)應(yīng)用空間。標(biāo)準(zhǔn)的控制信號(hào)同樣具備為緩慢的存儲(chǔ)器件插入等待狀態(tài)的能力。

  該設(shè)計(jì)的閃存器件與16位設(shè)計(jì)采用的技術(shù)一樣,運(yùn)行速度達(dá)20?。停龋?。

 ?。常病∥粌?nèi)核——數(shù)據(jù)存儲(chǔ)器接口

  系統(tǒng) SRAM 和存儲(chǔ)器映射外設(shè)都通過(guò)系統(tǒng)控制器與處理器數(shù)據(jù)總線相連。系統(tǒng)控制器可提供額外的地址解碼及其他控制功能,幫助處理器內(nèi)核正確訪問(wèn)數(shù)據(jù)存儲(chǔ)器或存儲(chǔ)器映射外設(shè),而無(wú)需處理特定的等待狀態(tài)、不同的數(shù)據(jù)寬度或每個(gè)映射到數(shù)據(jù)存儲(chǔ)空間的器件的其他特殊需求。

  系統(tǒng)控制器和處理器內(nèi)核之間的數(shù)據(jù)總線為?。常病∥粚挘c系統(tǒng)控制器和SRAM 間的數(shù)據(jù)總線寬度相同。系統(tǒng)控制器和外設(shè)以及?。牵校桑稀《丝陂g的數(shù)據(jù)總線寬度可為?。浮∥?、16 位或 32 位,視需求而定。

  目標(biāo)設(shè)計(jì)采用的?。樱遥粒汀∨c?。保丁∥辉O(shè)計(jì)采用的類(lèi)型相同,在 120?。停龋鷷r(shí)可實(shí)現(xiàn)?。啊〉却隣顟B(tài)操作。

  初步分析

  目前系統(tǒng)的性能由幾個(gè)因素控制。處理器內(nèi)核與閃存器件速度的差異可極大地影響性能,因?yàn)橹辽儆形鍌€(gè)等待狀態(tài)必須添加到每個(gè)指令提取中。根據(jù)粗粒經(jīng)驗(yàn)法則,至少每十個(gè)指令有一個(gè)讀取或存儲(chǔ)。每條指令加權(quán)平均周期(CPI)的典型順序?yàn)椋?/FONT>

  CPI?。健。ǎ埂。椋睿螅簟。。丁¢W存周期 +?。薄。椋睿螅簟。薄。樱遥粒椭芷冢。。保啊≈噶?/FONT>

  CPI?。健。担?/FONT>

  內(nèi)核的吞吐量由閃存接口的速度決定,因此以前所有的32位內(nèi)核都是數(shù)據(jù)通道寬度的兩倍。

  在這種情況下,SRAM接口無(wú)關(guān)緊要。雖然某些問(wèn)題很有可能源于存儲(chǔ)接口方面,如中斷延遲和原子位處理,SRAM存儲(chǔ)器的零等待狀態(tài)操作可以忽略。關(guān)注的重點(diǎn)是通過(guò)采用目前可用的、具有成本效益的技術(shù),來(lái)提高指令存儲(chǔ)接口的性能。

  提高CPU內(nèi)核性能——閃存接口

  來(lái)自高性能計(jì)算環(huán)境的一個(gè)通用概念是高速緩存,在主要存儲(chǔ)器件和處理器內(nèi)核之間采用更小及更快的內(nèi)存存儲(chǔ),可以實(shí)現(xiàn)突發(fā)數(shù)據(jù)或程序指令的更快訪問(wèn)。

  設(shè)計(jì)和實(shí)現(xiàn)高速緩存可能非常復(fù)雜——需要考慮高速緩存標(biāo)記、N-Way級(jí)聯(lián)和普通高速緩存控制等問(wèn)題——僅關(guān)注程序指令存儲(chǔ)器可讓這項(xiàng)工作變得非常簡(jiǎn)單。這是因?yàn)閷?duì)此特定的?。常病∥粌?nèi)核來(lái)說(shuō),對(duì)程序存儲(chǔ)器的訪問(wèn)是一個(gè)嚴(yán)格的只讀操作。在這種情況下,我們只需考慮一個(gè)方向的數(shù)據(jù)流可以減少緩沖器和高速緩存系統(tǒng)的復(fù)雜性。

  預(yù)取緩沖器

  增加閃存接口總體帶寬的一個(gè)簡(jiǎn)單方法是擴(kuò)展處理器和閃存器件間的通道寬度。假定閃存的速度一定,增加帶寬的另外一個(gè)方法是擴(kuò)展接口寬度,以實(shí)現(xiàn)提取更多指令,創(chuàng)造一個(gè)更為快速的閃存接口外觀。

  這是預(yù)取緩沖器的一個(gè)基本前提。它利用了連接閃存的更寬接口的優(yōu)勢(shì),可在同樣的時(shí)鐘周期數(shù)內(nèi)讀取更大的數(shù)據(jù)量,這通常只要花閃存讀一個(gè)字的時(shí)間。

  因此,預(yù)取緩沖器還定義了新數(shù)據(jù)通道的尺寸,原因顯而易見(jiàn)。

  圖2.1顯示了我們的120?。停龋鷥?nèi)核連接到20?。停龋W存陣列的情況。采用兩個(gè)系統(tǒng)間的速度比作為起始值,我們可以確定預(yù)取緩沖器、閃存接口讀取的寬度,假設(shè)我們需要在無(wú)需等待狀態(tài)的情況下讀取指令。

  圖2.1  指令預(yù)取

  在這種情況下,預(yù)?。W存數(shù)據(jù)通道將是:

 ?。ǎ保玻埃玻埃兀常参唬剑保梗参粚?/FONT>

  預(yù)取緩沖器控制邏輯不斷對(duì)存取緩沖器的讀取數(shù)進(jìn)行標(biāo)記。存取后,它將使下一個(gè)周期從閃存重新加載整個(gè)緩沖器。

  預(yù)取緩沖器控制邏輯還可識(shí)別緩沖器每次進(jìn)入的有效地址。它還將提供適當(dāng)?shù)慕獯a,根據(jù)正確的順序指令顯示處理器數(shù)據(jù)總線,當(dāng)一個(gè)執(zhí)行分支需要完整的新的順序指令時(shí),將重新加載緩沖器。

  當(dāng)然,在提取新的指令時(shí),分支將造成一些額外的延遲。但是由于相比處理器內(nèi)核,預(yù)取緩沖器實(shí)現(xiàn)六合一方法在數(shù)據(jù)通道寬度方面具有的優(yōu)勢(shì),為該分支問(wèn)題的終平衡的結(jié)果付出的代價(jià)是值得的。

  更多經(jīng)驗(yàn)法則分析都顯示,一個(gè)典型的嵌入式應(yīng)用有20%發(fā)生分支的機(jī)會(huì),每五個(gè)周期相當(dāng)于一個(gè)分支。采用之前的方法,CPI值現(xiàn)在為:

  周期+1指令*6周期)/5指令

 ?。茫校伞。健。玻?/FONT>

  我們已經(jīng)看到利用基本實(shí)現(xiàn)方法,整個(gè)系統(tǒng)周期效率有了大幅提高。

  圖2.1還顯示了一個(gè)更為現(xiàn)實(shí)解決方案方法,即將六個(gè)獨(dú)立的閃存系統(tǒng)的32位總線加在一起,而不是重新設(shè)計(jì)一個(gè)新的、極寬的數(shù)據(jù)總線閃存系統(tǒng)。預(yù)取緩沖器控制邏輯將自動(dòng)創(chuàng)建六個(gè)連續(xù)的程序地址,然后允許一個(gè)正常的讀取周期同時(shí)訪問(wèn)所有六個(gè)組。在讀取周期的末尾,預(yù)取緩沖器現(xiàn)在可保持六個(gè)新的指令,而非一個(gè),模擬的零等待狀態(tài)系統(tǒng)。

  指令高速緩存

  形式指令高速緩存賦予預(yù)取緩沖器更高水平的復(fù)雜性,因?yàn)楦咚倬彺娌恍枰麄€(gè)高速緩存陣列的特定線性地址。形式高速緩存的尺寸也比簡(jiǎn)單預(yù)取緩沖器大,它可能在高速緩存內(nèi)存儲(chǔ)整個(gè)循環(huán)序列。

  圖?。玻病★@示了一個(gè)簡(jiǎn)單的有?。浮K、單路的高速緩存設(shè)計(jì),1 塊有?。保丁€(gè)字節(jié)。雖然這么小的高速緩存很難實(shí)現(xiàn),但它對(duì)指令執(zhí)行很有用。在這種情況下,地址標(biāo)記將是整個(gè)地址的高?。保病∥?,而索引將是尋址高速緩存塊內(nèi)的特定條目的余下的兩位。

  圖2.2  指令側(cè)高速緩存

  與指令預(yù)取緩沖器相比,指令高速緩存系統(tǒng)具有更復(fù)雜的地址比較系統(tǒng),因?yàn)樵摳咚倬彺骊嚵胁粌H包括每個(gè)高速緩存塊的連續(xù)尋址指令,而且可以將指令地址空間的任何區(qū)域包含在高速緩存塊內(nèi)。

  為了讓高速緩存更有效地工作,在閃存器件和指令高速緩存之間應(yīng)當(dāng)實(shí)現(xiàn)盡量寬的數(shù)據(jù)通道,保證內(nèi)核能夠以快的速度執(zhí)行程序指令。指令高速緩存在與閃存器件的接口上實(shí)現(xiàn)了一個(gè)指令預(yù)取機(jī)制來(lái)解決這個(gè)問(wèn)題。否則,閃存存取時(shí)間的問(wèn)題就會(huì)影響內(nèi)核執(zhí)行速度。

  在正常執(zhí)行過(guò)程中,所需的指令地址高位和高速緩存陣列的指令標(biāo)記間開(kāi)始一連串的比較。如果找到匹配的地址,高速緩存命中即被寄存,指令地址的低位將被用于高速緩存塊內(nèi)的索引,以找回所需的指令。如果沒(méi)有發(fā)現(xiàn)匹配的地址,就是我們所說(shuō)的高速緩存不命中。高速緩存不命中將導(dǎo)致高速緩存控制器從存儲(chǔ)區(qū)的特定區(qū)域讀入包含所需指令的緩存塊。被替代的高速緩存塊通常是陣列中舊的高速緩存塊。

  當(dāng)使用高速緩存時(shí),基本性能分析變得更加復(fù)雜,因?yàn)檫@時(shí)高速緩存不命中數(shù)在方程里引入了一個(gè)新的變量。分析典型應(yīng)用代碼可幫助芯片設(shè)計(jì)人員確定高速緩存大小和實(shí)際性能增益的平衡。

  對(duì)于我們的設(shè)計(jì),假定?。茫校伞⒃谝韵路秶鷥?nèi)是比較合理的:

  <=?。茫校伞。ǎ悖幔悖瑁澹。迹健。玻?/FONT>

  在高速緩存大得足夠存儲(chǔ)大多數(shù)應(yīng)用主程序的情況下,性能增益可能非常顯著,因?yàn)橄到y(tǒng)正在接近?。啊〉却隣顟B(tài)執(zhí)行環(huán)境。

  采用改良的哈佛架構(gòu)(Modified?。龋幔颍觯幔颍洹。粒颍悖瑁椋簦澹悖簦酰颍澹┰O(shè)計(jì)的指令高速緩存的一個(gè)重要優(yōu)勢(shì)是高速緩存無(wú)需執(zhí)行回寫(xiě)操作。與數(shù)據(jù)高速緩存相比,這種實(shí)現(xiàn)要簡(jiǎn)單的多,數(shù)據(jù)緩存還要保證改動(dòng)過(guò)的高速緩存數(shù)據(jù)正確地存儲(chǔ)進(jìn)主數(shù)據(jù)存儲(chǔ)器。

  改進(jìn)的設(shè)計(jì)

  我們現(xiàn)在可以把學(xué)到的知識(shí)應(yīng)用于我們系統(tǒng)的個(gè)框圖,并從預(yù)取/指令高速緩存緩沖器系統(tǒng)提供的增益中獲益。詳見(jiàn)以下的圖?。场?/FONT>

  圖3  改進(jìn)的32位內(nèi)核設(shè)計(jì)

  與之前的16位設(shè)計(jì)相比,新設(shè)計(jì)能夠以三倍的速度(120 MHz?。。玻啊。茫校桑A(yù)取)/?。玻啊。停龋ǎ保丁∥粫r(shí)鐘)執(zhí)行指令,通過(guò)適當(dāng)選擇終指令高速緩存的大小,很容易就能實(shí)現(xiàn)非常接近單等待狀態(tài)閃存系統(tǒng)運(yùn)行的性能。

  雖然指令預(yù)取緩沖器是一種簡(jiǎn)單的實(shí)現(xiàn),但它通過(guò)屏蔽閃存和?。常病∥粌?nèi)核執(zhí)行速度之間的存取時(shí)間差異,顯著地改善了系統(tǒng)吞吐量。預(yù)取緩沖器是一個(gè)非常簡(jiǎn)單的設(shè)計(jì),只需要很少的額外邏輯。大部分額外邏輯與擴(kuò)展閃存系統(tǒng)和預(yù)取緩沖存儲(chǔ)器之間的通道有關(guān)。設(shè)計(jì)的簡(jiǎn)單有利于它完全透明地展示給軟件程序員,他們只需允許或禁用該功能就可以了。

  形式指令高速緩存是一種更復(fù)雜的解決方案,需要至少與預(yù)取緩沖器相同數(shù)量的額外邏輯電路,以及管理指令高速緩存正常運(yùn)行的額外邏輯電路。設(shè)計(jì)人員需要分析 MCU 運(yùn)行的典型應(yīng)用,以確定能夠地平衡性能和成本的高速緩存大小。當(dāng)然,指令高速緩存部署更為昂貴,但是在許多情況下,系統(tǒng)實(shí)現(xiàn)的性能可達(dá)到?。啊〉却隣顟B(tài)系統(tǒng),對(duì)性能產(chǎn)生顯著的積極作用。軟件程序員還必須了解與指令高速緩存有關(guān)的一些基本控制和維護(hù)問(wèn)題,但是在大多數(shù)情況下,它們可以一勞永逸地運(yùn)行,只是在系統(tǒng)初始化時(shí)才需要執(zhí)行。

  只用新的?。常病∥黄骷苯犹娲F(xiàn)有的 8 位或?。保丁∥粌?nèi)核是不夠的。芯片設(shè)計(jì)人員還必須調(diào)整和改進(jìn)整個(gè)?。停茫铡≡O(shè)計(jì),以適應(yīng)高性能、高速度?。常病∥粌?nèi)核的新要求。我們需要這樣的調(diào)整來(lái)確保新的 32 位內(nèi)核能夠釋放性能。采用預(yù)取緩沖器和指令高速緩存是改進(jìn)微控制器設(shè)計(jì)的兩個(gè)直接途徑,微控制器與?。常病∥粌?nèi)核和現(xiàn)有存儲(chǔ)器技術(shù)直接相關(guān)。

  請(qǐng)登陸: 維庫(kù)電子市場(chǎng)網(wǎng)(www.hbjingang.com) 瀏覽更多信息


  
關(guān)鍵詞:高性能32位內(nèi)核與基于微控制器存儲(chǔ)架構(gòu)的集成

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類(lèi)作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買(mǎi)家服務(wù):
賣(mài)家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫(kù)提出的寶貴意見(jiàn),您的參與是維庫(kù)提升服務(wù)的動(dòng)力!意見(jiàn)一經(jīng)采納,將有感恩紅包奉上哦!