JPS6261978B2 - - Google Patents

Info

Publication number
JPS6261978B2
JPS6261978B2 JP53085693A JP8569378A JPS6261978B2 JP S6261978 B2 JPS6261978 B2 JP S6261978B2 JP 53085693 A JP53085693 A JP 53085693A JP 8569378 A JP8569378 A JP 8569378A JP S6261978 B2 JPS6261978 B2 JP S6261978B2
Authority
JP
Japan
Prior art keywords
logic
bus
signal
interrupt
data
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
Application number
JP53085693A
Other languages
Japanese (ja)
Other versions
JPS5459851A (en
Inventor
Uooresu Doocheru Harorudo
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.)
CTU of Delaware Inc
Original Assignee
Mostek 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 Mostek Corp filed Critical Mostek Corp
Publication of JPS5459851A publication Critical patent/JPS5459851A/en
Publication of JPS6261978B2 publication Critical patent/JPS6261978B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4825Interrupt from clock, e.g. time of day
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7814Specially adapted for real time processing, e.g. comprising hardware timers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Microcomputers (AREA)
  • Bus Control (AREA)

Description

【発明の詳細な説明】 本発明は、一般に、デジタルデータ処理装置、
特に、単一の半導体チツプ上に形成される
MOS/LSIマイクロプログラムコンピユータに含
まれるカウントパルス発生装置に関するものであ
る。
DETAILED DESCRIPTION OF THE INVENTION The present invention generally relates to a digital data processing apparatus;
In particular, formed on a single semiconductor chip
This invention relates to a count pulse generator included in a MOS/LSI microprogram computer.

通常のトランジスタ論理装置の代りに高速度非
破壊固定記憶装置(ROM)に記憶された記憶論
理またはマイクロプログラム制御を使用すること
により、コンピユータ制御の大きな改善がなされ
る。マイクロプログラミングにより、構成的には
両立性があるが異なる子内部ハードウエア、組織
および構造を有しうる新しいコンピユータライン
へ同じ包括的な工業標準命令セツト(オペレーシ
ヨンコード)を組み入れることが可能となつた。
マイクロプログラミング手法によつて与えられる
さらに別の利点は、MOS/LSI回路技術によつて
実施されうる回路論理機能の形状寸法が最小とな
るということである。
Significant improvements in computer control are achieved by using memory logic stored in high speed non-destructive permanent memory (ROM) or microprogrammed control instead of conventional transistor logic devices. Microprogramming makes it possible to incorporate the same comprehensive industry standard instruction set (operating code) into new computer lines that are architecturally compatible but may have different internal hardware, organization, and structure. Ta.
Yet another advantage provided by the microprogramming approach is that it minimizes the geometry of circuit logic functions that can be implemented with MOS/LSI circuit technology.

本発明の目的を理解するためには、デジタルコ
ンピユータに対する一般的な理解が必要である。
デジタルコンピユータを含むいかなるデータ処理
装置も、5つの別々の機能セクシヨン、すなわ
ち、入力、ストレージ、算術論理装置(ALU)、
出力および制御から組織されうる。これらの機能
セクシヨンは、データ、命令および制御信号を表
わす電子的信号によつて相互に連結される。これ
らの機能セクシヨン内およびそれらの間を流れる
情報の流れの順序、タイミングおよび方向は、制
御セクシヨンによつて行なわれる。制御セクシヨ
ンはコンピユータ全体のオペレーシヨンを指揮す
る。この制御セクシヨンは、どのオペレーシヨン
が行なわれるべきかおよびオペレートされるべき
データがストレージセクシヨンのどこに置かれて
いるかを指示する情報ユニツトをストレージセク
シヨンから受ける。制御セクシヨンが実行される
べき正確な構造を決定した後、この制御セクシヨ
ンは、システムにおける特定のゲートを開いたり
閉じたりする制御信号を発し、電気信号の形の必
要なデータがそのオペレーシヨンの実行において
1つの機能ユニツトから別の機能ユニツトへ流れ
るようにする。算術論理セクシヨンがその機能を
演じた時、制御セクシヨンは必要な制御命令を発
しその結果をストレージセクシヨンへ伝送せしめ
るか又はある出力装置へチヤンネルされ別のスト
レージ媒体に記憶せしめる。命令の実行の終り
に、制御セクシヨンはコンピユータを次の命令の
取出しおよびデコードに前進させる。デジタルコ
ンピユータに対してマイクロプログラム制御を行
なうことにより、最小の形状寸法で非常に低いロ
ードのMOS/LSI論理機能要素を用いてマイクロ
スペクト機能(加算機、シフタ、およびその他の
ハードウエア)の制御が可能となつた。本発明の
一般的な目的は、改良された性能および高いパツ
ケージ密度を有するマイクロプログラムコンピユ
ータシステムを提供することにある。特に本発明
の目的は、MOS/LSI技術により単一の半導体チ
ツプに実施されうるこの種のマイクロプログラム
コンピユータシステムを提供することである。
A general understanding of digital computers is necessary to understand the purpose of the present invention.
Any data processing device, including a digital computer, has five separate functional sections: input, storage, arithmetic logic unit (ALU),
Can be organized from output and control. These functional sections are interconnected by electronic signals representing data, commands and control signals. The order, timing and direction of information flow within and between these functional sections is determined by the control section. The control section directs the operation of the entire computer. This control section receives information units from the storage section that indicate which operation is to be performed and where in the storage section the data to be operated on is located. After the control section has determined the exact structure to be performed, this control section issues control signals to open or close certain gates in the system, and the necessary data in the form of electrical signals are used to carry out that operation. flow from one functional unit to another. When the arithmetic and logic section performs its function, the control section issues the necessary control instructions and causes the results to be transmitted to the storage section or channeled to some output device and stored on another storage medium. At the end of execution of an instruction, the control section advances the computer to fetch and decode the next instruction. Microprogram control to a digital computer allows control of microspect functions (adders, shifters, and other hardware) using minimal form factor and very low load MOS/LSI logic functional elements. It became possible. A general object of the present invention is to provide a microprogram computer system with improved performance and high packaging density. In particular, it is an object of the invention to provide such a microprogram computer system that can be implemented on a single semiconductor chip using MOS/LSI technology.

本発明のマイクロプログラムコンピユータは、
MOS/LSI技術によつて単一の半導体チツプに実
施される。このコンピユータは、制御論理装置を
有するデータ処理装置と、少なくとも1つのデー
タ転送ポートを介して周辺装置とデータを交換す
る装置と、一組のマイクロプログラムを記憶しで
おり制御論理装置から発せられる命令の実行を制
御するマイクロプログラムを含むプログラムスト
レージ装置と、プログラム制御のもとでデータ語
に対するオペレーシヨンを行なう算術論理装置と
を備えている。システムが間隔タイマモード、パ
ルス幅測定モードおよび事象カウンタモードにて
動作しうるようにするための2進タイマが設けら
れる。この2進タイマは割込み論理装置と協働し
て、この2進タイマからのタイムアウト信号に応
答し且つ外部割込み要求に応答して割込み要求を
処理する。好ましい実施例では、外部割込み要求
の微分値(導関数)は、システムクロツクサイク
ルと同期され、割込み要求デコードオペレーシヨ
ンがその割込み要求の生ずるのと同じクロツクサ
イクル中に主制御論理装置によつて行なわれるよ
うにし、それによつて、外部割込み要求入力を通
して遂次情報のサンプルされる最大ビツト割合が
増大されるようにする。
The microprogram computer of the present invention includes:
Implemented on a single semiconductor chip using MOS/LSI technology. The computer includes a data processing unit having a control logic unit, a unit for exchanging data with peripheral devices via at least one data transfer port, and a set of microprograms storing instructions issued by the control logic unit. and an arithmetic logic unit that performs operations on data words under program control. A binary timer is provided to enable the system to operate in interval timer mode, pulse width measurement mode and event counter mode. The binary timer cooperates with the interrupt logic to process interrupt requests in response to timeout signals from the binary timer and in response to external interrupt requests. In the preferred embodiment, the derivative of an external interrupt request is synchronized with the system clock cycle such that the interrupt request decode operation is performed by the main control logic during the same clock cycle in which the interrupt request occurs. The maximum bit rate at which sequential information is sampled through the external interrupt request input is thereby increased.

本発明をその機構および作動方法に関して特徴
づける新規な特徴ならびにその他の特徴、利点は
添付図面に関して行なつた好適な実施例について
の以下の説明から一層よく理解されよう。
The novel features and other features and advantages which characterize the invention, both in terms of its mechanism and method of operation, will be better understood from the following description of a preferred embodiment, taken in conjunction with the accompanying drawings, in which: FIG.

第1図には、MOS/LSI技術により実施され且
つ単一の半導体チツプ上に形成されうるマイクロ
プログラムコンピユータ10が示されている。こ
のマイクロコンピユータ10の主機能セクシヨン
は、入力−出力ポート12,14,16および1
8、ポート選択論理装置20、プログラムおよび
データストレージ固定記憶装置(ROM)22、
演算および論理装置(ALU)24および主制御
論理装置26である。これらの主機能セクシヨン
は、データ処理プログラムの実施中、データ、命
令および制御信号を表わす信号を介して互いに連
絡する。この情報がコンピユータ10内を流れる
順序、タイミングおよび方向は主制御論理装置2
6によつて決定される。この主制御論理装置26
はROM22に記憶された機械語命令またはプロ
グラム命令のシーケンスによつて指示される。次
に、このマイクロコンピユータ10の主および補
助構成要素について詳細に説明していく。
FIG. 1 shows a microprogram computer 10 that is implemented using MOS/LSI technology and can be formed on a single semiconductor chip. The main functional sections of this microcomputer 10 are input-output ports 12, 14, 16 and 1.
8. port selection logic 20; program and data storage fixed memory (ROM) 22;
an arithmetic and logic unit (ALU) 24 and a main control logic unit 26. These main functional sections communicate with each other via signals representing data, commands and control signals during execution of the data processing program. The order, timing and direction in which this information flows through computer 10 is determined by main control logic 2.
6. This main control logic unit 26
is instructed by a sequence of machine language instructions or program instructions stored in ROM 22. Next, the main and auxiliary components of this microcomputer 10 will be explained in detail.

入力/出力ポート 入力/出力(I/O)ポート12,14,16
および18の各々は、主制御論理装置26によつ
て各ポートにアドレスが割当てられること以外は
同一である。これらのポートは、以下では、通常
の命令組命名法に従つてそれぞれポート0,1,
4および5と称する。各ポートを代表してI/O
ポート4について次に説明する。
Input/output ports Input/output (I/O) ports 12, 14, 16
and 18 are identical except that an address is assigned to each port by master control logic 26. These ports will be referred to below as ports 0, 1, and 1, respectively, following normal instruction set nomenclature.
4 and 5. I/O on behalf of each port
Port 4 will be explained next.

I/Oポート4は、信号ENA4と組み合つた
ロード信号LDからの命令時にこのI/Oポート
4が入来情報を主データバス28にロードするよ
うに命令する論理回路を含む8ビツトラツチであ
る。このローデイングは、データバス28のデー
タが安定化されるようにクロツク信号ΦCと同期
される。データバスからのデータは、8ビツト2
進語の形でI/Oポート4へ与えられる。この語
は、2進コード化十進語であつたり、また、プリ
ンタの如き周辺機器(PE)への文字を表わす2
進コードであつたりしうる。データバスからのデ
ータは、コンピユータのデータ処理サブシステム
の一部であるアキユムレータ30から出されてい
る。I/Oポート4へのどのデータ出力の場合に
も、主制御論理装置26は、アキユムレータ30
に記憶された情報がデータバスを通してI/Oポ
ート4へ導かれるように種々のゲートを制御す
る。ポート4は、この時データバスからその情報
を取り出しΦCクロツクと同期してその情報をラ
ツチする。
I/O port 4 is an 8-bit latch containing logic circuitry that commands this I/O port 4 to load incoming information onto main data bus 28 upon command from load signal LD in combination with signal ENA4. . This loading is synchronized with clock signal ΦC so that the data on data bus 28 is stabilized. Data from the data bus is 8 bits 2
It is given to I/O port 4 in the form of a forward word. This word can be a binary coded decimal word, or a binary coded decimal word that represents a character to a peripheral device (PE) such as a printer.
It can be a hex code. Data from the data bus originates from an accumulator 30, which is part of the computer's data processing subsystem. For any data output to I/O port 4, main control logic 26
controls various gates such that information stored in the I/O port 4 is routed through the data bus to the I/O port 4. Port 4 then retrieves the information from the data bus and latches it in synchronization with the ΦC clock.

論理ブロツクI/Oポート4によつて行なわれ
る別の仕事は、その入力ピンにおける電圧レベル
を読み取ることである。これは、可能化信号
PORT4ENAが活性となり且つロード信号LDが不
活性のままである時に行なわれる。周辺機器から
の入力ピンの情報は、主データバス28へ駆動さ
れ、種々のゲートを通つて最終目標であるアキユ
ムレータ30へ導かれる。
Another task performed by logic block I/O port 4 is to read the voltage level at its input pins. This is the enabling signal
This is done when PORT4ENA becomes active and load signal LD remains inactive. Information on input pins from peripheral devices is driven onto the main data bus 28 and routed through various gates to the final destination, an accumulator 30.

I/Oポート4は、テストモードで演ずるさら
にもう1つの機能を有している。入力信号
が活性化される時、すなわち、この信号に対応す
る電圧レベルが論理“1”に相当する低レベルま
で降下する時、データバス28から情報を選択的
に取り出す代りに、I/Oポート4論理ブロツク
は、そのデータバスからデータを取り出して常に
それをその入力ピンへ直接的に供給する。このオ
ペレーシヨンはΦCクロツクと同期されていな
い。それは内部ラツチ回路のまわりの直接路を与
える。それは内部ラツチ回路を不能化してポート
ピンを駆動しないようにし、その代りに、ポート
ピンを内部データバス28へ直接的に論理的に接
続するようにする。
I/O port 4 has yet another function that it performs in test mode. When an input signal is activated, that is, when the voltage level corresponding to this signal drops to a low level corresponding to a logic "1", instead of selectively retrieving information from the data bus 28, the I/O port The 4 logic block always takes data from its data bus and supplies it directly to its input pins. This operation is not synchronized with the ΦC clock. It provides a direct path around the internal latch circuit. It disables the internal latch circuits so that they do not drive the port pins and instead logically connects the port pins directly to the internal data bus 28.

ポート5は、このポート5への信号入力
が論理“1”に相当する低電圧にまで降下すると
きにこのポート5がそのピンに存在する情報を取
り出しそれを内部データバス28へ駆動するとい
う別の機能をテストモードにおいて有している。
これにより、ポート5はテストモード中に内部デ
ータバスに割当てられた入力となり、ポート4は
内部データバスからの割当てられた出力となるよ
うにされ、従つて、ポート5を通して内部データ
バスにテスト信号を入力し且つポート4を通して
このテストを確認するため内部データバスを監視
するように外部テスタを使用することができるよ
うにされる。
Port 5 has the additional feature that when the signal input to port 5 drops to a low voltage corresponding to a logic "1", port 5 takes the information present on that pin and drives it onto the internal data bus 28. functions in test mode.
This causes port 5 to be the assigned input to the internal data bus during test mode and port 4 to be the assigned output from the internal data bus, thus providing a test signal to the internal data bus through port 5. An external tester can be used to input and monitor the internal data bus to verify this test through port 4.

入力/出力ポート0,1,4および5は、完全
な双方向性入力/出力ポートである。また、後述
する割込み制御ポート32は、ポート6としてア
ドレスされる。また後述する2進タイマ34はポ
ート7としてアドレスされる。出力命令(OUT
またはOUTS)により、アキユムレータ30の内
容がアドレスされたポートへラツチさせられる。
入力命令(INまたはINS)はそのポートの内容を
アキユムレータ30へ転送させる。
Input/output ports 0, 1, 4 and 5 are fully bidirectional input/output ports. Further, an interrupt control port 32, which will be described later, is addressed as port 6. Further, a binary timer 34, which will be described later, is addressed as port 7. Output command (OUT
or OUTS) causes the contents of accumulator 30 to be latched to the addressed port.
An input command (IN or INS) causes the contents of that port to be transferred to the accumulator 30.

ストローブ論理装置 ストローブ論理装置34は、I/Oポート4の
オペレーシヨンに関連している。このストローブ
論理装置34は、I/Oポート4に新しいデータ
が装入された後、単一パルス出力信号
を供給する。ストローブ論理装置34は、その基
本モードにおいて、データバス28からI/Oポ
ート4のラツチ回路へ新しいデータが装入されて
いることを示す活性な信号PORT4ENAおよび不
活性なロード信号LDの組合せに応答する。この
時、ストローブ論理装置は、ΦCの1サイクルの
間その情報を遅延させ、従つて、ΦCの2サイク
ルの間低いままでそれから上昇するような単一負
方向パルスを発生する。このフラツグは、コンピ
ユータ10が頂度新しいデータをポート4へ出力
し終つたことを周辺装置(PE)に合図するのに
使用されうる。この遅延により、ストローブ信号
が周辺装置へ導かれる前に新しいデータが確実に
ポート4ラツチ回路へラツチされ安定化されるよ
うにされる。
Strobe Logic Strobe logic 34 is associated with I/O port 4 operation. The strobe logic 34 provides a single pulse output signal after the I/O port 4 is loaded with new data. In its basic mode, strobe logic 34 is responsive to the combination of an active signal PORT4ENA and an inactive load signal LD indicating that new data is being loaded from data bus 28 into the latch circuit of I/O port 4. do. At this time, the strobe logic delays its information for one cycle of ΦC, thus generating a single negative going pulse that remains low for two cycles of ΦC and then rises. This flag can be used to signal a peripheral device (PE) that computer 10 is finished outputting new data to port 4. This delay ensures that the new data is latched into the port 4 latch and stabilized before the strobe signal is routed to the peripheral.

ストローブ論理装置34の第2の機能は、コン
ピユータがどんなマシンサイクルにあるかを示す
ためテストモード中外部テスタへ同期化クロツク
を与えることである。この情報は、クロツクサイ
クルΦCの逆として与えられる。ストローブ論理
装置への信号が活性となるとき、ストロー
ブ出力は単にΦCの逆になる。その出力は、デー
タバス28への情報の駆動およびポート5および
ポート4を介してのデータバスからの情報のスト
ロービングを調整しうるようコンピユータ10内
でマシンサイクルがいつ開始されいつ終了するか
についてテスタが知らされるように、ΦC反転さ
れる。
The second function of strobe logic 34 is to provide a synchronization clock to the external tester during test mode to indicate what machine cycle the computer is in. This information is given as the inverse of the clock cycle ΦC. When the signal to the strobe logic is active, the strobe output is simply the inverse of ΦC. Its output determines when machine cycles begin and end within computer 10 to coordinate the driving of information onto data bus 28 and the strobing of information from the data bus via ports 5 and 4. ΦC is inverted so that the tester is informed.

ストローブ論理装置34への別の入力は、スト
ローブ出力を禁止するのに使用される主制御論理
装置26からの信号Rである。信号Rは、テスト
ルーチンの実行がΦCクロツクで同期されるよう
にするマシンのリセツト状態中活性である。例え
ば、テストモードにおいて、ストローブ出力は活
性であり、外部テスタは、ポート5へデータを駆
動しポート4からデータを読み出すようにしう
る。しかし、コンピユータ10はなおもリセツト
状態にあり、クロツク発生器が作動するに十分な
電圧があつても、回路の他の部分が作動するのに
十分な電圧があるという保証はなく、従つて、コ
ンピユータ10は、主制御論理装置26に配置さ
れた内部パワーオンクリア論理装置によつてリセ
ツト状態に保持されうる。従つて、コンピユータ
10がリセツト状態にある間、主制御論理装置は
ストローブ出力が活性となるのを禁止する。コン
ピユータ10がその最初の命令を実行し始めると
すぐに、すなわち、コンピユータがリセツトされ
るとすぐに、ストローブ出力は、テスタがポート
5へ命令を同期して駆動し且つポート4から正当
なデータを受け入れうるようにさせるΦC反転パ
ルスを発生し始める。
Another input to strobe logic 34 is signal R from main control logic 26, which is used to inhibit the strobe output. Signal R is active during the reset state of the machine which causes the execution of the test routine to be synchronized with the ΦC clock. For example, in test mode, the strobe output may be active and an external tester may drive data to port 5 and read data from port 4. However, the computer 10 is still in reset, and even if there is sufficient voltage to operate the clock generator, there is no guarantee that there will be sufficient voltage to operate the rest of the circuit, so Computer 10 may be held in reset by internal power-on clear logic located in main control logic 26. Therefore, while computer 10 is in the reset state, the main control logic inhibits the strobe output from becoming active. As soon as the computer 10 starts executing its first instruction, i.e. as soon as the computer is reset, the strobe output indicates that the tester is synchronously driving the instruction to port 5 and valid data from port 4. Start generating a ΦC inversion pulse that makes it acceptable.

