JPH0287257A - data processing equipment - Google Patents
data processing equipmentInfo
- Publication number
- JPH0287257A JPH0287257A JP23874088A JP23874088A JPH0287257A JP H0287257 A JPH0287257 A JP H0287257A JP 23874088 A JP23874088 A JP 23874088A JP 23874088 A JP23874088 A JP 23874088A JP H0287257 A JPH0287257 A JP H0287257A
- Authority
- JP
- Japan
- Prior art keywords
- data
- fifo
- processor
- status register
- external
- 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.)
- Pending
Links
Landscapes
- Multi Processors (AREA)
Abstract
Description
【発明の詳細な説明】
[産業上の利用分野]
本発明は、データ処理技術さらにはシングルチップマイ
クロコンピュータのデータ転送方式に適用して特に有効
な技術に関し1例えば、マルチプロセッサシステムにお
けるスレーブマイクロコンピュータとして使用されるよ
うなシングルチップマイコンに利用して有効な技術に関
する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a data processing technology and a technology that is particularly effective when applied to a data transfer method of a single-chip microcomputer. This book concerns technology that is effective for use in single-chip microcontrollers such as those used as microcontrollers.
[従来の技術]
パーソナルコンピュータのようなマイクロコンピュータ
システムでは、マイクロコンピュータr、SIをIlo
等のコントローラとして使用する場合のように2個以上
のマイクロプロセッサを用いて1つのシステムを構成す
ることがある。この場合、−船釣には一方がマスタプロ
セッサとして、また他方がこれを補助するスレーブプロ
セッサとして使われる。[Prior Art] In a microcomputer system such as a personal computer, the microcomputer r, SI is
One system may be constructed using two or more microprocessors, such as when used as a controller for a computer. In this case, - for boat fishing, one processor is used as a master processor, and the other processor is used as an auxiliary slave processor.
例えば特開昭60−027030のような2つのマイク
ロコンピュータを有するシステムでは。For example, in a system having two microcomputers such as Japanese Patent Application Laid-Open No. 60-027030.
マスク側とスレーブ側のマイクロコンピュータとの間で
転送が必要となる。Transfer is required between the mask side and slave side microcomputers.
[発明が解決しようとする課題]
従来提供されているマイクロコンピュータLSIはスレ
ーブプロセッサとして動作する場合の処理効率について
充分配慮されておらず、例えばマスタプロセッサから送
られたデータをスレーブプロセッサが処理してI10ポ
ートから出力する場合、I10ポートの転送速度が遅い
と、マスタプロセッサから送られてくるデータをスレー
ブプロセッサは内部RAMに一時記憶しておく必要があ
った。この処理はスレーブプロセッサのプログラム実行
で行なうために、データ取込みに時間がかかり、結果的
にマスクプロセッサを待たせることになる。これを防ぐ
ため割込みによりマスクプロセッサに知らせる方法もあ
るが、この場合には割込処理時間がオーバヘッドとして
生ずる。また、逆に丁/○からのデータをマスクプロセ
ッサに送る場合には、Iloからのデータ転送が速いと
データ抜けを起こすおそれがあった。[Problems to be Solved by the Invention] Conventionally provided microcomputer LSIs do not give sufficient consideration to processing efficiency when operating as a slave processor. For example, when a slave processor processes data sent from a master processor, When outputting from the I10 port, if the transfer speed of the I10 port is slow, the slave processor needs to temporarily store the data sent from the master processor in its internal RAM. Since this processing is performed by program execution by the slave processor, it takes time to take in the data, resulting in the mask processor being kept waiting. To prevent this, there is a method of notifying the mask processor using an interrupt, but in this case, interrupt processing time occurs as overhead. On the other hand, when data from D/O is sent to the mask processor, data may be dropped if the data transfer from Ilo is fast.
そこで、2つのプロセッサ間のデータ転送を高速で行な
えるようにするため、デュアルポー1−RAMを有する
パラレル・コミュニケーション・インタフェース回路を
内蔵したシングルチップ・マイクロコンピュータも提案
されている([株]日立製作所、昭和60年9月発行、
「日立マイクロコンピュータ データブック 8ビツト
シングルチツプ」第787頁〜789頁参照)。Therefore, in order to enable high-speed data transfer between two processors, a single-chip microcomputer with a built-in parallel communication interface circuit with dual-port RAM has been proposed (Hitachi, Ltd.). Seisakusho, published September 1985,
(See "Hitachi Microcomputer Data Book 8-bit Single Chip," pages 787 to 789).
しかしながら、上記デュアルポートRAM内蔵のシング
ルチップ・マイクロコンピュータにあっては、デュアル
ポートRAMへのデータの書込みがあったか否か常に監
視したり、アクセスの競合を回避しなければならない。However, in the single-chip microcomputer with a built-in dual-port RAM, it is necessary to constantly monitor whether data has been written to the dual-port RAM and to avoid access conflicts.
また、1回の通信量を大きくすべくデュアルポートRA
Mの容量を大きくすると、マイクロコンピュータのアド
レス空間内においてデュアルボー1− RA Mのエリ
アの占める割合が大きくなってしまうという不都合があ
った。In addition, dual port RA is used to increase the amount of communication at one time.
If the capacity of M is increased, there is an inconvenience that the dual baud 1-RAM area occupies a large proportion of the address space of the microcomputer.
本発明の目的は、簡単なハードウェアの追加でマルチプ
ロセッサシステムにおけるマイクロプロセッサ間のデー
タ転送の効率を向上させ得るようなシングルチップマイ
コンを提供することにある。An object of the present invention is to provide a single-chip microcomputer that can improve the efficiency of data transfer between microprocessors in a multiprocessor system by simply adding hardware.
この発明の前記ならびにそのほかの目的と新規な特徴に
ついては5本明細書の記述および添附図面から明らかに
なるであろう。The above and other objects and novel features of the present invention will become clear from the description of the present specification and the accompanying drawings.
[課題を解決するための手段]
本願において開示される発明のうち代表的なものの概要
を説明すれば、下記のとおりである。[Means for Solving the Problems] Representative inventions disclosed in this application will be summarized as follows.
すなわち、データ入出力用の2つのファーストイン・フ
ァーストアウト方式のメモリ(以下、FIFOと称する
)と、そのFIFOのデータ格納状態等を示すFIFO
ステータスレジスタを設け、ステータスレジスタの内容
に応じて外部もしくは外部と内部のプロセッサに対して
割込みによってデータの転送があったことを知らせるよ
うにするものである。That is, two first-in/first-out memories (hereinafter referred to as FIFO) for data input/output, and a FIFO that indicates the data storage status of the FIFO.
A status register is provided, and depending on the contents of the status register, an interrupt is used to notify the external or external and internal processors that data has been transferred.
[作用]
上記した手段によれば、互いに接続された2つのマルチ
プロセッサ間でデータ転送を行なう場合、−旦内部のR
AMにデータを格納する必要がないので、他方のプロセ
ッサの処理を待たずにFIFOが一杯になるまでデータ
を送り続けることができる。[Operation] According to the above-described means, when data is transferred between two multiprocessors connected to each other, the internal R
Since there is no need to store data in AM, it is possible to continue sending data until the FIFO is full without waiting for processing by the other processor.
また、FIFOが一杯になると自動的にプロセッサに知
らされるため、常にデータ転送があったか否か監視して
いる必要がないとともに、FIF○ステータスレジスタ
を読むことでFIFO内のデータ格納状態を知ることが
できる。In addition, since the processor is automatically notified when the FIFO becomes full, there is no need to constantly monitor whether data has been transferred or not, and it is also possible to know the data storage status in the FIFO by reading the FIF○ status register. Can be done.
[実施例] 以下、本発明の一実施例を第1図に基づいて説明する。[Example] An embodiment of the present invention will be described below with reference to FIG.
メインCPU15は外部T/○装置18の制御およびデ
ータの送受信の機能を、シングルチップマイコン1に委
ねており、シングルチップマイコン1はI10コントロ
ーラとして動作する。シングルチップマイコン1は、通
常のマイコンと同様にローカルCPU2と、RAM7.
ROM8.タイマ9.シリアルコミュニケーションイン
タフェース(以下、SCIと略す)10.I10ポート
11等により構成され、これらの各機能ブロックは内部
バス12によって互いに接続されている。The main CPU 15 entrusts the functions of controlling the external T/○ device 18 and transmitting and receiving data to the single-chip microcomputer 1, and the single-chip microcomputer 1 operates as an I10 controller. The single-chip microcomputer 1 has a local CPU 2, RAM 7.
ROM8. Timer 9. Serial communication interface (hereinafter abbreviated as SCI) 10. Each of these functional blocks is connected to each other by an internal bus 12.
この実施例では上記回路ブロックの他、出力FIFO3
,入力FIFO4,FIFOステータスレジスタ5.F
IFO割込み制御回路6が設けられている。上記出力F
IF○3はメインCPU15から転送されたデータを順
次記憶し、ローカルCPU2の読出しに応じて記憶した
順にデータをデータバス12上に出力する。In this embodiment, in addition to the above circuit blocks, the output FIFO3
, input FIFO4, FIFO status register5. F
An IFO interrupt control circuit 6 is provided. Above output F
IF○3 sequentially stores the data transferred from the main CPU 15, and outputs the data onto the data bus 12 in the order in which it is stored in response to reading by the local CPU 2.
上記入力FIF○4は、ローカルCPU2がデータバス
12を介して書き込んだデータを順次記憶し、メインC
PU15の読出しに応じて記憶したjlINにデータを
データバス16上に出力する。The above input FIF○4 sequentially stores data written by the local CPU 2 via the data bus 12, and stores data written by the local CPU 2 via the data bus 12.
The data stored in jlIN is output onto the data bus 16 in response to reading from the PU 15.
また、FIF○ステータスレジスタ5は上記出力FIF
○3や入力FIFO4の記憶データ量を、例えばFIF
O内のカウンタ等から引き出されたモニタ信号線13で
常時モニタして保持する。FIFOステータスレジスタ
5はメインおよびローカルのいずれのCPUによっても
読出しが可能で。In addition, the FIF○ status register 5 is the output FIF
○3 and the amount of data stored in input FIFO4, for example,
It is constantly monitored and held using a monitor signal line 13 drawn out from a counter or the like inside O. FIFO status register 5 can be read by either the main or local CPU.
ローカルCPU2からの読出しに対しては内部バス12
上に、またメインCPU15からの読出しに対しては外
部データバス16上に入出力各FIFOのデータ量に関
する情報を出力する。Internal bus 12 for reading from local CPU 2
In addition, for reading from the main CPU 15, information regarding the data amount of each input/output FIFO is output onto the external data bus 16.
また、ステータスレジスタ5は、FIFOが空または満
杯か示すビットのみでもよいし、1/4゜2/4.3/
4のような段階で示したり、バイト単位でデータ量を示
すようにしてもよい。Further, the status register 5 may have only a bit indicating whether the FIFO is empty or full, or may have a bit indicating whether the FIFO is empty or full.
The data amount may be shown in stages such as 4, or the amount of data may be shown in bytes.
一方、FIFO割込制御回路6はFIFOステータスレ
ジスタ5の内容に従ってローカルCPU2に対しては割
込要求信号線14を用いて、メインCPU15に対して
は外部割込要求信号線17を用いて割込要求を行なう。On the other hand, the FIFO interrupt control circuit 6 issues an interrupt to the local CPU 2 using the interrupt request signal line 14 and to the main CPU 15 using the external interrupt request signal line 17 according to the contents of the FIFO status register 5. make a request.
なお、I10ポート11は外部I10装置18に接続さ
れ、ローカルCPU2の制御のもとにデータ転送を行な
う。5CIIOはローカルCPU2のシリアル転送用イ
ンタフェースである。ROM8はローカルCPU2の動
作を制御するプログラムを格納する。RAM7はローカ
ルCPU2が動作する場合のワーク領域として使用する
。また。Note that the I10 port 11 is connected to an external I10 device 18 and performs data transfer under the control of the local CPU 2. 5CIIO is a serial transfer interface for the local CPU 2. ROM8 stores a program that controls the operation of local CPU2. The RAM 7 is used as a work area when the local CPU 2 operates. Also.
タイマ9はローカルCPU2に対するタイマ割込信号を
発生したり、外部イベントの周期を測定したりするのに
使用する。The timer 9 is used to generate a timer interrupt signal to the local CPU 2 and to measure the cycle of external events.
上記実施例のシステムでは、メインCPU15はローカ
ルCPU2の動作と無関係に出力FIFO3に対してそ
れが満杯になるまで、データを送信することができる。In the system of the above embodiment, the main CPU 15 can transmit data to the output FIFO 3 until it becomes full, regardless of the operation of the local CPU 2.
従って、ローカルCPU2による低速のIloの処理終
了を待つ必要がなくなり、その時間を他の処理に使うこ
とができ、システム全体のスループットの向上が可能と
なる。Therefore, there is no need to wait for the local CPU 2 to finish the slow Ilo processing, and that time can be used for other processing, making it possible to improve the throughput of the entire system.
また、受信処理においては、例えば外部I10装置18
から送られるデータをその度に受信する必要がなく、あ
る程度入力FIFOにデータがたまって割込制御回路6
からの割込要求を受けてから処理することができるので
、メインCPUI 5は一連の処理を中断することなく
データの受信を実行することが可能となる。In addition, in the reception process, for example, the external I10 device 18
There is no need to receive data sent from the interrupt control circuit 6 each time, and the data accumulates in the input FIFO to a certain extent.
Since the main CPU 5 can process the interrupt request after receiving it, the main CPU 5 can receive data without interrupting the series of processes.
また、出力FIFO3と入力FI FO4を別々に設け
ているので、メインCPU15によるデータの送信とロ
ーカルCPU2によるデータの送信を同時に行なうこと
も可能である。Further, since the output FIFO 3 and the input FIFO 4 are provided separately, it is possible to transmit data by the main CPU 15 and transmit data by the local CPU 2 at the same time.
なお、上記実施例では、FIF○ステータスレジスタ5
にFIFO3と4の記憶データ量を保持するとしたが、
ステータスレジスタ5には、送受信したデータの量の他
、例えば、データの転送終了を示すピッ1〜を設け、一
連のデータ転送終了時に何らかの手段でこのビットにI
I I IIを立てることで、FIFOが満杯になる前
に割込制御回路6から割込み要求信号を出力させ、デー
タ転送があったことを転送先のCPUに知らせるように
することもできる。In the above embodiment, the FIF○ status register 5
Assuming that the amount of data stored in FIFOs 3 and 4 is held in
In addition to the amount of transmitted and received data, the status register 5 is also provided with a beep 1 to indicate the end of data transfer, and when a series of data transfers is completed, this bit is set to I by some means.
By setting I II II, it is possible to cause the interrupt control circuit 6 to output an interrupt request signal before the FIFO becomes full, and to notify the transfer destination CPU that data has been transferred.
以上説明したように上記実施例のシングルチップマイコ
ンは、データ入出力用の2つのPIF、0と、そのFI
FOのデータ格納状態等を示すFIFOステータスレジ
スタを設け、ステータスレジスタの内容に応じて外部も
しくは外部と内部のプロセッサに対して割込みによって
データの転送があったことを知らせるようにしたので、
互いに接続された2つのマルチプロセッサ間でデータ転
送を行なう場合、−旦内部のRAMにデータを格納する
必要がなく、他方のプロセッサの処理を待たずにFIF
Oが一杯になるまでデータを送り続けることができると
いう作用により、データ転送効率を高め、システムのス
ループッI・を向上させることができるという効果があ
る。As explained above, the single-chip microcontroller of the above embodiment has two PIFs, 0 and 0 for data input/output.
A FIFO status register is provided to indicate the data storage status of the FO, and depending on the contents of the status register, an interrupt is used to notify the external or external and internal processors that data has been transferred.
When transferring data between two multiprocessors connected to each other, there is no need to first store the data in internal RAM, and the data can be transferred to the FIF without waiting for processing by the other processor.
The ability to continue sending data until O is full has the effect of increasing data transfer efficiency and improving system throughput I.
また、入出力用FIFOが一杯になると自動的にプロセ
ッサに知らされるため、常にデータ転送があったか否か
監視している必要がない6さらに、パラレル通信用のデ
ュアルポートRAMを内蔵したシングルチップマイコン
では、−回のデータ通信量を多くしようとすると、有効
アドレス空間が狭められてしまうが、FIFOをデータ
の転送に使用した上記実施例では、FIFOの容量の大
小にかかわりなく、唯一つのアドレスを割り当てるだけ
でよいので、有効アドレス空間が広くなるという効果が
ある。In addition, since the processor is automatically notified when the input/output FIFO becomes full, there is no need to constantly monitor whether or not there is data transfer. Now, if you try to increase the amount of data communication for - times, the effective address space will be narrowed down, but in the above example where FIFO is used for data transfer, regardless of the size of FIFO capacity, only one address can be used. Since all that is required is allocation, the effective address space becomes wider.
以上本発明者によってなされた発明を実施例に基づき具
体的に説明したが、本発明は上記実施例に限定されるも
のではなく、その要旨を逸脱しない範囲で種々変更可能
であることはいうまでもない。例えば、上記実施例では
、大刀泪FrF○と出力用FIFOを別々に設けている
が、いずれか一方のみとしたり、双方向のFIFOを設
けるようにすることも可能である。Although the invention made by the present inventor has been specifically explained above based on Examples, it goes without saying that the present invention is not limited to the above Examples and can be modified in various ways without departing from the gist thereof. Nor. For example, in the above-mentioned embodiment, the large FrF○ and the output FIFO are provided separately, but it is also possible to provide only one of them, or to provide a bidirectional FIFO.
以上の説明では主として本発明者によってなされた発明
をその背景となった利用分野であるFIFO内蔵のシン
グルチップマイコンをI10コントローラとして使用し
たシステムに適用した場合について説明したが、この発
明はそれに限定されるものでなく、スレーブプロセッサ
として使用する場合に広く利用することができる。In the above explanation, the invention made by the present inventor was mainly applied to a system using a single-chip microcomputer with a built-in FIFO as an I10 controller, which is the field of application in which the invention was made by the present inventor, but this invention is not limited to that. It can be widely used when used as a slave processor.
[発明の効果]
本願において開示される発明のうち代表的なものによっ
て得られる効果を簡単に説明すれば下記のとおりである
。[Effects of the Invention] The effects obtained by typical inventions disclosed in this application are briefly explained below.
すなわち、簡単なハードウェアの追加でマルチプロセッ
サシステムにおけるマイクロプロセッサ間のデータ転送
の効率を高め、システムのスループットを向上させるこ
とができる。That is, by simply adding hardware, it is possible to increase the efficiency of data transfer between microprocessors in a multiprocessor system and improve the system throughput.
第1図は、本発明に係るシングルチップマイコンの一実
施例と、それをI10コントローラとして使用したマル
チプロセッサシステムの一例を示すブロック図である。
1・・・・シングルチップマイコン、10・・・・シリ
アルコミュニケーションインタフェース回路。
12・・・・内部バス、13・・・・モニタ信号線、1
4.17・・・・割込信号線、16・・・・外部データ
バス。
第 ′L 図
一一一」FIG. 1 is a block diagram showing an embodiment of a single-chip microcomputer according to the present invention and an example of a multiprocessor system using the same as an I10 controller. 1... Single-chip microcomputer, 10... Serial communication interface circuit. 12...Internal bus, 13...Monitor signal line, 1
4.17... Interrupt signal line, 16... External data bus. 'L Figure 111'
Claims (1)
の間のデータ転送を可能にするファーストイン・ファー
ストアウト方式のデータバッファを備えていることを特
徴とするデータ処理装置。 2、上記データバッファ内のデータが所定の量に達した
ときに制御手段に対してデータの転送を促す信号を出力
する制御回路を備えていることを特徴とする請求項1記
載のデータ処理装置。 3、少なくとも上記データバッファ内のデータ格納状態
を表示可能なステータスレジスタを備えていることを特
徴とする請求項1または請求項2記載のデータ処理装置
。[Claims] 1. Data processing characterized by being connected to an external data bus and equipped with a first-in, first-out type data buffer that enables data transfer with other data processing devices. Device. 2. The data processing device according to claim 1, further comprising a control circuit that outputs a signal prompting the control means to transfer data when the data in the data buffer reaches a predetermined amount. . 3. The data processing device according to claim 1 or 2, further comprising a status register capable of displaying at least the data storage state in the data buffer.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23874088A JPH0287257A (en) | 1988-09-26 | 1988-09-26 | data processing equipment |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23874088A JPH0287257A (en) | 1988-09-26 | 1988-09-26 | data processing equipment |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0287257A true JPH0287257A (en) | 1990-03-28 |
Family
ID=17034554
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP23874088A Pending JPH0287257A (en) | 1988-09-26 | 1988-09-26 | data processing equipment |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0287257A (en) |
-
1988
- 1988-09-26 JP JP23874088A patent/JPH0287257A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5878217A (en) | Network controller for switching into DMA mode based on anticipated memory overflow and out of DMA mode when the host processor is available | |
| KR19990067846A (en) | Method and arrangement for operating a bus system | |
| JP2004171209A (en) | Shared memory data transfer device | |
| CA2007737C (en) | Data transfer operations between two asynchronous buses | |
| EP0427023B1 (en) | Data transmission control apparatus for parallel processing system | |
| WO2004006107A2 (en) | Method and system for optimizing utopia clav polling arbitration | |
| US5517671A (en) | System for designating a plurality of I/O devices to a plurality of I/O channels and connecting and buffering the plurality of I/O channels to a single system bus | |
| US7254667B2 (en) | Data transfer between an external data source and a memory associated with a data processor | |
| US5943509A (en) | Small size inter-processor data transfer system | |
| US5881256A (en) | Bus interface unit capable of simultaneously proceeding with two bus cycles in a high-performance microprocessor | |
| JP4592944B2 (en) | CPU interface circuit | |
| JPH05128078A (en) | Parallel processor | |
| JPH0553902A (en) | Memory control circuit | |
| JPS6240565A (en) | Memory control system | |
| JPH04195576A (en) | Cache memory system | |
| KR100214302B1 (en) | D. High speed data processing method of S.P.D.A.A | |
| JPH0380359A (en) | Inter-processor communication system | |
| JP3265582B2 (en) | Microcomputer | |
| JP2786742B2 (en) | Printer sending data control method | |
| JP3531394B2 (en) | Peripherals in half-duplex data transfer systems | |
| JPH02189049A (en) | Line controller | |
| JPH0713881A (en) | Communication processing device | |
| JPS6057453A (en) | Data processing system | |
| JPH06149703A (en) | Message transfer controller | |
| JPS6027058B2 (en) | Interrupt control circuit |