SSブログ

大規模開発プロジェクトのドライビング(3)~LSIの動作原理 [仕事法]


このテーマ何について書こうか考えていたら、ロジックLSIの高速化と大規模開発プロジェクトの高効率化がまさに同じ原理なのに気づいたので、今回はLSIの動作原理をひたすら書きます。そんなもん読まれるのか?(笑)。まあいいや。一回で書ききれないと思うので追記していくと思います。




○LSIって?

PCとか開けた際に足がいっぱい生えているやつのことです。世の中の電子デバイスでこれを使っていないものはほぼないです。その中でも○×プロセッサと呼ばれるものは1億~10億のゲート数があります。驚くべきことに、ほんとに重要な部分のゲートがたった一個でもイってるとそのプロセッサは不良品です。




○ボトムアップで動作原理を考える

・トランジスタ…端子が3つあって、ゲート端子と呼ばれるところに+の電圧をかけると電流が流れるのがnMOS、-の電圧をかけると電流が流れるのがpMOSです。ここの出来(電流が多く流れる、容量が低い)はスピードを決める要素のひとつで、各社数百億(JPY)の資金を投入して競い合っています。

・論理演算(CMOS static)…上記のn/pMOSを繋げるとINVERTER(NOT)、NAND(NOT AND)、NOR(NOT OR)を組むことが出来ます。形としては入力端子に対し、pMOSの端っこが電源(1~3V)、nMOSの端っこが0Vにつながっています。

・論理ブロック…例えば足し算をするには加算:ABC+~A~BC+~AB~C+A~B~C、繰上げ:AB+BC+ACのようなロジックを組むことで足し算回路となります。実はこれだけでゲート数は30弱ぐらい必要です。

・セル、モジュール…上記の論理ブロックを機能毎にくみ上げます。例えば論理演算をする部分、データを記憶する部分、内部や外部のプロセッサと通信する部分など。

・完成…モジュールをくみ上げて完成です。入力すればもりもり演算してくれます。




○回路全体の高速化

さて、上記の回路を早く動かすにはどうしたらいいでしょう?実はここに大規模開発プロジェクトの高効率化の鍵があります。一番簡単に思いつきそうなのはトランジスタの性能を上げたり、トランジスタ数を増やすこと。しかしその結果、LSIは1-2割は早くなるかもしれませんが、倍や桁では早くなりません。そこで何をするかというと性能を律速している「クリティカルパス」を探します。億近い数のゲートの中で、回路の速度をそれ以上改善できなくしているクリティカルパスを重点的に改善します。数十~数百ゲートのパスがあって、そこの性能を改善することが回路全体の高速化につながります。クリティカルパスはタイミング解析しないと分かりません。




これをプロジェクトに当てはめましょう。個々人はトランジスタに相当します。もちろん個人の能力を育てたり、エースをたくさん投入すれば少しは早くなりますが、それ以外のところで大幅に遅延させるようなことがあれば全て水の泡です。またクリティカルパスが「線」の場合、その中にできない人を混ぜてしまうとそこがまた全体の性能劣化を引き起こしてしまいます。クリティカルパスを重点的にケアすることでプロジェクトの速度は確実に速くなるでしょう。


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

大規模開発プロジェクトのドライビング(2)~理系の教育 [仕事法]


このテーマは最終的には「有効な人材をいかに増やすか?」という命題に行き着く予定なので、今回は人材の基礎となっている理系の教育について考える。といっても教育論は専門ではないのでまず最初に研究者が入るコミュニティ、日本の研究室について考えたい。




○理系の研究生活

 自分は比較的忙しい研究室にいたためよく分かるのだが、研究をしたかどうかのcriteriaが「苦労」や「時間」になりがちになる傾向がある。例えば「自分はこれだけ徹夜してデータをとった」とか、「このサンプルを作るのにこれだけ時間をかけた」とか。裏を返すと研究開発の世界はほとんどうまくいくことがないため「苦労」や「時間」という分かりやすいcriteriaで競い合ってしまい、本来の「結果を志向する」ことから離れがちになってしまう。結果を志向しなくなった途端、目的を失いネガティブスパイラルに陥るというのはよくあるパターン。自分の研究室の恵まれていたところは教授が結果志向の強い人であったことであると今になって思う。




○目的志向

 ではどうすれば目的を志向できるようになるか?これは仕事の進め方と精神鍛錬(笑)が重要。ポイントが分かればネガティブスパイラルに打ち勝つことができるようになるはずであり、他にもいい方法があったら是非教えていただきたい。

・目的へのアプローチ: マルチウェイが有効。最短距離を目指し山を張る。当然これだけでは外れる可能性も高いので、一方で下地を固めるワークも進めておく。自分の経験ではどっちかが行き詰ったとき、もう片方が指針となってくれる場合が多く、どちらか単独でうまくいったことはほとんどない。

・自信をつける: これは経験を積んだり勉強したりするしかない。経験は誰でもつめるため、勉強で差をつけなくては将来勝ち残れない。自信がつくと冷静な判断は自然とついてくる。




次回は人数対効果について考える。


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

大規模開発プロジェクトのドライビング(1)~前置き [仕事法]


自分が就職を考えるとき一番悩んだ選択肢は、自分の能力がダイレクトに反映される中小企業及び起業 or 大企業同士の開発競争。実は分野に関してはあまりこだわりはなかった。ただし新卒というカードを使えるのは一回。前者はいつでもできるという判断から大企業同士の開発競争に足を踏み入れた。




○大企業同士の開発競争~半導体デバイス

半導体デバイスの開発競争は各企業とも世界の一流大学の高学歴エンジニアを採用し、毎世代sub兆円ぐらいの資金、数十~百万人の従業員が動く。日本企業は持ち前の統制力で一時期世界を席巻したが、技術・コスト・TATのバランスを欠いて凋落。。。ぐらいが自分の入社した時期。自分が日本を立て直そうとかほらを吹く気はないが世界のスピードと量にリソースで劣る状況で対等に戦っていける方法を思案するのは重要。今日本で儲かるのは間接業であるという社会構造を考えると、いままで雇用を支えていたプロダクションが空洞化するのは明白。そこで日本企業の競争力を高めることを考えようという話になるのだが、システムの強さで牽引してきた企業、セオリーしか提案できないブレーンの組み合わせで新しいプロジェクトはことごとくうまくいっていない。

 自分はまさにその現場で「どううまくいっていないか」を体験できる貴重な立場にいる。そこで、なぜうまくいっていないかとどうすればいいかをできる限り系統的にまとめ、自分自身実践していけるようにしていきたい。


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。