経験ブログ はじめに
半導体の設計の仕事ってどんなイメージですか?
図面を書く、頭の良い人がヤル仕事。。。と思うかも知れませんが、、、
昔は図面を書いて設計していましたが、今ではHDLという記述で設計します。
また、
頭がよくてと思うかもしれませんが、計算ができるとかの頭の良し悪しではなく、
基本知識から知恵を出すことができるかだと思います。
私は、高校普通科卒業で25年間できました。
先に出た「HDL」って???
単にハードウェア用の記述言語です。ソフトウェア言語のC言語やC++、C#などと同じです。
ただ、ソフトウェア言語との違いは、並列処理を意図した記述です。
ハードウェア言語は、色々な処理を同時行うことができます。
例えば、下のような行列式があり、X及びYの答えを求める場合、
ソフトウェアでは、6回の処理で計算しますが、
ハードウェアでは、2回の処理でX及びYの答えを算出します。
尚、四則計算での計算回数は同じです。
本題の「半導体の設計の仕事」ですが、
ほとんどが、設計仕様書作りです。
設計仕様書は、Wordで作り、
機能や設計説明、ブロック図、タイミング図などを記載したものとなり、
この段階で頭の中にある設計構想を具体化します。
経験からこの設計書をおろそかにすると、後で検討不足などで修正では無く、
構想段階からやり直しとなり、出来上がるまでに時間がかかります。
※ASICの場合、作ってしまったら修正するにもお金がかかる為、特にしっかりする必要があります。
さて私の場合になりますが、
仕様書作りで、ある程度の構想がまとまり、最初に手掛けるのが、
タイミング図作りです。
文章から始める人、ブロック分けから始める人がいますが、
私は、タイミング図からです。
複雑なものになるほど、タイミング図を記載してタイミング検討します。
このタイミング検討で検討漏れがあると、あとで時間がかかる為です。
設計仕様書さえ、ちゃんとできていれば、
あとの工程のHDL作成やRTLシミュレーションによるデバッグなどがスムーズに進むと思います。
記述がわかってくると、HDLを作成し、シミュレーションして動きを見たいという先走った気持ちになりますが、
「急がば回れ」という言葉があるように早道したいなら、最初をしっかり押さえるべきと私は考えます。
尚、私の設計工程の比重のかけ方は、だいたい
60%:設計仕様書
10%:HDLコーディング
25%:RTLシミュレーションによるデバッグと検証
5%:論理合成(タイミング制約)
です。