みなさんのおかげ

SBC6303ブートローダは6303のバスがリセット期間中にハイインピーダンスとなる前提で設計をした。だってデータシートの目立つところにそう書いてあるんだから。しかし、tomi9jpさんの検証によれば必ずしもそうはならないらしい。実際に動かしてみて写真付きで解説しているため疑いの余地がない。

さらにtendai22plusさんからも指摘があった。たとえリセット期間中であろうともマルチプレクスモードでEが有効の期間ではデータバスがHになるとデータシートの目立たないところに書いてある。ああ絶望的。ブートローダではなく本体のほうを作り直さなければならない。とうとうプリント基板のリビジョン番号が2桁に乗る。

なるべく小さな修正で済ませたいと思いつつ実験を繰り返したら、ピンが折れ、電線が外れ、どうしたってこれ以上は立ち行かない。一息入れて、ちゃんと修正しよう。そしてもし大きな修正になったとしても現実を直視しよう。

sbc6303_ipl_proto2

SBC6303ブートローダが動かないって愚痴ったらたちまち情報を寄せてもらえたのは良いほうの想定外。ほかにも、コメントするには至らずとも一緒に考えてくれた人がいると思う。本当は時間切れで開発を断念するつもりだったが、みんなに背中を押されて、また頑張ってみようという気持ちになった。

カテゴリー: 6800 パーマリンク

みなさんのおかげ への4件のフィードバック

    • vintagechips より:

      凄い勢いでいろいろな回路を思い付きますね。SBC6303を単体で動かしたときへの影響などについて思考が追い付かないので、とりあえず簡単な回路から順番に試していきますわ。

  1. tomi9jp より:

    リセット回路への追加で対応するのであればダイオード2個と抵抗1個で対応できます。
    考え方はbootloaderからのリセット信号をbootload信号としてこの信号がLowの時にP20をHi、P21をLowにするだけです。P20のHiは573のOE信号を接続します。P21はダイオードを介してbootload信号に接続します。リセットとbootload信号にもダイオードを追加します。あとはOEとP20用のnandの入力をリセット側からbootload信号側に移動しbootload信号の入り口をプルアップするだけです。これでbootload信号がLowの時はモード1にHIの時はモード2になります。

    • vintagechips より:

      tomi9jpさん、アドバイスありがとうございます。正直いうと、せっかくきれいに練り上げたSBC6303の設計をブートローダだけのためにごちゃごちゃと付け加えるのが嫌なのです。我ながらつくづく小さな人間ですね。それで、今、ASをプルダウンする方法を試しています。Table2-8-1の脚注に、それでハイインピーダンスになるみたいなことが書いてあるでしょ。理屈がわからないけれど、うまくいけばめっけもんだから。成功したらこのブログで報告します。失敗したらツイッターでつぶやいてなかったことにします。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中