みねっちょのマイコン関係ブログ

組込開発系フリーソフトやハードの情報発信ブログ

ARM

ARM シミュレータ内蔵 GDB の使い方

GDB 内蔵の ARM CPU 用シミュレータを TUI モードで使用してベアメタル用ソースコードのデバッグを行う手順を紹介します。C/C++ ソースとアセンブリやレジスタを同時に表示出来ます。本 GDB を WSL でビルドする手順は別記事で紹介しています。

ARM シミュレータ内蔵 GDB のビルド手順

GDB にはターゲット CPU 用のシミュレータが内蔵可能です。ホスト上でクロスコンパイルしたバイナリを GDB 単体で実行可能です。WSL の Ubuntu-20.04 上で GDB 10.2 を ARM 用内蔵シミュレータ付きでビルドする手順を紹介します。

CPU コアを含む Verilog シミュレーションでダンプすべき信号

最終更新:2021-04-23 本記事では、CPU コアを含む RTL を Verilog HDL 等で論理シミュレーションする場合の、ダンプすべき信号について解説します。論理シミュレーションに使用する ROM コードは、C 言語もしくはアセンブリ言語で作成する事を想定していま…

ARM Cortex-M0 コアを無償な Verilog シミュレータで動かす

ARM 社より評価用として無償でクリック スルー契約によりダウンロード可能な Cortex-M0 CPU コア単体の難読化 Verilog HDL を、WSL 上の無償な Icarus Verilog シミュレータで動かす手順を紹介します。ROM コードは WSL 上標準パッケージの GNU クロスコンパ…

ARM Cortex-M のベアメタル用 C 言語ブートストラップを WSL で作る

ARM

ARM Cortex-M シリーズ用のブートシーケンスは、従来の ARM コアとは異なります。スタックポインタの設定、リセット、割込、例外の各アドレスはベクタ テーブル方式となります。また Thumb ステートで起動する為には、ベクタ アドレスに1を足しておかねばな…

WSL に標準添付の ARM 用クロスコンパイラで OS 無しベアメタルのビルドをする

WSL 上 Ubuntu 標準パッケージの ARM 用クロスコンパイラを使って OS 無しベアメタルのビルド手順を解説します。ヘキサファイル (インテル HEX、 MOT) 、素のバイナリ、 Verilog 用 ROM ファイルも出力します。

WSL に標準添付の ARM 用クロスコンパイラを使う

Windows 10 の WSL 上 Ubuntu-20.04 での ARM 用クロスコンパイラの導入と動作確認をします。この Ubuntu には標準パッケージとして ARM-64/EL/HF 用の3種類があり、Linux カーネルのビルドに最適です。