3
変化するプロトタイピングの役割 6 最新技術情報 Technology Update エンドツーエンド・プロトタイピングによる ソフトウェア開発期間の短縮 シノプシス Tom De Schutter これまで、業界は強力なマルチコア・プロセッシング・アーキテクチャをワ ンチップに集積することでサブシステムの機能を飛躍的に向上させてきまし た。この結果、モバイル通信からIoT(Internet of Things)まで非常に多く のアプリケーションが10年前とはまるで違った形に進化しています。こう してハードウェアが製品イノベーションを牽引していく中で、多くの設計 チームが先進の機能を実装して製品を差別化する手段としてソフトウェアを 重視するようになっています。 ユーザーが評価する製品価値がソフトウェアの完成度によって左右されるよ うになった現在、システム・チームを構成するソフトウェア・エンジニアと ハードウェア・エンジニアの比が10:1に達することも珍しくなくなってい ます [1] 。このように、製品の機能、パフォーマンス、消費電力、そして開発期 間を決定づける要因としてソフトウェア開発の重要性が高まっています。 こうしたソフトウェア重視の姿勢が強まる中、製品開発チームは、より高 品質な組込みソフトウェア・コードを短期間で作成できる手法を模索して います。 これまで、プロトタイピング手法は主にハードウェア・エンジニアがハード ウェア開発を加速する目的で導入していました。しかしハードウェア開発が 完成してからソフトウェア開発をスタートさせるという従来のアプローチに 代わり、近年はソフトウェア / ハードウェア協調開発がもたらす大きなメ リットが注目されており、設計サイクル早期段階でのアーキテクチャ検討、 ソフトウェアの開発と統合、システム・バリデーションにもプロトタイピン グ手法を活用しようというチームが増えています(図1)。 プロトタイピング・ソリューションは単独で使用してもハードウェアおよび ソフトウェア設計チームの生産性向上に寄与しますが、複数のプロトタイピ ング手法を連携させたエンドツーエンド・プロトタイピング・ソリューショ ンなら、ハードウェア・チームとソフトウェア・チームの双方がより大きな メリットを手にすることができます。 ハードウェア・エンジニアとソフトウェア・エンジニアが協調して開発手法全体の品質を根本から改善していくための効果的なプラットフォー ムとなるエンドツーエンド・プロトタイピングについて、シノプシスのTom De Schutterがご説明します。 製品におけるソフトウェアの重要性が高まる中、ソフトウェアがハードウェ ア開発サイクルに与える影響はこれまで以上に大きくなっています。プロト タイピング・ソリューションはすでに多くのハードウェア設計チームにとっ て重要な開発ツールとして定着していますが、最近ではソフトウェアの開発 と統合に欠かせないツールとしても位置づけられるようになっています。 一般的なプロトタイピング環境としては、バーチャル・プロトタイプ、 FPGAベース・ハードウェア・プロトタイプ、ハイブリッド・プロトタイプ があります。 バーチャル・プロトタイプでは、商用プロセッサ・コアや標準インターフェ イスなどを表現した市販のTLM(トランザクションレベル・モデル)と、設 計チームが開発した内製 IP のモデル表現を組み合わせて構築したシステム・ オン・チップ(SoC)の高速な実行可能モデルを使用します。 FPGAベース・ハードウェア・プロトタイプは、ハイエンドのFPGAデバイ スと高度な分割およびデバッグ・ソフトウェアを組み合わせたもので、RTL デザインを短時間でプロトタイピング・プラットフォームにマッピングして 作業が行えます。 ハイブリッド・プロトタイプは、バーチャル・プロトタイプとFPGAベース・ プロトタイプの両方のアプローチを組み合わせたものを言います。 プロトタイピングには、デバッグとバリデーションの期間を短縮するだけで なく、実チップ完成のはるかに前の段階でデザインの機能表現を簡単に用意 できるという利点もあります。このため、プロトタイピングを利用すると ハードウェアの完成を待たずにソフトウェア開発スケジュールを進行でき、 ソフトウェア開発、アーキテクチャ検討、ハードウェア / ソフトウェア統合、 IPブリングアップ、その他のソフトウェア関連タスクを大幅に前倒ししてプ ロジェクトの早期段階で開始できます。 図 1. ハードウェア完成後にスタートする従来の組込みソフトウェア開発の流れ 総開発期間:27 ~ 36 ヶ月 従来の組込み開発 ハードウェア開発 ハンドオフ ソフトウェア開発 アーキテクチャ RTL コード ボード RTL ブロック シリコン システム ハードウェア ブリングアップ アプリ コード QA / テスト BSP カーネル ドライバ OS 統合 システム レベル テスト

Technology Update - Synopsys · 2019-11-25 · のアプリケーションが10年前とはまるで違った形に進化しています。こう してハードウェアが製品イノベーションを牽引していく中で、多くの設計

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Technology Update - Synopsys · 2019-11-25 · のアプリケーションが10年前とはまるで違った形に進化しています。こう してハードウェアが製品イノベーションを牽引していく中で、多くの設計

変化するプロトタイピングの役割

6

最 新 技 術 情 報Technology Update

エンドツーエンド・プロトタイピングによるソフトウェア開発期間の短縮

シノプシス Tom De Schutter

これまで、業界は強力なマルチコア・プロセッシング・アーキテクチャをワンチップに集積することでサブシステムの機能を飛躍的に向上させてきました。この結果、モバイル通信からIoT(Internet of Things)まで非常に多くのアプリケーションが10年前とはまるで違った形に進化しています。こうしてハードウェアが製品イノベーションを牽引していく中で、多くの設計チームが先進の機能を実装して製品を差別化する手段としてソフトウェアを重視するようになっています。

ユーザーが評価する製品価値がソフトウェアの完成度によって左右されるようになった現在、システム・チームを構成するソフトウェア・エンジニアとハードウェア・エンジニアの比が10:1に達することも珍しくなくなっています[1]。このように、製品の機能、パフォーマンス、消費電力、そして開発期間を決定づける要因としてソフトウェア開発の重要性が高まっています。

こうしたソフトウェア重視の姿勢が強まる中、製品開発チームは、より高品質な組込みソフトウェア・コードを短期間で作成できる手法を模索しています。

これまで、プロトタイピング手法は主にハードウェア・エンジニアがハードウェア開発を加速する目的で導入していました。しかしハードウェア開発が完成してからソフトウェア開発をスタートさせるという従来のアプローチに代わり、近年はソフトウェア / ハードウェア協調開発がもたらす大きなメリットが注目されており、設計サイクル早期段階でのアーキテクチャ検討、ソフトウェアの開発と統合、システム・バリデーションにもプロトタイピング手法を活用しようというチームが増えています(図1)。

プロトタイピング・ソリューションは単独で使用してもハードウェアおよびソフトウェア設計チームの生産性向上に寄与しますが、複数のプロトタイピング手法を連携させたエンドツーエンド・プロトタイピング・ソリューションなら、ハードウェア・チームとソフトウェア・チームの双方がより大きなメリットを手にすることができます。

ハードウェア・エンジニアとソフトウェア・エンジニアが協調して開発手法全体の品質を根本から改善していくための効果的なプラットフォームとなるエンドツーエンド・プロトタイピングについて、シノプシスのTom De Schutterがご説明します。

製品におけるソフトウェアの重要性が高まる中、ソフトウェアがハードウェア開発サイクルに与える影響はこれまで以上に大きくなっています。プロトタイピング・ソリューションはすでに多くのハードウェア設計チームにとって重要な開発ツールとして定着していますが、最近ではソフトウェアの開発と統合に欠かせないツールとしても位置づけられるようになっています。

一般的なプロトタイピング環境としては、バーチャル・プロトタイプ、FPGAベース・ハードウェア・プロトタイプ、ハイブリッド・プロトタイプがあります。

バーチャル・プロトタイプでは、商用プロセッサ・コアや標準インターフェイスなどを表現した市販のTLM(トランザクションレベル・モデル)と、設計チームが開発した内製IPのモデル表現を組み合わせて構築したシステム・オン・チップ(SoC)の高速な実行可能モデルを使用します。

FPGAベース・ハードウェア・プロトタイプは、ハイエンドのFPGAデバイスと高度な分割およびデバッグ・ソフトウェアを組み合わせたもので、RTLデザインを短時間でプロトタイピング・プラットフォームにマッピングして作業が行えます。

ハイブリッド・プロトタイプは、バーチャル・プロトタイプとFPGAベース・プロトタイプの両方のアプローチを組み合わせたものを言います。

プロトタイピングには、デバッグとバリデーションの期間を短縮するだけでなく、実チップ完成のはるかに前の段階でデザインの機能表現を簡単に用意できるという利点もあります。このため、プロトタイピングを利用するとハードウェアの完成を待たずにソフトウェア開発スケジュールを進行でき、ソフトウェア開発、アーキテクチャ検討、ハードウェア / ソフトウェア統合、IPブリングアップ、その他のソフトウェア関連タスクを大幅に前倒ししてプロジェクトの早期段階で開始できます。

図1. ハードウェア完成後にスタートする従来の組込みソフトウェア開発の流れ

総開発期間:27 ~ 36 ヶ月

従来の組込み開発

ハードウェア開発 ハンドオフ ソフトウェア開発

アーキテクチャRTL

コード ボード

RTLブロック

シリコン システム

ハードウェアブリングアップ アプリ

コードQA / テスト

BSPカーネル

ドライバOS

統合 システムレベルテスト

Page 2: Technology Update - Synopsys · 2019-11-25 · のアプリケーションが10年前とはまるで違った形に進化しています。こう してハードウェアが製品イノベーションを牽引していく中で、多くの設計

7

エンドツーエンド・プロトタイピング

ユースケース:タスク・グラフの自動化によるアーキテクチャ最適化

ユースケース:ハイブリッド・プロトタイピング

このコンセプトをもう1段階先に進めたものが、エンドツーエンド・プロトタイピングです。これは、種類の異なる複数のプロトタイピング・テクノロジを連携させることで、開発スケジュールのさらなる短縮に役立てようというものです。各プロトタイピング手法を連携させてそれぞれの長所を活かすことにより、早期段階でのアーキテクチャ検討、ソフトウェア開発、ハードウェア / ソフトウェア統合、システム・バリデーションというプロトタイピングのメリットを最大限に引き出すことができ、その結果、設計スケジュール全体の時間軸を短縮する真の意味での「シフトレフト」が実現します。

将来の派生デザインでアーキテクチャ最適化を行うことも見据えて、エンドツーエンド・プロトタイピングを採用する例もあります。

SoC設計プロジェクトの多くは、既存のデザインを一部手直しして次世代製品を開発する派生設計が主となっています。このようなプロジェクトでは、設計者の経験とスプレッドシート解析を頼りに現行デザインを最適化し、レイテンシ、スループット、消費電力の改善を図るのが一般的です。このアプローチはスタティック解析をベースにしており、最終製品で動作する実際の

ソフトウェア・シナリオの影響を考慮していません。このため、往々にして過剰設計または過小設計に陥り、リスピンを招いてしまいます。

バーチャル・プロトタイピングを使用すると、新規デザインのアーキテクチャと既存デザイン上で動作するソフトウェア・タスクの間の依存関係を有効利用できます。バーチャル・プロトタイプの活用により、高精度なパフォーマンス・モデル、電力モデル、アプリケーション・データに基づいたアーキテクチャ検討が可能になります。

SoC上で実際に動作させるソフトウェアは、抽象レベルでアプリケーション・モデル(タスク・グラフ)として記述する必要があります。バーチャル・プロトタイピングを用いると、以前のCPUソフトウェア開発のプロトタイプからタスク・グラフを抽出することも、アーキテクトがGPU、DSP、アクセラレータ用にタスク・グラフをキャプチャすることもできます。

このようなアプローチなら、これらパフォーマンス・モデルのシミュレーションによって得られたレイテンシとスループットのデータに基づいて、アーキテクトがデザインに関する重要な判断を下すことができます。このため、スプレッドシートを用いたスタティックなアーキテクチャ検討よりも正確にアーキテクチャのパフォーマンスと消費電力を検討できます。また、バーチャル・プロトタイプを使用すればRTLレベルでのシミュレーションに比べはるかに多くのアーキテクチャ候補をシミュレーションできるため、過剰設計や過小設計を防ぐことができます(図3)。

シノプシスのバーチャル・プロトタイピング・ソリューションの1つであるPlatform Architectには、バーチャル・プロトタイプまたはFPGAベース・プロトタイプからソフトウェア情報を抽出し、タスク・グラフに変換する機能があります。

バーチャル・プロトタイプとFPGAベース・プロトタイプで構成されるハイブリッド・プロトタイプは、ハードウェア・チームとソフトウェア・チームの双方に多くの利点をもたらします(図4;P8掲載)。

最近はFPGAの大容量化が進み、SoCの大部分をプロトタイピングできるようになったこともあって、FPGAベースの物理プロトタイピング・システムと

図2. エンドツーエンド プロトタイピングを利用したソフトウェア駆動型の設計タスクとソリューション

図3. ソフトウェアからのタスク グラフ生成

エンドツーエンド・プロトタイピング

アーキテクチャ設計

ソフトウェア開発 / テスト

ハードウェア / ソフトウェア統合

システムバリデーション

PlatformArchitect

MCO

Virtualizer

タスク・グラフ生成 ハイブリッドプロトタイピング

HAPS

IP Prototyping Kit

DesignWareおよびサードパーティのIP / モデル

ソフトウェアとハードウェアの開発スケジュールを短縮

過去のプロジェクトからのソフトウェア・ワークロード

ソフトウェア・ベンチマーク

TGG

VPU CAモデル / RTL

Platform Architect MCOバーチャル・プロトタイプ

VPU

トラフィックシナリオ

トラフィックシナリオ

GFRBM GFRBM

ソフトウェア

ソフトウェア

CA CPU RTL CPU

インターコネクト

メモリー・サブシステム

新規ソフトウェア開発、統合、テスト

高速モデル

Virtualizerバーチャル・プロトタイプ / VDK

ハイブリッド・プロトタイプ

HAPS FPGAプロトタイプ

シリコン

ハードウェア設計 / 検証

アーキテクチャ工程

開発スケジュールの流れ

ハードウェア / ソフトウェア工程 システム・バリデーション工程

タスクB

タスクA

タスクC

タスクD

タスクE

VPU

Support Q

&A

検証

編S

upport Q&

Aフ

ィジ

カル

編S

upport Q&

A論

理合

成編

New

s Release

ニュ

ース

リリ

ース

新年

のご

挨拶

What's N

ewin D

esignWare IP

?I ndustry Trend

Technology Update

最新

技術

情報

Success S

tory

Page 3: Technology Update - Synopsys · 2019-11-25 · のアプリケーションが10年前とはまるで違った形に進化しています。こう してハードウェアが製品イノベーションを牽引していく中で、多くの設計

8

前ページより続く エンドツーエンド・プロトタイピングによるソフトウェア開発期間の短縮

まとめ

バーチャル・プロトタイピング・システムを結合したハイブリッド・プロトタイプは設計チームにこれまでにない利点をもたらすようになっています。たとえばFPGAベース・プロトタイプはハードウェア / ソフトウェア統合とシステム・バリデーションに効果を発揮し、バーチャル・プロトタイプはより高いデバッグ可視性を活かしてソフトウェアの開発とテストにかかる期間を短縮できるという特長があります。これらのプロトタイピング手法を組み合わせるとエンドツーエンドのソフトウェア・プロトタイピング環境が実現し、より高品質なコードを短期間で完成できます。

