JP5703378B2 - アラインメント制御 - Google Patents
アラインメント制御 Download PDFInfo
- Publication number
- JP5703378B2 JP5703378B2 JP2013523662A JP2013523662A JP5703378B2 JP 5703378 B2 JP5703378 B2 JP 5703378B2 JP 2013523662 A JP2013523662 A JP 2013523662A JP 2013523662 A JP2013523662 A JP 2013523662A JP 5703378 B2 JP5703378 B2 JP 5703378B2
- Authority
- JP
- Japan
- Prior art keywords
- stack
- stack pointer
- pointer value
- alignment
- address
- 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
- 238000000034 method Methods 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 20
- 238000001514 detection method Methods 0.000 claims 4
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- 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/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/30134—Register stacks; shift registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
データ処理動作を実行するプログラム命令に応答する処理回路と、
前記処理回路に連結され、スタックデータストアのメモリ内のアドレスを示すスタックポインタ値を保存するように構成されたスタックポインタレジスタと、
前記処理回路および前記スタックポインタレジスタに連結され、前記スタックポインタ値によって指定されたアドレスで前記スタックデータストアへのスタックメモリアクセスを指定するプログラム命令に応答し、前記スタックポインタ値が所定のスタックアライメント条件と一致するかどうか検出するように構成された、スタックアラインメントチェック回路と、
前記スタックアラインメントチェック回路に連結され、スタック構成パラメータに応答して、メモリアクセス時に実行されるさらなるアライメントチェックとは独立して、選択的に前記スタックアラインメントチェック回路を無効にする、アラインメントチェック制御回路と、を備える装置を提供する。
プログラム命令に応じてデータ処理動作を実行するための処理手段と、
スタックポインタ値を保存するためのスタックポインタ手段であって、前記処理手段に連結され、前記スタックポインタ値がスタックデータストアのメモリ内のアドレスを示す手段と、
アライメントをチェックするためのスタックアラインメントチェック手段であって、前記処理手段および前記スタックポインタ手段に連結され、前記スタックポインタ値によって指定されたアドレスで前記スタックデータストアへのメモリアクセスを指定するプログラム命令に応答して、前記スタックポインタ値が所定のスタックアライメント条件と一致するかどうか検出するように構成された手段と、
アライメントチェックを制御するためのアラインメントチェク制御手段であって、前記スタックアラインメントチェック手段に連結され、スタック構成パラメータに応答して、メモリアクセス時に実行されるさらなるアライメントチェックとは独立して、選択的に前記スタックアラインメントチェック手段を無効にする手段と、を備える装置を提供する。
プログラム命令に応じてデータ処理動作を実行するステップと、
スタックポインタレジスタ内にスタックデータストアのメモリ内のアドレスを示すスタックポインタ値を保存するステップと、
前記スタックポインタ値によって指定されたアドレスで前記スタックデータストアへのメモリアクセスを指定するプログラム命令に応答して、前記スタックポインタ値が所定のスタックアライメント条件と一致するかどうか検出するステップと、
スタック構成パラメータに応答して、メモリアクセス時に前記スタックポインタ値を使用せずに実行されるアライメントチェックとは独立して選択的に前記検出ステップを省略するステップと、を含む方法を提供する。
4 プロセッサコア
6 メモリ管理ユニット
8 キャッシュメモリ
10 構成データストア
12 汎用レジスタバンク
14 マルチプライヤ
16 シフター
18 アダー
20 デコーダ回路
22 命令パイプライン
24 モードレジスタ
26、28、30、32 スタックポインタレジスタ
34 アラインメントチェック回路
36 スタックアラインメントチェック回路
38 一般的なアラインメントチェック回路
40 アラインメントチェック制御回路
Claims (20)
- データを処理するための装置であって、
データ処理動作を実行するプログラム命令に応答する処理回路と、
前記処理回路に連結され、スタックデータストアのメモリ内のアドレスを示すスタックポインタ値を保存するように構成されたスタックポインタレジスタと、
前記処理回路および前記スタックポインタレジスタに連結され、前記スタックポインタ値によって指定されたアドレスで前記スタックデータストアへのメモリアクセスを指定するプログラム命令に応答し、前記スタックポインタ値が所定のスタックアラインメント条件と一致するかどうか検出するように構成されたスタックアラインメントチェック回路と、
前記スタックアラインメントチェック回路に連結され、スタック構成パラメータに応答して、メモリアクセス時に実行されるさらなるアラインメントチェックとは独立して、選択的に前記スタックアラインメントチェック回路を無効にする、アラインメントチェック制御回路と、を備える、装置。 - 前記さらなるアラインメントチェックがすべてのメモリアクセスに対するアラインメントチェックを含む、請求項1に記載の装置。
- 前記スタックデータストアへの前記メモリアクセスが、
(i)前記スタックポインタ値によって指定されたスタックアドレスのトップで開始する前記スタックデータストアへ1つまたは複数のデータ値を保存し、かつスタックアドレスの新しいトップを示すために前記スタックポインタ値を更新する、スタックプッシュ動作、および
(ii)前記スタックポインタ値によって指定されたスタックアドレスのトップでスタートする前記スタックデータストアから1つまたは複数のデータ値を読み込み、かつスタックアドレスの新しいトップを示すために前記スタックポインタ値を更新する、スタックポップ動作、のうちの1つである、請求項1に記載の装置。 - 前記処理回路に連結され、任意のメモリアドレスで前記メモリへの汎用アクセスを指定するプログラム命令に応答し、前記アドレスが所定の汎用アラインメント条件と一致するかどうか検出するように構成された汎用アラインメントチェック回路を備える、請求項2および3のうちのいずれか1項に記載の装置。
- 前記アラインメントチェック制御回路が前記汎用アラインメントチェック回路に連結され、かつ一般的な構成パラメータに応答して、前記スタックデータストアへの前記メモリアクセス時に、前記スタックポインタ値を使用して、前記スタックアラインメントチェック回路により実行されるアラインメントチェックとは独立して、選択的に前記汎用アラインメントチェック回路を無効にする、請求項4に記載の装置。
- 前記所定のスタックアラインメント条件が、
前記スタックポインタ値に制約がないか、
前記スタックポインタ値が、Nが0でない整数値であるとした場合の、2Nの倍数である整数であるか、
のうちの1つである、請求項1から5のいずれか1項に記載の装置。 - Nが3および4のうちの1つである、請求項6に記載の装置。
- Nがユーザー制御の下で設定される、請求項6および7のいずれか1項に記載の装置。
- 前記装置は、各スタックポインタ値をそれぞれ保存する複数のスタックポインタレジスタを備え、
前記処理回路が複数の例外レベルのいずれかで動作するよう構成され、
それぞれの例外レベルは、前記複数のスタックポインタレジスタのうちの、それぞれの1つに関連付けられ、
前記複数のスタックポインタレジスタのうちの、それぞれの1つは、関連付けられた前記例外レベルにて前記処理回路が動作している時に使用され、
前記装置は、それぞれのスタック構成パラメータを有し、
それぞれの前記スタック構成パラメータは、関連付けられた例外レベルにおいて、前記スタックアラインメントチェック回路を無効にするか否かを制御するためのものである、請求項1から請求項8のいずれか1項に記載の装置。 - データを処理するための装置であって、
プログラム命令に応じてデータ処理動作を実行するための処理手段と、
スタックポインタ値を保存するためのスタックポインタ手段であって、前記処理手段に連結され、前記スタックポインタ値がスタックデータストアのメモリ内のアドレスを示す、手段と、
アラインメントをチェックするためのスタックアラインメントチェック手段であって、前記処理手段および前記スタックポインタ手段に連結され、前記スタックポインタ値が所定のスタックアラインメント条件と一致するかどうか検出するために前記スタックポインタ値によって指定されたアドレスで前記スタックデータストアへのメモリアクセスを指定するプログラム命令に応答するように構成された、手段と、
アラインメントチェックを制御するためのアラインメントチェク制御手段であって、前記スタックアラインメントチェック手段に連結され、スタック構成パラメータに応答して、メモリアクセス時に実行されるさらなるアラインメントチェックとは独立して、選択的に前記スタックアラインメントチェック手段を無効にする、手段と、を備える、装置。 - データを処理する方法であって、
スタックポインタレジスタ内にスタックデータストアのメモリ内のアドレスを示すスタックポインタ値を保存するステップと、
前記スタックポインタ値によって指定されたアドレスで前記スタックデータストアへのメモリアクセスを指定するプログラム命令に応じて、前記スタックポインタ値が所定のスタックアラインメント条件と一致するかどうか検出することが、有効とされているか、または、無効とされているかを、スタック構成パラメータに基づいて判断するステップと、
前記検出することが有効とされていると判断される場合に、前記プログラム命令に応じて、前記検出することを実行するステップと、
前記検出することが無効とされていると判断される場合に、前記プログラム命令に応じて、メモリアクセス時に実行されるさらなるアラインメントチェックとは独立して、前記検出することを省略するステップと、を含む、方法。 - 前記さらなるアラインメントチェックがすべてのメモリアクセスに対するアラインメントチェックを含む、請求項11に記載の方法。
- 前記スタックデータストアへのメモリアクセスが、
(i)前記スタックポインタ値によって指定されたスタックアドレスのトップで開始する前記スタックデータストアへ1つまたは複数のデータ値を保存し、かつスタックアドレスの新しいトップを示すために前記スタックポインタ値を更新する、スタックプッシュ動作、
(ii)前記スタックポインタ値によって指定されたスタックアドレスのトップで開始する前記スタックデータストアから1つまたは複数のデータ値を読み込み、かつスタックアドレスの新しいトップを示すために前記スタックポインタ値を更新する、スタックポップ動作、のうちの1つである、請求項11および12のいずれか1項に記載の方法。 - 任意のメモリアドレスで前記メモリへの汎用アクセスを指定するプログラム命令に応答して、前記アドレスが所定の汎用アラインメント条件と一致するかどうか検出する汎用アラインメントチェックを実行するステップを含む、請求項11、12および13のいずれか1項に記載の方法。
- 一般的な構成パラメータに応答して、前記スタックデータストアへのメモリアクセス時に、前記スタックポインタ値を使用して実行されるアラインメントチェックとは独立して、選択的に前記汎用アラインメントチェックを無効にする、請求項14に記載の方法。
- 前記所定のスタックアラインメント条件が、
前記スタックポインタ値に制約がないか、
前記スタックポインタ値が、Nが0でない整数値であるとした場合の、2Nの倍数である整数であるか、
のうちの1つである、請求項11から15のいずれか1項に記載の方法。 - Nは3および4のうちの1つである、請求項16に記載の方法。
- Nはユーザー制御の下で設定される、請求項16および請求項17のいずれか1項に記載の方法。
- 前記方法は、
複数のスタックポインタレジスタのそれぞれに複数のスタックポインタ値を保存するステップと、
処理回路が複数の例外レベルのいずれかで動作するステップと、
ある例外レベルで前記処理回路が動作しているときに、スタックアラインメントチェックを行うための前記検出することを有効とするか、または、無効とするかを、関連付けられた前記スタック構成パラメータに基づいて制御するステップとをさらに含み、
それぞれの例外レベルは、前記複数のスタックポインタレジスタのうちの、それぞれの1つに関連付けられ、
前記複数のスタックポインタレジスタのうちのそれぞれの1つは、関連付けられた前記例外レベルにて前記処理回路が動作している時に使用され、
それぞれの前記例外レベルは、それぞれのスタック構成パラメータに関連付けられる、請求項11から18のいずれか1項に記載の方法。 - コンピュータに請求項11から19のうちのいずれか1項に記載の方法を実行させるためのコンピュータプログラムを含む仮想マシン。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1013528.3A GB2482710A (en) | 2010-08-12 | 2010-08-12 | Enabling stack access alignment checking independently of other memory access alignment checking |
GB1013528.3 | 2010-08-12 | ||
PCT/GB2011/051090 WO2012020237A1 (en) | 2010-08-12 | 2011-06-13 | Alignment control |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013536504A JP2013536504A (ja) | 2013-09-19 |
JP5703378B2 true JP5703378B2 (ja) | 2015-04-15 |
Family
ID=42937869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013523662A Active JP5703378B2 (ja) | 2010-08-12 | 2011-06-13 | アラインメント制御 |
Country Status (10)
Country | Link |
---|---|
US (1) | US9760374B2 (ja) |
EP (1) | EP2603852B1 (ja) |
JP (1) | JP5703378B2 (ja) |
KR (1) | KR101924821B1 (ja) |
CN (1) | CN103052942B (ja) |
GB (1) | GB2482710A (ja) |
IL (1) | IL223731A (ja) |
MY (1) | MY164219A (ja) |
TW (1) | TWI512460B (ja) |
WO (1) | WO2012020237A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9280492B2 (en) | 2013-12-28 | 2016-03-08 | Intel Corporation | System and method for a load instruction with code conversion having access permissions to indicate failure of load content from registers |
US10579377B2 (en) | 2017-01-19 | 2020-03-03 | International Business Machines Corporation | Guarded storage event handling during transactional execution |
US10725685B2 (en) | 2017-01-19 | 2020-07-28 | International Business Machines Corporation | Load logical and shift guarded instruction |
US10496311B2 (en) | 2017-01-19 | 2019-12-03 | International Business Machines Corporation | Run-time instrumentation of guarded storage event processing |
US10452288B2 (en) | 2017-01-19 | 2019-10-22 | International Business Machines Corporation | Identifying processor attributes based on detecting a guarded storage event |
US10732858B2 (en) | 2017-01-19 | 2020-08-04 | International Business Machines Corporation | Loading and storing controls regulating the operation of a guarded storage facility |
US10496292B2 (en) * | 2017-01-19 | 2019-12-03 | International Business Machines Corporation | Saving/restoring guarded storage controls in a virtualized environment |
GB2563887B (en) * | 2017-06-28 | 2019-12-25 | Advanced Risc Mach Ltd | Masking of architectural state associated with a realm |
CN110175049B (zh) * | 2019-05-17 | 2021-06-08 | 西安微电子技术研究所 | 一种支持地址未对齐的数据拆分与聚合访问的处理系统及方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6491228A (en) * | 1987-09-30 | 1989-04-10 | Takeshi Sakamura | Data processor |
US5201043A (en) * | 1989-04-05 | 1993-04-06 | Intel Corporation | System using both a supervisor level control bit and a user level control bit to enable/disable memory reference alignment checking |
GB2230118B (en) * | 1989-04-05 | 1992-12-23 | Intel Corp | Microprocessor providing selectable alignment checking on memory references |
JP3507193B2 (ja) * | 1995-06-06 | 2004-03-15 | 株式会社東芝 | ロード・ストア命令処理装置 |
US5666508A (en) * | 1995-06-07 | 1997-09-09 | Texas Instruments Incorporated | Four state two bit recoded alignment fault state circuit for microprocessor address misalignment fault generation |
US5596717A (en) * | 1995-06-07 | 1997-01-21 | Texas Instruments Incorporated | Four state token passing alignment fault state circuit for microprocessor address misalignment fault generation |
US5761491A (en) * | 1996-04-15 | 1998-06-02 | Motorola Inc. | Data processing system and method for storing and restoring a stack pointer |
US6055619A (en) | 1997-02-07 | 2000-04-25 | Cirrus Logic, Inc. | Circuits, system, and methods for processing multiple data streams |
US6341344B1 (en) * | 1998-03-20 | 2002-01-22 | Texas Instruments Incorporated | Apparatus and method for manipulating data for aligning the stack memory |
US6697834B1 (en) * | 1999-12-01 | 2004-02-24 | Sun Microsystems, Inc. | Mutual exculsion system and method for restarting critical sections of code when preempted during a critical section |
US6829700B2 (en) * | 2000-12-29 | 2004-12-07 | Stmicroelectronics, Inc. | Circuit and method for supporting misaligned accesses in the presence of speculative load instructions |
US6772372B2 (en) * | 2001-03-06 | 2004-08-03 | Hewlett-Packard Development Company, L.P. | System and method for monitoring unaligned memory accesses |
US7134000B2 (en) | 2003-05-21 | 2006-11-07 | Analog Devices, Inc. | Methods and apparatus for instruction alignment including current instruction pointer logic responsive to instruction length information |
US7493599B2 (en) * | 2003-11-26 | 2009-02-17 | Intel Corporation | Device, system and method for detection and handling of misaligned data access |
US7797681B2 (en) * | 2006-05-11 | 2010-09-14 | Arm Limited | Stack memory selection upon exception in a data processing system |
-
2010
- 2010-08-12 GB GB1013528.3A patent/GB2482710A/en not_active Withdrawn
-
2011
- 2011-06-13 KR KR1020137003613A patent/KR101924821B1/ko active IP Right Grant
- 2011-06-13 CN CN201180038097.XA patent/CN103052942B/zh active Active
- 2011-06-13 JP JP2013523662A patent/JP5703378B2/ja active Active
- 2011-06-13 MY MYPI2012701306A patent/MY164219A/en unknown
- 2011-06-13 EP EP20110733692 patent/EP2603852B1/en active Active
- 2011-06-13 WO PCT/GB2011/051090 patent/WO2012020237A1/en active Application Filing
- 2011-06-28 US US13/067,805 patent/US9760374B2/en active Active
- 2011-08-02 TW TW100127445A patent/TWI512460B/zh active
-
2012
- 2012-12-18 IL IL223731A patent/IL223731A/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
EP2603852A1 (en) | 2013-06-19 |
TWI512460B (zh) | 2015-12-11 |
JP2013536504A (ja) | 2013-09-19 |
KR101924821B1 (ko) | 2019-02-27 |
US9760374B2 (en) | 2017-09-12 |
KR20130098303A (ko) | 2013-09-04 |
IL223731A (en) | 2016-09-29 |
GB201013528D0 (en) | 2010-09-29 |
GB2482710A (en) | 2012-02-15 |
TW201229752A (en) | 2012-07-16 |
CN103052942A (zh) | 2013-04-17 |
WO2012020237A1 (en) | 2012-02-16 |
CN103052942B (zh) | 2016-08-03 |
EP2603852B1 (en) | 2015-04-29 |
MY164219A (en) | 2017-11-30 |
US20120042136A1 (en) | 2012-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5703378B2 (ja) | アラインメント制御 | |
JP5571201B2 (ja) | ハードウェアモードおよびセキュリティフラグに基づく、読み出される命令用のメモリエリアの制限 | |
JP6006248B2 (ja) | 命令エミュレーションプロセッサ、方法、およびシステム | |
US20130339657A1 (en) | Local clearing control | |
JP6005392B2 (ja) | ルーティングのための方法及び装置 | |
WO2012125201A1 (en) | Page fault handling mechanism | |
US9753870B2 (en) | Hardware monitor with context switching and selection based on a data memory access and for raising an interrupt when a memory access address is outside of an address range of the selected context | |
JP5625809B2 (ja) | 演算処理装置、情報処理装置及び制御方法 | |
CN107851015B (zh) | 向量操作数位大小控制 | |
JP2008033890A (ja) | マイクロコンピュータシステム | |
JP6920286B2 (ja) | 例外処理 | |
US11461104B2 (en) | Deferred system error exception handling in a data processing apparatus | |
JP2018531462A6 (ja) | 例外処理 | |
JP2006221606A (ja) | データプロセッサ | |
JP2009271597A (ja) | プロセッサ | |
JP2006236234A (ja) | 割込み処理回路 | |
JPWO2020182498A5 (ja) | ||
EP2525286A1 (en) | Co-processor interface | |
JP2002312163A (ja) | 情報処理装置、情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130805 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141015 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141027 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150107 |
|
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: 20150126 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150223 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5703378 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |