JPH096735A - 共有メモリへのアクセス方法 - Google Patents

共有メモリへのアクセス方法

Info

Publication number
JPH096735A
JPH096735A JP15019895A JP15019895A JPH096735A JP H096735 A JPH096735 A JP H096735A JP 15019895 A JP15019895 A JP 15019895A JP 15019895 A JP15019895 A JP 15019895A JP H096735 A JPH096735 A JP H096735A
Authority
JP
Japan
Prior art keywords
cpu
access
shared memory
transferred
transfer
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
JP15019895A
Other languages
English (en)
Other versions
JP2752919B2 (ja
Inventor
Kouji Sakakoshi
孝次 坂腰
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.)
NEC Mobile Communications Ltd
Original Assignee
NEC Mobile Communications 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 NEC Mobile Communications Ltd filed Critical NEC Mobile Communications Ltd
Priority to JP15019895A priority Critical patent/JP2752919B2/ja
Publication of JPH096735A publication Critical patent/JPH096735A/ja
Application granted granted Critical
Publication of JP2752919B2 publication Critical patent/JP2752919B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】CPUから共有メモリへの転送データをブロッ
ク化し1ブロック転送後に他CPUからのアクセスがあ
った時は他CPUへ一時的にアクセス権を譲ることによ
り、全体的にCPUの処理効率を向上させる。 【構成】CPU1から共通メモリ3にアクセスし、デー
タを転送する場合CPU1の転送データを複数のブロッ
クに分割し転送する。この間にCPU2からアクセス要
求があるとアクセス権が得られないのでCPU2はアク
セス待ちとなるが、アクセス要求フラグを所定のエリア
に立てて残す。CPU1の最初のブロック転送が完了す
ると、このアクセス要求フラグの有無を確認し、これが
有れば一定時間アクセス権をCPU2に譲り、CPU2
はデータ転送を行う。一定時間経過後CPU1は次のブ
ロック転送を続けて行く。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、メモリアクセス方法に
関し、特にマルチプロセッサシステムにおいて複数CP
Uよりアクセス可能の共有メモリに対するアクセス方法
に関する。
【0002】
【従来の技術】従来、この種のメモリアクセス方法は、
複数のCPUを有するマルチプロセッサシステムにおい
て、これらのCPUが連携動作を行うための通信エリア
として設けられた共有メモリへ、複数CPUが同時にア
クセスした際のバスの衝突を防ぐことを目的としたもの
が多く、一例として特開昭63−20653号公報に記
載されたものがある。
【0003】図4は、この公報に記載されたメモリアク
セス方法を説明するブロック図である。2つのCPU
6,7によって構成されるマルチプロセッサシステム
で、これらCPU1,2は共有メモリ8を共有してお
り、相互に接続された第1のセマフォ9及び第2のセマ
フォ10を、共有メモリ8への排他的アクセスを実現す
るためのフラグとして用いている。
【0004】第1のセマフォ9はCPU6からの書き込
み及びCPU7からの読み出し専用領域であるのに対
し、第2のセマフォ10はCPU7からの書き込み及び
CPU6からの読み出し専用領域である。CPU6が共
有メモリ8にアクセスする場合には、まず第1のセマフ
ォ9のフラグを立てた後に、第2のセマフォ10を読み
込む。この第2のセマフォ10は、CPU6が共有メモ
リ8にアクセスする場合に立てられるフラグ領域であ
り、第2のセマフォ10にフラグが立っていれば、CP
U7が共有メモリ8をアクセスしていることになるた
め、CPU6は共有メモリ8をアクセスせず、第2のセ
マフォ10のフラグが立ち下がるのを待つ。
【0005】第2のセマフォ10にフラグが立っていな
ければ、CPU6が共有メモリ8をアクセスしていない
ことを確認できるので、CPU6は共有メモリ8をアク
セスする。CPU7が共有メモリ8をアクセスする場合
は上述したCPU6がアクセスする場合と同じ手順で行
われる。
【0006】
【発明が解決しようとする課題】上述したように従来の
アクセス方法では、アクセスの時のバス衝突は防げる
が、1つのCPUが共有メモリとの間で大量のデータ転
送を連続して行うと、その間他のCPUは共有メモリに
アクセスできずに、アクセス可能になるまで待っている
時間が長くなるため、全体の処理効率が悪化するという
問題がある。
【0007】
【課題を解決するための手段】本発明のアクセス方法
は、マルチプロセッサシステムの複数のCPUの中の1
CPUから共有メモリにデータを転送する際のアクセス
方式において、前記CPUはデータ転送に先立って先ず
自CPUのアクセス要求フラグを立て次にアクセス権を
獲得しに行き、獲得できなかった時は前記アクセス要求
フラグを立てたままとし、獲得できた時は転送データを
所定の長さのブロックに分割してその先頭のブロックを
先ず転送し、この転送完了後に他CPUのアクセス要求
フラグの有無を確認し、有の時は前記アクセス権を一定
時間他CPUに譲り、また無の時は前記転送データの次
のブロックを転送する。
【0008】
【実施例】次に、本発明の一実施例について図面を参照
して説明する。図1は本実施例によるアクセス方法を実
現するシステムの構成を示したブロック図である。図1
において、アクセス要求フラグ6はCPU1,2が共有
メモリ3をアクセスする際、他方のCPUが共有メモリ
3にアクセス中であるために共有メモリ3へのアクセス
権が獲得できなかった場合に、自CPUが共有メモリ3
へのアクセス権獲得待ちをしていることを示すためのフ
ラグである、共通メモリ3には各CPU毎に固有のこの
エリアが割り当てられている。
【0009】セマフォ7は、共有メモリ3への排他的ア
クセスを実現するための手順で共有メモリ3へのアクセ
ス権を持つCPUを決定するフラグエリアであり、例え
ば前述の図4に示した第1のセマフォ4及び第2のセマ
フォ5に相当する。
【0010】図2はCPU1,2が共有メモリ3にアク
セスし、大量のデータ転送を行う際の動作を表すフロー
チャートである。CPU1,2は大量のデータ転送を共
有メモリ3に対して行う場合、転送データを所定の長さ
のブロックに分割して転送する。まず転送を開始するに
あたっては、アクセス要求フラグ6内に割り当てられた
自CPU用のエリアをONにした後(A1)、共有メモ
リ3への排他的アクセスを実現するための手順により、
共有メモリ3へのアクセス権獲得処理を行う(A2)。
このとき他CPUが共有メモリ3へアクセス中であるた
めにアクセス権を獲得できなかった場合はアクセス要求
フラグ6内の自CPU用エリアをONにしたままアクセ
ス権獲得処理を繰り返す(A3)。
【0011】共有メモリ3へのアクセス権が獲得できた
場合は、アクセス要求フラグ6内の自CPU用エリアを
OFFにして転送を開始する(A4)(A5)。1ブロ
ックの転送が完了すると(A6)、アクセス要求フラグ
6内の他CPU用エリアを読み込み(A8)、ONであ
れば他CPUが共有メモリ3へアクセスしようとしてい
ることを察知し、共有メモリ3へのアクセス権を解放し
て一定時間、例えば1ブロックの転送時間より若干長目
の時間の間転送を中断する(A9)。この間に他CPU
は共有メモリ3にアクセスすることが可能となる。
【0012】また1ブロックの転送が完了した時点で、
アクセス要求フラグ6内の他CPU用エリアが立ってい
なければ続けて次のブロックを転送する。この動作を全
ブロック転送完了するまで繰り返す。
【0013】図3は上述の動作を更に分り易く説明する
流れ図である。まずCPU1が共有メモリ3へデータを
転送中に、CPU2がアクセス要求フラグ6内CPU2
用エリアをONにして共有メモリ3にアクセスしようと
している。このときCPU1が共有メモリ3にアクセス
中であるため、CPU2は共有メモリへのアクセス権獲
得待ちとなる。
【0014】CPU1は1ブロックの転送が完了すると
アクセス要求フラグ6内のCPU2用エリアを読み込ん
で、フラグが立っているためCPU2が共有メモリ3へ
のアクセス権獲得待ちしていることを察知し、アクセス
権を解放して一定時間の間転送を中断する。CPU2は
その間に共有メモリ3へのアクセス権を獲得し、アクセ
ス要求フラグ6内CPU2用エリアをクリアしてアクセ
スを行い、データ転送完了後アクセス権を解放する。
【0015】CPU1は、一定時間後再び共有メモリ3
へのアクセス権を獲得し、次のブロックの転送を行う。
この1ブロックが転送完了した時点ではアクセス要求フ
ラグ6内CPU2用エリアが立っていないため、続けて
次のブロックを転送する。
【0016】
【発明の効果】以上説明したように、本発明による共有
メモリへのアクセス方法は、大量のデータを所定の長さ
のブロックに分割して転送し、1ブロックの転送後に他
のCPUが共有メモリへアクセスしようとしている場合
は転送を中断し、他のCPUに共有メモリへのアクセス
権を譲る構成としたため、他のCPUがアクセス権獲得
待ちをする時間が短くなり、全体的に処理効率が向上す
るという効果がある。
【図面の簡単な説明】
【図1】本発明による一実施例の構成を示すブロック図
である。
【図2】図1の動作を示すフローチャートである。
【図3】図1の動作を示す流れ図である。
【図4】従来技術による構成を示すブロック図である。
【符号の説明】
1 CPU 2 CPU 3 共有メモリ 4 アクセス要求フラグ 5 セマフォ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 マルチプロセッサシステムの複数のCP
    Uの中の1CPUから共有メモリにデータを転送する際
    のアクセス方式において、前記CPUはデータ転送に先
    立って先ず自CPUのアクセス要求フラグを立て次にア
    クセス権を獲得しに行き、獲得できなかった時は前記ア
    クセス要求フラグを立てたままとし、獲得できた時は転
    送データを所定の長さのブロックに分割してその先頭の
    ブロックを先ず転送し、この転送完了後に他CPUのア
    クセス要求フラグの有無を確認し、有の時は前記アクセ
    ス権を一定時間他CPUに譲り、また無の時は前記転送
    データの次のブロックを転送することを特徴とする共有
    メモリへのアクセス方法。
JP15019895A 1995-06-16 1995-06-16 共有メモリへのアクセス方法 Expired - Fee Related JP2752919B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15019895A JP2752919B2 (ja) 1995-06-16 1995-06-16 共有メモリへのアクセス方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15019895A JP2752919B2 (ja) 1995-06-16 1995-06-16 共有メモリへのアクセス方法

Publications (2)

Publication Number Publication Date
JPH096735A true JPH096735A (ja) 1997-01-10
JP2752919B2 JP2752919B2 (ja) 1998-05-18

Family

ID=15491666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15019895A Expired - Fee Related JP2752919B2 (ja) 1995-06-16 1995-06-16 共有メモリへのアクセス方法

Country Status (1)

Country Link
JP (1) JP2752919B2 (ja)

Also Published As

Publication number Publication date
JP2752919B2 (ja) 1998-05-18

Similar Documents

Publication Publication Date Title
JPS6063609A (ja) 数値制御装置
JP2591502B2 (ja) 情報処理システムおよびそのバス調停方式
JP2752919B2 (ja) 共有メモリへのアクセス方法
JPH0343804A (ja) シーケンス制御装置
JPS59218532A (ja) バス接続方式
JPH0962640A (ja) 共有メモリのアクセス制御方法
JP2687716B2 (ja) 情報処理装置
JP2962767B2 (ja) Dma装置のメモリアクセス方式
JPS6240565A (ja) メモリ制御方式
JPS63286949A (ja) バス制御方式
JP2961542B2 (ja) データ処理システム
JP2972557B2 (ja) データ転送制御装置および制御方法
JP2781999B2 (ja) マルチプロセツサシステムにおける共通データチヤネル装置起動方式
JPH06161951A (ja) バス制御方式
JPH07210498A (ja) バス調停回路
JPS62243055A (ja) デ−タ転送方式
JPS62203257A (ja) 情報処理装置
JPH0651910A (ja) 二重化バス装置
JPH0573506A (ja) マルチプロセツサシステム
JPH104420A (ja) データ転送方法
JPS5856057A (ja) 割込信号発生装置
JPH04148264A (ja) 情報処理装置
JPS635456A (ja) マイクロプロセツサシステム
JPS61138359A (ja) 共有メモリ制御方式
JPH02278362A (ja) データ転送制御方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980120

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20080227

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090227

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees