CPUID (ARM)

読み:スィーピーユーアイディー
外語:CPUID 英語
品詞:固有名詞

ARMv7から導入された、ソフトウェアからハードウェアの能力を判断するための手法。

目次

Intel x86のcpuidとは異なり、専用命令が用意されているわけではない。

ARMの命令セットにあるコプロセッサーとのインターフェイスを利用し、コプロセッサーのレジスターを読み書きする命令を用いてレジスターを読み取り、情報が得られるようになっている。

ARMでは、CP15に様々な情報レジスターが割り付けられており、CRn→opc1→CRm→opc2で階層構造が取られている。このうち、CR0とopc1は0で、CRmがc1〜c7の範囲がCPUIDレジスターとされている。

CPUIDの扱いではないが、同じ階層で、CRmがc0、opt2が0には、Main IDレジスターがあり、このレジスターを読むとCPUの種類が判断できる。

読み取り方法

次の命令を用いて汎用レジスターに読み取る。

MRC<c> <coproc>,<opc1>,<Rt>,<CRn>,<CRm>{,<opc2>}

MRC2<c> <coproc>,<opc1>,<Rt>,<CRn>,<CRm>{,<opc2>}

例えば、ID_PFR0をR0に読み取るには、次のようにする。

mrc p15, 0, r0, c0, c1, 0

レジスター

現在定義されているレジスターは、次の通りである。

CRnopc1CRmopc2レジスター
c00c10ID_PFR0Processor Feature Register 0
1ID_PFR1Processor Feature Register 1
2ID_DFR0Debug Feature Register 0
3ID_AFR0Auxiliary Feature Register 0
4ID_MMFR0Memory Model Feature Register 0
5ID_MMFR1Memory Model Feature Register 1
6ID_MMFR2Memory Model Feature Register 2
7ID_MMFR3Memory Model Feature Register 3
c20ID_ISAR0ISA Feature Register 0
1ID_ISAR1ISA Feature Register 1
2ID_ISAR2ISA Feature Register 2
3ID_ISAR3ISA Feature Register 3
4ID_ISAR4ISA Feature Register 4
5ID_ISAR5ISA Feature Register 5
6 予約
7
用語の所属
ARMアーキテクチャ

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club