[一般的なこと]2017年5月20日ハンダゴテが壊れたので、買い換えることになった。壊れたハンダゴテは、3年半前に買った物。新たに買ったのはHAKKOのFX600というタイプ。amazon.comで見つけた、日本製のハンダゴテ。半導体としてトランジスターのみを使ったCPUを作成中。NAND6TRと名付けている。写真は、クロック作成部まで完成したところ。[一般的なこと]2014年1月6日こんな田舎のブログにようこそおいで下さいました。今年もよろしくお願いいたします。DIPパッケージでこれだけの性能を持っているチップは例外中の例外で、私の知っている限りよそでは見あたらない。KB以上のRAMを持っている物は、QFNとかTQFPとか、表面実装のチップばかりである。KBのRAMを搭載したMZ-80Kをエミュレートしている。miniでも、ゆくゆくはこの容量のRAMを搭載したい。KB以上のRAMを搭載したマイコンが必要であるが、残念ながらDIPパッケージでこれだけのRAMを持っている物は無いようだ。大容量のRAMを実現する方法は、2つ。一つは、大容量RAMを持つチップを利用すること。一つは、RAMを外付けで利用すること。一つ目の方法を実現するには、DIPパッケージでは無理で、表面実装の物になる。二つ目の方法では、速度の速いパラレル接続を行うには、やはり表面実装のチップになる。これは、MIPSやARMなどの高速のCPUを持ち、かつI/Oピンの数の多いものは、やはり表面実装になるためである。他方で、ピン数の少ないSPI接続のRAMがPIC32MX150F128Bで使えるが(共に、DIPパッケージ)、この場合はデーターの読み込み速度が問題になる。miniでは何とかなりそうな気もしたが、いずれMZ-700のエミュレートも行うとすると、速度が追いつかない可能性が高い。いったことを考え、やはり表面実装のチップもちゃんと扱える用になっておいた方が良いだろうと考え、トライしてみた。汎用ロジックを使って色々組み立てるのも楽しいが、少し規模の大きい回路になると、週末に工作をするという程度で完成させるには大変だ。そこで、CPLDを使えるように、システムのセットアップを試みている。在って、AlteraのMAX3000Aシリーズを使うことにした。他に候補に挙げて色々と試したのはXilinxのXC9500XLシリーズである。私が個人的に行った比較では、次の通り。1)石の入手のしやすさはあまり変わらない。どちらも、$1-$2で手に入る。2)3.3V駆動、5Vトレラントや消費電力など、性能はほぼ同じ。3)私のPC環境ではツールがAlteraの方が安定していた。4)Altera用のUSB接続のダウンローダー(作成した回路を、石に転送するための道具)の制作方法が公表されている。Xilinxの場合、自作のダウンローダーは、パラレルポートに接続するものしか見あたらない(当然、市販のダウンローダーはUSB接続のものがある)。以上の比較により、AlteraのMAX3000Aシリーズを使うことにした。ダウンローダーには、USB-Blasterもどきを使わせていただいた。いったツールを公表されている方には、本当に感謝である。ユニバーサル基板に、このUSB-Blasterもどきと、EPM3064ALC44-10Nに合うPLCC44のソケットを載せ、この石が要求する3.3V用の3端子レギュレーターを入れ、別の基板のCPLD/FPGAと通信するためのソケットを追加して、下のようなものが出来上がった。源内CADには、標準ではオープンコレクタ(オープンドレイン)の回路をシミュレートする機能が無い。自作コンピューターでは、回路簡略化のため、オープンコレクタ(+プルアップ)を多用する可能性が高い。これを源内CADでシミュレートするための仕組みを考えた。[一般的なこと]2009年7月3日C++で。0;}copy関数内で丸めの処理をし、下2桁は表示しないようにしてある。このアルゴリズムだとこの辺が限界らしく、桁数をさらに上げると誤差が出るようだ。calculatorにも入れてみよう。割り算は少し面倒なので、これを行わずに円周率を計算させる方法を考えてみた。更新は、一年ぶり(正確には、1年3ヶ月)。制作にあたって、たぶん次のようなツールが必要になる。USBインターフェースのI/Oポートをピックアッピしてみた。AXNIの方は、24ポートあるのが魅力。値ははるが96ポートの製品もあるらしい。USBeeの方は、8ポートだが、多分(よく調べていない)、スピードはこちらの方が速い。どちらも、$100ちょっとの価格。購入するのは、NIの方かな。[一般的なこと]2007年8月14日ネットサーフィンをしていて見つけた、少し、いや、大いに参考になりそうなページ。実は、この表ページにたどり着く前に『はずかしい回路設計』というページに行き当たった。ソフトウェアしか開発したことのないエンジニアがいきなり、簡単な回路だからあなたがハードも含めて設計しなさいと言われてしまった場合に陥りやすい誤りについて実例を見ていきましょう。(サイトから引用)うーん、私はソフトウェアのエンジニアではないが、ギクッとする文面である。趣味で電子工作しているレベルでは、『とってもはずかしい』には該当しなかったので、ほっと一安心。それにしても、とっても参考になる。VDHL』も、参考になりそう。どこかのページで見つけた『Verilog』という言語が気になっていたのであるが、そのあたりについて分かりやすく解説している。今は、ソフトウエアを使ってディジタル回路を設計する時代らしい。使いこなせるようになるのだろうか?いいね、新しいものも。