クロツク発生器 適当なオペレーシヨンサイクルを確立するのに
必要とされるタイミング信号はクロツク発生器2
8によつて与えられる。本発明の目的のために
は、クロツク回路は通常の構成のものでよく、ク
リスタル制御発振器およびカウンタ回路からなる
ものでよい。好ましい実施例では、4つの外部モ
ードおよび1つの内部モードがある。外部モード
では、クロツク発生器38は、外部タイミング基
準を取り入れ3つのシステムクロツク、すなわち
第2図に示すように、ΦF(高速クロツク)、Φ
C(主サイクルクロツク)およびΦE(早期サイ
クルクロツク)を発生する論理装置である。もし
外部水晶クリスタルがクロツク発生器へのXTL1
入力とXTL2入力との間に接続されるならば、ク
ロツク発生器は、そのクリスタルの発振周波数の
2分の1であるΦF高速クロツクを発生する。そ
のタイミング基準は、外部ハンダクタキヤパシタ
回路網または外部抵抗キヤパシタ回路網によつて
印加されうる。別のオペレーシヨンモーダでは、
タイミング基準は、矩形波又は正弦波又はその他
の脈動信号の形の外部タイミング源によつて与え
られうる。クロツク発生器38は、XTL1および
XTL2ピンの両者が接地されるときに活性化され
る内部発振器を含んでいる。
Clock Generator The timing signals required to establish the proper operating cycle are provided by clock generator 2.
8. For purposes of the present invention, the clock circuit may be of conventional construction and may consist of a crystal controlled oscillator and a counter circuit. In the preferred embodiment, there are four external modes and one internal mode. In external mode, clock generator 38 takes an external timing reference and generates three system clocks: ΦF (fast clock), Φ
A logic device that generates C (main cycle clock) and ΦE (early cycle clock). If an external crystal is connected to XTL1 to the clock generator
If connected between the input and the XTL2 input, the clock generator generates a ΦF high speed clock that is one-half the oscillation frequency of the crystal. The timing reference may be applied by an external solder capacitor network or an external resistive capacitor network. In another operation mode,
The timing reference may be provided by an external timing source in the form of a square wave or sine wave or other pulsating signal. The clock generator 38 has XTL1 and
Contains an internal oscillator that is activated when both XTL2 pins are grounded.

ΦC信号はコンピユータシステム10のための
サイクルクロツクである。このΦC信号は完全な
マシンサイクルを限定する。バスへの情報のすべ
てのゲーテイングおよびバスからの情報の受け入
れのすべては単一ΦCサイクル中に行なわれる。
ΦCサイクルの長さは、ΦFクロツクサイクルの
4または6周期でありうる。短いサイクルおよび
長いサイクルΦCクロツク信号を有する理由は、
データがいくつかの内部バスを伝つて元の点から
固有の伝搬遅延の生ずる目的の点へ移つていくよ
うな特定な複雑なデータ伝送により長い時間が必
要とされるためである。これらのオペレーシヨン
の場合、主制御論理装置26は、クロツクサイク
ルが4つのΦF周期から6つのΦF周期まで延長
されるべきことをクロツク発生器に命令する。こ
れは、主制御論理装置26からクロツク発生器へ
入る信号LONGによつて実施される。
The ΦC signal is the cycle clock for computer system 10. This ΦC signal defines a complete machine cycle. All gating of information onto the bus and all acceptance of information from the bus occurs during a single ΦC cycle.
The length of the ΦC cycle can be 4 or 6 ΦF clock cycles. The reason for having short cycle and long cycle ΦC clock signals is that
This is because certain complex data transmissions require longer times, such as data traveling over several internal buses from an original point to a destination point with inherent propagation delays. For these operations, main control logic 26 instructs the clock generator that the clock cycle is to be extended from four ΦF periods to six ΦF periods. This is accomplished by the signal LONG from main control logic 26 to the clock generator.

ΦEクロツク信号は、ΦCクロツクと同じ周期
を有する補助クロツクである。これらの2つの間
の差異は、ΦCクロツクがマシンサイクルの最後
のΦF周期の間単一正方向パルスを発生すること
である。すなわち、短いサイクルの場合には、Φ
Cクロツクは、サイクルの開始時に論理“0”レ
ベルとなり3つのΦFサイクルの間そのレベルに
とどまり、それから1つのΦFサイクルの間論理
“1”レベルとなり、それから論理“0”レベル
へ戻る。長いサイクルの場合、ΦCクロツクは、
5つのΦF周期の間論理“0”に相当するレベル
にとどまり、それから単一のΦF周期の間論理
“1”に相当する電圧レベルとなり、それから
“0”へ戻る。ΦCクロツクの論理“1”レベル
から論理“0”レベルへの降下は、そのサイクル
の終りおよび次のサイクルの開始として定められ
る。ΦEクロツクは、従つて、マシンサイクルの
開始時に低レベルから高レベルへいく。ΦEクロ
ツクは、マシンサイクルの最初の2つのΦF周期
の間高レベルのままで、それから、マシンサイク
ルの残りの間低レベルとなる。
The ΦE clock signal is an auxiliary clock having the same period as the ΦC clock. The difference between these two is that the ΦC clock generates a single positive going pulse during the last ΦF period of the machine cycle. That is, for short cycles, Φ
The C clock goes to a logic "0" level at the beginning of the cycle and remains at that level for three ΦF cycles, then goes to a logic "1" level for one ΦF cycle, and then returns to a logic "0" level. For long cycles, the ΦC clock is
It remains at a level corresponding to a logic "0" for five ΦF periods, then goes to a voltage level corresponding to a logic "1" for a single ΦF period, and then returns to "0". The fall of the ΦC clock from a logic "1" level to a logic "0" level is defined as the end of the cycle and the beginning of the next cycle. The ΦE clock therefore goes from a low level to a high level at the beginning of a machine cycle. The ΦE clock remains high for the first two ΦF periods of the machine cycle and then goes low for the remainder of the machine cycle.

ΦFクロツクの一使用例としては、後述するよ
うにスクラツチパツドレジスタ40へのまたはそ
こからの情報の転送がある。情報は、ΦEクロツ
クが正レベルにあるときマシンサイクルの早期部
分中にスクラツチパツドレジスタ40から転送さ
れる。ΦEクロツクが低レベルになると、スクラ
ツチパツドからの情報はラツチされ変化すること
ができず、従つて、その同じサイクル中新しい情
報はそのスクラツチパツドへ入りそのスクラツチ
パツド40の出力を変えずに実際のレジスタを変
更することができる。ΦEクロツクを使用するの
は補助的な目的のためであつて、基本的にはマシ
ンサイクルの早期部分にて単一パルスを与え、一
方、ΦCクロツクは重複せずにサイクルの終りに
単一パルスを与える。
One example of the use of the ΦF clock is to transfer information to and from scratchpad register 40, as described below. Information is transferred from scratch pad register 40 during the early part of the machine cycle when the ΦE clock is at a positive level. When the ΦE clock goes low, the information from the scratchpad is latched and cannot change, so during that same cycle new information enters the scratchpad and changes the actual register without changing the output of the scratchpad 40. can do. The use of the ΦE clock is for auxiliary purposes and essentially provides a single pulse in the early part of the machine cycle, while the ΦC clock provides a single pulse at the end of the cycle without overlapping. give.

ポート選択論理装置 ポート選択論理装置20の基本的機能は、読出
しまたは書込みの行なわれる論理ポート素子を選
択することである。主制御論理装置26は、現在
実行される命令に従つてどの特定のポートがアド
レスされるかを指示する。出力命令のオペレーシ
ヨン中、ポート番号が内部データバス28に置か
れ、すなわち、内部データバスの内容がポート4
のアドレスされていることを示す番号04へ駆動
される。ポート選択論理装置20は、内部データ
バス28を走査し、1サイクルの間その情報を保
持する。読出し高(RD HI)またはロード高
(LD HI)信号が活性であるならば、そして、前
のサイクル中ポートアドレスがデータバスにあつ
たならば、前のサイクル中にデータバスにあつた
番号のポートがアドレスされる。その特定のポー
トがアクセスされる時、もしそのポートがデータ
を読出すものであるならば、主制御論理装置26
は読出し高信号RD HIを活性化する。ポートア
ドレスがデータバスにあつたサイクルの次のサイ
クル中に活性なロード高(LD HI)信号が存在
することは、前のサイクル中にアドレスされたポ
ートが内部データバス28に目下存在する情報を
受けその情報をそのラツチ回路へラツチすること
を示している。
Port Selection Logic The basic function of port selection logic 20 is to select the logical port element to be read or written. Main control logic 26 directs which particular ports are addressed according to the currently executed instruction. During the operation of the output instruction, the port number is placed on the internal data bus 28, i.e. the contents of the internal data bus are placed on the internal data bus 28.
is driven to number 04 indicating that it is being addressed. Port selection logic 20 scans internal data bus 28 and holds the information for one cycle. If the read high (RD HI) or load high (LD HI) signal is active, and if the port address was on the data bus during the previous cycle, then the address of the number that was on the data bus during the previous cycle is port is addressed. When that particular port is accessed, if the port is to read data, the main control logic 26
activates the read high signal RDHI. The presence of an active load high (LD HI) signal during the cycle following the cycle in which the port address was on the data bus indicates that the port addressed during the previous cycle has information currently present on the internal data bus 28. This indicates that the received information is latched into the latch circuit.

ポート7、2進タイマ36に関して、もし読出
しオペレーシヨンを行なう場合には、信号が
活性化され、ロードオペレーシヨンを行なう場合
には、信号LTが活性化される。また、割込み制
御ポート32のロードICPおよび読出しICP信号
が活性化される。
Regarding port 7, binary timer 36, if a read operation is to be performed, the signal is activated, and if a load operation is to be performed, the signal LT is activated. Also, the load ICP and read ICP signals of the interrupt control port 32 are activated.

ポート0または1がアドレスされる方法はポー
ト4および5の場合の方法とはいくらか異なつて
いる。ポート0または1がアドレスされる時、そ
のアドレスは前のサイクルにおいてデータバスへ
は駆動されない。その代りに、ポート0またはポ
ート1が活性化される場合には、読出し低信号
RD LOまたはロード低信号LD LOがそのサイク
ル中に活性となる。この時、ポート選択論理装置
は、命令レジスタ42の最下位ビツトに相当する
IRO信号の状態を決定する。もしその信号が論理
“0”状態にあるならば、それはポート0をアク
セスすることを指示している。もしその信号が論
理“1”状態にあるならば、それはポート1をア
クセスすることを指示している。従つて、それは
ポート4および5と同様にして信号ポート1
ENAおよびロード信号LDを用いてポート1をア
クセスするが、ポート4および5と違つて、ポー
ト0または1の選択は信号RD LOまたはLD LO
とIRO信号の固有の状態との組合せに依存してい
る。
The way ports 0 or 1 are addressed is somewhat different from the way ports 4 and 5 are addressed. When port 0 or 1 is addressed, that address was not driven onto the data bus in the previous cycle. Alternatively, if port 0 or port 1 is activated, the read low signal
RD LO or load low signal LD LO becomes active during that cycle. At this time, the port selection logic corresponds to the least significant bit of instruction register 42.
Determine the state of the IRO signal. If the signal is in a logic "0" state, it indicates that port 0 is to be accessed. If that signal is in a logic "1" state, it indicates that port 1 is to be accessed. Therefore, it connects signal port 1 in the same way as ports 4 and 5.
ENA and load signal LD are used to access port 1, but unlike ports 4 and 5, selection of port 0 or 1 is via signal RD LO or LD LO
and the specific state of the IRO signal.

ポート選択論理装置20への信号R入力は、コ
ンピユータ10がリセツト状態にあることを指示
する主制御論理装置26からの禁止信号である。
リセツト状態にある時、コンピユータ10は禁止
信号の存在する間ロードする。しかし、内部デー
タバス28には駆動要素がないので、その内部デ
ータバスの内容は00であり、従つて、入力/出力
ポートは既知の00状態へ初期設定される。この実
施例における1つの例外は、ポート0および1が
リセツト中初期設定されずポートの前の内容を維
持するということである。
The signal R input to port selection logic 20 is an inhibit signal from main control logic 26 indicating that computer 10 is in a reset state.
When in the reset state, computer 10 loads while the inhibit signal is present. However, since there are no driving elements on the internal data bus 28, the contents of the internal data bus 28 are 00, and thus the input/output ports are initialized to the known 00 state. One exception to this embodiment is that ports 0 and 1 are not initialized during reset, maintaining their previous contents.

割込み制御ポート 割込み制御ポート装置32は、コンピユータシ
ステム内のポート6とされている。ICPすなわち
割込み制御ポート32は、8ビツト書込み専用ラ
ツチである。信号LOAD ICPが活性である時、
割込み制御ポート32への主データバス28に存
在するデータは、割込み制御ポートラツチ回路へ
ラツチされ、ΦCクロツク信号で同期され、従つ
て、LOAD ICP信号に続く最初のクロツクサイ
クル中ラツチ出力のすべてへ与えられる。適切な
時間で主データバスへ割込み制御ポートのラツチ
回路に記憶された情報を可能化する代りに、命令
が割込み制御ポート32を読み出すように実行さ
れるとき、外部割込みピン46の電圧レベルがデ
ータバスビツト7へ可能化される。他のデータバ
スピンではなにも可能化されず、従つてそれらの
データバスピンは論理“0”状態をとる。それ故
に、割込み制御ポートラツチにおいて情報を実際
に読み出す代りに、ポート6からの命令入力が実
行されるとき、外部割込みピンの論理レベルまた
は電圧レベルはデータバスビツト7(DB7)へ転
送される。
Interrupt Control Port Interrupt control port device 32 is referred to as port 6 within the computer system. The ICP or interrupt control port 32 is an 8-bit write only latch. When the signal LOAD ICP is active,
Data present on the main data bus 28 to the interrupt control port 32 is latched into the interrupt control port latch circuit, synchronized with the ΦC clock signal, and thus sent to all of the latch outputs during the first clock cycle following the LOAD ICP signal. Given. Instead of enabling the information stored in the interrupt control port's latch circuit to the main data bus at the appropriate time, when an instruction is executed to read the interrupt control port 32, the voltage level on the external interrupt pin 46 Enabled to bus bit 7. Nothing is enabled on the other data bus pins, so they assume a logic "0" state. Therefore, instead of actually reading information at the interrupt control port latch, when an instruction input from port 6 is executed, the logic or voltage level of the external interrupt pin is transferred to data bus bit 7 (DB7).

割込み論理装置 マイクロプログラムコンピユータシステムにお
いては、割込み信号は現在実行している命令シー
ケンスの実行を停止させ、その代りに別の命令シ
ーケンスを実行するための主制御論理装置への要
求または命令である。あるものは、拒否され得な
い要求というよりは命令であることを意味するマ
スクされない割込みと称される。マスクされうる
割込みは命令でなくて、現在実行しているシーケ
ンスとは異なる命令シーケンスを主制御論理装置
が実行するという要求である。
Interrupt Logic In a microprogram computer system, an interrupt signal is a request or command to the main control logic to halt execution of a currently executing sequence of instructions and to execute another sequence of instructions in its place. Some are called unmasked interrupts, meaning they are instructions rather than requests that cannot be denied. An interrupt that can be masked is not an instruction, but a request for the main control logic to execute a different sequence of instructions than the one it is currently executing.

コンピユータシステム10における割込み論理
装置44の機能は、2進タイマ36または外部割
込みピン46からの入力に応答して主制御論理装
置へその要求を与えることである。その要求へ応
答して主制御論理装置がその要求を実行しようと
するならば、それは、3つの信号、すなわち、
FREEZE信号、パス割込みベクトル低またはIVL
信号およびパス割込みベクトル高またはIVH信号
により割込み論理装置44に合図する。3つの信
号に応答して、割込み論理装置44はデータバス
28へ適当なアドレスを通す。
The function of interrupt logic 44 in computer system 10 is to provide requests to the main control logic in response to inputs from binary timer 36 or external interrupt pin 46. If the main control logic in response to the request wishes to execute the request, it sends three signals:
FREEZE signal, path interrupt vector low or IVL
Interrupt logic 44 is signaled by the signal and the path interrupt vector high or IVH signal. In response to the three signals, interrupt logic 44 passes the appropriate address onto data bus 28.

外部割込み信号の活性状態は、割込み論理装置
44へのEDGE入力によつて定められる。通常の
割込みオペレーシヨンにおいて外部割込み信号を
発生するために、EXT INTピン46の信号の論
理状態により論理0から論理1への活性遷移がな
されることが必要である。この遷移は、外部割込
み要求に対する許容機能として動作する外部可能
化信号EXT ENAによつてゲートされる。主制御
論理装置の通常の外部割込み要求を生ずるため、
割込み論理装置は、まず、論理“0”または
“1”で適切に限定されたEDGEビツトおよび論
理“1”で外部割込み可能化信号を有さなければ
ならない。外部割込みピンにおける信号の不活性
から活性への遷移が生ずるならば、それはその信
号を低電圧または活性状態へ引つ張ることによつ
て割込み要求によつて主制御論理装置へ割込
み要求を通す。
The active state of the external interrupt signal is determined by the EDGE input to interrupt logic 44. In order to generate an external interrupt signal during normal interrupt operation, the logic state of the signal on the EXT INT pin 46 requires an active transition from a logic 0 to a logic 1. This transition is gated by the external enable signal EXT ENA, which acts as a toleration function for external interrupt requests. To generate a normal external interrupt request for the main control logic,
The interrupt logic must first have the EDGE bit properly defined at a logic "0" or "1" and an external interrupt enable signal at a logic "1". If an inactive to active transition of a signal on the external interrupt pin occurs, it passes an interrupt request to the main control logic by pulling that signal to a low voltage or active state.

割込み論理装置44は、また、2進タイマ信号
TIME OUTに応答して主制御論理装置26へ割
込み要求を通す。TIME OUT信号が活性化され
るとき、割込み論理装置44は。2進タイム36
がその適切な機能を演じており、条件付で割込み
要求を主制御論理装置26へ通しうることを、通
知される。割込み論理装置44は、タイマ可能化
ビツトが活性化されるような時に主制御論理装置
へ割込み要求を通す。もしTIME OUT信号がそ
のパルスを発生するときにタイマ可能化入力が不
活性状態にあるならば、TIME OUTが起きたと
いう情報は、タイマ可能化入力が活性化されるま
で保持される。
Interrupt logic 44 also provides a binary timer signal.
An interrupt request is passed to main control logic 26 in response to TIME OUT. When the TIME OUT signal is activated, interrupt logic 44. binary time 36
is notified that it is performing its proper functions and may conditionally pass the interrupt request to main control logic 26. Interrupt logic 44 passes interrupt requests to the main control logic when the timer enable bit is activated. If the timer enable input is inactive when the TIME OUT signal generates its pulse, the information that TIME OUT has occurred is retained until the timer enable input is activated.

しかし、通常割込み要求を生ずる外部割込み入
力の適切な遷移の起きるときに割込み論理装置4
4への外部可能化入力が不活性であるならば、そ
の時には、割込み論理装置は外部割込み要求を無
視する。タイマがTIME OUTパルスを発生する
とき、外部割込み論理装置はそのパルスをラツチ
し、もし割込み論理装置へのタイマ可能化入力が
活性であるなら、それは主制御論理装置へ割込み
要求を通す。
However, when an appropriate transition occurs on the external interrupt input that would normally result in an interrupt request, the interrupt logic 4
If the external enable input to 4 is inactive, then the interrupt logic ignores external interrupt requests. When the timer generates a TIME OUT pulse, the external interrupt logic latches that pulse and if the timer enable input to the interrupt logic is active, it passes the interrupt request to the main control logic.

別の条件によれば、LT信号が活性になる場
合、それは割込み制御論理装置44において残留
TIME OUTパルスに関連した記憶情報をクリア
する。例えば、TIME OUTパルスが生じ、且
つ、割込み論理装置へのタイマ可能化入力が不活
性状態にあるならば、TIME OUTパルスの生じ
たという情報はその割込み論理装置へラツチされ
る。しかし、LT信号が活性となるならば、割込
み論理装置44におけるTIME OUT信号のラツ
チはクリアされる。もし割込み論理装置へのタイ
マ可能化信号TIMER ENAがその後活性となる
ならば、なんの要求も主制御論理装置へ通されな
い。何故ならば、その要求はLT信号を活性化す
ることによりクリアされてしまうからである。
According to another condition, if the LT signal becomes active, it remains in the interrupt control logic 44.
Clears stored information related to TIME OUT pulses. For example, if a TIME OUT pulse occurs and the timer enable input to the interrupt logic is inactive, the information that a TIME OUT pulse has occurred is latched into the interrupt logic. However, if the LT signal goes active, the TIME OUT signal latch in interrupt logic 44 is cleared. If the timer enable signal TIMER ENA to the interrupt logic subsequently becomes active, no requests are passed to the main control logic. This is because the request is cleared by activating the LT signal.

割込み要求出力IRQ以外割込み論理装置の別の
出力は、EXT INT′と称される外部割込み信号を
微分したものである。信号EXT INT′は外部割込
み入力46の論理状態を表わしている。この信号
は、適切にバツフアされて使用されるもので、ポ
ート6からの入力または読出しICP命令が、外部
割込みピンに直接データバス7を駆動させるとい
うのでなく、データバス7を駆動するように実行
されるときに、使用されるものである。
Another output of the interrupt logic, other than the interrupt request output IRQ, is the differentiated version of the external interrupt signal, referred to as EXT INT'. Signal EXT INT' represents the logic state of external interrupt input 46. This signal is appropriately buffered and used so that an input or read ICP instruction from port 6 is executed to drive data bus 7 rather than having an external interrupt pin drive data bus 7 directly. It is used when

