Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4125933B2 - Processor system with common memory - Google Patents
[go: Go Back, main page]

JP4125933B2 - Processor system with common memory - Google Patents

Processor system with common memory Download PDF

Info

Publication number
JP4125933B2
JP4125933B2 JP2002250149A JP2002250149A JP4125933B2 JP 4125933 B2 JP4125933 B2 JP 4125933B2 JP 2002250149 A JP2002250149 A JP 2002250149A JP 2002250149 A JP2002250149 A JP 2002250149A JP 4125933 B2 JP4125933 B2 JP 4125933B2
Authority
JP
Japan
Prior art keywords
signal
timing
access
ring bus
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
JP2002250149A
Other languages
Japanese (ja)
Other versions
JP2004086797A (en
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.)
New Japan Radio Co Ltd
Original Assignee
New Japan Radio Co Ltd
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 New Japan Radio Co Ltd filed Critical New Japan Radio Co Ltd
Priority to JP2002250149A priority Critical patent/JP4125933B2/en
Publication of JP2004086797A publication Critical patent/JP2004086797A/en
Application granted granted Critical
Publication of JP4125933B2 publication Critical patent/JP4125933B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Multi Processors (AREA)
  • Bus Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、複数のプロセッサから1つの共通メモリをアクセスするように構成されたプロセッサシステム関し、特に共通メモリへのアクセスに必要な時間を予め決めた最大時間よりも必ず小さくすることが可能な共通メモリを備えたプロセッサシステムに関する。
【0002】
【従来の技術】
複数のプロセッサで共通のメモリをアクセスする共通メモリを備えたプロセッサシステムとして、従来、例えば特開平11−134312に記述されるようなリングバスを用いた方式が提案されている。この方式では、共通メモリをアクセスしたいプロセッサは、まず、ブロードキャスト信号として要求信号を送信し、他のプロセッサからのアクセスに対して邪魔をせず、また、他のプロセッサからのアクセスで邪魔をされないことを確認した後、実際に共通メモリへのアクセスを行うことができる。
【0003】
【発明が解決しようとする課題】
しかしながら、上述した従来の共通メモリを備えたプロセッサシステムでは、共通メモリをアクセスしたいときに、リングバスが他のプロセッサからのアクセスで使われていた場合、リングバスが空くまで待ち時間が必要になる。特に、多くのプロセッサが同時にアクセスを要求するような状況では、この待ち時間が大きくなり、共通メモリのアクセスに必要な時間を正確に見積ることができず、場合によっては、アクセスを諦めなければならない状況もあり得るという問題点があった。
本発明は、以上の点を考慮してなされたものであり、共通メモリのアクセスに必要な時間を予め定めた最大時間よりも必ず小さくできる共通メモリを備えたプロセッサシステムを提供することを目的とする。
【0004】
【課題を解決するための手段】
上記目的を達成するため本発明は、複数のプロセッサから読み出し及び書き込みをする共通メモリと、該共通メモリとプロセッサ間のアクセス信号を伝送する信号用リングバスと、タイミング信号を伝送するタイミング用リングバスと、該タイミング用リングバスに有限のタイミング値からなる前記タイミング信号を送信するタイミング生成部と、バス制御部を備えた複数のプロセッサと、前記信号用リングバスと前記共通メモリとの間で信号の仲介をするメモリ制御部とを有し、前記プロセッサは、プロセッサ・コアと該プロセッサ・コア側と前記バス制御部側から独立に読み書きできるデュアルポートメモリと、書き込みと読み出しの区別、共通メモリアドレス及びデュアルポートメモリ・アドレスから成る共通メモリアクセス指示内容を格納する要求レジスタと、共通メモリアドレス及びデュアルポートメモリ・アドレスから成る共通メモリ読み出し指示内容を格納する応答レジスタと、前記要求レジスタへの書き込みと読み出しに合わせてセットとリセットが行われる要求フラグと、前記応答レジスタへの書き込みと読み出しに合わせてセットとリセットが行われる応答フラグを有し、前記バス制御部は、ランダム書き込みが可能な終了ビットを付加した前記共通メモリアクセス指示内容を格納するFIFO構造のメモリで構成され、前記要求フラグがセットならば前記要求レジスタに格納されている共通メモリアクセス指示内容を格納してから該要求フラグをリセットする一方で、前記終了ビットを順に調べてセットになっているとき、前記応答フラグがリセットならば前記共通メモリ読み出し指示内容を生成して前記応答レジスタに格納してから該応答フラグをセットする要求キューと、アクセス信号を送信または受信できる予め定めたアクセスタイミング値を記憶するタイミングメモリと、前記要求キューに格納されている共通メモリアクセス指示内容を読み出し、これに基づいてアクセス信号を生成する一方で、前記タイミングメモリからアクセスタイミング値を知り、前記タイミング用リングバスのタイミング値が該アクセスタイミング値と一致したとき、前記信号用リングバスへ前記アクセス信号を送信する送信制御部と、前記タイミングメモリからアクセスタイミング値を知り、前記タイミング用リングバスのタイミング値が該アクセスタイミング値と一致したとき、前記信号用リングバスからアクセス信号を受信し、メモリ読み出し結果を抽出してデュアルポートメモリの対応するアドレスに格納し、前記要求キューの対応する終了ビットをセットする受信制御部とを有し、前記メモリ制御部は、前記信号用リングバスから入力したアクセス信号を前記共通メモリに渡し、該アクセス信号が読み出しを意味する場合、該共通メモリからのメモリ読み出し結果を対応するプロセッサへのアクセス信号として前記信号用リングバスへ出力し、前記入力したアクセス信号が書き込みを意味する場合、前記共通メモリへデータを書き込むことを特徴とするように構成したものである。
【0005】
【発明の実施の形態】
図1は、本発明の共通メモリを備えたプロセッサシステムの第一の実施形態を示すブロック図である。図1は、5個のプロセッサで1つの共通メモリをアクセスする場合を示している。図1において、111、112、113、114、115はプロセッサ、121、122、123、124、125はバス制御部、13はタイミング生成部、14は信号用リングバス、15はタイミング用リングバス、16はメモリ制御部、17は共通メモリである。
【0006】
タイミング生成部13は、巡回的なタイミング値からなるタイミング信号を発生し、タイミング用リングバス15へ送信する。ここでは、タイミング値は、例えば、0から7まで1ずつ増えた後で0に戻るような巡回的な値をとることを仮定している。
【0007】
一例としてプロセッサ111とバス制御部121を例に、共通メモリ17へのアクセス動作を説明する。プロセッサ111は、共通メモリ17に対し書き込みまたは読み出しをしたい場合、バス制御部121へアクセス信号の送信を指示する。バス制御部121は、プロセッサ111からの指示を受けて、アクセス信号を生成し、タイミング用リングバス15のタイミング値が予め定められたアクセスタイミング値になったときに、信号用リングバス14へアクセス信号を送信する。ここでは、アクセスタイミング値として、バス制御部121、122、123、124、及び125に対して、それぞれ、0、1、2、3、4、及び5が設定されているものと仮定する。このため、バス制御部121は、タイミング用リングバス15のタイミング値が0のときに、信号用リングバス14へアクセス信号を送信する。アクセス信号には、書き込みと読み出しの区別、プロセッサ111に対応する送信元アドレス、共通メモリアドレス、書き込みの場合は書き込みデータなどの情報が含まれている。
【0008】
メモリ制御部16は、常に信号用リングバス14を監視しており、アクセス信号が来たら受信する。そして、受信したアクセス信号が書き込みを意味していたら、共通メモリアドレスと書き込みデータを抽出し、共通メモリ17の共通メモリアドレスへ書き込みデータを書き込む。一方、受信したアクセス信号が読み出しを意味していたら、送信元アドレスと共通メモリアドレスを抽出し、共通メモリ17の共通メモリアドレスから読み出しを行う。
【0009】
読み出し処理の場合、読み出し結果は、一般に時間的に遅れて、共通メモリ17から出力される。メモリ制御部16は、読み出し結果からアクセス信号を生成し、プロセッサ111に対応する送信元アドレスに対して予め定められたアクセスタイミング値が0であることから、タイミング用リングバス15のタイミング値が0のときに、信号用リングバス14へアクセス信号を送信する。
【0010】
バス制御部121は、タイミング用リングバス15のタイミング値が0のときに、アクセス信号の受信を行う。そして、アクセス信号から読み出し結果を抽出し、プロセッサ111へ渡すことで、プロセッサ111は共通メモリからの読み出し処理を完了する。なおこの例では、アクセスタイミング値として、全て1つの値のみを仮定したが、複数の値を設定することも可能である。すなわち、例えば、タイミング値6と7が未割り当てになっているので、これをバス制御部121に割り当てれば、バス制御部121からの共通メモリアクセス効率、すなわち、プロセッサ111からの共通メモリアクセス効率を向上できる。
【0011】
図2は、本発明のプロセッサシステムにおけるプロセッサ及びバス制御部の構成例を示すブロック図である。図2において、21はプロセッサ、22はバス制御部、211はプロセッサ・コア、212はデュアルポートメモリ(以下、DPメモリと略す)、213は応答レジスタ、214は要求レジスタ、215は応答フラグ、216は要求フラグ、221は要求キュー、222はタイミングメモリ、223は送信制御部、224は受信制御部である。先の説明と同様に、一例として図1のプロセッサ111とバス制御部121について説明する。
【0012】
プロセッサ111(図2では、プロセッサ21に対応する)から、共通メモリ17に対し書き込みまたは読み出しをしたい場合、プロセッサ・コア211は、要求フラグ216の状態を調べる。要求フラグ216は、セットとリセットの2状態を有する1ビットのフラグであり、共通メモリアクセス要求があるときにはセット、ないときにはリセットとなる。プロセッサ・コア211は、要求フラグ216がリセットであれば、要求レジスタ214に、書き込みと読み出しの区別、共通メモリアドレス、書き込みの場合は書き込みデータが格納されているDPメモリ・アドレスを格納し、その後、要求フラグ216をセットする。もし、要求フラグ216がセットになっていれば、先行する共通メモリアクセス要求が未だ処理されていないため、プロセッサ・コア211は処理を待たなければならない。
【0013】
バス制御部121(図2では、バス制御部22に対応する)は、要求フラグ216を監視し、これがセットになっているとき、要求レジスタ214の内容を読み出し、要求キュー221へ内容を格納し、要求フラグ216をリセットする。要求キュー221は、ランダム書き込みが可能な終了ビットを付加した変則的なFIFO構造のメモリであり、終了ビット以外は、先に格納された内容から順に読み出すことができる。
【0014】
タイミングメモリ222は、バス制御部121に対して予め定められた送信または受信を許すアクセスタイミング値を記憶している。バス制御部121に対するアクセスタイミング値は0と仮定する。
【0015】
送信制御部223は、要求キュー221から最も先に書き込まれた内容を読み出し、これに基づいて、アクセス信号を生成する。アクセス信号には、書き込みと読み出しの区別、プロセッサ111に対応する送信元アドレス、共通メモリアドレス、書き込みの場合はDPメモリのDPメモリアドレスから得られる書き込みデータなどの情報が含まれている。一方、送信制御部223は、タイミングメモリ222から、アクセスタイミング値0を知り、タイミング用リングバス15のタイミング値が0のときに、信号用リングバス14へアクセス信号を送信する。また、送信制御部223は、読み出し処理の場合は、要求キュー221の対応する終了ビットをセットする。もし、要求キュー221に読み出す内容がなければ、読み出す内容が格納されるのを待つことになる。
【0016】
メモリ制御部16は、常に信号用リングバス14を監視しており、アクセス信号が来たら受信する。そして、受信したアクセス信号が書き込みを意味していたら、共通メモリアドレスと書き込みデータを抽出し、共通メモリ17の共通メモリアドレスへ書き込みデータを書き込む。一方、受信したアクセス信号が読み出しを意味していたら、送信元アドレスと共通メモリアドレスを抽出し、共通メモリ17の共通メモリアドレスから読み出しを行う。
【0017】
読み出し処理の場合、読み出し結果は、一般に時間的に遅れて、共通メモリ17から出力される。メモリ制御部16は、読み出し結果からアクセス信号を生成し、プロセッサ111に対応する送信元アドレスに対して予め定められたアクセスタイミング値が0であることから、タイミング用リングバス15のタイミング値が0のときに、信号用リングバス14へアクセス信号を送信する。
【0018】
バス制御部121(図2では、バス制御部22に対応する)において、受信制御部224は、タイミング用リングバス15のタイミング値が0のときに、アクセス信号の受信を行う。そして、アクセス信号から読み出し結果とDPメモリアドレスを抽出し、DPメモリ212のDPメモリアドレスへ読み出し結果を書き込み、その後、要求キュー221の対応する終了ビットをセットする。DPメモリ212は、受信制御部224からの書き込みと送信制御部223への読み出しを同時に行うことはできないのが普通である。しかし、送信制御部223において書き込み処理のためにアクセス信号を生成する場合、送信に先行してDPメモリ212からの読み出しが行われるため、特に問題になることは少ないと考えられる。
【0019】
要求キュー221は、終了ビットを順に調べ、それがセットされていたら、応答フラグ215の状態を調べる。応答フラグ215は、セットとリセットの2状態を有する1ビットのフラグであり、共通メモリ読み出し結果があるときにはセット、ないときにはリセットとなる。要求キュー221は、応答フラグ215がリセットであれば、応答レジスタ213に、共通メモリアドレス、DPメモリ・アドレスを格納し、その後、応答フラグ215をセットする。もし、応答フラグ215がセットになっていれば、先行する共通メモリ読み出し結果が未だ処理されていないため、要求キュー221は処理を待たなければならない。
【0020】
プロセッサ112(図2では、プロセッサ21に対応する)において、プロセッサ・コア211は、応答フラグ215の状態を調べ、これがセットされていれば、応答レジスタ213の内容を読み出し、DPメモリ212のDPメモリ・アドレスから共通メモリの読み出し結果を読む。その後、プロセッサ・コア211は、応答フラグ215をリセットしてから、必要な処理を行うことができる。
【0021】
先に、図2におけるプロセッサ21では、送信及び受信したデータを格納するために、DPメモリ212を用いているため、受信制御部224からの書き込みと送信制御部223への読み出しを同時にできないが、通常は問題にならないと記述した。しかし、特定のプロセッサに連続する複数のアクセスタイミング値を割り当てるような場合には、送信制御部223における後方のアクセスタイミング値でのアクセス信号の送信のためのDPメモリ212からの読み出しが、受信制御部224における前方のアクセスタイミング値での受信によるDPメモリ212への書き込みと一致することが起こり得る。このような場合、送信専用と受信専用のDPメモリを設ける、あるいは、DPメモリではなく同時に送受信可能な専用回路を設けるなどの工夫を行い、DPメモリ212において書き込みと読み出しを同時に行うことができるようにして、解決することも可能である。
【0022】
図3は、本発明のプロセッサシステムの第二の実施形態を示すブロック図である。図3は、図1と同様に、5個のプロセッサで1つの共通メモリをアクセスする場合を示している。図3において、31は乗換え回路であり、図1と同じ構成要素には同じ符号が付されている。
【0023】
乗換え回路31は、信号用リングバス14を伝送されてくるアクセス信号に対して、優先順位を付けてから、メモリ制御部16との仲介をする回路である。各プロセッサに対応する各バス制御部からのアクセス信号は、固有のタイミング値において乗換え回路に到着するため、優先順位処理は、タイミング用リングバス15のタイミング値のみを用いて行うことができる。このような構成とすることで、優先的に共通メモリをアクセスする必要があるプロセッサからの共通メモリアクセスを確実に行うことが可能になる。
【0024】
図4は、本発明の乗換え回路の構成例を示すブロック図である。図4において、41は上り受信部、42は上り優先キュー、43は上り一般キュー、44は上り送信部、45は下り受信部、46は下りキュー、47は下り送信部である。上り優先キュー42、上り一般キュー43、及び下りキュー46は、それぞれFIFO構造のメモリで構成される。
【0025】
上り受信部41は、信号用リングバス14からのアクセス信号を受信し、タイミング用リングバス15のタイミング値に応じて、上り優先キュー42または上り一般キュー43を選択し、アクセス信号を格納する。上り送信部44は、まず、上り優先キュー42から読み出しを行い、上り優先キュー42が空のときのみ上り一般キュー43から読み出しを行い、読み出したアクセス信号をメモリ制御部へ渡す。もし、上り優先キュー42と上り一般キュー43共に空ならば、上り送信部44は、処理を待つことになる。
【0026】
下り受信部45は、メモリ制御部からの共通メモリ読み出し結果を含むアクセス信号を受信し、下りキュー46へ格納する。下り送信部47は、下りキュー46からアクセス信号を読み出し、アクセス信号内の送信元アドレスに対するアクセスタイミング値を調べて、タイミング用リングバス15のタイミング値がアクセスタイミング値に一致するときに、信号用リングバスへアクセス信号を送信する。
【0027】
図5は、本発明のプロセッサシステムの第三の実施形態を示すブロック図である。図5は、一例として、全部で7個のプロセッサで1つの共通メモリをアクセスする場合を示している。図5において、511、512はプロセッサ、521、522はバス制御部、53は第一の信号用リングバス、54は第一のタイミング用リングバス、55は第二の信号用リングバス、56は第二のタイミング用リングバスであり、図1及び3と同じ構成要素には同じ符号が付されている。
【0028】
図5では、それぞれ2つの信号用リングバス53、55とタイミング用リングバス54、56を設け、これらの間を乗換え回路31で結んでいる。また、5つのプロセッサ111、112、113、114、及び115と対応するバス制御部121、122、123、124、及び125は第一の信号用リングバス53と第一のタイミング用リングバス54に接続され、他の2つのプロセッサ511及び512と対応するバス制御部521及び522、そして、メモリ制御部16とそれに繋がる共通メモリ17は第二の信号用リングバス55と第二のタイミング用リングバス56に接続されている。このような構成にすることで、第二の信号用リングバス55に接続された2つのプロセッサからの共通メモリアクセスを最優先で行うようにし、更に、第一の信号用リングバス53に接続された5つのプロセッサの間でも優先順位付けを行うことで、きめ細かい共通メモリアクセスの優先順位処理を行うことが可能になる。
【0029】
以上、共通メモリにアクセスするプロセッサシステムについて説明したが、本発明は、上述したような実施形態に限定されるものではなく、他にも、本発明の主旨を逸脱しない範囲で、様々な変形実施可能であることは勿論である。
【発明の効果】
以上詳細に説明したように、本発明によれば、各プロセッサからの共通メモリアクセスを予め定めたタイミング用リングバスのタイミング値を条件に制御できるため、予め設定した速度で共通メモリをアクセスすることができ、共通メモリのアクセスに必要な時間を予め定めた最大時間よりも必ず小さくすることができる共通メモリを備えたプロセッサシステムを提供することができる。
【図面の簡単な説明】
【図1】 本発明の共通メモリを備えたプロセッサシステムの第一の実施形態を示すブロック図である。
【図2】 本発明の共通メモリを備えたプロセッサシステムにおけるプロセッサ及びバス制御部の構成例を示すブロック図である。
【図3】 本発明の共通メモリを備えたプロセッサシステムの第二の実施形態を示すブロック図である。
【図4】 本発明の乗換え回路の構成例を示すブロック図である。
【図5】 本発明の共通メモリを備えたプロセッサシステムの第三の実施形態を示すブロック図である。
【符号の説明】
111、112、113、114,115:プロセッサ、121、122、123、124、125:バス制御部、13:タイミング生成部、14:信号用リングバス、15:タイミング用リングバス、16:メモリ制御部、17:共通メモリ、21:プロセッサ、22:バス制御部、211:プロセッサ・コア、212:デュアルポートメモリ、213:応答レジスタ、214:要求レジスタ、215:応答フラグ、216:要求フラグ、221:要求キュー、222:タイミングメモリ、223:送信制御部、224:受信制御部、31:乗換え回路、41:上り受信部、42:上り優先キュー、43:上り一般キュー、44:上り送信部、45:下り受信部、46:下りキュー、47:下り送信部、511、512:プロセッサ、521、522:バス制御部、53:第一の信号用リングバス、54:第一のタイミング用リングバス、55:第二の信号用リングバス、56:第二のタイミング用リングバス。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a processor system configured to access one common memory from a plurality of processors, and in particular, a common that can make sure that the time required for accessing the common memory is smaller than a predetermined maximum time. The present invention relates to a processor system having a memory.
[0002]
[Prior art]
As a processor system having a common memory for accessing a common memory by a plurality of processors, a system using a ring bus as described in, for example, Japanese Patent Laid-Open No. 11-13412 has been proposed. In this method, the processor that wants to access the common memory first sends a request signal as a broadcast signal so that it does not interfere with access from other processors and is not disturbed by access from other processors. After confirming the above, it is possible to actually access the common memory.
[0003]
[Problems to be solved by the invention]
However, in the processor system having the conventional common memory described above, when the ring bus is used for access from another processor when it is desired to access the common memory, a waiting time is required until the ring bus becomes free. . Especially in situations where many processors request access at the same time, this waiting time becomes large and the time required to access the common memory cannot be accurately estimated, and in some cases, the access must be given up. There was a problem that the situation was possible.
The present invention has been made in consideration of the above points, and an object of the present invention is to provide a processor system having a common memory that can make the time required for accessing the common memory smaller than a predetermined maximum time. To do.
[0004]
[Means for Solving the Problems]
To achieve the above object, the present invention provides a common memory for reading and writing from a plurality of processors, a signal ring bus for transmitting an access signal between the common memory and the processor, and a timing ring bus for transmitting a timing signal. A timing generator that transmits the timing signal having a finite timing value to the timing ring bus, a plurality of processors including a bus controller, and a signal between the signal ring bus and the common memory. A memory control unit that mediates between the processor, the processor core, a dual-port memory that can be read and written independently from the processor core side and the bus control unit side, a distinction between writing and reading, a common memory address And common memory access instructions consisting of dual-port memory addresses A request register for storing; a response register for storing a common memory read instruction including a common memory address and a dual port memory address; a request flag that is set and reset in accordance with writing to and reading from the request register; A FIFO structure having a response flag that is set and reset in accordance with writing to and reading from the response register, and wherein the bus control unit stores the content of the common memory access instruction to which an end bit capable of random writing is added If the request flag is set, the contents of the common memory access instruction stored in the request register are stored and then the request flag is reset. If the response flag is reset A request queue for setting the response flag after generating the common memory read instruction content and storing it in the response register, a timing memory for storing a predetermined access timing value capable of transmitting or receiving an access signal, and the request While reading the common memory access instruction content stored in the queue and generating an access signal based on this, the access timing value is obtained from the timing memory, and the timing value of the timing ring bus is the same as the access timing value. When matched, a transmission control unit that transmits the access signal to the signal ring bus, and an access timing value from the timing memory, and when the timing value of the timing ring bus matches the access timing value, Access from the signal ring bus A reception control unit that receives the access signal, extracts a memory read result, stores it in a corresponding address of the dual port memory, and sets a corresponding end bit of the request queue, and the memory control unit The access signal input from the signal ring bus is passed to the common memory, and when the access signal means reading , the memory read result from the common memory is output to the signal ring bus as an access signal to the corresponding processor. and, if the access signal wherein the input means writing, which is constituted as and writes the data into the common memory.
[0005]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a block diagram showing a first embodiment of a processor system having a common memory according to the present invention. FIG. 1 shows a case in which one common memory is accessed by five processors. In FIG. 1, 111, 112, 113, 114, 115 are processors, 121, 122, 123, 124, 125 are bus control units, 13 is a timing generation unit, 14 is a signal ring bus, 15 is a timing ring bus, Reference numeral 16 is a memory control unit, and 17 is a common memory.
[0006]
The timing generator 13 generates a timing signal including a cyclic timing value and transmits the timing signal to the timing ring bus 15. Here, for example, it is assumed that the timing value takes a cyclic value such that it increases by 1 from 0 to 7 and then returns to 0.
[0007]
As an example, the access operation to the common memory 17 will be described using the processor 111 and the bus control unit 121 as an example. The processor 111 instructs the bus control unit 121 to transmit an access signal when writing to or reading from the common memory 17 is desired. The bus control unit 121 receives an instruction from the processor 111, generates an access signal, and accesses the signal ring bus 14 when the timing value of the timing ring bus 15 reaches a predetermined access timing value. Send a signal. Here, it is assumed that 0, 1, 2, 3, 4, and 5 are set for the bus control units 121, 122, 123, 124, and 125, respectively, as access timing values. Therefore, the bus control unit 121 transmits an access signal to the signal ring bus 14 when the timing value of the timing ring bus 15 is 0. The access signal includes information such as distinction between writing and reading, a transmission source address corresponding to the processor 111, a common memory address, and writing data in the case of writing.
[0008]
The memory control unit 16 constantly monitors the signal ring bus 14 and receives it when an access signal is received. If the received access signal means writing, the common memory address and write data are extracted, and the write data is written to the common memory address of the common memory 17. On the other hand, if the received access signal means reading, the source address and the common memory address are extracted, and reading is performed from the common memory address of the common memory 17.
[0009]
In the case of the read process, the read result is output from the common memory 17 generally with a time delay. The memory control unit 16 generates an access signal from the read result, and the timing value of the timing ring bus 15 is 0 because the access timing value predetermined for the transmission source address corresponding to the processor 111 is 0. At this time, an access signal is transmitted to the signal ring bus 14.
[0010]
The bus control unit 121 receives an access signal when the timing value of the timing ring bus 15 is zero. Then, the reading result is extracted from the access signal and passed to the processor 111, whereby the processor 111 completes the reading process from the common memory. In this example, only one value is assumed as the access timing value, but a plurality of values can be set. That is, for example, since the timing values 6 and 7 are unassigned, if they are assigned to the bus control unit 121, the common memory access efficiency from the bus control unit 121, that is, the common memory access efficiency from the processor 111. Can be improved.
[0011]
FIG. 2 is a block diagram showing a configuration example of the processor and the bus control unit in the processor system of the present invention. In FIG. 2, 21 is a processor, 22 is a bus control unit, 211 is a processor core, 212 is a dual port memory (hereinafter abbreviated as DP memory), 213 is a response register, 214 is a request register, 215 is a response flag, 216 Is a request flag, 221 is a request queue, 222 is a timing memory, 223 is a transmission control unit, and 224 is a reception control unit. Similar to the above description, the processor 111 and the bus control unit 121 in FIG. 1 will be described as an example.
[0012]
When the processor 111 (corresponding to the processor 21 in FIG. 2) wants to write to or read from the common memory 17, the processor core 211 checks the state of the request flag 216. The request flag 216 is a 1-bit flag having two states of set and reset, and is set when there is a common memory access request, and is reset when there is no common memory access request. If the request flag 216 is reset, the processor core 211 stores, in the request register 214, the distinction between writing and reading, the common memory address, and in the case of writing, the DP memory address where the write data is stored. The request flag 216 is set. If the request flag 216 is set, the preceding common memory access request has not yet been processed, and the processor core 211 must wait for processing.
[0013]
The bus control unit 121 (corresponding to the bus control unit 22 in FIG. 2) monitors the request flag 216, and when it is set, reads the contents of the request register 214 and stores the contents in the request queue 221. The request flag 216 is reset. The request queue 221 is a memory having an irregular FIFO structure to which an end bit that can be written randomly is added, and contents other than the end bit can be sequentially read from the previously stored contents.
[0014]
The timing memory 222 stores an access timing value that permits predetermined transmission or reception to the bus control unit 121. The access timing value for the bus control unit 121 is assumed to be zero.
[0015]
The transmission control unit 223 reads the content written first from the request queue 221 and generates an access signal based on this. The access signal includes information such as distinction between writing and reading, a transmission source address corresponding to the processor 111, a common memory address, and write data obtained from the DP memory address of the DP memory in the case of writing. On the other hand, the transmission control unit 223 knows the access timing value 0 from the timing memory 222 and transmits an access signal to the signal ring bus 14 when the timing value of the timing ring bus 15 is 0. In addition, the transmission control unit 223 sets a corresponding end bit of the request queue 221 in the case of a read process. If there is no content to be read in the request queue 221, it waits for the content to be read to be stored.
[0016]
The memory control unit 16 constantly monitors the signal ring bus 14 and receives it when an access signal is received. If the received access signal means writing, the common memory address and write data are extracted, and the write data is written to the common memory address of the common memory 17. On the other hand, if the received access signal means reading, the source address and the common memory address are extracted, and reading is performed from the common memory address of the common memory 17.
[0017]
In the case of the read process, the read result is output from the common memory 17 generally with a time delay. The memory control unit 16 generates an access signal from the read result, and the timing value of the timing ring bus 15 is 0 because the access timing value predetermined for the transmission source address corresponding to the processor 111 is 0. At this time, an access signal is transmitted to the signal ring bus 14.
[0018]
In the bus control unit 121 (corresponding to the bus control unit 22 in FIG. 2), the reception control unit 224 receives an access signal when the timing value of the timing ring bus 15 is 0. Then, the read result and the DP memory address are extracted from the access signal, the read result is written to the DP memory address of the DP memory 212, and then the corresponding end bit of the request queue 221 is set. In general, the DP memory 212 cannot perform writing from the reception control unit 224 and reading from the transmission control unit 223 at the same time. However, when the access signal is generated for the writing process in the transmission control unit 223, it is considered that there is little problem in particular because reading from the DP memory 212 is performed prior to transmission.
[0019]
The request queue 221 checks the end bit in order, and if it is set, checks the status of the response flag 215. The response flag 215 is a 1-bit flag having two states, set and reset, and is set when there is a common memory read result, and is reset when there is no common memory read result. If the response flag 215 is reset, the request queue 221 stores the common memory address and the DP memory address in the response register 213, and then sets the response flag 215. If the response flag 215 is set, the request queue 221 has to wait for processing because the preceding common memory read result has not yet been processed.
[0020]
In the processor 112 (corresponding to the processor 21 in FIG. 2), the processor core 211 examines the state of the response flag 215, and if it is set, reads the contents of the response register 213 and reads the DP memory 212 of the DP memory 212. -Read the read result of the common memory from the address. Thereafter, the processor core 211 can perform necessary processing after resetting the response flag 215.
[0021]
First, since the processor 21 in FIG. 2 uses the DP memory 212 to store the transmitted and received data, writing from the reception control unit 224 and reading to the transmission control unit 223 cannot be performed simultaneously. I mentioned that it doesn't usually matter. However, when a plurality of consecutive access timing values are assigned to a specific processor, reading from the DP memory 212 for transmission of an access signal at a later access timing value in the transmission control unit 223 is reception control. It may happen that the writing to the DP memory 212 by reception at the front access timing value in the unit 224 coincides. In such a case, it is possible to perform writing and reading in the DP memory 212 at the same time by providing a DP memory dedicated to transmission and reception, or providing a dedicated circuit capable of transmitting and receiving simultaneously instead of the DP memory. It is also possible to solve this problem.
[0022]
FIG. 3 is a block diagram showing a second embodiment of the processor system of the present invention. FIG. 3 shows a case where one common memory is accessed by five processors, as in FIG. In FIG. 3, 31 is a transfer circuit, and the same components as those in FIG.
[0023]
The transfer circuit 31 is a circuit that mediates communication with the memory control unit 16 after assigning priorities to access signals transmitted through the signal ring bus 14. Since the access signal from each bus control unit corresponding to each processor arrives at the transfer circuit at a unique timing value, the priority processing can be performed using only the timing value of the timing ring bus 15. With such a configuration, it is possible to reliably perform a common memory access from a processor that needs to preferentially access the common memory.
[0024]
FIG. 4 is a block diagram showing a configuration example of the transfer circuit of the present invention. In FIG. 4, reference numeral 41 is an upstream receiving unit, 42 is an upstream priority queue, 43 is an upstream general queue, 44 is an upstream transmitting unit, 45 is a downstream receiving unit, 46 is a downstream queue, and 47 is a downstream transmitting unit. The upstream priority queue 42, the upstream general queue 43, and the downstream queue 46 are each composed of a FIFO memory.
[0025]
The upstream receiving unit 41 receives the access signal from the signal ring bus 14, selects the upstream priority queue 42 or the upstream general queue 43 according to the timing value of the timing ring bus 15, and stores the access signal. The upstream transmission unit 44 first reads from the upstream priority queue 42, reads from the upstream general queue 43 only when the upstream priority queue 42 is empty, and passes the read access signal to the memory control unit. If the upstream priority queue 42 and the upstream general queue 43 are empty, the upstream transmission unit 44 waits for processing.
[0026]
The downlink receiving unit 45 receives an access signal including a common memory read result from the memory control unit and stores it in the downlink queue 46. The downlink transmission unit 47 reads the access signal from the downlink queue 46, checks the access timing value for the transmission source address in the access signal, and when the timing value of the timing ring bus 15 matches the access timing value, An access signal is transmitted to the ring bus.
[0027]
FIG. 5 is a block diagram showing a third embodiment of the processor system of the present invention. FIG. 5 shows an example in which one common memory is accessed by a total of seven processors. In FIG. 5, 511 and 512 are processors, 521 and 522 are bus control units, 53 is a first signal ring bus, 54 is a first timing ring bus, 55 is a second signal ring bus, and 56 is This is a second timing ring bus, and the same components as those in FIGS. 1 and 3 are denoted by the same reference numerals.
[0028]
In FIG. 5, two signal ring buses 53 and 55 and timing ring buses 54 and 56 are provided, respectively, and these are connected by a transfer circuit 31. Also, the bus controllers 121, 122, 123, 124, and 125 corresponding to the five processors 111, 112, 113, 114, and 115 are connected to the first signal ring bus 53 and the first timing ring bus 54, respectively. The bus controllers 521 and 522 corresponding to the other two processors 511 and 512, and the memory controller 16 and the common memory 17 connected thereto are the second signal ring bus 55 and the second timing ring bus. 56. With this configuration, the common memory access from the two processors connected to the second signal ring bus 55 is performed with the highest priority, and further connected to the first signal ring bus 53. By giving priority rankings among the five processors, it is possible to perform detailed priority processing for common memory access.
[0029]
Although the processor system for accessing the common memory has been described above, the present invention is not limited to the above-described embodiment, and various modifications may be made without departing from the spirit of the present invention. Of course, it is possible.
【The invention's effect】
As described above in detail, according to the present invention, since the common memory access from each processor can be controlled on the condition of the timing value of the predetermined timing ring bus, the common memory is accessed at a preset speed. Therefore, it is possible to provide a processor system including a common memory that can always make the time required for accessing the common memory smaller than a predetermined maximum time.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a first embodiment of a processor system having a common memory according to the present invention.
FIG. 2 is a block diagram illustrating a configuration example of a processor and a bus control unit in a processor system including a common memory according to the present invention.
FIG. 3 is a block diagram showing a second embodiment of a processor system having a common memory according to the present invention.
FIG. 4 is a block diagram illustrating a configuration example of a transfer circuit according to the present invention.
FIG. 5 is a block diagram showing a third embodiment of a processor system having a common memory according to the present invention.
[Explanation of symbols]
111, 112, 113, 114, 115: processor, 121, 122, 123, 124, 125: bus control unit, 13: timing generation unit, 14: signal ring bus, 15: timing ring bus, 16: memory control Unit: 17: common memory, 21: processor, 22: bus control unit, 211: processor core, 212: dual port memory, 213: response register, 214: request register, 215: response flag, 216: request flag, 221 : Request queue, 222: timing memory, 223: transmission control unit, 224: reception control unit, 31: transfer circuit, 41: uplink reception unit, 42: uplink priority queue, 43: uplink general queue, 44: uplink transmission unit, 45: Downlink reception unit, 46: Downstream queue, 47: Downstream transmission unit, 511, 512: Processor, 52 , 522: bus control unit, 53: first signal ring bus, 54: first timing ring bus, 55: second signal ring bus, 56: second timing ring bus.

