CPUID (ARM) |
辞書:科学用語の基礎知識 半導体用語編 (IYIC) |
読み:スィーピーユーアイディー |
外語: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
レジスター |
現在定義されているレジスターは、次の通りである。
CRn | opc1 | CRm | opc2 | レジスター | |
---|---|---|---|---|---|
c0 | 0 | c1 | 0 | ID_PFR0 | Processor Feature Register 0 |
1 | ID_PFR1 | Processor Feature Register 1 | |||
2 | ID_DFR0 | Debug Feature Register 0 | |||
3 | ID_AFR0 | Auxiliary Feature Register 0 | |||
4 | ID_MMFR0 | Memory Model Feature Register 0 | |||
5 | ID_MMFR1 | Memory Model Feature Register 1 | |||
6 | ID_MMFR2 | Memory Model Feature Register 2 | |||
7 | ID_MMFR3 | Memory Model Feature Register 3 | |||
c2 | 0 | ID_ISAR0 | ISA Feature Register 0 | ||
1 | ID_ISAR1 | ISA Feature Register 1 | |||
2 | ID_ISAR2 | ISA Feature Register 2 | |||
3 | ID_ISAR3 | ISA Feature Register 3 | |||
4 | ID_ISAR4 | ISA Feature Register 4 | |||
5 | ID_ISAR5 | ISA Feature Register 5 | |||
6 | 予約 | ||||
7 |
リンク |
通信用語の基礎知識検索システム WDIC Explorer Ver 7.04a (27-May-2022) Search System : Copyright © Mirai corporation Dictionary : Copyright © WDIC Creators club |