JPS60263246A - メモリ・システム - Google Patents
メモリ・システムInfo
- Publication number
- JPS60263246A JPS60263246A JP11817784A JP11817784A JPS60263246A JP S60263246 A JPS60263246 A JP S60263246A JP 11817784 A JP11817784 A JP 11817784A JP 11817784 A JP11817784 A JP 11817784A JP S60263246 A JPS60263246 A JP S60263246A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- address
- control circuit
- cpu
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
14九1
この発明は、データ形式の異なる複数のコンピュータで
同一のメモリが共有されるメモリ・システムに関する。
同一のメモリが共有されるメモリ・システムに関する。
髪敦皮4
従来、マイクロコンピュータやパーソナルコンピュータ
のメモリ・システムとして、データ形式の異なる複数の
マイクロコンピュータ(CPU)で同一のメモリが共有
されるメモリ・システムが使用される場合がある。
のメモリ・システムとして、データ形式の異なる複数の
マイクロコンピュータ(CPU)で同一のメモリが共有
されるメモリ・システムが使用される場合がある。
この場合、例えば2個のCPUで1個のメモリを共有し
たとき、一方のCPUで書込んだデータを他方のCPU
で読出してそのまま使用することはできない。
たとき、一方のCPUで書込んだデータを他方のCPU
で読出してそのまま使用することはできない。
そこで、従来は各CPUからメモリに対する又はメモリ
からCPUに対するデータの変換をブロクラム処理で行
ない、例えばメモリからレジスタへ転送された時にレジ
スタ内でデータの入換えを行なうようにしている。
からCPUに対するデータの変換をブロクラム処理で行
ない、例えばメモリからレジスタへ転送された時にレジ
スタ内でデータの入換えを行なうようにしている。
しかしながら、このようにしてデータ変換を行なうので
は、処理時間がかかり高速処理ができないと共に、プロ
グラムが複雑になるという不都合がある。
は、処理時間がかかり高速処理ができないと共に、プロ
グラムが複雑になるという不都合がある。
■一度
この発明は上記の点に鑑みてなされたものであり、上述
のようなメモリ・システムを使用する場合の処理の高速
化を図ると共に、ブロクラムの簡素化を図ることを目的
とする。
のようなメモリ・システムを使用する場合の処理の高速
化を図ると共に、ブロクラムの簡素化を図ることを目的
とする。
豊−戒
以下、この発明の構成を一実施例に基づいて説明する。
第1図は、この発明を実施したメモリ・システムの一例
を示すブロック図である。
を示すブロック図である。
このメモリ・システムにおいては、複数(2個)のcp
trl及びCPU2によって1個のメモリ3を共有して
いる。
trl及びCPU2によって1個のメモリ3を共有して
いる。
そして、これ等のCPUI及びCPU2のデータ形式は
、第2図に示すように、1バイトデータについては同じ
であるが、2バイトデータについては上位データと下位
データが逆である。
、第2図に示すように、1バイトデータについては同じ
であるが、2バイトデータについては上位データと下位
データが逆である。
また、これ等のCPU1とCPU2とは、直接又はイン
バータ4を介して入力されるCPU選択信号S cpu
によっていずれか一方が選択される。
バータ4を介して入力されるCPU選択信号S cpu
によっていずれか一方が選択される。
なお、ここでは、CPU選択信号S cpuが「0」の
ときにCPUIが選択され、CPU選択信号S cpu
が「1」のときにCPU2が選択されるものとする。
ときにCPUIが選択され、CPU選択信号S cpu
が「1」のときにCPU2が選択されるものとする。
一方、メモリ3は、各番地(アドレスフの内の奇数番地
からなる奇数番地ブロック(以下[メモリMOJと称す
)と、偶数番地からなる偶数番地ブロック(以下[メモ
リMIJ と称す)との複数(2個)のブロックに分割
している。
からなる奇数番地ブロック(以下[メモリMOJと称す
)と、偶数番地からなる偶数番地ブロック(以下[メモ
リMIJ と称す)との複数(2個)のブロックに分割
している。
データ書込み/読出し制御回路5は、メモリ乙の各メモ
リMO,Mlに対するデータの書込みを制御するデータ
書込み制御手段を兼ねた回路であり、メモリ制御回路6
と、アドレス制御回路7と、アドレスレジスタ8と、デ
ータ制御回路9と、データレジスタ10と等からなる。
リMO,Mlに対するデータの書込みを制御するデータ
書込み制御手段を兼ねた回路であり、メモリ制御回路6
と、アドレス制御回路7と、アドレスレジスタ8と、デ
ータ制御回路9と、データレジスタ10と等からなる。
このデータ書込み/続出し制御回路5は、CPU選択信
号S cpuと、CPUI、2からの各アドレスデータ
AnであるアドレスデータAOCと、同じくアドレスデ
ータA1〜A16であるアドレスデータAOAと、読出
し及び書込みのいずれかを示す読出し/書込みデータR
/Wとを入力すると共に、cpul、2との間でデータ
DOOの送受をする。
号S cpuと、CPUI、2からの各アドレスデータ
AnであるアドレスデータAOCと、同じくアドレスデ
ータA1〜A16であるアドレスデータAOAと、読出
し及び書込みのいずれかを示す読出し/書込みデータR
/Wとを入力すると共に、cpul、2との間でデータ
DOOの送受をする。
メモリ制御回路6は、CPU選択信号5cpu 。
読出し/書込みデータR/W及びアドレスデータAOC
(Ao )とに基づいて、データ形式の変更の要否や書
込みデータが第1バイト/第2バイトのいずれか及び前
回の書込みアドレスが奇数/偶数のいずれかの判定等を
行なう。
(Ao )とに基づいて、データ形式の変更の要否や書
込みデータが第1バイト/第2バイトのいずれか及び前
回の書込みアドレスが奇数/偶数のいずれかの判定等を
行なう。
そして、メモリ制御回路6は、これ等の結果に応じてメ
モリ乙のメモリMO,Mlを活性化状態にするメモリ選
択信号MSO,MSIを出力すると共に、アドレス制御
回路7及びデータ制御回路9に対して判定結果に応じた
信号を出力する。
モリ乙のメモリMO,Mlを活性化状態にするメモリ選
択信号MSO,MSIを出力すると共に、アドレス制御
回路7及びデータ制御回路9に対して判定結果に応じた
信号を出力する。
なお、このメモリ制御回路6におけるデータ形式の変更
の要否の判定は、CPU選択信号S epuに基づいて
いずれのCPUが選択されているか、及び読出し/書込
みデータR/Wに基づいてデータの読出し/書込みのい
ずれであるかを判定することによって行なう。
の要否の判定は、CPU選択信号S epuに基づいて
いずれのCPUが選択されているか、及び読出し/書込
みデータR/Wに基づいてデータの読出し/書込みのい
ずれであるかを判定することによって行なう。
また、第1バイトか第2バイトかの判定は、読出し/書
込みデータR/Wに基づいて、データライト(書込み)
の立上りでリセットされるフリップフロップ回路等によ
って行なう。
込みデータR/Wに基づいて、データライト(書込み)
の立上りでリセットされるフリップフロップ回路等によ
って行なう。
さらに、前回の書込みアドレスが奇数アドレスか偶数ア
ドレスかの判定は、CPU1.CPU2からのアドレス
データA O” A I6の内の最下位ビットA、が[
0」であれば偶数、す」であれば奇数であるので、その
最下位ビットAoであるアドレスデータAOCに基づい
て行なう。
ドレスかの判定は、CPU1.CPU2からのアドレス
データA O” A I6の内の最下位ビットA、が[
0」であれば偶数、す」であれば奇数であるので、その
最下位ビットAoであるアドレスデータAOCに基づい
て行なう。
アドレス制御回路7は、メモリ制御回路6からの信号に
応じてCPU1,2からのアドレスデータAOA及びア
ドレスレジスタ8に記憶したアドレスデータARを、メ
モリ乙の各メモリMO,M■にアドレスデータAll、
A12として出力する。
応じてCPU1,2からのアドレスデータAOA及びア
ドレスレジスタ8に記憶したアドレスデータARを、メ
モリ乙の各メモリMO,M■にアドレスデータAll、
A12として出力する。
アドレスレジスタ8には、書込み時のアドレスデータA
OAが記憶される。
OAが記憶される。
データ制御回路Sは、メモリ制御回路6からの信号に応
じてCPUI、2からの書込みデータD00及びデータ
レジスタ10に記憶しているデータDRを、メモリ乙の
各メモリMO,MlにデータDll、DI2として出力
すると共に、メモリ乙の各メモリMO,Mlからの各デ
ータD11゜D12をデ゛−夕DOOとしてCPUI、
2に送出する。
じてCPUI、2からの書込みデータD00及びデータ
レジスタ10に記憶しているデータDRを、メモリ乙の
各メモリMO,MlにデータDll、DI2として出力
すると共に、メモリ乙の各メモリMO,Mlからの各デ
ータD11゜D12をデ゛−夕DOOとしてCPUI、
2に送出する。
データレジスタ10には、書込み時のデータD00が記
憶される。
憶される。
次に、このように構成したこの実施例の作用について第
3図をも参照して説明する。
3図をも参照して説明する。
まず、cpu2のデータ形式を基準として、CPU1が
メモリ3に書込んだデータをCPU2が使用するものと
し、CPU2がメモリ3に書込んだデータはCPUIが
使用しないものとする。
メモリ3に書込んだデータをCPU2が使用するものと
し、CPU2がメモリ3に書込んだデータはCPUIが
使用しないものとする。
この場合には、CPU2によってメモリ乙にデータを書
込むときあるいはCPU2によってメモリ3からデータ
を読出すときには、データ形式を変更する必要がない。
込むときあるいはCPU2によってメモリ3からデータ
を読出すときには、データ形式を変更する必要がない。
また、CPUIによってメモリ6からデータを読出すと
きにも、上述のようにCPUIは自己が書込んだデータ
のみを使用するのでデータ形式を変更する必要がない。
きにも、上述のようにCPUIは自己が書込んだデータ
のみを使用するのでデータ形式を変更する必要がない。
そこで、データ書込み/続出し制御回路5のメモリ制御
回路6は、CPU選択信号S cpuを判別して、CP
U選択信号S cpuが[0」でないとき、すなわちC
PU2が選択されているときには、メモリ制御回路7及
びデータ制御回路Sに対してデータ形式の変更を行なわ
ないことを示す信号を出力する。
回路6は、CPU選択信号S cpuを判別して、CP
U選択信号S cpuが[0」でないとき、すなわちC
PU2が選択されているときには、メモリ制御回路7及
びデータ制御回路Sに対してデータ形式の変更を行なわ
ないことを示す信号を出力する。
なお、この場合アドレス制御回路7及びデータ制御回路
S自体がCPU選択信号S cpuに基づいて判定して
もよい。
S自体がCPU選択信号S cpuに基づいて判定して
もよい。
それによって、このときには、アドレス制御回路7は、
CPU2から転送されたアドレスデータAOA (A□
〜A、5)を、そのままアドレスデータAllとしてメ
モリMOに出力する[A11=AOAIと共に、アドレ
スデータA12としてメモリM1に出力する[A 12
=AOA]。
CPU2から転送されたアドレスデータAOA (A□
〜A、5)を、そのままアドレスデータAllとしてメ
モリMOに出力する[A11=AOAIと共に、アドレ
スデータA12としてメモリM1に出力する[A 12
=AOA]。
また、このとき、データ書込みであれば、データ制御回
路Sは、cpu2がら転送されたデータD00をデ゛−
夕DllとしてメモリMOに゛送出し、またデータDO
OをデータD12としてメモリMlに送出する。
路Sは、cpu2がら転送されたデータD00をデ゛−
夕DllとしてメモリMOに゛送出し、またデータDO
OをデータD12としてメモリMlに送出する。
一方、メモリ制御回路6は、CPU’2がら転送された
アドレスデータAOC(Ao )を判別して。
アドレスデータAOC(Ao )を判別して。
AOC= rlJ (奇数番地)であれば選択信号MS
Oを出力してメモリMOを活性化し、またAOC=rl
Jでなければ選択信号Ms1を出力してメモリM1を活
性化する。
Oを出力してメモリMOを活性化し、またAOC=rl
Jでなければ選択信号Ms1を出力してメモリM1を活
性化する。
それによって、データ読出し時には、メモリ乙の活性化
されたメモリMO又はメモリM1のアドレスデータAO
Aで示されるアドレスに格納されたデータがデータDl
l又はデータD12としてデータ制御回路9に送出され
、このデータがデータD00としてCPU2に転送され
る。
されたメモリMO又はメモリM1のアドレスデータAO
Aで示されるアドレスに格納されたデータがデータDl
l又はデータD12としてデータ制御回路9に送出され
、このデータがデータD00としてCPU2に転送され
る。
また、データ書込み時には、メモリ3の活性化されたメ
モリMO又はメモリM1のアドレスデータAOAで示さ
れるアドレスにcpu2がら転送されたデータが書込ま
れる。
モリMO又はメモリM1のアドレスデータAOAで示さ
れるアドレスにcpu2がら転送されたデータが書込ま
れる。
これに対して、CPU選択信号S cpuが[0」のと
き、すなわちcrtrlが選択されているときには、メ
モリ制御回路6は読出し/書込みデータR/Wを判別す
る。
き、すなわちcrtrlが選択されているときには、メ
モリ制御回路6は読出し/書込みデータR/Wを判別す
る。
このとき、読出し/書込みデータR/WがrWJでない
とき、すなわちCPU1によるメモリ3からのデータ読
出しサイクルのときには、前述したと同様にメモリ制御
回路7及びデータ制御回路9に対してデータ形式の変更
を行なわないことを示す信号を出力する。
とき、すなわちCPU1によるメモリ3からのデータ読
出しサイクルのときには、前述したと同様にメモリ制御
回路7及びデータ制御回路9に対してデータ形式の変更
を行なわないことを示す信号を出力する。
それによって、CPU1からのアドレスデータAOAが
アドレスデータAll及びアドレスデータA12として
メモリ3に出力され[A11=AOA、A12=AOA
] 、7ドL/XデータAOCに応じてメモ°すMO又
はメモリM1が活性化されて、アドレスデータAOAに
対応するアドレスのデータがCPU1に転送される。
アドレスデータAll及びアドレスデータA12として
メモリ3に出力され[A11=AOA、A12=AOA
] 、7ドL/XデータAOCに応じてメモ°すMO又
はメモリM1が活性化されて、アドレスデータAOAに
対応するアドレスのデータがCPU1に転送される。
これに対して、CPU1によってメモリ3番巳データを
書込むときには、前述したようにCPUlとCPU2と
では、1バイトテータについては同じであるが、2バイ
トテータについてはデータ形式が異なる(第2図参照)
ため、2バイトデータについてはデータ形式を一致させ
る必要がある。
書込むときには、前述したようにCPUlとCPU2と
では、1バイトテータについては同じであるが、2バイ
トテータについてはデータ形式が異なる(第2図参照)
ため、2バイトデータについてはデータ形式を一致させ
る必要がある。
そこで、CPU選択信号S cpuがrOJで、読出し
/書込みデータR/WがrWJのとき、すなわちCPU
1によってメモリ乙にデータを書込むときには、メモリ
制御回路6は第1バイトか否かを示すフラグRCWが1
0」か否かをチェックして書込みデータが第1バイトか
否かを判別する。
/書込みデータR/WがrWJのとき、すなわちCPU
1によってメモリ乙にデータを書込むときには、メモリ
制御回路6は第1バイトか否かを示すフラグRCWが1
0」か否かをチェックして書込みデータが第1バイトか
否かを判別する。
このとき、フラグRWCが「0」、すなわち書込みデー
タが第1バイトのデータであれは、データ形式の変更を
行なわない旨を示す信号をアドレス制御回路7及びデー
タ制御回路Sに出力する。
タが第1バイトのデータであれは、データ形式の変更を
行なわない旨を示す信号をアドレス制御回路7及びデー
タ制御回路Sに出力する。
それによって、アドレス制御回路7は、CPU1から転
送されたアドレスデータAOAをそのま! まアドレス
データAllとしてメモ“ノM O4:出力する[A
11 =AOA]と共に、アドレスデータA12として
メモリM1に出力する[Al2=AOAコ 。
送されたアドレスデータAOAをそのま! まアドレス
データAllとしてメモ“ノM O4:出力する[A
11 =AOA]と共に、アドレスデータA12として
メモリM1に出力する[Al2=AOAコ 。
そして、アドレス制御回路7は、この時のアドレスデー
タAOAをアドレスレジスタ8に記憶するアドレスデー
タARとして格納する[AOA=AR] 。
タAOAをアドレスレジスタ8に記憶するアドレスデー
タARとして格納する[AOA=AR] 。
なお、このアドレスデータAOAの記憶は、実際にはデ
ータ書込みタイミングで行なう。
ータ書込みタイミングで行なう。
そして、メモリ制御回路6は、フラグRWCを「1」に
セットした後、CPUIから転送されたアドレスデータ
AOC(Ao )を判別して、AOC= rlJであれ
ば選択信号MSOを出力してメモリMOを活性化し、ま
たAOC= rlJでなければ選択信号MSIを出力し
てメモリM1を活性化する。
セットした後、CPUIから転送されたアドレスデータ
AOC(Ao )を判別して、AOC= rlJであれ
ば選択信号MSOを出力してメモリMOを活性化し、ま
たAOC= rlJでなければ選択信号MSIを出力し
てメモリM1を活性化する。
一方、データ制御回路Sは、CPUIからのデータDO
OをデータDll及びデータD12としてメモリMO及
びメモリM1に送出する。
OをデータDll及びデータD12としてメモリMO及
びメモリM1に送出する。
それと共に、データ制御回路9は、このときのデータD
Oをデータレジスタ10に記憶するデータDRとして格
納する。
Oをデータレジスタ10に記憶するデータDRとして格
納する。
それによって、メモリ乙の活性化されたメモリMO又は
メモリM1のアドレスデータAOAで指定されたアドレ
スに書込みデータの第1バイトのデータが書込まれる。
メモリM1のアドレスデータAOAで指定されたアドレ
スに書込みデータの第1バイトのデータが書込まれる。
このようにして、書込みデータの第1バイトのデータが
メモリ乙の指定のアドレスに書込まれると共に、その時
のアドレスデータ及び書込みデータがアドレスレジスタ
8及びデータレジスタ10に各々保持される。
メモリ乙の指定のアドレスに書込まれると共に、その時
のアドレスデータ及び書込みデータがアドレスレジスタ
8及びデータレジスタ10に各々保持される。
これに対して、フラグRWCが「0」でないとき、すな
わちCPUIからの書込みデータが第2バイトのデータ
であるときには、メモリ制御回路6は、CPU1からの
アドレスデータAOCがrlJか否かを判別し、この判
別結果に対応した信号をアドレス制御回路7及びデータ
制御回路9に夫々出力する。
わちCPUIからの書込みデータが第2バイトのデータ
であるときには、メモリ制御回路6は、CPU1からの
アドレスデータAOCがrlJか否かを判別し、この判
別結果に対応した信号をアドレス制御回路7及びデータ
制御回路9に夫々出力する。
このとき、アドレスデータAOCが「l」 (奇数番地
)であれば、すなわち前回(第1バイト)の書込みアド
レスが偶数番地であれば、アドレス制御回路7はCPU
Iからの今回のアドレスデータAOAをアドレスデータ
AllとしてメモリM0に出力する[A i t =A
R]と共に、アドレスレジスタ8に記憶している前回の
アドレスデータARをアドレスデータA12としてメモ
リMlに出力する[A 12 =AOA]。
)であれば、すなわち前回(第1バイト)の書込みアド
レスが偶数番地であれば、アドレス制御回路7はCPU
Iからの今回のアドレスデータAOAをアドレスデータ
AllとしてメモリM0に出力する[A i t =A
R]と共に、アドレスレジスタ8に記憶している前回の
アドレスデータARをアドレスデータA12としてメモ
リMlに出力する[A 12 =AOA]。
そして、メモリ制御回路6はメモリ選択信号MSO及び
MSIを出力してメモリMO及びメモリM1の両者を活
性化する。
MSIを出力してメモリMO及びメモリM1の両者を活
性化する。
一方、データ制御回路9は、データレジスタ10に記憶
している前回の書込みデータDRをデータDILとして
メモリMOに出力すると共に、CPUIからの今回のデ
ータDOOをデータD12としてメモリM1に出力する
。
している前回の書込みデータDRをデータDILとして
メモリMOに出力すると共に、CPUIからの今回のデ
ータDOOをデータD12としてメモリM1に出力する
。
また、アドレスデータAOCが[1」でなければ、すな
わち前回(第1バイト)の書込みアドレスが奇数番地で
あれば、アドレス制御回路7はアドレスレジスタ8に記
憶している前回のアドレスデータARをアドレスデータ
A11としてメモリMOに出力する[A 11 =AR
]と共に、CPU1からの今回のアドレスレジスタAO
AをアドレスデータA12としてメモリM1に出力する
[A12 =AOAコ 。
わち前回(第1バイト)の書込みアドレスが奇数番地で
あれば、アドレス制御回路7はアドレスレジスタ8に記
憶している前回のアドレスデータARをアドレスデータ
A11としてメモリMOに出力する[A 11 =AR
]と共に、CPU1からの今回のアドレスレジスタAO
AをアドレスデータA12としてメモリM1に出力する
[A12 =AOAコ 。
このときも、メモリ制御回路6はメモリ選択信号MSO
及びMSIを出力してメモリMO及びメモリM1の両者
を活性化する。
及びMSIを出力してメモリMO及びメモリM1の両者
を活性化する。
一方、データ制御回路9は、cpulからの今回のデー
タDOOをデータDllとしてメモリMOに出力すると
共に、データレジスタ10に記憶している前回の書込み
データDRをデータD12としてメモリM1に出力する
。
タDOOをデータDllとしてメモリMOに出力すると
共に、データレジスタ10に記憶している前回の書込み
データDRをデータD12としてメモリM1に出力する
。
なお、メモリ制御回路6は第2バイトのデータ書込みに
よってフラグRWCをTQJにする。
よってフラグRWCをTQJにする。
このCPUI、2によるデータ書込み時の動作について
具体的に説明する。
具体的に説明する。
ます、CPU2が上位データDUをメモリ乙の1000
番地に、下位データDLをメモリ乙の1ooi番地に書
込むとする。
番地に、下位データDLをメモリ乙の1ooi番地に書
込むとする。
このとき、CPU2は、アドレスデータAo〜! A1
5として1000番地を示すデータ(以下[アドレス[
1000]の如く表わす)を出力すると共に、上位デー
タDUを出力する。
5として1000番地を示すデータ(以下[アドレス[
1000]の如く表わす)を出力すると共に、上位デー
タDUを出力する。
そのアドレスデータAO−A15の内の最下位ビット(
LSB)であるアドレスデータAOはアドレスデータA
OCとして、メモリ制御回路6に入力されると共に、ア
ドレスデータA1〜AI5はアドレスデータAOAとし
てアドレス制御回路7に入力される。
LSB)であるアドレスデータAOはアドレスデータA
OCとして、メモリ制御回路6に入力されると共に、ア
ドレスデータA1〜AI5はアドレスデータAOAとし
てアドレス制御回路7に入力される。
このとき、CPU選択信号S cpuは[1」である(
CPU2選択)ので、アドレス制御回路7はアドレスデ
ータAll、A12としてアドレス[1000]を出力
するしA11=100’−0,AI 2=1000コ
6 一方、メモリ制御回路6は、アドレスデータAOCが偶
数を示している(アドレスデータA。−0)ので、メモ
リ選択信号MSIを出力してメモリM1を活性化する。
CPU2選択)ので、アドレス制御回路7はアドレスデ
ータAll、A12としてアドレス[1000]を出力
するしA11=100’−0,AI 2=1000コ
6 一方、メモリ制御回路6は、アドレスデータAOCが偶
数を示している(アドレスデータA。−0)ので、メモ
リ選択信号MSIを出力してメモリM1を活性化する。
それによって、データ制御回路9からデータD11、D
12として出力される上位データDUが。
12として出力される上位データDUが。
メモリMlのアドレス[10001に書込まれる。
次に、下位データDLを1001番地に書込むときには
、アドレスデータA O−A 15としてアドレス[1
001]が出力され、メモリMOが活性化されてメモリ
MOのアドレス[1001]に下位データDLが書込ま
れる。
、アドレスデータA O−A 15としてアドレス[1
001]が出力され、メモリMOが活性化されてメモリ
MOのアドレス[1001]に下位データDLが書込ま
れる。
これに対して、CPUIによってデータ書込みを行なう
ときには、下位データDLの書込みアドレスとして10
00番地が、上位データDLIの書込みアドレスとして
1001番地が指定される。
ときには、下位データDLの書込みアドレスとして10
00番地が、上位データDLIの書込みアドレスとして
1001番地が指定される。
つまり、CPU1は、アドレスデータA。〜A+6とし
てアドレス[1000]を出方すると共に、データDO
Oとして下位データDLを出力する。
てアドレス[1000]を出方すると共に、データDO
Oとして下位データDLを出力する。
この場合も、そのアドレスデータA。−AI5の内の最
下位ビット(LSB)であるアドレスデータA。はアド
レスデータAOCとして、メモリ制御回路6に入力され
ると共に、アドレスデータA1〜A、Sはアドレスデー
タAOAとしてアドレス制御回路7に入力される。
下位ビット(LSB)であるアドレスデータA。はアド
レスデータAOCとして、メモリ制御回路6に入力され
ると共に、アドレスデータA1〜A、Sはアドレスデー
タAOAとしてアドレス制御回路7に入力される。
そして、このときは第1バイトのデータの書込みである
ので、アドレス制御回路7は、アドレスデータAil、
AI2としてアドレスデータ[1000]を出力する[
A11=1000.Al 2=1000] 。
ので、アドレス制御回路7は、アドレスデータAil、
AI2としてアドレスデータ[1000]を出力する[
A11=1000.Al 2=1000] 。
そして、このときのアドレスデータ[1000]は、ア
ドレスデータARとしてアドレスレジスタ8に記憶され
る。
ドレスデータARとしてアドレスレジスタ8に記憶され
る。
一方、メモリ制御回路6は、アドレスデータAOCが偶
数を示している(アドレスデータA。二〇)ので、メモ
リ選択信号MSlを出力してメモリM1を活性化する。
数を示している(アドレスデータA。二〇)ので、メモ
リ選択信号MSlを出力してメモリM1を活性化する。
それによって、データ制御回路9からデータD11、D
12として出力される下位データDLが、メモυM1の
アドレス[1000]に書込まれる。
12として出力される下位データDLが、メモυM1の
アドレス[1000]に書込まれる。
なお、このとき、書込みデータである下位データDLは
、データレジスタ10に記憶される。
、データレジスタ10に記憶される。
また、書込みデータが1バイトのデータであれば、1バ
イトデータについてはCPU2と共通であるので、この
ままデータ書込みを終了することになる。
イトデータについてはCPU2と共通であるので、この
ままデータ書込みを終了することになる。
そして1次にCPUIは、上位データDUを書込むため
に、アドレスデータA。−AI5としてアドレス[10
013を出力すると共に、上位データDUを出力する。
に、アドレスデータA。−AI5としてアドレス[10
013を出力すると共に、上位データDUを出力する。
このとき、この子−タDUは第2バイトのデータである
(フラグRWC=1)ので、メモリ制御回路6はそのと
きのアドレスデータ夕AOCが「1」か否かを判別する
。
(フラグRWC=1)ので、メモリ制御回路6はそのと
きのアドレスデータ夕AOCが「1」か否かを判別する
。
そして、この場合、アドレス[1001:lを示すアド
レスデータの最下位ビットであるアドレスデータAo、
すなわちアドレスデータAOCは「1」である。
レスデータの最下位ビットであるアドレスデータAo、
すなわちアドレスデータAOCは「1」である。
つまり、この第2バイトのデータは奇数番地に書込むこ
と、つまり第1バイトのデータは偶数番地に書込まれて
いることを示す。
と、つまり第1バイトのデータは偶数番地に書込まれて
いることを示す。
そこで、アドレス制御回路7は、アドレスデータAll
として今回のアドレス[1001Fを出力すると共に、
アドレスデータA12としてアドレスレジスタ8に格納
されている前回のアドレス’ [1000]□カオう。
として今回のアドレス[1001Fを出力すると共に、
アドレスデータA12としてアドレスレジスタ8に格納
されている前回のアドレス’ [1000]□カオう。
一方、データ制御回路Sは、データレジスタ10に格納
されている前回のデータである下位データDLをデータ
Dllとして出力すると共に、今回の上位データDUを
データD12として出力する。
されている前回のデータである下位データDLをデータ
Dllとして出力すると共に、今回の上位データDUを
データD12として出力する。
それによって、メモリ乙の1000番地には上位データ
DUが書込まれ、1001番地には下位データDLが書
込まれる。
DUが書込まれ、1001番地には下位データDLが書
込まれる。
したがって+ cpu2がその1000番地、1001
番地のデータを使用するときには、1000番地から順
に読出すことによって下位チータDL、上位データDU
が順に読出され、このデータ形式はCPU2自体のデー
タ形式であるので、そのまま使用することができる。
番地のデータを使用するときには、1000番地から順
に読出すことによって下位チータDL、上位データDU
が順に読出され、このデータ形式はCPU2自体のデー
タ形式であるので、そのまま使用することができる。
このように、CPU1による書込みデータが1バイトデ
ータであれば、データ形式かCPU2と共通であるので
、そのまま指定のアドレスに書込まれる。
ータであれば、データ形式かCPU2と共通であるので
、そのまま指定のアドレスに書込まれる。
これに対して、cpulによる書込みデータが2バイト
データであるときには、第1バイトのデータを指定のア
ドレスに書込んだ後、第2バイトのデータを書込む時に
、前回書込んだ第1バイトのデータを今回のアドレスに
、今回の第2バイトのデータを前回のアドレスに書込む
。
データであるときには、第1バイトのデータを指定のア
ドレスに書込んだ後、第2バイトのデータを書込む時に
、前回書込んだ第1バイトのデータを今回のアドレスに
、今回の第2バイトのデータを前回のアドレスに書込む
。
それによって、2バイトテータについてもCPU2とデ
ータ形式が一致するので、CPU2はこのCPU1によ
って書込まれたデータをそのまま読出して処理すること
ができる。
ータ形式が一致するので、CPU2はこのCPU1によ
って書込まれたデータをそのまま読出して処理すること
ができる。
このように、このメモリ・システムにおいては、メモリ
を複数のブロックに分割して、各ブロックに対するデー
タの書込みを制御するので、異なるデータ形式のCPU
によるデータ書込み時に、データ形式を一致させてデー
タを書込むことができる。
を複数のブロックに分割して、各ブロックに対するデー
タの書込みを制御するので、異なるデータ形式のCPU
によるデータ書込み時に、データ形式を一致させてデー
タを書込むことができる。
それによって、データ形式の変更(変換)をブロクラム
処理によって行なう必要がなくなり、高速処理ができる
と共に、ブロクラムの簡素化を図れる。
処理によって行なう必要がなくなり、高速処理ができる
と共に、ブロクラムの簡素化を図れる。
第4図は、この発明の他の実施例の要部を示すブロック
図である。
図である。
メモリ制御回路16は、C:PUからのアドレスデータ
A。−A15の内の最下位ビットAo(So)と、書込
みタイミング信号TI (S7)と、インストラクショ
ン・フェッチ・サイクル(命令取出しサイクル)及びイ
クスキューション・サイクル ゛(命令実行サイクル)
のいずれかを示すサイクルデータI/E(Sl)等とを
入力する。
A。−A15の内の最下位ビットAo(So)と、書込
みタイミング信号TI (S7)と、インストラクショ
ン・フェッチ・サイクル(命令取出しサイクル)及びイ
クスキューション・サイクル ゛(命令実行サイクル)
のいずれかを示すサイクルデータI/E(Sl)等とを
入力する。
このメモリ制御回路16は、アンドゲートF1と、イン
バータF2と、フリップフロップ回路FF及びインバー
タF3とからなる回路によって、第1バイトか第2バイ
トかの判定をして、それに応じたフリップフロップ回路
FFの出力S2を直接及びインバータF3で反転して、
アドレス制御回路17及びデータ制御回路1日に出力す
る。
バータF2と、フリップフロップ回路FF及びインバー
タF3とからなる回路によって、第1バイトか第2バイ
トかの判定をして、それに応じたフリップフロップ回路
FFの出力S2を直接及びインバータF3で反転して、
アドレス制御回路17及びデータ制御回路1日に出力す
る。
また、このメモリ制御回路16は、アンドゲートF4と
5オアゲートF5及びアントゲートF6とによって、メ
モリMOを選択するメモリ選択信号MSO(S4)を生
成する。
5オアゲートF5及びアントゲートF6とによって、メ
モリMOを選択するメモリ選択信号MSO(S4)を生
成する。
同様に、アンドゲートF4と、インバータF7と、オア
ドゲートF8及びアンドゲートF9とによって、メモリ
M1を選択するメモリ選択信号M81(Ss)を生成す
る。
ドゲートF8及びアンドゲートF9とによって、メモリ
M1を選択するメモリ選択信号M81(Ss)を生成す
る。
一方、アドレス制御回路17は、アントケートG、〜G
4からなり、メモリ制御回路16のフリップフロップ回
路FFの出力S2に応して、CPUからのアドレスデー
タA1及びアドレスレジスタ(R1)18に記憶された
アドレスデータA1をメモリMO,Mlに出力する。
4からなり、メモリ制御回路16のフリップフロップ回
路FFの出力S2に応して、CPUからのアドレスデー
タA1及びアドレスレジスタ(R1)18に記憶された
アドレスデータA1をメモリMO,Mlに出力する。
なお、このアドレス制御回路17及びアドレスレジスタ
18は、アドレスデータのビット数分、すなわちアドレ
スデータA1〜A15の各ビットに対して設けられる。
18は、アドレスデータのビット数分、すなわちアドレ
スデータA1〜A15の各ビットに対して設けられる。
また、データ制御回路1日は、アンドケートH1〜H8
からなり、アドレス制御回路16のフリップフロップ回
路FFの出力S2に応じて、CPUからのデータDO及
びデータレジスタ(R2)20に記憶されたデータD。
からなり、アドレス制御回路16のフリップフロップ回
路FFの出力S2に応じて、CPUからのデータDO及
びデータレジスタ(R2)20に記憶されたデータD。
をメモリMO及びMlに出力する。
なお、このアドレス制御回路1日及びデータレf ジス
タ20も、データDo−D7のビット数分だけ各ビット
Do−D7に対して設けられる。
タ20も、データDo−D7のビット数分だけ各ビット
Do−D7に対して設けられる。
このように構成したこの回路におけるメモリM0、Ml
へのデータ書込み時の各部のタイミングチャートを第5
図に示しである。
へのデータ書込み時の各部のタイミングチャートを第5
図に示しである。
この第5図においては1時点T1〜T2の書込みタイミ
ンクで1バイトデータをメモリM、に書込み、また時点
T3〜T4で2バイトデータの内の第1バイトのデータ
をメモリMOに書込み、時点T4〜T5でその2バイト
データの内の第1バイトのデータ及び第2バイトのデー
タをメモリMl、MOに書込んでいる。
ンクで1バイトデータをメモリM、に書込み、また時点
T3〜T4で2バイトデータの内の第1バイトのデータ
をメモリMOに書込み、時点T4〜T5でその2バイト
データの内の第1バイトのデータ及び第2バイトのデー
タをメモリMl、MOに書込んでいる。
なお、上記実施例においては、2個のCPUで1個のメ
モリを共有する場合について述べたが、これに限るもの
ではなく、3個以上のCPU (コンピュータ)によっ
てメモリを共有するシステムにも同様に実施できる。
モリを共有する場合について述べたが、これに限るもの
ではなく、3個以上のCPU (コンピュータ)によっ
てメモリを共有するシステムにも同様に実施できる。
また、上記実施例では、2バイトデータをデータ形式を
変更して書込む場合に、第1バイトのデータの書込み番
地が奇数、偶数のいずれであるかを判定しているが、い
ずれかに限定されているときは、このような判定は行な
う必要がない。
変更して書込む場合に、第1バイトのデータの書込み番
地が奇数、偶数のいずれであるかを判定しているが、い
ずれかに限定されているときは、このような判定は行な
う必要がない。
また、上記実施例では、第1バイト(1バイトの場合を
含む)の書込みアドレスを保持しているが、例えば今回
の書込み時のアドレスデータをインクリメント(+1)
あるいはデクリメント(−1)して前回の書込み時のア
ドレスデータを生成するようにすることもできる。
含む)の書込みアドレスを保持しているが、例えば今回
の書込み時のアドレスデータをインクリメント(+1)
あるいはデクリメント(−1)して前回の書込み時のア
ドレスデータを生成するようにすることもできる。
さらに、複数のCPUの内の2以上のCPUについてデ
ータ形式の変更が必要であれば、各CPUによるメモリ
へのデータ書込み時に、上述したと同様の処理をすれは
よい。
ータ形式の変更が必要であれば、各CPUによるメモリ
へのデータ書込み時に、上述したと同様の処理をすれは
よい。
肱−来
以上説明したように、この発明によれば、複数のコンピ
ュータでメモリを共有する場合の処理が高速化すると共
に、プログラムが簡素になる。
ュータでメモリを共有する場合の処理が高速化すると共
に、プログラムが簡素になる。
第1図は、この発明の一実施例を示すブロック図、第2
図は、第1図の2個のCPUのデータ形式をを示す説明
図、 第3図は、第1図のデータ書込み/続出し制御回路の動
作説明に供するフロー図、 第4図は、この発明の他の実施例を示すブロック図、 第5図は、その動作説明に供する各部のタイミングチャ
ート図である。 1.2・・・CPU !1・・・メモリ5・・・データ
書込み/読出し制御回路6・・・メモリ制御回路 7・
・・アドレス制御回路8・・・アドレスレジスタ 9・
・・データ制御回路10・・・データレジスタ (ほか1名う 第2図 −254− 手続補正書(自船 昭和59年8月31日 特許庁長官 志 賀 学 殿 1、事件の表示 特願昭59−118177号 2、発明の名称 メモリ・システム −3,補正をする者 事件との関係 特許出願人 東京都大田区中馬込1丁目3番6号 (67/I) 株式会社 リ コ − 4、代理人 東京都豊島区東池袋1丁目20番地5 明細書の発明の詳細な説明の欄 6、補正の内容 (1)明細書第′、4頁第1行のrAIL=ARJを、
[1’A 11 =AOAJIと補正する。 (2)同書第14頁第4行のrA12=AOA」を、1
i’A12=ARjと補正する。
図は、第1図の2個のCPUのデータ形式をを示す説明
図、 第3図は、第1図のデータ書込み/続出し制御回路の動
作説明に供するフロー図、 第4図は、この発明の他の実施例を示すブロック図、 第5図は、その動作説明に供する各部のタイミングチャ
ート図である。 1.2・・・CPU !1・・・メモリ5・・・データ
書込み/読出し制御回路6・・・メモリ制御回路 7・
・・アドレス制御回路8・・・アドレスレジスタ 9・
・・データ制御回路10・・・データレジスタ (ほか1名う 第2図 −254− 手続補正書(自船 昭和59年8月31日 特許庁長官 志 賀 学 殿 1、事件の表示 特願昭59−118177号 2、発明の名称 メモリ・システム −3,補正をする者 事件との関係 特許出願人 東京都大田区中馬込1丁目3番6号 (67/I) 株式会社 リ コ − 4、代理人 東京都豊島区東池袋1丁目20番地5 明細書の発明の詳細な説明の欄 6、補正の内容 (1)明細書第′、4頁第1行のrAIL=ARJを、
[1’A 11 =AOAJIと補正する。 (2)同書第14頁第4行のrA12=AOA」を、1
i’A12=ARjと補正する。
Claims (1)
- 【特許請求の範囲】 1 データ形式の異なる複数のコンピュータで同一のメ
モリが共有されるメモリ・システムにおいて、前記メモ
リを複数のブロックに分割すると共に、該分割したメモ
リの各ブロックに対するデータの書込みを制御するデー
タ書込み制御手段を設けたことを特徴とするメモリ・シ
ステム。 2 データ書込み制御手段が、書込みアドレス及びデー
タを保持する保持手段と、データ形式の変更の要否を判
定する判定手段と、該判定手段の判定結果に応じて前記
保持したアドレス及び前記コンピュータからのアドレス
に前記保持したデータ及び前記コンピュータからのデー
タを書込む書込み手段とを備えている特許請求の範囲第
1項記載のメモリ・システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11817784A JPS60263246A (ja) | 1984-06-11 | 1984-06-11 | メモリ・システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11817784A JPS60263246A (ja) | 1984-06-11 | 1984-06-11 | メモリ・システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS60263246A true JPS60263246A (ja) | 1985-12-26 |
Family
ID=14730036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11817784A Pending JPS60263246A (ja) | 1984-06-11 | 1984-06-11 | メモリ・システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60263246A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03505016A (ja) * | 1989-03-15 | 1991-10-31 | エイエスティー・リサーチ,インコーポレイテッド | 直接メモリアクセス用制御器 |
JPH04220737A (ja) * | 1990-03-13 | 1992-08-11 | American Teleph & Telegr Co <Att> | プロセッサおよびデータ処理システム |
-
1984
- 1984-06-11 JP JP11817784A patent/JPS60263246A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03505016A (ja) * | 1989-03-15 | 1991-10-31 | エイエスティー・リサーチ,インコーポレイテッド | 直接メモリアクセス用制御器 |
JPH04220737A (ja) * | 1990-03-13 | 1992-08-11 | American Teleph & Telegr Co <Att> | プロセッサおよびデータ処理システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4654781A (en) | Byte addressable memory for variable length instructions and data | |
WO1988004806A1 (en) | Risc computer with unaligned reference handling and method for the same | |
JPS5855528B2 (ja) | アドレス発生装置 | |
JPH0248931B2 (ja) | ||
US4446517A (en) | Microprogram memory with page addressing and address decode in memory | |
JPH0346850B2 (ja) | ||
JPH0414385B2 (ja) | ||
JPH11353225A (ja) | 逐次実行型でグレイ・コード体系のアドレッシングを行うタイプのプロセッサがアクセスするメモリ、及びメモリにコード/データを格納する方法 | |
JPH07152721A (ja) | マイクロコンピュータ | |
JPS60263246A (ja) | メモリ・システム | |
JPH02235289A (ja) | 自己刻時レジスターファイル | |
JP3931593B2 (ja) | データ書込回路 | |
JPS6055911B2 (ja) | 主記憶装置 | |
GB2108737A (en) | Byte addressable memory for variable length instructions and data | |
US5101343A (en) | Microprocessor with word memory for selectively processing data | |
JP2595992B2 (ja) | 電子楽器 | |
JP3043341B2 (ja) | マイクロコンピュータシステム | |
JPH0736166B2 (ja) | データ転送方式 | |
JP2860655B2 (ja) | 並列命令実行型プロセッサ | |
JPH0743668B2 (ja) | アクセス制御装置 | |
JPH0546462A (ja) | マルチcpuのアドレス変換機構 | |
JPH0535472A (ja) | マイクロコンピユータ | |
JP2546002B2 (ja) | パリティ回路 | |
JPS6122816B2 (ja) | ||
JP2693598B2 (ja) | ディジタルシグナルプロセッサのプログラム実行制御装置 |