プロセッサをカスタマイズする理由とその方法


10月 1, 2021

プロセッサをカスタマイズする. これはプロセッサIPコアを特定のワークロードに最適化するアプローチの一つの方法です. 既存コアのリストから比較的要件を満たしているものを選び, それをスタート地点として最適化したプロセッサを作るというものです. では, なぜ, そして, どのようにプロセッサをカスタマイズするのでしょうか.

カスタム・コアを開発する利点は?

その前に, プロセッサ・コンフィグレーションとプロセッサ・カスタマイズの違いを理解しておきましょう. まず, この2つは全く異なるものです. プロセッサのコンフィギュレーションとは, IPベンダが提供するオプション(キャッシュサイズ, MMUのサポートなど)を設定することです. プロセッサのカスタマイズとは, ISAの変更や新しい命令の記述など, より踏み込んだ変更を必要とする何かを追加または変更することを意味します. このブログでは, 後者のプロセッサのカスタマイズに焦点を当てます.

性能, 面積効率, 電力効率を同時に満たす必要がある製品を開発る場合, 既存のプロセッサをカスタマイズすることは効率的です. ベクトル命令と低消費電力機能の両方を必要とする自律走行車用プロセッサを設計する場合でも, リアルタイム性と電力・面積の制約がある演算ストレージ用プロセッサを設計する場合でも, 最適化された専用コアが効果的となります.

これまでSoC上の複数のIP, もしくは多機能を集約した消費電力の激しい大きなIPで実現していた機能が, プロセッサのカスタマイズにより, 必要とする標準拡張やカスタム拡張, すべてのアーキテクチャ拡張を1つのプロセッサIPで実現することができます. 既存のプロセッサをお客様独自のニーズに合わせて最適化することには, 以下の大きな利点があります.

  • 面積を節約し, 電力とパフォーマンスの目標を的確に捉え最適化できます
  • 既存プロセッサは既に検証済みなので, カスタム拡張機能を加えた検証を行い, すぐに使用可能
  • どのような変更を行うかは, あなた次第, 競合他社との差別化に注力可能

カスタマイズはそう簡単にはできないと思われるかもしれません. またカスタム・プロセッサの検証はどこまで信頼できるのだろうか, と疑問に思われるかもしれません. 現在, 差別化することは, 難しく, 時間がかかり, 時にはより高くつくようになってきています. プロセッサのカスタマイズが成功するかどうかは, 以下の2点に懸かっています

  • RISC-VのようなオープンソースISAであること
  • 設計と検証の自動化

カスタム・プロセッサ, ASIP, ドメイン特化型アクセラレータ, アプリケーション特化型プロセッサなど, これらはすべてプロセッサのカスタマイズを意味します.

RISC-Vプロセッサをカスタマイズする方法

RISC-Vの命令セット・アーキテクチャ(ISA)は, カスタマイズされることを念頭において作られています. カスタムプロセッサを作りたいのであれば, 既存RISC-Vプロセッサから始めるのが理想的です.

基本命令セットにオプションで標準拡張非標準カスタム拡張を追加して, プロセッサを特定のアプリケーション向けにカスタマイズすることができます.

RISC-Vのモジュール式命令セット     ソース:コダシップ

設計の品質と検証の信頼性を確保する確実なカスタマイズ・プロセスには, 自動化が重要です.

コダシップは, 以下の方法でRISC-Vプロセッサが提供可能です:

  • 一般的な形式(RTL, テストベンチ, SDK)
  • CodALのソースコード

コダシップはCodALを使用して,  Codasip RISC-Vプロセッサを開発, SDKとHDKを自動生成しています. コダシップもユーザもCodALのソースコードを編集して, 独自のカスタム拡張機能を作成したり, 必要に応じて他のアーキテクチャの機能を変更することができます. 

 CODASIP STUDIOによるプロセッサ設計自動化

従来のアプローチでは, コアに新しい命令を追加するためには, 手作業で追加する方法しかありませんでした. この場合, 以下の部分を手作業で修正する必要があります.

  • ソフトウェア・ツールチェーン
  • 命令セットシミュレータ
  • 検証環境
  • RTL

ソフトウェア・ツールチェーンでは, 新しい命令をコンパイラが使用できるように組み込み関数を作成することができますが, これは同時にアプリケーションコードの更新が必要であることも意味します. しかし, 既存のISSやRTLを変更することは, エラーの原因となる可能性が高く, また, 検証環境の変更が必要な場合, これはさらに問題発生の可能性が高くなります. これらの手作業による変更を検証することは大きな課題であり, 開発プロジェクトによりリスクをもたらします.

一部のベンダは, 部分的に自動化されたソリューションを提供していますが, プロセッサのカスタマイズのすべての側面をカバーしていないため, 手動変更によるエラーのリスクが残されています.

これに対してCodasip Studioを使用した場合, CodALのソースコードのみの修正だけです. LLVMツールチェーンは, 新しい命令をサポートするように自動生成されます. 同様に, ISSとRTLもカスタム命令を含むように自動生成され, 更新されたUVM環境を使用して即検証することができます. この方法は, 時間の節約になるだけでなく, より強固で, 確実なカスタマイズ・プロセスとなっています.

RISC-VとCODASIPでアプリケーション特化型プロセッサを作る

従来のプロセッサ設計では差別化がより難しく, より時間がかかり, 時には高コストになります. 独自の差別化要件を満たすようにプロセッサをカスタマイズすることが鍵です. PPAを犠牲にすることなく, アプリケーションに特化したプロセッサを効率的に作成するには, オープン・アーキテクチャと, 設計・検証プロセスを自動化するツールが必要です. 詳細は, ホワイトペーパー 「カスタムRISC-V ISA命令によるドメイン特化型プロセッサの作成について」”でご確認ください

ホワイトペーパーをダウンロードする

Roddy Urquhart

Related Posts

Check out the latest news, posts, papers, videos, and more!

プロセッサのコンフィグレーションとプロセッサのカスタマイズの違い

8月 12, 2021
By Roddy Urquhart

ASIPとは?

4月 16, 2021
By Roddy Urquhart

既存RISC-Vプロセッサのカスタイマイズ

2月 11, 2021
By Roddy Urquhart

RISC-Vはオープンソースのプロセッサという意味なのか?


8月 8, 2017

「RISC-Vはオープンソースのプロセッサを意味する」これは近年よく耳にする言葉ですが, しかし, これは本当なのでしょうか, それとも嘘なのでしょうか. その答えは, このブログ記事に書かれています

オープンスタンダードとは, 自動的にオープンソースを意味するのでしょうか?

RISC-Vはオープンソースのプロセッサを意味するのか」という問いに答える前に, 「オープンスタンダードは自動的にオープンソースを意味するのか」という問題を考えてみましょう

オープンスタンダードは, 技術の世界では広く普及しており, 通信プロトコルのTCP/IPは, 何十年も前からオープンスタンダードとなっています. 無線通信では, 複数のバージョンがあるWi-FiやBluetoothはオープンスタンダードです

 IC設計において, VerilogはIEEEが維持するオープンスタンダードであり, ハードウェア記述言語として広く使用されています. またVerilogは, 様々な商用およびオープンソースのシミュレータで使用されています. Verilogに対応した商用シミュレータとしてはIncisive, Questa, VCSが有名ですが, オープンソースのVerilogシミュレータとしてはVerilatorやCverがあります. 一般的に, 商用Verilogシミュレータはその高い品質と性能で知られています

RISC-Vプロセッサには, オープンソースと商用があります

オープンスタンダードだからといって, そのスタンダード仕様を利用した商用製品が排除されるわけではありません. RISC-Vの場合, 標準化されているのは命令セットアーキテクチャだけで, マイクロアーキテクチャ実装はプロセッサ開発者に委ねられています. そのため商用プロセッサコアにもビジネスチャンスは十分に残っています. RISC-Vをベースとした商用プロセッサIPコアは, マイクロアーキテクチャや実装などにおいて, 独自の機能や付加価値を持てます

