Tech と Culture

テクノロジーとカルチャー

2009-06-01から1ヶ月間の記事一覧

雑記

要素技術習得フェーズが終了したため、JPEG処理全体の性能UPを行っていくわけですが、結局のところ、JPEG処理をきちんと分かっていないとできません。これまでで大分詳しくはなっていたのですが、もっときっちり抑えておく必要が出てきたため本を一冊購入し…

motion JPEG再生 3

作成した、ioctlを用いて16個データを unsigned int 型で送り込んで再生しました。 結果は、2.78fps です。 IOCTL_WRITE, IOCTL_PUSH どちらを用いても変わりませんでした。readyのチェック自体は重くないことが分かります。IOCTL_PUSHでは、カーネルに制御…

IOCTL

write,read ハンドラが動作しましたので、次は、ioctl です。 write, read は、どのように動作するのかが一意に決められていましたが、ioctlでは、どのようにデータを受け渡してどのように動作するかをユーザーが自由に決めることができます。とりあえず、YC…

motion JPEG再生 2

とりあえずの実験として、QQVGAサイズの動画の横一列 160ピクセル分をまとめてデバイスドライバに送り込むように変更して実験しました。前回の実験では、160x120=19200 回のコンテキストスイッチが一画面描画するたびに起きていましたが、今回の実験では、12…

motion JPEG再生

とりあえず、1pixelを書き込むデバイスドライバが動いたので、そのままmotion JPEG再生プログラムのYCbCr-RGB変換関数の部分でそのデバイスドライバをコールするように変更して動作させました。その結果は、、、、、、あまりに遅い!!!! 1.5fpsです。それ…

Writeハンドラ???

init, exit, open, close と実装ができたので、次は read, write だと思っていろいろ参考書を見ながら、コーディングを始めたのですが、どうも read, writeはバイト単位のアクセスであって、何バイト渡すかを指定するみたいです。 そこまでは、良かったので…

雑記

うーん。 カーネルパニック、、、、 デジタルカメラが故障してしまいました。もう相当な年数が経っているので、仕方ないのですが。 技術の進歩はすさまじいので1年前に私が買ったEXLIM携帯の写真でもそこそこきれいにとれるので、最近はデジカメを使うこと…

キャラクタ型デバイスの登録

次にキャラクタ型デバイスドライバの登録や、Open,Closeのハンドラをコーディングします。「Linux デバイスドライバプログラミング 平田豊著」に載っているコードほぼそのままです。Openハンドラでは、メジャー番号、マイナー番号を表示するようにしています…

デバイスドライバ コンパイル環境

ここから私にとっての一番の難所、デバイスドライバの開発が始まります。 数ヶ月間、うんうんうなりながら必死に参考書を読んだ成果が出せるでしょうか。まず最初に、コンパイルできる開発環境を作らねばなりません。ただ単に登録してメッセージを出力するデ…

ソフトウェア(アプリケーション+デバイスドライバ)開発スタート

