JP2007316880A - デュアルポートメモリのアクセス権調停方式 - Google Patents

デュアルポートメモリのアクセス権調停方式 Download PDF

Info

Publication number
JP2007316880A
JP2007316880A JP2006144795A JP2006144795A JP2007316880A JP 2007316880 A JP2007316880 A JP 2007316880A JP 2006144795 A JP2006144795 A JP 2006144795A JP 2006144795 A JP2006144795 A JP 2006144795A JP 2007316880 A JP2007316880 A JP 2007316880A
Authority
JP
Japan
Prior art keywords
cpu
access
dual port
writing
port 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.)
Granted
Application number
JP2006144795A
Other languages
English (en)
Other versions
JP5061504B2 (ja
Inventor
Masahiro Sugimoto
昌弘 杉本
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.)
Meidensha Corp
Meidensha Electric Manufacturing Co Ltd
Original Assignee
Meidensha Corp
Meidensha Electric Manufacturing 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 Meidensha Corp, Meidensha Electric Manufacturing Co Ltd filed Critical Meidensha Corp
Priority to JP2006144795A priority Critical patent/JP5061504B2/ja
Publication of JP2007316880A publication Critical patent/JP2007316880A/ja
Application granted granted Critical
Publication of JP5061504B2 publication Critical patent/JP5061504B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】ライト動作時にウェイト機能をもたないCPUで、ライト動作時にウェイトが発生した場合にもリトライ処理機構を不要にしてアクセスおよびデータ書込みを可能にする。また、CPUからみてアクセス処理遅れを発生しない。
【解決手段】FPGA4はウェイト機能をもたないCPU2Aによるライト動作時にウェイトが発生した場合にメモリライトサイクル時のアドレスおよび書込みデータを記憶しておき、CPUに代わって書込動作を代行する。
FPGAは代行書込みのアクセス待ちになっている状態をCPUに通知し、CPUは代行書込みのアクセス待ち状態のときには連続してアクセスを発生することを禁止する。また、代行書込み時にCPUから発生するアドレス、データを複数個記憶し、この記憶したアドレス、データをデュアルポートメモリに逐次書き込んでいくことも含む。
【選択図】図1

Description