オープンソースのRISC-Vプロセッサコアには, カリフォルニア大学バークレー校のZscale, Rocket, BOOMなどがあります. そしてCodasip RISC-Vプロセッサのような商用プロセッサコアも存在します

Roddy Urquhart

Related Posts

Check out the latest news, posts, papers, videos, and more!

RISC-VでSoCオープンスタンダードのギャップを埋める

3月 24, 2022
By Roddy Urquhart

プロセッサをカスタマイズする理由とその方法

10月 1, 2021
By Roddy Urquhart

プロセッサのコンフィグレーションとプロセッサのカスタマイズの違い

8月 12, 2021
By Roddy Urquhart

RISC-Vとは?見逃すべきでない理由


9月 22, 2016

今まさに起きているRISC-V革命が半導体業界のビジネスのあり方を変えようとしています. しかし, RISC-Vが正しく理解されていないことも多いようです. RISC-Vはオープンソースのプロセッサではありません. ここでは「RISC-Vとは何なのか」という疑問への回答と, なぜコダシップがRISC-Vにこだわるのか, そしてあなたもそれを見逃すべきではない理由をお話ししたいと思います.

RISC-Vとは?

RISC-Vは, 命令セット・アーキテクチャ(ISA)のオープンな仕様です. つまり, Intel/AMDプロセッサのx86 ISAや最新ArmプロセッサのArmv8 ISAと同じように, ソフトウェアを実行するプロセッサとの対話手段です. RISC-Vのポジションは, 特定企業が権利を有するそれらISAと少し異なります. RISC-V ISAはオープンな仕様なので(商用とオープンソースのアーキテクチャ・ライセンスについては, 別のブログ記事で説明), 誰でもRISC-V ISAを使ったプロセッサを作ることができます. よく次の2つの質問をいただきます. 「RISC-Vはプロセッサなのか?」「RISC-Vはオープンソースのプロセッサなのか?」 RISC-VはISAの仕様を指し, プロセッサそのものでもなく, 実装されたソースコードでもありません. 先の2つの質問の答えは共に「No」であることがお分かりいただけましたでしょうか.

RISC-V VS. ARM OR INTEL/AMD?

お客様に製品を供給するベンダにとっては, 囲い込みの成功は喜ばしいことです. なぜならベンダが一度囲い込みしたお客様は, その後競合他社製品に変更することが非常に難しくなるからです. 囲い込みを成功させる最良の方法は「可もなく不可もない必要十分な製品」と, 「リッチなエコシステム」を作り上げることです. そうすれば一度囲い込まれたお客様は, リッチなエコシステムの導入に多くの投資をしてしまい, 抜け出すタイミングを逸し, 非常に長い間囲い込みされる結果となります. 競合する新興ベンダは成功するためにより良い製品を提供するだけでなく, 同等のリッチなエコシステムを構築しなければなりません. しかし, お客様が囲い込まれたソリューションと新しいソリューションがもたらすメリットを1対1で比較をすることは, 多くの場合難しいと思われます.

「IBMを買っても誰もクビにならない」という昔のことわざのように, 最近では「Armプロセッサを使っても誰もクビにならない」というのが通説になっています. しかし, これには負の側面もあります. もし, 企業が固有のソリューションを生かした差別化ビジネスを成し遂げられなければ, 進化は停滞して行きます. そして企業はお客様を満足させる必要十分だけの投資しかしなくなり, 衰退して行きます.

RISC-Vは, このような状況を変化させ始めています. なぜならRISC-V仕様をベースに共通化されたソフトウェア・エコシステムは, プロセッサ・ベンダが異なっても流用できるため, プロセッサ・ベンダには色々なアプリケーションに対する製品のメリットで競争することが自然と求められます. 結果, プロセッサ・ベンダ間の競争は激しくなり, 組込みプロセッサの技術革新の大幅な加速がもたらされ, お客様は「可もなく不可もない必要十分な製品」のクオリティで足踏みする必要がなくなります. また, 新しいプロセッサのベンチャー企業は, それぞれで固有の高価なエコシステムを構築する必要がないため, プロセッサ開発に集中できます. そして多くの新しい革新的なプロセッサ企業が登場することになります.

