シミュレータ付属仮想ボードについて
SOLID付属の QEMUシミュレータは、OSS標準の全ての機能をサポートしていません。 現時点でサポート付属している仮想ボードには、以下のような部品が搭載されており、この仮想ボードを利用していただくことになります。また、本QEMUシミュレータ(SOLID標準付属QEMUシミュレータ、SOLID-QEMU-*.exeでインストールするもの)を、SOLID-IDE以外から単体で利用することなども想定しておりません。
なお、仮想ボードについては、準備が整い次第追加する予定です(時期については2021/8現在未定)。
搭載されている部品
CPU |
ARM Cortex-A53 |
Arm v8-A , SIMD, VFPv4,
cryptography extensions. AArch32 and AArch64 support.
|
割り込みコントローラ |
GIC-400 |
|
タイマ |
Generic Timer |
Cortex-A53 CPU内臓のタイマです
|
UART |
PL011 |
|
ROM |
なし |
プログラムはSOLID-IDEからRAMにダウンロードして実行します。 |
RAM |
2GB |
DTBを変更することで、サイズの変更は可能です。 |
仮想ボードの種類について
仮想ボードによっては、CPUがシングルコアのタイプと、デュアルコアのタイプが存在します。
min-aarch64.dtb - シングルコアCPUの仮想ボード
dual-aarch64.dtb - デュアルコアCPUの仮想ボード
CPUの数以外のハードウェア構成は同じです。
メモリマップ
開始アドレス |
終了アドレス |
|
---|---|---|
0x0800_0000 |
0x0800_FFFF |
GIC Distributor |
0x0801_0000 |
0x0801_FFFF |
GIC CPU Interface |
0x0900_0000 |
0x0900_0FFF |
PL011 |
0x4000_0000 |
0x7FFF_FFFF |
RAM(2GByte) |
タイマは Cortex-A53の GenericTimerなので、システムレジスタ(aarch32モードは CP15レジスタ)経由でアクセスします。CPU0のGenericTimerのVirtualTimerをSOLID-OSが利用しています。 UARTは、標準では QEMUのコンソールに文字列出力されるようになっています。
ハードウェア構成の変更について
本QEMUシミュレータに付属の仮想ハードウェアについては、その変更を行った時の挙動や、また変更方法についての技術サポートは行いません。しかし、簡単なハードウェア構成の変更であれば可能です。
dtbファイルが存在するディレクトリと同じディレクトリに、同名のdtsファイルが存在します。このdtsファイルを修正することで、RAMサイズの変更や、またUARTのチャネル数を増やす程度の、簡単なハードウェア構成の変更は可能です。 dtsファイルを修正したら、付属のdtcコマンドでdtbファイルを再生成してください。
dtc -I dts -O dtb -o DTBファイル名.dtb DTSファイル名.dts
dtcコマンドは、標準では`C:KMCQEMU_SOLIDAARCH64bindtc.exe`にインストールされています。
UARTチャネル数の変更
シリアルが複数ある場合、qemu起動コマンドの引数の -serial 順に、出力先が割り当てられます。例えば、UARTを三チャンネルにし、qemuの起動オプションを以下のようにした場合
-serial telnet:localhost:9997,server,nowait -serial telnet:localhost:9998,server,nowait -serial telnet:localhost:9999,server,nowait
最初のUARTとはTCPポート9997、二番目のUARTがTCPポート9998、三番目のUARTがTCPポート9999となり、それぞれtelnet接続して利用することが可能です。
起動コマンドはdtbファイルなどと同じディレクトリに存在するautorun.rmuファイル内を変更します。
標準添付の仮想ボード(仮想ハードウェア)以外について
本QEMUシミュレータ付属の仮想ボード以外に、独自の仮想ボードが必要なお客様は、弊社までご連絡ください。以下の二つの方法で対応していただくことが可能です。
弊社提供のQEMU仮想ボード開発用のSDKを購入していただき、自由に仮想ボードを作成する
仮想ボードの開発を弊社に委託する
どちらの方法も、費用は標準のSOLIDには含まれず、別途発生いたします。