JP2009193479A - Multi-cpu device and its boot processing method - Google Patents

Multi-cpu device and its boot processing method Download PDF

Info

Publication number
JP2009193479A
JP2009193479A JP2008035622A JP2008035622A JP2009193479A JP 2009193479 A JP2009193479 A JP 2009193479A JP 2008035622 A JP2008035622 A JP 2008035622A JP 2008035622 A JP2008035622 A JP 2008035622A JP 2009193479 A JP2009193479 A JP 2009193479A
Authority
JP
Japan
Prior art keywords
boot
cpu
pattern
control unit
nonvolatile memory
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
JP2008035622A
Other languages
Japanese (ja)
Inventor
Mamoru Shibuya
守 渋谷
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 JP2008035622A priority Critical patent/JP2009193479A/en
Publication of JP2009193479A publication Critical patent/JP2009193479A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To make a boot system of a versatile multi-CPU structure variable to allow versatile boot processing to perform inexpensively with respect to the multi-CPU device and its boot processing method. <P>SOLUTION: Information on the boot system of a CPU including start-up sequence of CPUs 11 and 12 is stored to a plurality of kinds of boot pattern tables as boot patterns, one boot pattern is selected by a boot system switch setting part 15 and set to a boot system control unit 14. A CPU bus control unit 13 gives the CPU a right of bus access for reading the boot program from a nonvolatile memory 18 in start-up sequence designed by the boot pattern. An address conversion part 17 converts an address signal output by the CPU into an address signal of a boot program storage region of the nonvolatile memory according to the boot pattern. A data width conversion part 16 converts a data signal read from the nonvolatile memory into a data bus width following the boot pattern and outputs it to the CPUs 11 and 12. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、多様な制御が必要とされるカードやシステム装置等に搭載され、複数のCPUで構成されるマルチCPU装置及びその複数のCPUを初期起動するためのブート処理方法に関する。   The present invention relates to a multi-CPU device that is mounted on a card, a system device, or the like that requires various controls and includes a plurality of CPUs and a boot processing method for initially starting the plurality of CPUs.

従来のマルチCPU装置の構成例を図4に示す。マルチCPU装置には一般にn個(n≧2)のCPUが搭載されるが、図4の構成例ではn=2、即ち2個のCPUを搭載したマルチCPU装置の構成例を示している。図4において、11は第1のCPU(#1)、12は第nのCPU(#n)、21はアービタ、31は不揮発性メモリ、41は調停信号、51は共通バスを示す。   A configuration example of a conventional multi-CPU device is shown in FIG. In general, n (n ≧ 2) CPUs are mounted on the multi-CPU device, but the configuration example of FIG. 4 shows a configuration example of a multi-CPU device on which n = 2, that is, two CPUs. In FIG. 4, 11 is a first CPU (# 1), 12 is an nth CPU (#n), 21 is an arbiter, 31 is a non-volatile memory, 41 is an arbitration signal, and 51 is a common bus.

この構成例におけるブート処理について説明する。CPU(#1)11及びCPU(#n)12に対するリセット信号が解除されると、CPU(#1)11及びCPU(#n)12のそれぞれから、共通バス51にアクセスするための制御信号がアービタ21に送出され、アービタ21はCPU(#1)11及びCPU(#n)12の何れにバスアクセス権を与えるかを調停する。   A boot process in this configuration example will be described. When the reset signal for the CPU (# 1) 11 and the CPU (#n) 12 is released, a control signal for accessing the common bus 51 is received from each of the CPU (# 1) 11 and the CPU (#n) 12. The arbiter 21 arbitrates which of the CPU (# 1) 11 and the CPU (#n) 12 is given the bus access right.

アービタ21は、共通バス51の使用許可(バスアクセス権)を与えるための調停信号41を生成し、該調停信号41を受けた例えばCPU(#1)11は、共通バス51を介して不揮発性メモリ31にアクセスし、起動用のブートプログラムを読み出す。ブートプログラムは、通常、CPU(#1)11及びCPU(#n)12のそれぞれに対応した不揮発性メモリ31に格納されている。   The arbiter 21 generates an arbitration signal 41 for giving permission to use the common bus 51 (bus access right), and the CPU (# 1) 11 that has received the arbitration signal 41 is nonvolatile via the common bus 51. The memory 31 is accessed and the boot program for activation is read out. The boot program is normally stored in the nonvolatile memory 31 corresponding to each of the CPU (# 1) 11 and the CPU (#n) 12.

ブートプログラムの格納例として例えば、CPU(#1)11のブートプログラムはCPU(#1)11に対応した不揮発性メモリ31(#1)に格納され、CPU(#n)12のブートプログラムはCPU(#n)12に対応した不揮発性メモリ31(#n)に格納される。但し、不揮発性メモリ31(#1)及び不揮発性メモリ31(#n)は、1つの不揮発性メモリ31内に領域分割して割り当てる構成とすることができる。   As an example of storing the boot program, for example, the boot program of the CPU (# 1) 11 is stored in the nonvolatile memory 31 (# 1) corresponding to the CPU (# 1) 11, and the boot program of the CPU (#n) 12 is the CPU. It is stored in the non-volatile memory 31 (#n) corresponding to (#n) 12. However, the non-volatile memory 31 (# 1) and the non-volatile memory 31 (#n) can be configured so as to be divided into areas in one non-volatile memory 31.

CPU(#1)11及びCPU(#n)12は、アービタ21による固定された調停により共通バス51にアクセスし、不揮発性メモリ31のそれぞれの分割領域からブートプログラムを読み出し、該ブートプログラムを実行してブート(初期起動)が完了する。   The CPU (# 1) 11 and the CPU (#n) 12 access the common bus 51 by fixed arbitration by the arbiter 21, read the boot program from each divided area of the nonvolatile memory 31, and execute the boot program The boot (initial startup) is completed.

下記の特許文献1には、プログラムを実行する複数のマイクロプロセッサと、プログラムを格納するメモリと、共通バスとを備えたマルチCPU処理装置において、複数のマイクロプロセッサがリセット後に実行するプログラムを共有のメモリに格納し、複数のマイクロプロセッサがリセット後にアクセスするアドレスが競合する場合に、それぞれのプログラムを異なるアドレス領域に格納し、競合するアドレスをアドレス変換装置により異なるアドレスに変換して、共有のメモリから共通バスを介して読み出すマルチCPU処理装置について記載されている。   In the following Patent Document 1, in a multi-CPU processing device including a plurality of microprocessors that execute a program, a memory that stores the program, and a common bus, a program that the plurality of microprocessors execute after reset is shared. When there are conflicting addresses that are stored in the memory and accessed by multiple microprocessors after resetting, each program is stored in a different address area, and the conflicting addresses are converted to different addresses by an address translation device. Describes a multi-CPU processor that reads from a common bus.

また、下記の特許文献2には、主プロセッサと局所プロセッサとから成り、各プロセッサに共通のシステムメモリに格納した初期起動時のプログラムを、アドレス変換回路によりアドレス変換して、システムバスを介して読み出すデータ処理装置の初期起動制御方式について記載されている。
特開平10−289220号公報 特開昭59−206923号公報
Further, the following Patent Document 2 includes a main processor and a local processor, and an initial startup program stored in a system memory common to each processor is converted into an address by an address conversion circuit, via a system bus. An initial activation control method for the data processing device to be read is described.
JP-A-10-289220 JP 59-206923 A

従来のマルチCPU装置では、ブート処理において、各CPUが不揮発性メモリにアクセスしてブートプログラムを読み出すのに使用する信号線が共通バスであるため、該共通バスに障害が発生すると、全てのCPUに障害が波及することとなる。また、従来のマルチCPU装置では、CPU毎に個別にそれぞれのブートプログラムを格納した不揮発性メインメモリを設けなければならず、コスト面や実装面で必ずしも最良のものとはいえないものであった。   In the conventional multi-CPU device, in the boot process, the signal line used by each CPU to access the non-volatile memory and read the boot program is a common bus. Therefore, if a failure occurs in the common bus, all the CPUs The obstacle will spill over. Further, in the conventional multi-CPU device, it is necessary to provide a non-volatile main memory storing each boot program individually for each CPU, which is not necessarily the best in terms of cost and mounting. .

更には、従来のマルチCPU装置のブート処理は、各CPUのブートプログラムの読み出しをアービタによるバスアクセス権の獲得によって行うため、アービタによるバスアクセス権付与の優先順位によってCPUの起動順序が固定化され、ブート処理の手順や方式が固定的な一定形式ものにしか適用することができず、マルチCPU装置毎にブート処理の手順や方式が異なる場合などには、それぞれの装置毎に応じてブート処理の実施方式を造り替える必要があった。   Furthermore, in the boot processing of the conventional multi-CPU device, since the boot program of each CPU is read by acquiring the bus access right by the arbiter, the CPU startup order is fixed according to the priority of the bus access right grant by the arbiter. When the boot process procedure and method can be applied only to a fixed and fixed format, and the boot process procedure and method are different for each multi-CPU device, the boot process is performed according to each device. It was necessary to remodel the implementation method.

本発明は、マルチカードなどの汎用性の高いマルチCPU構成の装置のブート方式を可変にし、安価で汎用性の高いブート処理を行うことができ、また、各CPUを初期起動(ブート)するためのブートプログラムを格納する不揮発性メインメモリを各CPU共通の1つメモリで構成することができるマルチCPU装置及びそのブート処理方法を提供する。   The present invention makes it possible to change the boot method of a device having a multi-CPU configuration such as a multi-card having high versatility, to perform inexpensive and highly versatile boot processing, and to initially start (boot) each CPU. There are provided a multi-CPU device and a boot processing method thereof in which a nonvolatile main memory for storing the boot program can be constituted by a single memory common to the CPUs.

このマルチCPU装置は、CPUの起動順序を含むCPUのブート方式の情報をブートパターンとして複数種類予め格納したブートパターンテーブルを有するブート方式制御部と、前記ブートパターンテーブルに格納されたブートパターンの中から1つのブートパターンを選択し、該選択したブートパターンを前記ブート方式制御部に設定するブートパターン切替え設定手段と、前記ブート方式制御部に設定されたブートパターンにより指定される起動順序で、ブートプログラムを不揮発性メモリから読み出すためのバスアクセス権をCPUに与えるCPUバス制御手段と、を備えることを要件とする。   The multi-CPU device includes a boot method control unit having a boot pattern table in which a plurality of types of CPU boot method information including a CPU activation order are stored in advance as boot patterns, and a boot pattern stored in the boot pattern table. Boot pattern switching setting means for setting the selected boot pattern in the boot method control unit, and the boot order in the boot order specified by the boot pattern set in the boot method control unit. CPU bus control means for giving the CPU a bus access right for reading the program from the nonvolatile memory.

また、このマルチCPU装置のブート処理方法は、CPUの起動順序を含むCPUのブート方式の情報をブートパターンとして複数種類予めブート方式制御部のブートパターンテーブルに格納しておくステップと、前記ブートパターンテーブルに格納されたブートパターンの中から1つのブートパターンを選択し、該選択したブートパターンを前記ブート方式制御部に設定するステップと、前記ブート方式制御部に設定されたブートパターンにより指定される起動順序で、ブートプログラムを不揮発性メモリから読み出すためのバスアクセス権をCPUに与えるステップと、を含むことを要件とする。   The boot processing method of the multi-CPU device includes a step of previously storing a plurality of types of CPU boot method information including the CPU activation order in a boot pattern table of a boot method control unit as a boot pattern, and the boot pattern A boot pattern is selected from the boot patterns stored in the table, the selected boot pattern is set in the boot method control unit, and specified by the boot pattern set in the boot method control unit And providing the CPU with a bus access right for reading the boot program from the nonvolatile memory in the startup order.

この発明によれば、同一のマルチCPU装置で多種のブート方式を選択することができ、また部品点数も少なく安価な構成で汎用性の高いブート処理を行うことができる。また、各CPUが共通バスに直接アクセスすることなくブートプログラムを読み出すため、1つのCPUと共通バスとを接続する信号線に障害が発生しても、他のCPUの起動に対する障害の波及を回避することができる。   According to the present invention, various boot methods can be selected with the same multi-CPU device, and versatile boot processing can be performed with an inexpensive configuration with a small number of components. In addition, since each CPU reads the boot program without directly accessing the common bus, even if a failure occurs in the signal line connecting one CPU and the common bus, the spread of the failure to the activation of other CPUs is avoided. be able to.

図1は本発明によるマルチCPU装置の構成例を示す。同図において、11は第1のCPU(#1)、12は第nのCPU(#n)、13はCPUバス制御部、14はブート方式制御部、15はブート方式切替え設定部、16はデータ幅変換部、17はアドレス変換部、18は大容量不揮発性メモリである。   FIG. 1 shows a configuration example of a multi-CPU device according to the present invention. In the figure, 11 is the first CPU (# 1), 12 is the nth CPU (#n), 13 is the CPU bus control unit, 14 is the boot system control unit, 15 is the boot system switching setting unit, and 16 is A data width conversion unit, 17 is an address conversion unit, and 18 is a large-capacity nonvolatile memory.

CPU(#1)11,CPU(#n)12に対するリセット信号が解除されると、解除されるタイミングで、ブート方式切替え設定部15により設定されたブート方式を、ブート方式制御部14が読込んでブート方式を決定する。CPUバス制御部13はブート方式制御部14によるブート方式の決定に従い、CPU(#1)11,CPU(#n)12のバスアクセスの調停を行う。   When the reset signals for the CPU (# 1) 11 and the CPU (#n) 12 are canceled, the boot method control unit 14 reads the boot method set by the boot method switching setting unit 15 at the timing of the release. Determine the boot method. The CPU bus control unit 13 arbitrates bus access of the CPU (# 1) 11 and the CPU (#n) 12 in accordance with the boot method determined by the boot method control unit 14.

上記の動作をより詳しく説明すると、まず、リセット信号が解除されるとCPU(#1)11,CPU(#n)12は、既定のブート処理の動作を開始する。その動作の開始をCPUバス制御部13で常時監視し、CPU(#1)11,CPU(#n)12のブート処理の動作開始に時間差が有ろうが無かろうが、CPUバス制御部13は、ブート方式制御部14によるブート方式の決定に従った順序で、1つのCPUに対してバスアクセスの許可を与える。   The above operation will be described in more detail. First, when the reset signal is released, the CPU (# 1) 11 and the CPU (#n) 12 start a predetermined boot processing operation. The start of the operation is constantly monitored by the CPU bus control unit 13, and the CPU bus control unit 13 may or may not have a time difference in the start of the boot processing operations of the CPU (# 1) 11 and the CPU (#n) 12. Gives a bus access permission to one CPU in the order according to the boot method determination by the boot method control unit 14.

CPUバス制御部13は、バスアクセスを許可したCPUからのアドレス信号及び制御信号をアドレス変換部17に送り、アドレス変換部17は、該CPUのブートプログラムが格納された大容量不揮発性メモリの領域のアドレスにアドレス信号を変換し、該変換したアドレス信号及び制御信号を大容量不揮発性メモリ18に出力する。   The CPU bus control unit 13 sends an address signal and a control signal from the CPU that has permitted the bus access to the address conversion unit 17, and the address conversion unit 17 is an area of a large-capacity nonvolatile memory in which the boot program of the CPU is stored. Then, the address signal is converted into the address, and the converted address signal and control signal are output to the large-capacity nonvolatile memory 18.

大容量不揮発性メモリ18は、上記アドレス変換部17からのアドレス信号で指定された領域から読み出したブートプログラムのデータを、データ幅変換部16に出力する。データ幅変換部16では、前述のブート方式により指定されたデータバス幅にデータ信号を整列し、バスアクセスを許可したCPUに対して外データ信号を送り込む。このような一連の処理を各CPUに対して繰り返し実行し、各CPUのブート処理を完了する。   The large-capacity nonvolatile memory 18 outputs the boot program data read from the area specified by the address signal from the address converter 17 to the data width converter 16. The data width conversion unit 16 arranges the data signals in the data bus width designated by the boot method described above, and sends an external data signal to the CPU that has permitted the bus access. Such a series of processing is repeatedly executed for each CPU, and the boot processing of each CPU is completed.

図2は本発明のマルチCPU装置の特徴的な構成の要部を示す。同図には図1におけるブート方式制御部14、ブート方式切替え設定部15、データ幅変換部16、アドレス変換部17、及び大容量不揮発性メモリ18を示している。以下、これらの構成を中心に説明する。   FIG. 2 shows a main part of a characteristic configuration of the multi-CPU device of the present invention. The figure shows the boot method control unit 14, the boot method switching setting unit 15, the data width conversion unit 16, the address conversion unit 17, and the large-capacity nonvolatile memory 18 in FIG. Hereinafter, these configurations will be mainly described.

ブート方式制御部14にはブートパターンテーブル14−1を備え、ブートパターンテーブル14−1は、各種のブート方式の情報を複数種類のブートパターンとして格納したテーブルである。ブート方式切替え設定部15から入力されるブートパターンの識別信号を基に、ブートパターンテーブル14−1に格納されたブートパターンの情報を読み出し、該ブートパターンの情報によって指定されるブートコントロール信号を、CPUバス制御部13、データ幅変換部16及びアドレス変換部17へ出力する。   The boot method control unit 14 includes a boot pattern table 14-1. The boot pattern table 14-1 is a table in which information on various boot methods is stored as a plurality of types of boot patterns. Based on the boot pattern identification signal input from the boot method switching setting unit 15, the boot pattern information stored in the boot pattern table 14-1 is read, and the boot control signal specified by the boot pattern information is The data is output to the CPU bus control unit 13, the data width conversion unit 16, and the address conversion unit 17.

ブート方式切替え設定部15にはブートパターン選択部15−1及びデコーダ15−2を備える。ブートパターン選択部15−1は、複数のブートパターンの中から1つのブートパターンを選択することができる構成を有する。デコーダ15−2は選択されたブートパターンの識別信号をデコードしてブート方式制御部14に出力する。   The boot method switching setting unit 15 includes a boot pattern selection unit 15-1 and a decoder 15-2. The boot pattern selection unit 15-1 has a configuration capable of selecting one boot pattern from a plurality of boot patterns. The decoder 15-2 decodes the identification signal of the selected boot pattern and outputs it to the boot method control unit 14.

データ幅変換部16にはデータアライメントテーブル16−1を備え、データアライメントテーブル16−1は、大容量不揮発性メモリ18から読み出したデータを、ブートパターンの情報に従って所定のデータ幅のデータ信号に整列させるためのデータアライメント情報を格納する。   The data width conversion unit 16 includes a data alignment table 16-1. The data alignment table 16-1 aligns data read from the large-capacity nonvolatile memory 18 into data signals having a predetermined data width according to boot pattern information. Data alignment information for storing the data is stored.

アドレス変換部17には領域変換部17−1、大容量不揮発メモリ用アドレス変換部17−2、アクセス制御部17−3を備える。領域変換部17−1は、CPUから出力されるアドレス信号及び制御信号を、ブートパターンの情報に従って、該当ブートプログラムが格納されている大容量不揮発性メモリ18の領域のアドレスに変換する。   The address conversion unit 17 includes an area conversion unit 17-1, a large-capacity nonvolatile memory address conversion unit 17-2, and an access control unit 17-3. The area conversion unit 17-1 converts an address signal and a control signal output from the CPU into an address of an area of the large-capacity nonvolatile memory 18 in which the corresponding boot program is stored according to the boot pattern information.

また、大容量の不揮発性メモリは、通常、1アドレスで例えば256バイト分のデータを読み出す構成となっているため、1バイト乃至4バイトの単位でデータを読み出すたびにアドレス信号をサイクリックに出力するCPUの動作と整合性を取るために大容量不揮発メモリ用アドレス変換部17−2を備える。   In addition, since a large-capacity nonvolatile memory is usually configured to read, for example, 256 bytes of data with one address, an address signal is cyclically output each time data is read in units of 1 to 4 bytes. In order to maintain consistency with the operation of the CPU, a large capacity nonvolatile memory address conversion unit 17-2 is provided.

アクセス制御回路17−3は、大容量不揮発性メモリ18のアクセス制御のための各種信号を生成して大容量不揮発性メモリ18からブートプログラムを読み出させる。大容量不揮発性メモリ18内には、複数種類のブートプログラムを格納したプログラム領域18−1を有する。   The access control circuit 17-3 generates various signals for access control of the large-capacity nonvolatile memory 18 and causes the boot program to be read from the large-capacity nonvolatile memory 18. The large-capacity nonvolatile memory 18 has a program area 18-1 storing a plurality of types of boot programs.

マルチCPU装置のブート処理は、種々のマルチCPU構成及びその用途等に依存して、CPUの起動順序、各CPUのブートプログラムの格納領域、各CPUのデータ信号幅(例えば、8ビット、16ビット、32ビット)等によってそれぞれ異なるブート方式が想定される。このような種々異なるブート方式に対応するためのブートパターン切替え設定手段がブートパターンテーブル14−1及びブートパターン選択部15−1である。   The boot processing of the multi-CPU device depends on various multi-CPU configurations and their uses, etc., the CPU startup order, the boot program storage area of each CPU, and the data signal width of each CPU (for example, 8 bits, 16 bits) , 32 bits), etc., different boot methods are assumed. The boot pattern switching setting means for supporting such different boot methods is the boot pattern table 14-1 and the boot pattern selection unit 15-1.

これらは、CPUのリセット信号解除により、ブートパターン選択部15−1で選択され、デコーダ15−2でデコードされたブートパターンの識別信号をブート方式制御部14に送り、ブート方式制御部14は、予め想定される複数のブートパターンをブートパターンテーブル14−1に用意しておき、ブートパターン選択部15−1で選択された信号に従って1つのブートパターンを出力する。なお、ブートパターン選択部15−1は、手動によって選択されるものであっても、上位のソフトウェアによって自動的に選択されるものであってもよい。   These signals are selected by the boot pattern selection unit 15-1 and the boot pattern identification signal decoded by the decoder 15-2 is sent to the boot method control unit 14 by releasing the reset signal of the CPU. A plurality of boot patterns assumed in advance are prepared in the boot pattern table 14-1, and one boot pattern is output according to the signal selected by the boot pattern selection unit 15-1. The boot pattern selection unit 15-1 may be manually selected or automatically selected by upper software.

ブートパターンは多数存在するため、多数のパターンが格納されたブートパターンテーブル14−1の中から1つのブートパターンを容易に選択して設定することができるように、ブートパターン選択部15−1において、ブート方式を種目別又は項目別等によって順々に絞り込みながら選択し得るようにし、その選択した種別又は項目の組み合わせ情報をデコーダ15−2で1つのブートパターンの識別信号に変換する構成とすることもできる。   Since there are a large number of boot patterns, the boot pattern selection unit 15-1 can select and set one boot pattern from the boot pattern table 14-1 in which a large number of patterns are stored. The boot method can be selected while being narrowed down in order by item or item, and the combination information of the selected type or item is converted into an identification signal of one boot pattern by the decoder 15-2. You can also.

ブートパターンテーブル14−1には、バスの調停手順(CPUの起動順の)やブートプログラムの種別又は格納領域、データ信号幅などのブート方式情報が含まれている。このブート方式の情報をブートコントロール信号に変換し、CPUバス制御部13を通してデータ幅変換部16、アドレス変換部17及び大容量不揮発性メモリ18に送出するのがブート方式制御部14の役目である。   The boot pattern table 14-1 includes boot method information such as a bus arbitration procedure (in the order of startup of the CPU), a type or storage area of a boot program, and a data signal width. It is the role of the boot method control unit 14 to convert this boot method information into a boot control signal and send it to the data width conversion unit 16, the address conversion unit 17 and the large-capacity nonvolatile memory 18 through the CPU bus control unit 13. .

CPUバス制御部13によりブートパターンに従ってアクセス調停が為されたCPUからのアドレス信号及び制御信号を、アドレス変換部17の領域変換回路17−1では、ブートパターンに従って該当ブートプログラムが格納されている大容量不揮発性メモリ18の領域のアドレス信号に変換する。   The area conversion circuit 17-1 of the address conversion unit 17 stores an address signal and a control signal from the CPU that has undergone access arbitration according to the boot pattern by the CPU bus control unit 13, and the corresponding boot program is stored in accordance with the boot pattern. This is converted into an address signal in the area of the capacity nonvolatile memory 18.

変換したアドレス信号は、更に大容量不揮発性メモリ18のアドレスに変換する不揮発メモリ用アドレス変換部17−2へ送る。これは前述したように、通常の不揮発性メモリではアドレスがサイクリックに変換されてデータを読込むが、大容量の不揮発性メモリは、1アドレスで例えば256バイト分のデータを読み出すために、CPUの読み出し動作と整合性を取るためである。   The converted address signal is sent to a non-volatile memory address conversion unit 17-2 that converts the converted address signal into an address of the large-capacity non-volatile memory 18. As described above, in an ordinary nonvolatile memory, an address is cyclically converted and data is read, but a large-capacity nonvolatile memory reads a data of, for example, 256 bytes by one address. This is to ensure consistency with the read operation.

そして、アクセス制御回路17−3により、大容量不揮発性メモリ18のアクセス制御のための各種信号が生成され、大容量不揮発性メモリ18からブートプログラムが読み出される。読み出されたブートプログラムのデータは、データ幅変換部16に送られ、データ幅変換部16は、ブートパターンに対応したデータアライメント情報をデータアライメントテーブル16−1から選定し、該データアライメントの情報に従ったデータ信号幅にブートプログラムのデータを変換してCPUへ送り込み、ブート処理が完了する。   Then, the access control circuit 17-3 generates various signals for access control of the large-capacity nonvolatile memory 18, and the boot program is read from the large-capacity nonvolatile memory 18. The read boot program data is sent to the data width converter 16, and the data width converter 16 selects the data alignment information corresponding to the boot pattern from the data alignment table 16-1, and the data alignment information. The boot program data is converted into the data signal width according to the above and sent to the CPU to complete the boot process.

なお、ブート処理が正常に完了しない場合は、ブートパターン選択部15−1によるブートパターンの選択を、ソフトウェア又はハードウェアによる切替えにより他の選択候補に切り替えてCPUを再リセットすることにより、異なるブートパターンによるデータアライメント等が変更されたブート処理を行い、ブート処理の障害に対処する構成とすることができる。   If the boot process is not normally completed, the boot pattern selection by the boot pattern selection unit 15-1 is switched to another selection candidate by switching by software or hardware, and a different boot is performed by resetting the CPU again. A boot process in which data alignment or the like by a pattern is changed can be configured to cope with a failure in the boot process.

図3は本発明のマルチCPU装置のブート処理の動作例を示す。図中、(a)はリセット信号、(b)は第1のCPU(#1)から出力されるアドレス信号、(c)は第nのCPU(#n)から出力されるアドレス信号、(d)は第1のCPU(#1)に対する動作停止(WAIT)信号、(e)は第nのCPU(#n)に対する動作停止(WAIT)信号、(f)は第1のCPU(#1)からのアドレス信号を改定(変換)した後のアドレス信号、(g)は第nのCPU(#n)からのアドレス信号を改定(変換)した後のアドレス信号、(h)は大容量不揮発性メモリアドレス、(i)は大容量不揮発性メモリの読み出しデータ、(j)は第1のCPU(#1)へ出力するデータ、(k)は第nのCPU(#n)へ出力するデータである。   FIG. 3 shows an example of the boot processing operation of the multi-CPU device of the present invention. In the figure, (a) is a reset signal, (b) is an address signal output from the first CPU (# 1), (c) is an address signal output from the nth CPU (#n), (d ) Is an operation stop (WAIT) signal for the first CPU (# 1), (e) is an operation stop (WAIT) signal for the nth CPU (#n), and (f) is the first CPU (# 1). The address signal after revision (conversion) of the address signal from, (g) is the address signal after revision (conversion) of the address signal from the nth CPU (#n), and (h) is a large capacity non-volatile Memory address, (i) is read data of a large-capacity nonvolatile memory, (j) is data to be output to the first CPU (# 1), and (k) is data to be output to the nth CPU (#n). is there.

図3に示す動作例は、「分散ブート、第1のCPU(#1)(起動順序第1位)バス幅8ビット、第nのCPU(#n)バス幅32ビット、CPU毎に異なるブートプログラムのブート方式」の場合の動作例である。仮にこのブート方式のブートパターンの識別番号が3であるとする。図2において、ブートパターン選択部15−1で3という番号が選択され、デコーダ15−2はこの3の番号を例えば16進数の符号でブート方式制御部14に与える。   The operation example shown in FIG. 3 is as follows: “Distributed boot, first CPU (# 1) (first place in boot order) bus width 8 bits, nth CPU (#n) bus width 32 bits, different boot for each CPU It is an operation example in the case of the “program boot method”. Suppose that the boot pattern identification number of this boot method is 3. In FIG. 2, the number 3 is selected by the boot pattern selection unit 15-1, and the decoder 15-2 gives this number 3 to the boot method control unit 14 with a hexadecimal code, for example.

ブート方式制御部14は、ブートパターンテーブル14−1の中のブートパターン3の情報を読み出し、該情報に従ったブートコントロール信号を生成する。このブートコントロール信号に基づいて図3の動作が行われる。   The boot method control unit 14 reads the information of the boot pattern 3 in the boot pattern table 14-1, and generates a boot control signal according to the information. The operation of FIG. 3 is performed based on this boot control signal.

まず、(a)のリセット信号が解除されると、(b)(c)のように各CPUからアドレス信号(A+A0,B+B0)が出力される。出力されたアドレス信号をホールドするために、一旦、各CPUに対して(d)(e)のように、CPU(#1)WAIT信号、CPU(#n)WAIT信号を送出し、各CPUを動作停止状態にする。   First, when the reset signal (a) is canceled, the address signals (A + A0, B + B0) are output from each CPU as shown in (b) and (c). In order to hold the output address signal, the CPU (# 1) WAIT signal and the CPU (#n) WAIT signal are once sent to each CPU as shown in (d) and (e). Stop operation.

その一方で、ブートパターンの情報から第1のCPU(#1)が起動順序第1位であることを認識し、第1のCPU(#1)のブートプログラムを読み込むために、(f)のように第1のCPU(#1)のブートプログラム領域のアドレスに改定した第1のCPU(#1)改定アドレス信号(AA+A0)を生成する。   On the other hand, in order to recognize that the first CPU (# 1) is first in the boot order from the boot pattern information and to read the boot program of the first CPU (# 1), Thus, the first CPU (# 1) revised address signal (AA + A0) revised to the address of the boot program area of the first CPU (# 1) is generated.

そして(h)のように、生成された第1のCPU(#1)改定アドレス信号(AA+A0)を、更に大容量不揮発性メモリの間接アドレスに変換して大容量不揮発性メモリアドレス信号(AAA+A0)を生成する。これと同時に、256バイト分のデータリードが開始され、(i)のように大容量不揮発性メモリから256バイトのデータ(A+D0〜A+D255)が読み出される。   Then, as shown in (h), the generated first CPU (# 1) revised address signal (AA + A0) is further converted into an indirect address of the large-capacity nonvolatile memory, and the large-capacity nonvolatile memory address signal (AAA + A0). Is generated. At the same time, data read for 256 bytes is started, and 256 bytes of data (A + D0 to A + D255) are read from the large-capacity nonvolatile memory as shown in (i).

この読み出しが終了すると、(d)のように第1のCPU(#1)の動作停止(WAIT)信号を解除して第1のCPU(#1)を動作可能な状態にする。第1のCPU(#1)は動作可能な状態になると、第1のCPU(#1)は通常の8ビットデータを読み込んでブートするために、(b)に示すようにアドレス信号(A+A0〜A+A255)をインクリメント(8ビットバスなので1アドレス分増加)して送出し、(j)のようにブートプログラムのデータ(A+D0〜A+D255)の読み出しを行う。これが完了すると(d)に示すように再び第1のCPU(#1)を停止状態にする。   When this reading is finished, the operation stop (WAIT) signal of the first CPU (# 1) is canceled as shown in (d), and the first CPU (# 1) is made operable. When the first CPU (# 1) is in an operable state, the first CPU (# 1) reads the normal 8-bit data and boots, so that the address signal (A + A0-A0) as shown in (b). A + A255) is incremented (increased by one address because it is an 8-bit bus), and the boot program data (A + D0 to A + D255) is read as shown in (j). When this is completed, as shown in (d), the first CPU (# 1) is again brought into a stopped state.

次に第nのCPU(#n)のブートを開始させる。第nのCPU(#n)の不揮発性メモリからのブートプログラム(B+D0〜B+D255)のデータ幅変換部への読み込み動作は、(i)に示すように第1のCPU(#1)が読み込み動作を行っている段階から行われる。その前のアドレス変換等の動作は第1のCPU(#1)の場合と同様である。   Next, booting of the nth CPU (#n) is started. The read operation of the boot program (B + D0 to B + D255) from the nonvolatile memory of the nth CPU (#n) to the data width conversion unit is performed by the first CPU (# 1) as shown in (i). It is done from the stage of doing. The previous operations such as address conversion are the same as in the case of the first CPU (# 1).

第nのCPU(#n)へのブートプログラムの出力は、大容量不揮発性メモリからデータ幅変換部へのリードが完了すると、(e)に示すように第nのCPU(#n)の動作停止(WAIT)信号を解除して第nのCPU(#n)を動作可能な状態にし、第nのCPU(#n)がブートプログラム(B+D0〜B+D255)を読み込む状態にする。   The output of the boot program to the nth CPU (#n) is the operation of the nth CPU (#n) as shown in (e) when the read from the large-capacity nonvolatile memory to the data width conversion unit is completed. The stop (WAIT) signal is canceled to make the nth CPU (#n) operable, and the nth CPU (#n) reads the boot program (B + D0 to B + D255).

しかし、第1のCPU(#1)と違って第nのCPU(#n)は、32ビットのデータ幅なので、ブートパターンのパラメータに従って8ビットデータを32ビットデータに整列(アライメント)しておき、(c)のように第nのCPU(#n)が通常動作でアドレス(B+A0,B+A4,〜B+A252)を4アドレス分ずつインクリメントするのに合わせて、(k)に示すようにブートプログラムデータ(B+D0,B+D4,〜B+D252)を第nのCPU(#n)に渡すことで、ブート処理の完了となる。   However, unlike the first CPU (# 1), the n-th CPU (#n) has a 32-bit data width, so that 8-bit data is aligned with 32-bit data according to the boot pattern parameters. As shown in (k), the nth CPU (#n) increments the address (B + A0, B + A4,... B + A252) by 4 addresses in normal operation as shown in (c). By passing (B + D0, B + D4,..., B + D252) to the nth CPU (#n), the boot process is completed.

その後は、第1のCPU(#1)と同様に、第nのCPU(#n)も停止状態とする。ブートプログラムのデータ量に合わせてこの動作を繰り返し、第1のCPU(#1)と第nのCPU(#n)のブート処理が完了する。   Thereafter, similarly to the first CPU (# 1), the n-th CPU (#n) is also stopped. This operation is repeated according to the data amount of the boot program, and the boot processing of the first CPU (# 1) and the nth CPU (#n) is completed.

本発明によるマルチCPU装置の構成例を示す図である。It is a figure which shows the structural example of the multi CPU apparatus by this invention. 本発明のマルチCPU装置の特徴的な構成の要部を示す図である。It is a figure which shows the principal part of the characteristic structure of the multi CPU device of this invention. 本発明のマルチCPU装置のブート処理の動作例を示す図である。It is a figure which shows the operation example of the boot process of the multi CPU apparatus of this invention. 従来のマルチCPU装置の構成例を示す図である。It is a figure which shows the structural example of the conventional multi CPU apparatus.

符号の説明Explanation of symbols

11 第1のCPU(#1)
12 第nのCPU(#n)
13 CPUバス制御部
14 ブート方式制御部
15 ブート方式切替え設定部
16 データ幅変換部
17 アドレス変換部
18 大容量不揮発性メモリ
11 First CPU (# 1)
12 nth CPU (#n)
13 CPU bus control unit 14 Boot system control unit 15 Boot system switching setting unit 16 Data width conversion unit 17 Address conversion unit 18 Large capacity nonvolatile memory

Claims (4)

複数のCPUで構成されるマルチCPU装置において、
CPUの起動順序を含むCPUのブート方式の情報をブートパターンとして複数種類予め格納したブートパターンテーブルを有するブート方式制御部と、
前記ブートパターンテーブルに格納されたブートパターンの中から1つのブートパターンを選択し、該選択したブートパターンを前記ブート方式制御部に設定するブートパターン切替え設定手段と、
前記ブート方式制御部に設定されたブートパターンにより指定される起動順序で、ブートプログラムを不揮発性メモリから読み出すためのバスアクセス権をCPUに与えるCPUバス制御手段と、
を備えたマルチCPU装置。
In a multi-CPU device composed of a plurality of CPUs,
A boot method control unit having a boot pattern table in which a plurality of types of boot method information including a CPU activation order are stored in advance as a boot pattern;
A boot pattern switching setting means for selecting one boot pattern from the boot patterns stored in the boot pattern table and setting the selected boot pattern in the boot method control unit;
CPU bus control means for giving the CPU a bus access right for reading the boot program from the nonvolatile memory in the boot order specified by the boot pattern set in the boot method control unit;
A multi-CPU device comprising:
前記ブートパターンに、各CPUのブートプログラムの種別又は不揮発性メモリにおける格納領域の情報を含み、前記バスアクセス権を与えられたCPUから出力されるブートプログラムの読み出しアドレス信号を、該ブートパターンにより指定される不揮発性メモリのブートプログラム格納領域のアドレス信号に変換して不揮発性メモリに送出するアドレス変換手段を備えた請求項1に記載のマルチCPU装置。   The boot pattern includes the type of boot program of each CPU or the storage area information in the nonvolatile memory, and specifies the boot program read address signal output from the CPU to which the bus access right is given by the boot pattern. 2. The multi-CPU device according to claim 1, further comprising address conversion means for converting into an address signal in a boot program storage area of the non-volatile memory to be sent to the non-volatile memory. 前記ブートパターンに、各CPUのデータバス幅の情報を含み、前記不揮発性メモリから読み出したブートプログラムのデータ信号を、該ブートパターンにより指定されるデータバス幅のデータ信号に変換し、前記バスアクセス権を与えられたCPUに送出するデータ幅変換手段を備えた請求項1又は2に記載のマルチCPU装置。   The boot pattern includes information on the data bus width of each CPU, converts the data signal of the boot program read from the nonvolatile memory into a data signal of the data bus width specified by the boot pattern, and the bus access The multi-CPU device according to claim 1, further comprising a data width converting means for sending to a CPU to which the right is given. 複数のCPUで構成されるマルチCPU装置のブート処理方法において、
CPUの起動順序を含むCPUのブート方式の情報をブートパターンとして複数種類予めブート方式制御部のブートパターンテーブルに格納しておくステップと、
前記ブートパターンテーブルに格納されたブートパターンの中から1つのブートパターンを選択し、該選択したブートパターンを前記ブート方式制御部に設定するステップと、
前記ブート方式制御部に設定されたブートパターンにより指定される起動順序で、ブートプログラムを不揮発性メモリから読み出すためのバスアクセス権をCPUに与えるステップと、
を含むマルチCPU装置のブート処理方法。
In a boot processing method of a multi-CPU device composed of a plurality of CPUs,
A step of storing a plurality of types of CPU boot method information including the CPU activation order in the boot pattern table of the boot method control unit in advance as a boot pattern;
Selecting one boot pattern from the boot patterns stored in the boot pattern table, and setting the selected boot pattern in the boot method control unit;
Giving the CPU a bus access right for reading the boot program from the nonvolatile memory in the boot order specified by the boot pattern set in the boot method control unit;
A boot processing method for a multi-CPU device including:
JP2008035622A 2008-02-18 2008-02-18 Multi-cpu device and its boot processing method Withdrawn JP2009193479A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008035622A JP2009193479A (en) 2008-02-18 2008-02-18 Multi-cpu device and its boot processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008035622A JP2009193479A (en) 2008-02-18 2008-02-18 Multi-cpu device and its boot processing method

Publications (1)

Publication Number Publication Date
JP2009193479A true JP2009193479A (en) 2009-08-27

Family

ID=41075413

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008035622A Withdrawn JP2009193479A (en) 2008-02-18 2008-02-18 Multi-cpu device and its boot processing method

Country Status (1)

Country Link
JP (1) JP2009193479A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011024515A1 (en) 2009-08-24 2011-03-03 オリンパスメディカルシステムズ株式会社 Medical device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011024515A1 (en) 2009-08-24 2011-03-03 オリンパスメディカルシステムズ株式会社 Medical device

Similar Documents

Publication Publication Date Title
KR101173539B1 (en) Multi-processor System and Method of initializing thereof
US7711941B2 (en) Method and apparatus for booting independent operating systems in a multi-processor core integrated circuit
US9043806B2 (en) Information processing device and task switching method
JP5445669B2 (en) Multi-core system and startup method
JP2007206933A (en) Information processor, boot loader generation method and program transfer method in information processor
JP4472646B2 (en) System control apparatus, system control method, and system control program
JPH10171665A (en) Jump code generator, interrupt program selection device and system, and computer
JP2007299227A (en) Information processing apparatus and method for booting the same
JP2009193479A (en) Multi-cpu device and its boot processing method
JP4809497B2 (en) Programmable controller that executes multiple independent sequence programs in parallel
JP2008041059A (en) Multiprocessor controller and information processor
JP2013246630A (en) Boot system and system initializing method
JPH10105503A (en) Address resetting circuit for microcontroller
JP2009301339A (en) Bus control device
JP2005303718A (en) Matrix bus connection system
JP4791792B2 (en) Digital signal processor system and boot method thereof.
US7734903B2 (en) Multi-processor system and method for controlling reset and processor ID thereof
JPWO2006001051A1 (en) Multiprocessor device and control method thereof
US20070186026A1 (en) System having bus architecture for improving CPU performance and method thereof
JP5460409B2 (en) Information processing system
JP2008210280A (en) Semiconductor device and dma controller
JP2003208399A (en) Data processing apparatus
JP5071943B2 (en) Electronic control apparatus and program start switching method
JP2007299036A (en) Information processor and information processing method
KR100681427B1 (en) Apparatus for resetting multiple processor system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20110510