CPU実験室

誰も見向きもしない古いCPUをいじって動かしてみようというプロジェクトです

オートルーティング

各基板へざっくり部品配置ができたのでラインの引き回しをやってみます。足のピッチが広いスルーホール部品のみの低密度アナログ回路なんで手作業でもいけますが先ずはオートルータで仮配線し、こんがらがってるところは部品の移動、回転で引き回しを解きほぐし手動でルーティングする作戦です

そこでオートルータに引き渡すためのSPECCTRA DSN データファイル(*.dsn)に書き出し。FREE Routingで読み込んだのですがこれがうんともすうとも動きません。エラーも出ずファイルが読み込まれないのですが、部品点数が多すぎなんでしょうか(約1100点)

無償ツールなんで規模に制限があるなら仕方がないのですが、これではどうかと試してみました

いまは1つのプロジェクト内の1つの回路を複数の基板に部品を分割配置していて、それぞれをEdge.Cutsレイヤの矩形で囲っているのですが、これがオートルータ内で複数の基板があるとみなされてはじいているのでないかと。各基板の外周をF.fabレイヤに移し、全体をEdge.Cutsレイヤでくくり1つの大きな基板としてオートルータに読み込んでみました

 

やってみるとこれが当たっていたようでファイルの読み取りが始まりました。ところが数秒後に今度はエラー発生!

これはネット検索するとすぐに原因がわかりました。図面上の部品定数やテキストに「μ」や「Ω」といった全角文字・・というかunicodeが含まれているのではないか、というのですがそれは覚えがありません。しかもどこで検出したかが判らないのでこれは困りました

出力されたDSNファイルは約2.6Mバイト、テキストで4万7千行もあります。目視で探すのは無理、検索しようもないのでASCIIコードじゃない部分を探す簡単なツール作成

いまどきなら便利なスクリプト言語があるのでしょうが、いまだにMSC6で書いてます

瞬殺で結果でました。付近をバイナリで見るとR102の値っぽいですね

 

DSNファイルをテキストで開いてR102で検索すると値の単位部分がなんか化けてました・・・