現在地

ダンプ入力とチェックサム

H8/500にUniversal Monitorの移植をしていてIntel HEXやMotorola S-recordのコードを書いていたら、そういえば大昔のチェックサムの話を書いていないなぁと思い出しましたので今回はその辺を書きたいと思います。

チェックサムと言えばもっとも簡単な誤り検出符号の一つで実装が簡単なので昔から使われてきました。

最近はCRCとかが用いられることが多くなりましたが......

ですが今回書こうと思うのは主に1980年代頃のパソコン文化としてのチェックサムのお話です。

今パソコン用のソフトウェアを配布するとしたらオンライン配布が当たり前、少し前ならフロッピーディスクやCD-ROMといった物理媒体も多かったですが、パソコンの黎明期から1980年代末くらいにかけては紙に印刷したものを書籍や雑誌の形で流通させユーザが手入力するという形態も広く用いられていました。

そんな面倒なことはやってられないという人のためにカセットテープやフロッピーディスクの販売も行われていましたが、暇はあっても金は無い学生は雑誌を買って打ち込むというのはよくあるソフトウェアの入手手段でした。

H8/532ボード(ソフトウェア編)

ボードが出来たら動作確認です。

まずはφに1/2のクロック(8MHz)が出てくるのを確認します。これで電源が正しく供給され、デバイスも生きているらしいことがわかります。

続いてバスにLED繋いだ状態で短い無限ループを実行してみます。最短2バイトでループできますが、アドレスバスのLEDを見ているとかなり先(4バイト?)までプリフェッチしているらしいのがわかります。

ここまで来たらいつものようにUniversal Monitorの移植に入ります。

最初はコンソールとしてEMILY Boardの仮想UARTで書き始めましたが、文字列表示までできたところで内蔵SCIにも対応しました。日立のSCIは共通なのでH8/300用をそのまま移植して動きました。

H8/300とH8/500は同じH8ファミリで似ていますが、大きく異なる点もあり同一ソースから条件アセンブルは無理と思います。

H8/532ボード(ハードウェア編)

テーマ:

カテゴリー:

PLLが途中ですが、並行して作っていたマイコンボードが動き始めましたのでそちらを取り上げようと思います。


H8シリーズの最初のH8/532のボード、もちろんEMILY Boardで動かします。

幸いノンマルチプレクスバスなので通常のユニバーサル基板を使用します。配線も一対一接続なので厄介なところはありません。

一応未使用ポートをピンヘッダに出して、SCIもTTL-232R-5Vを接続できるようにしてあります。

PLLシンセサイザ(その2)

テーマ:

カテゴリー:

VCOが動いたので残りの部分を作っていきます。


MC145106には10.24MHzの基準クロックを与えるのが一般的です。内部ではこれを1/1024または1/2048に分周して10kHzあるいは5kHzを作ります。一方VCOからの入力は1/N(Nは2~511)に分周します。この両者を位相比較器に入れてVCOにフィードバックすることでN×10kHzあるいはN×5kHzの周波数を得ます。

この10.24MHzの水晶を秋葉原で探したのですが見つけられず、手に入った20.48MHzのOSCを74HC390で1/2に分周して供給しています。

PLLシンセサイザ(その1)

テーマ:

カテゴリー:

最近ちょっとショックだったのは愛用していた発振器SG-8002DC(SG-Writer II参照)がディスコンになってしまっていたこと。今後ずっと使うつもりでいたのに......

かなりの数を持っていますし、まだ買えるうちに追加もしたので、これまでのペースなら困ることは無いと思うのですが、実験用にポンポン使い捨てていくわけにはいかなくなってしまいました。

そうなると実験用のクロック発振器が欲しくなります。マイコンのクロック用がメインなので周波数範囲は1~25MHz(可能ならもう少し下も欲しい)程度で安定していることが条件です。そうなるとPLLシンセサイザしかありません。

秋月で売っているSi5351Aなんかがピッタリではあるのですが、PLLってあまり作ったことが無いので興味があるのと、やはりDIP(とPGA, PLCC)で揃えたいという変なこだわりで、作ってみるかということになりました。

それで先日のPLL用のICたちに繋がっていたのでした。

最近のお買い物(2023/1)

テーマ:

カテゴリー:

ここ何ヶ月か歯の治療が続いていたのですが、やっと仮歯でしばらく様子をみましょうということになりました。大昔(40年位前)に治療したところで、しかも連休中に問題発生が続いたりして、新井素子さんの「もとちゃんの痛い話」を追体験しているような気になったり。(あそこまで酷くはありませんが)

マウス

テーマ:

久しぶりの新たな出土品、発掘したのは2週間ほど前なのですが書こう書こうと思って忘れていました。


黒い3ボタンのマウスです。最近は少なくなってしまいました。

結構重たいです。


裏返すと......

これまた最近は珍しくなったボール式です。ボールは表面がコーティングされているとはいえ中身は鉄球なので重いのも当然です。

PLL用のICたち

カテゴリー:

ちょっと訳あって可変周波数のクロック源を作ろうとPLL(Phase Locked Loop)用のICをいくつか検討しています。


まず有名なところで4000シリーズのCD4046、これはずいぶん前に買ったまま放置されていました。

VCO(Voltage Controlled Oscillator)と位相比較器が入っています。基準クロック源と分周器などは外部に別途用意する必要があります。

5V動作ではVCOの周波数上限が1MHz程度なのでちょっと今回の目的には不足です。そこで次を用意しました。

MC68EC020

テーマ:

カテゴリー:

MC68030, MC68040, MC68060にはMMUやFPUの有無によってMC68EC030などの廉価版が存在します。MC68020には外せるユニットがないので廉価版は無いと思っていましたが...


MC68EC020はありました。これは1999年製の16MHz版、日本製なんですね。

MC68020との機能的な違いはメモリ空間が16MBしかないことです。

機能以外ではパッケージがプラスチックPGAになっています。

SN74LS56

テーマ:

カテゴリー:

(ノーマルだけでなくLSやASなども含んだ広義の)74シリーズといったらどんな姿を想像しますか? 14~20ピンくらいのDIP(今だとSOICやSSOPかもしれませんが)を思い浮かべる人が多いと思います。より多い方は以前74シリーズの変り種(その3)で取り上げました。では少ない方はというと......


実は8ピンというのが2種あり、その一つがこのSN74LS56です。

これは1/50の分周器で、中に1/5の分周器が2つと1/2の分周器が1つ入っています。

ちなみにもう一つはSN74LS57という1/60の分周器です。

ページ

Electrelic RSS を購読