Parallella Fan!
Home記事一覧BBS

Parallella開発の手引き

オープン・プラットフォーム「Parallella」のソフトウェア・ハードウェアの開発方法についてまとめてみました。

基本事項まとめ

Parallella概要
Parallellaの購入方法など
Parallellaクイック・スタート・ガイド

ParallellaのセットアップとOS・開発環境のインストール(開発環境は公式OSイメージにプリインストールされていて、すぐに使える状態になっています。)

まずはHello world.

公式サンプル「HelloWorld」を読む

端末に「Hello World」と出るだけのプログラムですが、ちゃんとEpiphanyプロセッサを動かして表示されています。

ライブラリの初期化、共有メモリのアロケート、Epiphanyプロセッサへのプログラムのロード、起動、Epiphanyプログラム側から共有メモリにデータを書き込む方法、ホスト側から読み出す方法、ビルドスクリプトの書き方、プログラム実行スクリプトの書き方まで、基本的なことが全て分かる良サンプルです。

他の人が作ったプログラムを見てみよう

「parallella-examples」リポジトリには、Parallellaコミュニティの有志により作られたサンプルプログラムがすでにいくつもアップロードされています。

ダウンロード方法:

wget -O parallella-examples-master.zip https://github.com/parallella/parallella-examples/archive/master.zip

unzip parallella-examples-master.zip

cd parallella-examples-master

ls

ビルド方法、実行方法はそれぞれのディレクトリのREADME.mdファイルを参照してください。

「epiphany-examples」リポジトリには、Epiphanyの命令や機能の使い方を端的に示した数多くの小さなサンプルプログラムがあります。

ダウンロード方法:

wget -O epiphany-examples-master.zip https://github.com/adapteva/epiphany-examples/archive/master.zip

「parallella-utils」リポジトリには、ユーティリティ・ソフトウェアやライブラリが収められています。

ダウンロード方法:

wget -O parallella-utils-master.zip https://github.com/parallella/parallella-utils/archive/master.zip

「parallella-community-hw」リポジトリは、ユーザーが作成したハードウェア・プロジェクトのデータが収められています。

ダウンロード方法:

wget -O parallella-community-hw-master.zip https://github.com/parallella/parallella-community-hw/archive/master.zip

これらはいずれもオープンソース・ライセンスで配布されているので、改造したり、自分のプログラムに組み込んで使用することができます。

SDK周りのドキュメント

Epiphany SDKリファレンス概要

Epiphany SDK リファレンス・マニュアルのライブラリ部分の抜粋です。PDFより関数宣言のコピペ等がやりやすいかも。(非公式)

Epiphanyアーキテクチャ・リファレンス概要

Epiphanyアーキテクチャ・リファレンスの抜粋、日本語訳です。(非公式)

Epiphany SDK リファレンス・マニュアル(PDF)

Epiphany SDKのツールやライブラリに関するマニュアルです。

Epiphany アーキテクチャ・リファレンス・マニュアル(PDF)

Epiphanyの命令や機能、仕様に関するマニュアルです。

SDK周りのGitリポジトリ

Epiphany SDKビルド・スクリプト

これを使用して他のソース一式をダウンロード、ビルドすることができます。

Epiphany Eclipseフレームワーク(CDTプラグイン)
Epiphanyランタイム・ライブラリ、ユーティリティ
epiphany-gcc
epiphany-gdb
epiphany-binutils
epiphany-cgen
epiphany-newlib
epiphany-opencl (COPRTHR)

ハードウェア周りのドキュメント

Parallella リファレンス・マニュアル(PDF)
Epiphany-III (E16G301) データシート(PDF)
Epiphany-IV (E64G401) データシート(PDF)
Zynq関連ドキュメント
Parallella回路図(PDF)
Parallella プラットフォーム・リファレンス・デザイン・ガイド

これは若干内容が古いです。最新のプロジェクトのビルド方法などは後述のZynqプロジェクト・ディレクトリの中のREADME.mdファイルを参照してください。

ハードウェア周りのGitリポジトリ

parallella-hw

ボード・デザイン・ファイルやHDLソース等。Zynqプロジェクトのビルド方法は fpga/projects/バージョン名/README.md ファイルに書かれています。

Epiphanyアーキテクチャ設計検証ツール

OS周りのドキュメント

Parallella向けLinuxカーネルの構築法

若干内容が古いかも。

OS周りのGitリポジトリ

Linuxカーネル・バイナリ配布
Linuxカーネル・ソース
U-Boot
公式Ubuntuイメージのバグ報告用とREADME

情報やソースコードの共有

Parallellaコミュニティ
Parallella Wiki
当サイトBBS(日本語でok!)
parallella-examples

Parallellaユーザーが作ったソフトウェア、ハードウェアを共有する場所。何か作ったらGitHubにアップロードして、ここにPullリクエストを出しましょう。