(57)【要約】【課題】マイクロプロセッサ、バスなどの装置が多くのＳｏＣ計画に共用されるＭＰ‐ＳｏＣプラットフォームを提供する。【解決手段】ＭＰ‐ＳｏＣプラットフォームであり、複数のＳｏＣ計画を一つのチップ上に整合し、一つのＳｏＣプラットフォームを共用する。これによって、マイクロプロセッサ、チップバスアーキテクチャ、メモリ、周辺装置および入出力ポートなどは多くのＳｏＣ計画に共用されるので、各ＳｏＣの平均コストを低減できる。また、本発明はさらにＭＰ‐ＳｏＣプラットフォームの設計方法を提供し、設計者は各設計工程において、現有のデータおよび検証環境の有効な管理ができ、容易な設計工程が達成される。【選択図】  図７
2008020960.tif 000002
【特許請求の範囲】
【請求項１】
複数のＳｏＣ計画に共用されるＭＰ‐ＳｏＣプラットフォームであって、
前記ＳｏＣ計画の専用ＩＰの設置に使用される複数のＩＰブロックと、
前記ＩＰブロックに接続され、前記ＩＰブロックのデータ伝達に使用されるバスアーキテクチャと、
前記バスアーキテクチャに接続され、前記ＩＰブロックに共用される共用プロセッサと、
前記バスアーキテクチャに接続され、前記ＩＰブロック、前記共用プロセッサおよび前記バスアーキテクチャのデータを保存する内部メモリと
を備えることを特徴とするＭＰ‐ＳｏＣプラットフォーム。
【請求項２】
さらに、外部装置の接続に使用される外部インターフェイスを備えることを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項３】
前記外部装置は、外部メモリ、ターミナルシュミレーションモジュールおよびテストインターフェイスドライバを含むことを特徴とする請求項２記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項４】
前記外部メモリは、フラッシュメモリ、ＳＤＲＡＭ、ＲＯＭおよびＳＲＡＭを含むことを特徴とする請求項３記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項５】
前記バスアーキテクチャは、システムバスおよび周辺バスを含み、それぞれシステム装置および周辺部材に接続されることを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項６】
前記バスアーキテクチャは、ＡＭＢＡ、ＯＰＢ，ＰＬＢ、ＰＩｂｕｓ、ＰＩｂｕｓ２、ＭｂｕｓまたはＰａｌｍＢｕｓのチップバス標準を使用することを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項７】
前記システム装置は、コアプロセッサ、内部メモリおよびテストインターフェイスコントローラモジュールを含むことを特徴とする請求項５記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項８】
前記周辺部材は、カウンタ、割込コントローラ、再マッピング／ポーズコントローラを含むことを特徴とする請求項５記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項９】
さらに、分離機構およびアービトレーション機構を含むことを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項１０】
前記分離機構は、multiple−to−oneマルチプレクサを使用することを特徴とする請求項９記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項１１】
前記アービトレーション機構は、Fixed、Round  Robin、LotteryおよびＴＤＭを含むことを特徴とする請求項９記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項１２】
前記共用プロセッサは、さらにシナジスティックプロセッサを含むことを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項１３】
前記プラットフォームは、プラグアンドプレイプラットフォームであることを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォーム。
【請求項１４】
ＭＰ‐ＳｏＣプラットフォームの設計方法であって、前記プラットフォームは多くのＳｏＣ計画を整合し、多くの前記ＳｏＣ計画の専用ＩＰの設置に使用される複数のＩＰブロックを備え、前記方法は、
テスト環境計画を構築するステップと、
前記プラットフォームのハードウェア部材およびインターフェイスを定義するシステムアーキテクチャを開発するステップと、
前記システムアーキテクチャに基づいて実行プラットフォームを設計するステップと、
前記システムアーキテクチャに基づいて検証環境を定めるステップと、
前記システム環境計画およびシステムアーキテクチャに基づいてシステム規格およびＩＰ規格を規範するステップと、
前記システム規格およびＩＰ規格に基づいて前記専用ＩＰを設計するステップと、
前記専用ＩＰを前記実行プラットフォームに整合するステップと、
前記専用ＩＰを整合した実行プラットフォームに基づいて論理レイヤの設計を行い、ネットリストを生成するステップと、
前記論理レイヤ設計に基づいて実体レイヤの設計を行い、前記ＭＰ‐ＳｏＣプラットフォームを生成するステップと
を含むことを特徴とするＭＰ‐ＳｏＣプラットフォームの設計方法。
【請求項１５】
さらに、前記検証環境によって前記専用ＩＰをテストし、各専用ＩＰが前記実行プラットフォーム上で正常に運転するかどうかを確認するステップを含むことを特徴とする請求項１４記載のＭＰ‐ＳｏＣプラットフォームの設計方法。
【請求項１６】
前記システムアーキテクチャの開発のステップは、
前記専用ＩＰのシステム要求を研究するステップと、
前記システム要求に基づいてシステムメモリマッピングを構築するステップと、
前記システム要求に基づいてアービトレーション機構を設計するステップと、
前記システム要求に基づいて分離機構を設計するステップと
を含むことを特徴とする請求項１４記載のＭＰ‐ＳｏＣプラットフォームの設計方法。
【請求項１７】
前記専用ＩＰのシステム要求の研究のステップは、各専用ＩＰの運転に必要なメモリ空間、内部メモリの大きさおよび接続脚の数量を研究するステップを含むことを特徴とする請求項１６記載のＭＰ‐ＳｏＣプラットフォームの設計方法。
【請求項１８】
前記専用ＩＰを設計するステップは、
前記専用ＩＰの機能要求に基づいて個別のＲＴＬ設計を行い、前記専用ＩＰのＲＴＬプログラムコードを生成し、前記専用ＩＰのＲＴＬシュミレーションを行うステップと、
前記専用ＩＰ規格に基づいて、前記専用ＩＰのＲＴＬプログラムコードを実装回路に加え、前記専用ＩＰのＩＰ設計制約を生成するステップと、
前記ＩＰ設計制約および前記実装回路に加えられた専用ＩＰのＲＴＬプログラムコードの論理合成を行い、前記専用ＩＰのプリレイアウトゲートネットリストを生成するステップと、
前記実装回路に加えられた専用ＩＰのＲＴＬプログラムコード、前記ＩＰ設計制約および前記ＩＰプリレイアウトゲートネットリストに基づいてシステム整合を行うステップと
を含むことを特徴とする請求項１４記載のＭＰ‐ＳｏＣプラットフォームの設計方法。
【請求項１９】
前記論理レイヤの設計を行い、ネットリストを生成するステップは、
前記専用ＩＰの実行プラットフォームに基づいてシステムＲＴＬシュミレーションを行い、システム設計制約を生成するステップと、
前記専用ＩＰのＩＰ設計制約、実装回路に加えられた専用ＩＰのＲＴＬプログラムコードおよび前記ＩＰのＩＰプリレイアウトゲートネットリストに基づいて論理合成を行い、システムプリレイアウトゲートネットリストを生成するステップと、
前記システムプリレイアウトゲートネットリストのタイミング分析を行い、タイミング報告およびＳＤＦファイルを取得するステップと、
前記タイミング報告および前記ＳＤＦファイルを前記検証環境に整合してシステムゲートシュミレーションを行うステップと
を含むことを特徴とする請求項１８記載のＭＰ‐ＳｏＣプラットフォームの設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路製造技術および電子設計自動化（ＥＤＡ）技術におけるＭＰ‐ＳｏＣ（Multi−Project  System−on−Chip）プラットフォームに関する。
【背景技術】
【０００２】
最先端の集積回路（ＩＣ）製造技術および電子設計自動化（ＥＤＡ）技術の下、ＳｏＣ（System−on−Chip）設計技術は益々実際的なものとなっている。ＳｏＣは一つの完全なシステムを一チップ上に整合することができ、従来技術による設計よりも低コスト、高パワーおよび高速度である。現在のＳｏＣ設計研究において、プラットフォーム式ＳｏＣ設計法が最もよく使用される設計方法であり、プラットフォームは建築物のような骨組みを備え、全体の配置およびチップと接続され、構造が相連なるハードウェア／ソフトウェアのＩＰ（Silicon  Intellectual  Property）ブロックから構成される。良好な定義および公認のＳｏＣプラットフォームを基礎として、設計者は特定のＩＰブロックの機能特性および組み込みソフトウェアのライティングに専念すればよく、小規模の設計集団であっても、完全なＳｏＣを設計できる。
【０００３】
プラットフォーム式ＳｏＣ設計法は学術性ＳｏＣの研究人員にとって有用であるが、製造コストが高いので、学術性ＳｏＣ設計計画ではシリコンプロトタイプを実際に作り出す機会は容易ではない。学術会が設計するＳｏＣは通常大量のウェハ面積を占用し、この種のＳｏＣにおけるマイクロプロセッサ、内部メモリ、バスアーキテクチャおよび入出力ポートなど大部分の装置はすべて第三者による設計であるので、限りある予算の下、この種のＳｏＣは実施機会を得にくく、バーチャルプロトタイピング（Virtual  Prototyping）検証またはラピッドプロトタイピング（Rapid  Prototyping）検証によってＳｏＣを検証するしかなく、例えば、Mentor  Graphics  の  Seamless  ＣＶＥおよび  CoWare  の  Convergen  ＳＣソフトウェアなどはハードウェア／ソフトウェアのコ・ベリフィケーション環境を提供することによってＳｏＣのバーチャルプロトタイピング検証を行い、また、例えば、Xilinx  の  Virtex 2、Altera  の  Nios 2  および  Aptix  の  System  Explorer  ＭＰ４ＣＦなどの製品は組み込みプロセッサを備えるＦＰＧＡハードウェア発展システムを提供することによってＳｏＣのプロトタイピング実体検証を行う。しかし、この二種の検証方法では結局実際のＳｏＣ検証を提供することはできないので、ＳｏＣ実施の強い要求に応えるために、ＭＰＣ（Multi−Project  Chip）サービスが例えば台湾の国家晶片系統設計中心（National  Applied  Research  Laboratories  National  Chip  Implementation  Center：ＣＩＣ）、フランスのＣＭＰおよび韓国のＩＤＥＳで採用され、フォトマスクを共有する概念の下、フォトマスクおよびチップ製造のコストが低減されたが、ＭＰＣサービスは未だにＳｏＣを実現するのに必要なシリコン面積を減少させることはできていない。
【０００４】
そこで、多くのＳｏＣ計画を整合し、各ＳｏＣ計画のシリコン面積および平均コストを低減できるＳｏＣプラットフォームの開発が望まれていた。
【特許文献１】特開２００６−１７３５４２号公報
【特許文献２】特開２００６−４８６９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の第１の目的は、マイクロプロセッサ、バスなどの装置が多くのＳｏＣ計画に共用されるＭＰ‐ＳｏＣプラットフォームを提供することにある。
本発明の第２の目的は、多くのＳｏＣ計画をＭＰ‐ＳｏＣに整合し、各ＳｏＣ計画の平均コストを低減することにある。
本発明の第３の目的は、ＭＰ‐ＳｏＣプラットフォームの設計方法を提供することにある。
【課題を解決するための手段】
【０００６】
前述の課題を解決するために、請求項１の発明は、複数のＳｏＣ計画に共用されるＭＰ‐ＳｏＣプラットフォームであって、ＳｏＣ計画の専用ＩＰの設置に使用される複数のＩＰブロックと、ＩＰブロックに接続され、ＩＰブロックのデータ伝達に使用されるバスアーキテクチャと、バスアーキテクチャに接続され、ＩＰブロックに共用される共用プロセッサと、バスアーキテクチャに接続され、ＩＰブロック、共用プロセッサおよびバスアーキテクチャのデータを保存する内部メモリとを備えることを特徴とするＭＰ‐ＳｏＣプラットフォームである。
【０００７】
請求項２の発明は、さらに、外部装置の接続に使用される外部インターフェイスを備えることを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォームである。
【０００８】
請求項３の発明は、外部装置は、外部メモリ、ターミナルシュミレーションモジュールおよびテストインターフェイスドライバを含むことを特徴とする請求項２記載のＭＰ‐ＳｏＣプラットフォームである。
【０００９】
請求項４の発明は、外部メモリは、フラッシュメモリ、ＳＤＲＡＭ、ＲＯＭおよびＳＲＡＭを含むことを特徴とする請求項３記載のＭＰ‐ＳｏＣプラットフォームである。
【００１０】
請求項５の発明は、バスアーキテクチャは、システムバスおよび周辺バスを含み、それぞれシステム装置および周辺部材に接続されることを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォームである。
【００１１】
請求項６の発明は、バスアーキテクチャは、ＡＭＢＡ、ＯＰＢ，ＰＬＢ、ＰＩｂｕｓ、ＰＩｂｕｓ２、ＭｂｕｓまたはＰａｌｍＢｕｓのチップバス標準を使用することを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォームである。
【００１２】
請求項７の発明は、システム装置は、コアプロセッサ、内部メモリおよびテストインターフェイスコントローラモジュールを含むことを特徴とする請求項５記載のＭＰ‐ＳｏＣプラットフォームである。
【００１３】
請求項８の発明は、周辺部材は、カウンタ、割込コントローラ、再マッピング／ポーズコントローラを含むことを特徴とする請求項５記載のＭＰ‐ＳｏＣプラットフォームである。
【００１４】
請求項９の発明は、さらに、分離機構およびアービトレーション機構を含むことを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォームである。
【００１５】
請求項１０の発明は、分離機構は、multiple−to−oneマルチプレクサを使用することを特徴とする請求項９記載のＭＰ‐ＳｏＣプラットフォームである。
【００１６】
請求項１１の発明は、アービトレーション機構は、Fixed、Round  Robin、LotteryおよびＴＤＭを含むことを特徴とする請求項９記載のＭＰ‐ＳｏＣプラットフォームである。
【００１７】
請求項１２の発明は、共用プロセッサは、さらにシナジスティックプロセッサを含むことを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォームである。
【００１８】
請求項１３の発明は、プラットフォームは、プラグアンドプレイプラットフォームであることを特徴とする請求項１記載のＭＰ‐ＳｏＣプラットフォームである。
【００１９】
請求項１４の発明は、ＭＰ‐ＳｏＣプラットフォームの設計方法であって、プラットフォームは多くのＳｏＣ計画を整合し、多くのＳｏＣ計画の専用ＩＰの設置に使用される複数のＩＰブロックを備え、その方法は、テスト環境計画を構築するステップと、プラットフォームのハードウェア部材およびインターフェイスを定義するシステムアーキテクチャを開発するステップと、システムアーキテクチャに基づいて実行プラットフォームを設計するステップと、システムアーキテクチャに基づいて検証環境を定めるステップと、システム環境計画およびシステムアーキテクチャに基づいてシステム規格およびＩＰ規格を規範するステップと、システム規格およびＩＰ規格に基づいて専用ＩＰを設計するステップと、専用ＩＰを実行プラットフォームに整合するステップと、専用ＩＰを整合した実行プラットフォームに基づいて論理レイヤの設計を行い、ネットリストを生成するステップと、論理レイヤ設計に基づいて実体レイヤの設計を行い、ＭＰ‐ＳｏＣプラットフォームを生成するステップとを含むことを特徴とするＭＰ‐ＳｏＣプラットフォームの設計方法である。
【００２０】
請求項１５の発明は、さらに、検証環境によって専用ＩＰをテストし、各専用ＩＰが実行プラットフォーム上で正常に運転するかどうかを確認するステップを含むことを特徴とする請求項１４記載のＭＰ‐ＳｏＣプラットフォームの設計方法である。
【００２１】
請求項１６の発明は、システムアーキテクチャの開発のステップは、専用ＩＰのシステム要求を研究するステップと、システム要求に基づいてシステムメモリマッピングを構築するステップと、システム要求に基づいてアービトレーション機構を設計するステップと、システム要求に基づいて分離機構を設計するステップとを含むことを特徴とする請求項１４記載のＭＰ‐ＳｏＣプラットフォームの設計方法である。
【００２２】
請求項１７の発明は、専用ＩＰのシステム要求の研究のステップは、各専用ＩＰの運転に必要なメモリ空間、内部メモリの大きさおよび接続脚の数量を研究するステップを含むことを特徴とする請求項１６記載のＭＰ‐ＳｏＣプラットフォームの設計方法である。
【００２３】
請求項１８の発明は、専用ＩＰを設計するステップは、専用ＩＰの機能要求に基づいて個別のＲＴＬ設計を行い、専用ＩＰのＲＴＬプログラムコードを生成し、専用ＩＰのＲＴＬシュミレーションを行うステップと、専用ＩＰ規格に基づいて、専用ＩＰのＲＴＬプログラムコードを実装回路に加え、専用ＩＰのＩＰ設計制約を生成するステップと、ＩＰ設計制約および実装回路に加えられた専用ＩＰのＲＴＬプログラムコードの論理合成を行い、専用ＩＰのプリレイアウトゲートネットリストを生成するステップと、実装回路に加えられた専用ＩＰのＲＴＬプログラムコード、ＩＰ設計制約およびＩＰプリレイアウトゲートネットリストに基づいてシステム整合を行うステップとを含むことを特徴とする請求項１４記載のＭＰ‐ＳｏＣプラットフォームの設計方法である。
【００２４】
請求項１９の発明は、論理レイヤの設計を行い、ネットリストを生成するステップは、専用ＩＰの実行プラットフォームに基づいてシステムＲＴＬシュミレーションを行い、システム設計制約を生成するステップと、専用ＩＰのＩＰ設計制約、実装回路に加えられた専用ＩＰのＲＴＬプログラムコードおよびＩＰのＩＰプリレイアウトゲートネットリストに基づいて論理合成を行い、システムプリレイアウトゲートネットリストを生成するステップと、システムプリレイアウトゲートネットリストのタイミング分析を行い、タイミング報告およびＳＤＦファイルを取得するステップと、タイミング報告およびＳＤＦファイルを検証環境に整合してシステムゲートシュミレーションを行うステップとを含むことを特徴とする請求項１８記載のＭＰ‐ＳｏＣプラットフォームの設計方法である。
【発明の効果】
【００２５】
本発明によって、ＭＰ‐ＳｏＣプラットフォーム（マイクロプロセッサ、チップバスアーキテクチャ、メモリ、周辺装置および入出力ポートなど）は多くのＳｏＣ計画に共用されるので、単一のＳｏＣ計画で必要なシリコン面積および製造コストを低減できる。また、本発明はさらにＭＰ‐ＳｏＣプラットフォームの設計方法を提供し、設計者は各設計工程において、現有のデータの有効な管理ができ、検証環境の構築を行うことができる。
【発明を実施するための最良の形態】
【００２６】
図１は個別にＮ個のＳｏＣ計画を実施した状態およびＭＰ‐ＳｏＣ概念によってＮ個のＳｏＣ計画を実現したチップ面積を示す模式図である。仮に単一のＳｏＣ計画１０を実現するために４単位のチップ面積が必要な場合、図１の左側に示すように、その中の３単位が共用区域１４（図：白色部分）であり、マイクロプロセッサ、バスアーキテクチャ、メモリなどのその他のＳｏＣ計画に共用されることが可能な装置を含み、１単位がＳｏＣ計画１０中のその他のＳｏＣ計画１０に共用できない専用ＩＰ区域１２（図：灰色部分）であり、個別にＮ個のＳｏＣ計画１０を実現するのに全部で４Ｎ個単位のチップ面積が必要である。ＭＰ‐ＳｏＣの概念は図１の右側に示すように、Ｎ個のＳｏＣ計画の専用ＩＰ区域１２がＭＰ‐ＳｏＣ１５上に整合され、３単位の共用区域１４を共用し、Ｎ個のＳｏＣ計画が整合されたＭＰ‐ＳｏＣ１５は全部でＮ＋３個単位のチップ面積が必要である。
【００２７】
実際にＮ個の専用ＩＰ区域１２を整合する場合、余分なチップ面積が必要となるので、各計算式を用いて更なる説明を行う。
【００２８】
仮に、Ｎ個のＳｏＣ計画を共有する場合、Atotalは個別にＮ個のＳｏＣ計画を実現する場合に必要な総面積を示す。Atotalは各ＳｏＣ計画中において共有される素子面積を示し、つまり、未来のプラットフォームにおいて共用可能な面積である。AIP,iは第ｉ個のＳｏＣ計画の専用ＩＰの面積を示す。Aoverhead1,iは第ｉ個のＳｏＣ計画の専用ＩＰを個別のＳｏＣ内に整合する場合必要な余分の面積を示す。上述の仮定に基づき、個別にＮ個のＳｏＣ計画を実現するのに必要な面積Atotalは数式１で表される。
（数式１）
2008020960.tif 000003
【００２９】
仮にＭＰ‐ＳｏＣの概念を使用してこのＮ個のＳｏＣ計画を設計した場合、ＳｏＣプラットフォームの面積Asharedを共用することによって、全体のチップコストは約（Ｎ−１）×Ashared個の面積単位を減少できるが、第ｉ個のＳｏＣ計画の専用ＩＰを整合するのに必要な余分な必要面積Aoverhead1,iを考慮する必要があるので、ＭＰ‐ＳｏＣ概念によってＮ個のＳｏＣ計画を実現するために必要なＭＰ‐ＳｏＣ面積AMP-SoCは数式２で表され、節約できる面積Asavingは数式３で表される。
（数式２）
2008020960.tif 000004
（数式３）
2008020960.tif 000005
【００３０】
従って節約できる面積率Rsavingは、数式４で表される。
（数式４）
2008020960.tif 000006
【００３１】
Aoverhead,iはAoverhead2,iとAoverhead1,iとの差を表し、数式４によって得られる。Ｎが大きくなればなるほど節約できるチップ面積は大きくなる。例えば、図１の仮説を数式４に代入した場合、Aoverhead2,i＝０、Aoverhead1,i＝０、Ashared＝３、AIP,i＝1となり、図１の面積の節約率Rsavingは数式５で表される。
（数式５）
2008020960.tif 000007
【００３２】
整合されたＳｏＣ計画が八個の場合、即ちＮ＝８のとき、数式５に基づいて６６％の面積節約率となる。以上の説明から分かるように、ＭＰ‐ＳｏＣの概念を通じて一つのプラットフォームを共用し、各ＳｏＣ計画の平均コストを大幅に減少できる。
【００３３】
ＭＰ‐ＳｏＣシステムは多くのＳｏＣ計画を整合する必要があり、各ＳｏＣ計画は個別のソフトウェアおよびハードウェアを含むので、ＭＰ‐ＳｏＣシステムの設計および検証作業は一般のＳｏＣ設計よりも困難且つ時間が掛かる。従って、如何にＭＰ‐ＳｏＣシステムの設計に使用される電子設計自動化ソフトウェアツールの整合および管理を行い、完全且つ使用に便利なＭＰ‐ＳｏＣ設計、検証環境および工程を提供することは最も重要なことである。設計者が迅速且つ便利にソフトウェアおよびハードウェアのインストール、アンインストール、修正およびその実行可能性の検証を行うために、本発明はプラットフォーム式のＳｏＣ設計を採用するが、直接従来技術のプラットフォーム式のＳｏＣ設計方法を採用してＭＰ‐ＳｏＣシステムを実現する場合、検証および整合上、多くの困難があるので、これらの問題を解決するために、本発明は電子設計自動化ソフトウェアツールを整合し、図２に示すようなＭＰ‐ＳｏＣ設計工程を開発し、工程中必要な検証環境を提供する。
【００３４】
図２は本発明のＭＰ‐ＳｏＣの設計工程を示し、先ず最初にＭＰ‐ＳｏＣシステムに関わる各ＳｏＣ計画の設計者は共同でテスト環境計画２０を製作・構築し、システムアーキテクチャ２２を開発する必要がある。この段階において、ＭＰ‐ＳｏＣシステム上のハードウェア部材およびインターフェイスはすべて定義が完成され、続いて実行プラットフォーム２８を設計し、チップ全体の設計に必要な検証環境３０を定め、同時にシステム規格２４およびＩＰ規格２６を規範する。各ＳｏＣ計画の設計者はＩＰ規格２６に基づいてＩＰブロック設計３２を行い、専用ＩＰ３４を設計し、各専用ＩＰ３４がすべて検証環境３０の下で運転できるかどうかの確認を行う。各ＳｏＣ計画の専用ＩＰ３４の設計が完成し、検証環境３０において良好な運転がなされてから、システム整合者はすべての専用ＩＰ３４を実行プラットフォーム２８内に収集し、論理レイヤ設計３６を行い、ネットリスト３８を生成し、実体レイヤ設計４０を行い、最後に完成したレイアウト図４２が発行される。
【００３５】
図２の設計工程に基づいて、本発明は一実施例を提供する。図２のシステムアーキテクチャの開発２２、ＩＰブロック設計３２、論理レイヤ設計３６および実体レイヤ設計４０の実施方式を詳細に説明する。図３は本実施例がシステムアーキテクチャの開発２２を行う工程を示す。先ず、各ＳｏＣ計画の専用ＩＰに対してＩＰ規格研究２２０を行い、各専用ＩＰのシステム要求２２２（例えば必要なメモリ空間などの要求）を収集し、ＭＰ‐ＳｏＣシステムのメモリマップ（Memory  Map）２２４を作り（システムメモリマッピング：224）、アービトレーション機構２２６および分離機構２２８を設計し、ＭＰ‐ＳｏＣハードウェア記述言語プラットフォーム２３０を製作する。最後に図２のＭＰ‐ＳｏＣシステムを実現するのに必要な実行プラットフォーム２８および検証環境３０を開発し、同時にシステム企画２４およびＩＰ規格２６を設立する。専用ＩＰが必要なメモリ空間、内部メモリの大きさおよび外部接続脚の数量などの制限を含み、これらの収集された専用ＩＰ規格およびシステム要求などのデータは次のＩＰブロック設計３２、論理レイヤ設計３６および実体レイヤ設計４０の工程に運用される。
【００３６】
図４は本実施例がＩＰブロック設計３２を行うＩＰブロック設計の工程を示す。各ＳｏＣ計画の設計者が専用ＩＰ３４を設計するとき使用される。各ＳｏＣ計画の設計者が図２のＩＰ規格２６および各ＳｏＣ計画の専用ＩＰ機能要求３２０に基づいて、専用ＩＰのＲＴＬ（Register  Transfer  Level）の設計を行う。先ず専用ＩＰ  ＲＴＬコーディング３２２を行い、専用ＩＰ  ＲＴＬプログラムコード３２４を生成し、専用ＩＰ  ＲＴＬシュミレーション３２６を通じてその正確性を検証し、ＩＰ規格２６に基づいて専用ＩＰのＲＴＬプログラムコード３２４を実装回路３２８に加えると（実装回路の増加：328）、専用ＩＰ＋実装回路ＲＴＬ３３０が生成される。その後、専用ＩＰ＋実装回路ＲＴＬ３３０を検証環境３０に整合し、単一の専用ＩＰのシステムＲＴＬシュミレーション３３２を行い（システムRTLモジュール（単一IP）：332）、各ＳｏＣ計画の設計者はＩＰ規格２６に基づいてＩＰ設計制約ライティング３３４を行う。その後、ＩＰ設計制約３３６および専用ＩＰ＋実装回路ＲＴＬ３３０を合成器に送って論理合成（Logic  Synthesis）３３８を行い、ＩＰプリレイアウトゲートネットリスト（IP  Pre−layout  Gate−level  Netlist）３４０生成し、ＩＰプリレイアウトゲートネットリスト３４０を検証環境３０に整合し、システムゲートシュミレーション３４２の検証を行う。最後に、各ＳｏＣ計画の設計者はそれぞれの専用ＩＰ＋実装回路ＲＴＬ３３０、ＩＰ設計制約３３６およびＩＰプリレイアウトゲートネットリスト３４０をシステム整合者に渡し、ＭＰ‐ＳｏＣ全体のシステム整合３４４を行う。図２に示すように、この検証段階では、各専用ＩＰ３４は実行プラットフォーム２８および検証環境３０を通じて単一の専用ＩＰの検証を行い、各専用ＩＰがＭＰ‐ＳｏＣシステムプラットフォームで正常に作業を行うかの確認を行う。
【００３７】
図５は本実施例が図２の論理レイヤ設計３６を行う実施工程を示す。各ＳｏＣ計画の専用ＩＰ３４が設計され、検証が完了した後、すべてのＳｏＣ計画の専用ＩＰ＋実装回路ＲＴＬ３３０を整合し、チップ全体のシステムＲＴＬシュミレーション３６０（システムRTLモジュール（全てのIP））を行う。システム設計制約３６２を生成した後、システム設計制約３６２、ＩＰ設計制約３３６、ＩＰプリレイアウトゲートネットリスト３４０およびシステムＲＴＬシュミレーション３６０内に生成されるシステムＲＴＬプログラムコードに基づいて論理合成３６４を行い、システム全体のプリレイアウトゲートネットリスト３６６を生成し、プリレイアウトゲートネットリストのタイミング分析・解析（Timing  Analysis）３６８を行い、タイミング報告およびＳＤＦ（Standard  Delay  Format）ファイル３７０を取得する。最後にタイミング報告およびＳＤＦファイル３７０を検証環境３０に整合し、すべてのＩＰのシステムゲートシュミレーション３７２を行う。
【００３８】
本実施例の論理レイヤ設計３６が完成した後、図６に示す実体レイヤ設計４０の工程に入る。Ｐ＆Ｒ（Placement  ＆  Route）４００は図５のシステム設計制約３６２、システムプリレイアウトゲートネットリスト３６６およびＩＰ設計制約３３６に基づいて自動レイアウトを行い、対応するチップポストレイアウトゲートネットリスト４０２およびＧＤＳ  ２（Graphic  Date  System  ２）データ形式のレイアウト図４０４を生成する。その後、ＲＣ抽出４０６を通じて相互接続ＲＣ４０８を取得し、タイミング分析４１０を行い、タイミング報告およびＳＤＦファイル４１２を取得し、検証環境に合わせて全てのＩＰのシステムゲートシュミレーション４１４を行い、最後に実態検証４１６を行い、完成したレイアウト図４２をソフトウェアメーカに提供する。
【００３９】
前述の工程後、本実施例はテストチップ４４を設計し、そのシステムブロック図を図７に示す。テストチップ４４は八個のＳｏＣ計画を整合し、この八個のＳｏＣ計画の専用ＩＰは、通信系統に使用されるＡＥＳ（Advanced  Encryption  Standard）処理コア４４４８、静態映像圧縮に使用されるＤＷＴ（Discrete  Wavelet  Transform）処理コア４４５０、Ａ７  ＲＩＳＣ（Reduced  Instruction  Set  Computer）プロセッサ４４３６、ＭＰ３アプリケーションに使用されるＳＤＣＴ  ４（Scaled  Discrete  Cosine  Transform  type  ４）処理コア４４３８、ＩＭＤＣＴ（Inverse  Modified  Discrete  Cosine  Transform）処理コア４４４０、ＳｏＣテストに使用されるＡＴＰ１（Advanced  Test  Platform1）処理コア４４２８、ＡＴＰ２処理コア４４３０および動態映像圧縮に使用されるＭＥ（Motion  Estimation）処理コア４４２２である。また、この八個のＳｏＣ計画以外にさらにシナジスティックプロセッサ４４１２が含まれるので、テストチップ４４の応用範囲は通信、映像処理および映像／音声圧縮が含まれる。テストチップ４４はチップバス標準が使用され、よく見られるチップバス標準は、ＡＲＭのＡＭＢＡ（Advanced  Microcontroller  Bus  Architecture）、ＩＢＭのＯＰＢ（On−Chip  Peripheral  Bus）、ＰＬＢ（Processor  Local  Bus）、ＯＭＩのＰＩｂｕｓ、ＰＩｂｕｓ２およびＰＡＬＭＣＨＩＰのＭｂｕｓ、ＰａｌｍＢｕｓなどである。本実施例ではＡＲＭのＡＭＢＡが採用され、高機能システム装置の接続に使用されるＡＨＢ（ARM  high  performance  bus）４４３２および低コストの周辺装置の接続に使用されるＡＰＢ（ARM  peripheral  bus）４４５２を含む。その他の実施例においてはバスアーキテクチャはその他のチップバス標準を使用することができる。ＡＨＢ４４３２は実装回路４４１６を経由してＡＲＭ９２２Ｔコアプロセッサ４４１０と接続され、その他のＡＨＢ４４３２に接続されるシステム装置は、外部メモリインターフェイス４４１４、リセットコントローラ４４１８、テストインターフェイスコントローラ４４２０、ＭＥ処理コア４４２２、ＭｕｘＭ２Ｓ（Multiplexer  of  Master  to  Slave）４４２４、ＭｕｘＳ２Ｍ（Multiplexer  of  Master  to  Master）４４２６、ＡＴＰ１処理コア４４２８、ＡＴＰ２処理コア４４３０、Ａ７ＲＩＳＣプロセッサ４４３６、ＳＤＣＴ４処理コア４４３８、ＩＭＤＣＴ処理コア４４４０、アービトレイタ４４４２、デコーダ４４４４、内部メモリ４４４６、ＡＥＳ処理コア４４４８およびＤＷＴ処理コア４４５０などを含み、ＡＨＢ４４３２はＡＰＢブリッジ４４３４を経由してＡＰＢ４４５２に接続され、ＡＰＢ４４５２に接続された周辺部材は割込コントローラ４４５４、再マッピング（Remap）／ポーズコントローラ４４５６、カウンタ４４５８およびＭｕｘＰ２Ｂ（Multiplexer  of  Peripheral  to  Bridge）４４６０を含む。チップ外の接続については、テストインターフェイスコントローラ４４２０がチップ外のテストインターフェイスに接続され、外部メモリインターフェイス４４１４は外部バス４４６２を経由して外部装置に接続される。ＡＲＭ９２２Ｔコアプロセッサ４４１０およびＡ７  ＲＩＳＣプロセッサ４４３６はチップ外からのデバッガ信号および割込コントローラ４４５４が接続された割込信号にそれぞれ接続される。シナジスティックプロセッサ４４１２はＡＲ���９２２Ｔコアプロセッサ４４１０に接続される。外部メモリインターフェイス４４１４に接続される外部装置は、外部メモリ４４６４、外部メモリ４４７２、ターミナルシュミレーションモジュール４４６８およびテストインターフェイスドライバ４４７０を含み、その中で、外部メモリ４４６４、４４７２はそれぞれ異なるメモリ配置であり、外部メモリ４４６４は外部のＲＯＭ（Read−only  Memory）およびＳＲＡＭ（Static  Random  Access  Memory）であり、外部メモリ４４７２はフラッシュメモリおよびＳＤＲＡＭであり、使用者の必要に応じて適切なメモリが使用される。
【００４０】
低コストを実現させる設計を考慮して、テストチップ４４は共有型のメモリ構造が採用され、メモリに掛かるコストを低減する。図８はテストチップ４４のシステムメモリマッピングを示し、そのメモリ空間は４Ｇバイトを有する。図８の左側に示すように、この４Ｇバイトには内部メモリ、外部ＲＡＭ、ＲＯＭ、リトライスレーブ（Retry  Slave）、周辺バスおよびＡＲＭ９２２Ｔテストに使用されるメモリ空間が設計され、各ＳｏＣ計画の専用ＩＰは０×６０００＿００００〜０×８０００＿００００間の区域を使用し、残りの空間は未定義である。０×６０００＿００００〜０×８０００＿００００間のメモリ設計は図８の右側に示すものであり、各専用ＩＰの要求およびデコーダ負担の軽減のために、本実施例は各専用ＩＰに１ＭＢのメモリ空間を与え、未定義空間は新たに加えた装置に使用される。
【００４１】
テストチップ４４は多くの専用ＩＰを整合するので、適当な分離およびアートビレーション機構が必要であり、各専用ＩＰ間の相互影響によってシステム機能が低下するのを防ぐために、先ず考慮しなければならないのはバスマスタ端装置（Master）からの異常要求である。図７に示すように、テストチップ４４上のＡＨＢ４４３２には全部で６個のマスタ端が接続され、テストインタフェイスコントローラ４４２０、ポーズコントローラ（ＡＰＢ４４５２上の再マッピング／ポーズコントローラから引き出された１ビット信号であり、図示せず）、ＡＴＰ１  ４４２８、ＡＴＰ２  ４４３０、ＡＲＭ９２２Ｔコアプロセッサ４４１０およびＡ７  ＲＩＳＣプロセッサ４４３６を含む。これらのマスタ端が放出する異常要求がシステム全体の運転に影響を与えるのを防止するために、テストチップ４４の分離機構は、図９に示すように、四個の２‐ｔｏ‐１マルチプレクサ６４を含む。これらのマルチプレクサは外部入力信号によって制御され、それぞれどのマスタ端が運転可能かを制御し、アービトレイタ４４４２はバス上のアービトレーション機構であって、よく見られるバスアービトレーション機構は、Fixed、Round  Robin、LotteryおよびＴＤＭの四種の方式であり、アービトレーション方式の選択は、主にコストおよび速度における考慮がなされる。表１はＴＳＭＣ  ０．１３μｍの製作工程を実施するとき、異なるアービトレーション方式で必要なアービトレーション区域面積を示す。Round  Robin、LotteryおよびＴＤＭ演算法はFixedよりもすぐれた効果を提供できるが、最低の面積コストを得るためにはテストチップ４４はＦｉｘｅｄを優先演算法として採用し、テストインターフェイスコントローラ４４２０はアービトレイタ４４４２が選択する第１の優先順位、ポーズコントローラは第２の優先順位と続く。もう一つの実施例において、アービトレーション機構はRound  Robin、LotteryまたはＴＤＭ演算法を使用する。
（表１）
2008020960.tif 000008
【００４２】
本実施例の実行プラットフォームは図１０に示すように、複数の点線のブロックは各専用ＩＰに保留された専用ＩＰの空ブロック６８を示し、その他の実線のブロックは各専用ＩＰの共用部分である。各ＳｏＣ計画の設計者はシステムメモリマッピングに基づいてアプリケーションプログラムを完成すればよく、専用ＩＰを空ブロック６８に接続してテストを行うことができる。この実行プラットフォームはプラグアンドプレイのプラットフォームであり、各専用ＩＰを迅速にプラットフォーム上に整合してテストを行うことができる。また、ターミナルシュミレーションモジュール４４６８はシュミレーション過程において印刷メッセージを提供する窓口となることができ、使用者がデバッグを行うのを助ける。
【００４３】
図１１は本実施例の検証環境を示し、設計者は迅速に各種異質性アプリケーションの検証を行うことができる。まず、アセンブラ言語３０２またはＣ言語３０４によってアプリケーションプログラムをライティングし、アセンブラ３０６またはコンパイラ３０８によってオブジェクトファイル３１０に変換した後、リンカ３１２を使用して実行可能ファイル３１４にし、その後、データ形式変換ツール３１６を利用してＲＯＭまたはフラッシュファイル形式３１８に変換し、これらのファイルはシュミレーション検証時のメモリモジュールの初期化に用いることができる。
【００４４】
図１２はテストチップ４４の配置図であり、ＴＳＭＣ０．１３μｍ１Ｐ８Ｎ論理製造工程によって製造され、２５６接続脚の規格で実装され、図１２から分かるように、ＡＲＭ９２２Ｔコアプロセッサ４４１０はテストチップ４４全体の中で大きなチップ面積を占める。
【００４５】
チップテストに関して、本実施例は二種の方式でテストを行う。第一種はＡｇｉｌｅｎｔ  ９３０００  ＡＴＥテストであり、この種のテスト方式はチップにシュミレーション過程においてキャプチャリングしたテストベクトルを入力し、出力脚においてシュミレーション結果を比較するものである。図１３はテストチップ４４がＡＴＥテスト中に用いられたキャリア基板７０を示し、現在実際に測定された作業周波数は１００ＭＨｚである。もう一つのテスト方式は実験基板７２を用いたテストであり、図１４はテストチップ４４の実験基板７２を示し、実験基板７２上にはフラッシュメモリ、ＳＤＲＡＭ、Ｍｕｌｔｉ‐ＩＣＥコネクタ、論理分析装置コネクタおよび図生成装置コネクタが設けられる。テストを開始するとき、アプリケーションプログラムが初期化されてフラッシュメモリに入力され、その後ホストコンピュータがＩＣＥインターフェイスを利用してシステム検証およびデバッグを行い、デバッグ過程において、論理分析装置および図生成装置を接続してデバッグ工程の補助を行うことができる。
【図面の簡単な説明】
【００４６】
【図１】個別にＮ個のＳｏＣ計画を実施した状態およびＭＰ‐ＳｏＣ概念によってＮ個のＳｏＣ計画を実現したチップ面積を示す模式図である。
【図２】本発明の全体の設計工程を示す流れ図である。
【図３】本発明の一実施例によるシステムアーキテクチャの設計工程を示す流れ図である。
【図４】図２に示す実施例のＩＰブロックの設計工程を示す流れ図である。
【図５】図２に示す実施例の論理レイヤの設計工程を示す流れ図である。
【図６】図２に示す実施例の実体レイヤの設計工程を示す流れ図である。
【図７】図６に示す実施例が設計したテストチップのシステムを示すブロック図である。
【図８】図７に示すテストチップのシステムメモリマッピングを示す模式図である。
【図９】図７に示すテストチップの分離機構を示すブロック図である。
【図１０】図３に示す実施例の実行プラットフォームを示すブロック図である。
【図１１】図３に示す実施例の検証環境を示す流れ図である。
【図１２】図７に示すテストチップの配置図である。
【図１３】ＡＴＥによって図７に示すテストチップをテストする状態を示す写真である。
【図１４】実験基板によって図７に示すテストチップをテストする状態を示す写真である。
【符号の説明】
【００４７】
１０  ＳｏＣ（System−on−Chip）計画
１２  専用ＩＰ区域
１４  共用区域
２０  テスト環境計画の構築・製作        
２２  システムアーキテクチャの開発
２２０  ＩＰ規格研究
２２２  ＩＰシステム要求
２２４  システムメモリマッピング
２２６  アービトレーション機構
２２８  分離機構
２３０  ＭＰ‐ＳｏＣハードウェア記述言語プラットフォーム
２４  システム規格
２６  ＩＰ規格
２８  実行プラットフォーム
３０  検証環境
３０２  アセンブラ言語
３０４  Ｃ言語
３０６  アセンブラ
３０８  コンパイラ
３１０  オブジェクトファイル
３１２  リンカ
３１４  実行可能ファイル
３１６  ファイル形式交換ツール
３１８  ＲＯＭまたはフラッシュファイル形式
３２    ＩＰブロック設計
３２０  専用ＩＰ機能要求
３２２  専用ＩＰ  ＲＴＬコーディング
３２４  専用ＩＰ  ＲＴＬプログラムコード
３２６  専用ＩＰ  ＲＴＬシュミレーション
３２８  実装回路の増加
３３０  専用ＩＰ＋実装回路ＲＴＬ
３３２  システムＲＴＬシュミレーション（単一ＩＰ）
３３４  ＩＰ設計制約ライティング
３３６  ＩＰ設計制約
３３８  論理合成
３４  専用ＩＰ
３４０  ＩＰプリレイアウトゲートネットリスト
３４２  システムゲートシュミレーション
３４４  システム整合
３６  論理レイヤ設計
３６０  システムＲＴＬシュミレーション（すべてのＩＰ）
３６２  システム設計制約
３６４  論理合成
３６６  システムプリレイアウトゲートネットリスト
３６８  タイミング分析（解析）
３７０  タイミング報告およびＳＤＦファイル
３７２  システムゲートシュミレーション（すべてのＩＰ）
３８  ネットリスト
４０  実体レイヤ設計
４００  Ｐ＆Ｒ
４０２  チップポストレイアウトゲートネットリスト
４０４  レイアウト図
４０６  ＲＣ抽出
４０８  相互接続ＲＣ
４１０  タイミング解析
４１２  タイミング報告およびＳＤＦファイル
４１４  システムゲートシュミレーション（すべてのＩＰ）
４１６  実体検証
４２  完成したレイアウト図
４４  テストチップ
４４１０  ＡＲＭ９２２Ｔコアプロセッサ
４４１２  シナジスティックプロセッサ
４４１４  外部メモリインターフェイス
４４１６  実装回路
４４１８  リセットコントローラ
４４２０  テストインターフェイスコントローラ
４４２２  ＭＥ処理コア
４４２４  ＭｕｘＭ２Ｓ
４４２６  ＭｕｘＳ２Ｍ
４４２８  ＡＴＰ１（処理コア）
４４３０  ＡＴＰ２（処理コア）
４４３２  ＡＨＢ
４４３４  ＡＰＢブリッジ
４４３６  Ａ７  ＲＩＳＣプロセッサ
４４３８  ＳＤＣＴ４処理コア
４４４０  ＩＭＤＣＴ処理コア
４４４２  アービトレイタ
４４４４  デコーダ
４４４６  内部メモリ
４４４８  ＡＥＳ処理コア
４４５０  ＤＷＴ処理コア
４４５２  ＡＰＢ
４４５４  割込コントローラ
４４５６  再マッピング／ポーズコントローラ
４４５８  カウンタ
４４６０  ＭｕｘＰ２Ｂ
４４６２  外部バス
４４６４  外部メモリ
４４６８  ターミナルシュミレーションモジュール
４４７０  テストインターフェイスドライバ
４４７２  外部メモリ
６４  ２‐to‐１マルチプレクサ
６８  空ブロック
７０  キャリア基板
７２  実験基板
【図１】
2008020960.tif 000009
【図２】
2008020960.tif 000010
【図３】
2008020960.tif 000011
【図４】
2008020960.tif 000012
【図５】
2008020960.tif 000013
【図６】
2008020960.tif 000014
【図７】
2008020960.tif 000015
【図８】
2008020960.tif 000016
【図９】
2008020960.tif 000017
【図１０】
2008020960.tif 000018
【図１１】
2008020960.tif 000019
【図１２】
2008020960.tif 000020
【図１３】
2008020960.tif 000021
【図１４】
2008020960.tif 000022