JP6303670B2 - Multiple CPU start circuit, multiple CPU start method, and multiple CPU start circuit program - Google Patents

Multiple CPU start circuit, multiple CPU start method, and multiple CPU start circuit program Download PDF

Info

Publication number
JP6303670B2
JP6303670B2 JP2014056623A JP2014056623A JP6303670B2 JP 6303670 B2 JP6303670 B2 JP 6303670B2 JP 2014056623 A JP2014056623 A JP 2014056623A JP 2014056623 A JP2014056623 A JP 2014056623A JP 6303670 B2 JP6303670 B2 JP 6303670B2
Authority
JP
Japan
Prior art keywords
cpu
volatile memory
program
firmware
switch
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.)
Active
Application number
JP2014056623A
Other languages
Japanese (ja)
Other versions
JP2015179411A (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
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2014056623A priority Critical patent/JP6303670B2/en
Priority to CN201510122871.5A priority patent/CN104932914B/en
Publication of JP2015179411A publication Critical patent/JP2015179411A/en
Application granted granted Critical
Publication of JP6303670B2 publication Critical patent/JP6303670B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、複数CPUの起動回路、複数CPUの起動方法及び複数CPUの起動回路のプログラムに関する。   The present invention relates to a startup circuit for a plurality of CPUs, a startup method for a plurality of CPUs, and a program for a startup circuit for a plurality of CPUs.

複数のCPU(Central Processing Unit、中央処理装置)が使用されたコンピュータでは、一般に、全てのCPUを起動するためには、それぞれのCPUに不揮発メモリ及び揮発メモリが必要となる。   In a computer in which a plurality of CPUs (Central Processing Units) are used, in general, in order to start all the CPUs, each CPU needs a nonvolatile memory and a volatile memory.

図4は、本発明に関連する、CPU起動回路(900)の構成を示すブロック図である。図4において、CPU起動回路(900)は、CPU1(91)、CPU2(92)、揮発メモリ1(90)、揮発メモリ2(93)、不揮発メモリ1(94)及び不揮発メモリ2(95)を備える。CPU1(91)は、外部システム(3)からのスタート信号(104)の受信を契機に起動する。図4のCPU起動回路(900)の動作について、図5を参照して説明する。   FIG. 4 is a block diagram showing the configuration of the CPU activation circuit (900) related to the present invention. In FIG. 4, a CPU activation circuit (900) includes a CPU 1 (91), a CPU 2 (92), a volatile memory 1 (90), a volatile memory 2 (93), a nonvolatile memory 1 (94), and a nonvolatile memory 2 (95). Prepare. The CPU 1 (91) is activated upon reception of the start signal (104) from the external system (3). The operation of the CPU activation circuit (900) in FIG. 4 will be described with reference to FIG.

図5は、CPU起動回路(900)の起動手順を示すフローチャートである。起動手順の開始時には、CPU1(91)は、外部システム(3)からスタート信号(104)を受信する(図5のステップS111)。スタート信号(104)を受信したCPU1(91)は、不揮発メモリ1(94)に記憶されているブートローダ(boot loader、BL)1(96A)を揮発メモリ1のn番地(nは整数)に、ブートローダ1(98)としてコピーする(S112)。n番地は、CPU1(91)が、揮発メモリ1(90)上でブートローダ1(98)をスタートさせるアドレスである。   FIG. 5 is a flowchart showing a startup procedure of the CPU startup circuit (900). At the start of the startup procedure, the CPU 1 (91) receives the start signal (104) from the external system (3) (step S111 in FIG. 5). The CPU 1 (91) that has received the start signal (104) sets the boot loader (boot loader, BL) 1 (96A) stored in the nonvolatile memory 1 (94) to the n address (n is an integer) of the volatile memory 1. The boot loader 1 (98) is copied (S112). The address n is an address at which the CPU 1 (91) starts the boot loader 1 (98) on the volatile memory 1 (90).

CPU1(91)のスタートアドレス(n番地)にコピーされたブートローダ1(98)は、CPU1(91)上でスタートする(S113)。ブートローダ1(98)は、ファームウエア(firmware、FW)1(96)を不揮発メモリ1(94)から揮発メモリ1(90)のn1番地にファームウエア1(99)としてコピーする(S114)。n1番地は、ファームウエア1(99)が、CPU1(91)上でスタートする番地である。揮発メモリ1(90)のn1番地にコピーされたファームウエア1(99)は、CPU1(91)上でスタートする(S115)。   The boot loader 1 (98) copied to the start address (address n) of the CPU 1 (91) starts on the CPU 1 (91) (S113). The boot loader 1 (98) copies the firmware (firmware, FW) 1 (96) from the nonvolatile memory 1 (94) to the address n1 of the volatile memory 1 (90) as firmware 1 (99) (S114). The address n1 is an address where the firmware 1 (99) starts on the CPU 1 (91). The firmware 1 (99) copied to the address n1 of the volatile memory 1 (90) starts on the CPU 1 (91) (S115).

ファームウエア1(99)の機能により、CPU1(91)は、CPU2(92)に、CPU2スタート信号(105)を送る(S116)。CPU2スタート信号(105)を受信したCPU2(92)は、不揮発メモリ2(95)に記憶されているブートローダ2(100A)を揮発メモリ2(93)のm番地(mは整数)にブートローダ2(102)としてコピーする(S117)。m番地は、CPU2(92)が、揮発メモリ2(93)上でブートローダ2(102)をスタートさせるアドレスである。m番地にコピーされたブートローダ2(102)は、CPU2(92)上でスタートする(S118)。ブートローダ2(102)は、不揮発メモリ2(95)内のファームウエア2(100)を不揮発メモリ2(95)から揮発メモリ2(93)のm1番地にコピーする(S119)。m1番地は、ファームウエア2(103)が、CPU2(92)上でスタートするアドレスである。揮発メモリ2(93)のm1番地にコピーされたファームウエア2(103)は、CPU2(92)上でスタートする(S120)。以上の手順で、2個のCPUが起動する(S119)。   By the function of the firmware 1 (99), the CPU 1 (91) sends a CPU 2 start signal (105) to the CPU 2 (92) (S116). The CPU 2 (92) having received the CPU 2 start signal (105) transfers the boot loader 2 (100A) stored in the nonvolatile memory 2 (95) to the m address (m is an integer) of the volatile memory 2 (93). 102) (S117). The address m is an address at which the CPU 2 (92) starts the boot loader 2 (102) on the volatile memory 2 (93). The boot loader 2 (102) copied to the address m starts on the CPU 2 (92) (S118). The boot loader 2 (102) copies the firmware 2 (100) in the nonvolatile memory 2 (95) from the nonvolatile memory 2 (95) to the address m1 of the volatile memory 2 (93) (S119). The address m1 is an address at which the firmware 2 (103) starts on the CPU 2 (92). The firmware 2 (103) copied to the address m1 of the volatile memory 2 (93) starts on the CPU 2 (92) (S120). With the above procedure, two CPUs are activated (S119).

