日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

Cortex-M3的整体风景

發(fā)布時(shí)間:2025/3/15 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Cortex-M3的整体风景 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.


一、流水線

? 1、Cortex-CM3處理器使用一個(gè)3級流水線,流水線的3級分別是:取指,解碼和執(zhí)行:


? 2、當(dāng)運(yùn)行的指令大多數(shù)是16位時(shí),處理器會(huì)每隔一個(gè)周期做一次取指。當(dāng)執(zhí)行到跳轉(zhuǎn)指令時(shí)需要清洗流水線,處理器會(huì)不得不跳轉(zhuǎn)目的地重新取指。為了改善這種情

??????? 況,Cortex-CM3支持一定數(shù)量的v7M指令可以避免很多短程跳轉(zhuǎn)。


? 3、由于流水線的存在,以及出于對Thumb代碼兼容的考慮,讀取PC會(huì)返回當(dāng)前指令地址+4的值。


? 4、在處理器內(nèi)核的預(yù)取單元中也有一個(gè)指令緩沖區(qū),它允許后續(xù)的指令在執(zhí)行前現(xiàn)在里面排隊(duì),也能在執(zhí)行未對齊的32位指令時(shí),避免流水線斷流。



二、詳細(xì)框圖

? 1、Cortex-CM3處理器里面除了處理核心外,還有其他好多組件,以用于系統(tǒng)管理和調(diào)試支持:

?? 1)、MPUI和ETM是可選組件,不一定會(huì)包含在每一個(gè)Cortex-CM3的MCU中。

?? 2)、方框圖中的縮寫及定義


? 2、Cortex-CM3處理器是以一個(gè)處理器子系統(tǒng)呈現(xiàn)的,其CPU內(nèi)核本身與NVIC和一系列調(diào)試塊都緊密耦合:

?? 1)、CM3core:Cortex-CM3處理器的中央處理核心。

?? 2)、嵌套向量中斷控制器NVIC:NVIC是一個(gè)在Cortex-CM3中內(nèi)建的中斷控制器。

?? 3)、SysTick定時(shí)器:系統(tǒng)滴答定時(shí)器是一個(gè)非常基本的到時(shí)器定時(shí)器,用于在每隔一定的時(shí)間產(chǎn)生一個(gè)中斷,即使是系統(tǒng)在睡眠模式下也能工作。

?? 4)、存儲(chǔ)器保護(hù)單元:MPU是一個(gè)選配的單元,有些Cortex-CM3可能沒有配置此組件。如果有,則它可以把存儲(chǔ)器分成一些regions,并分別給予保護(hù)。

?? 5)、BusMatrix:BusMatrix是Cortex-CM3內(nèi)部總線系統(tǒng)的核心。

?? 6)、AHB to APB:它是一個(gè)總線橋,用于把若干個(gè)APB設(shè)備鏈接到Cortex-CM3處理器的私有外設(shè)總線上。

?? 7)、圖框中其他的組件都用于調(diào)試,通常不會(huì)再應(yīng)用程序中使用它們。


? 3、其他調(diào)試組件

?? 1)、SW-DP/SWJ-DP:串行線調(diào)試端口(SW-DP)/串口線JTAG調(diào)試端口(SWJ-DP)都與AHB訪問端口(AHB-PB)協(xié)同工作,以使外部調(diào)試器可以發(fā)起AHB上的數(shù)據(jù)傳

???????????? 送,從而執(zhí)行調(diào)試活動(dòng)。

?? 2)、AHB-AP:AHB訪問端口通過少量的寄存器,提供了對全部Cortex-CM3存儲(chǔ)器的訪問機(jī)能。

?? 3)、嵌入式跟蹤單元ETM:ETM用于實(shí)現(xiàn)實(shí)時(shí)指令跟蹤,但它是一個(gè)選配件,所以不是所有的Cortex-CM3產(chǎn)品都具有實(shí)時(shí)指令跟蹤能力。

?? 4)、數(shù)據(jù)觀察點(diǎn)及跟蹤單元:通過DWT,可以設(shè)置數(shù)據(jù)觀察點(diǎn)。

?? 5)、指令跟蹤單元ITM:軟件可以通過該模塊直接把消息送給TPIU;還可以讓DWT匹配命中事件通過ITM產(chǎn)生數(shù)據(jù)跟蹤包,并把它輸出到一個(gè)數(shù)據(jù)跟蹤流中。

?? 6)、跟蹤端口的接口單元TPIU:TPIU用于跟外部的跟蹤硬件交互。

?? 7)、FPB:FPB提供flash地址重載和斷點(diǎn)功能。

?? 8)、ROM表:只是一個(gè)簡單的查找表,提供了存儲(chǔ)器映射信息,這些信息包括多種系統(tǒng)設(shè)備和調(diào)試組件。



三、Cortex-CM3的總線接口

