Nothing Special   »   [go: up one dir, main page]

JP2968288B2 - Central processing unit - Google Patents

Central processing unit

Info

Publication number
JP2968288B2
JP2968288B2 JP1289617A JP28961789A JP2968288B2 JP 2968288 B2 JP2968288 B2 JP 2968288B2 JP 1289617 A JP1289617 A JP 1289617A JP 28961789 A JP28961789 A JP 28961789A JP 2968288 B2 JP2968288 B2 JP 2968288B2
Authority
JP
Japan
Prior art keywords
instruction
data
plane
input
output
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
JP1289617A
Other languages
Japanese (ja)
Other versions
JPH03149623A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP1289617A priority Critical patent/JP2968288B2/en
Publication of JPH03149623A publication Critical patent/JPH03149623A/en
Application granted granted Critical
Publication of JP2968288B2 publication Critical patent/JP2968288B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Microcomputers (AREA)
  • Logic Circuits (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、中央演算処理装置に関する。Description: TECHNICAL FIELD The present invention relates to a central processing unit.

[従来の技術] 従来、プログラマブル・ロジック・アレイ(以下PLA
と記す)を用いて所望の論理を実現しようとする場合、
いわゆる積項数を最小化する手段として多段論理回路が
使用されてきた。多段論理回路とは、一つのPLAが基本
的にAND−OR回路の2段論理回路で構成され、そのOR回
路の出力信号を入力側であるAND回路にフィードバック
することで合成されたり、複数のPLAを直並列に組み合
わせることで構成される回路である。特に、中央演算処
理装置(以下CPUと記す)でPLAによって命令デコードを
行う場合には、複雑な命令体系を処理するため上述した
多段論理回路を使用したり、あるいは積項数の多い大き
な一つのPLAでデコードする手法が取られていた。
[Prior art] Conventionally, a programmable logic array (PLA)
) To achieve the desired logic,
Multi-stage logic circuits have been used as means for minimizing the number of product terms. A multi-stage logic circuit means that one PLA is basically formed by a two-stage logic circuit of an AND-OR circuit, and the output signal of the OR circuit is fed back to the AND circuit on the input side, and the PLA is synthesized. This is a circuit configured by combining PLAs in series and parallel. In particular, when instruction decoding is performed by a central processing unit (hereinafter abbreviated as CPU) by PLA, the above-described multi-stage logic circuit is used to process a complicated instruction system, or a large one having a large number of product terms is used. The technique of decoding with PLA was taken.

[発明が解決しようとする課題] ところが積項数の多い大きなPLAを用いる場合には、
積項数を減らすために、複雑な作業をともなう論理のい
わゆる畳込み作業を必要するという問題点がある。畳込
みとは、PLAの入力線を左右に分割して与え、積項線を
入れ換えし不要な入力線を除去することでPLAの構成部
分を最小化しようとする方法である。
[Problems to be solved by the invention] However, when using a large PLA with a large number of product terms,
In order to reduce the number of product terms, there is a problem that a so-called convolution operation of logic involving complicated operations is required. The convolution is a method in which the input line of the PLA is divided into right and left, and the product term line is exchanged to remove unnecessary input lines, thereby minimizing the constituent parts of the PLA.

このような畳込みを実施すればPLAが占める面積は小
さくなる場合があるが、CPUの場合、この畳込みのため
に該PLAに供給される命令情報を格納するインストラク
ション・レジスタや上記格納した命令情報をPLAに送出
するタイミングを制御するタイミング制御回路を分割し
て配置する場合が生じる。このような場合には、分割さ
れた各インストラクション・レジスタやタイミング制御
回路間で相互配線を要し、たとえPLA本体が小さくなっ
てもこれら周辺の構成部分が複雑となり逆にCPUの面積
が大きくなってしまうという問題点がある。さらに、本
来、畳み込み作業は複雑であり積項数が多い場合には作
業量を膨大となる。また、このようにして最小化された
PLAの論理を変更したい場合、畳込みが複雑化している
ためその後の変更が困難であるという欠点もある。又、
インストラクション・レジスタやタイミング制御回路か
らANDプレーンに送出される信号のANDプレーン内におけ
る負荷が、畳み込みにより各々異なりデコード速度が各
命令情報で各々異なることとなり動作速度を保障するこ
とも困難となる。
If such a convolution is performed, the area occupied by the PLA may be reduced, but in the case of a CPU, an instruction register for storing instruction information supplied to the PLA for the convolution or the stored instruction There is a case where a timing control circuit that controls the timing of transmitting information to the PLA is divided and arranged. In such a case, interconnections are required between each divided instruction register and timing control circuit, and even if the PLA main unit becomes smaller, these peripheral components become complicated and conversely the CPU area becomes larger. There is a problem that. Furthermore, the convolution operation is originally complicated, and when the number of product terms is large, the amount of operation becomes enormous. Also minimized in this way
If you want to change the logic of the PLA, there is also the disadvantage that it is difficult to make subsequent changes because the convolution is complicated. or,
The load in the AND plane of the signal sent from the instruction register or the timing control circuit to the AND plane is different due to convolution, and the decoding speed is different for each instruction information, so that it is difficult to guarantee the operation speed.

又、多段論理回路を用いる場合にはPLAを複数接続す
るためにデコードの際に遅延が発生するという問題点が
ある。
In addition, when a multi-stage logic circuit is used, there is a problem that a delay occurs at the time of decoding because a plurality of PLAs are connected.

本発明はこのような問題点を解決するためになされた
もので、高速動作が可能で、PLAの占有面積が小さいCPU
を提供することを目的とする。
The present invention has been made in order to solve such a problem, and a high-speed operation is possible and a CPU occupying a small area of the PLA is used.
The purpose is to provide.

[課題を解決するための手段とその作用] 本発明は、ANDプレーンが複数に分割され、分割され
た各々のANDプレーンが同じ一つのORプレーンに接続さ
れるPLAを備えた構成を有する。
[Means for Solving the Problem and Action Thereof] The present invention has a configuration provided with a PLA in which an AND plane is divided into a plurality of parts and each of the divided AND planes is connected to the same one OR plane.

複数のANDプレーンが一つのORプレーンを共有するこ
とは、多段論理回路を構成するより信号の通過段数が少
なくなり命令情報のデコード速度を高速化することに作
用している。
The fact that a plurality of AND planes share one OR plane has the effect of reducing the number of signal passage stages and increasing the decoding speed of instruction information as compared with configuring a multi-stage logic circuit.

さらに本発明は、データの格納先のアドレスを指定す
るアドレッシングに係る情報と演算に係る情報とが分割
された命令体系の中央演算処理装置において、 上記アドレッシングに係る情報と演算に係る情報とを
分離する分離部と、 上記分離部が送出するアドレッシングに係る情報信号
が供給される第1のANDプレーンと、 上記分離部が送出する演算に係る情報信号が供給され
る第2のANDプレーンと、 第1及び第2のANDプレーンが送出する信号が供給さ
れる一つのORプレーンと、 上記アドレッシングに係る情報信号と上記演算に係る
情報信号とを第1及び第2のANDプレーンへ送出するタ
イミングを制御する一つのタイミング制御部と、を有す
るPLAを備えたことを特徴とする。
Further, according to the present invention, in a central processing unit having an instruction system in which information relating to addressing for designating an address of a data storage destination and information relating to an operation are divided, the information relating to the addressing is separated from the information relating to an operation. A first AND plane to which an information signal related to addressing transmitted by the separating unit is supplied; a second AND plane to which an information signal related to operation transmitted by the separating unit is supplied; One OR plane to which the signals transmitted by the first and second AND planes are supplied, and the timing of transmitting the addressing-related information signal and the computation-related information signal to the first and second AND planes And a PLA having one timing control unit.

ANDプレーンを例えば第1及び第2の二つに分割する
ことは、それぞれのANDプレーンが独立した機能を実行
することができるので、アドレッシングに係る命令情報
と演算に係る命令情報とを複雑に組み合わせる必要がな
く命令体系を簡素化することができ、ANDプレーンにお
ける畳込み作業が容易に行えることとなり、ANDプレー
ンの素子面積を縮少するように作用する。又、アドレッ
シングに係る命令情報と演算に係る命令情報とが複雑に
組み合わされていないことより、これらの命令情報のい
わゆる直交性が高くなるように作用する。さらに、一つ
のタイミング制御部にて複数のANDプレーンを制御する
のでCPU全体の素子面積が減少するように作用する。
Dividing the AND plane into, for example, the first and second two planes allows each AND plane to execute an independent function, so that the instruction information relating to the addressing and the instruction information relating to the operation are complicatedly combined. This eliminates the necessity, simplifies the instruction system, facilitates folding work in the AND plane, and works to reduce the element area of the AND plane. In addition, since the instruction information relating to the addressing and the instruction information relating to the operation are not combined in a complicated manner, the instruction information functions to increase the so-called orthogonality. Further, since a single timing control unit controls a plurality of AND planes, it works to reduce the element area of the entire CPU.

[実施例] まず、本発明の中央演算処理装置における一実施例に
おける構成の概略を第3図ないし第5図を参照し以下に
説明する。
[Embodiment] First, an outline of a configuration in an embodiment of a central processing unit of the present invention will be described below with reference to FIG. 3 to FIG.

第4図は、プログラミングモデルであり、本中央演算
処理装置(以下CPUと称す)の基本語長は8ビットであ
る。
FIG. 4 shows a programming model in which the basic word length of this central processing unit (hereinafter referred to as CPU) is 8 bits.

アドレス空間は、プログラムをアクセスする際、プロ
グラムカウンタ(以下PCと記す)は24ビット(PBC、PC
H、PCL)を有しており、リニアアドレスで16Mバイトを
アクセス可能としている。尚、PBCとはプログラム、バ
ンク・カウンタレジスタ(以下PBCと記す)、PCHとはプ
ログラム・カウンタレジスタH(以下PCHと記す)、PCL
とはプログラム・カウンタレジスタL(以下PCLと記
す)である。
When accessing a program, the address space of the program counter (hereinafter referred to as PC) is 24 bits (PBC, PC
H, PCL), making it possible to access 16 Mbytes with linear addresses. PBC is a program, bank counter register (hereinafter referred to as PBC), PCH is a program counter register H (hereinafter referred to as PCH), PCL
Is a program counter register L (hereinafter referred to as PCL).

一方、データをアクセスする時は、バンク方式を用い
ており、バンクアドレスとしては、基本的にデータバン
クレジスタ(以下DBRと記す(8ビット))が出力さ
れ、従って、64Kバイトリニアで256バンクを用いて、16
Mバイトのアクセスを可能にしている。
On the other hand, when accessing data, a bank method is used, and as a bank address, a data bank register (hereinafter, referred to as DBR (8 bits)) is basically output, and therefore, 256 banks of 64 Kbytes linear are used. Use, 16
M-byte access is enabled.

尚、バンクアドレスとしてのDBRの出力については後
術のM1,M0フラグにて説明する。
The output of the DBR as the bank address will be described later with reference to the M1 and M0 flags.

また、複数の汎用レジスタ(W0〜W3:16ビット)があ
り、特に、W0,W1の両レジスタは8ビットごとに分別さ
れ、8ビットレジスタR0,R1,R2,R3として使用すること
もできる。
There are a plurality of general-purpose registers (W0 to W3: 16 bits). In particular, both registers W0 and W1 are separated every 8 bits and can be used as 8-bit registers R0, R1, R2, and R3.

故に、本CPUでは、演算のデータサイズとして8ビッ
ト,16ビットの両方のサイズのデータを命令により区別
して扱うことが可能である。
Therefore, in the present CPU, it is possible to discriminate and handle both data of 8 bits and 16 bits as the data size of the operation by the instruction.

さらに、スタック空間としては、スタックポインタレ
ジスタ(以下SPと記す)として16ビットレジスタを用意
しており、リニアに64Kバイトのアクセスをおこなう。
ただし、バンクアドレスは、“00"hに固定されている。
Furthermore, as a stack space, a 16-bit register is prepared as a stack pointer register (hereinafter, referred to as SP), and accesses 64K bytes linearly.
However, the bank address is fixed to “00” h.

そして、プログラムステイタスレジスタ(以下PSRと
記す)は現在のCPUの動作状態を示しており、具体的に
は、N,V,Z,Cの各フラグは、演算の結果により変化し、
Iフラグは、割り込み要求の受付けの可否を示し、Dフ
ラグは、加減算命令の結果の補正に関し、D=1なら
ば、加減算命令の実行結果は自動的に10進補正される。
The program status register (hereinafter, referred to as PSR) indicates the current operation state of the CPU. Specifically, each flag of N, V, Z, and C changes according to the result of the operation.
The I flag indicates whether an interrupt request can be accepted, and the D flag relates to correction of the result of the addition / subtraction instruction. If D = 1, the execution result of the addition / subtraction instruction is automatically corrected to decimal.

M1,M0フラグは、データ空間をアクセスする際、出力
されるバンクアドレスの選択を可能にするフラグであ
る。従って、M1,M0フラグを任意の値に設定(このCPUで
は命令で更新する)する事により、データアクセスの際
に、出力されるバンクアドレスをDBR値、“00"h等の定
数の何れかを選択して出力し様々なメモリのアプリケー
ションに対応させる。
The M1 and M0 flags are flags that enable selection of a bank address to be output when accessing the data space. Therefore, by setting the M1 and M0 flags to an arbitrary value (in this CPU, updating with an instruction), the bank address to be output at the time of data access can be set to a DBR value or a constant such as “00” h. Is selected and output to correspond to various memory applications.

ファーストページレジスタ(以下FPRと記す)はデー
タアクセス時のアドレス・ポインタとなるレジスタで、
ファースト・ダイレクトと呼ぶアドレッシング・モード
で使用される。尚、アドレッシングとは、データの格納
先のアドレスを指定することをいう。
The first page register (hereinafter referred to as FPR) is a register that serves as an address pointer when accessing data.
Used in an addressing mode called First Direct. Note that addressing refers to designating an address of a data storage destination.

このアドレッシング・モードではオペランド・データ
として8ビットのデータのみをフェッチしてそのデータ
を実効アドレスのロー(ビット7〜ビット0)とし、ハ
イ(ビット15〜ビット8)をFPRの内容とするアドレッ
シングモードにおいて有効となるレジスタである。
In this addressing mode, only 8-bit data is fetched as operand data, the data is set to the low (bit 7 to bit 0) of the effective address, and the high (bit 15 to bit 8) is set to the FPR content. This register is valid in

ただしこのときも、出力されるバンクアドレスは、M
1,M0のフラグ状態に従う。
However, at this time, the output bank address is M
According to the flag state of 1, M0.

このアドレッシング・モードは、オペランドデータを
1バイトのみフェッチするだけなので、同一ページアド
レス内(アドレスのビット15〜ビット8が一定値)の高
速なデータのアクセスが可能となる。
In this addressing mode, since only one byte of operand data is fetched, high-speed data access within the same page address (bits 15 to 8 of the address are constant) is possible.

第5図は、本CPUの命令形式について示したものであ
り、このCPUは基本語長は、前述のように8ビットであ
り、オペコードの前にプリバイトと呼ばれる命令拡張用
の1バイトデータをフェッチする形式をとる。
FIG. 5 shows the instruction format of this CPU. This CPU has a basic word length of 8 bits as described above, and fetches 1-byte data for instruction extension called a pre-byte before an operation code. Take the form

基本的にプリバイト・データは、アドレッシング・モ
ードに係る情報を有し、オペコードが実行すべき命令の
内容を持っている。
Basically, the pre-byte data has information relating to the addressing mode, and has the contents of the instruction to be executed by the operation code.

但し、命令の使用頻度が高いものについては、命令コ
ード長と実行時間の短縮を図るため、「形式1」に示す
ように、短縮命令と呼ぶプリバイトの無いオペコード内
にアドレッシング及び命令の内容を含んだ命令を用意す
る。
However, in the case of frequently used instructions, in order to reduce the instruction code length and execution time, addressing and instruction contents are included in an opcode without pre-byte called a shortened instruction, as shown in “Format 1”. Prepare an instruction.

さらに、オペランドデータは2種類の配置形式をもっ
ている。第5図中の「形式2」は、プリバイトの次にオ
ペコードを配置し、その後にオペランドデータを配する
形式であり、「形式3」はプリバイトとオペコードの間
にもオペランドデータを配置する。
Further, the operand data has two types of arrangement formats. "Format 2" in FIG. 5 is a format in which an opcode is arranged after a pre-byte, and then operand data is arranged. In "format 3", operand data is also arranged between a pre-byte and an opcode.

特に、形式3のプリバイトとオペコードの間のオペラ
ンドデータは、ディスプレースメント付アドレッシング
で使用される。
In particular, operand data between the format 3 pre-byte and the opcode is used in the addressing with displacement.

ここでいうディスプレースメント付アドレッシングと
は、データのアクセスのための実効アドレスの発生時
に、内部レジスタデータにオペランドでフェッチされた
データもしくは、オペランドで指定されたレジスタの値
をオフセットとして加算することで実効アドレスを発生
するアドレッシングのことを示す。
Here, addressing with displacement means that when an effective address for data access is generated, the data fetched by the operand or the value of the register specified by the operand is added as an offset to the internal register data. Indicates addressing that generates an address.

このアドレッシング・モードが使用される際、もし形
式2のようなオペランドデータの配置形式を取れば、デ
ィスプレースメントのオペランドデータをフェッチした
後、実効アドレスを計算するために、時間を要し、オペ
ランドのディスプレースメント・データのフェッチの
後、複数のアイドルサイクルが存在することになる。
When this addressing mode is used, if operand data arrangement format such as format 2 is adopted, it takes time to calculate the effective address after fetching the displacement operand data, and After fetching the displacement data, there will be multiple idle cycles.

しかし、形式3の配置をこのとき用いて、プリバイト
とオペコードの間にディスプレースメントデータを配置
すれば、実効アドレス発生のための計算をオペコードの
フェッチサイクルに重複して行なう事ができ、無駄なア
イドルサイクルの発生を防ぐ。
However, if the displacement data is arranged between the pre-byte and the opcode using the format 3 arrangement at this time, the calculation for generating the effective address can be performed in an overlapping manner with the fetch cycle of the opcode, resulting in a wasteful idle operation. Prevent cycles from occurring.

第3図は、ブロックレベルの構成図であり、本CPUは
主に制御部1と演算部2の2つの機能部に大別される。
FIG. 3 is a block diagram showing the configuration of the CPU. The CPU is mainly divided into two functional units, namely, a control unit 1 and a calculation unit 2.

初めに、制御部1であるがここは、命令の実行を制御
する機能を持っている。
First, the control unit 1 has a function of controlling execution of an instruction.

動作としては、命令の実行に際し、外部からデータバ
ス(D7−D0)を介して、DIL15に入力された命令コード
は、プリバイトIR3或いはオペコードIR4の各インストラ
クションレジスタに格納され次の命令が発生するまで保
持される。
The operation is as follows. When an instruction is executed, the instruction code input to DIL15 from the outside via the data bus (D7-D0) is stored in each instruction register of the pre-byte IR3 or the operation code IR4 until the next instruction is generated. Will be retained.

そして、これらのインストラクションレジスタの複数
の出力5,6と命令シーケンスのタイミングの制御するTCU
7の出力がAND−ORのPLAで構成された命令デコード回路
8,9,10,11に入力され、命令とタイミングに応じたデコ
ード結果13を出力する。
A plurality of outputs 5 and 6 of these instruction registers and a TCU for controlling the timing of the instruction sequence.
Instruction decode circuit whose output is composed of AND-OR PLA
It is input to 8, 9, 10, and 11, and outputs a decoding result 13 according to the instruction and the timing.

さらにそのデコード結果は、ECI12というインターフ
ェース回路を介して、演算部2に対してタイミングを整
えて演算部2を制御すべき複数の制御信号14を発生す
る。
Further, the decoded result generates a plurality of control signals 14 for controlling the arithmetic unit 2 by adjusting the timing for the arithmetic unit 2 via an interface circuit called ECI12.

但し、本CPUにおいて、PLAの構成は、ANDプレーンを
プリバイト用(構成部分8)と、オペコード用(構成部
分10)の2種類もち、ORプレーン9,11を共有した形をと
る。
However, in this CPU, the configuration of the PLA has two types of AND planes, one for pre-byte (component 8) and the other for opcode (component 10), and the OR planes 9 and 11 are shared.

これは、先の命令形式でも記述した様に、プリバイト
部は、アドレッシングモードの情報を有し、オペコード
部が命令のオペレーション内容を含むため、PLA上でも
機能的に、分類することでデコードの容易化と冗長性を
排除し、機能別(プリバイトかオペコード)で最小のPL
A(特に、ANDプレーン)を実現させている。
This is because, as described in the instruction format above, the pre-byte part has addressing mode information, and the opcode part contains the operation contents of the instruction. Minimization of PL by function (pre-byte or opcode)
A (especially, an AND plane) is realized.

そして、この2分割されたPLAのANDプレーン8,10は、
インタラプト制御21からの入力信号24により、ANDプレ
ーンの両方を動作状態にするか、一方ANDプレーン10を
非動作状態にせしめることもできる。ここで割り込みの
シーケンスの制御コードは、全て、プリバイト側のAND
プレーン8にコードが割り付けられており、割り込みの
処理時にオペコード側のANDプレーン10は非動作状態に
ある。
Then, the AND planes 8 and 10 of the two divided PLAs are
With the input signal 24 from the interrupt control 21, both the AND planes can be activated or the AND plane 10 can be deactivated. Here, the control code of the interrupt sequence is all AND
A code is allocated to the plane 8, and the AND plane 10 on the operation code side is in a non-operation state at the time of processing an interrupt.

演算部2は、上記の制御信号にしたがって、演算やCP
U外部とのデータのアクセスを行なう。
The calculation unit 2 performs calculation and CP in accordance with the control signal.
U Access data with the outside.

内部バスとしては、基本的なMB,DB,SBの3種類8ビッ
トバスを有し、各機能部とのデータのやりとりを行な
う。
The internal bus has three basic types of 8-bit buses, MB, DB, and SB, and exchanges data with each functional unit.

機能としては、上述のプログラミングモデルで示した
レジスタ群や、データや実行アドレスの演算を行なう8
ビットALU19や、シフト演算を行なう8ビットのシフタ2
0、アドレス生成を主に行なうACU13がある。
The function is to perform operations on registers and data and execution addresses shown in the above-mentioned programming model.
Bit ALU19 and 8-bit shifter 2 for performing shift operation
There is an ACU 13 that mainly performs address generation.

ALU19は、MB入力側にIC27をもち、IC27は、MBバスか
ら入力される信号を、スルーするか、反転したり、“0
0"h等の定数データを発生してALU19での演算を補助す
る。
The ALU 19 has an IC 27 on the MB input side. The IC 27 can pass through or invert the signal input from the MB bus,
Generates constant data such as 0 "h to assist the calculation in ALU19.

さらにDフラグの機能を実現するための10進補正回路
もALU19は含んでいる。
Further, the ALU 19 includes a decimal correction circuit for realizing the function of the D flag.

そして内部バス(MB)のデータのゼロを検出するZDT1
7や分岐命令での分岐条件成立の有無をPSRの状態から検
出するBRDT18もある。
And ZDT1 which detects zero of data of internal bus (MB)
There is also a BRDT18 that detects whether a branch condition is satisfied by a branch instruction 7 or from a PSR state.

特にアドレス生成を主に行なうACU部に関しては、8
ビット単位に、機能が分離されそれぞれはキャリーが伝
搬する構成となっていて、最大24ビットのアドレス演算
を行なう。ここでは、アドレスの演算のみならずデータ
の演算も可能である。
Especially for the ACU that mainly generates addresses,
The function is separated in units of bits, and each has a configuration in which carry is propagated, and performs address operation of up to 24 bits. Here, not only an address operation but also a data operation is possible.

具体的にはACU部は、8ビット毎にINC/DECという増減
機能があり、ABL,ABH,SBという内部バス(各8ビット)
からデータを“00"h,“01"h,“02"hで選択的に増減す
る。
Specifically, the ACU has an increment / decrement function called INC / DEC every 8 bits, and internal buses ABL, ABH and SB (8 bits each)
From "00" h, "01" h, and "02" h.

INC/DECで演算された結果は、CALL,CALH,CALBのラッ
チに選択的に格納され、AOBL,AOBH,AOBBのアドレス・バ
ッファを介して出力される。
The result calculated by INC / DEC is selectively stored in the latches of CALL, CALH, and CALB, and output via the address buffers of AOBL, AOBH, and AOBB.

ここで選択的というのは、演算結果が常にラッチされ
るのではなく、アドレス演算時のみラッチして、データ
演算時にはラッチされない場合があることを意味する。
Here, “selective” means that the operation result is not always latched, but may be latched only at the time of address operation and not latched at the time of data operation.

しかし、RLT235は、INC/DEC:B演算時は常に結果をラ
ッチするデータラッチである。
However, the RLT 235 is a data latch that always latches the result during the INC / DEC: B operation.

ACU部には、割り込み発生時に強制的に割り込みベク
タを発生するVECL,VECH,VECB(ベクタアドレス発生回
路)や、INC/DECを介さずにDBバスデータを直接アドレ
スとして出力するBSも配置されている。
The ACU also has a VECL, VECH, VECB (vector address generation circuit) that forcibly generates an interrupt vector when an interrupt occurs, and a BS that outputs DB bus data directly as an address without going through INC / DEC. I have.

