| 【発明の名称】 |
メモリ制御方式 |
| 【発明者】 |
【氏名】長根 健一
|
| 【要約】 |
【課題】マルチプロセッサシステムにおいて、プロセッサのメモリに対する書き込み処理と、メモリから読み出し処理の両方において優先処理を可能にし且つ書き込み処理時と読み出し処理時に使用するデータバッファの共通化を図るメモリ制御方式を提供する。
【解決手段】メモリに対してメモリ・リード・サイクルを起動するためのアクセスキューを保持するアクセスキュー保持回路18と、そのときのバッファ番号を保持するバッファ番号保持回路19を設けることで、メモリ・リード・サイクルのアクセスキューの消失を防ぎ、書き込みおよび読み出し処理に共通化したデータバッファ13の空きバッファ番号を競合することなく参照できるようにする。 |
【特許請求の範囲】
【請求項1】複数のプロセッサ、メモリコントローラおよびメモリを備え、バス制御回路およびメモリ制御回路間に配置され、前記メモリに対する前記プロセッサの書き込み処理および読み出し処理の際に使用するデータバッファを有するマルチプロセッサシステムにおけるメモリ制御方式において、前記データバッファを前記書き込み処理および読み出し処理に共通化し、前記メモリに対してメモリ・リード・サイクルを起動する際のアクセスキューを保持するアクセスキュー保持回路と、前記メモリに対してメモリ・リード・サイクルを起動する際の前記データバッファのバッファ番号を保持するバッファ番号保持回路を備えることを特徴とするメモリ制御方式。 【請求項2】前記バス制御回路および前記メモリ制御回路間に、前記データバッファが接続され、第1書き込み制御回路、第1優先順別バッファ管理FIFOおよび第1読み出し制御回路が直列接続され、更に第2読み出し制御回路、第2優先順別バッファ管理FIFOおよび第2書き込み制御回路が直列接続され、前記アクセスキュー保持回路および前記バッファ番号保持回路は、前記第1読み出し制御回路および前記第2書き込み制御回路間に接続されることを特徴とする請求項1に記載のメモリ制御方式。 【請求項3】前記アクセスキュー保持回路および前記バッファ番号保持回路には、前記メモリ制御回路からリクエスト受付信号が入力されることを特徴とする請求項2に記載のメモリ制御方式。 【請求項4】前記第1および第2読み出し制御回路から書き込み信号およびバッファ番号が入力され、先頭データを前記第1書き込み制御回路に出力する空きバッファ管理FIFOを備えることを特徴とする請求項2又は3に記載のメモリ制御方式。 【請求項5】前記第1および第2優先順別バッファ管理FIFOは、それぞれ高優先度(Hクラス)および低優先度(Lクラス)を備えることを特徴とする請求項2、3又は4に記載のメモリ制御方式。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明はメモリ制御方式、特に複数のプロセッサを使用するマルチプロセッサシステムにおけるメモリ制御方式に関する。 【0002】 【従来の技術】電子機器および電子応用機器が高性能化するに連れて、複数のプロセッサを使用するマルチプロセッサ装置(又はシステム)化して、複数のタスクを効率良く且つ迅速に実行するようになっている。斯かるマルチプロセッサ装置およびそのメモリ制御回路に関連する従来技術は、例えば特開平8−339353号公報の「マルチプロセッサ装置」、特開平4−365150号公報の「メモリアクセス制御方式」および特開平4−220834号公報の「ATMスイッチにおける優先制御バッファの制御方式」等に開示されている。 【0003】マルチプロセッサシステムにおける従来のメモリ制御回路は、優先処理を実現するために、上述した特開平4−220834号公報に開示されている如く、唯一の番号(アドレス)が割り当てられた複数個のデータバッファを、優先順位別に設けたバッファ管理FIFO(先入れ先出し)メモリと空きバッファ管理FIFOを使用して制御する方式を採用するのが一般的である。この先行技術は、図5に示す如く、複数のプロセッサ101、102、これらプロセッサとシステムバス100を介して接続されたメモリコントローラ103およびこのメモリコントローラに接続されたメモリ104により構成され、複数のプロセッサ101、102の読み込み/書き込み処理のメモリアクセス時間を短縮し、マルチプロセッサシステムの処理速度を向上させる技術を開示している。 【0004】図6は、従来のマルチプロセッサシステムにおけるメモリ制御回路32とバス制御回路33との間の詳細構成図を示す。即ち、メモリ制御回路32およびバス制御回路33間に、データバッファ31、41、書き込み制御回路34、44、読み出し制御回路36、46、優先順別バッファ管理FIFO35、45および空きバッファ管理FIFO38、48を有する。メモリに対する書き込み処理、メモリからの読み出し処理のそれぞれにおいて、優先処理を実現する。そこで、データバッファ31、41は、nビット(n=1、2、3、...)のデータをm個(m=1、2、3、..、以下m個をmワードと記述する)蓄えられるデータバッファを1組としたk組(k=1、2、3、...)で構成される。1組のデータバッファは、それぞれ唯一の番号が割り当てられていて、それぞれに独立して書き込み/読み出し処理を行うことができる。 【0005】次に、図7および図8は、図6の回路におけるメモリ・ライトアクセス時のタイミングチャートを示す。図6乃至図8を参照してプロセッサの書き込み処理に対するバッファ制御動作を説明する。図6において、プロセッサからの書き込み処理を受けたバス制御回路33は、書き込み制御回路34に対してバスアクセス信号およびアクセスキューを出力する。ここで、アクセスキューは、アクセス種類(ライト/リード)、アクセスを発行したプロセッサ種別およびアクセスするメモリのアドレスを示す多ビットの情報である。書き込み制御回路34は、バスアクセス信号が有効になっているとき、アクセスキューよりアクセスを発行したプロセッサの種別を判別し、その優先順に従って優先順別バッファ管理FIFO35に対して書き込み信号を発行する。また、書き込み制御回路34は、バスアクセス信号が有効になっているとき、空きバッファ管理FIFO38の先頭に格納されているデータバッファ番号n(n=1、2、3、...)およびアクセスキューを優先順別バッファ管理FIFO35に対して出力する。 【0006】以上の動作が、図7に示すクロック2で行われる。図7は、高優先度(以下、Hクラスと記す)のプロセッサから書き込み処理が行われた場合の例である。この後、書き込み制御回路34は、データバッファ31に対しデータバッファ選択信号としてデータバッファ番号nを出力し、同時にデータバッファ書き込み信号を出力する。また、優先順別バッファ管理FIFO35には、アクセスキューおよびデータバッファ番号n(n=1、2、3、...)が格納されている。以上の動作が、図7におけるクロック3での動作となる。この後、データバッファ選択信号によって示されたデータバッファ番号nに該当するデータバッファn(n=1、2、3、...)にプロセッサからの書き込みデータが格納される。以上のように、プロセッサからの書き込みデータをデータバッファ31に格納し、優先順別バッファ管理FIFO35にデータバッファ番号およびアクセスキューが格納されると、メモリに対してメモリ・アクセス・サイクルが起動され、メモリにデータが書き込まれる。図8は、この一連の動作のタイミングチャートである。 【0007】図6において、優先順別バッファ管理FIFO35にアクセスキューが格納されると、読み出し制御回路36は、アクセスキューからメモリアクセス・アドレス、ライト・リード判別信号、メモリアクセス・リクエスト信号を生成してメモリ制御回路32に対して出力する。また、読み出し制御回路36は、データバッファ31に対して読み出し選択信号としてバッファ番号n(n=1、2、3、...)を出力する。以上が、図8におけるクロック2での動作となる。その後、メモリ制御回路37は、メモリアクセス・リクエスト信号を受けてリクエスト受付け信号を読み出し制御回路36に対して出力する。この動作が、図8におけるクロック3での動作である。リクエスト受付け信号を受けた読み出し制御回路36は、データバッファ31とメモリ制御回路32に対してデータ出力信号を出力し、読み出し選択信号により選択されたデータバッファn(n=1、2、3、...)からはライト・データが出力される。以上が、図8におけるクロック4〜6での動作である。この後、読み出し制御回路36は、データバッファn(n=1、2、3、...)から全てのワードを読み出したら、優先順別バッファ管理FIFO35に対してシフト信号を出力して、次のアクセスキューの読み出しに備える。これが、図8におけるクロック7の動作となる。 【0008】この後、読み出し制御回路36は、空きバッファ管理FIFO38に対してバッファ番号n(n=1、2、3、...)と空きバッファ管理FIFO書き込み信号を出力して、空きバッファ管理FIFO38の最後にバッファ番号n(n=1、2、3、...)を格納する。これが、図8におけるクロック8、9の動作となる。ここで、読み出し制御回路36は、優先順別バッファ管理FIFO35からアクセスキューを読み出す際には、優先順位を考慮してHクラスのFIFOから読み出しを行う。従って、低優先度(Lクラス)のプロセッサの処理が優先順別バッファ管理FIFO35に格納されていても、後から発生したHクラスのプロセッサの処理が優先的に行われる。 【0009】 【発明が解決しようとする課題】しかし、上述の如き従来技術により構成した図6に示す如きメモリ制御回路では、メモリからのリードデータをプロセッサに返却する際に、優先処理を行うためにはプロセッサ種別の情報を含んだアクセスキューが消失しているため、優先処理が行えないという問題がある。一方、図9は、プロセッサからの読み出し処理が連続した場合の読み出し制御回路36、メモリ・インタフェース信号のタイミングチャートである。図9のクロック1において、アクセスキュー0、バッファ番号nが優先順別バッファ管理FIFO35に格納されると、読み出し制御回路36はメモリアクセス・リクエスト信号をメモリ制御回路32に対して出力する。メモリアクセス・リクエスト信号を受けたメモリ制御回路32は、クロック3でリクエスト受付け信号を読み出し制御回路36に対して出力し、これと同時に読み出し制御回路36は優先順別バッファ管理FIFO35に対してシフト信号を出力し、次のアクセスキュー1に対応したメモリアクセス・リクエスト信号をメモリ制御回路32に対して出力する。 【0010】一方、クロック2でリクエスト受付け信号を出力したメモリ制御回路32は、クロック4からメモリ・リード・サイクルを起動してメモリからデータの読み出しを行う。最初のメモリ・リード・サイクルを行っている間、メモリ制御回路32は、読み出し制御回路36から出力されているメモリアクセス・リクエスト信号に対して応答せず、メモリ・リード・サイクルが終了した時点で、次のリクエスト受付け信号を出力する。これが、クロック8における動作である。また、クロック8は、最初のメモリ・リード・サイクルに対するデータがメモリから出力されるタイミングでもあり、このデータをメモリ制御回路32は、クロック10でリード・データ確定信号と共に出力する。以上のようにプロセッサからの読み出し処理が連続した場合には、最初のメモリ・リード・データがメモリ制御回路32から出力されデータバッファ31に格納できるタイミングの時には、既にアクセスキューが失われているので、プロセッサ種別の判別を行えず優先処理が行えなくなっている。ここで、最初のアクセスキューを消失させないように優先順別バッファ管理FIFO35に対する出力信号を、クロック10まで待たせた場合には、次のメモリ・リード・サイクルの起動が遅くなり、処理能力が低下する。 【0011】更に、従来技術は単に2重化した構成になっているので、データバッファまでも2重化する必要があり、回路規模が増大するという問題もある。図10は、図6の2重化されているデータバッファ31、41と空きバッファ管理FIFO38、48の共通化を行った回路構成図である。メモリ制御回路32およびバス制御回路33間に、共通データバッファ71、優先バッファ管理FIFO72、73および共通空きバッファ管理FIFO74に加えて、書き込み制御回路34、44および読み出し制御回路36、46を有する。ここで、データバッファ71が、プロセッサからの書き込みデータとメモリからの読み出しデータを格納する共通データバッファである。但し、上述したアクセスキューが消失してしまうという問題が解決されているものと仮定した場合の構成図である。 【0012】データバッファは、それぞれ独立して書き込み/読み出し処理が行えるので、容易に共通化を計ることができる。しかし、空きバッファ管理FIFOを共通化して空きバッファ管理FIFO74とした場合には、プロセッサからの処理に対するアクセスキューを優先順別バッファ管理FIFO72に格納するタイミングと、メモリ・リード・データに対するアクセスキューを優先順別バッファ管理FIFO73に格納するタイミングが競合する可能性があり、空きバッファ管理FIFO74の先頭のデータを同時に参照することになってしまうという問題がある。図11は、プロセッサの処理に対する図10に示すメモリ制御回路32の動作を単純化したタイミングチャートである。網掛け部がプロセッサの読み出し処理、丸印がプロセッサの書き込み処理を示す。図11では、クロック8において、空きバッファ管理FIFO74の先頭データを参照するタイミングが競合していることが分かる。この競合タイミングが発生した場合には、何れか一方の処理を1クロック期間待機させることで問題の回避が考えられる。しかし、優先的に行われるべき処理が、例え1クロック期間であっても待機させられ処理能力が僅かなりとも低下することは避けたい。 【0013】 【発明の目的】従って、本発明の目的は、データバッファの2重化をすることなく、メモリに対する書き込み処理と、メモリから読み出したデータの処理との両方において、優先処理を可能にするメモリ制御方式を提供することである。 【0014】 【課題を解決するための手段】本発明のメモリ制御方式は、複数のプロセッサ、メモリコントローラおよびメモリを備え、バス制御回路およびメモリ制御回路間に配置され、メモリに対するプロセッサの書き込み処理および読み出し処理の際に使用するデータバッファを有するマルチプロセッサシステムにおけるメモリ制御方式であって、データバッファを書き込み処理および読み出し処理に共通化し、メモリに対してメモリ・リード・サイクルを起動する際のアクセスキューを保持するアクセスキュー保持回路と、メモリに対してメモリ・リード・サイクルを起動する際のデータバッファのバッファ番号を保持するバッファ番号保持回路を備える。 【0015】また、本発明のメモリ制御方式の好適実施形態によると、バス制御回路およびメモリ制御回路間に、上述したデータバッファが接続され、第1書き込み制御回路、第1優先順別バッファ管理FIFOおよび第2読み出し制御回路が直列接続され、更に第2読み出し制御回路、第2優先順別バッファ管理FIFOおよび第2書き込み制御回路が直列接続され、アクセスキュー保持回路およびバッファ番号保持回路は、第1読み出し制御回路および第2書き込み制御回路間に接続される。アクセスキュー保持回路およびバッファ番号保持回路には、メモリ制御回路からリクエスト受付信号が入力される。第1および第2読み出し制御回路から書き込み信号およびバッファ番号が入力され、先頭データを第1書き込み制御回路に出力する空きバッファ管理FIFOを備える。第1および第2優先順別バッファ管理FIFOは、それぞれ高優先度(Hクラス)および低優先度(Lクラス)を備える。 【0016】 【発明の実施の形態】以下、本発明によるメモリ制御方式の好適実施形態の構成および動作を、添付図面を参照して詳細に説明する。 【0017】先ず、図1は、本発明によるメモリ制御方式の好適実施形態の構成を示すブロック図である。このメモリ制御方式は、バス制御回路11およびメモリ制御回路20間に、データバッファ13、書き込み制御回路12A、12B、読み出し制御回路17A、17B、優先順別バッファ管理FIFO14、15、空きバッファ管理FIFO16、アクセスキュー保持回路18およびバッファ番号保持回路19を有する。 【0018】データバッファ13は、バス制御回路11およびメモリ制御回路20間に接続されている。また、書き込み制御回路12A、優先順別バッファ管理FIFO14および読み出し制御回路17Aは、バス制御回路11およびメモリ制御回路18間に直列接続されている。一方、書き込み制御回路12B、優先順別バッファ管理FIFO15および読み出し制御回路17Bは、メモリ制御回路18およびバス制御回路11間に直列接続されている。空きバッファ管理FIFO16は、読み出し制御回路17A、17Bから書き込み信号およびバッファ番号を受けると共に書き込み制御回路12Aからシフト信号を受け、書き込み制御回路12Aに先頭データを出力する。書き込み制御回路12A、12Bは、データバッファ13に書き込み信号およびバッファ選択信号を出力する。また、読み出し制御回路17A、17Bは、データバッファ13にバッファ選択信号およびデータ確定信号を出力する。アクセスキュー保持回路18およびバッファ番号保持回路19は、読み出し制御回路17Aおよび書き込み制御回路12B間に接続されている。 【0019】本発明のメモリ制御方式は、プロセッサからのアクセスおよびメモリ・リード・データの両方に対して優先処理可能なデータバッファ制御回路を有する。この優先処理可能なデータバッファ制御回路は、プロセッサからのバスアクセス信号を、バス制御回路11を介して書き込み制御回路12Aに入力する。また、書き込み制御回路12Aは、空きバッファ管理FIFO16の先頭に格納されているバッファ番号を参照して、プロセッサからの書き込みデータをデータバッファ13のバッファ番号n(n=1、2、3、...)のデータバッファに格納する。 【0020】このとき、プロセッサからのアクセスが読み出し処理であった場合には、データバッファ13には何も格納されない。また、同時に書き込み制御回路12Aは、優先順別に設けられた優先順別バッファ管理FIFO14にプロセッサからのアクセスに対応したアクセスキューとバッファ番号を格納する。優先順別バッファ管理FIFO14の先頭のアクセスキューとバッファ番号は、読み出し制御回路17Aに入力される。読み出し制御回路17Aは、メモリ制御回路20に対してメモリ・アクセス・リクエスト信号を出力する。この出力は、メモリ制御回路20で処理され、メモリに対してメモリ・アクセス・サイクルが起動される。メモリ制御回路20は、メモリに対してメモリ・リード・サイクルを起動した場合には、メモリから読み出したデータをデータバッファ13に入力し、リード・データ確定信号を書き込み制御回路12Bに出力する。 【0021】本発明によるメモリ制御方式は、上述の如く、アクセスキュー保持回路18およびバッファ番号保持回路19を有する。このアクセスキュー保持回路18およびバッファ番号保持回路19は、メモリ制御回路20がメモリ・リード・サイクルを起動したときのアクセスキューおよびバッファ番号を書き込み制御回路12Bに出力している。書き込み制御回路12Bは、このバッファ番号を参照してメモリ・リード・データをデータバッファ13のバッファ番号n(n=1、2、3、...)のデータバッファに格納する。また、同時に書き込み制御回路12Bは、優先順別に設けられた優先順別バッファ管理FIFO15に、アクセスキューおよびバッファ番号を格納する。 【0022】優先順別バッファ管理FIFO15に格納されたバッファ番号は、読み出し制御回路17Bに出力される。読み出し制御回路17Bは、優先順に従って処理を行う。読み出し制御回路17Bは、優先順に従って読み出したバッファ番号をデータバッファ13に出力して、そのバッファ番号に対応するデータバッファからメモリ・リード・データの読み出しを行う。これと同時に、読み出し制御回路17Bは、バス制御回路11に対してデータ確定信号を出力し、データバッファ13から出力されるデータの引取りを促す。その後、データバッファ13からの読み出し処理が終了すると、読み出し制御回路17Bは、空きバッファ管理FIFO16の最後にバッファ番号を格納する。尚、図1中のバス制御回路11およびメモリ制御回路20は、当業者に周知であり、また本発明とは直接関係ないので、その詳細は省略する。 【0023】以下、図1に示す本発明によるメモリ制御方式の好適実施形態の動作を説明する。先ず、プロセッサからの読み出し処理におけるメモリ制御回路18のバッファ制御動作を、図2のタイミングチャートを参照して説明する。図2において、(a)はクロック、(b)はアクセスキュー、(c)はバスアクセス信号、(d)は空きバッファ管理FIFO16の先頭、(e)はHクラス書き込み信号、(f)はLクラス書き込み信号、(g)は優先順別バッファ管理FIFO14の入力データ、(h)は書き込み制御回路12Aから空きバッファ管理FIFO16へのシフト信号および(i)は優先順別バッファ管理FIFO14の先頭である。 【0024】プロセッサからの読み出し処理は、バス制御回路11を介し、クロック2においてアクセスキューおよびバスアクセス信号として書き込み制御回路12Aに入力される。このとき、書き込み制御回路12Aは、空きバッファ管理FIFO16の先頭に格納されているデータバッファ13のバッファ番号n(n=1、2、3、...)を読み出し、アクセスキューおよびバッファ番号nを優先順別バッファ管理FIFO14に対して出力する。これと同時に、書き込み制御回路12Aは、アクセスキューよりプロセッサ種別を判別し、それに対応した優先順別バッファ管理FIFO14の書き込み信号を出力する。 【0025】図2(a)に示すクロック2は、Hクラスのプロセッサからの処理があった場合の例である。更に、書き込み制御回路12Aは、空きバッファ管理FIFO14にシフト信号を出力して(図2(h)参照)、次の処理に対する準備を行う。以上の一連の動作を経て、クロック3において、優先順別バッファ管理FIFO14の先頭にアクセスキューおよびバッファ番号n(n=1、2、3、...)が格納される。図2の場合には、優先順別バッファ管理FIFO14のHクラス側に格納されることになる。 【0026】一方、メモリに対する読み出し動作を、図3のタイミングチャートを参照して説明する。図3において、(a)はクロック、(b)は優先順別バッファ管理FIFO14の出力データ、(c)はメモリアクセス・アドレス、(d)はライト・リード判定信号、(e)はメモリアクセス・リクエスト信号、(f)はリクエスト受け付け信号、(g)はバッファ番号保持回路19の出力信号、(h)はアクセスキュー保持回路18の出力信号、(i)はHクラス書き込み信号、(j)はLクラス書き込み信号、(k)はデータバッファ選択信号、(l)はデータバッファ書き込み信号、(m)は優先順別バッファ管理FIFO15の出力信号、(n)はデータ終了信号、(o)はリード・データ確定信号、(p)はメモリリード・データ、(q)はメモリ・インタフェースの制御データおよび(r)はメモリインタフェースのデータバスである。ここで、優先順別バッファ管理FIFO14にアクセスキューおよびバッファ番号が格納されると、読み出し制御回路17Aは、優先順位に対応した読み出し処理を行う。図3のクロック2において、読み出し制御回路17Aは、優先順別バッファ管理FIFO14から入力されるアクセスキュー0よりメモリアクセス・アドレス(図3(c)参照)、メモリアクセス・リクエスト信号(図3(e)参照)およびライト・リード判別信号(図3(d)参照)を生成してメモリ制御回路20に出力する。 【0027】図3は、メモリからの読み出し動作のタイミングチャートであるので、ライト・リード判別信号(図3(d)参照)は0のままである。読み出し制御回路17Aからメモリアクセス・リクエスト信号を受けたメモリ制御回路20は、クロック3でリクエスト受け付け信号(図3(f)参照)を読み出し、制御回路17A、アクセスキュー保持回路18およびバッファ番号保持回路19に出力し、クロック5からメモリに対してメモリ・リード・サイクルを起動する。クロック5から起動されたメモリ・リード・サイクルに対するメモリのデータ出力は、クロック9から開始される。このときのメモリ出力データをメモリ制御回路20は、クロック11以後、メモリリード・データをデータバッファ13に出力し、同時に書き込み制御回路17Bにリード・データ確定信号(図3(o)参照)を出力する。このとき、リード・データ確定信号を受けた書き込み制御回路17Bは、バッファ番号保持回路19が示すバッファ番号をデータバッファ選択信号(図3(k)参照)としてデータバッファ13に出力する。また同時に、書き込み制御回路17Bは、データバッファ13にデータバッファ書き込み信号(図3(l)参照)を出力する。このようにして、メモリリード・データをデータバッファ13に格納する。この後、メモリ制御回路20は、データバッファ13にメモリリード・データ(図3(p)参照)を全て出力したことを示すデータ終了信号(図3(n)参照)を書き込み制御回路12Bに出力する。 【0028】図3は、4ワードのメモリ・リード・サイクルが起動された場合の例である。図3(a)に示すクロック14でデータ終了信号を出力している。データ終了信号を受けた書き込み制御回路12Bは、アクセスキュー保持回路18が示すアクセスキューより優先順位を判別して優先順別バッファ管理FIFO15に書き込み信号を出力する。この例は、図3(i)に示す如く、Hクラスのプロセッサからの読み出し処理が行われた場合であり、クロック14にてHクラス書き込み信号が出力されている。この書き込み信号でバッファ番号保持回路に19に保持されているバッファ番号が、優先順別バッファ管理FIFO15に格納される。 【0029】その後、バス制御回路11に対するメモリ・リード・データの入力は、図4のタイミングチャートに示す如く実行される。図4中、(a)はクロック、(b)は優先順別バッファ管理FIFO15の出力データ、(c)は読み出し選択信号、(d)はデータ確定信号、(e)はデータ読み出し終了信号、(f)は空きバッファ管理FIFO16の入力データおよび(g)は空きバッファ管理FIFO16への書き込み信号を示す。優先順別バッファ管理FIFO15にアクセスキューおよびバッファ番号が格納されると、読み出し制御回路17Bは優先順位に対応した読み出し処理を行う。図4のクロック2において読み出し制御回路17Bは、優先順別バッファ管理FIFO15から入力されたアクセスキューよりデータ確定信号をバス制御回路11およびデータバッファ13に入力する。このとき、読み出し制御回路17Bは、読み出し選択信号として優先順別バッファ管理FIFO15の出力データであるバッファ番号をデータバッファ13に入力する。上述した一連の動作により、データバッファ13は、読み出し選択信号が示すバッファ番号に該当するデータバッファからメモリ・リード・データをバス制御回路11に出力する。この後、読み出し制御回路17Bは、データバッファ11から全てのメモリ・リード・データを読み出したことを示す読み出し終了信号をバス制御回路11に出力する。 【0030】図4は、4ワードのメモリ・リード・データを読み出した場合の例であり、クロック5にて読み出し終了信号が出力されている。このとき、読み出し制御回路17Bは、空きバッファ管理FIFO16に書き込み信号を出力し、空きバッファ管理FIFO16の最後にバッファ番号を格納する。図4のクロック5、クロック6が、この動作を示す。 【0031】このように、読み出し制御回路17Aがメモリ制御回路20にメモリ・リードのリクエスト信号を出力したときのアクセスキューは、アクセスキュー保持回路18に保持されているので、メモリ制御回路20がメモリ・リード・データを出力したとき、アクセスキューが消失することはない。従って、メモリ・リード・データに関してもプロセッサ種別の判別が可能になり優先処理が実施できる。 【0032】また、読み出し制御回路17Aがメモリ制御回路20にメモリ・リードのリクエスト信号を出力したときのバッファ番号は、バッファ番号保持回路19に保持されているので、メモリ・リード・データに対するアクセスキューを優先順別バッファ管理FIFO15に格納するとき、空きバッファ管理FIFO16を参照する必要がない。従って、プロセッサからの処理に対するアクセスキューを優先順別バッファ管理FIFO14に格納するタイミングと、メモリ・リード・データに対するアクセスキューを、優先順別バッファ管理FIFO15に格納するタイミングの競合がなくなり、何れか一方の処理を待機させ1クロック期間の処理能力低下を招くことなくデータバッファの共通化が可能である。 【0033】以上、本発明によるメモリ制御方式の好適実施形態の構成および動作を詳述した。しかし、斯かる実施形態は、本発明の単なる例示に過ぎず、何ら本発明を限定するものではない。本発明の要旨を逸脱することなく、特定用途に応じて種々の変形変更が可能であること、当業者には容易に理解できよう。 【0034】 【発明の効果】以上の説明から明らかな如く、本発明のメモリ制御方式によれば、メモリ・リード・サイクルを起動するためのアクセスキューを保持するアクセスキュー保持回路とその時のバッファ番号を保持するバッファ番号保持回路を設け、アクセスキューの消失を防ぐことにより、メモリ・リード・データにおいても優先処理を実現する。また、空きバッファ管理FIFOにおける競合動作を解消して、データバッファの共通化を実現したメモリ制御方式が得られる。
|
| 【出願人】 |
【識別番号】000232047 【氏名又は名称】日本電気エンジニアリング株式会社
|
| 【出願日】 |
平成12年10月30日(2000.10.30) |
| 【代理人】 |
【識別番号】100081710 【弁理士】 【氏名又は名称】福山 正博
|
| 【公開番号】 |
特開2002−132702(P2002−132702A) |
| 【公開日】 |
平成14年5月10日(2002.5.10) |
| 【出願番号】 |
特願2000−330517(P2000−330517) |
|