JPS6047627B2 - memory controller - Google Patents
memory controllerInfo
- Publication number
- JPS6047627B2 JPS6047627B2 JP741380A JP741380A JPS6047627B2 JP S6047627 B2 JPS6047627 B2 JP S6047627B2 JP 741380 A JP741380 A JP 741380A JP 741380 A JP741380 A JP 741380A JP S6047627 B2 JPS6047627 B2 JP S6047627B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- read
- value
- source
- memory read
- 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
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)
- Multi Processors (AREA)
Description
【発明の詳細な説明】
この発明は記憶ユニットを共有する2つのメモリ読出し
源のメモリ読出し時間を高速化するメモリ制御装置に関
する。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a memory controller that speeds up memory read times for two memory read sources sharing a storage unit.
2つのメモリ読出し源と共有メモリとで構成されるシス
テムにおいては、通常いずれか一方のメモリ読出し源か
らのメモリ読出しは他方のメモリ読出し源からのメモリ
読出しよりも優先して行なわれる。In systems configured with two memory read sources and shared memory, memory reads from one memory read source typically take priority over memory reads from the other memory read source.
しカルながら、従来優先度の低いメモリ読出し源がメモ
リアクセスを実行中に優先度の高いメモリ読出し源から
メモリ読出し要求が発生しても、優先度の低いメモリ読
出し源の読出しが終了した後になつてその要求が受け付
けられる。このため、実際に優先度の効力があるのは、
ほぼ同時に両メモリ読出し源からメモリ読出し要求が発
生したときのみであつた。したがつて、優先度の高いメ
モリ読出し源であつても常に最高の読出し速度が得られ
るわけてはなく、また読出し時間も一定ではなかつた。
本発明は、上記欠点をなくし、優先度の高いメモリ読出
し源が共有する記憶ユニットに固有な最高速の読出し時
間で読出すことができるとともに、優先度の低いメモリ
読出し源についても読出し時間をできるだけ短縮するこ
とのできるメモリ制御装置を提供することを目的とする
。However, conventionally, even if a memory read request occurs from a high-priority memory read source while a low-priority memory read source is executing a memory access, it will not be processed until after the low-priority memory read source has finished reading. The request will be accepted. Therefore, the actual effect of priority is
This was the case only when memory read requests were generated from both memory read sources at approximately the same time. Therefore, even high priority memory read sources did not always provide the highest read speed, and the read time was not constant.
The present invention eliminates the above-mentioned drawbacks and allows high-priority memory read sources to read at the fastest read time inherent in shared storage units, while also allowing low-priority memory read sources to read at the fastest possible read time. An object of the present invention is to provide a memory control device that can be shortened in size.
以下図面にしたがつて詳細に説明する。A detailed explanation will be given below with reference to the drawings.
第1図は本発明の一実施例を示すブ上ツク構成図である
。本図において1はメモリアドレスレジスタMARIで
、メモリ読出し源1側のメモリアドレスをセットするた
めのレジスタである。2はメモリアドレスレジスタMA
R2で、メモリ読出し源2側のメモリアドレスをセット
するためのレジスタである。FIG. 1 is a block diagram showing an embodiment of the present invention. In the figure, 1 is a memory address register MARI, which is a register for setting a memory address on the memory read source 1 side. 2 is memory address register MA
R2 is a register for setting a memory address on the memory read source 2 side.
3は記憶ユニットMEMである。3 is a storage unit MEM.
4はDフリップフロップF/F1で、このフリップフロ
ップの値が’’1’’になつているときは、メモリノ読
出し源1から記憶ユニットMEM3へのアクセスがなさ
れていることを示す。4 is a D flip-flop F/F1, and when the value of this flip-flop is ``1'', it indicates that the memory unit MEM3 is being accessed from the memory read source 1.
5はDフリップフロップF/F2で、このフリップ・フ
ロップの値が゛’1’’になつているときは、メモリ読
出し源2から記憶ユニットMEM3へのアクセスがなさ
れ;ていることを示す。5 is a D flip-flop F/F2, and when the value of this flip-flop is ``1'', it indicates that the memory unit MEM3 is being accessed from the memory read source 2.
6はメモリアドレスレジスタMARI1にメモリアドレ
スがセットされてから、そのメモリアドレスに応じて記
憶ユニットMEMの内容が読出され、データライン上で
値が確定するまでの時間を待つための遅延素子DLYで
ある。Reference numeral 6 designates a delay element DLY for waiting the time from when a memory address is set in the memory address register MARI1 until the contents of the storage unit MEM are read out according to the memory address and the value is determined on the data line. .
7はメモリアドレスレジスタMAR2llにメモリアド
レスがセットされてから、そのメモリアドレスに応じて
記憶ユニットMEA3の内容が読出され、データライン
上で値が確定するまでの時間を待つための遅延機能を果
すシフトレジスタSFTである。7 is a shifter that functions as a delay for waiting the time from when a memory address is set in the memory address register MAR2ll until the contents of the storage unit MEA3 are read out according to the memory address and the value is determined on the data line. This is a register SFT.
本実施例ではこのシフトレレジスタSFT7はnビット
で、そのクロック端子CKに常時t時間々隔でパルス入
力8が付加されておりフリップ・フロップF/Fl4が
値゛0゛のときシフトレジスタSFT7のD子に付加さ
れるフリップ・フロップF/F25の値がシフトレジス
タSFT7内にとり込まれt時間々隔で順次出力端子Q
側にシフトされる。フリップ・フロップF/Fl4が値
゜゛1゛のときはシフトレジスタSFT7は入力端子D
に付加される値、およびクロック端子へのパルス入力に
関係なく強制的にクリアされ、フリップ・フロップF/
Fl4が値゛1゛の間クリア状態が保たれる。9はセレ
クタSLCT9であり、フリップ・フロップF/F1=
4′F゛のときはメモリアドレスレジスタMARllの
内容がメモリアドレスとして記憶ユニツ亀化M3に供給
され、フリップ・フロップF/F1=“゜0゛のときは
メモリアドレスレジスタMAR22の内容がメモリアド
レスとして記憶ユニットMEM3に供給される。In this embodiment, this shift register SFT7 has n bits, and a pulse input 8 is always added to its clock terminal CK at time intervals of t, so that when the flip-flop F/Fl4 has a value of ``0'', the shift register SFT7 The value of the flip-flop F/F25 added to the D terminal is taken into the shift register SFT7 and sent to the output terminal Q sequentially at time intervals of t.
shifted to the side. When the flip-flop F/Fl4 has the value ゜゛1゛, the shift register SFT7 has the input terminal D.
is forcibly cleared regardless of the value added to the clock terminal and the pulse input to the clock terminal.
The clear state is maintained while Fl4 is at the value "1". 9 is a selector SLCT9, and a flip-flop F/F1=
4'F'', the contents of the memory address register MARll are supplied to the memory unit M3 as a memory address, and when the flip-flop F/F1="゜0゛", the contents of the memory address register MAR22 are supplied as the memory address. It is supplied to the storage unit MEM3.
10はメモリ読出し源1側のメモリデータレジスタMD
Rlで記憶ユニットMEM3から読出された値がここに
セットされる。10 is a memory data register MD on the memory read source 1 side.
The value read from the storage unit MEM3 at Rl is set here.
11はメモリデータレジスタMDR2で、記憶ユニット
■M3から読出された値がここにセットされる。11 is a memory data register MDR2, and the value read from the storage unit M3 is set here.
12adrs2,13adrs2こはそれぞれメモリア
ドレスレジスタMARl,MAR2の入力線、14ma
r,15mar2はそれぞれメモリアドレスレジスタM
ARl,MAR2の出力線、16mar1set,17
mar2setはそれぞれメモリアドレスレジスタMA
Rl,MAR2に対する3データセット信号の乗る線で
、これらの信号により、またそれぞれフリップ・フロッ
プF/Fl4、フリップ・フロップF/F25に値“1
゛がセットされる。12adrs2 and 13adrs2 are the input lines of memory address registers MARl and MAR2, respectively, and 14ma
r, 15mar2 are memory address registers M
ARl, MAR2 output line, 16mar1set, 17
mar2set is each memory address register MA
This is the line on which the three data set signals for Rl and MAR2 are carried, and these signals also set the value "1" to the flip-flop F/Fl4 and flip-flop F/F25, respectively.
゛ is set.
18adrsm,19atamは、それぞれ記憶ユニッ
トMEM3に対するメモリアド4′レス線、ゼータ線で
ある。18 adrsm and 19 atam are the memory address 4' address line and zeta line for the storage unit MEM3, respectively.
20maend1,21maend2は記憶ユニットM
EM3に対してそれぞれメモリ読出し源1、メモリ読出
し源2からメモリ読出しを行つた場合のメモリ読出し終
了信号である。20maend1 and 21maend2 are storage units M
This is a memory read end signal when memory read is performed from memory read source 1 and memory read source 2 for EM3, respectively.
本実施例ではメモリ読出し源1が優先度が高い。次にメ
モリ読出し源から読出し要求が発生した場合の動作を説
明する。In this embodiment, memory read source 1 has a high priority. Next, the operation when a read request is generated from the memory read source will be explained.
7(1) メモリ読出し源1から読出し要求が発生した
場合まず、Adrsll2の内容がMarlsetl6
信号により、メモリアドレスレジスタMARllにセッ
トされ、同時にフツプ・・フロップF/Fl4クに値′
6r1がセットされる。7(1) When a read request is generated from memory read source 1, first, the contents of Adrsll2 are changed to Marlsetl6.
The signal sets the memory address register MARll, and at the same time the value '
6r1 is set.
F/F1=“r′であるので、セレクタSLCT9によ
りMarll4が選択され、この値がAdrsml8と
なり記憶ユニットMEMl8にメモリアドレスとして付
加され、読出しが開始される。遅延素子DLY6が働い
て、7datam19上に読出した値が確定するのを待
つて、その内容がメモリデータレジスタMDRllOに
セットされ、同時にフリップ●フロップF/Fl4に値
“゜0゛がセットされ、メモリアクセスエンド信号Ma
endl2Oが出される。以上の読出し過程において、
フリップ●フロップF/F25の値はセレクタSLCT
9に影響を与えず、したがつてメモリ読出し源1はメモ
リ読出し源2の影響を受けることなく読出しを行うこと
ができる。(Ii)メモリ読出し源2から読書し要求が
発生し、読出しが完了するまでメモリ読出し源1から読
出し要求が発生しなかつた場合まずAdrs2l3の内
容がNlar2serl7信号により、メモリアドレス
レジスタM,AR22にセットされ、同時にフリップ●
フロップF/F25に値“1゛がセットされる。Since F/F1="r', Marll4 is selected by the selector SLCT9, and this value becomes Adrsml8 and is added as a memory address to the storage unit MEMl8, and reading is started. The delay element DLY6 works, and the data is written on 7datam19. After waiting for the read value to be confirmed, its contents are set in the memory data register MDRllO, and at the same time, the value "゜0゛" is set in the flip-flop F/Fl4, and the memory access end signal Ma is set.
endl2O is issued. In the above reading process,
Flip●Flop F/F25 value is selector SLCT
Therefore, memory read source 1 can read without being influenced by memory read source 2. (Ii) When a read request is generated from the memory read source 2 and no read request is generated from the memory read source 1 until the read is completed, the contents of Adrs2l3 are first set to the memory address registers M and AR22 by the Nlar2serl7 signal. and flip at the same time●
The value "1" is set in the flop F/F25.
F/F1=“0゛であるのてセレクタSLCT9により
Mar2l5が選択され、この値がAdrsml8とな
り、記憶ユニットMEM3にメモリアドレスとして付加
され、読出しが開始される。フリップ・フロップF/F
25の値46r゛が、シフトレジスタSFT7の入力端
子Dに付加されるため、シフトレジスタSFT7の値は
クロック端子CKからのパルス入力に従つてt時間毎に
、nビット000・・・00,100・・00,110
・・・00,111・・・00,・・,111・・・1
0,111・・・11と移行しシフトレジスタSFT7
の出力端子Qが、値゜゜0゛から値“゜1゛に移行し、
そのとき記意ユニットMEM3から、Dataml9に
読出されだ内容がメモリデータレジスタMDR22にセ
ツトされ、フリップ・フロップF/F2,5に値゜“0
゛がセットされ、メモリアクセスエンド信号Maend
22lが出される。(Iii)メモリ読出し源2から読
出し要求が発生し、読出しが完了する以前にメモリ読出
し源1から読出し要求が発生した場合まず(Ii)と同
様にAdrs2l3の内容がMar2setl7信号に
より、メモリアドレスレジスタMAR22にセットされ
、同時にフリップ●フロップF/F25に値゜“1゛が
セットされる。Since F/F1="0", selector SLCT9 selects Mar2l5, this value becomes Adrsml8, is added to storage unit MEM3 as a memory address, and reading is started.Flip-flop F/F
Since the value 46r' of 25 is added to the input terminal D of the shift register SFT7, the value of the shift register SFT7 changes from n bits 000...00,100 every time t according to the pulse input from the clock terminal CK.・・00,110
...00,111...00,...,111...1
Transition to 0, 111...11 and shift register SFT7
The output terminal Q of changes from the value ゜゜0゛ to the value "゜1゛,"
At that time, the contents read from the memory unit MEM3 to Dataml9 are set in the memory data register MDR22, and the value ゜"0" is set in the flip-flops F/F2 and F5.
is set, and the memory access end signal Maend
22l is served. (Iii) When a read request is generated from the memory read source 2, and before the read is completed, a read request is generated from the memory read source 1.Similar to (Ii), the contents of Adrs2l3 are transferred to the memory address register MAR22 by the Mar2setl7 signal. At the same time, the value "1" is set in the flip-flop F/F25.
このとき既にメモリ読出し源1から読出し要求が発生し
ていれば、フリップ●フロップF/F1=4′F3であ
り、シフトレジスタSFT7はクリア状態に保たれ、セ
レクタSLCT9はMarll4を選択し、先にメモリ
アクセス源1からの読出しが行われる。またメモリ読出
し源1から読出し要求が発生していなければ、F/F1
=“0゛であり、セレクタSLCT9はMar2l5を
選択し、この値がAdrsml8となり記憶ユニットM
EM3にメモリアドレスとして付加され、読出しが開始
される。(Ji)で述べたと同様にシフトレジスタSF
T7の値は000・・・00,100・・・00,11
0・・・00,・・と移行する。この途中でメモリ読出
し源1から読出し要求が発生すれば、フリップ・フロッ
プF/F1=゜゛1゛となりシフトレジスタSFT7は
クリアされ、セレクタSLCT9はMarll4を選択
し、(1)で述べたようにして記憶ユニットMEM3の
内容が読出され、メモリデータレジスタMDRllOに
セットされる。それと同時にフリップ●フロップF/F
1に値″0″がセットされるのでシフトレジスタSFT
7がクリア状態から開放され、セレクタSLCT9はM
ar2l5を選択し、再び(Ii)で述べたと同様にシ
フトレジスタSFT7の値は000・・・00,100
・・・00,110・・・00,111・・・00,・
・,111・・・11と移行しシフトレジスタSFT7
の出力端子Qが値“0゛から値“1゛に移行し、記憶ユ
ニットMEM3から読出された内容がメモリテータレジ
スタMDR2llにセットされる。以上説明したとおり
、本発明によれば、優先度の高いメモリ読出し源は優先
度の低いメモリ読出し源の影響を受けることなく、常に
記憶ユニットに固有な最高の読出し速度で記憶ユニット
の内容を読出すことができる。At this time, if a read request has already been generated from memory read source 1, flip-flop F/F1=4'F3, shift register SFT7 is kept in the clear state, selector SLCT9 selects Marll4, and first Reading from memory access source 1 is performed. Also, if no read request is generated from memory read source 1, F/F1
="0", the selector SLCT9 selects Mar2l5, and this value becomes Adrsml8 and the memory unit M
It is added to EM3 as a memory address and reading is started. As described in (Ji), shift register SF
The value of T7 is 000...00,100...00,11
0...00,... If a read request is generated from the memory read source 1 during this process, the flip-flop F/F1 becomes ゜゛1゛, the shift register SFT7 is cleared, the selector SLCT9 selects Marll4, and the process is performed as described in (1). The contents of storage unit MEM3 are read and set in memory data register MDRllO. At the same time, flip ● flop F/F
Since the value "0" is set to 1, the shift register SFT
7 is released from the clear state, and selector SLCT9 becomes M.
Select ar2l5 and change the value of shift register SFT7 to 000...00,100 as described in (Ii) again.
...00,110...00,111...00,.
・, 111...11 and shift register SFT7
The output terminal Q of is shifted from the value "0" to the value "1", and the contents read from the storage unit MEM3 are set in the memristor register MDR2ll. As described above, according to the present invention, a memory read source with a high priority always reads the contents of a storage unit at the highest read speed inherent to the storage unit without being influenced by a memory read source with a low priority. I can put it out.
また優先度の低いメモリ読出し源についても、優先度の
高いメモリ読出し源のメモリ読出しが終了したら直ちに
メモリ読出しを開始することができるのでそのメモリ読
出し時間も最大限高速化されている。なお上記実施例に
おいては優先度の低いメモリ読出し源に対応するタイマ
ーとしてシフトレジスタを用いたが、特定の信号により
クリア状態を保てる任意の遅延ユニットを用いることが
できる。Further, since memory reading can be started for a memory read source with a low priority immediately after the memory read from a memory read source with a high priority is completed, the memory read time is also maximized. In the above embodiment, a shift register is used as a timer corresponding to a low priority memory read source, but any delay unit that can be kept in a clear state by a specific signal may be used.
また記憶ユニットとしてはランダムアクセスメモリ等に
限られず、入力信号に対し所定の時間経過後に出力号が
得られる任意の共有可能な装置にも適用することができ
る。・図面の簡単な説明
第1図は本発明の実施例を示すブロック図てある。Further, the storage unit is not limited to a random access memory or the like, but can be applied to any sharable device that can obtain an output signal after a predetermined time has elapsed in response to an input signal.・Brief explanation of the drawings FIG. 1 is a block diagram showing an embodiment of the present invention.
1,2・・・メモリアドレスレジスタ、3・・・記憶ユ
ニット、4,5・・・フリップ●フロップ、6・・・遅
延冫素子、7・・・シフトレジスタ、9・・・セレクタ
、10,11・・・メモリアドレスレジスタ。1, 2...Memory address register, 3...Storage unit, 4,5...Flip-flop, 6...Delay element, 7...Shift register, 9...Selector, 10, 11...Memory address register.
Claims (1)
ユニットを共有し、第1メモリ読出し源からのメモリ読
出しを第2メモリ読出し源からのメモリ読出しより優先
的に行なう装置において、第2メモリ読出し源からのメ
モリ読出しによつて前記記憶ユニットから読み出される
データが読出し線上で有効となるまでの時間が設定され
たタイマーと、第2メモリ読出し源がメモリ読出し中に
第1メモリ読出し源からメモリ読出し要求があつた場合
には第1メモリ読出し源のメモリ読出しが終了するまで
前記タイマーをリセット状態にする手段とを備えたこと
を特徴とするメモリ制御装置。1. In an apparatus in which a first memory read source and a second memory read source share a storage unit, and in which memory reads from the first memory read source are given priority over memory reads from the second memory read source, a timer configured to set a time until data read from the storage unit by a memory read from a memory read source is valid on a read line; and means for resetting the timer until memory reading by a first memory reading source is completed when a request is made.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP741380A JPS6047627B2 (en) | 1980-01-26 | 1980-01-26 | memory controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP741380A JPS6047627B2 (en) | 1980-01-26 | 1980-01-26 | memory controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS56105549A JPS56105549A (en) | 1981-08-22 |
JPS6047627B2 true JPS6047627B2 (en) | 1985-10-22 |
Family
ID=11665172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP741380A Expired JPS6047627B2 (en) | 1980-01-26 | 1980-01-26 | memory controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6047627B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH035456Y2 (en) * | 1984-07-28 | 1991-02-13 |
-
1980
- 1980-01-26 JP JP741380A patent/JPS6047627B2/en not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH035456Y2 (en) * | 1984-07-28 | 1991-02-13 |
Also Published As
Publication number | Publication date |
---|---|
JPS56105549A (en) | 1981-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6532525B1 (en) | Method and apparatus for accessing memory | |
US6604179B2 (en) | Reading a FIFO in dual clock domains | |
KR920006971A (en) | Multi port memory | |
FR2546320A1 (en) | DEVICE AND METHOD FOR DATA TRANSFER IN SERIES OF SEVERAL BYTES | |
EP1081598B1 (en) | Multiprocessor device sharing a collective memory | |
US4600992A (en) | Priority resolver with lowest priority level having shortest logic path | |
EP1081597B1 (en) | Multiprocessor device having an interface for a collective memory | |
JPS6047627B2 (en) | memory controller | |
US4562534A (en) | Data processing system having a control device for controlling an intermediate memory during a bulk data transport between a source device and a destination device | |
JPS61114362A (en) | Access control system for share memory | |
JP2570900B2 (en) | Access control device and access control method | |
JP2692444B2 (en) | Timer device | |
JPS61133456A (en) | Output signal transmitter of microprocessor | |
KR100364673B1 (en) | Method for transmitting burst data in sun bus | |
JPS581248A (en) | Control system for interlock condition | |
JPS6156812B2 (en) | ||
JPH0719221B2 (en) | Memory control method | |
SU1529241A1 (en) | Twin-processor computing system | |
JPS6226743B2 (en) | ||
JP2625288B2 (en) | Buffer memory access system | |
JP2684663B2 (en) | Micro program control circuit | |
JPH05143527A (en) | Priority control circuit | |
JP2588396B2 (en) | Serial receiver with double buffer | |
SU1251174A1 (en) | Device for controlling internal dynamic memory | |
JPH0317143B2 (en) |