? 1、I-Code總線

?? 1)、I-Code總線是一條基于AHB-lite總線的32位總線,負(fù)責(zé)在0x0000_0000-0x1FFF_FFFF之間取指操作。

?? 2)、取指以字的長度執(zhí)行,即使是對于16位指令也是如此.因此CPU內(nèi)核可以一次取出兩條16位指令。


? 2、D-Code總線

?? 1)、D-Code總線是一條基于AHB-lite總線的32位總線,負(fù)責(zé)在0x0000_0000-0x1FFF_FFFF之間取指操作。

?? 2)、鏈接到D-Code總線上的任何設(shè)備都只需支持AHB-Lite的對齊訪問,不需要支持非對齊訪問。


? 3、系統(tǒng)總線

? 1)、系統(tǒng)總線是一條基于AHB-lite總線的32位總線,負(fù)責(zé)在0x2000_0000-0xDFFF-FFFF和0xE010_0000-0xFFFF_FFFF之間的所有數(shù)據(jù)傳送。取指和數(shù)據(jù)訪問都有。

?? 2)、所有的數(shù)據(jù)傳輸都是對齊的。


? 4、外部私有外設(shè)總線

?? 1)、基于APBzing總線協(xié)議的32位總線。此總線負(fù)責(zé)0xE004_0000-0xE00F_FFFF之間的私有外設(shè)訪問。

?? 2)、但是APB的一部分空間已經(jīng)被TPIU、ETM以及ROM表用掉了,就只留下0xE004_2000-0xE00F_F000這個(gè)區(qū)間用于附加的(私有)外設(shè)。


? 5、調(diào)試訪問端口總線

?? 1)、調(diào)試訪問端口總線接口是一條基于”增強(qiáng)型APB規(guī)格“的32位總線,它專用于掛接調(diào)試接口。





四、Cortex-CM3的其他接口

? 1、除了總線接口之外,Cortex-CM3還有幾個(gè)用于其它目的的接口,這些接口的信號都不大可能會(huì)引出到引腳上,而只用于連接SoC不同的部分,或者干脆就沒有使用。


? 2、雜項(xiàng)接口信號




五、外部私有外設(shè)總線

? 1、Cortex-CM3處理器有一個(gè)外部私有外設(shè)總線(PPB)接口。外部PPB接口是基于高級外設(shè)總線(APB)協(xié)議構(gòu)造的。用于非共享的系統(tǒng)設(shè)備。


? 2、為了支持CoreSight設(shè)備,該接口又包含了稱為“PADDR31”的信號,給出傳送的發(fā)源地:

?? 1)、若該信號為0,則表示是運(yùn)行在Cortex-CM3內(nèi)部的軟件產(chǎn)生的傳送操作。

?? 2)、若為1,則表示是調(diào)試軟件產(chǎn)生了傳送操作。


? 3、外部私有外設(shè)總線是專用的,不服務(wù)于普通的外設(shè),這惡鬼規(guī)矩只能靠芯片設(shè)計(jì)者自覺遵守。


? 4、外部PPB不支持非對齊訪問。



六、典型的連接方式

? 1、總線接口與其他設(shè)備和存儲(chǔ)器的典型連接


? 2、代碼存儲(chǔ)區(qū)既可以被指令總線(I-CODE)訪問,也可以被數(shù)據(jù)總線(D-CODE)訪問,此時(shí)需要在中間插入一個(gè)總線開關(guān),稱為總線矩陣或者使用一個(gè)AHB總線復(fù)用器。

?? 1)、如果使用了總線矩陣,則閃存和附加的SRAM可以被both I-CODE和D-CODE訪問。

?? 2)、當(dāng)數(shù)據(jù)訪問和指令訪問同時(shí)嘗試訪問同一個(gè)區(qū)域時(shí),可以賦予數(shù)據(jù)訪問更高的優(yōu)先級以提高性能。

?? 3)、通過AHB總線矩陣把取指和數(shù)據(jù)訪問分開后,如果指令總線和數(shù)據(jù)總線在同一時(shí)刻訪問不同的存儲(chǔ)器設(shè)備,則兩者可以并行不勃。但是若只使用了總線復(fù)用器則數(shù)據(jù)傳

???????????? 送就不能同時(shí)發(fā)生。


? 3、有些引腳比較多的接口會(huì)帶外部總線接口(EMI)。在此情況下,需要一個(gè)外部存儲(chǔ)器控制器。其他的AHB設(shè)備則可以簡單的鏈接到系統(tǒng)總線上,而不需要額外的總線矩

??????? 陣。



七、復(fù)位信號

? 1、Cortex-CM3中各種復(fù)位信號


? 2、典型的Cortex-CM3芯片內(nèi)部復(fù)位信號和其作用范圍示意圖

總結(jié)

以上是生活随笔為你收集整理的Cortex-M3的整体风景的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。