JP5603892B2 - メモリの微小タイリング - Google Patents

メモリの微小タイリング Download PDF

Info

Publication number
JP5603892B2
JP5603892B2 JP2012032512A JP2012032512A JP5603892B2 JP 5603892 B2 JP5603892 B2 JP 5603892B2 JP 2012032512 A JP2012032512 A JP 2012032512A JP 2012032512 A JP2012032512 A JP 2012032512A JP 5603892 B2 JP5603892 B2 JP 5603892B2
Authority
JP
Japan
Prior art keywords
request
subchannel
channel
requests
memory
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
Application number
JP2012032512A
Other languages
English (en)
Other versions
JP2012104161A (ja
Inventor
アキヤマ、ジェイムズ
クリフォード、ウィリアム
オズボーン、ランディ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of JP2012104161A publication Critical patent/JP2012104161A/ja
Application granted granted Critical
Publication of JP5603892B2 publication Critical patent/JP5603892B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/122Tiling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/125Frame memory handling using unified memory architecture [UMA]

Description

本発明は、コンピュータシステムに関し、特に本発明はメモリのアクセス制御に関する。
統合メモリアーキテクチャ(UMA)が実施されたコンピュータシステムを特徴付けるものは、ビデオメモリとしてメインメモリにアクセスするグラフィックスコントローラである。しかし、CPUのキャッシュの伝送線容量要件によってUMAグラフィックスシステムのメモリ効率は制約される。たとえば、グラフィックスコントローラが一度に一個もしくは二、三個のピクセルまたはテクセル上で動作できるので、グラフィックス系にとっての理想メモリアクセス容量は4乃至16バイトである。しかしながら、大半のメモリアーキテクチャは、CPUのメモリ効率を最適化するために64バイトのCPUキャッシュ伝送線容量用に最適化されている。その結果、平均的に、メモリから読み出されたデータの著しい量がグラフィックスコントローラに利用されないことが起こり得る。
ディスクリートグラフィックスコントローラの製造者らは、より幅の狭いメモリチャネルを用いることによりこの過剰読み出しを最小化している。しかし、この解決法は、UMAに基づいた統合グラフィックスコントローラには用い得ない。
メモリリクエスト結合メカニズムを記載する。本発明の以下の詳細な説明において、本発明の完全な理解を得るための数多くの具体的詳細を述べる。しかし、本発明はこれらの具体的詳細を用いずに実施され得ることが当業者には明らかになるであろう。他の例においては、本発明を曖昧にしないために周知の構成と装置をブロック図形式において示し、詳細には示さない。
明細書において「一実施形態」もしくは「ある実施形態」と述べた場合、当該実施形態に関連して記載された特定の特徴、構造、もしくは特性が、発明の実施形態の少なくとも一つに含まれることを示す。明細書の各所において「一実施形態においては」との成句が現れるが、必ずしも全てが同一の実施形態を示さない。
図1は、コンピュータシステム100の一実施形態のブロック図である。コンピュータシステム100は、インターフェース105に接続された中央演算処理装置(CPU)102を含む。一実施形態においては、CPU102は、カリフォルニア州サンタクララ所在のインテル社から入手できるペンティアム(登録商標)IVプロセッサのペンティアム(登録商標)系列のプロセッサである。または、他のCPUを用いてよい。たとえば、CPU102を多数の処理コアを用いて実施してよい。更に他の実施形態においては、コンピュータシステム100は、多数のCPU102を含んでよい。
更なる実施形態においては、インターフェース105にはチップセット107も接続される。チップセット107は、メモリ制御コンポーネント110を含む。メモリ制御コンポーネント110は、メインシステムメモリ115に接続されたメモリコントローラ112を含んでよい。メインシステムメモリ115には、データとCPU102またはシステム100に含まれるその他の装置により実行される指示シーケンスが格納される。一実施形態においては、メインシステムメモリ115は動的ランダムアクセスメモリ(DRAM)を含むが、しかしメインシステムメモリ115をその他の種のメモリを用いて実施してよい。多数のCPU及び/又は多数のシステムメモリ等の更なる装置もインターフェース105に接続してよい。
メモリ制御コンポーネント110をインターフェースを介して入出力(I/O)制御コンポーネント140に接続してよい。I/O制御コンポーネント140はコンピュータシステム100内のI/O装置へのインターフェースである。周辺コンポーネントインターコネクト(PCI)エクスプレス、アクセラレーテッドグラフィクスポート(AGP)、ユニバーサルシリアルバス(USB)、ロウピンカウント(LPC)バス等のI/Oバス、もしくはその他のいかなるI/Oバス(不図示)においても、I/O制御コンポーネント140は標準のI/O動作を支持してよい。
一実施形態によると、グラフィックスコントローラ160がチップセット107と通信し、コンピュータシステム100に接続された表示モニター(不図示)に映像グラフィックスを提供するために実施される。グラフィックスコントローラ160はビデオメモリとしてメインメモリ115にアクセスする。上記したように、グラフィックス系のメモリアクセス容量は理想的には4乃至16バイトであることが多く、一方でメモリアーキテクチャはCPUメモリ効率を最適化するために64バイトCPU伝送線容量用に最適化されているので、グラフィックスシステムとCPUの両方を支持するメモリ装置のメモリ効率には制約がある。
微小タイリング
一実施形態によると、メモリ制御コンポーネント110は、64バイトのメモリトランザクションを維持しつつ、グラフィックス装置用にメモリリクエストの容量を小さくすることを目的とした微小タイリングを特徴とする。DDR DRAM技術に基づいたもの等の標準的なメモリチャネルは、物理幅が約mビットである。メモリトランザクションは、全論理幅であるM=m*T/8バイトに対してTビットの伝送量を含む。各トランザクションにおけるバイトは、連続的なアドレスを有すると考えられる。以下の議論においては、幅という用語により論理幅を示す。
微小タイリングによると、Mバイト幅のチャネルが、幅NがそれぞれM/SバイトであるS個のサブチャネルに分割され、Nバイトのデータが各サブチャネル上を伝送される。各サブチャネルに対してアドレスを与えてよく、各々のアドレスのビットのうちのあるビット数Iがその他のサブチャネルに与えられたアドレスのうちの該当ビットと異なればよい。各サブチャネル上を伝送されるデータは、連続したアドレス領域を表していると考えられる。しかし、各サブチャネル上のデータのブロックは、必ずしも連続的なアドレス領域からのものでない。各サブチャネルは、チャネルの全メモリ位置のうちのサブセットを含む。
図2は、微小タイリングを支持するメモリ制御コンポーネント110の一実施形態を示す。一実施形態においては、マルチチャネルメモリサブシステムは、各チャネルについて微小タイリング用のメモリコントローラを備える。それゆえ、図2に示すように、メモリ制御コンポーネント110は、メモリコントローラ112を2個(メモリコントローラ1と2)、つまり2つのチャネルの各々に対して1個含む。各チャネルはS個のサブチャネルを含み、それぞれがNバイト幅である。それゆえ、各チャネルは、M=N*Sバイト幅である。
本図において、メモリの読み出しもしくは書き込みリクエストは、2×2個のピクセルもしくはテクセルの配列を示し得る2×2個の正方形の配列として記述される。サブチャネルに割り当てられる以前のリクエストが示されている。サブチャネルへ割り当てられた後、リクエストにはサブチャネルへ割り当てられたことを示す0乃至S−1の番号が与えられる。読み出しトランザクションの場合、メモリ制御コンポーネント110に接続されたリクエスタ205へとNバイトのリターンが発生する。
メモリ制御コンポーネント110は、メモリコントローラ112へと接続されたチャネル割り当て論理210を含む。チャネル割り当て210はリクエスタ205から受け取った各リクエストをメモリコントローラ112を介してメモリチャネル240へと割り当てる。更に、各メモリコントローラ112は、サブチャネル割り当て215と、リオーダバッファ220と、トランザクションアセンブラ230とを含む。それゆえ、リクエストは、図2に示すメモリコントローラ1又はメモリコントローラ2に割り当てられる。
サブチャネルアサインメント215は、各リクエストをメモリチャネル240内のサブチャネルへと割り当てる。リオーダバッファ220は、リクエストを収集することにより、トランザクションアセンブラ230による各メモリ240のサブチャネルへのメモリアクセスをアセンブルする試みを可能にする。一実施形態によると、各サブチャネルは、等しくNバイト幅を有する。
図2に示すシステムの動作中、アドレスAにおいてNバイトのデータブロックを読み出す、もしくは書き込むためのリクエストがメモリコントローラ(1又は2)に入力し、サブチャネルに割り当てられるか、もしくはリオーダバッファ220に保存される。一実施形態においては、特定的サブチャネル割り当てsを以下の処理により定義してよい。リクエストのアドレスAを右にP=log(N)ビット分だけ移行させて新たな整数値A(〜)(たとえば、A(〜)=A>>P)を得て、sをA(〜)の最下位のQ=log(S)ビット(たとえば、s=A(〜)&((1<<Q)−1))とする。
メモリコントローラは、リオーダバッファ220から読み出しリクエストをS個、各サブチャネルに対して1個選択することによりメモリ読み出しトランザクションを生成する。メモリコントローラは、リオーダバッファ220から書き込みリクエストをS個、各サブチャネルに対して1個選択することによりメモリ書き込みトランザクションを生成する。共有アドレスラインにより表されるアドレス部分は、トランザクション内の全てのサブチャネルリクエストについて同じである。
図3は、物理アドレスにおけるアドレスビットの解釈についての一実施形態である。P個のサブチャネルデータアドレスビットより上位のアドレスビットの共有・独立アドレスビット及びサブチャネル選択ビットへの分割は任意であるので、図3に示す共有・独立アドレスビット及びサブチャネル選択ビットの選択方法は例示目的のものである。独立アドレスビットはサブチャネル毎に異なり、また必ずしも連続的でない。サブチャネルへ送られるアドレスビットは、当該サブチャネルの共有アドレスビットと独立アドレスビットである。
図4は、16バイトのリクエスト4個から64バイトのトランザクションをアセンブルするメモリ制御コンポーネント110の一実施形態を単一のチャネルだけを含めて示す。図4は、各サブチャネルのリオーダ待ち行列として実施されるリオーダバッファ220を示す。しかし、その他の実施形態においては、リオーダバッファ220をその他のメカニズムとして実施してよい。
本実施形態においては、トランザクションアセンブラ230は、各サブチャネルに対して1個存在する16Bのリクエストから64Bのメモリリクエストを構成する。メモリリクエストを構成する16バイトのリクエストの全てが同一の共有アドレスビットを有する。それゆえ、アセンブラ230は、待ち行列を調べ、リクエストが共通の共有アドレスを有するかに基づいて単一のトランザクションにアセンブルすることができるリクエストを探す。
図4に示す実施形態においては、アセンブラ230は、サブチャネル1cに対してはリクエストを見つけることができない。トランザクションを生成しようとするとき、メモリコントローラは、全てが同一の共有アドレスセグメントを有するようには(たとえば、各共有アドレスビットの値がリクエストの全部について同一であるようには)各サブチャネルに対してリクエストを探し出すことができないことがある。
対応する待ち行列においてサブチャネルに対するリクエストが見つからない場合、当該サブチャネルからの、もしくは当該サブチャネルへの伝送は行われないことになる。一実施形態においては、サブチャネルに対するリクエストが見つからない場合、任意の位置から読み出して読み出し結果を廃棄する。別の実施形態においては、サブチャネル毎に、当該チャネルに対応するリクエストが得られない場合にサブチャネルへの電力を下げるために用いる制御線を更に設けてよい。
微小タイリングメモリのサブチャネルは、共有アドレスビットとI個の独立アドレスビットにより決定されるいくつかのドレス領域内の不連続なメモリアドレスにアクセスすることができる。Iを適切に選択することにより、独立サブチャネル同士の同時並行性と情報量効率が向上し、各サブチャネルに対してIビットのアドレス信号を繰り返すコストにも釣り合う。
図5Aと5Bは、微小タイリングのパフォーマンス利益を示す。各図は、タイリングされたアドレス空間における三角形のラスタライゼーションを示しており、各小正方形が4バイトのピクセルもしくはテクセルを表す。図5Aは、標準的メモリシステムにおいてリクエストがそれぞれ64バイトである場合の過剰読み出しを表す。4×4個のピクセルを含む各ブロックは、メモリの64バイト配列ブロックを表す。三角形は、57個のピクセルにまたがる。標準的なメモリサブシステムにおいては、これら57個のピクセルはメモリの中の11個の(64バイトである)ブロックに含まれる。それゆえ、これら57個のピクセルにアクセスするためには、余分に119個のピクセル分の使用されないデータにアクセスする(たとえば、32%の効率性となる)。
図5Bは、リクエストがそれぞれ16バイトであり、当該リクエストの全部を微小タイリングアセンブラが利用して、使用されないサブチャネルが発生することなく64バイトのメモリトランザクションを構成することができた場合における過剰読み出しを示す。この場合、三角形は2×2個のピクセルを含む23個の配列に接触し、35個のピクセル分のデータが余分にアクセスされる(たとえば、62%の効率性となる)。微小タイリングの効果は、完全にポピュレートされるメモリトランザクションを構成できるアセンブラの性能に依存する。
微小タイリングリクエストのマッピング
上述したように、特定的サブチャネル割り当てsを、リクエストのアドレスAを右にP=log(N)ビット分移行させて新たな整数値A(〜)(たとえば、A(〜)=A>>P)を得て、sをA(〜)の最下位のQ=log(S)ビット(たとえば、s=A(〜)&((1<<Q)−1))とすることにより定義してよい。図6は、線形アドレス空間の場合における特定的サブチャネル割り当ての一実施形態を示す。本実施形態においては、チャネルは4つのサブチャネルから構成されてよい(S=4)。
図6は、線形アドレス空間の一部における、あるアドレスAについてのサブチャネル割り当てを示しており、各小ブロックはNバイトを表す。ブロック0はサブチャネル0に割り当てられるアドレス領域を表し、ブロック1はサブチャネル1に割り当てられるアドレス領域を表し、ブロック2はサブチャネル2に割り当てられるアドレス領域を表し、ブロック3はサブチャネル3に割り当てられるアドレス領域を表す。
図7は、特定的サブチャネル割り当ての別の実施形態を、二次元にタイリングされたアドレス空間において、再びあるアドレスAについて示す。二次元アドレス空間タイリング法は数多く存在し、より高次元のタイリングも可能であることに注意されたい。
リクエストアドレスがサブチャネル全体に対して均等に分配されなければ特定的サブチャネル割り当ての実施は上手く行われない。たとえば、図8は、グラフィックスアプリケーションで用いられる典型的なタイリングを施されたアドレス空間における特定的サブチャネル割り当ての一実施形態を示す。
図8には、三角形の輪郭が含まれており、三角形のレンダリングの最中にアクセスされるNバイトのブロックが示される。三角形の左側の辺と底辺に沿ったブロックへのアクセスリクエストはサブチャネル間で均等に分配されないことに注意されたい。結果として、トランザクションアセンブラ230は、全てのサブチャネルに対するリクエストを含む完全なトランザクションをアセンブルすることができない。
一実施形態によると、リクエストアドレスがサブチャネル全てに対して均等に分配される可能性を最大化し、それゆえ微小タイリングの情報量減少性を向上させることを目的として微小タイリングアーキテクチャに対して非特定的サブチャネル割り当てを行ってよい。
図9は、微小タイリングを実施するメモリコントローラの別の実施形態を示す。この実施形態は、各メモリコントローラにおいてサブチャネル割り当て215に接続されたマッピング論理950を設ける。上記と同様に、図9は、各サブチャネルに対してリオーダ待ち行列として実施されるリオーダバッファ220を示す。この構成には2つのチャネルが含まれ、それゆえ2つのメモリコントローラが含まれる。各チャネルは4つのサブチャネルを含んでおり、それぞれが16バイト幅である。それゆえ、各チャネルは64バイト幅である。
一実施形態にいては、マッピング論理950は、パターンの繰り返しを低減するためにはリクエストをいかにサブチャネルへと割り当てるべきかを示すサブチャネル割り当て215へと入力信号を送信する。結果として、オブジェクトがサブチャネル全てについて均等に描画され、ホットスポットが回避されるようにマッピングは変更される。別の実施形態においては、マッピング論理950はアドレス空間の異なる領域に対して異なるマッピングを行う。アドレス空間のある領域に対して行われたマッピングは、当該領域内のデータが関心の対象でなくなったときから、時間経過にしたがって変化させてよい。
図10は、非特定的サブチャネルマッピングの一実施形態を示しており、ブロックは図8について上記したと同じ内容である。この場合、三角形の左側の辺と底辺に沿ったブロックへのアクセスリクエストは、サブチャネル間でより均等に分配される。このサブチャネル割り当ての効果は、微小タイリングリクエストをより効率的にメモリチャネルへとポピュレートすることにより情報量を減少させることである。同様に、線形アドレス空間の場合、適切に選択した非特定的サブチャネル割り当てマッピングにより、特にメモリアクセスが通常Mバイトの倍数分にまたがる場合においては、情報量を減少させることができる。
図11は、コンピュータシステム100の別の実施形態を示す。この実施形態においては、チップセット107は独立したメモリ制御コンポーネントとI/O制御コンポーネントに対置される単一の制御ハブ1120を含む。それゆえ、メモリコントローラ112は、CPU102内に含めてよく、メモリ115がCPU102に接続されてよい。このような実施形態において、グラフィックスコントローラ160は制御ハブ1120に接続されてよく、CPU102を介してメインメモリ115にアクセスする。
前出の記載を読了後、当業者には本発明の多様な改良や変更が必ず明らかとなるであろうが、例示目的で示され記載されたいかなる特定の実施形態も制限的なものであることを全く意図されていないことが理解されるであろう。それゆえ、多様な実施形態の詳細への言及により請求の範囲を限定することは意図されておらず、請求の範囲においては、発明にとって必須であると見做される特徴だけが記載される。
発明は、例として説明し、添付図面における図に限定されない。図面においては、類似の参照番号により類似の要素が示される。
図1は、コンピュータシステムの一実施形態のブロック図である。
図2は、メモリコントローラの一実施形態を示す。
図3は、論理仮想アドレスの一実施形態を示す。
図4は、メモリコントローラの別の実施形態を示す。
図5Aと5Bは、パフォーマンス利益を示す。
図6は、特定的サブチャネル割り当ての一実施形態を示す。
図7は、特定的サブチャネル割り当ての別の実施形態を示す。
図8は、特定的サブチャネル割り当ての別の実施形態を示す。
図9は、メモリコントローラの別の実施形態を示す。
図10は、非特定的サブチャネル割り当ての一実施形態を示す。
図11は、コンピュータシステムの別の実施形態を示す。

Claims (30)

  1. CPU、メインメモリ及びグラフィックコントローラを有する統合メモリアーキテクチャにおいて、ビデオメモリとして前記メインメモリにアクセスする前記グラフィックコントローラおよび前記メインメモリに接続されるメモリコントローラであって、
    前記メインメモリが有するランダムアクセスメモリデバイス(RAMデバイス)における第1チャネルを、独立してアドレス指定可能な少なくとも第1および第2のサブチャネルへと分割する第1の制御コンポーネントであって、前記RAMデバイスにおける前記第1チャネルにおける複数のメモリ位置にアクセスするための前記グラフィックコントローラからの第1のリクエスト及び第2のリクエストを受け取り、全てのサブチャネルに対して均等にリクエストアドレスが分配される可能性が最大化されるように割り当てを行う第1割り当て論理と、前記第1チャネルにおける前記第1のサブチャネルにアクセスすべく前記第1のリクエストを一以上の追加のリクエストと結合し、かつ前記第1チャネルにおける前記第2のサブチャネルにアクセスすべく前記第2のリクエストを一以上の追加のリクエストと結合することにより複数のメモリリクエストを構築する第1のトランザクションアセンブラと、を有する第1の制御コンポーネントと、
    前記RAMデバイスにおける第2チャネルを、独立してアドレス指定可能な少なくとも第1および第2のサブチャネルへと分割する第2の制御コンポーネントであって、前記RAMデバイスにおける前記第2チャネルにおける複数のメモリ位置にアクセスするための前記グラフィックコントローラからの第3のリクエスト及び第4のリクエストを受け取り、全てのサブチャネルに対して均等にリクエストアドレスが分配される可能性が最大化されるように割り当てを行う第2割り当て論理と、前記第2チャネルにおける前記第1のサブチャネルにアクセスすべく前記第3のリクエストを一以上の追加のリクエストと結合し、かつ前記第2チャネルにおける前記第2のサブチャネルにアクセスすべく前記第4のリクエストを一以上の追加のリクエストと結合することにより、複数のメモリリクエストを構築する第2のトランザクションアセンブラと、を有する第2の制御コンポーネントと、
    複数の前記リクエストを保存するリオーダバッファと、
    を備え、
    前記第1及び第2のトランザクションアセンブラのそれぞれは、
    前記複数のリクエストに割り当てられた共通のアドレスに基づいて、関連する前記第1チャネルまたは前記第2チャネルにおける全てのサブチャネルへのリクエストを含むように、当該複数のリクエストを単一の完全なトランザクションへとアセンブルし、
    対応するサブチャネルへのリクエストが見つからない場合には、そのサブチャネルへのリクエストは伝送せず、見つかったリクエストを対応するサブチャネルへ伝送し、
    前記単一の完全なトランザクションの容量は前記CPUの伝送線容量と等しい、
    メモリコントローラ。
  2. 複数の前記リクエストのそれぞれが、1つの独立アドレス要素と1つの共有アドレス要素とを含む、請求項1に記載のメモリコントローラ。
  3. 前記独立アドレス要素は、1つのサブチャネルと関連づけられる請求項2に記載のメモリコントローラ。
  4. 前記第1のリクエストは、前記第2のリクエストとは異なる複数の独立したアドレスビットを含む第1のアドレスを有する、請求項1から3のいずれか1項に記載のメモリコントローラ。
  5. 各サブチャネルへと伝送されるデータは、1つの連続データブロックを表す、請求項1から4のいずれか1項に記載のメモリコントローラ。
  6. 各サブチャネルにおける前記データブロックは、1つの連続的アドレス領域からのものではない、請求項5に記載のメモリコントローラ。
  7. 前記リオーダバッファは、前記2以上のサブチャネルのそれぞれに対して1つ関連付けられる待ち行列を含む、請求項1から6のいずれか1項に記載のメモリコントローラ。
  8. 各待ち行列には、関連付けられた1つのサブチャネルへと伝送される複数の前記リクエストが保存される、請求項7に記載のメモリコントローラ。
  9. 前記第1のトランザクションアセンブラおよび前記第2のトランザクションアセンブラは、各待ち行列に保存された複数の前記リクエストをアセンブルして該複数のリクエストを前記関連付けられたサブチャネルへと伝送する、請求項8に記載のメモリコントローラ。
  10. 各サブチャネルに対して1つ接続される制御線を更に含み、各制御線は、対応する1つのサブチャネルへの電力を、前記チャネルへの対応するリクエストがないときには低減させる、請求項1から9のいずれか1項に記載のメモリコントローラ。
  11. 統合メモリアーキテクチャを用いたコンピュータシステムであって、
    CPUと、
    Mバイト幅のチャネルを1以上有する、当該システムのメインメモリとしてのランダムアクセスメモリデバイス(RAMデバイス)と、
    ビデオメモリとして前記RAMデバイスにアクセスすべく、Nバイト幅の複数のリクエストを伝送するグラフィックコントローラと、
    第1チャネルを、Nバイトの幅を有する独立してアドレス指定可能なS個のサブチャネルへと分割する第1の微小タイリングコンポーネントを含む第1のメモリコントローラを有し、N=M/Sである、前記RAMデバイス及び前記グラフィックコントローラに結合されたメモリコントローラと
    各待ち行列に保存された前記複数のリクエストをアセンブルして該複数のリクエストを関連するサブチャネルへと伝送するトランザクションアセンブラと
    を備え、
    前記トランザクションアセンブラは、
    前記複数のリクエストに割り当てられた共通のアドレスに基づいて、関連する全ての前記サブチャネルへのリクエストを含むように、当該複数のリクエストを単一の完全なトランザクションへとアセンブルし、
    対応するサブチャネルへのリクエストが見つからない場合には、そのサブチャネルへのリクエストは伝送せずに、見つかったリクエストを対応するサブチャネルへ伝送し、
    前記単一の完全なトランザクションの容量は前記CPUの伝送線容量と等しい、
    コンピュータシステム。
  12. 前記メモリコントローラは、第2チャネルをNバイトの幅を有する独立してアドレス指定可能なS個のサブチャネルへと分割する第2の微小タイリングコンポーネントを含む第2のメモリコントローラを更に有し、N=M/Sである、請求項11に記載のコンピュータシステム。
  13. 前記複数のリクエストのそれぞれが、1つの独立アドレス要素と1つの共有アドレス要素とを含む、請求項11または12に記載のコンピュータシステム。
  14. 前記独立アドレス要素は、1つのサブチャネルと関連づけられる請求項13に記載のコンピュータシステム。
  15. 第1のサブチャネルへのリクエストは、第2のサブチャネルへのリクエストとは異なる複数の独立したアドレスビットを含む第1のアドレスを有する、請求項11から14のいずれか1項に記載のコンピュータシステム。
  16. 各サブチャネルへと伝送されるデータは、1つの連続データブロックを表す、請求項11から15のいずれか1項に記載のコンピュータシステム。
  17. 各サブチャネルにおける前記データブロックは、1つの連続的アドレス領域からのものではない、請求項16に記載のコンピュータシステム。
  18. 前記複数のリクエストを保存するリオーダバッファを更に備え、当該リオーダバッファは、2以上の前記サブチャネルのそれぞれに対して1つ関連付けられる待ち行列を含む、請求項11から17のいずれか1項に記載のコンピュータシステム。
  19. 各待ち行列には、関連付けられた1つのサブチャネルへと伝送される前記複数のリクエストが保存される、請求項18に記載のコンピュータシステム。
  20. 各サブチャネルに対して1つ接続される制御線を更に含み、各制御線は、対応する1つのサブチャネルへの電力を、前記チャネルへの対応するリクエストがないときには低減させる、請求項11から19のいずれか1項に記載のコンピュータシステム。
  21. 統合メモリアーキテクチャを用いたシステムであって、
    CPUと、
    グラフィックコントローラと、
    一以上のチャネルを有するランダムアクセスメモリデバイス(RAMデバイス)と、
    前記RAMデバイス及び前記グラフィックコントローラに結合されたチップセットと
    を備え、
    前記チップセットが、
    前記RAMデバイスにおける第1チャネルを、独立してアドレス指定可能な少なくとも第1および第2のサブチャネルへと分割する第1のメモリコントローラであって、前記RAMデバイスにおける前記第1チャネルにおける複数のメモリ位置にアクセスするための前記グラフィックコントローラからの第1のリクエスト及び第2のリクエストを受け取り、全てのサブチャネルに対して均等にリクエストアドレスが分配される可能性が最大化されるように割り当てを行う第1割り当て論理と、前記第1チャネルにおける前記第1のサブチャネルにアクセスすべく前記第1のリクエストを一以上の追加のリクエストと結合し、かつ前記第1チャネルにおける前記第2のサブチャネルにアクセスすべく前記第2のリクエストを一以上の追加のリクエストと結合することにより複数のメモリリクエストを構築する第1のトランザクションアセンブラと、を有する第1のメモリコントローラと、
    前記RAMデバイスにおける第2チャネルを、独立してアドレス指定可能な少なくとも第1および第2のサブチャネルへと分割する第2のメモリコントローラであって、前記RAMデバイスにおける前記第2チャネルにおける複数のメモリ位置にアクセスするための前記グラフィックコントローラからの第3のリクエスト及び第4のリクエストを受け取り、全てのサブチャネルに対して均等にリクエストアドレスが分配される可能性が最大化されるように割り当てを行う第2割り当て論理と、前記第2チャネルにおける前記第1のサブチャネルにアクセスすべく前記第3のリクエストを一以上の追加のリクエストと結合し、かつ前記第2チャネルにおける前記第2のサブチャネルにアクセスすべく前記第4のリクエストを一以上の追加のリクエストと結合することにより、複数のメモリリクエストを構築する第2のトランザクションアセンブラと、を有する第2のメモリコントローラと、
    複数の前記リクエストを保存するリオーダバッファと、
    を有
    前記第1及び第2のトランザクションアセンブラのそれぞれは、
    前記複数のリクエストに割り当てられた共通のアドレスに基づいて、関連する前記第1チャネルまたは前記第2チャネルにおける全てのサブチャネルへのリクエストを含むように、当該複数のリクエストを単一の完全なトランザクションへとアセンブルし、
    対応するサブチャネルへのリクエストが見つからない場合には、そのサブチャネルへのリクエストは伝送せず、見つかったリクエストを対応するサブチャネルへ伝送し、
    前記単一の完全なトランザクションの容量は前記CPUの伝送線容量と等しい、
    システム。
  22. 複数の前記リクエストのそれぞれが、1つの独立アドレス要素と1つの共有アドレス要素とを含む、請求項21に記載のシステム。
  23. 前記独立アドレス要素は、1つのサブチャネルと関連づけられる請求項22に記載のシステム。
  24. 前記第1のリクエストは、前記第2のリクエストとは異なる複数の独立したアドレスビットを含む第1のアドレスを有する、請求項21から23のいずれか1項に記載のシステム。
  25. 各サブチャネルへと伝送されるデータは、1つの連続データブロックを表す、請求項21から24のいずれか1項に記載のシステム。
  26. 各サブチャネルにおける前記データブロックは、1つの連続的アドレス領域からのものではない、請求項25に記載のシステム。
  27. 前記リオーダバッファは、前記2以上のサブチャネルのそれぞれに対して1つ関連付けられる待ち行列を含む、請求項21から26のいずれか1項に記載のシステム。
  28. 各待ち行列には、関連付けられた1つのサブチャネルへと伝送される複数の前記リクエストが保存される、請求項27に記載のシステム。
  29. 前記第1のトランザクションアセンブラ及び前記第2のトランザクションアセンブラは、1つの共有アドレスに基づいて、前記リオーダバッファに保存された複数の前記リクエストを結合して、該複数のリクエストを、対応するサブチャネルへと伝送する、請求項21に記載のシステム。
  30. 各サブチャネルに対して1つ接続される制御線を更に含み、各制御線は、対応する1つのサブチャネルへの電力を、前記チャネルへの対応するリクエストがないときには低減させる、請求項21から29のいずれか1項に記載のシステム。
JP2012032512A 2005-06-23 2012-02-17 メモリの微小タイリング Expired - Fee Related JP5603892B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/159,745 US7765366B2 (en) 2005-06-23 2005-06-23 Memory micro-tiling
US11/159,745 2005-06-23

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2008518483A Division JP4981797B2 (ja) 2005-06-23 2006-06-23 メモリの微小タイリングを行うメモリコントローラ、方法、及びシステム

Publications (2)

Publication Number Publication Date
JP2012104161A JP2012104161A (ja) 2012-05-31
JP5603892B2 true JP5603892B2 (ja) 2014-10-08

Family

ID=37545833

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2008518483A Expired - Fee Related JP4981797B2 (ja) 2005-06-23 2006-06-23 メモリの微小タイリングを行うメモリコントローラ、方法、及びシステム
JP2012032512A Expired - Fee Related JP5603892B2 (ja) 2005-06-23 2012-02-17 メモリの微小タイリング

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2008518483A Expired - Fee Related JP4981797B2 (ja) 2005-06-23 2006-06-23 メモリの微小タイリングを行うメモリコントローラ、方法、及びシステム

Country Status (7)

Country Link
US (2) US7765366B2 (ja)
EP (1) EP1894110B1 (ja)
JP (2) JP4981797B2 (ja)
KR (1) KR100973604B1 (ja)
CN (1) CN1892629B (ja)
TW (1) TWI350455B (ja)
WO (1) WO2007002551A2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7765366B2 (en) * 2005-06-23 2010-07-27 Intel Corporation Memory micro-tiling
US7558941B2 (en) * 2005-06-30 2009-07-07 Intel Corporation Automatic detection of micro-tile enabled memory
US8253751B2 (en) * 2005-06-30 2012-08-28 Intel Corporation Memory controller interface for micro-tiled memory access
US8032672B2 (en) 2006-04-14 2011-10-04 Apple Inc. Increased speed of processing of audio samples received over a serial communications link by use of channel map and steering table
US8878860B2 (en) * 2006-12-28 2014-11-04 Intel Corporation Accessing memory using multi-tiling
US20110320751A1 (en) * 2010-06-25 2011-12-29 Qualcomm Incorporated Dynamic Interleaving Of Multi-Channel Memory
US8892844B2 (en) * 2011-03-07 2014-11-18 Micron Technology, Inc. Methods of accessing memory cells, methods of distributing memory requests, systems, and memory controllers
US10838886B2 (en) 2011-04-19 2020-11-17 Micron Technology, Inc. Channel depth adjustment in memory systems
GB2525238B (en) * 2014-04-17 2021-06-16 Advanced Risc Mach Ltd Hazard checking control within interconnect circuitry
US10468093B2 (en) 2016-03-03 2019-11-05 Nvidia Corporation Systems and methods for dynamic random access memory (DRAM) sub-channels
GB2566469B (en) 2017-09-13 2021-03-24 Advanced Risc Mach Ltd Cache line statuses
GB2566470B (en) * 2017-09-13 2021-02-10 Advanced Risc Mach Ltd Cache storage

Family Cites Families (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3323109A (en) 1963-12-30 1967-05-30 North American Aviation Inc Multiple computer-multiple memory system
JPS51127626A (en) 1975-04-30 1976-11-06 Hitachi Ltd Information processor
US3988717A (en) 1975-08-06 1976-10-26 Litton Systems, Inc. General purpose computer or logic chip and system
NL7510904A (nl) 1975-09-17 1977-03-21 Philips Nv Woordgroepsprioriteitsinrichting.
US4124891A (en) * 1976-11-18 1978-11-07 Honeywell Information Systems Inc. Memory access system
US4495570A (en) * 1981-01-14 1985-01-22 Hitachi, Ltd. Processing request allocator for assignment of loads in a distributed processing system
US4504902A (en) * 1982-03-25 1985-03-12 At&T Bell Laboratories Cache arrangement for direct memory access block transfer
JPH083805B2 (ja) 1985-06-28 1996-01-17 ヒューレット・パッカード・カンパニー Tlb制御方法
JPH0267622A (ja) * 1988-09-01 1990-03-07 Kansai Nippon Denki Software Kk ディスク入出力方式
US5325510A (en) * 1990-05-25 1994-06-28 Texas Instruments Incorporated Multiprocessor system and architecture with a computation system for minimizing duplicate read requests
US5251310A (en) * 1990-06-29 1993-10-05 Digital Equipment Corporation Method and apparatus for exchanging blocks of information between a cache memory and a main memory
US5526507A (en) * 1992-01-06 1996-06-11 Hill; Andrew J. W. Computer memory array control for accessing different memory banks simullaneously
US5459842A (en) 1992-06-26 1995-10-17 International Business Machines Corporation System for combining data from multiple CPU write requests via buffers and using read-modify-write operation to write the combined data to the memory
JPH0695959A (ja) * 1992-09-09 1994-04-08 Hitachi Ltd 情報処理装置
JP3240709B2 (ja) 1992-10-30 2001-12-25 株式会社アドバンテスト メモリ試験装置
US6804760B2 (en) 1994-12-23 2004-10-12 Micron Technology, Inc. Method for determining a type of memory present in a system
JPH08263367A (ja) * 1995-03-27 1996-10-11 Toshiba Microelectron Corp 集積回路
US5649157A (en) * 1995-03-30 1997-07-15 Hewlett-Packard Co. Memory controller with priority queues
WO1996041274A1 (en) 1995-06-07 1996-12-19 Advanced Micro Devices, Inc. Dynamically reconfigurable data bus
US5752045A (en) * 1995-07-14 1998-05-12 United Microelectronics Corporation Power conservation in synchronous SRAM cache memory blocks of a computer system
US5799209A (en) 1995-12-29 1998-08-25 Chatter; Mukesh Multi-port internally cached DRAM system utilizing independent serial interfaces and buffers arbitratively connected under a dynamic configuration
US6061773A (en) 1996-05-03 2000-05-09 Digital Equipment Corporation Virtual memory system with page table space separating a private space and a shared space in a virtual memory
US5761708A (en) * 1996-05-31 1998-06-02 Sun Microsystems, Inc. Apparatus and method to speculatively initiate primary memory accesses
US5905725A (en) 1996-12-16 1999-05-18 Juniper Networks High speed switching device
US5748554A (en) 1996-12-20 1998-05-05 Rambus, Inc. Memory and method for sensing sub-groups of memory elements
US6308248B1 (en) 1996-12-31 2001-10-23 Compaq Computer Corporation Method and system for allocating memory space using mapping controller, page table and frame numbers
US5790118A (en) 1997-03-07 1998-08-04 International Business Machines Corporation Mobile client programmed to hide empty table elements
US5913231A (en) 1997-03-31 1999-06-15 International Business Machines Corporation Method and system for high speed memory address forwarding mechanism
US6145065A (en) 1997-05-02 2000-11-07 Matsushita Electric Industrial Co., Ltd. Memory access buffer and reordering apparatus using priorities
US6118462A (en) * 1997-07-01 2000-09-12 Memtrax Llc Computer system controller having internal memory and external memory control
US6151641A (en) * 1997-09-30 2000-11-21 Lsi Logic Corporation DMA controller of a RAID storage controller with integrated XOR parity computation capability adapted to compute parity in parallel with the transfer of data segments
US6122709A (en) 1997-12-19 2000-09-19 Sun Microsystems, Inc. Cache with reduced tag information storage
JP2002500395A (ja) 1997-12-24 2002-01-08 クリエイティブ、テクノロジー、リミテッド 最適な多チャネル記憶制御システム
US6438675B1 (en) * 1998-03-23 2002-08-20 Ati Technologies, Inc. Variable format memory access device
US6249851B1 (en) * 1998-08-25 2001-06-19 Stmicroelectronics, Inc. Computer system having non-blocking cache and pipelined bus interface unit
US6405273B1 (en) 1998-11-13 2002-06-11 Infineon Technologies North America Corp. Data processing device with memory coupling unit
US6453380B1 (en) * 1999-01-23 2002-09-17 International Business Machines Corporation Address mapping for configurable memory system
US6389488B1 (en) 1999-01-28 2002-05-14 Advanced Micro Devices, Inc. Read ahead buffer for read accesses to system memory by input/output devices with buffer valid indication
JP3639464B2 (ja) * 1999-07-05 2005-04-20 株式会社ルネサステクノロジ 情報処理システム
US6708248B1 (en) * 1999-07-23 2004-03-16 Rambus Inc. Memory system with channel multiplexing of multiple memory devices
JP2001060169A (ja) * 1999-08-24 2001-03-06 Hitachi Ltd キャッシュコントローラ及びコンピュータシステム
JP2001176282A (ja) * 1999-12-20 2001-06-29 Fujitsu Ltd 半導体記憶装置およびその制御方法
US6496193B1 (en) * 1999-12-30 2002-12-17 Intel Corporation Method and apparatus for fast loading of texture data into a tiled memory
US6678810B1 (en) * 1999-12-30 2004-01-13 Intel Corporation MFENCE and LFENCE micro-architectural implementation method and system
CN102842145B (zh) * 2000-03-31 2016-08-24 英特尔公司 拼块式图形结构
US6430672B1 (en) * 2000-07-17 2002-08-06 International Business Machines Corporation Method for performing address mapping using two lookup tables
EP1182564A3 (en) 2000-08-21 2004-07-28 Texas Instruments France Local memory with indicator bits to support concurrent DMA and CPU access
US7006505B1 (en) 2000-10-23 2006-02-28 Bay Microsystems, Inc. Memory management system and algorithm for network processor architecture
US7006947B2 (en) * 2001-01-08 2006-02-28 Vextec Corporation Method and apparatus for predicting failure in a system
JP2002259327A (ja) * 2001-02-28 2002-09-13 Hitachi Ltd バス制御回路
US6745272B2 (en) * 2001-04-04 2004-06-01 Advanced Micro Devices, Inc. System and method of increasing bandwidth for issuing ordered transactions into a distributed communication system
US7200759B2 (en) * 2001-06-08 2007-04-03 Safenet B.V. Method and device for making information contents of a volatile semiconductor memory irretrievable
US6742097B2 (en) * 2001-07-30 2004-05-25 Rambus Inc. Consolidation of allocated memory to reduce power consumption
US20030056058A1 (en) 2001-09-17 2003-03-20 Alistair Veitch Logical volume data migration
US6812928B2 (en) * 2002-01-30 2004-11-02 Sun Microsystems, Inc. Performance texture mapping by combining requests for image data
US20030179598A1 (en) 2002-03-20 2003-09-25 Yu-Guang Chen Device for selectively providing read-only data
US7103730B2 (en) * 2002-04-09 2006-09-05 Intel Corporation Method, system, and apparatus for reducing power consumption of a memory
DE10216611A1 (de) 2002-04-15 2003-11-06 Infineon Technologies Ag Verfahren zum Ersetzen eines Inhalts einer Datenspeichereinheit
US6842828B2 (en) * 2002-04-30 2005-01-11 Intel Corporation Methods and arrangements to enhance an upbound path
US7028200B2 (en) * 2002-05-15 2006-04-11 Broadcom Corporation Method and apparatus for adaptive power management of memory subsystem
US6934804B2 (en) * 2002-05-28 2005-08-23 Sun Microsystems, Inc. Method and system for striping spares in a data storage system including an array of disk drives
US6820181B2 (en) * 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US6851030B2 (en) 2002-10-16 2005-02-01 International Business Machines Corporation System and method for dynamically allocating associative resources
US7130229B2 (en) 2002-11-08 2006-10-31 Intel Corporation Interleaved mirrored memory systems
US6836434B2 (en) 2002-11-21 2004-12-28 Micron Technology, Inc. Mode selection in a flash memory device
US7255895B2 (en) 2003-01-21 2007-08-14 Bioarray Solutions, Ltd. Method for controlling solute loading of polymer microparticles
US7243172B2 (en) 2003-10-14 2007-07-10 Broadcom Corporation Fragment storage for data alignment and merger
JP4601305B2 (ja) 2004-02-27 2010-12-22 富士通セミコンダクター株式会社 半導体装置
US20060151641A1 (en) * 2004-12-30 2006-07-13 Li H C Water jet aerator with three-part body and with optional shaped nozzle
US7587521B2 (en) 2005-06-23 2009-09-08 Intel Corporation Mechanism for assembling memory access requests while speculatively returning data
US7765366B2 (en) 2005-06-23 2010-07-27 Intel Corporation Memory micro-tiling
US8332598B2 (en) 2005-06-23 2012-12-11 Intel Corporation Memory micro-tiling request reordering

Also Published As

Publication number Publication date
KR20080014066A (ko) 2008-02-13
JP4981797B2 (ja) 2012-07-25
CN1892629A (zh) 2007-01-10
TWI350455B (en) 2011-10-11
US20100122046A1 (en) 2010-05-13
JP2008544414A (ja) 2008-12-04
KR100973604B1 (ko) 2010-08-02
WO2007002551A3 (en) 2007-06-14
EP1894110A2 (en) 2008-03-05
CN1892629B (zh) 2010-06-16
TW200707454A (en) 2007-02-16
WO2007002551A2 (en) 2007-01-04
US8010754B2 (en) 2011-08-30
EP1894110B1 (en) 2012-12-19
US20060294325A1 (en) 2006-12-28
JP2012104161A (ja) 2012-05-31
US7765366B2 (en) 2010-07-27

Similar Documents

Publication Publication Date Title
JP5603892B2 (ja) メモリの微小タイリング
JP4879981B2 (ja) メモリのマイクロタイリングによる投機的なリターン
KR100958263B1 (ko) 메모리 마이크로-타일링 요청 재정렬화 방법, 메모리제어기 및 시스템
US6185654B1 (en) Phantom resource memory address mapping system
EP2006858B1 (en) Micro-tile memory interface
EP1896963B1 (en) Memory controller interface for micro-tiled memory access
US7805587B1 (en) Memory addressing controlled by PTE fields
EP1899818A2 (en) Identifying and accessing individual memory devices in a memory channel
US20080229049A1 (en) Processor card for blade server and process.

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120316

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120316

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120409

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130917

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131206

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140407

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140612

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: 20140819

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140822

R150 Certificate of patent or registration of utility model

Ref document number: 5603892

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees