2011年01月22日

FPGAボードを設計してみる

FPGA ボードを作ってみたい。といっても、いま特に FPGA で 作りたいものがあるわけではない。作りたいのは基板で、やりたいのは まずはハンダ付け。

  • プリント基板が Fusion PCB で安く作れるようになってプリント基板作りが楽しくなった。設計したものが形になって出来てくる -- これはとても嬉しいことなのだ。

  • 0.5mm ピッチのハンダ付けはいままで避けてきたのだが、0.8mm ピッチのハンダづけが普通に出来るようになったので、0.5 mm に 挑戦したくなっている。

    FPGA は Startan 3A シリーズの 50A と 200A (VQG100) にしようと思う。

    • 3A は、1.2V core + 3.3V だけで(も)良いので 電源が楽。
    • SPI FLASH で コンフィグするのに (3E と比べて) 便利になっているようだ 。(プルアップ抵抗がいらない?)
    • 50A は 501 円と安いし、200A と配線を共有できるので、これで(製作も含めて)練習して 本当に規模が足りなくなったら 200A に移行する腹づもり。

      (メモ: Spartan 3E/3A VQG100 比較 )

      ロジックセル  スライス 乗算器 最大USER-IO(うち入力)
      (換算) CLB ブロックRAM DCM 価格
      50A 1584 176 704 6K x 9bit 3 2 68 (6) 501 円
      200A 4032 448 1792 32K x 9bit 16 4 68 (6) 1014 円

      100E 2160 240 960 8K x 9bit 4 2 66 (7) 861 円
      250E 5508 612 2448 24K x 9bit 12 4 66 (7) 1181 円

      ブロックRAM の個数 = 乗算器の個数 , 1 個 2K x 9 bit


    FPGA ボードを作るなら SDRAM を付けたい。

    • SDRAM の使い方は以前調べた →『SDRAMの使い方(メモ)』。
    • チップも入手済み。256Mbit (16bit幅) は安く 10 個買った。古い ノートPC用の SO-SIMM 512M byte (512Mbit 8bit 幅 x8) もひとつ入手済み。 そして 128Mbit は、256Mbit と交換したものが余っている。

      だが、もっとも重要なのは、SDRAM を付けることで複雑な配線になるということ。単体の FPGA ボードだとコネクタに線を引き出すのが基本だから単調な配線になる。それでは達成感が得られない。 要するに、基板の設計を楽しみたいということだ。

      もちろん、作った基板には意味を持たせなくてはならない。本当に有用かどうかはともかく、有用だと思えるものでなくてはならない。

    • とりあえずは、CPU を作るようなことを考えようと思う。200A は ブロックRAM が 32KB もあるし、SRAM を外付けしなくとも あまり困らない。SDRAM を使うとすればフレームバッファとか OS で使うメインメモリということになりそうだ。

    • CPU を作るだけなら I/O 線 はあまり必要ではないだろう。ホストとのインターフェイスが充実していれば十分のような気がしている。

    • あと思いつくのは、ロジアナのようにキャプチャするもの。I/O 線 はいらないと書いたが、少しは考慮しておこう。

    ホストとのインターフェイスはどうしよう。

    まずは JTAG 。それとは別に ホストと通信する手段。+できたら リセットなどの操作。

    • 最近設計した AE-UM232Rピン互換ボード(UM162)を使ってみることにする。

    • 一応、AE-UM232R でもちゃんと使えることを目指す。

      こう考えると通信は 基本 シリアル。だが、BitBang による SPI という手もある。あと操作系は CBUS BitBang 。

    • CB0/CB1 は Tx LED/Rx LED がデフォルトなので 避けるとして、CB2/CB3/CB4 が使える。

    • CBx は MProg で設定することで クロック出力もできる。(最大 48MHz !) これを使わない手はない。以前から CB4 をクロック出力と決めているので、これを割り当てる。

    • UM162 も CB4 相当は PWM を割り当てている。ただ PWM なので 16MHz で動かしても最大 8MHz 。データシートを見ると DLL が使える最低周波数は、5 MHz になっている。そうなる 3.3V かつ 16 MHz で無理やり動かしたくなる。ちなみに 3.3V で 動作が保証されている周波数は 8MHz ではない。13 MHz ぐらい -- 要するに 16 MHz はあまり無理なクロックアップではない。


    その他の検討項目。

  • スタンドアローンで動かすこともあるかも知れないので、オシレータは付けられるようにしておきたい。7mm サイズの SG-645PCP を採用しよう。

      他の周波数だと マルツで扱っている KC7050Bが使える。ただし 472円とか結構高価。デジキーで安いのは、ASV シリーズ。これでも 167円とかする。

      追記:Spartan-3A スタータキット:〜DCMでクロック生成〜 を見ると、DCM を使うと 逓倍が可能なようだ。-- 2倍だけなのかと思っていた。秋月のは 33.000 MHz だからきっちり とは行かないが 3 倍して分周すれば .. 50MHz (ぐらい) とかも作れそう。

  • コンフィグには、SPI FLASH を使うことにする。特に 50A なら 少量で良く格安で買った 512Kbit のものでさえ使うことも出来る。ちなみに SPI FLASH は、コンフィグだけでなく、アプリケーションでも利用可能。
    -- CPU を作ったら 使ってみるのも 面白いかも知れない。

  • 電源は、3.3V と 1.2V の二電源。UM162/AE-UM232R は、3.3V の供給能力が 低いので、3.3V のレギュレータを外付けする。1.2V は、MCP1700SC189 の二種類を 選べるようにしようかと思う。50A は消費電流も少ないようなので、10 個で 336円と安い MCP1700で済まそうと思う。(SC189 も 74円で高くはないが、インダクタも考慮する必要がある )

  • 他には ボタンとか LED とか。

    簡単な動作確認手段はあった方が良さそう。UM162/AE-UM232R が付いているから ピンの状態を読むことで代替はできる。必要とまでは思わない。可能なら付けるというスタンス。

  • 拡張用 I/O

    実を言うとあまり使うつもりはない。CPU が動かせたらそれで満足してしまうような気がする。だが、有用であることを目指すなら必要だ。応用できる可能性は残しておく。

さて、Spartan 3A VQG100 はどれぐらいの I/O が使えて、そのうち SDRAM などで どれぐらい消費するのだろう? 見積もってみることにする。

  • まず、100 ピンのうち GND が 13 本。VCCINT など電源ピンも 13本。あと JTAG と DONE/PROG_B は専用ピンで 計 6本。これを計算すると データシートにある 最大 USER-IO の 68 になる。

  • だが、SPI FLASH での コンフィグには、4pin 必要。さらに Config 時に 使用する M2-M0 と VS2-VS0 , INIT_B がある。これらを共用しないとすれば、使えるピンは 57 pin まで減る。

  • さらに 入力専用ピン(IP_XX) が 6 本ある。うち 4本は VREF にも使える。専用ピンぽいので 避けて使うとすれば、残り 51pin 。

  • 一方 SDRAM は、16bit幅 512Mbit (最大サイズ)を使えるように全部 つなげる。DATA 16 本。アドレス + バンク で 15本。コントロールで 8 本の 計 39 本。

  • これ以外に最低限付けようと思うのが、通信用の Tx/Rx と クロック 2系統 (UM162/AE-UM232R とオシレータ) 。

    残りは ... なんと たったの 8 本。贅沢に使うとこうなるわけだが、あまり大幅には増やせない。でも、8本もあれば、いろいろ出来るから悲観しなくとも 良いはずだ。

基板はどういう風にしよう

ここからが本題。上記は状況設定のようなもの。

  • Fusion PCB で作るのを前提にするので 50mm x 50mm 以内。これは絶対守る。

      今回は 100mm x 100mm にパックしてみようと思う。いろいろ作って切り出すつもりで 0.8mm で作る。ただ、この基板に関しては 1.6mm が本来の形だと思う。0.8mm は試作目的。

      あと、0.8mm にしたと言っても はさみで切れる程 余白は作れないかも知れない。

      今回は、緑以外にしたい。まずは、赤にするつもり。

  • 長辺は 可能なら 47mm にする。(1/2 C 基板サイズ)

  • 短辺は可能なら 35mm (1/2 C基板サイズ) 。無理でも 37.5 mm (RFAD ケース サイズ) を目指す。

    こう決めてちょっと配置を考えてみたのだが ... 600 mil 24 pin が かなり邪魔。収まりが悪いのだ。どう配置しよう。

    • 24pin ソケットの 中に SDRAM を置く。

      まずこれを考えた。一応、収まることは収まる。ただし、ブリッジしやすい上に 『ソケットを一旦付けたら直せない。』という問題がある。

    • 24pin ソケットを裏に付ける。

      一応ソケットが裏なので、ピンが邪魔なものの、やりなおしはできる。 ... 。ピンをギリギリまでにカットすれば、すこしはマシになるかも知れない。

    • 24pin ソケットを裏にずらして付ける。

      最終的にこれにした。ソケットを最初に付ける。そのときに、ピンをぎりぎりにまで切り詰め、上に載る SDRAM がちゃんと付くようにしておく。なお、上に SDRAM が載らない側の辺は切らない。

      ソケットを裏に付けるということは、普通は部品面を下にして使うことになる。LED とか操作に必要なものは裏面。FPGA , SDRAM 以外でも必要なものは表面というルールにすることにする。

    上記を基本方針として、設計を進めていった。が、いくつか問題が出た。

    • 24 pin ソケットが邪魔。

      配線の上でもやっぱり邪魔になった。最低でも ピン間 2 本を通せないと VIA だらけになる。まずは ソケットの drill を 1.1mm から 0.9mm に変更。

      それでも うまくいかない。いつも 使っている dru をやめて Fusion の dru ベースにした。ただ、可能なら drill は 0.4mm まで 最低線幅は 8 mil にするつもり。

    • auto ルータの配線が汚い。

      これは仕方がない。FPGA は ピンアサインを自由に決められるので、最適なピンアサインを探りつつ手配線をベースにすることにした。手配線にすると波打った平行線みたいな配線ができる。-- 出来るというより、そうするためにピンアサインを変えていくわけだ。


レイアウト完成
最終的にサイズは 47mm x 37.5mm にした。あと LED は FPGA の分と UM162/AE-UM232R の分が 付けられた。スイッチは、PROG_B 用を付けることにした。

  • PROG_B は、FPGA のコンフィグをロードし直す -- リセットのようなものらしい。必要かも知れないので付けることにした。

  • LED は、VS0 と VS2 に割り当て L で点灯。

    SPI FLASH でコンフィグするのに VS2-VS0 で設定することになっている。想定した設定は 111 (FAST READ コマンドを使う) と 101 (READ コマンドを使う)の 2 種類。"1" なら L で点灯する LED を付けられる。



    十分堪能した。いろいろギリギリで、もうこれ以上手を加えたくない。

      配線は、ほとんど手配線。しかも ちゃんと計画しないと 収まってくれない。とにかく、600 mil 24pin ソケットが邪魔で ピン間 2 本が精いっぱい。あと、配線でみっちりになるので、裏面が空いていても VIA が 自由には空けられない。



      回路図はこんな感じ。回路図書くのも一苦労。この回路図は 書きなおしたもの。1 回目は 、機能別に して ライブラリの シンボルを作ったので 途中で わけがわからなくなった。なにか織物のような 感じまでする 回路図になってしまったので、PIN の順番を基本にして シンボルを作り直している 。

  • 8bit 幅の SDRAM を使った場合の未使用ピン用コネクタは諦め。線は引き出せないし、コネクタの場所もない。無理。

  • USER I/O は結局 8bit 分 だけ。1 本は入力専用。GCLK はひとつ。コネクタ形状は、1.27 mm ピッチで フラットケーブル直付けを想定。一応 VIA のドリル は 0.6mm でピンを立てることも配慮した。

  • 裏面左上 M2-M0 と VS2-VS1 には 抵抗を付ける。設定は決めてしまっているが、一応 変更可能なように配慮した。

  • UM162/AE-UM232R との接続は、JTAG 用に 4 本。通信用に 4 本( TxD/RxD/DTR/RTS で SPI も配慮) 。CB4 は GCLK に接続し、さらに PROG_B と INIT_B を CB2/CB3 に接続。

    CB0/CB1 は LED 。使えるものは全部割り当てた。

  • パスコンは裏面に 8 つ -- 表に付けるのは無理。うち 2 個が SDRAM 。1.2V core 用に 2 つで、3.3V 用が 4 つ。
    これらは 1608 の 1uF を想定。-- 普通は 0.1uF だが 1608 は持っていないので 1uF にするつもり。

  • 電源は、VBUS から取るか VIN から外部電源を入力するかを選択。D1 はダイオードの表記だが、ジャンパしても良いし、リセッタブルヒューズにできるかも知れない。

    本当にダイオードを使うのは、1.2V にレギュレータ MCP1700 を使ったとき。供給電圧を下げて 負担を減らすのが目的。

      UM162/AE-UM232R の VIO は、3.3V に設定する。5V はまずい。ちなみに 電源関係は、VBUS から 電源を取っているだけ。VCC や VIO は接続しない。

手は加えたくないが、もう少し 検討が必要そうだ。

  • 余りピンの VIA 。

    これぐらいはしておいた方が良さそう。付けておかないと 必要になったときどうにもならない。

  • スレーブシリアルモードの コンフィグ

    ホストから使うのなら、こっちの方が断然便利ではないか。-- 無理してでも付けたほうが良いか。

    あと バグはあるかも知れない。特に ライブラリから作っているので、意外な間違いがあるかも知れない。

    追記: 検討してみた。



    M2-M0 の設定について: 設定は いろいろあるが 次のものだけ考えることにした。

    • 001 マスタ SPI モード

    • 101 JTAG モード

      JTAG モードは、勝手にコンフィグをしないモード。こう設定しないと JTAG でコンフィグできないわけではない。

    • 111 スレーブシリアルモード

      AVR など コントローラで コンフィグするモード。CCLK と DIN で 書きこむ。ただし、PROG_B を一旦 L にして初期化しないと いけないし、INIT_B でエラーが起きているかチェックすべき。ピンに余裕があれば DONE も チェックすべきだろう。2 本のみで OK というわけではない。

      JTAG が付いていれば、別にスレーブシリアルモードはいらない。ただ、SPI FLASH を付けないで MicroSD のファイルをロードするような システムを作るときは有用で、可能にしておくべきだろう。


    あと LED は 起電力があるのを忘れていた。これだと明るいところで L レベルになってしまうかも知れない。デフォルトを 1 にするなら H で 点灯という風に変更することにした。暗いところで "0" にならないか 不安があるが最悪は LED を外すことで対処。

    いろいろ検討したが、

    • M0 は 無接続(常に 1)

    • MI/M2 は、LED を接続(H で点灯) した上で、CB0/CB1 に接続 (TX/RX LED) 。

      AE-UM232R だと CBUS Bitbang で モードを選択可能。LED は UM162/AE-UM232R 側が使うが 排他で FPGA からも使える。

    • VS0/VS2 は LED を接続(H で点灯) 。

      こちらは、FPGA 専用。"0" に設定した場合でも 1K を接続するだけなので、LED は使える。

    • AE-UM232R では使えないが、UM162 では あと 2pin 使えるので CCLK, DIN に接続。

    • PROG_B/INIT_B を CB2/CB3 に接続。

    • PUDC_B を GND に接続

      PUDC_B を L にすることで、USER-IO ピンを プルアップする機能で、普通そうするもののようだ。最初はどうでも良いかと思ったが、不安定になったりすると嫌なので ちゃんとすることにした。


    基本的に ボードには手を触れないで操作できるように設計した。.. といっても AE-UM232R では、リセットして SPI FLASH から コンフィグするか JTAG からコンフィグするか選べるだけ。

    UM162 では、スレーブシリアルモード もサポート可能。ただし、スレーブシリアルモードのコードを開発する目的で使う。普通は JTAG を使う。

    ちなみに、SPI FLASH に書きこむには、バウンダリスキャンで、ちまちま書きこむか、書き込み専用の 論理を合成して 通信することで書きこむ。

      これは、ザイリンクスが提供している。詳しくは ここの XAPP974 に書いてあるらしい。

    余りピンの処理については、8bit SDRAM 時 使わないピンを VIA に出した。いちど 1.27mm ピッチで作ってみたが、drill が 0.4mm φにしかできず ピンも立てられないので、2.0mm ピッチにした。ほとんどは 一筆書きで VIA を付けられたが 1 つ は無理だった。これを外して 7bit にしたほうが良いかも。

    .. といっても 裏に IC ソケットがあるので ピンは普通では 立てられない。先に立ててしまうと、SDRAM のハンダ付けが困難になる。干渉しないような 一列の IC ソケットを使えば良いわけだが、0.8mm 厚の場合基板が弱いので、注意が必要。

    結局は役に立たないと思えるが一応。

    (追記) XAPP974 をちょっとだけ見てみた。PUDC_B を GND に接続している。これは、コンフィグ中に I/O を全部 pull-up する機能。一本だけ未使用 I/O (#49)があったので入れ替えて、PUDC(#99) GND に接続することに。

    03e:

    ちょっと MCP1700 が本当に使えるのか気になったので確認。

    1.2V の MCP1700 自体は、200mA が 定格だった。だが、これは放熱が完璧なときの話。いまの回路は 4.4 V (5V - ダイオード) 入力で 1.2V まで 3.2V も電圧差がある。.. となると core 電圧については、FPGA 自体が消費する 電力の 2.6 倍もレギュレータが消費することになる。50A でも、ひどいことになりそうなので、MCP1700 の場合は、3.3V から入力することにした。そうすると 3.3V のレギュレータの負担が増えるが、ダイオードで少しでも負担を減らすことで対処する。

    まぁ、相当厳しいような気がするが、クロックが低ければなんとかなるに違いない。

      こうすると 3.3V の負担が増えるので、結局やめて 別のダイオードを入れることにした。
      ダイオードを使わずに抵抗を入れるのもあり。最大消費電流の 150mA のとき 3V ほど落とせば良いわけで 1/2 W 20 Ωを入れる。


    DC/DC コンバータの SC189 を使えば core 電圧の方は心配しなくて良さそうだ。3.3V の方 は 大食いのSDRAM もある。だが、中華PMP の電源もこんな感じだからたぶん大丈夫だろう。

    最悪は、3.3V 外部電源。これなら問題ないだろう。

      TI に Spartan-3A 電源の必要条件 というページがあった。
      これみると 1.2V の Imax が 50A で 150mA, 200A で 350mA と書いてある。 3.3V は I/O 用が 3A で vccaux が 100mA 。今の回路だと 1.2V に 150mA 流せても そのときは 3.3v が苦しくなる。-- やはり SC189 を使った方が良さそうだ。3.3V も SC189 にしたほうが安心できるかも知れない。

      50A で 1.2V が 150mA といっても 最大クロックで動かした場合。クロックを落とせば電流は減るだろうから、MCP1700 で 3.3V から電源を取るのはやめようと思う。

    あと 03e で穴をあけてみた。穴をあけられる場所は、2 ヶ所しかなかった。しかも 2.2mm φがやっと。
    これで固定するのは無理。位置決めぐらいには使えるかも知れない。

    ところで VIA でコネクタもどきにしたが、これは使えるのだろうか?

    秋月に 1.27mmピッチのピンソケット などは売っている。データシートもあるので見てみたら 0.42 mm 角で drill は 0.7mm にするらしい。

    細かすぎて使えるような気がしないが、ユニバーサル基板もあるし、ピンだけはささるようにしておこう。

    これに合う変換基板もついでに作っておくのが、良いかも知れない。2.54mm ヒンペッダ とか MicroSD とか USB とか。

    とりあえずスナップショット。

一緒につくる基板について




    まず、CPLD 基板。

    Cool Runner II XC2C32A/XC2C64A が 32A で 114円と 結構安いし、手軽に使えると良いように思うのだ。64A にしても 223 円で そんなには高くない。

    こちらのボードも MCP1700 (1.8V) を載せる。MCP1700 も割と安く 10 個で 336円。これで 3.3V 単一電源で使えるモジュールにする。

    サイズは 50mm x 50mm に 2 枚取れるようにする方針で考えた。今回は 10cm x 10cm の 1/4 で 2 枚取れるから だいたい 1 枚 50円ぐらいの計算になる。基板の値段も これに見合う。

    • 足は 9x2列 を 両側に配置する。2 列あるが、1 列のみだけでも使えるように配慮する。そうすると 32 の ピンを使えるということになるが、ピンは 32A の 32 pin 分を出す。(JTAG は別コネクタ。)

    こうやって出来たものは、29.4 x 24.0 mm になった。47 mm に抑えた基板と組み合わせることで 2.5mm 程度の余白が取れる。

次に 『FLASH アダプタとか』の記事で作った基板のリベンジ。-- VIA をスルーホールにする計画だったのだが レジストでマスクされてしまっていた。

これだけ入れてもまだまだ入る。それはともかく面付けはどうしよう。


    検討したが、Fusion PCB でも『ガーバーデータのツール』が使えそうだ。ただし、ドリルデータ(TXT) の オフセットが 標準 CAM と 違う。... というか viewer でちゃんと見れるこっちの方が標準的だろう。大丈夫に違いない。




いまのところ こういう感じ。

まだまだ手直ししていくつもり。Fusion PCB のほうも 2/8 まで受注停止で 出来上がっても発注できない。

とりあえずスナップショットとして出来たものを保存しておく。

  • fpgaset1-02.zip

    上で説明していない基板は、まだまだ考察不足だが 一応説明しておくと ..

  • 右下 UM162 ボード x 2

    赤にするならついでに作りたいと思っただけで (製作中の基板にバグがない限り) 必要ではない。置き換えるかも。

  • 中央下 clk44 ボード

    これも以前作ったボードがベース。水晶の発振周波数を 調整できる仕組みを入れたいので作ってみることに。

  • 中央 TN8102BC キャラクタ液晶変換基板。

    以前記事にしたが、解析中のまま放置中。低消費電力の LCD は欲しいと思っているので、発注までに解析を再開して FIX したい。

  • 中央上 plltest ボード

    これまた 記事にしている。XMEGAボードを作ったとき おまけに付けた回路なのだが、余白があるのなら単独のものを仕込んでおきたい。

    CPLD や FPGA なら PLL 自体は論理回路なので 楽に組める。そしてあれば嬉しい機能でもある。 なので単独の VCO を 作ってみたわけだ。 ただ、これも放置中で 未テスト。


version 04



今はこうなっている。um162 は外そうかとも思ったが、一式載せる方針にした。



新しいのは、これ FPGA ボード用拡張ボード。 MicroSD , USB あと上記の pll 用 VCO 。一応は使えるものを目指した。



UM162 と同様に裏面に付ける。1.27 mm ピッチ 1 列の ピンヘッダ/ソケットで取り付けはできるが、固定する方法がない。今のところ 両面テープとか使って 無理やり固定するつもり。

マウントの方法がいまいちだが、良い方法を思いついていない。ネジ穴を切った ブロックを 下に貼り付けるぐらい?

あと、FPGA 側の拡張用の信号線を 少し変更。-- USB を付けようと 差動 I/O のペアを 調べたら、変な割り当てにしていたので。この変更で、差動 I/O が 2 つ取れるようになった。

これで、載せる基板はだいたい決まった。下半分は FIX 。右上 1/4 FIX 済み。決め切れていないのは、右上 1/4 。特に VCO 基板は重複してしまっている。

    忘れそうなのでメモ。

    全般:

  • FPGA ボードから切りだして作っている。大きさは、LED とか ボタン , UM162 と 干渉しないように決めた。
  • 10 pin の ピンヘッダを付けて、他の使い方もできるように配慮した。

    USB:

  • D+/D- 差動 I/O のペアを割り付け 抵抗を入れられるようにした。
  • スルー 用の端子をつけた。アナライザ用
  • HOST にできるかも知れないので、MINI コネクタの ID を ピンに割り当て。あと、VBUS を 出力 できるように FET スイッチを付けた。
  • プルアップ/プルダウン用の 抵抗と制御線を入れるべきかも。不要にできるのかどうか分かっていないが、まだ付けていない。

    (追記) やはり プルアップ抵抗用の制御線を付けた方が良さそう。LowSpeed なら D- FullSpeed なら D+ をプルアップするから 2 本と抵抗が必要。それに加えて VBUS 検出用の 信号線も 付けよう。これは VBUS を 分圧して入力するから抵抗が さらに +2 。

    MicroSD :

  • 一応全結線。
  • 電源ラインに インダクタを入れられるようにしておいた。カードの中にコンデンサがあるらしいので、インダクタのみ。ホットプラグしないなら、ジャンパで良い。

    VCO :

  • 回路は、以前作ったもの のやきなおし。
  • フランクリン発振回路なので、LC メータとか作れるように配慮。
  • 水晶発振器のVCOにもなるよう ピン配置を決定。



    フランクリン発振回路の C を容量可変ダイオードで変化させるもの。FMトランスミッタで似た様な構成のものがあるから 部品の選定次第で FM 帯域までいけるはず。

    LC を調整して LC メータとかも作れる。タンク回路の部分に 端子を付けておいた。ここに C または L を付けることで周波数が変化するから 差分から 値がわかる。

    C5/C6 はこの回路では付けない。



    C5/C6 を付けて XIN/XOUT (白で囲んだ端子) に水晶を付けると 水晶発振器の回路になる。ただし下の部分を接続しない。

    C1 をジャンパして、容量可変ダイオードを活かすと 水晶発振器の周波数を調整できる。温度をセンスしてフィードバックをかける用途を想定。

    ちなみに、上にある Tiny44A のボードは、この回路を組み込んだもの。... 下半分でこれだけ違う。FPGA ボード関連のものにしたほうが良さそう。

      検討してみた。2mm ピッチの方の 拡張基板というのはどうだろう? 2mm ピッチの方は 3.3V が接続されていない代わりに 5V が接続されている。USB 基板は、3.3V を必要としない上に 5V があると便利になる。MINI-B から 電源を取るだけでも良いし、HOST にした場合供給することもできる。

      詳しくは後述する。

    スナップショット。


  • ピンアサインのメモ: (04a)


    MicroSD USB PLL
    #1 VCC
    #2 DETECT D- PULLUP PLLCTRL
    #3 DAT2 -- --
    #4 DAT3/CS D- INV
    #5 -- D+ XIN
    #6 CMD/DI D+ PULLUP --
    #7 DAT0/DO VBUS DETECT GND
    #8 DAT1 VBUS SWITCH --
    #9 CLK -- XOUT
    (PLLCLOCK)
    #10 GND

    NOTE: #9 (GCLK) , #4/#5 #6/#7 (DIFF PAIR)


    ちょっと考えたのだが、MicroSD は カードを入れなければ、#2 DETECT 以外 OPEN 。これを FPGA ボードに貼りつけて配線してしまえば、2x5 の ピンヘッダを立てられる。ほかのカードは 、ピンヘッダを利用して スタックして使えば良い。

    DETECT は 片側を GND にしたスイッチで カードを入れなければ OPEN ではあるが pullup して使うことを想定しているので、ボードに 抵抗を追加するかも。

    #3 は、配線が面倒なので 他のカードでは使っていない。#2 と #3 を入れ替えるべきだろう。
    ついでに、FPGA 側の信号線との関係。

    コネクタ FPGA 信号名
    #2 #28 L03P_2
    #3 #32 L05P_2
    #4 #33 L06P_2
    #5 #35 L06N_2
    #6 #36 L07P_2
    #7 #37 L07N_2
    #8 #39 IP_2/VREF_2
    #9 #41 L08N_2/GCLK15


    あ、#8 は 入力専用なのを忘れていた。これも直さないと。

  • version 04b




    サイズは同じだが、今度のは、2mm ピッチのほうに付く USB ボード。5V 外部電源用の スルーホールを利用して 2 ヶ所で止められる。そして、1.27mm にも 依然として付けられる。

    ただ、スルー用のコネクタは付けられなかった。あと 1.27mm ピッチの #1 3.3V も無理だった。また差動ペアの割り当ては無理。どうせ 12Mbps までしか無理だろうし 別に困らないとは思うので気にしない。

    このボードには部品を付けないで、単に 2x5 の変換基板としても使える。ただし、#1 3.3V は接続されていない。(裏面に)パッドは用意できたので、どこからか、3.3V を引っ張ってくれば、他のオプションカードの取り付けができる。

  • version 04c



    今はこうなっている。04b で clk44 ボードをやめて、オプションボードを追加したが、04c で さらに追加



    今回 は、3.3V 電源強化 ボード。sc189 ボードを変更して取り付けられるようにした。
    これで、3.3V の消費電流が 増えたときも対応できる。

    最初から組み込めば良いとも思ったが、このサイズには入らない。それに、必要とは限らないし、これでヨシとする。

    その他の変更

    • plltst ボードは 1 つにして、sc120 ボードと sc189 ボード(normal) を追加。... sc189 は、前の小基板セットで失敗しているし、リベンジ。

    • xc2c32a CPLD ボードに 水晶 を取り付けられるよう変更。別に付けなくとも良いが、付けたくなるケースが多いだろうと想定。インバーターは CPLD 側で用意するのが前提。

    そろそろ、これで FIX 。あとは、チェックあるのみ。

    スナップショット:


    そろそろ、... と思ったのだが、1.27mm ピッチの部分、どうにかならないか。

    1.27mm ピッチ単列だと 強度的に不安がある。一応 ケーブル直付けできるようにしていたのだが、 ケーブルを直付けするのは 美しくない。だが、2.54mm ピッチだと 入らない。

    試しに 2mm ピッチ 2x5 を 置いてみたら入りそうなので、検討してみることにした。

      2mm ピッチは aitendo で 結構な種類を扱っている。2x5 だと

    • ピンヘッダ(2.0mm/2列)[PHEADER-2.0PT-D] 40pin 50円
    • 接続ケーブル(2.0mmピッチ10P)[CB-2PT10P-25] 100円

      で十分か。ちなみに、1x10 だと PHR-10 というのがある。

    • ケーブルアセンブリ[CB-PHR10P-240] 片側コネクタ 150円
    • ケーブルアセンブリ[CB-PHR10-10-26AWG-220] フラットケーブル 両側コネクタ 100円

      このあたり。ピンヘッダは、在庫切れだが、秋月にある

      コネクタなどは、入手できることが分かった。で、うまくいくのか?



      こんな感じ。コネクタと IC が近すぎる。これだと FPGA をハンダ付けするときに、ポリミドテープとかでマスクしてハンダ付けしないと、ハンダでスルーホールを埋めてしまいそうだ。

      ただ、1.27mm ピッチにしたとしても、さほど事情は良くならない。また、1.27mm ピッチではケーブルを引き出すコネクタがない。コネクタがあるのは 1.25mm ピッチで微妙に合わない。

      ... というわけで 2x5 に全面的に切り替えることにした。位置合わせはさほど難しくない。全部もとは同じなので、同じ座標に置けば良いのだ。ただ、基板が増えているので 修正は面倒。



      表面に装着したイメージ。今回は青基板の画像を作ってみた。

      • 青基板の方が良いかも知れない。
      • パターンの露出面を 金色っぽくしているが、ENIG だとハンダの乗りが悪いそうなので、HASL にするつもり。
      • 左上の 穴は 2.2 φ→1.5 φにした。あまりにぎりぎりだと、パターンを痛めそうなので小さくした。
      • USB アダプタは、16bit幅 SDRAM とは 両立しないので、たぶん 使わない。




      こちらは、UM162/AE-UM232R を載せる方。裏なのだが、普通はこちらを上にして使う。

      • MicroSD アダプタ を置いてみた。ソケットが 2.54mm ピッチの方にかぶるので、MicroSD アダプタ と 2.54mm ピッチ変換は両立しなかった。
      • ケーブルが引き出せることが分かったので、基板に直接載せる 使い方はしないかも。
      • アダブタにコネクタ付きケーブルを付けるのなら、2.54mm ピッチに一回通して 2mm ピッチ側にハンダ付けするのが良いかも知れない。


    ところで、イメージファイルを作るのが面倒。ガーバデータは解析できているのだから自力でイメージを作るようにした方が便利かも知れない。ちょっと検討してみよう。

    あと、CPLD ボード。こんなにいらない。手軽に使うには潤沢に持っている方が良いと思って x2 にしているのだが ... どうしよう。

verstion 05b



    今はこう。

  • plltst をついに外した。入れたのは、2x5 の変換基板。180 °回転と、裏表入れ替え。作っておくとマウント方法に幅ができる。特に 180°回転なんて変換基板はないと思うし 配線が面倒なので有用かも知れない。ちなみに 単に 2mm ピッチ→ 2.54 ピッチ変換するだけなら、他の拡張基板に付いているから切りだしても良い。あと aitendo で扱っている基板から切り出す手もある。

  • 右上 pmpset1 で 2mm ピッチのところ に ラインを入れた。こうしておくと RC を付けたいとき 使えるかも。

  • CPLD 基板みなおし。変換基板だから単純なのだが、VCC と GND を接続したりしていると悲惨なことになる。たぶんこの基板はもう作る機会がないと思うので ちゃんとチェックした。

    結果は 一応 OK なのだが、水晶を 付けるピンを 1つしかない Global Set/Reset を使わないよう変更した。

    さて、そろそろと書いてから、だいぶん変更を重ねてしまった。FPGA ボードの方の配線のチェックは、一応済ませた。(後ろでまとめている)。あとは位置的な問題と周辺回路のチェック。

    スナップショット:


追記: イメージファイルの生成

    ガーバーデータのツール』をもとに、自力でイメージファイルを生成することに成功した。これで 貼り付ける画像の作成が楽になる。詳しくは、該当記事に追記しているので参照のこと。

    CPLD 基板をどうするか、再度検討。

    CPLD 基板でやりたいことをする基板は前に作ったのだった。作った基板を使わないうちに 新しい基板を作らないことにした。

    で、おなじサイズで差し替え用の基板を作ることにした。ひとつは 照明用LED基板。5mm の LED を 12 個載っけて 12V で使う。

    あと tn8102bc 基板を復活させる。ただし、発注する前に 動作確認ができた場合の話。もし動けば普通の キャラクタ液晶の 1/10 程度の消費電流(0.1mA ぐらい)になる見込みで やはり使いたいのだ。



    こんな感じか。作り直したらパターンをコンパクトにできた。コネクタの配線は、普通のキャラクタLCD に合わせてみた。使えそうなら、このパターンをベースにして、AVR を載せて... みたいなことを考えたい。

    スナップショット:

  • 随時更新している。

    最新では、Makefile を入れた。ファイルの数が増えてきたので管理しきれない。CAM プロセッサーは自動では動かせないが、時刻をチェックして 更新もれを防ぐようにしている。あと、生成したイメージファイルの 削除とかにも便利。-- xpm はかなりでかい。全体画像だと 4MB (png だと 170KB まで圧縮される)

    下の画像も make で作っている。これぐらいの解像度でイメージに変換してブラウザでチェックするのが、一番見やすいような気がする。


    version 05d/05e

    中央上の 2x5 変換基板に抵抗を入れることにした。入れるのは #4-#7 の 差動用端子。入出力を動的に切り替えるかも知れないので衝突対策。変換基板が大きくなったので、sc189 基板を外した。

    大して変えていないのだが、これで良いのか?不安なので、ファイルを変更。

    あらためて画像を見ると、だんだん FPGA ボードのサポートボードの面積が増えてきた。FIX したら 1.6mm であらためて発注しようとは思ってはいるのだが、肝心のFPGA ボードで失敗するとだいなし。いまいちどチェックしよう。

    05e では、FPGA ボードのアートワークを見直し。左右のボード端の部品を少しでも内側に寄せるようにした。(ケース MK6040 に固定するとき部品が端にあると困る)

    さすがにそろそろ FIX か。あと一週間になったし、UM162 ボード や tn8102bc ボードの確認もしておきたい。

    スナップショット:


    いよいよ、発注の時期が迫ってきた。冷静にレイアウトを眺めていると 拡張ボードばかりなのが気になる。これら、全部有用なのか? やりたいことや開発の手順を考えてみたが、USB とか MicroSD とか 割と後回しになる。

    大体、USB を使ってみたくとも 33MHz 以外のクロックを付ける予定がなかったりする。x2 の 66MHz で 無理やり動かすとか考えだすと、なかなかにハードルが高くなる。

    各ボードの 2mm ピッチ 2x5 を 外すとかして小さくして、FPGA ボードに関係したものを 下半分にまとめられないか 検討してみよう。

    追記:

    つれづれ日記』で知ったのだが、『Microtouch - a handheld AVR touch screen demo board』-- すごくいい。基板サイズは、45mm x 50mm で 右上の pmpset1 と置き換えられる。突っ込んでしまいたい。mega32u4 も持っているし、液晶も 37pin タイプのようだ。ただ、水晶とか MicroSD スロットとか 一部の部品が秋月で買える部品と 違うものを使っている。液晶も 1mm / 0.8mm ピッチではないかも知れない。手直しして突っ込むか -- どうしよう。

    別記事 『microtouch』で検討してみたが、今回はパス。慌てる必要はない。じっくり検討しよう。

設計してみた感想 .. というか、今後どうするかについての想定

    Startan 3A 50A と 200A の 100ピンタイプ(VQG100)を選択してみたわけだが、SDRAM だけで ピンがほとんど埋まってしまった。SDRAM を付けた以上なにか高速な I/O をしたくなるが、I/O 用のピンが少ないのがネック。2 枚のボードを接続してある程度高速に通信できるようなら、SDRAM なしの I/O 専用ボードというのも考えてみたい。

    I/O 専用ボードでも 100ピンを使っても良いのかも知れないが、144ピンのデバイスを探してみると、Startan 3AN 50A が 812円で買えることが分かった。 HUB みたいにしてSDRAM付きボードを何枚か接続できて 外部のデバイスを扱えるようにするものを考えてみたい。... といっても SDRAM付きボードが使いこなせてからの話。実現できるかどうか分からないが考慮だけはしておこうと思う。

    これ以上の規模になると、BGA になってしまう。2 層基板では無理だし 電子工作の範疇を超えそうだ。100 pin の 200A と 144pin の 50A だけでなんとかすることにして、チップ間の通信に力を入れるようにしたい。

      あ、144pin の Spartan-6 が買えるのか。じゃぁこれ一択だ。良くは知らないが。まぁ 先の話。

      (メモ: Spartan 3A VQG100/Spartan 6 LX9 TQG144 比較 )

      ロジックセル  スライス 乗算器 最大USER-IO(うち入力)
      (換算) CLB ブロックRAM DCM 価格
      50A 1584 176 704 6K x 9bit 3 2 68 (6) 501 円
      200A 4032 448 1792 32K x 9bit 16 4 68 (6) 1014 円

      LX9 9152 ? 1430 64K x 9bit 16 4 102 (?) 1286 円

      ブロックRAM 1 個 2K x 9 bit

      LX9 は、CMT に 2 個の DCM と 1個の PLL が含まれている
      LX9 は、DSP48A1 スライス に 1 個 の 乗算器 と 加算器 ,
      アキュームレータが含まれる。

      やはり一択っぽい。だが、これを選ぶと今回のデザインにはなり得ない。だからステップアップするときに使えば良く、今回はこれで良いのだ。


    ところで、8bit しかない I/O でどれぐらいの性能が出せるのだろう?

    ちなみに SDRAM は、前に調べたところ、連続した 8 つのデータ を読み書きするなら、16bit 幅なら 2x8 の 16 バイトに CL2 で 13 クロック(CL3 でも 15 クロック)。1 クロックあたり 1 バイト前後。大雑把に言って 66MHz システムクロックなら 66MB/sec 。これと比べて 数分の一ぐらいの帯域は欲しいところ。

    単一のシステムクロックで全部動かすつもりだったのだが、I/O だけ 倍速や 4倍速にするのは可能なようで、その想定はやめた。どうせ高速 I/O なら FIFO を入れるつもりだし、非同期でも問題ないようにもできる。
    こう考えることにすると 3.3V の シングルエンドは 物理的な配線の都合から 33MHz の DDR が限界だと考えた方が良さそうだ。これが可能なら シングルエンド 4bit で 33MB/sec まで行く。あまり心配する必要はなさそう。ひょっとしたらもっとクロックを上げられるかも知れない。PC の DIMM なんかでもシングルエンド(しかもバス)で 133 MHz 実現していたわけだし。

    ちなみに FIFO を ブロック RAM に取るとすると 1KB x 16bit 。ちょっとオーバースペックだが 200A なら 16個あるから 積極的に使っても良いのかも知れない。ただ、50A は 3 個しかない。I/O 専用ボードも なるべくなら 200A にした方が良さそう。

      小容量の FIFO は、分散RAM を使うのが普通らしい。8 データのバースト用バッファなら 16bit x 16 あれば良さそう。ただ CPU の バーストアクセスのために WAIT が入るような作りだと この数倍必要。大容量の FIFO を使うにしても クロックの乗り換えのために 小容量の FIFO を一回通すのは良いような気がする。

    さて I/O ピンは 8bit 分しかない。しかも 1本は入力専用なので クロスしない配線で済ますとすれば 7bit分 しかない。そのうち 4bit は、差動 I/O に使える。シングルエンドにしても この 4bit を使って 高速 I/O することにしよう。その場合 CLK が別に必要になりそうなので、+1 本を クロック専用ピンということにする。

    残りは 2 本だが、これは I2C のような 使い方をしようと思う。並列でつなぐので、どういう風に 高速 I/O 用のピンを 接続するのかネゴしたい。つながった後は あまり関与する必要はなさそうだが、BREAK みたいなことは出来た方が良いかも知れない。ug331 を 確認したら 3STATE_PULLUP という設定があったのでこういう使い方はできそうだ。

    高速 I/O 用のピンのひとつの使い方は、上記のものだが、差動 I/O もあるので、これも考えておきたい。

    とりあえず、調歩同期を考えてみる。2 チャンネルあるが、どちら向きで使うかは、I2C でネゴ。ひとつの 差動 I/O では、システムクロック x 2 でサンプリングすることにして、3 クロックで 1bit にしようと思う。66 MHz なら 44 Mbps 。10bit で 1 バイトだから 4.4 MB/sec 。片方向に 2 チャンネル使うなら 8.8 MB/sec 。

      この数倍も可能なような気がするのだが、クロックがない。66MHz を 2 倍にして 133 MHz がせいぜいか。そういえば、SDRAM 自体も 133MHz までいけるのだから、メモリコントローラも システムクロックの 2 倍速で動かしても良いはずだ。 これもいずれトライしたい。今は忘れないようメモのみ。

    ちなみに 480x272 16bpp のグラフィックデータを 30fps で送るとすれば、7.47 MB/sec 。だいたいこれぐらいの帯域。しょぼいと言えばしょぼいのだが、まずはこのあたりを目標にしたい。

    FPGA の使い方の考察は、この程度にしておこう。ここではなんとかなるということが分かれば十分。

    追記: 2/9 いよいよ 発注の時期が迫ってきた。わけだが ... ここに至って、Pmod というのを知った。Digilent が 設計して 拡張モジュールを発売しているらしい。で、大概の学習モジュールは、これに対応したピンヘッダが出ている。Pmod は 12ピン -- 2列x6 で 1列だけで使うこともできる。

    対応すべきかどうか? .. 本体はもう変えたくない。2mm ピッチだし同じにはできない。10 ピンのケーブルなども 入手済みだし。-- それで良いだろう。だが、拡張ボードの類はどうだろう? 2.54 mm ピッチは 本体とは関係ない。できることなら合わせておいたほうが良いのでは? ... ちょっと悩んでみよう。

    追記: 2/15 予定の期日を過ぎてしまった。結局、最後の 05f をそのまま出した。今は FPGA での設計の方が楽しくなってきていて、基板にはこれ以上時間をかける気がなくなった。失敗するかも知れないが、出してみる。

    ところで色については気が変わった。白にすることにした。価格は $50 。over $50 で送料無料と書いてあったが、$50 で無料になった。ただし、ただの書留。どうせ、設計している間に来てしまうのだ。遅くても全然かまわない。

    発注データ:
  • fpgaset1-05-fusion.zip
  • fpgaset1-05g.zip
  • 最新画像(表, 508dpi, 白)
  • 最新画像(裏, 508dpi, 白)

    追記 2/16 : 作れないというメールが来た。問い合わせてみると、1 ボードにするのは、OK だが、テストできない ということらしい。テストできないのを 許容するなら OK 。

    無条件でテストしないというのは嫌なので、どう変更したら良いか問い合わせ中。

    追記 2/17 : 答えの代わりに『13 個の PCB のうち 5 個までならテストするよ』という返事が来た。



    画像を送って、『OK なら 製造開始してね』 ということにした。

    良く分からないのは、右上が、1 枚と認識されること。実際一枚なのだが --- マージの仕方がだめなのだろうか? といってもツールを変更することは怖くて出来ない。

    3/3 追記: Fusion PCB の方には書いたのだが、こっちにも記載。

    結局、上記のは勘違いで、『5 枚を残して消したデータを送れ』ということだった。それは嫌なので、panelize.ulp でマージしたのをさらに 面付けしたデータを作って送った。



  • fpgaset1-06-fusion.zip (発注データ → 受け付けられた)
  • fpgaset1-06.zip (元データ)
  • 画像(表, 508dpi, 白)
  • 画像(裏, 508dpi, 白)

    その後、2/28 に 送付という連絡が来た。たぶん 受け取りは 3/10 前後になるだろう。

    (注意) 今回は、無理を言って作ってもらった感がある。5 枚もの ボードを面付けして 送っても 受け付けてもらえないかも知れない。面付けしたデータも公開しているが、それをそのまま送って作ってもらうのは、推奨しない。

    もし自分で基板を切ることを前提にして 面付けしたいのならば、個々のボードを panelize.ulp でマージしてほしい。この場合は、1 枚として認識されるので問題ないようだ。

    あといちいち書いておくが、公開したボードデータのライセンスは、GPL ということにする。この EAGLE ファイルを使って ボードを作り、それを他の人に渡すのであれば、(作ったボードそのものの) EAGLE ファイルも渡さなければならない。そして、渡された人が GPL の範囲で利用することを妨げることはできない。それを守る限り 商用利用も OK 。なお自分のためにボードを作り他の人に渡さないなら、私的利用 であり 著作権は及ばないとみなす。


付録: ピンアサイン一覧

    1.27 mm ピッチ拡張コネクタ

    MicroSD USB PLL
    #1 VCC
    #2 DAT2 D- PULLUP PLLCTRL
    #3 DETECT -- --
    #4 DAT3/CS D- INV
    #5 CMD/DI D+ XIN
    #6 DAT0/DO D+ PULLUP --
    #7 DAT1 VBUS DETECT GND
    #8 -- -- --
    #9 CLK VBUS SWITCH XOUT
    (PLLCLOCK)
    #10 GND

    NOTE: #9 (GCLK) , #4/#5 #6/#7 (DIFF PAIR) , #8 INPUT



2mm ピッチ コネクタのアサイン

コネクタ SDRAM FPGA 信号名
#1 5V
#2 DQ14 #19 L06P_3
#3 DQ12 #15 L05P_3
#4 DQ10 #12 L04P_3
#5 DQ1 #9 L03P_3
#6 DQ3 #5 L02P_3
#7 DQ5 #3 L01P_3
#8 DQ7 #98 L06P_0
#9 DQ8 #71 L05N_1
#10 GND


SDRAM の割り当て表 (2mm ピッチに出ているものを除く)

SDRAM FPGA 信号名
DQ0 #10 L03N_3
DQ2 #6 L02N_3
DQ4 #4 L01N_3
DQ6 #49 L10N_2
DQ9 #72 L05P_1
DQ11 #13 L04N_3
DQ13 #16 L05N_3
DQ15 #20 L06N_3

LDQM #94 L05N_0
UDQM #70 L05P_1

WE #93 L05P_0
RAS #89 L04N_0
CAS #90 IO_0
CS #88 L04P_0
CKE #64 L04P_1
CLK #65 L04N_1

BA0 #86 L03N_0
BA1 #85 L03P_0
A10/AP #84 L02N_0

A0 #83 L02P_0
A1 #78 L01N_0
A2 #77 L01P_0
A3 #73 L06N_1
A4 #50 L11P_2
A5 #52 L12P_2
A6 #56 L01P_1
A7 #57 L01N_1
A8 #59 L02P_1
A9 #60 L02N_1
A11 #61 L03P_1
A12 #62 L03N_1


UM162/AE-UM232R との接続表

Serial + SPI
 #1 TXD(PD3) (MOSI) #7 IP_3/VREF_3
#2 DTR(PD7) (SS) #21 IP_3
#3 RTS(PD6) (SCLK) #40 L08P_2/GCLK14
#5 RXD(PD2) (MISO) #34 L05N_2

Clock:
#11 CB4(PC5) #44 L09N_2/GCLK1

Config:
#12 CB2(PC4) #100 PROG_B
#16 (PC2) - J2 - #53 CCLK(L12N_2)
#17 (PD0) - J1 - #51 DIN(L11N_2)
#18 CB3(PD1) #48 INIT_B(L10P_2)
#22 RX_LED/CB1(PD4) #24 M2(L02P_2)
#23 TX_LED/CB0(PD5) #23 M1(L01P_2)

JTAG:
#6 SS #1 TMS
#8 SCLK #76 TCK
#9 MOSI #2 TDI
#10 MISO #75 TDO



CPLD ボードピンアサイン


    A B brd-opt C D
    1 31(GO) 30(GRS) VCC VCC
    2 33(GO) 32(GO) XIN 29 28
    3 36 34(GO) XINV 27 23
    4 38 37 22 21
    5 40 39 20 19
    6 42 41 16 14
    7 44(GC) 43(GC) 13 12
    8 2 1(GC) XOUT 8 6
    9 GND GND 5 3

    GO : Global Output
    GC : Global Clock
    GRS : Global Set/Reset


    水晶使用時:

    XIN -- |>o -- XINV -- |>o -- XOUT

    を組む。
  • JTAG

    JTAG
    1 24 TDO
    2 11 TCK
    3 9 TDI
    4 10 TMS
    5 GND

  • その他:

    VCC 7,26,35
    CORE 15
    GND 4,17,25
    N.C 18 (INPUT)

メモ: UM162 ボードのピン配置。


posted by すz at 22:22| Comment(0) | TrackBack(0) | artemis
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/42709593
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック