探索ARM Cortex-M7核心:為明日物聯(lián)網(wǎng)預(yù)做準(zhǔn)備
摘要:本技術(shù)白皮書(shū)將詳細(xì)闡述Cortex-M7處理器,探討在設(shè)計(jì)核心時(shí)面臨的架構(gòu)考量、以及關(guān)于配置選項(xiàng)的信息,同時(shí)也說(shuō)明它在IoT應(yīng)用中的重要性。此信息適用于希望對(duì)處理器本身有更深一步了解的人士、或有興趣從事嵌入式系統(tǒng)設(shè)計(jì)和軟件開(kāi)發(fā)的專業(yè)人士。
本文引用地址:http://butianyuan.cn/article/277715.htmCortex-M 處理器系列的最新成員是Cortex-M7。這款新的核心具備可用于支持新型嵌入式技術(shù)需求的功能,它設(shè)計(jì)用于需要較高處理性能、實(shí)時(shí)響應(yīng)能力和能效的應(yīng)用??傮w而言,Cortex-M7 處理器包含下列關(guān)鍵特性:
● 高性能、雙指令簽發(fā) 6 級(jí)流水線,每個(gè)時(shí)鐘周期最多可執(zhí)行兩個(gè)指令;
● 64 位AXI 系統(tǒng)總線接口;
● 可選指令緩存(4 到 64KB)及數(shù)據(jù)緩存(4 到 64KB),每種緩存內(nèi)存均有可選的 ECC(錯(cuò)誤校正碼)支持;
● 可選 64 位指令緊密耦合內(nèi)存(ITCM)及可選雙 32 位數(shù)據(jù) TCM(D{0,1}TCM),每個(gè)TCM內(nèi)存陣列均支持客戶ECC實(shí)現(xiàn);
● 可選的低延遲 AHB 外設(shè)總線接口,允許在實(shí)時(shí)應(yīng)用程序中對(duì)外設(shè)進(jìn)行確定性的快速訪問(wèn)。
ARM Cortex-M7 處理器配置選項(xiàng)
Cortex-M7 處理器的微架構(gòu)與 Cortex-M 處理器系列中的其他核心不同。Cortex-M7的微架構(gòu)具有6級(jí)超標(biāo)量流水線實(shí)現(xiàn),通過(guò)改善架構(gòu)性能(減少每個(gè)指令周期數(shù))和提升運(yùn)行頻率,大幅改善系統(tǒng)性能。為支持超標(biāo)量設(shè)計(jì)更高的指令和數(shù)據(jù)帶寬要求,其關(guān)鍵內(nèi)存接口設(shè)計(jì)為64位寬度。AXI 系統(tǒng)總線和單周期 ITCM 接口均為64位,雙32位 D-TCM 接口可以在一個(gè)周期內(nèi)處理兩個(gè)32位傳輸或一個(gè)64位數(shù)據(jù)傳輸。表1總結(jié)了Cortex-M7處理器微架構(gòu)中的總線,強(qiáng)調(diào)了新接口與前代 ARM Cortex-M 系列設(shè)備的對(duì)比。
在支持許多IoT應(yīng)用所需的內(nèi)存擴(kuò)展性時(shí),AXI主控器接口可發(fā)揮重要的功能。由于新的使用模型建立于持續(xù)收集和分析的數(shù)據(jù)基礎(chǔ)上,因此能夠利用外部?jī)?nèi)存來(lái)增加功能性顯得至關(guān)重要。除了AXI主機(jī)接口外,TCM接口也提供最優(yōu)的單周期接口,用于執(zhí)行控制所需的實(shí)時(shí)運(yùn)算。若要支持超過(guò)5 CoreMarks/MHz的處理器性能級(jí)別,高性能內(nèi)存和總線接口則至關(guān)重要。
選擇要在SoC中使用哪些總線以及如何加以利用時(shí),需要考慮多個(gè)要素,其中包括:
● 哪些外設(shè)需要連接Cortex-M7處理器上的AHB外設(shè)總線,來(lái)實(shí)現(xiàn)低延遲訪問(wèn)能力?
● 哪些外設(shè)需要由DMA控制器訪問(wèn)?
● 需要哪些形式的訪問(wèn)控制和內(nèi)存保護(hù)?
舉例來(lái)說(shuō),在非常簡(jiǎn)單的設(shè)計(jì)中,內(nèi)存系統(tǒng)可以連接至TCM接口,外設(shè)可以連接至AHB 外設(shè)接口,如圖2所示。這種配置使得SoC不僅能夠利用Cortex-M7核心的可縮放性能,而且仍然能夠應(yīng)對(duì)與成本和尺寸相關(guān)的挑戰(zhàn)。例如,通過(guò)SRAM與TCM接口的連接,可以活動(dòng)支持,實(shí)現(xiàn)需要實(shí)時(shí)性能的控制邊緣節(jié)點(diǎn)。
另一種配置選項(xiàng)是將嵌入式內(nèi)存和(或)外部?jī)?nèi)存與AXI接口連接,并通過(guò)使用緩存內(nèi)存來(lái)實(shí)現(xiàn)更高的性能。大多數(shù)微控制器應(yīng)用包含許多小的控制循環(huán),因此固件執(zhí)行的緩存未命中數(shù)非常低。使用基于緩存的設(shè)計(jì)時(shí),系統(tǒng)在從AXI總線系統(tǒng)執(zhí)行程序時(shí)的確定性可能較低。不過(guò),可以在與ITCM接口連接的SRAM中,放入異常矢量表和中斷處理程序,從而實(shí)現(xiàn)在執(zhí)行中斷處理程序時(shí)的確定行為。
AXI接口和緩存的內(nèi)存可擴(kuò)展性、性能以及效率優(yōu)勢(shì)是滿足應(yīng)用需求的關(guān)鍵所在。此類配置提供與IoT應(yīng)用相符的諸多優(yōu)勢(shì),如支持無(wú)線固件更新和利用大型外部?jī)?nèi)存的數(shù)據(jù)存儲(chǔ)需求。然而,并非所有應(yīng)用案例都需要每個(gè)選項(xiàng),所以必須要考量與成本、尺寸和功耗相關(guān)的挑戰(zhàn)。
內(nèi)存系統(tǒng)的設(shè)計(jì)可以提供各種各樣的配置選項(xiàng)。需要考慮多個(gè)方面和因素,其中包括:
● 來(lái)自AXI或TCM接口的執(zhí)行;
● 緩存大小(如果使用AXI);
● 嵌入式閃存訪問(wèn)加速的方式,以及閃存的帶寬;
● 可選ECC支持。
許多不同因素可以影響到?jīng)Q策,如嵌入式閃存的讀取訪問(wèn)速度,時(shí)鐘速度要求,以及目標(biāo)應(yīng)用的典型大小及其程序流行為。
物聯(lián)網(wǎng)相關(guān)文章:物聯(lián)網(wǎng)是什么
評(píng)論