割込み要求はマスクしうる割込みであるので、
主制御論理装置26は別の可能化および不能化回
路を介して割込みを無視したり許可したりの選択
を行なうことができる。もし主制御論理装置26
が割込み要求を受け入れるに適切な状態にあるな
らば、それは3つの制御信号を用いて割込み論理
装置に応答する。第1の制御信号は、割込み論理
装置がその現在の状態を変化させないようにする
ため1サイクルの間活性化されるFREEZE出力
である。このフリーズサイクルに続いて、主制御
論理装置は単一ΦCサイクル遅延を行なう。この
遅延サイクル中、実質的には、コンピユータのオ
ペレーシヨンは全く行なわれない。この遅延によ
り、割込み論理装置は完全に安定化しうる。次の
2つのサイクル中、主制御論理装置26は、割込
み論理装置44が次のプログラム命令のアドレス
をデータバス28にロードすることを要求する。
割込要求に応答して、主制御論理装置26は、次
の命令のシーケンスのアドレスを決定するため割
込みベクトル信号により割込み論理装置に質問す
る。これは、割込み論理装置が次の命令シーケン
スのアドレスに直接に応答するようなベクトル割
込みと称される。例えば、外部割込み要求に応答
して、割込み論理装置44は、新しい命令シーケ
ンスの初めに対して場所00A0を与えうる。もし
それが割込み論理装置からのTIME OUT信号に
応答しているならば、その割込み論理装置は例え
ばアドレス0020を主制御論理装置へ与えて、従つ
て、実行される次の命令がその場所からくるよう
にその情報をその適切なアドレスレジスタへ指向
する。
Interrupt requests are interrupts that can be masked, so
Main control logic 26 can choose to ignore or allow interrupts through separate enabling and disabling circuits. If the main control logic unit 26
If the interrupt is in the appropriate state to accept an interrupt request, it responds to the interrupt logic using three control signals. The first control signal is the FREEZE output which is activated for one cycle to prevent the interrupt logic from changing its current state. Following this freeze cycle, the main control logic performs a single ΦC cycle delay. During this delay cycle, virtually no computer operations occur. This delay allows the interrupt logic to fully stabilize. During the next two cycles, main control logic 26 requests that interrupt logic 44 load the address of the next program instruction onto data bus 28.
In response to an interrupt request, main control logic 26 interrogates the interrupt logic with an interrupt vector signal to determine the address of the next sequence of instructions. This is referred to as a vectored interrupt where the interrupt logic responds directly to the address of the next instruction sequence. For example, in response to an external interrupt request, interrupt logic 44 may provide location 00A0 for the beginning of a new instruction sequence. If it is responding to a TIME OUT signal from the interrupt logic, that interrupt logic will give address 0020, for example, to the main control logic, so the next instruction to be executed will come from that location. directs the information to its appropriate address register.

この実施例では、固定記憶装置(ROM)22
におけるバイトのすべてをアクセスするのに11ビ
ツトアドレスが必要とされる。しかしながら、デ
ータバス28は8ビツトの容量しか有していな
い。情報は内部データバス28に通されるので、
それは最初8ビツトの群にて通され、それから、
他の3つのビツトが通される。それ故に、割込み
論理装置が割込みベクトルを通すことを主制御論
理装置が要求するとき、それは最初ベクトルの低
部分を要求し続いてベクトルの高部分を要求しな
ければならない。ベクトルの低部分に続いてベク
トルの高部分を通すための決定は、この例では任
意的である。
In this embodiment, fixed memory (ROM) 22
An 11-bit address is required to access all of the bytes in. However, data bus 28 only has a capacity of 8 bits. Information is passed to internal data bus 28 so that
It is first passed in groups of 8 bits, then
Three other bits are passed. Therefore, when the main control logic requests that the interrupt logic pass an interrupt vector, it must first request the low portion of the vector and then request the high portion of the vector. The decision to pass the high part of the vector following the low part of the vector is arbitrary in this example.

一例を示すため、外部割込みピン46が適切に
活性化されており、主制御論理装置26へ割込み
のための要求が割込み論理装置44によつてなさ
れていると仮定する。この後であつて主制御論理
装置26がその要求を受け入れる前に、2進タイ
マ36がTIME OUTパルスを発生すると仮定す
る。割込み論理装置44は主制御論理装置26へ
その要求を維持するが、この時、2つの要求が未
処理中である。一方の要求は外部割込みピン46
からくるものであり、他方の要求は2進タイマ3
6からくるものである。この例では、2進タイマ
36の入力は、外部割込み入力より優先順位を与
えられている。すなわち、タイマ割込み要求が起
こるならば、タイマベクトルアドレス0020がデー
タバス28へ通されその後アドレスレジスタへ通
され次の命令がROM22に記憶された場所0020
から実行されるようになる。その後主制御論理装
置26が場所0020に置かれた命令を実行した時、
それは未処理の外部割込み要求のベクトルを要求
し、割込み論理装置44はベクトル00A0をデー
タバス28へ通す。
To illustrate an example, assume that external interrupt pin 46 is properly activated and a request is made by interrupt logic 44 to main control logic 26 for an interrupt. Assume that after this, but before main control logic 26 accepts the request, binary timer 36 generates a TIME OUT pulse. Interrupt logic 44 maintains its requests to main control logic 26, with two requests outstanding at this time. One request is made via external interrupt pin 46.
The other request is from binary timer 3.
It comes from 6. In this example, the binary timer 36 inputs are given priority over the external interrupt inputs. That is, if a timer interrupt request occurs, timer vector address 0020 is passed to data bus 28 and then to address register 0020 where the next instruction is stored in ROM 22.
It will be executed from Then, when main control logic 26 executes the instruction placed at location 0020,
It requests a vector of outstanding external interrupt requests, and interrupt logic 44 passes vector 00A0 onto data bus 28.

FREEZE信号の目的は、その時間点で割込み
論理装置に現存する最も高い優先順位を有する割
込みのみを主制御論理装置26が確実に受け入れ
るようにすることである。FREEZE信号は、ベ
クトルの伝送中により高い順位を有する割込み要
求が生じてもそのベクトルを完全に通過させるよ
うにする。すなわち、割込み論理装置44は、そ
のベクトルが通されている間は、外部割込み入力
またはタイマTIME OUT入力にその後どんなこ
とが起きようともそれに関係なくそのベクトルを
完全に通すように命令されている。次のΦCサイ
クルにおいてFREEZE信号の発生後、その割込
み論理装置には、どのベクトルを通すかの決定を
する時間が与えられる。それから、第3番目のΦ
Cサイクルにおいて、主制御論理装置は、割込み
論理装置へのIVL入力を活性化し、従つて、割込
み論理装置は、割込みベクトルのより低い8つの
ビツトをデータバス28へ通す。第4番目のΦC
サイクルにおいて、主制御論理装置26からの
IVH信号が活性化され、その信号に応答して、割
込み論理装置44はその割込みベクトルの上方の
半分をデータバスへ通す。
The purpose of the FREEZE signal is to ensure that main control logic 26 only accepts the interrupt with the highest priority present in the interrupt logic at that time. The FREEZE signal allows the vector to pass through completely even if a higher priority interrupt request occurs during the vector's transmission. That is, interrupt logic 44 is instructed to completely pass the vector while the vector is being passed, regardless of what subsequently happens to the external interrupt input or the timer TIME OUT input. After the FREEZE signal occurs in the next ΦC cycle, the interrupt logic is given time to decide which vector to pass. Then, the third Φ
In the C cycle, the main control logic activates the IVL input to the interrupt logic, so that the interrupt logic passes the lower eight bits of the interrupt vector onto the data bus 28. 4th ΦC
In the cycle, the main control logic 26
The IVH signal is activated, and in response to that signal, interrupt logic 44 passes the upper half of its interrupt vector onto the data bus.

ベクトルによつて通された新しいアドレスに応
答して、FETCH信号が主制御論理装置26から
発生される。2つの他の出力が割込み論理装置4
4によつて発生され、それらは2進タイマ36へ
のSTART2およびタイマ36への補助クロツク
信号AUX CLOCKとして定義されている。これ
らの信号は、適切にバツフアされ2進タイマ36
を可能化し不能化するよう同期化される。
A FETCH signal is generated from main control logic 26 in response to the new address passed by the vector. Two other outputs are interrupt logic 4
They are defined as START2 to binary timer 36 and auxiliary clock signal AUX CLOCK to timer 36. These signals are suitably buffered and run in a binary timer 36.
synchronized to enable and disable.

算術演算および論理装置(ALU) ALU24はプログラム命令を処理するのに必
要とされる算術演算および論理オペレーシヨンを
行なう。ALU24は、シフタセレクタ50およ
び補数演算装置52を含むデータ処理装置の構成
部分である。この装置は、オペランドに対する算
術演算、シフトおよび論理オペレーシヨンを行な
うことができる。ALU24は、基本的には、2
つの主入力すなわちA−バスおよびS−バスを有
する一組の論理素子である。これらのバスは、ア
キユムレータ30がA−バスのための主データ源
でありスクラツチパツド40がS−バスのための
主データ源であるので、そのように名付けられて
いる。参照番号54で示された主8ビツトデータ
出力がある。これは、基本的には、A−バスおよ
びS−バス入力に対して行なわれるオペレーシヨ
ンの論理的結果である結果バスと称される。
Arithmetic and Logic Unit (ALU) ALU 24 performs the arithmetic and logic operations required to process program instructions. ALU 24 is a component of a data processing device that includes shifter selector 50 and complement arithmetic unit 52. This device is capable of performing arithmetic, shifting, and logical operations on operands. ALU24 is basically 2
A set of logic elements having two main inputs, an A-bus and an S-bus. These buses are so named because accumulator 30 is the primary data source for the A-bus and scratchpad 40 is the primary data source for the S-bus. There is a main 8-bit data output designated by reference numeral 54. This is referred to as the result bus, which is basically the logical result of the operations performed on the A-Bus and S-Bus inputs.

ALU24からのバス55における別の出力の
組は、ALUにおいて頂度行なわれたオペレーシ
ヨンの結果の状態を表わしている。状態レジスタ
56は、後の計算機オペレーシヨンに使用するた
めこれらの状態信号を記憶するのに使用される。
状態レジスタ56は、符号、桁上げ、零、あふれ
および割込み制御ビツトの5つの状態フラツグを
保持する。
Another set of outputs on bus 55 from ALU 24 represent the resulting state of the operation most recently performed in the ALU. Status registers 56 are used to store these status signals for use in later computer operations.
Status register 56 holds five status flags: sign, carry, zero, overflow, and interrupt control bits.

ALU24への桁上げ信号CRYは、状態レジス
タ56における桁上げフリツプフロツプの状態を
表わしている。この情報は、ALUオペレーシヨ
ンの結果としての高位ビツトの桁上げのあつたこ
とを示す論理“1”または“0”の形にて表わさ
れ、その情報は、状態レジスタ56へラツチさ
れ、後のオペレーシヨンサイクルにてALUに利
用しうる。また、状態レジスタ56からの状態ビ
ツトの完全なセツトがA−バスを介してALUに
利用できる。ALUからの状態出力の1つは、状
態レジスタへ入力を与えるほか、制御論理装置へ
直接に入る。これはZERO信号である。
The carry signal CRY to ALU 24 represents the state of the carry flip-flop in status register 56. This information is represented in the form of a logic ``1'' or ``0'' indicating that a carry of the high order bit occurred as a result of an ALU operation, and the information is latched into status register 56 and later stored. It can be used for ALU during the operation cycle. Also, a complete set of status bits from status register 56 is available to the ALU via the A-bus. One of the status outputs from the ALU, in addition to providing input to the status register, goes directly to the control logic. This is a ZERO signal.

ALUが種々のデータ入力に対して特定のオペ
レーシヨンを行なわせるようにする主制御論理装
置26からのいくつかの制御入力がある。これら
の制御入力の1つは、A−バス入力およびS−バ
ス入力の2進加算を行なうようにALUに命令す
るADDである。ALU24へのもう1つ別の制御
入力は、A−バスおよびS−バス入力に対して進
オア機能をなすようALUに命令するORと称され
るものである。2つの入力データセツトに対して
オペレーシヨンするための排他的または
(XOR)制御ラインおよびアンド制御ラインがあ
る。また、A−バス入力のみを増分させるように
ALUに命令する増分ラインINCがある。S−バス
を減分させるようにALU24に命令する減分制
御ラインDECがある。従つて、減分ラインDEC
が活性化されるとき、S−バスの情報はその値を
1ビツトだけ減分され、その結果が結果バスに置
かれる。A−バスのデータ内容をS−バスのデー
タ内容に加算しまた桁上げ入力に加算するように
ALUに命令する加算桁上げラインがある。
There are several control inputs from main control logic 26 that cause the ALU to perform specific operations on various data inputs. One of these control inputs is ADD, which commands the ALU to perform a binary addition of the A-Bus and S-Bus inputs. Another control input to ALU 24 is referred to as OR, which commands the ALU to perform a forward-OR function on the A-Bus and S-Bus inputs. There are exclusive or (XOR) and AND control lines for operating on two input data sets. Also, increment only the A-bus input.
There is an incremental line INC that commands the ALU. There is a decrement control line DEC that commands the ALU 24 to decrement the S-bus. Therefore, the decrement line DEC
When activated, the information on the S-bus has its value decremented by one bit and the result placed on the result bus. Add the data content of the A-bus to the data content of the S-bus and add it to the carry input.
There is an add carry line that commands the ALU.

他の制御信号は、2進コード化10進算術演算を
行なうのに使用されるBCD調整信号
(BCDADJ)である。ALU24は、基本的には、
2進加算を行なうが、その2進加算の結果は、そ
の内容が2つの10進桁を表わすように調整されう
る。例えば、16進数の99が16進数の22へ加算さ
れ、通常の2進加算が行なわれたならば、その結
果はデータバスの特定のコードを表わすBBであ
ろう。しかし、表示Bは許容しうるデータ10進桁
ではない。それは2進ストリームのための許容し
うる2進または16進表示にすぎない。従つて、そ
の所望の結果はBBではなくて、残部からの高位
桁上げを伴つた21であろう。それ故に、ALU2
4は2進加算を行なうが、その結果は、2進加算
の完了後に調整され、その量が2進フオーマツト
から10進桁フオーマツトへ戻されるようにされ
る。
Another control signal is the BCD adjustment signal (BCDADJ), which is used to perform binary coded decimal arithmetic operations. ALU24 is basically:
A binary addition is performed, and the result of the binary addition can be adjusted so that its contents represent two decimal digits. For example, if hex 99 were added to hex 22 and a normal binary addition was performed, the result would be BB, representing the particular code of the data bus. However, display B is not an acceptable data decimal digit. It is only an acceptable binary or hexadecimal representation for a binary stream. Therefore, the desired result would not be BB, but 21 with a high carry from the remainder. Therefore, ALU2
4 performs a binary addition, but the result is adjusted after the binary addition is complete so that the amount is transferred from binary format back to decimal digit format.

補数演算装置 ALU24へのA−バス入力には、補数演算装
置52が関連付けられている。この補数演算装置
52は、A−バスのビツトをALUへ通す前に反
転する。この補数演算装置52は、COMP信号入
力によつて活性化される。もしCOMP信号が論理
“0”であるならば、データは変更されずに補数
演算装置52を通過する。
Complement Arithmetic Unit Associated with the A-bus input to ALU 24 is complement arithmetic unit 52 . The complement unit 52 inverts the bits on the A-bus before passing them to the ALU. This complement arithmetic unit 52 is activated by the COMP signal input. If the COMP signal is a logic "0", the data passes through complement unit 52 unchanged.

セレクタ/シフタ ALU24へのA−バス入力には、セレクタ/
シフタ50の組合せが関連付けられている。セレ
クタ/シフタ50は、6つの異なつた機能を演じ
うる。1つのデータ入力はアキユムレータ30か
らきて、第2のデータ入力は状態レジスタ56か
らくる。セレクタ50は、アキユムレータからの
内容を変更せずにALUへ転送しうる。同様に、
セクタタ50は、状態レジスタ56の内容を変更
せずにALUへ転送しうる。これは、それぞれ
ACC−ALU信号およびSTAT−ALU信号に応答
して行なわれる。また、セクタタ50は、シフト
入力に応答してアキユムレータ入力に対して他の
機能をも演ずることができる。すなわち、セレク
タ50は、A−バスに存在するデータを取り出し
て、主制御論理装置26からのシフト右またはシ
フト左命令に応答してそれを1ビツト以上右また
は左へシフトされる。
Selector/Shifter The A-bus input to ALU24 requires a selector/shifter.
A combination of shifters 50 is associated. Selector/shifter 50 can perform six different functions. One data input comes from accumulator 30 and a second data input comes from status register 56. Selector 50 may forward the contents from the accumulator to the ALU without modification. Similarly,
Sector 50 may transfer the contents of status register 56 unchanged to the ALU. This is each
This is done in response to the ACC-ALU and STAT-ALU signals. Sector 50 may also perform other functions on the accumulator input in response to the shift input. That is, selector 50 takes data present on the A-bus and shifts it one or more bits to the right or left in response to a shift right or shift left command from main control logic 26.

アキユムレータ アキユムレータ30は単に8ビツトラツチであ
る。アキユムレータ30は、ALUの結果バス5
4からの入力およびセレクタシフタ50へ結合さ
れる出力を有している。制御信号LD ACCの活
性化時に、結果バスに存在する情報はアキユムレ
ータへラツチされΦC制御クロツクで同期され
る。
Accumulator Accumulator 30 is simply an 8-bit latch. The accumulator 30 is connected to the ALU result bus 5.
4 and an output coupled to selector shifter 50. Upon activation of the control signal LD_ACC, the information present on the result bus is latched into the accumulator and synchronized with the ΦC control clock.

状態レジスタ 状態レジスタ56はALU24からの4つの入
力を有している。これらの入力はALUオペレー
シヨンの結果の現状態を表わしている。セツト状
態入力信号SET STATUSからの命令時に、状態
レジスタは、ALUを状態レジスタ56へ結合す
る新しい状態バス55に存在する情報を受け取つ
てその情報を状態レジスタビツトへラツチする。
5番目の状態レジスタビツトは、主制御論理装置
のための割込み制御ビツトを表わしている。これ
は、外部可能化又はタイマ可能化ビツトが割込み
論理ビツト44に割込み要求を主制御論理装置へ
通すように許可したとしても、割込み論理装置か
らの割込み要求を許可しないように主制御論理装
置26に命令するのに使用されるビツトである。
もし状態レジスタ56に維持されている割込み制
御ドツトが0であるならば、主制御論理装置26
はその割込み要求を無視して、現在処理している
命令シーケンスの処理を続ける。しかし、状態レ
ジスタにおける割込み制御ビツトが論理“1”で
あるならば、主制御論理装置26は、現在関与し
ている命令の実行を終えるとすぐにその割込み要
求を許可するかしないかの決定をなすように命令
される。
Status Register Status register 56 has four inputs from ALU 24. These inputs represent the current state of the results of ALU operations. Upon command from the SET STATUS input signal, the status register receives information present on the new status bus 55 coupling the ALU to the status register 56 and latches that information into the status register bits.
The fifth status register bit represents an interrupt control bit for the main control logic. This prevents the main control logic 26 from allowing interrupt requests from the interrupt logic, even if the external enable or timer enable bits have enabled the interrupt logic bit 44 to pass the interrupt request to the main control logic. This bit is used to command the
If the interrupt control dot maintained in status register 56 is zero, main control logic 26
ignores the interrupt request and continues processing the instruction sequence it is currently processing. However, if the interrupt control bit in the status register is a logic ``1'', main control logic 26 will make the decision to grant or disallow the interrupt request as soon as it has finished executing the currently participating instruction. commanded to do.

状態レジスタ56の割込み制御ビツトICBは、
CLEAR ICB信号およびSET ICB信号を用いて
主制御論理装置26によつて制御される。
CLEAR ICB信号が活性化されΦCクロツク入力
で同期されるとき、割込み制御ビツトが論理
“0”状態へ駆動される。SET ICB信号が活性化
されてΦCクロツクで同期されるとき、ICBビツ
トは論理“1”へ設定される。状態レジスタ56
のICBビツトは、また、結果バス54の内容が状
態レジスタ56のすべての5ビツトをロードする
ようにさせるLOAD STAT信号によつて変更さ
れうる。
Interrupt control bit ICB of status register 56 is
Controlled by main control logic 26 using the CLEAR ICB and SET ICB signals.
When the CLEAR ICB signal is activated and synchronized with the ΦC clock input, the interrupt control bit is driven to a logic ``0'' state. When the SET ICB signal is activated and synchronized with the ΦC clock, the ICB bit is set to a logic "1". status register 56
The ICB bits of can also be changed by the LOAD STAT signal which causes the contents of result bus 54 to load all five bits of status register 56.

スクラツチパツドレジスタ スクラツチパツドレジスタ40は、汎用RAM
メモリとして使用される例えば64個の多数の8ビ
ツトレジスタを与える。このレジスタのセツト
は、プログラムの実行中可変データを記憶するの
に使用される。スクラツチパツドレジスタ40
は、RESULT−SPAD制御入力による命令時に結
果バス54、すなわちALU24の結果からロー
ドされうる。この信号が活性化されΦCクロツク
で同期されるとき、この時点で結果バス54に存
在するデータは適当にアドレスされたレジスタへ
ロードされる。
Scratchpad Register The scratchpad register 40 is a general-purpose RAM.
A large number of 8-bit registers, for example 64, are provided to be used as memory. This set of registers is used to store variable data during program execution. Scratchpad register 40
may be loaded from the result bus 54, ie, the result of the ALU 24, when commanded by the RESULT-SPAD control input. When this signal is activated and synchronized with the ΦC clock, the data currently present on result bus 54 is loaded into the appropriately addressed register.

スクラツチパツドレジスタアレイ40は、
ALU24へのS−バス入力へ駆動する単一の8
ビツト出力を有する。ΦEクロツクで同期された
SPAD−S−バス信号による命令時に、スクラツ
チパツド40は、スクラツチパツドのアドレスレ
ジスタからのデータをALU24のS−バスへ転
送する。従つて、データはΦEクロツクで同期さ
れるスクラツチパツド40から読み出されΦCク
ロツクで同期されるスクラツチパツドへ書き込ま
れる。
The scratchpad register array 40 is
Single 8 driving to S-Bus input to ALU24
Has bit output. Synchronized with ΦE clock
When commanded by the SPAD-S-Bus signal, the scratchpad 40 transfers data from the scratchpad address register to the S-Bus of the ALU 24. Thus, data is read from the scratchpad 40, which is synchronized with the ΦE clock, and written to the scratchpad, which is synchronized with the ΦC clock.

スクラツチパツド40への別の入力は、6ビツ
トレジスタアドレスである。これは各レジスタ0
−64がアドレスされるようにするSPADRバス
からくる。
Another input to scratchpad 40 is a 6-bit register address. This is each register 0
-64 comes from the SPADR bus to be addressed.

S−バスはALU24への第2の基本的入力で
ある。1つの情報入力は主制御論理装置26から
の信号SPAD−Sに応答してスクラツチパツド4
0からくる。S−バスのための第2の情報源は、
命令レジスタ42の下方の4ビツトであり、信号
IR−Sに応答して命令レジスタ42の最下位の
4ビツトがS−バスの最下位の4ビツトへ転送さ
れ、S−バスの上方の4ビツトは0を含んでい
る。
The S-Bus is the second basic input to ALU 24. One information input is provided to the scratch pad 4 in response to a signal SPAD-S from the main control logic 26.
It comes from 0. The second source of information for the S-bus is
These are the lower 4 bits of the instruction register 42, and the signal
In response to IR-S, the four least significant bits of instruction register 42 are transferred to the four least significant bits of the S-bus, the upper four bits of the S-bus containing zeros.

S−バスへの別の可能性のある入力はISARま
たは間接スクラツチパツドアドレスレジスタ58
からくるものである。活性ISAR−DATA BUS
信号に応答して、ISARはISARの6ビツトをS−
バスの下方の6ビツトへ転送し、その上方の2ビ
ツトは0である。ISARは2つの8進数字を保持
するようにして表示されうる。ISARのこのよう
な分割は、ISARを用いてスクラツチパツドバイ
トを参照させるときに多数の命令がISARの最下
位の3ビツトのみを増分または減分するので、重
要なことである。これにより、連続するスクラツ
チパツドバイトからなるバツフアを参照すること
が容易とされる。
Another possible input to the S-bus is the ISAR or indirect scratchpad address register 58.
It comes from Active ISAR-DATA BUS
In response to the signal, ISAR sets the 6 bits of ISAR to S-
It is transferred to the lower 6 bits of the bus, and the upper 2 bits are 0. ISAR can be displayed as holding two octal digits. This division of the ISAR is important because when using the ISAR to reference a scratchpad byte, many instructions increment or decrement only the three least significant bits of the ISAR. This makes it easy to refer to a buffer of consecutive scratchpad bytes.

S−バスの別の情報源としては、主データバス
28からくるものがありうる。制御信号DATA
BUS−Sに応答して、データバス28の8ビツ
トは8ビツトS−バスへ転送される。
Another source of information on the S-bus may come from main data bus 28. Control signal DATA
In response to BUS-S, the eight bits of data bus 28 are transferred to the eight-bit S-bus.

上述のありうる要素のどれもS−バスへ駆動さ
れない場合には、S−バスの内容は0である。こ
の状態の重要性を理解するために、その情報を変
更せずにアキユムレータ30の内容を主データバ
スへ転送することが望まれる場合を考えるとよ
い。この処理を実施するためにシフタ50への
ACC−ALU入力が活性化される。これにより、
アキユムレータ30からの情報がシフタ50を通
してその出力を変更せずに補数演算装置52へ転
送される。補数演算装置50への相補制御は不活
性であるので、その情報は変更されずに補数演算
装置を直接通過し、A−バスの内容は実質的にア
キユムレータ30の内容である。何故ならば、シ
フテイングまたは補数演算は全く行なわれていな
いからである。ALU24へのADD信号は活性で
ある。これにより、結果バスがA−バス入力およ
びS−バス入力の内容の2進和を含むようにされ
る。しかし、もしS−バスを駆動するための駆動
要素がなにも選択されていないならば、S−バス
の内容は零である。A−バスの内容へ零を加算す
ると、A−バスの内容に等しい結果が生ぜられ
る。従つて、ACCからきたA−バスの情報は実
際に変更されずにALUを通つて結果バス54へ
いく。結果バスから、そのデータはデータバス2
8へ転送されうる。
If none of the above possible elements is driven to the S-Bus, the contents of the S-Bus is zero. To understand the significance of this condition, consider the case where it is desired to transfer the contents of accumulator 30 to the main data bus without changing that information. to the shifter 50 to carry out this process.
ACC-ALU input is activated. This results in
Information from accumulator 30 is transferred through shifter 50 to complement arithmetic unit 52 without changing its output. Since the complement control to the complement unit 50 is inactive, the information passes directly through the complement unit unchanged and the contents of the A-bus are essentially the contents of the accumulator 30. This is because no shifting or complement operations are performed. The ADD signal to ALU 24 is active. This causes the result bus to contain the binary sum of the contents of the A-Bus input and the S-Bus input. However, if no driving element is selected to drive the S-Bus, the contents of the S-Bus are zero. Adding zero to the contents of the A-bus produces a result equal to the contents of the A-bus. Therefore, the information on the A-bus coming from the ACC passes through the ALU to the results bus 54 without actually being modified. From the result bus, the data is transferred to data bus 2
8.

スクラツチパツドアドレスバス スクラツチパツドレジスタアレイ40のための
アドレス源は、スクラツチパツドアドレスバス6
0である。スクラツチパツドアドレスバス60
は、64のスクラツチパツドレジスタのすべてが
アクセスされるようにする6ビツトバスである。
ISARの6ビツトは、制御信号ISAR−SPADRに
応答してスクラツチパツドアドレスバスへ駆動さ
れうる。スクラツチパツドアドレスバス60のた
めの別の情報源は、命令レジスタ42の最下位の
4ビツトである。信号IR−SPADRに応答して、
命令レジスタの最下位の4ビツトは、SPADRバ
スの最下位の4ビツトへ転送され、SPADRの上
方の2ビツトは0である。最後にありうる情報源
は、主制御論理装置26によつて発生される4ビ
ツトレジスタアドレスバス61である。スクラツ
チパツドアドレスバスへのレジスタアドレスに相
当する制御信号REG ADDR−SPADRに応答し
て、4ビツトレジスタアドレスが主制御論理装置
26によつて直接的に発生され、バス61を通し
てスクラツチパツドアドレスバス60へ転送され
る。これにより、主制御論理装置60は、ある特
定の命令に応答してスクラツチパツドレジスタア
レイの16の最下方レジスタを直接的にアクセスし
うるようにされる。
Scratchpad Address Bus The source of addresses for the scratchpad register array 40 is the scratchpad address bus 6.
It is 0. Scratch pad address bus 60
is a 6-bit bus that allows all 64 scratch pad registers to be accessed.
The six bits of ISAR can be driven to the scratchpad address bus in response to control signal ISAR-SPADR. Another source of information for the scratchpad address bus 60 is the four least significant bits of the instruction register 42. In response to the signal IR−SPADR,
The lowest four bits of the instruction register are transferred to the lowest four bits of the SPADR bus, and the upper two bits of SPADR are zeros. A final possible source of information is the 4-bit register address bus 61 generated by the main control logic 26. A 4-bit register address is generated directly by main control logic 26 in response to control signal REG ADDR-SPADR, which corresponds to a register address to the scratchpad address bus. It is transferred to the address bus 60. This allows main control logic 60 to directly access the 16 lowest registers of the scratchpad register array in response to certain instructions.

ISAR論理装置 ISAR論理装置58は間接スクラツチパツドア
ドレスレジスタである。この実施例では、それ
は、スクラツチパツドアレイ40におけるスクラ
ツチパツドレジスタのアドレスを供給するのに使
用されうる6ビツトレジスタである。ISARへの
入力は、ALUオペレーシヨンの結果である結果
バス54からくる。そして、主制御論理装置26
からのいくつかの制御入力がある。主制御論理装
置からのLOAD UPPER1信号に応答して、結果
バス54からの第4、第5および第6番目の最上
位のビツトがISAR58の上方の3ビツトへ装入
される。主制御論理装置からのLOAD UPPER2
信号に応答して、結果バスの下方の3ビツトが
ISARの上方3ビツトへ装入される。主制御論理
装置からのLOAD LOWER3信号に応答して、結
果バスの下方の3ビツトがISARの下方の3ビツ
トへ装入される。
ISAR Logic Unit ISAR logic unit 58 is an indirect scratchpad address register. In this embodiment, it is a 6-bit register that can be used to supply the address of a scratchpad register in scratchpad array 40. Input to ISAR comes from result bus 54, which is the result of ALU operations. and the main control logic unit 26
There are some control inputs from In response to the LOAD UPPER1 signal from the main control logic, the fourth, fifth and sixth most significant bits from result bus 54 are loaded into the upper three bits of ISAR 58. LOAD UPPER2 from main control logic
In response to the signal, the lower three bits of the result bus
Charged to the upper 3 bits of ISAR. In response to the LOAD LOWER3 signal from the main control logic, the lower three bits of the result bus are loaded into the lower three bits of ISAR.

それ故に、ISARは3つの異なつた方法により
装入されうる。ISARの6ビツトのすべては、結
果バス54から下方の3ビツトをISARの下方の
3ビツトへ転送し且つ結果バスの第4、第5およ
び第6番目の最上位のビツトをISARの3つの上
方ビツトへ転送することによつて、一度で装入さ
れうる。このオペレーシヨンを行なうため、
LOAD LOWER3信号およびLOAD UPPER1信
号の両方が同時に活性化される。また、ISARの
どちらかの半分が装入されうる。ISARの上方の
3ビツトは、そのままに維持される一方下方の3
ビツトには新しい情報が装入されうる。この場合
に、情報は結果バスへ伝えられ、LOAD
LOWER3信号に応答して、ISARの下方の3ビツ
トのみが結果バス54の下方の3ビツトから装入
される。もしISARの下方の3ビツトを不変の
まゝとしてISARの上方の3ビツトを変更するこ
とが望まれるならば、これはISARの上方の3ビ
ツトのための新しい情報を結果バス54へ装入し
LOAD UPPER2信号のみを活性化することによ
つて行なわれうる。
Therefore, ISAR can be loaded in three different ways. All six bits of the ISAR transfer the lower three bits from the result bus 54 to the lower three bits of the ISAR and transfer the fourth, fifth, and sixth most significant bits of the result bus to the upper three bits of the ISAR. It can be loaded in one go by transferring it to the bit. To perform this operation,
Both the LOAD LOWER3 and LOAD UPPER1 signals are activated at the same time. Also, either half of the ISAR can be charged. The upper 3 bits of ISAR remain unchanged while the lower 3 bits
Bits can be loaded with new information. In this case, the information is passed to the results bus and LOAD
In response to the LOWER3 signal, only the lower three bits of ISAR are loaded from the lower three bits of result bus 54. If it is desired to change the upper 3 bits of the ISAR while leaving the lower 3 bits of the ISAR unchanged, this loads new information into the results bus 54 for the upper 3 bits of the ISAR.
This can be done by activating only the LOAD UPPER2 signal.

結果バス54からISAR58への情報の転送
は、ΦCクロツクで同期される。その上、ISAR
の下方の3ビツトの内容は増分されるか減分され
るか変更されないままとされうる。それ故に、増
分信号INCに応答して、ISARの下方の3ビツト
の内容はISAR出力へ供給され、次のマシンサイ
クルの開始時でΦCクロツクで同期されるとき、
ISARの下方の3ビツトの新しい内容は前のサイ
クルの時より1だけ大きい。減分信号DECに応
答して、現存するISARの内容はサイクルの終り
でその出力バスへ駆動され、ISARへロードバツ
クされる情報は、下方の3ビツトが減分されてい
る以外、同じである。これにより、スクラツチパ
ツド40の8ビツトセクシヨンはISARを再ロー
ドせずに容易にアクセスされうる。
The transfer of information from results bus 54 to ISAR 58 is synchronized by the ΦC clock. Moreover, ISAR
The contents of the lower three bits of can be incremented, decremented, or left unchanged. Therefore, in response to the increment signal INC, the contents of the lower three bits of ISAR are provided to the ISAR output, when synchronized with the ΦC clock at the beginning of the next machine cycle.
The new contents of the lower 3 bits of ISAR are 1 greater than in the previous cycle. In response to the decrement signal DEC, the contents of the existing ISAR are driven onto its output bus at the end of the cycle, and the information loaded back to the ISAR is the same except that the lower three bits are decremented. This allows the 8-bit section of scratchpad 40 to be easily accessed without reloading the ISAR.

命令レジスタ 命令レジスタ42は、データバス28を介して
プログラムROM22から実行されるべき命令を
受ける。すべてのオペレーシヨンコード取出し中
には、8ビツトが命令レジスタ42へラツチされ
る。いくつかの命令はOPコードの上方の4ビツ
トにより完全に特定される。これらの命令におい
ては、下方の4ビツトは、即値レジスタアドレス
または即値4ビツトオペランドである。命令レジ
スタ42へラツチされるとき、主制御論理装置2
6は、その命令をデコードし必要な制御ゲーテイ
ング信号をすべての回路要素へ与える。命令レジ
スタ42は、主データバス28から情報を取り去
り、ΦCクロツクで同期され制御信号FETCHに
応答して、命令レジスタ42はその入力からの情
報をその内部ラツチへラツチしその情報をその出
力へ与える。命令レジスタの出力は主制御論理装
置26へ導かれるラツチの8ビツトである。更
に、4つの最下位のビツトもS−バスおよびスク
ラツチパツドアドレスバスへ適当なゲート回路を
通して伝えられる。最下位のビツトIROは、前述
したようなポート選択論理装置20のため命令レ
ジスタ42によつて与えられる出力の1つであ
る。
Instruction Register Instruction register 42 receives instructions to be executed from program ROM 22 via data bus 28. Eight bits are latched into instruction register 42 during all operation code fetches. Some instructions are completely specified by the upper four bits of the OP code. In these instructions, the lower four bits are an immediate register address or an immediate four-bit operand. When latched into instruction register 42, main control logic 2
6 decodes the instruction and provides necessary control gating signals to all circuit elements. Command register 42 removes information from main data bus 28, and in response to a control signal FETCH synchronized by the ΦC clock, command register 42 latches information from its inputs into its internal latches and provides the information to its outputs. . The output of the instruction register is 8 bits of a latch that is routed to main control logic 26. Additionally, the four least significant bits are also conveyed to the S-bus and the scratchpad address bus through appropriate gating circuits. The least significant bit, IRO, is one of the outputs provided by instruction register 42 for port selection logic 20 as described above.

ROMアドレスレジスタ ROMアドレスレジスタアレイ48には4つの
レジスタが関連付けられている。プログラムカウ
ンタ(PC)、スタツクレジスタ(P)、データカ
ウンタ(DC)および補助データカウンタ
(DC1)がある。プログラムカウンタは、命令ま
たは即値オペランドをアドレスするのに使用され
る。スタツクレジスタは、割込みまたはサブルー
チン呼出し中プログラムカウンタの内容を貯えて
おくのに使用される。データカウンタはデータテ
ーブルをアドレスするのに使用される。READ/
WRITE入力に加えてこれらのレジスタの各々に
対する主制御論理装置26からの制御入力があ
る。レジスタ入力は、アドレスレジスタアレイ4
8内の適当なレジスタをアクセスするのに使用さ
れ、一方、READ/WRITE入力は、そのレジス
タがアドレスレジスタ出力ラインへ可能化される
かまたはアドレスレジスタラインの情報がそのレ
ジスタへ書き込まれるかを指示するのに使用され
る。それ故に、アドレスレジスタアレイからのラ
インは、二方向性でありREAD/WRITE信号の
状態に依存して、それらラインの情報がアドレス
レジスタから供給されるか、適切にアドレスされ
たレジスタへ書き込まれるかを決定する。
ROM Address Registers Associated with ROM address register array 48 are four registers. There is a program counter (PC), a stack register (P), a data counter (DC) and an auxiliary data counter (DC1). The program counter is used to address instructions or immediate operands. The stack register is used to store the contents of the program counter during interrupt or subroutine calls. Data counters are used to address data tables. READ/
In addition to the WRITE input there is a control input from main control logic 26 for each of these registers. Register input is address register array 4
8, while the READ/WRITE input indicates whether that register is enabled to the address register output line or the information on the address register line is written to that register. used to. Lines from the address register array are therefore bidirectional and depending on the state of the READ/WRITE signal, information on those lines is either sourced from the address register or written to the appropriately addressed register. Determine.

アドレスされる適切なレジスタおよび活性化さ
れるREADラインに応答して、レジスタ内容はア
ドレスレジスタ出力バス62へ駆動される。これ
は二方向性バスであり、もしREAD/WRITEラ
インが読出し状態にあるならば、その情報はバス
62へ駆動される。その時点で、それはラチ64
および加算器/増分器66へ転送される。ΦEク
ロツクが活性である間、アドレスラツチ64の入
力ビツトに存在する情報はその出力ビツトへラツ
チを通して転送される。ΦEクロツクが不活性で
ある時、ラツチ64への入力の情報は変化しうる
が、ラツチの出力は同じままである。それ故に、
適当なレジスタがアドレスされているサイクルの
早い時期においては、READラインが読出し状態
に置かれ、情報はレジスタ48からROMアドレ
スバス68へ駆動される。ΦEクロツクが不活性
となるとき、アドレスレジスタバス62の情報は
変化しうるが、ROMアドレスバスの情報は変化
しない。何故ならば、それはアドレスラツチ64
によつて安定に保持されるからである。
In response to the appropriate register being addressed and the READ line being activated, register contents are driven onto the address register output bus 62. This is a bidirectional bus; if the READ/WRITE line is in the read state, the information is driven onto bus 62. At that point, it's lachi 64
and is transferred to adder/incrementer 66. While the ΦE clock is active, the information present on the input bits of address latch 64 is transferred through the latch to its output bits. When the ΦE clock is inactive, the information at the input to latch 64 may change, but the output of the latch remains the same. Therefore,
Early in the cycle when the appropriate register is being addressed, the READ line is placed in a read state and information is driven from register 48 to ROM address bus 68. When the ΦE clock is inactive, the information on the address register bus 62 may change, but the information on the ROM address bus does not. This is because address latch 64
This is because it is stably held by .

加算器/増分器 ROMアドレスレジスタアレイ48には加算
器/増分器66が関連付けられている。この論理
素子は必要に応じてレジスタPOまたはレジスタ
DCを増巾し、また、関連ブランチのレジスタPO
へ変位を加えるのにも使用され、または、加算デ
ータカウンタ(ADC)命令においてレジスタDC
へデータバス内容を加えるのにも使用される。
Adder/Incrementer Associated with ROM address register array 48 is adder/incrementer 66 . This logic element can be placed in register PO or register as required.
Increase DC and also register PO of related branch
It is also used to add a displacement to register DC, or in an add data counter (ADC) instruction.
It is also used to add data bus contents to the data bus.

加算器/増分器論理ブロツク66は、主制御論
理装置26によつて制御されるようにアドレスレ
ジスタ48に適切なアドレスを維持するという基
本的な機能を果す。一組の命令を実行している
間、命令分岐または飛越しに出会れない限り、プ
ログラムカウンタは、その実行している特定の組
の命令を逐次実行していく。このようなオペレー
シヨンモードでは、加算器/増分器66およびア
ドレスラツチ64は、ΦEクロツクが活性である
そのサイクルの早い時期においてアドレスレジス
タアレイ48からのアドレスを受け、主制御論理
装置26からの増分命令に応答してアドレスバス
68のアドレスに1を加える。ΦCクロツクが活
性となるとき、それは増分された情報をROMア
ドレスバスへ戻し駆動し、もし主制御論理装置が
ROMアドレスレジスタフアイルにてREAD/
WRITEラインをREAD状態からWRITE状態へ切
り換えていたならば、その増分された情報はアド
レスレジスタ48のプログラムカウンタへロード
バツクされる。
Adder/incrementer logic block 66 performs the basic function of maintaining the proper addresses in address register 48 as controlled by main control logic 26. While executing a set of instructions, unless an instruction branch or jump is encountered, the program counter sequentially executes the particular set of instructions it is executing. In such a mode of operation, adder/incrementer 66 and address latch 64 receive an address from address register array 48 early in the cycle when the ΦE clock is active, and receive an increment from master control logic 26. Adds 1 to the address on address bus 68 in response to the command. When the ΦC clock goes active, it drives the incremented information back onto the ROM address bus and if the main control logic
READ/in ROM address register file
If the WRITE line has been switched from the READ state to the WRITE state, the incremented information is loaded back into the program counter of address register 48.

ROMアドレスレジスタアレイ48における情
報をスクラツチパツド40のある場所へ転送した
いいくつかの場合がある。例えば、割込みが実行
される時、プログラムカウンタの現在の内容はス
タツクレジスタPに記憶または置かれ、プログラ
ムカウンタには、割込み論理装置によつて供給さ
れるベクトルアドレスが袋入される。実行される
次の命令はそのベクトルアドレスで始まる。第1
の割込みルーチが実行されている間に、第2の割
込みが生じた場合には、プログラムカウンタの内
容はスタツクレジスタPに貯えられ、その新しい
命令シーケンス場所がレジスタPCOへ装入され
る。しかし、レジスタPに前にあつた情報は、す
べての割込みが行なわれる時にその実行の戻つて
いくべきアドレスであつたのである。この場合
に、もし第2の割込みが生ずるとき、レジスタP
の情報(プログラムカウンタの元の内容)は失わ
れるであろう。従つて、ある特定の条件下では、
特定のプログラム事象により別の番号が容易に再
装入させられないような保護ストレージにレジス
タPの内容を貯えておくことが望ましい。それ故
に、アドレスレジスタの内容をスクラツチパツド
レジスタアレイ40へ転送するためのデータ路を
設けておくのが望ましい。
There are several instances in which it may be desirable to transfer information in ROM address register array 48 to a location on scratchpad 40. For example, when an interrupt is executed, the current contents of the program counter are stored or placed in stack register P, and the program counter is populated with the vector address provided by the interrupt logic. The next instruction to be executed begins at that vector address. 1st
If a second interrupt occurs while the second interrupt routine is being executed, the contents of the program counter are stored in stack register P and the new instruction sequence location is loaded into register PCO. However, the information previously in register P was the address to which execution should return when all interrupts are taken. In this case, if the second interrupt occurs, register P
information (original contents of the program counter) will be lost. Therefore, under certain conditions,
It is desirable to store the contents of register P in protected storage where certain program events cannot easily cause another number to be reloaded. Therefore, it is desirable to provide a data path for transferring the contents of the address registers to the scratchpad register array 40.

アドレスレジスタの内容をスクラツチパツドレ
ジスタ40へ転送するために、主制御論理装置2
6は、アドレスレジスタフアイルにおいて適切な
レジスタを選択し、それが読み出されるように選
定する。それ故に、選択されたレジスタの内容
は、ROMアドレスバス68にて加算器/増巾器
66へ駆動される。アドレスレジスタのデータ容
量が内部データバスのデータ容量より大きい時、
アドレスレジスタの内容を転送するのに1マシン
サイクル以上必要とされる。この例では、アドレ
スレジスタは11ビツト容量を有し、データバスは
8ビツト容量を有している。従つて、1サイクル
中、主制御論理装置26は、スタツクレジスタP
を可能化してROMアドレスバス68を駆動しう
るようにしうる。活性化されるとき制御信号
ADL−DATA BUSは、加算器/増巾器66の下
方の8ビツトの主データバス28への転送を可能
化する。その情報は主データバス28を通して伝
送され、主制御論理装置26は適当なゲートを開
き、その情報を主データバスからALU24を通
してS−バスへそして最終的にスクラツチパツド
レジスタアレイ40へ転送する。それから、次の
マシンサイクルにおいて、主制御論理装置は、再
びスタツクレジスタPをアドレスしREADライン
を活性化して、レジスタPがROMアドレスバス
68および加算器/増分器へ駆動されるようにす
る。加算器/増分器制御ラインADU−DBが活性
化され、加算器/増分器が11ビツトアドレスの上
方の3ビツトをデータバス28の下方の3ビツト
へ転送するようにする。この回路を通しての他の
ゲーテイング信号は、その情報がデータバス28
を通して最終的にスクラツチパツド40へ進みう
るように適切に配列されている。
To transfer the contents of the address register to the scratchpad register 40, the main control logic 2
6 selects the appropriate register in the address register file and selects it to be read. Therefore, the contents of the selected register are driven on ROM address bus 68 to adder/amplifier 66. When the data capacity of the address register is larger than the data capacity of the internal data bus,
More than one machine cycle is required to transfer the contents of the address register. In this example, the address register has an 11-bit capacity and the data bus has an 8-bit capacity. Therefore, during one cycle, main control logic 26 stores stack register P.
may be enabled to drive the ROM address bus 68. Control signal when activated
The ADL-DATA BUS enables transfer to the 8-bit main data bus 28 below the adder/amplifier 66. The information is transmitted through the main data bus 28 and the main control logic 26 opens the appropriate gates to transfer the information from the main data bus through the ALU 24 to the S-bus and finally to the scratch pad register array 40. . Then, on the next machine cycle, the main control logic again addresses stack register P and asserts the READ line, causing register P to be driven to the ROM address bus 68 and the adder/incrementer. Adder/incrementer control line ADU-DB is activated, causing the adder/incrementer to transfer the upper three bits of the 11-bit address to the lower three bits of data bus 28. Other gating signals through this circuit are such that their information is on the data bus 28.
through and finally to the scratch pad 40.

ある場合には、スクラツチパツドレジスタアレ
イ40からまたはプログラムROM22の如きい
くつかの他の源からアドレスレジスタを装入する
のが望ましい。これらのオペレーシヨンを実施す
るため、情報は主データバス28から伝送され
る。主データバスから情報をROMアドレスレジ
スタアレイ48へ転送するために、それはまず加
算器/増分器を通らねばならない。もし制御信号
XFR LOWERが活性化されるならば、これによ
り、データバスの8ビツトが加算器/増分器66
を通してROMアドレスバスの下方の8ビツトへ
転送させられる。アドレスレジスタ48の適切な
レジスタがアドレスされ、正しい制御ラインが活
性化された後、その情報はその適切なアドレスレ
ジスタへ書き込まれる。
In some cases, it may be desirable to populate the address registers from scratchpad register array 40 or from some other source, such as program ROM 22. To perform these operations, information is transmitted from the main data bus 28. To transfer information from the main data bus to ROM address register array 48, it must first pass through an adder/incrementer. If control signal
If XFR LOWER is activated, this causes 8 bits of the data bus to be routed to adder/incrementer 66.
is transferred to the lower 8 bits of the ROM address bus. After the appropriate register of address register 48 is addressed and the correct control line is activated, the information is written to the appropriate address register.

データバス28からの情報をアドレスレジスタ
の上方の3ビツトへ転送するために、加算器/増
分器制御信号XFR UPPERが活性化され、これ
により、データバスの下方の3つのビツトが
ROMアドレスバス68の上方の3ビツトへ転送
させられ、適当なアドレスレジスタへ書き込まれ
うるようにされる。
To transfer information from data bus 28 to the upper three bits of the address register, adder/incrementer control signal XFR UPPER is activated, which causes the lower three bits of the data bus to
It is transferred to the upper three bits of ROM address bus 68 so that it can be written to the appropriate address register.

主制御論理装置26は、順方向または逆方向に
てシーケンスまたは飛越しで次の命令を命令実行
するかを決定する。プログラム分岐のためプログ
ラムカウンタを順方向または逆方向にスキツプさ
せるためには、新しい内容をそうしない場合より
も大きくするか小さくするようにプログラムカウ
ンタへ正または負変位を加えることが必要であ
る。プログラムカウンタへ加えられるべき変位
は、データバス28に含まれている。主制御論理
装置26は、データバス28の内容を加算器/増
分器66へ転送するようにその加算器/増分器に
命令する。主制御論理装置は、また、信号
ADDRESS−ADDERを用いて、加算器/増分器
66に、ROMアドレスバス68の内容を加算
器/増分器の他の入力へ転送するように命令す
る。この時、それはそれら2つの入力を加算し、
ΦCクロツクの活性化時に、その加算の結果を
ROMアドレスバスへ駆動し、そこでその結果は
ROMアドレスレジスタアレイ48のプログラム
カウンタへ書き込まれうる。
Main control logic 26 determines whether to execute the next instruction in sequence or in a jump in the forward or reverse direction. In order to cause the program counter to skip forward or backward for a program branch, it is necessary to apply a positive or negative displacement to the program counter so that the new content is larger or smaller than it would otherwise be. The displacements to be applied to the program counter are contained on data bus 28. Main control logic 26 instructs adder/incrementer 66 to transfer the contents of data bus 28 to adder/incrementer 66 . The main control logic also
ADDRESS-ADDER is used to command adder/incrementer 66 to transfer the contents of ROM address bus 68 to the other input of the adder/incrementer. This time, it adds those two inputs,
When the ΦC clock is activated, the result of the addition is
drives to the ROM address bus, where the result is
The program counter of ROM address register array 48 may be written to.

固定記憶装置(ROM) ROM22はプログラムストレージのための主
な場所である。プログラムストレージは、読出
し/書込みメモリまたは読出し専用メモリと読出
し/書込みメモリのある組合せでありうる。
ROMは、Horold W.Dozierによつて1976年9月
27日に出願され本出願人へ譲渡された米国特許出
願第726579号明細書に記載されたような直列読出
し専用メモリ構成におけるイオン植込みNチヤン
ネルシリコンゲート技術によつて形成されるのが
好ましい。
Fixed Memory (ROM) ROM 22 is the primary location for program storage. The program storage may be read/write memory or some combination of read-only memory and read/write memory.
ROM by Horold W. Dozier September 1976
It is preferably formed by ion-implanted N-channel silicon gate technology in a serial read-only memory configuration such as that described in U.S. Pat.

マイクロ計算機のプログラムおよびデータ定数
はプログラムROM22に記憶される。ROMアク
セスが必要とされるとき、適当なアドレスレジス
タ(POまたはDC)がROMアドレスバスへゲー
トされ、ROM出力が主データバス28へゲート
される。ROMにおける最初のバイトは場所0で
ある。
Programs and data constants for the microcomputer are stored in program ROM 22. When a ROM access is required, the appropriate address register (PO or DC) is gated to the ROM address bus and the ROM output is gated to the main data bus 28. The first byte in ROM is location 0.

RESET入力信号の活性化時またはパワーが最
初に計算機10へ加えられる時、主制御論理装置
26はデータバス28からの情報をROMアドレ
スレジスタアレイ48の適当なアドレスレジスタ
へゲートする。リセツトサイクル中のこの時点で
は、データバスに対する駆動要素はなにも選択さ
れていない。それ故に、データバスの情報はバイ
ト0である。その情報は、適当なアドレスレジス
タ、特に、プログラムカウンタへゲートされ、従
つて、実行の始まるとき、プログラムカウンタは
場所00を含む。そこから、命令の実行は、プログ
ラム分岐または飛越しに出会わない限り、また
は、ベクトルアドレスに置かれている命令シーケ
ンスの実行およびそのシーケンス命令の実行の一
時停止を行なわせるような割込みが生じない限
り、逐次的に進められる。ROM22は、アドレ
スラツチ64を通してROMアドレスバス68か
らアドレスを受け、アドレスされたROM場所か
らのデータをそのデータ出力バス70へ供給す
る。
Upon activation of the RESET input signal or when power is first applied to computer 10, main control logic 26 gates information from data bus 28 to the appropriate address register of ROM address register array 48. At this point in the reset cycle, no drive element for the data bus is selected. Therefore, the information on the data bus is byte 0. That information is gated into the appropriate address register, specifically the program counter, so that when execution begins, the program counter contains location 00. From there, instruction execution continues unless a program branch or jump is encountered, or an interrupt occurs that causes the sequence of instructions located at the vector address to be executed and execution of that sequence of instructions to be suspended. , proceed sequentially. ROM 22 receives addresses from ROM address bus 68 through address latch 64 and provides data from the addressed ROM location to its data output bus 70.

情報は、ROM−DATA BUS信号に応答して主
データバス28へROM22から転送される。も
しこの時点でROMから読み出される情報が命令
であるならば、その情報は内部データバスにて伝
送され、命令レジスタ42へのFETCH入力は、
その情報が内部データバス28を通してROM2
2から命令レジスタ42へ通るように、活性化さ
れる。データの如き命令以外の情報は、主制御論
理装置26によつて発されるゲーテイング命令に
よつてマシンの他の部分へ伝達される。
Information is transferred from ROM 22 to main data bus 28 in response to the ROM-DATA BUS signal. If the information read from the ROM at this point is an instruction, that information is transmitted on the internal data bus, and the FETCH input to the instruction register 42 is
The information is transferred to the ROM2 via the internal data bus 28.
2 to the instruction register 42. Information other than instructions, such as data, is communicated to other parts of the machine by gating instructions issued by main control logic 26.

主制御論理装置 主制御論理装置26は、コンピユータ10内の
情報の指揮装置として機能する。コンピユータ1
0のどのサブシステム内にも、データに対する特
定の機能を演じ且つデータを1つの点から別の点
へ伝達しうる主要論理素子および主要バスがあ
る。従つて、マイクロ計算機システム10によつ
て行なわれる特定の機能は、どのデータをある場
所からある場所へ転送させるかまたどの時点でそ
のデータに対して特定の論理機能を行なわせるか
の機能である。主制御論理装置26は、すべての
他の論理ブロツクのための制御出力を与え且つマ
シン内のすべての主要バスへゲーテイング信号を
与える。
Main Control Logic Unit Main control logic unit 26 functions as a director of information within computer 10 . computer 1
Within any subsystem of 0, there are major logic elements and major buses that perform specific functions on data and that can communicate data from one point to another. Therefore, the specific functions performed by microcomputer system 10 are the functions of what data is transferred from one location to another and at what point a specific logical function is performed on that data. . Main control logic 26 provides control outputs for all other logic blocks and provides gating signals to all major buses within the machine.

主制御論理装置26への制御入力は、コンピユ
ータ10のマイクロ処理サブシステムのため命令
レジスタ42から受け入れられる命令からなつて
いる。例えば、マイクロプロセツサがアキユムレ
ータ30の内容を増分することが望まれるなら
ば、命令INC−ACCがプログラムROM22の適
当な場所に置かれる。命令がプログラムROMか
ら取り出されるとき、その命令は命令レジスタに
置かれ、そこで、それは主制御論理装置へ伝送さ
れデコードされる。主制御論理装置26は、その
命令が増分アキユムレータ命令であるということ
をデコードし、従つて、アキユムレータ30の内
容が増分されるようにシステム内のすべての論理
ブロツクを応答させるため、適切な制御出力およ
びゲートを活性化しまた不活性化するようにす
る。
Control input to main control logic 26 consists of instructions accepted from instruction register 42 for the microprocessing subsystem of computer 10. For example, if it is desired for the microprocessor to increment the contents of accumulator 30, the instruction INC-ACC is placed in the appropriate location in program ROM 22. When an instruction is retrieved from the program ROM, it is placed in an instruction register where it is transmitted to the main control logic and decoded. Main control logic 26 decodes that the instruction is an increment accumulator instruction and therefore issues appropriate control outputs to cause all logic blocks in the system to respond so that the contents of accumulator 30 are incremented. and activate and deactivate the gate.

この結果を発生するのに必要な制御出力は、最
初にセレクタシフタ50を通してアキユムレータ
30からのデータの流れをゲートする信号ACC
−ALUを活性化するものを含んでいる。セレク
タ50のシフト信号は、データが変更されずにシ
フタを通るように活性化されない。主制御論理装
置は、その情報が変更されずに補数演算装置を通
るように、補数信号COMPを不活性化する。種々
な論理素子をS−バスへゲートしうるゲーテイン
グ信号のすべては、S−バスの内容が0となるよ
うに不活性化される。また、ALUの増分信号は
活性化される。それ故に、ALU24へ伝送され
るA−バスの内容は増分され、その増分された結
果が結果バス54に現われる。ロードアキユムレ
ータ信号LD ACCは、結果バスからの情報がΦ
Cクロツクと同期してアキユムレータ30へ戻さ
れるように活性化される。I/Oポート、
ISAR、スクラツチパツドおよびストローブを制
御する信号のすべてが不活性化される。しかし、
主制御論理装置26は、次の命令が取り出されう
るようにアドレツシング論理装置における信号の
あるものを活性化することが必要である。
The control output necessary to produce this result is the signal ACC which first gates the flow of data from the accumulator 30 through the selector shifter 50.
- Contains those that activate ALU. The shift signal of selector 50 is not activated so that the data passes through the shifter unchanged. The main control logic deactivates the complement signal COMP so that the information passes through the complement arithmetic unit unchanged. All of the gating signals that can gate the various logic elements onto the S-Bus are deactivated so that the contents of the S-Bus are zero. Also, the ALU's incremental signal is activated. Therefore, the contents of the A-bus transmitted to ALU 24 are incremented and the incremented result appears on result bus 54. The load accumulator signal LD ACC indicates that the information from the result bus is Φ
It is activated so that it is returned to the accumulator 30 in synchronization with the C clock. I/O port,
All of the signals controlling ISAR, scratchpad and strobe are deactivated. but,
Main control logic 26 is required to activate some of the signals in the addressing logic so that the next instruction can be fetched.

主制御論理装置26がアキユムレータ30を確
実に増分させるための信号を活性化している間、
この主制御論理装置はまた次の命令を取り出さな
ければならない。この場合において、プログラム
カウンタレジスタがアクセスされ、それにより、
このプログラムカウンタレジスタはROMアドレ
スバスへ駆動しうるようにされる。アドレスレジ
スタの適当なレジスタアドレスラインを選択する
ことにより、それはアドレスレジスタへのREAD
ラインを活性化し、プログラムカウンタの内容は
ROMアドレスバスに現われる。主制御論理装置
26は、ROMアドレスバスが増分されるよう
に、増分信号INCを加算器/増分器66へ供給す
る。READ−WRITE信号は、その情報がプログ
ラムカウンタへ書き戻されるように、書込み状態
へ切り換えられる。次のサイクルにて、その増分
された値はROMアドレスバスへアクセスされ、
従つて、プログラムROMにおける次の命令が取
り出される。その命令が命令レジスタ42に置か
れた後、主制御論理装置は、その命令が適切に実
行されるように、その制御信号を活性化したり不
活性化したりする。
While main control logic 26 is activating a signal to ensure that accumulator 30 is incremented,
This main control logic must also fetch the next instruction. In this case, the program counter register is accessed, thereby
This program counter register is made driveable to the ROM address bus. By selecting the appropriate register address line of the address register, it is possible to read the READ to the address register.
Activate the line and the contents of the program counter will be
Appears on the ROM address bus. Main control logic 26 provides an increment signal INC to adder/incrementer 66 so that the ROM address bus is incremented. The READ-WRITE signal is switched to the write state so that the information is written back to the program counter. On the next cycle, the incremented value is accessed to the ROM address bus and
Therefore, the next instruction in the program ROM is retrieved. After the instruction is placed in the instruction register 42, the main control logic activates and deactivates the control signals so that the instruction is properly executed.

割込み論理装置44によつて主制御論理装置2
6へ割込み要求が与えられるときには、前述した
取出し手順に違つた点が出てくる。もし適切な条
件が満足されるならば、ROMから新しい命令を
取り出しそれを前述したように命令レジスタ42
に置く代りに、主制御論理装置は、割込みベクト
ル場所が割込み論理装置44からアドレスレジス
タ48のプログラムカウンタへ通されるようにす
るため、適切な制御出力を活性化する。次の命令
FETCHにおいては、ベクトルアドレスは取り出
される新しいアドレスである。
Main control logic 2 by means of interrupt logic 44
When an interrupt request is given to 6, the above-described retrieval procedure is different. If the appropriate conditions are met, a new instruction is retrieved from the ROM and placed in the instruction register 42 as described above.
Instead, the main control logic activates the appropriate control outputs to cause the interrupt vector location to be passed from the interrupt logic 44 to the program counter of the address register 48. next instruction
In FETCH, the vector address is the new address to be fetched.

計算機へのRESET信号入力が活性化されると
きに、この手順にさらに違つた点がでてくる。こ
れが生じるとき、主制御論理装置26は、現在実
行している命令の実行を停止し適切な制御信号を
活性化し、前述したようにプログラムカウンタに
00をロードさせるようにする。リセツト入力が不
活性化されるとき、主制御論理装置26はROM
場所00で始まる命令を取り出し実行し始める。
RESETと同様な条件は、パワーが最初にシステ
ムに加えられるとき、またはパワーがある短い時
間の間除去または減ぜられそれから通常の動作レ
ベルへ戻されるときに発生される。主制御論理装
置26の内部には、パワーオンクリア回路があ
り、これは、パワーがまず初期的に加えられてい
たこと、またはパワーがある機能しえない電圧レ
ベルへ減ぜられその後に許容電圧レベルまで戻さ
れたことを感知する。これらの状態のどれかが起
こるならば、主制御論理装置は、プログラムカウ
ンタがプログラム実行の開始場所から場所00へ戻
されるようにRESETを行なう。
A further difference in this procedure occurs when the RESET signal input to the computer is activated. When this occurs, main control logic 26 halts execution of the currently executing instruction, activates the appropriate control signals, and registers the program counter as previously described.
Make it load 00. When the reset input is deactivated, main control logic 26
Fetch the instruction starting at location 00 and start executing it.
A condition similar to RESET occurs when power is first applied to the system or when power is removed or reduced for a short period of time and then returned to normal operating levels. Internal to the main control logic 26 is a power-on-clear circuit that determines whether power was initially applied or is reduced to some non-functional voltage level and then to an acceptable voltage level. Senses that it has been returned to the level. If any of these conditions occur, the main control logic performs a RESET so that the program counter is returned to location 00 from the start of program execution.

主制御論理装置へのTEST入力は、主制御論理
装置にそれが現在テストモードにあることを知ら
せる。他の入力と違つてこのTEST入力は3レベ
ル入力である。もし、この入力が低電圧状態にあ
るならば、それは主制御論理装置において不活性
化され、命令を翻訳し、プロセツサに通常の機能
をさせるように適当な制御信号を活性化または不
活性化する。もし主制御論理装置へのテスト入力
が非常に高い電圧とされるならば、それはストロ
ーブ論理装置およびI/Oポート4および5論理
装置へ行くTEST出力を活性化する。それはま
た、オペレーシヨンの通常のモードが一時停止さ
れプログラムROMからの情報が内部データバス
へ通されないようにROM−データバス信号を不
活性化する。この状態では、内部データバスへ供
給されるデータはポート5から受け入れられ、内
部ROMから命令を取り出す代りにテストモード
にあるときポート5を通して周辺装置から命令が
取り出されるであろう。
The TEST input to the main control logic informs the main control logic that it is currently in test mode. Unlike other inputs, this TEST input is a 3-level input. If this input is in a low voltage state, it is deactivated in the main control logic, which interprets the instructions and activates or deactivates the appropriate control signals to allow the processor to function normally. . If the test input to the main control logic is taken to a very high voltage, it activates the TEST output going to the strobe logic and I/O ports 4 and 5 logic. It also deactivates the ROM-Data bus signal so that the normal mode of operation is suspended and no information from the program ROM is passed to the internal data bus. In this state, data supplied to the internal data bus will be accepted from port 5 and instructions will be fetched from the peripheral device through port 5 when in test mode instead of fetching instructions from the internal ROM.

2進タイマ 第1図に加えて第3図および第4図を参照する
に、2進タイマ36は、ROM22に記憶された
プログラムによる制御のもとで主制御論理装置2
6が2進タイマにある特定のプログラム遅延また
は時間遅延を発生させ且つ通常の命令実行に干渉
せずにまたは命令実行との干渉を最小として計数
機能を行なうように命令しうるようにする論理素
子である。2進タイマ36は、プログラム制御の
もとで第2の遅延のある特定の部分を発生するユ
ニツトである遅延タイマとして機能し、また、別
のモードでは、2進タイマ36は外部事象を計数
するカウンタとして機能する。さらに別のモー
ド、すなわち、パルス幅測定モードでは、このタ
イマは、特定の制御入力の活性化と不活性化との
間で起きるΦFクロツクサイクルの数を計数しそ
の特定の制御入力に加えられるパルスの幅を測定
しうるようにするのに使用されうる。
Binary Timer Referring to FIGS. 3 and 4 in addition to FIG.
6 is a logic element that allows a binary timer to be instructed to generate a certain program delay or time delay and to perform a counting function without interfering with normal instruction execution or with minimal interference with instruction execution. It is. Binary timer 36 functions as a delay timer, which is a unit that generates a certain portion of the second delay under program control, and in another mode, binary timer 36 counts external events. Functions as a counter. In yet another mode, the pulse width measurement mode, this timer counts the number of ΦF clock cycles that occur between activation and deactivation of a particular control input and is applied to that particular control input. It can be used to be able to measure the width of a pulse.

タイマ遅延モードでは、主機能ユニツトは、プ
リスケーラ論理装置72およびタイミング論理装
置74である。プリスケーラ72はΦFカウント
クロツクのプログラム可能な除算器である。プリ
スケーラ72の機能は、主タイマ36において最
小数のカウントを使用してより長い時間遅延がタ
イマ回路で発生されうるように入力カウントクロ
ツクΦFの周波数を前もつて減少させることであ
る。タイミング論理ユニツト74には、モジユロ
ーNのデータ蓄積手段を有するタイムレジスタ
(第4図)が含まれており、このデータ蓄積手段
は、再負荷信号がタイムレジスタ負荷制御ユニツ
トによつて生成されたときに、タイムレジスタに
対して論理回路により転送するための、選択され
た正のカウント数を蓄積するためのものである。
タイムレジスタのカウント数の出力にはデクリメ
ントが結合されていて、前記カウント数から1を
引いたものに等しい出力を生成するようにされて
いる。また、タイムレジスタの出力にはデコーダ
も結合されていて、このタイムレジスタのカウン
ト数出力が1に達したことを指示する第1の電圧
レベルを生成するようにされている。タイムレジ
スタ負荷制御ユニツトはデコーダに接続されて、
該デコーダの出力信号、主要カウントパルスおよ
び負荷信号に応答するようにされており、該主要
カウントパルスが生起し、該デコーダの出力が第
1の電圧レベルにはなく、かつ該負荷信号が生起
しないときにカウント信号を生成するようにされ
ている。たゞし、この制御ユニツトは、主要カウ
ントパルスが生起し、デコーダの出力が第1の電
圧レベルにあるとき、または、負荷信号が生成し
ているときに再負荷信号を成させるものである。
タイムレジスタ負荷制御ユニツトによつてカウン
ト信号が生成されたときには、デクリメンタの出
力は論理回路によつてタイムレジスタに転送され
る。論理回路は、デコーダの第1の電圧レベル、
主要カウントパルス、および、負荷信号の不存在
に応答して、中断制御信号を出力させる。2進タ
イマ制御入力は、プリスケーラの除算値を選択す
る3つの信号、スタート−ストツプ信号、タイマ
がパルス幅モードで機能することを示す制御信号
PW、3つのクロツク入力、読出しストローブ、
書込みストローブ、カウントクロツク、START
2と称される補助スタート・ストツプ入力および
補助カウントクロツクからなつている。タイマが
プリセツト値までカウントダウンしたことを指示
するTIME−OUT信号と称される制御出力が2
進タイマから割込み論理装置44へ出てくる。さ
らに、主データバス28に、データインおよびデ
ータアウトチャンネルが接続されている。
In the timer delay mode, the main functional units are prescaler logic 72 and timing logic 74. Prescaler 72 is a programmable divider of the ΦF count clock. The function of prescaler 72 is to pre-decrease the frequency of input count clock ΦF so that longer time delays can be generated in the timer circuit using a minimum number of counts in main timer 36. The timing logic unit 74 includes a time register (FIG. 4) having modulo N data storage means that is activated when a reload signal is generated by the time register load control unit. and for storing a selected positive count number for transfer by the logic circuit to the time register.
A decrement is coupled to the count output of the time register to produce an output equal to the count minus one. A decoder is also coupled to the output of the time register and is adapted to generate a first voltage level indicating that the count output of the time register has reached one. The time register load control unit is connected to the decoder and
the output signal of the decoder is responsive to a primary count pulse and a load signal, the primary count pulse occurring, the output of the decoder not being at a first voltage level, and the load signal not occurring; When the count signal is generated. However, this control unit causes the reload signal to occur when the main count pulse occurs and the output of the decoder is at the first voltage level or when the load signal is being generated.
When a count signal is generated by the time register load control unit, the output of the decrementer is transferred to the time register by the logic circuit. The logic circuit determines the first voltage level of the decoder;
An interrupt control signal is output in response to the main count pulse and the absence of the load signal. The binary timer control input contains three signals to select the prescaler divide value, a start-stop signal, and a control signal to indicate that the timer operates in pulse-width mode.
PW, 3 clock inputs, read strobe,
Write strobe, count clock, START
It consists of an auxiliary start/stop input, designated 2, and an auxiliary count clock. There is a control output called the TIME-OUT signal that indicates that the timer has counted down to a preset value.
Output from the advance timer to interrupt logic 44. Further connected to the main data bus 28 are data in and data out channels.

データ入力信号は、ポート選択論理装置20
LT信号LOAD TIMERによつて2進タイマ36
へ可能化され、2進タイマ36からのデータ出力
はRT信号、READ TIMERによつて主データバ
ス28へ可能化される。
The data input signal is connected to port selection logic 20.
Binary timer 36 by LT signal LOAD TIMER
Data output from binary timer 36 is enabled to main data bus 28 by the RT signal, READ TIMER.

タイマがMODULO−Nタイマモードにあると
き、あるプリスケーラ除算器が、適切なコードを
3つのプリスケール選択入力(20による除算入
力、5による除算入力または2による除算入力)
に駆動することによつて選定される。タイマは、
PULSE WIDTHモードにおいては可能化され
ず、そして、主スタート・ストツプ信号はタイマ
が作動するように可能化される。START−1信
号によつて作動するように可能化されるとき、2
進タイマ36は、プリスケーラ72がプリセツト
数でカウントクロツクを除算する毎に減分する。
例えば、もしプリスケーラが20で除算するように
可能化されるならば、ΦFカウントクロツクの20
サイクルの終了毎に、タイマ論理装置74は1カ
ウント減分する。主タイマレジスタが規定のカウ
ント数を減分したとき、TIME−OUT信号が発
生され、タイマは、再びその規定数のカウントを
減分し続けて次のTIME−OUT信号が同様にし
て発生されるようになる。TIME−OUTパルス
を発生するに必要なカウント数は、この実施例で
2進タイマ36の入力であるポート7への出力命
令により2進タイマ36へそのカウント数を装入
することにより設定される。例えば、もしプリス
ケーラ72が20で除算するように可能化され2進
タイマに2進数00が装入されるならば、ΦFカウ
ントクロツクの200サイクル毎にTIME−OUTパ
ルスが発生される。
When the timer is in MODULO-N timer mode, a prescaler divider applies the appropriate code to the three prescale selection inputs (divide by 20 input, divide by 5 input, or divide by 2 input).
The selection is made by driving the The timer is
In PULSE WIDTH mode it is not enabled and the main start-stop signal is enabled so that the timer runs. 2 when enabled to operate by the START-1 signal.
Advance timer 36 decrements each time prescaler 72 divides the count clock by the preset number.
For example, if the prescaler is enabled to divide by 20, then the ΦF count clock's 20
At the end of each cycle, timer logic 74 decrements by one count. When the main timer register decrements the specified number of counts, a TIME-OUT signal is generated, the timer continues to decrement its count by the specified number again, and the next TIME-OUT signal is generated in the same way. It becomes like this. The number of counts required to generate a TIME-OUT pulse is set by loading the count number into binary timer 36 by an output command to port 7, which is the input of binary timer 36 in this embodiment. . For example, if prescaler 72 is enabled to divide by 20 and a binary timer is loaded with a binary 00, a TIME-OUT pulse will be generated every 200 cycles of the ΦF count clock.

パルス幅測定モードにおけるタイマ36のオペ
レーシヨンは、タイマがパルス幅モード信号PW
によつて可能化されるときに、補助スタート・ス
トツプ信号START2がタイマをパルス幅モード
にて可能化するように可能化されねばならない以
外は、MODULO−Nタイマモードと同様であ
る。補助スタート信号は、外部割込み入力からの
適切にバツフアされ同期化された信号によつて活
性化され、パルス幅モードでは、2進タイマ36
は、外部割込みピン46がその適切な状態にある
ときのみ作動するように可能化される。それ故
に、外部割込みピン46のパルスの幅は2進タイ
マ36を使用して測定されうる。
The operation of the timer 36 in the pulse width measurement mode is such that the timer receives the pulse width mode signal PW.
Similar to MODULO-N timer mode, except that when enabled by START2, the auxiliary start/stop signal START2 must be enabled to enable the timer in pulse width mode. The auxiliary start signal is activated by a suitably buffered and synchronized signal from an external interrupt input and, in pulse width mode, is activated by a binary timer 36.
is enabled to operate only when external interrupt pin 46 is in its proper state. Therefore, the width of the pulse on external interrupt pin 46 can be measured using binary timer 36.

もう1つ別の基本的オペレーシヨンモードで
は、タイマ36はプリスケーラを使用せずに直接
的に補助カウントクロツクを計算するように設定
されうる。このモードは無プリスケール値が選定
される。すなわち、除算制御入力は論理低レベル
へ駆動される。これは、ポート番号6を割り当て
られた割込み制御ポート32へ適切なデータを書
き込むことによつて実施される。同様に、パルス
幅モードは選択されず、従つて、パルス巾入力は
論理“0”へ設定される。タイマ36は主スター
ト信号START1によつてスタートとするように
可能化され、このように構成されるとき、タイマ
論理装置74は、補助クロツク入力のサイクル毎
に主タイマを減分する。それ故に、タイムアウト
パルスの間の時間は、補助クロツクパルスのある
数に等しくなるように規定されうる。例えば、も
し2進タイマに数10が装入されるならば、補助入
力クロツクの10サイクルの終了毎に、タイムアウ
トパルスが発生される。
In another basic mode of operation, timer 36 may be configured to calculate the auxiliary count clock directly without using a prescaler. In this mode, a non-prescale value is selected. That is, the divide control input is driven to a logic low level. This is accomplished by writing the appropriate data to interrupt control port 32, which has been assigned port number six. Similarly, pulse width mode is not selected, so the pulse width input is set to a logic "0". Timer 36 is enabled to be started by main start signal START1, and when so configured, timer logic 74 decrements the main timer on every cycle of the auxiliary clock input. Therefore, the time between timeout pulses can be defined to be equal to a certain number of auxiliary clock pulses. For example, if a binary timer is loaded with the number 10, a timeout pulse will be generated at the end of every 10 cycles of the auxiliary input clock.

この構成では、2進タイマ36からTIME−
OUTパルスが発生されるとき、そのパルスは割
込み論現装置44へ行く。もし、割込み論理装置
が適切に可能化されるならば、割込み要求が主制
御論理装置26へ伝送される。それ故に、2進タ
イマは、ある特定の遅延、すなわち、ΦFカウン
トクロツクの特定のカウント数を発生してその遅
延の終りに主制御論理装置へ割込み要求を発生す
るのに使用される。さらに、タイマは、補助クロ
ツク入力の特定数を計数しその特定の補助クロツ
クサイクル数の完了後に主制御論理装置26へ割
込み要求を発生するように可能化されうる。
In this configuration, TIME-
When an OUT pulse is generated, it goes to interrupt logic processor 44. If the interrupt logic is properly enabled, the interrupt request is transmitted to the main control logic 26. Therefore, a binary timer is used to generate a certain delay, ie, a certain number of counts of the ΦF count clock, and to generate an interrupt request to the main control logic at the end of that delay. Additionally, the timer may be enabled to count a specified number of auxiliary clock inputs and generate an interrupt request to main control logic 26 after completion of that specified number of auxiliary clock cycles.

また、2進タイマ36はSTART2信号が活性
化された時のみ作動するように可能化されうる。
START2信号は外部割込み入力の微分値であ
り、従つて、外部割込み入力が適切な状態にある
時のみ作動する。これは、外部割込み入力パルス
の幅を測定するのに使用される。このモードで
は、情報はパルスの開始時に初期的に2進タイマ
の内容を読み出しパルスの終了時に主制御論理装
置へ割込み要求を発生するのでなく経過時間差を
計算することによつて計算される。この時、割込
み論理装置46は依然と可能化されていて、割込
み要求は適切に形成されているならば発生される
であろう。
Also, binary timer 36 may be enabled to operate only when the START2 signal is activated.
The START2 signal is the derivative of the external interrupt input, and is therefore active only when the external interrupt input is in the appropriate state. This is used to measure the width of the external interrupt input pulse. In this mode, information is computed by initially reading the contents of a binary timer at the beginning of the pulse and calculating the elapsed time difference rather than issuing an interrupt request to the main control logic at the end of the pulse. At this time, interrupt logic 46 is still enabled and an interrupt request will be generated if properly configured.

割込み論理装置 第1図、第3図および第5図を参照するなら
ば、好ましい実施例によれば、外部割込み要求信
号の微分値はΦCクロツクで同期され、割込み要
求が生ずると同じΦCサイクル中に割込み要求デ
コードオペレーシヨンが演ぜられ、外部割込み入
力を通して直列情報のサンプルされる最大ビツト
割合を増大しうるようにする。従来の割込み論理
装置の構成では、割込み要求がデコードされ、処
理され且つ割込み要求が主制御論理装置へ伝送さ
れるのに最小3つのΦCクロツクサイクルが必要
とされ、これでは直列情報を伝送しうる最大速度
が実質的に制限されてしまう。
Interrupt Logic Referring to FIGS. 1, 3, and 5, according to a preferred embodiment, the derivative of the external interrupt request signal is synchronized with the ΦC clock so that an interrupt request occurs during the same ΦC cycle. An interrupt request decode operation is performed to allow increasing the maximum bit rate of serial information sampled through the external interrupt input. In conventional interrupt logic configurations, a minimum of three ΦC clock cycles are required for an interrupt request to be decoded, processed, and transmitted to the main control logic, which does not transmit serial information. This effectively limits the maximum speed that can be achieved.

割込み論理装置44の論理構成によれば、外部
割込み入力に応答して次のΦCサイクル時に、割
込み要求が主制御論理装置26へ与えられる。あ
る場合には、外部割込み要求がなされる時、すな
わち、マイクロプロセツサシステムが現在の命令
シーケンスの実行を停止しその代り新しい命令シ
ーケンスを実行することをある周辺装置が要求す
る時、その時間長ができるだけ短いことが望まし
い。それ故に、外部要求が生ずるとすぐに、その
要求はできるだけすばやく主制御論理装置へ伝送
されるのが望ましく、また、主制御論理装置はで
きるだけすばやくその要求に応答するのが望まし
い。主制御論理装置の割込み要求に対する応答に
関して既存の通常の命令によつて課せられる制約
のために主制御論理装置の応答時間は固定され
る。しかし、外部割込み信号のデコードされる方
法および正当な外部割込みを認織するのに必要と
される時間長に関する制約はない。
According to the logic configuration of interrupt logic 44, an interrupt request is provided to main control logic 26 during the next ΦC cycle in response to an external interrupt input. In some cases, the length of time when an external interrupt request is made, that is, when some peripheral requests that the microprocessor system stop executing the current instruction sequence and instead execute a new instruction sequence. It is desirable that it be as short as possible. Therefore, as soon as an external request occurs, it is desirable that the request be transmitted to the master control logic as quickly as possible, and it is desirable that the master control logic respond to the request as quickly as possible. The response time of the main control logic is fixed due to constraints imposed by existing conventional instructions on the response of the main control logic to interrupt requests. However, there are no restrictions as to how the external interrupt signal is decoded and the amount of time required to acknowledge a legitimate external interrupt.

主制御論理装置への外部割込み要求をデコード
し伝送するのに必要とされる時間長は、第5図に
例示したようにして本発明の回路によつて減少さ
れる。そのデコードオペレーシヨンは、内部デー
タバスのデータが安定であると保証されるとき、
クロツクサイクルの部分中に生ずるように配列さ
れる。これは、論理“0”状態にある条件
と論理“1”状態にあるΦCクロツクサイ
クルとの関数である信号F1を最初に導出するこ
とによつて行なわれる。しかし、ΦCが論理
“1”へ行くとき、 信号は、次のΦC
サイクルまでF2を変化させずに変化しうる。そ
れ故に、F1は 信号の同期的論理的反
転である。第2の信号F2は、適切な要求状態、
すなわち、割込みを要求するための論理“1”ま
たは要求のなされない場合の論理“0”がΦCク
ロツクの降下後すぐに制御論理装置へ伝達される
ように、ΦCクロツクの降下前に安定化せねばな
らない割込み決定論理の結果を表わしている。
The amount of time required to decode and transmit an external interrupt request to the main control logic is reduced by the circuit of the present invention as illustrated in FIG. The decode operation is performed when the data on the internal data bus is guaranteed to be stable.
arranged to occur during a portion of a clock cycle. This is done by first deriving the signal F 1 which is a function of the condition being in the logic "0" state and the .PHI.C clock cycle being in the logic "1" state. However, when ΦC goes to logic “1”, the signal is
It can be changed without changing F 2 up to a cycle. Therefore, F 1 is the synchronous logical inversion of the signal. The second signal F 2 is the appropriate request state,
That is, the ΦC clock must be stabilized before falling so that a logic "1" to request an interrupt or a logic "0" if no request is made is transmitted to the control logic immediately after the fall of the ΦC clock. represents the result of the interrupt decision logic that must be used.

システムオペレーシヨン 第1図および第3図に関して、本発明内にある
2進タイマのオペレーシヨンについて説明する。
このオペレーシヨンは、200ΦFクロツクパルス
の完了時に割込み論理装置44へTIME−OUT
パルスを発生するようにMODULO−N遅延モー
ドにて機能する如く2進タイマ36を構成するこ
とに関して説明される。
System Operation Referring to FIGS. 1 and 3, the operation of the binary timer within the present invention will now be described.
This operation sends TIME-OUT to interrupt logic 44 upon completion of the 200ΦF clock pulse.
A description will now be given of configuring binary timer 36 to function in MODULO-N delay mode to generate pulses.

2進タイマ36は、まず、20で除算するプリス
ケール値に対して設定され、主タイマ74は10カ
ウントを行なうように設定される。外部割込み論
理装置44は、タイムアウトパルスの生ずるとき
に主制御論理装置26へ割込み要求を通すように
可能化されるよう設定される。2進タイマがこの
モードにて作動するように構成するため、適切な
制御情報が割込み制御ポート32へ装入されねば
ならない。従つて、20で除算する入力が設定さ
れ、次の2つの最上位のビツトがクリアされる。
タイマ36は、スタートビツトを設定することに
よりすぐにスタートするように可能化される。外
部割込みピンのEDGEピンは論理“0”に設定さ
れる。TIME割込みは、割込み制御ポートからく
る割込み論理装置へのTIMERENA信号が可能化
されるように次のビツトを設定することによつて
可能化される。外部割込みは、その最下位のビツ
トを論理“0”へ設定することによつて不能化さ
れる。従つて、その最下位のビツトは外部可能化
ビツトであり、外部割込みが可能化されないよう
にクリアされる。
Binary timer 36 is first set to a prescale value dividing by 20, and main timer 74 is set to count 10. External interrupt logic 44 is configured to be enabled to pass an interrupt request to main control logic 26 when a timeout pulse occurs. In order to configure the binary timer to operate in this mode, appropriate control information must be loaded into interrupt control port 32. Therefore, the divide by 20 input is set and the next two most significant bits are cleared.
Timer 36 is enabled to start immediately by setting the start bit. The external interrupt pin EDGE pin is set to logic "0". The TIME interrupt is enabled by setting the following bit so that the TIMERENA signal to the interrupt logic coming from the interrupt control port is enabled. External interrupts are disabled by setting their least significant bit to a logic "0". Therefore, its least significant bit is the external enable bit and is cleared so that external interrupts are not enabled.

第2のビツトすなわちビツト1は、タイマ可能
化ビツトである。これが設定されるとき、割込み
要求が、割込み論理装置へ伝送されているTIME
−OUTパルスに応答して主制御論理装置26へ
伝送されるように可能化される。ビツト3すなわ
ち第3の有効ビツトは、外部割込みピンの活性縁
を選択するEDGEビツトである。すなわち、これ
は低−高遷移または高−低遷移が検出されるべき
かを選定する。この例では、このビツトは0に設
定される。次のビツトは2進タイマのための
STARTビツトであり、これは、2進タイマがス
タートするように可能化されるよう論理“1”に
設定される。次のビツトは、パルス幅モードが不
能化されるように論理“0”に設定されるパルス
幅(PW)である。このレジスタにおける次のビ
ツトは0に設定されるプリスケーラのための2で
の除算制御であり、次の2つの最上位のビツト
は、0に設定される5による除算および論理
“1”に設定される20での除算のプリスケール入
力である。16進表示法にて8Aで表わされる適切
なデータを割込み制御ポートに装入した後、主タ
イマは、16進表示法でOAである10進値10を装入
される。要約するに、主タイマには10のカウント
が装入され、プリスケーラには20による除算値が
ロードされ、タイマは作動するように可能化さ
れ、タイマ割込みは生ずるように可能化される。
The second bit, bit 1, is the timer enable bit. When this is set, the interrupt request is sent to the interrupt logic
- Enabled to be transmitted to main control logic 26 in response to an OUT pulse. Bit 3, the third valid bit, is the EDGE bit which selects the active edge of the external interrupt pin. That is, it selects whether low-high transitions or high-low transitions are to be detected. In this example, this bit is set to 0. The next bit is for the binary timer.
START bit, which is set to a logic ``1'' to enable the binary timer to start. The next bit is Pulse Width (PW), which is set to logic ``0'' so that Pulse Width mode is disabled. The next bit in this register is the divide-by-2 control for the prescaler which is set to 0, and the next two most significant bits are the divide-by-5 control which is set to 0 and the divide-by-2 control for the prescaler which is set to 0. This is the prescale input for division by 20. After loading the interrupt control port with the appropriate data, represented by 8A in hexadecimal notation, the main timer is loaded with a decimal value of 10, which is OA in hexadecimal notation. In summary, the main timer is loaded with a count of 10, the prescaler is loaded with a divide by 20 value, the timer is enabled to run, and the timer interrupt is enabled to occur.

200ΦFクロツク毎に主制御論理装置へ割込み
を発生するようにMODULO−N遅延モードにて
タイマが構成されている命令セツトを実行する場
合には、まず最初に起こることは、シーケンスの
最初の命令、この例では、アドレス100に置か
れたマシンコード20が取り出されねばならないと
いうことである。アドレスレジスタアレイ48に
おけるプログラムカウンタは、プログラムカウン
タの内容100がROMアドレス68へ可能化される
ように選定されねばならない。それから、その情
報はアドレスラツチ64へラツチされ、その後、
プログラムROM22へ伝送される。プログラム
ROM22がアドレスされた後、マシンコード20
がそのアドレスに対応する出力に現われる。
When executing an instruction set in which the timer is configured in MODULO-N delay mode to generate an interrupt to the main control logic every 200ΦF clocks, the first thing that happens is that the first instruction in the sequence In this example, machine code 20 located at address 100 must be retrieved. The program counter in address register array 48 must be selected such that the contents of the program counter 100 are made available to ROM address 68. That information is then latched into address latch 64, and then
The data is transmitted to the program ROM 22. program
After ROM22 is addressed, machine code 20
appears in the output corresponding to that address.

そのデータを命令レジスタ42へ入れるため
に、ROM−DATA BUS制御ラインが活性化され
ねばならない。FETCH信号が活性化された状態
で、その情報はΦCクロツクと同期してデータバ
スから命令レジスタ42へ転送される。さらに、
この取出し中、加算器/増巾器66への増分信号
INCは、ROMアドレスバスに現われる情報が増
分されそのサイクルの終りで新しい増分された値
101がROMアドレスバス68へ戻し駆動されるよ
うに、活性化される。プログラムカウンタはさら
に主制御論理装置によつて選択され、READ/
WRITEラインは、増分された情報101がプログ
ラムカウンタへロードバツクされるように、
READ状態からWRITE状態へ移される。この
時、オペレーシヨンコードが命令レジスタ42へ
取り出されており、プログラムカウンタの内容が
100から101へ増分されている。
To place that data into instruction register 42, the ROM-DATA BUS control line must be activated. With the FETCH signal activated, the information is transferred from the data bus to the instruction register 42 in synchronization with the ΦC clock. moreover,
During this fetch, an incremental signal to adder/amplifier 66
INC indicates that the information appearing on the ROM address bus is incremented to a new incremented value at the end of the cycle.
101 is activated so that it is driven back to ROM address bus 68. The program counter is further selected by the main control logic and READ/
The WRITE line is set so that the incremented information 101 is loaded back to the program counter.
Moved from READ state to WRITE state. At this time, the operation code has been taken out to the instruction register 42, and the contents of the program counter are
It has been incremented from 100 to 101.

ΦCクロツクによつて定められる次のマシンサ
イクルの開始時に、命令レジスタ42にあるマシ
ンコード20は、主制御論理装置26にてデコード
される。この命令は、この例では、LOAD
IMMEDIATEであり、それなので、プログラム
ROMに記憶された情報または情報語の次のビツ
トがアキユムレータ30へ装入されるものであ
る。それ故に、命令オペレーシヨンコードが場所
100でROMにあるので、場所101のデータ語がア
キユムレータへ装入されるものである。この例で
は、そのデータ語の内容は16進数の8Aである。
主制御論理装置は、プログラムROMにおけるこ
の語をアキユムレータ30へ転送しなければなら
ない。
At the beginning of the next machine cycle as determined by the ΦC clock, the machine code 20 present in the instruction register 42 is decoded in the main control logic 26. This instruction, in this example, LOAD
IMMEDIATE and so the program
The next bit of information or information word stored in the ROM is loaded into the accumulator 30. Therefore, the instruction operation code is located
Since it is in ROM at 100, the data word at location 101 is the one that is loaded into the accumulator. In this example, the content of that data word is hexadecimal 8A.
The main control logic must transfer this word in the program ROM to the accumulator 30.

このオペレーシヨンを実行するために、主制御
論理装置26は、再び、ROMアドレスバス68
へそれを可能化するアドレスレジスタフアイル4
8におけるPCレジスタを選択する。従つて、
ROMアドレスバスの内容は増分されたデータ101
である。場所101に記憶されている情報は、ROM
のデータ出力バス70を通して転送され、転送ゲ
ートにて主データバス28へ与えられる。さら
に、主制御論理装置は、情報8Aがデータバスか
らALU24のS−バス入力へ転送されるよう
に、DATA BUS−3転送信号を活性化する。
To perform this operation, main control logic 26 again uses ROM address bus 68.
Address register file 4 that enables this
Select the PC register at 8. Therefore,
The contents of the ROM address bus are incremented data 101
It is. The information stored in location 101 is stored in ROM
The data is transferred through the data output bus 70 and applied to the main data bus 28 at the transfer gate. Additionally, the main control logic activates the DATA BUS-3 transfer signal so that information 8A is transferred from the data bus to the S-bus input of ALU 24.

さらに、主制御論理装置26は、アキユムレー
タ30も状態レジスタ56も選択されないよう
に、ALU24のA−バスへすべての制御入力を
不活性化する。ALU24のA−バス入力がすべ
て0となるようにデータはなんらシフトも補数演
算もされない。ALUへのADD信号は、S−バス
の内容(8A)がA−バス(0)へ加えられS−
バスがALUを通してそのデータを変更しないま
まで通しうるように、活性化される。
Additionally, main control logic 26 deactivates all control inputs to the A-bus of ALU 24 so that neither accumulator 30 nor status register 56 is selected. The data is not shifted or complemented in any way so that the A-bus inputs of ALU 24 are all zeros. The ADD signal to the ALU means that the contents of the S-bus (8A) are added to the A-bus (0) and the S-bus contents (8A) are added to the A-bus (0).
The bus is activated so that its data can pass unchanged through the ALU.

ロードアキユムレータ信号LD ACCが活性化
されΦCクロツクで同期化された状態で、データ
はアキユムレータ30へラツチされる。それ故
に、前述したように、データが増分ROM場所101
からアキユムレータ30へ転送されている。さら
に、プログラムカウンタデータがアドレスラツチ
64へラツチされたとき、加算器/増分器66
は、その増分された値102をROMアドレスバスへ
戻し駆動する。プログラムカウンタが選択された
状態で、アドレスレジスタアレイ48への
READ/WRITEラインは、そのサイクルの終り
で、アキユムレータ30に、ROMアドレスレジ
スタアレイ48のプログラムカウンタに記憶され
ている増分された場所102に相当する情報がロー
ドされてしまうように、WRITE状態へ変化す
る。
Data is latched into the accumulator 30 with the load accumulator signal LD_ACC activated and synchronized with the ΦC clock. Hence, as mentioned above, the data is incrementally added to ROM location 101
The data is transferred from the storage unit 30 to the storage unit 30. Additionally, when program counter data is latched into address latch 64, adder/incrementer 66
drives its incremented value 102 back onto the ROM address bus. With the program counter selected, the address register array 48 is
The READ/WRITE line changes to the WRITE state at the end of the cycle so that the accumulator 30 has been loaded with the information corresponding to the incremented location 102 stored in the program counter of the ROM address register array 48. do.

LOAD IMMEDIATE命令の最終サイクルは、
生ずるべき次の命令のFETCH(取出し)であ
る。これは、主制御論理装置26からのFETCH
信号を活性化し且つアドレスレジスタフアイル4
8からプログラムカウンタを選択して、ROMア
ドレスバスに増分されたアドレス場所102がロー
ドされるようにすることによつて、実施される。
これは、ROM場所102での情報がROM22のデ
ータ出力に現われるように、アドレスラツチ64
へラツチされる。ROM−DATA BUS信号は
ROMの出力から主データバス28へ情報が通る
ように活性化され、FETCH信号が活性化されて
いるので、その情報はΦCクロツクと同期して命
令レジスタ42へラツチされる。更に、加算器/
増分器66は増分するように可能化され、102ア
ドレスがアドレスラツチ64へラツチされたと
き、その増分値103はROMアドレスバス68へ駆
動され、アドレスレジスタアレイ48への
READ/WRITEラインは、増分値103がアドレス
レジスタアレイ48のプログラムカウンタへ書き
込まれるように、READモードからWRITEモー
ドへ切り換えられる。
The final cycle of the LOAD IMMEDIATE instruction is
This is a FETCH of the next instruction to occur. This is the FETCH from main control logic 26.
Activate the signal and address register file 4
This is accomplished by selecting the program counter from 8 to cause the ROM address bus to be loaded with an incremented address location 102.
This sets address latch 64 so that the information at ROM location 102 appears at the data output of ROM 22.
Being beaten. ROM-DATA BUS signal is
Since information is activated to pass from the output of the ROM to the main data bus 28 and the FETCH signal is activated, that information is latched into the instruction register 42 in synchronization with the ΦC clock. Furthermore, the adder/
Incrementer 66 is enabled to increment so that when the 102 address is latched into address latch 64, the increment value 103 is driven onto ROM address bus 68 and into address register array 48.
The READ/WRITE line is switched from READ mode to WRITE mode so that an increment value of 103 is written to the program counter of address register array 48.

アドレス102から取り出されたデータであつた
新しい命令コマンドB6は命令レジスタ42へラ
ツチされる。次のサイクルの開始時に、主制御論
理装置は、ポート6(割込み制御ポート)へデー
タを出力するためのコマンドであるB6コマンド
をデコードする。ポート選択論理装置22がポー
ト6を活性化するために、そのポートのアドレス
はデータバス28へ駆動されねばならない。ポー
ト6のアドレスはOUTPUT SHORTコマンドB6
の下方の4ビツトに含まれている。それ故に、ポ
ートアドレス6をデータバス28へ転送するため
に、命令レジスタの下方の4ビツトが主データバ
スへ駆動されねばならない。こうするために、
IR−S信号が活性化される。これにより、命令
レジスタの下方の4ビツトがALUのS−バス入
力へ転送されうるようにされる。A−バスを
ALUに対して制御する信号はなんら活性化され
ていないので、A−バスの内容は00である。
ALUは加算するように可能化され、従つて、そ
の06は00へ加えられ、このことはその06が変更さ
れずにALUを通過することを意味しており、値
06が結果バス54に現われる。RESULT BUS−
DATA BUS信号は、結果バス54の内容が主デ
ータバスへ転送されるように活性化される。それ
故に、命令レジスタ42の下方ビツトに発した値
06は、主データバス28へ駆動されてしまつてい
る。
The new instruction command B6, which was the data retrieved from address 102, is latched into instruction register 42. At the beginning of the next cycle, the main control logic decodes the B6 command, which is a command to output data to port 6 (interrupt control port). In order for port selection logic 22 to activate port 6, the address of that port must be driven onto data bus 28. The address of port 6 is OUTPUT SHORT command B6
It is included in the lower 4 bits. Therefore, in order to transfer port address 6 to data bus 28, the lower four bits of the instruction register must be driven to the main data bus. In order to do this,
The IR-S signal is activated. This allows the lower four bits of the instruction register to be transferred to the S-bus input of the ALU. A-bus
Since no signals controlling the ALU are activated, the contents of the A-bus are 00.
The ALU is enabled to add, so the 06 is added to 00, which means that the 06 passes through the ALU unchanged, and the value
06 appears on result bus 54. RESULT BUS−
The DATA BUS signal is activated so that the contents of result bus 54 are transferred to the main data bus. Therefore, the value placed on the lower bit of instruction register 42
06 has been driven to the main data bus 28.

次のサイクル中、主制御論理装置26は、アキ
ユムレータ30の内容を主データバス28へ可能
化し、前のサイクル中にそのバスにあつたアドレ
スのポートへそのデータを装入させるようにポー
ト選択論理装置20に命令する。こうするため
に、主制御論理装置26からのACC−ALU制御
信号が活性化される。これにより、アキユムレー
タ30の内容がセレクタシフタ50へ転送される
ようにされる。データが変更されずにシフタを通
るようにそのデータに対してシフトは行なわれな
い。また、このデータは変更されずに補数演算装
置52を通る。何故ならば、補数信号COMPは活
性化されていないからである。S−バスに対して
は駆動素子はどれも可能化されないので、ALU
へのS−バス入力はすべて0であり、ALUは加
算を行なうように可能化される。従つて、アキユ
ムレータの内容は、ALUを通して変更されずに
結果バス54へ通る。アキユムレータにおける情
報は、以前に実行されたLOAD IMMEDIATE命
令によつて前に設定されていて、8Aである。そ
れ故に、主データバス28に装入された内容は
8Aである。
During the next cycle, the main control logic 26 enables the contents of the accumulator 30 onto the main data bus 28, and the port selection logic causes the data to be loaded into the port at the address that was on that bus during the previous cycle. command the device 20; To do this, the ACC-ALU control signal from main control logic 26 is activated. Thereby, the contents of the accumulator 30 are transferred to the selector shifter 50. No shifts are performed on the data so that it passes through the shifter unchanged. This data also passes through complement arithmetic unit 52 unchanged. This is because the complement signal COMP is not activated. Since none of the drive elements are enabled for the S-bus, the ALU
The S-Bus inputs to are all zeros and the ALU is enabled to perform the addition. Therefore, the contents of the accumulator pass unchanged through the ALU to the results bus 54. The information in the accumulator was previously set by a previously executed LOAD IMMEDIATE instruction and is 8A. Therefore, the content loaded onto the main data bus 28 is
It is 8A.

さらに、主制御論理装置26はロード高(LD
HI)入力をポート選択論理装置20へ活性化す
る。これは、前のサイクル中にデータバスにあつ
たアドレス06の高い番号のポートへ主データバス
から情報を装入するようにポート選択論理装置に
命令する。前のサイクルにてデータバスにあつた
値06の結果として且つ現在のサイクル中活性化さ
れるLD HI信号の結果として、ポート選択論理
装置20はLI CP信号を活性化し、主データバス
の内容がΦCクロツクで同期化され割込み制御ポ
ート32へ転送させられるようにする。
Additionally, the main control logic unit 26 has a load high (LD
HI) input to port selection logic 20. This instructs the port selection logic to load information from the main data bus into the high numbered port at address 06 that was on the data bus during the previous cycle. As a result of the value 06 on the data bus in the previous cycle and as a result of the LD HI signal being activated during the current cycle, port selection logic 20 activates the LI CP signal so that the contents of the main data bus are It is synchronized with the ΦC clock and transferred to the interrupt control port 32.

従つて、このサイクルの終りで、命令レジスタ
はなおも命令B6を含んでいる。アドレスレジス
タアレイ48におけるプログラムカウンタは103
を含んでおり、アキユムレータ30はなおも8A
を含んでいる。しかし、割込み制御ポート32は
またデータ8Aを含み、その情報は割込み制御ポ
ートの出力へ転送され、2進タイマ36および割
込み論理装置44の制御入力へ行く。この情報
は、そのとき、MODULO−N遅延モードにおい
て20による除算でのプレスケールで2進タイマが
機能するようにしているであろう。また、この情
報はタイマをスタートさせ、タイマ割込みを可能
化しているであろう。
Therefore, at the end of this cycle, the instruction register still contains instruction B6. The program counter in address register array 48 is 103
The accumulator 30 is still 8A
Contains. However, interrupt control port 32 also contains data 8A, which information is transferred to the output of the interrupt control port and goes to the control input of binary timer 36 and interrupt logic 44. This information would then allow the binary timer to function with a prescale by divide by 20 in MODULO-N delay mode. This information would also start a timer and enable timer interrupts.

10のカウントは、20での除算のプレスケール値
と結合されるとき、2進タイマが200ΦFクロツ
クパルスの発生後TIME−OUT信号を発生する
ように、主タイマへ装入されたままである。これ
を行なうために次の命令が取り出される。プログ
ラムカウンタはROMアドレスレジスタアレイ4
8からROMアドレスバスへ選択される。バスの
内容のアドレスはアドレスラツチ64へラツチさ
れ、それはプログラムカウンタ103の現在の内容
である。それ故に、103はプログラムROMへのア
ドレスであり、場所103での情報はROMデータ出
力バス70に現われる。この例ではその情報は
7Aである。さらに、加算器/増分器は増分する
ように可能化される。ΦEクロツクパルスが終了
して、情報がアドレスラツチにラツチされている
ことが示されるとき、加算器/増巾器はROMア
ドレスバス68へ戻し駆動する。その増分値は
104である。
The count of 10 remains loaded into the main timer such that when combined with the prescale value of divide by 20, the binary timer generates the TIME-OUT signal after the occurrence of the 200ΦF clock pulse. The following instructions are taken to do this. Program counter is ROM address register array 4
8 to the ROM address bus. The address of the contents of the bus is latched into address latch 64, which is the current contents of program counter 103. Therefore, 103 is the address to the program ROM and the information at location 103 appears on the ROM data output bus 70. In this example, that information is
It is 7A. Furthermore, the adder/incrementer is enabled to increment. When the ΦE clock pulse ends, indicating that information is latched in the address latch, the adder/amplifier drives back onto the ROM address bus 68. Its increment value is
It is 104.

プログラムの実行のこの点では、アドレスレジ
スタフアイル48におけるREAD/WRITEライ
ンは、READモードからWRITEモードへ切り換
えられ、104情報が選択されたプログラムカウン
タへ書き戻されうるようにされる。さらに、
ROM−DATA BUS信号はROMの出力に現われ
るデータが主データバスへ転送されるように活性
化され、取出し信号は、その情報がΦCクロツク
と同期して命令レジスタ42へ装入されるように
活性化される。それ故に、サイクルの終了時に、
プログラムカウンタは場所104を含んでいる。命
令レジスタ42はコマンド7Aを含んでいる。
At this point in program execution, the READ/WRITE line in address register file 48 is switched from READ mode to WRITE mode, allowing 104 information to be written back to the selected program counter. moreover,
The ROM-DATA BUS signal is activated so that the data appearing at the output of the ROM is transferred to the main data bus, and the GET signal is activated so that the information is loaded into the instruction register 42 in synchronization with the ΦC clock. be converted into Therefore, at the end of the cycle,
The program counter includes location 104. Instruction register 42 contains command 7A.

次のサイクルの開始時、主制御論理装置は命令
7Aをデコードし、これがLOAD IMMEDIATE
SHOPT命令に相当することを認識する。この
LOAD IMMEDIATE SHORT命令において、主
制御論理装置26はこの命令によつて指令され、
その命令の下方の4ビツトをアキユムレータ30
へ置くようにする。これを行なうために、主制御
論理装置は、16進数のAである命令レジスタの下
方の4ビツトがS−バスへ転送されS−バスの内
容がOAとなるように、IR−Sラインを可能化す
る。A−バスが00であるようにALUのA−バス
にはなにも要素が選択されない。ADD命令は、
主制御論理装置26によつてALUへ与えられ、
従つて00がAに加えられ、その結果のOAが結果
バス54に現われる。ロードアキユムレータ信号
LD ACCは、結果バスの内容OAがΦCクロツク
と同期してアキユムレータ30へ装入されるよう
に、活性化される。このサイクルの終りで、命令
レジスタ42はなおもデータ7Aを含んでいる
が、アキユムレータ30はそこに装入されたOA
を有している。
At the beginning of the next cycle, the main control logic
Decode 7A and this is LOAD IMMEDIATE
Recognize that it corresponds to the SHOPT command. this
In the LOAD IMMEDIATE SHORT instruction, the main control logic 26 is commanded by this instruction to
The lower 4 bits of that instruction are stored in the accumulator 30.
so that it is placed at To do this, the main control logic enables the IR-S line such that the lower four bits of the instruction register, which is a hexadecimal A, are transferred to the S-bus, making the contents of the S-bus OA. become No element is selected on the A-bus of the ALU so that the A-bus is 00. The ADD instruction is
provided to the ALU by the main control logic unit 26;
00 is therefore added to A and the resulting OA appears on the results bus 54. Load accumulator signal
LD_ACC is activated so that the content OA of the result bus is loaded into the accumulator 30 in synchronization with the ΦC clock. At the end of this cycle, instruction register 42 still contains data 7A, but accumulator 30 is loaded with OA
have.

プログラムカウンタは、コード104を装入され
たままである。次のサイクル中、主制御論理装置
26はROM22から次の命令を取り出す。これ
を行なうため、プログラムカウンタは、アドレス
レジスタフアイル48からROMアドレスバス6
8へ選択され、READ/WRITE制御はREADモ
ードに置かれ、情報はΦEクロツクと同期して
ROMアドレスラツチへラツチされる。それ故
に、ROM22は場所104でアドレスされる。場所
104に現われるデータは、ROMのデータ出力バス
70へ駆動される。さらに、加算器/増分器66
はある増分を行なうように可能化され、適切な時
間に、増分された値105はROMアドレスバス68
へ戻し駆動される。アドレスレジスタアレイへの
READ/WRITE信号は、増分された値105がプロ
グラムカウンタへ書き込まれるように、WRITE
モードへ切り換えられる。従つて、このサイクル
の終りで、プログラムカウンタは情報105を含ん
でいる。
The program counter remains loaded with code 104. During the next cycle, main control logic 26 retrieves the next instruction from ROM 22. To do this, the program counter is routed from the address register file 48 to the ROM address bus 6.
8, the READ/WRITE control is placed in READ mode, and the information is synchronized with the ΦE clock.
Latched into ROM address latch. Therefore, ROM 22 is addressed at location 104. place
The data appearing at 104 is driven to the ROM's data output bus 70. Additionally, adder/incrementer 66
is enabled to perform an increment, and at the appropriate time the incremented value 105 is placed on the ROM address bus 68.
Driven back to . to address register array
The READ/WRITE signal is set to WRITE so that the incremented value 105 is written to the program counter.
mode can be switched. Therefore, at the end of this cycle, the program counter contains information 105.

この例でのROM場所104におけるデータはB7
である。これはOUT PUT SHORT−PORT7の
ための命令である。ROM−DATA BUS信号は、
ROM出力バスから主データバスへデータが転送
されるように活性化される。FETCH信号はデー
タバスの情報が命令レジスタ42へ転送されるよ
うに活性化される。それ故に、サイクルの終り
で、プログラムカウンタはコード105を含んでお
り、命令レジスタは命令B7を含んでいる。次の
サイクルの開始時に、主制御論理装置は新しい命
令B7をデコードし、これがアキユムレータから
ポート7へデータを出力するための命令であるこ
とを認識する。
The data at ROM location 104 in this example is B7
It is. This is the command for OUT PUT SHORT-PORT7. The ROM-DATA BUS signal is
Activated so that data is transferred from the ROM output bus to the main data bus. The FETCH signal is activated so that information on the data bus is transferred to the instruction register 42. Therefore, at the end of the cycle, the program counter contains code 105 and the instruction register contains instruction B7. At the beginning of the next cycle, the main control logic decodes the new instruction B7 and recognizes that this is the instruction to output data from the accumulator to port 7.

ポート7をアドレスするため、主制御論理装置
26は、最初に、ポートアドレスをデータバス2
8に置かなければならない。信号IR−Sが活性
化され、命令レジスタの下方の4ビツトがS−バ
スへ転送される。ADD信号が可能化され、それ
故に、ALUの結果は変更されずにS−バスにあ
つて、命令レジスタ42の下方の4ビツトからの
データ07である。結果バスは、RESULT−
DATA BUS CONTROL信号を用いてデータバ
スへ可能化される。それ故に、データバス28の
内容は07である。
To address port 7, main control logic 26 first transfers the port address to data bus 2.
Must be placed at 8. Signal IR-S is activated and the lower four bits of the instruction register are transferred to the S-bus. The ADD signal is enabled, so the result of the ALU is data 07 from the lower four bits of instruction register 42 on the S-bus unchanged. The result bus is RESULT−
Enabled to the data bus using the DATA BUS CONTROL signal. Therefore, the content of data bus 28 is 07.

次のサイクル中、主制御論理装置26はアキユ
ムレータ30の内容が主データバスへ駆動されう
るようにする。ポート選択論理装置20は、前の
サイクル中そのバスにあつたアドレスのポートへ
そのデータを装入するように選択される。こうす
るため、ACC−ALU信号が活性化され、それに
より、アキユムレータ30に記憶されたデータが
シフタ50へ転送されうるようにされる。シフタ
50および補数演算装置52は可能化されず、従
つて、データは、アキユムレータから変更されず
にALUへ通過する。S−バスを駆動するためな
にも要素が可能化されていないので、ALUへの
S−バス入力はすべて0である。ADD命令が
ALUへ与えられ、その結果が結果バス54に現
われる。RESULT−DATA BUS信号が可能化さ
れ、それにより、結果バスのデータがデータバス
へ転送されうるようになる。さらに、主制御論理
装置26は、ロード高入力をポート選択論理装置
20に対して活性化し、それにより、前のサイク
ル中にデータバスに現われた番号の高番号ポー
ト、タイマポート7へデータバスの内容をロード
させるようにポート選択論理装置が命令される。
During the next cycle, main control logic 26 enables the contents of accumulator 30 to be driven onto the main data bus. Port selection logic 20 is selected to place the data into the port at the address that was on the bus during the previous cycle. To do this, the ACC-ALU signal is activated, thereby allowing the data stored in the accumulator 30 to be transferred to the shifter 50. Shifter 50 and complement unit 52 are not enabled, so data passes unchanged from the accumulator to the ALU. Since no elements are enabled to drive the S-Bus, the S-Bus inputs to the ALU are all zeros. ADD instruction
ALU and the result appears on result bus 54. The RESULT-DATA BUS signal is enabled, allowing data on the result bus to be transferred to the data bus. In addition, main control logic 26 asserts a load high input to port selection logic 20, thereby causing the data bus to go to the high numbered port, timer port 7, that appeared on the data bus during the previous cycle. The port selection logic is commanded to load the contents.

データバスが前のサイクルにおいて番号07を含
んだ事実を適切にデコードした後、ポート選択論
理装置20はロード高命令を行なうように命令さ
れる。この命令に応答して、ポート選択論理装置
20はロードタイマ信号を活性化し、それによ
り、主データバス28のデータが2進タイマ36
の主タイマレジスタへ転送されうるようにされ
る。このサイクルの終りで、命令レジスタ42は
なおも機械語命令B7を含んでおり、場所105がア
ドレスレジスタ48のプログラムカウンタに記憶
される。アキユムレータ30の内容はOAであ
り、情報OAは主データバスへ転送され2進タイ
マ36へ装入されている。それ故に、2進タイマ
はデータ16進数OAを含んでおり、これは10の10
進値と等価である。ΦFクロツクの20による除算
を行なうように前に設定されており、且つ、スタ
ートするように前に可能化されており、タイマ3
6はオペレーシヨンを開始する。
After properly decoding the fact that the data bus contained number 07 in the previous cycle, port selection logic 20 is instructed to perform a load high instruction. In response to this command, port selection logic 20 activates the load timer signal so that the data on main data bus 28 is transferred to binary timer 36.
main timer register. At the end of this cycle, instruction register 42 still contains machine language instruction B7 and location 105 is stored in the program counter of address register 48. The content of the accumulator 30 is OA, and the information OA is transferred to the main data bus and loaded into the binary timer 36. Therefore, the binary timer contains the data hex OA, which is 10 of 10
Equivalent to hexadecimal value. Previously configured to divide the ΦF clock by 20 and previously enabled to start, timer 3
6 starts the operation.

2進タイマ36は、データOAの装入前に作動
している。しかし、ロードタイマ命令が2進タイ
マに与えられる時に、2進タイマは、サイクルの
終りでそのカウントを再スタートするように、プ
リスケーラ72における残留カウントをクリアす
る。最初に、それはΦFクロツクを20で割る。こ
れが行なわれるとき、それは主タイマレジスタを
1だけ減分する。それ故に、それはOAから99へ
減分する。これは200のΦFクロツクが経過する
まで継続する。これが起こるとき、TIME−
OUTパルスが割込み論理装置44へ伝達され、
その後、割込み要求が主制御論理装置26へ転送
される。
The binary timer 36 is activated before loading the data OA. However, when a load timer instruction is applied to the binary timer, the binary timer clears the residual count in prescaler 72 so that it restarts its count at the end of the cycle. First, it divides the ΦF clock by 20. When this is done, it decrements the main timer register by one. Therefore, it decrements from OA to 99. This continues until 200 ΦF clocks have elapsed. When this happens, TIME−
The OUT pulse is communicated to interrupt logic 44;
The interrupt request is then forwarded to main control logic 26.

ポート7への出力命令B7は、次の命令の取出
しが実行されてしまつて初めて完了される。各命
令は、主制御論理装置が命令シーケンスを自動的
に進むように、次の命令を取り出す責任を負つて
いる。従つて、それがなんであつても、次の命令
の取出しは、前記したようにして行なわれ、その
命令はプログラムカウンタの現在の内容であるプ
ログラム場所105に置かれる。
Output instruction B7 to port 7 is completed only after the next instruction fetch has been executed. Each instruction is responsible for fetching the next instruction so that the main control logic automatically advances through the instruction sequence. Therefore, the next instruction, whatever it is, is fetched as described above, and that instruction is placed in program location 105, which is the current contents of the program counter.

前述したことから明らかなように、本発明のマ
イクロプログラム計算機は、非常に効率的な命令
処理を行なうことができ、しかも、ストレージの
必要条件を実質的に減ずることができる。
As will be apparent from the foregoing, the microprogram computer of the present invention is capable of highly efficient instruction processing, while substantially reducing storage requirements.

上述の例は本発明の好ましい実施例であり、特
許請求の範囲に記載したように本発明の精神およ
び範囲から逸脱せずに前述のシステムに対しある
特定の変更をなしうる。そして、ある場合には、
本発明の特徴のうちのあるものを他の特徴から切
り離して使用しても有効であることがありうるこ
ともある。
The examples described above are preferred embodiments of the invention, and certain changes may be made to the systems described above without departing from the spirit and scope of the invention as set forth in the claims. And in some cases,
It may be possible that some of the features of the invention may be useful when used separately from other features.

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

添付図面の第1図は本発明によつて相互接続さ
れる機能要素を有するマイクロプログラムコンピ
ユータのブロツク線図、第2図はシステムの種々
の論理素子の間での同期したデータ転送を行なう
のに使用されるタイミング信号を例示している
図、第3図は第1図の2進タイマおよび割込み回
路の機能図、第4図は第1図に示されたタイマの
詳細ブロツク線図、第5図は割込み要求のデコー
ド実行を例示するタイミング図である。 10……マイクロ計算機、12,14,16,
18……入力出力ポート、20……ポート選択論
理装置、22……プログラムデータストレージ固
定記憶装置、24……算術論理装置(ALU)、2
6……主制御論理装置、28……データバス、3
0……アキユムレータ、32……割込み制御ポー
ト、34……2進タイマ、38……クロツク発生
器、40……スクラツチパツドレジスタ、44…
…割込み論理装置、46……外部割込みピン、5
2……増分器、54……結果バス、55……状態
バス、56……状態レジスタ、58……間接スク
ラツチパツドアドレスレジスタ、60……スクラ
ツチパツドアドレスバス、62……アドレスレジ
スタ出力バス、64……アドレスラツチ、66…
…加算器/増分器、68……アドレスバス。
FIG. 1 of the accompanying drawings is a block diagram of a microprogrammed computer having functional elements interconnected according to the invention, and FIG. Figure 3 is a functional diagram of the binary timer and interrupt circuit of Figure 1; Figure 4 is a detailed block diagram of the timer shown in Figure 1; Figure 5 is a diagram illustrating the timing signals used; The figure is a timing diagram illustrating execution of decoding of an interrupt request. 10...Micro computer, 12, 14, 16,
18... Input/output port, 20... Port selection logic device, 22... Program data storage fixed storage device, 24... Arithmetic logic unit (ALU), 2
6...Main control logic unit, 28...Data bus, 3
0...Accumulator, 32...Interrupt control port, 34...Binary timer, 38...Clock generator, 40...Scratchpad register, 44...
...Interrupt logic unit, 46...External interrupt pin, 5
2...Incrementer, 54...Result bus, 55...Status bus, 56...Status register, 58...Indirect scratchpad address register, 60...Scratchpad address bus, 62...Address register Output bus, 64...Address latch, 66...
...adder/incrementer, 68...address bus.

Claims (1)

【特許請求の範囲】 1 (a) 情報の流れの順序、タイミングおよび方
向を制御するための主制御論理装置と、データ
転送ポートを介して周辺装置とデータを交換す
る装置と、該主制御論理装置から発せられる命
令の実行を制御するマイクロプログラムを含む
プログラムストレージ装置と、そして、プログ
ラム制御の下にあるデータ語に対するオペレー
シヨンを行なう算術演算装置を有するデータ処
理システム; (b) 外部データ源からパルス信号を受けるための
割込みピン46および外部パルス信号の所定の
振巾遷移と同期される補助クロツク信号を発生
する装置を含み、又2進タイマからのタイムア
ウト信号または該割込みピン46からの入力に
応答して該主制御論理装置へ割込み要求信号を
与える割り込み論理装置;および (c) 該割込み論理装置と協働して割込み要求を処
理し、プリスケーラ論理装置72およびタイミ
ング論理装置74を含んでいる該2進タイマで
あつて;該タイミング論理装置は該プリスケー
ラ論理装置に対して除算する毎に減分され、該
プリスケーラ論理装置およびタイミング論理装
置は、該プログラムストレージ装置からの2進
タイマへのカウント信号及びプリスケーラの除
算値を選択する信号、スタート・ストツプ信
号、クロツク入力、読出しストローブ、書込み
ストローブ、および、該2進タイマが予め選択
された値までカウント・ダウンしたことを指示
するタイムアウト信号を生成させる補助カウン
ト・クロツクからなる2進タイマ制御入力のい
ずれかに応答し、これにより、2進カウンタ
は、スタート信号によつて可能化されていると
きに、該プリスケーラがカウント・クロツクを
予め選択されたカウント数に対してプリセツト
された数によつて除する毎に1カウントだけ減
少させ、該割込み論理装置に対するタイムアウ
ト信号を生成させるもの; が含まれているマイクロプログラムコンピユータ
システム。
Claims: 1. (a) a master control logic device for controlling the order, timing and direction of information flow; a device for exchanging data with a peripheral device via a data transfer port; (b) a data processing system having a program storage device containing a microprogram that controls the execution of instructions issued by the device; and an arithmetic unit that performs operations on data words under program control; (b) from an external data source; It includes an interrupt pin 46 for receiving a pulse signal and means for generating an auxiliary clock signal synchronized with a predetermined amplitude transition of the external pulse signal, and also includes a timeout signal from a binary timer or an input from the interrupt pin 46. (c) interrupt logic for processing interrupt requests in cooperation with the interrupt logic and including prescaler logic 72 and timing logic 74; the binary timer; the timing logic is decremented on each division to the prescaler logic, and the prescaler logic and timing logic are configured to count from the program storage device to the binary timer; Generates signals to select signal and prescaler divider values, start/stop signals, clock inputs, read strobes, write strobes, and timeout signal to indicate when the binary timer has counted down to a preselected value. the prescaler preselects the count clock when enabled by the start signal. a microprogrammed computer system comprising: decrementing a count by one count each time the preset count is divided by a preset number and generating a timeout signal for the interrupt logic.
JP8569378A 1977-07-15 1978-07-15 Single chip mos*lsi microcomputer Granted JPS5459851A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US81593277A 1977-07-15 1977-07-15

Publications (2)

Publication Number Publication Date
JPS5459851A JPS5459851A (en) 1979-05-14
JPS6261978B2 true JPS6261978B2 (en) 1987-12-24

Family

ID=25219217

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8569378A Granted JPS5459851A (en) 1977-07-15 1978-07-15 Single chip mos*lsi microcomputer

Country Status (5)

Country Link
JP (1) JPS5459851A (en)
DE (1) DE2831066A1 (en)
FR (1) FR2397679B1 (en)
GB (1) GB2002153B (en)
IT (1) IT1097953B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3202757A1 (en) * 1982-01-28 1983-08-04 Jurij Egorovič Moskva Čičerin Microcomputer processor
EP0377466B1 (en) * 1982-02-11 2000-03-08 Texas Instruments Incorporated Microcomputer system for digital signal processing
JPS60225959A (en) * 1984-04-25 1985-11-11 Ascii Corp Multiple-function cpu
EP2990373B1 (en) 2014-08-29 2018-10-03 Sidel S.p.a. Con Socio Unico A fluid-agitating tank assembly for a machine for filling containers

Also Published As

Publication number Publication date
DE2831066C2 (en) 1993-06-03
FR2397679B1 (en) 1988-02-26
DE2831066A1 (en) 1979-02-01
JPS5459851A (en) 1979-05-14
FR2397679A1 (en) 1979-02-09
IT1097953B (en) 1985-08-31
GB2002153A (en) 1979-02-14
GB2002153B (en) 1982-04-28
IT7825721A0 (en) 1978-07-14

Similar Documents

Publication Publication Date Title
US4348743A (en) Single chip MOS/LSI microcomputer with binary timer
US4589067A (en) Full floating point vector processor with dynamically configurable multifunction pipelined ALU
US4819164A (en) Variable frequency microprocessor clock generator
US4989113A (en) Data processing device having direct memory access with improved transfer control
US5117498A (en) Processer with flexible return from subroutine
US4394736A (en) Data processing system utilizing a unique two-level microcoding technique for forming microinstructions
US4229801A (en) Floating point processor having concurrent exponent/mantissa operation
US5440747A (en) Data processor with control logic for storing operation mode status and associated method
US5455923A (en) Memory system for loading peripherals on power up
US4077060A (en) Asymmetrical multiprocessor system
US5305452A (en) Bus controller with different microprocessor and bus clocks and emulation of different microprocessor command sequences
US3972025A (en) Expanded memory paging for a programmable microprocessor
JPS5925254B2 (en) Digital data processing equipment
JP3681182B2 (en) Scalable central processing unit
US4177511A (en) Port select unit for a programmable serial-bit microprocessor
JPS6319854Y2 (en)
EP0010197B1 (en) Data processing system for interfacing a main store with a control sectron and a data processing section
US5241637A (en) Data processor microsequencer having multiple microaddress sources and next microaddress source selection
EP0010196B1 (en) Control circuit and process for digital storage devices
US4649470A (en) Data processing system
JPS6261978B2 (en)
US5125094A (en) Apparatus for using an ALU as a temporary storage for data during an otherwise idle cycle of the ALU
US5526500A (en) System for operand bypassing to allow a one and one-half cycle cache memory access time for sequential load and branch instructions
US3961313A (en) Computer control apparatus
US4631669A (en) Data processing system having no bus utilization priority control