目錄
I.MX6芯片簡介
Corterx -A7架構(gòu)簡介
Cortex-A處理器運(yùn)行模型
Cortex-A 寄存器組
IMX6U IO表示形式
I.MX6芯片簡介
ARM Cortex-A7內(nèi)核可達(dá)900 MHz,128 KB L2緩存。
并行24bit RGB LCD接口,可以支持1366*768分辨率。
3.8/10/16位 并行攝像頭傳感器接口(CSI)。
4. 2個(gè)MMC 4.5/SD 3.0/SDIO 接口
5. 2個(gè)USB 2.0 OTG, HS/FS, Device or Host with PHY.
6.音頻接口3x 12S/SAI, S/PDIF Tx/Rx.
7.2個(gè)IEEE802.3標(biāo)準(zhǔn)10/100Mbps以太網(wǎng)接口。
8. 多達(dá)8個(gè)UART接口。
9.2個(gè)12-bit ADC最高支持10個(gè)輸入通道,支持電阻觸摸屏(4/5線)。
10,安全模塊: TRNG, Crypto Engine(AES with DPA, TDES/SHA/RSA), Secure Boot。
Corterx -A7架構(gòu)簡介
Cortex-A7 MPcore處理器支1-4核,通常是和Cortex-A15組成big.LITTLE架構(gòu)的,Cortex-A15 作為大核負(fù)責(zé)高性能運(yùn)算,比如玩游戲啥的,Cortex-A7負(fù)責(zé)普通應(yīng)用,因?yàn)?CortexA7省電。Cortex-A7本身性能也不弱,不要看它叫做Cortex-A7但是它可是比Cortex-A8性能要強(qiáng)大,而且更省電。ARM官網(wǎng)對(duì)于Cortex-A7的說明如下:
“在 28nm 工藝下,Cortex-A7可以運(yùn)行在1.2-1.6GHz,并且單核面積不大于 0.45mm2(含有浮點(diǎn)單元、NEON和 32KB的 L1緩存),在典型場景下功耗小于100mW,這使得它非常適合對(duì)功耗要求嚴(yán)格的移動(dòng)設(shè)備,這意味著Cortex-A7在獲得與Cortex-A9相似性能的情況下,其功耗更低”。Cortex-A7 MPCore支持在一個(gè)處理器上選配1-4個(gè)內(nèi)核,?Cortex-A7 MPCore多核配置如圖:
Cortex-A7MPCore的L1可選擇8KB, 16KB, 32KB, 64KB, L2Cache可以不配,也可以選擇 128KB、256KB、512KB、1024KB。IMX6UL 配置了 32KB 的 L1 指令 Cache 和 32KB 的L1數(shù)據(jù)Cache,以及128KB的L2Cache。 Cortex-A7MPCore使用ARMv7-A架構(gòu),主要特性如下:
1.SIMDv2擴(kuò)展整形和浮點(diǎn)向量操作。
2.提供了與ARM VFPv4體系結(jié)構(gòu)兼容的高性能的單雙精度浮點(diǎn)指令,支持全功能的IEEE754
3.支持大物理擴(kuò)展(LPAE),最高可以訪問40位存儲(chǔ)地址,也就是最高可以支持1TB的內(nèi)存。
4.支持硬件虛擬化。
5.支持Generic Interrupt Controller(GIC)V2.0。
6.支持 NEON,可以加速多媒體和信號(hào)處理算法。
Cortex-A處理器運(yùn)行模型
以前的ARM 處理器有7中運(yùn)行模型:User、FIQ、IRQ、Supervisor(SVC)、Abort、Undef和System,其中User是非特權(quán)模式,其余6中都是特權(quán)模式。但新的Cortex-A 架構(gòu)加入了TrustZone安全擴(kuò)展,所以就新加了一種運(yùn)行模式: Monitor,新的處理器架構(gòu)還支持虛擬化擴(kuò)展,因此又加入了另一個(gè)運(yùn)行模式;?Hyp,所以Cortex-A7處理器有9種處理模式,如表
在表中,除了User(USR)用戶模式以外,其它8種運(yùn)行模式都是特權(quán)模式。這幾個(gè)運(yùn)行模式可以通過軟件進(jìn)行任意切換,也可以通過中斷或者異常來進(jìn)行切換。大多數(shù)的程序都運(yùn)行在用戶模式,用戶模式下是不能訪問系統(tǒng)所有資源的,有些資源是受限的,要想訪問這些受限的資源就必須進(jìn)行模式切換。但是用戶模式是不能直接進(jìn)行切換的,用戶模式下需要借助異常來完成模式切換,當(dāng)要切換模式的時(shí)候,應(yīng)用程序可以產(chǎn)生異常,在異常的處理過程中完成處理器模式切換。當(dāng)中斷或者異常發(fā)生以后,處理器就會(huì)進(jìn)入到相應(yīng)的異常模式種,每一種模式都有一組寄存器供異常處理程序使用,這樣的目的是為了保證在進(jìn)入異常模式以后,用戶模式下的寄存器不會(huì)被破壞。
STM32 和 UCOS、FreeRTOS就會(huì)知道,STM32 只有兩種運(yùn)行模式,特權(quán)模式和非特權(quán)模式,但是Cortex-A就有9種運(yùn)行模式。
Cortex-A 寄存器組
ARM 架構(gòu)提供了16個(gè)32 位的通用寄存器(RO-R15)供軟件使用,前15個(gè)(RO-R14)可以用作通用的數(shù)據(jù)存儲(chǔ),R15是程序計(jì)數(shù)器PC,用來保存將要執(zhí)行的指令。ARM 還提供了一個(gè)當(dāng)前程序狀態(tài)寄存器 CPSR 和一個(gè)備份程序狀態(tài)寄存器 SPSR,SPSR 寄存器就是 CPSR 寄存器的備份。這18個(gè)寄存器如圖所示:
?Cortex-A7有9種運(yùn)行模式,每一種運(yùn)行模式都有一組與之對(duì)應(yīng)的寄存器組。每一種模式可見的寄存器包括15個(gè)通用寄存器(RO-R14)、一兩個(gè)程序狀態(tài)寄存器和一個(gè)程序計(jì)數(shù)器PC。在這些寄存器中,有些是所有模式所共用的同一個(gè)物理寄存器,有一些是各模式自己所獨(dú)立擁有的,各個(gè)模式所擁有的寄存器如表所示:
從圖中淺色字體的是與User模式所共有的寄存器,藍(lán)綠色背景的是各個(gè)模式所獨(dú)有"的寄存器??梢钥闯?/span>,在所有的模式中,低寄存器組(R0-R7)是共享同一組物理寄存器的,只是一些高寄存器組在不同的模式有自己獨(dú)有的寄存器,比如FIQ模式下 R8-R14是獨(dú)立的物理寄存器。假如某個(gè)程序在FIQ模式下訪問R13寄存器,那它實(shí)際訪問的是寄存器R13_fiq,如果程序處于 SVC 模式下訪問R13 寄存器,那它實(shí)際訪問的是寄存器 R13_svc??偨Y(jié)一下,CortexA 內(nèi)核寄存器組成如下:
1.34個(gè)通用寄存器,包括R15程序計(jì)數(shù)器(PC),這些寄存器都是32位的。
2.8個(gè)狀態(tài)寄存器,包括CPSR和SPSR。
3.Hyp模式下獨(dú)有一個(gè)ELR_Hyp寄存器。
IMX6U IO表示形式
STM32,管腳名字: PAO-15, PBO-15 PC,PD…
I.MX6ULL:管腳名字:PAD_BOOT_MODEO?管腳的復(fù)用:
VIOMUXC_SNS_SW_MUX_CTL_PAD_BOOT_MODEO??MUX復(fù)用功能的意思
IOMUXC_SNVS_SW_PAD_CTL_PAD_BOOT_MODEO
對(duì)于6ULL,查看管腳復(fù)用的步驟:
1.打開參考手冊(cè)
2.找到32章,IO復(fù)用章節(jié)文章來源:http://www.zghlxwxcb.cn/news/detail-490444.html
3.查找對(duì)應(yīng)的管腳文章來源地址http://www.zghlxwxcb.cn/news/detail-490444.html
到了這里,關(guān)于01_I.MX6U芯片簡介的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!