このように、CPU起動回路(900)は、CPU1(91)に直結された不揮発メモリ1(94)、及び、CPU2(92)に直結された不揮発メモリ2(95)が必要である。従って、CPU起動回路(900)は、CPUごとに不揮発メモリが必要であるため、部品点数の削減による製品の低価格化、及び、部品の実装面積の削減による製品の小型化が困難であるという課題があった。例えば、MSA(Multi Source Agreement)によって製品の寸法の上限が規定されている場合がある。しかし、製品に実装される部品が多いと、MSAの規定を遵守することが困難な場合があり、部品の実装面積はできるだけ小さいことが好ましい。なお、MSAとは、部品の製造者の間で定められた、寸法やピン配置などの共通の仕様である。   Thus, the CPU activation circuit (900) requires the nonvolatile memory 1 (94) directly connected to the CPU 1 (91) and the nonvolatile memory 2 (95) directly connected to the CPU 2 (92). Therefore, since the CPU activation circuit (900) requires a nonvolatile memory for each CPU, it is difficult to reduce the price of the product by reducing the number of components and to reduce the size of the product by reducing the mounting area of the components. There was a problem. For example, an upper limit of product dimensions may be defined by MSA (Multi Source Agreement). However, if there are many components mounted on the product, it may be difficult to comply with the MSA regulations, and the mounting area of the components is preferably as small as possible. Note that the MSA is a common specification such as dimensions and pin arrangement, which is determined among component manufacturers.

このような課題を解決するための技術として、特許文献1には、2個のプロセッサA、Bで用いられるそれぞれのブートプログラム及びメインプログラムが1個のROM(read only memory)に記憶されている、マルチプロセッサシステムが記載されている。そして、特許文献1に記載されたマルチプロセッサシステムは、起動時に、プロセッサAにより、プロセッサB用のブートプログラムB及びメインプログラムBの両方が、プロセッサ間インタフェース回路を通して、プロセッサBのRAM(random access memory)に転送される。そして、プロセッサBは、プロセッサBのRAM(RAM_B)に転送されたブートプログラムB及びメインプログラムBによって起動する。   As a technique for solving such a problem, Patent Document 1 stores each boot program and main program used by two processors A and B in one ROM (read only memory). A multiprocessor system is described. In the multiprocessor system described in Patent Document 1, when starting up, the processor A causes both the boot program B for the processor B and the main program B to pass through a RAM (random access memory) of the processor B through the inter-processor interface circuit. ). Then, the processor B is activated by the boot program B and the main program B transferred to the RAM (RAM_B) of the processor B.

特開2006−202200号公報([0036]−[0037]段落)JP 2006-202200 A (paragraph [0036]-[0037])

特許文献1に記載されたマルチプロセッサシステムでは、プロセッサBに接続されたRAM(RAM_B)には、プロセッサAとプロセッサBとの両方が接続されている。このため、特許文献1に記載されたマルチプロセッサシステムは、プロセッサAによるRAM_BへのアクセスとプロセッサBによるRAM_Bへのアクセスとを調停するための、プロセッサ間インタフェース回路を必要とする。従って、プロセッサ間インタフェース回路を搭載することにより、特許文献1に記載されたマルチプロセッサシステムは、部品点数が増加し部品実装面積が拡大するため、小型化、低価格化及び低消費電力化が困難であるという課題があった。
(発明の目的)
本発明は、小型化、低価格化及び低消費電力化が可能な複数CPUの起動回路、複数CPUの起動方法及び複数CPUの起動回路のプログラムを実現することを目的とする。
In the multiprocessor system described in Patent Document 1, both the processor A and the processor B are connected to the RAM (RAM_B) connected to the processor B. For this reason, the multiprocessor system described in Patent Document 1 requires an inter-processor interface circuit for arbitrating between access to RAM_B by processor A and access to RAM_B by processor B. Therefore, since the interprocessor interface circuit is mounted, the multiprocessor system described in Patent Document 1 has an increased number of components and an increased component mounting area, making it difficult to reduce the size, cost, and power consumption. There was a problem of being.
(Object of invention)
An object of the present invention is to realize a startup circuit for a plurality of CPUs, a startup method for a plurality of CPUs, and a program for the startup circuit for a plurality of CPUs that can be reduced in size, reduced in price, and reduced in power consumption.

本発明の複数CPUの起動回路は、第1のCPUと、第2のCPUと、前記第1のCPUで実行される第1のプログラム及び前記第2のCPUで実行される第2のプログラムが格納される不揮発メモリと、前記不揮発メモリからコピーされた前記第1のプログラムが格納され、前記第1のCPUと接続された第1の揮発メモリと、前記不揮発メモリからコピーされた前記第2のプログラムが格納される第2の揮発メモリと、前記第1のCPUの指示に基づいて前記第1のCPUと前記第2のCPUとの一方のみを、前記第2の揮発メモリに接続する第1のスイッチと、を備え、前記第1のCPUは、前記第1のCPUと前記第2の揮発メモリとが前記第1のスイッチにより接続された状態で前記第2のプログラムを前記不揮発メモリから前記第2の揮発メモリにコピーして格納し、前記第2のCPUは、前記第2のCPUと前記第2の揮発メモリとが前記第1のスイッチにより接続された状態で、前記第1のCPUからの指示に基づいて、前記第2のプログラムをスタートさせる、ことを特徴とする。   The activation circuit for a plurality of CPUs according to the present invention includes a first CPU, a second CPU, a first program executed by the first CPU, and a second program executed by the second CPU. A non-volatile memory to be stored; a first volatile memory connected to the first CPU; wherein the first volatile memory copied from the non-volatile memory is stored; and the second volatile memory copied from the non-volatile memory. A first volatile memory that stores a program and a first volatile memory that connects only one of the first CPU and the second CPU based on an instruction from the first CPU to the second volatile memory. The first CPU transfers the second program from the non-volatile memory in a state where the first CPU and the second volatile memory are connected by the first switch. Second volatile memory The second CPU is instructed by the first CPU in a state where the second CPU and the second volatile memory are connected by the first switch. On the basis of this, the second program is started.

本発明の複数CPUの起動方法は、第1のCPUに接続された不揮発メモリから、前記第1のCPUで実行される第1のプログラムをコピーして前記第1のCPUに接続された第1の揮発メモリに格納し、第2のCPUに接続された第2の揮発メモリと前記第1のCPUとを、スイッチを用いて接続し、前記第2のCPUで実行される第2のプログラムを前記不揮発メモリからコピーして前記第2の揮発メモリに格納し、前記第2の揮発メモリと前記第2のCPUとを、前記スイッチを用いて接続し、前記第2のCPUに、前記第2のプログラムをスタートさせる指示を送信する、ことを特徴とする。   The activation method for a plurality of CPUs according to the present invention includes a first program connected to the first CPU by copying a first program executed by the first CPU from a nonvolatile memory connected to the first CPU. The second volatile memory stored in the volatile memory and connected to the second CPU is connected to the first CPU using a switch, and a second program executed by the second CPU is executed. Copying from the non-volatile memory and storing it in the second volatile memory, connecting the second volatile memory and the second CPU using the switch, and connecting the second CPU to the second CPU An instruction to start the program is transmitted.

本発明のCPU起動回路のプログラムは、第1のCPUと第2のCPUとを備えるCPU起動回路で用いられるプログラムであって、前記第1のCPUに、前記第1のCPUに接続された不揮発メモリから、前記第1のCPUで実行される第1のプログラムをコピーして前記第1のCPUに接続された第1の揮発メモリに格納する手順、前記第2のCPUに接続された第2の揮発メモリと前記第1のCPUとを、スイッチを用いて接続する手順、前記第2のCPUで実行される第2のプログラムを前記不揮発メモリからコピーして前記第2の揮発メモリに格納する手順、前記第2の揮発メモリと前記第2のCPUとを、前記スイッチを用いて接続する手順、前記第2のCPUに、前記第2のプログラムをスタートさせる指示を送信する手順、を実行させる。   The CPU startup circuit program according to the present invention is a program used in a CPU startup circuit including a first CPU and a second CPU, and is connected to the first CPU and a nonvolatile memory connected to the first CPU. A procedure for copying a first program executed by the first CPU from a memory and storing it in a first volatile memory connected to the first CPU; a second connected to the second CPU; The procedure for connecting the first volatile memory and the first CPU using a switch, and the second program executed by the second CPU is copied from the non-volatile memory and stored in the second volatile memory Executing a procedure, a procedure for connecting the second volatile memory and the second CPU using the switch, and a procedure for transmitting an instruction to start the second program to the second CPU. The

本発明は、小型化、低価格化及び低消費電力化が可能な複数CPUの起動回路、複数CPUの起動方法及び複数CPUの起動回路のプログラムを実現する。   The present invention realizes a startup circuit for a plurality of CPUs, a startup method for a plurality of CPUs, and a program for the startup circuit for a plurality of CPUs that can be reduced in size, reduced in price, and reduced in power consumption.

第1の実施形態のCPU起動回路の構成を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration of a CPU activation circuit according to the first embodiment. 第1の実施形態における、CPU起動回路の動作を示すフローチャートの例である。3 is an example of a flowchart showing an operation of a CPU activation circuit in the first embodiment. 第2の実施形態のCPU起動回路の構成を示すブロック図である。It is a block diagram which shows the structure of CPU starting circuit of 2nd Embodiment. 本発明に関連する、CPU起動回路の構成を示すブロック図である。It is a block diagram which shows the structure of the CPU starting circuit relevant to this invention. 本発明に関連する、CPU起動回路の起動手順を示すフローチャートである。It is a flowchart which shows the starting procedure of the CPU starting circuit relevant to this invention.

以下の実施形態で説明するCPU起動回路では、2個のCPU(CPU1及びCPU2)のうち最初に起動するCPU1で実行されるファームウエア1は、次に起動するCPU2のブートローダの機能を含む。さらに、CPU起動回路は、CPU2で実行されるプログラムが格納される揮発メモリ2をCPU1とCPU2との一方とのみ接続するためのスイッチを備える。   In the CPU activation circuit described in the following embodiment, the firmware 1 executed by the CPU 1 that is activated first among the two CPUs (CPU 1 and CPU 2) includes the function of the boot loader of the CPU 2 that is activated next. Further, the CPU activation circuit includes a switch for connecting the volatile memory 2 in which a program executed by the CPU 2 is stored with only one of the CPU 1 and the CPU 2.

このような構成を備えるCPU起動回路は、ファームウエア1がCPU2のブートローダの機能を具備すること、及び、揮発メモリ2の接続先を切り替えるスイッチを具備することで、CPU2に接続された不揮発メモリを不要とすることができる。   In the CPU start circuit having such a configuration, the firmware 1 has the function of the boot loader of the CPU 2 and the switch for switching the connection destination of the volatile memory 2 so that the nonvolatile memory connected to the CPU 2 is stored. It can be unnecessary.

(第1の実施形態)
図1は、本発明の第1の実施形態のCPU起動回路100の構成を示すブロック図である。CPU起動回路100では、2個のCPUが順次起動する。CPU起動回路100は、CPU1(11)、CPU2(12)、揮発メモリ1(10)、揮発メモリ2(13)、不揮発メモリ(14)及びスイッチ(25)を備える。
(First embodiment)
FIG. 1 is a block diagram showing the configuration of the CPU activation circuit 100 according to the first embodiment of the present invention. In the CPU activation circuit 100, two CPUs are activated sequentially. The CPU activation circuit 100 includes a CPU 1 (11), a CPU 2 (12), a volatile memory 1 (10), a volatile memory 2 (13), a nonvolatile memory (14), and a switch (25).

外部システム(1)は、CPU起動回路(100)の動作の開始時に、CPU1スタート信号(21)をCPU1(11)に送る。CPU1スタート信号(21)は、CPU1(11)をスタートさせるための信号である。不揮発メモリ(14)は、電源が供給されていなくとも記憶内容が失われないメモリであり、例えば、PROM(programmable read only memory)などのROMである。揮発メモリ1(10)及び揮発メモリ2(13)は、電源が供給されない場合には記憶内容が失われるメモリであり、例えば、DRAM(dynamic random access memory)などのRAMである。   The external system (1) sends a CPU1 start signal (21) to the CPU1 (11) at the start of the operation of the CPU activation circuit (100). The CPU1 start signal (21) is a signal for starting the CPU1 (11). The nonvolatile memory (14) is a memory whose stored contents are not lost even when power is not supplied, and is a ROM such as a PROM (programmable read only memory). The volatile memory 1 (10) and the volatile memory 2 (13) are memories whose stored contents are lost when power is not supplied, and are, for example, RAMs such as DRAM (dynamic random access memory).

不揮発メモリ(14)は、ブートローダ1(15A)、ファームウエア1(15)及びファームウエア2(16)を記憶する。ブートローダ1(15A)は、ファームウエア1を揮発メモリ1の所定のアドレスにコピーするためのプログラムである。ファームウエア1(15)は、CPU1(11)で実行されるプログラムである。ファームウエア2(16)は、CPU2(12)で実行されるプログラムである。ファームウエア1(15)は、ファームウエア2(16)を揮発メモリ2の所定のアドレスにコピーする機能をも備える。すなわち、ファームウエア1は、CPU2(12)のブートローダの機能を含む。   The nonvolatile memory (14) stores a boot loader 1 (15A), firmware 1 (15), and firmware 2 (16). The boot loader 1 (15A) is a program for copying the firmware 1 to a predetermined address of the volatile memory 1. The firmware 1 (15) is a program executed by the CPU 1 (11). The firmware 2 (16) is a program executed by the CPU 2 (12). The firmware 1 (15) also has a function of copying the firmware 2 (16) to a predetermined address of the volatile memory 2. That is, the firmware 1 includes a boot loader function of the CPU 2 (12).

スイッチ(25)は、CPU1(11)から出力されたスイッチ制御信号(23)の指示により、揮発メモリ2(13)が接続されるCPUを切り替える。スイッチ(25)は、揮発メモリ2(13)を、CPU1(11)とCPU2(12)との一方のみと接続する。   The switch (25) switches the CPU to which the volatile memory 2 (13) is connected according to the instruction of the switch control signal (23) output from the CPU 1 (11). The switch (25) connects the volatile memory 2 (13) to only one of the CPU1 (11) and the CPU2 (12).

CPU1(11)は、CPU1スタート信号(21)の受信を契機に、不揮発メモリ(14)から揮発メモリ1(10)のn番地にブートローダ1(15A)をコピーする。ブートローダ1(15A)は、揮発メモリ1(10)にブートローダ1(18)として記憶される。n番地は、CPU1(11)が、揮発メモリ1(10)上でブートローダ1(18)をスタートさせるアドレスである。揮発メモリ1(10)のn番地からスタートしたブートローダ1(18)は、不揮発メモリ1(14)に格納されているファームウエア1(15)を揮発メモリ1(10)のn1番地にファームウエア1(19)としてコピーする。n1番地は、CPU1(11)が、ファームウエア1(19)をスタートさせる、揮発メモリ1(10)のアドレスである。   When the CPU 1 (11) receives the CPU 1 start signal (21), the CPU 1 (11) copies the boot loader 1 (15A) from the nonvolatile memory (14) to the n address of the volatile memory 1 (10). The boot loader 1 (15A) is stored as the boot loader 1 (18) in the volatile memory 1 (10). The address n is an address at which the CPU 1 (11) starts the boot loader 1 (18) on the volatile memory 1 (10). The boot loader 1 (18) started from the address n of the volatile memory 1 (10) transfers the firmware 1 (15) stored in the nonvolatile memory 1 (14) to the firmware 1 at the address n1 of the volatile memory 1 (10). Copy as (19). The address n1 is an address of the volatile memory 1 (10) where the CPU 1 (11) starts the firmware 1 (19).

ファームウエア1(19)は、CPU1(11)に、CPU1(11)及びCPU2(12)の一方と、揮発メモリ2(13)とを接続するようにスイッチ(25)を制御させる機能を備える。また、ファームウエア1(19)が備えるCPU2(12)のブートローダの機能により、不揮発メモリ1(14)のファームウエア2(16)は、揮発メモリ2(13)のm番地にコピーされる。CPU1(11)は、ファームウエア1(19)の機能により、CPU2スタート信号(22)をCPU2(12)に送信する。CPU2(12)はCPU2スタート信号(22)の受信を契機に揮発メモリ2(13)のm番地からファームウエア2をスタートさせる。   The firmware 1 (19) has a function of causing the CPU 1 (11) to control the switch (25) so that one of the CPU 1 (11) and the CPU 2 (12) and the volatile memory 2 (13) are connected. Further, the firmware 2 (16) of the nonvolatile memory 1 (14) is copied to the address m of the volatile memory 2 (13) by the boot loader function of the CPU 2 (12) included in the firmware 1 (19). The CPU 1 (11) transmits a CPU 2 start signal (22) to the CPU 2 (12) by the function of the firmware 1 (19). The CPU 2 (12) starts the firmware 2 from the address m of the volatile memory 2 (13) upon receiving the CPU 2 start signal (22).

次に、図2に示すフローチャートを使用して、CPU起動回路(100)の動作を説明する。図2は、第1の実施形態における、CPU起動回路(100)の動作を示すフローチャートの例である。   Next, the operation of the CPU activation circuit (100) will be described using the flowchart shown in FIG. FIG. 2 is an example of a flowchart showing the operation of the CPU activation circuit (100) in the first embodiment.

図2を参照すると、外部システム(1)からCPU1(11)がCPU1スタート信号(21)を受信する(図2のステップS31)。ブートローダ1(15A)は、まず、ブートローダ1(15A)自身を揮発メモリ1(10)のn番地にコピーし(S32)、ブートローダ1(18)としてCPU1(11)の起動番地(n番地)からスタートする(S33)。   Referring to FIG. 2, CPU 1 (11) receives CPU 1 start signal (21) from external system (1) (step S31 in FIG. 2). The boot loader 1 (15A) first copies the boot loader 1 (15A) itself to the n address of the volatile memory 1 (10) (S32), and starts from the start address (n address) of the CPU 1 (11) as the boot loader 1 (18). Start (S33).

ブートローダ1(18)は、ファームウエア1(15)を、不揮発メモリ1(14)から揮発メモリ1(10)のn1番地にコピーする(S34)。揮発メモリ1(10)にコピーされたファームウエア1(19)がCPU1(11)上でスタートする(S35)と、CPU1(11)は、CPU1(11)と揮発メモリ2(13)とが接続されるようにスイッチ(25)を制御する(S36)。   The boot loader 1 (18) copies the firmware 1 (15) from the nonvolatile memory 1 (14) to the address n1 of the volatile memory 1 (10) (S34). When the firmware 1 (19) copied to the volatile memory 1 (10) starts on the CPU 1 (11) (S35), the CPU 1 (11) connects the CPU 1 (11) and the volatile memory 2 (13). The switch (25) is controlled as described above (S36).

CPU1(11)上でスタートしたファームウエア1(19)は、CPU2(12)のブートローダの機能を備えている。この機能により、ファームウエア1(19)は、不揮発メモリ1(14)に記憶されたファームウエア2(16)を不揮発メモリ(14)から揮発メモリ2(13)のm番地にコピーする(S37)。揮発メモリ2(13)へのファームウエア2のコピーが終了すると、CPU1(11)は、CPU2(12)と揮発メモリ2(13)とが接続されるように、スイッチ(25)を制御する(S38)。   The firmware 1 (19) started on the CPU 1 (11) has a boot loader function of the CPU 2 (12). With this function, the firmware 1 (19) copies the firmware 2 (16) stored in the nonvolatile memory 1 (14) from the nonvolatile memory (14) to the address m of the volatile memory 2 (13) (S37). . When copying of the firmware 2 to the volatile memory 2 (13) is completed, the CPU 1 (11) controls the switch (25) so that the CPU 2 (12) and the volatile memory 2 (13) are connected ( S38).

CPU2(12)と揮発メモリ2(13)とが接続されると、ファームウエア1(19)の機能により、CPU1(11)は、CPU2(12)にCPU2スタート信号(22)を送る(S39)。CPU2(12)がCPU2スタート信号(22)を受信することにより、ファームウエア2(20)が、CPU2(13)上で起動する(S40)。   When the CPU 2 (12) and the volatile memory 2 (13) are connected, the function of the firmware 1 (19) causes the CPU 1 (11) to send a CPU 2 start signal (22) to the CPU 2 (12) (S39). . When the CPU 2 (12) receives the CPU 2 start signal (22), the firmware 2 (20) is activated on the CPU 2 (13) (S40).

上述の手順により、CPU1(11)及びCPU2(12)が起動する。なお、以上の手順ではファームウエア1(19)にCPU2(12)のブートローダの機能が含まれているとして説明した。しかし、CPU2(12)のブートローダは、ファームウエア1(19)とは独立したプログラムでもよい。この場合、ブートローダ1(18)は、ステップS34においてファームウエア1(15)を不揮発メモリ1(14)から揮発メモリ1(10)のn1番地にコピーするとともに、CPU2(12)のブートローダをも揮発メモリ1(10)にコピーする。そして、例えば、ファームウエア1(19)からの呼び出しによりCPU2(12)のブートローダが実行される。   The CPU 1 (11) and the CPU 2 (12) are activated by the above procedure. In the above procedure, the firmware 1 (19) is described as including the boot loader function of the CPU 2 (12). However, the boot loader of the CPU 2 (12) may be a program independent of the firmware 1 (19). In this case, the boot loader 1 (18) copies the firmware 1 (15) from the nonvolatile memory 1 (14) to the address n1 of the volatile memory 1 (10) in step S34 and also volatilizes the boot loader of the CPU 2 (12). Copy to memory 1 (10). Then, for example, the boot loader of the CPU 2 (12) is executed by a call from the firmware 1 (19).

以上説明したように、CPU起動回路(100)の起動に必要なブートローダ1(15A)、ファームウエア1(15)及びファームウエア2(16)はCPU1(11)と接続された不揮発メモリ14に格納されている。ファームウエア1(15)は、CPU2(12)のブートローダの機能を備える。そして、ファームウエア2(16)は、ファームウエア1(15)が備える、当該ブートローダの機能により、スイッチ(25)を経由して揮発メモリ2(13)にコピーされる。   As described above, the boot loader 1 (15A), firmware 1 (15), and firmware 2 (16) necessary for starting the CPU startup circuit (100) are stored in the nonvolatile memory 14 connected to the CPU 1 (11). Has been. The firmware 1 (15) has a boot loader function of the CPU 2 (12). The firmware 2 (16) is copied to the volatile memory 2 (13) via the switch (25) by the function of the boot loader provided in the firmware 1 (15).

