例は TPS62044 なる DC-DC コンバータ。 いくつかのピンが同一名称をもつが、こういう場合、@ + 適当に数字、を name の後ろに付加しておくと、![]()
回路図上では取り除かれて同じ名前で表記される (ライブラリ上での表記では GND と PGND が重なって汚いが、 もちろん回路図上では離れてくれることを前提にしてデザインしてる)。![]()
また、Pwr ピンにかぎり、その名前のネット名を自動的にもつようになっているが、
このネット名も @ 以下をはぎとったものになる。
... なんかえらく言い回しがもってまわってるが、
よーするに GND, GND@1, GND@2 ... は回路図上で明示的に繋がなくても、
ボード上では勝手に GND に落ちてくれる。
留意点みっつ。
東芝 HSIP3-P2.30B パッケージ。 秋月とかで売ってる 500mA 級ロードロップレギュレータ TA48M シリーズを寝かせて使う時のもの。 ヒートシンクが接触する部分は単なる長方形を TOP レイヤに置いただけだが、 そのままだとオートルータはそこに銅箔があることを理解せずに配線してしまう。 そのため restrict レイヤで覆った。![]()
関連するレイヤ:
| tStop | レジストしない領域。tStop でパッドをくくっておかないと銅箔が露出しない (熱伝導悪そう ...)。 もちろん Pad とか Smd とかを draw したときは自動的に tStop でくくってくれる。 |
|---|---|
| tCream | たぶんクリームハンダをのせる領域。 もちろん Smd では自動的に tCream してくれる。手で smd パッドもどきを描いた場合も tCream でくくっておくのが推奨なんだろーがリフローしなきゃかんけーねー。 |
| tGlue | 糊。スイッチの尻の中央とか。でもやっぱ手で付ける分にはかんけーねーか。 |
| tKeepout | 部品のガタイの範囲を DRC に伝える。上記 HSIP3 の場合はヒートシンク部分とパッド部分全体を
Keepout でくくっとくのが本来だし、そうしとくべきだな。
というわけで手持ちについては修正してたり。 もっとも cmd-snap-board.ulp 等で自動再配置しないなら関係ない。 |
| tRestrict | オートルータの配線拒否。 |
| vRestrict | オートルータによる via 配置禁止。via はハンダ面が露出してるので、 金属ハーネスをもつ部品の下に置くことはできない。 たとえばクリスタルオシレータ(下図)の下は vRestrict しておくべきだが、 ... オシレータの下は vRestrict どころか bRestrict (基板の裏面側も配線禁止) してもいいのかもしれない。ライブラリレベルで設定してしまうとボードレベルで解除できないので そこまでしてないが。 |
5mm x 7mm 級オシレータ。金属ケースじゃないけど、ピン無しでハンダ付けが面倒いので近所に via が露出することを嫌った。 0.5mm 離れればまあよかろ。また、オシレータ直下を配線が通過することを禁止した。
留意点ふたっつ。
Spartan IIE の TQ144 パッケージ。周囲の白点は GND, VCCINT, VCCO のピン位置。その外周の数字はピン番号、 内周の数字はブロック名 ... とコメントもりだくさんだがすべて tDocu レイヤなのでシルクになったりはしない。 基板には描かないのになんでこんなもんが要るかというと、レイアウトエディタ上でのパスコン配置のため。 VCCINT, VCCO ピンそばに置かなきゃいけないし、オートルータはパスコンを上手に扱えないし、ぶちぶち。
関連するレイヤ:
| tPlace | デフォルトのシルク。 |
|---|---|
| tName | 一般には部品番号 (IC1, IC2 ... 等)。CAM Processor は、デフォルトではこの領域もシルクとみなす。 |
| tValue | 一般には部品定数、名前 (1uF, OP07C ... 等)。CAM Processor は、デフォルトでは この領域はシルクにしない。 |
| tDocu | 一般には部品形状。DIP のゲジゲジな姿とか、パッドに部品がどうかぶさってくるかを描く。 デフォルトではシルクにならない。 ... というか、シルクにするとピンがパッドに乗るまさにその部分にシルクが乗ってしまうので シルクにすべきでない。 |
一般には tName レイヤのみをシルクにするのだが、こうすると定数がシルクにならない。
部品番号 (name) よりも定数値 (value) を優先したい部品があるからといって両方をシルクにすると基板上が煩い。
試しにチップ抵抗、チップキャパシタについて tName レイヤに ">VALUE" を設定したパッケージも作ってみたところ、
ちゃんと value が tName レイヤに置かれた。よしよし。これで必要なやつだけパッケージを切替えればおっけー。
調子にのって name も value もないのも作った。こちらはパスコンの 0.1uF で使うことを想定。
下図は QFP-10 パッケージの裏面 (Texas Instruments の TPS61027 から) だが、中央の powerpad は長方形でない。 5x7 オシレータのパッドも長方形でないものがある。律義に形に合うパッドにするかどうかは別として、 そういう長方形でないパッドを描くにはどうすればいいか?
もちろん smd パッド (← これは長方形にしかならない) を囲うように polygon や rectangle で TOP レイヤに描き、tTOP や tCream を適切に処理すればライブラリとしては描けるが、オートルータはそれを処理できないし、 DRC も通らない (当の smd パッドと polygon が接触しているという error を出す)。
QFP の四隅のハンダ溜りのような、 デフォルトではどこにも繋がってない銅箔だが、どこかに繋がることは許されているようなものを表現するにはどう描けばいいか?
上の場合と同じく適当に描くとオートルータはその銅箔を無い物として扱うので、 そこを複数のワイヤが通過してしまうことがありえる。 tRestrict を設定するとワイヤが一本も通過できなくなる。一本(一種類)だけ通過することを許したい。どうすればいいか?
回路図上で離れたところにあるワイヤを同一のネットとしてみなすためのシンボル ... のつもりで描いたもの。![]()
このままだと value に何と書こうが、この port を置いたワイヤ全てが同一のネットに繋がってしまう。 ワイヤ毎にネット名を指定しなおせばこのままでも使えるが、 できれば、このシンボルの value (or name) に書いたものが自動的に繋がるワイヤのネット名になってほしい。 どう書けばいいか?
ちなみに Pwr ピンならば name がそのままネット名になるが、Pwr ピンをもつ sym は必ず pac をもたなくてはならない。 pac を持たない仮想デバイス (supply.lbr に入ってる 5V とか Vcc とか、そういうやつ) として作りたいが、 そうすると使えるのは Sup ピンだけである。
ところで、frams.lbr には既製の同上なシンボルが入っている。 使い勝手は一緒で、配線名は別に手で指定しなければならないが ...。
抵抗 (1005 〜 2012, アキシャル縦, アキシャル横), コンデンサ (1005 〜 2012, CY55), 電解コンデンサ (東信チップ, ラディアル 5mm 〜 7mmφ), インダクタ (CR43, CDRH125, CDH74, PM54, LHB0608, アキシャル縦、アキシャル横), オペアンプ (OPA656, OPA2690, THS4500, AD8130, ...), ログアンプ AD8307, ADC (ADC08100, ADS1112, ADS2807, ADS5203, ADS5204, ADS7828, ...), DAC (DAC904, TDA8752 ...), USB FX2 (CY7C68013-56), EZ-USB-2135S, SW/DC-DC コンバータ (LM2663, LT1054, ...), FPGA (SpartanIIE TQ144, PQ208), FPGA 用 ROM (XC18V01, XC18V02, XCF0*S), など: デバイス一覧。
趣味もろばれのライブラリセットかも〜。