FC2カウンター FPGAの部屋 2005年12月28日
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

ボード作製初期のデバック

今やっている基板は2002年に最初に作ったので、もう3年以上付き合っている。
基板は回路図はこっちで描いて、基板屋さんに渡して、ボード設計、基板作製、部品実装してもらった。
ボードは2種類あって、パソコンのPCIカードと独立で使う基板がある。
FPGAの回路は全てスクラッチから作った。ボードが出来る少し前から初めて、SDRAM制御回路、PCIインターフェース、PowerPCプロセッサインターフェース、DMA、内部バスアービタ等など。
FPGAの回路設計するのが2人しかいなかったので、最初は本当にきつかった。PCIカードの方のロジックは大部分私1人で作った。休みの日も、自宅のパソコンで回路を書いていた気がする。おまけにシミュレーション用のテストベンチを書くのも大変だった。
という訳で、基板もFPGAの回路もファームウェアも新しいので、デバックの際はどれを信じたら良いのかわからず大変だった。さらにFPGAをAlteraからXilinxに変更したばかりで、FPGAのことも良くわからない。
バグがでたら1つずつ、ファームは大丈夫か、回路は大丈夫か? 自分たちで書いた回路図がだめなのか? それとも基板がおかしいのか? という問いを繰り返した。
ファームは自分の間違いだというのがわかれば、すぐに修正できるが、FPGA内の回路で、シミュレーションでわからないタイミング依存の現象は、FPGA内に検証回路を作りこんでデバックしたりした。
基板も水晶のピン配置が違うといった単純なミスから、グランドバウンズで基板を作り直すというバグもあった。
グランドバウンズと特定するにはとても苦労した。論理回路が間違っているかもしれないし、その可能性を除くためにプロトコルなしの生データを受け渡す回路を作ってテストしたりもした。結局、他のこともやっていたが、それがわかるのには、半年以上かかってしまった。
取り留めなくなったが、やはり、全部動くかどうかわからないというのはデバックが大変すぎる。
今度作る予定の基板では、以前の回路をなるべく使いまわして、基板の動作チェック等を出来るようにしたい。今度はいろいろノウハウがあるので少しはいいだろう。
基板のほうも最初から伝送シミュレーションをしてもらったり、グランドバウンズの配慮をしてもらったりしたい。やはり、それなりのノウハウがあるところに頼まないと後で作り直しとかになってしまうかもしれない。それにその部分がしっかりしていると安心できる。時間の無駄がだいぶなくなると思う。
本当に長かったような気がするが、ちゃんと動くようになってよかった。
普通の企業だったら、3年以上もかかったら首かもしれませんよね。こっちもいろいろノウハウがためられて良かったともいえるが。。。
  1. 2005年12月28日 06:17 |
  2. プリント基板の作成過程
  3. | トラックバック:0
  4. | コメント:3