ファームウエア2(16)が揮発メモリ2(13)にコピーされると、スイッチ(25)によって、揮発メモリ2(13)がCPU2(12)と接続される。その後、ファームウエア1(19)が、CPU2(12)のスタート信号をCPU1(11)に送信させることで、揮発メモリ2(13)にコピーされたファームウエア2(20)がスタートする。従って、CPU2(12)は、CPU2(12)と接続された不揮発メモリ(すなわち、図4の不揮発メモリ2(95))を備えることなく、不揮発メモリ(14)から揮発メモリ2(13)にコピーされたファームウエア2(20)をスタートさせることができる。   When the firmware 2 (16) is copied to the volatile memory 2 (13), the volatile memory 2 (13) is connected to the CPU 2 (12) by the switch (25). Thereafter, the firmware 1 (19) transmits a start signal of the CPU 2 (12) to the CPU 1 (11), whereby the firmware 2 (20) copied to the volatile memory 2 (13) starts. Therefore, the CPU 2 (12) copies from the nonvolatile memory (14) to the volatile memory 2 (13) without including the nonvolatile memory connected to the CPU 2 (12) (that is, the nonvolatile memory 2 (95) in FIG. 4). Firmware 2 (20) thus prepared can be started.

このような特徴を備えるCPU起動回路(100)は、CPU起動回路の小型化、低価格化に加えて低消費電力化が可能である。その第1の理由は、2個のCPUを起動する場合に、通常はCPUごとに必要とされた不揮発メモリの数が1個で済むからである。   The CPU startup circuit (100) having such characteristics can reduce power consumption in addition to downsizing and cost reduction of the CPU startup circuit. The first reason is that when two CPUs are activated, usually only one non-volatile memory is required for each CPU.

第2の理由は、CPU起動回路(100)は、複数のCPUによる揮発メモリへのアクセスを調停するための、プロセッサ間インタフェース回路を必要としないからである。なぜならば、揮発メモリ2(13)は、スイッチ(25)により、CPU1(11)及びCPU2(12)の一方のみと接続されるため、揮発メモリ2(13)には、CPU1(11)とCPU2(12)とが同時に接続されることがないからである。その結果、CPU起動回路(100)は、アクセスを調停するためのプロセッサ間インタフェース回路を必要としない。さらに、プロセッサ間インタフェース回路が不要であることにより、CPU起動回路(100)は、消費電力が低減されるという効果も奏する。すなわち、CPU起動回路(100)は、小型化、低価格化に加えて低消費電力化が可能である。   The second reason is that the CPU activation circuit (100) does not need an inter-processor interface circuit for arbitrating access to the volatile memory by a plurality of CPUs. Because the volatile memory 2 (13) is connected to only one of the CPU 1 (11) and the CPU 2 (12) by the switch (25), the volatile memory 2 (13) includes the CPU 1 (11) and the CPU 2 This is because (12) is not connected simultaneously. As a result, the CPU activation circuit (100) does not require an inter-processor interface circuit for arbitrating access. Further, since the inter-processor interface circuit is unnecessary, the CPU activation circuit (100) also has an effect of reducing power consumption. That is, the CPU activation circuit (100) can reduce power consumption in addition to downsizing and cost reduction.

CPU起動回路(100)では、CPU2(12)のブートローダは揮発メモリ1(10)上のファームウエア1に含まれており、揮発メモリ2(13)にはロードされない。従って、CPU2(12)のブートローダが揮発メモリ2(13)上で実行される構成と比較して、CPU起動回路(100)では、CPU2(12)の起動時の揮発メモリ2(13)へのプログラムの転送時間が短縮される。さらに、この場合、CPU起動回路(100)では、揮発メモリ2(13)のメモリ消費量が低減される。   In the CPU activation circuit (100), the boot loader of the CPU 2 (12) is included in the firmware 1 on the volatile memory 1 (10) and is not loaded into the volatile memory 2 (13). Therefore, in comparison with the configuration in which the boot loader of the CPU 2 (12) is executed on the volatile memory 2 (13), the CPU activation circuit (100) stores the volatile memory 2 (13) when the CPU 2 (12) is activated. Program transfer time is reduced. Further, in this case, the CPU startup circuit (100) reduces the memory consumption of the volatile memory 2 (13).

(第1の実施形態の最小構成)
第1の実施形態で説明したCPU起動回路の効果は、以下の最小構成によっても得られる。すなわち、CPU起動回路は、CPU1(11)と、CPU2(12)と、不揮発メモリ(14)と、揮発メモリ(10、13)と、スイッチ(25)とを備える。
(Minimum configuration of the first embodiment)
The effect of the CPU activation circuit described in the first embodiment can also be obtained by the following minimum configuration. That is, the CPU activation circuit includes a CPU 1 (11), a CPU 2 (12), a nonvolatile memory (14), a volatile memory (10, 13), and a switch (25).

不揮発メモリ(14)には、CPU1(11)実行される第1のプログラム(ブートローダ1及びファームウエア1)及びCPU2(12)で実行される第2のプログラム(ファームウエア2)が格納される。揮発メモリ1(10)は、CPU1(11)と接続される。揮発メモリ1(10)には、不揮発メモリ(14)からコピーされた第1のプログラムが格納される。揮発メモリ2(13)には、不揮発メモリ(14)からコピーされた第2のプログラムが格納される。スイッチ(25)は、CPU1(11)の指示に基づいて、CPU1(11)とCPU2(12)との一方のみを、揮発メモリ2(13)に接続する。   The nonvolatile memory (14) stores a first program (boot loader 1 and firmware 1) executed by the CPU 1 (11) and a second program (firmware 2) executed by the CPU 2 (12). The volatile memory 1 (10) is connected to the CPU 1 (11). The volatile memory 1 (10) stores the first program copied from the nonvolatile memory (14). The volatile memory 2 (13) stores the second program copied from the nonvolatile memory (14). The switch (25) connects only one of the CPU1 (11) and the CPU2 (12) to the volatile memory 2 (13) based on an instruction from the CPU1 (11).

最小構成のCPU起動回路において、CPU1(11)は、CPU1(11)と揮発メモリ2(13)とがスイッチ(25)により接続された状態で、第2のプログラムを不揮発メモリ(14)から揮発メモリ2(13)にコピーする。そして、CPU2(12)と揮発メモリ2(13)とがスイッチ(25)により接続された状態で、CPU2(12)は、CPU1(11)からの指示に基づいて、第2のプログラムをスタートさせる。   In the CPU starting circuit having the minimum configuration, the CPU 1 (11) volatilizes the second program from the nonvolatile memory (14) in a state where the CPU 1 (11) and the volatile memory 2 (13) are connected by the switch (25). Copy to memory 2 (13). Then, with the CPU 2 (12) and the volatile memory 2 (13) connected by the switch (25), the CPU 2 (12) starts the second program based on an instruction from the CPU 1 (11). .

このような構成を備える最小構成のCPU起動回路も、必要な不揮発メモリ14は1個であり、また、不揮発メモリ2(13)へのアクセスを調停するためのプロセッサ間インタフェース回路を必要としない。従って、最小構成のCPU起動回路も、CPU起動回路の小型化、低価格化に加えて低消費電力化が可能である。   The minimum configuration CPU activation circuit having such a configuration also requires only one nonvolatile memory 14 and does not require an interprocessor interface circuit for arbitrating access to the nonvolatile memory 2 (13). Therefore, the CPU starting circuit with the minimum configuration can reduce power consumption in addition to downsizing and cost reduction of the CPU starting circuit.

