« 2021年9月 | トップページ | 2021年11月 »

2021.10.26

基板設計の見積もり失敗の研究

今日は技術的な失敗の研究ではなく、見積もり的な失敗の研究です。

基板の設計はなかなか見積もりどおりにはいきません。大抵は予想していた以上に難しく、時間も費用もかかってしまいます。

具体例をみていきましょう。

(なお、文意が変わらない程度に現実の案件から少しだけ金額と内容は変えてあります。) 

見積もり失敗例①

Pcbest1

特電Artix-7ボードにMIPIカメラを接続するための変換基板なのですが、1日か2日でできるだろうと高をくくって↑のくらいの見積もりを出していました。

しかし、実際にはXILINXのMIPI CSIコアを使うためには、I/Oに適当につなげるのではだめで、ピン配置にかなりの制約があることがわかりました。FPGAのサンプルデザインを作って設計した基板のピン配置にフィットできるかどうかや、本当にMIPI CSI2が受信できるかを空中配線で組んだ基板で実験することになりました。そういったFPGAの設計作業や検証作業は見積もりに含んでいませんでした。

↓こんな感じで実験して、MIPI CSIコアが動く条件を探っています。

A7mipi

基板自体は簡単だったので回路と基板設計は2日くらいでできたのですが、XILINX MIPIコアの検証で5日は軽くかかっているはずです。ただし、この検証で5日というのは正解を見つけて正しいデザインが出来た日数のみです。うまくいくやり方を探して試行錯誤してダメだった日数を含んでいません。

結果を見てみると、各項目の粗利は出ていますが自分の人件費も会社の利益も出ていません。

見積もり失敗例②

Pcbest2png

当初はFPGA周辺回路の設計もふくめて200万円ほどという見積もりを出していたのですが、安くしてほしいとの要求だったので他社のFPGAボードを利用した拡張基板を作ることになりました。

単純に配線を引き出すだけの拡張基板だったので2~3日で設計できるだろうと回路設計+基板設計費を16万円で見積ったのですが、実際には狭い領域に数百本のネットを通さねばならず、しかも太いデータバスやアドレスバスが入り組んでいたため2~3日で設計などは不可能でした。

前述の①の基板と面付することで製造費用を抑えられたため、もし一発で動いていれば若干の利益が出たように見えます(それでも人件費を考えれば赤字ですが)。

しかし、出来上がった基板にミスがあり全額当社負担で基板の作り直しとなりました。再製作時は別の基板と面付することで少しは安く抑えられたのですが、それでも粗利が削られてしまいほとんど利益が出ていません。自分の人件費を含めたら大きなマイナスです。

コストを安く抑えるために面付をすることは他の基板とタイミングを合わせなければならず、納期が大きく遅れる要因となります。

見積もり失敗例③

Trenz TE0808ボード用の拡張基板です。

Pcbest3

まず、TE0808基板の電源の使い方やコネクタの位置を調べたりするということで膨大な日数がかかってしまいました。Trenzのマニュアルはわかりにくい。

これもピンを引き出すだけの拡張ボードだから簡単にできるだろうと思っていたのですが、実際には、本を読んでUSB3.0のType-Cの回路設計方法を調べてもよくわからないので、ケーブルを買ってきてぶった切ってUSB3.0 Type-C変換ボードで実験してどういう仕組みなのかを調べたり、とにかく設計をするために実験をたくさんやっていた基板です。USB3.0のスイッチなど知らないことばかりでした。

Typec6

USB3.0って、高速差動信号のほかにUSB2.0のPHYも必要になるのですが、近年の部品難でいままで使っていたものが入手できなくなったので、XILINXが対応している別のPHYがないかどうかLinuxのカーネルを見て探しました。新規部品の登場です!!これでUSBまわりの基板設計全部やりなおしですね。

それから、UltraScale+でのMIPIの使い方を調べたら、ArtixとUltraScaleでは全然MIPI IPコアの使い方が違うんですね!論理合成してみて初めて気が付きましたよ。はっはっは。等長配線やりなおしです。

いざ基板が出来上がってみると、何度も確認したはずなのにコネクタが左右逆になっていました。当然、超特急で基板を作り直しです。

Top_20211023191601 Bottom

なんとか粗利は出ていますが、自分の人件費を考えたら大赤字でしょう。

 

失敗を繰り返さないために

上の①②③の事例はいずれもFPGA応用基板の案件なのですが、本番用FPGAの設計は顧客が行うものだとしても、実際には基板設計時にFPGAを設計してピン配置にフィットできるかどうかを確認しなければなりません。だから、回路・基板の設計時は、簡単なサンプルデザインでもいいからFPGAの入力からピン配置固定、論理合成までひととおりやらねばなりません。

FPGAのサンプルデザイン設計に、正しい回路を作る日数だけではなく、ダメ回路を作って何度も試行することまで見積もりに含んでいなかったというのが敗因のひとつとして考えられます。

それから、ある種の部品は10個単位でしか買えないのに実際の使用数量は4個だったら余った分が社内在庫として溜まっています。会計上は利益になりますがキャッシュフローが悪化します。こういうのも見積もりミスといえば見積もりミスです。

また②と③の基板では設計ミスにより再製造となってしまったので、その分のロスが大きいと言えます。

いずれの案件でも若干の粗利は出ていますが自分の人件費を考えると大きくマイナスです。今は従業員がいないので少しは楽ですが、会社として利益を出していかないと従業員も雇えないし、会社を大きくすることもできません。設計費には自分の人件費だけではなく、会社利益を含めなければなりません。

 

このようなミスを繰り返さないためにできることをまとめます。

  • FPGAを応用する基板の場合、必ずFPGAのサンプルデザインを設計するための費用を含めること
  • サンプルデザインの設計のために試行錯誤して「ダメ」だった日数も含めること。
  • 基板の作り直しは必ず発生する前提で、製造+実装+部品代は面付しない正規の外注費用の240%くらいで出すこと。
  • 基板を面付してコストを抑えると他の基板に合わせなければならないので納期が遅れると心得るべし。
  • 部品代は、使わずに残る部品を廃棄することを考えて、購入総額で見積もること。
  • 設計工数は、自分の給料だけではなく、会社の利益が出るように見積もること

あたりまえのことですが、なかなか難しいですね。

 

| | コメント (0)

2021.10.25

Spartan-6ボードの販売終了予告

12年前に発売を開始した特電Spartan-6評価ボードは、デバイスの入手が困難になったことにより販売終了とさせていただくことにいたしました。

Sp6board

半導体不足の影響は深刻で、商社さんによるとSpartan-6は壊滅状態で納期が回答できないとのことでした。

FPGAだけでなく、電源回路やDDR2メモリ、その他諸々が12年前の設計であるため今後も様々な部品が入手困難になることが予想されます。そのため、やむを得ず特電Spartan-6ボードは販売終了とさせていただくことにいたしました。もし、1年後か2年後くらいに電子部品の需給が緩和されてきた場合には生産再開を行うかもしれませんが、よほどのことがなければこのままディスコンとしたいと考えています。

とりあえず社内にSpartan-6 FPGAの在庫は10個確保していたので10台分なら作れるかと思ったのですが、もうひとつのキー部品となるCypressのUSBデバイスCY7C68013Aも入手が難しく、1~2か月以内には全く製造できません。CY7C68013Aの次回入荷は来年の1月なので、2022年1月に最後の10台製造します。

当製品のご購入に関しては現時点から予約を募り、数量限定での発売とさせていただきます。その際、10名様以上の希望者がいらっしゃった場合には、すでに当製品をご購入いただいている方からのリピート注文を優先させていただきます。

詳しいことは決まり次第、メーリングリストにてご案内いたします。

 

| | コメント (0)

2021.10.24

伊勢神宮にお参りしてきました

今年も伊勢神宮にお参りしてきました。

朝6時に家を出て、7時の新幹線に乗り、11時ごろに伊勢市に到着です。外宮で祝詞を上げてもらい、その後、内宮を参拝して帰路につきました。

Fcdvytviamlsji

去年はコロナの影響で参拝をとりやめたものの、伊勢神宮には毎年参拝していて、数えてみたところ16回目でした。

Fcecakwvuae6hia

いつもJR東海ツアーズの「1day日帰りお伊勢さん」というプランで、今年は「ずらし旅」という名前に変わっていました。東京から伊勢市までの往復乗車券と、現地で使えるバウチャー券が付いてくるというプランです。

新幹線と近鉄特急が激安になることは同じなのですが、その他のオプションの部分が今年はだいぶん違っていて、

  • 伊勢市のバス無料券(外宮→内宮、内宮→伊勢市駅)がなくなった
  • バウチャーで引き換えできるものがしょぼくなった

という厳しいものになっていました。

例年は2000円相当のバウチャーが付いていたのですが、このバウチャーが実にたいへんお得だったのです。

おかげ横丁で2000円の食事をすると豪華な食事にありつけるし、バウチャーをお土産に引き換えれば、赤福を含めて両手いっぱいのお土産もいっぱい買えたのです。例年はね。

でも、今年はそんなんじゃなかった。

 

まず、JR東海ツアーズで申し込んだときに、バウチャー引換券とかが送られてくるわけではありませんでした。スマホでバウチャーに引き換えられるというクーポンの予約番号が教えられるだけです。

そもそも今年はバウチャー券のほかにいくつかのプランがあって、好きなものを選ぶという形に変わっていました。しかし、JR東海ツアーズのチラシからクーポンのページに行っても「予約がありません」と出てきます。本当にバウチャー券がもらえるのかどうか不安になりますね。

とにかく仕組みが分かりづらいのですが、紙にかかれた説明とホームページの説明を解読すると、クーポンの予約番号をバウチャーに引き換えて、そのバウチャーで何かを買うという2段構成になっているのがわかりました。

伊勢市駅の観光案内所にあるQRコードをスマホで読み取って予約番号を入れるとバウチャー券が8枚付いた冊子が一冊もらえるらしいのですが、どのお店でバウチャーが使えるかは現地に行かないとわからないようです。例年の2000円相当の何がもらえるのかはJR東海ツアーズに聞いてもわかりませんし、何円相当になるのかさえわかりません。伊勢市駅の観光案内所に電話で聞いた感じでは2000円~3000円相当になるそうです。

伊勢市駅に到着し、観光案内所にいくとQRコードが印刷された紙があったのでそれを読み込んで番号を入れると冊子をゲットできます。しかし、引き換えられるもの見ると愕然とするような内容でした。15年前はいろんなお店で豪華な料理が食べられたりお土産がもらえたりしたのに、今年は食事もお土産もほとんどありませんでした。

食事らしいものは伊勢うどん(バウチャー2枚、600円相当)のみ。お土産は醤油(2枚)とエビせんべい(5枚)のみです。あとはスイーツだったり、ソフトクリームだったり、謎の雑貨だったり。コロナの影響で協賛するお店が激減したのでしょうか。まぁフルーツいっぱいのデザート(2枚)は美味しかったけど。あとは醤油とエビせんべいをもらってきました。この内容で16枚はなかなか使い切れませんね。

ちなみに、バウチャーには赤福もありましたが、赤福2個(2箱ではない)食べながらお茶飲んで休憩するプランで、現金で払えば230円相当です。ただし2時間半待ちとのことです。

 

おそらく、観光協会に協賛するとバウチャーの冊子に載ることができて回収したチケットを観光協会に出すと現金が戻ってくる仕組みなのかもしれません。もしそうだとすると観光客が少ないと赤字になってしまうので、どのお店も協賛することをためらったのかと思います。来年からコロナも収まってまた豪華に復活しているといいですね。

| | コメント (0)

2021.10.23

基板設計失敗の振り返り

作成した基板のコネクタの左右を逆にしてしまった件で、どうしてこんなに基板の失敗が多いのだろうと思って、最近5年くらいの間に設計した基板のミスをリストアップしてみました。

Pcberror

黒は全く動作不能レベル。赤は修正可能だけど基板の加工や部品の加工など物理的な修正が必要なもの。オレンジは痕跡を残さずに修正できるもの。青や緑は部品型番や定数の変更くらいでなんとかなる軽微なものです。

数千個のネットの中で間違いは1つか2つであったとしても、その1つや2つが致命的ということもあります。

 

特に、新しい部品を使うとFootprintのミスが多いです。とりわけダイオードとかLED、インダクタなど簡単そうに見えるもののほうが、極性や部品の向きの失敗が多い。そういえば10年くらい前はネットリストをプリントアウトして1つ1つ赤ペンで消し込んでいって確認とかしていたのと、基板設計は外注していたのですが最近はしていないなぁ。それでもやはりミスは消えなかった。

結局のところ、どんなに注意をしていても基板のミスは消えないと思います。

今まで特電では基板を作るときには、簡単な基板なら回路や基板設計はだいたい1日か2日で出来るだろうと考えて15~30万円ほどといただいました。しかし、後から仕様が追加されるのはもちろん、ここはこうしてほしいとか要望が出てきたり、そういうことをしているとあっというまに1週間、1か月かかってしまいます。元の1~2日という見積もりは大抵はずれます。

それから、基板製造費+実装費は外注費の120%くらいか5万円くらいの手数料をいただいていたのですが、これだと一回でもミスをすると赤字になってしまいます。

部品代も仕入原価に10%~数万円くらいを手数料として上乗せしていましたが、部品を探したり発注したりする時間だって何時間もかかるわけですから手数料が安すぎました。

それに基板設計の仕事って数時間でできそうな簡単な基板でも、新規部品の使い方を調べたり、FootPrintを作ったり、配線パターンを確認したり、ガーバ出力して基板製造指示書を作ったりしていると、どんなに簡単な基板でも1日で設計可能ってことはないですね。

いままでの見積もりが安すぎました。反省

そもそも、基板の設計というデスクワークの仕事の部分で役務の対価としての15~30万円の利益しかなくて、これが苦しかった原因です。

ワードプレスを使ったホームページの作成だって外注したら100万円するわけですから、基板の設計という高度な仕事を15万とか30万で請けていたのが大馬鹿でした。

回路設計と基板設計はどんな簡単なものでも最低50万円からにしないとだめですね。基板製造・実装費用・部品代は作り直しのリスクを含めて外注費の240%を標準価格とすることにします。これで高いと言われたらやらないほうがいいかもしれない。

見積もり2倍キャンペーンはじめます!

 

| | コメント (0)

2021.10.22

Trenz用ベースボードの設計失敗!

Trenz社のTE0808を乗せるベースボードを設計していたのですが、大変重大な設計ミスをしました。

Top_20211023191601 Bottom

綺麗に仕上がっていて今にも動きそうなボードに見えるのですが、160ピンのメザニンコネクタの左右が全部逆だったのです!

10年に一度くらいの痛恨のミスです。

原因を突き詰めて考えていくと、コネクタのオスとメスで左右がひっくり返ることを考えて二度ひっくり返しちゃったとか、TOPVIEWとBOTTOMVIEWを間違えたのかもしれません。

他にも理由を考えてみると、下の図はTrenz側ボードのJ1の部分ですが、小さな●があって、左上が1番ピンであることがわかります。

J1_20211023192201

で、Trenz社 TE0808の回路図を見てみると、

Te0808sch

左下が1番ピンなんですね。だから、Trenz社の回路図は基板のイメージと上下逆になっています。

そして、これに勘合するベースボードですが、

Trenznp1128_20211023192901

コネクタはオスメスでひっくり返るので、ベースボードに乗せるメスのコネクタ(SS5-80-3.50-L-D-K-TR)は左下が1番ピンにならなければなりません。

しかし、FPGA側についているオスのコネクタと同じ配置のままで、メスのコネクタ用のFootPrintを作ってしまったため、上下逆になってしまったというわけです。

結局のところ、コネクタは左下が1になるのが正解でした。

このほかにも、基板の出図1週間前までコネクタの位置を0.5mm間違えて作っていたり、とにかくミスが続いたボードでした。TrenzのFPGAボードに合うベースボードを作るのは簡単ではありません。マニュアルを読んでもコネクタの正確な位置や向きがわかりにくく、写真を見てもわかりにくく、実物を見て導通テストをしながらでないと気が付かないことが多いのです。

ベースボード設計用の原寸大の基板図を作ったらみんなハッピーになれるかもしれません。

とほほ・・

 

| | コメント (4)

2021.10.16

Cosmo-Zのアプリのメニューを整理した

C#にも慣れてきて、Cosmo-Zアプリがだんだん形になってきました。

ツールバーに大きなボタンを並べる現代風アプリ形式は、ボタンデザインのセンスによってアプリがダサくなってしまうので、従来のようなファイル(F)からはじまるメニューに変えました。

 

RUN/STOPなどを専用のボタンにするのではなく、オシロ風のボタンを付け、Singleも可能にしました。

Cszs2

また、計測した波形の保存や読み出しもできるようにしたのと、ファイル→新規波形からサンプルのテスト波形を生成できるようにしました。

Cszs3

「インポート」では、CSV形式の波形データを読み出したり、Cosmo-Zで保存した波形をインポートできるようにする予定。

「エクスポート」では、Excelで読み出しできるようCSVでエクスポートできるようにする予定です。

また、ファイル→新規作成の中に、sin(1/ax)という原点付近で無限に振動する波形をサンプル波形として生成できるようにしました。

Cszs4

拡大・縮小をやってみると意外と楽しいです。

| | コメント (0)

2021.10.14

Cosmo-Zで等価サンプリングを行い反射波を測定してみた

Cosmo-Zに等価サンプリングの機能を実装して、100MHzサンプリングのADCを用いながら1GHz以上のサンプリングを等価的に実現できました。

装置の構成はこんな感じです。

Eqsample

Cosmo-ZのディジタルI/Oから1.8Vのディジタルのパルスを出し、それを抵抗で分圧してアナログ入力に入れます。

|_______|_______|_______|_______|_______|_____

という、周期100usで繰り返す27ns幅のパルスを出しています。

 

そのアナログ入力の部分から同軸ケーブルを伸ばしていって解放端で反射して戻ってきた反射波を見てみましょう。

まずは同軸ケーブルを外した状態で測定してみました。

Coax_0m1

↑。雑に配線したリード線による反射で細かいリンギングが見えていますね。

波形を拡大してみると、1ns以下の間隔でサンプリングできていることがわかります。

Coax_0m2

 

次に、同軸ケーブルをつないでみました。まずは2m。

Coax_2m

なんて汚い波形でしょう!

矩形のパルスが同軸ケーブルで反射して戻ってきて重なるため、こういう波形になります。

 

次は4m。出力パルスと反射波が40ns離れるので、分離して2つ見えています。

Coax_4m

 

次は同軸ケーブル6m。

Coax_6m

60ns分離しました。

・・・

このような感じで同軸ケーブルを長くしていくと、出力波と反射波が分離していくのが見えます。秋月で買った同軸ケーブルを全部つないで13mにすると、約130ns分離しました。

Coax_13m

 

同軸ケーブルを伝わる電気信号は1m進むのに5nsかかると言われていますが、今回のような反射の実験の場合、信号が往復するのでその2倍の時間がかかり、1mあたり10nsほどとなります。実験結果もだいたい10ns/mになっていました。

今回の実験の目的は信号の反射の時間を測ることというよりはCosmo-Zに等価サンプリングが正しく動いているかを確認することにあります。

100MHzのADCでありながら1GHz以上の等価的なサンプリングができることが確認でき、時間的な尺度も正しいだろうということが確かめられました。

 

| | コメント (0)

2021.10.07

Cosmo-ZのWindows版アプリを開発スタート

Visual C#を勉強しつつ、Cosmo-ZのWindows版アプリの開発をスタートしました。

Cszwin_20211008202201

C#からC++のDLLを呼び出したり、オシロ画面の部分をユーザ定義コンポーネントにしてDLL化したり、そんな工夫をしつつ作っています。

とりあえず、TCP/IPでCosmo-Zにリモート接続し、ADC変換データを取ってきてushortの配列に入れることはできました。

明日は波形表示を作ります。

| | コメント (0)

2021.10.06

USB3.0 Type-Cの基板を出図

数か月間にわたって設計してきたUSB3.0 Type-Cの基板を出図しました。3.0のType-Cはマルチプレクサを使わなければならないとか、CCを検出する専用ICを使うとかでいろいろ勉強しながら設計していたので、かなり長い時間がかかりました。

出図後2時間くらいして、基板業者さんから、表面はスルーホールで裏面がノンスルーホールになっている穴があるという指摘がありました。

Usb30

コネクタを固定する位置決めの穴と思われるので、スルーホールでもただの穴でもどちらでもいいのですが、よく見てみると危険な状態になっていました。

この穴、内層がよけられていないのです。私はProtel99SEというCADで設計しているのですが、PROTELではTOPLayerまたはBottomLayerに作られたPADに穴をあける設定をすると、内層の避けがなくなって、内層が全部ショートするのです。

Protel_danger_pad

あぶないところでした。

穴をあける場合はPADを必ずMultiLayerにしなければなりません。PADのサイズが0の銅箔なし穴の場合でも同様です。

Altiumでは改善されているのかな?

 

| | コメント (0)

2021.10.04

UltraScale+でのMIPI

おぼえがき

・VCCIOは1.2V

・QBC、DBCにクロックを割り当て

・抵抗ネットワークはいらない

| | コメント (0)

2021.10.02

長い等価サンプリング

Eqs_20211005234602 Eqs_20211005234603 Eqs_20211005234604 Eqs_20211005234605

| | コメント (0)

« 2021年9月 | トップページ | 2021年11月 »