JP3055903B2 - Data reading device - Google Patents

Data reading device

Info

Publication number
JP3055903B2
JP3055903B2 JP1025672A JP2567289A JP3055903B2 JP 3055903 B2 JP3055903 B2 JP 3055903B2 JP 1025672 A JP1025672 A JP 1025672A JP 2567289 A JP2567289 A JP 2567289A JP 3055903 B2 JP3055903 B2 JP 3055903B2
Authority
JP
Japan
Prior art keywords
data
register
read
selector
address
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 - Fee Related
Application number
JP1025672A
Other languages
Japanese (ja)
Other versions
JPH02257215A (en
Inventor
直道 米澤
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 Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP1025672A priority Critical patent/JP3055903B2/en
Publication of JPH02257215A publication Critical patent/JPH02257215A/en
Application granted granted Critical
Publication of JP3055903B2 publication Critical patent/JP3055903B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、アドレスを指示する事により、1つまたは
複数のレジスタを一定ビット幅で読出す装置に関し、特
に、タイマ値などの様に、読み出し動作とは非同期に変
化する値を複数回に分けて読出す装置に関する。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a device for reading one or a plurality of registers at a constant bit width by designating an address, and particularly, for reading a timer value and the like. The present invention relates to a device for reading a value that changes asynchronously from a read operation in a plurality of times.

[従来の技術] タイマ値の様に、その値の読み出しを行うタイミング
とは非同期に更新されるデータを、部分的に複数回に分
けて読み出す場合、複数回に分けて読むために、データ
を部分的に読んでいくうちに更新が生じ、正確な値が読
めないという問題がある。
[Prior Art] When data that is updated asynchronously with the timing at which the value is read, such as a timer value, is read in a plurality of times, the data is read in several times. There is a problem that an update occurs during partial reading, and an accurate value cannot be read.

ここで、その一例を第7図を使って説明する。第7図
は、4ケタの値を1ケタずつ4回に分けて読出す場合の
例である。
Here, an example will be described with reference to FIG. FIG. 7 shows an example in which a 4-digit value is read out four times, one digit at a time.

まず、状態1において、最下位のケタの“9"を読み込
む。次に状態2において、下から2ケタ目の“9"を読み
込む。ここで、読み出すデータレジスタに対し更新指示
が起きると、値が1インクリメントされる。それによ
り、この時、データレジスタの値は、“8999"から“900
0"へ変化する。状態3において、下から3ケタ目の値を
読み込む。この時、値はすでに“9000"に変っているた
め、読出した値は“0"となる。状態4において、最上位
のケタの“9"を読み込む。ここで本来、読むべき値は、
“8999"か“9000"になるべきものが、実際に読み込んだ
値が“9099"という全くでたらめな値になってしまう。
First, in state 1, the least significant digit “9” is read. Next, in state 2, the second digit "9" from the bottom is read. Here, when an update instruction is issued to the data register to be read, the value is incremented by one. At this time, the value of the data register changes from “8999” to “900”.
0 ". In state 3, the third digit from the bottom is read. At this time, since the value has already been changed to" 9000 ", the read value becomes" 0. " Read the upper digit “9.” Here, the value to be read is originally
What should be "8999" or "9000", but the value actually read becomes "9099" which is totally random.

従来、この問題を解決する方法として、次の2方法が
あった。
Conventionally, there are the following two methods for solving this problem.

1つ目の方法は、ソフト的に解決する方法である。こ
れは、同じデータレジスタを2回読み、2回とも同じ値
であれば、その値が正しい値であるとする方法である。
The first method is to solve the problem in software. In this method, the same data register is read twice, and if the value is the same both times, the value is determined to be a correct value.

2つ目の方法は、第8図に示す方法である。 The second method is the method shown in FIG.

まず、読み出したいデータレジスタがデータレジスタ
1、データレジスタ2、データレジスタ3、データレジ
スタ4の4つであったとする。この4つのデータレジス
タは、読み出し動作とは独立に更新が行われる同一ビッ
ト幅のデータであったとする。ここで、読出し側はこれ
を4ケタに分けて読み出したいとする。
First, it is assumed that there are four data registers to be read: data register 1, data register 2, data register 3, and data register 4. It is assumed that these four data registers have the same bit width and are updated independently of the read operation. Here, it is assumed that the reading side wants to read the data in four digits.

まず、読み出したいデータレジスタの値をレジスタセ
レクタ6′が選択する様に、アドレスレジスタ5を設定
する。そののち、レジスタセレクタ6′の出力を読出し
バッファ7′で受取る。この時、読出しバッファ7′に
は、必ず正確な値が設定される。そして、この読出しバ
ッファ7′の値を、1ケタずつケタレジスタ8′で指定
して読み出していく取により、正確な値を読む事ができ
る。
First, the address register 5 is set so that the value of the data register to be read is selected by the register selector 6 '. After that, the output of the register selector 6 'is received by the read buffer 7'. At this time, an accurate value is always set in the read buffer 7 '. Then, by reading the value of the read buffer 7 'by specifying the digit register 8' one digit at a time, an accurate value can be read.

[発明が解決しようとする課題] 上記した様にタイマ値の様な読出し動作と非同期に値
が変化する様なデータを保持している1つまたは複数の
レジスタの値を、部分的に複数回に分けて正確な値を読
出す方法として、従来は2つの方法があった。
[Problems to be Solved by the Invention] As described above, the value of one or a plurality of registers holding data whose value changes asynchronously with a read operation such as a timer value is partially changed a plurality of times. Conventionally, there are two methods for reading an accurate value separately.

1つ目の方法は、上述したように、同じデータレジス
タを2回読み出し、その値が一致していた時、正確な値
であると判断する方法である。この方法では、読出しに
手間がかかると共に、読出しのスピードに対し、データ
レジスタの更新がある程度以上速くなると、何度読出し
ても値が一致しなくなるという欠点がある。
The first method is, as described above, a method in which the same data register is read twice, and when the values match, it is determined that the value is an accurate value. This method has the disadvantages that it takes time and effort to read, and that if the data register is updated more than a certain speed with respect to the reading speed, the values will not match no matter how many times the data is read.

又、2つ目の方法は、上述したように、一度読出しバ
ッファにその時のデータを保持した上で、部分的に読み
出す方法である。この場合、まず、読出しバッファに読
んだ上で、部分的に読み出しを行うという、2つの処理
を行わなくてはならず、読出しバッファを常に意識しな
くてはならないという欠点があった。
The second method is, as described above, a method in which data at that time is once stored in a read buffer and then partially read. In this case, there is a drawback in that two processes of first reading the data into the read buffer and then partially reading the data must be performed, and the read buffer must always be considered.

[課題を解決するための手段] 本発明のデータ読出し装置は、読み出しと更新とが独
立したタイミングで行われるデータを保持する少なくと
も1つのデータレジスタと、このデータレジスタに保持
された前記データが部分的に複数回に分けて読み出され
るときの読み出される途中のデータを保持する中間デー
タ保持部と、前記データレジスタおよび前記中間データ
保持部とを一定ビット幅に区切り、アドレス割付けを行
い、その割付けたアドレスを指示するアドレスレジスタ
と、このアドレスレジスタからのアドレスにより前記デ
ータレジスタおよび前記中間データ保持部に保持された
前記データを選択して出力すると同時に、前記中間デー
タ保持部に対し選択の途中結果を出力するデータ選択部
とを含む。
[Means for Solving the Problems] A data reading device according to the present invention comprises at least one data register for holding data for which reading and updating are performed at independent timings, and wherein the data held in the data register is partially stored. The intermediate data holding unit for holding data in the middle of being read when the data is read a plurality of times, and the data register and the intermediate data holding unit are divided into a fixed bit width, and the address is assigned. An address register designating an address; selecting and outputting the data held in the data register and the intermediate data holding unit according to an address from the address register; and simultaneously outputting the intermediate result of the selection to the intermediate data holding unit. And a data selection unit to be output.

また、本発明の他のデータ読出し装置は、前記アドレ
スレジスタからのアドレスにより、前記中間データ保持
部に対して前記データ選択部の選択途中の少なくとも1
つの前記データを読み込むことを指示する読み込み指示
部をさらに含む。
Further, another data reading device of the present invention is configured such that at least one of the data selectors being selected by the intermediate data holding unit is selected by the address from the address register.
And a read instructing unit that instructs to read one of the data.

また、本発明の他のデータ読出し装置は、前記中間デ
ータ保持部に対して前記データ選択部の選択途中の少な
くとも1つのデータを読み込むことを指示する読み込み
指示フラグをさらに含む。
Further, another data reading device of the present invention further includes a read instruction flag for instructing the intermediate data holding unit to read at least one data being selected by the data selection unit.

[実施例] 次に、本発明について図面を参照して説明する。Example Next, the present invention will be described with reference to the drawings.

第1図は本発明の第1の実施例によるデータ読出し装
置の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a data reading device according to a first embodiment of the present invention.

第1図において、データレジスタ1、データレジスタ
2、データレジスタ3、データレジスタ4は、タイマ値
の様に読出すタイミングとは非同期に変更されるデータ
を保持している。アドレスレジスタ5は、後述するデー
タ選択部6に対し、読出すデータのアドレスを指示す
る。
In FIG. 1, a data register 1, a data register 2, a data register 3, and a data register 4 hold data, such as a timer value, which is changed asynchronously with the read timing. The address register 5 instructs a data selection unit 6 described later on the address of the data to be read.

データ選択部6は、データレジスタ1、データレジス
タ2、データレジスタ3、データレジスタ4を4ケタで
区切り、それぞれの中の1ケタかまたは後述する中間デ
ータ保持部7の持つレジスタ13、レジスタ14、レジスタ
15の中の1つを選択し出力する。
The data selection unit 6 divides the data register 1, the data register 2, the data register 3, and the data register 4 by four digits, and stores one digit in each of them or the register 13, the register 14, and the register
Select one of 15 and output.

データ選択部6において、セレクタ8は、データレジ
スタ1、データレジスタ2、データレジスタ3、データ
レジスタ4の最上位ケタの1つを選択する。セレクタ9
は、データレジスタ1、データレジスタ2、データレジ
スタ3、データレジスタ4の上から2ケタ目か、中間デ
ータ保持部7の持つレジスタ13を選択する。セレクタ10
は、データレジスタ1、データレジスタ2、データレジ
スタ3、データレジスタ4の上から3ケタ目か、中間デ
ータ保持部7のレジスタ14の中の1つを選択する。セレ
クタ11は、データレジスタ1、データレジスタ2、デー
タレジスタ3、データレジスタ4の最下位ケタか、中間
データ保持部7のレジスタ15の中の1つを選択する。セ
レクタ12は、セレクタ8、セレクタ9、セレクタ10、セ
レクタ11の中の1つを選択し、これを出力し、この出力
をデータ選択部6の出力とする。
In the data selection unit 6, the selector 8 selects one of the most significant digits of the data register 1, the data register 2, the data register 3, and the data register 4. Selector 9
Selects the second digit from the top of the data register 1, the data register 2, the data register 3, and the data register 4, or the register 13 of the intermediate data holding unit 7. Selector 10
Selects the third digit from the top of the data register 1, the data register 2, the data register 3, and the data register 4, or one of the registers 14 of the intermediate data holding unit 7. The selector 11 selects one of the least significant digits of the data register 1, the data register 2, the data register 3, and the data register 4 or one of the registers 15 of the intermediate data holding unit 7. The selector 12 selects one of the selector 8, the selector 9, the selector 10, and the selector 11, outputs the selected one, and uses this output as the output of the data selector 6.

中間データ保持部7は、データ選択部6の選択途中結
果として、データ選択部6の中のセレクタ9、セレクタ
10、セレクタ11の出力を保持する。
The intermediate data holding unit 7 outputs the selector 9 in the data selection unit 6 and the selector 9
10. Hold the output of the selector 11.

中間データ保持部7において、レジスタ13はデータ選
択部6のセレクタ9の出力を、レジスタ14はセレクタ10
の出力を、レジスタ15はセレクタ11の出力を保持する。
In the intermediate data holding unit 7, the register 13 stores the output of the selector 9 of the data selection unit 6, and the register 14 stores the output of the selector 10.
And the register 15 holds the output of the selector 11.

第1図において、データ選択部6のセレクタ8、セレ
クタ9、セレクタ10、セレクタ11の出力とアドレスレジ
スタ5との関係を第4図の様にする。
In FIG. 1, the relationship between the outputs of the selector 8, selector 9, selector 10, and selector 11 of the data selector 6 and the address register 5 is as shown in FIG.

ここで、第4図において、カッコ内の値は、上から何
ケタ目かを示し、例えばレジスタ1(2)は、データレ
ジスタ1の上から2ケタ目を意味する。またレジスタ1
3、レジスタ14、レジスタ15は、データレジスタ1、デ
ータレジスタ2、データレジスタ3、データレジスタ4
の4分割したビット幅と同じビット幅を持つ。また、ア
ドレスレジスタ5は5ビットから成る。
Here, in FIG. 4, the value in parentheses indicates the number of the digit from the top. For example, the register 1 (2) means the second digit from the top of the data register 1. Also register 1
3, register 14, register 15 are data register 1, data register 2, data register 3, data register 4.
Has the same bit width as the bit width divided into four. The address register 5 has 5 bits.

又、セレクタ12の出力とアドレスレジスタ5との関係
を第5図に示す。
FIG. 5 shows the relationship between the output of the selector 12 and the address register 5.

ここで、データレジスタ2に保持されたデータを読む
場合について考える。通常は、アドレスレジスタ5の値
を“00100"→“00101"→“00110"→“00111"の順に読む
事によりデータレジスタ2の値を上から1ケタずつ読出
す事ができる。
Here, a case where the data held in the data register 2 is read will be considered. Normally, by reading the value of the address register 5 in the order of “00100” → “00101” → “00110” → “00111”, the value of the data register 2 can be read one digit at a time from the top.

ところがこの場合、データレジスタ2の値が読出しの
途中で更新されると、誤った値が読出される事になる。
However, in this case, if the value of the data register 2 is updated during reading, an erroneous value will be read.

そこで、まず最上位のケタを読出すため、アドレスレ
ジスタ5に“00100"をセットする。
Therefore, first, "00100" is set in the address register 5 in order to read the most significant digit.

この場合、セレクタ8、セレクタ9、セレクタ10、セ
レクタ11の出力は、それぞれデータレジスタ2の上位か
ら1ケタ目、2ケタ目、3ケタ目、4ケタ目となる。セ
レクタ12の出力は、第5図より、セレクタ8の出力、つ
まり、データレジスタ2の最上位ケタを出力する。この
時、中間データ保持部7のレジスタ13、レジスタ14、レ
ジスタ15は、セレクタ9、セレクタ10、セレクタ11の値
つまり、データレジスタ2の上位から2ケタ目、3ケタ
目、4ケタ目の値を保持する。そこで、データレジスタ
2の2ケタ目以下を読むかわりに、レジスタ13、レジス
タ14、レジスタ15を読む事にする。
In this case, the outputs of the selector 8, the selector 9, the selector 10, and the selector 11 are the first digit, the second digit, the third digit, and the fourth digit from the upper side of the data register 2, respectively. As shown in FIG. 5, the output of the selector 12 outputs the output of the selector 8, that is, the most significant digit of the data register 2. At this time, the registers 13, register 14, and register 15 of the intermediate data holding unit 7 store the values of the selector 9, selector 10, and selector 11, that is, the second, third, and fourth digits of the data register 2 from the upper order. Hold. Therefore, instead of reading the second and lower digits of the data register 2, the register 13, the register 14, and the register 15 are read.

まずレジスタ13を読むため、アドレスレジスタ5を
“10101"とセットする。
First, to read the register 13, the address register 5 is set to "10101".

この時、セレクタ8、セレクタ9、セレクタ10、セレ
クタ11の出力は、それぞれ、第4図より、データレジス
タ2(1)、レジスタ13、レジスタ14、レジスタ15とな
る。したがって、レジスタ13、レジスタ14、レジスタ15
には、同じ値がセットされるため、レジスタ13、レジス
タ14、レジスタ15はホールドされる形になる。
At this time, the outputs of the selector 8, the selector 9, the selector 10, and the selector 11 become the data register 2 (1), the register 13, the register 14, and the register 15, respectively, as shown in FIG. Therefore, register 13, register 14, register 15
, The same value is set, so that the registers 13, 14 and 15 are held.

またこの時、第5図からセレクタ12の出力は、レジス
タ13の値となる。この時のレジスタ13の値は、先にデー
タレジスタ2(1)を読んだ時のデータレジスタ2
(2)である。
At this time, the output of the selector 12 becomes the value of the register 13 from FIG. At this time, the value of the register 13 is the value of the data register 2 (1) which was read earlier.
(2).

同様に、レジスタ14とレジスタ15の値をそれぞれアド
レスレジスタ5に“10110"、“10111"を設定して読み出
すと、それぞれ、先にデータレジスタ2(1)を読んだ
時のデータレジスタ2(3)、データレジスタ2(4)
の値が読出せる事になり、これにより、データレジスタ
2の値を、正確に読む事ができる。
Similarly, when the values of the registers 14 and 15 are read out by setting “10110” and “10111” in the address register 5, respectively, the data register 2 (3) when the data register 2 (1) is read first is read out. ), Data register 2 (4)
Can be read, whereby the value of the data register 2 can be read accurately.