(第2の実施形態)
図3は、本発明の第2の実施形態のCPU起動回路(200)の構成を示すブロック図である。図3に示したCPU起動回路(200)の構成は、図1に示したCPU起動回路(100)の構成と比較して、CPU3(12A)、スイッチ(25A)及び揮発メモリ3(13A)をさらに備える点で相違する。また、不揮発メモリ(14)には、第1の実施形態で説明したブートローダ1(15A)、ファームウエア1(15)及びファームウエア2(16)に加えて、ファームウエア3(16A)が記憶されている。
(Second Embodiment)
FIG. 3 is a block diagram showing the configuration of the CPU activation circuit (200) according to the second embodiment of the present invention. The configuration of the CPU activation circuit (200) shown in FIG. 3 includes a CPU 3 (12A), a switch (25A), and a volatile memory 3 (13A) as compared with the configuration of the CPU activation circuit (100) shown in FIG. Furthermore, it differs in the point provided. The nonvolatile memory (14) stores firmware 3 (16A) in addition to the boot loader 1 (15A), firmware 1 (15), and firmware 2 (16) described in the first embodiment. ing.

CPU起動回路(200)の、CPU1(11)及びCPU2(12)の起動手順は、第1の実施形態と同様である。以下の説明では、図1で説明した各要素には同一の参照符号を付して、図1との相違点について説明する。   The startup procedure of the CPU 1 (11) and the CPU 2 (12) of the CPU startup circuit (200) is the same as that of the first embodiment. In the following description, the same reference numerals are assigned to the elements described in FIG. 1, and differences from FIG. 1 will be described.

図2で説明した手順によりCPU1(11)及びCPU2(12)の起動が完了すると、CPU1(11)は、揮発メモリ3(13A)とCPU1(11)とが接続されるように、スイッチ制御信号(23)によってスイッチ(25A)を制御する。そして、CPU1(11)は、不揮発メモリ(14)からファームウエア3(16A)を揮発メモリ3(13A)にコピーして、ファームウエア3(20A)とする。ファームウエア3(16A)を揮発メモリ3(13A)にコピーする機能は、ファームウエア1(19)によって提供される。   When the activation of the CPU 1 (11) and the CPU 2 (12) is completed by the procedure described in FIG. 2, the CPU 1 (11) switches the switch control signal so that the volatile memory 3 (13A) and the CPU 1 (11) are connected. The switch (25A) is controlled by (23). Then, the CPU 1 (11) copies the firmware 3 (16A) from the nonvolatile memory (14) to the volatile memory 3 (13A) to obtain the firmware 3 (20A). The function of copying the firmware 3 (16A) to the volatile memory 3 (13A) is provided by the firmware 1 (19).

ファームウエア3(16A)のコピーが完了すると、CPU1(11)は、揮発メモリ3(13A)とCPU3(12A)とが接続されるように、スイッチ(25A)を制御する。その後、CPU1(11)がCPU3スタート信号(22A)をCPU3(12A)に送信すると、CPU3(12A)がファームウエア3により起動する。   When the copy of the firmware 3 (16A) is completed, the CPU 1 (11) controls the switch (25A) so that the volatile memory 3 (13A) and the CPU 3 (12A) are connected. Thereafter, when the CPU 1 (11) transmits a CPU 3 start signal (22A) to the CPU 3 (12A), the CPU 3 (12A) is activated by the firmware 3.

このような手順により、図3に示したCPU起動回路(200)は、3個のCPUを順次起動することができる。そして、CPU起動回路(200)は、第1の実施形態のCPU起動回路(100)と同様に、必要な不揮発メモリ14は1個であり、また、不揮発メモリ2(13)へのアクセスを調停するためのプロセッサ間インタフェース回路を必要としない。従って、第2の実施形態のCPU起動回路(200)も、CPU起動回路の小型化、低価格化に加えて低消費電力化が可能である。   With such a procedure, the CPU activation circuit (200) shown in FIG. 3 can sequentially activate the three CPUs. The CPU startup circuit (200), like the CPU startup circuit (100) of the first embodiment, requires only one nonvolatile memory 14, and arbitrates access to the nonvolatile memory 2 (13). This eliminates the need for an interprocessor interface circuit. Therefore, the CPU start circuit (200) of the second embodiment can reduce power consumption in addition to downsizing and cost reduction of the CPU start circuit.

(第2の実施形態の変形例)
第2の実施形態では、3個のCPUを備えるCPU起動回路(200)について説明した。しかし、図3の構成にならって、さらに他のCPU及び揮発メモリをCPU2(12)及びCPU3(12A)と並列に接続することで、4個以上のCPUの起動回路を構成することも可能である。
(Modification of the second embodiment)
In the second embodiment, the CPU activation circuit (200) including three CPUs has been described. However, following the configuration of FIG. 3, it is also possible to configure four or more CPU startup circuits by connecting other CPUs and volatile memories in parallel with CPU 2 (12) and CPU 3 (12A). is there.

以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。   Although the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

1、3 外部システム
100、900 CPU起動回路
10、90 揮発メモリ1
11、91 CPU1
12、92 CPU2
12A CPU3
13、93 揮発メモリ2
13A 揮発メモリ3
14 不揮発メモリ
15、19、96、99 ファームウエア1(FW1)
15A、18、96A、98 ブートローダ1(BL1)
16、20、100、103 ファームウエア2(FW2)
16A ファームウエア3(FW3)
100A、102 ブートローダ2(BL2)
21、104 CPU1スタート信号
22、105 CPU2スタート信号
22A CPU3スタート信号
23 スイッチ制御信号
25、25A スイッチ
94 不揮発メモリ1
95 不揮発メモリ2
1, 3 External system 100, 900 CPU activation circuit 10, 90 Volatile memory 1
11, 91 CPU1
12, 92 CPU2
12A CPU3
13, 93 Volatile memory 2
13A volatile memory 3
14 Nonvolatile memory 15, 19, 96, 99 Firmware 1 (FW1)
15A, 18, 96A, 98 Boot loader 1 (BL1)
16, 20, 100, 103 Firmware 2 (FW2)
16A Firmware 3 (FW3)
100A, 102 Boot loader 2 (BL2)
21, 104 CPU1 start signal 22, 105 CPU2 start signal 22A CPU3 start signal 23 Switch control signal 25, 25A Switch 94 Non-volatile memory 1
95 Nonvolatile memory 2

Claims (6)