商用アーキテクチャ・ライセンスのデメリットは?

お客様にとっては何もデメリットはありません. でもプロセッサIPベンダにとって, 「可もなく不可もない必要十分な製品」ではもうビジネスできなくなるのです. コダシップのようなベンダは, お客様のニーズを満たし, それを上回る最高のソリューションを提供しなければお客様は簡単に新しいベンダに乗り換えてしまうでしょう. RISC-VはプロセッサIPのコモディティ化につながるというアナリストもいますが, 私たちは専門化とイノベーションにつながると考えています. RISC-Vは底辺の競争ではなく, むしろ付加価値をお客様が手にするチャンスとなるでしょう.

RISC-V ISAはオープンソース?

RISC-V仕様をはじめに作成した多くの学術機関, 特にUC-Berkleyの活動により, RISC-V ISA仕様の実装コアがオープンソースで多数公開されています. オープンな仕様でなければ不可能だった, さまざまな学術機関やオープンソースのSoCプロジェクトがすでに実現しています. しかし, より重要なのは, 民間企業が独自のRISC-Vプロセッサ実装を自由に設計できることです. これにより, お客様の選択肢はさらに広がります.

RISC-Vとアプリケーションに最適化されたプロセッサとコダシップの関係は?

RISC-Vはモジュラー化された拡張可能なISAセットです. これが意味することは, プロセッサは与えられたアプリケーションに対して, 最小限の命令セット, クリーンに定義された標準拡張, そしてカスタム拡張を実装できるのです. あるアプリケーションに必要な最小限の命令セットが実装されている限り, そのアプリケーションは互換性のあるプロセッサ上でも動作します.

これにより, アプリケーションに最適化されたプロセッサの最大の障壁の一つである, プロセッサ周辺の補助的なソフトウェアの開発に必要な労力が不要になります. このように, これまでDSP等で多用されてきたASIP(Application Specific Instruction-set Processor)の多くは, ソフトウェア開発環境が限定された深~い組み込み環境で使用されてきました. 共通のソフトウェア・エコシステムを持つということは, お客様がどのプロセッサにもアプリケーション拡張機能を自由に追加できることを意味し, デメリットなく, 改善点を活用することができます.

「多くのシステムにとって最適なプロセッサとは, その目的に合わせてチューニングされたものである」ブログ記事スケーラブルでないRISCアーキテクチャを拡張する方法をご覧ください.

RISC-V仕様の管理は?

この仕様はRISC-V Internationalによって維持されており, 会員にはソフトウェア, システム, 半導体, IPなど業界全体から(コダシップを含む)構成されています. 会員企業の焦点は, Arm社などに匹敵する, あるいはそれを上回るようなハードウェアとソフトウェアのリッチなエコシステムを構築することです.

RISC-Vの未来は?

残念ながら私は将来が見える水晶玉を持っていません. ただし長年半導体業界に携わってきて言えることは, プロセッサIPの競合他社も含めて様々な企業がこれほどまでに協力して, 新しい仕様に関心を持ち, その実現に向けて動いているのを見たことがない, という事実です.

RISC-Vは未来なのか?エンタープライズ・ソフトウェアの分野がオープン・スタンダードに基づいて構築できるようになった時(Linuxや他OSS等)と同じような, 爆発的なイノベーションと成長が見込めると私たちは期待しています.

「潮の満ち引きは, すべての船を持ち上げる」と言われるように, これからの数年間は非常にエキサイティングになることでしょう!

Roddy Urquhart

Related Posts

Check out the latest news, posts, papers, videos, and more!

RISC-VでSoCオープンスタンダードのギャップを埋める

3月 24, 2022
By Roddy Urquhart

プロセッサをカスタマイズする理由とその方法

10月 1, 2021
By Roddy Urquhart

プロセッサのコンフィグレーションとプロセッサのカスタマイズの違い

8月 12, 2021
By Roddy Urquhart