第2図を参照すると、本発明の第2の実施例によるデ
ータ読出し装置は、読込み指示部16が付加され、中間デ
ータ保持部が変更されていることを除いて、第1図のも
のと同様の構成を有する。従って、中間データ保持部を
7aと記す。中間データ保持部7aは、レジスタ13a,14a,及
び15aを有する。
Referring to FIG. 2, a data reading device according to a second embodiment of the present invention is the same as that of FIG. 1 except that a read instruction unit 16 is added and an intermediate data holding unit is changed. It has a configuration of Therefore, the intermediate data storage
Write 7a. The intermediate data holding unit 7a has registers 13a, 14a, and 15a.

中間データ保持部7aは、データ選択部6の選択途中結
果として、データ選択部6の中のセレクタ9、セレクタ
10、セレクタ11の出力を、読込み指示部16の出力が“1"
の時、読込む。
The intermediate data holding unit 7a outputs the selector 9 in the data selection unit 6, the selector
10, the output of the selector 11, the output of the read instruction unit 16 is "1"
At the time, read.

中間データ保持部7aにおいて、レジスタ13aはデータ
選択部6のセレクタ9の出力を、レジスタ14aはセレク
タ10の出力を、レジスタ15aはセレクタ11の出力を保持
する。
In the intermediate data holding unit 7a, the register 13a holds the output of the selector 9 of the data selection unit 6, the register 14a holds the output of the selector 10, and the register 15a holds the output of the selector 11.

第6図には、読込み指示部16の出力とアドレスレジス
タ5との関係が示されている。
FIG. 6 shows the relationship between the output of the read instruction unit 16 and the address register 5.

第1の実施例と同様に、データレジスタ2の保持され
たデータを読む場合について考える。
As in the first embodiment, a case where the data held in the data register 2 is read will be considered.

まず、最上位のケタを読出すため、アドレスレジスタ
5に“00100"をセットする。この場合、セレクタ8、セ
レクタ9、セレクタ10、セレクタ11の出力は、それぞれ
データレジスタ2の上位から1ケタ目、2ケタ目、3ケ
タ目、4ケタ目となる。セレクタ12の出力は、第5図よ
り、セレクタ8の出力、つまり、データレジスタ2の最
上位ケタを出力する。この時、中間データ保持部7aのレ
ジスタ13a、レジスタ14a、レジスタ15aは、アドレスレ
ジスタ5の値から読込み指示部16の出力が“1"である事
から、セレクタ9、セレクタ10、セレクタ11の値、つま
り、データレジスタ2の上位から2ケタ目、3ケタ目、
4ケタ目の値を読込む。そこで、データレジスタ2の2
ケタ目以下を読むかわりに、レジスタ13a、レジスタ14
a、レジスタ15aを読む事にする。
First, "00100" is set in the address register 5 in order to read the most significant digit. In this case, the outputs of the selector 8, the selector 9, the selector 10, and the selector 11 are the first digit, the second digit, the third digit, and the fourth digit from the upper side of the data register 2, respectively. As shown in FIG. 5, the output of the selector 12 outputs the output of the selector 8, that is, the most significant digit of the data register 2. At this time, since the output of the read instruction unit 16 is “1” from the value of the address register 5, the values of the selector 9, the selector 10, and the selector 11 That is, the second digit, the third digit,
Read the value of the fourth digit. Therefore, 2 of data register 2
Instead of reading the digits below, register 13a and register 14
a, read register 15a.

