JP7184074B2 - メモリ管理装置及びメモリ管理方法、並びに情報処理装置 - Google Patents
メモリ管理装置及びメモリ管理方法、並びに情報処理装置 Download PDFInfo
- Publication number
- JP7184074B2 JP7184074B2 JP2020500283A JP2020500283A JP7184074B2 JP 7184074 B2 JP7184074 B2 JP 7184074B2 JP 2020500283 A JP2020500283 A JP 2020500283A JP 2020500283 A JP2020500283 A JP 2020500283A JP 7184074 B2 JP7184074 B2 JP 7184074B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- region
- virtual address
- memory
- physical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000015654 memory Effects 0.000 title claims description 326
- 238000007726 management method Methods 0.000 title claims description 62
- 230000010365 information processing Effects 0.000 title claims description 8
- 238000013519 translation Methods 0.000 claims description 98
- 230000004044 response Effects 0.000 claims description 2
- 238000012545 processing Methods 0.000 description 99
- 230000014616 translation Effects 0.000 description 83
- 238000000034 method Methods 0.000 description 67
- 230000007246 mechanism Effects 0.000 description 31
- 230000008569 process Effects 0.000 description 29
- 230000006399 behavior Effects 0.000 description 27
- 230000009471 action Effects 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 20
- 238000004891 communication Methods 0.000 description 19
- 238000013507 mapping Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000013467 fragmentation Methods 0.000 description 7
- 238000006062 fragmentation reaction Methods 0.000 description 7
- 230000001133 acceleration Effects 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000002730 additional effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1036—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
前記仮想アドレス空間に定義されたリージョンのアドレス変換情報と、リージョンが持つ固有のページサイズを保持するリージョン情報保持部と、
仮想アドレスを含むリージョンの前記アドレス変換情報を用いて、仮想アドレスに対応する物理アドレスの情報を探索する探索部と、
を具備するメモリ管理装置である。
前記仮想アドレス空間に定義されたリージョンのアドレス変換情報とリージョンが持つ固有のページサイズを保持するリージョン情報保持部に保持された前記アドレス変換情報を用いて、仮想アドレスに対応する物理アドレスの情報を探索する探索ステップと、
ページ単位でベース仮想アドレスとベース物理アドレスの対応関係を示す情報と、その仮想アドレスを含むリージョンに定義されたページサイズの情報を保持するアドレス変換バッファ中の仮想アドレスにヒットするエントリから取得されるベース物理アドレスと仮想アドレスを組み合わせて、仮想アドレスに対応する物理アドレスに変換するアドレス変換ステップと、
を有するメモリ管理方法である。
物理メモリと、
仮想アドレス空間に定義されたリージョンのアドレス変換情報とリージョンが持つ固有のページサイズを保持するリージョン情報保持部と、仮想アドレスを含むリージョンの前記アドレス変換情報を用いて仮想アドレスに対応する物理アドレスの情報を探索する探索部を備えて、ページ単位で仮想アドレスから物理アドレスへのアドレス変換を行うメモリ管理ユニットと、
を具備する情報処理装置である。
TT0(ベース物理アドレス)←P02=0x00080000
TP0(ページサイズ)←RP0=64KB
TV0(エントリ有効フラグ)←True
センシングタスクは、定期的に一定の周期で各種センサ105から情報を取得して、行動推定タスクにセンサ値を渡す。センシングタスクの命令コードは、フラッシュメモリ104の1ブロック(64KB)に収まる程度であり、ヒープ領域からは1KB程度のメモリ領域数個を使用する。スタック領域の消費量は1KB程度である。
行動推定タスクは、センシングタスクから渡されたセンサ値と、フラッシュメモリ104上の行動推定辞書を用い定期的に行動推定を行うアルゴリズムを実行し、推定した結果を通信タスクに渡す。行動推定タスクの命令コード、並びに行動推定辞書はそれぞれフラッシュメモリの1ブロック(64KB)に収まる程度であり、ヒープ領域からは16KB程度のメモリ領域と、1KB程度のメモリ領域数個を使用する。スタック領域の消費量は4KB程度である。
通信タスクは、行動推定タスクの推定結果をクラウド202上のサーバ202に送信する。行動推定タスクからは定期的に送信データを受け取るが、サーバ202との通信中の接続遮断やその後の再試行など、不定期にエラー処理などの例外処理が必要となる場合がある。通信タスクの命令コードはフラッシュメモリ104上の256KB程度(4ブロック)であり、ヒープ領域からは4KB程度のメモリ領域数個と、1KB程度のメモリ領域を10数個使用する。スタック領域の消費量は、通常状態では2KB程度だが、例外処理などで4KB程度に増加する場合がある。
テキスト領域を提供するRegion♯0は、フラッシュメモリ104のブロックサイズである64KBをページサイズとする。各タスクの必要ページ数はそれぞれ1ページ、2ページ、4ページであり、合計7ページ分のページテーブルがあれば、全タスクのテキスト領域を提供することができる。
ヒープ領域を提供するRegion♯1及びRegion♯2は、前述した通り、各種のメモリ確保要求に応じるために、4KBページと1KBページの2つのページサイズを使用する。上述した実施形態ではメモリ要求は1KB程度のものと4KBを超えるものの2種類に大別できるため、それぞれでリージョンを使い分けることでメモリ断片化の防止に効果がある。
スタック領域を提供するRegion♯3は、タスクの中で必要とするスタック消費量の最低値である1KBをページサイズとして使用する。各タスクはそれぞれ最大1ページ、4ページ、4ページ分の物理メモリをスタックとして割り当てることになる。例えば、ページサイズを4KBに指定した際はセンシングタスクの場合、1KBしか使われないために3KB分が無駄になるが、そうした無駄を抑えることができる。
(1)ページ単位で仮想アドレスから物理アドレスへのアドレス変換を行うメモリ管理装置であって、
前記仮想アドレス空間に定義されたリージョンのアドレス変換情報と、リージョンが持つ固有のページサイズを保持するリージョン情報保持部と、
仮想アドレスを含むリージョンの前記アドレス変換情報を用いて、仮想アドレスに対応する物理アドレスの情報を探索する探索部と、
を具備するメモリ管理装置。
(2)前記リージョン情報保持部は、仮想アドレス空間上に定義された各リージョンのベース仮想アドレスと、物理メモリ上に置かれたリージョン毎のページテーブルのアドレスと、リージョンに定義されたページサイズ、及びリージョンサイズに関する情報をリージョン毎のエントリに保持し、
前記探索部は、仮想アドレスを含むリージョンに対応するページテーブルアドレスに基づいて、前記物理メモリ上の該当するページテーブルから仮想アドレスに対応する物理アドレスの情報を探索する、
上記(1)に記載のメモリ管理装置。
(3)前記探索部は、
前記リージョン情報保持部内の、ベース仮想アドレスと、ベース仮想アドレスにリージョンのページサイズを加算したアドレス範囲に仮想アドレスが含まれるエントリから、仮想アドレスを含むリージョンのページテーブルアドレスを特定して、
そのページテーブルアドレスで指定されるページテーブル上の、仮想アドレスとベース仮想アドレスの差分をページサイズで割算して特定されるページから物理アドレス情報を取得する、
上記(2)に記載のメモリ管理装置。
(4)ページ単位でベース仮想アドレスとベース物理アドレスの対応関係を示す情報と、その仮想アドレスを含むリージョンに定義されたページサイズの情報を保持するアドレス変換バッファと、
前記アドレス変換バッファ中の仮想アドレスにヒットするエントリから取得されるベース物理アドレスと仮想アドレスを組み合わせて、仮想アドレスに対応する物理アドレスに変換するアドレス変換部と、
をさらに備える上記(1)乃至(3)のいずれかに記載のメモリ管理装置。
(5)前記アドレス変換部は、ベース仮想アドレスと、ベース仮想アドレスにリージョンのページサイズを加算したアドレス範囲に仮想アドレスが含まれるエントリを、前記アドレス変換バッファ内で検索する、
上記(4)に記載のメモリ管理装置。
(6)用途が異なるデータを格納する複数のメモリ領域に対して、仮想アドレス空間上で異なるリージョンを割り当てる、
上記(1)乃至(5)のいずれかに記載のメモリ管理装置。
(7)テキスト領域、ヒープ領域、及びスタック領域に対して、仮想アドレス空間上で異なるリージョンを割り当てる、
上記(1)乃至(6)のいずれかに記載のメモリ管理装置。
(8)テキスト領域に対して、所定のブロックサイズに基づいてページサイズが定義されたリージョンを割り当てる、
上記(1)乃至(7)のいずれかに記載のメモリ管理装置。
(9)ヒープ領域に対して、ページサイズが異なる2以上のリージョンを割り当てる、
上記(1)乃至(8)のいずれかに記載のメモリ管理装置。
(10)ヒープ領域からメモリ領域を確保する際に、確保したいメモリサイズを超えないページサイズが定義されたリージョンを割り当てる、
上記(9)に記載のメモリ管理装置。
(11)スタック領域に割り当てられたリージョンでバスフォルトが発生したことに応答して、ページサイズ単位で物理メモリを割り当てる、
上記(1)乃至(10)のいずれかに記載のメモリ管理装置。
(12)ページ単位で仮想アドレスから物理アドレスへのアドレス変換を行うメモリ管理方法であって、
前記仮想アドレス空間に定義されたリージョンのアドレス変換情報とリージョンが持つ固有のページサイズを保持するリージョン情報保持部に保持された前記アドレス変換情報を用いて、仮想アドレスに対応する物理アドレスの情報を探索する探索ステップと、
ページ単位でベース仮想アドレスとベース物理アドレスの対応関係を示す情報と、その仮想アドレスを含むリージョンに定義されたページサイズの情報を保持するアドレス変換バッファ中の仮想アドレスにヒットするエントリから取得されるベース物理アドレスと仮想アドレスを組み合わせて、仮想アドレスに対応する物理アドレスに変換するアドレス変換ステップと、
を有するメモリ管理方法。
(13)物理メモリと、
仮想アドレス空間に定義されたリージョンのアドレス変換情報とリージョンが持つ固有のページサイズを保持するリージョン情報保持部と、仮想アドレスを含むリージョンの前記アドレス変換情報を用いて仮想アドレスに対応する物理アドレスの情報を探索する探索部を備えて、ページ単位で仮想アドレスから物理アドレスへのアドレス変換を行うメモリ管理ユニットと、
を具備する情報処理装置。
101…CPU、102…MMU、103…SRAM
104…フラッシュメモリ、105…センサ
106…通信モジュール、107…電池、110…バス
200…基地局、201…クラウド、202…サーバ
Claims (12)
- ページ単位で仮想アドレスから物理アドレスへのアドレス変換を行うメモリ管理装置であって、
前記仮想アドレス空間に定義されたリージョンのアドレス変換情報と、リージョンが持つ固有のページサイズを保持するリージョン情報保持部と、
仮想アドレスを含むリージョンの前記アドレス変換情報を用いて、仮想アドレスに対応する物理アドレスの情報を探索する探索部と、
を具備し、
前記リージョン情報保持部は、仮想アドレス空間上に定義された各リージョンのベース仮想アドレスと、物理メモリ上に置かれたリージョン毎のページテーブルの物理アドレスと、リージョンに定義されたページサイズ、及びリージョンサイズに関する情報をリージョン毎のエントリに保持し、
前記探索部は、仮想アドレスを含むリージョンに対応するページテーブルの物理アドレスに基づいて、前記物理メモリ上の該当するページテーブルから仮想アドレスに対応する物理アドレスの情報を探索する、
メモリ管理装置。 - 前記探索部は、
前記リージョン情報保持部内の、ベース仮想アドレスと、ベース仮想アドレスにリージョンのページサイズを加算したアドレス範囲に仮想アドレスが含まれるエントリから、仮想アドレスを含むリージョンのページテーブルの物理アドレスを特定して、
そのページテーブルの物理アドレスで指定されるページテーブル上の、仮想アドレスとベース仮想アドレスの差分をページサイズで割算して特定されるページから物理アドレス情報を取得する、
請求項1に記載のメモリ管理装置。 - ページ単位でベース仮想アドレスとベース物理アドレスの対応関係を示す情報と、その仮想アドレスを含むリージョンに定義されたページサイズの情報を保持するアドレス変換バッファと、
前記アドレス変換バッファ中の仮想アドレスにヒットするエントリから取得されるベース物理アドレスと仮想アドレスを組み合わせて、仮想アドレスに対応する物理アドレスに変換するアドレス変換部と、
をさらに備える請求項1に記載のメモリ管理装置。 - 前記アドレス変換部は、ベース仮想アドレスと、ベース仮想アドレスにリージョンのページサイズを加算したアドレス範囲に仮想アドレスが含まれるエントリを、前記アドレス変換バッファ内で検索する、
請求項3に記載のメモリ管理装置。 - 用途が異なるデータを格納する複数のメモリ領域に対して、仮想アドレス空間上で異なるリージョンを割り当てる、
請求項1に記載のメモリ管理装置。 - テキスト領域、ヒープ領域、及びスタック領域に対して、仮想アドレス空間上で異なるリージョンを割り当てる、
請求項1に記載のメモリ管理装置。 - テキスト領域に対して、所定のブロックサイズに基づいてページサイズが定義されたリージョンを割り当てる、
請求項1に記載のメモリ管理装置。 - ヒープ領域に対して、ページサイズが異なる2以上のリージョンを割り当てる、
請求項1に記載のメモリ管理装置。 - ヒープ領域からメモリ領域を確保する際に、確保したいメモリサイズを超えないページサイズが定義されたリージョンを割り当てる、
請求項8に記載のメモリ管理装置。 - スタック領域に割り当てられたリージョンでバスフォルトが発生したことに応答して、ページサイズ単位で物理メモリを割り当てる、
請求項1に記載のメモリ管理装置。 - ページ単位で仮想アドレスから物理アドレスへのアドレス変換を行うメモリ管理方法であって、
前記仮想アドレス空間に定義されたリージョンのアドレス変換情報とリージョンが持つ固有のページサイズを保持するリージョン情報保持部に保持された前記アドレス変換情報を用いて、仮想アドレスに対応する物理アドレスの情報を探索する探索ステップと、
ページ単位でベース仮想アドレスとベース物理アドレスの対応関係を示す情報と、その仮想アドレスを含むリージョンに定義されたページサイズの情報を保持するアドレス変換バッファ中の仮想アドレスにヒットするエントリから取得されるベース物理アドレスと仮想アドレスを組み合わせて、仮想アドレスに対応する物理アドレスに変換するアドレス変換ステップと、
を有し、
前記リージョン情報保持部は、仮想アドレス空間上に定義された各リージョンのベース仮想アドレスと、物理メモリ上に置かれたリージョン毎のページテーブルの物理アドレスと、リージョンに定義されたページサイズ、及びリージョンサイズに関する情報をリージョン毎のエントリに保持し、
前記探索ステップでは、仮想アドレスを含むリージョンに対応するページテーブルの物理アドレスに基づいて、前記物理メモリ上の該当するページテーブルから仮想アドレスに対応する物理アドレスの情報を探索する、
メモリ管理方法。 - 物理メモリと、
仮想アドレス空間に定義されたリージョンのアドレス変換情報とリージョンが持つ固有のページサイズを保持するリージョン情報保持部と、仮想アドレスを含むリージョンの前記アドレス変換情報を用いて仮想アドレスに対応する物理アドレスの情報を探索する探索部を備えて、ページ単位で仮想アドレスから物理アドレスへのアドレス変換を行うメモリ管理ユニットと、
を具備し、
前記リージョン情報保持部は、仮想アドレス空間上に定義された各リージョンのベース仮想アドレスと、物理メモリ上に置かれたリージョン毎のページテーブルの物理アドレスと、リージョンに定義されたページサイズ、及びリージョンサイズに関する情報をリージョン毎のエントリに保持し、
前記探索部は、仮想アドレスを含むリージョンに対応するページテーブルの物理アドレスに基づいて、前記物理メモリ上の該当するページテーブルから仮想アドレスに対応する物理アドレスの情報を探索する、
情報処理装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018025495 | 2018-02-15 | ||
JP2018025495 | 2018-02-15 | ||
PCT/JP2018/043083 WO2019159472A1 (ja) | 2018-02-15 | 2018-11-21 | メモリ管理装置及びメモリ管理方法、並びに情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2019159472A1 JPWO2019159472A1 (ja) | 2021-01-28 |
JP7184074B2 true JP7184074B2 (ja) | 2022-12-06 |
Family
ID=67618557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020500283A Active JP7184074B2 (ja) | 2018-02-15 | 2018-11-21 | メモリ管理装置及びメモリ管理方法、並びに情報処理装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7184074B2 (ja) |
WO (1) | WO2019159472A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11200175B2 (en) * | 2020-03-20 | 2021-12-14 | Arm Limited | Memory accessor invailidation |
CN114035980B (zh) * | 2021-11-08 | 2023-11-14 | 海飞科(南京)信息技术有限公司 | 基于便笺存储器来共享数据的方法和电子装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08329687A (ja) * | 1995-06-05 | 1996-12-13 | Hitachi Ltd | 半導体集積回路 |
JPH10301848A (ja) * | 1997-04-28 | 1998-11-13 | Hitachi Ltd | 多重ページサイズを有する仮想記憶装置 |
-
2018
- 2018-11-21 WO PCT/JP2018/043083 patent/WO2019159472A1/ja active Application Filing
- 2018-11-21 JP JP2020500283A patent/JP7184074B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JPWO2019159472A1 (ja) | 2021-01-28 |
WO2019159472A1 (ja) | 2019-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230315342A1 (en) | Memory system and control method | |
US8095736B2 (en) | Methods and systems for dynamic cache partitioning for distributed applications operating on multiprocessor architectures | |
CN107844267B (zh) | 缓冲区分配和存储器管理 | |
Loh et al. | Supporting very large dram caches with compound-access scheduling and missmap | |
US10572171B2 (en) | Storage system | |
US10613796B2 (en) | System and method of writing to nonvolatile memory using write buffers | |
CN113688062B (zh) | 用于存储数据的方法和相关产品 | |
JP7184074B2 (ja) | メモリ管理装置及びメモリ管理方法、並びに情報処理装置 | |
US11853223B2 (en) | Caching streams of memory requests | |
CN110276454B (zh) | 用于机器学习的系统和控制该系统的方法以及电子系统 | |
KR102588113B1 (ko) | 스토리지 장치를 포함하는 사용자 장치 및 그것의 트림 관리 방법 | |
US11243877B2 (en) | Method, apparatus for data management, and non-transitory computer-readable storage medium for storing program | |
CN112889038A (zh) | 系统级缓存 | |
CN110688345A (zh) | 一种内存文件系统的多粒度结构化空间管理机制 | |
US11126553B2 (en) | Dynamic allocation of memory between containers | |
CN111538680A (zh) | 基于逻辑饱和度选择用于垃圾收集的大容量存储装置流 | |
US8275946B1 (en) | Channel tags in memory components for optimizing logical to physical address translations | |
US11403213B2 (en) | Reducing fragmentation of computer memory | |
JPWO2019167360A1 (ja) | メモリ管理システム及びメモリ管理方法、並びに情報処理装置 | |
CN113138851B (zh) | 一种数据管理方法、相关装置及系统 | |
JP7469306B2 (ja) | 仮想ページを不連続なバッキング物理サブページに割り当てることを可能にする方法 | |
US11726681B2 (en) | Method and system for converting electronic flash storage device to byte-addressable nonvolatile memory module | |
US10725675B2 (en) | Management apparatus, information processing apparatus, management method, and computer program product | |
US10394480B2 (en) | Storage device and storage device control method | |
US20230289297A1 (en) | Systems and methods for managing memory utilization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211005 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220927 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220929 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20221025 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221107 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7184074 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |