JPH07302255A - Semiconductor integrated circuit device, processor for emulating the same and emulator - Google Patents

Semiconductor integrated circuit device, processor for emulating the same and emulator

Info

Publication number
JPH07302255A
JPH07302255A JP6096039A JP9603994A JPH07302255A JP H07302255 A JPH07302255 A JP H07302255A JP 6096039 A JP6096039 A JP 6096039A JP 9603994 A JP9603994 A JP 9603994A JP H07302255 A JPH07302255 A JP H07302255A
Authority
JP
Japan
Prior art keywords
data processing
bus
interrupt
cpu
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP6096039A
Other languages
Japanese (ja)
Other versions
JP3839068B2 (en
Inventor
Naomiki Mitsuishi
直幹 三ッ石
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP09603994A priority Critical patent/JP3839068B2/en
Publication of JPH07302255A publication Critical patent/JPH07302255A/en
Application granted granted Critical
Publication of JP3839068B2 publication Critical patent/JP3839068B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To provide a semiconductor integrated circuit device capable of performing data transfer by a lot of interruption and intrinsic processings for respective users and improving processing efficiency and to provide an emulator capable of improving the debugging efficiency of the semiconductor integrated circuit device further. CONSTITUTION:This device is a single-chip microcomputer and is constituted of the function blocks of CPUs 1 and 2, ROMs 1 and 2, RAMs 1 and 2, a RAMP, a timer, a pulse output circuit, an SCI, an A/D converter, an TOP 0-the TOP 11, an interruption controller, a bus controller and a clock oscillator. For the function blocks, the CPU 1, the ROM 1 and the RAM 1 are connected to an TAB 1 and an IDB 1, the CPU 2, the ROM 2 and the RAM 2 are connected to the IAB 2 and the IDB 2 and the RAMP is connected to a PAB and a PDB. Then, the CPU 1 and the CPU 2 are parallelly operable by the independent interfaces of the TAB 1, the TAB 2 and the PAB and the IDB 1, the IDB 2 and the PDB.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、半導体集積回路装置に
関し、たとえばシングルチップマイクロコンピュータに
おける多数の割込によるデータ転送および使用者毎の固
有の処理を可能とし、かつ処理効率を向上させることが
でき、さらにこのシングルチップマイクロコンピュータ
のデバック効率の向上が可能な半導体集積回路装置およ
びそのエミュレーション用プロセッサならびにエミュレ
ータに適用して有効な技術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a semiconductor integrated circuit device, and for example, enables data transfer by a large number of interrupts in a single chip microcomputer and unique processing for each user, and improves processing efficiency. The present invention relates to a technology which is effective when applied to a semiconductor integrated circuit device capable of improving the debugging efficiency of the single-chip microcomputer, a processor for emulation thereof, and an emulator.

【0002】[0002]

【従来の技術】たとえば、シングルチップマイクロコン
ピュータは、昭和59年11月30日、オーム社発行の
『LSIハンドブック』P540およびP541に記載
されるように、中央処理装置(CPU)を中心にしてプ
ログラム保持用のROM(リードオンリメモリ)、デー
タ保持用のRAM(ランダムアクセスメモリ)、および
データの入出力を行うための入出力回路などの機能ブロ
ックが一つの半導体基板上に形成されてなる。
2. Description of the Related Art For example, a single-chip microcomputer is a program centered on a central processing unit (CPU) as described in "LSI Handbook" P540 and P541 issued by Ohmsha, Ltd. on November 30, 1984. Functional blocks such as a holding ROM (read only memory), a data holding RAM (random access memory), and an input / output circuit for inputting / outputting data are formed on one semiconductor substrate.

【0003】このようなシングルチップマイクロコンピ
ュータに、ダイレクトメモリアクセスコントローラ(D
MAC)を内蔵し、CPUとは独立にデータ転送を内蔵
したものに、平成5年3月、(株)日立製作所発行『H
8/3003 ハードウェアマニュアル』または特願平
4−137954号がある。このDMACは、割込要求
によって起動でき、リピートモード、ブロック転送モー
ドなどを行うことができ、ステッピングモータの制御や
プリンタの印字データ制御に好適である。たとえば、最
大8チャネルの転送を行うことができる。
In such a single chip microcomputer, a direct memory access controller (D
Incorporating MAC) and data transfer independent of the CPU, the "H" issued by Hitachi, Ltd. in March 1993
8/3003 hardware manual ”or Japanese Patent Application No. 4-137954. The DMAC can be activated by an interrupt request, can perform a repeat mode, a block transfer mode, and the like, and is suitable for controlling a stepping motor and print data of a printer. For example, a maximum of 8 channels can be transferred.

【0004】また、DMACの転送はCPUと独立して
いるために、データ転送に必要なサイクル数のみCPU
を停止するのみでよく、CPUは実行中の処理を継続で
きる。たとえば、バイトデータの転送、転送元・転送先
アドレスをインクリメントする場合、前記の例では、デ
ッドサイクル1ステートを含めてデータ転送6ステート
である。
Further, since the DMAC transfer is independent of the CPU, only the number of cycles required for data transfer is controlled by the CPU.
The CPU can continue the process being executed. For example, in the case of transferring byte data and incrementing the transfer source / transfer destination address, in the above example, the data transfer is 6 states including the dead cycle 1 state.

【0005】[0005]

【発明が解決しようとする課題】ところが、前記のよう
なDMACにおいては、転送元アドレス、転送先アドレ
ス、転送カウンタ、制御レジスタを各チャネルに持つた
めに、多数のチャネルのデータ転送を行おうとすれば、
前記レジスタを多数組み設けねばならず、DMACの、
ひいては半導体集積回路装置全体の論理的・物理的規模
を増大させてしまう。さらに、規模の増大は製造費用を
増大させてしまう。すなわち、割込要因の全て、あるい
は大多数のデータ転送を行うことは困難である。
However, in the above-described DMAC, since each channel has a transfer source address, a transfer destination address, a transfer counter, and a control register, it is attempted to perform data transfer of many channels. If
It is necessary to provide a large number of the registers, and the DMAC's
As a result, the logical and physical scale of the entire semiconductor integrated circuit device is increased. Furthermore, the increase in scale increases the manufacturing cost. That is, it is difficult to transfer all or most of the interrupt factors.

【0006】一方、このようなレジスタを、記憶密度が
高い汎用のRAM上に配置し、論理的・物理的規模の増
大を防いだデータ転送装置、いわゆるデータトランスフ
ァコントローラ(DTC)を内蔵したものに、昭和63
年12月、(株)日立製作所発行『H8/532 ハー
ドウェアマニュアル』などがある。このDTCでは、実
質的に全ての割込要因によってデータ転送を行うことが
できる。
On the other hand, such a register is arranged on a general-purpose RAM having a high storage density, so that a so-called data transfer controller (DTC), which is a data transfer device that prevents an increase in logical and physical scale, is built in. , Showa 63
December, "H8 / 532 Hardware Manual" published by Hitachi, Ltd., etc. In this DTC, data transfer can be performed by virtually all interrupt factors.

【0007】しかしながら、転送情報を保持するレジス
タを汎用のRAM上に配置したために、データ転送に先
だって、このレジスタをDTCに読み込み、この読み込
んだ内容に従ってデータ転送を行い、さらにデータ転送
によって更新されたレジスタ情報をRAMに退避する必
要がある。この期間はCPUを停止しなければならず、
データ転送に比較して、大きな時間をレジスタの読み込
み・退避に費やしてしまう。
However, since the register holding the transfer information is arranged on the general-purpose RAM, this register is read into the DTC prior to the data transfer, the data transfer is performed according to the read contents, and the data is updated by the data transfer. It is necessary to save the register information in RAM. During this period the CPU must be stopped,
Compared with data transfer, a large amount of time is spent reading and saving registers.

【0008】このため、シングルチップマイクロコンピ
ュータまたは半導体集積回路装置全体の処理効率を低下
させてしまう。たとえば、バイトデータの転送、転送元
・転送先アドレスをインクリメントする場合、前記の例
では、データ転送5ステートに対してレジスタの読み込
み・退避に30ステートを要し、合計35ステートの期
間CPUは停止することになる。
Therefore, the processing efficiency of the single-chip microcomputer or the entire semiconductor integrated circuit device is reduced. For example, in the case of transferring byte data and incrementing the transfer source / transfer destination address, in the above example, 30 states are required to read / save registers from the data transfer 5 states, and the CPU is stopped for a total of 35 states. Will be done.

【0009】また、DMACあるいはDTCの動作の制
御は、制御レジスタの制御ビットの内容によって指定さ
れるものであり、転送モードや起動要因を選択できるの
みである。この制御ビットのビット数を増やせば、転送
データの加算(チェックサム)や、パリティ計算などを
行うことも可能であるが、使用者毎に固有の処理を行わ
せることは困難である。また、多様な処理を実現しよう
とすれば、これを制御する回路の論理的・物理的規模が
増加してしまう。
The control of the operation of the DMAC or DTC is specified by the content of the control bit of the control register, and only the transfer mode and the activation factor can be selected. If the number of control bits is increased, transfer data addition (checksum) and parity calculation can be performed, but it is difficult for each user to perform unique processing. Further, if various processes are to be realized, the logical and physical scale of the circuit that controls the processes will increase.

【0010】当然、CPUを利用して、データ転送に付
随する使用者毎の固有の処理を行うことができる。たと
えば、割込が発生したときに、主たる処理を中断して所
望の処理を行うものである。しかしながら、CPUが行
うべき主たる処理を中断しなければならなくなってしま
い、またCPUの内部状態の退避・復帰を行わなければ
ならないために、オーバヘッドが発生し、シングルチッ
プマイクロコンピュータ全体の処理性能を向上すること
ができなくなってしまう。
Naturally, the CPU can be used to perform the processing unique to each user associated with the data transfer. For example, when an interrupt occurs, the main processing is interrupted and desired processing is performed. However, the main processing to be performed by the CPU has to be interrupted, and the internal state of the CPU must be saved / restored, which causes overhead and improves the overall processing performance of the single-chip microcomputer. You will not be able to do it.

【0011】そこで、本発明の目的は、多数の割込によ
るデータ転送および使用者毎の固有の処理を可能とし、
かつ処理効率を向上させることができるシングルチップ
マイクロコンピュータまたは半導体集積回路装置を提供
することにある。
Therefore, an object of the present invention is to enable data transfer by a large number of interrupts and unique processing for each user,
Another object of the present invention is to provide a single-chip microcomputer or semiconductor integrated circuit device capable of improving processing efficiency.

【0012】さらに、このシングルチップマイクロコン
ピュータのデバック効率を向上させることができる半導
体集積回路装置のエミュレーション用プロセッサならび
にエミュレータを提供するものである。
Further, the present invention provides a processor and an emulator for emulation of a semiconductor integrated circuit device which can improve the debugging efficiency of this single chip microcomputer.

【0013】本発明の前記ならびにその他の目的と新規
な特徴は、本明細書の記述および添付図面から明らかに
なるであろう。
The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

【0014】[0014]

【課題を解決するための手段】本願において開示される
発明のうち、代表的なものの概要を簡単に説明すれば、
以下のとおりである。
Among the inventions disclosed in the present application, a brief description will be given to the outline of typical ones.
It is as follows.

【0015】すなわち、本発明の半導体集積回路装置
は、第2のデータ処理装置を設け、第1のデータ処理装
置の使用する第1のバスと第2のデータ処理装置の使用
する第2のバスを分離可能とし、第1のデータ処理装置
のバス使用と第2のデータ処理装置のバス使用を同時に
行うことを可能とし、さらに第1のデータ処理装置と第
2のデータ処理装置のそれぞれの動作に必要な機能ブロ
ックまたはモジュールをそれぞれの第1または第2のバ
スによって接続し、特に第1のデータ処理装置と第2の
データ処理装置が実行すべきプログラムを格納可能な第
1の読み出し可能な記憶手段と第2の読み出し可能な記
憶手段を設け、第1のデータ処理装置が第1の読み出し
可能な記憶手段から、第2のデータ処理装置が第2の読
み出し可能な記憶手段からプログラムを読み出して動作
するようにしたものである。
That is, the semiconductor integrated circuit device of the present invention is provided with the second data processing device, and the first bus used by the first data processing device and the second bus used by the second data processing device. Of the first data processing device and the bus of the second data processing device can be used at the same time, and the operation of each of the first data processing device and the second data processing device can be separated. A first readable and connectable functional block or module required for each by a respective first or second bus, in particular a program capable of being executed by the first data processing device and the second data processing device. A storage means and a second readable storage means are provided, and the first data processing device is a first readable storage device and the second data processing device is a second readable storage device. It is obtained so as to operate by reading the program from.

【0016】また、第1、第2のデータ処理装置と、こ
れらに共通の読み出し可能な記憶手段をバスによって相
互に接続し、第1のデータ処理装置は、単位時間に実行
可能な命令より大きい量の命令をバスを使用して記憶手
段から読み出し、連続的にバスを使用して記憶手段を読
み出すことなく、第1のデータ処理装置の命令実行速度
の低下を最小限として第2のデータ処理装置が命令を記
憶手段から読み出すようにしたものである。
Further, the first and second data processing devices and a readable storage means common to them are connected to each other by a bus, and the first data processing device is larger than an instruction executable in a unit time. A second data processing that minimizes a reduction in instruction execution speed of the first data processing device without reading the storage means using the bus and reading the storage means continuously using the bus. The device reads out the command from the storage means.

【0017】この場合に、割込要因のうち、第1の要因
は第1のデータ処理装置に、第2の要因は第2のデータ
処理装置に要求可能にするものであり、第1のデータ処
理装置のアドレス空間は第2のデータ処理装置のアドレ
ス空間を包含するようにするとよく、また入出力手段は
第1のデータ処理装置と第2のデータ処理装置からリー
ド/ライト可能とし、2つのデータ処理装置の動作を調
停する機能を設けるようにしたものである。
In this case, among the interrupt factors, the first factor makes it possible to request the first data processing device and the second factor makes it possible to request the second data processing device. The address space of the processing device may include the address space of the second data processing device, and the input / output means is readable / writable by the first data processing device and the second data processing device. A function of arbitrating the operation of the data processing device is provided.

【0018】また、この半導体集積回路装置を評価する
ためのエミュレーション用プロセッサは、第1、第2の
データ処理装置が排他的に動作するバスをいずれのデー
タ処理装置が使用しているかを示す信号を出力し、第
1、第2のデータ処理装置を停止するための第1、第2
のブレーク割込入力端子を有するものである。
The emulation processor for evaluating the semiconductor integrated circuit device is provided with a signal indicating which data processing device uses the bus on which the first and second data processing devices operate exclusively. For outputting the first and second data processing devices to stop the first and second data processing devices.
It has a break interrupt input terminal.

【0019】さらに、このプロセッサを搭載したエミュ
レータは、第1、第2のデータ処理装置の動作情報を同
時に記憶手段に蓄積するか、一方のデータ処理装置の動
作情報を選択的に記憶手段に蓄積するかをシステム開発
装置からの指定に基づいて選択する手段を有したり、ま
たは第1、第2のデータ処理装置にブレーク割込を要求
する条件をシステム開発装置からの指定に基づいて独立
に設定する手段を有するものである。
Further, the emulator equipped with this processor stores the operation information of the first and second data processing devices in the storage means at the same time, or selectively stores the operation information of one of the data processing devices in the storage means. Whether to perform the break interruption based on the designation from the system development device, or independently to the condition for requesting the break interrupt to the first and second data processing devices based on the designation from the system development device. It has a means for setting.

【0020】[0020]

【作用】前記した半導体集積回路装置によれば、2つの
データ処理装置に並立したバスによって独立した2つの
読み出し可能な記憶手段に格納した命令のリード可能に
したり、バスの幅を拡張してデータ処理装置が単位時間
に実行可能な命令数以上の命令をリード可能にしたり、
2つのデータ処理装置を並立的に動作可能な命令を供給
する機能を内蔵することにより、複数の記憶手段を同時
に選択可能とし、複数の記憶手段の同時書込みまたは同
時読み出しを行うことによって割込によるデータ処理の
チャネル数の制約をなくし、さらにデータ処理内容を任
意とすることができる。
According to the above-described semiconductor integrated circuit device, the instructions stored in the two readable storage means independent from each other can be read by the buses arranged in parallel in the two data processing devices, or the width of the bus can be expanded to read the data. Allow the processor to read more instructions than can be executed in a unit time,
By incorporating a function for supplying an instruction capable of operating two data processing devices side by side, a plurality of storage means can be selected at the same time, and by simultaneously writing or reading the plurality of storage means, an interrupt is generated. It is possible to eliminate the restriction on the number of channels for data processing and to set the content of data processing arbitrarily.

【0021】また、第1、第2のデータ処理装置が同時
に動作することにより、シングルチップマイクロコンピ
ュータまたは半導体集積回路装置の処理速度を向上する
ことができる。
Further, since the first and second data processing devices operate simultaneously, the processing speed of the single chip microcomputer or the semiconductor integrated circuit device can be improved.

【0022】さらに、エミュレーション用プロセッサ、
およびこれを搭載したエミュレータによれば、第1のブ
レーク割込によって第1のデータ処理装置を停止し、ま
た第2のブレーク割込によって第2のデータ処理装置を
停止でき、このように2つのデータ処理装置を独立に停
止する割込を有することにより、デバック効率を向上す
ることができる。
Further, an emulation processor,
Also, according to the emulator equipped with the same, the first data processor can be stopped by the first break interrupt, and the second data processor can be stopped by the second break interrupt. By having an interrupt that independently stops the data processing device, debug efficiency can be improved.

【0023】[0023]

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

【0024】(実施例1)図1は本発明の一実施例であ
るシングルチップマイクロコンピュータを示すブロック
図、図2は本実施例のシングルチップマイクロコンピュ
ータにおける全体のアドレスマップの説明図、図3はシ
ングルチップマイクロコンピュータのバスの接続状態の
ブロック図、図4は割込コントローラの概略ブロック
図、図5は割込要求ビットおよび割込許可回路の概略ブ
ロック図、図6はバスの動作タイミング図、図7は低消
費電力状態制御回路の概略ブロック図、図8は入出力ポ
ートを制御するレジスタ構成の説明図、図9は入出力ポ
ートの概略ブロック図、図10はPROMのアドレスマ
ップ、図11はPROMモードの主要部のブロック図、
図12はテストモードの主要部のブロック図、図13は
エミュレーション用プロセッサの概略ブロック図、図1
4はエミュレータの概略ブロック図、図15は本実施例
におけるシングルチップマイクロコンピュータの変形例
を示すブロック図である。
(Embodiment 1) FIG. 1 is a block diagram showing a single-chip microcomputer which is an embodiment of the present invention, FIG. 2 is an explanatory view of an entire address map in the single-chip microcomputer of this embodiment, and FIG. Is a block diagram of a bus connection state of a single-chip microcomputer, FIG. 4 is a schematic block diagram of an interrupt controller, FIG. 5 is a schematic block diagram of an interrupt request bit and an interrupt permission circuit, and FIG. 6 is an operation timing diagram of the bus. 7, FIG. 7 is a schematic block diagram of a low power consumption state control circuit, FIG. 8 is an explanatory diagram of a register configuration for controlling input / output ports, FIG. 9 is a schematic block diagram of input / output ports, FIG. 10 is a PROM address map, and FIG. 11 is a block diagram of the main part of the PROM mode,
12 is a block diagram of the main part of the test mode, FIG. 13 is a schematic block diagram of the emulation processor, and FIG.
4 is a schematic block diagram of the emulator, and FIG. 15 is a block diagram showing a modification of the single-chip microcomputer in this embodiment.

【0025】まず、図1により本実施例のシングルチッ
プマイクロコンピュータの構成を説明する。
First, the configuration of the single-chip microcomputer of this embodiment will be described with reference to FIG.

【0026】本実施例のシングルチップマイクロコンピ
ュータは、中央処理装置(CPU1:第1のデータ処理
装置、CPU2:第2のデータ処理装置)、リードオン
リメモリ(ROM1:第1の読み出し可能な記憶手段、
ROM2:第2の読み出し可能な記憶手段)、ランダム
アクセスメモリ(RAM1、RAM2、RAMP)、タ
イマ、パルス出力回路、シリアルコミュニケーションイ
ンタフェース(SCI)、A/D変換器(A/D)、入
出力ポート(IOP0〜IOP11:データ入出力手
段)、割込コントローラ(割込制御手段)、バスコント
ローラ(バス制御手段)、クロック発振器の機能ブロッ
ク(またはモジュール)から構成され、一つの半導体基
板上に形成されている。
The single-chip microcomputer of this embodiment includes a central processing unit (CPU1: first data processing device, CPU2: second data processing device), read-only memory (ROM1: first readable storage means). ,
ROM2: second readable storage means), random access memory (RAM1, RAM2, RAMP), timer, pulse output circuit, serial communication interface (SCI), A / D converter (A / D), input / output port (IOP0 to IOP11: data input / output means), an interrupt controller (interrupt control means), a bus controller (bus control means), and a functional block (or module) of a clock oscillator, which are formed on one semiconductor substrate. ing.

【0027】これらの機能ブロックは、内部バスによっ
て相互に接続される。内部バスはアドレスバス、データ
バスの他、リード信号、ライト信号を含み、さらにバス
サイズ信号あるいはシステムクロックを含んでもよい。
この内部アドレスバスには、IAB1(第1のバス)、
IAB2(第2のバス)、PAB(第3のバス)が存在
し、また内部データバスにはIDB1(第1のバス)、
IDB2(第2のバス)、PDB(第3のバス)が存在
する。この内部データバスIDB1、IDB2、PDB
は16ビット構成である。また、CPU1、CPU2の
命令は16ビット単位としている。
These functional blocks are connected to each other by an internal bus. The internal bus includes a read signal and a write signal in addition to the address bus and the data bus, and may further include a bus size signal or a system clock.
This internal address bus includes IAB1 (first bus),
There are IAB2 (second bus) and PAB (third bus), and IDB1 (first bus) as the internal data bus,
There are IDB2 (second bus) and PDB (third bus). This internal data bus IDB1, IDB2, PDB
Has a 16-bit configuration. The instructions of CPU1 and CPU2 are in 16-bit units.

【0028】なお、CPU1、ROM1、RAM1はI
AB1、IDB1に接続され、CPU2、ROM2、R
AM2はIAB2、IDB2に接続されている点で相違
される。また、RAMPはPAB、PDBに接続され
る。このIAB1、IAB2、PABはバスコントロー
ラでインタフェースされ、同様にIDB1、IDB2、
PDBはバスコントローラでインタフェースされる。
The CPU 1, ROM 1 and RAM 1 are I
Connected to AB1 and IDB1, CPU2, ROM2, R
AM2 is different in that it is connected to IAB2 and IDB2. RAMP is connected to PAB and PDB. These IAB1, IAB2 and PAB are interfaced by a bus controller, and similarly, IDB1, IDB2,
The PDB is interfaced with the bus controller.

【0029】また、PAB、PDBはバスコントロー
ラ、RAMP、タイマ、パルス出力回路、SCI、A/
D変換器、割込コントローラ、IOP0〜11に接続さ
れる。CPU1、CPU2のいずれか一方がPAB、P
DBを使用して、これらをリード/ライトできる。割込
コントローラは、タイマ、SCI、入出力ポートの出力
する割込信号を入力し、CPU1またはCPU2に割込
要求信号とベクタ番号を出力する。
PAB and PDB are bus controller, RAMP, timer, pulse output circuit, SCI, A /
It is connected to the D converter, the interrupt controller, and IOPs 0-11. One of CPU1 and CPU2 is PAB, P
These can be read / written using the DB. The interrupt controller inputs an interrupt signal output from a timer, SCI and an input / output port, and outputs an interrupt request signal and a vector number to the CPU1 or CPU2.

【0030】入出力ポートは、外部バス信号、入出力回
路の入出力信号と兼用とされている。IOP0〜3はア
ドレスバス出力、IOP4、5はデータバス入出力、I
OP6はバス制御信号入出力信号と兼用されている。外
部アドレス、外部データは、それぞれこれらの入出力ポ
ートに含まれるバッファ回路を介してIAB1、IDB
1と接続されている。PAB、PDBは入出力ポートの
レジスタをリード/ライトするために使用し、外部バス
とは直接の関係はない。
The input / output port is also used as an external bus signal and an input / output signal of the input / output circuit. IOP0-3 are address bus outputs, IOP4, 5 are data bus input / output, IOP
OP6 is also used as a bus control signal input / output signal. The external address and external data are transferred to the IAB1 and IDB via buffer circuits included in these input / output ports.
It is connected to 1. PAB and PDB are used to read / write the register of the input / output port and have no direct relation with the external bus.

【0031】このバス制御信号出力は、アドレスストロ
ーブ、ハイ/ロウデータストローブ、リードストロー
ブ、ライトストローブ、バスアクノリッジ信号などがあ
り、またバス制御入力信号にはウェイト信号、バスリク
エスト信号などがある。これらの入出力信号は図示はさ
れない。外部バス拡張を行うことは、動作モードなどで
選択され、これらの入出力ポートの機能も選択される。
The bus control signal output includes address strobes, high / low data strobes, read strobes, write strobes, bus acknowledge signals, and the like, and bus control input signals include wait signals, bus request signals, and the like. These input / output signals are not shown. Expansion of the external bus is selected depending on the operation mode, and the functions of these input / output ports are also selected.

【0032】また、IOP7はタイマ入出力、IOP8
はパルス出力、IOP9はSCI入出力、IOP10は
アナログ入力、IOP11は外部割込要求(IRQ)入
力と兼用されている。なお、タイマ、SCI、A/D変
換器とIOP7、IOP9、IOP10との入出力信号
は図示はされない。
IOP7 is a timer input / output, IOP8
Is also a pulse output, IOP9 is an SCI input / output, IOP10 is an analog input, and IOP11 is also used as an external interrupt request (IRQ) input. Input / output signals of the timer, SCI, A / D converter and IOP7, IOP9, IOP10 are not shown.

【0033】そのほか、電源端子Vcc、Vss、アナ
ログ電源端子AVcc、AVss、リセット入力RE
S、スタンバイ入力STBY、割込入力NMI、クロッ
ク入力EXTAL、XTAL、動作モード入力MD0、
MD1、MD2などの入力端子がある。
In addition, power supply terminals Vcc and Vss, analog power supply terminals AVcc and AVss, reset input RE
S, standby input STBY, interrupt input NMI, clock inputs EXTAL, XTAL, operation mode input MD0,
There are input terminals such as MD1 and MD2.

【0034】パルス出力回路は、タイマから与えられる
トリガ信号に従って、図示はされないレジスタ(ND
R)に保持した内容をIOP8と兼用の端子から出力す
る。
The pulse output circuit has a register (ND) (not shown) according to a trigger signal given from a timer.
The content held in R) is output from the terminal which is also used as IOP8.

【0035】次に、図2によりシングルチップマイクロ
コンピュータのアドレスマップを説明する。
Next, the address map of the single-chip microcomputer will be described with reference to FIG.

【0036】たとえば、CPU1は4Gバイトのアドレ
ス空間、CPU2は64kバイトのアドレス空間を持
つ。また、ROM1、RAM1はCPU1のアドレス空
間上にのみ、ROM2、RAM2はCPU2のアドレス
空間上にのみ存在する。斜線部で示されるRAMP、お
よびタイマ、パルス出力回路、SCI、A/D変換器、
IOP0〜11、割込コントローラの各機能ブロックの
アドレス、すなわち内部レジスタは、1つの物理的アド
レスに対し、それぞれのCPUのアドレス空間上で固有
の論理的アドレスを有する。
For example, CPU1 has an address space of 4 Gbytes, and CPU2 has an address space of 64 kbytes. The ROM1 and RAM1 exist only in the address space of the CPU1, and the ROM2 and RAM2 exist only in the address space of the CPU2. RAMP indicated by shaded areas, timer, pulse output circuit, SCI, A / D converter,
The addresses of the IOPs 0 to 11 and the functional blocks of the interrupt controller, that is, the internal registers have a unique logical address in the address space of each CPU for one physical address.

【0037】このアドレスは、それぞれアドレスで対応
付けられており、具体的にはCPU2のアドレスの上位
にH’FFFFを付加したアドレスがCPU1のアドレ
スになる。たとえば、RAMPの先頭アドレスはCPU
1ではH’FFFFFB80、CPU2ではH’FB8
0である。
The addresses are associated with each other. Specifically, the address obtained by adding H'FFFF to the upper address of the CPU 2 becomes the address of the CPU 1. For example, the start address of RAMP is CPU
H'FFFFFB80 for 1 and H'FB8 for CPU2
It is 0.

【0038】すなわち、CPU1はROM1、RAM
1、RAMP、内部レジスタをリード/ライトでき、C
PU2はROM2、RAM2、RAMP、内部レジスタ
をリード/ライトできる。
That is, the CPU 1 is a ROM 1 and a RAM
1, RAMP, internal register can be read / written, C
PU2 can read / write ROM2, RAM2, RAMP, and an internal register.

【0039】次に、図3により、このシングルチップマ
イクロコンピュータのアドレスバス、データバスの接続
状態を説明する。
Next, referring to FIG. 3, the connection state of the address bus and the data bus of this single chip microcomputer will be described.

【0040】図3において、I/Oには図1のタイマ、
パルス出力回路、SCI、A/D変換器、IOP0〜1
1、割込コントローラの各機能ブロックを含む。クロッ
ク発振器はバスと接続されていないので省略する。
In FIG. 3, the I / O is the timer of FIG.
Pulse output circuit, SCI, A / D converter, IOP0 to 1
1. Includes each functional block of the interrupt controller. The clock oscillator is omitted because it is not connected to the bus.

【0041】アドレスバス、データバスとして、CPU
1、ROM1、RAM1、外部を接続するIAB1、ま
たCPU2、ROM2、RAM2を接続するIAB2、
さらにRAMP、I/Oを接続するPABがある。この
ようなアドレスバス、データバスはバスコントローラ
(BSC)でインタフェースされている。
CPU as an address bus and a data bus
1, ROM1, RAM1, IAB1 for connecting the outside, and IAB2 for connecting CPU2, ROM2, RAM2,
There is also a PAB that connects RAMP and I / O. Such address bus and data bus are interfaced by a bus controller (BSC).

【0042】たとえば、CPU1がROM1からプログ
ラムをリードする場合、またはRAM1とのデータのリ
ード/ライトする場合、IAB1、IDB1を使用して
動作が行われる。このCPU1はPAB、PDBを使用
しない。
For example, when the CPU 1 reads a program from the ROM 1 or reads / writes data from / to the RAM 1, the operation is performed using the IAB1 and IDB1. This CPU 1 does not use PAB or PDB.

【0043】一方、CPU2がROM2からプログラム
をリードする場合、またはRAM2とのデータのリード
/ライトする場合、IAB2、IDB2を使用して動作
が行われる。このCPU2はPAB、PDBを使用しな
い。このとき、CPU1とCPU2は互いに独立したバ
スを用いて動作し、並列に動作することができる。
On the other hand, when the CPU 2 reads a program from the ROM 2 or when reading / writing data from / to the RAM 2, the operation is performed using the IAB2 and IDB2. This CPU 2 does not use PAB or PDB. At this time, the CPU 1 and the CPU 2 operate using buses independent of each other and can operate in parallel.

【0044】また、CPU1とCPU2のいずれか一方
が、RAMPまたはI/Oとのデータのリード/ライト
を行う場合、バス権調停が行われる。この場合に、CP
U2によるバス権要求がCPU1によるバス権要求より
優先される。このバス権調停は、IAB1/IAB2に
示されるアドレスとCPU1/2が出力するコマンド信
号によって、バスコントローラが行う。コマンド信号に
はリード要求、ライト要求、サイズ信号等を含む。
When either the CPU 1 or the CPU 2 reads / writes data from / to the RAMP or I / O, bus arbitration is performed. In this case, CP
The bus right request by U2 has priority over the bus right request by CPU1. This bus arbitration is performed by the bus controller in accordance with the address indicated by IAB1 / IAB2 and the command signal output from CPU1 / 2. The command signal includes a read request, a write request, a size signal, and the like.

【0045】一方がRAMPまたはI/Oとのデータの
リード/ライト中に、他方がRAMPまたはI/Oとの
データのリード/ライトを行おうとすると、後者は前者
のリード/ライトが終了するまで、バスコントローラか
ら待機信号を与えられ、待機状態とされる。たとえば、
CPU2がRAMPまたはI/Oとのデータのリード/
ライトを行っている間、CPU1はROM1、RAM1
のリード/ライトを行うことができる。
When one tries to read / write data with RAMP or I / O while the other reads / writes data with RAMP or I / O, the latter will wait until the former read / write is completed. A standby signal is given from the bus controller to put it in a standby state. For example,
CPU2 reads / reads data from RAMP or I / O
While writing, CPU1 is ROM1, RAM1
Can be read / written.

【0046】さらに、CPU1とCPU2が、同時にR
AMPまたはI/Oとのデータのリード/ライトを行お
うとした場合、一方のCPUは停止状態にすることにな
るが、プログラムをRAMPまたはI/Oには配置しな
いことによって、RAMPまたはI/Oとのデータのリ
ード/ライトをデータのみに限定して頻度を低下するこ
とができる。
Further, the CPU1 and the CPU2 simultaneously read the R
When an attempt is made to read / write data from / to the AMP or I / O, one CPU is brought into a stopped state, but the program is not placed in the RAMP or I / O, so that the RAMP or I / O It is possible to reduce the frequency by limiting the read / write of data to and from only the data.

【0047】この場合に、リードした命令に基づいてデ
ータのリード/ライトを行うのであるから、命令のリー
ドとデータのリード/ライトの回数の比は1/2以上に
はならない。また、データのリード/ライト命令で全て
のプログラムが構成されることはないから、前記の比は
さらに小さくできる。一般的には1/4〜1/5程度で
あると考えられる。この実施例中に記載されるプログラ
ムによっても同様であることが示される。従って、CP
U1とCPU2の並列動作性を高めることができる。
In this case, since the data is read / written based on the read instruction, the ratio of the number of times the instruction is read and the number of times the data is read / written does not exceed 1/2. Further, since the entire program is not constructed by the data read / write command, the ratio can be further reduced. It is generally considered to be about 1/4 to 1/5. The program described in this example shows the same. Therefore, CP
The parallel operability of U1 and CPU2 can be improved.

【0048】このような並列動作を有効に利用するため
には、CPU1が全体的な設定と、ROM1、RAM1
あるいは外部のデバイスを用いた主たるプログラム処理
を行い、CPU2がI/Oの逐次的な制御を行うように
するとよい。また、CPUの命令をROM1またはRO
M2に配置し、作業領域をRAM1またはRAM2に配
置するとよい。
In order to effectively use such parallel operation, the CPU 1 sets the overall settings and the ROM 1 and RAM 1
Alternatively, main program processing using an external device may be performed, and the CPU 2 may sequentially control I / O. In addition, the instructions of the CPU are stored in the ROM 1 or RO.
The work area may be arranged in M1 and the work area may be arranged in RAM1 or RAM2.

【0049】次に、図4により割込コントローラを詳細
に説明する。
Next, the interrupt controller will be described in detail with reference to FIG.

【0050】たとえば、割込要因には内部割込、外部割
込の2種類があり、それぞれ割込要因フラグを有する。
この内部割込の要因フラグは、タイマ、SCI、A/D
変換器の入出力回路が所定の状態になったときに“1”
にセットされ、また外部割込の要因フラグは、外部割込
入力端子が所定のレベルになったとき、または所定の信
号変化が発生したときに“1”にセットされる。この割
込要因フラグは、CPU1/2のライト動作によって
“0”にクリアされる。
For example, there are two types of interrupt factors, an internal interrupt and an external interrupt, each having an interrupt factor flag.
The factor flags of this internal interrupt are timer, SCI, A / D
"1" when the input / output circuit of the converter is in the specified state
The external interrupt factor flag is set to "1" when the external interrupt input terminal reaches a predetermined level or when a predetermined signal change occurs. This interrupt factor flag is cleared to "0" by the write operation of CPU1 / 2.

【0051】割込要因フラグの各ビットの出力は、割込
許可回路に入力され、この割込許可回路には、さらに割
込許可レジスタの内容、すなわち割込許可ビットが入力
される。この割込許可レジスタは、CPU1/2からリ
ード/ライト可能なレジスタで、対応する割込を許可す
るか、禁止するかを選択する。
The output of each bit of the interrupt factor flag is input to the interrupt permission circuit, and the content of the interrupt permission register, that is, the interrupt permission bit is further input to this interrupt permission circuit. This interrupt permission register is a register readable / writable by the CPU 1/2, and selects whether the corresponding interrupt is permitted or prohibited.

【0052】たとえば、割込要因フラグが“1”にセッ
トされ、割込許可ビットが“1”にセットされている
と、割込が要求される。すなわち、割込許可回路は、対
応する割込要因フラグと割込許可ビットとを入力とした
論理積回路で構成される。
For example, if the interrupt factor flag is set to "1" and the interrupt enable bit is set to "1", an interrupt is requested. That is, the interrupt permission circuit is composed of a logical product circuit in which the corresponding interrupt factor flag and interrupt permission bit are input.

【0053】割込許可回路の出力は、CPU選択回路に
入力され、このCPU選択回路には、さらに割込選択レ
ジスタIRQSELの内容が入力される。この割込選択
レジスタは、割込が要求されたとき、CPU1またはC
PU2のいずれに割込を許可するかを選択する。
The output of the interrupt permission circuit is input to the CPU selection circuit, and the contents of the interrupt selection register IRQSEL are further input to the CPU selection circuit. This interrupt selection register is used by the CPU 1 or C when an interrupt is requested.
Select which of PU2 is allowed to interrupt.

【0054】たとえば、割込選択レジスタのビットが
“1”にセットされていると、CPU2に割込が要求さ
れる。割込選択レジスタのビットが“0”にクリアされ
ていると、CPU1の割込が要求される。すなわち、C
PU選択回路は、対応する割込信号と割込選択ビットの
論理積回路、および割込信号と割込選択ビットの反転信
号の論理積回路で構成される。前者の論理積回路の出力
がCPU2割込要求信号とされ、後者の論理積回路の出
力がCPU1割込要求信号とされる。
For example, when the bit of the interrupt selection register is set to "1", the CPU 2 is requested to interrupt. When the bit of the interrupt selection register is cleared to "0", the interrupt of CPU1 is requested. That is, C
The PU selection circuit is composed of a logical product circuit of the corresponding interrupt signal and the interrupt selection bit, and a logical product circuit of the interrupt signal and the inverted signal of the interrupt selection bit. The output of the former AND circuit is the CPU2 interrupt request signal, and the output of the latter AND circuit is the CPU1 interrupt request signal.

【0055】CPU選択回路の出力は、CPU1割込要
求とCPU2割込要求が独立に、優先順位判定回路に入
力され、この優先順位判定回路には、さらにプライオリ
ティレジスタの出力が入力される。このプライオリティ
レジスタは割込要因のグループ毎に、たとえば2レベル
の優先順位を設定する。
As the output of the CPU selection circuit, the CPU1 interrupt request and the CPU2 interrupt request are independently input to the priority determination circuit, and the output of the priority register is further input to the priority determination circuit. This priority register sets, for example, two levels of priority for each group of interrupt factors.

【0056】この場合に、CPU1/2割込要求のそれ
ぞれについて優先順位を判定する。この判定の結果、優
先順位の最高のものが選択され、ベクタ番号が生成さ
れ、CPU1/2割込要求のそれぞれのベクタ番号が出
力される。
In this case, the priority is determined for each CPU 1/2 interrupt request. As a result of this determination, the highest priority is selected, a vector number is generated, and each vector number of the CPU1 / 2 interrupt request is output.

【0057】このCPU1/2割込要求信号、ベクタ番
号はマスクレベル判定回路に入力され、このマスクレベ
ル判定回路には、さらに対応するCPU1/2の割込マ
スクビットが入力される。ここで、要求された割込がC
PUの割込マスクレベル以下であれば保留される。そし
て、CPU1/2のそれぞれに対し、割込要求信号とベ
クタ番号が出力される。なお、CPU1は2ビットのマ
スクビットを持つが、CPU2は1ビットのマスクビッ
トを持つ。
This CPU1 / 2 interrupt request signal and vector number are input to the mask level determination circuit, and the interrupt mask bits of the corresponding CPU1 / 2 are also input to this mask level determination circuit. Where the requested interrupt is C
If it is below the PU interrupt mask level, it is suspended. Then, an interrupt request signal and a vector number are output to each of the CPUs 1/2. The CPU 1 has 2 mask bits, while the CPU 2 has 1 mask bit.

【0058】さらに、それぞれのCPUに対する割込要
求信号が活性状態になると、このCPUは実行中の命令
の終了時点で割込例外処理を開始し、ベクタ番号に対応
するベクタアドレスから分岐先アドレスを取り出し、割
込処理ルーチンへ分岐する。
Furthermore, when the interrupt request signal for each CPU becomes active, this CPU starts interrupt exception handling at the end of the instruction being executed, and switches the branch destination address from the vector address corresponding to the vector number. It fetches and branches to the interrupt processing routine.

【0059】このような優先順位判定や割込マスクレベ
ルについては、前記平成5年3月、(株)日立製作所発
行『H8/3003 ハードウェアマニュアル』または
特願平4−137955号などによって公知であるの
で、詳細な説明は省略する。
Such priority determination and interrupt mask level are known in the above-mentioned March 1993, "H8 / 3003 Hardware Manual" issued by Hitachi, Ltd. or Japanese Patent Application No. 4-137955. Therefore, detailed description will be omitted.

【0060】また、CPU1またはCPU2のいずれに
要求されるかによらず、ベクタ番号は一定である。しか
し、アドレス空間の大きさに対応して、ベクタアドレス
は、CPU1では4バイト単位、CPU2では2バイト
単位とされる。
The vector number is constant regardless of which of the CPU 1 and the CPU 2 requests it. However, in accordance with the size of the address space, the vector address is set in 4-byte units in the CPU 1 and in 2-byte units in the CPU 2.

【0061】ノンマスカブル割込NMIは、1本の端子
NMIから入力されるが、2つのCPUに同時に割込を
要求できる。これは対応する割込許可ビットを持たな
い。このNMI割込は、マスク不可能な特性上、シング
ルチップマイクロコンピュータまたは半導体集積回路の
暴走時などに、CPUの処理を強制的に停止させるため
に用いるため、1本のNMI端子によって、CPU1お
よびCPU2の両方にNMI割込を要求することは都合
がよい。少なくとも2本の端子にするのに比較して、端
子1本を節約して、入出力ポートなどとして有効に使用
することができる。
The non-maskable interrupt NMI is input from one terminal NMI, but two CPUs can be requested to interrupt at the same time. It has no corresponding interrupt enable bit. This NMI interrupt is used to forcibly stop the processing of the CPU when the single-chip microcomputer or the semiconductor integrated circuit is out of control due to the non-maskable characteristic. It is convenient to request both CPUs 2 for NMI interrupts. Compared to using at least two terminals, one terminal can be saved and can be effectively used as an input / output port.

【0062】また、割込要因フラグには、CPU2がラ
イト可能な割込要求ビットを持つ。この割込許可ビット
を“1”にセットすると、CPU1に割込を要求でき
る。また、割込要求ビットはCPU2から“1”にセッ
トすることが可能であり、CPU1からは“0”にクリ
アすることができる。CPU1が“0”にクリアする場
合は、事前に“1”の状態をリードした後、“0”をラ
イトする必要がある。
Further, the interrupt factor flag has an interrupt request bit writable by the CPU 2. When the interrupt permission bit is set to "1", the CPU1 can be requested to interrupt. The interrupt request bit can be set to "1" by the CPU 2 and can be cleared to "0" by the CPU 1. When the CPU 1 clears to "0", it is necessary to read the state of "1" in advance and then write "0".

【0063】次に、割込コントローラにおいて、図5に
より割込要求ビットと割込許可回路を詳細に説明する。
Next, in the interrupt controller, the interrupt request bit and the interrupt permission circuit will be described in detail with reference to FIG.

