JP6176904B2 - プロセッサおよび推測的技術を用いるメッセージベースのネットワークインターフェース - Google Patents
プロセッサおよび推測的技術を用いるメッセージベースのネットワークインターフェース Download PDFInfo
- Publication number
- JP6176904B2 JP6176904B2 JP2012195916A JP2012195916A JP6176904B2 JP 6176904 B2 JP6176904 B2 JP 6176904B2 JP 2012195916 A JP2012195916 A JP 2012195916A JP 2012195916 A JP2012195916 A JP 2012195916A JP 6176904 B2 JP6176904 B2 JP 6176904B2
- Authority
- JP
- Japan
- Prior art keywords
- message
- messages
- processor
- interface unit
- queue
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/38—Universal adapter
- G06F2213/3808—Network interface controller
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multi Processors (AREA)
- Information Transfer Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本出願は、2011年9月7日に出願された、同時係属中の、同一人に譲渡された米国仮特許出願第61/531,950号の利益および優先権を主張する。上記出願は、全体として本明細書において参照することによって援用される。
本発明は、集積回路デバイスに関し、具体的には、高速メッセージパッシングのためのメッセージネットワークインターフェースユニットを有するデバイスに関する。
データ集約型電子デバイスおよびアプリケーションが広がるにつれて、データレートは、増加し続けている。あるデータ集約型リアルタイムアプリケーションにおいてデバイス(例えば、プログラマブル論理デバイス)の使用を容易にするために、低レベル専門処理ブロックとメッセージパッシング通信構造とを含む階層的専門処理ブロックがますます多く使用されている。専門処理ブロック(例えば、知的財産(IP)ブロック)は、ブロックサーキットリーであり、デバイス上に実装される、デバイスの汎用のプログラマブル論理から分離され得、特定の機能を実行するために少なくとも部分的にハードワイヤされる。デバイス通信構造に基づいて、他の専門処理ブロックまたはサーキットリーより低階層レベルにある専門処理ブロック(例えば、IPブロック)は、低レベル専門処理ブロック(例えば、低レベルIPブロック)と呼ばれ得る。低レベル専門処理ブロックは、メッセージネットワークを用いてこれらの専門処理ブロックに通信するプロセッサにおいて動作するソフトウェアを用いて最もよく調整される。例えば、プロセッサは、メモリマップ化されたプロトコールを用いてメッセージを読み取り、そして書き込み、メッセージは、ストリーミングパケットベースのプロトコールを用いて低レベル専門処理ブロックに伝送され、またはそこから伝送され得る。高効率的なインターフェースは、データ集約型リアルタイムアプリケーションにおいて用いられるために、プロセッサとメッセージネットワークとの間で使用され得る。
(項目1)
メッセージネットワークインターフェースユニットであって、該メッセージネットワークインターフェースユニットは、プロセッサに連結されており、該プロセッサが該プロセッサによって生成された複数のメッセージをハードウェアユニットに送信することを可能にし、該メッセージネットワークインターフェースユニットは、
該プロセッサによって生成された該複数のメッセージのうちの少なくもと1つのメッセージの引数を格納するように動作可能な伝送レジスタであって、該少なくとも1つのメッセージが推測的に生成される、伝送レジスタと、
該伝送レジスタに連結されており、該複数のメッセージをキューに入れるように動作可能なキューであって、動作は、該メッセージネットワークインターフェースユニットがトリガーメッセージを受信することに応じて該キューにおいて実行される、キューと
を含む、メッセージネットワークインターフェースユニット。
(項目2)
上記動作は、上記キューの内容を放棄しており、上記トリガーメッセージは、例外が発生したことを示す、上記項目に記載のメッセージネットワークインターフェースユニット。
(項目3)
上記動作は、上記キュー内の上記複数のメッセージを送信している、上記項目のいずれかに記載のメッセージネットワークインターフェースユニット。
(項目4)
上記伝送レジスタは、上記複数のメッセージのうちの任意のメッセージが送信されるか否かの決定の前に、該複数のメッセージのうちの各メッセージを生成するために使用される、上記項目のいずれかに記載のメッセージネットワークインターフェースユニット。
(項目5)
上記伝送レジスタは、上記少なくとも1つのメッセージの引数を格納するためのスクラッチパッドメモリを含む、上記項目のいずれかに記載のメッセージネットワークインターフェースユニット。
(項目6)
上記メッセージネットワークインターフェースユニットおよび上記プロセッサは、同じデバイス上に設置されている、上記項目のいずれかに記載のメッセージネットワークインターフェースユニット。
(項目7)
上記デバイスは、プログラマブル論理デバイスである、上記項目のいずれかに記載のメッセージネットワークインターフェースユニット。
(項目8)
ビデオスケーラーであって、該ビデオスケーラーは、上記項目のいずれかに記載のメッセージネットワークインターフェースユニットを用いて1つのフォーマットから別のフォーマットにビデオをスケールする、ビデオスケーラー。
(項目9)
メッセージネットワークインターフェースユニットに連結されたプロセッサが複数のメッセージをハードウェアユニットに送信することを可能にするための方法であって、該方法は、
該プロセッサを用いて、該複数のメッセージを推測的に生成することであって、該生成することは、該複数のメッセージのうちの少なくとも1つのメッセージの引数を伝送レジスタ内に格納することを含む、ことと、
該伝送レジスタに連結されたキュー内の該複数のメッセージをキューに入れることと、
該メッセージネットワークインターフェースユニットにおいて、動作が実行されるべきであることを示すメッセージを受信することと、
該動作が実行されるべきであることを示す該メッセージを受信することに応じて該キューにおいて動作することと
を含む、方法。
(項目10)
上記動作は、上記キューの内容を放棄することを含み、該動作が実行されるべきであることを示す上記メッセージは、期待が発生したことを示す、上記項目のいずれかに記載の方法。
(項目11)
上記動作は、上記キュー内の上記複数のメッセージを送信することを含む、上記項目のいずれかに記載の方法。
(項目12)
上記推測的に生成することは、上記複数のメッセージのうちの1つのメッセージが送信されるか否かの決定の前に、上記伝送レジスタを使用する、上記項目のいずれかに記載の方法。
(項目13)
上記複数のメッセージのうちの上記少なくとも1つのメッセージの引数を格納することは、該複数のメッセージのうちの該少なくとも1つのメッセージの該引数をスクラッチパッドメモリ内に格納することを含む、上記項目のいずれかに記載の方法。
(項目14)
上記メッセージネットワークインターフェースユニットおよび上記プロセッサは、同じデバイス上に設置されている、上記項目のいずれかに記載の方法。
(項目15)
上記デバイスは、プログラマブル論理デバイスである、上記項目のいずれかに記載の方法。
(項目16)
メッセージネットワークインターフェースユニットであって、該メッセージネットワークインターフェースユニットは、プロセッサに連結されており、該プロセッサがハードウェアユニットから複数のメッセージを受信することを可能にし、該メッセージネットワークインターフェースユニットは、
該複数のメッセージをキューに入れるように動作可能な複数のキューであって、該複数のキューのうちの少なくとも1つのキューは、関連付けられた優先度レベルを示すアドレスに割り当てられる、複数のキューと、
該複数のキューに連結されており、該複数のメッセージのうちの少なくとも1つのメッセージの引数を格納するように動作可能である受信レジスタと
を含む、メッセージネットワークインターフェースユニット。
(項目17)
上記受信レジスタは、現在の最高優先度レベルを示すアドレスに関連付けられた上記複数のキューのうちの1つのキューから上記複数のメッセージのうちの上記少なくとも1つのメッセージの上記引数を格納するように動作可能である、上記項目のいずれかに記載のメッセージネットワークインターフェースユニット。
(項目18)
上記プロセッサは、上記複数のキューの別のキュー内の他のメッセージを処理する前に、上記現在の最高優先度レベルを示す上記アドレスに関連付けられた該複数のキューのうちの上記キュー内のメッセージを処理する、上記項目のいずれかに記載のメッセージネットワークインターフェースユニット。
(項目19)
上記アドレスは、特有であり、該アドレスは、上記ハードウェアユニットから受信された上記複数のメッセージのための目的地アドレスとして使用される、上記項目のいずれかに記載のメッセージネットワークインターフェースユニット。
(項目20)
上記メッセージネットワークインターフェースユニットおよび上記プロセッサは、プログラマブル論理デバイス上に設置されている、上記項目のいずれかに記載のメッセージネットワークインターフェースユニット。
方法およびシステムは、プロセッサに連結されており、プロセッサがメッセージをハードウェアユニットに送信することを可能にするために使用されるメッセージネットワークインターフェースユニット(メッセージインターフェースユニット)に対して提供される。方法およびシステムはまた、プロセッサに連結されており、プロセッサがハードウェアユニットからメッセージを受信することを可能にするために使用されるメッセージインターフェースユニットに対して提供される。本明細書に説明されるメッセージネットワークインターフェースユニットは、実質的に短いメッセージ応答待ち時間と実質的に大きいメッセージ処理量を要求するデータ集約型リアルタイムアプリケーションの実装を可能にし得る。
本発明の全体の理解を提供するために、ある例示的な実施形態がここで説明される。しかしながら、本明細書において説明されたシステムおよび方法が対象とする用途に対して適切であるように適合かつ改変され得ることと、本明細書において説明されるシステムおよび方法が他の適切な用途において使用され得ることと、そのような他の付加および改変が本明細書の範囲から逸脱されないこととが当業者によって理解される。
TX_SELECT_QUEUE(queue_id)
TX_SELECT_QUEUEコマンドが利用可能なスペースを返すキューを選択する
1つのキューのみが使用される場合に、これは、スタートアップにおいて1回行われる必要だけがある
MIUへの一回書き込み
words_available = TX_QUEUE_SPACE();
(ワードで)TX_QUEUE_SPACEによって選択されたキュー内の利用可能なスペースを得る
MIUからの一回読み取り
TX_ARG(n, value);
現在のメッセージのn番目引数を設定する
MIUへの一回書き込み
TX_SEND_MSG(queue_id, dst_addr, eid, no_of_arguments);
現在のメッセージのeidおよびdst_addrフィールドを設定する
MIUに現在のメッセージを特定のキューに書き込ませる
MIUへの一回書き込み
キュー0が、直接送信として構成され得る
これは、後にTX_SEND_MSGメッセージを送信する必要なしに、メッセージを直接にシステム内に送信する
TX_SEND_MSG1(queue_id, dst_addr, eid, arg0)
単一引数メッセージを送信する簡潔な方法
MIUに2回書き込み、1回がarg0に対し、1回がヘッダに対する
TX_SEND_MSG2〜TX_SEND_MSG8は、複数の引数メッセージを送信するために使用され得る
MIUにそれぞれに3〜9回書き込む
TX_SEND_QUEUE(queue_id);
キュー内のメッセージのすべてを、それらがキー内にある順番でシステム内に送信する
MIUへの一回書き込み
TX_QUEUE_FREE(queue_id);
キュー内のメッセージのすべてを削除する
MIUへの一回書き込み
付録B−APIを受信する
RX_SELECT_QUEUE(queue_id)
RX_QUEUE_FILL_LEVELコマンドがフィルレベルを返すキューを選択する
1つのキューのみが使用される場合に、これは、スタートアップにおいて1回行われる必要だけがある
MIUへの一回書き込み
no_of_messages = RX_QUEUE_FILL_LEVEL();
RX_SELECT_QUEUEによって選択されたキュー内のメッセージの数を得る
MIUへの一回読み取り
header = RX_HEADER
現在のメッセージのメッセージヘッダを得る
メッセージが有効であるか否かを知るために、ビット24をチェックする(0は、利用可能なメッセージが未だないことを示す)
arg0 = RX_ARG0;
現在のメッセージの1番目の引数を得る
MIUからの一回読み取り
RX_ARG(0〜N)は、1番目〜N+1番目の引数を得るために使用され得る
RX_RECV_MSG(queue_id);
MIUにキューからの次のメッセージを用いて現在のメッセージを更新させる
MIUへの一回読み取り
Claims (15)
- プロセッサに結合されたメッセージネットワークインターフェースユニットであって、該メッセージネットワークインターフェースユニットは、該プロセッサによって生成された複数のメッセージを該プロセッサがハードウェアユニットに送信することを可能にするためのものであり、該メッセージネットワークインターフェースユニットは、
複数の伝送レジスタであって、各伝送レジスタは、該プロセッサによって生成された該複数のメッセージのうちの少なくとも1つのメッセージの複数の引数のうちのそれぞれの引数を格納するように動作可能であり、該少なくとも1つのメッセージは、過去の推測的に生成されたメッセージから変更された該複数の引数のサブセットのみを更新することによって、該過去の推測的に生成されたメッセージから該プロセッサによって推測的に生成される、複数の伝送レジスタと、
該複数の伝送レジスタに結合されたキューであって、該キューは、該複数のメッセージを該キュー内に格納し、配列するように動作可能であり、動作は、該メッセージネットワークインターフェースユニットがトリガーメッセージを受信したことに応答して該キューにおいて実行され、該動作は、該複数のメッセージのうちの1つ以上のメッセージを放棄すること、または、該複数のメッセージのうちの1つ以上のメッセージを送信することを含む、キューと
を含み、
該推測的に生成された少なくとも1つのメッセージは、期待された事象の予想において生成される、メッセージネットワークインターフェースユニット。 - 前記動作は、前記キューの内容を放棄することであり、前記トリガーメッセージは、例外が発生したことを示す、請求項1に記載のメッセージネットワークインターフェースユニット。
- 前記動作は、前記キュー内の前記複数のメッセージを送信することである、請求項1に記載のメッセージネットワークインターフェースユニット。
- 前記複数の伝送レジスタは、前記複数のメッセージのうちの任意のメッセージが送信されるか否かの決定の前に、該複数のメッセージのうちの各メッセージを生成するために使用される、請求項1に記載のメッセージネットワークインターフェースユニット。
- 前記複数の伝送レジスタは、前記少なくとも1つのメッセージの前記複数の引数を格納するためのスクラッチパッドメモリを含む、請求項1に記載のメッセージネットワークインターフェースユニット。
- 前記メッセージネットワークインターフェースユニットおよび前記プロセッサは、同じデバイス上に設置されている、請求項1に記載のメッセージネットワークインターフェースユニット。
- 前記デバイスは、プログラマブル論理デバイスである、請求項6に記載のメッセージネットワークインターフェースユニット。
- 請求項1に記載のメッセージネットワークインターフェースユニットを用いて1つのフォーマットから別のフォーマットにビデオをスケールするビデオスケーラー。
- メッセージネットワークインターフェースユニットに結合されたプロセッサが複数のメッセージをハードウェアユニットに送信することを可能にするための方法であって、該方法は、
該プロセッサを用いて、過去の推測的に生成されたメッセージから該複数のメッセージのうちの少なくとも1つのメッセージを推測的に生成することであって、該生成することは、該少なくとも1つのメッセージの複数の引数のサブセットのみを更新することと、該複数のメッセージのうちの該少なくとも1つのメッセージの該複数の引数のうちの各引数をそれぞれの伝送レジスタ内に格納することとを含み、該複数の引数の該サブセットは、該過去の推測的に生成されたメッセージから変更されたものである、ことと、
該伝送レジスタに結合されたキュー内に該複数のメッセージを格納し、配列することと、
該メッセージネットワークインターフェースユニットにおいて、動作が実行されるべきであることを示すメッセージを受信することと、
該動作が実行されるべきであることを示す該メッセージを受信したことに応答して、該キューにおいて動作することであって、該動作は、該複数のメッセージのうちの1つ以上のメッセージを放棄すること、または、該複数のメッセージのうちの1つ以上のメッセージを送信することを含む、ことと
を含み、
該推測的に生成された複数のメッセージは、期待された事象の予想において生成される、方法。 - 前記動作は、前記キューの内容を放棄することを含み、該動作が実行されるべきであることを示す前記メッセージは、例外が発生したことを示す、請求項9に記載の方法。
- 前記動作は、前記キュー内の前記複数のメッセージを送信することを含む、請求項9に記載の方法。
- 前記複数のメッセージを推測的に生成することは、該複数のメッセージのうちの1つのメッセージが送信されるか否かの決定の前に発生する、請求項9に記載の方法。
- 前記複数のメッセージのうちの前記少なくとも1つのメッセージの各引数を格納することは、該複数のメッセージのうちの該少なくとも1つのメッセージの各引数をスクラッチパッドメモリ内に格納することを含む、請求項9に記載の方法。
- 前記メッセージネットワークインターフェースユニットおよび前記プロセッサは、同じデバイス上に設置されている、請求項9に記載の方法。
- 前記デバイスは、プログラマブル論理デバイスである、請求項14に記載の方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161531950P | 2011-09-07 | 2011-09-07 | |
US61/531,950 | 2011-09-07 | ||
US13/369,727 | 2012-02-09 | ||
US13/369,727 US9176912B2 (en) | 2011-09-07 | 2012-02-09 | Processor to message-based network interface using speculative techniques |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013058200A JP2013058200A (ja) | 2013-03-28 |
JP6176904B2 true JP6176904B2 (ja) | 2017-08-09 |
Family
ID=46801351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012195916A Expired - Fee Related JP6176904B2 (ja) | 2011-09-07 | 2012-09-06 | プロセッサおよび推測的技術を用いるメッセージベースのネットワークインターフェース |
Country Status (4)
Country | Link |
---|---|
US (1) | US9176912B2 (ja) |
EP (1) | EP2568388B1 (ja) |
JP (1) | JP6176904B2 (ja) |
CN (1) | CN103227755B (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2801907A4 (en) * | 2012-02-01 | 2014-12-03 | Huawei Tech Co Ltd | MULTICOVER PROCESSOR SYSTEM |
JP2015203953A (ja) * | 2014-04-14 | 2015-11-16 | Necプラットフォームズ株式会社 | 自己診断回路、装置、自己診断方法およびプログラム |
US10194972B2 (en) | 2014-08-26 | 2019-02-05 | Ethicon Llc | Managing tissue treatment |
GB2567465B (en) * | 2017-10-12 | 2020-09-02 | Advanced Risc Mach Ltd | Message passing in a data processing system |
US10528077B2 (en) * | 2017-11-21 | 2020-01-07 | The Boeing Company | Instruction processing alignment system |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5548796A (en) * | 1993-11-02 | 1996-08-20 | National Semiconductor Corporation | Method of automatic retransmission of frames in a local area network |
JP2009043275A (ja) * | 2001-03-05 | 2009-02-26 | Pact Xpp Technologies Ag | シーケンスの形成方法 |
US20050132408A1 (en) * | 2003-05-30 | 2005-06-16 | Andrew Dahley | System for controlling a video display |
US6912610B2 (en) * | 2003-03-28 | 2005-06-28 | Emulex Design & Manufacturing Corporation | Hardware assisted firmware task scheduling and management |
KR100926007B1 (ko) * | 2005-10-07 | 2009-11-11 | 에이저 시스템즈 인크 | 스트리밍 및 제어 처리를 위한 별도의 구성을 이용한미디어 데이터 프로세싱 |
US20080082756A1 (en) * | 2006-10-02 | 2008-04-03 | Xiaowei Shen | Mechanisms and methods of using self-reconciled data to reduce cache coherence overhead in multiprocessor systems |
US7937532B2 (en) * | 2007-03-30 | 2011-05-03 | Intel Corporation | Method and apparatus for speculative prefetching in a multi-processor/multi-core message-passing machine |
US8542685B2 (en) * | 2007-08-28 | 2013-09-24 | Consert, Inc. | System and method for priority delivery of load management messages on IP-based networks |
US7949830B2 (en) * | 2007-12-10 | 2011-05-24 | International Business Machines Corporation | System and method for handling data requests |
US7855954B2 (en) * | 2008-07-21 | 2010-12-21 | International Business Machines Corporation | Speculative credit data flow control |
US20110007754A1 (en) | 2009-07-10 | 2011-01-13 | Gerald Pepper | Flexible Hardware Checksum Generator |
US8868460B2 (en) * | 2009-09-15 | 2014-10-21 | Chicago Mercantile Exchange Inc. | Accelerated trade matching using speculative parallel processing |
US9880848B2 (en) * | 2010-06-11 | 2018-01-30 | Advanced Micro Devices, Inc. | Processor support for hardware transactional memory |
-
2012
- 2012-02-09 US US13/369,727 patent/US9176912B2/en active Active
- 2012-09-05 EP EP12183040.0A patent/EP2568388B1/en active Active
- 2012-09-06 CN CN201210337676.0A patent/CN103227755B/zh active Active
- 2012-09-06 JP JP2012195916A patent/JP6176904B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20130061247A1 (en) | 2013-03-07 |
CN103227755A (zh) | 2013-07-31 |
EP2568388B1 (en) | 2017-03-15 |
EP2568388A3 (en) | 2014-06-11 |
US9176912B2 (en) | 2015-11-03 |
EP2568388A2 (en) | 2013-03-13 |
CN103227755B (zh) | 2017-06-16 |
JP2013058200A (ja) | 2013-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7058735B2 (en) | Method and apparatus for local and distributed data memory access (“DMA”) control | |
US6912610B2 (en) | Hardware assisted firmware task scheduling and management | |
US7653710B2 (en) | Hardware task manager | |
JP6096120B2 (ja) | 処理クラスタのためのロード/ストア回路要素 | |
JP6176904B2 (ja) | プロセッサおよび推測的技術を用いるメッセージベースのネットワークインターフェース | |
US20220261367A1 (en) | Persistent kernel for graphics processing unit direct memory access network packet processing | |
TW200901028A (en) | Message queuing system for parallel integrated circuit architecture and related method of operation | |
US11989556B2 (en) | Detecting infinite loops in a programmable atomic transaction | |
US11935600B2 (en) | Programmable atomic operator resource locking | |
US7447872B2 (en) | Inter-chip processor control plane communication | |
CN112189324B (zh) | 带宽匹配的调度器 | |
US6880047B2 (en) | Local emulation of data RAM utilizing write-through cache hardware within a CPU module | |
WO2022119636A2 (en) | Self-scheduling threads in a programmable atomic unit | |
CN108958903B (zh) | 嵌入式多核中央处理器任务调度方法与装置 | |
CN109426562B (zh) | 优先级加权轮转调度器 | |
CN114385326A (zh) | 桶式处理器中的线程重放到保留状态 | |
US20230107105A1 (en) | Managing hazards in a memory controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150820 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160930 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170104 |
|
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: 20170616 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170711 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6176904 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |