FC2カウンター FPGAの部屋 キャラクタ・ディスプレイ・コントローラ
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

キャラクタ・ディスプレイ・コントローラ

フルグラフィックのVGAコントローラを作ろうと思っていたが、意欲が減退しているので、見合わせていた。
もう少し簡単に作れるキャラクタ・ディスプレイ・コントローラをSpartan3 Starter Kitで作ってみた。
キャラクタ・ジェネレータROMは自分でドローソフトに枡を書いて、フォントのパターンを黒く染めていって、キャラクタ・パターンを作った。それを目で見て16進数のラスタ・パターンに変換した。
char_A_070523.png

上の図をこんな感じに。。。

A: 0041417F2236141C
B: 003F41413F41413F


それを、ブロックRAMの初期値に入れて、キャラクタROMを作った。
キャラクタROMを使って、同期信号、映像信号を生成して、キャラクタデータをディスプレイに表示している。フレームバッファにもデュアルポートのBRAMを使用しているので、ディスプレイ側とプロセッサなどからのアクセス側の2つに分離できるので、回路が簡単になる。
画面の大きさは640×480、60Hzだ。ドットクロックが25.175MHzなので、Spartan3 Starter Kitの50MHzクロックを2分周した25MHzクロックを代わりに使用した。
今のところ、コントローラにキャラクタデータをインクリメントし、色もインクリメントする回路をキャラクタ・ディスプレイ・コントローラにつけて表示している。
これが全体に表示した図。
char_disp_ctler_1_070523.jpg

これが部分的に拡大した図だ。
char_disp_ctler_2_070523.jpg

  1. 2007年05月23日 21:42 |
  2. VGAコントローラ
  3. | トラックバック:0
  4. | コメント:2

コメント

懐かしい

キャラクターをEPROMに書きTTLのみで基板を作ってた頃を思い出します。
それからCRTC、MSXに使われていたVDPなどなど思い出してしまいました。
イニシャライズする前のその画面はなんとも良い雰囲気です。
VRAMのデーターとHVのカウンターからキャラジェネのデーターを引っ張り出してくるあたり当時はそれだけで感動したものでした。
(あれ、たぶんそんな感じだったかな??)
  1. 2007/05/24(木) 12:41:12 |
  2. URL |
  3. けむり #-
  4. [ 編集 ]

こんにちは。
私も日立のHD46505、CRTCを思い出しました。思えば、大学4年ときに、3連続徹夜で今で言うグラフィックボードをこのICで作りました。グラフィックモードとキャラクタ・ジェネレータROMによるキャラクタモードを切り替えることが出来るように設計しました。CPUはZ80でした。
最初は、映像信号と同期信号をミックスするところのフィルタの遮断周波数が高すぎて、垂直同期が微分されてしまい、まともに写りませんでしたが、コンデンサを追加してまともに映るようになりました。
  1. 2007/05/24(木) 20:06:33 |
  2. URL |
  3. marsee #-
  4. [ 編集 ]

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog.fc2.com/tb.php/493-65a9431c
この記事にトラックバックする(FC2ブログユーザー)