【0064】たとえば、2つのフリップフロップFF
1、FF2を含む。このFF1は、割込要求ビットを構
成し、クリア信号CLRとしてリセット信号RESET
が入力される。また、セット信号Sには論理積回路AN
D1の出力が入力され、リセット信号Rには論理積回路
AND3Aの出力が入力され、出力Qは、論理積回路A
ND4を介して割込要求として出力されるほか、論理積
回路AND2、出力バッファに入力される。
For example, two flip-flops FF
1 and FF2 are included. This FF1 constitutes an interrupt request bit, and the reset signal RESET is used as a clear signal CLR.
Is entered. Further, the set signal S includes an AND circuit AN
The output of D1 is input, the output of the AND circuit AND3A is input to the reset signal R, and the output Q is the AND circuit A.
In addition to being output as an interrupt request via ND4, it is input to the AND circuit AND2 and the output buffer.

【0065】論理積回路AND1には、CPU2のバス
権信号、レジスタライト信号、および内部データバスの
所定のビットが入力される。なお、レジスタリード/レ
ジスタライト信号は、リード信号/ライト信号と、アド
レスをデコードしてこのレジスタが選択されたことを示
す信号との論理積で生成される信号とする。たとえば、
レジスタライト信号は、CPU2またはCPU1がこの
割込要求ビットのアドレスにライトしたとき、活性状態
“1”となる。
A bus right signal of the CPU 2, a register write signal, and a predetermined bit of the internal data bus are input to the AND circuit AND1. The register read / register write signal is a signal generated by a logical product of a read signal / write signal and a signal indicating that the register is selected by decoding the address. For example,
The register write signal becomes active state "1" when the CPU 2 or CPU 1 writes to the address of the interrupt request bit.

【0066】FF2は、割込要求ビットの制御を行い、
クリア信号CLRとしてリセット信号RESETが入力
される。また、セット信号Sには論理積回路AND2の
出力が入力され、リセット信号Rには論理積回路AND
3Aの出力が入力され、出力Qは論理積回路AND3A
に入力される。
FF2 controls the interrupt request bit,
The reset signal RESET is input as the clear signal CLR. The output of the AND circuit AND2 is input to the set signal S, and the AND circuit AND2 is input to the reset signal R.
3A output is input, output Q is AND circuit AND3A
Entered in.

【0067】論理積回路AND2には、FF1の出力、
CPU1のバス権信号、およびレジスタリード信号が入
力される。
The AND circuit AND2 outputs the output of FF1 to
The bus right signal of the CPU 1 and the register read signal are input.

【0068】論理積回路AND3Aには、FF2の出
力、および内部データバスの所定のビットの反転、およ
びAND3Bの出力が入力される。このAND3Bに
は、CPU1のバス権信号、レジスタライト信号が入力
される。
The output of FF2, the inversion of a predetermined bit of the internal data bus, and the output of AND3B are input to the AND circuit AND3A. The bus right signal and the register write signal of the CPU 1 are input to the AND 3B.

【0069】論理積回路AND4には、FF1の出力、
および、図示はされない割込許可レジスタの所定のビッ
トの出力である割込許可信号を入力し、出力は割込要求
信号とされる。なお、選択ビットは設けられず、必ずC
PU1に割込を要求するとよい。
The AND circuit AND4 outputs the output of FF1 to
An interrupt enable signal, which is an output of a predetermined bit of an interrupt enable register (not shown), is input, and the output is an interrupt request signal. No selection bit is provided, and C is always used.
PU1 should be requested to interrupt.

【0070】出力バッファは、FF1の出力をデータと
して入力し、レジスタリード信号をクロック信号として
入力する。この出力は内部データバスの所定のビットに
結合される。
The output buffer receives the output of FF1 as data and the register read signal as a clock signal. This output is coupled to a predetermined bit on the internal data bus.

【0071】従って、CPU2がこの割込要求ビットの
アドレスに“1”をライトしたとき、AND1の出力が
“1”となって、FF1が“1”にセットされる。この
ように、割込許可レジスタの所定のビットが“1”にセ
ットされていると、CPU1に割込が要求される。
Therefore, when the CPU 2 writes "1" in the address of the interrupt request bit, the output of AND1 becomes "1" and FF1 is set to "1". As described above, when the predetermined bit of the interrupt permission register is set to "1", the CPU 1 is requested to interrupt.

【0072】さらに、CPU1がこの状態で割込要求ビ
ットのアドレスをリードすると、出力バッファを介して
データバスに割込要求ビットの内容を出力するととも
に、AND2の出力が“1”となって、FF2が“1”
にセットされる。
Further, when the CPU 1 reads the address of the interrupt request bit in this state, the content of the interrupt request bit is output to the data bus via the output buffer, and the output of AND2 becomes "1". FF2 is "1"
Is set to.

【0073】続いて、CPU1が割込要求ビットに
“0”をライトすると、AND3Aの出力が“1”とな
って、FF1およびFF2が“0”にクリアされる。同
様に、CPU1がライト可能な割込要求ビットを持ち、
この割込許可ビットはCPU2からのみライトでき、C
PU2に割込を要求できる。
Subsequently, when the CPU 1 writes "0" in the interrupt request bit, the output of the AND3A becomes "1" and the FF1 and FF2 are cleared to "0". Similarly, the CPU 1 has a writable interrupt request bit,
This interrupt permission bit can be written only by the CPU 2, and C
PU2 can be requested to interrupt.

【0074】いわゆるリードモディファイライト命令で
は、リードとライトの間にバスを解放しないようにする
とよい。たとえば、ビットセット命令は、指定されたア
ドレスのデータをバイトサイズでCPUに取込み、CP
U内部で指定された1ビットを“1”にセットし、バイ
トサイズでデータをライトするものである。
In the so-called read modify write instruction, it is preferable not to release the bus between read and write. For example, the bit set instruction fetches the data at the specified address into the CPU in byte size,
One bit designated inside the U is set to "1" and data is written in byte size.

【0075】このリードとライトの間はPAB、PDB
を他方のCPUに解放しないようにする。このバスの解
放を禁止する信号は、CPU1/2がバスコントローラ
に出力する前記コマンド信号に含めることができる。
Between this read and write, PAB, PDB
Not be released to the other CPU. The signal for prohibiting the release of the bus can be included in the command signal output by the CPU 1/2 to the bus controller.

【0076】次に、図6により内部バスの動作タイミン
グの一例を説明する。
Next, an example of the operation timing of the internal bus will be described with reference to FIG.

【0077】本実施例のシングルチップマイクロコンピ
ュータは、たとえばシステムクロックφに同期して動作
し、IAB1/2はφの反転信号であるφ#に同期して
出力され、またCPU1/2のROM1/2およびRA
M1/2に対するリードは1ステートで行われる。
The single-chip microcomputer of this embodiment operates, for example, in synchronization with the system clock φ, IAB1 / 2 is output in synchronization with φ # which is an inverted signal of φ, and ROM1 // of CPU1 / 2 2 and RA
Reading to M1 / 2 is performed in one state.

【0078】まず、IAB1/2はφ#に同期して1ス
テート出力され、特に制限はされないものの、ROM1
/2およびRAM1/2の中でφに同期してラッチされ
る。これに対応するリードデータはφ#に同期して出力
され、φ#が活性状態の期間にCPUに取り込まれる。
たとえば、T1のφ#に同期してIAB1/2に出力さ
れたアドレスに対するデータはT2のφ#が活性状態の
期間に、それぞれCPU1/2に取り込まれる。
First, IAB1 / 2 outputs one state in synchronism with φ # and is not particularly limited, but ROM1
It is latched in // 2 and in RAM1 / 2 in synchronization with φ. Read data corresponding to this is output in synchronization with φ #, and is fetched by the CPU while φ # is active.
For example, the data corresponding to the address output to IAB1 / 2 in synchronization with φ # of T1 is taken in by CPU1 / 2 while φ # of T2 is active.

【0079】一方、RAMPに対するリード/ライトは
2ステート、I/Oに対するリード/ライトは3ステー
トで行われる。このφ#に同期したIAB1/2は、バ
スコントローラでφに同期化される。
On the other hand, read / write for RAMP is performed in two states, and read / write for I / O is performed in three states. The IAB1 / 2 synchronized with φ # is synchronized with φ by the bus controller.

【0080】この場合に、CPU1のプログラムは以下
の通りとする。なお、命令の表記方法は、平成元年7
月、(株)日立製作所発行『H8/300シリーズ プ
ログラミングマニュアル』に記載のCPUと同様とす
る。
In this case, the program of CPU 1 is as follows. In addition, the notation method of the instruction is 7
Mon, same as CPU described in "H8 / 300 Series Programming Manual" issued by Hitachi, Ltd.

【0081】CMP.B #CODE,R0L BEQ N1 BTST #0,@PORT BNE N2 たとえば、CMP、BEQ、BNE命令は2バイト長、
TST命令は4バイト長とする。
CMP. B #CODE, R0L BEQ N1 BTST # 0, @PORT BNE N2 For example, CMP, BEQ, and BNE instructions have a 2-byte length,
The TST instruction is 4 bytes long.

【0082】始めに、アドレスnからCMP命令をリー
ドする。このCMP命令の実行を開始すると、まずアド
レスn+2からBEQ命令をリードするとともに、内部
でイミディエイトデータCODEと汎用レジスタR0L
の内容を比較して、コンディションコードに反映する。
First, the CMP instruction is read from the address n. When the execution of this CMP instruction is started, the BEQ instruction is read from the address n + 2, and the immediate data CODE and the general-purpose register R0L are internally read.
Compare the contents of and reflect in the condition code.

【0083】さらに、BEQ命令の実行を開始すると、
まず、アドレスn+4からBTST命令をリードする。
次に、分岐先のアドレスN1から命令をリードするとと
もに、前記比較結果が一致しているかを判定する。一致
していなければ、アドレスN1の命令は無視して、すで
にリード済みのBTST命令の実行を行う。
Further, when execution of the BEQ instruction is started,
First, the BTST instruction is read from the address n + 4.
Next, the instruction is read from the branch destination address N1 and it is determined whether the comparison results match. If they do not match, the instruction at address N1 is ignored and the BTST instruction that has already been read is executed.

【0084】続いて、BTST命令の第2ワードをリー
ドする。このBTST命令を実行すると、絶対アドレス
PORTで指定されるI/Oから、PAB/PDBを使
用して、バイトサイズでデータをリードする。次にアド
レスn+6からBNE命令をプリフェッチする。
Then, the second word of the BTST instruction is read. When this BTST instruction is executed, PAB / PDB is used to read data in byte size from the I / O designated by the absolute address PORT. Next, the BNE instruction is prefetched from the address n + 6.

【0085】また、CPU2のプログラムは以下の通り
とする。
The program of the CPU 2 is as follows.

【0086】BCLR #RDRF,@SSR たとえば、BCLR命令は4バイト長とする。BCLR # RDRF, @ SSR For example, the BCLR instruction has a length of 4 bytes.

【0087】始めに、アドレスm、アドレスm+2から
BCLR命令をリードする。このBCLR命令の実行を
開始すると、まず絶対アドレスSSRで指定されるI/
Oから、PAB/PDBを使用してバイトサイズでデー
タをリードする。
First, the BCLR instruction is read from the address m and the address m + 2. When the execution of this BCLR instruction is started, the I / O specified by the absolute address SSR is first
Read data from O in byte size using PAB / PDB.

【0088】続いて、アドレスm+4から次の命令をプ
リフェッチするとともに、内部でリードデータのイミデ
ィエイトデータRDRFで指定されるビットを“0”に
クリアする。このデータを、絶対アドレスSSRで指定
されるI/Oへ、PAB/PDBを使用してライトす
る。次の命令の実行を開始し、さらにアドレスm+6か
ら次の命令をプリフェッチする。
Then, the next instruction is prefetched from the address m + 4, and the bit designated by the immediate data RDRF of the read data is internally cleared to "0". This data is written to the I / O specified by the absolute address SSR using PAB / PDB. The execution of the next instruction is started, and the next instruction is prefetched from the address m + 6.

【0089】T1では、CPU1/2のROM1/2か
らの命令フェッチが行われ、IAB1/2にアドレスが
出力される。
At T1, the instruction is fetched from the ROM1 / 2 of the CPU1 / 2, and the address is output to the IAB1 / 2.

【0090】T2では、ROM1/2からIDB1/2
に読み出された命令コード(CMP命令、BCLR命令
の第1ワード)をCPU1/2がそれぞれ取り込むとと
もに、次の命令フェッチのアドレスがIAB1/2に出
力される。
At T2, ROM1 / 2 to IDB1 / 2
The CPU 1/2 fetches the instruction code (the first word of the CMP instruction and the BCLR instruction) read out at 1, and the address of the next instruction fetch is output to IAB1 / 2.

【0091】T3では、ROM1/2からIDB1/2
に読み出された命令コード(BEQ命令、BCLR命令
の第2ワード)をCPU1/2がそれぞれ取り込むとと
もに、CPU1は次の命令フェッチのアドレスを、CP
U2はアドレスSSRを、それぞれIAB1/2に出力
する。
At T3, ROM1 / 2 to IDB1 / 2
The CPU 1/2 fetches the instruction code (the second word of the BEQ instruction and the BCLR instruction) read to the CPU 1, and the CPU 1 fetches the address of the next instruction fetch as CP.
U2 outputs the address SSR to IAB1 / 2, respectively.

【0092】この場合に、PAB/PDBを使用するの
がCPU2だけなので、CPU2のPAB/PDBの使
用が許可される。ここで、SCIのリードが3ステート
必要であるため、CPU2待機信号がハイレベルにな
る。
In this case, since only the CPU 2 uses the PAB / PDB, the use of the PAB / PDB by the CPU 2 is permitted. Here, since the SCI read requires three states, the CPU2 standby signal goes high.

【0093】T4では、バス権信号がロウレベルになっ
て、CPU2のPAB/PDBの使用を表示する。IA
B2の内容がPABに出力されて、SCIのレジスタS
SRの内容がリードされる。このリードデータはT6で
得られる。
At T4, the bus right signal goes low, indicating that the CPU 2 is using the PAB / PDB. IA
The contents of B2 are output to PAB, and the SCI register S
The contents of SR are read. This read data is obtained at T6.

【0094】この場合に、ROM1からIDB1に読み
出された命令コード(BTST命令の第1ワード)をC
PU1が取り込むとともに、CPU1は分岐先アドレス
N1をIAB1に出力する(BTST命令の第2ワー
ド)。
In this case, the instruction code (first word of the BTST instruction) read from the ROM1 to the IDB1 is C
The CPU 1 outputs the branch destination address N1 to the IAB1 as the PU1 fetches it (the second word of the BTST instruction).

【0095】T5では、ROM1からIDB1に読み出
された命令コードをCPU1が取り込むが、これは分岐
条件が不成立で実行されない。先にフェッチ済みのBT
ST命令の第1ワードが有効になる。この場合に、CP
U1は次の命令フェッチのアドレスをそれぞれIAB1
に出力する。
At T5, the CPU 1 fetches the instruction code read from the ROM 1 to the IDB 1, but this is not executed because the branch condition is not satisfied. BT that has already been fetched
The first word of the ST instruction becomes valid. In this case, CP
U1 sets the address of the next instruction fetch to IAB1
Output to.

【0096】T6では、SCIのレジスタSSRから読
み出されたデータをPDB、IDB2を介してCPU2
が取り込む。また、CPU2待機信号がロウレベルにな
り、次の命令フェッチのアドレスをIAB2に出力す
る。
At T6, the data read from the SCI register SSR is sent to the CPU2 via the PDB and IDB2.
Takes in. Further, the CPU2 standby signal goes low, and the address of the next instruction fetch is output to IAB2.

【0097】この場合に、CPU1はアドレスPORT
をIAB1に出力し、またCPU2のPAB/PDBの
使用が終了しているので、CPU1のPAB/PDBの
使用が許可される。ここで、PORTのリードが3ステ
ート必要であるため、CPU1待機信号がハイレベルに
なる。
In this case, the CPU 1 sends the address PORT
Is output to IAB1 and the use of PAB / PDB of CPU2 is completed, the use of PAB / PDB of CPU1 is permitted. Here, since the PORT read requires three states, the CPU1 standby signal becomes high level.

【0098】T7では、バス権信号がハイレベルになっ
て、CPU1のPAB/PDBの使用を表示する。IA
B1の内容がPABに出力されて、入出力ポートのレジ
スタPORTの内容がリードされる。このリードデータ
はT9で得られる。
At T7, the bus right signal goes high, indicating that the CPU 1 is using the PAB / PDB. IA
The content of B1 is output to PAB, and the content of the register PORT of the input / output port is read. This read data is obtained at T9.

【0099】この場合に、CPU1待機信号がロウレベ
ルになり、次の命令フェッチのアドレスをIAB1に出
力し、またCPU2はアドレスSSRをIAB2に出力
する。ここで、PAB/PDBをCPU1が使用してい
るので、CPU2の動作は保留され、CPU2待機信号
がハイレベルになる。
In this case, the CPU1 standby signal goes low, the address of the next instruction fetch is output to IAB1, and the CPU2 outputs the address SSR to IAB2. Here, since the PAB / PDB is used by the CPU1, the operation of the CPU2 is suspended and the CPU2 standby signal becomes high level.

【0100】T8では、CPU2はアドレスSSRにラ
イトすべきデータをIDB2に出力する。
At T8, the CPU 2 outputs the data to be written to the address SSR to the IDB2.

【0101】T9では、入出力ポートのレジスタPOR
Tから読み出されたデータをPDB、IDB2を介して
CPU1が取り込む。このCPU1は次の命令フェッチ
のアドレスをIAB1に出力する。この場合に、CPU
1待機信号がロウレベルになり、次の命令フェッチのア
ドレスをIAB1に出力する。
At T9, the register POR of the input / output port
The CPU 1 fetches the data read from T via the PDB and IDB2. This CPU1 outputs the address of the next instruction fetch to IAB1. In this case, the CPU
The 1-wait signal goes low, and the address for the next instruction fetch is output to IAB1.

【0102】T10では、ROM1からIDB1に読み
出された命令コード(BNE命令)をCPU1が取り込
む。次の命令フェッチのアドレスをIAB1に出力す
る。この場合に、バス権信号がロウレベルになって、C
PU2のPAB/PDBの使用を表示する。IAB2の
内容がPABに出力されて、IDB2の内容がSCIの
レジスタSSRにライトされる。
At T10, the CPU 1 fetches the instruction code (BNE instruction) read from the ROM 1 into the IDB 1. The address of the next instruction fetch is output to IAB1. In this case, the bus right signal goes low and C
Display the PAB / PDB usage of PU2. The contents of IAB2 are output to PAB, and the contents of IDB2 are written to the SCI register SSR.

【0103】T11、T12でライト動作が行われる。
この場合に、T12でCPU2待機信号がロウレベルに
なり、次の命令フェッチのアドレスをIAB2に出力す
る。また、CPU1は上記同様の動作を繰り返す。
The write operation is performed at T11 and T12.
In this case, the CPU2 standby signal goes low at T12, and the address of the next instruction fetch is output to IAB2. Further, the CPU 1 repeats the same operation as above.

【0104】なお、CPU1は、外部CPUとすること
もでき、共通部分を外部のCPUが周辺機能としてリー
ド/ライトすることができる。また、CPU2が共通部
分をリード/ライトする場合には、外部CPUにウェイ
ト信号を活性状態にして、待機させる。このとき、シン
グルチップマイクロコンピュータが外部CPUに対する
割込信号を出力する。
The CPU 1 can be an external CPU, and the external CPU can read / write the common portion as a peripheral function. When the CPU 2 reads / writes the common portion, the wait signal is activated by the external CPU and the CPU is put on standby. At this time, the single-chip microcomputer outputs an interrupt signal to the external CPU.

【0105】続いて、データ転送のプログラム例を以下
に示す。ここでは、SCIの受信データのチェックサム
を行い、結果は内蔵RAM2上に配置した作業用アドレ
スSUMに格納するものとする。また、受信データ数は
内蔵RAM2上に配置した作業用アドレスSUMに格納
されているものとする。
Next, an example of a data transfer program is shown below. Here, it is assumed that the check data of the SCI received data is performed and the result is stored in the work address SUM arranged on the internal RAM 2. Further, it is assumed that the number of received data is stored in the work address SUM arranged on the built-in RAM 2.

【0106】その他、転送回数を記憶する作業用アドレ
スCNT、およびSCIの受信データレジスタRDR、
ステータスレジスタSSR、割込コントローラの割込選
択レジスタIRQSELを使用する。
In addition, a work address CNT for storing the number of transfers and a reception data register RDR for SCI,
The status register SSR and the interrupt selection register IRQSEL of the interrupt controller are used.

【0107】 PUSH R0 (1) MOV.B @RDR,R0L (2) MOV.B @SUM,R0H (3) ADD.B R0L,R0H (4) MOV.B R0H,@SUM (5) MOV.B @CNT,R0H (6) DEC.B R0H (7) MOV.B R0H,@CNT (8) BEQ L1 (9) BCLR #RDRF,@SSR (10) BRA L2 (11) L1:BNOT #RXI,@IRQSEL (12) L2:RTE (13) 始めに、CPU2に受信完了割込RXIが要求され、割
込ルーチンに分岐する。まず、汎用レジスタR0をスタ
ックに退避する(1)。そして、SCIの受信データレ
ジスタRDRの内容を汎用レジスタR0の下位8ビット
R0Lにリードする(2)。
PUSH R0 (1) MOV. B @RDR, R0L (2) MOV. B @SUM, R0H (3) ADD. B R0L, R0H (4) MOV. B R0H, @SUM (5) MOV. B @CNT, R0H (6) DEC. B R0H (7) MOV. B R0H, @ CNT (8) BEQ L1 (9) BCLR #RDRF, @SSR (10) BRA L2 (11) L1: BNOT #RXI, @IRQSEL (12) L2: RTE (13) First received by CPU2 Completion interrupt RXI is requested and branches to the interrupt routine. First, the general-purpose register R0 is saved in the stack (1). Then, the contents of the SCI reception data register RDR are read into the lower 8 bits R0L of the general-purpose register R0 (2).

【0108】また、内蔵RAM2上に配置した作業用ア
ドレスSUMの内容を汎用レジスタR0の上位8ビット
R0Hにリードする(3)。そして、R0HとR0Lの
内容を加算する(4)。この加算結果をアドレスSUM
にライトする(5)。
Further, the contents of the work address SUM arranged on the built-in RAM 2 are read into the upper 8 bits R0H of the general register R0 (3). Then, the contents of R0H and R0L are added (4). The result of this addition is the address SUM
Write to (5).

【0109】さらに、内蔵RAM2上に配置した作業用
アドレスCNTの内容を汎用レジスタR0Hにリードす
る(6)。そして、R0Hの内容をデクリメント(−
1)する(7)。このデクリメント結果をアドレスCN
Tにライトする(8)。
Further, the contents of the work address CNT arranged on the internal RAM 2 are read into the general-purpose register R0H (6). Then, the contents of R0H are decremented (-
Do 1) (7). This decrement result is the address CN
Write to T (8).

【0110】この内容が“0”であれば、L1に分岐し
(9)、割込選択レジスタIRQSELの受信完了割込
RXIに対応するビットを反転する(12)。このと
き、割込要求フラグRDRFが“1”にセットされたま
まなので、CPU1に受信完了割込RXIが要求され
る。そして、割込ルーチンから復帰する(13)。
If the content is "0", the flow branches to L1 (9), and the bit corresponding to the reception completion interrupt RXI of the interrupt selection register IRQSEL is inverted (12). At this time, since the interrupt request flag RDRF is still set to "1", the CPU 1 is requested for the reception completion interrupt RXI. Then, the process returns from the interrupt routine (13).

【0111】また、前記アドレスCNTにライトされた
内容が“0”でなければ(9)、割込要求フラグRDR
Fを“0”にクリアする(10)。そして、分岐命令を
実行した(11)後、割込ルーチンから復帰する(1
3)。
If the content written to the address CNT is not "0" (9), the interrupt request flag RDR
Clear F to "0" (10). Then, after executing the branch instruction (11), the routine returns from the interrupt routine (1
3).

【0112】また、以下のプログラム例により、マルチ
プロセッサ受信のアドレス判定を行うことができる。な
お、この場合にはアドレス判定の結果、受信したアドレ
スが自身のアドレスに一致していれば、受信完了割込の
要求先をCPU1に変更するものとする。
Further, the following program example can determine the address of multiprocessor reception. In this case, if the received address matches the own address as a result of the address determination, the request destination of the reception completion interrupt is changed to the CPU 1.

【0113】 PUSH R0 (1) MOV.B @RDR,R0L (2) CMP.B #ID,R0L (3) BEQ L1 (4) BCLR #RDRF,@SSR (5) BRA L2 (6) L1:BNOT #RXI,@IRQSEL (7) L2:RTE (8) 始めに、CPU2に受信完了割込RXIが要求され、割
込ルーチンに分岐する。まず、汎用レジスタR0をスタ
ックに退避する(1)。そして、SCIの受信データレ
ジスタRDRの内容を汎用レジスタR0の下位8ビット
R0Lにリードする(2)。
PUSH R0 (1) MOV. B @RDR, R0L (2) CMP. B # ID, R0L (3) BEQ L1 (4) BCLR #RDRF, @SSR (5) BRA L2 (6) L1: BNOT #RXI, @IRQSEL (7) L2: RTE (8) First received by CPU2 Completion interrupt RXI is requested and branches to the interrupt routine. First, the general-purpose register R0 is saved in the stack (1). Then, the contents of the SCI reception data register RDR are read into the lower 8 bits R0L of the general-purpose register R0 (2).

【0114】この内容を、マルチプロセッサ受信の自分
のIDと比較する(3)。この結果、一致していれば、
L1に分岐し(4)、割込選択レジスタIRQSELの
受信完了割込RXIに対応するビットを反転する
(7)。このとき、割込要求フラグRDRFが“1”に
セットされたままなので、CPU1に受信完了割込RX
Iが要求される。そして、割込ルーチンから復帰する
(8)。
This content is compared with the own ID received by the multiprocessor (3). As a result, if they match,
It branches to L1 (4) and inverts the bit corresponding to the reception completion interrupt RXI of the interrupt selection register IRQSEL (7). At this time, since the interrupt request flag RDRF remains set to "1", the CPU 1 receives the reception completion interrupt RX.
I is required. Then, the process returns from the interrupt routine (8).

【0115】また、自分のIDと比較した結果が一致し
ていなければ(4)、割込要求フラグを“0”にクリア
する(5)。そして、分岐命令を実行した(6)後、割
込ルーチンから復帰する(8)。
If the result of comparison with its own ID does not match (4), the interrupt request flag is cleared to "0" (5). Then, after executing the branch instruction (6), the routine returns from the interrupt routine (8).

【0116】なお、この場合に1本の割込で複数の転送
を行うことができる。たとえば、ステッピングモータを
駆動して、かつこの加速/減速を行うことができる。ま
た、タイマのコンペアマッチ割込OCMI毎に、ポート
から出力するデータを更新してモータを駆動する。さら
に、コンペアレジスタの内容を更新して、データ出力の
周期を変更して加速/減速を行うことができる。
In this case, a plurality of transfers can be performed with one interrupt. For example, a stepping motor can be driven and this acceleration / deceleration can be performed. Further, the data output from the port is updated for each compare match interrupt OCMI of the timer to drive the motor. Further, the contents of the compare register can be updated to change the data output cycle to accelerate / decelerate.

【0117】この状態の表示に、内蔵RAM2上に配置
した作業用アドレスUPDWの内容を用いる。このビッ
ト6が“0”にクリアされているときに定速動作であ
り、“1”にセットされているときは加速または減速、
すなわちビット7が“0”にクリアされているときは減
速、“1”にセットされているときには加速動作であ
る。なお、初期値はビット6、7ともに“1”にセット
しておく。
The contents of the work address UPDW arranged on the internal RAM 2 are used for displaying this state. When this bit 6 is cleared to "0", it is a constant speed operation, and when it is set to "1", it is acceleration or deceleration.
That is, when bit 7 is cleared to "0", deceleration is performed, and when it is set to "1", acceleration operation is performed. The initial value is set to "1" for both bits 6 and 7.

【0118】また、パルス出力回路のネクストデータレ
ジスタNDRに次の出力パルスを格納するものとし、タ
イマの定数レジスタOCRにパルス出力周期を設定する
ものとする。タイマカウンタが定数レジスタの値に一致
すると、図示はされないコンペアマッチ信号が発生し、
NDRの内容がIOP8と兼用の端子から出力される。
同時にタイマカウンタの値は0にクリアされる。このN
DRは4ビットとする。
The next output pulse is stored in the next data register NDR of the pulse output circuit, and the pulse output cycle is set in the constant register OCR of the timer. When the timer counter matches the value of the constant register, a compare match signal (not shown) is generated,
The content of NDR is output from the terminal that also serves as IOP8.
At the same time, the value of the timer counter is cleared to 0. This N
DR is 4 bits.

【0119】このようなパルス出力については、特願平
4−117969号と同様とする。
Such a pulse output is the same as that in Japanese Patent Application No. 4-117969.

【0120】 PUSH R0 (1) MOV.B @NDR,R0L (2) ROTL.B R0L (3) BLD #4、R0L (4) BST #0,R0L (5) MOV.B R0L,@NDR (6) 始めに、CPU2にコンペアマッチ割込OCMIが要求
され、割込ルーチンに分岐する。まず、汎用レジスタR
0をスタックに退避する(1)。そして、ネクストデー
タレジスタNDRの内容を汎用レジスタR0の下位8ビ
ットR0Lにリードする(2)。
PUSH R0 (1) MOV. B @NDR, R0L (2) ROTL. B R0L (3) BLD # 4, R0L (4) BST # 0, R0L (5) MOV. BR0L, @ NDR (6) First, the CPU 2 is requested to execute the compare match interrupt OCMI, and the process branches to the interrupt routine. First, general-purpose register R
0 is saved in the stack (1). Then, the contents of the next data register NDR are read into the lower 8 bits R0L of the general-purpose register R0 (2).

【0121】この内容を回転する(3)。ここでは、4
ビット単位の回転とするために、回転後のビット4をキ
ャリフラグに格納し(4)、このキャリフラグをビット
0に格納する(5)。この4ビット単位の回転が終了し
た結果をNDRに書き込む(6)。この内容が次のコン
ペアマッチで端子から出力される。
The contents are rotated (3). Here, 4
In order to rotate in bit units, bit 4 after rotation is stored in the carry flag (4), and this carry flag is stored in bit 0 (5). The result of the completion of the rotation in units of 4 bits is written in NDR (6). This content is output from the pin at the next compare match.

【0122】 BTST #6,@UPDW (7) BEQ L3 (8) MOV.W @OCR,R0 (9) BTST #7,@UPDW (10) BNE L1 (11) SUB.W #CNST,R0 (12) BRA L2 (13) L1:ADD.W #CNST,R0 (14) L2:MOV.W R0,@OCR (15) 続いて、アドレスUPDWのビット6の内容を検査し
(7)、この内容が“0”(定速動作)であれば、L3
に分岐し(8)、定数レジスタOCRの内容は保持され
る。また、“0”でなければ、定数データレジスタOC
Rの内容を汎用レジスタR0にリードする(9)。
BTST # 6, @UPDW (7) BEQ L3 (8) MOV. W @ OCR, R0 (9) BTST # 7, @UPDW (10) BNE L1 (11) SUB. W #CNST, R0 (12) BRA L2 (13) L1: ADD. W #CNST, R0 (14) L2: MOV. WR0, @ OCR (15) Then, the content of bit 6 of the address UPDW is checked (7). If this content is "0" (constant speed operation), L3
(8) and the content of the constant register OCR is retained. If not "0", the constant data register OC
The content of R is read into the general-purpose register R0 (9).

【0123】さらに、アドレスUPDWのビット7の内
容を検査し(10)、この内容が“0”(減速動作)で
あれば、L1に分岐し(11)、“0”でなければ(加
速動作)、定数値CNSTを汎用レジスタR0から減算
し(12)、L2に分岐する(13)。このL1では定
数値CNSTを汎用レジスタR0に加算し(14)、L
3では汎用レジスタR0の内容を定数レジスタOCRに
書き込む(15)。
Further, the content of bit 7 of the address UPDW is inspected (10), and if this content is "0" (deceleration operation), branch to L1 (11), and if not "0" (acceleration operation). ), The constant value CNST is subtracted from the general-purpose register R0 (12), and the process branches to L2 (13). At this L1, the constant value CNST is added to the general-purpose register R0 (14), and L
In 3, the contents of the general register R0 are written in the constant register OCR (15).

【0124】 L3:MOV.B @CNT,R0H (16) DEC.B R0H (17) BNE L5 (18) BTST #6,@UPDW (19) BEQ L6 (20) BTST #7,@UPDW (21) BEQ L4 (22) BCLR #6,@UPDW (23) MOV #CNT1,R0H (24) BRA L5 (25) L4:BSET #6,@UPDW (26) BCLR #7,@UPDW (27) MOV #CNT2,R0H (28) L5:MOV.B R0H,@CNT (29) BRA L7 (30) L6:BNOT #OCMI,@IRQSEL (31) L7:RTE (32) 続いて、アドレスCNTの内容を汎用レジスタR0Hに
リードする(16)。この内容R0Hの内容をデクリメ
ント(−1)する(17)。この内容が“0”でなけれ
ば、L5に分岐し(18)、“0”であれば、アドレス
UPDWのビット6の内容を検査する(19)。
L3: MOV. B @CNT, R0H (16) DEC. BR0H (17) BNE L5 (18) BTST # 6, @UPDW (19) BEQ L6 (20) BTST # 7, @UPDW (21) BEQ L4 (22) BCLR # 6, @UPDW (23) MOV # CNT1 , R0H (24) BRA L5 (25) L4: BSET # 6, @UPDW (26) BCLR # 7, @UPDW (27) MOV # CNT2, R0H (28) L5: MOV. BR0H, @ CNT (29) BRA L7 (30) L6: BNOT # OCMI, @ IRQSEL (31) L7: RTE (32) Then, the content of the address CNT is read into the general register R0H (16). The content of this content R0H is decremented (-1) (17). If this content is not "0", it branches to L5 (18), and if it is "0", the content of bit 6 of the address UPDW is checked (19).

【0125】さらに、この内容が“0”(定速動作)で
あれば、L6に分岐し(20)、“0”でなければ、ビ
ット7の内容を検査し(21)、さらにこの内容が
“0”(減速動作)であれば、L6に分岐し(22)、
“0”でなければ(加速動作)、アドレスUPDWのビ
ット6を“0”にクリアして、定速動作に遷移し(2
3)、低速動作の回転数CNT1をR0Hに設定する
(24)。そして、L5に分岐する(25)。
Further, if the content is "0" (constant speed operation), the process branches to L6 (20), and if not "0", the content of bit 7 is checked (21). If "0" (deceleration operation), branch to L6 (22),
If it is not "0" (acceleration operation), bit 6 of the address UPDW is cleared to "0" and the operation shifts to the constant speed operation (2
3) The rotational speed CNT1 for low speed operation is set to R0H (24). Then, the process branches to L5 (25).

【0126】L4では、減速動作に遷移するため、アド
レスUPDWのビット6を“1”にセット(26)し、
ビット7を“0”にクリアする(27)。また、減速動
作の回転数CNT2をR0Hに設定する(28)。
At L4, in order to transit to the deceleration operation, bit 6 of the address UPDW is set to "1" (26),
Bit 7 is cleared to "0" (27). Further, the rotation speed CNT2 of the deceleration operation is set to R0H (28).

【0127】さらに、L5では、汎用レジスタR0Hの
内容をアドレスCNTにライトする(29)。そして、
分岐命令を実行(30)した後、割込ルーチンから復帰
する(32)。
Further, at L5, the contents of the general register R0H are written to the address CNT (29). And
After executing the branch instruction (30), it returns from the interrupt routine (32).

【0128】そして、減速動作の終了後、L6では割込
選択レジスタIRQSELのにコンペアマッチ割込OC
MIに対応するビットを反転する(31)。このとき、
割込要求フラグOCMFが“1”にセットされたままな
ので、CPU1に受信完了割込RXIが要求される。そ
して、割込ルーチンから復帰する(32)。
After the deceleration operation is completed, a compare match interrupt OC is stored in the interrupt selection register IRQSEL at L6.
The bit corresponding to MI is inverted (31). At this time,
Since the interrupt request flag OCMF is still set to "1", the CPU 1 is requested for the reception completion interrupt RXI. Then, the process returns from the interrupt routine (32).

【0129】また、起動は、前記割込要求レジスタを用
いて、CPU1からCPU2に割込を要求して、たとえ
ばRAMP上の所定のアドレスにコマンドを配置して指
示をすればよい。
Further, the activation may be performed by requesting an interrupt from the CPU 1 to the CPU 2 using the interrupt request register and arranging a command at a predetermined address on the RAMP, for example.

【0130】以上により、たとえば特願平4−1379
54号または特願平4−117969号に記載の方法に
比べて、RAMにデータを展開しておく必要がなく、R
AMの使用量を節約できる。
From the above, for example, Japanese Patent Application No. 4-1379.
Compared to the method described in Japanese Patent Application No. 54 or Japanese Patent Application No. 4-179169, there is no need to expand data in RAM, and R
The amount of AM used can be saved.

【0131】また、CPU2を、割込に対応したデータ
処理に主として使用すれば、CPU2は常に処理すべき
プログラムがあるとは限らない。そこで、1つの割込に
よるデータ処理が終了した時点で、処理すべきプログラ
ムがなければ、CPU2は低消費電力状態、いわゆるス
リープ状態にするのがよい。
If the CPU 2 is mainly used for data processing corresponding to an interrupt, the CPU 2 does not always have a program to be processed. Therefore, if there is no program to be processed at the time when data processing by one interrupt is completed, it is preferable that the CPU 2 be in a low power consumption state, so-called sleep state.

【0132】このスリープ状態では、専用のSLEEP
命令を実行することにより遷移する。そして、CPU2
に供給されるクロックが停止される。また、割込が要求
されると、スリープ状態は解除される。
In this sleep state, a dedicated SLEEP
A transition is made by executing an instruction. And CPU2
The clock supplied to is stopped. When the interrupt is requested, the sleep state is released.

【0133】次に、図7により低消費電力状態制御回路
を詳細に説明する。
Next, the low power consumption state control circuit will be described in detail with reference to FIG.

【0134】なお、この低消費電力状態制御回路は、た
とえばクロック発振器内に構成され、この低消費電力状
態は3個のフリップフロップSLPF1、SLPF2、
SSBYFで制御される。
The low power consumption state control circuit is constructed in, for example, a clock oscillator, and the low power consumption state control circuit includes three flip-flops SLPF1, SLPF2,
It is controlled by SSBYF.

【0135】フリップフロップSLPF1は、CPU1
がSLEEP命令を実行すると、セット状態となる。こ
のとき、CPU1はスリープ状態となる。また、CPU
1に対する割込要求が発生するとクリア状態となる。
The flip-flop SLPF1 is the CPU1.
When the SLEEP instruction is executed, the set state is set. At this time, the CPU 1 enters the sleep state. Also, CPU
When an interrupt request for 1 is generated, the status is cleared.

【0136】フリップフロップSLPF2は、CPU2
がSLEEP命令を実行すると、セット状態となる。こ
のとき、CPU2はスリープ状態となる。また、CPU
2に対する割込要求が発生するとクリア状態となる。
The flip-flop SLPF2 is the CPU2.
When the SLEEP instruction is executed, the set state is set. At this time, the CPU 2 enters a sleep state. Also, CPU
When an interrupt request for 2 occurs, it goes into the clear state.

【0137】フリップフロップSSBYFは、図示はさ
れない制御ビットSSBYを“1”にセットした状態
で、一方のCPUがスリープ状態で、他方のCPUがS
LEEP命令を実行するとセット状態となる。このソフ
トウェアスタンバイ状態では、クロック発振器を始め、
全ての機能の動作が停止する。内部はリセット状態とな
る。
In the flip-flop SSBYF, one CPU is in the sleep state and the other CPU is in the S state when the control bit SSBY (not shown) is set to "1".
When the LEEP instruction is executed, the set state is set. In this software standby state, start the clock oscillator,
All functions stop working. The inside is reset.

【0138】ただし、規定の電圧が与えられている限
り、RAM1、RAM2、RAMPの内容は保持され
る。また、入出力ポートの状態も保持される。そして、
NMI割込要求が発生するとクリア状態となる。なお、
内部はリセット状態となるためにNMI以外の割込要求
は発生しない。
However, as long as the specified voltage is applied, the contents of RAM1, RAM2 and RAMP are retained. Also, the state of the input / output port is retained. And
When an NMI interrupt request is generated, it goes into the clear state. In addition,
Since the inside is in the reset state, no interrupt request other than NMI is generated.

【0139】このソフトウェアスタンバイ状態に遷移す
るためには、一方のCPUがSSBYビットを“1”に
セットし、SLEEP命令を実行すればよい。他方のC
PUの状態に応じて、直ちにソフトウェアスタンバイ状
態に遷移するか、一旦スリープ状態に遷移した後、他方
のCPUがSLEEP命令を実行した後にソフトウェア
スタンバイ状態に遷移するかが自動的に選択される。こ
のため、プログラムを作成する場合に、相互の動作状態
を確認する必要がなく、プログラムの作成効率を向上す
ることができる。
In order to shift to the software standby state, one CPU may set the SSBY bit to "1" and execute the SLEEP instruction. The other C
Depending on the state of the PU, it is automatically selected whether to immediately transit to the software standby state or to transit to the sleep state and then to the software standby state after the other CPU executes the SLEEP instruction. Therefore, when creating a program, it is not necessary to check the mutual operating states, and the efficiency of creating the program can be improved.

【0140】また、割込処理を開始したとき、直前が動
作中であったか、スリープ状態であったかを示すビット
を設けるとよい。この動作中に割込を受け付けた場合に
は、CPUの内部のレジスタの内容を退避しなければな
らないが、スリープ中に割込を受け付ければ、CPUの
内部のレジスタには作業中のデータはないので退避する
必要がない。この退避動作および処理終了時の復帰動作
を行わなければ、高速化を行うことができる。
Further, when the interrupt processing is started, it is preferable to provide a bit indicating whether it was in operation or in a sleep state immediately before. If an interrupt is accepted during this operation, the contents of the internal register of the CPU must be saved. However, if the interrupt is accepted during sleep, the internal register of the CPU will not contain the data being processed. There is no need to evacuate. If the save operation and the return operation at the end of processing are not performed, the speed can be increased.

【0141】さらに、入出力ポートは、いずれのCPU
からライト可能にするか選択可能にする。
Further, the input / output port is the CPU
From writable or selectable.

【0142】次に、図8により入出力ポートのレジスタ
を詳細に説明する。
Next, the registers of the input / output ports will be described in detail with reference to FIG.

【0143】この入出力ポートのレジスタは、データデ
ィレクションレジスタ(DDR)、データレジスタ(D
R)、ポート制御レジスタ(PSEL)からなる。
The registers of this input / output port are the data direction register (DDR) and the data register (D
R) and a port control register (PSEL).

【0144】DDRは、ライト専用レジスタであり、
“0”にクリアされているときに入力、“1”にセット
されているときには出力となる。
DDR is a write-only register,
It is an input when it is cleared to "0" and an output when it is set to "1".

【0145】DRは、出力データを格納する。このDD
Rを“1”にセットすると、DRの内容が出力される。
リード時にはDRの内容または端子の状態が読み出され
る。すなわち、DDRが“0”にクリアされているとき
は端子の状態、“1”にセットされているときにはDR
の内容が読み出される。
DR stores output data. This DD
When R is set to "1", the contents of DR are output.
At the time of reading, the content of DR or the state of the terminal is read. That is, when DDR is cleared to "0", the state of the terminal, and when set to "1", DR
The contents of are read.

【0146】PSELが、各入出力端子の制御をいずれ
のCPUで行うかを選択する。このポート制御レジスタ
(PSEL)の制御ビットは、データレジスタ(DR)
とデータディレクションレジスタ(DDR)のビットを
共通に制御する。PSELが“0”にクリアされている
ときはCPU1によって、“1”にセットされていると
きにはCPU2によってライトが行われる。
The PSEL selects which CPU controls each input / output terminal. The control bit of this port control register (PSEL) is the data register (DR).
And the bits of the data direction register (DDR) are commonly controlled. When PSEL is cleared to "0", writing is performed by CPU1, and when it is set to "1", writing is performed by CPU2.

【0147】なお、ポートにプルアップMOSを内蔵し
たり、2重出力バッファとしたりする場合、これらの制
御を行うレジスタも、PSELで共通に制御すればよ
い。このようなレジスタの例は、前記平成5年3月、
(株)日立製作所発行『H8/3003 ハードウェア
マニュアル』P263〜P306、P419〜P445
に記載されている。
When a pull-up MOS is built in the port or a dual output buffer is used, the registers for controlling these may be commonly controlled by PSEL. An example of such a register is the above-mentioned March 1993,
"H8 / 3003 Hardware Manual" issued by Hitachi, Ltd. P263-P306, P419-P445
It is described in.

【0148】次に、図9により入出力ポートを詳細に説
明する。
Next, the input / output ports will be described in detail with reference to FIG.

【0149】本実施例の入出力ポートにおいては、デー
タディレクションレジスタ(DDR)、データレジスタ
(DR)、ポート制御レジスタ(PSEL)はフリップ
フロップで構成される。いずれも、内部データバスの所
定のビットをデータ入力(D)とし、リセット信号(R
ESET)をクリア入力(CLR)としている。
In the input / output port of this embodiment, the data direction register (DDR), the data register (DR) and the port control register (PSEL) are composed of flip-flops. In both cases, a predetermined bit of the internal data bus is used as a data input (D) and a reset signal (R
ESET) is a clear input (CLR).

【0150】DDRの入力クロック(C)は、論理積回
路AND1の出力である。この出力(Q)は、出力バッ
ファOBUFの制御信号およびセレクタSEL1の選択
信号とされる。
The DDR input clock (C) is the output of the AND circuit AND1. This output (Q) is used as a control signal for the output buffer OBUF and a selection signal for the selector SEL1.

【0151】DRの入力クロック(C)は、論理積回路
AND2の出力である。この出力(Q)は出力バッファ
OBUFのデータ入力およびセレクタ1のデータ入力と
される。
The input clock (C) of DR is the output of the AND circuit AND2. This output (Q) is used as the data input of the output buffer OBUF and the data input of the selector 1.

【0152】PSELの入力クロック(C)は、PSE
Lリード信号WRPSELである。この出力(Q)はセ
レクタSEL2の選択信号とされる。
The input clock (C) of PSEL is PSE
This is the L read signal WRPSEL. This output (Q) is used as a selection signal for the selector SEL2.

【0153】出力バッファOBUFは、制御信号として
DDR出力、データ入力はDR出力とされ、出力信号は
端子Pに接続される。
The output buffer OBUF has a DDR output as a control signal and a DR output as a data input, and the output signal is connected to the terminal P.

【0154】入力バッファIBUFは、入力信号が端子
Pに接続され、出力信号がセレクタSEL1のデータ入
力とされる。
In the input buffer IBUF, the input signal is connected to the terminal P and the output signal is used as the data input of the selector SEL1.

【0155】セレクタSEL1は、DDR出力を選択信
号、DR出力および入力バッファIBUF出力をデータ
入力とする。このDDR出力が“0”のときは入力バッ
ファIBUF出力が選択され、DDR出力が“1”のと
きにはDR出力が選択される。このセレクタSEL1の
出力はDRリードバッファの入力とされる。
The selector SEL1 uses the DDR output as a selection signal and the DR output and the input buffer IBUF output as data inputs. When the DDR output is "0", the input buffer IBUF output is selected, and when the DDR output is "1", the DR output is selected. The output of the selector SEL1 is input to the DR read buffer.

【0156】セレクタSEL2は、PSEL出力を選択
信号、CPU1/2バス権信号をデータ入力とする。こ
の出力はライト許可信号となる。PSELが“0”のと
きはCPU1バス権で、CPU1がライト許可状態とな
る。PSELが“1”のときにはCPU2バス権で、C
PU2がライト許可状態となる。
The selector SEL2 uses the PSEL output as a selection signal and the CPU1 / 2 bus right signal as a data input. This output becomes a write enable signal. When PSEL is "0", the CPU1 has the bus right and the CPU1 is in the write enable state. When PSEL is "1", the CPU2 bus is granted and C
PU2 is in the write enable state.

【0157】DRリードバッファDRBUFは、セレク
タSEL1の出力を入力し、DRリード信号RDDRを
クロックとし、出力信号は内部データバスの所定のビッ
トに接続される。このRDDRが活性状態のとき、セレ
クタSEL1の出力を内部データバスに出力する。
The DR read buffer DRBUF inputs the output of the selector SEL1 and uses the DR read signal RDDR as a clock, and the output signal is connected to a predetermined bit of the internal data bus. When this RDDR is active, the output of the selector SEL1 is output to the internal data bus.

【0158】PSELリードバッファPSBUFは、P
SELフリップフロップの出力を入力し、PSELリー
ド信号RDPSELをクロックとし、出力信号は内部デ
ータバスの所定のビットに接続される。このRDPSE
Lが活性状態のとき、PSELフリップフロップの出力
を内部データバスに出力する。
PSEL read buffer PSBUF is P
The output of the SEL flip-flop is input, the PSEL read signal RDPSEL is used as a clock, and the output signal is connected to a predetermined bit of the internal data bus. This RDPSE
When L is active, it outputs the output of the PSEL flip-flop to the internal data bus.

【0159】論理積回路AND1は、ライト許可信号と
DDRライト信号WRDDRを入力とし、出力信号はD
DRの入力クロックとなる。
The AND circuit AND1 receives the write enable signal and the DDR write signal WRDDR as its inputs, and outputs an output signal of D
It becomes the DR input clock.

【0160】論理積回路AND2は、ライト許可信号と
DRライト信号WRDRを入力とし、出力信号はDRの
入力クロックとなる。
The AND circuit AND2 receives the write enable signal and the DR write signal WRDR as input, and the output signal becomes the DR input clock.

【0161】ROM1およびROM2をPROMとする
ことができ、このPROMを外部からプログラムすると
き、2つのROMを外部から連続したアドレスとするよ
うにするとよい。
The ROM1 and the ROM2 can be PROMs, and when the PROMs are programmed from the outside, it is preferable that the two ROMs have consecutive addresses from the outside.

【0162】次に、図10によりPROMのアドレスマ
ップを説明する。
Next, the address map of the PROM will be described with reference to FIG.

【0163】たとえば、PROM1は64kバイト、P
ROM2は32kバイトとする。MCUモードでは、P
ROM1はH’00000000〜H’0000FFF
Fに、PROM2はH’0000〜H’7FFFに配置
される。
For example, PROM1 has 64 kbytes, P
ROM2 is 32 kbytes. In MCU mode, P
ROM1 is H'00000000-H'0000FFF
In F, the PROM 2 is arranged in H'0000 to H'7FFF.

【0164】また、PROMモードでは、PROM1は
H’00000〜H’0FFFFに、PROM2はH’
10000〜H’17FFFに配置される。
In the PROM mode, PROM1 is set to H'0000 to H'0FFFF and PROM2 is set to H '.
It is arranged in 10000 to H'17FFF.

【0165】次に、図11によりPROMモードを詳細
に説明する。
Next, the PROM mode will be described in detail with reference to FIG.

【0166】このPROMモードは、モード端子MD
1、MD0、およびSTBY端子をいずれもロウレベル
とすることによって設定される。このとき、図示はされ
ないモード設定回路によって、内部信号EPMが活性状
態(ハイレベル)とされる。このPROMモードのとき
には、CPU1/2はBUFC1/2によって、アドレ
スバス、データバスから切り離される。
In this PROM mode, the mode terminal MD
It is set by setting all 1, MD0, and STBY terminals to low level. At this time, the internal signal EPM is activated (high level) by a mode setting circuit (not shown). In the PROM mode, the CPU1 / 2 are separated from the address bus and the data bus by BUFC1 / 2.

【0167】図11において、CS制御回路、バッファ
BUFC1/2などはバスコントローラに含まれてな
る。
In FIG. 11, the CS controller, the buffer BUFC1 / 2, etc. are included in the bus controller.

【0168】PROMは、図1におけるROM1および
ROM2とし、メモリアレイ、アドレスデコーダ、入出
力回路、制御回路からなる。このアドレスデコーダには
アドレスが入力され、入出力回路はデータの入出力を行
い、また制御回路は制御信号を入力し、入出力回路を制
御してデータの書込み/読み出しなどを行う。また、メ
モリアレイは不揮発記憶素子が配列されている。
The PROM is the ROM1 and the ROM2 in FIG. 1, and comprises a memory array, an address decoder, an input / output circuit, and a control circuit. An address is input to the address decoder, an input / output circuit inputs / outputs data, and a control circuit inputs a control signal to control the input / output circuit to write / read data. Further, the memory array is arranged with non-volatile storage elements.

【0169】制御回路には、EPM、CS−1/2#、
OE#、PGM#、およびMS−1/2#、リード信号
が入力される。このEPMが活性状態のとき、PROM
としての書込み/読み出し動作が、CS−1/2#、O
E#、PGM#に基づいて行われる。また、EPMが非
活性状態のときには、CPUのアドレス空間上でのRO
Mとしての読み出し動作が、MS−1/2#、リード信
号に基づいて行われる。
The control circuit includes an EPM, CS-1 / 2 #,
OE #, PGM #, MS-1 / 2 #, and a read signal are input. When this EPM is active, PROM
Write / read operation as CS-1 / 2 #, O
It is performed based on E # and PGM #. When the EPM is inactive, RO in the CPU address space
The read operation as M is performed based on MS-1 / 2 # and the read signal.

【0170】PROMモードのとき、VPP、CS#、
OE#、PGM#で制御される。このような制御は、た
とえば1993年3月、(株)日立製作所発行『HIT
ACHI IC Memory Data Book
No.2(10th Edition)』P510〜P
524に記載されるPROMと同様である。
In the PROM mode, VPP, CS #,
It is controlled by OE # and PGM #. Such control is performed, for example, in "HIT" issued by Hitachi, Ltd. in March 1993.
ACHI IC Memory Data Book
No. 2 (10th Edition) ”P510-P
This is the same as the PROM described in 524.

【0171】VPP端子はRES端子と、CS#、OE
#、PGM#はP61、P62、P63端子と、アドレ
スA0−15はP00−07、P10−17端子と、A
16はP60端子と、データD7−0はP40−P47
端子と兼用にされている。なお、VPPは図示はされな
いが、PROM1/2に与えられる。
The VPP terminal is connected to the RES terminal, CS #, OE
# And PGM # are terminals P61, P62 and P63, addresses A0-15 are terminals P00-07 and P10-17, A
16 is a P60 terminal, and data D7-0 is P40-P47.
It is also used as a terminal. Although not shown, VPP is given to PROM1 / 2.

【0172】内部信号としては、OE#、PGM#がバ
ッファ回路を介して入力され、PROM1、PROM2
に供給される。CS−1#は、アドレス上位信号A16
の反転信号との論理積信号、CS−2#は、アドレス上
位信号A15の反転信号、およびA16との論理積信号
で生成される。このCS−1#、CS−2#が、それぞ
れPROM1、PROM2に与えられる。
As internal signals, OE # and PGM # are input through the buffer circuit, and PROM1 and PROM2 are input.
Is supplied to. CS-1 # is an address upper signal A16
The logical product signal with the inversion signal of CS-2 #, CS-2 #, is generated with the inversion signal of the address upper signal A15 and the logical product signal with A16. These CS-1 # and CS-2 # are given to PROM1 and PROM2, respectively.

【0173】PROMモードのとき、IDB1とIDB
2がバッファを介して接続される。PROM2のデータ
はIDB2、IDB1およびIOP3を介して入出力さ
れる。すなわち、CS−2#が活性状態で読み出し動作
のとき、PROM2から読み出したIDB2の内容がI
DB1に出力される。さらに、読み出し動作のとき、I
DB1の内容がIOP3を介して外部に出力される。
In the PROM mode, IDB1 and IDB
2 are connected via a buffer. Data in PROM2 is input / output via IDB2, IDB1 and IOP3. That is, when CS-2 # is in the active state and a read operation is performed, the content of IDB2 read from PROM2 is I
It is output to DB1. Furthermore, during a read operation, I
The contents of DB1 are output to the outside via IOP3.

【0174】また、書込み動作のとき、外部の内容がI
OP3を介してIDB1に入力される。CS−2#が活
性状態で書込み動作のとき、IDB1の内容がIDB2
に出力され、PROM2に与えられる。さらに、IDB
1の内容がIOP3を介して外部に出力される。
In the write operation, the external contents are I
It is input to IDB1 via OP3. When CS-2 # is in the active state and the write operation is performed, the contents of IDB1 are IDB2.
Output to the PROM2. Furthermore, IDB
The content of 1 is output to the outside through IOP3.

【0175】PROMモードのとき、IAB1とIAB
2がバッファを介して接続される。すなわち、IOP
1、2を介して入力されたIAB1のアドレスが、IA
B2に入力され、PROM2に与えられる。なお、PR
OM1/2の最大容量が64kバイトであるので、それ
ぞれのPROMに与えられるアドレスは16ビットであ
る。
In PROM mode, IAB1 and IAB
2 are connected via a buffer. That is, IOP
The address of IAB1 input via 1, 2 is IA
It is input to B2 and given to PROM2. In addition, PR
Since the maximum capacity of OM1 / 2 is 64 kbytes, the address given to each PROM is 16 bits.

【0176】たとえば、読み出し動作はCS−1/2
#、OE#が活性状態、PGM#が非活性状態のときに
行われ、書込み動作はCS−1/2#、PGM#が活性
状態、OE#が非活性状態のときに行われる。
For example, the read operation is CS-1 / 2
# And OE # are active and PGM # is inactive, and the write operation is performed when CS-1 / 2 # and PGM # are active and OE # is inactive.

【0177】その他、ベリファイやページ書込みなどが
可能とされるが、本発明には直接の関係はないので、詳
細な説明は省略する。
Besides, verification and page writing can be performed, but since the present invention has no direct relation to them, detailed description thereof will be omitted.

【0178】1つのPROMモードで、PROM1、P
ROM2を、外面的には1つのPROMとして一括して
書込むことができる。これによって、書込みを効率的に
行うことができる。
In one PROM mode, PROM1, PROM
The ROM 2 can be externally written as one PROM at a time. As a result, writing can be performed efficiently.

【0179】次に、図12によりテストモードを詳細に
説明する。
Next, the test mode will be described in detail with reference to FIG.

【0180】このテストモードは、モード端子MD1、
MD0をいずれもロウレベル、およびSTBY端子をハ
イレベルとすることによって設定される。このとき、図
示はされないモード設定回路によって、内部信号TMが
活性状態(ハイレベル)とされる。
In this test mode, the mode terminals MD1 and
It is set by setting both MD0 to low level and the STBY terminal to high level. At this time, the internal signal TM is activated (high level) by a mode setting circuit (not shown).

【0181】図12において、制御回路1/2、バス権
調停回路、選択回路、バッファBSBUF、バッファB
UFC1/2はバスコントローラに含まれてなる。
In FIG. 12, control circuit 1/2, bus arbitration circuit, selection circuit, buffer BSBUF, buffer B
UFC1 / 2 is included in the bus controller.

【0182】バス権調停回路は、CPU1/2のいずれ
が、PAB/PDBを使用するかを選択して制御信号P
AKを出力する。このPAKがハイレベルのときはCP
U1、PAKがロウレベルのときにはCPU2がPAB
/PDBを使用する。テストモードの場合は、P62端
子から与えられる選択信号によってPAK信号は制御さ
れる。
The bus right arbitration circuit selects which one of the CPU1 / 2 uses the PAB / PDB to select the control signal P.
Output AK. CP when this PAK is at high level
When U1 and PAK are low level, CPU2 is in PAB
/ Use PDB. In the test mode, the PAK signal is controlled by the selection signal given from the P62 terminal.

【0183】テストモードのとき、CPU1/2はBU
FC1/2によって、アドレスバス、データバス、リー
ド信号/ライト信号から切り離される。
In the test mode, CPU1 / 2 are BU
It is separated from the address bus, the data bus, and the read signal / write signal by FC1 / 2.

【0184】アドレスはIOP3〜IOP0から、バッ
ファBUFPを介してIAB1に入力され、さらにBS
BUFを介してIAB2およびPABに入力される。な
お、IAB1は4Gバイトのアドレス空間に対応して3
2本のアドレスを有するが、IAB2は64kバイトの
アドレス空間に対応して16本、PABはRAMP、I
/Oのアドレスに対応して10本のアドレスを有する。
従って、外部からアドレスを与えるためにはIAB1を
利用するのがよい。
Addresses are input from IOP3 to IOP0 to IAB1 via the buffer BUFP, and further to BS.
Input to IAB2 and PAB via BUF. It should be noted that IAB1 is 3 GB corresponding to the address space of 4 GB.
Although it has two addresses, IAB2 has 16 addresses corresponding to an address space of 64 kbytes, and PAB has RAMP and I.
It has 10 addresses corresponding to the / O addresses.
Therefore, it is preferable to use IAB1 to give an address from the outside.

【0185】データバスは、IOP4によって、バッフ
ァBUFPを介してIDB1と入出力される。リード/
ライト動作およびアドレスに対応して、IDB2または
PDBの内容がBSBUFを介してIDB1と入出力さ
れる。
The data bus is input / output to / from the IDB1 via the buffer BUFP by the IOP4. Lead /
The contents of the IDB2 or PDB are input / output to / from the IDB1 via the BSBUF according to the write operation and the address.

【0186】リード信号、ライト信号は、P60端子、
P61端子からBUFPを介して入力される。RD1/
2、WR1/2として、ROM1、RAM1/ROM
2、RAM2に供給される。また、バス権信号PAKに
よって選択されてRDP、WRPとなって、RAMP、
I/Oに供給される。テストモードにおいては、PAK
信号によらず、RD1/2/Pは常に同様の動作とな
り、WR1/2/Pも常に同様の動作となる。
The read signal and the write signal are supplied to the P60 terminal,
It is input from the P61 terminal via BUFP. RD1 /
2, WR1 / 2, ROM1, RAM1 / ROM
2, supplied to RAM2. In addition, the bus right signal PAK selects RDP and WRP, and RAMP,
Supplied to I / O. In test mode, PAK
Regardless of the signal, RD1 / 2 / P always has the same operation, and WR1 / 2 / P always has the same operation.

【0187】制御回路1/2は、IAB1/2のアドレ
スに基づいて、選択信号MSROM1/2、MSRAM
1/2、MSRAMP、MSIOを出力する。MSRA
MP、MSIOは共通信号であるので、PAK信号に基
づいて、一方が出力、他方はハイインピーダンスとな
る。たとえば、PAK信号がハイレベルのときは制御回
路1が出力し、制御回路2はハイインピーダンスとな
る。
The control circuit 1/2 selects the selection signals MSROM1 / 2 and MSRAM based on the address of IAB1 / 2.
1/2, MSRAMP, MSIO are output. MSRA
Since MP and MSIO are common signals, one is output and the other is high impedance based on the PAK signal. For example, when the PAK signal is at high level, the control circuit 1 outputs and the control circuit 2 has high impedance.

【0188】また、テストモード時には、MSROM1
/2、MSRAM1/2はPAK信号に基づいて一方が
禁止される。これは外部から与えるアドレスに基づい
て、1つの機能ブロックが選択されるようにするためで
ある。たとえば、PAK信号がハイレベルのときはMS
ROM1、MSRAM1はIAB1に基づいた出力、M
SROM2、MSRAM2は非活性状態とされる。
In the test mode, MSROM1
/ 2 and MSRAM1 / 2 are prohibited based on the PAK signal. This is so that one functional block can be selected based on the address given from the outside. For example, when the PAK signal is high level, MS
ROM1 and MSRAM1 are outputs based on IAB1, M
SROM2 and MSRAM2 are inactivated.

【0189】ROM1/RAM1をテストする場合に
は、P62端子をハイレベルにして、PAK信号をハイ
レベルにした状態で、アドレス、リード信号/ライト信
号を与えることによってリード/ライトを行うことがで
きる。
When testing the ROM1 / RAM1, read / write can be performed by applying an address and a read signal / write signal with the P62 terminal at a high level and the PAK signal at a high level. .

【0190】また、ROM2/RAM2をテストする場
合には、P62端子をロウレベルにして、PAK信号を
ロウレベルにした状態で、アドレス、リード信号/ライ
ト信号を与えることによってリード/ライトを行うこと
ができる。このアドレスは下位16ビットのみが有効に
なる。
When testing the ROM2 / RAM2, read / write can be performed by applying an address and a read / write signal with the P62 terminal at a low level and the PAK signal at a low level. . Only the lower 16 bits of this address are valid.

【0191】さらに、RAMP/I/Oをテストする場
合には、P62端子をハイレベルにして、PAK信号を
ハイレベルにした状態で、アドレス、リード信号/ライ
ト信号を与えることによってリード/ライトを行うこと
ができる。
Further, when testing the RAMP / I / O, the P62 terminal is set to the high level, the PAK signal is set to the high level, and the address and the read signal / write signal are applied to read / write. It can be carried out.

【0192】上記によって、CPUによってアドレスが
与えられ、かつデータの入出力が行われるべき内部バス
に、内蔵の機能ブロックを外部からリード/ライトする
ためのアドレスデータなどを外部から供給可能にして、
この機能ブロックに必要なデータのリード/ライトを外
部から直接行うことができるようにし、このシングルチ
ップマイクロコンピュータに内蔵される機能ブロックの
テストの容易化、ならびにテスティング効率の向上を実
現できる。
As described above, the address data for reading / writing the internal functional block from the outside can be supplied from the outside to the internal bus to which the address is given by the CPU and the input / output of the data should be performed.
The data required for this functional block can be directly read / written from the outside, facilitating the test of the functional block incorporated in this single-chip microcomputer and improving the testing efficiency.

【0193】また、内蔵RAMをテストする場合、デー
タのテストは独立して行い、アドレスデコーダのテスト
は並行して行うようにするとよい。このアドレスデコー
ダのテストを行うには、RAM1/2/Pを同時に選択
可能にすることによって同時にテストを行うことができ
る。
When testing the built-in RAM, it is preferable to test the data independently and test the address decoder in parallel. To test this address decoder, RAM1 / 2 / P can be simultaneously selected so that the tests can be performed simultaneously.

【0194】この場合に、図12に対してRAMテスト
モードを設ければよい。テストモードにした状態で、P
63端子をロウレベルとすると前記同様のテストモー
ド、P63端子をハイレベルにするとRAMテストモー
ドとなる。
In this case, the RAM test mode may be provided for FIG. P in the test mode
When the 63 terminal is set to low level, the same test mode as described above is set, and when the P63 terminal is set to high level, the RAM test mode is set.

【0195】このRAMテストモードでは、RAM1/
2/Pの選択信号MSRAM1、MSRAM2、MSR
AMPを同時に活性状態にすることができる。ただし、
リードするデータはそれぞれ、ビット0〜1、ビット2
〜3、ビット4〜7とする。
In this RAM test mode, RAM1 /
2 / P selection signals MSRAM1, MSRAM2, MSR
The AMP can be activated at the same time. However,
The data to be read is bit 0 to 1 and bit 2 respectively
3 and bits 4 to 7.

【0196】CPU1とCPU2は、実質的に同一のC
PUであるか、またはCPU1がCPU2を包含するよ
うにし、ソフトウェアの開発環境を共有できるようにす
るのがよい。このようなCPUには、たとえば特願平4
ー226447号がある。
CPU1 and CPU2 have substantially the same C
It may be PU or CPU1 may include CPU2 so that the software development environment can be shared. Japanese Patent Application No.
-There is 226447.

【0197】以上のようなシングルチップマイクロコン
ピュータを評価するエミュレータは、使用者が外部から
ブレーク条件を設定するとき、いずれのCPUにブレー
クを設定するかを指定可能にするとよい。また、2つの
CPUの条件が両方成立したときにブレークするように
指定可能にするとよい。
In the emulator for evaluating a single-chip microcomputer as described above, when a user externally sets a break condition, it is preferable to be able to specify which CPU the break is set to. Further, it is preferable to be able to specify that a break will occur when the conditions of the two CPUs are both satisfied.

【0198】次に、図13によりエミュレーション用プ
ロセッサの構成を説明する。
Next, the configuration of the emulation processor will be described with reference to FIG.

【0199】エミュレーション用プロセッサは、CPU
1、CPU2を含むマイクロコンピュータ部分、および
図示はされないバッファ回路などを含むエミュレーショ
ン用プロセッサ専用ブロックから構成され、公知の半導
体製造技術によって1つの半導体基板上に形成されてい
る。
The emulation processor is a CPU
1, a microcomputer part including a CPU 2, and an emulation processor dedicated block including a buffer circuit (not shown) and the like, which are formed on one semiconductor substrate by a known semiconductor manufacturing technique.

【0200】このエミュレーション用プロセッサは、応
用システムと信号の送受信を行うユーザインタフェー
ス、およびマイクロコンピュータ開発装置と信号の送受
信を行うエミュレーションインタフェースを有してい
る。
This emulation processor has a user interface for transmitting and receiving signals to and from the application system, and an emulation interface for transmitting and receiving signals to and from the microcomputer developing device.

【0201】エミュレーション用バスとしては、IAB
1およびIDB1、IAB2およびIDB2をエミュレ
ーションインタフェースを介して入出力する。また、P
ABおよびPDBのいずれのCPUが使用しているかを
示すバス権表示信号を出力している。これは図13のP
AK信号に相当するものとされる。また、バス権調停に
よって、CPUが待機状態とされていることを示す信号
を出力している。
As the emulation bus, IAB is used.
1 and IDB1, IAB2 and IDB2 are input / output through the emulation interface. Also, P
A bus right display signal indicating which CPU, AB or PDB, is being used is output. This is P in FIG.
It is assumed to correspond to the AK signal. Further, the bus right arbitration outputs a signal indicating that the CPU is in a standby state.

【0202】PAB、PDBのアクセス状態は明示的に
は表示されないが、バス権表示信号とIAB1およびI
DB1、IAB2およびIDB2によるエミュレーショ
ン用バスの内容によって判断することができる。このP
AB、PDBによるエミュレーション用バスを出力しな
いことによって、エミュレーション用プロセッサの端子
数を削減でき、これによってパッケージサイズを小さく
して、ひいてはエミュレータのサイズを縮小できる。
The access states of PAB and PDB are not explicitly displayed, but the bus right indication signal and IAB1 and IAB
It can be determined by the contents of the emulation bus by DB1, IAB2 and IDB2. This P
By not outputting the emulation bus by AB or PDB, the number of terminals of the emulation processor can be reduced, thereby reducing the package size and eventually the emulator size.

【0203】ブレーク要求端子は、BRK1#、BRK
2#の2本がエミュレーションインタフェースに含まれ
てなる。これに基づいてBRK1、BRK2信号によっ
て、それぞれCPU1、CPU2にブレーク割込を要求
する。これらは対応するCPU選択ビットを持たず、優
先順位判定回路を経て、割込要求信号と並列したCPU
へのブレーク要求信号を活性状態にする。また、ベクタ
番号信号は一般の割込要求と兼用される。
Break request terminals are BRK1 # and BRK.
Two of 2 # are included in the emulation interface. Based on this, the BRK1 and BRK2 signals request the break interrupt to the CPU1 and CPU2, respectively. These do not have a corresponding CPU selection bit, but go through a priority determination circuit and are parallel to the interrupt request signal.
The break request signal for is activated. The vector number signal is also used as a general interrupt request.

【0204】CPU1、CPU2が、ブレーク割込を受
け付けると、それぞれブレークアクノリッジ信号BRK
AK1、BRKAK2が活性状態になる。たとえば、C
PU2が、前記のようなSCIの受信処理、パルス出力
処理を行っている場合、CPU1をブレーク割込によっ
て停止しても、CPU2はユーザの処理を実行するため
にSCIの受信を中断してしまい、いわゆるオーバラン
エラーが発生したり、パルス出力を中断してしまい、た
とえばユーザシステムのモータ駆動ができなくなってし
まうようなことを回避できる。
When the CPU1 and CPU2 accept the break interrupt, the break acknowledge signal BRK is received.
AK1 and BRKAK2 are activated. For example, C
When the PU 2 is performing the SCI reception processing and the pulse output processing as described above, even if the CPU 1 is stopped by the break interrupt, the CPU 2 interrupts the SCI reception in order to execute the user's processing. It is possible to prevent a so-called overrun error from occurring or the pulse output to be interrupted, which makes it impossible to drive the motor of the user system, for example.

【0205】次に、図14により、エミュレーション用
プロセッサを搭載したエミュレータの構成を説明する。
Next, referring to FIG. 14, the configuration of the emulator equipped with the emulation processor will be described.

【0206】コネクタ部がシングルチップマイクロコン
ピュータの代わりに応用システム(ユーザシステム)に
装着される。エミュレーション用プロセッサは、このコ
ネクタ部とインタフェースケーブルを介し、ターゲット
システムインタフェースを用いて応用システムと信号の
入出力を行う。
The connector section is attached to the application system (user system) instead of the single-chip microcomputer. The emulation processor inputs and outputs signals to and from the application system using the target system interface via the connector section and the interface cable.

【0207】また、エミュレーション用プロセッサはエ
ミュレーションインタフェースを用いてエミュレーショ
ンバス1/2に接続される。このエミュレーションバス
1がIAB1/IDB1に対応し、エミュレーションバ
ス2がIAB2/IDB2に対応する。これらのエミュ
レーションバスには、図示はされない状態信号、制御信
号などを含む。
The emulation processor is connected to the emulation bus 1/2 using the emulation interface. The emulation bus 1 corresponds to IAB1 / IDB1 and the emulation bus 2 corresponds to IAB2 / IDB2. These emulation buses include status signals, control signals, etc. not shown.

【0208】このエミュレーションバスを用いて、エミ
ュレーション用プロセッサから、応用システムとエミュ
レーション用プロセッサの内部状態に応じた情報などが
出力され、またエミュレーション用プロセッサに対し、
エミュレーションのための各種制御信号が入力される。
そして、エミュレーション用プロセッサの、図示はされ
ないエミュレートモード端子が電源レベルに固定され、
エミュレーション用プロセッサ内部ではエミュレートモ
ードが設定される。
Using this emulation bus, the emulation processor outputs information according to the internal states of the application system and the emulation processor.
Various control signals for emulation are input.
Then, the emulation mode terminal (not shown) of the emulation processor is fixed to the power supply level,
The emulation mode is set inside the emulation processor.

【0209】また、エミュレーションバスには、特に制
限はされないものの、応用システムまたはターゲットマ
イクロコンピュータ内蔵のメモリを代行するためのRA
Mでなるようなエミュレーションメモリと、エミュレー
ション用プロセッサの制御状態やエミュレーションバス
の状態を監視して、その状態が予め設定された状態に達
した時に、エミュレータ専用割込を入力して、CPUに
よるユーザプログラムの実行を停止させ、エミュレーシ
ョン用プログラム実行状態に遷移させる(ブレーク)た
めのブレーク制御回路が接続される。
The emulation bus is not particularly limited, but is an RA for substituting the memory built into the application system or the target microcomputer.
The control status of the emulation memory such as M and the emulation processor and the status of the emulation bus are monitored, and when the status reaches a preset status, the emulator dedicated interrupt is input and the user by the CPU A break control circuit for stopping the execution of the program and shifting to the emulation program execution state (break) is connected.

【0210】さらに、このエミュレーションバスには、
CPUのリード動作またはライト動作を示す信号、命令
リード動作を示す信号などに基づき、エミュレーション
バスに与えられるアドレスやデータさらには制御情報を
逐次蓄えるリアルタイムトレース回路などが接続され
る。本実施例においては、エミュレーションバス1/2
がエミュレーションメモリ、ブレーク制御回路、リアル
タイムトレース回路などにそれぞれ接続される。
Further, this emulation bus has
Based on a signal indicating a read operation or a write operation of the CPU, a signal indicating an instruction read operation, or the like, a real-time trace circuit or the like for sequentially storing the address and data given to the emulation bus and further control information is connected. In this embodiment, the emulation bus 1/2
Are connected to the emulation memory, break control circuit, real-time trace circuit, etc., respectively.

【0211】従って、エミュレーションメモリは、IA
B1/IDB1およびIAB2/IDB2のデータを独
立して並立的に入出力する。また、ブレーク制御回路
は、IAB1/IDB1およびIAB2/IDB2のア
ドレス/データ、その他の情報を独立に判定する。この
IAB1/IDB1側の条件が成立した後、IAB2/
IDB2側の条件が成立したときにブレークを要求する
ことが可能にされる。前記の通り、ブレーク割込はCP
U1およびCPU2の両方に同時に要求することもでき
るし、一方のCPUのみに要求することもできる。
Therefore, the emulation memory is IA
Data of B1 / IDB1 and IAB2 / IDB2 are independently input and output in parallel. Further, the break control circuit independently determines the address / data of IAB1 / IDB1 and IAB2 / IDB2 and other information. After the conditions on the IAB1 / IDB1 side are satisfied, IAB2 /
A break can be requested when the condition on the IDB2 side is satisfied. As mentioned above, the break interrupt is CP
Both U1 and CPU2 can be requested at the same time, or only one CPU can be requested.

【0212】また、リアルタイムトレース回路は、IA
B1/IDB1およびIAB2/IDB2のアドレス/
データ、その他の情報を独立に蓄積し、一方のCPUが
ブレークしたときには、他方のCPUのアドレス/デー
タ、その他の情報のみを蓄積する。また、一方のCPU
のみのアドレス/データ、その他の情報を選択的に蓄積
することもできる。
The real-time trace circuit is IA
Address of B1 / IDB1 and IAB2 / IDB2 /
Data and other information are stored independently, and when one CPU breaks, only the address / data of the other CPU and other information are stored. Also, one CPU
It is also possible to selectively store only the address / data and other information.

【0213】このエミュレーションメモリ、ブレーク制
御回路、リアルタイムトレース回路はコントロールバス
に接続され、コントロールバスを介してコントロールプ
ロセッサの制御を受けるようになっている。このコント
ロールバスは、エミュレーション用プロセッサ制御回路
に接続されるとともに、インタフェース回路を介して、
特に制限はされないものの、パーソナルコンピュータな
どのシステム開発装置に接続される。
The emulation memory, break control circuit, and real-time trace circuit are connected to the control bus and are controlled by the control processor via the control bus. This control bus is connected to the processor control circuit for emulation, and via the interface circuit,
Although not particularly limited, it is connected to a system development device such as a personal computer.

【0214】たとえば、システム開発装置から入力され
たプログラムをエミュレーションメモリに転送し、内蔵
ROM上に配置されるべきこのプログラムをCPUがリ
ードすると、エミュレーションメモリ上のプログラムが
リードされる。また、ブレーク条件や、リアルタイムト
レース条件などもシステム開発装置から与えることがで
きる。
For example, when the program input from the system development apparatus is transferred to the emulation memory and the CPU reads this program to be arranged in the built-in ROM, the program in the emulation memory is read. Also, break conditions and real-time trace conditions can be given from the system development device.

【0215】このブレーク条件としては、少なくとも、
CPU1とCPU2の条件が独立して設定できるように
される。また、リアルタイムトレース条件としては、少
なくとも、CPU1とCPU2のアドレス/データ、そ
の他の情報を同時に蓄積するか、選択的に一方のCPU
のアドレス/データ、その他の情報のみを蓄積するかを
選択できるようにする。
As the break condition, at least
The conditions of CPU1 and CPU2 can be set independently. As the real-time trace condition, at least the addresses / data of the CPU1 and CPU2 and other information are accumulated at the same time, or one of the CPUs is selectively selected.
It is possible to select whether to store only the address / data of, and other information.

【0216】従って、本実施例のシングルチップマイク
ロコンピュータによれば、データ処理装置としてのCP
U1,CPU2、バス制御手段としてのバスコントロー
ラ、読み出し可能な記憶手段としてのROM1,ROM
2、データ入出力手段としてのIOP0〜IOP11を
主要な構成とすることにより、以下の作用効果を得るこ
とができる。
Therefore, according to the single-chip microcomputer of this embodiment, the CP as the data processing device is
U1, CPU2, bus controller as bus control means, ROM1, ROM as readable storage means
2. By making IOP0 to IOP11 as data input / output means a main structure, the following operational effects can be obtained.

【0217】(1).CPU1とROM1を接続するIAB
1,IDB1と、CPU2とROM2を接続するIAB
2,IDB2とを独立に設け、ROM1にCPU1のプ
ログラムを、ROM2にCPU2のプログラムを格納す
ることにより、CPU1とCPU2が並列動作すること
を可能にし、またRAMPとIOP0〜IOP11など
による入出力回路を共通のPAB,PDBに接続し、C
PU1およびCPU2が利用可能とすることにより、C
PU1とCPU2の制御すべきデータを任意に配分して
利用することができる。これによって、シングルチップ
マイクロコンピュータの処理速度を向上し、資源利用効
率を向上できる。
(1). IAB connecting CPU1 and ROM1
1, IDB1, IAB connecting CPU2 and ROM2
2, the IDB2 is provided independently, and the program of the CPU1 is stored in the ROM1 and the program of the CPU2 is stored in the ROM2, so that the CPU1 and the CPU2 can operate in parallel, and the RAMP and the input / output circuit by the IOP0 to IOP11, Connected to a common PAB, PDB, C
By making PU1 and CPU2 available, C
Data to be controlled by PU1 and CPU2 can be arbitrarily distributed and used. As a result, the processing speed of the single chip microcomputer can be improved and the resource utilization efficiency can be improved.

【0218】(2).1つのシングルチップマイクロコンピ
ュータで2つの処理を同時に行うことにより、従来の複
数の半導体集積回路装置を利用していたシステムを代替
して、小型化を実現することができる。
(2). By performing two processes simultaneously by one single-chip microcomputer, it is possible to replace the conventional system using a plurality of semiconductor integrated circuit devices and realize miniaturization. .

【0219】(3).CPU1およびCPU2が、相互に割
込を要求することを可能にすることにより、容易にCP
U1,2の相互の同期を実現することができる。
(3). By allowing the CPU1 and the CPU2 to mutually request interrupts, the CP can be easily executed.
It is possible to realize mutual synchronization of U1 and U2.

【0220】(4).CPU1およびCPU2の動作によっ
て、ソフトウェアスタンバイのようなシングルチップマ
イクロコンピュータの全体を停止状態とする場合、SS
BYビットを“1”にセットした状態で、一方のCPU
がSLEEP命令を実行したときに、他方のCPUの状
態に応じて、直ちにソフトウェアスタンバイ状態に遷移
するか、一旦スリープ状態に遷移した後、他方のCPU
がSLEEP命令を実行した後にソフトウェアスタンバ
イ状態に遷移するかが自動的に選択することによって、
プログラムを作成する場合に、相互の動作状態を確認す
る必要がなく、プログラムの作成効率を向上することが
できる。
(4). In the case where the operation of the CPU1 and the CPU2 brings the entire single chip microcomputer such as software standby to the stopped state, SS
One CPU with the BY bit set to "1"
Executes the SLEEP instruction, the CPU immediately transitions to the software standby state or the sleep state according to the state of the other CPU, and then the other CPU
Automatically selects whether to switch to the software standby state after executing the SLEEP instruction.
When creating a program, it is not necessary to confirm the mutual operating states, and the efficiency of creating the program can be improved.

【0221】(5).IOP0〜IOP11をビット単位
で、いずれのCPU1,2が利用するかを指定するレジ
スタDRを設けることにより、1本の入出力ポートを2
つのCPU1,2で利用することができ、資源の利用効
率をより向上することができる。
(5). By providing a register DR that specifies which CPU 1 or 2 uses IOP0 to IOP11 in bit units, one input / output port is set to 2
It can be used by one of the CPUs 1 and 2, and the utilization efficiency of resources can be further improved.

【0222】(6).割込を、いずれのCPU1,2に要求
するかを指定するレジスタを割込許可回路に設けること
により、入出力回路を2つのCPU1,2で任意に配分
して利用することができ、資源の利用効率をより向上す
ることができる。
(6). By providing the interrupt permitting circuit with a register for designating which CPU 1 or 2 the interrupt is requested, the input / output circuit is arbitrarily distributed between the two CPUs 1 and 2 and used. It is possible to improve the efficiency of resource utilization.

【0223】(7).一方のCPUを、主に割込によるデー
タ転送を行うことに使用することにより、割込時の種々
の処理を容易に行うことができる。
(7). By using one CPU mainly for data transfer by interruption, various processing at interruption can be easily performed.

【0224】(8).ROM1,2をPROMで構成した場
合、PROMモード時にはROM1とROM2を連続し
たアドレスに配置することにより、ROM1とROM2
を1つのPROMと互換性を持たせ、PROM書込みを
効率化することができる。
(8). When the ROM1 and the ROM2 are composed of the PROM, the ROM1 and the ROM2 are arranged by arranging the ROM1 and the ROM2 at consecutive addresses in the PROM mode.
Can be made compatible with one PROM, and PROM writing can be made efficient.

【0225】(9).1つの物理的アドレスに対応して、C
PU1,2毎に異なる論理的アドレスを有する場合、ま
たは異なるCPU1,2の1つの論理的アドレスに対応
して、異なる物理的アドレスを有する場合に、いずれの
論理アドレスを使用するかを選択する制御信号を与える
ことによって、CPU1,2によってアドレスが与えら
れ、かつデータの入出力が行われるべき複数の内部バス
に、外部から内蔵の機能ブロックをリード/ライトする
ためのアドレスデータなどを前記内部バスより少ないバ
ッファ回路を介して供給可能にして、この機能ブロック
に必要なデータのリード/ライトを外部から直接行うこ
とができるようにし、このシングルチップマイクロコン
ピュータに内蔵される機能ブロックのテストの容易化、
ならびにテスティング効率の向上を実現できる。
(9). Corresponding to one physical address, C
Control for selecting which logical address to use when each PU1, 2 has a different logical address, or when it has a different physical address corresponding to one logical address of different CPUs 1, 2. Address data and the like for externally reading / writing a built-in functional block are supplied to a plurality of internal buses to which addresses are given by the CPUs 1 and 2 and data is input / output by giving signals. It is possible to supply data via a smaller number of buffer circuits so that the data required for this functional block can be directly read / written from the outside, facilitating the testing of the functional blocks contained in this single-chip microcomputer. ,
In addition, the testing efficiency can be improved.

【0226】(10). CPU1とCPU2の互換性を持た
せることにより、開発効率を向上することができ、また
サポートツールを共通化することを可能にし、開発装置
の開発効率を向上することができる。これにより、使用
者が必要とする開発装置の数を低減し、開発装置に必要
な費用を低減することができる。
(10). By making the CPU 1 and the CPU 2 compatible with each other, the development efficiency can be improved, and the support tools can be made common to improve the development efficiency of the development apparatus. it can. As a result, the number of development devices required by the user can be reduced, and the cost required for the development devices can be reduced.

【0227】(11). このシングルチップマイクロコンピ
ュータのエミュレータにおいては、2つのCPU1,2
を独立に停止する割込を有することにより、デバック効
率を向上することができる。
(11). In the emulator of this single chip microcomputer, two CPUs 1 and 2 are used.
The debug efficiency can be improved by having an interrupt that independently stops the.

【0228】また、本実施例においては、図15に示す
ように、図1のシングルチップマイクロコンピュータに
対して、ダイレクトメモリアクセスコントローラ(DM
AC)がCPU1と同様にIAB1,IDB1に接続さ
れて追加されることにより、CPU1とDMACを、バ
スコントローラのバス権調停に基づいて互いに排他的に
動作させることができる。
Further, in this embodiment, as shown in FIG. 15, a direct memory access controller (DM) is added to the single chip microcomputer of FIG.
AC) is connected to and added to IAB1 and IDB1 as in the case of CPU1, so that CPU1 and DMAC can mutually operate based on the bus right arbitration of the bus controller.

【0229】すなわち、DMACは、起動要因として、
CPU1が所定の制御ビットを“1”にセットすること
によって、データ転送を行うオートリクエストや、DM
A要求端子に所定の信号が与えられたときに、データ転
送を行う外部リクエスト機能を持ち、また転送モードと
して、オートリクエストのとき、CPU1を停止してバ
スを専有してデータ転送を行うバーストモードや、1回
の転送毎にバス権を解放してCPU1と交互に動作しつ
つ、データ転送を行うサイクルスチールモードを持つこ
とにより可能となる。
That is, the DMAC is
When the CPU 1 sets a predetermined control bit to “1”, an auto request for data transfer or DM
It has an external request function to perform data transfer when a predetermined signal is given to the A request terminal, and the transfer mode is a burst mode in which the CPU 1 is stopped and the bus is exclusively used to transfer data when in auto request. Alternatively, it is possible by having a cycle steal mode in which the bus right is released for each transfer and the data is transferred while operating alternately with the CPU 1.

【0230】また、割込要求信号を起動要求信号とし
て、データ転送を行うことができ、CPU2が割込でデ
ータ転送を行うより高速のデータ転送が可能である。
Data can be transferred by using the interrupt request signal as a start request signal, and the data transfer can be performed at a higher speed than when the CPU 2 transfers data by interrupt.

【0231】さらに、バス調停は、リード/ライトの競
合時に行うほか、時分割で動作するようにしてもよい。
たとえば、8ステート毎にCPU1およびCPU2にバ
ス権を与える。また、8ステート間にバスが終了しなか
った場合には、終了するまで動作する。たとえば、CP
U1には4ステート、CPU2には12ステートずつバ
ス権を与えてもよい。
Further, bus arbitration may be performed in a time division manner in addition to the read / write conflict.
For example, the bus right is given to the CPU1 and the CPU2 every eight states. If the bus does not end during the eight states, it operates until it ends. For example, CP
Bus states may be given to U1 in 4 states and to CPU 2 in 12 states.

【0232】(実施例2)図16は本発明の他の実施例
であるシングルチップマイクロコンピュータを示すブロ
ック図、図17は本実施例のシングルチップマイクロコ
ンピュータにおけるバスの動作タイミング図である。
(Embodiment 2) FIG. 16 is a block diagram showing a single-chip microcomputer which is another embodiment of the present invention, and FIG. 17 is a bus operation timing chart in the single-chip microcomputer of the present embodiment.

【0233】本実施例のシングルチップマイクロコンピ
ュータは、実施例1に対して、IAB1とIAB2、I
DB1とIDB2が共通化されてIAB/IDBとさ
れ、データバス幅を32ビットとし、同様にROM1と
ROM2、RAM1とRAM2が共通化されてリードオ
ンリメモリ(ROM:読み出し可能な記憶手段)/ラン
ダムアクセスメモリ(RAM)とされ、これらは32ビ
ット同時にリード/ライト可能にしている。
The single-chip microcomputer of this embodiment is different from that of the first embodiment in that IAB1, IAB2, and IAB1.
DB1 and IDB2 are commonly used as IAB / IDB, the data bus width is 32 bits, and ROM1 and ROM2 and RAM1 and RAM2 are also commonly used and read-only memory (ROM: readable storage means) / random This is an access memory (RAM), and these 32 bits can be simultaneously read / written.

【0234】また、CPU1(第1のデータ処理装置)
およびCPU2(第2のデータ処理装置)は時分割で、
内部アドレスバス(IAB)/内部データバス(ID
B)を利用して、ROM/RAMをリード/ライトす
る。前記の通り、これらのCPU1/2の命令は16ビ
ット単位であり、最小命令を1ステートで実行する。
Also, the CPU 1 (first data processing device)
And the CPU 2 (second data processing device) is time-shared,
Internal address bus (IAB) / internal data bus (ID
B /) is used to read / write the ROM / RAM. As described above, these CPU1 / 2 instructions are in 16-bit units, and the minimum instruction is executed in one state.

【0235】すなわち、1つのCPU1/2に対して、
命令については16ビットを1ステートでリードして、
命令リード量と命令実行量が同等となる。32ビットで
命令をリードすれば、命令リードの回数を半分にして、
IAB/IDBおよびROM/RAMの使用頻度を1/
2とすることができる。従って、CPU1およびCPU
2が交互にIAB/IDBを利用してROMから命令を
読み出すことができ、並列に実行可能とすることができ
る。
That is, for one CPU 1/2,
For instructions, read 16 bits in 1 state,
The instruction read amount and the instruction execution amount are equal. If you read an instruction with 32 bits, the number of instruction reads will be halved,
1 / IAB / IDB and ROM / RAM usage frequency
It can be 2. Therefore, CPU1 and CPU
2 can alternately read the instruction from the ROM by using the IAB / IDB, and can execute them in parallel.

【0236】実際には、分岐命令などのように32ビッ
トで命令をリードしても、16ビットが無駄になってし
まったり、データアクセスのときには使用頻度を減らせ
なっかたりして完全な並列動作はできないが、前記の通
り命令のリード回数が多く、本実施例によっても、実施
例1に対して処理速度をそれほど低下させることがな
い。また、ROM/RAMを共通化することによって、
物理的規模を低下させたり、CPU1/2の使用するメ
モリ容量を任意に設定したりすることができる。
Actually, even if an instruction is read with 32 bits such as a branch instruction, 16 bits are wasted, or the frequency of use cannot be reduced when accessing data, so that a complete parallel operation is possible. However, as described above, the number of times the instruction is read is large, and thus the present embodiment does not significantly reduce the processing speed as compared with the first embodiment. Also, by sharing the ROM / RAM,
It is possible to reduce the physical scale and arbitrarily set the memory capacity used by the CPU 1/2.

【0237】次に、図17により内部バスの動作タイミ
ングの一例を説明する。
Next, an example of the operation timing of the internal bus will be described with reference to FIG.

【0238】なお、CPU1/2のプログラムは図6と
同様であり、バスの使用権は、前回バスを使用していた
CPU1/2が非優先とされ、そのほかの場合にはCP
U2を優先するものとする。
The program for CPU1 / 2 is the same as that shown in FIG. 6, and the right to use the bus is such that CPU1 / 2 that used the bus last time is given priority, and in other cases, CP is used.
U2 has priority.

【0239】たとえば、IAB1/2は、φ#に同期し
て出力され、またCPU1/2のROMおよびRAMに
対するリードは、32ビット一括して1ステートで行わ
れる。ただし、これは4の倍数番地から始まる32ビッ
トデータに限定される。
For example, IAB1 / 2 is output in synchronism with φ #, and reading of ROM and RAM of CPU1 / 2 is carried out in one state for 32 bits at a time. However, this is limited to 32-bit data starting from an address that is a multiple of 4.

【0240】まず、IAB1/2はφ#に同期して、1
ステート出力され、特に制限はされないものの、ROM
およびRAMの中でφに同期してラッチされる。これに
対応するリードデータはφ#に同期して出力され、φ#
が活性状態の期間にCPU1/2に取り込まれる。
First, IAB1 / 2 synchronizes with φ # to 1
ROM is output, but not limited to state output.
And latched in RAM in synchronism with φ. The corresponding read data is output in synchronization with φ #, and φ #
Are taken into CPU1 / 2 during the active state.

【0241】また、前記同様に、RAMPに対するリー
ド/ライトは2ステート、I/Oに対するリード/ライ
トは3ステートで行われる。φ#に同期したIAB1/
2は、バスコントローラでφに同期化される。この場合
に、先頭命令の存在するアドレスm、nは4の倍数番地
とされる。
Similarly to the above, read / write for RAMP is performed in 2 states and read / write for I / O is performed in 3 states. IAB1 / synchronized with φ #
2 is synchronized with φ by the bus controller. In this case, the addresses m and n at which the head instruction exists are addresses that are multiples of 4.

【0242】T1では、CPU1/2のROMからの命
令フェッチが要求されるが、CPU2の命令フェッチが
優先され、IABにアドレスmが出力される。
At T1, the instruction fetch from the ROM of the CPU1 / 2 is requested, but the instruction fetch of the CPU2 is prioritized and the address m is output to the IAB.

【0243】T2では、ROMからIDBに読み出され
た命令コード(BCLR命令の第1、第2ワード)をC
PU2が取り込むとともに、CPU1の命令フェッチの
アドレスnがIABに出力される。
At T2, the instruction code (first and second words of the BCLR instruction) read from the ROM to the IDB is changed to C.
The address n of the instruction fetch of the CPU 1 is output to the IAB while being fetched by the PU 2.

【0244】T3では、ROMからIDBに読み出され
た命令コード(CMP、BEQ命令)をCPU1が取り
込むとともに、CPU2はアドレスSSRをIABに出
力する。自動的に、CPU2のPAB/PDBの使用が
許可される。この場合に、SCIのリードが3ステート
必要であるため、CPU2待機信号がハイレベルにな
る。
At T3, the CPU 1 fetches the instruction code (CMP, BEQ instruction) read from the ROM into the IDB, and the CPU 2 outputs the address SSR to the IAB. The use of the PAB / PDB of the CPU 2 is automatically permitted. In this case, since the SCI read requires three states, the CPU2 standby signal goes high.

【0245】T4では、IABの内容がPABに出力さ
れて、SCIのレジスタSSRの内容がリードされる。
このリードデータはT6で得られる。一方、CPU1が
命令フェッチを要求するが、CPU2がバスを使用中で
あるので、保留とされ、CPU1待機信号がハイレベル
になる。
At T4, the contents of IAB are output to PAB, and the contents of SCI register SSR are read.
This read data is obtained at T6. On the other hand, the CPU 1 requests the instruction fetch, but since the CPU 2 is using the bus, it is put on hold and the CPU 1 standby signal goes high.

【0246】T5では、CPU1/2ともに待機状態と
される。
At T5, both CPU 1/2 are in the standby state.

【0247】T6では、SCIのレジスタSSRから読
み出されたデータをPDB、IDBを介してCPU2が
取り込む。また、CPU2は次の命令フェッチを要求す
るが、CPU1の命令フェッチが優先され、CPU1待
機信号がロウレベルとなり、CPU2待機信号ハイレベ
ルのままである。この場合に、CPU1の命令フェッチ
のアドレスn+4をIABに出力する。
At T6, the CPU 2 takes in the data read from the SCI register SSR via the PDB and IDB. Further, the CPU 2 requests the next instruction fetch, but the instruction fetch of the CPU 1 is prioritized, the CPU 1 standby signal becomes the low level, and the CPU 2 standby signal remains at the high level. In this case, the instruction fetch address n + 4 of the CPU 1 is output to the IAB.

【0248】T7では、ROMからIDBに読み出され
た命令コード(BTST命令の第1ワード)をCPU1
が取り込む。この場合に、CPU1は分岐先命令のフェ
ッチを要求するが、CPU2の命令フェッチが優先さ
れ、CPU2待機信号がロウレベルとなり、CPU1待
機信号ハイレベルになる。
At T7, the instruction code (first word of the BTST instruction) read from the ROM to the IDB is sent to the CPU1.
Takes in. In this case, the CPU 1 requests the fetch of the branch destination instruction, but the instruction fetch of the CPU 2 is prioritized, the CPU 2 standby signal becomes low level, and the CPU 1 standby signal becomes high level.

【0249】T8では、ROMからIDBに読み出され
た次の命令コードをCPU2が取り込む。この場合に、
CPU1待機信号がロウレベルとなり、CPU1の命令
フェッチのアドレスN1をIABに出力する。
At T8, the CPU 2 takes in the next instruction code read from the ROM to the IDB. In this case,
The CPU1 standby signal goes low, and the instruction fetch address N1 of the CPU1 is output to the IAB.

【0250】T9では、ROMからIDBに読み出され
た命令コードをCPU1が取り込むが、これは分岐条件
が不成立で実行されない。先にフェッチ済みのBTST
命令の第1ワードが有効になる。この場合に、CPU1
は次の命令フェッチを要求するが、CPU2が優先さ
れ、CPU1待機信号ハイレベルになる。
At T9, the CPU 1 fetches the instruction code read from the ROM to the IDB, but this is not executed because the branch condition is not satisfied. BTST fetched first
The first word of the instruction is valid. In this case, CPU1
Requests the next instruction fetch, but CPU2 is prioritized and the CPU1 standby signal goes high.

【0251】一方、CPU2はアドレスSSRをIAB
に出力する。自動的に、CPU2のPAB/PDBの使
用が許可される。ここで、SCIのリードが3ステート
必要であるため、CPU2待機信号がハイレベルにな
る。
On the other hand, the CPU 2 sets the address SSR to IAB.
Output to. The use of the PAB / PDB of the CPU 2 is automatically permitted. Here, since the SCI read requires three states, the CPU2 standby signal goes high.

【0252】T10では、IABの内容がPABに出力
され、CPU2はアドレスSSRにライトすべきデータ
をIDB経由PDBに出力する。ここで、CPU1は待
機状態とされる。
At T10, the contents of IAB are output to PAB, and CPU 2 outputs the data to be written in address SSR to PDB via IDB. Here, the CPU 1 is in a standby state.

【0253】T11では、CPU2待機信号がロウレベ
ルになる。
At T11, the CPU2 standby signal goes low.

【0254】T12では、CPU1待機信号がロウレベ
ルとなり、CPU1の命令フェッチのアドレスn+6を
IABに出力する。
At T12, the CPU1 standby signal goes low, and the instruction fetch address n + 6 of the CPU1 is output to the IAB.

【0255】T13では、ROMからIDBに読み出さ
れた命令コード(BTST命令の第2ワード)をCPU
1が取り込む。この場合に、CPU1はアドレスPOR
Tのリードを要求し、CPU2はROMからの命令フェ
ッチを要求するが、CPU2が優先され、CPU1待機
信号ハイレベルになる。ここで、IABにCPU2の命
令フェッチのアドレスm+8が出力される。
At T13, the instruction code (the second word of the BTST instruction) read from the ROM to the IDB is sent to the CPU.
1 takes in. In this case, the CPU1 has the address POR
The CPU 2 requests the read of T and the instruction fetch from the ROM, but the CPU 2 is prioritized and the CPU 1 standby signal becomes the high level. Here, the address m + 8 of the instruction fetch of the CPU 2 is output to the IAB.

【0256】T14では、ROMからIDBに読み出さ
れた次の命令コードをCPU2が取り込む。この場合
に、CPU1はアドレスPORTをIABに出力する。
ここで、入出力ポートのリードが3ステート必要である
ため、CPU1待機信号が再度ハイレベルとなる。
At T14, the CPU 2 takes in the next instruction code read from the ROM to the IDB. In this case, the CPU 1 outputs the address PORT to IAB.
Here, since the read of the input / output port requires three states, the CPU1 standby signal becomes high level again.

【0257】T15では、IABの内容がPABに出力
されて、入出力ポートのレジスタPORTの内容がリー
ドされる。このリードデータはT17で得られる。一
方、CPU2が命令フェッチを要求するが、CPU1が
バスを使用中であるので、保留とされ、CPU2待機信
号がハイレベルになる。
At T15, the contents of IAB are output to PAB and the contents of the register PORT of the input / output port are read. This read data is obtained at T17. On the other hand, the CPU 2 requests the instruction fetch, but since the CPU 1 is using the bus, it is put on hold and the CPU 2 standby signal goes high.

【0258】以上のように、本実施例においては、図6
の実施例1に比較して、実行時間が長くなっているが、
少なくとも1つのCPU1/2で実現する場合よりも短
くできる。
As described above, in this embodiment, as shown in FIG.
Although the execution time is longer than that of the first embodiment,
It can be shorter than the case where it is realized by at least one CPU 1/2.

【0259】まず、割込やサブルーチン分岐などでCP
U1/2の内部状態を退避したり、復帰したりする作業
を除くことができる。また、2つのCPU1/2を単純
に交互に動作するよりも短くできる。これは、ROMか
らCPU1/2が単位時間に実行できるより大きい量の
命令を単位時間にリード可能にし、バスを使用しないで
よい時間を作り、これを他方のCPU1/2が利用可能
としているためである。
First, a CP is executed at an interrupt or a subroutine branch.
The work of saving and restoring the internal state of U1 / 2 can be excluded. Further, the two CPUs 1/2 can be shortened as compared with the case where they are simply operated alternately. This is because a larger amount of instructions that can be executed in a unit time by the CPU 1/2 from the ROM can be read in a unit time, and a time that does not use the bus is created, and this is made available to the other CPU 1/2. Is.

【0260】これは、内蔵のROMにプログラムを配置
する場合に特に有効であり、CPUがリード/ライトす
る大部分が命令のリードであることと、内部のメモリは
外部のメモリに対して読み出し速度を向上しやすいこ
と、バスの幅を容易に広げられるためである。
This is particularly effective when the program is arranged in the built-in ROM. Most of the read / write by the CPU is instruction read, and the internal memory has a read speed with respect to the external memory. This is because it is easy to improve and the width of the bus can be easily expanded.

【0261】このとき、CPU2は、前記DMACやD
TCのようなデータ処理装置またはデータ転送装置であ
っても、同様にCPU1の処理速度を低下することを最
小限として、データ転送を行うことができる。特に、デ
ータ転送に先立って転送情報をRAMから読み出す必要
がある前記DTCに特に有効である。
At this time, the CPU 2 causes the DMAC and D
Even with a data processing device such as a TC or a data transfer device, similarly, data transfer can be performed with a minimum decrease in the processing speed of the CPU 1. Particularly, it is particularly effective for the DTC that needs to read the transfer information from the RAM before the data transfer.

【0262】従って、本実施例のシングルチップマイク
ロコンピュータによれば、データ処理装置としてのCP
U1,CPU2、読み出し可能な記憶手段としてのRO
Mを主要な構成とし、IAB/IDB、ROM/RAM
を共通化することにより、実施例1に加えて以下の作用
効果を得ることができる。
Therefore, according to the single-chip microcomputer of this embodiment, the CP as the data processing device is
U1, CPU2, RO as readable storage means
M is the main configuration, IAB / IDB, ROM / RAM
In addition to Embodiment 1, the following operational effects can be obtained.

【0263】すなわち、CPU1/2が単位時間に実行
できる命令のバイト数より、大きなバイト数を単位時間
でリード可能なIAB/IDBに、複数のCPU1/2
を接続することにより、複数のCPU1/2が時分割的
にIAB/IDBを利用して実質的に並立動作を可能に
し、また共通のROM/RAMを任意に配分して利用
し、シングルチップマイクロコンピュータの処理速度を
向上し、資源利用効率を向上することができる。
That is, a plurality of CPU1 / 2 are added to the IAB / IDB capable of reading a larger number of bytes in a unit time than the number of bytes of an instruction that the CPU1 / 2 can execute in a unit time.
, A plurality of CPUs 1/2 can use the IAB / IDB in a time-sharing manner to enable substantially parallel operation, and a common ROM / RAM can be arbitrarily distributed to be used, and a single-chip micro The processing speed of the computer can be improved and the resource utilization efficiency can be improved.

【0264】以上、本発明者によってなされた発明を実
施例1および2に基づき具体的に説明したが、本発明は
前記実施例に限定されるものではなく、その要旨を逸脱
しない範囲で種々変更可能であることはいうまでもな
い。
Although the invention made by the present inventor has been specifically described based on the first and second embodiments, the present invention is not limited to the above embodiments and various modifications can be made without departing from the scope of the invention. It goes without saying that it is possible.

【0265】たとえば、バスの具体的な回路構成につい
ても種々変更可能であり、IAB1、IDB1とPA
B、PDBを直結してもよい。この場合には、CPU1
とCPU2が並立的にプログラムを読み出して実行でき
るようにすればよく、これによって相互に動作を制約す
る頻度が高くなるが、物理的規模を縮小できる場合があ
る。
For example, the specific circuit configuration of the bus can be changed in various ways, such as IAB1, IDB1 and PA.
B and PDB may be directly connected. In this case, CPU1
The CPU 2 and the CPU 2 may read the programs in parallel and execute the programs. This increases the frequency of mutually restricting the operations, but the physical scale may be reduced in some cases.

【0266】また、RAM1、RAM2、RAMPを1
つの機能ブロックとしてもよい。
RAM1, RAM2 and RAMP are set to 1
It may be one functional block.

【0267】さらに、CPUの数も3個以上にすること
ができ、この場合には複数のCPUを第1のバスに接続
して、バスを時分割で利用し、さらに別の単数または複
数のCPUを第2のバスに接続してもよい。
Furthermore, the number of CPUs can be three or more. In this case, a plurality of CPUs are connected to the first bus, the buses are used in a time-sharing manner, and further one or more CPUs are used. The CPU may be connected to the second bus.

【0268】また、内蔵のROMはマスクROM、PR
OMの他、EEPROM、フラッシュメモリなどのCP
Uが実行すべきプログラムを格納するメモリであればよ
い。このROM1とROM2が異なっていてもよい。
The built-in ROM is a mask ROM or PR.
CP such as OM, EEPROM, flash memory, etc.
Any memory may be used as long as it stores a program to be executed by U. The ROM1 and the ROM2 may be different.

【0269】さらに、タイマ、SCIなどの割込を要求
する機能ブロックあるいはパルス出力回路などの割込処
理の対象となる機能ブロックの種類、機能、数などには
何等制約されない。
Furthermore, there is no restriction on the type, function, number, etc. of the functional blocks requiring interrupts, such as timers and SCIs, or the functional blocks subject to interrupt processing, such as the pulse output circuit.

【0270】以上の説明では、主として本発明者によっ
てなされた発明をその利用分野であるシングルチップマ
イクロコンピュータに適用した場合について説明した
が、これに限定されるものではなく、その他の半導体集
積回路装置にも適用可能であり、本発明は、少なくとも
複数のデータ処理装置を内蔵した半導体集積回路装置に
適用することができる。
In the above description, the case where the invention made by the present inventor is mainly applied to the single-chip microcomputer which is the field of use thereof has been described, but the invention is not limited to this and other semiconductor integrated circuit devices. The present invention can also be applied to a semiconductor integrated circuit device including at least a plurality of data processing devices.

【0271】[0271]

【発明の効果】本願において開示される発明のうち、代
表的なものによって得られる効果を簡単に説明すれば、
以下のとおりである。
The effects obtained by the typical ones of the inventions disclosed in the present application will be briefly described as follows.
It is as follows.

【0272】(1).2つのデータ処理装置に並立したバス
によって独立した2つの読み出し可能な記憶手段に格納
した命令をリード可能にしたり、バスの幅を拡張してデ
ータ処理装置が単位時間に実行可能な命令数以上の命令
をリード可能にして、2つのデータ処理装置を並立的に
動作可能な命令を供給する機能を内蔵するシングルチッ
プマイクロコンピュータまたは半導体集積回路装置にお
いて、複数の記憶手段を同時に選択可能とし、複数の記
憶手段の同時書込みまたは同時読み出しを行うことによ
って割込によるデータ処理のチャネル数の制約をなく
し、さらにデータ処理内容を任意とすることができるの
で、任意の転送処理の実現、物理的規模の縮小、転送チ
ャネル数の制約解除、あるいはシングルチップマイクロ
コンピュータまたは半導体集積回路装置の製造費用の削
減が可能となる。
(1). Instructions stored in two independent readable storage means can be made readable by buses arranged in parallel in two data processing devices, or the width of the bus is expanded so that the data processing device can operate in unit time. In a single-chip microcomputer or a semiconductor integrated circuit device having a built-in function of making it possible to read instructions more than the number of executable instructions and supplying instructions capable of operating two data processing devices in parallel, It is possible to select at the same time, and by performing simultaneous writing or simultaneous reading of a plurality of storage means, the restriction on the number of channels for data processing by interruption can be eliminated, and the content of data processing can be made arbitrary. Realization, reduction of physical size, restriction of number of transfer channels, single-chip microcomputer or half It is possible to reduce the manufacturing cost of the conductor integrated circuit device.

【0273】(2).前記(1) により、第1、第2のデータ
処理装置を同時に動作させることができるので、シング
ルチップマイクロコンピュータまたは半導体集積回路装
置の処理速度の向上が可能となる。
(2) According to the above (1), the first and second data processing devices can be operated simultaneously, so that the processing speed of the single chip microcomputer or the semiconductor integrated circuit device can be improved.

【0274】(3).前記シングルチップマイクロコンピュ
ータまたは半導体集積回路装置のエミュレーション用プ
ロセッサ、さらにエミュレータによれば、2つのデータ
処理装置を独立に停止させることができるので、デバッ
ク効率の向上を図ることが可能となる。
(3). According to the emulation processor of the single-chip microcomputer or the semiconductor integrated circuit device, and further the emulator, two data processing devices can be independently stopped, so that debugging efficiency can be improved. Is possible.

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

【図1】本発明の実施例1であるシングルチップマイク
ロコンピュータを示すブロック図である。
FIG. 1 is a block diagram showing a single-chip microcomputer that is Embodiment 1 of the present invention.

【図2】実施例1のシングルチップマイクロコンピュー
タにおける全体のアドレスマップの説明図である。
FIG. 2 is an explanatory diagram of an entire address map in the single-chip microcomputer according to the first embodiment.

【図3】実施例1におけるシングルチップマイクロコン
ピュータのバスの接続状態のブロック図である。
FIG. 3 is a block diagram of a bus connection state of the single-chip microcomputer according to the first exemplary embodiment.

【図4】実施例1における割込コントローラの概略ブロ
ック図である。
FIG. 4 is a schematic block diagram of an interrupt controller according to the first embodiment.

【図5】実施例1における割込要求ビットおよび割込許
可回路の概略ブロック図である。
FIG. 5 is a schematic block diagram of an interrupt request bit and an interrupt permission circuit according to the first embodiment.

【図6】実施例1におけるバスの動作タイミング図であ
る。
FIG. 6 is an operation timing chart of the bus in the first embodiment.

【図7】実施例1における低消費電力状態制御回路の概
略ブロック図である。
FIG. 7 is a schematic block diagram of a low power consumption state control circuit according to the first embodiment.

【図8】実施例1における入出力ポートを制御するレジ
スタ構成の説明図である。
FIG. 8 is an explanatory diagram of a register configuration for controlling an input / output port according to the first embodiment.

【図9】実施例1における入出力ポートの概略ブロック
図である。
FIG. 9 is a schematic block diagram of an input / output port in the first embodiment.

【図10】実施例1におけるPROMのアドレスマップ
である。
FIG. 10 is an address map of the PROM in the first embodiment.

【図11】実施例1におけるPROMモードの主要部の
ブロック図である。
FIG. 11 is a block diagram of a main part of a PROM mode according to the first embodiment.

【図12】実施例1におけるテストモードの主要部のブ
ロック図である。
FIG. 12 is a block diagram of a main part of a test mode in the first embodiment.

【図13】実施例1におけるエミュレーション用プロセ
ッサの概略ブロック図である。
FIG. 13 is a schematic block diagram of an emulation processor according to the first embodiment.

【図14】実施例1におけるエミュレータの概略ブロッ
ク図である。
FIG. 14 is a schematic block diagram of an emulator according to the first exemplary embodiment.

【図15】実施例1におけるシングルチップマイクロコ
ンピュータの変形例を示すブロック図である。
FIG. 15 is a block diagram showing a modification of the single-chip microcomputer according to the first embodiment.

【図16】本発明の実施例2であるシングルチップマイ
クロコンピュータを示すブロック図である。
FIG. 16 is a block diagram showing a single-chip microcomputer that is Embodiment 2 of the present invention.

【図17】実施例2のシングルチップマイクロコンピュ
ータにおけるバスの動作タイミング図である。
FIG. 17 is an operation timing chart of the bus in the single-chip microcomputer according to the second embodiment.

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

CPU1 中央処理装置(第1のデータ処理装置) CPU2 中央処理装置(第2のデータ処理装置) ROM1 リードオンリメモリ(第1の読み出し可能な
記憶手段) ROM2 リードオンリメモリ(第2の読み出し可能な
記憶手段) RAM1,RAM2,RAMP ランダムアクセスメモ
リ SCI シリアルコミュニケーションインタフェース A/D A/D変換器 IOP0〜IOP11 入出力ポート(データ入出力手
段) IAB1 内部アドレスバス(第1のバス) IAB2 内部アドレスバス(第2のバス) PAB 内部アドレスバス(第3のバス) IDB1 内部データバス(第1のバス) IDB2 内部データバス(第2のバス) PDB 内部データバス(第3のバス) DMAC ダイレクトメモリアクセスコントローラ ROM リードオンリメモリ(読み出し可能な記憶手
段) RAM ランダムアクセスメモリ IAB 内部アドレスバス IDB 内部データバス
CPU1 central processing unit (first data processing device) CPU2 central processing unit (second data processing device) ROM1 read only memory (first readable storage means) ROM2 read only memory (second readable storage) Means) RAM1, RAM2, RAMP Random access memory SCI Serial communication interface A / D A / D converter IOP0 to IOP11 I / O ports (data I / O means) IAB1 internal address bus (first bus) IAB2 internal address bus (first) 2 bus) PAB internal address bus (third bus) IDB1 internal data bus (first bus) IDB2 internal data bus (second bus) PDB internal data bus (third bus) DMAC direct memory access controller ROM Reed O Memory (readable storage means) RAM random access memory IAB internal address bus IDB internal data bus

Claims (14)

【特許請求の範囲】[Claims] 【請求項1】 第1、第2のデータ処理装置と、バス制
御手段と、第1、第2の読み出し可能な記憶手段と、デ
ータ入出力手段とを有する半導体集積回路装置であっ
て、前記第1のデータ処理装置と、前記バス制御手段
と、前記第1の読み出し可能な記憶手段とが第1のバス
によって相互に接続され、前記第2のデータ処理装置
と、前記バス制御手段と、前記第2の読み出し可能な記
憶手段とが第2のバスによって相互に接続され、かつ前
記バス制御手段と、前記データ入出力手段とが第3のバ
スによって相互に接続され、前記バス制御手段は前記第
1のバスと前記第2のバスを前記第3のバスに接続する
かしないかを選択し、前記第1のデータ処理装置の前記
第1のバスを使用した読み出しと、前記第2のデータ処
理装置の前記第2のバスを使用した読み出しとを並行し
て行うことが可能であることを特徴とする半導体集積回
路装置。
1. A semiconductor integrated circuit device having first and second data processing devices, bus control means, first and second readable storage means, and data input / output means, wherein: A first data processing device, the bus control means, and the first readable storage means are mutually connected by a first bus, and the second data processing device, the bus control means, The second readable storage means is mutually connected by a second bus, and the bus control means and the data input / output means are mutually connected by a third bus. Selecting whether to connect the first bus and the second bus to the third bus or not, and to perform reading using the first bus of the first data processing device and the second bus. The second bus of the data processing device A semiconductor integrated circuit device characterized in that it is possible to read used data in parallel.
【請求項2】 第1、第2のデータ処理装置と、読み出
し可能な記憶手段とを有する半導体集積回路装置であっ
て、前記第1、第2のデータ処理装置と、前記読み出し
可能な記憶手段とがバスによって相互に接続され、前記
第1のデータ処理装置は、前記バスを使用して命令を読
み出して実行するものであって、単位時間に実行可能な
命令より大きい量の命令を前記バスを使用して前記読み
出し可能な記憶手段から読み出し、連続的に前記バスを
使用して前記読み出し可能な記憶手段を読み出すことな
く、前記第1のデータ処理装置の命令実行速度の低下を
最小限として、前記第2のデータ処理装置が命令を前記
読み出し可能な記憶手段から読み出すことを特徴とする
半導体集積回路装置。
2. A semiconductor integrated circuit device having first and second data processing devices and readable storage means, wherein the first and second data processing devices and the readable storage means are provided. Are connected to each other by a bus, and the first data processing device uses the bus to read and execute an instruction. To reduce the instruction execution speed of the first data processing device to a minimum without continuously reading the readable storage means using the bus and reading the readable storage means using the bus. The semiconductor integrated circuit device, wherein the second data processing device reads an instruction from the readable storage means.
【請求項3】 請求項1または2記載の半導体集積回路
装置であって、割込を要求可能な入出力手段と割込制御
手段とを有し、前記割込を要求可能な入出力手段が出力
する割込信号を前記割込制御手段に入力し、前記割込制
御手段は前記第1、第2のデータ処理装置にそれぞれ第
1、第2の割込要求信号を出力し、前記割込信号が活性
状態となることに呼応して、前記第1、第2の割込要求
信号のいずれを活性状態とするかを選択する手段を有す
ることを特徴とする半導体集積回路装置。
3. The semiconductor integrated circuit device according to claim 1, further comprising an input / output unit capable of requesting an interrupt and an interrupt control unit, wherein the input / output unit capable of requesting the interrupt is provided. An interrupt signal to be output is input to the interrupt control means, and the interrupt control means outputs first and second interrupt request signals to the first and second data processing devices, respectively, A semiconductor integrated circuit device comprising: means for selecting which of the first and second interrupt request signals is to be activated in response to the activation of the signal.
【請求項4】 請求項1、2または3記載の半導体集積
回路装置であって、前記第2のデータ処理装置が書込み
可能なレジスタ手段を有し、前記レジスタ手段の状態に
よって前記第1のデータ処理装置に割込を要求すること
を可能とすることを特徴とする半導体集積回路装置。
4. The semiconductor integrated circuit device according to claim 1, 2 or 3, wherein said second data processing device has a writable register means, and said first data depends on a state of said register means. A semiconductor integrated circuit device capable of requesting an interrupt to a processing device.
【請求項5】 請求項1、2、3または4記載の半導体
集積回路装置であって、割込を要求する端子を有し、前
記端子に所定の信号変化が発生することに呼応して、前
記第1、第2のデータ処理装置の両方に割込を要求する
ことを可能とすることを特徴とする半導体集積回路装
置。
5. The semiconductor integrated circuit device according to claim 1, further comprising a terminal for requesting an interrupt, wherein a predetermined signal change occurs at the terminal, A semiconductor integrated circuit device capable of requesting an interrupt to both of the first and second data processing devices.
【請求項6】 請求項1、2、3、4または5記載の半
導体集積回路装置であって、レジスタ手段を含む入出力
手段を有し、前記入出力手段に含まれるレジスタ手段の
少なくとも1つのレジスタ手段は複数のビットを持ち、
別のレジスタ手段の状態によって前記第1、第2のデー
タ処理装置のいずれから書込み可能とするかを選択可能
とすることを特徴とする半導体集積回路装置。
6. The semiconductor integrated circuit device according to claim 1, further comprising an input / output unit including a register unit, and at least one of the register units included in the input / output unit. The register means has multiple bits,
A semiconductor integrated circuit device, characterized in that it is possible to select which of the first and second data processing devices is writable by the state of another register means.
【請求項7】 請求項6記載の半導体集積回路装置であ
って、前記第1、第2のデータ処理装置のいずれから書
込み可能とするかを選択可能とされるレジスタ手段は端
子の状態を制御するものであることを特徴とする半導体
集積回路装置。
7. The semiconductor integrated circuit device according to claim 6, wherein the register means that is selectable from which of the first and second data processing devices is writable controls the state of a terminal. What is claimed is: 1. A semiconductor integrated circuit device.
【請求項8】 請求項1、2、3、4、5、6または7
記載の半導体集積回路装置であって、前記半導体集積回
路装置の全体を停止する全体停止状態、前記第1のデー
タ処理装置を停止する第1の待機状態、前記第2のデー
タ処理装置を停止する第2の待機状態をそれぞれ設定す
る全体停止手段、第1の待機手段、第2の待機手段を有
し、前記全体停止状態、前記第1の待機状態、前記第2
の待機状態は前記第1、第2のデータ処理装置が所定の
遷移命令を実行したことに呼応して遷移するものであっ
て、前記第1のデータ処理装置が前記全体停止状態を設
定する前記遷移命令を実行したとき、前記第2のデータ
処理装置が前記第2の待機状態であれば前記全体停止状
態に遷移し、前記第2のデータ処理装置が前記第2の待
機状態でなければ前記第1の待機状態に遷移することを
特徴とする半導体集積回路装置。
8. A method according to claim 1, 2, 3, 4, 5, 6 or 7.
The semiconductor integrated circuit device according to claim 1, wherein the semiconductor integrated circuit device is entirely stopped, a first standby state in which the first data processing device is stopped, and a second data processing device are stopped. It has an overall stop means, a first standby means, and a second standby means for respectively setting a second standby state, and has the overall stop state, the first standby state, and the second
Of the first data processing device and the second data processing device in response to the execution of a predetermined transition instruction, and the first data processing device sets the whole stop state. When the transition command is executed, if the second data processing device is in the second standby state, transition to the general stop state, and if the second data processing device is not in the second standby state, A semiconductor integrated circuit device, characterized in that it transits to a first standby state.
【請求項9】 請求項1、2、3、4、5、6、7また
は8記載の半導体集積回路装置であって、テストモード
設定手段と、バッファ手段とを有し、前記バッファ手段
は、前記テストモード設定手段がテストモードを設定し
たときに、アドレス、リードおよびライト信号、アドレ
ス空間選択信号を入力し、前記リードおよびライト信号
に従ってデータを入出力するものであって、前記アドレ
ス空間選択信号は、前記入力されたアドレスが前記第
1、第2のデータ処理装置のいずれのアドレス空間に対
応するかを指定するものであって、前記アドレス空間選
択信号と前記アドレスに従って前記読み出し可能な記憶
手段または前記入出力手段が選択されて、前記リードお
よびライト信号に従って前記読み出し可能な記憶手段ま
たは前記入出力手段はリードおよびライトされることが
可能とされることを特徴とする半導体集積回路装置。
9. A semiconductor integrated circuit device according to claim 1, 2, 3, 4, 5, 6, 7 or 8, further comprising a test mode setting means and a buffer means. An address, a read and write signal, and an address space selection signal are input when the test mode setting means sets the test mode, and data is input and output according to the read and write signals. Specifies which address space of the first or second data processing device the input address corresponds to, and the readable storage means according to the address space selection signal and the address. Alternatively, the input / output unit is selected, and the readable storage unit or the input / output unit is selected in accordance with the read and write signals. A semiconductor integrated circuit device, which can be read and written.
【請求項10】 請求項1、3、4、5、6、7、8ま
たは9記載の半導体集積回路装置であって、前記第1、
第2の読み出し可能な記憶手段は第1、第2の電気的に
書込み可能な記憶手段であって、書込みモード設定手段
と、バッファ手段とを有し、前記バッファ手段は、前記
書込みモード設定手段がテストモードを設定したとき
に、アドレス、リードおよび制御信号を入力し、前記制
御信号に従って前記第1、第2の電気的に書込み可能な
記憶手段に書込みを行うものであって、前記第1、第2
の電気的に書込み可能な記憶手段が連続的に書込み可能
なアドレスに配置されることを特徴とする半導体集積回
路装置。
10. The semiconductor integrated circuit device according to claim 1, 3, 4, 5, 6, 7, 8 or 9, wherein:
The second readable storage means is a first and a second electrically writable storage means, and has a write mode setting means and a buffer means, and the buffer means is the write mode setting means. When the test mode is set, an address, a read and a control signal are input, and writing is performed in the first and second electrically writable storage means according to the control signal. , Second
2. The semiconductor integrated circuit device according to claim 1, wherein the electrically writable storage means is arranged at continuously writable addresses.
【請求項11】 請求項1、2、3、4、5、6、7、
8、9または10記載の半導体集積回路装置を評価する
ためのエミュレーション用プロセッサであって、前記第
1、第2のデータ処理装置が排他的に動作するバスをい
ずれのデータ処理装置が使用しているかを示す信号を出
力することを特徴とするエミュレーション用プロセッ
サ。
11. The method according to claim 1, 2, 3, 4, 5, 6, 7,
An emulation processor for evaluating the semiconductor integrated circuit device according to 8, 9, or 10, wherein any of the data processing devices uses a bus on which the first and second data processing devices operate exclusively. An emulation processor characterized by outputting a signal indicating whether or not.
【請求項12】 請求項11記載のエミュレーション用
プロセッサであって、前記第1、第2のデータ処理装置
を停止するための第1、第2のブレーク割込入力端子を
有し、前記第1のブレーク割込入力端子の所定の状態に
呼応して、前記第1のデータ処理装置を停止し、前記第
2のブレーク割込入力端子の所定の状態に呼応して、前
記第2のデータ処理装置を停止することを特徴とするエ
ミュレーション用プロセッサ。
12. The emulation processor according to claim 11, further comprising first and second break interrupt input terminals for stopping the first and second data processing devices, The first data processing device is stopped in response to a predetermined state of the break interrupt input terminal, and the second data processing is performed in response to the predetermined state of the second break interrupt input terminal. An emulation processor characterized by stopping the device.
【請求項13】 請求項11または12記載のエミュレ
ーション用プロセッサを搭載したエミュレータであっ
て、さらに記憶手段とシステム開発装置とを有し、前記
第1、第2のデータ処理装置の動作情報を同時に前記記
憶手段に蓄積するか、一方のデータ処理装置の動作情報
を選択的に前記記憶手段に蓄積するかを、前記システム
開発装置からの指定に基づいて選択する手段を有するこ
とを特徴とするエミュレータ。
13. An emulator equipped with the emulation processor according to claim 11 or 12, further comprising a storage means and a system development device, and simultaneously operating information of the first and second data processing devices. An emulator having means for selecting whether to store in the storage means or selectively store operation information of one data processing device in the storage means based on a designation from the system development device. .
【請求項14】 請求項11または12記載のエミュレ
ーション用プロセッサを搭載したエミュレータであっ
て、さらにブレーク割込要求手段とシステム開発装置と
を有し、前記第1、第2のデータ処理装置にブレーク割
込を要求する条件を前記システム開発装置からの指定に
基づいて独立に設定する手段を有することを特徴とする
エミュレータ。
14. An emulator equipped with the emulation processor according to claim 11 or 12, further comprising break interrupt request means and a system development device, wherein the first and second data processing devices have breaks. An emulator having means for independently setting an interrupt request condition based on a designation from the system development device.
JP09603994A 1994-05-10 1994-05-10 Semiconductor integrated circuit device Expired - Fee Related JP3839068B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP09603994A JP3839068B2 (en) 1994-05-10 1994-05-10 Semiconductor integrated circuit device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09603994A JP3839068B2 (en) 1994-05-10 1994-05-10 Semiconductor integrated circuit device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005300848A Division JP2006040310A (en) 2005-10-14 2005-10-14 Semiconductor integrated circuit system and microcomputer

Publications (2)

Publication Number Publication Date
JPH07302255A true JPH07302255A (en) 1995-11-14
JP3839068B2 JP3839068B2 (en) 2006-11-01

Family

ID=14154358

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09603994A Expired - Fee Related JP3839068B2 (en) 1994-05-10 1994-05-10 Semiconductor integrated circuit device

Country Status (1)

Country Link
JP (1) JP3839068B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007023975A1 (en) * 2005-08-22 2007-03-01 Ssd Company Limited Multi-processor, direct memory access controller, and serial data transmitting/receiving apparatus
JP2007128189A (en) * 2005-11-01 2007-05-24 Shinsedai Kk Serial data transmitter-receiver
JP2011091409A (en) * 2010-10-29 2011-05-06 Renesas Electronics Corp Semiconductor integrated circuit device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007023975A1 (en) * 2005-08-22 2007-03-01 Ssd Company Limited Multi-processor, direct memory access controller, and serial data transmitting/receiving apparatus
JP2007128189A (en) * 2005-11-01 2007-05-24 Shinsedai Kk Serial data transmitter-receiver
JP2011091409A (en) * 2010-10-29 2011-05-06 Renesas Electronics Corp Semiconductor integrated circuit device

Also Published As

Publication number Publication date
JP3839068B2 (en) 2006-11-01

Similar Documents

Publication Publication Date Title
US5212795A (en) Programmable DMA controller
US5535417A (en) On-chip DMA controller with host computer interface employing boot sequencing and address generation schemes
US4729094A (en) Method and apparatus for coordinating execution of an instruction by a coprocessor
US6272582B1 (en) PCI-PCI bridge allowing controlling of a plurality of PCI agents including a VGA device
US20020166018A1 (en) Multiprocessor interrupt handling system and method
JP4226085B2 (en) Microprocessor and multiprocessor system
JPH10134008A (en) Semiconductor device and computer system
US5577230A (en) Apparatus and method for computer processing using an enhanced Harvard architecture utilizing dual memory buses and the arbitration for data/instruction fetch
JPH06250871A (en) Cpu core, asic having the cpu core and emulation system provided with the asic
US20070106879A1 (en) Semiconductor device
US4731736A (en) Method and apparatus for coordinating execution of an instruction by a selected coprocessor
KR20010080515A (en) A direct memory access engine for supporting multiple virtual direct memory access channels
JP2822782B2 (en) Single chip microcomputer
JPH0232659B2 (en)
JPH07120338B2 (en) Method for a data processor to coordinate the execution of instructions by a coprocessor and the data processor
JP3839068B2 (en) Semiconductor integrated circuit device
JP2001109708A (en) Microcomputer
JPH0855097A (en) Data processing system and its memory access method
JP4322284B2 (en) Single chip microcomputer
JP2001125786A (en) Device and system for processing data
JP3323341B2 (en) Emulation processor and emulator equipped with it
JPH0227696B2 (en) JOHOSHORISOCHI
JP2006040310A (en) Semiconductor integrated circuit system and microcomputer
JP3077807B2 (en) Microcomputer system
JP3139310B2 (en) Digital signal processor

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050816

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060411

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060609

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060718

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060802

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090811

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100811

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110811

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110811

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20110811

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20120811

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees