この記事では、まずMilk-V Duo開発ボードについて簡単に紹介し、次に開発ボードの開発環境初期化操作プロセスを紹介します。具体的には、Linux 環境の準備、開発ボード イメージの作成、 TF カードの書き込み、およびTFカードへの接続の4 つの部分で構成されます。開発ボード。開発者はこのチュートリアルを参照して、Milk-V Duo 開発ボードの開発と拡張を開始できます。
事前準備:
- TFカード
- TFカードリーダー
- Type-C データケーブル
Milk-V Duo 開発ボードの概要
Milk-V Duo 開発ボード (図 1) は、CV1800B チップ (RISC-V アーキテクチャ、C906@1Ghz + C906@700MHz) をベースにした超小型組み込み開発プラットフォームです。64MB RAM をサポートし、10/100Mbps イーサネットを実現するように拡張でき、Linux および RTOS システムを実行でき、専門家、産業用 ODM、AIoT 愛好家、DIY 愛好家、クリエイターに信頼性が高く、低コストで高性能のプラットフォームを提供します。ハードウェアパラメータ情報は次のとおりです。
- CVITEK CV1800B (C906@1Ghz + C906@700MHz)
- デュアル RV64 コア、最大 1GHz
- 64MBメモリ
- オプションのアドオンボード経由の 10/100Mbps イーサネット
- Linux と RTOS を同時に実行するためのテクニカル サポート
Milk-V 開発ボードのピンは次の図に示されており、ユーザーは豊富な DIY 拡張を行うことができます。
。
開発環境の初期化
このサブセクションには次の 4 つの手順が含まれます。
- Linux 環境の準備: Linux 開発環境でイメージのコンパイルを実行する必要があります。この記事では、Win 環境で docker を使用して Ubuntu イメージ (バージョン 20.04) をプルする方法を紹介します。すでに VMware Workstation を所有しており、Ubuntu システムをインストールしている場合は、このステップは省略できます。
- 開発ボードイメージの作成: 依存関係のインストール、SDK の取得、Linux 環境でのイメージのコンパイルと作成
- TF カードの書き込み: 準備された開発ボード イメージをコピーし、rufus ツールを使用してイメージ ファイルを TF カードに書き込みます。
- 開発ボードに接続する: プログラムされた TF カードを取り外し、開発ボードに挿入し、ドライバーを更新し、ssh で開発ボードに接続します。
4 つのステップについては、以下で詳しく説明します。
Linux環境の準備
-
Windows 環境では、Docker Desktop for Windowsをインストールし、Docker を介して ubuntu イメージをプルし、Linux 環境を取得するコンテナを作成できます。
Windows で docker を実行するには、関連する依存関係が必要です。つまり、図に示すように、実行中の依存関係として WSL2 バックエンドまたは Hyper-V バックエンドを使用する必要があります。Hyper-V バックエンドを有効にする方法は次のとおりです:
a. [コントロール パネル] - [プログラム] - [Windows 機能を有効または無効にする]
b. Hyper-V を見つけて、Hyper-V 管理ツールと Hyper-V プラットフォームを確認し、システム ファイルが追加されるまで待ちます。設定を完了する コンピュータを再起動する
次に、Windows 用 Docker デスクトップをインストールしてダウンロードし、インストール ガイドで選択したバックエンドに従って確認します。インストールが完了したら、コンピューターを再起動する必要があります。その後、docker を使用できるようになります。
-
コマンド ラインに入力して Ubuntu イメージをプルする
docker pull ubuntu:20.04
と、ubuntu20.04
イメージをプルして、それを使用してdocker images
プルしたイメージを表示できます。
コマンド ラインに入力するdocker run -it ubuntu:20.04 /bin/bash
と、コンテナを作成して実行できます。コンテナがターミナルに表示されるとroot@<string>:/#
、それは意味しますコンテナが作成されたことを示します。完了してコンテナに入りました。 はstring
コンテナの ID です。つまり、containerId
コンテナ
を終了してコンテナを終了する必要がある場合は、それを入力してください。また、コンテナの外で再度コンテナに入る必要がある場合は、コンテナの ID を入力します。exit
ターミナルに順番にdocker start <containerId>
入力できますdocker attach <containerId>
。(詳細な手順については、公式の docker チュートリアルを参照してください)
-
コンテナを構成し、必要な依存関係をインストールします。
sudo apt-get update sudo apt-get install sudo sudo apt-get install vim sudo apt install pkg-config build-essential ninja-build automake autoconf libtool wget curl git gcc libssl-dev bc slib squashfs-tools android-sdk-libsparse-utils android-sdk-ext4-utils jq python3-distutils tclsh scons parallel ssh-client tree python3-dev python3-pip device-tree-compiler ssh cpio fakeroot libncurses5 flex bison libncurses5-dev genext2fs rsync unzip dosfstools mtools # 安装cmake wget https://github.com/Kitware/CMake/releases/download/v3.26.4/cmake-3.26.4-linux-x86_64.sh chmod +x cmake-3.26.4-linux-x86_64.sh sudo ./cmake-3.26.4-linux-x86_64.sh --skip-license --prefix=/usr/local/ # 输入以下命令进行验证,若能输出对应版本号,则表示安装成功 cmake --version
開発ボードイメージ制作
-
SDKをダウンロードする
git clone https://github.com/milkv-duo/duo-buildroot-sdk.git
-
build_milkv.sh
スクリプトを実行してコンパイルするcd duo-buildroot-sdk ./build_milkv.sh
コンパイルが成功すると、成功したイメージ ファイルであるファイルが
/duo-buildroot-sdk/out
ディレクトリに見つかります。この時点で、基本イメージ ファイルは、TF カードの書き込みとその後の操作の次のステップで使用できます。Python3でミラーを作成するスクリプトを設定しますmilkv-duo-xxxxxxxx-xxxx.img
3.配置制作预装Python3的镜像
-
プリインストールされたPython3のミラーイメージを構成および作成します(オプション)
cd duo-buildroot-sdk # 导入环境变量 export MILKV_BOARD=milkv-duo source milkv/boardconfig-milkv-duo.sh source build/milkvsetup.sh defconfig cv1800b_milkv_duo_sd
設定ファイルを変更してPython3を設定する
cd ./buildroot-2021.05/configs vim milkv_duo_musl_riscv64_defconfig
次の 2 行のコードをファイルに追加します。
BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON3_PYC_ONLY=y
保存して終了した後、ファイルを再度コンパイルしてパッケージ化します。
cd duo-buildroot-sdk
build_all
pack_sd_image
上記のコマンドを実行すると、duo-buildroot-sdk/install/soc_cv1800b_milkv_duo_sd ディレクトリに milkv-duo.img イメージ ファイルが生成されます。
TFカードの書き込み
ファイル コピー: 新しいターミナルを開き、ターミナルに入力してdocker cp <containerNAMES>:/duo-buildroot-sdk/out/milkv-duo-xxxxxxxx-xxxx.img <path>/<file_name>.img
ファイル コンテナーをローカル Windows システムにコピーします。これはコンテナーの名前であり、docker ps の関連コマンドで表示できます。
TF カードを TF カード リーダーに挿入し、コンピューターのインターフェイスに挿入します。注意: TF カードに画像を書き込むと、カード内の元のデータが消去されます。その前に必ず元のデータを保存してください。rufus 書き込みツールをダウンロードして、イメージを TF カードに書き込みます
をクリックする开始
と、プログレスバーが終了すると書き込みが完了します。
開発ボードを接続する
焼き付けられた TF カードを取り外し、Milk-V Duo 開発ボードの TF カード スロットに挿入し、Type-C データ ケーブルを使用して開発ボードとコンピュータを接続します。開発ボードの青色 LED ライトが点滅したら、接続が成功したことを意味します。
ドライバーを更新します。デバイス マネージャーで、その他のデバイスの列からRNDIS を見つけ、ドライバーを選択して更新し、更新するときにネットワーク アダプターのデバイスの種類を選択し、MicrosoftのUSB RNDIS アダプターを使用して更新します。更新が完了したら新しい端末を作成し、端末でping 192.168.42.1
テスト ネットワーク、具体的な操作についてはリンクを参照してください。
ネットワーク テストに合格したら、IP を使用して192.168.42.1
開発用の開発ボードに接続できます。たとえば、mobaxtermと ssh を使用して開発ボードに接続し、ログイン名root
とパスワードを入力してmilkv
Milkv Duo 開発ボードのビジュアル プログラミング環境に入ります。
生成されたイメージに Python3 がプリインストールされている場合は、ボード上で Python3 を直接使用してテストできます。
最後に書きます
このチュートリアルでは、Duo 開発ボードの開発環境の初期化プロセスを紹介します。オープン ソース開発者とハードウェア DIY 愛好家は、オープン ソース ハードウェア開発の探索に参加することを歓迎し、より美しいオープン ソース プログラム、より洗練されたハードウェア拡張機能、およびより興味深い機能を使用できます。よりエキサイティングなアプリケーションを作成し、一緒に RISC-V オープン ソース エコシステムを豊かにするために素晴らしいアイデアを考えてください。
その他の Milk-V Duo 開発ボード開発資料は次のとおりです。