本CPUにおいて、実効アドレスの生成は、特に分岐や
ディスプレースメント付のアドレッシングにおいてAUと
ACUの両方を使用して演算しており、CSB,CSH25,26は、
その際に使用される。
In this CPU, the generation of the effective address depends on the AU, especially in addressing with branching and displacement.
Calculations are performed using both ACUs. CSB, CSH25, 26
Used at that time.

つまり、ALU19からの演算結果によるキャリーやボロ
ーをACUの演算に反映させるためのキャリーのセレクタ
としての機能をCSB,CSH25、26が持っている。
In other words, the CSB, CSH25, and CS26 have a function as a carry selector for reflecting the carry or borrow based on the operation result from the ALU 19 in the ACU operation.

尚、INC/DECからラッチされた演算結果は、SB,ABH,AB
Lのバスを介してPC,DBR,TR,ADH,ADLのレジスタデータを
選択的に更新する。
The calculation result latched from INC / DEC is SB, ABH, AB
The PC, DBR, TR, ADH, and ADL register data are selectively updated via the L bus.

その他の機能としては、CPUのクロックの制御をつか
さどる、クロック発生器22や、周辺システムにCPUの動
作状態を知らせる複数の信号を発生するシステム制御23
がある。
Other functions include a clock generator 22 that controls the clock of the CPU and a system control 23 that generates a plurality of signals that notify the peripheral system of the operating state of the CPU.
There is.

さらに、インストラクション・プレデコーダ33は、命
令コードのプリデコードを行い短縮命令の識別や、プリ
バイト付でオペコードと不当な組合せ(以下不当命令と
称す)の選別などを行なう。
Further, the instruction pre-decoder 33 performs pre-decoding of the instruction code to identify a shortened instruction and to select an illegal combination with an operation code with a pre-byte (hereinafter referred to as an illegal instruction).

以下に、本CPUの演算部2の各機能部について説明を
行なう。
Hereinafter, each functional unit of the arithmetic unit 2 of the CPU will be described.

○ 汎用レジスタ 演算,転送時にデータを提供したり、演算,転送後の
結果を格納する第3図及び第4図に示す汎用レジスタ群
である。
○ General-purpose registers A general-purpose register group shown in FIGS. 3 and 4 for providing data at the time of operation and transfer and for storing results after the operation and transfer.

W0,W1については、8ビットずつに分けてR0,R2,R1,R3
の8ビットレジスタとしても命令で区別して使用するこ
とができるので、本CPUでは16ビットのみならず、8ビ
ットのデータを扱うことができる。
For W0 and W1, R0, R2, R1, R3
The 8-bit register can be used by discriminating between instructions, so that this CPU can handle not only 16-bit data but also 8-bit data.

W2,W3は、データアクセスの際のポインタとしてアド
レッシングモードで指定すれば使用することもできる。
W2 and W3 can also be used if they are specified in the addressing mode as pointers for data access.

汎用レジスタ群の各レジスタは、ラッチ(セット、リ
セットなし)で構成され、内部バスに対し、以下の接続
関係を有する。
Each register of the general-purpose register group is configured by a latch (no set or reset), and has the following connection relationship with the internal bus.

基本的に、MBバスから入力されデータをラッチし、DB
或いはMBのバスにラッチされたデータを出力する。
Basically, it latches data input from the MB bus and
Alternatively, the latched data is output to the MB bus.

R2レジスタのみ、除算命令を実効する際のため、入力
にDBバスを選択可能とする。
Only the R2 register allows the DB bus to be selected as input for executing the division instruction.

R0(W0L)→MBから入力,DBあるいはMBへ出力 R2(W0H)→MBあるいはDBから入力,DBあるいはMBへ出力 R1(W1L)→MBから入力,DBあるいはMBへ出力 R3(W1H)→MBから入力,DBあるいはMBへ出力 W2L →MBから入力,DBあるいはMBへ出力 W2H →MBから入力,DBあるいはMBへ出力 W3L →MBから入力,DBあるいはMBへ出力 W3H →MBから入力,DBあるいはMBへ出力 ○ FPR(ファーストページレジスタ) 第3図及び第4図に示したFPRは、前述のファースト
・ダイレクト・アドレッシングと呼ぶアドレッシングモ
ードで使用される。
R0 (W0L) → input from MB, output to DB or MB R2 (W0H) → input from MB or DB, output to DB or MB R1 (W1L) → input from MB, output to DB or MB R3 (W1H) → MB W2L → Input from MB, Output to DB or MB W2H → Input from MB, Output to DB or MB W3L → Input from MB, Output to DB or MB W3H → Input from MB, DB or MB FPR (first page register) The FPR shown in FIGS. 3 and 4 is used in an addressing mode referred to as the above-mentioned first direct addressing.

FPRは、ラッチ(セット、リセットなし)で構成さ
れ、内部バスに対し、以下の接続関係を有する。
The FPR is configured with a latch (no set or reset), and has the following connection relationship with the internal bus.

基本的に、MBバスから入力されデータをラッチし、DB
のバスにラッチされたデータを、出力する。
Basically, it latches data input from the MB bus and
The data latched on the bus is output.

FPR→MBから入力,DBへ出力 ○ IC(ALUに関する入力制御) 第3図に示したIC27(8ビット)は、MBバスからALU1
9に入力されるデータを制御する。機能的には、以下の
機能を有する。
FPR → input from MB, output to DB ○ IC (input control related to ALU) IC27 (8 bits) shown in Fig. 3
Controls the data input to 9. Functionally, it has the following functions.

1.MBバスデータ →ALUに入力 2.MBバスデータの反転 →ALUに入力 3.“00"hの定数 →ALUに入力(MBバスデータは無視す
る。) 4.“01"hの定数 →ALUに入力(MBバスデータほ無視す
る。) 5.“02"hの定数 →ALUに入力(MBバスデータほ無視す
る。) 6.“03"hの定数 →ALUに入力(MBバスデータほ無視す
る。) ○ ALU(演算論理素子) 第3図に示したALU19(8ビット)は、DBバスデータ
とICからの各8ビットの入力により演算を実施する。
1. MB bus data → input to ALU 2. Inversion of MB bus data → input to ALU 3. “00” h constant → input to ALU (ignore MB bus data) 4. “01” h constant → Input to ALU (ignore MB bus data.) 5. Constant of “02” h → Input to ALU (ignore MB bus data.) 6. Constant of “03” h → Input to ALU (input MB bus data.) ALU (arithmetic logic element) The ALU 19 (8 bits) shown in FIG. 3 performs an arithmetic operation based on DB bus data and 8-bit inputs from the IC.

機能的には、AND(論理積)、OR(論理和)、EXOR
(排他的論理和)、SUM(加算)がある。
Functionally, AND (logical product), OR (logical sum), EXOR
(Exclusive OR) and SUM (addition).

また、PSR中のDフラグの設定により(D=1なら
ば)、加算及び減算を同一演算サイクル内で10進補正す
る回路も含む。
Also, a circuit for performing decimal correction of addition and subtraction within the same operation cycle by setting the D flag in the PSR (if D = 1) is included.

さらに、SUMの結果、キャリー・ボロー発生、オーバ
ーフローが発生の検出及びキャリー・ボロー、オーバー
フローをラッチする機能も具備する。
Further, it has a function of detecting the occurrence of a carry borrow or overflow as a result of SUM and latching the carry borrow or overflow.

特に、キャリー結果は、ALU19が次のSUMを実行するま
で保持されるものとする。(AND,OR,EXORでは変化しな
い) ○ ALUシフタ(演算論理素子シフタ) 第3図に示した、ALUシフタ28は、8ビットデータの
1ビットシフトライトを実施するシフトレジスタで、主
に乗算命令で使用される。
In particular, the carry result is held until the ALU 19 executes the next SUM. (It does not change with AND, OR, EXOR) ALU shifter (arithmetic element shifter) The ALU shifter 28 shown in FIG. 3 is a shift register that performs 1-bit shift writing of 8-bit data, and is mainly a multiplication instruction. Used in.

このシフトレジスタに入力されるデータは、ALU19のS
UM(加算)の結果であり、最上位ビットには、そのSUM
の結果で発生したキャリーが入力され、シフトの結果最
下位より送出される1ビットデータは、ALU19のキャリ
ーとして最終的に保持される。
The data input to this shift register is SLU of ALU19.
UM (addition) result, the most significant bit of which is the SUM
The 1-bit data transmitted from the least significant bit as a result of the shift is finally held as the carry of the ALU19.

○ RLT(ALU 結果ラッチ) 第3図に示した、RLT29は、ALU19の演算結果を保持す
る8ビットラッチである。内部バスに対しては以下の接
続関係を有する。
RLT (ALU result latch) RLT29 shown in FIG. 3 is an 8-bit latch that holds the operation result of ALU19. The internal bus has the following connection relationship.

RLT→DBあるいはMBへ出力 ただし、RLT29のデータは、次のALU演算が実行される
まで内容は更新されない。
RLT → Output to DB or MB However, the contents of RLT29 data are not updated until the next ALU operation is executed.

○ シフタ 第3図に示した、シフタ20はフリップ・フロップで構
成され、データの1ビットシフトレフト,シフトライ
ト,ノーシフトのいずれかを制御信号により選択的に実
施する。
Shifter The shifter 20 shown in FIG. 3 is constituted by a flip-flop, and selectively executes one bit shift left, shift right or no shift of data by a control signal.

内部バスに対しては以下の接続関係を有する。 The internal bus has the following connection relationship.

シフタ→MBから入力,MBへ出力 ○ ZDT(ゼロ検出回路) 第3図に示したZDT17は、MBバスの状態をモニタし、M
Bバスが全ビット“00"hならば、“00"hの検出したこと
を示す信号を発生するゼロ検出回路である。
Shifter → input from MB to output to MB ○ ZDT (Zero detection circuit) ZDT17 shown in Fig. 3 monitors the status of the MB bus,
If all bits of the B bus are “00” h, the zero detection circuit generates a signal indicating that “00” h has been detected.

特に、この信号はPSRレジスタ30中のZフラグに作用
し、ALU19等の演算結果がRLT29より、MBバスに出力され
る時、結果の“00"hを検出してZフラグを“1"にセット
する動作を促すために用いられる。
In particular, this signal acts on the Z flag in the PSR register 30. When the operation result of ALU19 or the like is output from the RLT 29 to the MB bus, the result "00" h is detected and the Z flag is set to "1". Used to prompt the setting operation.

○ PSR(プロセッサ・ステイタス・レジスタ) 第3図に示した、PSR30は、ラッチで構成され内部バ
スに対しては以下の接続関係を有する。
PSR (Processor Status Register) The PSR30 shown in FIG. 3 is composed of a latch and has the following connection relationship with the internal bus.

PSR→MBから入力,DBへ出力 機能としては、概要でも記述した様にPSRレジスタ30
は現在のCPUの動作状態を示す。
PSR → Input from MB and output to DB The function of PSR register 30 is as described in the overview.
Indicates the current operating state of the CPU.

○ BRDT(分岐検出回路) 第3図に示した、BRDT18は、PSR30に接続されてお
り、分岐命令が発生した場合、PSR30の内容から分岐す
るか否かを判断する信号を発生する。
BRDT (branch detection circuit) The BRDT 18 shown in FIG. 3 is connected to the PSR 30 and generates a signal for determining whether or not to branch from the contents of the PSR 30 when a branch instruction occurs.

○ AOBB,AOBH,AOBL(アドレス・出力バッファ) 第3図ACU部16に示した、AOBB,AOBH,AOBLはアドレス
出力用のバッファであり、各8ビットで計24ビット(BA
7〜BA0,A15〜A0)のアドレスを出力する。
AOBB, AOBH, AOBL (address / output buffer) AOBB, AOBH, AOBL shown in FIG. 3 ACU 16 are buffers for address output.
7 to BA0, A15 to A0) are output.

アドレス出力は、BEのローでハイ・インピーダンス状
態になる。
The address output goes to a high impedance state when BE is low.

○ VECB,VECH,VECL(ベクタアドレス発生器) 第3図ACU部16に示した、VECB,VECH,VECLは割り込み
処理において、ベクタアドレス(24ビット)を発生す
る。
VECB, VECH, VECL (vector address generator) VECB, VECH, VECL shown in FIG. 3 ACU unit 16 generates a vector address (24 bits) in interrupt processing.

○ CALB,CALH,CALL(アドレス計算ラッチ) 第3図ACU部16に示した、CALB,CALH,CALLはINC/DEC:
B:H:Lの演算の結果を選択的に格納するラッチであり、
アドレス演算時のみラッチされる。
CALB, CALH, CALL (address calculation latch) CALB, CALH, CALL shown in Fig. 3 ACU unit 16 is INC / DEC:
A latch that selectively stores the result of B: H: L operation,
Latched only during address operation.

○ RLT2(結果ラッチ2) 第3図ACU部16に示した、RLT2はINC/DEC:Bの演算の結
果を常に格納するラッチである。
RLT2 (Result latch 2) RLT2 shown in the ACU unit 16 in FIG. 3 is a latch that always stores the result of the operation of INC / DEC: B.

○ INC/DEC:B:H:L(インクリメント/デクリメント・
ユニット) 第3図ACU部16に示したINC/DEC:B:H:Lはデータの増減
を行なう。
○ INC / DEC: B: H: L (Increment / decrement
Unit) INC / DEC: B: H: L shown in ACU unit 16 in FIG. 3 increases or decreases data.

各機能部は、8ビット単位で構成され、演算結果で発
生したキャリーは、それぞれの上位アドレス増減部(IN
C/DEC:LならINC/DEC:Hへ,INC/DEC:HならINC/DEC:Bへ)
に伝搬され、結局24ビットのアドレス生成を実現するこ
とになる。
Each functional unit is configured in units of 8 bits, and the carry generated as a result of the operation is stored in the upper address increment / decrement unit (IN
(If C / DEC: L, go to INC / DEC: H; if INC / DEC: H, go to INC / DEC: B)
And eventually realizes 24-bit address generation.

但し、このINC/DEC:B:H:Lにデータ(各8ビット)
は、SB,ABH,ABLのデータバス(各8ビット)を介して入
力される。
However, this INC / DEC: B: H: L data (8 bits each)
Are input via SB, ABH and ABL data buses (8 bits each).

各INC/DEC:B:H:Lは、このデータについて基本的に次
の動作を選択的に行なう。
Each INC / DEC: B: H: L basically selectively performs the following operation on this data.

1.現状データの保持 2.“01"hのインクリメントあるいはデクリメント。1. Retention of current data 2. Increment or decrement of “01” h.

3.“02"hのインクリメントあるいはデクリメント。3. Increment or decrement of “02” h.

BS(バス セレクト) 第3図ACU部16に示した、BSは実効アドレスを発生す
る際、CPU外部から入力されたデータ(8ビット)をINC
/DEC:Lを介することなく、DBバスから、直接AOBLに入力
するためのデータの選択の機能を有する。
BS (Bus Select) As shown in Fig. 3 ACU unit 16, BS generates data (8 bits) input from outside the CPU when generating an effective address.
It has a function of selecting data to be directly input to AOBL from the DB bus without going through / DEC: L.

前記のファースト・ダイレクト・アドレッシングのよ
うな場合、実効アドレスのためのオペランドデータ(8
ビット)をフェッチするサイクルの次に、すぐに実効ア
ドレスを出力しなければならないが、この場合、INC/DE
C:Lを介すれば遅延が生じる。
In the case of the above-mentioned first direct addressing, the operand data (8
Bit), the effective address must be output immediately after the fetch cycle. In this case, INC / DE
There is a delay through C: L.

そこでこのBSを用いて、オペランドデータ(DIL)をD
Bバスに乗せ、BSで選択することにより、高速にAOBLを
書き換えることができる。
Therefore, using this BS, the operand data (DIL) is
AOBL can be rewritten at high speed by placing it on the B bus and selecting it with the BS.

○ CSB,CSH(キャリーセレクタ) 第3図ACU部16に示した、CSB,CSH25、26はデータの演
算時に、INC/DEC:B,INC/DEC:Hに入力されるキャリーがI
NC/DECの下位側(INC/DEC:HならINC/DEC:L,INC/DEC:Bな
らINC/DEC:H)からか、あるいはALU19で発生されたキャ
リーにするかを選択する機能を有する。
○ CSB, CSH (Carry Selector) CSB, CSH 25 and 26 shown in the ACU unit 16 in FIG. 3 are used when the carry input to INC / DEC: B and INC / DEC: H is I during data operation.
It has a function to select from the lower side of NC / DEC (INC / DEC: L for INC / DEC: H, INC / DEC: H for INC / DEC: B) or to use the carry generated by ALU19. .

従って、このCPUでは実効アドレス発生の際のディス
プレースメントデータの加算や、プログラム相対アドレ
スで分岐の際にアドレスの計算を行なうことは、ALU19
とACU16を共用して行なう。
Therefore, in this CPU, the addition of displacement data at the time of generating an effective address and the calculation of an address at the time of branching with a program-relative address are performed by ALU19.
And ACU16.

例えば、24ビットデータに8ビットのディスプレース
メントを加算して、実効アドレスを発生するアドレッシ
ングの場合、24ビットデータ中のビット7〜ビット0と
ディスプレースメントデータ(8ビット)の加算をALU1
9で行ない、24ビットの残り(ビット23〜ビット16)をA
CU部16で演算する。
For example, in the case of addressing in which an 8-bit displacement is added to 24-bit data to generate an effective address, ALU1 is added to bits 7 to 0 in the 24-bit data and the displacement data (8 bits).
A is done with 9 and the remaining 24 bits (bit 23 to bit 16) are A
The calculation is performed by the CU unit 16.

ALU19で加算の結果キャリーが発生した場合、このキ
ャリーは、CSH25を介して、ACUHに入力され、ACU16はこ
の桁上がりを含めて演算ができる。
When a carry occurs as a result of the addition in the ALU 19, the carry is input to the ACUH via the CSH 25, and the ACU 16 can perform calculations including this carry.

一方、通常のプログラムカウンタのインクリメント動
作の場合には、ACU16のみを用いて、ALU19は別のオペレ
ーションのための演算を行なうことができる。
On the other hand, in the case of a normal program counter increment operation, the ALU 19 can perform an operation for another operation using only the ACU 16.

この時ALU19のキャリーは無視されACUL16から発生し
たキャリーがCSH25を介してACUHに入力される。
At this time, the carry of ALU19 is ignored, and the carry generated from ACUL16 is input to ACUH via CSH25.

○ PBC,PCH,PCL(プログラム・カウンタ) 24ビットのプログラム・カウンタ・レジスタである。P PBC, PCH, PCL (program counter) These are 24-bit program counter registers.

このレジスタのインクリメントは、INC/DEC:B:H:Lを
用いて行なう。
The increment of this register is performed using INC / DEC: B: H: L.

内部バスに対しては以下の接続関係を有する。 The internal bus has the following connection relationship.

PBD→SBから入力,DBあるいはSBへ出力 PCH→ABHから入力,MBあるいはABHへ出力 PCL→ABLから入力,DBあるいはABLへ出力 ○ TR,ADH,ADL(テンポラリ・レジスタ) 各8ビットのテンポラリ・データラッチである。CPU
外部から見えない。演算結果を一時的に格納する。
PBD → Input from SB, Output to DB or SB PCH → Input from ABH, Output to MB or ABH PCL → Input from ABL, Output to DB or ABL ○ TR, ADH, ADL (temporary register) 8-bit temporary register Data latch. CPU
Invisible from outside. The result of the operation is temporarily stored.

TR→DBあるいはSBから入力,SBへ出力 ADH→MBあるいはABHから入力,ABHへ出力 ADL→DBあるいはABLから入力,ABLへ出力 ○ SPH,SPL(スタック・ポインタ・レジスタ) 16ビットのスタック・ポインタ・レジスタである。 TR → Input from DB or SB, Output to SB ADH → Input from MB or ABH, Output to ABH ADL → Input from DB or ABL, Output to ABL ○ SPH, SPL (Stack Pointer Register) 16-bit stack pointer・ It is a register.

内部バスに対しては以下の接続関係を有する。 The internal bus has the following connection relationship.

SPH→MBから入力,MBあるいはDBへ出力 SPL→MBから入力,DBへ出力 ○ DBR(データ・バンク・レジスタ) 8ビットのバンク・レジスタである。基本的にデータ
アクセスの際のバンクアドレスは、このレジスタ値が出
力される。但し、PSR中にモード・フラグ(M1,M0)の状
態により、バンクアドレス値は変動する。
SPH → input from MB, output to MB or DB SPL → input from MB, output to DB ○ DBR (Data Bank Register) This is an 8-bit bank register. Basically, this register value is output as the bank address at the time of data access. However, the bank address value varies depending on the state of the mode flag (M1, M0) during PSR.

また、DBRは、SBバスを介して入力されており、DBR値
の増減にも任意に対応できる。
The DBR is input via the SB bus, and can arbitrarily cope with an increase or decrease in the DBR value.

内部バスに対しては以下の接続関係を有する。DBR→M
BあるいはSBから入力,DBあるいはSBへ出力 ○ DIL(データ入力ラッチ) 8ビットのラッチである。外部データは、このラッチ
に入力される。
The internal bus has the following connection relationship. DBR → M
Input from B or SB, output to DB or SB ○ DIL (Data input latch) This is an 8-bit latch. External data is input to this latch.

DIL15は、制御部1に対しては命令コードを供給し、
演算部2には、内部バス(DB,MB,SB)に対しデータを供
給する。
DIL15 supplies an instruction code to the control unit 1,
The arithmetic unit 2 supplies data to the internal buses (DB, MB, SB).

CPU内部に対しては以下の接続関係を有する。DIL→D7
〜D0から入力,DB,MB,SBあるいは制御部へ出力 ○ DOL(データ出力ラッチ) 8ビットのラッチである。外部に出力されるデータ
は、このラッチに入力される。
The following connection relationship is established inside the CPU. DIL → D7
D0 to input, output to DB, MB, SB or control unit DOL (data output latch) This is an 8-bit latch. Data output to the outside is input to this latch.

CPU内部に対しては以下の接続関係を有する。DIL→DB
あるいはMBから入力,D7〜D0へ出力 以下に、本CPUの制御部1の各機能部について説明を
行なう。
The following connection relationship is established inside the CPU. DIL → DB
Alternatively, input from MB, output to D7 to D0. Each functional unit of the control unit 1 of this CPU will be described below.

○ インストラクション・プレ・デコーダ 基本的に次の3つの機能部を有する。○ Instruction pre-decoder Basically, it has the following three functional units.

1.PLAでのデコードではタイミング的に間に合わない場
合、プレデコーダで予めデコードして制御信号を発生す
る。
1. If the decoding by PLA does not meet the timing, the pre-decoder decodes in advance to generate a control signal.

[1サイクル命令の検出,外部制御信号の発生制御,TCU
7の制御等] 2.PLAコードの最小化のためデコードを補助する。
[Detection of 1-cycle instruction, generation control of external control signal, TCU
7. Control etc.] 2. Assist decoding to minimize PLA code.

[短縮命令の検出,命令で扱うデータサイズの検出等] 3.不当命令,ソフトウェアインターラプト命令の検出。[Detection of shortened instructions, detection of data size handled by instructions, etc.] 3. Detection of illegal instructions and software interrupt instructions.

○ ロック発生器 CPU内部用のクロックの発生。あるいは、外部システ
ム用システム・クロックを発生する。
○ Lock generator Generates clock for CPU internal. Alternatively, a system clock for an external system is generated.

WAIT−−−プロセッサ停止入力 LSP−−−バスサイクル変更用入力 CLK−−−CPUクロック入力 S1,S2−−−システム・クロック出力 ○ システム制御 CPUの動作状態を知らせるための複数の信号を発生す
る。
WAIT --- Processor stop input LSP--Bus cycle change input CLK--CPU clock input S1, S2--System clock output System control Generates multiple signals to notify CPU operating status .

BSVT−−−プロセッサ動作状態出力(ベクタアドレス
出力中を示す) BSDA−−−プロセッサ動作状態出力(データアクセス
を示す) BSPA−−−プロセッサ動作状態出力(プログラムアク
セスを示す) BSOF−−−プログラム動作状態出力(命令フェッチを
示す) BSML−−−プロセッサ動作状態出力(メモリロック状
態を示す) RWB,RB,WB−−−リードライト状態出力 BE−−−バスイネーブル入力 ○ インタラプト制御 CPUの割り込みを制御する。
BSVT --- Processor operating status output (indicating that vector address is being output) BSDA --- Processor operating status output (indicating data access) BSPA --- Processor operating status output (indicating program access) BSOF --- Program operation Status output (indicates instruction fetch) BSML --- Processor operation status output (indicates memory lock status) RWB, RB, WB --- Read / write status output BE --- Bus enable input ○ Interrupt control Controls CPU interrupts I do.

RES−−−リセット割り込み入力 NMI−−−ノンマスカブル割り込み入力 IRO−−−割り込み入力 ISE0〜3−−−割り込み(IRO)選択入力 WAKE−−−プロセッサ停止命令の解除入力 ○ TCU(タイミング制御ユニット) 命令実行の動作シーケンスを制御する。 RES---Reset interrupt input NMI--Non-maskable interrupt input IRO--Interrupt input ISE0 to 3----Interrupt (IRO) selection input WAKE--Processor stop instruction release input TCU (Timing control unit) instruction Controls the execution sequence of execution.

○ ECI(イクスキュージョン制御インタフェース) PLAの命令デコード結果を受け演算部2にタイミング
を整えた制御信号を発生する機能を有す。
○ ECI (Exclusion Control Interface) ECI has a function of receiving a result of decoding the instruction of the PLA and generating a timing-controlled control signal in the arithmetic unit 2.

○ オペコードIR(バッファ), プリバイトIR(インストラクション・レジスタ) 命令を格納するインストラクションレジスタ。R Operation code IR (buffer), pre-byte IR (instruction register) Instruction register for storing instructions.

○ プリバイト ANDプレーン,オペコードANDプレー
ン,ORプレーン AND−ORで構成された命令デコード用PLA。
プ リ Instruction decoding PLA composed of pre-byte AND plane, opcode AND plane, and OR plane AND-OR.

以上説明したようなCPUに備わるPLA構成部分を抜き出
して第1図に示す。尚、第1図に示す構成は本発明のCP
Uにおける一実施例である。又、第3図と同じ構成部分
については同じ符号を付している。
FIG. 1 shows a PLA component of the CPU as described above. The configuration shown in FIG.
This is an example in U. The same components as those in FIG. 3 are denoted by the same reference numerals.

供給される入力データを送出するDIL15の出力側は、
インストラクション・プレ・デコーダ33及びオペコード
・インストラクション・レジスタに接続され、これらの
構成部分4、33の出力側は、プリバイト・インストラク
ション・レジスタ3及びオペコード・インストラクショ
ン・バッファ51に接続される。
The output side of DIL15 that sends out the supplied input data is
The output of these components 4, 33 is connected to the prebyte instruction register 3 and the opcode instruction buffer 51. The instruction predecoder 33 and the opcode instruction register are connected to each other.

ANDプレーンは、アドレッシングモードに係るプリバ
イト・インストラクションレジスタ3が接続されるAND
プレーン8と、オペコード・インストラクションレジス
タ51が接続されるANDプレーン10との二つに分割され
る。分割された各ANDプレーン8及び10には一つのTCU7
の出力側がそれぞれ接続されている。このようなANDプ
レーン8及び10の出力側は、一体的に構成されるORプレ
ーン9、11に接続される。尚、第3図において、ORプレ
ーン9及び11は、TCU7にて2分割されているように記載
されているが、ORプレーン9及び11(以下ORプレーン50
と記す)は接続線にて接続され一体的に構成されてい
る。したがって、2分割されたANDプレーン8及び10
は、一つのORプレーン50に接続されている。これらのAN
Dプレーン8、ANDプレーン10及びORプレーン50は、第2
図に示すように構成される。
The AND plane is connected to the pre-byte instruction register 3 related to the addressing mode.
The plane is divided into two, that is, a plane 8 and an AND plane 10 to which the opcode instruction register 51 is connected. One TCU 7 is provided for each of the divided AND planes 8 and 10.
Are connected respectively. The output sides of the AND planes 8 and 10 are connected to OR planes 9 and 11 that are integrally formed. In FIG. 3, although the OR planes 9 and 11 are described as being divided into two by the TCU 7, the OR planes 9 and 11 (hereinafter referred to as the OR plane 50) are shown.
Are connected by a connection line and integrally formed. Therefore, the divided AND planes 8 and 10
Are connected to one OR plane 50. These an
The D plane 8, the AND plane 10, and the OR plane 50 are the second plane.
It is configured as shown in the figure.

即ち、ANDプレーン8及び10について、ソースに電源1
00が接続されるPチャンネルのMOS(以下PMOSと記す)
トランジスタ101のドレインには、最高n個のNチャン
ネルのMOS(以下NMOSと記す)トランジスタ102のソース
−ドレインが直列接続され、最下段のNMOSトランジスタ
102nのドレインは接地される。このような構成にてなる
出力線103が複数本並列に形成される。尚、各PMOS101の
ゲートにはプリチャージ線が接続され、各PMOSトランジ
スタ101は、ローレベルのプリチャージ信号(図内ではP
RCを記す)が供給されたときにオン状態となり、出力線
103をプリチャージする。一方出力線103は、接続される
すべてのNMOSトランジスタ102のゲートにハイレベルの
信号が供給されオン状態となったときのみ接地され、し
たがって出力線103よりローレベルの信号が送出され
る。
That is, for the AND planes 8 and 10, the power source 1
P-channel MOS to which 00 is connected (hereinafter referred to as PMOS)
The drain of the transistor 101 is connected in series with the source-drain of a maximum of n N-channel MOS (hereinafter referred to as NMOS) transistors 102, and the NMOS transistor at the lowermost stage
The drain of 102n is grounded. A plurality of output lines 103 having such a configuration are formed in parallel. A precharge line is connected to the gate of each PMOS 101, and each PMOS transistor 101 receives a low-level precharge signal (P in FIG.
When RC is supplied, the output line is turned on.
Precharge 103. On the other hand, the output line 103 is grounded only when a high-level signal is supplied to the gates of all the connected NMOS transistors 102 and turned on, so that a low-level signal is transmitted from the output line 103.

各出力線103において、PMOSトランジスタ101のドレイ
ン側は、インバータ104を介してORプレーン50を構成す
る一つ若しくは複数のNMOSトランジスタ105のゲートに
接続される。
In each output line 103, the drain side of the PMOS transistor 101 is connected to the gate of one or a plurality of NMOS transistors 105 constituting the OR plane 50 via the inverter 104.

ORプレーン50は、ドレインが接地され、上記インバー
タ104の出力側がゲートに接続される複数のNMOSトラン
ジスタ105の各ソースが接続される出力線106が複数並列
に設けられ構成されている。尚、出力線106はn本あ
り、各出力線106に接続されるNMOSトランジスタ105の個
数は各出力線106にてそれぞれ異なる。又、各出力線106
の出力信号はインバータ107を介して外部へ送出され
る。よって、ORプレーン50において、各出力線106に接
続されるNMOSトランジスタ105のいずれか一つがANDプレ
ーン8あるいは10より供給される信号にてオン状態とな
ることで出力線106はローレベルとなりインバータ107に
て信号は反転されてハイレベルとして出力される。
The OR plane 50 has a configuration in which a plurality of output lines 106 are connected in parallel to the sources of a plurality of NMOS transistors 105 whose drains are grounded and whose output side of the inverter 104 is connected to the gate. Note that there are n output lines 106, and the number of NMOS transistors 105 connected to each output line 106 differs for each output line 106. Also, each output line 106
Is output to the outside via the inverter 107. Therefore, in the OR plane 50, when one of the NMOS transistors 105 connected to each output line 106 is turned on by a signal supplied from the AND plane 8 or 10, the output line 106 becomes low level and the inverter 107 Is inverted and output as a high level.

このように構成されるPLAにおける動作を以下に説明
する。
The operation of the PLA thus configured will be described below.

DIL15より送出した命令が、第5図に示すようなプリ
バイト無しの場合にはその命令はオペコード・インスト
ラクション・バッファ51を介してANDプレーン10に送出
される。供給されたこと命令はANDプレーン10及びORプ
レーン50にて上記命令に応じた制御信号が作成される。
When the instruction sent from the DIL 15 has no pre-byte as shown in FIG. 5, the instruction is sent to the AND plane 10 via the opcode instruction buffer 51. For the supplied instruction, a control signal corresponding to the instruction is created in the AND plane 10 and the OR plane 50.

一方、DIL15より送出された命令が、第5図に示すよ
うなプリバイトを含むものであればその命令はプリバイ
ト・インストラクション・レジスタ3を介してANDプレ
ーン8に送出される。供給されたこの命令はANDプレー
ン8及びORプレーン50にて上記命令に応じた制御信号が
作成される。
On the other hand, if the instruction sent from the DIL 15 includes a prebyte as shown in FIG. 5, the instruction is sent to the AND plane 8 via the prebyte instruction register 3. For the supplied instruction, a control signal corresponding to the instruction is created in the AND plane 8 and the OR plane 50.

尚、ANDプレーン8及び10の出力側を共通をORプレー
ン50に接続するのは、アドレッシングの演算の際にもAC
U16のみならずALU19や各レジスタデータを使用し、又、
アドレッシング演算に続く命令の演算を実行する際にも
ALU19や各レジスタデータを使用するためである。この
ためORプレーン50をプリバイトを含む命令、オペコード
を含みプリバイトを含まない命令で共有化することによ
りORプレーン50の最小化が図れる。
Note that the common connection between the output sides of the AND planes 8 and 10 is connected to the OR plane 50 during the addressing operation.
Use not only U16 but also ALU19 and each register data.
Also when executing the operation of the instruction following the addressing operation
This is for using ALU19 and each register data. For this reason, the OR plane 50 can be minimized by sharing the OR plane 50 with an instruction including a pre-byte and an instruction including an operation code and not including a pre-byte.

又、PLAの構成は、多段論理回路でなく2論理回路で
あるのでデコードを高速に行うことができる。
Further, since the configuration of the PLA is not a multi-stage logic circuit but two logic circuits, decoding can be performed at high speed.

さらに、TCU7は一つであり、これはANDプレーン8を
使用し行われるアドレッシング演算と、ANDプレーン10
を使用し行われる命令演算を一連のシーケンスとして容
易に制御できるという利点を有する。
Further, there is one TCU 7, which is an addressing operation performed using the AND plane 8 and an AND plane 10
Is easily controlled as a series of instructions.

さらに、畳込みを行うのに比べ、ANDプレーンの負担
が一定しており動作速度が安定する。
Furthermore, compared to performing convolution, the load on the AND plane is constant and the operation speed is stable.

さらに、機能分割したため畳込み作業が容易に行える
ことよりANDプレーンにおいてはANDプレーンへの入力信
号数である入力ターム数を減少させることができる。よ
って、第2図に示すNMOSトランジスタ102の個数が減少
するので矢印yにて示す方向のANDプレーンサイズを縮
小することができる。
Further, since the function is divided, the convolution operation can be easily performed, so that the number of input terms as the number of input signals to the AND plane can be reduced in the AND plane. Therefore, the number of the NMOS transistors 102 shown in FIG. 2 is reduced, so that the size of the AND plane in the direction indicated by the arrow y can be reduced.

さらに、機能分割したため複雑な命令体系を構成する
必要がないので、特にアドレッシングモード、オペレー
ションの変更等における論理変更を容易に行うことがで
きる。
Further, since a complicated instruction system does not need to be configured because of the function division, it is possible to easily change the logic particularly in the change of the addressing mode and the operation.

さらに、アドレッシングとオペコードとを機能分割し
て命令デコード部を形成しているのでアドレッシングと
オペコードとの間の組み合わせが自由となり、直交性の
高い命令体系を作ることができる。
Furthermore, since the instruction decoding unit is formed by dividing the functions of the addressing and the operation code, the combination between the addressing and the operation code is free, and an instruction system with high orthogonality can be created.

[発明の効果] 以上詳述したように本発明によれば、多段論理回路を
構成する必要がないことより命令のデコード速度を高速
化することができる。又、ANDプレーンを分割すること
で各ANDプレーンが独立した命令をデコードすることが
でき命令体系が複雑になることを防げることより、AND
プレーンにおける畳み込みが容易に行えANDプレーンの
素子面積を減少させることができ、よってCPU全体の素
子面積を減少させることができる。
[Effects of the Invention] As described in detail above, according to the present invention, it is not necessary to configure a multi-stage logic circuit, so that the instruction decoding speed can be increased. Also, by dividing the AND plane, each AND plane can decode an independent instruction and prevent the instruction system from becoming complicated.
Convolution in the plane can be easily performed, and the element area of the AND plane can be reduced, so that the element area of the entire CPU can be reduced.

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

第1図は本発明のCPU内のPLA構成部分の一実施例を示す
ブロック図、第2図は第1図に示すANDプレーン及びOR
プレーンの構成を示す論理回路図、第3図は本発明のCP
Uの全体構成を示すブロック図、第4図は本発明のCPUの
プログラミングモデル、第5図は本発明のCPUの命令形
式について示した図である。 7……TCU、8、10……ANDプレーン 50……ORプレーン。
FIG. 1 is a block diagram showing an embodiment of a PLA component in a CPU according to the present invention, and FIG. 2 is a diagram showing an AND plane and an OR shown in FIG.
FIG. 3 is a logic circuit diagram showing the configuration of a plane, and FIG.
FIG. 4 is a block diagram showing the overall configuration of U, FIG. 4 is a diagram showing a programming model of the CPU of the present invention, and FIG. 5 is a diagram showing an instruction format of the CPU of the present invention. 7 TCU, 8, 10 AND plane 50 OR plane

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平2−66627(JP,A) 特開 昭64−65634(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06F 9/30 ──────────────────────────────────────────────────続 き Continuation of the front page (56) References JP-A-2-66627 (JP, A) JP-A-64-65634 (JP, A) (58) Fields investigated (Int. Cl. 6 , DB name) G06F 9/30

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】データの格納先のアドレスを指定するアド
レッシングに係る情報と演算に係る情報とが分割された
命令体系の中央演算処理装置において、 上記アドレッシングに係る情報と演算に係る情報とを分
離する分離部と、 上記分離部が送出するアドレッシングに係る情報信号が
供給される第1のANDプレーンと、 上記分離部が送出する演算に係る情報信号が供給される
第2のANDプレーンと、 第1及び第2のANDプレーンが送出する信号が供給され
る一つのORプレーンと、 上記アドレッシングに係る情報信号と上記演算に係る情
報信号とを第1及び第2のANDプレーンへ送出するタイ
ミングを制御する一つのタイミング制御部と、を有する
PLAを備えたことを特徴とする中央演算処理装置。
1. A central processing unit of an instruction system in which information related to addressing for designating an address of a data storage destination and information related to an operation are separated, and the information related to the addressing and the information related to an operation are separated. A first AND plane to which an information signal related to addressing transmitted by the separating unit is supplied; a second AND plane to which an information signal related to operation transmitted by the separating unit is supplied; One OR plane to which the signals transmitted by the first and second AND planes are supplied, and the timing of transmitting the addressing-related information signal and the computation-related information signal to the first and second AND planes And one timing control unit that performs
A central processing unit equipped with a PLA.
JP1289617A 1989-11-07 1989-11-07 Central processing unit Expired - Fee Related JP2968288B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1289617A JP2968288B2 (en) 1989-11-07 1989-11-07 Central processing unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1289617A JP2968288B2 (en) 1989-11-07 1989-11-07 Central processing unit

Publications (2)

Publication Number Publication Date
JPH03149623A JPH03149623A (en) 1991-06-26
JP2968288B2 true JP2968288B2 (en) 1999-10-25

Family

ID=17745558

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1289617A Expired - Fee Related JP2968288B2 (en) 1989-11-07 1989-11-07 Central processing unit

Country Status (1)

Country Link
JP (1) JP2968288B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009259398A (en) * 2004-11-18 2009-11-05 Mentor Graphics Corp Method and apparatus of programmable memory built-in self test (mbist)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009259398A (en) * 2004-11-18 2009-11-05 Mentor Graphics Corp Method and apparatus of programmable memory built-in self test (mbist)

Also Published As

Publication number Publication date
JPH03149623A (en) 1991-06-26

Similar Documents

Publication Publication Date Title
US5511173A (en) Programmable logic array and data processing unit using the same
US4402042A (en) Microprocessor system with instruction pre-fetch
US4403284A (en) Microprocessor which detects leading 1 bit of instruction to obtain microcode entry point address
US4463421A (en) Serial/parallel input/output bus for microprocessor system
US4694391A (en) Compressed control decoder for microprocessor system
US4402044A (en) Microprocessor with strip layout of busses, ALU and registers
EP0221191A1 (en) Alu and condition code control unit for data processor
US5809327A (en) Eight-bit microcontroller having a risc architecture
EP0011412B1 (en) Bipartite control store for microprogrammed data processor
EP0476722A2 (en) Data processing system
JP2622612B2 (en) Integrated circuit
US4422143A (en) Microprocessor ALU with absolute value function
US4402043A (en) Microprocessor with compressed control ROM
KR20000053047A (en) Eight-bit microcontroller having a risc architecture
US5410721A (en) System and method for incrementing a program counter
JPH0769791B2 (en) Microprocessor
US5757685A (en) Data processing system capable of processing long word data
US6334135B2 (en) Data processing system and register file
JP2779557B2 (en) Parallel processing unit
US5384724A (en) Electronic circuit and method for half adder logic
US5301338A (en) System including central processing unit
US5465334A (en) Processor with a respective latch provided for each pipelined stage to transfer data to the pipeland stages
JP2968288B2 (en) Central processing unit
KR920002573B1 (en) Data processor
EP0416345B1 (en) Instruction decoder for a pipeline processor

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080820

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20080820

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090820

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees