JPH08137747A - Internal register circuit - Google Patents

Internal register circuit

Info

Publication number
JPH08137747A
JPH08137747A JP6277961A JP27796194A JPH08137747A JP H08137747 A JPH08137747 A JP H08137747A JP 6277961 A JP6277961 A JP 6277961A JP 27796194 A JP27796194 A JP 27796194A JP H08137747 A JPH08137747 A JP H08137747A
Authority
JP
Japan
Prior art keywords
address
register
access
internal
bit length
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP6277961A
Other languages
Japanese (ja)
Other versions
JP3611049B2 (en
Inventor
Taketo Izumi
武人 和泉
Yasuo Yamada
泰生 山田
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.)
JFE Steel Corp
Original Assignee
Kawasaki Steel 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 Kawasaki Steel Corp filed Critical Kawasaki Steel Corp
Priority to JP27796194A priority Critical patent/JP3611049B2/en
Publication of JPH08137747A publication Critical patent/JPH08137747A/en
Application granted granted Critical
Publication of JP3611049B2 publication Critical patent/JP3611049B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE: To facilitate access by initializing a logical state stored in a first/last flip flop when an address stored in a previous address register and the type of access do not match with the address of present access and the type of access. CONSTITUTION: An address comparator 16 compares the address stored in the previous address register 12 and the type of access (read or write access) with the address of an address signal on an address bus A, which is inputted at present access, and the type of access (read or write access). When they are judged to be dissident as the result of comparison, the address comparator 16 initializes a logical state stored in the first/last flip flop 14 by a control signal 26B. Thus, write access and read access to an internal register 3A can easily be executed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、外部データバスのビッ
ト長nに比べて長いビット長の内部レジスタを少なくと
も1つ含む複数の内部レジスタを有し、複数のこれら内
部レジスタのいずれか1つをアドレス指定して選択し、
又、前記ビット長nより長いビット長の選択された前記
内部レジスタに対しては前記ビット長n単位で部分毎に
アクセスするようにした内部レジスタ回路に係り、特
に、前記内部レジスタへの書き込みアクセスや読み出し
アクセスをより容易に行えるようにした内部レジスタ回
路に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention has a plurality of internal registers including at least one internal register having a bit length longer than the bit length n of an external data bus, and any one of these internal registers. Address and select
Further, the present invention relates to an internal register circuit for accessing the selected internal register having a bit length longer than the bit length n in units of the bit length n, in particular, write access to the internal register. And an internal register circuit that makes read access easier.

【0002】[0002]

【従来の技術】コンピュータシステムの中心となるCP
U(central processing unit )は、主な構成として、
ALU(arithmetic logical unit )や、種々のレジス
タ、又、全体のタイミングをコントロールする制御回路
等を備える。又、前記レジスタには、例えば、前記AL
Uでの演算に用いられるアキュムレータや汎用レジスタ
等と共に、プログラムカウンタがある。
2. Description of the Related Art CP as the center of computer systems
U (central processing unit) is mainly composed of
An ALU (arithmetic logical unit), various registers, and a control circuit for controlling the overall timing are provided. In addition, in the register, for example, the AL
There is a program counter as well as an accumulator and a general-purpose register used for operations in U.

【0003】又、一般的なコンピュータは、通常、CP
Uが種々の周辺装置、例えば主記憶装置や入出力装置等
にアクセスする際には、所定のシステムバスが用いられ
ている。このようなシステムバスによれば、コンピュー
タ内のプログラム命令やデータの伝送路を共通化するこ
とができ、コンピュータ内の周辺装置のインタフェイス
の統一を図ることができる。更に、このようなシステム
バスによれば、コンピュータハードウエア全体に占め
る、インタフェイス部の規模を小さくすることができ
る。
A general computer is usually a CP.
A predetermined system bus is used when the U accesses various peripheral devices such as a main storage device and an input / output device. According to such a system bus, it is possible to share the program command and data transmission paths in the computer, and to unify the interfaces of the peripheral devices in the computer. Further, with such a system bus, the scale of the interface portion occupying the entire computer hardware can be reduced.

【0004】このようなシステムバスに接続される入出
力装置は、動作や機能を設定するためのシステムバスを
介してCPUからアクセスされる、コントロールレジス
タ(CR:control resister)等のレジスタを備えるも
のである。
An input / output device connected to such a system bus is provided with a register such as a control register (CR: control resister) which is accessed from the CPU via the system bus for setting an operation and a function. Is.

【0005】例えば、MPU(micro processor unit)
を中心として構成されるマイクロコンピュータのシステ
ムのため、MPUの周辺チップとして、PIO(progra
mmedinput output )チップやUSART(universal s
ynchronous asynchronous receiver transmitter )チ
ップが用意されている。更に、DMA(direct memory
access)コントローラチップ等も用意されている。
For example, MPU (micro processor unit)
Because it is a microcomputer system mainly composed of PIO (progra
mmedinput output) chip and USART (universal s
ynchronous asynchronous receiver transmitter) chip is prepared. Furthermore, DMA (direct memory)
access) Controller chip etc. are also prepared.

【0006】このようなPIOチップ、USARTチッ
プ、又DMAコントローラチップ等では、通常、動作パ
ターンや機能を設定するための種々の内部レジスタを備
えている。例えば、PIOチップでは、各I/O(inpu
t /output)ポートの信号の入出力方向やビット数等を
設定するための内部レジスタを有する。又、USART
チップでは、シリアルデータからパラレルデータへ、あ
るいはパラレルデータからシリアルデータへ変換する際
の、動作パターンや機能を設定するための内部レジスタ
を有している。例えばUSARTチップでは、シリアル
通信を非同期式で行うかあるいは同期式で行うか、シリ
アル通信におけるデータ転送速度、又データ受信の際の
割り込みの設定等を行うためのコントロールレジスタと
称する一種の内部レジスタを備えている。
Such a PIO chip, a USART chip, a DMA controller chip, etc. usually have various internal registers for setting operation patterns and functions. For example, in a PIO chip, each I / O (inpu
t / output) has an internal register for setting the input / output direction of the signal of the port, the number of bits, and the like. Also, USART
The chip has internal registers for setting operation patterns and functions when converting serial data to parallel data or parallel data to serial data. For example, in a USART chip, a kind of internal register called a control register for setting serial communication asynchronously or synchronously, setting a data transfer rate in serial communication, setting an interrupt at the time of data reception, etc. I have it.

【0007】更に、DMAコントローラチップでは、D
MA転送の際の転送元アドレスを記憶するレジスタ(ソ
ースアドレスレジスタ)や、転送先アドレスを記憶する
レジスタ(デスティネーションアドレスレジスタ)等と
共に、種々の動作パターンを設定するための内部レジス
タを備えている。又、米国インテル社製「8237」チ
ップ等のようにファースト・ラスト・フリップフロップ
と称するものを備えるものもある。
Further, in the DMA controller chip, D
In addition to a register (source address register) that stores a transfer source address and a register (destination address register) that stores a transfer destination address at the time of MA transfer, an internal register for setting various operation patterns is provided. . Also, there are some which have what is called a first last flip-flop, such as the "8237" chip manufactured by Intel Corporation in the United States.

【0008】図3は、従来からのファースト・ラスト・
フリップフロップを有するDMAコントローラの内部レ
ジスタ回路を中心としたブロック図である。
FIG. 3 shows a conventional first last
It is a block diagram centering on an internal register circuit of a DMA controller having a flip-flop.

【0009】この図3において、DMAコントローラの
特に内部レジスタ回路は、ソースアドレスレジスタSR
とデスティネーションアドレスレジスタDRと、コント
ロールレジスタCRと、ファースト・ラスト・フリップ
フロップ14Cと、上位/下位選択用セレクタ24A〜
24Cと、内部レジスタ選択デコーダ18Cと、レジス
タ選択用バッファ22A〜22Cとにより構成されてい
る。
In FIG. 3, especially the internal register circuit of the DMA controller is a source address register SR.
, Destination address register DR, control register CR, first last flip-flop 14C, and upper / lower selection selector 24A to
24C, an internal register selection decoder 18C, and register selection buffers 22A to 22C.

【0010】まず16ビット長の前記ソースアドレスレ
ジスタSRは、DMA転送の際の転送元のスタートアド
レスを記憶する。該ソースアドレスレジスタSRは、そ
れぞれ8ビット長のソースアドレスレジスタSR0及び
SR1により構成される。前記ソースアドレスレジスタ
SR0がLSB(least significant bit )側となり、
前記ソースアドレスレジスタSR1がMSB(most sig
nificant bit)側となる。
First, the 16-bit source address register SR stores the start address of the transfer source in the DMA transfer. The source address register SR is composed of source address registers SR0 and SR1 each having an 8-bit length. The source address register SR0 is on the LSB (least significant bit) side,
The source address register SR1 is the MSB (most sig
nificant bit) side.

【0011】又、16ビット長の前記デスティネーショ
ンアドレスレジスタDRは、DMA転送の際の、転送元
のスタートアドレスを記憶する。該デスティネーション
アドレスレジスタDRは、それぞれ8ビット長のデステ
ィネーションアドレスレジスタDR0及びDR1によっ
て構成される。前記デスティネーションアドレスレジス
タDR0がLSB側となり、前記デスティネーションア
ドレスレジスタDR1がMSB側となる。
The 16-bit destination address register DR stores the start address of the transfer source at the time of DMA transfer. The destination address register DR is composed of destination address registers DR0 and DR1 each having an 8-bit length. The destination address register DR0 is on the LSB side, and the destination address register DR1 is on the MSB side.

【0012】16ビット長の前記コントロールレジスタ
CRは、DMA転送の際の動作パターンや機能を設定す
るためのレジスタである。又、該コントロールレジスタ
CRには、DMA転送の際の、転送されるデータの数
(ワード数)も設定される。該コントロールレジスタC
Rについても、それぞれ8ビット長のコントロールレジ
スタCR0及びCR1によって構成される。
The control register CR having a 16-bit length is a register for setting an operation pattern and a function at the time of DMA transfer. Further, the number of data (word number) to be transferred at the time of DMA transfer is also set in the control register CR. The control register C
R is also composed of control registers CR0 and CR1 each having an 8-bit length.

【0013】前記内部レジスタ選択デコーダ18Cは、
外部からのアドレスバスAの信号をデコードする。即
ち、前記アドレスバスAの信号に従って、該内部レジス
タ選択デコーダ18Cは、前記レジスタ選択用バッファ
22A〜22C・・・のいずれか1つを選択する。
The internal register selection decoder 18C is
The signal of the address bus A from the outside is decoded. That is, according to the signal of the address bus A, the internal register selection decoder 18C selects any one of the register selection buffers 22A to 22C.

【0014】前記ファースト・ラスト・フリップフロッ
プ14Cには、この図3に示される内部レジスタのいず
れか1つに対してアクセスする際にH状態となる、制御
信号26Aが入力されている。該ファースト・ラスト・
フリップフロップ14Cは、該制御信号26Aの論理状
態の立下がりにおいて、記憶されていた論理状態を反転
する。
The first last flip-flop 14C is supplied with a control signal 26A which is in the H state when accessing any one of the internal registers shown in FIG. The first last
The flip-flop 14C inverts the stored logic state at the fall of the logic state of the control signal 26A.

【0015】このようなDMAコントローラの内部レジ
スタ回路によれば、前記制御信号26Aを入力しながら
入力する前記アドレスバスAからのアドレス信号によっ
て、前記内部レジスタSR、BR、CR・・・のいずれ
か1つを選択しアクセスすることができる。この際、第
1回目のアクセスの際、前記ファースト・ラスト・フリ
ップフロップ14Cの出力はL状態とされ、前記内部レ
ジスタSR、DR、CR・・・のいずれかのLSB側の
8ビット、即ち、前記内部レジスタSR0、DR0、C
R2・・・のいずれかを、制御信号27Aによって前記
上位/下位選択用セレクタ24A〜24Cを切り替える
ことでアクセスすることができる。
According to the internal register circuit of such a DMA controller, any one of the internal registers SR, BR, CR, ... Is selected according to the address signal from the address bus A which is input while the control signal 26A is being input. You can select and access one. At this time, in the first access, the output of the first last flip-flop 14C is set to the L state, and the 8 bits on the LSB side of any of the internal registers SR, DR, CR ... The internal registers SR0, DR0, C
Any one of R2 ... Can be accessed by switching the upper / lower selection selectors 24A to 24C by a control signal 27A.

【0016】この後、2回目のアクセスの際は、前記制
御信号26Aの直前の立下がりによって前記ファースト
・ラスト・フリップフロップ14Cへ記憶されていたL
状態の論理状態は反転され、H状態となる。このため、
この2回目のアクセスでは、8ビット長の前記データバ
スDを介して、前記内部レジスタSR、DR、CR・・
・のMSB側、即ち、前記内部レジスタSR1、DR
1、CR1・・・のいずれかをアクセスすることができ
る。
After this, at the time of the second access, the L stored in the first last flip-flop 14C by the fall just before the control signal 26A.
The logical state of the state is inverted to the H state. For this reason,
In this second access, the internal registers SR, DR, CR ...
MSB side, that is, the internal registers SR1 and DR
Any of 1, CR1, ... Can be accessed.

【0017】このような内部レジスタ回路によれば、8
ビット長の前記データバスDにて、これよりも長い16
ビット長の前記内部レジスタSR、DR、CR・・・へ
容易にアクセスすることができる。
According to such an internal register circuit, 8
In the data bus D of bit length, longer than 16
It is possible to easily access the internal registers SR, DR, CR ... Of bit length.

【0018】又、このような内部レジスタ回路へ割り付
けられるアドレスについては、前記内部レジスタSR、
DR、CR・・・のLSB側の8ビットと、MSB側の
8ビットとは共通となっている。例えば、前記ソースア
ドレスレジスタSR0のアドレスと、前記ソースアドレ
スレジスタSR1のアドレスとは共通となっている。従
って、このような内部レジスタ回路によれば、8ビット
単位でアクセスされる各内部レジスタSR0、DR0、
CR0・・・SR1、DR1、CR1・・・へ割り付け
られるアドレスの数を半分にすることができる。
Regarding the addresses assigned to such internal register circuits, the internal registers SR,
8 bits on the LSB side of DR, CR, ... And 8 bits on the MSB side are common. For example, the address of the source address register SR0 and the address of the source address register SR1 are common. Therefore, according to such an internal register circuit, the internal registers SR0, DR0,
The number of addresses assigned to CR0 ... SR1, DR1, CR1 ... Can be halved.

【0019】例えば、前記ソースアドレスレジスタSR
や、前記デスティネーションアドレスレジスタDRのビ
ット長が前記データバスDのビット長nに対してより長
くされるものもあり、又内部レジスタの数がより増加さ
れるものもある。例えば、前記ソースアドレスレジスタ
SRや前記デスティネーションアドレスレジスタDRと
して、32ビット長のものを用いる場合もある。このよ
うな場合で8ビット長単位でアクセスする際には、各内
部レジスタに対して4個のアドレスを設定すると、全体
として非常に多くのアドレスを割り当てる必要が生じて
しまう。しかしながら、前記図3に示したような内部レ
ジスタ回路によれば、I/Oアドレスを各内部レジスタ
のLSB側の16ビットで1つ共用し、MSB側の16
ビットで1つ共用するようにすれば、割り当てられるI
/Oアドレスを削減することができる。又、連続してア
クセスすることのある複数の内部レジスタを、同一のア
ドレス空間に割り付けることができる。
For example, the source address register SR
Alternatively, the bit length of the destination address register DR may be made longer than the bit length n of the data bus D, and the number of internal registers may be increased. For example, the source address register SR and the destination address register DR may have 32-bit length. In such a case, when accessing in units of 8 bits, if four addresses are set for each internal register, it becomes necessary to allocate a very large number of addresses as a whole. However, according to the internal register circuit as shown in FIG. 3, one I / O address is shared by 16 bits on the LSB side of each internal register and 16 bits on the MSB side are shared.
If one bit is shared, the assigned I
/ O address can be reduced. Further, it is possible to allocate a plurality of internal registers that may be continuously accessed to the same address space.

【0020】[0020]

【発明が達成しようとする課題】ここで、DMAコント
ローラの内部レジスタ回路において、原則的には、前記
ソースアドレスレジスタSRのLSB側の更新とMSB
側の更新とは、一般に一対でなされるものである。又、
前記デスティネーションアドレスレジスタDRや前記コ
ントロールレジスタCRについても同様である。
In the internal register circuit of the DMA controller, in principle, the LSB side of the source address register SR is updated and the MSB is updated.
Side updates are generally done in pairs. or,
The same applies to the destination address register DR and the control register CR.

【0021】しかしながら、利用方法によっては、前記
ソースアドレスレジスタSRや前記デスティネーション
アドレスレジスタDRの、例えばLSB側の8ビットの
み更新すれば十分である場合もある。
However, depending on the method of use, it may be sufficient to update only the 8 bits on the LSB side of the source address register SR or the destination address register DR, for example.

【0022】このような場合には、前記図3に示される
内部レジスタ回路においては、前記ファースト・ラスト
・フリップフロップ14Cに記憶される論理状態を初期
化するための手順を行う必要があった。例えば、LSB
側の前記ソースアドレスレジスタSR0へのみアクセス
した後、やはりLSB側の前記デスティネーションアド
レスレジスタDR0へアクセスする場合には、前記ソー
スアドレスレジスタSR1へのアクセスの後にH状態と
なった前記ファースト・ラスト・フリップフロップ14
Cの論理状態をL状態へ初期設定するため、例えば前述
の「8237」チップ等では、「クリア・ファースト・
ラスト・フリップフロップ・コマンド」を実行する必要
があった。
In such a case, in the internal register circuit shown in FIG. 3, it is necessary to perform a procedure for initializing the logic state stored in the first last flip-flop 14C. For example, LSB
When the destination address register DR0 on the LSB side is also accessed after accessing only the source address register SR0 on the side of the first address, the first last. Flip-flop 14
In order to initialize the logic state of C to the L state, for example, in the above-mentioned "8237" chip, "clear first.
It was necessary to execute the "last flip-flop command".

【0023】このような「クリア・ファースト・ラスト
・フリップフロップ・コマンド」を要するため、例えば
DMA転送に先立って行うDMAコントローラの設定プ
ログラムが長くなってしまい、繁雑になってしまう。
又、このように「クリア・ファースト・ラスト・フリッ
プフロップ・コマンド」を用いるようにしたものでは、
本来このコマンドを必要とするのに、このコマンドを落
してしまうというミスが起りうる。この場合、予期しな
い内部レジスタに対してアクセスされてしまい、誤った
動作を行わせてしまう。このようにコマンドを誤って落
してしまった場合、このことを見出すことは比較的困難
な場合がある。
Since such a "clear first last flip-flop command" is required, for example, the setting program of the DMA controller performed prior to the DMA transfer becomes long and complicated.
In addition, in the case where the "clear first last flip-flop command" is used in this way,
The mistake is that this command is dropped even though it originally needs this command. In this case, an unexpected internal register is accessed, causing an erroneous operation. If you accidentally drop a command in this way, finding this out can be relatively difficult.

【0024】本発明は、前記従来の問題点を解決するべ
くなされたもので、外部データバスのビット長nに比べ
て長いビット長の内部レジスタを少なくとも1つ含む複
数の内部レジスタを有し、複数のこれら内部レジスタの
いずれか1つをアドレス指定して選択し、又、前記ビッ
ト長nより長いビット長の選択された前記内部レジスタ
に対しては、前記ビット長n単位で部分毎にアクセスす
るようにした内部レジスタ回路において、前記内部レジ
スタへの書き込みアクセスや読み出しアクセスをより容
易に行えるようにした内部レジスタ回路を提供すること
を目的とする。
The present invention has been made to solve the above-mentioned conventional problems, and has a plurality of internal registers including at least one internal register having a bit length longer than the bit length n of the external data bus, One of a plurality of these internal registers is addressed and selected, and the selected internal register having a bit length longer than the bit length n is accessed in units of the bit length n. It is an object of the present invention to provide an internal register circuit configured so that write access and read access to the internal register can be performed more easily.

【0025】[0025]

【課題を達成するための手段】本発明は、外部データバ
スのビット長nに比べて長いビット長の内部レジスタを
少なくとも1つ含む複数の内部レジスタを有し、複数の
これら内部レジスタのいずれか1つをアドレス指定して
選択し、又、前記ビット長nより長いビット長の選択さ
れた前記内部レジスタに対しては前記ビット長n単位で
部分毎にアクセスするようにした内部レジスタ回路にお
いて、複数の前記内部レジスタのいずれか1つに対して
行った直前のアクセスのアドレス及びアクセスの種類
(読み出しアクセスあるいは書き込みアクセス)を記憶
する直前アドレスレジスタと、該直前アドレスレジスタ
へ記憶されるアドレス及びアクセスの種類(読み出しア
クセスあるいは書き込みアクセス)と、複数の前記内部
レジスタのいずれか1つに対して行う今回のアクセスの
アドレス及びアクセスの種類(読み出しアクセスあるい
は書き込みアクセス)との一致を判定するアドレス比較
器と、前記ビット長nより長いビット長の選択された前
記内部レジスタの1つに対して前記ビット長n単位で部
分毎にアクセスする際に、アクセスする部分の位置を記
憶するインクリメンタリレジスタとを備え、前記比較器
にて不一致と判定された場合、前記インクリメンタリレ
ジスタをリセットするようにしたことにより、前記課題
を達成したものである。
SUMMARY OF THE INVENTION The present invention has a plurality of internal registers including at least one internal register having a bit length longer than the bit length n of an external data bus. In the internal register circuit, one of which is selected by addressing, and the selected internal register having a bit length longer than the bit length n is accessed in units of the bit length n. A previous address register that stores an address and a type of access (a read access or a write access) of the immediately previous access to any one of the plurality of internal registers, and an address and an access stored in the immediately previous address register Type (read access or write access) and one of the internal registers One of the internal comparator having a bit length longer than the bit length n and an address comparator for determining whether the address and the type of access this time (read access or write access) are performed On the other hand, when accessing each part in units of the bit length n, an incremental register that stores the position of the accessed part is provided, and if the comparator determines that they do not match, the incremental register is reset. By doing so, the above-mentioned problems are achieved.

【0026】又、前記内部レジスタ回路において、前記
内部レジスタの少なくとも1つが、何らかのアドレスを
記憶するものであって、更に、前記ビット長nより長い
ビット長の選択された前記内部レジスタの1つに対して
前記ビット長n単位で部分毎にアクセスする際には、当
該内部レジスタのLSB側から順にアクセスするように
されていることにより、前記課題を達成すると共に、例
えばDMAコントローラ等のアドレス設定に構成をより
適合させ、アクセスの容易化をより図っている。
Further, in the internal register circuit, at least one of the internal registers stores some address, and further, the selected internal register has a bit length longer than the bit length n. On the other hand, when accessing each part in the unit of the bit length n, the internal register is accessed in order from the LSB side, thereby achieving the above-mentioned problems and, for example, address setting of a DMA controller or the like. The configuration is more adapted and access is easier.

【0027】[0027]

【作用】前記図3に示した従来の内部レジスタ回路にお
いては、LSB側の内部レジスタへのみアクセスし、こ
のMSB側の内部レジスタへはアクセスしない場合に
は、前記ファースト・ラスト・フリップフロップ14C
を初期化する必要がある点に、本発明は着目し、なされ
ている。
In the conventional internal register circuit shown in FIG. 3, if only the internal register on the LSB side is accessed and the internal register on the MSB side is not accessed, the first last flip-flop 14C is used.
The present invention is made paying attention to the fact that it is necessary to initialize.

【0028】従来については、前述のように例えば「ク
リア・ファースト・ラスト・フリップフロップ・コマン
ド」等を用いている。ここで、本発明においては、この
ようなコマンドを用いることなく、前記ファースト・ラ
スト・フリップフロップ14Cを自動的に初期化する構
成を見出しなされたものである。
Conventionally, as described above, for example, the "clear first last flip-flop command" or the like is used. Here, in the present invention, a structure for automatically initializing the first last flip-flop 14C without using such a command has been found.

【0029】ここで、内部レジスタ回路において今回行
うアクセスのアドレスと、この直前のアクセスのアドレ
ス及びアクセスの種類(読み出しアクセスあるいは書き
込みアクセス)とが一致する場合、前回のアクセスはL
SB側の内部レジスタに対するアクセスであって、今回
のアクセスはこのMSB側の内部レジスタに対するアク
セスとなるのが一般的である。一方、今回のアクセスの
アドレスに対して、直前のアクセスのアドレス又はアク
セスの種類(読み出しアクセスあるいは書き込みアクセ
ス)が不一致の場合、前記ファースト・ラスト・フリッ
プフロップ14Cへ記憶される論理状態の意味がなくな
る。このため、このような不一致の場合、2回目のアク
セスに先立って前記ファースト・ラスト・フリップフロ
ップ14Cを初期化する必要があるのが一般的である。
If the address of the access performed this time in the internal register circuit matches the address of the access immediately before and the type of access (read access or write access), the previous access is L.
It is an access to the internal register on the SB side, and this access is generally an access to the internal register on the MSB side. On the other hand, when the address of the immediately preceding access or the type of access (read access or write access) does not match the address of the current access, the meaning of the logical state stored in the first last flip-flop 14C becomes meaningless. . Therefore, in the case of such a mismatch, it is generally necessary to initialize the first last flip-flop 14C prior to the second access.

