[core]-ARM A76学习笔记
快速鏈接:
.
👉👉👉 個人博客筆記導讀目錄(全部) 👈👈👈
目錄
- 1、Cortex-A76 cores特點
- 2、Cortex-A76的組件有:
- (1)、The instruction fetch unit includes:
- (2)、Instruction decode
- (4)、Execution pipeline
- (5)、L1 data memory system
- (6)、L2 memory system
- 3、DSU
- 4、About system control
- 5、About the Generic Timer
- 6、About the MMU
★★★ 友情鏈接 : 個人博客導讀首頁—點擊此處 ★★★
1、Cortex-A76 cores特點
最多可以有4個Cortex-A76 cores通過1個DSU,連接到外部的memory
2、Cortex-A76的組件有:
? Instruction fetch. L1 i-cache
? Instruction decode.
? Register rename.
? Instruction issue.
? Execution pipelines. ALU 和 NEON
? L1 data memory system. L1 d-cache
? L2 memory system. L2 cache
(1)、The instruction fetch unit includes:
? A 64KB, 4-way, set associative L1 instruction cache with 64-byte cache lines and optional parity
protection.
? A fully associative L1 instruction TLB with native support for 4KB, 16KB, 64KB, 2MB, and 32MB
page sizes.
? A dynamic branch predictor
L1 i-cache :64KB,4路256組相連,cache line位64bytes
TLB i-cache :全相連,支持4KB, 16KB, 64KB, 2MB,32M size
(2)、Instruction decode
The instruction decode unit supports the A32, T32, and A64 instruction sets. It also supports Advanced
SIMD and floating-point instructions in each instruction set
(4)、Execution pipeline
The execution pipeline includes:
? Integer execute unit that performs arithmetic and logical data processing operations.
? Vector execute unit that performs Advanced SIMD and floating point operations. Optionally, it can
execute the cryptographic instructions.
其實這里就是描述,有一個用于整數計算的ALU、有一個浮點型運算和SIMD運算的NEON
(5)、L1 data memory system
The L1 data memory system executes load and store instructions and encompasses the L1 data side
memory system. It also services memory coherency requests.
The load/store unit includes:
? A 64KB, 4-way, set associative L1 data cache with 64-byte cache lines and optional ECC protection
per 32 bits.
? A fully associative L1 data TLB with native support for 4KB, 16KB, 64KB, 2MB, and 512MB page
sizes
L1 d-cache :64KB,4路256組相連,cache line位64bytes
TLB d-cache :全相連,支持4KB, 16KB, 64KB, 2MB,512MB size
(6)、L2 memory system
The L2 memory system services L1 instruction and data cache misses from the Cortex-A76 core.
The L2 memory system includes:
? An 8-way set associative L2 cache with data ECC protection per 64 bits. The L2 cache is
configurable with sizes of 128KB, 256KB, or 512KB.
? An interface with the DSU configurable at implementation time for synchronous or asynchronous
operation
L2 cache :8路相連的cache,大小為128KB, 256KB, or 512KB
3、DSU
The Cortex-A76 core has several interfaces to connect it to a SoC. The DSU manages all interfaces
DSU管理A76和SOC連接的所有接口
4、About system control
The system registers control and provide status information for the functions that the core implements.
The main functions of the system registers are:
? Overall system control and configuration.
? MMU configuration and management.
? Cache configuration and management.
? System performance monitoring.
? GIC configuration and management.
The system registers are accessible in the AArch64 EL0-EL3 and AArch32 EL0 Execution state. Some
of the system registers are accessible through the external debug interface.
5、About the Generic Timer
6、About the MMU
The Memory Management Unit (MMU) is responsible for translating addresses of code and data Virtual
Addresses (VA) to Physical Addresses (PAs) in the real system. The MMU also controls memory access
permissions, memory ordering, and cache policies for each region of memory
負責轉換代碼和數據的地址(VAs to PAs)、還控制內存訪問權限、內存排序和緩存策略
(TLB)
The TLB entries contain either one or both of a global indicator and an Address Space Identifier (ASID)
to permit context switches without requiring the TLB to be invalidated.
The TLB entries contain a Virtual Machine Identifier (VMID) to permit virtual machine switches by the
hypervisor without requiring the TLB to be invalidated
TLB entries包含:1-2個global indicator、ASID、VMID
in the relevant instruction or data.
ASID, current VMID, and translation regime.
現在L1 TLB中查找、再到L2 TLB查找,都沒命中則走hardware translation table walk
When executing in AArch64 state at a particular Exception level, you can configure the hardware
translation table walk to use either the 4KB, 16KB, or 64KB translation granule. Program the Translation
Granule bit, TG0, in the appropriate translation control register:
? TCR_EL1.
? TCR_EL2.
? TCR_EL3.
? VTCR_EL2
查找的頁面可以通過修改TCR寄存器配置4KB, 16KB, or 64KB
TTBR0_EL1 、TTBR1_EL1
總結
以上是生活随笔為你收集整理的[core]-ARM A76学习笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux中的SGI(核间中断)IPI_
- 下一篇: Globalplatform TEE a