第1のCPU(central processing unit)と、
第2のCPUと、
前記第1のCPUで実行される第1のプログラム及び前記第2のCPUで実行される第2のプログラムが格納される不揮発メモリと、
前記不揮発メモリからコピーされた前記第1のプログラムが格納され、前記第1のCP
Uと接続された第1の揮発メモリと、
前記不揮発メモリからコピーされた前記第2のプログラムが格納される第2の揮発メモリと、
前記第1のCPUの指示に基づいて前記第1のCPUと前記第2のCPUとの一方のみを、前記第2の揮発メモリに接続する第1のスイッチと、を備え、
前記第1のCPUは、前記第1のCPUと前記第2の揮発メモリとが前記第1のスイッチにより接続された状態で前記第2のプログラムを前記不揮発メモリから前記第2の揮発メモリにコピーして格納し、
前記第2のCPUは、前記第2のCPUと前記第2の揮発メモリとが前記第1のスイッチにより接続された状態で、前記第1のCPUからの指示に基づいて、前記第2のプログラムをスタートさせる、複数CPUの起動回路であって、
前記第1のプログラムは、第1のブートプログラム、第2のブートプログラム、及び、第1のファームウエアを含み、
前記第2のプログラムは、第2のファームウエアを含み、
前記第1のCPUは、
前記第1のブートプログラムによって、前記不揮発メモリから前記第1のファームウエア及び前記第2のブートプログラムを前記第1の揮発メモリにコピーして格納し、
前記第1のスイッチを用いて前記第1のCPUと前記第2の揮発メモリとを接続した後に、
前記第2のブートプログラムによって前記不揮発メモリから前記第2のファームウエアを前記第2の揮発メモリにコピーして格納し、
前記第2のファームウエアを前記第2の揮発メモリにコピーした後に、前記第1のスイッチを用いて前記第2のCPUと前記第2の揮発メモリとを接続し、
前記第2のファームウエアをスタートさせる指示を前記第2のCPUに送信する、
ことを特徴とする複数CPUの起動回路
A first CPU (central processing unit);
A second CPU;
A nonvolatile memory storing a first program executed by the first CPU and a second program executed by the second CPU;
The first program copied from the nonvolatile memory is stored, and the first CP is stored.
A first volatile memory connected to U;
A second volatile memory in which the second program copied from the nonvolatile memory is stored;
A first switch that connects only one of the first CPU and the second CPU to the second volatile memory based on an instruction from the first CPU;
The first CPU copies the second program from the non-volatile memory to the second volatile memory in a state where the first CPU and the second volatile memory are connected by the first switch. And store
The second CPU executes the second program based on an instruction from the first CPU in a state where the second CPU and the second volatile memory are connected by the first switch. Starting circuit of a plurality of CPUs,
The first program includes a first boot program, a second boot program, and a first firmware,
The second program includes second firmware,
The first CPU is
The first boot program copies and stores the first firmware and the second boot program from the nonvolatile memory to the first volatile memory,
After connecting the first CPU and the second volatile memory using the first switch,
The second boot program copies and stores the second firmware from the non-volatile memory to the second volatile memory,
After copying the second firmware to the second volatile memory, connecting the second CPU and the second volatile memory using the first switch,
Sending an instruction to start the second firmware to the second CPU;
A startup circuit for a plurality of CPUs .
前記第2のブートプログラムは、前記第1のファームウエアに含まれていることを特徴とする、請求項1に記載された複数CPUの起動回路 2. The multi-CPU startup circuit according to claim 1, wherein the second boot program is included in the first firmware . 3. さらに、
第3のCPUと、
前記第3のCPUで実行される第3のプログラムが格納される第3の揮発メモリと、
前記第1のCPUの指示に基づいて前記第1のCPUと前記第3のCPUとの一方のみを、前記第3の揮発メモリに接続する第2のスイッチと、を備え、
前記不揮発メモリは、さらに、前記第3のプログラムを格納し、
前記第1のCPUは、前記第1のCPUと前記第3の揮発メモリとが前記第2のスイッチにより接続された状態で、前記第3のプログラムを前記不揮発メモリから前記第3の揮発メモリにコピーして格納し、
前記第3のCPUは、前記第3のCPUと前記第3の揮発メモリとが前記第2のスイッチにより接続された状態で、前記第1のCPUからの指示に基づいて、前記第3のプログラムをスタートさせる、
請求項1又は2に記載された複数CPUの起動回路
further,
A third CPU;
A third volatile memory storing a third program executed by the third CPU;
A second switch that connects only one of the first CPU and the third CPU to the third volatile memory based on an instruction from the first CPU;
The nonvolatile memory further stores the third program,
The first CPU transfers the third program from the nonvolatile memory to the third volatile memory in a state where the first CPU and the third volatile memory are connected by the second switch. Copy and store,
The third CPU is configured to execute the third program based on an instruction from the first CPU in a state where the third CPU and the third volatile memory are connected by the second switch. Start,
A startup circuit for a plurality of CPUs according to claim 1 or 2 .
第1のCPU(central processing unit)に接続された不揮発メモリから、前記第1のCPUで実行される第1のプログラムをコピーして前記第1のCPUに接続された第1の揮発メモリに格納し、
第2のCPUに接続された第2の揮発メモリと前記第1のCPUとを、スイッチを用いて接続し、
前記第2のCPUで実行される第2のプログラムを前記不揮発メモリからコピーして前記第2の揮発メモリに格納し、
前記第2の揮発メモリと前記第2のCPUとを、前記スイッチを用いて接続し、
前記第2のCPUに、前記第2のプログラムをスタートさせる指示を送信する、
複数CPUの起動方法であって、
前記第1のプログラムは、第1のブートプログラム、第2のブートプログラム、及び、第1のファームウエアを含み、
前記第2のプログラムは、第2のファームウエアを含み、
前記第1のCPUは、
前記第1のブートプログラムによって、前記不揮発メモリから前記第1のファームウエア及び前記第2のブートプログラムを前記第1の揮発メモリにコピーして格納し、
前記スイッチを用いて前記第1のCPUと前記第2の揮発メモリとを接続した後に、
前記第2のブートプログラムによって前記不揮発メモリから前記第2のファームウエアを前記第2の揮発メモリにコピーして格納し、
前記第2のファームウエアを前記第2の揮発メモリにコピーした後に、前記スイッチを用いて前記第2のCPUと前記第2の揮発メモリとを接続し、
前記第2のファームウエアをスタートさせる指示を前記第2のCPUに送信する、
ことを特徴とする複数CPUの起動方法
A first program executed by the first CPU is copied from a non-volatile memory connected to a first CPU (central processing unit) and stored in a first volatile memory connected to the first CPU. And
A second volatile memory connected to a second CPU and the first CPU are connected using a switch;
A second program executed by the second CPU is copied from the nonvolatile memory and stored in the second volatile memory;
Connecting the second volatile memory and the second CPU using the switch;
An instruction to start the second program is sent to the second CPU;
A method for starting a plurality of CPUs,
The first program includes a first boot program, a second boot program, and a first firmware,
The second program includes second firmware,
The first CPU is
The first boot program copies and stores the first firmware and the second boot program from the nonvolatile memory to the first volatile memory,
After connecting the first CPU and the second volatile memory using the switch,
The second boot program copies and stores the second firmware from the non-volatile memory to the second volatile memory,
After copying the second firmware to the second volatile memory, connecting the second CPU and the second volatile memory using the switch,
Sending an instruction to start the second firmware to the second CPU;
A method for starting a plurality of CPUs .
前記第2のブートプログラムは、前記第1のファームウエアに含まれていることを特徴とする、請求項4に記載された複数CPUの起動方法 5. The method for starting a plurality of CPUs according to claim 4, wherein the second boot program is included in the first firmware . 第1のCPU(central processing unit)と第2のCPUとを備えるCPU起動回路で用いられるプログラムであって、前記第1のCPUに、
前記第1のCPUに接続された不揮発メモリから、前記第1のCPUで実行される第1のプログラムをコピーして前記第1のCPUに接続された第1の揮発メモリに格納する手順、
前記第2のCPUに接続された第2の揮発メモリと前記第1のCPUとを、スイッチを用いて接続する手順、
前記第2のCPUで実行される第2のプログラムを前記不揮発メモリからコピーして前記第2の揮発メモリに格納する手順、
前記第2の揮発メモリと前記第2のCPUとを、前記スイッチを用いて接続する手順、
前記第2のCPUに、前記第2のプログラムをスタートさせる指示を送信する手順、
を実行させるための、複数CPUの起動回路のプログラムであって、
前記第1のプログラムは、第1のブートプログラム、第2のブートプログラム、及び、第1のファームウエアを含み、
前記第2のプログラムは、第2のファームウエアを含み、
前記第1のCPUは、
前記第1のブートプログラムによって、前記不揮発メモリから前記第1のファームウエア及び前記第2のブートプログラムを前記第1の揮発メモリにコピーして格納し、
前記スイッチを用いて前記第1のCPUと前記第2の揮発メモリとを接続した後に、
前記第2のブートプログラムによって前記不揮発メモリから前記第2のファームウエアを前記第2の揮発メモリにコピーして格納し、
前記第2のファームウエアを前記第2の揮発メモリにコピーした後に、前記スイッチを用いて前記第2のCPUと前記第2の揮発メモリとを接続し、
前記第2のファームウエアをスタートさせる指示を前記第2のCPUに送信する、
ことを特徴とする複数CPUの起動回路のプログラム
A program used in a CPU activation circuit including a first CPU (central processing unit) and a second CPU, the first CPU having
A procedure for copying a first program executed by the first CPU from a nonvolatile memory connected to the first CPU and storing the first program in a first volatile memory connected to the first CPU;
Connecting the second volatile memory connected to the second CPU and the first CPU using a switch;
A procedure for copying a second program executed by the second CPU from the nonvolatile memory and storing the second program in the second volatile memory;
Connecting the second volatile memory and the second CPU using the switch;
A procedure for transmitting an instruction to start the second program to the second CPU;
A program of a startup circuit of a plurality of CPUs for executing
The first program includes a first boot program, a second boot program, and a first firmware,
The second program includes second firmware,
The first CPU is
The first boot program copies and stores the first firmware and the second boot program from the nonvolatile memory to the first volatile memory,
After connecting the first CPU and the second volatile memory using the switch,
The second boot program copies and stores the second firmware from the non-volatile memory to the second volatile memory,
After copying the second firmware to the second volatile memory, connecting the second CPU and the second volatile memory using the switch,
Sending an instruction to start the second firmware to the second CPU;
A startup circuit program for a plurality of CPUs .
JP2014056623A 2014-03-19 2014-03-19 Multiple CPU start circuit, multiple CPU start method, and multiple CPU start circuit program Active JP6303670B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014056623A JP6303670B2 (en) 2014-03-19 2014-03-19 Multiple CPU start circuit, multiple CPU start method, and multiple CPU start circuit program
CN201510122871.5A CN104932914B (en) 2014-03-19 2015-03-19 Multi -CPU start-up circuit and multi -CPU start method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014056623A JP6303670B2 (en) 2014-03-19 2014-03-19 Multiple CPU start circuit, multiple CPU start method, and multiple CPU start circuit program

