JPH064401A - Memory access circuit - Google Patents

Memory access circuit

Info

Publication number
JPH064401A
JPH064401A JP4161495A JP16149592A JPH064401A JP H064401 A JPH064401 A JP H064401A JP 4161495 A JP4161495 A JP 4161495A JP 16149592 A JP16149592 A JP 16149592A JP H064401 A JPH064401 A JP H064401A
Authority
JP
Japan
Prior art keywords
memory
bus
control
address
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.)
Withdrawn
Application number
JP4161495A
Other languages
Japanese (ja)
Inventor
Akira Jinzaki
明 陣▲崎▼
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4161495A priority Critical patent/JPH064401A/en
Publication of JPH064401A publication Critical patent/JPH064401A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Memory System (AREA)

Abstract

PURPOSE:To realize a function by which an arbitrary master device can access an arbitrary memory device at a high speed, by a simple circuit configuration, in a computer system. CONSTITUTION:The memory access circuit for executing an access to an arbitrary one in M pieces of divided memories 102 from an arbitrary one in NXK pieces of master devices 101 is constituted of K pieces of memory control modules 103 for executing switching between N pieces of master devices 101 and M pieces of divided memories 102, respectively. Each memory control module 103 executes arbitration control, etc., of a competition of a memory access request from each master device 101. An interface opposed to each divided memory 102 in each memory control module 103 is selected so as to be connected successively to the divided memory 102 by a selecting means 104 provided at every divided memory 102.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、計算機システムにおい
て、複数のメモリデバイスとそれらにアクセスを行うプ
ロセッサ、DMAチャネルなどの複数のマスタデバイス
とを結合し、任意のマスタデバイスによる任意のメモリ
デバイスのアクセスを可能とするメモリアクセス回路に
関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention combines a plurality of memory devices with a plurality of master devices such as a processor and a DMA channel for accessing them in a computer system, and allows any master device to control any memory device. The present invention relates to a memory access circuit that enables access.

【0002】[0002]

【従来の技術】計算機システムでは、プロセッサやI/
0装置がメモリシステムへアクセスするが、プロセッサ
の高速化、マイクロプロセッサ化、I/O装置の高速
化、及びそれらの数の増加により、複数のマスタデバイ
スからメモリシステムに対するアクセスパスの多チャネ
ル化、高速化が課題となっている。
2. Description of the Related Art In computer systems, processors and I / O
0 device accesses the memory system, but the increase in the number of access paths from a plurality of master devices to the memory system due to the increase in the number of processors, the increase in the number of processors, the increase in the number of processors, the increase in the number of processors, the increase in the number of processors, Speeding up is an issue.

【0003】例えば、プロセッサとI/O装置の合計が
N個、それぞれXバイト/秒の速度でメモリアクセスを
行うと仮定する。この場合、メモリシステムは、合計N
×Xバイト/秒の速度でアクセスできる必要がある。
For example, assume that the total number of processors and I / O devices is N, and memory access is performed at a speed of X bytes / second. In this case, the memory system has a total of N
It needs to be accessible at a speed of × X bytes / second.

【0004】この速度が非常に高速な場合には、この速
度を実現できるメモリデバイスがないか、あっても非常
に高価であったり、チップ当たりのメモリ容量が少ない
ため要求される容量・速度ののメモリシステムを実現で
きない場合があり得る。
If this speed is very high, there is no memory device that can realize this speed, or it is very expensive even if it exists, and the memory capacity per chip is small. There is a possibility that the memory system cannot be realized.

【0005】上述の問題を解決する従来技術としては、
図9に示されるように、メモリを複数の分割メモリ90
2に分割し、プロセッサなどのマスタデバイス群901
と分割メモリ群902をスイッチ903で結合する方式
がある。
As a conventional technique for solving the above problems,
As shown in FIG. 9, the memory is divided into a plurality of divided memories 90.
Master device group 901 such as a processor divided into two
There is a method of connecting the divided memory groups 902 with a switch 903.

【0006】この方式では、各マスタデバイス901が
異なる分割メモリにアクセスする時は互いに衝突なくア
クセスできるため、個々の分割メモリ902に対する要
求速度はXバイト/秒程度であっても、メモリシステム
全体でみればそれより速い速度を実現可能となる。もち
ろん、同じ分割メモリ902にアクセスが集中するとメ
モリシステム全体のアクセス速度は低下するが、アクセ
スの集中がそれほど発生しない場合には実用上十分な性
能を実現できる。
In this method, when the master devices 901 access different divided memories without collision, the divided memories 902 can access each other without causing a collision. Therefore, even if the required speed for each divided memory 902 is about X bytes / second, the entire memory system can have the same speed. If you look at it, higher speeds can be realized. Of course, if access concentrates on the same divided memory 902, the access speed of the entire memory system decreases, but if the concentration of access does not occur so much, practically sufficient performance can be realized.

【0007】[0007]

【発明が解決しようとする課題】しかし、上述の従来技
術では、任意のマスタデバイス901と任意の分割メモ
リ902を少ない遅延で接続できる必要があり、かつ、
メモリシステム全体の最大アクセス速度で処理を行う能
力が要求される。
However, in the above-mentioned conventional technique, it is necessary to connect an arbitrary master device 901 and an arbitrary divided memory 902 with a small delay, and
The ability to process at the maximum access speed of the entire memory system is required.

【0008】また、マスタデバイス901の数をN、分
割メモリ902の数をM、スイッチ903とマスタデバ
イス901の接続信号線数をCd 、スイッチ903と分
割メモリ902の接続信号線数をCm とすると、合計の
接続信号線数は(N×Cd )+(M×Cm )となる。
Further, assuming that the number of master devices 901 is N, the number of divided memories 902 is M, the number of connection signal lines between the switch 903 and the master device 901 is Cd, and the number of connection signal lines between the switch 903 and the divided memory 902 is Cm. , The total number of connection signal lines is (N × Cd) + (M × Cm).

【0009】例えば、N=M=2とし、スイッチ903
とマスタデバイス901間及びスイッチ903と分割メ
モリ間のデータ幅を共に36(32データ+4パリテ
ィ、双方向)、スイッチ903とマスタデバイス901
間のアドレス幅を36、スイッチ903と分割メモリ9
02間のアドレス幅を24とすれば、接続信号線の合計
数は、{2×(36+36)}+{2×(36+2
4)}=264本(うち144本は双方向)となる。
For example, N = M = 2, and switch 903
The data width between the master device 901 and the master device 901 and between the switch 903 and the divided memory is 36 (32 data + 4 parity, bidirectional), and the switch 903 and the master device 901.
Address width between 36, switch 903 and divided memory 9
If the address width between 02 is 24, the total number of connection signal lines is {2 × (36 + 36)} + {2 × (36 + 2).
4)} = 264 (of which 144 are bidirectional).

【0010】これを1個のゲートアレイなどのLSIで
実現するのは、ピン数、内部入出力線数の制限から困難
であるという問題点を有している。そして、上述のよう
に速い処理能力が要求される場合には、なおさらであ
る。
There is a problem in that it is difficult to realize this with an LSI such as one gate array due to the limitation of the number of pins and the number of internal input / output lines. This is especially true when high processing capacity is required as described above.

【0011】本発明は、任意のマスタデバイスが任意の
メモリデバイスを高速にアクセスできる機能を、単純な
回路構成で実現することを目的とする。
It is an object of the present invention to realize a function that allows an arbitrary master device to access an arbitrary memory device at high speed with a simple circuit configuration.

【0012】[0012]

【課題を解決するための手段】図1は、本発明のブロッ
ク図である。本発明は、#1〜#N×K のN×K個(第1の
所定数)のマスタデバイス101のうち任意のものか
ら、#1〜#MのM個(第2の所定数)の分割メモリ102
のうち任意のものへのアクセスを行うメモリアクセス回
路を前提とする。
FIG. 1 is a block diagram of the present invention. According to the present invention, from any one of the N × K (first predetermined number) master devices 101 of # 1 to # N × K, the M (second predetermined number) of # 1 to #M is selected. Split memory 102
It is premised on a memory access circuit for accessing any one of them.

【0013】まず、それぞれ、以下のような機能を有す
る#1〜#KのK個(第4の所定数)のメモリ制御モジュー
ル103を有する。即ち、まず、メモリ制御モジュール
103は、N×K個のマスタデバイス101のうちN個
ずつのマスタデバイス101に対するインタフェースと
M個の分割メモリ102に対向するインタフェースとを
有する。
First, each has K (fourth predetermined number) memory control modules 103 of # 1 to #K having the following functions. That is, first, the memory control module 103 has an interface for N master devices 101 out of N × K master devices 101 and an interface facing the M divided memories 102.

【0014】次に、メモリ制御モジュール103は、所
定の動作クロックBCLKと所定のモード信号MODE
に基づいて動作する。続いて、メモリ制御モジュール1
03は、動作クロックBCLKの同じ位相において複数
のマスタデバイス101から同一の分割メモリ102へ
のメモリアクセス要求がなされている場合には、所定の
規則によって決定された優先順位に従って選択されるマ
スタデバイス101からのメモリアクセス要求に基づい
て、動作クロックBCLKのモード信号MODE(#1〜
#Kのそれぞれ)に基づいて指定される位相で、メモリア
クセス要求に対応する分割メモリ102をアクセスす
る。
Next, the memory control module 103 has a predetermined operation clock BCLK and a predetermined mode signal MODE.
Work based on. Then, the memory control module 1
Reference numeral 03 denotes a master device 101 selected in accordance with a priority determined by a predetermined rule when a plurality of master devices 101 make memory access requests to the same divided memory 102 in the same phase of the operation clock BCLK. Based on the memory access request from the operation clock BCLK, the mode signal MODE (# 1 to
The divided memory 102 corresponding to the memory access request is accessed in a phase designated based on each of #K).

【0015】更に、メモリ制御モジュール103は、動
作クロックBCLKの同じ位相において複数のマスタデ
バイス101から異なる分割メモリ102へのメモリア
クセス要求がなされている場合には、それらの複数のマ
スタデバイス101からのそれぞれのメモリアクセス要
求に基づいて、動作クロックBCLKのモード信号MO
DE(#1〜#Kのそれぞれ)に基づいて指定される位相
で、各メモリアクセス要求に対応する異なる分割メモリ
102を同時にアクセスする。
Further, when a plurality of master devices 101 make memory access requests to different divided memories 102 in the same phase of the operation clock BCLK, the memory control module 103 sends a plurality of master devices 101 from the plurality of master devices 101. Based on each memory access request, the mode signal MO of the operation clock BCLK
Different divided memories 102 corresponding to respective memory access requests are simultaneously accessed in a phase designated based on DE (each of # 1 to #K).

【0016】そして、分割メモリ102毎に設けられ、
その分割メモリ102とK個のメモリ制御モジュール1
03のそれぞれにおけるその分割メモリ102に対向す
るインタフェースとを、そのインタフェースに対応する
メモリ制御モジュール103がその分割メモリ102を
アクセスする動作クロックBCLKの位相において選択
的に接続する、#1〜#MのM個の選択手段104を有す
る。
And, it is provided for each divided memory 102,
The divided memory 102 and K memory control modules 1
03, each of the interfaces facing the divided memory 102 is selectively connected in the phase of the operation clock BCLK at which the memory control module 103 corresponding to the interface accesses the divided memory 102. It has M selection means 104.

【0017】[0017]

【作用】本発明では、N×K個のマスタデバイス101
のうち任意のものから、M個の分割メモリ102のうち
任意のものへのアクセスを行うメモリアクセス回路が、
それぞれN個のマスタデバイス101とM個の分割メモ
リ102との間でスイッチングを行うK個のメモリ制御
モジュール103により構成され、それらにおける各分
割メモリ102と対向するインタフェースが、分割メモ
リ102毎に設けられる選択手段104により、順次分
割メモリ102と接続されるように選択される点が特徴
である。
In the present invention, N × K master devices 101 are used.
A memory access circuit for accessing any one of the M divided memories 102 from any one of
Each of the divided memories 102 is configured with K memory control modules 103 for switching between N master devices 101 and M divided memories 102, and an interface facing each divided memory 102 is provided for each divided memory 102. A feature is that the selection means 104 is selected so as to be sequentially connected to the divided memory 102.

【0018】この構成により、各メモリ制御モジュール
103をゲートアレイチップなどで容易に構成すること
が可能となり、しかも、複数のマスタデバイス101間
の競合の調停制御は各メモリ制御モジュール103が行
い、選択手段104は、各メモリ制御モジュール103
における各分割メモリ102と対向するインタフェース
を単純に順次選択するだけなので、全体のメモリアクセ
ス制御を簡易に実現することができる。
With this configuration, each memory control module 103 can be easily configured by a gate array chip or the like, and furthermore, each memory control module 103 performs arbitration control of competition among a plurality of master devices 101 and selects it. The means 104 includes each memory control module 103.
Since the interfaces facing the divided memories 102 in the above are simply sequentially selected, the entire memory access control can be easily realized.

【0019】[0019]

【実施例】以下、図面を参照しながら本発明の実施例に
つき詳細に説明する。以下の実施例において、後述する
図3のメッセージ通信装置103内の実メモリ307と
制御メモリ308が分割メモリとして構成され、バーチ
ャルメモリコントローラ209がスイッチ機能を有する
ように構成される点が本発明に最も関連する。 <本発明の実施例の構成>全体構成 図2は、本発明の実施例が適用されるネットワークの構
成図である。
Embodiments of the present invention will now be described in detail with reference to the drawings. In the following embodiments, the present invention is that the real memory 307 and the control memory 308 in the message communication device 103 of FIG. 3 described later are configured as divided memories, and the virtual memory controller 209 is configured to have a switch function. Most relevant. <Configuration of Embodiment of the Present Invention> Overall Configuration FIG. 2 is a configuration diagram of a network to which the embodiment of the present invention is applied.

【0020】光ファイバリング206を中心に構成され
るネットワーク201には、複数のノード202(図2
では、#000、#***、#%%%、などの番号で示されている)
が接続される。
A plurality of nodes 202 (see FIG.
Are indicated by numbers such as # 000, # ***, # %%%, etc.)
Are connected.

【0021】ノード202において、プロセッサバス2
05には複数のプロセッサ204が接続され、プロセッ
サバス205はメッセージ通信装置203に収容され
る。メッセージ通信装置203は、プロセッサバス20
5を介してプロセッサ204が送信又は受信するメッセ
ージデータを処理し、また、光ファイバリング206に
対して入力又は出力されるメッセージデータが格納され
たフレームを処理する。このメッセージ通信装置203
内のバスの構成が、本発明に最も関連する。メッセージ通信装置103の構成 次に、図3は、本発明の実施例における図2のノード2
02内のメッセージ通信装置203の構成図である。
At node 202, processor bus 2
A plurality of processors 204 are connected to 05, and the processor bus 205 is accommodated in the message communication device 203. The message communication device 203 includes the processor bus 20.
5, the processor 204 processes the message data transmitted or received, and also processes the frame in which the message data input to or output from the optical fiber ring 206 is stored. This message communication device 203
The configuration of the buses within is most relevant to the present invention. Configuration of Message Communication Device 103 Next, FIG. 3 shows the node 2 of FIG. 2 in the embodiment of the invention.
2 is a configuration diagram of a message communication device 203 in 02. FIG.

【0022】実メモリ307は、メッセージデータを一
時保持する通信バッファとして機能する。制御メモリ3
08は、メッセージの通信に使用される仮想記憶空間上
の各仮想ページアドレス毎に、その仮想ページアドレス
が実メモリ307内の実ページアドレスに割り付けられ
ている場合にはその実ページアドレスと、その仮想ペー
ジアドレスのページ状態(通信状態)を示すデータを記
憶する。
The real memory 307 functions as a communication buffer that temporarily holds message data. Control memory 3
08 is, for each virtual page address in the virtual storage space used for message communication, the real page address and its virtual page address if the virtual page address is allocated to the real page address in the real memory 307. Data indicating the page status (communication status) of the page address is stored.

【0023】このように、本発明の実施例におけるメッ
セージ通信装置103において、データを記憶するため
のメモリは、1つのメモリデバイスとして構成されるの
ではなく、実メモリ307と制御メモリ308という分
割メモリとして構成される点が特徴である。
As described above, in the message communication device 103 according to the embodiment of the present invention, the memory for storing data is not configured as a single memory device, but a real memory 307 and a divided memory of the control memory 308. The feature is that it is configured as.

【0024】プロセッサバスインタフェース312は、
図2のプロセッサバス205を収容すると共に外部バス
301に接続され、図2のプロセッサ204からプロセ
ッサバス205を介して入力されるメッセージデータ等
を、外部バス301及びバーチャルメモリコントローラ
309を介して実メモリ307に出力し、逆に、実メモ
リ307からバーチャルメモリコントローラ309及び
外部バス301を介して入力されるメッセージデータ等
を、プロセッサバス205を介してプロセッサ204に
出力する。
The processor bus interface 312 is
2 is connected to the external bus 301 and accommodates the message data and the like input from the processor 204 of FIG. 2 via the processor bus 205 via the external bus 301 and the virtual memory controller 309. 307 and vice versa, the message data and the like input from the real memory 307 via the virtual memory controller 309 and the external bus 301 are output to the processor 204 via the processor bus 205.

【0025】また、プロセッサバスインタフェース31
2は、外部バス301、バス結合部311及びCPUバ
ス302を介して、CPU313との間で、通信制御デ
ータの授受を行う。
Further, the processor bus interface 31
2 exchanges communication control data with the CPU 313 via the external bus 301, the bus coupling unit 311, and the CPU bus 302.

【0026】図2には明示してないが、図3では、プロ
セッサバス205は、1ノードあたり2本設けられてい
る。従って、プロセッサバスインタフェース312も、
各プロセッサバス205に対応して、#0と#1の2つが設
けられている。そして、#0のプロセッサバスインタフェ
ース312は、制御線319を用いて、#0と#1の各プロ
セッサバスインタフェース312が外部バス301をア
クセスする場合の競合制御を行う。更に、#0のプロセッ
サバスインタフェース312は、制御線321、322
を介して、後述するCPUバスアービタ314及びI/
Oコントローラ315との間でバスの使用に関する制御
データを授受しながら、外部バス301の競合制御を行
って、必要なときには制御線320を介してバス結合部
311の開閉制御を行う。
Although not shown in FIG. 2, two processor buses 205 are provided for each node in FIG. Therefore, the processor bus interface 312 also
Two # 0 and # 1 are provided corresponding to each processor bus 205. Then, the # 0 processor bus interface 312 uses the control line 319 to perform contention control when the # 0 and # 1 processor bus interfaces 312 access the external bus 301. Further, the # 0 processor bus interface 312 is connected to the control lines 321 and 322.
Via a CPU bus arbiter 314 and I /
While exchanging control data regarding bus use with the O controller 315, competition control of the external bus 301 is performed, and opening / closing control of the bus coupling unit 311 is performed via the control line 320 when necessary.

【0027】ネットワーク制御回路310は、フレーム
の送信時には、CPU313からCPUバス302、I
/Oコントローラ315、及びネットワーク命令/結果
バス303を介して入力される送信命令に基づいて、制
御メモリアクセスバス306を介して制御メモリ308
をアクセスしながら、実メモリ307からバーチャルメ
モリコントローラ309及びネットワークデータ送信バ
ス305を介して送信されるべきメッセージデータを読
み出し、それを含む送信フレームを構築し、それを光フ
ァイバリング206に送出し、その送信結果を、ネット
ワーク命令/結果バス303、I/Oコントローラ31
5、及びCPUバス302を介してCPU313に通知
する。
The network control circuit 310 sends the frame from the CPU 313 to the CPU bus 302, I.
A control memory 308 via a control memory access bus 306 based on a transmission command input via the I / O controller 315 and the network command / result bus 303.
While accessing, read message data to be transmitted from the real memory 307 via the virtual memory controller 309 and the network data transmission bus 305, construct a transmission frame including the message data, and send it to the optical fiber ring 206. The transmission result is sent to the network command / result bus 303 and the I / O controller 31.
5 and the CPU 313 via the CPU bus 302.

【0028】また、ネットワーク制御回路310は、光
ファイバリング206からのフレームの受信時には、制
御メモリアクセスバス306を介して制御メモリ308
をアクセスしながら、その受信フレームを他のノード2
02へ中継する。又は、その受信フレーム内のメッセー
ジデータを取り出し、ネットワークデータ受信バス30
4からバーチャルメモリコントローラ309を介して実
メモリ307に格納し、その受信結果を、ネットワーク
命令/結果バス303、I/Oコントローラ315、及
びCPUバス302を介してCPU313に通知する。
Further, the network control circuit 310 receives the frame from the optical fiber ring 206, and the control memory 308 via the control memory access bus 306.
Access the received frame to another node 2
Relay to 02. Alternatively, the message data in the received frame is extracted and the network data reception bus 30
4 to the real memory 307 via the virtual memory controller 309, and the reception result is notified to the CPU 313 via the network command / result bus 303, the I / O controller 315, and the CPU bus 302.

【0029】CPU313は、CPUバス302に接続
され、動作開始時に、CPUバス302に接続されるE
PROM316からCPUバス302に接続されるプロ
グラムRAM317に書き込まれる制御プログラムに従
って動作する。
The CPU 313 is connected to the CPU bus 302, and is connected to the CPU bus 302 at the start of operation.
It operates according to a control program written from the PROM 316 to the program RAM 317 connected to the CPU bus 302.

【0030】このCPU313は、CPUバス302、
バス結合部311、及び外部バス301を介して、プロ
セッサバスインタフェース312との間で、通信制御デ
ータの授受を行う。
The CPU 313 has a CPU bus 302,
Communication control data is exchanged with the processor bus interface 312 via the bus coupling unit 311 and the external bus 301.

【0031】また、CPU313は、フレームの送信時
には、CPUバス302、I/Oコントローラ315、
及びネットワーク命令/結果バス303を介して、送信
命令をネットワーク制御回路310へ出力し、その後、
ネットワーク制御回路310から、ネットワーク命令/
結果バス303、I/Oコントローラ315、及びCP
Uバス302を介して、送信結果通知を受け取る。逆
に、CPU313は、フレームの受信時には、ネットワ
ーク制御回路310から、ネットワーク命令/結果バス
303、I/Oコントローラ315、及びCPUバス3
02を介して、受信結果通知を受け取る。
Further, the CPU 313, when transmitting a frame, uses the CPU bus 302, the I / O controller 315,
And output a send command to the network control circuit 310 via the network command / result bus 303, and thereafter
From the network control circuit 310, a network command /
Result bus 303, I / O controller 315, and CP
The transmission result notification is received via the U bus 302. Conversely, the CPU 313 receives from the network control circuit 310 the network command / result bus 303, the I / O controller 315, and the CPU bus 3 when receiving a frame.
A reception result notification is received via 02.

【0032】更に、CPU313は、CPUバス302
を介して制御メモリ308内の各仮想ページアドレスの
ページ状態データ(通信状態を示すデータ)をアクセス
すると共に、CPUバス302及びバーチャルメモリコ
ントローラ309を介して制御メモリ308内の各仮想
ページアドレスの実ページアドレスデータ及び実メモリ
307をアクセスする。
Further, the CPU 313 has a CPU bus 302.
The page state data (data indicating the communication state) of each virtual page address in the control memory 308 is accessed via the CPU memory 302 and the virtual page address of each virtual page address in the control memory 308 is accessed via the CPU bus 302 and the virtual memory controller 309. The page address data and the real memory 307 are accessed.

【0033】I/Oコントローラ315は、CPUバス
302に接続され、外部の周辺装置が接続される周辺装
置バス318を収容する。また、I/Oコントローラ3
15は、前述したように、CPUバス302及びネット
ワーク命令/結果バス303を介して、CPU313と
ネットワーク制御回路310との間で授受される送信命
令、送信結果通知又は受信結果通知を中継する。
The I / O controller 315 is connected to the CPU bus 302 and accommodates a peripheral device bus 318 to which external peripheral devices are connected. In addition, I / O controller 3
As described above, the relay unit 15 relays the transmission command, the transmission result notification, or the reception result notification exchanged between the CPU 313 and the network control circuit 310 via the CPU bus 302 and the network command / result bus 303.

【0034】更に、I/Oコントローラ315は、CP
U313が外部バス301をアクセスするアドレスをC
PUバス302に対して指定した場合に、制御線322
を介して#0のプロセッサバスインタフェース312に、
外部バスアクセス要求を出力する。
Further, the I / O controller 315 is a CP
The address that U313 uses to access the external bus 301 is C
When specified for the PU bus 302, the control line 322
To the processor bus interface 312 of # 0 via
Outputs an external bus access request.

【0035】CPUバスアービタ314は、プロセッサ
バスインタフェース312から制御線321を介してC
PUバスアクセス要求(バスグラント要求)を受け取っ
た場合に、CPU313に対して制御線323を介して
バス使用要求(バスグラント要求)を出力し、CPU3
13から制御線323を介してバス使用許可(バスグラ
ントアクノリッジ)を受け取り、それに基づいてCPU
バスアクセス許可(バスグラントアクノリッジ)を制御
線321を介して#0のプロセッサバスインタフェース3
12に返す。
The CPU bus arbiter 314 is a C bus from the processor bus interface 312 via the control line 321.
When the PU bus access request (bus grant request) is received, the bus use request (bus grant request) is output to the CPU 313 via the control line 323, and the CPU 3
13 receives a bus use permission (bus grant acknowledge) from the control line 323 through the control line 323, and based on that, the CPU
Bus access permission (bus grant acknowledge) is sent via the control line 321 to the # 0 processor bus interface 3
Return to 12.

【0036】バーチャルメモリコントローラ309は、
プロセッサバスインタフェース312と実メモリ307
との間で外部バス301を介して授受されるデータ、C
PU313と実メモリ307又は制御メモリ308との
間でCPUバス302を介して授受されるデータ、ネッ
トワーク制御回路310と実メモリ307との間でネッ
トワークデータ受信バス304又はネットワークデータ
送信バス305を介して授受されるデータのスイッチン
グ制御及び競合制御を行う。バーチャルメモリコントローラ309の周辺の構成 図4は、図3のバーチャルメモリコントローラ309の
周辺の更に詳細な構成図である。
The virtual memory controller 309 is
Processor bus interface 312 and real memory 307
Data exchanged with the external bus 301 via the external bus 301, C
Data transmitted and received between the PU 313 and the real memory 307 or the control memory 308 via the CPU bus 302, and between the network control circuit 310 and the real memory 307 via the network data reception bus 304 or the network data transmission bus 305. The switching control and the contention control of the exchanged data are performed. Configuration of Periphery of Virtual Memory Controller 309 FIG. 4 is a more detailed configuration diagram of the periphery of the virtual memory controller 309 of FIG.

【0037】バーチャルメモリコントローラ309は、
#0と#1の2つのバーチャルメモリコントロールモジュー
ル(VMC)401から構成される。#0のVMC401
は、CPUバス302とネットワークデータ送信バス3
05が実メモリ307又は制御メモリ308内の実ペー
ジアドレスをアクセスする場合のスイッチング制御及び
競合の調停制御を行い、アドレスバス407及びデータ
バス403によって実メモリ307と接続され、データ
バス404を介して制御メモリ308の実ページアドレ
ス入出力端子と接続される。
The virtual memory controller 309 is
It is composed of two virtual memory control modules (VMC) 401 of # 0 and # 1. # 0 VMC 401
Is a CPU bus 302 and a network data transmission bus 3
05 performs switching control and contention arbitration control when the real page address in the real memory 307 or the control memory 308 is accessed, and is connected to the real memory 307 by the address bus 407 and the data bus 403, and via the data bus 404. It is connected to the real page address input / output terminal of the control memory 308.

【0038】#1のVMC401は、外部バス301とネ
ットワークデータ受信バス304が実メモリ307又は
制御メモリ308内の実ページアドレスをアクセスする
場合のスイッチング制御及び競合の調停制御を行い、ア
ドレスバス408及びデータバス403によって実メモ
リ307と接続され、データバス404を介して制御メ
モリ308の実ページアドレスデータ入出力端子と接続
される。
The VMC 401 of # 1 performs switching control and arbitration control of contention when the external bus 301 and the network data reception bus 304 access the real page address in the real memory 307 or the control memory 308, and the address bus 408 and It is connected to the real memory 307 by the data bus 403, and is connected to the real page address data input / output terminal of the control memory 308 via the data bus 404.

【0039】#0と#1のVMC401は、クロックBCL
Kとそれに同期するクロックB2CLKに同期して動作
する。#0のVMC401にはMODE信号が入力され、
#1のVMC401にはMODE信号をインバータで反転
した信号が入力される。
The VMCs 401 of # 0 and # 1 are clocked by the clock BCL.
It operates in synchronization with K and a clock B2CLK that is in synchronization with K. MODE signal is input to VMC401 of # 0,
The signal obtained by inverting the MODE signal by the inverter is input to the VMC 401 of # 1.

【0040】実メモリ307内に設けられるアドレスセ
レクタ411は、#0のVMC401からアドレスバス4
07を介して指定されるアドレスと#1のVMC401か
らアドレスバス408を介して指定されるアドレスと
を、クロックBCLK、B2CLKに基づいて交互に選
択する。
The address selector 411 provided in the actual memory 307 operates from the # 0 VMC 401 to the address bus 4
The address designated via 07 and the address designated from the VMC 401 of # 1 via the address bus 408 are alternately selected based on the clocks BCLK and B2CLK.

【0041】CPUバス302のデータバス部分405
と制御メモリアクセスバス306のデータバス部分40
6は、バッファ402(図3では特には図示していな
い)を介して制御メモリ308のページ状態データ入出
力端子と接続される。
The data bus portion 405 of the CPU bus 302
And the data bus portion 40 of the control memory access bus 306
6 is connected to a page state data input / output terminal of the control memory 308 via a buffer 402 (not shown in FIG. 3).

【0042】また、制御メモリ308内に設けられるア
ドレスセレクタ412は、CPUバス302のアドレス
バス部分409を介して指定されるアドレスと制御メモ
リアクセスバス306のアドレスバス部分410を介し
て指定されるアドレスとを、クロックBCLK、B2C
LKに基づいて交互に選択する。バーチャルメモリコントロールモジュール401の構成 図5は、図4の#0及び#1のバーチャルメモリコントロー
ルモジュール401の共通の構成図である。
The address selector 412 provided in the control memory 308 has an address designated by the address bus portion 409 of the CPU bus 302 and an address designated by the address bus portion 410 of the control memory access bus 306. And the clocks BCLK, B2C
Alternately select based on LK. Configuration of Virtual Memory Control Module 401 FIG. 5 is a configuration diagram common to the virtual memory control modules 401 of # 0 and # 1 in FIG.

【0043】ローカルバスインタフェース501にはC
PUバス302又は外部バス301が収容され、ネット
ワークデータバスインタフェース502には、ネットワ
ークデータ送信バス305又はネットワークデータ受信
バス304が収容される。
The local bus interface 501 has a C
The PU bus 302 or the external bus 301 is accommodated, and the network data bus interface 502 accommodates the network data transmission bus 305 or the network data reception bus 304.

【0044】実メモリインタフェース506は、それぞ
れ実メモリ307と接続されるデータバス403、アド
レスバス407又は408を収容する。制御メモリイン
タフェース507は、制御メモリ308と接続されるデ
ータバス404を収容する。
The real memory interface 506 accommodates a data bus 403 and an address bus 407 or 408 connected to the real memory 307, respectively. The control memory interface 507 accommodates the data bus 404 connected to the control memory 308.

【0045】ローカルバスインタフェース501と実メ
モリインタフェース506、ネットワークデータバスイ
ンタフェース502と実メモリインタフェース506
は、データバスとアドレスバスを含むバスによって接続
され、ローカルバスインタフェース501と制御メモリ
インタフェース507、ネットワーク201データバス
と制御メモリインタフェース507は、データバスによ
って接続される。
A local bus interface 501 and a real memory interface 506, a network data bus interface 502 and a real memory interface 506.
Are connected by a bus including a data bus and an address bus, and the local bus interface 501 and the control memory interface 507, and the network 201 data bus and the control memory interface 507 are connected by a data bus.

【0046】制御回路503は、クロックBCLK、B
2CLK、MODE信号又はそれを反転した(MODE
−)信号に基づいて動作し、制御線504によってロー
カルバスインタフェース501又はネットワークデータ
バスインタフェース502を制御し、制御線505を介
して実メモリインタフェース506及び制御メモリイン
タフェース507を制御しながら、CPUバス302又
は外部バス301とネットワークデータ送信バス305
又はネットワークデータ受信バス304が、実メモリ3
07又は制御メモリ308を別々にアクセスするときの
スイッチング制御と、これらが実メモリ307又は制御
メモリ308を同時にアクセスするときの競合の調停制
御を行う。
The control circuit 503 controls the clocks BCLK and BCLK.
2CLK, MODE signal or its inversion (MODE
-) Operating on the basis of a signal, controlling the local bus interface 501 or the network data bus interface 502 by the control line 504, and controlling the real memory interface 506 and the control memory interface 507 via the control line 505, while the CPU bus 302 Alternatively, the external bus 301 and the network data transmission bus 305
Alternatively, the network data reception bus 304 may be the real memory 3
07 or switching control when accessing the control memory 308 separately, and arbitration control of competition when these access the real memory 307 or the control memory 308 simultaneously.

【0047】以上の構成を有する本発明の実施例の動作
について説明する。 <プロセッサ間通信の全体動作>今、図2及び図3にお
いて、例えば#000のノード202内の1つのプロセッサ
204から、#***のノード202内の他の1つのプロセ
ッサ204にメッセージデータを送信する場合の全体動
作について説明する。
The operation of the embodiment of the present invention having the above configuration will be described. <Overall operation of inter-processor communication> Now, in FIG. 2 and FIG. 3, for example, message data is sent from one processor 204 in the node 202 of # 000 to another processor 204 in the node 202 of # ***. The overall operation when transmitting will be described.

【0048】この場合に、#000のノード202内の1つ
のプロセッサ204から送信されるメッセージデータ
は、プロセッサバス205を介してそのノード内のメッ
セージ通信装置203(以下、#000のメッセージ通信装
置203と呼ぶ)の実メモリ307に転送された後に、
#***のノード202内のメッセージ通信装置203(以
下、#***のメッセージ通信装置203と呼ぶ)の実メモ
リ307に送られ、その後、その実メモリ307からプ
ロセッサバス205を介して宛て先のプロセッサ204
に転送される。即ち、各メッセージ通信装置203の実
メモリ307は、通信バッファとして機能する。メッセージ通信装置203間の通信方式 ここで、メッセージ通信装置203間のメッセージデー
タの通信には、ネットワーク仮想記憶方式という特別な
方式が適用される。
In this case, the message data transmitted from one processor 204 in the node # 000 is the message communication device 203 in that node (hereinafter, the message communication device 203 in # 000) via the processor bus 205. Call)) to the real memory 307,
It is sent to the real memory 307 of the message communication device 203 in the node 202 of # *** (hereinafter referred to as the message communication device 203 of # ***), and then the destination from the real memory 307 via the processor bus 205. The processor 204
Transferred to. That is, the real memory 307 of each message communication device 203 functions as a communication buffer. Communication Method Between Message Communication Devices 203 Here, a special method called a network virtual storage method is applied to communication of message data between the message communication devices 203.

【0049】まず、図2のネットワーク201全体で、
仮想記憶空間が定義される。この仮想記憶空間は、複数
の仮想ページに分割され、メッセージデータの通信はこ
の仮想ページを介して行われる。例えば、仮想記憶空間
は、0000〜FFFFページ(16進数)までの仮想ページア
ドレスに分割される。1つの仮想ページは、メッセージ
データの1単位であるパケットを十分に収容可能な固定
長(例えば8キロバイト長)のデータ長を有する。な
お、以下特に言及しないときは、仮想ページアドレス及
び口述する実ページアドレスは、16進数で表現する。
First, in the entire network 201 of FIG.
A virtual memory space is defined. This virtual storage space is divided into a plurality of virtual pages, and message data is communicated via these virtual pages. For example, the virtual storage space is divided into virtual page addresses of 0000 to FFFF pages (hexadecimal number). One virtual page has a fixed length (for example, 8 kilobyte length) data length that can sufficiently accommodate a packet that is one unit of message data. Unless otherwise specified, the virtual page address and the dictated real page address are represented by hexadecimal numbers.

【0050】次に、この仮想記憶空間の所定ページ数毎
例えば16ページ毎に、ネットワーク201に接続され
る各ノード202のメッセージ通信装置203が割り当
てられる。例えば、0000〜000Fページには#000番目のノ
ード202のメッセージ通信装置203が割り当てら
れ、0010〜001Fページには#001番目のノード202のメ
ッセージ通信装置203が割り当てられ、以下同様にし
て、***0〜***Fページ及び%%%0〜%%%Fページ(3桁の *
及び %はそれぞれ0〜 Fの16進数のうち任意の数)に
は、それぞれ#***番目及び#%%%番目の各ノード202の
メッセージ通信装置203が割り当てられる。
Next, the message communication device 203 of each node 202 connected to the network 201 is allocated every predetermined number of pages, for example, every 16 pages, of this virtual storage space. For example, the message communication device 203 of the # 000th node 202 is allocated to the 0000 to 000F page, the message communication device 203 of the # 001th node 202 is allocated to the 0010 to 001F page, and so on. ** 0-*** F page and %%% 0-%%% F page (3 digit *
And% are arbitrary numbers in hexadecimal numbers 0 to F), the message communication device 203 of each node 202 of the # *** th and # %%% th is assigned.

【0051】従って、上述の例では、ネットワーク20
1には、#000〜#FFFまでの最大で3096台のメッセー
ジ通信装置203が接続可能である。一方、各メッセー
ジ通信装置203内の実メモリ307は、それぞれが上
述の仮想ページと同じデータ長を有する複数の実ページ
に分割される。実メモリ307のページ容量は、仮想記
憶空間のページ容量よりはるかに小さくてよく、例えば
64〜256ページ程度でよい。
Therefore, in the above example, the network 20
1, a maximum of 3096 message communication devices 203 from # 000 to #FFF can be connected. On the other hand, the real memory 307 in each message communication device 203 is divided into a plurality of real pages each having the same data length as the above-mentioned virtual page. The page capacity of the real memory 307 may be much smaller than the page capacity of the virtual storage space, and may be, for example, about 64 to 256 pages.

【0052】次に、各メッセージ通信装置203の制御
メモリ308にはそれぞれ、図6に示されるように、全
仮想ページアドレス分の制御データが記憶される。各仮
想ページアドレスの制御データは、図6に示されるよう
に、その仮想ページアドレスに対応付けられる自メッセ
ージ通信装置203内の実メモリ307の実ページアド
レスデータと、その仮想ページアドレスの通信状態を示
すページ状態データとから構成されている。
Next, in the control memory 308 of each message communication device 203, as shown in FIG. 6, control data for all virtual page addresses are stored. As shown in FIG. 6, the control data of each virtual page address indicates the real page address data of the real memory 307 in the own message communication device 203 associated with the virtual page address and the communication state of the virtual page address. And page status data shown.

【0053】そして、初期状態として、各ノード202
内のメッセージ通信装置203の制御メモリ308にお
いて、そのノード202に割り当てられている仮想ペー
ジアドレスには、CPU313のネットワーク用受信制
御機能によって、自メッセージ通信装置203の実メモ
リ307内の任意の空きページに設けられるネットワー
ク用受信バッファの実ページアドレスと、ページ状態と
して受信バッファ割付状態VPが、それぞれ予め書き込ま
れている。なお、ネットワーク用受信制御機能は、CP
U313がプログラムRAM317に記憶された制御プ
ログラムを実行することにより実現される。
Then, as an initial state, each node 202
In the control memory 308 of the message communication device 203 in the internal message communication device 203, the virtual page address assigned to the node 202 is set to an arbitrary empty page in the real memory 307 of the message communication device 203 by the network reception control function of the CPU 313. The real page address of the network receiving buffer provided in the above and the receiving buffer allocation state VP as the page state are respectively written in advance. The network reception control function is a CP
This is realized by the U313 executing the control program stored in the program RAM 317.

【0054】例えば、#000のメッセージ通信装置203
の制御メモリ308において、自メッセージ通信装置2
03に割り当てられている0000,0001,・・・ ,000Fペー
ジの各仮想ページアドレスには、図6に示されるよう
に、実メモリ307内のs,q,・・・,pの各実ページアド
レスが書き込まれ、受信バッファ割付状態を示すページ
状態VPが書き込まれている。
For example, the # 000 message communication device 203
In the control memory 308 of the own message communication device 2
As shown in FIG. 6, each virtual page address of 0000,0001, ..., 000F pages allocated to the 03 is assigned to each real page of s, q, ..., p in the real memory 307. The address has been written and the page status VP indicating the receive buffer allocation status has been written.

【0055】また、#***のメッセージ通信装置203の
制御メモリ308において、自メッセージ通信装置20
3に割り当てられている***0,***1,・・・ ,***Fページ
の各仮想ページアドレスには、図6に示されるように、
実メモリ307内のv,u,・・・,tの各実ページアドレス
が書き込まれ、受信バッファ割付状態を示すページ状態
VPが書き込まれている。
In the control memory 308 of the message communication device 203 of # ***, the own message communication device 20
As shown in FIG. 6, for each virtual page address of **** 0, *** 1, ..., *** F page assigned to
The page status indicating the receive buffer allocation status in which each real page address of v, u, ..., T in the real memory 307 is written.
VP is written.

【0056】同様に、#%%%のメッセージ通信装置203
の制御メモリ308において、自メッセージ通信装置2
03に割り当てられている%%%0,%%%1,・・・ ,%%%Fペー
ジの各仮想ページアドレスには、図6に示されるよう
に、実メモリ307内のy,w,・・・,xの各実ページアド
レスが書き込まれ、受信バッファ割付状態を示すページ
状態VPが書き込まれている。
Similarly, the message communication device 203 of # %%%
In the control memory 308 of the own message communication device 2
The %%% 0, %%% 1, ..., %%% F virtual page addresses allocated to 03 are assigned to y, w, and w in the real memory 307 as shown in FIG. , X are written, and the page state VP indicating the receive buffer allocation state is written.

【0057】今、後述する転送動作により、例えば#000
のメッセージ通信装置203の実メモリ307内の、実
ページアドレスがr であるネットワーク用送信バッファ
(後述する)に、#000のノード202内の1つのプロセ
ッサ204からメッセージデータが転送されているもの
とする。
Now, by the transfer operation described later, for example, # 000
Message data is transferred from one processor 204 in the node # 000 202 to a network transmission buffer (to be described later) whose real page address is r in the real memory 307 of the message communication device 203 of FIG. To do.

【0058】CPU313のネットワーク用送信制御機
能は、CPUバス302及びバーチャルメモリコントロ
ーラ309を介して実メモリ307内のネットワーク用
送信バッファに格納されているメッセージデータのヘッ
ダ内の宛て先アドレス部を解析することによって、その
宛て先アドレスに対応するプロセッサ204が収容され
るノード202に割り当てられている仮想ページアドレ
スのうち、ページ状態がバッファ未割付状態NAとなって
いるものを決定する。図6の例では、例えば仮想ページ
アドレス***2が決定される。なお、ネットワーク用送信
制御機能は、CPU313がプログラムRAM317に
記憶された制御プログラムを実行することにより実現さ
れる。
The network transmission control function of the CPU 313 analyzes the destination address part in the header of the message data stored in the network transmission buffer in the real memory 307 via the CPU bus 302 and the virtual memory controller 309. By doing so, the virtual page address assigned to the node 202 in which the processor 204 corresponding to the destination address is accommodated is determined as the one whose page state is the buffer unallocated state NA. In the example of FIG. 6, for example, the virtual page address *** 2 is determined. The network transmission control function is realized by the CPU 313 executing the control program stored in the program RAM 317.

【0059】次に、CPU313のネットワーク用送信
制御機能は、制御メモリ308内の上述の決定した仮想
ページアドレスに、上述のメッセージデータが格納され
ているネットワーク用送信バッファの実ページアドレス
を書き込み、ページ状態を、バッファ未割付状態NAから
送信状態SDに変更する。図6の例では、例えば仮想ペー
ジアドレス***2に実ページアドレスr と送信状態SDが設
定される。
Next, the network transmission control function of the CPU 313 writes the real page address of the network transmission buffer in which the above-mentioned message data is stored in the determined virtual page address in the control memory 308, and the page Change the status from the buffer unallocated status NA to the transmission status SD. In the example of FIG. 6, the real page address r and the transmission state SD are set to the virtual page address *** 2, for example.

【0060】そして、CPU313のネットワーク用送
信制御機能は、I/Oコントローラ315内の送信用F
IFOに、CPUバス302を介して、送信命令と共
に、上述の仮想ページアドレスと、上述のメッセージデ
ータの転送長を書き込む。
The network transmission control function of the CPU 313 is the transmission F function in the I / O controller 315.
The virtual page address and the transfer length of the message data described above are written to the IFO via the CPU bus 302 together with the transmission command.

【0061】ネットワーク制御回路310は、I/Oコ
ントローラ315内の送信用FIFOから、ネットワー
ク命令/結果バス303を介して、上述の送信命令等を
読み出すと、その送信命令に付加されている仮想ページ
アドレスを、制御メモリアクセスバス306を介して制
御メモリ308に指定し、制御メモリ308から上述の
仮想ページアドレスに設定されている実ページアドレス
を読み出してバーチャルメモリコントローラ309内の
特には図示しないDMA転送用レジスタに設定する。
When the network control circuit 310 reads the above-mentioned transmission command or the like from the transmission FIFO in the I / O controller 315 via the network command / result bus 303, the virtual page added to the transmission command. An address is designated to the control memory 308 via the control memory access bus 306, the real page address set to the above-mentioned virtual page address is read from the control memory 308, and DMA transfer (not shown) in the virtual memory controller 309 is performed. Set to the register for use.

【0062】そして、ネットワーク制御回路310は、
バーチャルメモリコントローラ309に、送信されるべ
きメッセージデータが含まれる実メモリ307内の上記
実ページアドレスのページデータを、ネットワークデー
タ送信バス305を介してネットワーク制御回路310
にDMA転送させる。
Then, the network control circuit 310 is
The page data of the real page address in the real memory 307 including the message data to be transmitted to the virtual memory controller 309 is transferred to the network control circuit 310 via the network data transmission bus 305.
To DMA transfer.

【0063】ネットワーク制御回路310は、上述のペ
ージデータから送信命令に付加されているメッセージデ
ータの転送長に対応する分のメッセージデータを取り出
し、そのメッセージデータと送信命令に付加されている
仮想ページアドレス及びメッセージデータの転送長を含
む送信フレームを生成し、それを光ファイバリング20
6に送出する。なお、光ファイバリング206のフレー
ム伝送方式としては、トークンリングネットワーク方式
が採用され、ネットワーク制御回路310は、光ファイ
バリング206上を周回するフリートークンを獲得した
場合のみ送信フレームを送出することができる。
The network control circuit 310 extracts message data corresponding to the transfer length of the message data added to the send command from the page data described above, and the virtual page address added to the message data and the send command. And a transmission frame including the transfer length of the message data and generating the transmission frame.
Send to 6. The token ring network method is adopted as the frame transmission method of the optical fiber ring 206, and the network control circuit 310 can send a transmission frame only when a free token circulating on the optical fiber ring 206 is acquired. .

【0064】図6の例においては、#000のメッセージ通
信装置203から、仮想ページアドレス***2と実メモリ
307内の実ページアドレスr に格納されているメッセ
ージデータとを含む送信フレームが、光ファイバリング
206に送出される。
In the example of FIG. 6, a transmission frame including the virtual page address *** 2 and the message data stored in the real page address r in the real memory 307 from the message communication device 203 of # 000 is It is sent to the optical fiber ring 206.

【0065】上述の送信フレームは、光ファイバリング
206に接続されている他のノード202(図2参照)
に順次転送される。各ノード202内のメッセージ通信
装置203のネットワーク制御回路310は、光ファイ
バリング206から上記送信フレームを取り込むと、そ
の送信フレームに格納されている仮想ページアドレスに
対応するページ状態を制御メモリアクセスバス306を
介して制御メモリ308から読み出し、そのページ状態
が受信バッファ割付状態VPであるか否か、即ち、その仮
想ページアドレスが自ノード202のメッセージ通信装
置203に割り当てられているか否か、又はそのページ
状態が送信状態SDであるか否か、即ち、その送信フレー
ムが自ネットワーク制御回路310が送出したものであ
るか否かを判別する。
The above-mentioned transmission frame is transmitted to another node 202 (see FIG. 2) connected to the optical fiber ring 206.
Are sequentially transferred to. When the network control circuit 310 of the message communication device 203 in each node 202 fetches the transmission frame from the optical fiber ring 206, the page state corresponding to the virtual page address stored in the transmission frame is set to the control memory access bus 306. Read from the control memory 308 via the, and whether the page status is the receive buffer allocation status VP, that is, whether the virtual page address is assigned to the message communication device 203 of the own node 202, or the page It is determined whether or not the state is the transmission state SD, that is, whether or not the transmission frame is transmitted by the own network control circuit 310.

【0066】ネットワーク制御回路310は、送信フレ
ームに格納されている仮想ページアドレスのページ状態
が受信バッファ割付状態VPであると判別した場合には、
送信フレームに格納されているメッセージデータを、以
下のようにして実メモリ307に取り込む。
When the network control circuit 310 determines that the page state of the virtual page address stored in the transmission frame is the reception buffer allocation state VP,
The message data stored in the transmission frame is taken into the real memory 307 as follows.

【0067】即ち、ネットワーク制御回路310は、ま
ず、送信フレームに格納されている仮想ページアドレス
を、制御メモリアクセスバス306を介して制御メモリ
308に指定し、制御メモリ308から上述の仮想ペー
ジアドレスに設定されている実ページアドレスを読み出
してバーチャルメモリコントローラ309内の特には図
示しないDMA転送用レジスタに設定する。そして、ネ
ットワーク制御回路310は、バーチャルメモリコント
ローラ309に、送信フレームに含まれるメッセージデ
ータを、ネットワークデータ受信バス304を介して実
メモリ307内の上述の実ページアドレスにDMA転送
させる。
That is, the network control circuit 310 first designates the virtual page address stored in the transmission frame to the control memory 308 via the control memory access bus 306, and the control memory 308 changes the virtual page address to the above virtual page address. The set real page address is read out and set in a DMA transfer register (not shown) in the virtual memory controller 309. Then, the network control circuit 310 causes the virtual memory controller 309 to DMA-transfer the message data included in the transmission frame to the above-mentioned real page address in the real memory 307 via the network data reception bus 304.

【0068】その後、ネットワーク制御回路310は、
送信フレームに格納されている仮想ページアドレスを、
制御メモリアクセスバス306を介して制御メモリ30
8に指定し、その仮想ページアドレスのページ状態を受
信バッファ割付状態VPから受信完了状態RDに変更する。
After that, the network control circuit 310
The virtual page address stored in the transmission frame is
Control memory 30 via control memory access bus 306
8 is specified, and the page status of the virtual page address is changed from the reception buffer allocation status VP to the reception completion status RD.

【0069】更に、ネットワーク制御回路310は、I
/Oコントローラ315内の受信用FIFOに、ネット
ワーク命令/結果バス303を介して、受信の成否を示
す結果コードと共に、送信フレームから抽出した仮想ペ
ージアドレスとメッセージデータの転送長を書き込む。
Further, the network control circuit 310 is
The virtual page address extracted from the transmission frame and the transfer length of the message data are written into the reception FIFO in the / O controller 315 via the network command / result bus 303 together with the result code indicating the success or failure of the reception.

【0070】最後に、ネットワーク制御回路310は、
光ファイバリング206から受信した上述の送信フレー
ム中の応答領域に受信成功通知を書き込んだ後、その送
信フレームを再び光ファイバリング206に送出する。
Finally, the network control circuit 310
After writing the reception success notification in the response area in the above-mentioned transmission frame received from the optical fiber ring 206, the transmission frame is sent to the optical fiber ring 206 again.

【0071】例えば、図6の例では、#***のメッセージ
通信装置203のネットワーク制御回路310は、#000
のノード202からの送信フレームに格納されている仮
想ページアドレス***2の制御メモリ308上のページ状
態が受信バッファ割付状態VPであると判別することによ
り、その送信フレームに格納されているメッセージデー
タを、制御メモリ308の仮想ページアドレス***2に設
定されている実ページアドレスu を有する実メモリ30
7内のネットワーク用受信バッファに取り込んだ後、制
御メモリ308の仮想ページアドレス***2のページ状態
を受信バッファ割付状態VPから受信完了状態RDに変更す
る。
For example, in the example of FIG. 6, the network control circuit 310 of the message communication device 203 of # *** is # 000.
The message stored in the transmission frame is determined by determining that the page state on the control memory 308 of the virtual page address *** 2 stored in the transmission frame from the node 202 is the reception buffer allocation state VP. The data is transferred to the real memory 30 having the real page address u set to the virtual page address *** 2 of the control memory 308.
After fetching in the network reception buffer in 7, the page state of the virtual page address *** 2 of the control memory 308 is changed from the reception buffer allocation state VP to the reception completion state RD.

【0072】上述の受信結果通知は、CPU313によ
り、CPUバス302を介して受信される。即ち、CP
U313のネットワーク用受信制御機能は、CPUバス
302を介してI/Oコントローラ315内の受信用F
IFOから上述の受信結果通知を受け取ると、結果コー
ドが受信成功であるならば、受信結果通知の一部である
仮想ページアドレスをCPUバス302を介して制御メ
モリ308に指定し、そのページ状態と実ページアドレ
スを読み出す。
The above-mentioned reception result notification is received by the CPU 313 via the CPU bus 302. That is, CP
The U313 network reception control function uses the reception F in the I / O controller 315 via the CPU bus 302.
When the above reception result notification is received from the IFO and if the result code is successful in reception, the virtual page address which is a part of the reception result notification is designated to the control memory 308 via the CPU bus 302, and the page state Read the real page address.

【0073】上述のページ状態が受信完了状態RDである
ならば、CPU313のネットワーク用受信制御機能
は、まず、CPUバス302及びバーチャルメモリコン
トローラ309を介して実メモリ307を制御して、上
述の実ページアドレスで指定される実ページをネットワ
ーク用受信バッファから切り離しプロセッサ用送信待ち
バッファキューに接続する。
If the page state described above is the reception completion state RD, the network reception control function of the CPU 313 first controls the real memory 307 via the CPU bus 302 and the virtual memory controller 309, and Separates the real page specified by the page address from the network receive buffer and connects it to the processor send-wait buffer queue.

【0074】その後、CPU313のネットワーク用受
信制御機能は、CPUバス302及びバーチャルメモリ
コントローラ309を介して実メモリ307を制御し
て、任意の空きページをネットワーク用受信バッファに
接続し、更に、上述の受信結果通知の一部である仮想ペ
ージアドレスでCPUバス302を介して制御メモリ3
08をアクセスし、その仮想ページアドレスに、上述の
空きページの実ページアドレスと、ページ状態として受
信バッファ割付状態VPを、それぞれ書き込む。
Thereafter, the network reception control function of the CPU 313 controls the real memory 307 via the CPU bus 302 and the virtual memory controller 309 to connect an arbitrary empty page to the network reception buffer, and further Control memory 3 via CPU bus 302 with a virtual page address that is part of the reception result notification
08 is accessed, and the real page address of the above-mentioned empty page and the reception buffer allocation state VP as the page state are written to the virtual page address.

【0075】これ以後、実メモリ307内のプロセッサ
用送信待ちバッファキューに対する処理は、CPU31
3のネットワーク用受信制御機能から後述するプロセッ
サ用送信制御機能に引き渡される。
After that, the processing for the processor transmission waiting buffer queue in the real memory 307 is performed by the CPU 31.
3 from the network reception control function to the processor transmission control function described later.

【0076】一方、ネットワーク制御回路310は、送
信フレームに格納されている仮想ページアドレスに対応
するページ状態を制御メモリ308から読み出した結
果、そのページ状態が受信バッファ割付状態VPでも送信
状態SDでもないと判別した場合には、その送信フレーム
をそのまま光ファイバリング206に送出する。
On the other hand, the network control circuit 310 reads the page state corresponding to the virtual page address stored in the transmission frame from the control memory 308, and as a result, the page state is neither the reception buffer allocation state VP nor the transmission state SD. If it is determined that the transmission frame is transmitted, the transmission frame is directly transmitted to the optical fiber ring 206.

【0077】例えば、図6の例では、#%%%のメッセージ
通信装置203のネットワーク制御回路310は、#000
のノード202からの送信フレームに格納されている仮
想ページアドレス***2の制御メモリ308上のページ状
態が受信バッファ割付状態VPでも送信状態SDでもないと
判別することにより、その送信フレームをそのまま光フ
ァイバリング206に送出する。
For example, in the example of FIG. 6, the network control circuit 310 of the # %%% message communication device 203 uses # 000
By determining that the page state on the control memory 308 of the virtual page address *** 2 stored in the transmission frame from the node 202 of the node 202 is neither the reception buffer allocation state VP nor the transmission state SD, the transmission frame is left as it is. It is sent to the optical fiber ring 206.

【0078】上述のようにして光ファイバリング206
上を順次転送された送信フレームは、最後に送信元のノ
ード202内のメッセージ通信装置203のネットワー
ク制御回路310に戻る。
Optical fiber ring 206 as described above
The transmission frame sequentially transferred above returns to the network control circuit 310 of the message communication device 203 in the node 202 which is the transmission source.

【0079】送信元のネットワーク制御回路310は、
送信フレームに格納されている仮想ページアドレスに対
応するページ状態を制御メモリ308から読み出した結
果、それが送信状態SDであると判別することによって、
その送信フレームが自ネットワーク制御回路310が送
出した送信フレームであることを判別する。
The network control circuit 310 of the transmission source
As a result of reading out the page state corresponding to the virtual page address stored in the transmission frame from the control memory 308, by determining that it is the transmission state SD,
It is determined that the transmission frame is the transmission frame transmitted by the own network control circuit 310.

【0080】この場合に、ネットワーク制御回路310
は、受信した送信フレームの応答領域に受信成功通知が
書き込まれていることを確認した後に、制御メモリアク
セスバス306を介して、送信フレームに格納されてい
る仮想ページアドレスに対応する制御メモリ308のペ
ージ状態を、送信状態SDから送信完了状態SCに変更す
る。
In this case, the network control circuit 310
After confirming that the reception success notification is written in the response area of the received transmission frame, the control memory 308 of the control memory 308 corresponding to the virtual page address stored in the transmission frame is transmitted via the control memory access bus 306. The page state is changed from the transmission state SD to the transmission completion state SC.

【0081】そして、ネットワーク制御回路310は、
I/Oコントローラ315内の受信用FIFOに、ネッ
トワーク命令/結果バス303を介し、送信の成否を示
す結果コードと共に、送信フレームから抽出した仮想ペ
ージアドレスを書き込む。
Then, the network control circuit 310 is
The virtual page address extracted from the transmission frame is written to the reception FIFO in the I / O controller 315 via the network command / result bus 303 together with the result code indicating the success or failure of the transmission.

【0082】上述の送信結果通知は、CPU313によ
り、CPUバス302を介して受信される。即ち、CP
U313のネットワーク用送信制御機能は、CPUバス
302を介してI/Oコントローラ315内の受信用F
IFOから上述の送信結果通知を受け取ると、結果コー
ドが送信成功であるならば、送信結果通知の一部である
仮想ページアドレスをCPUバス302を介して制御メ
モリ308に指定し、そのページ状態と実ページアドレ
スを読み出す。
The above-mentioned transmission result notification is received by the CPU 313 via the CPU bus 302. That is, CP
The network transmission control function of the U313 is performed by the reception F in the I / O controller 315 via the CPU bus 302.
When the above result notification is received from the IFO, if the result code is successful, the virtual page address that is a part of the result notification is specified in the control memory 308 via the CPU bus 302, and the page status is changed. Read the real page address.

【0083】上述のページ状態が送信完了状態SCである
ならば、CPU313のネットワーク用送信制御機能
は、まず、CPUバス302及びバーチャルメモリコン
トローラ309を介して実メモリ307を制御して、上
述の実ページアドレスで指定される実ページをネットワ
ーク用送信バッファから切り離し空きページとする。
If the above-mentioned page state is the transmission completion state SC, the network transmission control function of the CPU 313 first controls the real memory 307 via the CPU bus 302 and the virtual memory controller 309 to make the above-mentioned real state. The real page specified by the page address is separated from the network send buffer and used as a free page.

【0084】その後、CPU313のネットワーク用送
信制御機能は、上述の送信結果通知の一部である仮想ペ
ージアドレスでCPUバス302を介して制御メモリ3
08をアクセスし、その仮想ページアドレスのページ状
態として、バッファ未割付状態NAを書き込む。
After that, the network transmission control function of the CPU 313 controls the control memory 3 via the CPU bus 302 with the virtual page address which is a part of the above-mentioned transmission result notification.
08 is accessed, and the buffer unallocated state NA is written as the page state of the virtual page address.

【0085】以上のように、ネットワーク201(図2
参照)上において、1つの仮想記憶空間が定義され、こ
の空間を構成する固定長のデータ長を有する仮想ページ
が各メッセージ通信装置203に割り当てられる。そし
て、メッセージ通信装置203間のメッセージデータの
通信は、この仮想ページを使用して行われる。この結
果、通常のパケット通信で行われているブロック化制
御、順序制御が不要となる。
As described above, the network 201 (see FIG.
In the above, one virtual storage space is defined, and a virtual page having a fixed data length that constitutes this space is assigned to each message communication device 203. Communication of message data between the message communication devices 203 is performed using this virtual page. As a result, blocking control and sequence control that are performed in normal packet communication are not required.

【0086】また、光ファイバリング206上の各ノー
ド202内のメッセージ通信装置203のネットワーク
制御回路310は、送信フレームを受信すると、その送
信フレームに格納されている仮想ページアドレスで制御
メモリ308上のページ状態をアクセスすることによっ
て、受信した送信フレームを高速に処理することができ
る。
When the network control circuit 310 of the message communication device 203 in each node 202 on the optical fiber ring 206 receives a transmission frame, the network control circuit 310 in the control memory 308 uses the virtual page address stored in the transmission frame. By accessing the page state, the received transmission frame can be processed at high speed.

【0087】加えて、光ファイバリング206上を転送
される送信フレームには応答領域が設けられ、受信側の
ノード202内のメッセージ通信装置203のネットワ
ーク制御回路310は、送信フレームの受信結果を送信
フレームの応答領域に書き込み、それを再び光ファイバ
リング206に送出する。従って、この送信フレームが
光ファイバリング206上を転送され送信元に戻ってく
るまでに、メッセージデータの送信処理が完了すること
になり、受信側から送信元への応答を別のフレームを用
いて通知する必要がない。この結果、通信プロトコルを
簡略なものにすることができ、高速な応答処理が可能と
なる。
In addition, a response area is provided in the transmission frame transferred on the optical fiber ring 206, and the network control circuit 310 of the message communication device 203 in the node 202 on the reception side transmits the reception result of the transmission frame. It writes in the response area of the frame and sends it out again to the optical fiber ring 206. Therefore, by the time this transmission frame is transferred on the optical fiber ring 206 and returned to the transmission source, the message data transmission processing is completed, and the response from the reception side to the transmission source is sent using another frame. No need to notify. As a result, the communication protocol can be simplified and high-speed response processing can be performed.

【0088】更に、メッセージ通信装置203間のメッ
セージデータの通信は、メッセージ通信装置203内の
ネットワーク制御回路310が制御メモリ308をアク
セスしながら実メモリ307を使用して行い、プロセッ
サ204とメッセージ通信装置203間のメッセージデ
ータの通信は、後述するように、メッセージ通信装置2
03内のプロセッサバスインタフェース312が、上述
のネットワーク制御回路310の動作とは独立して、実
メモリ307を使用して行う。更に、実メモリ307上
の実ページアドレスに格納されたメッセージデータと仮
想記憶空間上の仮想ページアドレスとの対応付けは、後
述するように、CPU313がメッセージデータに付加
されたヘッダ内の宛て先アドレスに基づいて行う。従っ
て、プロセッサ204とメッセージ通信装置203間、
メッセージ通信装置203とメッセージ通信装置203
間の処理を効率良く高速に実行することが可能となる。送信元におけるプロセッサ204からメッセージ通信装
置203へのメッセージデータの転送動作 次に、送信元のノード202(図6の例では#000のノー
ド202)内の1つのプロセッサ204からそのノード
内のメッセージ通信装置203の実メモリ307に、メ
ッセージデータが転送される場合の動作について説明す
る。
Further, the communication of the message data between the message communication devices 203 is performed using the real memory 307 while the network control circuit 310 in the message communication device 203 accesses the control memory 308, and the processor 204 and the message communication device 203 communicate with each other. The communication of message data between 203 is performed by the message communication device 2 as described later.
The processor bus interface 312 in 03 uses the real memory 307 independently of the operation of the network control circuit 310 described above. Further, the correspondence between the message data stored in the real page address in the real memory 307 and the virtual page address in the virtual storage space is as described below, in which the CPU 313 sends the destination address in the header added to the message data. Based on. Therefore, between the processor 204 and the message communication device 203,
Message communication device 203 and message communication device 203
It is possible to efficiently perform the processing between them at high speed. From the processor 204 at the sender to the message communication device
Operation of Transferring Message Data to Device 203 Next, from one processor 204 in the source node 202 (# 202 node 202 in the example of FIG. 6) to the real memory 307 of the message communication device 203 in that node, The operation when the message data is transferred will be described.

【0089】まず、CPU313のプロセッサ用受信制
御機能は、CPUバス302及びバーチャルメモリコン
トローラ309を介して実メモリ307をアクセスする
ことにより、実メモリ307において、プロセッサ用受
信バッファキューに空きバッファキューに接続されてい
る空きバッファを接続する。なお、プロセッサ用受信制
御機能は、CPU313がプログラムRAM317に記
憶された制御プログラムを実行することにより実現され
る機能である。
First, the processor reception control function of the CPU 313 accesses the real memory 307 via the CPU bus 302 and the virtual memory controller 309 to connect the processor reception buffer queue to the free buffer queue in the real memory 307. Connect the free buffer that is being used. The processor reception control function is a function realized by the CPU 313 executing the control program stored in the program RAM 317.

【0090】そして、CPU313のプロセッサ用受信
制御機能は、CPUバス302、バス結合部311、及
び外部バス301を介して、例えば#0のプロセッサバス
インタフェース312を起動すると共に、そのインタフ
ェース312に対して上述のプロセッサ用受信バッファ
キューの先頭アドレスを通知する。
The processor reception control function of the CPU 313 activates, for example, the # 0 processor bus interface 312 via the CPU bus 302, the bus coupling unit 311, and the external bus 301, and sends a command to the interface 312. The start address of the above-mentioned processor receive buffer queue is notified.

【0091】プロセッサバスインタフェース312は、
プロセッサ204からプロセッサバス205を介して転
送されてきたメッセージデータを受信し、上記先頭アド
レスを受信開始アドレスとしてバッファアドレスを順次
更新しながら、上述の受信されたメッセージデータを、
外部バス301及びバーチャルメモリコントローラ30
9を介して、実メモリ307内のプロセッサ用受信バッ
ファキューに接続された空きバッファに、順次転送す
る。
The processor bus interface 312 is
The message data transferred from the processor 204 via the processor bus 205 is received, and the received message data described above is updated while sequentially updating the buffer address with the start address as the reception start address.
External bus 301 and virtual memory controller 30
9 is sequentially transferred to an empty buffer connected to the processor reception buffer queue in the real memory 307.

【0092】プロセッサバスインタフェース312は、
プロセッサ用受信バッファキューに接続される空きバッ
ファがなくなると、自動的に停止し、その旨を外部バス
301、バス結合部311、及びCPUバス302を介
してCPU313に通知する。
The processor bus interface 312 is
When there is no free buffer connected to the processor reception buffer queue, the free buffer is automatically stopped, and the fact is notified to the CPU 313 via the external bus 301, the bus coupling unit 311, and the CPU bus 302.

【0093】CPU313のプロセッサ用受信制御機能
は、まず、CPUバス302及びバーチャルメモリコン
トローラ309を介して実メモリ307を制御して、上
述の受信済のバッファをプロセッサ用受信バッファキュ
ーから切り離しネットワーク用送信バッファに接続す
る。これ以後、実メモリ307内のネットワーク用送信
バッファに対する処理は、CPU313のプロセッサ用
受信制御機能から前述したネットワーク用送信制御機能
に引き渡され、前述したメッセージ通信装置203間の
通信方式に従って、送信元のノード202のメッセージ
通信装置203(図6の例では#000のメッセージ通信装
置203)内の実メモリ307から、宛て先のプロセッ
サ204が収容されるノード202のメッセージ通信装
置203(図6の例では#***のメッセージ通信装置20
3)内の実メモリ307への、メッセージデータの転送
動作が実行される。受信側におけるメッセージ通信装置203からプロセッ
サ204へのメッセージデータの転送動作 次に、受信側のノード202(図6の例では#***のノー
ド202)内のメッセージ通信装置203の実メモリ3
07からそのノード202内の1つのプロセッサ204
に、メッセージデータが転送される場合の動作について
説明する。
The processor reception control function of the CPU 313 first controls the real memory 307 via the CPU bus 302 and the virtual memory controller 309 to separate the above-mentioned received buffer from the processor reception buffer queue and transmit it to the network. Connect to a buffer. Thereafter, the processing for the network transmission buffer in the real memory 307 is transferred from the processor reception control function of the CPU 313 to the network transmission control function described above, and the transmission source of the transmission source is transmitted in accordance with the communication method between the message communication devices 203 described above. From the real memory 307 in the message communication device 203 of the node 202 (# 000 message communication device 203 in the example of FIG. 6), the message communication device 203 of the node 202 (in the example of FIG. 6) in which the destination processor 204 is accommodated # *** message communication device 20
The message data transfer operation to the real memory 307 in 3) is executed. From the message communication device 203 on the receiving side to the process
Transfer Operation of Message Data to Server 204 Next, the real memory 3 of the message communication device 203 in the receiving node 202 (# 202 node 202 in the example of FIG. 6)
07 to one processor 204 in that node 202
The operation when the message data is transferred will be described below.

【0094】ネットワーク制御回路310が送信フレー
ムの受信に成功すると、前述したように、CPU313
のネットワーク用受信制御機能が、受信されたメッセー
ジデータを実メモリ307内のプロセッサ用送信待ちバ
ッファキューに接続する。
When the network control circuit 310 succeeds in receiving the transmission frame, as described above, the CPU 313.
The network reception control function of (1) connects the received message data to the processor transmission waiting buffer queue in the real memory 307.

【0095】これに対して、CPU313のプロセッサ
用送信制御機能は、CPUバス302、バス結合部31
1、及び外部バス301を介して、例えば#0のプロセッ
サバスインタフェース312を起動すると共に、そのイ
ンタフェース312に対して上述のプロセッサ用送信待
ちバッファキューの先頭アドレスを通知する。
On the other hand, the CPU transmission control function of the CPU 313 is the CPU bus 302 and the bus coupling unit 31.
For example, the # 0 processor bus interface 312 is activated via 1 and the external bus 301, and the interface 312 is notified of the start address of the above-mentioned processor transmission waiting buffer queue.

【0096】プロセッサバスインタフェース312は、
上記先頭アドレスを送信開始アドレスとしてバッファア
ドレスを順次更新しながら、外部バス301及びバーチ
ャルメモリコントローラ309を介して、実メモリ30
7内のプロセッサ用送信待ちバッファキューに接続され
たバッファに格納されているメッセージデータを順次読
み出して、そのメッセージデータのヘッダ内の宛て先ア
ドレス部を解析しながら、そのメッセージデータをプロ
セッサバス205を介して宛て先のプロセッサ204に
転送する。 <バーチャルメモリコントローラ309を中心とする動
作>前述したように、本発明の実施例では、メッセージ
通信装置203間のメッセージデータの通信は、メッセ
ージ通信装置203内のネットワーク制御回路310が
制御メモリ308をアクセスしながら実メモリ307を
使用して行い、プロセッサ204とメッセージ通信装置
203間のメッセージデータの通信は、メッセージ通信
装置203内のプロセッサバスインタフェース312
が、上述のネットワーク制御回路310の動作とは独立
して、実メモリ307を使用して行う。更に、実メモリ
307上の実ページアドレスに格納されたメッセージデ
ータと仮想記憶空間上の仮想ページアドレスとの対応付
けは、CPU313が制御メモリ308と実メモリ30
7を使用して行う。
The processor bus interface 312 is
While sequentially updating the buffer address with the start address as the transmission start address, the real memory 30 is accessed via the external bus 301 and the virtual memory controller 309.
7 sequentially reads the message data stored in the buffer connected to the processor transmission waiting buffer queue, analyzes the destination address part in the header of the message data, and transfers the message data to the processor bus 205. Via the destination processor 204. <Operation centering on virtual memory controller 309> As described above, in the embodiment of the present invention, the communication of message data between the message communication devices 203 is performed by the network control circuit 310 in the message communication device 203 through the control memory 308. Message data communication between the processor 204 and the message communication device 203 is performed using the real memory 307 while accessing, and the processor bus interface 312 in the message communication device 203 is used.
However, the real memory 307 is used independently of the operation of the network control circuit 310 described above. Furthermore, the CPU 313 associates the message data stored at the real page address on the real memory 307 with the virtual page address on the virtual memory space by the control memory 308 and the real memory 30.
7 is used.

【0097】上述したようなネットワーク制御回路31
0、プロセッサバスインタフェース312、及びCPU
313による制御メモリ308又は実メモリ307への
アクセスを効率的に行うため、図3のメッセージ通信装
置103において、まず、実メモリ307と制御メモリ
308は物理的に分割されたメモリとして構成され、バ
ーチャルメモリコントローラ309が実メモリ307及
び制御メモリ308へのアクセスを制御する。
Network control circuit 31 as described above
0, processor bus interface 312, and CPU
In order to efficiently access the control memory 308 or the real memory 307 by the 313, in the message communication device 103 of FIG. 3, first, the real memory 307 and the control memory 308 are configured as physically divided memories, and The memory controller 309 controls access to the real memory 307 and the control memory 308.

【0098】即ち、バーチャルメモリコントローラ30
9は、プロセッサバスインタフェース312と実メモリ
307との間で外部バス301を介して授受されるデー
タ、CPU313と実メモリ307又は制御メモリ30
8との間でCPUバス302を介して授受されるデー
タ、ネットワーク制御回路310と実メモリ307との
間でネットワークデータ受信バス304又はネットワー
クデータ送信バス305を介して授受されるデータのス
イッチング制御及び競合制御を行う。
That is, the virtual memory controller 30
Reference numeral 9 denotes data exchanged between the processor bus interface 312 and the real memory 307 via the external bus 301, the CPU 313 and the real memory 307 or the control memory 30.
8, switching control of data transmitted / received via the CPU bus 302, data exchanged between the network control circuit 310 and the real memory 307 via the network data reception bus 304 or the network data transmission bus 305, and Performs competition control.

【0099】更に、本発明の実施例では、バーチャルメ
モリコントローラ309を、1つのLSIチップで構成
するのではなく、#0と#1の2つのバーチャルメモリコン
トロールモジュール(VMC)401により構成し、実
メモリ307内のアドレスセレクタ411及び制御メモ
リ308内のアドレスセレクタ412が#0と#1のVMC
401の各アドレス出力を交互に選択することにより、
単純な構成と単純な制御でシステムのスループットを向
上させるようにしている点が特徴である。#0のVMC401の動作 まず、#0のVMC401は、CPUバス302を介した
CPU313、又はネットワークデータ送信バス305
を介したネットワーク制御回路310からの要求に従
い、実メモリ307内のデータ又は制御メモリ308内
の実ページアドレスデータのアクセス制御を行う。
Further, in the embodiment of the present invention, the virtual memory controller 309 is configured not by one LSI chip but by two virtual memory control modules (VMC) 401 of # 0 and # 1. The address selector 411 in the memory 307 and the address selector 412 in the control memory 308 have VMCs # 0 and # 1.
By alternately selecting each address output of 401,
A feature is that the system configuration is improved with a simple configuration and simple control. Operation of VMC 401 of # 0 First, the VMC 401 of # 0 is the CPU 313 via the CPU bus 302 or the network data transmission bus 305.
In accordance with a request from the network control circuit 310 via the, the access control of the data in the real memory 307 or the real page address data in the control memory 308 is performed.

【0100】まず、CPU313がCPUバス302及
び#0のVMC401を介して実メモリ307内のデータ
をアクセスする場合には、例えば前述したように、 1)CPU313が、実メモリ307上のプロセッサ用受
信バッファキュー、ネットワーク用送信バッファ、ネッ
トワーク用受信バッファ、プロセッサ用送信待ちバッフ
ァキュー、又は空きバッファキューを、それぞれ制御す
る場合、 2)CPU313が、実メモリ307内のネットワーク用
送信バッファに格納されているメッセージデータのヘッ
ダ内の宛て先アドレス部を解析する場合、などがある。
First, when the CPU 313 accesses the data in the real memory 307 via the CPU bus 302 and the VMC 401 of # 0, for example, as described above, 1) the CPU 313 receives data for the processor on the real memory 307. When controlling the buffer queue, the network transmission buffer, the network reception buffer, the processor transmission waiting buffer queue, or the empty buffer queue, 2) the CPU 313 is stored in the network transmission buffer in the real memory 307. For example, when the destination address part in the header of the message data is analyzed.

【0101】この場合には、#0のVMC401からアド
レスバス407を介して指定されたアドレスがアドレス
セレクタ411を介して実メモリ307に指定され、デ
ータバス403を介して、#0のVMC401と実メモリ
307の間でメッセージデータ等が授受される。
In this case, the address designated from the # 0 VMC 401 via the address bus 407 is designated to the real memory 307 via the address selector 411, and the # 0 VMC 401 and the real memory 307 are designated via the data bus 403. Message data and the like are exchanged between the memories 307.

【0102】また、CPU313がCPUバス302及
び#0のVMC401を介して制御メモリ308内の実ペ
ージアドレスデータをアクセスする場合には、例えば前
述したように、 1)CPU313のネットワーク用受信制御機能が、初期
状態において、自CPU313が含まれるノード202
に割り当てられている制御メモリ308上の仮想ページ
アドレス(図6参照)に、実メモリ307内の任意の空
きページに設けられるネットワーク用受信バッファの実
ページアドレスを予め書き込む場合、 2)CPU313のネットワーク用送信制御機能が、送信
されるべきメッセージデータを送信状態とするため、制
御メモリ308上の所定の仮想ページアドレスに送信さ
れるべきメッセージデータが格納されているネットワー
ク用送信バッファの実ページアドレスを書き込むことに
より通信バッファを割り当てる場合、 3)CPU313のネットワーク用受信制御機能が、受信
に成功したメモリデータをネットワーク用受信バッファ
から切り離しプロセッサ用送信待ちバッファキューに接
続するために、制御メモリ308上の所定の仮想ページ
アドレスから実ページアドレスを読み出す場合、などが
ある。
When the CPU 313 accesses the real page address data in the control memory 308 via the CPU bus 302 and the VMC 401 of # 0, for example, as described above, 1) the network reception control function of the CPU 313 is , The node 202 including the own CPU 313 in the initial state
When the real page address of the network reception buffer provided in an arbitrary free page in the real memory 307 is written in advance in the virtual page address (see FIG. 6) on the control memory 308 assigned to 2), the network of the CPU 313 Since the message transmission control function puts the message data to be transmitted into the transmission state, the real page address of the network transmission buffer in which the message data to be transmitted is stored is stored in a predetermined virtual page address on the control memory 308. When allocating the communication buffer by writing, 3) the network reception control function of the CPU 313 separates the memory data, which has been successfully received, from the network reception buffer and connects it to the processor transmission waiting buffer queue. A given virtual page If you read the real page address from the address, and the like.

【0103】この場合には、CPUバス302のアドレ
スバス部分409から直接指定されたアドレスがアドレ
スセレクタ412を介して制御メモリ308に指定さ
れ、データバス404を介して、#0のVMC401と実
メモリ307の間で実ページアドレスデータが授受され
る。
In this case, the address directly designated from the address bus portion 409 of the CPU bus 302 is designated to the control memory 308 via the address selector 412, and the # 0 VMC 401 and the real memory are designated via the data bus 404. Real page address data is exchanged between 307.

【0104】一方、ネットワーク制御回路310がネッ
トワークデータ送信バス305及び#0のVMC401を
介して実メモリ307内のデータをアクセスする場合に
は、前述したように、ネットワーク制御回路310が、
実メモリ307内の送信されるべきメッセージデータを
DMA転送により受け取る場合がある。
On the other hand, when the network control circuit 310 accesses the data in the real memory 307 via the network data transmission bus 305 and the VMC 401 of # 0, the network control circuit 310, as described above,
The message data to be transmitted in the real memory 307 may be received by the DMA transfer.

【0105】この場合には、#0のVMC401からアド
レスバス407を介して指定されたアドレスがアドレス
セレクタ411を介して実メモリ307に指定され、デ
ータバス403を介して、実メモリ307から#0のVM
C401へメッセージデータが転送される。
In this case, the address designated by the # 0 VMC 401 through the address bus 407 is designated by the real memory 307 through the address selector 411, and the real memory 307 through the # 0 by the data bus 403. VM
The message data is transferred to C401.

【0106】また、ネットワーク制御回路310がネッ
トワークデータ送信バス305及び#0のVMC401を
介して制御メモリ308内の実ページアドレスデータを
アクセスする場合には、前述したように、ネットワーク
制御回路310が、上述の送信メッセージデータのDM
A転送前に、送信命令に付加されている仮想ページアド
レスを、制御メモリアクセスバス306を介して制御メ
モリ308に指定し、制御メモリ308から上述の仮想
ページアドレスに設定されている実ページアドレスを読
み出して#0のVMC401内の特には図示しないDMA
転送用レジスタに設定する場合がある。
When the network control circuit 310 accesses the real page address data in the control memory 308 via the network data transmission bus 305 and the VMC 401 of # 0, as described above, the network control circuit 310 DM of the above transmission message data
Before the A transfer, the virtual page address added to the transmission command is specified in the control memory 308 via the control memory access bus 306, and the real page address set in the above-mentioned virtual page address is set from the control memory 308. A DMA (not shown) in the VMC 401 that is read and # 0
It may be set in the transfer register.

【0107】この場合には、制御メモリアクセスバス3
06のアドレスバス部分410から直接指定されたアド
レスがアドレスセレクタ412を介して制御メモリ30
8に指定され、データバス404を介して、実メモリ3
07から#0のVMC401へ実ページアドレスデータが
転送される。#1のVMC401の動作 次に、#1のVMC401は、外部バス301を介したプ
ロセッサバスインタフェース312、又はネットワーク
データ受信バス304を介したネットワーク制御回路3
10からの要求に従い、実メモリ307内のデータ又は
制御メモリ308内の実ページアドレスデータのアクセ
ス制御を行う。
In this case, the control memory access bus 3
The address directly specified from the address bus portion 410 of the control memory 30 via the address selector 412.
8 and the real memory 3 via the data bus 404.
The real page address data is transferred from 07 to the VMC 401 of # 0. Operation of VMC 401 of # 1 Next, the VMC 401 of # 1 uses the processor bus interface 312 via the external bus 301 or the network control circuit 3 via the network data receiving bus 304.
According to the request from 10, the access control of the data in the real memory 307 or the real page address data in the control memory 308 is performed.

【0108】プロセッサバスインタフェース312が外
部バス301及び#1のVMC401を介して実メモリ3
07内のデータをアクセスする場合には、例えば前述し
たように、 1)プロセッサバスインタフェース312が、プロセッサ
204から受信したメッセージデータを、実メモリ30
7内のプロセッサ用受信バッファキューに接続された空
きバッファに順次転送する場合、 2)プロセッサバスインタフェース312が、実メモリ3
07内のプロセッサ用送信待ちバッファキューに接続さ
れたバッファに格納されているメッセージデータを順次
読み出して、それをプロセッサ204に転送する場合、
などがある。
The processor bus interface 312 connects the real memory 3 via the external bus 301 and the VMC 401 of # 1.
When accessing the data in 07, for example, as described above, 1) the processor bus interface 312 transfers the message data received from the processor 204 to the real memory 30.
When sequentially transferring to the empty buffer connected to the processor reception buffer queue in 7, the processor bus interface 312 is
In the case where message data stored in a buffer connected to the processor transmission waiting buffer queue in 07 are sequentially read and transferred to the processor 204,
and so on.

【0109】この場合には、#1のVMC401からアド
レスバス408を介して指定されたアドレスがアドレス
セレクタ411を介して実メモリ307に指定され、デ
ータバス403を介して、#1のVMC401と実メモリ
307の間でメッセージデータ等が授受される。
In this case, the address designated from the # 1 VMC 401 via the address bus 408 is designated to the real memory 307 via the address selector 411, and the # 1 VMC 401 and the real memory 307 are designated via the data bus 403. Message data and the like are exchanged between the memories 307.

【0110】また、プロセッサバスインタフェース31
2が外部バス301及び#1のVMC401を介して制御
メモリ308内の実ページアドレスデータをアクセスす
る場合は、本発明の実施例では規定されない。
Further, the processor bus interface 31
It is not specified in the embodiment of the present invention when the No. 2 accesses the real page address data in the control memory 308 via the external bus 301 and the VMC 401 of # 1.

【0111】一方、ネットワーク制御回路310がネッ
トワークデータ受信バス304及び#1のVMC401を
介して実メモリ307をアクセスする場合には、前述し
たように、ネットワーク制御回路310が、光ファイバ
リング206(図2参照)から受信した送信フレームに
含まれる自ノード202宛のメッセージデータを、実メ
モリ307にDMA転送する場合がある。
On the other hand, when the network control circuit 310 accesses the real memory 307 via the network data reception bus 304 and the VMC 401 of # 1, as described above, the network control circuit 310 causes the optical fiber ring 206 (see FIG. The message data addressed to the own node 202 included in the transmission frame received from (see 2) may be DMA-transferred to the real memory 307.

【0112】この場合には、#1のVMC401からアド
レスバス408を介して指定されたアドレスがアドレス
セレクタ411を介して実メモリ307に指定され、デ
ータバス403を介して、#1のVMC401から実メモ
リ307へメッセージデータが転送される。
In this case, the address designated by the # 1 VMC 401 through the address bus 408 is designated by the real memory 307 through the address selector 411, and the # 1 VMC 401 through the data bus 403. The message data is transferred to the memory 307.

【0113】また、ネットワーク制御回路310がネッ
トワークデータ受信バス304及び#1のVMC401を
介して制御メモリ308をアクセスする場合には、前述
したように、ネットワーク制御回路310が、受信メッ
セージデータのDMA転送前に、そのメッセージデータ
が含まれていた送信フレームに格納されている仮想ペー
ジアドレスを、制御メモリアクセスバス306を介して
制御メモリ308に指定し、制御メモリ308から上述
の仮想ページアドレスに設定されている実ページアドレ
スを読み出して#1のVMC401内の特には図示しない
DMA転送用レジスタに設定する場合がある。
When the network control circuit 310 accesses the control memory 308 via the network data receiving bus 304 and the VMC 401 of # 1, the network control circuit 310 transfers the received message data by DMA as described above. Previously, the virtual page address stored in the transmission frame that contained the message data was designated to the control memory 308 via the control memory access bus 306, and set to the above-mentioned virtual page address from the control memory 308. There is a case where the actual page address is read and set in a DMA transfer register (not shown) in the VMC 401 of # 1.

【0114】この場合には、制御メモリアクセスバス3
06のアドレスバス部分410から直接指定されたアド
レスがアドレスセレクタ412を介して制御メモリ30
8に指定され、データバス404を介して、実メモリ3
07から#1のVMC401へ実ページアドレスデータが
転送される。制御メモリ308内のページ状態データのアクセス動作 CPU313がCPUバス302を介して、また、ネッ
トワーク制御回路310が制御メモリアクセスバス30
6を介して、それぞれ制御メモリ308内のページ状態
データをアクセスする場合は、前述したように、非常に
多くの場合がある。
In this case, the control memory access bus 3
The address directly specified from the address bus portion 410 of the control memory 30 via the address selector 412.
8 and the real memory 3 via the data bus 404.
The real page address data is transferred from 07 to # 1 VMC 401. Access operation of page state data in control memory 308: CPU 313 via CPU bus 302; and network control circuit 310: control memory access bus 30
When accessing the page state data in the control memory 308 via 6 respectively, there are many cases as described above.

【0115】本発明の実施例では、まず、CPU313
が制御メモリ308内のページ状態データをアクセスす
る場合には、CPUバス302のアドレスバス部分40
9から直接指定されたアドレスがアドレスセレクタ41
2を介して制御メモリ308に指定され、CPUバス3
02のデータバス部分405及びバッファ402を介し
て、CPU313と制御メモリ308の間でページ状態
データが直接授受される。
In the embodiment of the present invention, first, the CPU 313
Access the page state data in control memory 308, address bus portion 40 of CPU bus 302
The address directly specified by 9 is the address selector 41
2 is designated to the control memory 308 via the CPU bus 3
The page state data is directly transmitted and received between the CPU 313 and the control memory 308 via the data bus portion 405 of No. 02 and the buffer 402.

【0116】また、ネットワーク制御回路310が制御
メモリ308内のページ状態データをアクセスする場合
には、制御メモリアクセスバス306のアドレスバス部
分410から直接指定されたアドレスがアドレスセレク
タ412を介して制御メモリ308に指定され、制御メ
モリアクセスバス306のデータバス部分406及びバ
ッファ402を介して、ネットワーク制御回路310と
制御メモリ308の間でページ状態データが直接授受さ
れる。#0のVMC401と#1のVMC401間の実メモリアク
セスサイクルの関係 次に、#0のVMC401と#1のVMC401は、クロッ
クBCLK、B2CLKに同期して動作する。
When the network control circuit 310 accesses the page state data in the control memory 308, the address directly designated by the address bus portion 410 of the control memory access bus 306 is controlled by the address selector 412. The page state data is directly exchanged between the network control circuit 310 and the control memory 308 via the data bus portion 406 of the control memory access bus 306 and the buffer 402. The actual memory access between VMC401 of # 0 and VMC401 of # 1.
Relationship between Process Cycles Next, the # 0 VMC 401 and the # 1 VMC 401 operate in synchronization with the clocks BCLK and B2CLK.

【0117】この場合の、#0のVMC401と#1のVM
C401間の実メモリアクセスサイクルのタイミング関
係を、図7のタイミングチャートを使用して説明する。
図7(a) はシステムクロックCLK(φ1、φ2)を示
し、図7(b) はCLKに基づいて生成されるクロックB
CLKを示す。バスアクセス制御のための各制御信号は
このクロックBCLKに同期して出力される。このクロ
ックBCLKにおいて、「↑」で挟まれた各区間がバス
サイクルを示す。図7(c) はクロックBCLKを2分周
したクロックB2CLKを示す。
In this case, # 0 VMC 401 and # 1 VMC 401
The timing relationship of the actual memory access cycle between C401 will be described with reference to the timing chart of FIG.
7 (a) shows the system clock CLK (φ1, φ2), and FIG. 7 (b) shows the clock B generated based on CLK.
Indicates CLK. Each control signal for bus access control is output in synchronization with this clock BCLK. In this clock BCLK, each section sandwiched by "↑" indicates a bus cycle. FIG. 7C shows a clock B2CLK obtained by dividing the clock BCLK by two.

【0118】#0と#1のVMC401は、両方とも同じ構
成を有するが、外部から入力するMODE信号又は(M
ODE−)信号の論理状態により、クロックBCLKの
タイミングとB2CLのタイミングの異なった組合せに
基づいて動作する。
The VMCs 401 of # 0 and # 1 have the same configuration, but the MODE signal or (M
Depending on the logic state of the ODE-) signal, it operates based on different combinations of the timing of the clock BCLK and the timing of B2CL.

【0119】即ち、まず、#0のVMC401の制御回路
503(図5参照)には、例えばMODE信号として論
理“0”が入力されている。この場合、#0のVMC40
1の制御回路503は、図7(b),(c),(d) に示されるよ
うに、クロックB2CLKがハイレベルである期間内の
クロックBCLKの立上りタイミング「↑」から始める
バスサイクルにおいて、制御線505を介して実メモリ
インタフェース506を制御し、それに対してアドレス
バス407に実メモリアドレス(実ページアドレス)を
出力させる。
That is, first, the logic "0" is input to the control circuit 503 (see FIG. 5) of the # 0 VMC 401 as a MODE signal, for example. In this case, # 0 VMC40
As shown in FIGS. 7 (b), (c), and (d), the control circuit 503 of No. 1 has a bus cycle starting from the rising timing “↑” of the clock BCLK within the period in which the clock B2CLK is at the high level. The real memory interface 506 is controlled via the control line 505, and the real memory address (real page address) is output to the address bus 407 in response thereto.

【0120】これに同期して、図4の実メモリ307内
のアドレスセレクタ411は、クロックB2CLKがロ
ーレベルである期間内のクロックBCLKの立上りタイ
ミング「↑」から始まるバスサイクルにおいて、その直
前のバスサイクルにおいて#0のVMC401からアドレ
スバス407に出力されている実メモリアドレスを実メ
モリ307内の特には図示しないアドレスレジスタにラ
ッチする。
In synchronization with this, the address selector 411 in the real memory 307 of FIG. 4 determines that the bus selector immediately before the bus cycle starting from the rising timing "↑" of the clock BCLK within the period in which the clock B2CLK is at the low level. In the cycle, the real memory address output from the # 0 VMC 401 to the address bus 407 is latched in an address register (not shown) in the real memory 307.

【0121】上述の実メモリアドレスがラッチされたバ
スサイクルと同じバスサイクルにおいて、#0のVMC4
01の制御回路503は、図7(b),(c),(d) に示される
ように、制御線505を介して実メモリインタフェース
506を制御し、それに対してデータバス403を使用
させて実メモリ307との間で実メモリデータ(メッセ
ージデータ等)を授受させる。
In the same bus cycle as the above-mentioned bus cycle in which the actual memory address is latched, VMC4 of # 0
The control circuit 503 of 01 controls the real memory interface 506 via the control line 505 as shown in FIGS. 7 (b), (c), and (d), and causes the data bus 403 to be used for it. Real memory data (message data, etc.) is exchanged with the real memory 307.

【0122】一方、#1のVMC401の制御回路503
(図5参照)には、例えばMODE信号の論理がインバ
ータ(図4参照)で反転された(MODE−)信号とし
て論理“1”が入力されている。
On the other hand, the control circuit 503 of the # 1 VMC 401
For example, the logic "1" is input to (see FIG. 5) as a (MODE-) signal obtained by inverting the logic of the MODE signal by an inverter (see FIG. 4).

【0123】この場合、#1のVMC401の制御回路5
03は、図7(b),(e),(f) に示されるように、クロック
B2CLKがローレベルである期間内のクロックBCL
Kの立上りタイミング「↑」から始めるバスサイクルに
おいて、制御線505を介して実メモリインタフェース
506を制御し、それに対してアドレスバス407に実
メモリアドレスを出力させる。
In this case, the control circuit 5 of the # 1 VMC 401
03 is the clock BCL within the period in which the clock B2CLK is at the low level, as shown in FIGS.
In the bus cycle starting from the rising timing "↑" of K, the real memory interface 506 is controlled via the control line 505, and the real memory address is output to the address bus 407 in response thereto.

【0124】これに同期して、図4の実メモリ307内
のアドレスセレクタ411は、クロックB2CLKがハ
イレベルである期間内のクロックBCLKの立上りタイ
ミング「↑」から始まるバスサイクルにおいて、その直
前のバスサイクルにおいて#1のVMC401からアドレ
スバス408に出力されている実メモリアドレスを実メ
モリ307内の特には図示しないアドレスレジスタにラ
ッチする。
In synchronization with this, the address selector 411 in the real memory 307 of FIG. 4 determines that the bus immediately preceding the bus cycle starting from the rising timing "↑" of the clock BCLK within the period in which the clock B2CLK is at the high level. In the cycle, the real memory address output from the # 1 VMC 401 to the address bus 408 is latched in an address register (not shown) in the real memory 307.

【0125】上述の実メモリアドレスがラッチされたバ
スサイクルと同じバスサイクルにおいて、#1のVMC4
01の制御回路503は、図7(b),(e),(f) に示される
ように、制御線505を介して実メモリインタフェース
506を制御し、それに対してデータバス403を使用
させて実メモリ307との間で実メモリデータを授受さ
せる。
In the same bus cycle as the above-mentioned bus cycle in which the actual memory address is latched, the VMC4 of # 1
The control circuit 503 of 01 controls the real memory interface 506 via the control line 505 as shown in FIGS. 7 (b), (e), and (f), and causes the data bus 403 to be used for it. Real memory data is exchanged with the real memory 307.

【0126】以上の動作からわかるように、#0及び#1の
VMC401は、最短で2バスサイクルで実メモリ30
7をアクセスできる。アクセスが複数バスサイクルに渡
る場合は、#0及び#1のVMC401がそれぞれ1バスサ
イクルおきに交互に実メモリ307をアクセスできる。#0のVMC401と#1のVMC401間の制御メモリア
クセスサイクルの関係 次に、#0のVMC401と#1のVMC401間の制御メ
モリアクセスサイクルのタイミング関係について説明す
る。
As can be seen from the above operation, the VMCs 401 of # 0 and # 1 can store the real memory 30 in the shortest two bus cycles.
7 can be accessed. When access is performed over a plurality of bus cycles, the VMCs 401 of # 0 and # 1 can alternately access the real memory 307 every other bus cycle. Control memory between # 0 VMC401 and # 1 VMC401
Relationship access cycle will now be described timing relationship between the control memory access cycle between VMC401 of VMC401 and # 1 and # 0.

【0127】VMC401を介して制御メモリ308が
アクセスされる場合は、前述したように、制御メモリ3
08内の実ページアドレスデータがアクセスされる場合
である。
When the control memory 308 is accessed via the VMC 401, the control memory 3 is accessed as described above.
This is the case where the real page address data in 08 is accessed.

【0128】この場合のタイミング関係については、特
には図示しないが、制御メモリ308は、図4のアドレ
スセレクタ412を介してアドレスが指定された場合
に、そのアドレスが指定されたバスサイクルと同じバス
サイクル内で実ページアドレスデータの授受を行うこと
ができる。
Although the timing relationship in this case is not shown in particular, the control memory 308 has the same bus cycle as the bus cycle in which the address is designated when the address is designated through the address selector 412 in FIG. Real page address data can be exchanged within a cycle.

【0129】そして、まず、制御メモリ308内のアド
レスセレクタ412は、例えばクロックB2CLKがハ
イレベルである期間内のクロックBCLKの立上りタイ
ミングから始まるバスサイクルにおいて、それと同じバ
スサイクルで例えばCPUバス302のアドレスバス部
分409に指定されている制御メモリアドレス(仮想ペ
ージアドレス)を制御メモリ308内の特には図示しな
いアドレスレジスタにラッチする。
First, the address selector 412 in the control memory 308, for example, in the bus cycle starting from the rising timing of the clock BCLK within the period in which the clock B2CLK is at the high level, in the same bus cycle as the address of the CPU bus 302, for example. The control memory address (virtual page address) specified in the bus portion 409 is latched in an address register (not shown) in the control memory 308.

【0130】上述の制御メモリアドレスがラッチされた
バスサイクルと同じバスサイクルにおいて、#0のVMC
401の制御回路503は、制御線505を介して制御
メモリインタフェース507を制御し、それに対してデ
ータバス404を使用させて制御メモリ308との間で
実ページアドレスデータを授受させる。
In the same bus cycle in which the control memory address is latched, the VMC of # 0
The control circuit 503 of 401 controls the control memory interface 507 via the control line 505, and uses the data bus 404 for the control memory interface 507 to send / receive real page address data to / from the control memory 308.

【0131】一方、制御メモリ308内のアドレスセレ
クタ412は、例えばクロックB2CLKがローレベル
である期間内のクロックBCLKの立上りタイミングか
ら始まるバスサイクルにおいて、それと同じバスサイク
ルで例えば制御メモリアクセスバス306のアドレスバ
ス部分410に指定されている制御メモリアドレス(仮
想ページアドレス)を制御メモリ308内の特には図示
しないアドレスレジスタにラッチする。
On the other hand, the address selector 412 in the control memory 308, for example, in the bus cycle starting from the rising timing of the clock BCLK within the period in which the clock B2CLK is at the low level, for example, the address of the control memory access bus 306 in the same bus cycle. The control memory address (virtual page address) specified in the bus portion 410 is latched in an address register (not shown) in the control memory 308.

【0132】上述の制御メモリアドレスがラッチされた
バスサイクルと同じバスサイクルにおいて、#1のVMC
401の制御回路503は、制御線505を介して制御
メモリインタフェース507を制御し、それに対してデ
ータバス404を使用させて制御メモリ308から実ペ
ージアドレスデータを転送させる。
In the same bus cycle in which the control memory address is latched, the VMC of # 1
The control circuit 503 of 401 controls the control memory interface 507 via the control line 505, and uses the data bus 404 for it to transfer the real page address data from the control memory 308.

【0133】以上の動作からわかるように、実ページア
ドレスデータに関して、#0及び#1のVMC401は、最
短で1バスサイクルで制御メモリ308をアクセスでき
る。アクセスが複数バスサイクルに渡る場合は、#0及び
#1のVMC401がそれぞれ1バスサイクルおきに交互
に制御メモリ308をアクセスできる。CPUバス302と制御メモリアクセスバス306間の
バッファ402を介した制御メモリアクセスサイクルの
関係 次に、CPUバス302と制御メモリアクセスバス30
6間のバッファ402を介した制御メモリアクセスサイ
クルのタイミング関係について説明する。
As can be seen from the above operation, regarding the real page address data, the VMCs 401 of # 0 and # 1 can access the control memory 308 in one bus cycle at the shortest. If the access spans multiple bus cycles, # 0 and
The # 1 VMC 401 can alternately access the control memory 308 every other bus cycle. Between the CPU bus 302 and the control memory access bus 306
Of control memory access cycles via buffer 402
Relationship Next, the CPU bus 302 and the control memory access bus 30
The timing relationship of the control memory access cycle via the buffer 402 between the 6 will be described.

【0134】バッファ402を介して制御メモリ308
がアクセスされる場合は、前述したように制御メモリ3
08内のページ状態データがアクセスされる場合であ
る。この場合のタイミング関係については、特には図示
しないが、実ページアドレスデータのアクセスの場合と
同様、制御メモリ308は、図4のアドレスセレクタ4
12を介してアドレスが指定された場合に、そのアドレ
スが指定されたバスサイクルと同じバスサイクル内でペ
ージ状態データの授受を行うことが可能となる。
Control memory 308 via buffer 402
Access to the control memory 3 as described above.
This is the case when the page state data in 08 is accessed. Although the timing relationship in this case is not particularly shown, the control memory 308 uses the address selector 4 of FIG. 4 as in the case of accessing real page address data.
When an address is designated via 12, page status data can be exchanged within the same bus cycle as the bus cycle in which the address is designated.

【0135】そして、まず、制御メモリ308内のアド
レスセレクタ412は、実ページアドレスデータのアク
セスの場合と同様、例えばクロックB2CLKがハイレ
ベルである期間内のクロックBCLKの立上りタイミン
グから始まるバスサイクルにおいて、それと同じバスサ
イクルで例えばCPUバス302のアドレスバス部分4
09に指定されている制御メモリアドレス(仮想ページ
アドレス)を制御メモリ308内の特には図示しないア
ドレスレジスタにラッチする。
First, the address selector 412 in the control memory 308, for example, in the bus cycle starting from the rising timing of the clock BCLK within the period in which the clock B2CLK is at the high level, as in the case of accessing the real page address data, In the same bus cycle, for example, the address bus portion 4 of the CPU bus 302
The control memory address (virtual page address) designated by 09 is latched in an address register (not shown) in the control memory 308.

【0136】上述の制御メモリアドレスがラッチされた
バスサイクルと同じバスサイクルにおいて、#0のVMC
401の制御回路503は、特には図示しない制御線を
介してバッファ402を制御し、それに対してCPUバ
ス302のデータバス部分405との間でページ状態デ
ータを授受させる。
In the same bus cycle in which the control memory address is latched, the VMC of # 0
The control circuit 503 of 401 controls the buffer 402 via a control line (not shown), and transmits / receives page state data to / from the data bus portion 405 of the CPU bus 302.

【0137】一方、制御メモリ308内のアドレスセレ
クタ412は、実ページアドレスデータのアクセスの場
合と同様、例えばクロックB2CLKがローレベルであ
る期間内のクロックBCLKの立上りタイミングから始
まるバスサイクルにおいて、それと同じバスサイクルで
例えば制御メモリアクセスバス306のアドレスバス部
分410に指定されている制御メモリアドレス(仮想ペ
ージアドレス)を制御メモリ308内の特には図示しな
いアドレスレジスタにラッチする。
On the other hand, the address selector 412 in the control memory 308 is the same in the bus cycle starting from the rising timing of the clock BCLK within the period in which the clock B2CLK is at the low level, as in the case of accessing the real page address data. In the bus cycle, for example, the control memory address (virtual page address) specified in the address bus portion 410 of the control memory access bus 306 is latched in an address register (not shown) in the control memory 308.

【0138】上述の制御メモリアドレスがラッチされた
バスサイクルと同じバスサイクルにおいて、#0のVMC
401の制御回路503は、特には図示しない制御線を
介してバッファ402を制御し、それに対して制御メモ
リアクセスバス306のデータバス部分406との間で
ページ状態データを授受させる。
In the same bus cycle in which the control memory address is latched, the VMC of # 0
The control circuit 503 of 401 controls the buffer 402 via a control line (not shown), and transmits / receives page state data to / from the data bus portion 406 of the control memory access bus 306.

【0139】以上の動作からわかるように、ページ状態
でに関して、CPUバス302及び制御メモリアクセス
バス306は、実ページアドレスデータのアクセスの場
合と同様、最短で1バスサイクルで制御メモリ308を
アクセスできる。アクセスが複数バスサイクルに渡る場
合、#0及び#1のVMC401がそれぞれ1バスサイクル
おきに交互に制御メモリ308をアクセスできる。#0又は#1のVMC401内のアクセスの競合の調停制御 例えば、CPU313が実メモリ307をアクセスする
と同時に、ネットワーク制御回路310が制御メモリ3
08内の実ページアドレスデータをアクセスする場合に
は、#0のVMC401内の制御回路503は、ローカル
バスインタフェース501を実メモリインタフェース5
06に接続し、ネットワークデータバスインタフェース
502を制御メモリインタフェース507に接続するこ
とによって、CPU313による実メモリ307のアク
セスとネットワーク制御回路310による制御メモリ3
08のアクセスを同時に行わせることができる。
As can be seen from the above operation, in the page state, the CPU bus 302 and the control memory access bus 306 can access the control memory 308 in the shortest one bus cycle as in the case of accessing the real page address data. . When the access extends over a plurality of bus cycles, the VMCs 401 of # 0 and # 1 can alternately access the control memory 308 every other bus cycle. Arbitration control of access conflict in the # 0 or # 1 VMC 401. For example, at the same time when the CPU 313 accesses the real memory 307, the network control circuit 310 causes the control memory 3 to operate.
When the real page address data in 08 is accessed, the control circuit 503 in the VMC 401 # 0 sets the local bus interface 501 to the real memory interface 5
06, and the network data bus interface 502 to the control memory interface 507, so that the CPU 313 accesses the real memory 307 and the network control circuit 310 controls the control memory 3.
08 accesses can be performed simultaneously.

【0140】同様にして、CPU313による制御メモ
リ308のアクセスとネットワーク制御回路310によ
る実メモリ307のアクセス、プロセッサバスインタフ
ェース312による実メモリ307のアクセスとネット
ワーク制御回路310による制御メモリ308のアクセ
スも同時に行わせることができる。
Similarly, the CPU 313 accesses the control memory 308, the network control circuit 310 accesses the real memory 307, the processor bus interface 312 accesses the real memory 307, and the network control circuit 310 accesses the control memory 308 at the same time. Can be made.

【0141】一方、#0のVMC401内で、CPUバス
302とネットワークデータ送信バス305との間で、
実メモリ307に対して同時にアクセスの競合が発生し
た場合、又は#1のVMC401内で、外部バス301と
ネットワークデータ受信バス304との間で、実メモリ
307に対して同時にアクセスの競合が発生した場合に
は、図5の制御回路503は、所定の調停アルゴリズム
に従って競合の調停制御を行い、制御線504を介して
ローカルバスインタフェース501又はネットワークデ
ータバスインタフェース502の何れか一方の動作を優
先させる。
On the other hand, in the # 0 VMC 401, between the CPU bus 302 and the network data transmission bus 305,
When an access conflict occurs for the real memory 307 at the same time, or an access conflict occurs for the real memory 307 between the external bus 301 and the network data receiving bus 304 in the VMC 401 of # 1. In this case, the control circuit 503 of FIG. 5 performs contention arbitration control according to a predetermined arbitration algorithm, and gives priority to the operation of either the local bus interface 501 or the network data bus interface 502 via the control line 504.

【0142】また、#0のVMC401内で、CPUバス
302とネットワークデータ送信バス305との間で、
制御メモリ308に対して同時にアクセスの競合が発生
した場合、又は#1のVMC401内で、外部バス301
とネットワークデータ受信バス304との間で、制御メ
モリ308に対して同時にアクセスの競合が発生した場
合には、制御回路503は、前述したようにクロックB
2CLKに基づいて、制御線504を介してローカルバ
スインタフェース501又はネットワークデータバスイ
ンタフェース502の何れか一方の動作を交互に優先さ
せる。実メモリアクセスの具体例 最後に、CPU313が実メモリ307から実メモリデ
ータを取得する場合のタイミング例を、図8のタイミン
グチャートを使用して説明する。
In the # 0 VMC 401, between the CPU bus 302 and the network data transmission bus 305,
When access conflicts occur simultaneously for the control memory 308, or in the # 1 VMC 401, the external bus 301
When the access memory 308 and the network data receiving bus 304 simultaneously contend for access to the control memory 308, the control circuit 503 controls the clock B as described above.
Based on 2 CLK, the operation of either the local bus interface 501 or the network data bus interface 502 is alternately prioritized via the control line 504. Specific Example of Real Memory Access Finally, a timing example when the CPU 313 acquires real memory data from the real memory 307 will be described with reference to the timing chart of FIG.

【0143】図8において、斜線が付された期間は、信
号のなまり又はバス遅延などに基づいて信号の変化が変
動し得る範囲である。また、図6(d),(i),(j) に示され
る各信号は、ローレベルになったときにアクティブにな
るものとする。
In FIG. 8, the shaded period is the range in which the change of the signal can fluctuate due to signal rounding or bus delay. The signals shown in FIGS. 6 (d), (i), and (j) are assumed to be active when they become low level.

【0144】図8(a) は、図7(a) と同様、システムク
ロックCLK(φ1、φ2)を示し、図8(b) は、図8
(b) と同様、CLKに基づいて生成されるクロックBC
LKを示し、「↑」で挟まれた各区間がバスサイクルを
示す。
Similar to FIG. 7A, FIG. 8A shows the system clock CLK (φ1, φ2), and FIG.
Similar to (b), clock BC generated based on CLK
LK, and each section sandwiched by "↑" indicates a bus cycle.

【0145】まず、CPUバス302のアドレスバスに
おいてCPU313によって指定されたアドレスが図8
(c) に示されるように確定する。その直後、CPUバス
302のアドレスストローブ信号AS- が図8(d) に示さ
れるようにアクティブになり、また、適当な遅延時間の
後に、CPUバス302のデータストローブ信号DS-が
図8(i)に示されるようにアクティブになる。
First, the address designated by the CPU 313 on the address bus of the CPU bus 302 is shown in FIG.
Confirm as shown in (c). Immediately after that, the address strobe signal AS- of the CPU bus 302 becomes active as shown in FIG. 8 (d), and after an appropriate delay time, the data strobe signal DS- of the CPU bus 302 becomes as shown in FIG. ), It becomes active.

【0146】アドレスストローブ信号AS- がアクティブ
となっている第n番目のバスサイクルにおいて、上述の
CPUバス302に指定されたアドレスが#0のVMC4
01内のローカルバスインタフェース501(図5参
照)に取り込まれた後、同じバスサイクルにおいて、図
8(e) に示されるように、#0のVMC401内の実メモ
リインタフェース506からアドレスバス407に出力
される。そして、同じバスサイクル内の後半期間で、図
8(e) に示されるように、アドレスバス407上の上述
のアドレスが確定する。
In the nth bus cycle in which the address strobe signal AS- is active, the VMC4 whose address designated by the CPU bus 302 is # 0.
After being taken in by the local bus interface 501 in 01 (see FIG. 5), it is output to the address bus 407 from the real memory interface 506 in the VMC 401 # 0 in the same bus cycle as shown in FIG. 8 (e). To be done. Then, in the latter half period within the same bus cycle, the above-mentioned address on the address bus 407 is determined as shown in FIG. 8 (e).

【0147】これに同期して、図4の実メモリ307内
のアドレスセレクタ411は、アドレスバス407に第
n番目のバスサイクルのアドレスが出力されたバスサイ
クルの次のバスサイクルの先頭タイミングで、図8(f)
に示されるように、アドレスバス407上の第n番目の
バスサイクルのアドレスをラッチし、適当な遅延時間の
後に、そのラッチ内容が確定する。
In synchronism with this, the address selector 411 in the real memory 307 of FIG. 4 operates at the head timing of the bus cycle next to the bus cycle in which the address of the nth bus cycle is output to the address bus 407. Figure 8 (f)
As shown in (4), the address of the nth bus cycle on the address bus 407 is latched, and after an appropriate delay time, the latch content is fixed.

【0148】そして、上述のアドレスラッチ動作が行わ
れたバスサイクルと同じバスサイクルにおいて、図8
(g) に示されるように、実メモリ307から前述した第
n番目のバスサイクルのアドレスに対応する実メモリデ
ータがデータバス403に出力され、そのバスサイクル
の後半期間でその内容が確定する。
Then, in the same bus cycle as the bus cycle in which the above-mentioned address latch operation is performed,
As shown in (g), the real memory data corresponding to the address of the n-th bus cycle described above is output from the real memory 307 to the data bus 403, and its contents are determined in the latter half period of the bus cycle.

【0149】#0のVMC401の制御回路503(図5
参照)は、制御線505を介して実メモリインタフェー
ス506を制御し、それに対してデータバス403上の
実メモリデータを取り込ませ、更に、制御回路503
は、制御線504を介してローカルバスインタフェース
501を制御し、それに対して実メモリインタフェース
506から上述の実メモリデータを転送させる。
The control circuit 503 of the # 0 VMC 401 (see FIG. 5)
The control circuit 503 controls the real memory interface 506 via the control line 505 so that the real memory interface 506 is loaded with the real memory data on the data bus 403.
Controls the local bus interface 501 via the control line 504 and causes the real memory interface 506 to transfer the real memory data described above.

【0150】この結果、ローカルバスインタフェース5
01は、図8(j) に示されるように、適当な遅延時間の
後に、CPUバス302上のデータコンプリート信号DS
- をアクティブにし、CPUバス302上のデータバス
に、図8(h) に示されるように、適当な遅延時間の後
に、第n番目のバスサイクルのアドレスに対応する実メ
モリデータを出力する。
As a result, the local bus interface 5
01 is a data complete signal DS on the CPU bus 302 after an appropriate delay time, as shown in FIG. 8 (j).
-Is activated, and real memory data corresponding to the address of the nth bus cycle is output to the data bus on the CPU bus 302 after an appropriate delay time, as shown in FIG. 8 (h).

【0151】CPU313は、CPUバス302上のデ
ータコンプリート信号DS- がアクティブになってから適
当な遅延時間の後、CPUバス302上のデータバスに
出力された第n番目のバスサイクルのアドレスに対応す
る実メモリデータを処理し、図8(i) に示されるよう
に、適当な遅延時間の後に、データストローブ信号DS-
をインアクティブに戻す。
The CPU 313 corresponds to the address of the nth bus cycle output to the data bus on the CPU bus 302 after an appropriate delay time from the activation of the data complete signal DS- on the CPU bus 302. The actual strobe signal DS- is processed after the appropriate delay time as shown in FIG. 8 (i).
Back to inactive.

【0152】ここで、第n番目のバスサイクルのアドレ
スによって図8(f),(g) に示されるように実メモリ30
7がアクセスされるバスサイクルにおいて、図8(e) に
示されるようにアドレスバス408上には#1のVMC4
01から第n+1番目のバスサイクルのアドレスが出力
されており、その次のバスサイクルにおいて、上述の第
n+1番目のバスサイクルのアドレスによって図8(f),
(g) に示されるように実メモリ307がアクセスされ
る。
Here, as shown in FIGS. 8 (f) and 8 (g), the real memory 30 is specified by the address of the nth bus cycle.
In the bus cycle in which 7 is accessed, VMC4 of # 1 is placed on the address bus 408 as shown in FIG. 8 (e).
The address of the (n + 1) th bus cycle is output from 01, and in the next bus cycle, the address of the (n + 1) th bus cycle described above is used, as shown in FIG.
The real memory 307 is accessed as shown in (g).

【0153】このように、#0と#1のVMC401は、そ
れぞれ1バスサイクルおきに交互に実メモリ307をア
クセスできる。
In this way, the # 0 and # 1 VMCs 401 can alternately access the real memory 307 every other bus cycle.

【0154】[0154]

【発明の効果】本発明によれば、複数のマスタデバイス
と複数の分割メモリとの間でスイッチングを行うための
メモリアクセス回路を、複数のメモリ制御モジュールと
複数の選択手段により構成することが可能となる。
According to the present invention, a memory access circuit for switching between a plurality of master devices and a plurality of divided memories can be constituted by a plurality of memory control modules and a plurality of selecting means. Becomes

【0155】この結果、各メモリ制御モジュールをゲー
トアレイチップなどで容易に構成することが可能とな
り、しかも、複数のマスタデバイス間の競合の調停制御
は各メモリ制御モジュールが行い、選択手段は、各メモ
リ制御モジュールにおける各分割メモリと対向するイン
タフェースを単純に順次選択するだけなので、全体のメ
モリアクセス制御を簡易に実現することが可能となる。
As a result, each memory control module can be easily configured with a gate array chip or the like, and each memory control module performs arbitration control of competition among a plurality of master devices, and each selection means uses each Since the interfaces facing the divided memories in the memory control module are simply sequentially selected, the entire memory access control can be easily realized.

【0156】従って、任意のマスタデバイスが任意のメ
モリデバイスを高速にアクセスできる機能を、単純な回
路構成かつ単純な制御で実現することが可能となる。更
に、複数のマスタデバイスと複数の分割メモリを、シス
テムの要求に応じて最適な形態で接続することが可能と
なる。
Therefore, it is possible to realize the function of allowing any master device to access any memory device at high speed with a simple circuit configuration and simple control. Furthermore, it becomes possible to connect a plurality of master devices and a plurality of divided memories in an optimum form according to the system requirements.

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

【図1】本発明のブロック図である。FIG. 1 is a block diagram of the present invention.

【図2】本発明の実施例が適用されるネットワークの構
成図である。
FIG. 2 is a configuration diagram of a network to which an embodiment of the present invention is applied.

【図3】本発明の実施例におけるメッセージ通信装置の
構成図である。
FIG. 3 is a configuration diagram of a message communication device according to an embodiment of the present invention.

【図4】バーチャルメモリコントローラ周辺の構成図で
ある。
FIG. 4 is a configuration diagram around a virtual memory controller.

【図5】バーチャルメモリコントロールモジュールの構
成図である。
FIG. 5 is a configuration diagram of a virtual memory control module.

【図6】メッセージ通信の説明図である。FIG. 6 is an explanatory diagram of message communication.

【図7】実メモリアクセスのタイミングチャート例(そ
の1)を示した図である。
FIG. 7 is a diagram showing an example (part 1) of a timing chart of actual memory access.

【図8】実メモリアクセスのタイミングチャート例(そ
の2)を示した図である。
FIG. 8 is a diagram showing an example (No. 2) of a timing chart of actual memory access.

【図9】従来技術の構成図である。FIG. 9 is a configuration diagram of a conventional technique.

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

101 マスタデバイス 102 分割メモリ 103 メモリ制御モジュール 104 選択手段 BCLK 動作クロック MODE モード信号 101 master device 102 divided memory 103 memory control module 104 selecting means BCLK operation clock MODE mode signal

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 第1の所定数(N×K)のマスタデバイ
ス(101)のうち任意のものから第2の所定数(M)
の分割メモリ(102)のうち任意のものへのアクセス
を行うメモリアクセス回路であって、 それぞれ、 前記第1の所定数(N×K)のマスタデバイス(10
1)のうち前記第1の所定数(N×K)より少ない第3
の所定数(N)ずつの前記マスタデバイス(101)に
対するインタフェースと前記第2の所定数の分割メモリ
(102)に対向するインタフェースとを有し、 所定の動作クロック(BCLK)と所定のモード信号
(MODE)に基づいて動作し、 前記動作クロック(BCLK)の同じ位相において複数
の前記マスタデバイス(101)から同一の前記分割メ
モリ(102)へのメモリアクセス要求がなされている
場合には、所定の規則によって決定された優先順位に従
って選択される前記マスタデバイス(101)からの前
記メモリアクセス要求に基づいて、前記動作クロック
(BCLK)の前記モード信号(MODE)に基づいて
指定される位相で、前記メモリアクセス要求に対応する
前記分割メモリ(102)をアクセスし、 前記動作クロック(BCLK)の同じ位相において複数
の前記マスタデバイス(101)から異なる前記分割メ
モリ(102)へのメモリアクセス要求がなされている
場合には、該複数のマスタデバイス(101)からのそ
れぞれのメモリアクセス要求に基づいて、前記動作クロ
ック(BCLK)の前記モード信号(MODE)に基づ
いて指定される位相で、前記各メモリアクセス要求に対
応する前記異なる分割メモリ(102)を同時にアクセ
スする、 前記第1の所定数(N×K)より少ない第4の所定数
(K)のメモリ制御モジュール(103)と、 前記分割メモリ(102)毎に設けられ、それぞれ、該
分割メモリ(102)と前記第4の所定数(K)のメモ
リ制御モジュール(103)のそれぞれにおける該分割
メモリ(102)に対向するインタフェースとを、該イ
ンタフェースに対応する前記メモリ制御モジュール(1
03)が該分割メモリ(102)をアクセスする前記動
作クロック(BCLK)の位相において選択的に接続す
る、前記第2の所定数(M)の選択手段(104)と、 を有することを特徴とするメモリアクセス回路。
1. An arbitrary one of a first predetermined number (N × K) of master devices (101) to a second predetermined number (M).
Of the divided memory (102) for accessing any one of the divided memories (102), each of the first predetermined number (N × K) of master devices (10).
3) less than the first predetermined number (N × K) of 1)
A predetermined number (N) of interfaces to the master device (101) and an interface facing the second predetermined number of divided memories (102), and a predetermined operation clock (BCLK) and a predetermined mode signal. When a memory access request is issued from the plurality of master devices (101) to the same divided memory (102) at the same phase of the operation clock (BCLK), a predetermined operation is performed. A phase specified based on the mode signal (MODE) of the operation clock (BCLK) based on the memory access request from the master device (101) selected according to the priority order determined by the rule of Accessing the divided memory (102) corresponding to the memory access request, When memory access requests to different divided memories (102) are made from the plurality of master devices (101) in the same phase of the clock (BCLK), respective memories from the plurality of master devices (101). The different divided memories (102) corresponding to the respective memory access requests are simultaneously accessed in a phase specified based on the mode signal (MODE) of the operation clock (BCLK) based on an access request. A fourth predetermined number (K) of memory control modules (103) smaller than a predetermined number (N × K) of 1 and each of the divided memories (102) are provided, and the divided memory (102) and the The divided memory (102) in each of a predetermined number (K) of memory control modules (103) The memory control module and an interface, corresponding to the interface (1
03) includes the second predetermined number (M) of selection means (104) selectively connecting in the phase of the operation clock (BCLK) for accessing the divided memory (102). Memory access circuit.
JP4161495A 1992-06-19 1992-06-19 Memory access circuit Withdrawn JPH064401A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4161495A JPH064401A (en) 1992-06-19 1992-06-19 Memory access circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4161495A JPH064401A (en) 1992-06-19 1992-06-19 Memory access circuit

Publications (1)

Publication Number Publication Date
JPH064401A true JPH064401A (en) 1994-01-14

Family

ID=15736159

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4161495A Withdrawn JPH064401A (en) 1992-06-19 1992-06-19 Memory access circuit

Country Status (1)

Country Link
JP (1) JPH064401A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100327953B1 (en) * 1998-01-22 2002-03-16 마츠시타 덴끼 산교 가부시키가이샤 Memory access controller
JP2005529407A (en) * 2002-06-07 2005-09-29 マイクロン テクノロジー,インコーポレイティド Memory hub with internal cache and / or memory access prediction
JP2005285037A (en) * 2004-03-31 2005-10-13 Nec Corp Data processor, its processing method, program, and cellphone
JP2013511081A (en) * 2010-02-01 2013-03-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Method, system, and computer program for destaging data from a cache to each of a plurality of storage devices via a device adapter

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100327953B1 (en) * 1998-01-22 2002-03-16 마츠시타 덴끼 산교 가부시키가이샤 Memory access controller
JP2005529407A (en) * 2002-06-07 2005-09-29 マイクロン テクノロジー,インコーポレイティド Memory hub with internal cache and / or memory access prediction
JP2005285037A (en) * 2004-03-31 2005-10-13 Nec Corp Data processor, its processing method, program, and cellphone
JP2013511081A (en) * 2010-02-01 2013-03-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Method, system, and computer program for destaging data from a cache to each of a plurality of storage devices via a device adapter
US8478945B2 (en) 2010-02-01 2013-07-02 International Business Machines Corporation Dynamic management of destage tasks in a storage controller

Similar Documents

Publication Publication Date Title
JP4024875B2 (en) Method and apparatus for arbitrating access to shared memory for network ports operating at different data rates
US4481572A (en) Multiconfigural computers utilizing a time-shared bus
JP4124491B2 (en) Packet routing switch that controls access to shared memory at different data rates
US5701413A (en) Multi-processor system with shared memory
AU639589B2 (en) Dynamic bus arbitration with grant sharing each cycle
US4985830A (en) Interprocessor bus switching system for simultaneous communication in plural bus parallel processing system
KR970029014A (en) Data Processing System and Method
WO1986002512A1 (en) PACKET SWITCHED MULTIPORT MEMORY NxM SWITCH NODE AND PROCESSING METHOD
JPH05242019A (en) Look-ahead priority mediation system and its method
JPH03131945A (en) Staggered-access-memory
JPH07105146A (en) Common memory device
JPH11212939A (en) System for exchanging data between data processor units having processor interconnected by common bus
JP2001216279A (en) Method of interfacing, synchronizing and arbitrating plural processors using time division multiplex memory for real time system
JP2644185B2 (en) Data processing device
JPH064401A (en) Memory access circuit
JP3639651B2 (en) Information processing apparatus comprising at least two processors
EP0269370B1 (en) Memory access controller
KR100487218B1 (en) Apparatus and method for interfacing an on-chip bus
JP3240863B2 (en) Arbitration circuit
JPH0619855A (en) Method and device for queueing message
JPH07271654A (en) Controller
JP2002342295A (en) Multiprocessor system
JP3031591B2 (en) Access arbitration method
JPH064464A (en) Peripheral equipment access device
JPH064462A (en) Bus coupling system

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990831