ハードウェアが動作したので、ソフトウェアの開発スタートです。 FPGAに搭載されているLeon systemのコンフィグレーションが変わりました。 (gaisler research提供のbitファイルは様々なペリフェラルやFPUが詰め込まれています。その代わりキャッシュサイズ…

YCbCr-RGB変換モジュールRTL ハードウェアテスト

FPGAへのマッピングができたので、YCbCr-RGB変換モジュールのハードウェアテストを行います。 GHDLによるシステム検証時に、Bare-C compilerを用いてソフトウェアをコンパイルして、SDRAMの中身を示すsdram.srecファイルを生成しました。このファイル生成の…

FPGA マッピング

FPGAが反応しない件について、Pendar electronicsに質問メール。速攻で実験して返事してくれた。向こうでは動いているそうで、添付されたbitファイルを使うとこっちでも動く。。。いろいろファイルを送ってくれと指定されたので、送って、さらに実験している…

YCbCr-RGB変換モジュールRTL

AMBAマスターのプロトコルを誤解していたことが分かりましたので、RTL修正しました。 AMBAマスターの過去のエントリを修正しました。これで、一応システム検証でも正しい値がGPIOに順次出力されるようになりました。 grtestmodの変更は今のところ行わずに次…

YCbCr-RGB変換モジュールRTL システム検証 番外

とりあえず、modelsimを動かして内部の波形を見ます。 その際にシステム検証するプログラムを yccrgb_test() のみにしてmodelsimを実行しました。 すると、、、35分ぐらいで実行完了です。行数制限のせいで、GHDLよりはるかに遅いですが、それでもなんとか我…

YCbCr-RGB変換モジュールRTL システム検証 2

$GRLIB_HOME/designs/xxxxx/ のディレクトリで、 make soft-clean make soft を行うと、そのディレクトリにある、systest.cをメイン関数としたシステム検証用のプログラムが生成されます。system.cをコンパイルする際に、 $GRLIB_HOME/software/leon3/****.c…

YCbCr-RGB変換モジュールRTL システム検証 1

GHDLでYCbCr-RGB変換モジュールを接続したシステム(leon3mp.vhd)全体のシミュレーションが動き始めました。このシステムの全体像は次の図のようなものです。 この全体がHDLシミュレーションで動作しています。SDRAMもメモリベンダから提供されているVHDLモデ…

ライブラリ化 2

前々回のエントリに書いたように、きちんとAMBAに接続できた場合は、ahbctrlモジュールがコンフィグテーブルを自動でかき集めて全体のアドレス空間などを把握します。シミュレーション時にはそれぞれのベンダー名や機能名などが表示されるようにしてあります…

ライブラリ化

これまで、モジュールの開発は、$GRLIB_HOME/designe/work で行っていましたが、ここはテクノロジーを指定したトップモジュールとシミュレーションテストベンチを開発する場所ですので、ライブラリ化してライブラリを置くべき場所にVHDLファイルを移動します…

やはり、、、、

GHDLがまともに動きません。困った。 modelsimだとモジュールを認識しているが行数制限ですぐ停止。 GHDLだとバインド自体していない!..................yccrgb is not bound.........................うーん。 後記:作成したモジュールをパッケージにして…

YCbCr-RGB変換モジュールRTL 単体検証

YCbCr-RGB変換モジュールの検証(HDLシミュレーション)を行います。 Grlib内にある、ambatest packageを用いて検証します。 ambatest packageは正式にリリースされているものではなく、少しバグが残っているとメーリングリストでgaislerさんが発言しています…

雑記

amazonから kindle DX というものが出ました。 http://japanese.engadget.com/2009/05/06/amazon-kindle-dx/ これまでの kindle の画面を大きくしたものです。 なかなか私が欲しいものに近づいて来ています。WiFi が無くて3G回線のみというのがいただけない…

YCbCr-RGB変換モジュールRTL AMBA master(仮)

AMBAのマスター側のプロトコル概要は以下のものです。 すでにスレーブの所で説明されていますが、この図には、マスターがバスの所有権を要求する所から示されています。また、バーストで複数データを送る際のHTRANS信号も示しています。 マスターは任意のタ…

YCbCr-RGB変換モジュールRTL AMBA slave 3(仮)

YCbCr-RGB変換モジュールのAMBAスレーブ側の全体構造は次の図のようにしました。 データを取り込む部分のVHDLコーディングは非常にシンプルです。datapath部分は以前にコーディングしたモジュールをprocedureに書き直してただ単に代入するだけにしてあります…

YCbCr-RGB変換モジュールRTL AMBA slave 2(仮)

基本的なAMBAの仕様は理解できましたが、Leonシステムに組み込めるようにするにはGrlibに特有な部分もすり合わせて記述せねばなりません。Grlibには一般的なAMBAインターフェースがパッケージとして提供されていますので、それを使用します。 genericに記述…

YCbCr-RGB変換モジュールRTL AMBA slave 1(仮)

まず、AMBAバスの構造から。 AMBAの仕様書より。 AMBAは完全にフリーで公開されています。まず最初にマスターがバスの使用をリクエストします。アービタが何かしらのアルゴリズムで許可するマスターを選択し、GRANT信号をマスターに与えることによって通信が…

YCbCr-RGB変換モジュールRTL 2

RTLの記述方法には様々なスタイルがある模様ですが、Gaisler Researchから提供されるIPはLeon Processorも含めてすべてある一定のスタイルで記述されています。基本的に同期式回路は図のような構成と考えられます。 ここでFF等の記憶素子を単純な一つのプ…

YCbCr-RGB変換モジュールRTL 1 (仮)

※(仮)がついているエントリは、後ほど追加で書き換えていきます。さて、RTLの簡単な検証が一応通りました。 検証が完全とは言いがたいので、後ほど随時書き換えていく前提で記録していきます。一部、仕様を変更しました。(1) AHB slave側でデータ入力に必…