まず、レジスタ13aを読むため、アドレスレジスタ5
を“10101"とセットする。この時、セレクタ8、セレク
タ9、セレクタ10、セレクタ11の出力は、それぞれ、第
4図より、データレジスタ2(1)、レジスタ13a、レ
ジスタ14a、レジスタ15aとなる。また、アドレスレジス
タ5の値の値より、読込み指示部16の出力が“0"となる
ため、レジスタ13a、レジスタ14a、レジスタ15aの値は
現在の値でホールドされる。
First, to read register 13a, address register 5
Is set to “10101”. At this time, the outputs of the selector 8, the selector 9, the selector 10, and the selector 11 become the data register 2 (1), the register 13a, the register 14a, and the register 15a as shown in FIG. Further, the output of the read instruction unit 16 becomes “0” based on the value of the address register 5, and the values of the registers 13a, 14a, and 15a are held at the current values.

ここで、第5図よりセレクタ12の出力は、レジスタ13
aの値となる。この時のレジスタ13aの値は、先にデータ
レジスタ2(1)を読んだ時のデータレジスタ2(2)
である。
Here, the output of the selector 12 is shown in FIG.
The value of a. The value of the register 13a at this time is the value of the data register 2 (2) when the data register 2 (1) is read first.
It is.

同様に、レジスタ14aとレジスタ15aの値をそれぞれア
ドレスレジスタ5に“10110"、“10111"を設定して読み
出すと、それぞれ、先にデータレジスタ2(1)を読ん
だ時のデータレジスタ2(3)、データレジスタ2
(4)の値が読出せる事になり、これにより、データレ
ジスタ2の値を、正確に読む事ができる。
Similarly, when the values of the register 14a and the register 15a are read out by setting “10110” and “10111” in the address register 5, respectively, the data register 2 (3) when the data register 2 (1) is read first is read out, respectively. ), Data register 2
Thus, the value of (4) can be read, whereby the value of the data register 2 can be read accurately.

第3図を参照すると。本発明の第3の実施例によるデ
ータ読出し装置は、読込み指示部16の代わりに読込みフ
ラグ16aが設けられている点を除いて、第2図のものと
同様の構成を有する。
Referring to FIG. The data reading device according to the third embodiment of the present invention has the same configuration as that of FIG. 2 except that a reading flag 16a is provided instead of the reading instruction unit 16.

中間データ保持部7aは、データ選択部6の選択途中結
果として、データ選択部6の中のセレクタ9、セレクタ
10、セレクタ11の出力を、読込み指示フラグ16aが“1"
の時、読込む。
The intermediate data holding unit 7a outputs the selector 9 in the data selection unit 6, the selector
10, the output of the selector 11 is read, and the read instruction flag 16a is set to "1".
At the time, read.

次に、第1の実施例と同様に、データレジスタ2に保
持されたデータを読む場合について考える。
Next, as in the first embodiment, a case where the data held in the data register 2 is read will be considered.

まず、最上位のケタを読出すため、アドレスレジスタ
5に“00100"を出力すると同時に、読込み指示フラグ16
aを“1"にセットする。この時、セレクタ8、セレクタ
9、セレクタ10、セレクタ11の出力は、それぞれデータ
レジスタ2の上位から1ケタ目、2ケタ目、3ケタ目、
4ケタ目となる。セレクタ12の出力は、第5図より、セ
レクタ8の出力、つまり、データレジスタ2の最上位ケ
タを出力する。この時、中間データ保持部7aのレジスタ
13a、レジスタ14a、レジスタ15aの値は、読込み指示フ
ラグ16aが“1"である事から、セレクタ9、セレクタ1
0、セレクタ11の値、つまり、データレジスタ2の上位
から2ケタ目、3ケタ目、4ケタ目の値を読込む。そこ
で、データレジスタ2の2ケタ目以下を読むかわりに、
レジスタ13a、レジスタ14a、レジスタ15aを読む事にす
る。
First, to read the most significant digit, “00100” is output to the address register 5 and at the same time, the read instruction flag 16 is read.
Set a to “1”. At this time, the outputs of the selector 8, the selector 9, the selector 10, and the selector 11 are the first digit, the second digit, the third digit,
This is the fourth digit. As shown in FIG. 5, the output of the selector 12 outputs the output of the selector 8, that is, the most significant digit of the data register 2. At this time, the register of the intermediate data holding unit 7a
Since the read instruction flag 16a is "1", the values of the register 9a, the selector 14a, and the register 15a
0, the value of the selector 11, that is, the second, third, and fourth digits of the data register 2 from the higher order are read. Therefore, instead of reading the second and lower digits of data register 2,
The registers 13a, 14a, and 15a are read.

まず、レジスタ13aを読むため、アドレスレジスタ5
を“10101"とセットする。この時、セレクタ8、セレク
タ9、セレクタ10、セレクタ11の出力は、それぞれ、第
4図より、データレジスタ2(1)、レジスタ13a、レ
ジスタ14a、レジスタ15aとなる。また、この時、読込み
指示フラグ16aの値を“0"にする事により、レジスタ13
a、レジスタ14a、レジスタ15aの値を現在の値でホール
ドしておく。
First, to read register 13a, address register 5
Is set to “10101”. At this time, the outputs of the selector 8, the selector 9, the selector 10, and the selector 11 become the data register 2 (1), the register 13a, the register 14a, and the register 15a as shown in FIG. At this time, by setting the value of the read instruction flag 16a to “0”, the register 13
a, the values of the registers 14a and 15a are held at the current values.

ここで、第5図よりセレクタ12の出力は、レジスタ13
aの値となる。この時のレジスタ13aの値は、先にデータ
レジスタ2(1)を読んだ時のデータレジスタ2(2)
である。
Here, the output of the selector 12 is shown in FIG.
The value of a. The value of the register 13a at this time is the value of the data register 2 (2) when the data register 2 (1) is read first.
It is.

同様に、レジスタ14aとレジスタ15aの値をそれぞれア
ドレスレジスタ5に“10110"、“10111"を設定して読み
出すと、それぞれ、先にデータレジスタ2(1)を読ん
だ時のデータレジスタ2(3)、データレジスタ2
(4)の値が読出せる事になり、これにより、データレ
ジスタ2の値を、正確に読む事ができる。
Similarly, when the values of the register 14a and the register 15a are read out by setting “10110” and “10111” in the address register 5, respectively, the data register 2 (3) when the data register 2 (1) is read first is read out, respectively. ), Data register 2
Thus, the value of (4) can be read, whereby the value of the data register 2 can be read accurately.

[発明の効果] 以上説明したように本発明は、読出しのタイミングと
は非同期に変更されるデータレジスタと中間データ保持
部の有するレジスタとを一定ビット幅で区切り、アドレ
スを割付け、そのアドレスを使ってセレクタにより選択
するデータ選択部と、データ選択部の選択途中のデータ
を保持する中間データ保持部とを有するか、読出しのタ
イミングとは非同期に変更されるデータレジスタと中間
データ保持部の有するとレジスタを一定ビット幅で区切
り、アドレスを割付け、そのアドレスを使ってセレクタ
により選択するデータ選択部と、データ選択部の選択途
中のデータを保持する中間データ保持部と、指定された
アドレス値により、中間データ保持部に対し、読出し指
示を出力する読出し指示部とを有するか、或いは、読出
しのタイミングとは非同期に変更されるデータレジスタ
と中間データ保持部の有するレジスタとを一定ビット幅
で区切り、アドレスを割付け、そのアドレスを使ってセ
レクタにより選択するデータ選択部と、データ選択部の
選択途中のデータを保持する中間データ保持部と、中間
データ保持部に対し、読込み指示を与える読込み指示フ
ラグとを有する事により、データを保証するため、2回
の読出しを行い、その2つの値が一致している事により
値を保証するというソフト的な処理や、専用バッファに
一度読出した上で、そのバッファの内容を読出す事で値
を保証するといった処理をする必要がないという効果が
ある。
[Effects of the Invention] As described above, according to the present invention, a data register that is changed asynchronously with the read timing and a register of the intermediate data holding unit are separated by a fixed bit width, addresses are assigned, and the addresses are used. The data selector and the intermediate data holding unit for holding data in the middle of the selection by the data selecting unit, or having the data register and the intermediate data holding unit that are changed asynchronously with the read timing. A register is divided by a fixed bit width, an address is assigned, a data selection unit that is selected by a selector using the address, an intermediate data holding unit that holds data being selected by the data selection unit, and a specified address value, A read instruction unit for outputting a read instruction to the intermediate data holding unit, or The data register, which is changed asynchronously with the timing, is separated from the register of the intermediate data holding unit by a fixed bit width, an address is allocated, and a data selection unit is selected by the selector using the address. By having an intermediate data holding unit for holding the data of the first data and a read instruction flag for giving a read instruction to the intermediate data holding unit, the data is read twice to assure the data. There is an effect that there is no need to perform a software process of guaranteeing the value by performing the operation or a process of guaranteeing the value by reading the contents of the buffer after reading the buffer once.

【図面の簡単な説明】[Brief description of the drawings]

第1図は本発明の第1の実施例によるデータ読出し装置
の構成を示すブロック図、第2図は本発明の第2の実施
例によるデータ読出し装置の構成を示すブロック図、第
3図は本発明の第3の実施例によるデータ読出し装置の
構成を示すブロック図、第4図は第1図中のデータ選択
部のセレクタ8,9,10,11とアドレスレジスタ5との関係
を示す図、第5図は第1図中のデータ選択部のセレクタ
12とアドレスレジスタ5との関係を示す図、第6図は第
2図中の読込み指示部16の出力とアドレスレジスタ5と
の関係を示す図、第7図は部分読出しの問題点を説明す
るための図、第8図は従来のデータ読出し装置の構成を
示すブロック図である。 1〜4……データレジスタ、5……アドレスレジスタ、
6……データ選択部、7,7a……中間データ保持部、8〜
12……セレクタ、13〜15,13a〜15a……レジスタ、16…
…読込み指示部、16a……読込み指示フラグ。
FIG. 1 is a block diagram showing a configuration of a data reading device according to a first embodiment of the present invention, FIG. 2 is a block diagram showing a configuration of a data reading device according to a second embodiment of the present invention, and FIG. FIG. 4 is a block diagram showing a configuration of a data reading device according to a third embodiment of the present invention. FIG. 4 is a diagram showing a relationship between selectors 8, 9, 10, and 11 of a data selection unit and an address register 5 in FIG. FIG. 5 shows the selector of the data selection unit in FIG.
FIG. 6 is a diagram showing the relationship between the address register 5 and the address register 5, FIG. 6 is a diagram showing the relationship between the output of the read instruction unit 16 in FIG. 2 and the address register 5, and FIG. 7 explains the problem of partial reading. FIG. 8 is a block diagram showing a configuration of a conventional data reading device. 1-4 data registers, 5 address registers,
6: Data selection unit, 7, 7a: Intermediate data holding unit, 8 to
12 ... Selector, 13-15, 13a-15a ... Register, 16 ...
... Read instruction section, 16a ... Read instruction flag.

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】読み出しと更新とが独立したタイミングで
行われるデータを保持する少なくとも1つのデータレジ
スタと、 このデータレジスタに保持された前記データが部分的に
複数回に分けて読み出されるときの読み出される途中の
データを保持する中間データ保持部と、 前記データレジスタおよび前記中間データ保持部とを一
定ビット幅に区切り、アドレス割付けを行い、その割付
けたアドレスを指示するアドレスレジスタと、 このアドレスレジスタからのアドレスにより前記データ
レジスタおよび前記中間データ保持部に保持された前記
データを選択して出力すると同時に、前記中間データ保
持部に対し選択の途中結果を出力するデータ選択部とを
含むことを特徴とするデータ読出し装置。
At least one data register for holding data for which reading and updating are performed at independent timings, and reading when the data held in the data register is partially read a plurality of times An intermediate data holding unit that holds data in the middle of data transfer, an address register that divides the data register and the intermediate data holding unit into a fixed bit width, performs address assignment, and indicates the assigned address; And a data selector for selecting and outputting the data held in the data register and the intermediate data holding unit according to the address of the data register and outputting an intermediate result of the selection to the intermediate data holding unit. Data reading device.
【請求項2】前記アドレスレジスタからのアドレスによ
り、前記中間データ保持部に対して前記データ選択部の
選択途中の少なくとも1つの前記データを読み込むこと
を指示する読み込み指示部をさらに含むことを特徴とす
る請求項1記載のデータ読出し装置。
2. The image processing apparatus according to claim 1, further comprising: a read instruction unit that instructs the intermediate data holding unit to read at least one piece of the data that is being selected by the data selection unit, based on an address from the address register. 2. The data reading device according to claim 1, wherein
【請求項3】前記中間データ保持部に対して前記データ
選択部の選択途中の少なくとも1つのデータを読み込む
ことを指示する読み込み指示フラグをさらに含むことを
特徴とする請求項1記載のデータ読出し装置。
3. The data reading device according to claim 1, further comprising a reading instruction flag for instructing said intermediate data holding unit to read at least one data being selected by said data selecting unit. .
JP1025672A 1989-02-06 1989-02-06 Data reading device Expired - Fee Related JP3055903B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1025672A JP3055903B2 (en) 1989-02-06 1989-02-06 Data reading device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1025672A JP3055903B2 (en) 1989-02-06 1989-02-06 Data reading device

Publications (2)

Publication Number Publication Date
JPH02257215A JPH02257215A (en) 1990-10-18
JP3055903B2 true JP3055903B2 (en) 2000-06-26

Family

ID=12172276

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1025672A Expired - Fee Related JP3055903B2 (en) 1989-02-06 1989-02-06 Data reading device

Country Status (1)

Country Link
JP (1) JP3055903B2 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59730A (en) * 1982-06-28 1984-01-05 Fujitsu Ltd Asynchronous hard copy system of display screen

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59730A (en) * 1982-06-28 1984-01-05 Fujitsu Ltd Asynchronous hard copy system of display screen

Also Published As

Publication number Publication date
JPH02257215A (en) 1990-10-18

Similar Documents

Publication Publication Date Title
US5093783A (en) Microcomputer register bank accessing
US5812806A (en) Data driven information processor configuring each data packet with a multi-attribute tag having at least two components
US3768075A (en) Extensible microprogram store
JPH1083303A (en) Electronic circuit and method for using coprocessor
US5201058A (en) Control system for transferring vector data without waiting for transfer end of the previous vector data
EP0401763B1 (en) Timing signal generating system
JP3055903B2 (en) Data reading device
US5021990A (en) Output pulse generating apparatus
US4494195A (en) Microinstruction controlled data processor
JP2667806B2 (en) Vector processor
JP2576589B2 (en) Virtual storage access control method
JPH0719221B2 (en) Memory control method
JP2892375B2 (en) Pulse input device
JP2567982B2 (en) Bus trace control method
JPH0736819A (en) Dma data transfer device
JPS6081660A (en) Data transfer system
JPH03129429A (en) Microprogram controller
JPH01228026A (en) Sequence control circuit
JPH03131899A (en) Pattern conversion circuit
JPH0830464A (en) Interruption processing circuit
JPS63145556A (en) Data transferring system for cache memory
JPS63188882A (en) Signal processing circuit
JPS63192131A (en) Multiplication circuit
JPS62168235A (en) Data processor
JPH03276306A (en) Programmable controller

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees