2020年02月29日

RGBコンバータ(14)

  RGBコンバータ(14) ver3.2について。

  前までのバージョンで画面が乱れるなどの問題が出ていた件の話です。


  私が所有しているP6達+自分で作成のRGBケーブルでは全然問題が発生しませんでした。

  ばくてんさんが基板などを配布し出して、ちらほら動かない(画面が乱れるなど)ものが出てきたみたいだったのですが、自分の環境では再現できなかったので、何が原因か分からずに、対策しても改善できるかも分からない状態でした。

  ですが、今回ばくてんさんに画面が乱れる個体を借用して頂いて、いろいろな事が判明しました。


  結論としては、RGBコンバータの設計に問題がありました。問題というか私の想定外のP6の挙動です。


200229_02_RGB出力1.png200229_02_RGB出力2.png

  ↑は、mk2の出力に、25cmぐらいのケーブルを付けた先をオシロで観察してもらったものです。
  画面が乱れる個体の、14MHzクロックと、HSYNC を観測していますが、画面が乱れないものでもほとんど同じ波形でした。

  この波形は完全に想定外でした。

  普通、14MHzクロックで叩かれた信号(HSYNC)なら、こんなに立ち下がりがゆっくりではなく、もっと急峻になります。
  最終段が LS367 のためか、それともその後の3端子フィルタのためなのか分かりませんが、かなり波形がなまっています。

  波形のなまりを考慮せずに回路を作っているため、いろいろと問題が出ているようでした。


  今回対処したのは、大きく2点です。


1)14MHzクロックのサンプリング後に補正を掛けた。

  クロック入力の際、FPGA内部の100MHzクロックで、14MHzのクロックをサンプリングしています。
 そのサンプリング後のクロックを見ると、正常にクロック出力がなされずに、クロックが抜ける現象が発生していました。

  画像データが変化するとクロックが抜ける事があり、これが画像データが乱れる原因でした。
  画像データ変化→電源電圧変化→クロック入力の閾値変化→クロックが正常にサンプリングできない、という事が起こっているようです。

  クロックなので、数クロック抜けても再生可能なので、抜けた場合は内部回路であるものとして再生しています。


2)mk2/66の場合、データ幅が2倍になるとして、サンプリング間隔を倍にした。

  回路構成としては、横640ドットに対応するデータがP6から入力される事を想定していましたが、これだとmk2/66の場合にかなり厳しいようです。
  そのため、mk2/66だと検出した場合は、サンプリング間隔を倍にする事で、データ波形がなまっていても正常にサンプリングできるようにしました。

  ちなみに、mk2SR/66SR は、最終段が 7404 と無印のTTLを使っているので、波形は mk2/66 よりも急峻になるように設計されているようです。



  今回の改訂で、普通の(?) P6では問題なく動作すると思います。 ...だといいな(^^;)


posted by えすび at 22:15| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする

RGBコンバータ(13)(ver3.2リリース)

  RGBコンバータ(13)(ver3.2リリース)

  RGBコンバータの新しいバージョンをリリースします。
  一つ前のバージョンのように、外付けSRAMが必要なバージョンです(ばくてんさんの所で売っている分です)。


怪しいCycloneIIボード1版(640x480) :c2_640x480_ver32.zip
怪しいCycloneIIボード1版(1280x1024):c2_1280x1024_ver32.zip

怪しいCycloneIIボード2版(640x480) :c2_r_640x480_ver32.zip
怪しいCycloneIIボード2版(1280x1024):c2_r_1280x1024_ver32.zip


○変更点

 ・一部の個体や環境で、画面が乱れる問題の対策
 ・データ同期の取り方の修正
 ・LED表示の変更


  mk2/66で、画面表示が崩れる、映らないなどの問題が改善されていると思います。

  また、今のFPGA周りの回路の都合ですが、P6とRGBコンバータをつなぐケーブルは、出来るだけ短くして下さい(15センチ以下が望ましい)。


  ボード上の3つのLEDを以下のように変更しています。

  クロック未検出時:D2、D4、D5が点滅。
  データ未検出時 :D4、D5が点滅。
  データ未同期時 :D5が点滅。

  データが同期していなくても、画面は問題なく表示される事が多いので、特に気にしなくても構いません。
 (一部のカートリッジソフトや、動作状況により、この状態になることがあります)


  クロック、データが正常に入力されている場合は、D2、D4が以下のようになります。

  D2:にじみ処理時、点灯
  D4:mk2SR/66SR時、点灯


  簡単に言うと、
 ・LEDが3つ点滅している場合は、何らかの原因で14MHz/3.58MHzが入力されていない。
 ・LEDが2つ点滅している場合は、何らかの原因でデータが入力されていない。
 ・LEDが1つだけ点滅している場合は、画面が表示されていれば特に気にしなくてもいい。

  です。


  RGBコンバータに電源投入直後は、P6の電源を入れない状態だと、LEDが3つ点滅し、画面は青画面になります。



  以下は前バージョンから同じ文言です。


  怪しいCycloneIIのみのリリースとなります。
  使用するモニタの解像度に合わせて、使用して下さい。


  怪しいCycloneIIボードが、1と2の二つありますが、73ピンのパワーオンリセットの回路のみが違うものがあります。
  ボード1:電源投入時、L→H
  ボード2:電源投入時、H→L

  基板の裏をよーく見るとわかるんですが、面倒な場合はどちらか動く方を使用して下さい。
 (リセットが違うので、別バージョンのものを書き込むと、ボタンを押してもLEDが点灯しません)


 ・使い方

  ボードに電源を供給して、mk2/66/mk2SR/66SRを起動すると、普通に表示されます。
  mk2SR/66SR使用時は、クロック出力を3.58MHzの方にして下さい(普通はこちらになっています)。

 ・怪しいCycloneIIボード版
  ボード上のプッシュスイッチを押すと、にじみが出せます。
  プッシュスイッチを押す毎に、にじみなし→赤青→青赤→桃緑→緑桃→にじみなし、となります。

posted by えすび at 00:23| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする