Google Coral Edge TPU Hardware & AIY Kits

store: https://store.gravitylink.com/global

Google Coral Dev BoardでYocto生成ディストリビューションを実行する

これは、Edge TPU Moduleと呼ばれるLinuxベースのSystem-on-Moduleであり、追加の周辺機器を含む開発ボードにマウントされています。 EDGE TPモジュールの主なハードウェア機能:
- 統合GPUを備えたi.MX8MQ SoC
- 1 GB LPDDR4
- 8 GBのeMMC
- Google Edge TPUコプロセッサー(MLモデルの高速化に使用)
- WiFi /Bluetooth
微信截图_20190710150259.png

Coral Dev BoardはEdge TPU Moduleの評価用ボードとして機能しますが、Rasbperry Pi 3ボードと同様のシングルボードコンピュータとしても使用できます。 Coral Dev Boardには、Debian派生物であるMendel OSと呼ばれるLinuxディストリビューションが付属しています。 ボードは実際には事前にプログラムされたメンデルOSを含んでいなかった、そして私は始めるためにボードをフラッシュしなければならなかった。 しかし、事前に構築されたOSイメージと、十分に文書化された手順でボードをフラッシュする方法が提供されているので、これは比較的簡単です。

私はYocto / OE-coreを使ったLinuxディストリビューションの構築に時間をかけていますし、組み込みLinuxバイス上でのLinuxディストリビューションは私にとって興味があるので、メンデルOSが何であるかをもっと深く掘り下げる必要がありました。

上で概説した文書に従うことによって、私はさらなる検査のためにすべてのコンポーネントソースコードを取得することができました。 メンデルOSがi.MX8 SoC用のNXP i.MX BSPから来るかなり標準的なコンポーネント上に構築されていることを私がより近くで見始めてすぐに気が付いたとき本当の驚きはそこにありませんでした。 この情報を使って、私はこれを移植するのがかなり簡単であることに気づきました、そして私はCoral Dev Boardで起動する何かを構築することができるようにYocto BSPレイヤを作成することに着手しました。 起動するためには、このレイヤーに3つのものを実装するだけで済みました。
- Uブートフォークの作り方
- Linuxカーネルフォークの作り方
- boot.scrを展開するためのレシピ、およびMendel OSからコピーしたスクリプトのソースを作成しました

Yoctoを使ってイメージを構築するには、次の手順に従います。環境を保存するディレクトリを作成し、シェルをその場所に変更します。

mkdir coral && cd coral

レポマニフェストを初期化します:

マニフェストでレイヤーを取得する:

repo sync

クローンmeta-coral:

git clone https://github.com/mirzak/meta-coral.git sources/meta-coral -b warrior

環境を設定します:

MACHINE=coral-dev DISTRO=fslc-wayland source ./setup-environment build

meta-coralbblayers.confに追加します:

echo 'BBLAYERS += "${BSPDIR}/sources/meta-coral"' >> conf/bblayers.conf

ベーキングを開始します:

bitbake core-image-base

ビルドが完了したら、WICイメージが作成されているはずですビルドが完了したら、WICイメージが作成されているはずです:
tmp/deploy/images/coral-dev/core-image-base-coral-dev.wic.gz

これは、起動システムを取得するためにeMMCまたはSDカードに書き込むことができるイメージです。 簡単にするために、Coral Dev BoardのブートモードをデフォルトのeMMCではなくSDカードからブートするように変更し、これを行うためにブートスイッチを次のように調整しました。

1-1.png

これが「SDカードモード」の起動スイッチの写真です:
1-2.jpg

既に画像を作成しているので、SDカードに書き込むことができます:

zcat tmp/deploy/images/coral-dev/core-image-base-coral-dev.wic.gz | sudo dd of=<device> bs=4M

SDカードを挿入してシステムを起動します。これでYoctoビルドディストリビューションのログインプロンプトが表示されます:

FSLC Wayland 2.7 coral-dev ttymxc0

coral-dev login

さまざまな周辺機器のテストはまだ終わっていませんが、Mendel OSと同じLinuxカーネルを使用しているので基本的なコンポーネントHDMIEthernet、USB)は動作するはずです。 ユーザースペースのコンポーネントに依存しているので、もう少し作業が必要なことがいくつかありますが、これは非常に短いリストです。

Google Coral DevのYocto / OE-core BSPレイヤーのソースコードは、こちらにあります:
https://github.com/mirzak/meta-coral

テストに満足していて、参加することに興味がある場合は気軽に連絡を取ってください。(作者:mirzak)