Claims (3)

複数のプロセッサから読み出し及び書き込みをする共通メモリと、該共通メモリとプロセッサ間のアクセス信号を伝送する信号用リングバスと、タイミング信号を伝送するタイミング用リングバスと、該タイミング用リングバスに有限のタイミング値からなる前記タイミング信号を送信するタイミング生成部と、バス制御部を備えた複数のプロセッサと、前記信号用リングバスと前記共通メモリとの間で信号の仲介をするメモリ制御部とを有し、
前記プロセッサは、プロセッサ・コアと該プロセッサ・コア側と前記バス制御部側から独立に読み書きできるデュアルポートメモリと、書き込みと読み出しの区別、共通メモリアドレス及びデュアルポートメモリ・アドレスから成る共通メモリアクセス指示内容を格納する要求レジスタと、共通メモリアドレス及びデュアルポートメモリ・アドレスから成る共通メモリ読み出し指示内容を格納する応答レジスタと、前記要求レジスタへの書き込みと読み出しに合わせてセットとリセットが行われる要求フラグと、前記応答レジスタへの書き込みと読み出しに合わせてセットとリセットが行われる応答フラグを有し、
前記バス制御部は、
ランダム書き込みが可能な終了ビットを付加した前記共通メモリアクセス指示内容を格納するFIFO構造のメモリで構成され、前記要求フラグがセットならば前記要求レジスタに格納されている共通メモリアクセス指示内容を格納してから該要求フラグをリセットする一方で、前記終了ビットを順に調べてセットになっているとき、前記応答フラグがリセットならば前記共通メモリ読み出し指示内容を生成して前記応答レジスタに格納してから該応答フラグをセットする要求キューと、
アクセス信号を送信または受信できる予め定めたアクセスタイミング値を記憶するタイミングメモリと、
前記要求キューに格納されている共通メモリアクセス指示内容を読み出し、これに基づいてアクセス信号を生成する一方で、前記タイミングメモリからアクセスタイミング値を知り、前記タイミング用リングバスのタイミング値が該アクセスタイミング値と一致したとき、前記信号用リングバスへ前記アクセス信号を送信する送信制御部と、
前記タイミングメモリからアクセスタイミング値を知り、前記タイミング用リングバスのタイミング値が該アクセスタイミング値と一致したとき、前記信号用リングバスからアクセス信号を受信し、メモリ読み出し結果を抽出してデュアルポートメモリの対応するアドレスに格納し、前記要求キューの対応する終了ビットをセットする受信制御部とを有し、
前記メモリ制御部は、前記信号用リングバスから入力したアクセス信号を前記共通メモリに渡し、該アクセス信号が読み出しを意味する場合、該共通メモリからのメモリ読み出し結果を対応するプロセッサへのアクセス信号として前記信号用リングバスへ出力し、前記入力したアクセス信号が書き込みを意味する場合、前記共通メモリへデータを書き込むことを特徴とする共通メモリを備えたプロセッサシステム。
A common memory for reading and writing from a plurality of processors, a signal ring bus for transmitting an access signal between the common memory and the processor, a timing ring bus for transmitting a timing signal, and a timing ring bus A timing generation unit that transmits the timing signal including a timing value; a plurality of processors including a bus control unit; and a memory control unit that mediates a signal between the signal ring bus and the common memory. And
The processor includes a processor core, a dual port memory that can be read / written independently from the processor core side and the bus control unit side, a distinction between writing and reading, a common memory access instruction comprising a common memory address and a dual port memory address A request register for storing contents, a response register for storing common memory read instruction contents including a common memory address and a dual port memory address, and a request flag that is set and reset in accordance with writing to and reading from the request register And a response flag that is set and reset in accordance with writing to and reading from the response register,
The bus control unit
If the request flag is set, the common memory access instruction content stored in the request register is stored if the request flag is set. The request flag is reset and then the end bits are sequentially checked and set, and if the response flag is reset, the common memory read instruction content is generated and stored in the response register. A request queue that sets the response flag;
A timing memory for storing a predetermined access timing value capable of transmitting or receiving an access signal;
The contents of the common memory access instruction stored in the request queue are read and an access signal is generated based on the read instruction, while the access timing value is known from the timing memory, and the timing value of the timing ring bus is the access timing. A transmission control unit that transmits the access signal to the signal ring bus when the value matches,
Knowing the access timing value from the timing memory, when the timing ring bus timing value coincides with the access timing value, the access signal is received from the signal ring bus and the memory read result is extracted to obtain the dual port memory And a reception control unit that sets a corresponding end bit of the request queue.
The memory control unit passes the access signal input from the signal ring bus to the common memory, and when the access signal means reading, the memory reading result from the common memory is used as an access signal to the corresponding processor. A processor system comprising a common memory, wherein the processor system outputs data to the signal ring bus, and writes data to the common memory when the input access signal signifies writing.
複数のプロセッサから読み出しおよび書き込みをする共通メモリと、前記複数のプロセッサの一部を結び、前記共通メモリとの間のアクセス信号を伝送する第一の信号用リングバスと、前記複数のプロセッサの残りと前記共通メモリとを結び、前記共通メモリとの間のアクセス信号を伝送する第二の信号用リングバスと、前記第一の信号用リングバスと並行しタイミング信号を伝送する第一のタイミング用リングバスと、前記第二の信号用リングバスと並行しタイミング信号を伝送する第二のタイミング用リングバスと、有限のタイミング値からなるタイミング信号を前記第一のタイミング用リングバスに送信するタイミング生成部と、前記複数のプロセッサにそれぞれ備えられたバス制御部と、前記第一の信号用リングバスと前記第二の信号用リングバスとの間で前記アクセス信号を仲介し、前記第一のタイミング用リングバスと前記第二のタイミング用リングバスとの間で前記タイミング信号を仲介する乗換え回路と、前記第二の信号用リングバスと前記共通メモリとの間の信号の仲介をするメモリ制御部とを有し、
前記バス制御部はそれぞれ、前記タイミング用リングバスのタイミング信号が予め定められた値になったときに前記信号用リングバスに対し前記アクセス信号を入力または出力し、
前記乗換え回路は、前記第一の信号用リングバスに接続される各プロセッサからの前記アクセス信号に対して優先順位を付けて仲介処理をし、
前記メモリ制御部は、前記信号用リングバスから入力したアクセス信号を前記共通メモリに渡し、該アクセス信号が読み出しを意味する場合、該共通メモリからのメモリ読み出し結果を対応するプロセッサへのアクセス信号として前記信号用リングバスへ出力し、前記入力したアクセス信号が書き込みを意味する場合、前記共通メモリへデータを書き込むことを特徴とする共通メモリを備えたプロセッサシステム。
A common memory you read and write from a plurality of processors, concluding part of the plurality of processors, and a ring bus for the first signal to be transmitted access signals between said common memory, said plurality of processors A second signal ring bus for transmitting an access signal to and from the common memory, and a first signal for transmitting a timing signal in parallel with the first signal ring bus. A timing ring bus, a second timing ring bus for transmitting timing signals in parallel with the second signal ring bus, and a timing signal having a finite timing value are transmitted to the first timing ring bus. A timing generator, a bus controller provided in each of the plurality of processors, the first signal ring bus, and the second signal. A transfer circuit that mediates the access signal to and from the first timing ring bus and the timing signal between the first timing ring bus and the second timing ring bus; and the second signal A memory controller that mediates signals between the ring bus for use and the common memory,
Each of the bus control units inputs or outputs the access signal to the signal ring bus when a timing signal of the timing ring bus reaches a predetermined value,
The transfer circuit performs a mediation process by assigning priorities to the access signals from the processors connected to the first signal ring bus,
The memory control unit passes the access signal input from the signal ring bus to the common memory, and when the access signal means reading, the memory reading result from the common memory is used as an access signal to the corresponding processor. A processor system comprising a common memory, wherein the processor system outputs data to the signal ring bus, and writes data to the common memory when the input access signal signifies writing.
前記乗換え回路は、前記信号用リングバスからの前記アクセス信号を受信する上り受信部と、該上り受信部からのアクセス信号を一時的に蓄積する上り優先キュー及び上り一般キューと、該上り優先キュー及び該上り一般キューからのアクセス信号を読み出しメモリ制御へ渡す上り送信部と、前記メモリ制御部からの前記アクセス信号を受信する下り受信部と、該下り受信部からの前記アクセス信号を一時的に蓄積する下りキューと、該下りキューからのアクセス信号を読み出し前記信号用リングバスへ送信する下り受信部とを有し、
前記上り受信部は、前記アクセス信号が到来したときの前記タイミング用リングバスのタイミング値に応じて、最初に前記上り優先キューから読み出しを行い、該上り優先キューが空のときに前記上り一般キューから読み出しを行い、前記アクセス信号を前記信号用リングバスへ渡すことを特徴とする請求項2に記載の共通メモリを備えたプロセッサシステム。
The transfer circuit includes an upstream receiving unit that receives the access signal from the signal ring bus, an upstream priority queue and an upstream general queue that temporarily store an access signal from the upstream receiving unit, and the upstream priority queue. And an upstream transmission unit that reads an access signal from the upstream general queue and passes the access signal to memory control, a downstream reception unit that receives the access signal from the memory control unit, and temporarily receives the access signal from the downstream reception unit A downlink queue that accumulates, and a downlink receiver that reads an access signal from the downlink queue and transmits the read signal to the signal ring bus,
The uplink receiver first reads from the uplink priority queue according to the timing value of the timing ring bus when the access signal arrives, and the uplink general queue when the uplink priority queue is empty 3. The processor system having a common memory according to claim 2, wherein the access signal is transferred to the signal ring bus.
JP2002250149A 2002-08-29 2002-08-29 Processor system with common memory Expired - Fee Related JP4125933B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002250149A JP4125933B2 (en) 2002-08-29 2002-08-29 Processor system with common memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002250149A JP4125933B2 (en) 2002-08-29 2002-08-29 Processor system with common memory

