注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ...

13
注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IARシステムズ 技術チーム 殿下 信二

Upload: others

Post on 06-Mar-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

注目のオープン命令セットアーキテクチャRISC-V向け商用開発ツールの紹介

IARシステムズ 技術チーム 殿下信二

Page 2: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

RISC-Vとは

Page 3: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

RISC-Vとは

• RISC-V Foundationによって管理されているオープンな(ISA)命令セットアーキテクチャで、自由に利用することができます。(https://riscv.org)

• RISC-V Foundationは会員によって管理されている非営利法人です。

• RISC-V Foundationのメンバーは、RISC-V ISA仕様および関連するHW/SWエコシステムの開発にアクセスし参加することができます。

IARシステムズはRISC-V Foundationメンバーです

Page 4: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

RISC-Vの概要(1)

• 命令セットアーキテクチャは、基本命令セットと拡張命令セットで構成されます。

• RISC-Vで推奨される命令セットアーキテクチャの構成はRV32IMAFD(RV32G)またはRV64MAFD(RV64G)です。

• 基本命令セット

RV32I 32ビット基本整数命令セット(32ビット長レジスタ×32)

RV32E 32ビット基本整数命令セット(32ビット長レジスタ×16)

RV64I 64ビット基本整数命令セット(64ビット長レジスタ×32)

RV128I 128ビット基本整数命令セット(128ビット長レジスタ×32)

Page 5: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

RISC-Vの概要(2)

• 32ビット・16ビット命令混在セット• 拡張命令セットは選択

M 整数除算・乗算 B ビット操作A アトミック命令 J 動的命令対応F 単精度浮動小数点(32bit) T トランザクショナルメモリ

対応命令D 倍精度浮動小数点(64bit)Q 4倍精度浮動小数点数(128bit) P パックド形式SIMD命令C 圧縮命令 V ベクタ演算命令L 10進数浮動小数点 N ユーザレベル割込み

Page 6: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

RISC-V整数レジスタセット• 基本命令セットサイズに応じて、レジスタサイズが設定• レジスタは32個(RV32Eは16個)

x0...

x15x16...

x31

031

RVI32E

RV32I/RV32E RV64I RV128I

x0...

x15x16...

x31

063

x0...

x15x16...

x31

0127

Page 7: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

IAR Embedded Workbench for RISC-V

Page 8: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

EWRISC-Vで何が変わりましたか?

• IARシステムズのコンパイラは、高速で効率的かつ非常にコンパクトなコードを生成

• IAR Embedded Workbench機能安全版は高い品質規格に準拠したソフトウェア開発のための製品

Page 9: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

IAR Embedded Workbench for RISC-Vとは

IAR Embedded Workbench for RISC-Vは、コーディングからデバッグまで、組み込み開発に必要な全ての機能を搭載した統合開発環境

エディタ

プロジェクトマネージャ

ライブラリビルダ

ライブラリアン

IDE ツール

IAR C-SPY デバッガ

シミュレータ

ハードウェアドライバ

Power デバッグ

RTOS プラグイン

IAR C/C++ コンパイラ

アセンブラ

リンカ

デバッガ

静的解析ツールをオプションで選択可

(C-STAT)

Build ツール ICEなど

IJET(JTAG ICE)

I-Scope(消費電流計測プローブ)

絶縁アダプタ

Page 10: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

コンパイラ最適化動作

オブジェクトコード

Cソースコード

構文解析器

中間コード 高レベル最適化

コード生成

ターゲットコード 低レベル最適化

アセンブラ

コンパイラ

LW A0,-0x0(GP) C.ADDI A0,-0xFSW A0,-0x4(GP)

=–

15yx

x = y - 15;関数

インラインデッド

コード除去

ループアンローリング

のぞき穴的最適化

クロスコール

スケジューリング

01001000111001101001 Linker

リンク時最適化

Page 11: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

EWRISC-V C/C++コンパイラ概要

• 最新のC/C++言語に対応ISO/IEC 14882:2015 (C++14, C++17)

ISO/IEC 9899:2012 (C11)

ANSI X3.159-1989 (C89)

IEEE 754 standard for floating-point arithmetic

• 最適化無し含む、4段階の最適化設定最適化の個別選択が可能

Page 12: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

機能安全認証済みツールへの市場要求の高まり

• 組込みシステムにおける機能安全要求 の増加

• 開発ツールも認証プロセスの一部 として必要になってきた

• 開発ツール自体の認証作業量はとても大きな負担 となる

IEC 61508:機能安全の核となる国際規格。高信頼性と安全性が要求される市場向け

ISO 26262:車載アプリケーションにおけるセーフティ関連システム向け

EN 50128 / EN 50657:鉄道アプリケーション向け

IEC 62304:医療アプリケーション向け

IAR Embedded Workbench for Arm V8.22.3IAR Embedded Workbench for RX V3.10.5IAR Embedded Workbench for RL78 V3.10.2IAR Embedded Workbench for RH850 V1.40.3

Available for:

Page 13: 注目のオープン命令セットアーキテクチャ注目のオープン命令セットアーキテクチャ RISC-V向け商用開発ツールの紹介 IAR システムズ 技術チーム

まとめ

• RISC-VはオープンISAで急速に市場を拡大

• IAR Embedded Workbench for RISC-Vは従来のIAR Embedded Workbenchと同じユーザインタフェースで直ぐに使える

• 国内初出展 IAR Embedded Workbench for RISC-Vの実機によるデモ