JPH01134536A - Multi-processor system and its test method - Google Patents

Multi-processor system and its test method

Info

Publication number
JPH01134536A
JPH01134536A JP62292696A JP29269687A JPH01134536A JP H01134536 A JPH01134536 A JP H01134536A JP 62292696 A JP62292696 A JP 62292696A JP 29269687 A JP29269687 A JP 29269687A JP H01134536 A JPH01134536 A JP H01134536A
Authority
JP
Japan
Prior art keywords
test
processors
processor
board
memory area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP62292696A
Other languages
Japanese (ja)
Inventor
Mikio Yonekura
米倉 幹夫
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP62292696A priority Critical patent/JPH01134536A/en
Publication of JPH01134536A publication Critical patent/JPH01134536A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To load the test programs into all processors with high efficiency by connecting a test ROM to a main processor only and loading the data on the main processor to other processors. CONSTITUTION:For a main processor board 1 connected with a test board 11, an instruction of a test ROM 16 is given to a processor 12 together with the test programs of all processors are stored in a DRAM 15 at application of a power supply. Other processors fetch the instructions of a boot ROM via a system bus 4. Such a program is set into the boot ROM so that the processors except a main processor are kept waiting until the test programs are loaded into their own local memories. As a result, the test programs are automatically loaded into all processors.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、数値制御装置などに利用されるマルチプロセ
ッサシステムに関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a multiprocessor system used in numerical control devices and the like.

(従来の技術) 通常の数値制御装置は、複数のマイクロプロセッサによ
り多数のソフトウェアを同時に実行して、ロボットや工
作機械の動作を高速かつ確実に制御するようにしている
(Prior Art) A typical numerical control device uses a plurality of microprocessors to simultaneously execute a large amount of software to control the operation of a robot or machine tool at high speed and reliably.

こうした数値制御装置に利用されるマルチプロセッサシ
ステムでは、その制御動作を確実に行なわせるために、
例えば電源投入時などに、そのハードウェアの各部の検
査が行なわれる。従来からその種の試験用のソフトウェ
アは、各種開発されており、それらは例えば個別のプロ
セッサを接続するシステムバスを介してその専用のRA
Mにローディングされることになる。
In the multiprocessor systems used in these numerical control devices, in order to ensure that the control operations are performed reliably,
For example, each part of the hardware is inspected when the power is turned on. Various kinds of test software have been developed in the past, and these test software can be used, for example, to connect individual processors to their dedicated RA via a system bus.
It will be loaded into M.

第2図は、マルチプロセッサシステムの一例を示すブロ
ック構成図である。
FIG. 2 is a block diagram showing an example of a multiprocessor system.

3つのプロセッサ1〜3はそれぞれ独立したプロセッサ
ボード(#1〜#3)に組み込まれてシステムバス4と
接続され、更にこのシステムバス4には各プロセッサか
ら共通してアクセス可能なマスストレージ5と、共有リ
ソースボード6とが接続されている。共有リソースポー
ド6は、シリアルボート、パラレルボート、共有メモリ
などとともに、ブートROM61を有しており、この゛
ブートROM61から読み出されるブートストラップル
ーチンにより、起動時に各プロセッサにローディングさ
れるプログラムの先頭ブロックを指定する。
The three processors 1 to 3 are each built into an independent processor board (#1 to #3) and connected to a system bus 4, and the system bus 4 also includes a mass storage 5 that can be accessed in common from each processor. , shared resource board 6 are connected. The shared resource port 6 includes a serial port, parallel port, shared memory, etc., as well as a boot ROM 61. A bootstrap routine read from the boot ROM 61 stores the first block of the program loaded into each processor at startup. specify.

すなわち、電源の投入と同時にすべてのプロセッサはシ
ステムバス4を介して上記ブートROMalをアクセス
し、これにより指定されるセル1フチストプログラム、
及びシステムプログラムをマスストレージ5から読み出
してローディングが実行される。所定のデータやプログ
ラムがローディングされれば、以降このブートRoM6
1は分離され、それぞれのプロセッサボード(#1〜#
3)内にあるローカルメモリ上のプログラムに従って動
作する。
That is, at the same time as the power is turned on, all processors access the boot ROMal via the system bus 4, and the cell 1st program specified by this accesses the boot ROMal.
and the system program are read from the mass storage 5 and loading is executed. Once the predetermined data and programs are loaded, this boot RoM6
1 is separated and each processor board (#1 to #
3) Operate according to the program in local memory.

したがって、こうしたマルチプロセッサシステムのハー
ドウェアを試験するためのテストプログラムを実行する
とぎ、試験用のソフトウェアを上記システムソフトウェ
アの代りにマスストレージ5にあらかじめローディング
しておくことが必要になる。
Therefore, when executing a test program for testing the hardware of such a multiprocessor system, it is necessary to load test software into the mass storage 5 in advance in place of the system software.

(発明が解決しようとする問題点) ところが、外部記憶手段から上記共有リソースポード6
のシリアルボートなどを介してテストプログラムをロー
ディングし、テストの終了後に再度システムソフトウェ
アをローディングするといった従来の方法では、非常に
手間を要し、能率が悪いという問題があった。そこで、
上記ブートROM61を試験用のテストROMに差し換
えてテストプログラムのローディングを行なう方法も考
えられている。しかし、この方法であっても、なお装置
本体からボードを抜いてROMの差し換えを行なう必要
があり、依然として十分な能率で試験を実行することが
できない。
(Problem to be Solved by the Invention) However, the above shared resource port 6 cannot be accessed from the external storage means.
The conventional method of loading a test program via a serial port, etc., and then loading the system software again after the test was completed was extremely time-consuming and inefficient. Therefore,
A method of loading a test program by replacing the boot ROM 61 with a test ROM for testing has also been considered. However, even with this method, it is still necessary to remove the board from the apparatus main body and replace the ROM, and it is still not possible to perform the test with sufficient efficiency.

本発明は、上記の点に鑑みてなされたもので、電源投入
に際してシステムバスを介してブートROMなどから所
定のルーチンを書込むシステムであって、1つのプロセ
ッサのローカルバスに試験用のROMを接続しておけば
、自動的にすべてのプロセッサに対するテストプログラ
ムのローディングが可能なマルチプロセッサシステムを
提供しようとするものである。
The present invention has been made in view of the above points, and is a system in which a predetermined routine is written from a boot ROM etc. via a system bus when power is turned on, and a test ROM is written in a local bus of one processor. The aim is to provide a multiprocessor system in which test programs can be automatically loaded to all processors once they are connected.

(問題点を解決するための手段) 本発明によれば、共通のメモリ領域と専用のメモリ領域
とを有する複数°のプロセッサがブートローダを共有す
るマルチプロセッサシステムにおいて、特定のプロセッ
サのボードに設けられ該プロセッサを読み出し専用メモ
リと接続するコネクタ手段と、この読み出し専用メモリ
の記憶内容が前記各プロセッサの専用のメモリ領域に格
納されるまで前記共通のメモリ領域からのアクセスを禁
止する禁止手段とを有し、前記コネクタ手段に接続され
た読み出し専用メモリの記憶内容を所定のタイミングで
すべてのプロセッサにローディングするようにしたこと
を特徴とするマルチプロセッサシステムを提供できる。
(Means for Solving the Problems) According to the present invention, in a multiprocessor system in which a plurality of processors having a common memory area and a dedicated memory area share a boot loader, a boot loader is provided on a board of a specific processor. A connector means for connecting the processor to a read-only memory, and a prohibition means for prohibiting access from the common memory area until the contents of the read-only memory are stored in a dedicated memory area of each processor. However, it is possible to provide a multiprocessor system characterized in that the storage contents of the read-only memory connected to the connector means are loaded into all the processors at a predetermined timing.

(作用) 本発明のマルチプロセッサシステムでは、メインプロセ
ッサのコネクタ手段によりテストプログラムを記憶して
いる読み出し専用メモリを接続し、電源投入後にメイン
プロセッサのデータをシステムバスを介して各プロセッ
サにローディングすることができる。゛ (実施例) 以下、本発明の一実施例を図面に従って詳細に説明する
(Function) In the multiprocessor system of the present invention, a read-only memory storing a test program is connected by the connector means of the main processor, and data of the main processor is loaded into each processor via the system bus after power is turned on. Can be done.゛(Example) Hereinafter, one example of the present invention will be described in detail with reference to the drawings.

第1図は、前記第2図の複数のプロセッサボ−ド(#1
〜#3)の内の特定の1つのプロセッサ1を含むメイン
プロセッサボードに、コネクタ10を介してテストボー
ド11を接続した場合の構成を示すブロック図である。
FIG. 1 shows a plurality of processor boards (#1
FIG. 3 is a block diagram showing a configuration when a test board 11 is connected to a main processor board including one specific processor 1 among the processors 1 to #3) through a connector 10.

メインプロセッサ12のデータバス13、アドレスバス
14には、専用のメモリ領域を構成するDRAM15が
接続され、又、上記コネクタ10によりテストプログラ
ムを格納しているテストROM16が接続される。プロ
セッサ12側とテストボード11側にはそれぞれデコー
ダ17.18があって、デコーダ17はアンドゲートG
1を介してシステムパスアクセス制御部19に本来のア
ドレス(Q(1(1(10(1〜QFFFFF>のセレ
クト指令を出力し、又、アンドゲートG2及びオアゲー
)G5を介して上記DRAM15のセレクト端子とも接
続され、更にフリップフロップ20へはクロックを供給
している。上記DRAM15のセレクト端子には、別の
指令出力(100000〜IFFFFF)がオアゲート
Gi5を介して供給されている。
A DRAM 15 constituting a dedicated memory area is connected to the data bus 13 and address bus 14 of the main processor 12, and a test ROM 16 storing a test program is connected through the connector 10. There are decoders 17 and 18 on the processor 12 side and the test board 11 side, respectively, and the decoder 17 is an AND gate G.
1 to the system path access control unit 19, and outputs the select command for the original address (Q(1(1(1)(1~QFFFFF>), and also selects the DRAM 15 via AND gate G2 and ORGATE) G5. A clock is also supplied to the flip-flop 20. Another command output (100000 to IFFFFF) is supplied to the select terminal of the DRAM 15 via an OR gate Gi5.

上記データバス13は、データバッファ2!を介してD
RAM15と接続されるとともに、システムバス4との
間で双方向のバッファ機能を持つデータバッファ22と
接続されている。又、プロセッサ12からのアドレスデ
ータは、アドレスバス14によりDRAM15のアドレ
ス指定を行ない、更にこのアドレスバス14は上記コネ
クタ10とアドレスバッファ23との間を接続している
The data bus 13 is connected to the data buffer 2! via D
It is connected to the RAM 15 and to a data buffer 22 having a bidirectional buffer function between the system bus 4 and the system bus 4 . Further, address data from the processor 12 is used to specify an address in the DRAM 15 via an address bus 14, and this address bus 14 connects the connector 10 and the address buffer 23.

上記フリップフロップ20は、そのセット出力端子がコ
ネクタ10を介してテストボード11のデコーダ18及
び、アンドゲートG2と接続され、リセット出力端子が
上記アンドゲートG1と接続されている。そして、アド
レスバス14から指定されるアドレス指令により電源投
入後に、メインプロセッサ12はアドレス0から命令を
実行しようとするが、デコーダ17により当初からクリ
アされたフリップフロップ20がリセットされ、ゲート
Gl、G2によってDRAM15はセレクトされず、シ
ステムバス4を介して接続されるブートROMからの命
令をフェッチする。ただし、上記フリップフロップ20
によりデコーダ18を介してデータバス13の2つのデ
ータバッファ21.22がリード禁止状態に制御される
ため、テストボード11が接続されている場合には、シ
ステムバス4とメインプロセッサ12との間がディスエ
イプルされて、ブートROMの命令のかわりに、テスト
ROM16の命令がメインプロセッサ12に与えられる
ことになる。
The flip-flop 20 has its set output terminal connected to the decoder 18 of the test board 11 and the AND gate G2 via the connector 10, and its reset output terminal connected to the AND gate G1. Then, after power is turned on according to an address command specified from the address bus 14, the main processor 12 attempts to execute an instruction from address 0, but the flip-flop 20, which was cleared from the beginning, is reset by the decoder 17, and the gates Gl and G2 are reset. Therefore, the DRAM 15 is not selected, and instructions from the boot ROM connected via the system bus 4 are fetched. However, the above flip-flop 20
Since the two data buffers 21 and 22 of the data bus 13 are controlled to be in a read-inhibited state via the decoder 18, when the test board 11 is connected, there is no connection between the system bus 4 and the main processor 12. It is disabled, and instructions from the test ROM 16 are given to the main processor 12 instead of instructions from the boot ROM.

この場合に、テストROM16にメインプロセッサ12
用のテストプログラムばかりでなく、他のプロセッサの
テストプログラムも書き込んでおけば、メインプロセッ
サ12からこれらのプログラムを自己の及び他のプロセ
ッサボードのDRAMにコピーすることができる。DR
AM15は、電源投入時にはフリップフロップ20がリ
セットされデコーダ17により(1ooooo〜IFF
FFF)でのみアクセス可能状態になっており、テスト
ROM16からDRAM15へのコピーはこのアドレス
空間が使用される。他のプロセッサボードのDRAMへ
のコピーは、種々な手段が可能であるが、ここでは、メ
インプロセッサ12がそれらのDRAMにも直接にアク
セス可能なハード構成になっている。
In this case, the main processor 12 is stored in the test ROM 16.
By writing test programs for other processors as well as test programs for the main processor 12, these programs can be copied from the main processor 12 to the DRAM of the processor board itself and other processor boards. D.R.
In AM15, when the power is turned on, the flip-flop 20 is reset and the decoder 17 outputs (1oooooo to IFF).
FFF), and this address space is used for copying from the test ROM 16 to the DRAM 15. Copying to the DRAMs of other processor boards can be done by various means, but here the main processor 12 has a hardware configuration that allows direct access to those DRAMs.

一方、メインプロセッサ12以外のプロセッサでは、通
常のシステムスタート時と同様に、ブートROMからの
命令をフェッチする。その際に、まずブートROM内の
イニシャライズ、セルフテストのプロセスを実行した後
、メインプロセッサ121からのシステムソフト完了フ
ラグを待ってループしている。このフラグは、各プロセ
ッサボード上のDRAM中にあり、メインプロセッサ1
2は他のプロセッサへのテストプログラムのロードが完
了したときに、それぞれこのフラグをセットする。そし
てこのフラグがセットされると、プロセッサは夫々のフ
リップフロップ20をセットし、DRAMを本来のアド
レス(oooooo〜0FFFFF)にアサインし、そ
の後あらかじめ決めら −れたアドレス、つまりシステ
ムソフトのスタート番地にジャンプする。フリップフロ
ップ20がセットされると、メインプロセッサ12に接
続されたテストボード上のテストROM16はインヒビ
ットされるので、メインプロセッサ12もDRAM15
内のデータに従って動作するようになる。
On the other hand, processors other than the main processor 12 fetch instructions from the boot ROM in the same way as when starting a normal system. At this time, after first executing the initialization and self-test processes in the boot ROM, a loop waits for the system software completion flag from the main processor 121. This flag is located in the DRAM on each processor board, and is located in the DRAM on each processor board.
2 sets this flag when the loading of the test program to the other processors is completed. When this flag is set, the processor sets each flip-flop 20 and assigns the DRAM to the original address (oooooooo~0FFFFFF), and then to the predetermined address, that is, the start address of the system software. Jump. When the flip-flop 20 is set, the test ROM 16 on the test board connected to the main processor 12 is inhibited, so the main processor 12 also
It will now operate according to the data in it.

このように、ブートROMを共有する構成のマルチプロ
セッサシステムにおいて、特定のプロセッサボードにコ
ネクタ1oを設け、そこにテスト用のプログラムを格納
したテストボード11を接続し、プロセッサ12がフェ
ッチしようとする命令を強制的に排除するように構成し
ておくと、テストROM16からメインプロセッサ12
にテストプログラムを供給され、メインプロセッサ12
以外のプロセッサでは、テストROMを接続していない
ので、ブー)ROMのプログラムを実行することになる
。そこで、ブー)−ROMに特定のプロセッサをメイン
プロセッサとして識別し、そうでない場合にはそれが自
己のローカルメモリにロードされるまで待機するように
プログラムを組んでおけば、特定のプロセッサボードに
テストボードが接続されさえすれば、自動的にテストプ
ログラムがシステムの全てのプロセッサにローディング
される。
In this way, in a multiprocessor system configured to share a boot ROM, a connector 1o is provided on a specific processor board, the test board 11 storing a test program is connected thereto, and the instruction that the processor 12 attempts to fetch is connected to the connector 1o. If configured to forcibly remove the
is supplied with a test program to the main processor 12.
Since the test ROM is not connected to the other processors, the program in the ROM will be executed. Therefore, if you write a program in the ROM to identify a specific processor as the main processor and, if not, wait until it is loaded into its own local memory, you can test it on a specific processor board. Once the board is connected, the test program is automatically loaded onto all processors in the system.

以上、この発明をある程度詳細にその最も好ましい実施
態様について説明したが、その好ましい実施態様の説明
は、構成の詳細な部分についての変形、特許請求の範囲
に記載された本発明の精神に反しない限りでの種々な変
形、あるいはそれらを組み合わせたものに変更すること
ができることは明らかである。
As above, this invention has been described in some detail with respect to its most preferred embodiment, but the description of the preferred embodiment does not include variations in detailed parts of the configuration or contrary to the spirit of the invention as described in the claims. It is clear that various modifications or combinations thereof may be made.

(発明の効果) 以上説明したように、本発明によれば、テスト用ROM
を含むテストボードなメインプロセッサボードに接続す
るだけで、全プロセッサにテストプログラムをロードす
ることができ、試験時間の短縮が可能なマルチプロセッ
サシステムを提供できる。
(Effects of the Invention) As explained above, according to the present invention, the test ROM
By simply connecting the test board to the main processor board containing the test board, test programs can be loaded to all processors, providing a multiprocessor system that can shorten testing time.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、本発明の一実施例のメインプロセッサボード
とテストボードの構成を示すブロック図、第2図は、従
来のシステムの一例を示すブロック図である。 11・・・テストボード、12・・・メインプロセッサ
、15・・・DRAM、16・・・テストROM。 21.22・・・データバッファ。 特許出願人 ファナック株式会社
FIG. 1 is a block diagram showing the configuration of a main processor board and a test board according to an embodiment of the present invention, and FIG. 2 is a block diagram showing an example of a conventional system. 11... Test board, 12... Main processor, 15... DRAM, 16... Test ROM. 21.22...Data buffer. Patent applicant FANUC Corporation

Claims (2)

【特許請求の範囲】[Claims] (1)共通のメモリ領域と専用のメモリ領域とを有する
複数のプロセッサがブートローダを共有するマルチプロ
セッサシステムにおいて、特定のプロセッサのボードに
設けられ該プロセッサを読み出し専用メモリと接続する
コネクタ手段と、この読み出し専用メモリの記憶内容が
前記各プロセッサの専用のメモリ領域に格納されるまで
前記共通のメモリ領域からのアクセスを禁止する禁止手
段とを有し、前記コネクタ手段に接続された読み出し専
用メモリの記憶内容を所定のタイミングですべてのプロ
セッサにローディングするようにしたことを特徴とする
マルチプロセッサシステム。
(1) In a multiprocessor system in which a plurality of processors having a common memory area and a dedicated memory area share a boot loader, a connector means provided on the board of a specific processor and connecting the processor to a read-only memory; storage in the read-only memory connected to the connector means, and prohibiting means for prohibiting access from the common memory area until the storage contents of the read-only memory are stored in a memory area dedicated to each of the processors; A multiprocessor system characterized in that content is loaded to all processors at a predetermined timing.
(2)共通のメモリ領域と専用のメモリ領域とを有する
複数のプロセッサがブートローダを共有するマルチプロ
セッサシステムの試験方法において、特定のプロセッサ
ボードにテストプログラムを格納したテストボードを接
続し、起動時に前記プロセッサからその専用のメモリ領
域と前記共通のメモリ領域にテストプログラムを転送し
、その後該テストプログラムを各プロセッサにローディ
ングして、テストプログラムを実行することを特徴とす
るマルチプロセッサシステムの試験方法。
(2) In a test method for a multiprocessor system in which multiple processors having a common memory area and a dedicated memory area share a bootloader, a test board storing a test program is connected to a specific processor board, and the A method for testing a multiprocessor system, comprising transferring a test program from a processor to its dedicated memory area and the common memory area, and then loading the test program into each processor and executing the test program.
JP62292696A 1987-11-19 1987-11-19 Multi-processor system and its test method Pending JPH01134536A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62292696A JPH01134536A (en) 1987-11-19 1987-11-19 Multi-processor system and its test method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62292696A JPH01134536A (en) 1987-11-19 1987-11-19 Multi-processor system and its test method

Publications (1)

Publication Number Publication Date
JPH01134536A true JPH01134536A (en) 1989-05-26

Family

ID=17785116

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62292696A Pending JPH01134536A (en) 1987-11-19 1987-11-19 Multi-processor system and its test method

Country Status (1)

Country Link
JP (1) JPH01134536A (en)

Similar Documents

Publication Publication Date Title
JP3884464B2 (en) BIOS data storage device for computer system and driving method thereof
US6006319A (en) Coprocessor system for accessing shared memory during unused portion of main processor's instruction cycle where main processor never waits when accessing shared memory
EP0270680A1 (en) Boot loading system in a multi-processor system
GB2216306A (en) Load and synchronize computer architecture and process
US6012140A (en) Processing system, processing unit, memory and compiling method
CA1289670C (en) Method and device to execute two instruction sequences in an order determined in advance
JPH06275084A (en) Nonvolatile semiconductor storage and data processor using the same
US4814977A (en) Apparatus and method for direct memory to peripheral and peripheral to memory data transfers
JPH01169557A (en) Storage control system for computer
JPH01134536A (en) Multi-processor system and its test method
JPS6319058A (en) Memory device
CA1137641A (en) Single chip microcomputer selectively operable in response to instructions stored on the computer chip or in response to instructions stored external to the chip
JPS58112118A (en) Program loading processing system
JPH01261758A (en) Computer system
JPS60195661A (en) Data processing system
JPH09269896A (en) Booting method for firm cpu
KR930003125B1 (en) Method for pregram loading on ram located in subprocessor system
JPS59127153A (en) Program loading system
JPH05274212A (en) Memory initializing processing method
JP2506591B2 (en) Auxiliary processor
JPH0793177A (en) Emulation chip and in-circuit emulator
JPS58166478A (en) Starting system of multiprocessor system
JPH04181321A (en) Microprogram loading system
JPS6227423B2 (en)
JPS6148746B2 (en)