Publications (2)

Publication Number Publication Date
JP2004086797A JP2004086797A (en) 2004-03-18
JP4125933B2 true JP4125933B2 (en) 2008-07-30

Family

ID=32057049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002250149A Expired - Fee Related JP4125933B2 (en) 2002-08-29 2002-08-29 Processor system with common memory

Country Status (1)

Country Link
JP (1) JP4125933B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4760301B2 (en) * 2005-10-27 2011-08-31 セイコーエプソン株式会社 Multiprocessor system
JP5365693B2 (en) * 2009-07-17 2013-12-11 日本電気株式会社 Semiconductor device and data transfer method in semiconductor device

Also Published As

Publication number Publication date
JP2004086797A (en) 2004-03-18

Similar Documents

Publication Publication Date Title
JP3340738B2 (en) Method and apparatus for a parallel packet bus
US6584522B1 (en) Communication between processors
JP4124491B2 (en) Packet routing switch that controls access to shared memory at different data rates
US6925512B2 (en) Communication between two embedded processors
JP5231400B2 (en) Multiprocessor gateway
EP0991999A1 (en) Method and apparatus for arbitrating access to a shared memory by network ports operating at different data rates
JPH01147647A (en) Data processor
WO1999022307A1 (en) Data interface and high-speed communication system using the same
US7447872B2 (en) Inter-chip processor control plane communication
CN118502323A (en) Industrial Ethernet data transmission method and FPGA
KR102303424B1 (en) Direct memory access control device for at least one processing unit having a random access memory
US20040230717A1 (en) Processing device
JP4104939B2 (en) Multiprocessor system
JP2591502B2 (en) Information processing system and its bus arbitration system
US11789884B2 (en) Bus system and method for operating a bus system
JP4125933B2 (en) Processor system with common memory
US20040054843A1 (en) Configuration and method having a first device and a second device connected to the first device through a cross bar
WO2001050216A2 (en) Communication bus for a multi-processor system
US7177997B2 (en) Communication bus system
US9268725B2 (en) Data transferring apparatus and data transferring method
JPS6298444A (en) Data communication method
KR0138063B1 (en) Inter processor communication apparatus of broad circuit distributing system
JP2573790B2 (en) Transfer control device
JP2004054419A (en) Inter-node transaction processor
JP2885166B2 (en) High-speed memory controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071225

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080318

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080328

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080509

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140516

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees