JPH0227696B2 - JOHOSHORISOCHI - Google Patents
JOHOSHORISOCHIInfo
- Publication number
- JPH0227696B2 JPH0227696B2 JP7028980A JP7028980A JPH0227696B2 JP H0227696 B2 JPH0227696 B2 JP H0227696B2 JP 7028980 A JP7028980 A JP 7028980A JP 7028980 A JP7028980 A JP 7028980A JP H0227696 B2 JPH0227696 B2 JP H0227696B2
- Authority
- JP
- Japan
- Prior art keywords
- bus
- memory
- processor
- bit
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 230000015654 memory Effects 0.000 claims description 101
- 230000010365 information processing Effects 0.000 claims description 8
- 239000000872 buffer Substances 0.000 description 12
- 238000000034 method Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
Description
【発明の詳細な説明】
本発明は情報処理装置、特に複数のデータ処理
部が共通のメモリとデータの転送を行なう情報処
理装置の構成に関する。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an information processing apparatus, and particularly to a configuration of an information processing apparatus in which a plurality of data processing units transfer data to a common memory.
近年データ処理の多様化、複数化に伴い多重処
理を目的とした複合情報処理装置(マルチプロセ
ツシングシステム)が開発された。これは一連の
データ処理を細分化して複数の処理に分割し、各
処理に専用の情報処理装置(以下、プロセツサと
いう)を設け、これら複数のプロセツサを競合し
てデータ処理を行うものである。このため各プロ
セツサ間はデータ転送用のバスで接続され、この
バスには各プロセツサが共用してアクセスする共
通メモリが少なくとも1個以上は接続されてい
る。更に各プロセツサは与えられたデータ処理に
必要な語長(ビツト数)を単位として構成されて
いる。例えば入出力機器とのデータ転送を実行す
るプロセツサは8ビツト処理、高速演算を実行す
べきプロセツサは16ビツト処理というように、各
プロセツサはその処理語長を異にする場合があ
る。 In recent years, with the diversification and multiplication of data processing, complex information processing devices (multiprocessing systems) for the purpose of multiple processing have been developed. In this method, a series of data processing is subdivided into a plurality of processes, a dedicated information processing device (hereinafter referred to as a processor) is provided for each process, and data processing is performed by competing with these plurality of processors. For this reason, each processor is connected by a bus for data transfer, and at least one common memory that is shared and accessed by each processor is connected to this bus. Further, each processor is configured in units of word length (number of bits) necessary for processing given data. For example, the processors may have different processing word lengths, such as a processor that transfers data with input/output equipment that processes 8 bits, and a processor that performs high-speed calculations that processes 16 bits.
従来、処理語長の異なる複数のプロセツサで構
成された複合情報処理装置(マルチプロセツサシ
ステム)は、その中で最も長い語長か最も短かい
語長を基準とするビツト長でバスを構成し、これ
を各プロセツサの共通バスとして用いていた。第
1図はこの様な共通バスを使用した複合プロセツ
サのシステム構成図で、16ビツトのデータ入出力
端子をもつ16ビツト処理用プロセツサ100と、
8ビツトのデータ入出力端子をもつ8ビツト処理
用のプロセツサ110とが、16ビツト構成の共通
バス120に接続された様子を示す。ここで13
0はプロセツサ100,110が共通に用いる共
通メモリ群である。 Conventionally, in complex information processing devices (multiprocessor systems) that are composed of multiple processors with different processing word lengths, the bus is configured with a bit length based on the longest word length or the shortest word length among them. , which was used as a common bus for each processor. Figure 1 is a system configuration diagram of a composite processor using such a common bus, which includes a 16-bit processing processor 100 with 16-bit data input/output terminals,
A processor 110 for 8-bit processing having 8-bit data input/output terminals is connected to a common bus 120 having a 16-bit configuration. here 13
0 is a common memory group commonly used by processors 100 and 110.
データ処理語長の異なる複数のプロセツサを用
いるマルチプロセツサシステムでは、入出力装置
など短い語長(8ビツト)で処理されることの多
い機器には8ビツト処理用プロセツサ110を用
い、一方高速のデータ処理を要する機器には処理
語長の長い(16ビツト)プロセツサ100を用い
ることにより、その目的に応じた処理を円滑に無
駄なく実行させることができる。しかしながら第
1図のような構成では8ビツト処理用のプロセツ
サ110が共通バス120を使用している期間は
16ビツト処理用のプロセツサ100は共通バス1
20を使用することができなかつた。特に、8ビ
ツト処理用プロセツサ110がアクセスするメモ
リと16ビツト処理用プロセツサ100がアクセス
するメモリとが異なつたチツプであつても、16ビ
ツト処理用プロセツサ100は共通バス120を
使用できないためにその処理を実行することがで
きず、処理速度が低下してしまうという欠点があ
つた。又、システム全体の処理速度も共通バスの
使用効率が悪いために高速化することができなか
つた。 In a multiprocessor system that uses multiple processors with different data processing word lengths, the 8-bit processing processor 110 is used for devices such as input/output devices that often process data with a short word length (8 bits), while the 8-bit processor 110 is used for high-speed processing. By using a processor 100 with a long processing word length (16 bits) in a device that requires data processing, processing according to the purpose can be executed smoothly and without waste. However, in the configuration shown in FIG. 1, the period during which the processor 110 for 8-bit processing uses the common bus 120 is
The processor 100 for 16-bit processing uses the common bus 1.
20 could not be used. In particular, even if the memory accessed by the 8-bit processing processor 110 and the memory accessed by the 16-bit processing processor 100 are different chips, since the 16-bit processing processor 100 cannot use the common bus 120, the processing The problem was that the processing speed was slowed down because it could not be executed. Furthermore, the processing speed of the entire system could not be increased due to the inefficient use of the common bus.
一方、処理速度を向上させる方法として8ビツ
トプロセツサ110側で入出力データを16ビツト
に組み立てた後共通バス120へ転送する方法も
あるが、16ビツトにデータを組み立てるために付
加される制御機構やそれに費される処理時間の延
長を考慮すると、決して満足のいくマルチプロセ
ツサシステムとは云えなかつた。又、各プロセツ
サがアクセスするメモリをそのプロセツサ専用の
メモリとしバスを分離することも考えられるが、
バスによつて分離されたメモリを他のバスに接続
されているプロセツサが利用することはできない
ため、メモリの使用効率が悪く、さらにメモリを
プロセツサ毎に付加する構成となりシステム全体
のメモリ容量が不必要に増加するという欠点があ
る。従つて少ないメモリ容量で有効に利用するこ
とからも、メモリは各プロセツサに対して共用さ
せる必要があり、メモリの使用効率を向上させる
ことは困難であつた。 On the other hand, as a method to improve processing speed, there is a method in which the input/output data is assembled into 16 bits on the 8-bit processor 110 side and then transferred to the common bus 120. Considering the extended processing time required, it could not be said to be a satisfactory multiprocessor system. It is also possible to separate the bus by making the memory accessed by each processor exclusive memory for that processor.
Since memory separated by a bus cannot be used by processors connected to other buses, memory usage efficiency is poor, and since memory is added to each processor, the overall memory capacity of the system is insufficient. The disadvantage is that it increases the need. Therefore, in order to make effective use of a small memory capacity, it is necessary to share the memory with each processor, making it difficult to improve memory usage efficiency.
本発明は、上記実情に鑑みてなされたもので、
その目的とする所はメモリ容量を増加することな
くバスの使用効率を高め、データの処理速度を高
速化した情報処理装置を提供することである。 The present invention was made in view of the above circumstances, and
The purpose is to provide an information processing device that increases bus usage efficiency and increases data processing speed without increasing memory capacity.
上記目的を達成するため本発明の情報処理装置
はn本のビツト線を有する第1のバスと、この第
1のバスに接続されこのバスを用いてデータの転
送を行なう第1の処理手段と、2n本のビツト線
を有し前記第1のバスとは分離して設けられた第
2のバスと、この第2のバスに接続されこのバス
を用いてデータの転送を行なう第2の処理手段
と、前記第1及び第2のバスに接続が可能で、前
記第1及び第2の処理手段が共通にアクセスでき
る共用メモリと、この共用メモリを前記第1のバ
スに接続するか前記第2のバスに接続するかを制
御する制御部とを含み、第2の処理手段はnビツ
ト単位と2nビツト単位のいずれにおいてもデー
タ転送できるようにして構成される。 In order to achieve the above object, the information processing device of the present invention includes a first bus having n bit lines, and a first processing means connected to the first bus to transfer data using the bus. , a second bus having 2n bit lines and provided separately from the first bus, and a second process connected to the second bus to transfer data using the bus. a shared memory connectable to the first and second buses and commonly accessible by the first and second processing means; The second processing means is configured to be able to transfer data in both n-bit units and 2n-bit units.
尚、この構成において第1及び第2のバスに接
続される第1及び第2の処理(制御)手段とは、
データの受信あるいは送信もしくはその両方が可
能なハードウエア機構であればよい。例えば中央
処理装置(CPU)を含むプロセツサ、あるいは
単にCPUブロツク、周辺機器とのデータ転送を
行なう入出力制御装置、メモリからのデータを入
力したり、メモリへデータを出力したりするレジ
スタ等データ処理に際して転送されたデータを受
け取つたり転送すべきデータを作成したりする機
能をもつものであればよい。更に第1及び第2の
バスに接続される共通メモリとしては、1個のメ
モリチツプから複数個のメモリチツプまで任意の
個数のメモリチツプの総称として考えることも、
又1チツプマイクロコンピユータ内でのメモリブ
ロツクとして考えることもできる。又、第1のバ
スと第2のバスとは同時に独立したデータを転送
することが可能なように構成されており、これら
のバスには共通メモリや専用メモリ、CPU、入
出力制御装置あるいは1チツプのマイクロプロセ
ツサ等種々のデータ処理機能を有する機器が適宜
接続されている。 In this configuration, the first and second processing (control) means connected to the first and second buses are as follows:
Any hardware mechanism may be used as long as it is capable of receiving data, transmitting data, or both. For example, a processor including a central processing unit (CPU), or simply a CPU block, an input/output control device that transfers data with peripheral devices, a register that inputs data from memory, outputs data to memory, etc. Data processing Any device that has the function of receiving transferred data or creating data to be transferred may be used. Furthermore, the common memory connected to the first and second buses can be considered as a general term for any number of memory chips, from one memory chip to multiple memory chips.
It can also be considered as a memory block within a one-chip microcomputer. In addition, the first bus and the second bus are configured so that independent data can be transferred simultaneously, and these buses include a common memory, a dedicated memory, a CPU, an input/output control device, or one Devices having various data processing functions such as chip microprocessors are connected as appropriate.
本発明によれば、共通に使用されるメモリは単
に1本の共通バスに接続されるのではなく、目的
に応じたビツト数のデータを転送できる複数のバ
スに接続されるように構成されているため、1本
のバスを複数の処理機構が競合して用いることな
く、互いに独自に与えられたバスを使用できるの
で、データの処理速度は著しく向上されうる。更
に、共通メモリはこれら複数のバスのいづれにも
接続することができるように構成されているの
で、メモリ容量を増加させることなく、与えられ
た容量を最大限に有効に利用できる。更に、バス
を構成するビツト数を処理語長と等しくしておけ
ば、無駄のないデータ転送を実行することができ
る。尚、この場合には共通メモリから読み出され
るデータあるいは共通メモリに書き込まれるデー
タのビツト数を後で述べるように切り替えて制御
しさえすればよい。 According to the present invention, commonly used memories are not simply connected to one common bus, but are configured to be connected to multiple buses capable of transferring data of a number of bits depending on the purpose. Because of this, multiple processing mechanisms do not have to compete with each other to use one bus, and each can use the assigned bus independently, so data processing speed can be significantly improved. Furthermore, since the common memory is configured so that it can be connected to any of these plurality of buses, the given capacity can be utilized to the maximum extent without increasing the memory capacity. Furthermore, by making the number of bits constituting the bus equal to the processing word length, efficient data transfer can be performed. In this case, it is only necessary to switch and control the number of bits of data read from the common memory or data written to the common memory as described later.
以下に図面を参照して本発明の実施例を詳細に
説明する。 Embodiments of the present invention will be described in detail below with reference to the drawings.
尚、ここではマルチプロセツサシステムを例に
とり、第1及び第2の処理手段として夫々独立し
たプロセツサを有し、これらが共通にアクセスで
きるメモリを2個有する場合を例に説明する。 Here, a multiprocessor system will be described as an example in which each of the first and second processing means has independent processors and two memories that can be commonly accessed by these processors.
第2図は本発明の一実施例を示すマルチプロセ
ツサシステムの構成図で、16ビツトの並列ビツト
線を有する16ビツトバス230と、8ビツトの並
列ビツト線を有する8ビツトバス240とを独立
に有し、16ビツトバスには高速演算等に用いられ
る16ビツト処理用のプロセツサ210とこのプロ
セツサ210がデータ処理において使用する専用
メモリや入出力制御装置、レジスタ等の付加機構
270が接続され、8ビツトバス240には周辺
機器(キーボード、プリンタ、デイスプレイ等)
を制御する8ビツト処理の入出力機器制御用のプ
ロセツサ220と、このプロセツサ220とデー
タ転送を行なう入出力機器やレジスタ等の付加機
構280が接続される。更に、これらバス23
0,240にはプロセツサ210,220が共通
に使用することができる共有メモリ250,26
0が両方のバスに接続可能なように設けられる。 FIG. 2 is a block diagram of a multiprocessor system showing an embodiment of the present invention, in which a 16-bit bus 230 having 16-bit parallel bit lines and an 8-bit bus 240 having 8-bit parallel bit lines are independently operated. However, the 16-bit bus is connected to a processor 210 for 16-bit processing used for high-speed calculations, etc., and an additional mechanism 270 such as a dedicated memory, input/output control device, and registers used by this processor 210 in data processing, and an 8-bit bus 240 peripherals (keyboard, printer, display, etc.)
A processor 220 for controlling input/output devices for 8-bit processing is connected to the processor 220, and additional mechanisms 280 such as input/output devices and registers for data transfer with this processor 220. Furthermore, these buses 23
0 and 240 are shared memories 250 and 26 that can be commonly used by the processors 210 and 220.
0 is provided so that it can be connected to both buses.
このシステム構成にすれば、16ビツトプロセツ
サ210がバス230を利用して共通メモリ25
0を使用し、一方同時に8ビツトプロセツサ22
0がバス240を利用して共通メモリ260をア
クセスしようとした時、メモリ250をバス23
0に接続し、メモリ260をバス240に接続す
ることによりメモリアクセスに関して遅れなし
で、夫々のプロセツサの処理を同時に並列して実
行できる。今、仮りに16ビツトプロセツサ210
と8ビツトプロセツサ220とが同じメモリ例え
ば250を同時に、もしくはいづれか一方アクセ
スしている時に他方がアクセスしようとした時
は、後述するように優先順位決定回路を設け、こ
の回路で優先されたプロセツサにメモリの使用権
を優先して与え、残りのプロセツサは優先された
プロセツサのアクセスが終了した後、メモリの使
用を許可されるようにすればよい。通常は8ビツ
トプロセツサ220は16ビツトプロセツサ210
の指令に基づき入出力のデータ処理を行ない、そ
の結果必要であれば共通メモリを使用するように
プログラムされているので16ビツトプロセツサ2
10用の処理プログラムが格納されているメモリ
モジユールを8ビツトプロセツサ220がアクセ
スすることは少ない。従つて多くの場合は2つの
プロセツサ210,220は互いに独立して夫々
のバスを用いて共通メモリをアクセスすることが
でき並列にデータ処理を実行することができ、処
理時間はほぼ各プロセツサ自身の処理速度で決ま
り高速で有効にデータ処理を実行することができ
る。特にプロセツサ210がメモリ250をデー
タ転送している期間に、プロセツサ220がバス
240を用いて付加機構280とデータ転送する
ことは容易である。 With this system configuration, the 16-bit processor 210 uses the bus 230 to access the common memory 25.
0, while simultaneously using an 8-bit processor 22
0 tries to access the common memory 260 using the bus 240, the memory 250 is accessed from the bus 23.
By connecting memory 260 to bus 240, the processes of the respective processors can be executed simultaneously and in parallel without any delay in memory access. Now, let's assume that the 16-bit processor 210
If the 8-bit processor 220 and the 8-bit processor 220 are accessing the same memory, for example 250, at the same time, or if one of them attempts to access the other, a priority determining circuit is provided as described later, and this circuit assigns the memory to the processor given priority. The remaining processors may be given the right to use the memory with priority, and the remaining processors may be allowed to use the memory after the access of the prioritized processor is completed. Usually, the 8-bit processor 220 is replaced by the 16-bit processor 210.
The 16-bit processor 2 performs input/output data processing based on the commands of the processor, and is programmed to use common memory if necessary.
The 8-bit processor 220 rarely accesses the memory module in which the processing program for 8-bit processor 10 is stored. Therefore, in many cases, the two processors 210 and 220 can access the common memory independently using their respective buses and perform data processing in parallel, and the processing time is approximately the same as each processor's own. It is determined by the processing speed, and data processing can be executed effectively at high speed. Particularly during the period when processor 210 is transferring data to memory 250, it is easy for processor 220 to transfer data to additional mechanism 280 using bus 240.
次に、第2図のシステムにおいて2つのバスに
接続可能な共通メモリと、その接続制御をより詳
細に説明するために、第3図にその要部をブロツ
ク化して示す。バスとしては8ビツトのデータバ
スと16ビツトのデータバスとの2つのバスを用
い、共通メモリは1アドレス当り8ビツトのデー
タ(1バイトデータ)を格納できるようにし、16
ビツトバスに対しては2バイトのデータを読み出
し/書き込みするようにする。8ビツト処理用プ
ロセツサ360は8ビツトバスのアドレスバス3
01、メモリへの読み出し/書き込みの制御を行
なうメモリアクセス制御信号302及び8ビツト
のデータバス303に接続され、16ビツト処理用
プロセツサ370は16ビツトのアドレスバス30
4、16ビツトバスのメモリアクセス制御信号30
5及び16ビツトデータバス(下位8ビツトバス3
06と上位8ビツトバス307からなる)に接続
される。メモリは隅数アドレスで指定され8ビツ
トデータを信号線308に転送し、奇数アドレス
で指定されその8ビツトデータを信号線309に
転送するように構成され、偶数、奇数の各1アド
レスを1組として16ビツトのデータの上位、下位
ビツトが規定される。更に、8ビツトバス制御回
路350と16ビツトバス制御回路351を有し、
これらから出力されるアドレス信号310、アク
セス信号311,312で偶数アドレスメモリブ
ロツク340と奇数アドレスメモリブロツク34
1とがアクセスされる。尚、各バス制御回路35
0,351は対応するプロセツサ360,370
から送られるアドレスデータをデコードする機能
を有していてもよい。ここで、プロセツサ360
はメモリアドレスMO,MO+1,……と連続し
てアドレス指定することにより、1バイトづつデ
ータを読み出すことができるが、プロセツサ37
0はアドレスMOとMO+1を1つのアドレスと
して指定して同時に2バイトのデータを読み出す
ようにアドレス制御する必要がある。更に、バス
制御回路350,351からはプロセツサ370
のメモリアクセス要求信号313とプロセツサ3
60からのメモリアクセス要求信号315とが
夫々プロセツサがメモリをアクセスする時優先順
位決定回路352に出力され、その結果優先順位
の高い方にメモリアクセス許可信号314,31
6が出力される。どちらか一方のみが要求を出し
た場合には即刻許可信号が出される。更に、8ビ
ツトの双方向性データバツフア330〜333が
メモリとバスとの間に挿入されており、これを介
してメモリの偶数アドレスのデータ、奇数アドレ
スのデータが転送される。このバツフア制御は、
偶数アドレスの場合制御信号317でバツフア3
30が動作され、奇数アドレスの場合制御信号3
18でバツフア331が動作される。又、16ビツ
トバスに接続されたバツフア332,333はプ
ロセツサ307からのアドレスに基づいて同時
に、もしくは時分割に制御信号319,320で
動作状態に設定される。 Next, in order to explain in more detail the common memory connectable to the two buses in the system of FIG. 2 and its connection control, the main parts thereof are shown in blocks in FIG. Two buses are used, an 8-bit data bus and a 16-bit data bus, and the common memory is designed to be able to store 8-bit data (1-byte data) per address.
Two bytes of data are read/written to the bit bus. The 8-bit processing processor 360 uses the address bus 3 of the 8-bit bus.
01 is connected to a memory access control signal 302 that controls reading/writing to memory and an 8-bit data bus 303, and a 16-bit processing processor 370 is connected to a 16-bit address bus 30.
4. 16-bit bus memory access control signal 30
5 and 16-bit data buses (lower 8-bit bus 3
06 and the upper 8-bit bus 307). The memory is configured so that 8-bit data specified by a corner number address is transferred to the signal line 308, and 8-bit data specified by an odd number address is transferred to the signal line 309, and one set each of even and odd addresses is used. The upper and lower bits of 16-bit data are defined as . Furthermore, it has an 8-bit bus control circuit 350 and a 16-bit bus control circuit 351,
The address signal 310 and access signals 311 and 312 output from these are used to control the even address memory block 340 and the odd address memory block 34.
1 is accessed. In addition, each bus control circuit 35
0,351 is the corresponding processor 360,370
It may also have a function to decode address data sent from. Here, processor 360
can read data one byte at a time by sequentially specifying memory addresses MO, MO+1, ..., but the processor 37
For 0, it is necessary to control the address so that addresses MO and MO+1 are specified as one address and 2 bytes of data are read out at the same time. Further, from the bus control circuits 350 and 351, the processor 370
memory access request signal 313 and processor 3
The memory access request signal 315 from 60 is output to the priority determination circuit 352 when each processor accesses the memory, and as a result, the memory access permission signal 314, 31 is sent to the one with higher priority.
6 is output. If only one of them makes a request, an immediate permission signal is issued. Further, 8-bit bidirectional data buffers 330 to 333 are inserted between the memory and the bus, and data at even addresses and data at odd addresses of the memory are transferred through these buffers. This buffer control is
In the case of an even address, the control signal 317 causes buffer 3.
30 is activated, and control signal 3 is activated for odd addresses.
At step 18, the buffer 331 is operated. Further, buffers 332 and 333 connected to the 16-bit bus are set to an operating state by control signals 319 and 320 simultaneously or time-divisionally based on the address from processor 307.
かかる回路構成によれば、プロセツサ360が
8ビツトバス301〜303側からメモリブロツ
ク340又は341をアクセスする時は、アドレ
スバス301とメモリアクセス制御信号302を
デコードすることによつて制御回路350は、優
先順位決定回路352にメモリアクセス要求信号
315を出力する。この時優先順位決定回路35
2は、16ビツトバス304〜307側からのメモ
リアクセス要求がない時、あるいは同時に要求が
起こつた時はどちらが優先順位が高いかを判断し
て高い方に許可を与える。今、8ビツト処理用プ
ロセツサ360に許可を与えるとすれば、制御回
路350は、アクセス許可信号316が有効にな
るのを待ち、もしアドレスバス301の情報が偶
数ならバツフア制御信号317によつてデータバ
ツフア330を有効にしてメモリブロツク340
内の指定されたアドレスを選択し、読み出しもし
くは書き込みの処理を制御信号311によつて指
定し、メモリ340と8ビツトデータバス303
とが接続されてデータの転送が実行される。一
方、奇数アドレスの時は制御信号312で読み出
し、書き込みを指定し、メモリ341と8ビツト
バス303をバツフア制御信号318の制御の下
で接続し、データ転送を可能とする。 According to this circuit configuration, when the processor 360 accesses the memory block 340 or 341 from the 8-bit bus 301 to 303 side, the control circuit 350 decodes the address bus 301 and the memory access control signal 302 to give priority to the memory block 340 or 341. A memory access request signal 315 is output to the ranking determining circuit 352. At this time, the priority order determination circuit 35
2, when there is no memory access request from the 16-bit bus 304 to 307 side, or when requests occur at the same time, it is determined which one has a higher priority and permission is given to the one with the higher priority. If permission is now given to the 8-bit processing processor 360, the control circuit 350 waits for the access permission signal 316 to become valid, and if the information on the address bus 301 is an even number, the data buffer is 330 and memory block 340
A specified address in the memory 340 and the 8-bit data bus 303 are selected, and read or write processing is specified by the control signal 311.
are connected and data transfer is performed. On the other hand, when the address is an odd number, reading or writing is designated by the control signal 312, and the memory 341 and the 8-bit bus 303 are connected under the control of the buffer control signal 318 to enable data transfer.
次にプロセツサ370が16ビツトバス304〜
307側からメモリブロツク340及び341を
アクセスする時は、アドレスバス304からのア
ドレス信号とメモリアクセス制御信号305とを
制御回路351でデコードすることによつて優先
順位決定回路352にメモリアクセス要求信号3
13を出力する。この結果、許可信号が出たら内
部アドレス指定信号310でメモリブロツク34
0,341の中の各1バイトデータを選択して、
制御信号311,312で指定された読み出しあ
るいは書き込み動作を実行すべくバツフア33
2,333を共に動作状態にして16ビツトバス3
06,307とメモリを接続する。もしプロセツ
サ370が8ビツト分のみデータを要求した場合
には、メモリブロツク340又は341のいずれ
か一方だけが選択され、選択されたメモリブロツ
クに接続されているバツフアを動作して16ビツト
を構成する各8ビツトの上位あるいは下位のいづ
れかのバス306,307に接続させる。 Next, the processor 370 converts the 16-bit bus 304 to
When the memory blocks 340 and 341 are accessed from the 307 side, the address signal from the address bus 304 and the memory access control signal 305 are decoded by the control circuit 351, and the memory access request signal 3 is sent to the priority determination circuit 352.
Outputs 13. As a result, if a permission signal is issued, the memory block 34 is
Select each 1-byte data from 0,341,
Buffer 33 is used to perform read or write operations specified by control signals 311 and 312.
16-bit bus 3 with both 2 and 333 in operation
Connect 06,307 and memory. If the processor 370 requests only 8 bits of data, only one of the memory blocks 340 or 341 is selected and the buffer connected to the selected memory block is operated to configure 16 bits. It is connected to either the upper or lower 8-bit bus 306 or 307.
以上のようにして、共通メモリを16ビツトバス
と8ビツトバスのいづれにも接続できるように
し、かつプロセツサがメモリとデータ転送を行な
わない期間はバスからメモリを切り離せるように
することによつて、8ビツト処理用プロセツサ3
60と16ビツト処理用プロセツサ370とが同じ
バスを競合することなく夫々専用のバスを用いて
共通のメモリをアクセスすることができる。従つ
て、前述したようにデータ転送速度が向上し、処
理時間を大幅に短縮させることができる。又、第
3図のようなメモリを複数個設けておいても夫々
のデータバスを効率よく使用することができ、各
プロセツサは待ち時間を持つことなしに高速メモ
リアクセスを行うことができる。 As described above, the common memory can be connected to both the 16-bit bus and the 8-bit bus, and the memory can be disconnected from the bus during periods when the processor is not transferring data to the memory. Bit processing processor 3
The 60 and 16-bit processing processors 370 can access a common memory using their respective dedicated buses without competing for the same bus. Therefore, as described above, the data transfer speed can be improved and the processing time can be significantly shortened. Further, even if a plurality of memories as shown in FIG. 3 are provided, each data bus can be used efficiently, and each processor can perform high-speed memory access without waiting time.
尚、上記実施例では8ビツトと16ビツトの2つ
のバスを有する例を示したが、それ以上のバスを
設けてもよい。この時、共通メモリのブロツク構
成としては、最も少ない処理語長(ビツト数)を
有するバスで規定されるビツト数を1バイトとす
る。更に、第3図で示したメモリブロツク34
0,341、制御回路350,351、優先決定
回路352、バツフア330〜333は1チツプ
内に集積化してもよいし、別々に形成してもよ
い。更に、本発明の応用として、1つのプロセツ
サと複数のメモリとを有するシステムにも適用で
き、このプロセツサが異なる処理語長のデータ処
理を実行する時には、その語長に応じたバスを複
数個設け、これをメモリに接続可能とするように
構成すれば本発明の効果は十分得られる。又、こ
の異なるバスをゲート回路等を介して接続できる
ような手段を設け、バスからバスへのデータ転送
を行なうようにしてもよい。更に加えて、16ビツ
ト処理用プロセツサが8ビツトデータづつを時分
割に転送する場合、前記2つのバスは分離されて
いても同一のビツト数(8ビツト)でよい。 In the above embodiment, an example is shown in which there are two buses of 8 bits and 16 bits, but more buses may be provided. At this time, as for the block configuration of the common memory, the number of bits defined by the bus having the smallest processing word length (number of bits) is 1 byte. Furthermore, the memory block 34 shown in FIG.
0, 341, control circuits 350, 351, priority determining circuit 352, and buffers 330 to 333 may be integrated in one chip or may be formed separately. Furthermore, the present invention can be applied to a system having one processor and a plurality of memories, and when this processor executes data processing with different processing word lengths, it is possible to provide a plurality of buses according to the word lengths. , the effects of the present invention can be sufficiently obtained by configuring it so that it can be connected to a memory. Further, a means for connecting these different buses via a gate circuit or the like may be provided to transfer data from one bus to another. Additionally, when a 16-bit processor transfers 8-bit data in a time-division manner, the two buses may have the same number of bits (8 bits) even if they are separated.
第1図は従来のマルチプロセツサシステムの構
成ブロツク図、第2図は本発明の一実施例を示す
構成ブロツク図、第3図は第2図の要部を詳細に
示したブロツク図である。
100,210,370……16ビツト処理用プ
ロセツサ、110,220,360……8ビツト
処理用プロセツサ、120,230……16ビツト
バス、240……8ビツトバス、130,25
0,260……共有メモリ、270,280……
付加機構、301,304……アドレスバス、3
02,305……メモリアクセス制御信号、30
3……8ビツトデータバス、306,307……
各8ビツトの16ビツトバス、308……偶数アド
レス値(下位ビツト)の8ビツトデータ線、30
9……奇数アドレス値(上位ビツト)の8ビツト
データ線、317〜320……制御信号、31
5,313……メモリ要求信号、314,316
……許可信号、352……優先順位決定回路、3
50,351……メモリ制御回路、340,34
1……メモリブロツク、330〜333……デー
タバツフア、360……8ビツト用プロセツサ、
370……16ビツト用プロセツサ。
FIG. 1 is a block diagram showing the configuration of a conventional multiprocessor system, FIG. 2 is a block diagram showing an embodiment of the present invention, and FIG. 3 is a block diagram showing the main parts of FIG. 2 in detail. . 100,210,370...processor for 16-bit processing, 110,220,360...processor for 8-bit processing, 120,230...16-bit bus, 240...8-bit bus, 130,25
0,260...shared memory, 270,280...
Additional mechanism, 301, 304...address bus, 3
02,305...Memory access control signal, 30
3...8-bit data bus, 306, 307...
16-bit bus of 8 bits each, 308... 8-bit data line of even address value (lower bit), 30
9... 8-bit data line of odd address value (upper bit), 317-320... Control signal, 31
5,313...Memory request signal, 314,316
... Permission signal, 352 ... Priority determining circuit, 3
50, 351...Memory control circuit, 340, 34
1...Memory block, 330-333...Data buffer, 360...8-bit processor,
370...16-bit processor.
Claims (1)
サに接続されたnビツト長の第1のバスと、2n
ビツト長を処理単位とする第2のプロセツサに接
続された夫々nビツト長の第2および第3のバス
と、前記第1乃至第3のバスに共通に接続された
第1および第2のメモリとを含み、前記第1およ
び第2のメモリの夫々は前記第1のバスに接続さ
れメモリブロツクへのアクセスを制御する第1バ
ス用制御回路と、前記第2および第3のバスに接
続されメモリブロツクへのアクセスを制御する第
2および第3バス用制御回路と、前記第1バス用
制御回路と第2および第3バス用制御回路とに接
続された優先順位決定回路を備え、前記第1のプ
ロセツサが前記第1のメモリをアクセスし、かつ
前記第2のプロセツサが前記第2のメモリをアク
セスする時は前記第1のメモリと前記第1のバス
とを接続し、かつ前記第2のメモリと前記第2お
よび第3のバスとを接続することによつて各プロ
セツサが同時に夫々異なるメモリをアクセスでき
るようになし、前記第1のプロセツサと前記第2
のプロセツサが同一のメモリをアクセスする時は
前記優先順位決定回路により優先順位に従つてい
ずれかのプロセツサにメモリアクセスを許可し、
前記第1のプロセツサに対しては前記第1バス用
制御回路の制御の下に前記第1のバスを使つてn
ビツト長のデータを転送し、一方前記第2のプロ
セツサに対しては前記第2および第3バス用制御
回路の制御の下に前記第2および第3のバスを同
時に使つて2nビツト長のデータを同時に転送す
る第1のモードと、前記第2もしくは第3のバス
の一方を使つてnビツト長のデータを転送する第
2のモードとを選択的に割り当てられるように構
成したことを特徴とする情報処理装置。1. A first bus of n bit length connected to a first processor whose processing unit is n bit length, and
Second and third buses each having a length of n bits are connected to a second processor whose processing unit is bit length, and first and second memories are commonly connected to the first to third buses. each of the first and second memories includes a first bus control circuit that is connected to the first bus and controls access to the memory block; and a first bus control circuit that is connected to the second and third buses. a second and third bus control circuit for controlling access to a memory block; a priority determination circuit connected to the first bus control circuit and the second and third bus control circuit; When one processor accesses the first memory and the second processor accesses the second memory, the first memory and the first bus are connected; By connecting the memory of the first processor and the second and third buses, each processor can access different memories at the same time.
When two processors access the same memory, the priority determining circuit allows one of the processors to access the memory according to the priority order,
The first processor uses the first bus under the control of the first bus control circuit.
2n bit length data is transferred to the second processor using the second and third buses simultaneously under the control of the second and third bus control circuits. and a second mode in which n-bit length data is transferred using either the second or third bus. Information processing equipment.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7028980A JPH0227696B2 (en) | 1980-05-27 | 1980-05-27 | JOHOSHORISOCHI |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7028980A JPH0227696B2 (en) | 1980-05-27 | 1980-05-27 | JOHOSHORISOCHI |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS56166568A JPS56166568A (en) | 1981-12-21 |
JPH0227696B2 true JPH0227696B2 (en) | 1990-06-19 |
Family
ID=13427165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7028980A Expired - Lifetime JPH0227696B2 (en) | 1980-05-27 | 1980-05-27 | JOHOSHORISOCHI |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0227696B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57113164A (en) * | 1980-12-31 | 1982-07-14 | Fujitsu Ltd | Information processor |
JPS58225460A (en) * | 1982-06-25 | 1983-12-27 | Fujitsu Kiden Ltd | Access system to memory |
JPS60110065A (en) * | 1983-11-21 | 1985-06-15 | Mitsubishi Electric Corp | Dual port memory |
JPS60160425A (en) * | 1984-02-01 | 1985-08-22 | Hitachi Ltd | Connecting circuit |
JPS61217859A (en) * | 1985-03-25 | 1986-09-27 | Fujitsu Ltd | Data transfer system |
JPS62174859A (en) * | 1986-01-28 | 1987-07-31 | Nec Corp | Data multiplex transferring device |
-
1980
- 1980-05-27 JP JP7028980A patent/JPH0227696B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS56166568A (en) | 1981-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5685005A (en) | Digital signal processor configured for multiprocessing | |
US4453214A (en) | Bus arbitrating circuit | |
US4481572A (en) | Multiconfigural computers utilizing a time-shared bus | |
CA1297994C (en) | Input output interface controller connecting a synchronous bus to an asynchronous bus and methods for performing operations on the buses | |
US5619720A (en) | Digital signal processor having link ports for point-to-point communication | |
US5634076A (en) | DMA controller responsive to transition of a request signal between first state and second state and maintaining of second state for controlling data transfer | |
EP0117836B1 (en) | Address-controlled automatic bus arbitration and address modification | |
US6216191B1 (en) | Field programmable gate array having a dedicated processor interface | |
US5611075A (en) | Bus architecture for digital signal processor allowing time multiplexed access to memory banks | |
US6892266B2 (en) | Multicore DSP device having coupled subsystem memory buses for global DMA access | |
CA2478570A1 (en) | Data processing apparatus and system and method for controlling memory access | |
KR920008448B1 (en) | Data process | |
US6078742A (en) | Hardware emulation | |
US4344130A (en) | Apparatus to execute DMA transfer between computing devices using a block move instruction | |
US5933613A (en) | Computer system and inter-bus control circuit | |
JPS6143345A (en) | Memory device | |
GB2412767A (en) | Processor with at least two buses between a read/write port and an associated memory with at least two portions | |
JPH0227696B2 (en) | JOHOSHORISOCHI | |
US7310717B2 (en) | Data transfer control unit with selectable transfer unit size | |
US5408612A (en) | Microprocessor system for selectively accessing a processor internal register when the processor has control of the bus and partial address identifying the register | |
US6647450B1 (en) | Multiprocessor computer systems with command FIFO buffer at each target device | |
JP2618223B2 (en) | Single chip microcomputer | |
KR960001023B1 (en) | Bus sharing method and the apparatus between different bus | |
JPS61166647A (en) | Accessing for reading out information microprocessor and addressable memory | |
JPS59173828A (en) | Data processing system |