【0030】このような点に着目し、本発明において
は、内部レジスタ回路中の複数の前記内部レジスタの1
つに対して行った、直前のアクセスのアドレス及びアク
セスの種類(読み出しアクセスあるいは書き込みアクセ
ス)を、直前アドレスレジスタにて記憶するようにして
いる。又、今発明においては、該直前アドレスレジスタ
へ記憶されるアドレス及びアクセスの種類(読み出しア
クセスあるいは書き込みアクセス)と、複数の前記内部
レジスタの1つに対して行う今回のアクセスのアドレス
及びアクセスの種類(読み出しアクセスあるいは書き込
みアクセス)との一致を、比較器にて判定するようにし
ている。該比較器にて不一致と判定された場合、本発明
においては前記ファースト・ラスト・フリップフロップ
14Cをリセット(初期化)するようにしている。
Focusing on such a point, in the present invention, one of the plurality of internal registers in the internal register circuit is used.
The address of the immediately preceding access and the type of access (read access or write access) made to one of the two are stored in the immediately preceding address register. Further, in the present invention, the address and access type (read access or write access) stored in the immediately preceding address register, and the address and access type of the current access performed to one of the plurality of internal registers. A match is determined by the comparator with (read access or write access). When the comparator determines that they do not match, the first last flip-flop 14C is reset (initialized) in the present invention.

【0031】このように、本発明においては、直前にア
クセスしたアドレスと異なる内部レジスタに対して今回
アクセスを行う場合、あるいは直前のアクセスと異なる
種類のアクセスを行う場合には、前記ファースト・ラス
ト・フリップフロップ14Cが自動的にリセット(初期
化)される。この、直前のアクセスと異なる種類のアク
セスを行う場合とは、前回に読み出しアクセスを行って
今回には書き込みアクセスを行う場合、又は、前回に書
き込みアクセスを行って今回には読み出しアクセスを行
う場合である。従って、前述のように前記ファースト・
ラスト・フリップフロップ14Cが自動的にリセットさ
れるため、前記図3の従来のような「クリア・ファース
ト・ラスト・フリップフロップ・コマンド」の必要がな
く、内部レジスタへの書き込みアクセスや読み出しアク
セスをより容易に行うことが可能である。
As described above, in the present invention, when the internal register different from the address accessed immediately before is accessed this time, or when the type of access different from the previous access is performed, the first last The flip-flop 14C is automatically reset (initialized). This kind of access different from the immediately preceding access means that the read access is performed last time and the write access is performed this time, or the write access is performed the last time and the read access is performed this time. is there. Therefore, as described above,
Since the last flip-flop 14C is automatically reset, there is no need for the "clear first last flip-flop command" as in the conventional case shown in FIG. 3, and write access and read access to the internal register can be further performed. It can be done easily.

【0032】なお、前記図3の従来のものでは、16ビ
ット長の前記ソースアドレスレジスタSR等は、8ビッ
ト単位で2回に分けてアクセスするようにされている。
しかしながら、本発明はこのようなものに限定されるも
のではなく、2回以上に分けて順次アクセスするような
ものであってもよい。例えば32ビット長の内部レジス
タを、8ビット単位で4回に分け順次アクセスするよう
なものであってもよい。このような場合には、前記ファ
ースト・ラスト・フリップフロップ14Cに対応するも
のとして、少なくとも、データバスのビット長単位で順
次アクセスする回数以上の状態を区別して記憶すること
ができるカウンタを備える必要がある。
In the prior art of FIG. 3, the 16-bit length source address register SR and the like are accessed in two 8-bit units.
However, the present invention is not limited to such a case, and may be one in which the access is sequentially performed in two or more times. For example, an internal register having a length of 32 bits may be divided into four 8-bit units and sequentially accessed. In such a case, it is necessary to provide at least a counter that corresponds to the first last flip-flop 14C and can store at least the number of times of sequential access in units of bit length of the data bus. is there.

【0033】例えば後述する第2実施例の、部分アドレ
スレジスタ14aやインクリメンタ14bのようなもの
を備える必要がある。このようなものであっても、本発
明を適用し、前記直前アドレスレジスタへ記憶されるア
ドレス及びアクセスの種類(読み出しアクセスあるいは
書き込みアクセス)と、複数の前記内部レジスタの1つ
に対して行う今回のアクセスのアドレス及びアクセスの
種類(読み出しアクセスあるいは書き込みアクセス)と
が不一致の場合、このような部分アドレスレジスタ14
aの初期化を行えばよい。
For example, it is necessary to provide the partial address register 14a and the incrementer 14b of the second embodiment described later. Even in such a case, the present invention is applied to the address stored in the immediately preceding address register and the type of access (read access or write access) and one of the plurality of internal registers. If the access address and the type of access (read access or write access) do not match, the partial address register 14
It suffices to initialize a.

【0034】[0034]

【実施例】以下、図を用いて本発明の実施例を詳細に説
明する。
Embodiments of the present invention will be described in detail below with reference to the drawings.

【0035】図1は、DMAコントローラに用いられる
本発明が適用された内部レジスタ回路の第1実施例のブ
ロック図である。
FIG. 1 is a block diagram of a first embodiment of an internal register circuit to which the present invention is applied, which is used in a DMA controller.

【0036】この図3に示される如く、本第1実施例の
内部レジスタ回路は、内部レジスタ群3Aと、内部レジ
スタ選択デコーダ18Aと、アドレス比較器16とによ
って構成されている。又、前記内部レジスタ群3Aは、
ソースアドレスレジスタSRと、デスティネーションア
ドレスレジスタDRと、コントロールレジスタCRと、
I/Oアクセス数値化回路5と、直前アドレスレジスタ
12と、ファースト・ラスト・フリップフロップ14A
とにより構成されている。
As shown in FIG. 3, the internal register circuit of the first embodiment comprises an internal register group 3A, an internal register selection decoder 18A and an address comparator 16. Further, the internal register group 3A is
A source address register SR, a destination address register DR, a control register CR,
I / O access digitizing circuit 5, immediately preceding address register 12, and first last flip-flop 14A
It is composed of

【0037】まず、前記ソースアドレスレジスタSR、
前記デスティネーションアドレスレジスタDR及び前記
コントロールレジスタCRについては、それぞれ、前記
図3の従来のものと同様に構成されている。
First, the source address register SR,
Each of the destination address register DR and the control register CR has the same structure as the conventional one shown in FIG.

【0038】前記I/Oアクセス数値化回路5には、I
O読み出し信号IORD及びIO書き込み信号IOWR
が入力されている。前記ソースアドレスレジスタSR
や、前記デスティネーションアドレスレジスタDRや、
前記コントロールレジスタCR等に対する読み出しアク
セスの際には前記IO読み出し信号IORDがH状態と
なり、書き込みアクセスの際には前記IO書き込み信号
IOWRがH状態となる。又、該I/Oアクセス数値化
回路5は、読み出しアクセスの際には“0(L状態)”
の信号Bを出力し、書き込みアクセスの際には“1(H
状態)”の該信号Bを出力する。
The I / O access digitizing circuit 5 has an I
O read signal IORD and IO write signal IOWR
Has been entered. The source address register SR
Or the destination address register DR,
The IO read signal IORD is in the H state during a read access to the control register CR, and the IO write signal IOWR is in the H state during a write access. Further, the I / O access digitizing circuit 5 is "0 (L state)" at the time of read access.
Signal B of “1 (H
The signal B of "state)" is output.

【0039】又、前記直前アドレスレジスタ12は、前
記アドレスバスAを経て外部から入力される、前記ソー
スアドレスレジスタSR、前記デスティネーションアド
レスレジスタDRあるいは前記コントロールレジスタC
Rのいずれか1つを選択する、直前のI/Oアクセスの
アドレスを記憶すると共に、該直前のI/Oアクセスの
種類を数値化する前記I/Oアクセス数値化回路5から
入力される、前記信号Bの論理状態を記憶する。ここ
で、該信号Bの論理状態を記憶することで、直前のI/
Oアクセスの種類を示す論理状態(ビットデータ)が記
憶される。
The immediately preceding address register 12 is input from the outside via the address bus A, the source address register SR, the destination address register DR or the control register C.
Inputting from the I / O access digitizing circuit 5 which stores the address of the immediately preceding I / O access for selecting any one of R and digitizes the type of the immediately preceding I / O access, The logic state of the signal B is stored. Here, by storing the logical state of the signal B, the immediately preceding I /
A logical state (bit data) indicating the type of O access is stored.

【0040】前記ファースト・ラスト・フリップフロッ
プ14Aは、前記ファースト・ラスト・フリップフロッ
プ14Cに相当するものである。該ファースト・ラスト
・フリップフロップ14Aへ記憶される論理状態によっ
て、前記ソースアドレスレジスタSR、前記デスティネ
ーションアドレスレジスタDRあるいは前記コントロー
ルレジスタCRのいずれか1つに対してアクセスする
際、該アクセスがLSB側の8ビットに対してか、ある
いはMSB側の8ビットに対してかを選択するものであ
る。
The first last flip-flop 14A corresponds to the first last flip-flop 14C. When accessing any one of the source address register SR, the destination address register DR, or the control register CR, depending on the logic state stored in the first last flip-flop 14A, the access is performed on the LSB side. Or 8 bits on the MSB side are selected.

【0041】具体的には、前記ファースト・ラスト・フ
リップフロップ14AへL状態が記憶される初期状態で
は、前記アドレスバスAから入力されるアドレス信号に
応じ、前記ソースアドレスレジスタSR0、前記デステ
ィネーションアドレスレジスタDR0あるいは前記コン
トロールレジスタCR0のいずれか1つを、前記内部レ
ジスタ選択デコーダ18Aによって選択する。一方、前
記ファースト・ラスト・フリップフロップ14AへH状
態が記憶される場合、前記ソースアドレスレジスタSR
1、前記デスティネーションアドレスレジスタDR1あ
るいは前記コントロールレジスタCR1のいずれか1つ
を、前記内部レジスタ選択デコーダ18Aによって選択
する。
Specifically, in the initial state where the L state is stored in the first last flip-flop 14A, the source address register SR0 and the destination address are responded to according to the address signal input from the address bus A. Either the register DR0 or the control register CR0 is selected by the internal register selection decoder 18A. On the other hand, when the H state is stored in the first last flip-flop 14A, the source address register SR
1. Either the destination address register DR1 or the control register CR1 is selected by the internal register selection decoder 18A.

【0042】ここで、前記直前アドレスレジスタ12
は、このように前記アドレスバスAから入力されるアド
レス信号及びアクセスの種類(読み出しアクセスあるい
は書き込みアクセス)を記憶する。該直前アドレスレジ
スタ12の記憶するアドレス及びアクセスの種類(読み
出しアクセスあるいは書き込みアクセス)の更新のタイ
ミングは、前記ソースアドレスレジスタSR、前記デス
ティネーションアドレスレジスタDRあるいは前記コン
トロールレジスタCRへのアクセスの直後で、且つ、次
のアクセス以前のタイミングである。具体的には、前記
制御信号26Aの立下がりのタイミングである。
Here, the immediately preceding address register 12
Stores the address signal input from the address bus A and the type of access (read access or write access). The timing of updating the address stored in the immediately preceding address register 12 and the type of access (read access or write access) is immediately after the access to the source address register SR, the destination address register DR, or the control register CR. Moreover, it is the timing before the next access. Specifically, it is the timing of the fall of the control signal 26A.

【0043】又、前記アドレス比較器16は、前記直前
アドレスレジスタ12へ記憶されるアドレス及びアクセ
スの種類(読み出しアクセスあるいは書き込みアクセ
ス)と、今回のアクセスに際して入力される、前記アド
レスバスAのアドレス信号のアドレス及びアクセスの種
類(読み出しアクセスあるいは書き込みアクセス)とを
比較する。該比較の際、不一致と判定された場合、該ア
ドレス比較器16は、制御信号26Bによって、前記フ
ァースト・ラスト・フリップフロップ14Aに記憶され
る論理状態を初期化する。即ち、該ファースト・ラスト
・フリップフロップ14Aへ記憶される論理状態をL状
態に初期化する。このように不一致と判定される場合
は、I/Oアクセスのアドレスの不一致、又はI/Oア
クセスの種類(読み出しアクセスあるいは書き込みアク
セスという、アクセスの種類)の不一致の、少なくとも
いずれか一方の不一致の場合である。
Further, the address comparator 16 inputs the address stored in the immediately preceding address register 12 and the type of access (read access or write access) and the address signal of the address bus A inputted at the time of this access. And the type of access (read access or write access). If it is determined that they do not match during the comparison, the address comparator 16 initializes the logic state stored in the first last flip-flop 14A by the control signal 26B. That is, the logic state stored in the first last flip-flop 14A is initialized to the L state. When it is determined that they do not coincide with each other, at least one of the I / O access address and the I / O access type (read access or write access, which is the access type) does not match. This is the case.

【0044】このように、本第1実施例によれば、LS
B側の前記ソースアドレスレジスタSR0、前記デステ
ィネーションアドレスレジスタDR0あるいは前記コン
トロールレジスタCR0のいずれかの内部レジスタにア
クセスした後、これとは異なる別の内部レジスタのLS
B側の前記ソースアドレスレジスタSR0、前記デステ
ィネーションアドレスレジスタDR0あるいは前記コン
トロールレジスタCR0へアクセスする場合、あるいは
同一のアドレスへのアクセスながら前回と異なるアクセ
スの種類(読み出しアクセスの後の書き込みアクセス、
又はその逆)でアクセスする場合、前記アドレス比較器
16からの前記制御信号26Bによって、前記ファース
ト・ラスト・フリップフロップ14Aが自動的に初期化
される。このため、前記図3に示した従来のもののよう
に、例えば「クリア・ファースト・ラスト・フリップフ
ロップ・コマンド」等は不必要となる。従って、本第1
実施例によれば、本発明を適用し、内部レジスタへの書
き込みアクセスや読み出しアクセスをより容易に行うこ
とができる。
As described above, according to the first embodiment, the LS
After accessing any internal register of the source address register SR0, the destination address register DR0 or the control register CR0 on the B side, the LS of another internal register different from this is accessed.
When the source address register SR0, the destination address register DR0, or the control register CR0 on the B side is accessed, or the type of access different from the previous one while accessing the same address (write access after read access,
(Or vice versa), the control signal 26B from the address comparator 16 automatically initializes the first last flip-flop 14A. Therefore, unlike the conventional one shown in FIG. 3, for example, the "clear first last flip-flop command" is unnecessary. Therefore, the first
According to the embodiment, the present invention can be applied to more easily perform write access and read access to the internal register.

【0045】図2は、DMAコントローラに用いられる
本発明が適用された内部レジスタ回路の第2実施例のブ
ロック図である。
FIG. 2 is a block diagram of a second embodiment of an internal register circuit to which the present invention is applied, which is used in a DMA controller.

【0046】この図2に示されるように、本第2実施例
については、前記ソースアドレスレジスタSRは、それ
ぞれが8ビット長のソースアドレスレジスタSR0〜S
R2によって構成されている。又、前記デスティネーシ
ョンアドレスレジスタDRは、それぞれが8ビット長の
デスティネーションアドレスレジスタDR0〜DR2に
よって構成される。又、前記図3の従来の前記ファース
ト・ラスト・フリップフロップ14Cに対応するものと
して、あるいは前記第1実施例の前記ファースト・ラス
ト・フリップフロップ14Aに対応するものとして、部
分アドレスレジスタ14a及びインクリメンタ14bに
て構成されるインクリメンタリレジスタを備える。
As shown in FIG. 2, in the second embodiment, each of the source address registers SR has an 8-bit length.
It is composed of R2. Further, the destination address register DR is composed of destination address registers DR0 to DR2 each having an 8-bit length. Further, the partial address register 14a and the incrementer are provided as the one corresponding to the conventional first last flip-flop 14C of FIG. 3 or the one corresponding to the first last flip-flop 14A of the first embodiment. An incremental register 14b is provided.

【0047】又、内部レジスタ選択デコーダ18Bは、
前記第1実施例の前記内部レジスタ選択デコーダ18A
に相当するものである。該内部レジスタ選択デコーダ1
8Bは、前記アドレスバスAにて外部から入力されるア
ドレス信号と、前記部分アドレスレジスタ14aから入
力される部分アドレスA3とに従って、前記ソースアド
レスレジスタSR0〜SR2のいずれか1つ、前記デス
ティネーションアドレスレジスタDR0〜DR2のいず
れか1つ、あるいは前記コントロールレジスタCR0、
CR1のいずれか一方を選択する。
Further, the internal register selection decoder 18B is
The internal register selection decoder 18A of the first embodiment.
Is equivalent to The internal register selection decoder 1
Reference numeral 8B denotes one of the source address registers SR0 to SR2 and the destination address according to an address signal externally input via the address bus A and a partial address A3 input from the partial address register 14a. Any one of the registers DR0 to DR2, or the control register CR0,
Either one of CR1 is selected.

【0048】このような本第2実施例において、前記内
部レジスタ選択デコーダ18Bは、“0”〜“2”の値
をとる前記アドレスバスAからの2本のアドレス線によ
るアドレス信号に応じて、前記ソースアドレスレジスタ
SR、前記デスティネーションアドレスレジスタDR、
あるいは前記コントロールレジスタCRのいずれか1つ
を選択する。前記アドレスバスAから“0”のアドレス
が入力される場合、前記内部レジスタ選択デコーダ18
Bは、前記ソースアドレスレジスタSR0〜SR2のい
ずれか1つを選択する。“1”が前記アドレスバスAか
ら入力される場合、該内部レジスタ選択デコーダ18B
は、前記デスティネーションアドレスレジスタDR0〜
DR2のいずれか1つを選択する。更に、該内部レジス
タ選択デコーダ18Bは、前記アドレスバスAから
“2”が入力される場合、前記コントロールレジスタC
R0あるいはCR1を選択する。
In the second embodiment as described above, the internal register selection decoder 18B responds to the address signals from the two address lines from the address bus A taking the values of "0" to "2". The source address register SR, the destination address register DR,
Alternatively, one of the control registers CR is selected. When an address of “0” is input from the address bus A, the internal register selection decoder 18
B selects any one of the source address registers SR0 to SR2. When "1" is input from the address bus A, the internal register selection decoder 18B
Are the destination address registers DR0 to DR0.
Select any one of DR2. Further, the internal register selection decoder 18B receives the control register C when "2" is input from the address bus A.
Select R0 or CR1.

【0049】ここで、前記部分アドレスレジスタ14a
の初期値は“0”である。該部分アドレスレジスタ14
aは、前記ソースアドレスレジスタSR0〜SR2いず
れか、あるいは、前記デスティネーションアドレスレジ
スタDR0〜DR2のいずれか1つ、あるいは、前記コ
ントロールレジスタCR0、CR1へアクセスする毎
に、その値が順次インクリメント(値を“1”だけ増
加)する。このインクリメントは、前記インクリメンタ
14bによって行われる。
Here, the partial address register 14a
The initial value of is 0. The partial address register 14
The value a is sequentially incremented (value is incremented every time the source address register SR0 to SR2 is accessed, the destination address register DR0 to DR2 is accessed, or the control registers CR0 and CR1 are accessed. Is increased by “1”). This increment is performed by the incrementer 14b.

【0050】ここで、前記内部レジスタ選択デコーダ1
8Bは、前記アドレスバスAにて外部から入力されるア
ドレス信号にて選択した前記ソースアドレスレジスタS
R、前記デスティネーションアドレスレジスタDR、あ
るいは前記コントロールレジスタCRの、これら内部レ
ジスタの選択されたものについて、LSB側部分、中央
部分、あるいはMSB側部分のいずれか1つを選択す
る。
Here, the internal register selection decoder 1
8B is the source address register S selected by an address signal externally input to the address bus A.
One of R, the destination address register DR, or the control register CR selected from these internal registers is selected from the LSB side portion, the central portion, or the MSB side portion.

【0051】例えば、前記アドレスバスAのアドレスが
“1”で前記部分アドレスレジスタ14aへ記憶され出
力されるアドレスA3が“1”の場合、前記デスティネ
ーションアドレスレジスタDR1が選択される。あるい
は、前記アドレスバスAのアドレスが“2”であって、
且つ、前記アドレスA3が“0”の場合、前記コントロ
ールレジスタCR0が選択される。又、前記アドレスA
3が2であれば、前記アドレスバスAのアドレスに従っ
て、前記レジスタSR2又はDR2が選択される。
For example, when the address of the address bus A is "1" and the address A3 stored and output to the partial address register 14a is "1", the destination address register DR1 is selected. Alternatively, if the address of the address bus A is “2”,
When the address A3 is "0", the control register CR0 is selected. Also, the address A
If 3 is 2, the register SR2 or DR2 is selected according to the address of the address bus A.

【0052】以下、具体例を用い、本第2実施例の作用
を説明する。
The operation of the second embodiment will be described below using a specific example.

【0053】まず、前記ソースアレドスレジスタSR0
〜SR2の3バイトに対して、1バイトずつ順次読み出
しアクセスする場合を考える。
First, the source aldeus register SR0.
Consider a case where the 3 bytes of SR2 are sequentially read and accessed byte by byte.

【0054】ここで、前記部分アドレスレジスタ14A
に記憶される初期値は“0”とする。このとき、前記ア
ドレスバスAへ“0”のアドレスを入力し読み出しアク
セスを行うと、前記ソースアドレスレジスタSR0が選
択され、読み出しアクセスすることができる。該アクセ
スの後に、前記部分アドレスレジスタ14aへ記憶され
るアドレスは、前記インクリメンタ14bにてインクリ
メントされる。
Here, the partial address register 14A
The initial value stored in is set to "0". At this time, if an address "0" is input to the address bus A and read access is performed, the source address register SR0 is selected and read access can be performed. After the access, the address stored in the partial address register 14a is incremented by the incrementer 14b.

【0055】続いて前記アドレスバスAから“0”を入
力しながら読み出しアクセスをすると、前記部分アドレ
スレジスタ14aの値は“1”であるため、今度は前記
ソースアドレスレジスタSR1が選択され、読み出しア
クセスできる。次に、前記アドレスバスAへ“2”を入
力しながらアクセスすると、今度は前記部分アドレスレ
ジスタ14aの値は“2”となっているため、前記ソー
スアドレスレジスタSR2の選択がなされ、読み出しア
クセスができる。なお、この後、前記部分アドレスレジ
スタ14aの値は“0”へリセットされる。具体的に
は、該部分アドレスレジスタ14aは、記憶される値が
“2”で且つ前記制御信号26Aが立下がると、このタ
イミングでリセットされ、この記憶する値が“0”とな
る。
When a read access is made while inputting "0" from the address bus A, the value of the partial address register 14a is "1". Therefore, the source address register SR1 is selected and the read access is made. it can. Next, when accessing while inputting "2" to the address bus A, since the value of the partial address register 14a is "2" this time, the source address register SR2 is selected and the read access is performed. it can. After that, the value of the partial address register 14a is reset to "0". Specifically, the partial address register 14a is reset at this timing when the stored value is "2" and the control signal 26A falls, and the stored value becomes "0".

【0056】ここで、以上の前記ソースアドレスレジス
タSR0〜SR2に対する説明は読み出しアクセスにつ
いてであるが、同ソースアドレスレジスタSR0〜SR
2に対する書き込みアクセスについても同様である。即
ち、以上のこの説明の「読み出しアクセス」を「書き込
みアクセス」と読み換えたものとなる。
Here, the above description of the source address registers SR0 to SR2 is about the read access, but the source address registers SR0 to SR are the same.
The same applies to the write access to 2. That is, the above-mentioned "read access" is replaced with "write access".

【0057】次に、前記ソースアドレスレジスタSR0
のアクセスの後に、前記デスティネーションアドレスレ
ジスタDR0をアクセスする場合は次のとおりである。
Next, the source address register SR0
The following is a case of accessing the destination address register DR0 after the above access.

【0058】即ち、まず前記部分アドレスレジスタ14
aの値が“0”であるとする。ここで、前記アドレスバ
スAから“0”のアドレスを入力すると、前記ソースア
ドレスレジスタSR0が前記内部レジスタ選択デコーダ
18B等によって選択され、アクセスできる。
That is, first, the partial address register 14
It is assumed that the value of a is “0”. When an address "0" is input from the address bus A, the source address register SR0 is selected by the internal register selection decoder 18B or the like and can be accessed.

【0059】この後、前記デスティネーションアドレス
レジスタDR0をアクセスすべく、前記アドレスバスA
から“1”のアドレスを入力する。このとき、この
“1”のアドレスは、直前のアクセスのアドレス、即ち
前記ソースアドレスレジスタSR0に対して行ったアク
セスの際のアドレス“0”とは異なる。このため、前記
アドレス比較器16は、このようなアドレスの不一致を
検出し、前記制御信号26Bによって前記部分アドレス
レジスタ14aの値を“0”にリセットする。
Thereafter, in order to access the destination address register DR0, the address bus A
Enter the address of "1". At this time, the address of "1" is different from the address of the immediately preceding access, that is, the address "0" at the time of access to the source address register SR0. Therefore, the address comparator 16 detects such an address mismatch and resets the value of the partial address register 14a to "0" by the control signal 26B.

【0060】このため、このような今回のアクセスの際
には、前記アドレスバスAの“1”と前記部分アドレス
レジスタ14aに記憶される“0”の部分アドレスA3
に従って、前記内部レジスタ選択デコーダ18Bは前記
デスティネーションアドレスレジスタDR0を選択す
る。この今回のアクセスの際には、前記部分アドレスレ
ジスタ14a、即ち前記図3に示した従来の前記ファー
スト・ラスト・フリップフロップ14Cに対応するもの
のリセットは自動的に行われるため、従来のような「ク
リア・ファースト・ラスト・フリップフロップ・コマン
ド」の実行は不要となる。
For this reason, at the time of this access, the partial address A3 of "0" stored in the partial address register 14a and "1" of the address bus A is stored.
Accordingly, the internal register selection decoder 18B selects the destination address register DR0. At the time of this access, the partial address register 14a, that is, the one corresponding to the conventional first last flip-flop 14C shown in FIG. 3 is automatically reset. It is not necessary to execute the "Clear First Last Flip-Flop Command".

【0061】次に、前記ソースアドレスレジスタSR0
の書き込みアクセスの後に、該ソースアドレスレジスタ
SR0を読み出しアクセスする場合は次のとおりであ
る。
Next, the source address register SR0
When the source address register SR0 is read-accessed after the write-access, the following is performed.

【0062】即ち、まず前記部分アドレスレジスタ14
aの値が“0”であるとする。ここで、前記アドレスバ
スAから“0”のアドレスを入力すると、前記ソースア
ドレスレジスタSR0が前記内部レジスタ選択デコーダ
18B等によって選択され、書き込みアクセスできる。
That is, first, the partial address register 14
It is assumed that the value of a is “0”. Here, when an address "0" is input from the address bus A, the source address register SR0 is selected by the internal register selection decoder 18B or the like, and write access is possible.

【0063】この後、該ソースアドレスレジスタSR0
に対して読み出しアクセスすべく、前記アドレスバスA
から“0”のアドレスを入力する。このとき、このアク
セスの種類は読み出しアクセスであり、直前のアクセス
の種類、即ち書き込みアクセスとは異なる。このため、
前記アドレス比較器16は、このようなアクセスの種類
の不一致を検出し、前記制御信号26Bによって前記部
分アドレスレジスタ14aの値を“0”にリセットす
る。
Thereafter, the source address register SR0
Address bus A for read access to
Input the address of "0". At this time, the type of access is read access, which is different from the type of access immediately before, that is, write access. For this reason,
The address comparator 16 detects such a mismatch in access types and resets the value of the partial address register 14a to "0" by the control signal 26B.

【0064】このため、このような今回のアクセスの際
には、アクセスの種類の不一致の検出に従って、前記内
部レジスタ選択デコーダ18Bは前記ソースアドレスレ
ジスタSR0を選択する。この今回のアクセスの際に
は、前記部分アドレスレジスタ14a、即ち前記図3に
示した従来の前記ファースト・ラスト・フリップフロッ
プ14Cに対応するもののリセットは自動的に行われる
ため、従来のような「クリア・ファースト・ラスト・フ
リップフロップ・コマンド」の実行は不要となる。
Therefore, at the time of this access, the internal register selection decoder 18B selects the source address register SR0 according to the detection of the mismatch of the access types. At the time of this access, the partial address register 14a, that is, the one corresponding to the conventional first last flip-flop 14C shown in FIG. 3 is automatically reset. It is not necessary to execute the "Clear First Last Flip-Flop Command".

【0065】以上説明したとおり、本第2実施例につい
ても、本発明を適用し、内部レジスタ、即ち前記ソース
アドレスレジスタSR、前記デスティネーションアドレ
スレジスタDR又前記コントロールレジスタCRへの書
き込みアクセスや読み出しアクセスをより容易に行える
ようにすることができる。又、本第2実施例について
は、前記第1実施例と異なり、前記ソースアドレスレジ
スタSRや前記デスティネーションアドレスレジスタD
Rが特に3バイト構成となっている。このようなものに
対しても、本第2実施例については、前記部分アドレス
レジスタ14a及び前記インクリメンタ14bで構成さ
れる本発明を適用したインクリメンタリレジスタを用い
て対応することができている。
As described above, the present invention is applied to the second embodiment as well, and write access and read access to the internal registers, that is, the source address register SR, the destination address register DR, and the control register CR are performed. Can be made easier. Also, in the second embodiment, unlike the first embodiment, the source address register SR and the destination address register D are included.
R has a particularly 3-byte structure. The second embodiment can cope with such a case by using the incremental register to which the present invention is applied, which is composed of the partial address register 14a and the incrementer 14b.

【0066】なお、本発明は、前記第1実施例や前記第
2実施例の如く、DMAコントローラに用いられる内部
レジスタ回路に限定されるものではない。しかしなが
ら、このようなDMAコントローラに用いられる内部レ
ジスタ回路や、あるいは、種々のタイマやカウンタ等に
内蔵される内部レジスタ回路にはより有効である。これ
は、DMAコントローラやタイマ、又カウンタ等は、デ
ータバス等を介してアクセスするビット長よりも長い内
部レジスタを備えているのが一般的であるためである。
又、このような内部レジスタは、例えばアドレス等が記
憶されるものであり、このようにビット長が長い内部レ
ジスタについては、所定のビット長毎に、順次アクセス
することが多いためである。
The present invention is not limited to the internal register circuit used in the DMA controller as in the first embodiment and the second embodiment. However, it is more effective for an internal register circuit used in such a DMA controller or an internal register circuit incorporated in various timers and counters. This is because the DMA controller, the timer, the counter, and the like generally have an internal register longer than the bit length accessed through the data bus or the like.
This is because such an internal register stores, for example, an address and the like, and an internal register having such a long bit length is often accessed sequentially for each predetermined bit length.

【0067】ここで、このように所定のビット長毎に1
つの内部レジスタに対して順次アクセスする場合、当該
内部レジスタのLSB側から順次アクセスするように構
成することが好ましい。これは、所定のビット長単位で
アクセスされる内部レジスタについては、例えばその一
部分のみ更新する場合、MSB側のものよりもLSB側
のものの方がより更新する頻度が高いためである。
Here, 1 is set for each predetermined bit length in this way.
When sequentially accessing one internal register, it is preferable to sequentially access the LSB side of the internal register. This is because the internal register accessed in a predetermined bit length unit is updated more frequently on the LSB side than on the MSB side when only a part of the internal register is updated.

【0068】又、前記図3に示した従来の内部レジスタ
回路等、前述のように「クリア・ファースト・ラスト・
フリップフロップ・コマンド」を用いるようにしたもの
では、本来このコマンドを必要とするのに、このコマン
ドを落してしまうというミスがある。この場合、予期し
ない内部レジスタに対してアクセスされていしまい、誤
った動作を行わせてしまう。このようにコマンドを誤っ
て落してしまった場合、このことを見出すことは比較的
困難な場合がある。しかしながら、本発明にあってはこ
のようなコマンドを用いないため、プログラムの信頼性
をより向上することができるという利点もある。
Further, as described above, the conventional internal register circuit shown in FIG.
The one that uses the "flip-flop command" has the mistake of dropping this command even though it originally needs this command. In this case, an unexpected internal register is accessed, causing an erroneous operation. If you accidentally drop a command in this way, finding this out can be relatively difficult. However, in the present invention, since such a command is not used, there is an advantage that the reliability of the program can be further improved.

【0069】更に、本発明によれば、このように「クリ
ア・ファースト・ラスト・フリップフロップ・コマン
ド」がないため、内部レジスタへデータを設定するため
のプログラムを短縮することもできる。例えば、前記ソ
ースアドレスレジスタSRや前記デスティネーションア
ドレスレジスタDRのLSB側の、前記ソースアドレス
レジスタSR0や前記デスティネーションアドレスレジ
スタDR0へのみアクセスすることを多数行うことも考
えられる。この場合、本発明によれば、従来その都度行
っていた「クリア・ファースト・ラスト・フリップフロ
ップ・コマンド」が不要となるため、プログラムの長さ
を非常に短縮することが可能である。
Further, according to the present invention, since there is no "clear first last flip-flop command" as described above, the program for setting data in the internal register can be shortened. For example, it is possible to make many accesses only to the source address register SR0 and the destination address register DR0 on the LSB side of the source address register SR and the destination address register DR. In this case, according to the present invention, the "Clear First Last Flip-Flop Command" which has been conventionally performed each time is not necessary, so that the length of the program can be greatly shortened.

【0070】一般に、DMAコントローラでは、転送元
あるいは転送先となるメモリ空間は、ある程度限られた
範囲となっているものである。従って、転送元アドレス
や転送先アドレスの変更範囲も限られている。即ち、M
SB側の前記ソースアドレスレジスタSR1や前記デス
ティネーションアドレスレジスタDR1の更新の頻度は
比較的少ないものである。従って、LSB側の前記ソー
スアドレスレジスタSR0や前記デスティネーションア
ドレスレジスタDR0へのみのアクセスが頻繁に生じる
と考えられる。このような場合には、本発明はより有効
であり、内部レジスタへアクセスするためのプログラム
をより容易に行うことが可能であり、又このようなプロ
グラムがより一層短縮される。又、このような内部レジ
スタへのアクセスのプログラムの実行時間の短縮をも図
ることが可能である。
Generally, in the DMA controller, the memory space as a transfer source or a transfer destination is a limited range to some extent. Therefore, the change range of the transfer source address and the transfer destination address is also limited. That is, M
The frequency of updating the source address register SR1 and the destination address register DR1 on the SB side is relatively low. Therefore, it is considered that access only to the source address register SR0 and the destination address register DR0 on the LSB side frequently occurs. In such a case, the present invention is more effective, a program for accessing the internal register can be more easily performed, and such a program is further shortened. Further, it is possible to shorten the execution time of the program for accessing such internal registers.

【0071】[0071]

【発明の効果】以上説明したとおり、本発明によれば、
内部レジスタへの書き込みアクセスや読み出しアクセス
をより容易に行うことができ、更に、このようなアクセ
スのためのプログラムの簡略化や、プログラム長の短
縮、プログラム実行時間の短縮等を図ることができると
いう優れた効果を得ることができる。
As described above, according to the present invention,
Write access and read access to the internal register can be performed more easily, and further, the program for such access can be simplified, the program length can be shortened, and the program execution time can be shortened. An excellent effect can be obtained.

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

【図1】DMAコントローラ等に用いられる本発明が適
用された内部レジスタ回路の第1実施例のブロック図
FIG. 1 is a block diagram of a first embodiment of an internal register circuit to which the present invention is applied, which is used in a DMA controller or the like.

【図2】DMAコントローラ等に用いられる本発明が適
用された内部レジスタ回路の第2実施例のブロック図
FIG. 2 is a block diagram of a second embodiment of an internal register circuit to which the present invention is applied, which is used in a DMA controller or the like.

【図3】DMAコントローラ等に用いられる従来の内部
レジスタ回路のブロック図
FIG. 3 is a block diagram of a conventional internal register circuit used in a DMA controller or the like.

【符号の説明】[Explanation of symbols]

3A、3B…内部レジスタ群 12…直前アドレスレジスタ 14A、14C…ファースト・ラスト・フリップフロッ
プ 14a…部分アドレスレジスタ 14b…インクリメンタ 16…アドレス比較器 18A〜18C…内部レジスタ選択デコーダ 22A〜22C…レジスタ選択用バッファ 24A〜24C…上位/下位選択用セレクタ 26A、26B、27A…制御信号 A…アドレスバス CR…コントロールレジスタ D…データバス DR…デスティネーションアドレスレジスタ SR…ソースアドレスレジスタ
3A, 3B ... Internal register group 12 ... Previous address register 14A, 14C ... First last flip-flop 14a ... Partial address register 14b ... Incrementer 16 ... Address comparator 18A-18C ... Internal register selection decoder 22A-22C ... Register selection Buffers 24A to 24C ... Higher / lower selection selectors 26A, 26B, 27A ... Control signal A ... Address bus CR ... Control register D ... Data bus DR ... Destination address register SR ... Source address register

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】外部データバスのビット長nに比べて長い
ビット長の内部レジスタを少なくとも1つ含む複数の内
部レジスタを有し、複数のこれら内部レジスタのいずれ
か1つをアドレス指定して選択し、又、前記ビット長n
より長いビット長の選択された前記内部レジスタに対し
ては前記ビット長n単位で部分毎にアクセスするように
した内部レジスタ回路において、 複数の前記内部レジスタのいずれか1つに対して行った
直前のアクセスのアドレス及びアクセスの種類を記憶す
る直前アドレスレジスタと、 該直前アドレスレジスタへ記憶されるアドレス及びアク
セスの種類と、複数の前記内部レジスタのいずれか1つ
に対して行う今回のアクセスのアドレス及びアクセスの
種類との一致を判定するアドレス比較器と、 前記ビット長nより長いビット長の選択された前記内部
レジスタの1つに対して前記ビット長n単位で部分毎に
アクセスする際に、アクセスする部分の位置を記憶する
インクリメンタリレジスタとを備え、 前記比較器にて不一致と判定された場合、前記インクリ
メンタリレジスタをリセットするようにしたことを特徴
とする内部レジスタ回路。
1. A plurality of internal registers including at least one internal register having a bit length longer than a bit length n of an external data bus, and any one of these internal registers is addressed and selected. And the bit length n
In the internal register circuit configured to access the selected internal register having a longer bit length in units of the bit length n, immediately before performing any one of the plurality of internal registers. Address register for storing the access address and the access type of the address, the address and the access type stored in the immediately previous address register, and the address for the current access to any one of the plurality of internal registers And an address comparator for determining a match with the type of access, and when accessing one of the selected internal registers having a bit length longer than the bit length n in units of the bit length n, Incremental registers that store the position of the part to be accessed. In this case, the internal register circuit is characterized in that the incremental register is reset.
【請求項2】請求項1において、 前記内部レジスタの少なくとも1つが、何らかのアドレ
スを記憶するものであって、 更に、前記ビット長nより長いビット長の選択された前
記内部レジスタの1つに対して前記ビット長n単位で部
分毎にアクセスする際には、当該内部レジスタのLSB
側から順にアクセスするようにされていることを特徴と
する内部レジスタ回路。
2. The method according to claim 1, wherein at least one of the internal registers stores some address, and further, for at least one of the selected internal registers having a bit length longer than the bit length n. When accessing each part in units of the bit length n, the LSB of the internal register
An internal register circuit, which is configured to be accessed sequentially from the side.
JP27796194A 1994-11-11 1994-11-11 Internal register circuit Expired - Fee Related JP3611049B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27796194A JP3611049B2 (en) 1994-11-11 1994-11-11 Internal register circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27796194A JP3611049B2 (en) 1994-11-11 1994-11-11 Internal register circuit

Publications (2)

Publication Number Publication Date
JPH08137747A true JPH08137747A (en) 1996-05-31
JP3611049B2 JP3611049B2 (en) 2005-01-19

Family

ID=17590692

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27796194A Expired - Fee Related JP3611049B2 (en) 1994-11-11 1994-11-11 Internal register circuit

Country Status (1)

Country Link
JP (1) JP3611049B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002123826A (en) * 2000-10-13 2002-04-26 Canon Inc Data processing method and image processing device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002123826A (en) * 2000-10-13 2002-04-26 Canon Inc Data processing method and image processing device

Also Published As

Publication number Publication date
JP3611049B2 (en) 2005-01-19

Similar Documents

Publication Publication Date Title
US5642489A (en) Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management
US4733346A (en) Data processor with multiple register blocks
US5623697A (en) Bridge between two buses of a computer system with a direct memory access controller having a high address extension and a high count extension
US5561820A (en) Bridge for interfacing buses in computer system with a direct memory access controller having dynamically configurable direct memory access channels
US5437019A (en) Addressing method and apparatus for a computer system
US4583163A (en) Data prefetch apparatus
US4371924A (en) Computer system apparatus for prefetching data requested by a peripheral device from memory
JPS6259822B2 (en)
US6226736B1 (en) Microprocessor configuration arrangement for selecting an external bus width
KR920008448B1 (en) Data process
US4188662A (en) Address converter in a data processing apparatus
US5119487A (en) Dma controller having programmable logic array for outputting control information required during a next transfer cycle during one transfer cycle
US4604685A (en) Two stage selection based on time of arrival and predetermined priority in a bus priority resolver
EP0338564B1 (en) Microprogram branching method and microsequencer employing the method
US4575796A (en) Information processing unit
JP3611049B2 (en) Internal register circuit
US5586336A (en) Microcomputer capable of monitoring internal resources from external
US5021990A (en) Output pulse generating apparatus
US5208915A (en) Apparatus for the microprogram control of information transfer and a method for operating the same
US5568631A (en) Multiprocessor system with a shared control store accessed with predicted addresses
JPS63226735A (en) Register circuit
JPS58150196A (en) System for updating and controlling main storage key
JPH0443302B2 (en)
US5983311A (en) Sequential memory accessing circuit and method of addressing two memory units using common pointer circuit
JPS59174950A (en) Interruption processing device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040720

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040909

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041012

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20041013

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20041013

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041013

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091029

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091029

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101029

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees