JP2906958B2 - User program loading method - Google Patents

User program loading method

Info

Publication number
JP2906958B2
JP2906958B2 JP5318688A JP31868893A JP2906958B2 JP 2906958 B2 JP2906958 B2 JP 2906958B2 JP 5318688 A JP5318688 A JP 5318688A JP 31868893 A JP31868893 A JP 31868893A JP 2906958 B2 JP2906958 B2 JP 2906958B2
Authority
JP
Japan
Prior art keywords
processor
input
independent
output device
processors
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP5318688A
Other languages
Japanese (ja)
Other versions
JPH07175661A (en
Inventor
匠 島尻
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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP5318688A priority Critical patent/JP2906958B2/en
Publication of JPH07175661A publication Critical patent/JPH07175661A/en
Application granted granted Critical
Publication of JP2906958B2 publication Critical patent/JP2906958B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明はユーザプログラムロード
方式に関し、特に、各プロセッサが独立したローカルな
メモリを持ち、各プロセッサがネットワークで接続さ
れ、互いにメモリの内容を複写可能なマルチプロセッサ
システムのユーザプログラムのロード方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a user program loading method, and more particularly to a user of a multiprocessor system in which each processor has an independent local memory, each processor is connected via a network, and the contents of the memory can be copied to each other. It relates to the program loading method.

【0002】[0002]

【従来の技術】従来のこの種のユーザプログラムロード
方式の一例について、特開平1−282670を挙げる
ことができる。その例のブロック図を図2に示す。
2. Description of the Related Art Japanese Patent Application Laid-Open No. 1-228670 is an example of this type of conventional user program loading system. FIG. 2 shows a block diagram of the example.

【0003】図2において、共通データバス24にプロ
セッサ21〜23が接続する形になっており、ホスト計
算機20からの制御信号27と28によりプロセッサへ
読み込むデータ切り替えを行っている。
In FIG. 2, processors 21 to 23 are connected to a common data bus 24, and data read to the processors is switched by control signals 27 and 28 from a host computer 20.

【0004】実行開始番地保持ブロック25はそれぞれ
のプロセッサ21〜23に読み込むユーザプログラムの
実行開始番地を保持するための手段である。実行開始番
地を実行開始番地保持ブロック25に読み込む時には、
ホスト計算機20からの制御信号27をプロセッサ21
〜23対応ごとONにすることにより、共通データバス
24から当該実行開始番地保持ブロック25へ実行開始
番地を取り込み、さらに制御信号28をONにすること
でバス選択ブロック26を介して、当該プロセッサは実
行開始番地保持ブロック25からユーザプログラムの実
行開始番地を獲得する。そして各プロセッサ21〜23
が上述のようにして実行開始番地を獲得した後、ホスト
計算機20から全てのプロセッサ21〜23にユーザプ
ログラムを転送する。
The execution start address holding block 25 is a means for holding the execution start address of the user program to be read into each of the processors 21 to 23. When reading the execution start address into the execution start address holding block 25,
The control signal 27 from the host computer 20 is transmitted to the processor 21
23, the execution start address is fetched from the common data bus 24 into the execution start address holding block 25, and the processor is turned on via the bus selection block 26 by turning on the control signal 28. The execution start address of the user program is acquired from the execution start address holding block 25. And each processor 21 to 23
Transfers the user program from the host computer 20 to all the processors 21 to 23 after acquiring the execution start address as described above.

【0005】プロセッサ21〜23にホスト計算機20
からユーザプログラムを転送する時には、制御信号28
をOFFにすることで共通データバス24からバス選択
ブロック26を介して各プロセッサ21〜23がデータ
を読み込むようになっている。したがって、ユーザプロ
グラムを起動する時には、実行開始番地保持ブロック2
5から再度、ユーザプログラム実行開始番地を読み込む
ことでそれぞれのプロセッサ21〜23毎に異なる番地
にユーザプログラムを読み込み可能な構成になってい
る。
The host computers 20 are provided to the processors 21 to 23.
When the user program is transferred from the
Is turned off, each of the processors 21 to 23 reads data from the common data bus 24 via the bus selection block 26. Therefore, when the user program is started, the execution start address holding block 2
By reading the user program execution start address again from 5, the user program can be read at a different address for each of the processors 21 to 23.

【0006】[0006]

【発明が解決しようとする課題】上述した従来のユーザ
プログラムロード方式では、ユーザプログラムをホスト
計算機から各プロセッサに対しデータバスを通して個々
に転送するので、データバスに接続するプロセッサの数
が増えるに従い、転送速度が低下しユーザプログラムの
ロード時間が長くなるという問題がある。また、ホスト
計算機から各プロセッサにロードするアプリケーション
プログラムは全く同一のものであることを前提としてい
るので各プロセッサで同一プログラムの引数を変えて別
々の条件で動作させることができないという欠点があっ
た。
In the above-described conventional user program loading method, the user program is individually transferred from the host computer to each processor through the data bus. Therefore, as the number of processors connected to the data bus increases, the number of processors connected to the data bus increases. There is a problem that the transfer speed decreases and the load time of the user program increases. Further, since it is assumed that the application programs loaded from the host computer to the respective processors are exactly the same, there is a disadvantage that the processors cannot be operated under different conditions by changing the arguments of the same program.

【0007】[0007]

【課題を解決するための手段】本発明の方式は、それぞ
れ独立したローカルメモリCPUおよび入出力装置を備
えた複数のプロセッサがネットワークで接続され、前記
各プロセッサとのファイル入出力処理を行うコントロー
ラを有するマルチプロセッサシステムにおけるプログラ
ムロード方式において、前記ローカルメモリへ書き込む
アプリケーションプログラムをそれぞれのプロセッサで
共通な部分である命令コードおよび初期データと独立し
た部分であるプログラム引数および環境変数に分類して
おき、前記共通な部分については一つのプロセッサの前
記入出力装置のみへ転送する共通領域送信手段と、前記
共通な部分を受信したプロセッサは、指定された前記ロ
ーカルメモリへデータを書き込むとともに、その他のプ
ロセッサの入出力装置へ前記ネットワークを介してプロ
セッサ間でローカルメモリの内容をコピーするプロセッ
サ間メモリコピー手段と、前記プロセッサ間メモリコピ
ー手段により前記共通な部分を受信したプロセッサは、
当該入出力装置から取り出したデータを指定されるロー
カルメモリへ書き込む共通領域書き込み手段と、前記ア
プリケーションプログラムで各プロセッサで独立な部分
については前記コントローラからそれぞれのプロセッサ
の入出力装置へ前記ネットワークを介して個別に転送す
る独立領域送信手段と、前記独立領域送信手段により送
信されたデータを入出力装置から取り出したプロセッサ
は、それぞれ当該プロセッサのローカルメモリへ書き込
みを行う独立領域書き込み手段とを備える。
According to the present invention, there is provided a controller in which a plurality of processors each having an independent local memory CPU and an input / output device are connected via a network, and perform file input / output processing with each processor. In a program loading method in a multiprocessor system, the application program to be written to the local memory is classified into a program argument and an environment variable, which are independent from the instruction code and initial data, which are a common part in each processor, The common area transmitting means for transferring the common part to only the input / output device of one processor, and the processor having received the common part writes data into the specified local memory and inputs data to the other processors. output A memory copying means between processors to copy the contents of the local memory between processors via the network to the location, the processor which has received the common part by a memory copying means between said processor,
A common area writing means for writing data extracted from the input / output device to a specified local memory; and an independent part of each processor in the application program from the controller to the input / output device of each processor via the network. The independent area transmitting means for individually transferring the data and the processors which take out the data transmitted by the independent area transmitting means from the input / output device each include an independent area writing means for writing the data to the local memory of the processor.

【0008】[0008]

【実施例】次に、本発明について図面を参照して詳細に
説明する。
Next, the present invention will be described in detail with reference to the drawings.

【0009】図1は、本発明の一実施例を示すブロック
図であり、2台のプロセッサb、cと各プロセッサとの
ファイル入出力を行うコントローラとしてのホストコン
トローラaを有するマルチプロセッサシステムである。
FIG. 1 is a block diagram showing an embodiment of the present invention, which is a multiprocessor system having two processors b and c and a host controller a as a controller for performing file input / output between each processor. .

【0010】プロセッサb、cにロードするアプリケー
ションプログラムはホストコントローラa上で各プロセ
ッサで共通な部分と独立な部分に分かれて存在してお
り、共通な部分をd、独立な部分e、fで示す。各プロ
セッサで独立な部分e、fについてはプロセッサ台数分
必要であり、それぞれプロセッサb、cにロードするた
めのものとしてホストコントローラa上で分かれて存在
している。
The application programs to be loaded into the processors b and c exist on the host controller a separately in a common part and an independent part in each processor, and the common part is indicated by d and the independent parts e and f. . Independent portions e and f of each processor are required for the number of processors, and are separately provided on the host controller a for loading the processors b and c, respectively.

【0011】ホストコントローラa上に存在するこのよ
うなアプリケーションプログラムをプロセッサb、cに
ロードする場合、まず各プロセッサb、cで共通な部分
dについてはプロセッサbのみへホストコントローラa
から共通領域送信手段1を用いて送信する。共通部分d
を受け取ったプロセッサbはプロセッサ間メモリコピー
手段2により、受信データバッファgへ受信したデータ
の開始アドレスとサイズを格納すると共に、ローカルメ
モリjへ実際にデータの書き込みを行う。
When such an application program existing on the host controller a is loaded into the processors b and c, first, the part d common to the processors b and c is transferred only to the processor b.
From the common area transmitting means 1. Common part d
Receives the start address and the size of the received data in the reception data buffer g and actually writes the data to the local memory j.

【0012】そして、受信データバッファgを参照し、
受信したデータサイズの合計が一定値を越える毎にプロ
セッサcへプロセッサ間ネットワークnを介して共通な
領域dをコピーし、共通な領域dを受信したプロセッサ
cは共通領域書き込み手段3によりローカルメモリkへ
共通な領域dを書き込む。
Then, referring to the reception data buffer g,
Every time the total of the received data size exceeds a certain value, the common area d is copied to the processor c via the inter-processor network n. Is written to the common area d.

【0013】また、各プロセッサで独立な部分e、fに
ついてはホストコントローラaから独立領域送信手段4
を用いてそれぞれプロセッサb、cへ送信し、ホストコ
ントローラaから受信した独立な領域e、fを受信した
プロセッサb、cは独立領域書き込み手段5によりロー
カルメモリj、kへそれぞれ独立な領域e、fを書き込
む。
The independent parts e and f of each processor are transmitted from the host controller a to the independent area transmitting means 4.
Are transmitted to the processors b and c, respectively, and the processors b and c that have received the independent areas e and f received from the host controller a are respectively supplied to the local memories j and k by the independent area writing means 5. Write f.

【0014】アプリケーションプログラムの各プロセッ
サで共通な部分dには具体的にはアプリケーションプロ
グラムの機械語命令コードと初期化データ、及び非初期
化データが格納されている。データとはアプリケーショ
ンプログラムが参照する外部変数、静的変数である。各
プロセッサで共通部分dはアプリケーションプログラム
をコンパイルして得られるオブジェクトファイルに含ま
れている。
Specifically, a portion d common to each processor of the application program stores a machine language instruction code, initialization data, and non-initialization data of the application program. Data is an external variable or a static variable referred to by an application program. The common part d in each processor is included in an object file obtained by compiling the application program.

【0015】また、各プロセッサで独立な部分e、f
は、実際にアプリケーションプログラムを実行する時に
指定するプログラム引数や実行する時に設定されている
環境変数が格納されている。各プロセッサで独立な部分
e、fはアプリケーションプログラムをコンパイルした
結果であるオプジェクトファイルには含まれず、ホスト
コントローラaのスタック領域から得られる。
In addition, independent parts e and f in each processor
Stores program arguments specified when the application program is actually executed and environment variables set when the application program is executed. Independent portions e and f in each processor are not included in the object file as a result of compiling the application program, but are obtained from the stack area of the host controller a.

【0016】したがって、各プロセッサで共通な部分d
はユーザプログラムをコンパイルした結果のオブジェク
トファイルを読み込み、プロセッサbへ転送する。オブ
ジェクトファイルには既に各プロセッサにロードするア
ドレスが定義されているのでローカルメモリjのどの番
地にロードするかは共通領域送信手段1が行う。
Therefore, a common part d for each processor
Reads the object file resulting from compiling the user program and transfers it to the processor b. Since the address to be loaded into each processor is already defined in the object file, the common area transmitting means 1 determines which address of the local memory j is to be loaded.

【0017】また、各プロセッサで独立な部分e、fは
各プロセッサでユーザプログラムを実行する時にスタッ
ク領域に書き込まれている必要がある情報であり、スタ
ックの開始番地は各プロセッサで任意に設定できるた
め、ローカルメモリj、kのどの領域にロードするかは
各プロセッサの独立領域書き込み手段5が行う。
Independent portions e and f of each processor are information that must be written in the stack area when the user program is executed by each processor, and the start address of the stack can be arbitrarily set by each processor. Therefore, which area of the local memories j and k is to be loaded is determined by the independent area writing means 5 of each processor.

【0018】[0018]

【発明の効果】本発明の方式によれば、アプリケーショ
ンプログラムを各プロセッサで共通な部分と独立な部分
に分離し、各プロセッサで共通な部分についてはホスト
コントローラからは1つのプロセッサにロードすること
により、全てのプロセッサへロードすることができるの
でホストと各プロセッサ間の通信データ量を削減でき
る。
According to the method of the present invention, the application program is separated into a common part and an independent part in each processor, and the common part in each processor is loaded from the host controller to one processor. , Can be loaded to all processors, so that the amount of communication data between the host and each processor can be reduced.

【0019】つまり、通信能力の高いプロセッサ間通信
を使用することで、通信処理能力の低いホストとプロセ
ッサ間のデータ量を削減することができるので、プログ
ラム引数を変えるなどの方法で同一のプログラムの別々
の条件で実行することも可能であり、さらに各プロセッ
サへロードする時間を短縮することができるという効果
がある。
In other words, by using inter-processor communication having a high communication capability, the amount of data between a host having a low communication processing capability and a processor can be reduced. It is also possible to execute the program under different conditions, and it is possible to reduce the time required to load each processor.

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

【図1】本発明の一実施例を示すブロック図である。FIG. 1 is a block diagram showing one embodiment of the present invention.

【図2】従来の一例を示すブロック図である。FIG. 2 is a block diagram showing an example of the related art.

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

1 共通領域送信手段 2 プロセッサ間メモリコピー手段 3 共通領域書き込み手段 4 独立領域送信手段 5 独立領域書き込み手段 a ホストコントローラ b、c プロセッサ d アプリケーションプログラムで各プロセッサに共
通な部分 e、a アプリケーションプログラムで各プロセッサ
に独立な部分 g 受信データバッファ h、i CPU j、k ローカルメモリ l、m 入出力装置 n プロセッサ間ネットワーク 21、22、23 プロセッサ 24 データバス 25 実行開始番地情報保持ブロック 26 バス選択ブロック。
DESCRIPTION OF REFERENCE NUMERALS 1 common area transmitting means 2 memory copying means between processors 3 common area writing means 4 independent area transmitting means 5 independent area writing means a host controller b, c processor d part common to each processor in application program e, a each part in application program Processor-independent part g Received data buffer h, i CPU j, k Local memory 1, m Input / output device n Network between processors 21, 22, 23 Processor 24 Data bus 25 Execution start address information holding block 26 Bus selection block.

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 9/06,9/445 G06F 13/00,15/177 H04Q 3/545 ──────────────────────────────────────────────────続 き Continued on the front page (58) Field surveyed (Int.Cl. 6 , DB name) G06F 9 / 06,9 / 445 G06F 13 / 00,15 / 177 H04Q 3/545

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 それぞれ独立したローカルメモリCPU
および入出力装置を備えた複数のプロセッサがネットワ
ークで接続され、前記各プロセッサとのファイル入出力
処理を行うコントローラを有するマルチプロセッサシス
テムにおけるプログラムロード方式において、 前記ローカルメモリへ書き込むアプリケーションプログ
ラムをそれぞれのプロセッサで共通な部分である命令コ
ードおよび初期データと独立した部分であるプログラム
引数および環境変数に分類しておき、前記共通な部分に
ついては一つのプロセッサの前記入出力装置のみへ転送
する共通領域送信手段と、 前記共通な部分を受信したプロセッサは、指定された前
記ローカルメモリへデータを書き込むとともに、その他
のプロセッサの入出力装置へ前記ネットワークを介して
プロセッサ間でローカルメモリの内容をコピーするプロ
セッサ間メモリコピー手段と、 前記プロセッサ間メモリコピー手段により前記共通な部
分を受信したプロセッサは、当該入出力装置から取り出
したデータを指定されるローカルメモリへ書き込む共通
領域書き込み手段と、 前記アプリケーションプログラムで各プロセッサで独立
な部分については前記コントローラからそれぞれのプロ
セッサの入出力装置へ前記ネットワークを介して個別に
転送する独立領域送信手段と、 前記独立領域送信手段により送信されたデータを入出力
装置から取り出したプロセッサは、それぞれ当該プロセ
ッサのローカルメモリへ書き込みを行う独立領域書き込
み手段とを備えることを特徴とする疎結合型マルチプロ
セッサシステムにおけるユーザプログラムロード方式。
An independent local memory CPU
And a plurality of processors each having an input / output device connected via a network, in a program loading method in a multiprocessor system having a controller for performing file input / output processing with each of the processors. Instruction code and initial data, which are common parts of the program
A common area transmitting means for classifying the common part into arguments and environment variables and transferring the common part to only the input / output device of one processor; While writing data to the other processor, an inter-processor memory copy unit that copies the contents of the local memory between the processors via the network to an input / output device of another processor, and the common part is received by the inter-processor memory copy unit A processor configured to write data extracted from the input / output device to a specified local memory; and a network from the controller to an input / output device of each processor for a part independent of each processor in the application program. Through Independent region transmitting means for individually transferring, and an independent area writing means for writing the data transmitted by the independent area transmitting means from the input / output device to a local memory of the processor. User program loading method in a loosely coupled multiprocessor system.
【請求項2】 前記プロセッサ間メモリコピー手段は、
前記受信したデータサイズの合計が一定値を越える毎に
機能することを特徴とする請求項1記載のユーザプログ
ラムロード方式。
2. The inter-processor memory copying means,
2. The user program loading method according to claim 1, wherein the function is activated each time the total of the received data sizes exceeds a certain value.
JP5318688A 1993-12-17 1993-12-17 User program loading method Expired - Lifetime JP2906958B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5318688A JP2906958B2 (en) 1993-12-17 1993-12-17 User program loading method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5318688A JP2906958B2 (en) 1993-12-17 1993-12-17 User program loading method

Publications (2)

Publication Number Publication Date
JPH07175661A JPH07175661A (en) 1995-07-14
JP2906958B2 true JP2906958B2 (en) 1999-06-21

Family

ID=18101911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5318688A Expired - Lifetime JP2906958B2 (en) 1993-12-17 1993-12-17 User program loading method

Country Status (1)

Country Link
JP (1) JP2906958B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3826859B2 (en) 2002-08-19 2006-09-27 ソニー株式会社 Information processing method, program for realizing the method, and recording medium
KR100842257B1 (en) * 2005-12-07 2008-06-30 한국전자통신연구원 Method and apparatus for loading applet

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6389964A (en) * 1986-10-03 1988-04-20 Mitsubishi Electric Corp Loading and confirming system for microprogram
JPH01288955A (en) * 1988-05-17 1989-11-21 Mitsubishi Electric Corp Program loading method
JP3114870B2 (en) * 1989-09-12 2000-12-04 株式会社日立製作所 Microprogram loading method, loading control device, information processing device, and information processing system

Also Published As

Publication number Publication date
JPH07175661A (en) 1995-07-14

Similar Documents

Publication Publication Date Title
US6480919B2 (en) Method and apparatus for providing seamless hooking and intercepting of selected kernel and hal exported entry points
JP3758732B2 (en) System and method for executing endian task
CN106796546B (en) Method and apparatus for implementation in a data processing system
US7600082B2 (en) Virtualization logic
US8732441B2 (en) Multiprocessing system
JP2906958B2 (en) User program loading method
JPH0731586B2 (en) Display adapter interface device and method
AU596234B2 (en) Method and device to execute two instruction sequences in an order determined in advance
US6405300B1 (en) Combining results of selectively executed remaining sub-instructions with that of emulated sub-instruction causing exception in VLIW processor
US4814977A (en) Apparatus and method for direct memory to peripheral and peripheral to memory data transfers
CA1302580C (en) Apparatus and method for using lockout for synchronization of access to main memory signal groups in a multiprocessor data processing system
JP2568017B2 (en) Microprocessor and data processing system using the same
KR930003125B1 (en) Method for pregram loading on ram located in subprocessor system
JPH0736704A (en) Program down-loading system
JP2594140B2 (en) Data driven data processor
JP2520158B2 (en) Debugging method of digital signal processor
JP2933569B2 (en) Central processing unit
JPH07191856A (en) Information processor
JPH03111961A (en) Program loading system for multi-cpu
JPS5969844A (en) Loading method of microprogram
JP2755646B2 (en) Data driven data processor
JP2622026B2 (en) Register writing control method in central processing unit
JPH1027153A (en) Bus transfer device
KR930010775A (en) Image processing device
JPS62102353A (en) Down line loading system for program

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19990302