FPGAベース・プロトタイプだけを使う場合はすべてのRTLが完成している必要がありますが、バーチャル・プロトタイピングと組み合わせると、次世代CPUコアのモデルを使用できます。このようなハイブリッド・アプローチでは、早期ブリングアップが可能です。すでにバーチャル・プロトタイピングを導入している設計チームの場合、物理プロトタイプを接続するとドーターボードなどを使って実世界のI/Oを利用でき、より高速で高精度なプロトタイピングの可能性が広がります。

ハイブリッド・プロトタイピングは、IP固有ソフトウェアのブリングアップに大きな効果があります。早期段階で利用可能なモデルを使用して新しいプロセッサのバーチャル・プロトタイプを作成し、これにFPGAにマッピングしたインターフェイスIPを組み合わせることで、IP固有ソフトウェアの開発、テスト、ハードウェア / ソフトウェア統合のための完全な機能を備えたソリューションをいち早く用意することができます。

シノプシスは、バーチャル・プロトタイプ上で動作する最新のARM®プロセッサ・サブシステム(事前検証済みのAMBA®トランザクタによって実現)を利用してFPGA上で動作するIPをハイブリッド・プロトタイピング・ソリューションの一部としてご提供しています。これにより、HAPS上のIPをバーチャル・システムで「包み込み」、完全なSoC環境の中でIPブロックのバリデーションを行っていただけます。シノプシスのハイブリッド・プロトタイピング・ソリューションをご利用いただくと、バーチャル・プロトタイプと

物理プロトタイプを接続するカスタム・ハードウェア / ソフトウェア・インターフェイスの開発と維持が不要になります。

製品の成功と市場投入時間を左右する要因としてソフトウェアの重要性が高まる中、「ソフトウェアの品質確保に要する期間」を設計サイクルの重要な指標と位置づけるチームが増えています。

エンドツーエンド・プロトタイピングは、システム設計のアプローチを根底から変革します。ハードウェア開発の後でソフトウェア開発を実施する従来のサイクルでは、先にハードウェアを完成させてそれにソフトウェアを合わせる必要がありましたが、エンドツーエンド・プロトタイピングを利用するとハードウェアとソフトウェアの両方をすり合わせながらパフォーマンス、消費電力、機能を最適化したシステムを開発できます。このように、エンドツーエンド・プロトタイピングはハードウェア・エンジニアとソフトウェア・エンジニアが協調してソリューション全体の品質を改善していく上で効果的な開発プラットフォームとなります。

プロトタイピング手法は、アーキテクチャ検討、ソフトウェア開発、ハードウェア / ソフトウェア統合、システム・バリデーションに役立てることができます。プラットフォームの垣根を超えて異なる種類のプロトタイピング手法を連携させることでプロトタイピングの価値と効果が相乗的に高まり、ソフトウェア開発の加速と設計期間全体の短縮が実現します。

最近では、製品のソフトウェア品質を高めるためにプロトタイピング手法を導入する開発チームが増えています。エンドツーエンド・プロトタイピングを導入してもソフトウェアの複雑さが解消されるわけではありませんが、差別化した革新的な製品を実現する手段としてのソフトウェアを、より自信を持って投入できるようになります。

参考文献 / 詳細情報[1] 参考文献:システム設計チームの構成比について http://www.eejournal.com/archives/articles/20150519-software/● ウェブページ:シノプシスのエンドツーエンド・プロトタイピング http://www.synopsys.com/JP2/Prototyping

著者紹介Tom De Schutter:シノプシスのバーチャル・プロトタイピング事業推進を担当。CoWare社でTLMのプロダクト・マーケティング・マネージャとして活躍した後、同社の買収に伴いシノプシスに入社。システムレベル設計に関するマーケティングおよびエンジニアリングに15年以上従事。マーケティング・チームに加わる前はCoWare社でTLMチームを指揮。

図4. シノプシスのハイブリッド プロトタイプ

Virtualizer - VDK

バーチャルI/O

TLMライブラリ

TLMモデル

モデル作成 / 解析ツール

データ交換

トランザクタプロトコル:AMBA

物理リンク:UMRBus

HAPS

RTL

FPGA合成 /

デバッグ・ツール

ドーターボード

インターフェイス……

PHY

DesignWareIP コア