VGAコントローラ

Spartan3E Starter KitのVGAコントローラの仕様1
(Spartan3E Starter KitのビットマップVGAコントローラ(800×600で72Hz)をVerilogで書こうと仕様を策定した)
VGAコントローラの仕様の一部
(ビットマップVGAコントローラの仕様を考えている。ビットマップVGAコントローラの作成は中断中)
キャラクタ・ディスプレイ・コントローラ
(キャラクタ・ディスプレイ・コントローラ(80×60文字)を作成。キャラクタROMの作成方法)
キャラクタ・ディスプレイ・コントローラの構成
(キャラクタ・ディスプレイ・コントローラの構成を簡単なブロック図で説明)
キャラクタ・ディスプレイ・コントローラのその後
(キャラクタ・ディスプレイ・コントローラのキャラクタROMにアルファベット小文字、=、;、:などを追加した)
キャラクタ・ディスプレイ・コントローラの詳しい説明
(キャラクタ・ディスプレイ・コントローラはVHDLをVerilog2001に変更中。もう一度キャラクタ・ディスプレイ・コントローラの原理について詳しく図入りで説明)
キャラクタ・ディスプレイ・コントローラのまとめ
(Verilog2001版キャラクタ・ディスプレイ・コントローラが出来上がった。スパルタン3スタータキット用のプロジェクトもダウンロード可能。キャラクタ・ディスプレイ・コントローラの本体の使用法について解説)
Spartan3A Starter KitのビットマップVGAコントローラの仕様1
(以前に作製したSartan3A Starter KitのDDR2 SDRAMコントローラを使ってみるために、グラフィック・コントローラを作って、プロセッサを実装し文字やグラフィックを描画してみようと思う。仕様を決めている)
Spartan3A Starter KitのビットマップVGAコントローラの仕様2
(”Spartan3A Starter KitのビットマップVGAコントローラの仕様1”の続き。今度はビットマップVGAコントローラの内部構成を考える。ビットマップVGAコントローラの内部ブロック図を書いて、仕様も検討した)
Spartan3A Starter KitのビットマップVGAコントローラの仕様3(レイテンシの測定)
(今回はSpartan3A Starter Kitで自作したDDR2 SDRAMコントローラのレイテンシを測定する。Veritakシミュレータでシミュレーションをして、Write、Readのレイテンシを測定する。)
Spartan3A Starter KitのビットマップVGAコントローラの仕様3(レイテンシの測定2)
(今 回は、ROWアドレスやバンクが異なる(つまりプリチャージ、ACTコマンドを入れなければならない)Write, ReadコマンドがFIFOに詰まっている場合のレイテンシについてシミュレーションしてみた。前回はReadコマンドが詰まっている時というつもりだっ たが、現在のテストベンチの構成だと、Wrteして、Readという方が修正が楽だったので、たぶんレイテンシに差はないはずなので、この構成でやってみ た。)
Spartan3A Starter KitのビットマップVGAコントローラを作製中
(Spartan3A Starter KitのビットマップVGAコントローラをVerilogでコーディング中。久しぶりのVerilogなので、だいぶ忘れているところがある。if の後に括弧を書かなかったりして、すっかりVHDLの人になってしまったが、以前自分で書いたVerilogコードを見ながら書いている。)
Spartan3A Starter KitのビットマップVGAコントローラのコーディング終了
(Spartan3A Starter KitのビットマップVGAコントローラをVerilogでコーディングしてきたが、大体終了した。ISEで論理合成してエラーが出なくなった。これで文 法エラーはなくなったと思う。シミュレーションを一時、棚上げにして、キャラクタ生成コントローラを先に作ることにした。)
キャラクタ生成コントローラの仕様
(キャラクタ生成コントローラの仕様を書いている。ブロック図やキャラクタ生成コントローラのアドレスマップの図を書いた)
キャラクタ生成コントローラの仕様2
(前 回、”キャラクタ生成コントローラの仕様”で、キャラクタ生成コントローラ全体の仕様を考えて、ブロック図を書いてみたが、今度はその下のモジュールのブ ロック図を書いてみた。コマンド用FIFOのブロック図とキャラクタグラフィックプロセッサ、キャラクタジェネレータROM、画像データ書き込み用 FIFOのブロック図を書いた)
キャラクタ生成コントローラをVerilogコーディング中
(現 在、キャラクタ生成コントローラをVerilogコーディング中だ。ステートマシンをどう構成するかを悩んでしまって、遅れている。やはり倍率があると1 段階面倒になって、すぐにできなかった。次に改訂する場合には、今度はフォントをバッファリングするつもりなので、今ちゃんと作っておかないと更に面倒に なる)
キャラクタ描画テスト回路の構成
(頑張って作ってきたキャラクタ描画テスト回路もだいぶ出来てきた。今はトップモジュールを作っている。ここで、キャラクタ描画テスト回路の構成図を作ったので、下に示す)
キャラクタ描画テスト回路の経過1(エラー出まくり)
(キャ ラクタ描画テスト回路を一応、Verilogコーディングし終えて、デバックをしているがエラー出まくり。parameterでビット幅を定義できなくて 悩んだ。結局、define と parameterを併用することにした。Char_Draw_for_Test.v の全ソースあり)
ビットマップVGAコントローラのデバック1
(ビットマップVGAコントローラをシミュレーションでデバックしている)
キャラクタ描画テスト回路のシミュレーション
(大体、キャラクタ描画テスト回路のシミュレーションが終了した。キャラクタ描画テスト回路の主なモジュールのシミュレーション波形を示して説明)
キャラクタ描画テスト回路のインプリメント1(TIG制約)
(前回、キャラクタ描画テスト回路のシミュレーションを行ったので、今度はインプリメントをしてみた。ツールが異なるクロック間のパスを解析しているので、TIG制約を付加して、フォールスパスを解析しないようにした)
キャラクタ描画テスト回路のインプリメント2(配置制約を付加)
(DDR2 SDRAMコントローラのRead用FIFO素子の配置を固定した。配置は、以前、DDR2 SDRAMコントローラを作ったときに、作ってある。その制約をインスタンス名を少し変えて、UCFファイルに追加した)
ビットマップVGAコントローラのデバック2(実機デバック)
(キャラクタ描画テスト回路の実機デバックをしていたが、どうも全体をデバックしていると問題の切り分けが難しいので、ビットマップVGAコントローラ単体でデバックしてみることにした。ビットマップVGAコントローラ単体では問題なく表示されました)
キャラクタ描画テスト回路の実機デバック2(テスト回路の挿入)
(ビッ トマップVGAコントローラはOKのようなので、DDR2 SDRAMコントローラを疑うことにした。具体的には、DDR2 SDRAMコントローラから読んでくる値が毎回正しいのかを検証することにした。Chipscope PROがあれば簡単なのだが、家ではライセンスがないので、検証回路を組んで、LEDに表示することにした。配線がおかしかったので修正した)
キャラクタ描画テスト回路の実機デバック3(配線の固定)
(前回、配線がとんでもないことになっていたので、以前のDDR2 SDRAMバーストテスト回路の配線をUCFに吐き出して、キャラクタ描画テスト回路の制約ファイルにコピーすることにした)
キャラクタ描画テスト回路の実機デバック4(DCMの配置)
(BUFG入力までの配線が長くなりすぎていたのが原因だったので、DCMの配置を見直すことにした。sd_loop_inもDDR2 SDRAMバーストテスト回路から配線制約を吐き出させて、キャラクタ描画テスト回路の制約ファイルに追加した)
キャラクタ描画テスト回路の休止等々
(こ れまで、キャラクタ描画テスト回路を作ってきた。シミュレーションでは、だいぶイケているようなのだが実機で動作しない。今日もバグが有ったので、潰した のだが、ディスプレイ画面は単色で塗りつぶされてしまう。ISE12.1が出たら、お試しで1ヶ月ChipScopeが使えると思うので、それまで保留に しようと思う)


その他のカテゴリでの”VGAコントローラ"の記事
キャラクタ・ディスプレイ・コントローラのシミュレーション
(Verilog で作られたキャラクタ・ディスプレイ・コントローラの表示文字をシミュレーションによって確認する方法)
inserted by FC2 system