Publications (2)

Publication Number Publication Date
JP2015179411A JP2015179411A (en) 2015-10-08
JP6303670B2 true JP6303670B2 (en) 2018-04-04

Family

ID=54120089

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014056623A Active JP6303670B2 (en) 2014-03-19 2014-03-19 Multiple CPU start circuit, multiple CPU start method, and multiple CPU start circuit program

Country Status (2)

Country Link
JP (1) JP6303670B2 (en)
CN (1) CN104932914B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3061565B1 (en) * 2017-01-04 2019-04-26 Stmicroelectronics (Rousset) Sas OPERATION OF A MICROCONTROLLER IN LOW POWER MODE
CN109086086B (en) * 2018-08-06 2021-06-08 深圳忆联信息系统有限公司 Starting method and device of non-space-sharing multi-core CPU
CN110858254A (en) * 2018-08-22 2020-03-03 北京芯愿景软件技术股份有限公司 Safety chip
CN109901890B (en) * 2019-03-07 2020-12-01 深圳忆联信息系统有限公司 Method and device for loading multi-core firmware by controller, computer equipment and storage medium
US11307779B2 (en) * 2019-09-11 2022-04-19 Ceremorphic, Inc. System and method for flash and RAM allocation for reduced power consumption in a processor
JP7220397B2 (en) * 2019-12-09 2023-02-10 パナソニックIpマネジメント株式会社 Information processing device and information processing method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63310060A (en) * 1987-06-12 1988-12-19 Yaskawa Electric Mfg Co Ltd Multiprocessor system
JPH03208158A (en) * 1990-01-10 1991-09-11 Ricoh Co Ltd Electronic controller
JP2003167751A (en) * 2001-04-24 2003-06-13 Ricoh Co Ltd Processor processing method and processor system
JP2005092515A (en) * 2003-09-17 2005-04-07 Seiko Epson Corp Computer system and game device
JP2007213292A (en) * 2006-02-09 2007-08-23 Nec Electronics Corp Method for starting multiprocessor system and slave system
US8255621B2 (en) * 2006-06-27 2012-08-28 Nec Corporation Multiprocessor system and portable terminal using the same
JP4804317B2 (en) * 2006-11-27 2011-11-02 キヤノン株式会社 Electronics
KR100855580B1 (en) * 2007-06-18 2008-09-01 삼성전자주식회사 Multi-path accessible semiconductor memory device having processor reset function and method for controlling reset therefor and multi-processor system
JP2013041436A (en) * 2011-08-17 2013-02-28 Nec Engineering Ltd Multiprocessor system and starting method

Also Published As

Publication number Publication date
JP2015179411A (en) 2015-10-08
CN104932914B (en) 2019-07-12
CN104932914A (en) 2015-09-23

Similar Documents

Publication Publication Date Title
JP6303670B2 (en) Multiple CPU start circuit, multiple CPU start method, and multiple CPU start circuit program
JP6022650B2 (en) Technology for routing service chain flow packets between virtual machines
CN102388366B (en) Method and device for realizing compatibility of different processors
KR20070097538A (en) Operating-system-friendly bootloader
KR20070082229A (en) Multi-processor system and method of initializing thereof
US20080148034A1 (en) Method and apparatus for booting independent operating systems in a multi-processor core integrated circuit
WO2020177577A1 (en) Method and apparatus for controller to load multi-core firmware, and computer device
TW201638771A (en) Microcontroller device with multiple independent microcontrollers
TW201638772A (en) Low-pin microcontroller device with multiple independent microcontrollers
JP2016025663A (en) Selecting network
WO2009144892A1 (en) Device emulation support device, device emulation support method, device emulation support circuit, and information processor
US20140019509A1 (en) Parallel processing system and operation method of parallel processing system
US9268577B2 (en) Information processing apparatus
JP7093979B2 (en) Device proxy device and computer system including it
US20190132277A1 (en) Slave device for performing address resolution protocol and operating method thereof
US8402260B2 (en) Data processing apparatus having address conversion circuit
KR20220072748A (en) Head of line entry processing in a buffer memory device
CN109358903B (en) Data access device and access error notification method
JP2007102544A (en) Digital signal processor system and boot method therefor
JP2017161954A (en) Data processing system, data processing method, and program
JP2001256055A (en) Program download system
JP2009217336A (en) Computer system, network boot load system, and its boot load method
JPS63310060A (en) Multiprocessor system
US11675947B2 (en) Multidimensional FPGA virtualization
US9213663B2 (en) Output input control apparatus and control method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171031

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180219

R150 Certificate of patent or registration of utility model

Ref document number: 6303670

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150