本発明は、デュアルポートメモリのアクセス権調停方式に係り、特にライト動作時にウェイト機能をもたないCPUによるアクセスおよびデータ書込みに対するアクセス権調停方式に関する。
複数のCPUが共通のデータを利用する場合に、デュアルポートメモリを利用することが多い。このデュアルポートメモリは、それぞれのCPUからアクセスできるように2系統のアドレス、データ、各種制御信号が用意されている。このデュアルポートメモリは通常動作時はそれぞれのCPUからアクセスが行われるが、同一アドレスに同時アクセスが発生した場合、片方のCPUにウェイト信号を出す機能を設けている。この信号を受けたCPUはウェイトが解除されるまでメモリアクセスを延長し、衝突が起こるのを回避している。
ところで、既存のデュアルポートメモリはメモリ容量が少ないもの、製造中止になるものが多く、現在では新規開発品への使用を避ける傾向にある。この場合、デュアルポートメモリの変わりにSRAMを使用して、外部に調停機構を設けてデュアルポートメモリに近い機能(以下、デュアルポートメモリ機能)を持たせるようにしている。
この例を図3に示し、メモリアクセス使用権の調停機構をFPGA(フィールド・プログラマブル・ゲート・アレイ)1にもたせ、2つのCPU2A,2Bから同時にSRAM3へのアクセスが発生した場合に、FPGA1は片方のCPUにウェイト信号を出力するとともに、SRAM3へのアドレス、データのセレクトをして衝突を防ぐ。
上記のデュアルポートメモリ、またはSRAMを使ったデュアルポートメモリ機能共に、必ず必要な機能はCPUのウェイト機能である。この機能は上記のようにウェイト信号が入力されている間、CPUはメモリサイクルを延長し、ウェイトが解除後にアクセスを継続する。
ここで、CPUまたはプロセッサには、デュアルポートメモリ機能が必要な場合でも、ウェイト機能をサポートしていないものや、サポートしていてもリードまたはライトの片方しかサポートしていないものがある。このようなCPUまたはプロセッサによるデュアルポートメモリのアクセス権調停では誤ったアクセスおよびデータ書込みのおそれがある。
例として2個のCPU(CPU2A、CPU2B)のうち、CPU2Aがリード動作にはウェイト対応しているが、ライト動作がウェイト非対応の場合、アクセス権調停機構がCPU2Bにウェイトを出した場合には問題ないが、CPU2Aのライト時にウェイトを出した場合、CPU2Aはメモリサイクルを延長できないため、正常にデータを書き込めないままメモリサイクルを完了してしまう。
このような不都合を解消するシステムが提案されている(例えば、特許文献1参照)。このシステムでは、デュアルポートメモリは2つのポートで受け付けたアクセスが競合した場合に後にアクセスを受け付けたポートからアクセスの競合を通知するビジー信号を出力するものとし、2つのポートのうちの一方のポートからビジー信号が出力されたときに当該ビジー信号を保持する保持回路を設け、デュアルポートメモリへのアクセスが受け付けられたプロセッサはそのアクセス実行後に保持回路の保持内容がビジー信号であるときには実行したアクセスを再度行うリトライ処理を実行する。
特開平9−231122号公報
デュアルポートメモリ機能が必要な場合でも、CPUまたはプロセッサがウェイト機能をサポートしていない場合、前記の特許文献1では保持回路とリトライ処理機構によって書込み失敗を回避している。
しかし、この方式ではCPUまたはプロセッサ側はリトライ処理機構を持つことが必要条件となり、この処理機構をもたないプロセッサ等はその改造が必要となる。
また、ライト動作時にウェイトが発生した場合のリトライ処理では、再度CPUからのライトアクセスを行うため、アクセス処理遅れが発生する。
本発明の目的は、上記の課題を解決したアクセス権調停方式を提供することにある。
本発明は、前記の課題を解決するため、ライト動作時にウェイト機能をもたないCPUで、ライト動作時にウェイトが発生した場合にCPUに代わってFPGA等のアクセス権調停機構が書込動作を代行するようにしたもので、以下の構成を特徴とする。
(1)ライト動作時にウェイト機能をもたないCPUによるデュアルポートメモリへのアクセスおよびデータ書込みをアクセス権調停機構で調停するデュアルポートメモリのアクセス権調停方式であって、
前記アクセス権調停機構は、前記CPUによる前記デュアルポートメモリへのアクセスに対してウェイトが必要になった場合のみ、メモリライトサイクル時のアドレスおよび書込みデータを記憶しておく記憶手段と、前記デュアルポートメモリに対するアクセス権が得られた時点で前記記憶手段に記憶しておいたアドレスと書込みデータをデュアルポートメモリに書込む代行書込み手段とを備えたことを特徴とする。
(2)前記アクセス権調停機構は、前記代行書込みのアクセス待ちになっている状態を前記CPUに通知するためのアクセス待ち確認レジスタを備え、
前記CPUは代行書込みのアクセス待ち状態のときには連続してアクセスを発生することを禁止することを特徴とする。
(3)前記アクセス権調停機構は、代行書込み時に前記CPUから発生するアドレスと書き込みデータを複数個記憶できるバッファと、このバッファに記憶したアドレスと書き込みデータを前記デュアルポートメモリに逐次書き込んでいくことを特徴とする。
以上のとおり、本発明によれば、ライト動作時にウェイト機能をもたないCPUで、ライト動作時にウェイトが発生した場合にCPUに代わってFPGA等のアクセス権調停機構が書込動作を代行するようにしたため、CPUは従来のリトライ処理機構を持つことが不要になるし、この処理機構をもたないCPUの改造も不要となる。
また、従来のリトライ処理方式に比べて、CPUからの再度のライトアクセスがなされることなく、CPUからみてアクセス処理遅れが発生することもない。また、再度ライトアクセスを起こすと、再びアクセス権調停により待たされる可能性があるが、このような不都合は代行書込みにより解消される。
(実施形態1)
図1は、本発明の実施形態を示す要部構成図である。同図が図3と異なる部分はアクセス件調停機構になるFPGA4の機能構成にあり、ライト動作時にウェイト機能をもたない(リード動作時はウェイト機能有り)CPU2Aでデュアルポートメモリ機能へのアクセスおよびデータ書き込みを可能とするものである。
本実施形態では、FPGA4がCPU2Aに代わって指定アドレスへのデータ書込を行う機能構成とする。
FPGA4は、従来と同様に、CPU2A,2Bからアクセス要求があると、SRAM3に対するアドレス、データ、制御信号の切り替え制御を行う。また、FPGA4は、SRAM3に対するアクセス権調停を行うが、このアクセス権調停に際して、ライト動作時にウェイト非対応のCPU2Aにウェイトが必要になった場合のみ、メモリライトサイクル時のアドレスおよび書込みデータをFPGA内に記憶しておく(1アクセス分のラッチ)。このとき、CPU2Aはライトサイクルを終了する。その後、アクセス権が得られた時点で、FPGA4は記憶しておいたアドレスと書込みデータをSRAM3に書込む。すなわち、FPGA4はCPU2Aに代行して当該アドレスにデータを書込む(以下、代行書込アクセス)。
なお、FPGA4は、ライト動作時にウェイト不要の場合、代行書込アクセスは発生せず、CPU2Aによる通常タイミングのメモリライトサイクル動作によりSRAM3にデータが書き込まれる。
したがって、本実施形態によれば、リード動作時のみウェイト機能をサポートしているCPUで、ライト動作時にウェイトが発生した場合にCPUに代わって書込動作をFPGAが代行することにより、CPUは従来のリトライ処理機構を持つことが不要になるし、この処理機構をもたないCPUの改造も不要となる。
また、従来のリトライ処理方式に比べて、CPUからの再度のライトアクセスがなされることなく、CPUからみてアクセス処理遅れが発生することもない。また、再度ライトアクセスを起こすと、再びアクセス権調停により待たされる可能性があるが、このような不都合は代行書込みにより解消される。
(実施形態2)
図2は、本発明の実施形態を示す要部構成図である。同図が図1と異なる部分はFPGA4の追加機能として、CPU2Aに代行書込アクセス待ちになっている状態を通知する機能を搭載する点にある。
実施形態1の場合、CPU2AがFPGA4の代行書込アクセスがわからない場合、再度このCPU2Aがライトアクセスを繰り返すと、FPGA4は1アクセス分のアドレス、データのラッチしかできないため、次のアドレス、データが記憶できなくなる。
そこで、本実施形態では、FPGA4内にはCPU2Aに代行書込アクセス待ちを知らせるためのアクセス待ち確認レジスタを設ける。このレジスタの内容は、CPU2Aからアクセスして確認するか、FPGA4からCPU2Aに対する割り込みを使っても良い。
本実施形態によれば、FPGA4による代行書込アクセス待ち状態をCPU2Aが認識することができ、この認識によりCPU2Aが代行書込みのアクセス待ちには連続してアクセスを発生することを禁止して的確なアクセスおよびデータ書き込みが可能となる。
(実施形態3)
本実施形態は、実施形態1または実施形態2の構成になるFPGA4内に、代行書込み時にCPU2Aから発生するアドレス、データを複数個記憶できるバッファを設けるものである。
実施形態2の場合、CPU2A内でデュアルポートメモリに対する連続アクセスが発生した場合にはFPGA4による代行書込アクセス待ち状態の認識でウエイト状態になってしまう。
そこで、本実施形態では、CPU2A側のデュアルポートメモリへのアクセス処理をより高速にするために、FPGA4内にCPU2Aによるライトアクセス時のアドレス、データ記憶にFIFO機能を設ける。FPGA4はFIFOに格納されたデータをCPU2Bや、CPU2Aのリードサイクルとの調停を取りながらデュアルポートメモリに逐次書き込んでいく。この場合には、FIFOがいっぱいになった場合のみ割り込み等を使用してCPU2Aに通知する。
したがって、本実施形態によれば、CPU2A内でデュアルポートメモリに対する連続アクセスが発生した場合に、それらを一括してFPGA4による代行書込みができ、CPU2Aの連続アクセス処理を容易にし、FPGA4は代行書込みの通知を一回ごとに行うことなく、その分処理が高速になる。
この場合も、FIFOが空でライト動作時にウェイト不要の場合は、FPGA4は代行書込アクセスは発生せず、CPUによる通常タイミングのメモリライトサイクル動作によりメモリにデータが書き込まれる。
なお、以上までの実施形態では、FPGA4とSRAM3を使用してデュアルポートメモリ機能を実現する場合を示すが、プロセッサなどで構成するアクセス権調停手段を使用してそれに代行書込み機能、代行書込み状態の通知、FIFO機能等を搭載することで同等の作用効果を得ることができる。
本発明の実施形態1を示す要部構成図。 本発明の実施形態2を示す要部構成図。 FPGAとSRAMで構成したデュアルポートメモリの例。
符号の説明
1、4 FPGA
2A、2B CPU
3 SRAM

Claims (3)

  1. ライト動作時にウェイト機能をもたないCPUによるデュアルポートメモリへのアクセスおよびデータ書込みをアクセス権調停機構で調停するデュアルポートメモリのアクセス権調停方式であって、
    前記アクセス権調停機構は、前記CPUによる前記デュアルポートメモリへのアクセスに対してウェイトが必要になった場合のみ、メモリライトサイクル時のアドレスおよび書込みデータを記憶しておく記憶手段と、前記デュアルポートメモリに対するアクセス権が得られた時点で前記記憶手段に記憶しておいたアドレスと書込みデータをデュアルポートメモリに書込む代行書込み手段とを備えたことを特徴とするデュアルポートメモリのアクセス権調停方式。
  2. 前記アクセス権調停機構は、前記代行書込みのアクセス待ちになっている状態を前記CPUに通知するためのアクセス待ち確認レジスタを備え、
    前記CPUは代行書込みのアクセス待ち状態のときには連続してアクセスを発生することを禁止することを特徴とする請求項1に記載のデュアルポートメモリのアクセス権調停方式。
  3. 前記アクセス権調停機構は、代行書込み時に前記CPUから発生するアドレスと書き込みデータを複数個記憶できるバッファと、このバッファに記憶したアドレスと書き込みデータを前記デュアルポートメモリに逐次書き込んでいくことを特徴とする請求項1または2に記載のデュアルポートメモリのアクセス権調停方式。
