SoCテクノロジの進化

  • By John Bainbridge
  • 25th 2 2016

チップ設計者としては、論理合成はあたりまえです。エンジニアがデジタル論理を手作業で設計する必要があった時代を想像するのは困難です。それでも、NASAのエンジニア達が計算尺を使用して、月面に初めて着地したアポロ11号の宇宙飛行を計算し計画したことは信じられないような話です。

エンジニア達はかつては非常に頭脳明晰だっただけなのでしょうか? 多分そうでしょう。しかし、合成ツールのような高度なツールが主因で、チップの設計がさらに複雑になり、半導体技術の急速な進歩が可能になったことも真実です。ただし、現在ではマイクロプロセッサは過去のニュースとなり、代わりにSoCがデジタル技術を牽引しています。

とはいえ、多くのチップアーキテクチャ設計者が、現在でもスプレッドシートやVisioのような描画ツールを使用しながら手作業で設計に悪戦苦闘しているため、ある意味で振り出しに戻っているのは悲しむべきことです。必要なのは、論理合成が回路設計を自動化したようにSoC設計を自動化する新しい合成技術です。

「代表的な」SoCとシステムインターコネクトの構成に関与する変数の一部についてわずかの間でも考えてみれば、問題が複雑なことは明らかです。インターフェイスプロトコルと幅、クロックドメイン、電圧と電力遮断領域がそれぞれ異なるIPブロックを、多数接続する必要があります。それぞれに、未処理のトランザクション数、バーストサイズ、バースト長など、独自のコンフィグラブルプロパティがあります。

また、運用シナリオが異なれば変動する通信エンティティ間のさまざまなバンド幅やレイテンシ要件など、設計のトラフィックニーズも考慮しなければなりません。これらのパラメータを追跡し操作することは瞬く間にスプレッドシート地獄に陥ります。さらに、アーキテクチャ設計者は(人為的に)システムを小さなサブシステムに分割し、手作業で作成した実装やモデルで“what-if”分析を実行せざるを得ません。

もっと良い方法があるはずです。所定の設計の最適なオンチップインターコネクトを自動的に生成する合成エンジンが必要です。たとえば、システム要件を高レベルで定義し、多くの低レベルのパラメータおよび設計の制約をすべて自動的に生成し、明確に定義された言語でとらえることができるようになる必要があります。合成エンジンを使用すれば、ネットワークアルゴリズムと機械学習技術を利用して、オンチップインターコネクトをわずかの時間で自動的に生成できるでしょう。

SoCインターコネクト向けに設定した合成ツールにより、アーキテクチャ設計者は多くの新しい機能を手にする可能性があり、新しく複雑な設計を追及してシステム要件を効果的に満たすことができます。新しい設計は構成と同時に修正可能で、パフォーマンスを保証し、テープアウトに十分間に合うでしょう。

今後の記事では、フィジカル認識、クオリティオブサービス、トラフィックの分離やデッドロック回避などの複雑な制約に合成技術がどのように対処するかについて考察します。

astronaut

 

Request A Demo

ajaxloader

Crafted @ Lollypop.biz