RENESAS TOOL NEWS
R20TS0746JJ0100
Rev.1.00
2021.09.16 号【注意事項】
RX ファミリ リアルタイム OS RI600V4
概要
RX ファミリ リアルタイム OS RI600V4 の使用上の注意事項を連絡します。
1. カーネルによるメモリ破壊に関する注意事項

1. カーネルによるメモリ破壊に関する注意事項
1.1

該当製品

(1) RX ファミリ リアルタイム OS RI600V4 V1.06.00
RI600V4 のオブジェクト版、ソース版、Trial 版のいずれも該当します。

1.2

該当デバイスRX ファミリ全体

1.3

内容RI600V4 V1.06.00 で追加したカーネル管理データ_RI_CTSK_CTX のアクセスにおいて、データのサイズ（16 ビット）を超える 32 ビットの転送命令を一部に使用していたため、カーネル初期化時とプログラム実行中に_RI_CTSK_CTX の直後に配置されたデータの先頭 2 バイトを 0 で破壊します。
図 1.1_RI_CTSK_CTX (UH 型、2 byte)
メモリ内容が破壊される領域 (2 byte)

R20TS0746JJ0100
Sep.16.21

Rev.1.00

不具合の仕組みカーネルが 0 を書き込む領域(4 byte)

Page 1 of 5

RENESAS TOOL NEWS
1.4

発生条件

赤字で示した rxv3 フォルダ内のカーネル・ライブラリのいずれかをリンクする場合、本不具合が発生します。
RI600V4 フォルダ構成(注 1)><RI600V4 インストールフォルダ|---- bin600|---- Documents|---- inc600|---- lib600|---- library||---- rxv1||---- rxv2||---- rxv3||---- ri600big.lib||---- ri600big_notrace.lib||---- ri600lit.lib||---- ri600lit_notrace.lib|---- src600 (注 2)

プロジェクト新規作成時に rxv3 フォルダ内のカーネル・ライブラリがリンクされる条件は使用する統合開発環境によって異なります。
表 1.1
統合開発環境CS+
e2 studio
注1

注2

1.5

統合開発環境ごとの発生条件

プロジェクト新規作成時に rxv3 フォルダ内のライブラリがリンクされる条件
CC-RX V3.01.00 以上が選択されている場合
ターゲットデバイスが RXv3 アーキテクチャの CPU コア

Windows10 64 ビット版の場合、デフォルトのインストールフォルダは以下です。
CS+用の場合： C:¥Program Files (x86)¥Renesas Electronics¥CS+¥CC¥RI600V4
e2 studio 用の場合： C:¥Program Files (x86)¥Renesas¥RTOS¥RI600V4

RI600V4 ソース版のみに存在するフォルダです。

発生例

以下に発生例を記載します。
 固定長メモリ・プールを使用
固定長メモリ・ブロックの使用／未使用を管理しているデータが__RI_CTSK_CTX の直後に配置される場合があります。この場合、カーネル初期化時とプログラム実行中にメモリ・ブロック未使用状態（0）に初期化されます。
なお、メモリ・ブロック数が 8 未満の場合は、固定長メモリ・ブロックの管理データは 1 byte です。その結果、固定長メモリ・ブロックの管理データのさらに先の 1 byte データも破壊されます。

R20TS0746JJ0100
Sep.16.21

Rev.1.00

Page 2 of 5

RENESAS TOOL NEWS
1.6

回避策

(1)または(2)の回避策を実施してください。
(1) インストール先ファイルを変更
以下ファイル内の_RI_CTSK_CTX を要素数 2 の配列に変更します。
• <RI600V4 インストールフォルダ>¥lib600¥kernel_ram.h (注 3)
具体的には以下のように修正してください。
修正前
UH_RI_CTSK_CTX;/* Current task context */

修正後
UH

注3

_RI_CTSK_CTX[2];/* Current task context */本ファイルは RI600V4 のコンフィギュレータ（cfg600.exe）の入力ファイルです。一方、プロジェクトに登録されている kernel_ram.h は出力ファイルです。
出力ファイルのみに回避策を適用した場合、次回以降のビルドで回避策が適用されなくなる可能性があります。

(2) リンクされるカーネル・ライブラリを変更
rxv1 または rxv2 フォルダ内のカーネル・ライブラリ（1.4 発生条件 を参照）に変更します。変更方
法は使用している統合開発環境によって異なります。
(2-1) CS+
CC-RX のバージョンを変更します。
プロジェクト・ツリーから、[CC-RX (ビルド・ツール)] - [共通オプション]タブ - [バージョン選択] [使用するコンパイラ・パッケージのバージョン]
・rxv1 フォルダ内カーネル・ライブラリ：V2.01.00 以下
・rxv2 フォルダ内カーネル・ライブラリ：V2.02.00 以上 V3.00.00 以下(2-2) e2 studio
カーネル・ライブラリへのファイル・パスを変更します。
プロジェクトのプロパティ画面から、[C/C++ビルド] - [設定] - [ツール設定]タブ - [Linker] - [入力] [リンクするリロケータブル・ファイル、オブジェクト・ファイル、およびライブラリー・ファイル (-input/-library/-binary)]
・rxv1 フォルダ内カーネル・ライブラリ：<RI600V4 インストールフォルダ>¥library¥rxv1¥ri600big.lib または<RI600V4 インストールフォルダ>¥library¥rxv1¥ri600lit.lib
・rxv2 フォルダ内カーネル・ライブラリ：<RI600V4 インストールフォルダ>¥library¥rxv2¥ri600big.lib または<RI600V4 インストールフォルダ>¥library¥rxv2¥ri600lit.lib

R20TS0746JJ0100
Sep.16.21

Rev.1.00

Page 3 of 5

RENESAS TOOL NEWS
1.7

注意事項

__RI_CTSK_CTX 以降に配置されるシンボルは、リンク・オプションで-show=symbol を指定することにより、map ファイルで確認することができます。

1.8

恒久対策

次期バージョンで改修予定です。

以上

R20TS0746JJ0100
Sep.16.21

Rev.1.00

Page 4 of 5

RENESAS TOOL NEWS
改訂記録
Rev.
1.00

発行日
Sep.16.21

ページ
-

改訂内容
ポイント
新規発行

本資料に記載されている情報は、正確を期すため慎重に作成したものですが、誤りがないことを保証するものではありません。万一、本資料に記載されている情報の誤りに起因する損害がお客様に生じた場合においても、当社は、一切その責任を負いません。
過去のニュース内容は発行当時の情報をもとにしており、現時点では変更された情報や無効な情報が含まれている場合があります。
ニュース本文中の URL を予告なしに変更または中止することがありますので、あらかじめご承知ください。

本社所在地

お問合せ窓口〒135-0061 東京都江東区豊洲 3-2-24（豊洲フォレシア）弊社の製品や技術、ドキュメントの最新情報、最寄の営業お問合せ窓口

www.renesas.com

に関する情報などは、弊社ウェブサイトをご覧ください。
www.renesas.com/contact/

商標についてルネサスおよびルネサスロゴはルネサス エレクトロニクス株式会社の商標です。すべての商標および登録商標は、それぞれの所有者に帰属します。

© 2021 Renesas Electronics Corporation. All rights reserved.
TS Colophon 4.2

R20TS0746JJ0100
Sep.16.21

Rev.1.00

Page 5 of 5