JP2006144795A 2006-05-25 2006-05-25 デュアルポートメモリのアクセス権調停方式 Expired - Fee Related JP5061504B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006144795A JP5061504B2 (ja) 2006-05-25 2006-05-25 デュアルポートメモリのアクセス権調停方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006144795A JP5061504B2 (ja) 2006-05-25 2006-05-25 デュアルポートメモリのアクセス権調停方式

Publications (2)

Publication Number Publication Date
JP2007316880A true JP2007316880A (ja) 2007-12-06
JP5061504B2 JP5061504B2 (ja) 2012-10-31

Family

ID=38850691

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006144795A Expired - Fee Related JP5061504B2 (ja) 2006-05-25 2006-05-25 デュアルポートメモリのアクセス権調停方式

Country Status (1)

Country Link
JP (1) JP5061504B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751980A (zh) * 2008-12-17 2010-06-23 中国科学院电子学研究所 基于存储器知识产权核的嵌入式可编程存储器

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108776644B (zh) * 2018-05-04 2022-09-27 中国电子科技集团公司第三十六研究所 一种数据高速缓存系统、方法和航天用电子设备

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0311436A (ja) * 1989-06-08 1991-01-18 Nec Corp 記憶アクセス制御装置
JPH03129452A (ja) * 1989-07-03 1991-06-03 Fuji Electric Co Ltd デュアル・ポート・メモリのアクセス制御方法
JPH06175911A (ja) * 1992-12-08 1994-06-24 Nec Eng Ltd メモリ制御方式
JPH07200384A (ja) * 1993-12-28 1995-08-04 Toshiba Corp 主記憶モジュールの制御システム
JPH09231122A (ja) * 1996-02-28 1997-09-05 Hitachi Ltd プロセッサシステム
JPH10207762A (ja) * 1997-01-16 1998-08-07 Hitachi Ltd メモリおよび電子装置
JP2000242544A (ja) * 1999-02-25 2000-09-08 Fuji Xerox Co Ltd メモリ制御装置及びダイレクトメモリアクセス制御装置
JP2000285090A (ja) * 1999-03-31 2000-10-13 Canon Aptex Inc データ処理方法及びシステム
JP2001222885A (ja) * 2000-02-03 2001-08-17 Hitachi Ltd 半導体集積回路
JP2002259203A (ja) * 2001-03-01 2002-09-13 Nec Kofu Ltd トランザクション調停装置及び方法
JP2003242022A (ja) * 2002-02-15 2003-08-29 Matsushita Electric Ind Co Ltd デュアルポートramアクセス制御回路
JP2005092630A (ja) * 2003-09-18 2005-04-07 Sony Corp メモリ制御装置及び制御方法
JP2006099214A (ja) * 2004-09-28 2006-04-13 Toshiba Tec Corp 共有メモリアクセス制御装置

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0311436A (ja) * 1989-06-08 1991-01-18 Nec Corp 記憶アクセス制御装置
JPH03129452A (ja) * 1989-07-03 1991-06-03 Fuji Electric Co Ltd デュアル・ポート・メモリのアクセス制御方法
JPH06175911A (ja) * 1992-12-08 1994-06-24 Nec Eng Ltd メモリ制御方式
JPH07200384A (ja) * 1993-12-28 1995-08-04 Toshiba Corp 主記憶モジュールの制御システム
JPH09231122A (ja) * 1996-02-28 1997-09-05 Hitachi Ltd プロセッサシステム
JPH10207762A (ja) * 1997-01-16 1998-08-07 Hitachi Ltd メモリおよび電子装置
JP2000242544A (ja) * 1999-02-25 2000-09-08 Fuji Xerox Co Ltd メモリ制御装置及びダイレクトメモリアクセス制御装置
JP2000285090A (ja) * 1999-03-31 2000-10-13 Canon Aptex Inc データ処理方法及びシステム
JP2001222885A (ja) * 2000-02-03 2001-08-17 Hitachi Ltd 半導体集積回路
JP2002259203A (ja) * 2001-03-01 2002-09-13 Nec Kofu Ltd トランザクション調停装置及び方法
JP2003242022A (ja) * 2002-02-15 2003-08-29 Matsushita Electric Ind Co Ltd デュアルポートramアクセス制御回路
JP2005092630A (ja) * 2003-09-18 2005-04-07 Sony Corp メモリ制御装置及び制御方法
JP2006099214A (ja) * 2004-09-28 2006-04-13 Toshiba Tec Corp 共有メモリアクセス制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751980A (zh) * 2008-12-17 2010-06-23 中国科学院电子学研究所 基于存储器知识产权核的嵌入式可编程存储器

Also Published As

Publication number Publication date
JP5061504B2 (ja) 2012-10-31

Similar Documents

Publication Publication Date Title
JP3579461B2 (ja) データ処理システム及びデータ処理装置
JP3579198B2 (ja) データ処理システム及びデータ処理方法
JP4677630B2 (ja) 内部キャッシュおよび/またはメモリアクセス予測を持つメモリハブ
JP4408263B2 (ja) データ転送システムおよびデータ転送方法
JP2007525766A (ja) マルチポートメモリシステムにおける衝突検出
JP4891405B2 (ja) バリア操作の条件付き伝搬のための方法および装置
MX2012005183A (es) Linea de espera de comandos para componente periferico.
US20100058001A1 (en) Distributed shared memory multiprocessor and data processing method
US6360307B1 (en) Circuit architecture and method of writing data to a memory
JP4642531B2 (ja) データ要求のアービトレーション
JP5061504B2 (ja) デュアルポートメモリのアクセス権調停方式
KR101022472B1 (ko) 효율적으로 버스를 사용하는 방법
US5627968A (en) Data transfer apparatus which allows data to be transferred between data devices without accessing a shared memory
JP2001229072A (ja) マイクロコントローラのデュアルポートram動作用の衝突検出
JP4193746B2 (ja) マトリックス状バス接続システム
JP2004127305A (ja) メモリ制御装置
JPH10307787A (ja) バッファメモリ装置
JP2006268734A (ja) メモリアクセス制御装置
JP2007241912A (ja) 信号処理回路
JP2008009763A (ja) 情報処理装置及びバス制御方法
JP2006164099A (ja) メモリ制御装置
JP3537786B2 (ja) データ処理システム
EP1380960B1 (en) Memory access from different clock domains
JP2006092077A (ja) バスシステム
JP2007328647A (ja) Cpu間のデータ転送方式

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110920

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111114

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20111114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120511

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 5061504

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150817

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees