JPS60181851A - Partial writing control system - Google Patents

Partial writing control system

Info

Publication number
JPS60181851A
JPS60181851A JP3755884A JP3755884A JPS60181851A JP S60181851 A JPS60181851 A JP S60181851A JP 3755884 A JP3755884 A JP 3755884A JP 3755884 A JP3755884 A JP 3755884A JP S60181851 A JPS60181851 A JP S60181851A
Authority
JP
Japan
Prior art keywords
memory
address
data
byte
block 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.)
Pending
Application number
JP3755884A
Other languages
Japanese (ja)
Inventor
Yutaka Nakajima
豊 中嶋
Takashi Hiraoka
平岡 孝
Junichi Kihara
淳一 木原
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP3755884A priority Critical patent/JPS60181851A/en
Publication of JPS60181851A publication Critical patent/JPS60181851A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/04Addressing variable-length words or parts of words

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

PURPOSE:To simplify the partial writing process at both start and finish time points of block transfer by performing the partial writing for an area between the bype position shown by a memory address and the final byte of a word with the 1st memory access for block transfer and then for an area between the 0-th byte of the word and the byte position showing the memory address with the final memory access respectively. CONSTITUTION:In the 1st memory access of block transfer, the data (a, A-C) of 4 bytes selected by a selector circuit 34 are delivered to a memory array 10 via a register 32 to perform the partial writing for an area between the byte position shown by a memory address (memory start address 4n+1). The final memory access of block transfer is decided when the coincidence is obtained between the contents of an address counter 52 and the bits excluding lower 2 bits of a memory and address stored in an address register 53. Thus the data (X-Z, z) of 4 bytes selected and delivered from the circuit 34 are delivered to the array 10 via the register 32. Then the partial writing is performed for an area between the 0-th byte of the corresponding word and the byte position shown by a memory address (memory end address 4n'+2).

Description

【発明の詳細な説明】 [発明の技術分野〕 この発明は、入出力装置→メモリのブロック転送に係り
、特にブロック転送開始・終了時の部分書込み制御方式
に関する。
DETAILED DESCRIPTION OF THE INVENTION [Technical Field of the Invention] The present invention relates to block transfer from an input/output device to a memory, and particularly relates to a partial write control method at the start and end of block transfer.

[発明の技術向背m] 従来、この種の部分書込みには、ハーフワードライトと
バイトライト機能が適用されていlこ。例えば第1図に
示す如くデータA〜Zのブロック転送の場合(メモリス
ク−ドアドレスが4n+1、メモリエンドアドレスが4
n=+2の場合)、データDからデータWまでのデータ
につぃそは、4バイト(フルワード)単位にメモリアク
セスが行なわれる。これに対し、ブロック転送開始時の
データA、B、Cについては、Aをバイトライト、B、
Cをハーフワードライ1〜に分割して制御する必要があ
った。同様にブロック転送終了時には、データX、Yに
ついてはハーフワードライ1〜、Zについてはバイトラ
イトを行なう必要があった。
[Technical Background of the Invention] Conventionally, half-word write and byte write functions have been applied to this type of partial writing. For example, in the case of block transfer of data A to Z as shown in Figure 1 (memory code address is 4n+1, memory end address is 4
In the case of n=+2), memory access is performed for data from data D to data W in units of 4 bytes (full words). On the other hand, for data A, B, and C at the start of block transfer, A byte write, B,
It was necessary to divide C into half word dry 1 and control it. Similarly, at the end of block transfer, it was necessary to perform halfword writes 1 to 1 for data X and Y, and byte write for data Z.

[背景技術の問題点コ このように従来の部分書込み制御では、パイミルライト
とハーフワードライトの2種のlii!I 御が必要な
ため制御が複雑になると共に、部分書込みを2度行なわ
な(ブればならない欠点があった。
[Problems with the Background Art] As described above, in conventional partial write control, there are two types of lii! write: pie mill write and half word write. Since the I control is required, the control becomes complicated, and there is also a drawback that partial writing must be performed twice.

[発明の目的コ この考案は上記事情に鑑みてなされたものでその目的は
、ブロック転送開始・終了時の部分書込み処理の簡略化
が図れる部分書込み制御方式を提供することにある。
[Purpose of the Invention] This invention was made in view of the above circumstances, and its purpose is to provide a partial write control system that can simplify partial write processing at the start and end of block transfer.

[発明の概要] この発明では、ブロック転送のメモリスク−1ヘアドレ
スの一下位2ピッ1〜がメモリアドレスロード信号に応
じて設定される第ルジスタ、同メモリスタートアドレス
の残りビットが上記メモリアドレスロード信号に応じて
設定されると共に、メモリアクセスエンド信号に応じて
インクリメントするアドレスカウンタ、上記メモリスク
−1ヘアドレスの下位2ビツトがメモリアドレスロード
信号に応じて設定されると共に、1バイト毎にインクリ
メンi−する2進2ピツl〜ノjウンタ、上記メモリア
ドレスロード信号に応じてセラ1へし、ブロック転送の
1回目のメモリアクセスであることを検出する第1フリ
ツプ70ツブ、この第1フリツプフロツプの状態に応じ
て上記第ルジスタからの出力データまたは上記2進2ビ
ットカウンタからの出力データを選択するセレクタ、ブ
ロック転送のメモリエンドアドレスを保持する第2レジ
スタ、この第2レジスタに保持されたメモリエンドアド
レスの下位2ビツトを除く残りビットと上記アドレスカ
ウンタの内容とを比較し一致を検出する比較器、および
この比較器の比較結果に応じてセットし、ブロック転送
の最後のメモリアクセスであることを検出覆る第2フリ
ツプフロツプを備えたチャネル装置と、メモリに対する
メモリアクセス制御を行なうメモリコン1〜ローラが設
けられている。
[Summary of the Invention] In the present invention, the lower 2 bits 1 to 1 of the memory address of block transfer memory sk-1 are set in accordance with the memory address load signal, and the remaining bits of the memory start address are set to the memory address mentioned above. The address counter is set in response to the load signal and incremented in response to the memory access end signal. A binary 2-bit l to counter that increments i, a first flip 70 that detects the first memory access of a block transfer by sending it to the cell 1 in response to the memory address load signal, and a selector that selects the output data from the above-mentioned register or the output data from the binary 2-bit counter according to the state of the flip-flop; a second register that holds the memory end address of the block transfer; and a second register that holds the memory end address of the block transfer; A comparator that compares the remaining bits of the memory end address excluding the lower two bits with the contents of the address counter and detects a match, and is set according to the comparison result of this comparator and is the last memory access of a block transfer. A channel device equipped with a second flip-flop for detecting this, and memory controllers 1 to 1 for controlling memory access to the memory are provided.

このメモリコン1−〇−ラは、上記第1および第2フリ
ツプフロツプの各状態、並びに上記アドレスカウンタお
よびセレクタからの各出力データの連結情報で示される
メモリアドレスに従い、上記チャネル装置からブロック
転送されるデータをメモリに書込む。このメモリコン1
〜ローラは、上記第1フリツプフロツプによってブロッ
ク転送の1回目のメモリアクセスであることが示されて
いる場合には、上記メモリアドレスの示プバイ1へ位置
からそのワードの最終バイl〜までを部分書込みを行な
う。同様に、メモリコントローラは、上記第2フリツプ
70ツブによってブロック転送の最後のメモリアクセス
であることが示されている場合には、そのワードのOバ
イト目から上記メモリアドレスの示すバイト位置までを
部分書込みを行なう。
This memory controller 1-0-receives block transfer from the channel device in accordance with each state of the first and second flip-flops and the memory address indicated by the concatenation information of each output data from the address counter and selector. Write data to memory. This memory controller 1
If the first flip-flop indicates that this is the first memory access of a block transfer, the ~ roller writes a portion of the memory address indicated by 1 from the position to the last byte l of the word. Do this. Similarly, if the second flip 70 indicates that this is the last memory access of the block transfer, the memory controller partially accesses the memory from the O-th byte of the word to the byte position indicated by the memory address. Write.

[発明の実施例] 第2図はこの発明の一実施例に係る情報処理装置の要部
の構成を示す。同図において、10は1ワードが4バイ
トのメモリアレイ、20はメモリデータバス、30はメ
モリアレイ10に対するメモリアクセス制御を行なうメ
モリコンミ−ローラである。メモリコントローラ30は
メモリデータバス20を介してメモリアレイ10に接続
されている。40はDMAバス、50はチャネル装置で
ある。チャネル装置5゜は図示せぬ入出力装置に接続さ
れると共にDMAバス40を介してメモリコントローラ
30に接続されている。
[Embodiment of the Invention] FIG. 2 shows the configuration of main parts of an information processing apparatus according to an embodiment of the invention. In the figure, 10 is a memory array in which one word is 4 bytes, 20 is a memory data bus, and 30 is a memory controller for controlling memory access to the memory array 10. Memory controller 30 is connected to memory array 10 via memory data bus 20. 40 is a DMA bus, and 50 is a channel device. The channel device 5° is connected to an input/output device (not shown) and is also connected to the memory controller 30 via a DMA bus 40.

ヂャネル装置50において、51は、ブロック転送のメ
モリスク−1−アドレスの下位2ビツトを、メモリアド
レスロード信@81に応じて保持するメモリスク−ドア
ドレスレジスタ(SMAR)、52はメモリアクセスエ
ンド信号82に応じてインクリメント覆るアドレスカウ
ンタ(MAR)である。アドレスカウンタ52には、上
記メモリスタートアドレスの残りビットがアドレスロー
ド信号81に応じて初期設定される。53はブロック転
送のメモリエンドアドレス(実際にはメモリエンドアド
レス」−1)を保持するメモリエンドアドレスレジスタ
(EMAR)、54は比較器(COMP)である。
In the channel device 50, 51 is a memory card address register (SMAR) that holds the lower two bits of the block transfer memory card address in response to a memory address load signal @81, and 52 is a memory access end signal. The address counter (MAR) increments according to 82. The remaining bits of the memory start address are initialized in the address counter 52 in response to the address load signal 81. 53 is a memory end address register (EMAR) that holds the memory end address of block transfer (actually memory end address "-1"), and 54 is a comparator (COMP).

比較器54は、エンドアドレスレジスタ53に保持され
たメモリエンドアドレスの下位2ピツ1〜を除く残りビ
ットと、アドレスカウンタ52の内容とを比較する。5
5は1バイトのデータ入力を示すデータ入力信号83に
応じてインクリメントする4バイトカウンタ(48C)
である。4バイトカウンタ55には上記メモリスク−1
〜アドレスの下位2ビツトがアドレスロード信@81に
応じて初期設定される。
The comparator 54 compares the remaining bits of the memory end address held in the end address register 53 excluding the lower two bits 1 to 1 with the contents of the address counter 52 . 5
5 is a 4-byte counter (48C) that increments according to the data input signal 83 indicating 1-byte data input.
It is. The 4-byte counter 55 has the above memory risk -1.
~The lower two bits of the address are initialized in response to the address load signal @81.

4バイトカウンタ55は2進2ビットカウンタである。The 4-byte counter 55 is a binary 2-bit counter.

56はアクセスエンド信号82が供給されるインバータ
(INV) 、57.58はフリップフロップ(F/F
)である。フリップフロップ57のプリセット端子(P
R)にはアドレスロード信号81が供給され、クロック
端子(CK)にはアクセスエンド信号82が供給される
。また、フリップフロップ51のデータ入力端子(D>
は110 I+レベルに設定されている。一方、フリッ
プフロップ58のデータ入力端子(D)は゛1″レベル
に設定されている。
56 is an inverter (INV) to which the access end signal 82 is supplied, and 57.58 is a flip-flop (F/F).
). Preset terminal of flip-flop 57 (P
An address load signal 81 is supplied to the terminal R), and an access end signal 82 is supplied to the clock terminal (CK). Also, the data input terminal (D>
is set to 110 I+ level. On the other hand, the data input terminal (D) of the flip-flop 58 is set to the "1" level.

また、フリップフロップ58のクロック端子(CK)に
は比較器54からの出力信号が供給され、クリア端子(
CLR)にはインバータ5Gからの出力信号が供給され
る。59はアドレスレジスタ51または4バイトカウン
タ55からの出力データ(2ビット)いずれか一方をフ
リップフロップ57のQ出力信号に応じて選択するセレ
クタ、6oはフリップフロップ57.58の各Q出力信
号か供給されるオアゲート(OR)である。セレクタ5
9からの2ビットの選択出力データはアドレスカウンタ
52からの30ピッ]−の出力データの下位に連結され
、メモリアレイ10に対するメモリアドレスとしてDM
Aバス40経由てメモリコントローラ30に供給される
。オアゲー1へ60の出力はファンクションピッ1−F
lとして用いられ、フリップフロップ58のQ出力信号
はファンクションピッ1−「4として用いられる。ピッ
+−Fl、F4は、ファンクションビットFO。
Further, the output signal from the comparator 54 is supplied to the clock terminal (CK) of the flip-flop 58, and the clear terminal (CK) is supplied with the output signal from the comparator 54.
CLR) is supplied with an output signal from the inverter 5G. 59 is a selector that selects either the address register 51 or the output data (2 bits) from the 4-byte counter 55 according to the Q output signal of the flip-flop 57; 6o is used to supply each Q output signal of the flip-flops 57 and 58; This is an OR gate (OR). selector 5
The 2-bit selection output data from address counter 52 is connected to the lower part of the 30-bit output data from address counter 52, and is used as a memory address for memory array 10.
It is supplied to the memory controller 30 via the A bus 40. The output of 60 to or game 1 is function pin 1-F.
The Q output signal of the flip-flop 58 is used as the function bit 1-'4.

F2.F3と共にDMAバス40経由でメモリコン1〜
〇−ラ30に供給される。なお、ビットFO,F2、F
3の生成についてはこの発明に直接関係しないため説明
を省略する。61は入出力装置(Ilo)からのデータ
を1バイトずつラッチする4バイ1〜のデータレジスタ
(Ilo−DR,)である。
F2. Memory controller 1~ via DMA bus 40 along with F3
○-ra 30 is supplied. In addition, bits FO, F2, F
Since the generation of 3 is not directly related to this invention, its explanation will be omitted. 61 is a 4-by-1 data register (Ilo-DR,) that latches data from the input/output device (Ilo) one byte at a time.

このレジスタ61に対する入出力装置からのデータの入
力ポジションは4バイ1〜カウンタ55の内容で示され
る。
The input position of data from the input/output device to this register 61 is indicated by the contents of 4-by-1 to counter 55.

メモリコントローラ30において、31はメモリア1ノ
イ10からの読出しデータを保持づる4バイ1−のデー
タレジスタ(MRDR)、32はメモリアレイ10への
書込みデータを保持する4バイ]−のデータレジスタ(
MWDR)である。33はD M Aバス40からの書
込みデータを保持する4バイトのデータレジスタ(DW
DR)、34はセレクタ34−0〜34−3からなるセ
レクタ回路である。セレクタ34−+ (i−〇〜3)
はレジスタ31.33のバイl−r i Jからの出力
データのいずれか一方を選択制御信号5EL1に応じて
選択出力する。セレクタ34−1からの出力データはレ
ジスタ32のバイl−r i Jの位置に供給される。
In the memory controller 30, 31 is a 4-by 1- data register (MRDR) that holds data read from the memory array 10, and 32 is a 4-by 1- data register (MRDR) that holds data written to the memory array 10.
MWDR). 33 is a 4-byte data register (DW) that holds write data from the DMA bus 40.
DR), 34 is a selector circuit consisting of selectors 34-0 to 34-3. Selector 34-+ (i-〇~3)
selects and outputs one of the output data from the bits l-r i J of the registers 31 and 33 in accordance with the selection control signal 5EL1. The output data from the selector 34-1 is supplied to the byte l-r i J position of the register 32.

35はDMAバス40からのメモリアドレスを保持する
アドレスレジスタ(DMAR)、36はDMAバス40
からのファンクションピッh FO〜F4を保持するフ
ァンクションレジスタ(FR)、37はデコード回路で
ある。デコード回路37はレジスタ35の内容の下位2
ピッ1−1およびレジスタ36の内容をデコードし、選
択制御信号5ELO〜5EL3を出力すると共に各種メ
モリ制卸信号を出力する。
35 is an address register (DMAR) that holds the memory address from the DMA bus 40; 36 is the DMA bus 40;
A function register (FR) 37 holds the function pins FO to F4, and 37 is a decoding circuit. The decoding circuit 37 decodes the lower two contents of the register 35.
It decodes the contents of the pin 1-1 and the register 36, outputs selection control signals 5ELO to 5EL3, and outputs various memory control signals.

:次にこの発明の一実施例の動作を説明する。入出力装
置からのデータをメモリアレイ10にブロック転送する
場合、ヂトネル装置50ではアドレスロード信号81が
II O11アクテイブとなり、メモリスク−ドアドレ
スの下位2ピツ1〜がアドレスレジスタ(SMAR)5
1および4バイ1ヘカウンタ(48G)55に設定され
る。同様にメモリスク−1〜アドレスの残りピッ1〜が
アドレスカウンタ(MAR)52に設定され、メモリエ
ンドアドレスがアドレスレジスタ(EMA、R) 53
に設定される。このとき、フリップフロップ(F、’F
)57がアドレスロード信号81に応じてセットし、こ
れによりブロック転送の1回目のメモリアクセスである
ことが示される。フリップフロップ57がセリトンてい
る場合、セレクタ59はアドレスレジスタ51からのメ
モリアドレス(下位2ビツト)を選択する。
:Next, the operation of one embodiment of this invention will be explained. When a block of data from an input/output device is transferred to the memory array 10, the address load signal 81 becomes active in the IIO11 in the digital device 50, and the lower two bits 1 to 1 of the memory card address are transferred to the address register (SMAR) 5.
1 and 4 by 1 counter (48G) 55 are set. Similarly, memory risk-1~remaining address bit 1~ are set in the address counter (MAR) 52, and the memory end address is set in the address register (EMA, R) 53.
is set to At this time, the flip-flop (F, 'F
) 57 is set in response to the address load signal 81, thereby indicating that this is the first memory access of block transfer. When the flip-flop 57 is active, the selector 59 selects the memory address (lower two bits) from the address register 51.

入出力装置からのデータは、4バイトカウンタ55の示
すレジスタ(Ilo−DR)61のそのバイト位置にロ
ードされる。この4バイトカウンタ55は1バイ1〜毎
にデータ入力信号83に応じてインク゛t’>ントされ
る。メモリコントローラ30は、4バイトカウンタ55
の内容が’ 11 ”から′″00″に遷移するタイミ
ングでD〜1Aバス40にバスリフニストを出力する。
Data from the input/output device is loaded into the byte position of register (Ilo-DR) 61 indicated by 4-byte counter 55. This 4-byte counter 55 is incremented every 1 byte in response to the data input signal 83. The memory controller 30 has a 4-byte counter 55
The bass refrain is output to the D-1A bus 40 at the timing when the content of ``11'' changes to ``00''.

しかして図示せぬパスコン1〜ローラよりバス使用許可
が与えられると、レジスタ61からの出ノjデ゛−タ、
アドレスカウンタ52からのメモリアドレス(上位30
ピツ1〜)、セレクタ59からのメモリアドース(下位
2ビツト)、およびファンクションビットF OヘF 
4がD M Aバス40に出力される。ここで、第3図
に示1ようにデータA〜Zのブロック転送の場合(但し
メモリエンドアドレスが4n+1、メモリエンドアドレ
スが4n′+2)を考えると、4バイ1〜カウンタ55
の初期設定内容は’01”である。この場合、まず先頭
データAがレジスタ61のへイl−[1Jの位置にロー
ドされ、続いてデータ81が同レジスタ61のバイトr
2J、r3Jの位置に順にロードされる。そして、デー
タCのローディングに伴うデータ入力信号83により、
4バイトカウンタ55がインクリメントされ、その内容
が“’ii”からパOD IIに遷移する。しだがって
1回目のメモリアクセスにおいてチャネル装@50から
DMA/\ス40に出力されるデータは[*ABCJと
なる。チャネル装置50からDMAバス40へのデータ
出力が終了すると、アクセスエンド信号82が“′1゛
′アクティ/どなる。これによりアドレスカウンタ52
は+1゛され、フリップ70ツブ57はリセツ;−する
However, when permission to use the bus is granted from the bypass capacitors 1 to rollers (not shown), the output node j data from the register 61,
Memory address from address counter 52 (upper 30
memory address (lower 2 bits) from selector 59, and function bit F
4 is output to the DMA bus 40. Here, if we consider the case of block transfer of data A to Z as shown in FIG.
The initial setting content is '01'. In this case, the first data A is loaded into the register 61 at the position of file l-[1J, and then the data 81 is loaded into the byte r of the register 61.
Loaded into positions 2J and r3J in order. Then, due to the data input signal 83 accompanying the loading of data C,
The 4-byte counter 55 is incremented, and its contents transition from "'ii" to PAOD II. Therefore, the data output from the channel device @50 to the DMA/@ bus 40 in the first memory access becomes [*ABCJ. When the data output from the channel device 50 to the DMA bus 40 is completed, the access end signal 82 becomes "'1" active/roaring.
is increased by +1, and the flip 70 knob 57 is reset; -.

ヂ「ネル装置50からDMAバス40に出力されたデー
タrHABcJはメモリコン1−ロー530内のレジス
タ(DWDR)33に保持され、同じくメモリアドレス
(32ピッl−)はレジスタ(DMAR)35に保持さ
れ、ファンクションビットFO〜F4はレジスタ(FL
J)36に保持される。デコード回路37は、レジスタ
35に保持されたメモリアドレスの下位2ピツ1へとレ
ジスタ36に保持されたファンクションヒツトF O−
F4をデコードする。入出力装置からメモリへのブロッ
ク転送の場合、特にピッt−F1.F2が意味をもつ。
The data rHABcJ output from the channel device 50 to the DMA bus 40 is held in the register (DWDR) 33 in the memory controller 1-row 530, and the memory address (32 pins) is held in the register (DMAR) 35. and function bits FO to F4 are stored in the register (FL
J) held at 36. The decoding circuit 37 transfers the function hit FO- held in the register 36 to the lower two bits 1 of the memory address held in the register 35.
Decode F4. For block transfers from I/O devices to memory, especially pit t-F1. F2 has meaning.

この場合、FO。In this case, F.O.

F3は’O”、F2は1″である。このF2Iま鷹モリ
アクセフモーkを示すもので、この例のように“1パの
場合にメモリライトアクセスを示し、“0′′の場合に
メモリリードアクセスを示す。なお、FO,F3につい
ては、この発明に直接関係しないため説明を省略する。
F3 is 'O'' and F2 is 1''. This indicates the F2I access mode k, and as in this example, a value of "1" indicates a memory write access, and a value of "0'' indicates a memory read access. Note that the explanation of FO and F3 will be omitted because they are not directly related to this invention.

ブロック転送の1回目のメモリアクセスでは、FO−F
4は01100″であり、ブロック転送開始特殊アクセ
スモードであることを示す。この場合、デコード回路3
7は、リード・モディファイ・ライ1−のためのメモリ
制御信号および選択制御信号5ELO−8EL3を出力
する。信号5ELO〜5EL3tまメモリアドレスの下
位2ビツトによって異なる。この下位2ビツトが’ 0
1 ”で、且つブロック転送1始特殊アクセスモードで
あるこの例で1よ、5ELOは“’O”、5EL1〜5
EL3tま111 !1となる。
In the first memory access of block transfer, FO-F
4 is 01100'' and indicates block transfer start special access mode. In this case, decoding circuit 3
7 outputs memory control signals and selection control signals 5ELO-8EL3 for read-modify-write 1-. Signals 5ELO to 5EL3t differ depending on the lower two bits of the memory address. The lower 2 bits are '0'
In this example, which is the block transfer first special access mode, 5ELO is "'O", 5EL1~5
EL3tma111! It becomes 1.

リード・モディファイ・ライトで(よ、まずメモ1ノア
ドレスの下位2ビツトを除く残りビット(30ビツト)
で指定されるメモリアレイ10のその領域から1ワード
(4バイト)が読出される。この読出しデータはレジス
タ31に保持される。し力\してレジスタ31に保持さ
れたメモリアレイ10からの読出しデータと、レジスタ
33に保持されているチャネル装置50(入出力装置)
からのデータとのバッキングがセレクタ回路34(内の
セレクタ34−0〜34−3)により行なわれる。この
例では、バイト「0」については論理II OI+の信
号5ELOに応じてレジスタ31からのデータaが選択
され、バイト「1」〜バイト「3」については論理11
1 I+の信号5EL1〜5EL3に応じてレジスタ3
3からのデータA−Cが選択される。このようにしてセ
レクタ回路34から選択出力される4バイ1−のデータ
(a。
Read/modify/write (First, write the remaining bits (30 bits) excluding the lower 2 bits of the address of memo 1.
One word (4 bytes) is read from that area of memory array 10 specified by . This read data is held in the register 31. Read data from the memory array 10 held in the register 31 and channel device 50 (input/output device) held in the register 33
Backing with the data from is performed by the selector circuit 34 (selectors 34-0 to 34-3 within). In this example, data a from the register 31 is selected for byte "0" in response to logic II OI+ signal 5ELO, and data a from register 31 is selected for byte "1" to byte "3".
1 Register 3 according to I+ signals 5EL1 to 5EL3
Data A-C from 3 is selected. In this way, the 4-by-1- data (a.

A、B、C)はレジスタ32を介してメモリアレイ10
に出力され、前記領域に書込まれる。即ち、ブロック転
送の1回目のメモリアクセスの場合には、メモリアドレ
ス(メモリスタートアドレス4n+1)の示すバイト位
置からそのワードの最終バイトまでの部分書込みが行な
われる。これがブロック転送開始特殊アクセスモードで
の動作である。
A, B, C) are connected to the memory array 10 via the register 32.
and written to the area. That is, in the case of the first memory access of block transfer, partial writing is performed from the byte position indicated by the memory address (memory start address 4n+1) to the final byte of the word. This is the operation in block transfer start special access mode.

ブロック転送の2回目以降のメモリアクセスでは、フリ
ップ70ツブ57がリセットしているため(フリップフ
ロップ58がセットしない限り)ファンクションビット
F1は0″となっている。即ち、2回目以降のメモリア
クセス(最終のメモリアクセスを除く)では、ビットF
O〜F4は“00100 ”となり、通常メモリライト
モードが指定される。このモードでは、チャネル装置5
oにおいては、レジスタ61に4バイトのデータ(例え
ば2回目であればデータD、E、F、G、3回目であれ
ばデータH,1,J、にンがロードされる毎に、即ち4
バイトカウンタ55が” 11 ”がら″00″に遷移
する毎にバスリクエストが出される。
In the second and subsequent memory accesses of block transfer, the flip 70 knob 57 is reset (unless the flip-flop 58 is set), so the function bit F1 is 0''.In other words, in the second and subsequent memory accesses ( (except for the final memory access), bit F
O to F4 are "00100", and the normal memory write mode is designated. In this mode, channel device 5
o, each time 4 bytes of data (for example, data D, E, F, G for the second time, data H, 1, J for the third time,
A bus request is issued every time the byte counter 55 changes from "11" to "00".

またセレクタ59は、フリップフロップ57がリセット
していることから4バイトカウンタ55がらの出力デー
タを選択する。このためフリップ70ツブ57がリセッ
トしている場合(通常メモリライトモード、更には後述
するブロック転送終了特殊アクセスモードの場合)、チ
ャネル装@5oがらDMAバス40経由でメモリコント
ローラ3oに出力されるメモリアドレスの下位2ビツト
は’ o o ”となる。
Furthermore, since the flip-flop 57 has been reset, the selector 59 selects the output data from the 4-byte counter 55. Therefore, when the flip 70 knob 57 is reset (normal memory write mode, and furthermore in the block transfer end special access mode described later), the memory is output from the channel device @ 5o to the memory controller 3o via the DMA bus 40. The lower two bits of the address are 'o o'.

そして、メモリコントローラ3oにおいては、通常メモ
リライトモードの場合、チャネル装置5oがらの4バイ
トデータをそのままメモリアレイ10に書込むフルワー
ドライ1〜が行なわれる。
In the memory controller 3o, in the normal memory write mode, full word dry 1 to write the 4-byte data from the channel device 5o as is into the memory array 10 is performed.

入出力装置からメモリアレイ10への転送が進み、アド
レスカウンタ52の内容がアドレスレジスタ53に保持
されているメモリエンドアドレスの下位2ビツトを除く
残すビッ1−に一致したものとする。
It is assumed that the transfer from the input/output device to the memory array 10 progresses and the contents of the address counter 52 match the remaining bit 1-, excluding the lower two bits, of the memory end address held in the address register 53.

この場合、比較器54は一致検出信号を出力する。In this case, the comparator 54 outputs a coincidence detection signal.

フリップフロップ58は比較器54からの一致検出信号
に応じてセットする。これによりブロック転送の最後の
メモリアクセスであることが示される。
Flip-flop 58 is set in response to the match detection signal from comparator 54. This indicates that this is the last memory access of the block transfer.

フリップフロップ58がセットすると、ファンクション
ピッhF1.F4が1゛′となる。したがってビットF
O〜[4は’01101”となり、ブロック転送終了特
殊アクセスモードが指定される。
When the flip-flop 58 is set, the function pitch hF1. F4 becomes 1''. Therefore bit F
O~[4 becomes '01101', and the block transfer end special access mode is designated.

一方、入出力装置からのデータは、4バイ1〜カウンタ
55の示すレジスタ61のそのバイI−位置にロードさ
れる。4バイ1〜カウンタ55は1バイト毎にデータ入
力信号83に応じてインクリメントされる。
On the other hand, data from the input/output device is loaded into the bye I position of register 61 indicated by 4by1 to counter 55. The 4-by-1 counter 55 is incremented every byte in response to the data input signal 83.

このようにしてレジスタ61のバイト位置「O」。In this way, byte position "O" of register 61.

[11、r’l) l L−;−タx、Y、 ;’y+
<o−トサレる゛と゛、アドレスカウンタ52からの出
力データとセレクタ59からの選択出力データ(4バイ
1−カウンタ55からの出力データ)とで示されるメモ
リアドレスが、アドレスレジスタ53に保持され°Cい
るメモリエンドアドレスに一致するようになる。この 
1、。
[11, r'l) l L-;-tax, Y, ;'y+
The memory address indicated by the output data from the address counter 52 and the selected output data from the selector 59 (the output data from the 4-by-1 counter 55) is held in the address register 53. It will match the memory end address of C. this
1.

一致は図示せぬ比較器によって検出され、これまでと異
なり、この一致検出によりバスリクエストが出力される
。したがってブロック転送の最後のメモリアクセスにお
いてチャネル装置50からDMAバス40経出でメモリ
コン1−〇−ラ30に転送されるデータはrXYZlと
なる。
A match is detected by a comparator (not shown), and unlike before, a bus request is output as a result of this match detection. Therefore, in the last memory access of the block transfer, the data transferred from the channel device 50 to the memory controller 1-0-30 via the DMA bus 40 is rXYZl.

メモリコントローラ30において、チャネル装置50か
らのデータrXYZlはレジスタ33に保持される。ま
た、(ヂャネル装@50内の)アドレスカウンタ52か
らの出力データとセレクタ5つからの選択出力データ(
4バイトカウンタ55からの出力データ)とで示される
メモリアドレス(この例ではメモリエンドアドレス)は
レジスタ35に保持され、ブロック転送an特殊アクセ
スモードを示す77’ンクションビ−Jkl”n−F4
 (”01101°。
In the memory controller 30, data rXYZl from the channel device 50 is held in the register 33. In addition, the output data from the address counter 52 (in the channel @ 50) and the selected output data from the five selectors (
The memory address (in this example, the memory end address) indicated by the output data from the 4-byte counter 55 is held in the register 35, and the memory address (in this example, the memory end address) indicated by
("01101°.

)ifレジスタ36に保持される。この場合、デコード
回路37は、リード・モディファイ・ライトのためのメ
モリ制御信号および選択制御信号5ELO〜S E L
 3を出力する。信号5ELO”5EL3は、モードお
よびメモリアドレスの下位2ピッ!−によって異なる。
) is held in the if register 36. In this case, the decoding circuit 37 outputs memory control signals and selection control signals 5ELO to SEL for read/modify/write.
Outputs 3. The signal 5ELO"5EL3 differs depending on the mode and the lower two pips of the memory address.

この例では、5ELO〜5EL2はパ1°’、5EL3
は” o ”どなる。リード・王ディファイ・ライ1〜
では、まずメモリアドレスの下位2ピツ1へを除く残り
ビット(30ピツ1〜)で指定されるメモリアレイ10
のその領域から1ワード(4バイ1〜)が読出される。
In this example, 5ELO to 5EL2 are PA1°', 5EL3
"o" roars. Lead King Defy Lie 1~
First, the memory array 10 specified by the remaining bits (30 bits 1~) excluding the lower two bits 1 of the memory address.
One word (4 by 1~) is read from that area.

この読出しデータはレジスタ31に保持される。しかし
てレジスタ31に保持されたメモリアレイ10からの読
出しデータと、レジスタ33に保持されているヂャネル
装置50(入出力装置)からのデータとのバッキングが
セレクタ回路34(内のセレクタ34−0〜34−3)
により行なわれる。この例では、バーfl−rOJ〜バ
イト「2」については論理II 1 IIの信号SEL
○〜5EL2に応じてレジスタ33からのデータX〜Z
が選択され、バイト「3」についてけ陥1g3 ” Q
 ”の信号5EL3に応じてレジスタ31からのデータ
Zが選択される。このようにしてセレクタ回路34から
選択出力される4バイ1−のデータ(X、Y。
This read data is held in the register 31. In this way, the backing of the read data from the memory array 10 held in the register 31 and the data from the channel device 50 (input/output device) held in the register 33 is performed by the selector circuit 34 (selectors 34-0 to 34-0 in the register 34). 34-3)
This is done by In this example, for fl-rOJ ~ byte "2", the signal SEL of logic II 1 II
○~5 Data X~Z from register 33 according to EL2
is selected, and error 1g3” Q
Data Z from the register 31 is selected in response to the signal 5EL3 of "4 by 1- data (X, Y.

7、z)はレジスタ32を介してメモリアレイ10に出
力され、前記領域に書込まれる。即ち、ブロック転送の
最後のメモリアクセスの場合には、そのワードのOバイ
ト目からメモリアドレス(メモリエンドアドレス4 n
 ′+2 )の示すパイ1−[fまでの部分書込みが行
なわれる。これがブロック転送最終特殊アクセスモード
での動作である。
7, z) is output to the memory array 10 via the register 32 and written into the area. That is, in the case of the last memory access of a block transfer, the memory address (memory end address 4 n
Partial writing to pi1-[f indicated by '+2) is performed. This is the operation in block transfer final special access mode.

[発明の効果] 以上詳述したようにこの発明によれは、ブロック転送開
始・終了時の部分書込み処理の簡略化が図れ、しかもブ
ロック転送開始・終了時のメモリアクセス処理がそれぞ
れ1回ですみ、ブロック転送の高速化も図れる。
[Effects of the Invention] As detailed above, according to the present invention, partial write processing at the start and end of block transfer can be simplified, and moreover, memory access processing at the start and end of block transfer can be performed only once. , it is also possible to speed up block transfer.

【図面の簡単な説明】[Brief explanation of the drawing]

M1図は従来のブロック転送を説明する図、第2図はこ
の発明の一実施例に係る情報処理装置のブロック構成図
、第3図は第2図の構成におけるブロック転送を説明す
る図である。 10・・・メモリアレイ、30・・・メモリコントロー
ラ、34・・・セレクタ回路、37・・・デコード回路
、50 用ヂャネル装置、51・・・メモリスタートア
ドレスレジスタ(SMAR)、52・・・アドレスカウ
ンタ(MAR>53・・・メモリエンドアドレスレジス
タ(EMAR)54・・・−比較器54.55・・・4
バイ1〜カウンタ(4BC)57、58・・・フリップ
フロップ(F/ F ) 、59.34−0〜34−3
・・・セレクタ。 出願人代理人 弁理士 鈴江武彦 第1図 第2図 第3図
FIG. M1 is a diagram for explaining conventional block transfer, FIG. 2 is a block configuration diagram of an information processing device according to an embodiment of the present invention, and FIG. 3 is a diagram for explaining block transfer in the configuration of FIG. 2. . DESCRIPTION OF SYMBOLS 10...Memory array, 30...Memory controller, 34...Selector circuit, 37...Decode circuit, 50 Channel device for 51...Memory start address register (SMAR), 52...Address Counter (MAR>53...Memory end address register (EMAR) 54...-Comparator 54.55...4
Buy 1~Counter (4BC) 57, 58...Flip-flop (F/F), 59.34-0~34-3
···selector. Applicant's agent Patent attorney Takehiko Suzue Figure 1 Figure 2 Figure 3

Claims (1)

【特許請求の範囲】 ブロック転送のメモリスタートアドレスの下位2ピツ1
〜がメモリアドレスロード信号に応じて設定される第ル
ジスタ、上記メモリスタートアドレスの残りビットが上
記メモリアドレスロード信号に応じて設定されると共に
、メモリアクセスエンド信号に応じてインクリメンI〜
するアドレスカウンタ、上記メモリスタートアドレスの
下位2ビツトが上記メモリアドレスロード信号に応じて
設定されると共に、1バイト毎にインクリメン1−する
2進2ピツ1〜カウンタ、上記メモリアドレスロード信
号に応じてセットし、ブロック転送の1回目のメモリア
クセスであることを検出する第1フリツプフロツプ、こ
の第1フリツプフロツプの状態に応じて上記第ルジスタ
からの出力データまたは上記2進2ビツトカウンタから
の出力データを選択するセレクタ、ブロック転送のメモ
リエンドアドレスを保持する第2レジスタ、この第2レ
ジスタに保持されたメモリエンドアドレスの下位2ビツ
トを除く残りビットと上記アドレスカウンタの内容とを
比較し一致を検出する比較器、およびこの比較器の比較
結果に応じてセットし、ブロック転送の最後のメモリア
クセスであることを検出する第2フリツプフロツプとを
備えたチャネル装置と、 上記第1および第27リツプフロツブの各状態、並びに
上記アドレスカウンタおよびセレクタからの各出力デー
タの連結情報で示されるメモリアドレスに従い、上記チ
ャネル装置からブロック転送されるデータをメモリに書
込むメモリコントローラとを具備し、 ブロック転送の1回目のメモリアクセスの場合には上記
メモリアドレスの示すパイ1〜位置からそのワードの最
終バイトまでを部分書込みを行ない、ブロック転送の最
後のメモリアクセスである場合には、そのワードの0バ
イト目から上記メモリアドレスの示すバイト位置までを
部分書込みを行なうごとを特徴とする部分書込み制御方
式。
[Claims] Lower 2 bits 1 of memory start address for block transfer
~ is set in response to the memory address load signal, the remaining bits of the memory start address are set in response to the memory address load signal, and increment I~ is set in response to the memory access end signal.
An address counter in which the lower two bits of the memory start address are set in response to the memory address load signal, and a binary 2-bit 1-counter that increments by 1 for each byte, in response to the memory address load signal. A first flip-flop that detects the first memory access of a block transfer, and selects the output data from the first register or the binary 2-bit counter according to the state of the first flip-flop. a selector that holds the memory end address for block transfer, a comparison that compares the remaining bits of the memory end address held in this second register, excluding the lower two bits, with the contents of the address counter and detects a match. a second flip-flop that is set according to the comparison result of the comparator to detect that it is the last memory access of a block transfer; and each state of the first and 27th flip-flops; and a memory controller that writes the data to be block transferred from the channel device to the memory according to the memory address indicated by the concatenation information of each output data from the address counter and the selector, and the first memory access of the block transfer. In this case, a partial write is performed from the pie 1 position indicated by the above memory address to the last byte of the word, and if it is the last memory access of a block transfer, the data is written from the 0th byte of the word to the last byte of the word. A partial write control method that performs partial writing every time up to the indicated byte position.
JP3755884A 1984-02-29 1984-02-29 Partial writing control system Pending JPS60181851A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3755884A JPS60181851A (en) 1984-02-29 1984-02-29 Partial writing control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3755884A JPS60181851A (en) 1984-02-29 1984-02-29 Partial writing control system

Publications (1)

Publication Number Publication Date
JPS60181851A true JPS60181851A (en) 1985-09-17

Family

ID=12500843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3755884A Pending JPS60181851A (en) 1984-02-29 1984-02-29 Partial writing control system

Country Status (1)

Country Link
JP (1) JPS60181851A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63196967A (en) * 1987-02-10 1988-08-15 Fujitsu Ltd Data transfer control equipment
JPH02159661A (en) * 1988-12-13 1990-06-19 Fujitsu Ltd Data transfer processing system
US9726619B2 (en) 2005-10-25 2017-08-08 Rapiscan Systems, Inc. Optimization of the source firing pattern for X-ray scanning systems
US10483077B2 (en) 2003-04-25 2019-11-19 Rapiscan Systems, Inc. X-ray sources having reduced electron scattering
US10901112B2 (en) 2003-04-25 2021-01-26 Rapiscan Systems, Inc. X-ray scanning system with stationary x-ray sources
US10976271B2 (en) 2005-12-16 2021-04-13 Rapiscan Systems, Inc. Stationary tomographic X-ray imaging systems for automatically sorting objects based on generated tomographic images

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63196967A (en) * 1987-02-10 1988-08-15 Fujitsu Ltd Data transfer control equipment
JPH02159661A (en) * 1988-12-13 1990-06-19 Fujitsu Ltd Data transfer processing system
US10483077B2 (en) 2003-04-25 2019-11-19 Rapiscan Systems, Inc. X-ray sources having reduced electron scattering
US10901112B2 (en) 2003-04-25 2021-01-26 Rapiscan Systems, Inc. X-ray scanning system with stationary x-ray sources
US11796711B2 (en) 2003-04-25 2023-10-24 Rapiscan Systems, Inc. Modular CT scanning system
US9726619B2 (en) 2005-10-25 2017-08-08 Rapiscan Systems, Inc. Optimization of the source firing pattern for X-ray scanning systems
US10976271B2 (en) 2005-12-16 2021-04-13 Rapiscan Systems, Inc. Stationary tomographic X-ray imaging systems for automatically sorting objects based on generated tomographic images

Similar Documents

Publication Publication Date Title
US6789179B2 (en) Method and system for fast data access using a memory array
US3787815A (en) Apparatus for the detection and correction of errors for a rotational storage device
JPS60181851A (en) Partial writing control system
US4641278A (en) Memory device with a register interchange function
US4171765A (en) Error detection system
JP4103452B2 (en) Data input control device for serial EEPROM
JP2600376B2 (en) Memory controller
JPS5987562A (en) Debugging device
JP3737144B2 (en) Interrupt request circuit and interrupt request processing method
JP2546002B2 (en) Parity circuit
JPS5936853A (en) Operation processor
JPS647520Y2 (en)
JPH0330899B2 (en)
Lienard A Camac data bank interface for the new LINAC process control 523006LE
JPS6235703B2 (en)
JPS59176851A (en) Data storing system
JPS61288243A (en) Processing system for compare and swap instruction
JPS6041151A (en) Correcting system of memory error
JPH0455962A (en) Memory card
JPH0675902A (en) Dma transfer circuit
JPH0332823B2 (en)
JPS63163542A (en) Test circuit
JPS60230261A (en) Initializing control system in multi-processor system
JPH0542700B2 (en)
JPS6144355B2 (en)