ビルディング・ブロックとマクロ
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/05/18 13:42 UTC 版)
「システムLSI」の記事における「ビルディング・ブロックとマクロ」の解説
規模の大きな半導体素子となるため、全てを最初から設計していては開発に時間とコストが掛かりすぎるため、既に設計した回路部分を機能ごとにブロック化して使い回すことが行われる。こういったブロックをいくつか組み合わせば、求める回路設計の大部分が済むものもあり、こういったビルディング・ブロックによる設計手法での機能ごとにブロック化されたものは「マクロ」と呼ばれる。 社内の設計部門に「マクロ」を持っておけば、1度設計した機能は次の設計時にそのまま再使用することで期間短縮と費用の低減が図れ、こういった動作検証済みのマクロという設計資産をいくつも規格化して「ライブラリ」として保有しておけば、以降の設計は独自回路部分の設計とマクロ同士を結びつけるだけで回路設計が済むようになる。 再使用を前提にすればベーシックセルのような無駄だが短時間での設計が行える手法ではなく、ゲートやトランジスタのレベルから配置を最適化した設計手法が採れるために、結果として性能も向上する。高機能インターフェース回路や画像処理専用回路のような汎用的に求められる機能のマクロでは、自社製品用のマクロを他社に有償で使用権を販売したり、そういった有償での使用権販売だけを目的にマクロの開発を行う会社も存在し、このような使用権が販売されるマクロはIP(Intellectual Property、設計資産)と呼ばれる。 マクロには「ソフトマクロ」「ファームマクロ」「ハードマクロ」が存在する。 ソフトマクロ ソフトマクロはRTLやHDLといった形式で記述され、上記3種の中では最も設計自由度の高く詳細な記述がなされている反面、フロアプランやレイアウトは利用者側で行わねばならず、設計に時間と手間がかかり、性能も予測しにくい。 ファームマクロ ファームマクロはRTLやネットリストといった形式で記述され、上記3種の中では中間的な自由度となっている。レイアウトは利用者側で行わねばならないが、フロアプランまでは行われており、機能の変更は行いにくい。 ハードマクロ ハードマクロはRTLやネットリスト、レイアウトデータ、Delaylibといった形式で記述され、上記3種の中では最も自由度が少ない。レイアウトとタイミング設計までが完了しており、利用者は配置するだけである。設計時間と手間は最短最小で済んで性能もあらかじめ明らかであるが機能の変更は行えず、使用プロセスも限定される。 IPとして他社に使用権を販売する場合には、ファームマクロIPやハードマクロIPにすることでソフトマクロのようにRTLによる低位で論理構造まで見える情報は外部に出さないようにされる傾向がある。
※この「ビルディング・ブロックとマクロ」の解説は、「システムLSI」の解説の一部です。
「ビルディング・ブロックとマクロ」を含む「システムLSI」の記事については、「システムLSI」の概要を参照ください。
- ビルディング・ブロックとマクロのページへのリンク