USPatent applicationPatented

Dual-processor system and control method thereof

Granted 19 Nov 2019 · 1 office action

Current assignee: Xiamen Sigmastar Technology Ltd · originally XIAMEN SIGMASTAR TECHNOLOGY LTD.

Law firm: Law firm · Log in to unlock

Attorney: Attorney · Log in to unlock

Inventors: Hong-Chi Chen, Fang-Sheng Lin, Lin-Chung Tsai, Chih-Hsiang Chiu · Examiner: Elias Mamo · AU 2184 · TC 2100

Life of the application

13 dated events
⤢ drag to zoom201620182020202220242026202820302032203420362038ProsecutionOwnershipTerm & fees
ProsecutionOwnershipTerm & feeshover for detail · click to open

Abstract

A dual-processor system includes a power supply, a temporary memory, a non-volatile memory and two processors. The non-volatile memory stores an initialization program code, a first configuration file corresponding to a first operating system, and a second configuration file corresponding to a second operating system. Compared to the first operating system, the second operating system has a shorter interrupt latency and a shorter thread switching latency. After the power supply starts to supply power, the first processor executes the initialization program code to perform operations of initializing the temporary memory, loading the second configuration file into the temporary memory, notifying the second processor to fetch the second configuration file from the temporary buffer, loading the first configuration rile into the temporary memory and establishing the first operating system according to the first configuration file.

Description

8 parts
›This application claims the benefit of U.S. provisional…

This application claims the benefit of U.S. provisional application Ser. No. 62/313,153, filed Mar. 25, 2016, the subject matter of which is incorporated herein by reference.

BACKGROUND OF THE INVENTION
›Field of the Invention

The invention relates to an electronic system comprising dual processors.

›Description of the Related Art

Under the consideration of convenience, an outdoor surveillance equipment is usually powered by a battery. Therefore, how to reduce power consumption to prolong the utilization time of a battery is one essential design goal.

To prevent missing critical images, a surveillance system starts video capturing once a change arises in the ambient environment. To prevent a latency caused by a boot process, the surveillance system usually keeps staying in a standby state. However, being in the standby state over an extended period of time results in a large amount of power consumption and shortens the utilization time of the battery.

›SUMMARY OF THE INVENTION

The invention is directed to a dual-processor system and a control method thereof to solve the above issues.

A dual-processor system is provided according to an embodiment of the present invention. The dual-processor system includes a power supply, a temporary memory, a non-volatile memory, a first processor and a second processor. The non-volatile memory stores an initialization program code, a first configuration file corresponding to a first operating system, and a second configuration file corresponding to a second operating system. Compared to the first operating system, the second operating system has a shorter interrupt latency and a shorter thread switching latency. The first processor is predetermined to operate under the first operating system. The processor is predetermined to operate under the second operating system. After the power supply starts to supply power, the first processor loads the initialization program code from the temporarily memory and executes the initialization program code to sequentially perform operations of initializing the temporary memory, loading the second configuration file from the non-volatile memory into the temporarily memory, notifying the second processor to fetch the second configuration file from the temporary memory to establish the second operating system, loading the first configuration file from the non-volatile memory into the temporary memory and establishing the first operating system according to the first configuration file.

A control method for a dual-processor system is further provided according to another embodiment of the present invention. The dual-processor system includes a power supply, a temporary memory, a non-volatile memory, a first processor and a second processor. The non-volatile memory stores a first configuration file corresponding to a first operating system, and a second configuration file corresponding to a second operating system. Compared to the first operating system, the second operating system has a shorter interrupt latency and a shorter thread switching latency. According to the control method, after the power supply starts to supply power, the first processor sequentially performs operations of initializing the temporary memory, loading the second configuration file from the non-volatile memory into the temporary memory, notifying the second processor to fetch the second configuration file from the temporary memory to establish the second operating system, loading the first configuration file from the non-volatile into the temporary memory, and establishing the first operating system according to the first configuration file.

The above and other aspects of the invention will become better understood with regard to the following detailed description of the non-limiting embodiments. The following description is made with reference to the accompanying drawings.

›BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a dual-processor system according to an embodiment of the present invention;

FIG. 2 is an exemplary storage space configuration in a temporary memory;

FIG. 3 is a flowchart of an initialization process according to an embodiment of the present invention;

FIG. 4 is a block diagram of a dual-processor system according to another embodiment of the present invention;

FIG. 5 is a block diagram of a dual-processor system according to another embodiment of the present invention;

FIG. 6 is a block diagram of a dual-processor system according to another embodiment of the present invention; and

FIG. 7 is a flowchart of an initialization process according to another embodiment of the present invention.

It should be noted that, the drawings of the present invention include functional block diagrams of multiple functional modules related to one another. These drawings are not detailed circuit diagrams, and connection lines therein are for indicating signal flows only. The interactions between the functional elements/or processes are not necessarily achieved through direct electrical connections. Further, functions of the individual elements are not necessarily distributed as depicted in the drawings, and separate blocks are not necessarily implemented by separate electronic elements.

›DETAILED DESCRIPTION OF THE INVENTION · 1 of 2

FIG. 1 shows a dual-processor system 100 according to an embodiment of the present invention. The dual-processor system 100 includes a power supply 11 , a temporary memory 12 , a non-volatile memory 13 , a first processor 14 and a second processor 15 . In a waiting period, i.e., when the dual-processor system 100 is not required to perform a task such as video capturing, the power supply 11 does not supply power to the first processor 14 and the second processor 15 . In practice, the power supply 11 may be, for example but not limited to, a battery.

The scope of the present invention is not limited to a specific storage mechanism. The temporary memory 12 may be a static random access memory (SRAM) or a dynamic random access memory (DRAM), and the non-volatile memory 13 may be a read-only memory (ROM) or a flash memory. The present invention is not limited to the above examples.

FIG. 2 shows an example of a memory storage configuration of the temporary memory 12 . A storage region 12 A is accessible to only the first processor 14 ; storage regions 12 B and 12 C are accessible to both of the first processor 14 and the second processor 15 .

The non-volatile memory 13 stores an initialization program code, a first configuration file corresponding to a first operating system, and a second configuration file corresponding to a second operating system. More specifically, a configuration file includes a program code and associated data for a processor to accordingly establish an operating system. It should be noted that, implementation details of establishing an operating system according to a configuration file are generally known to one person skilled in the art, and shall be omitted herein.

In the dual-processor system 100 , the first processor 14 is preset to operate under the first operating system, and the second processor 15 is preset to operate under the second operating system. Further, compared to the first operating system, the second operating system has a shorter interrupt latency and a shorter thread switching latency. For example but not limited to, the first operating system may be a Linux operating system, and the second operating system may be a real-time operating system (RTOS).

In one embodiment, when the power supply 11 starts to supply power, the temporary memory 12 , the non-volatile memory 13 , the first processor 14 and the second processor 15 are powered. First, the first processor 14 may load the initialization program code from the non-volatile memory 13 into an internal memory (not shown), which may be an SRAM have a capacity for sufficiently storing the initialization program code. The first processor 14 then starts executing the initialization program code to perform an initialization process 300 shown in FIG. 3 .

Referring to FIG. 3 , in step S 31 , the first processor 14 initializes the temporary memory 12 to cause the temporary memory 12 to be accessible to the first processor 14 and the second processor 15 . In step S 32 , the first processor 14 loads the second configuration file from the non-volatile 13 into the temporary memory 12 , e.g., storing the second configuration file into the storage region 12 B of the temporary memory 12 . In step S 33 , the first processor 14 notifies the second processor 15 to start establishing the second operating system. For example, the first processor 14 sets a register of the second processor 15 to trigger the second processor 15 to start establishing the second operating system according to the second configuration file stored in the storage region 12 B of the temporary memory 12 . In step S 34 , the first processor 14 loads the first configuration file from the non-volatile memory 13 into the temporary memory 12 , e.g., storing the first configuration file to the storage region 12 A. In step S 35 , the first processor 14 establishes the first operating system according to the first configuration file stored in the storage region 12 A.

Known from the above description, the first processor 14 is prioritized to assist the second processor 15 to establish the second operating system before it starts establishing its first operating system. Compared to the first operating system (e.g., a Linux operating system), because the second operating system (e.g., an RTOS) has a shorter interrupt latency and a shorter thread switching latency, the second processor 15 can establish the second operating system before the first processor 14 completes establishing the first operating system. Thus, even the dual-processor system 100 does not keep staying in a standby state, once the power supply 11 starts to supply power, the second processor 15 in the dual-processor system 100 is capable of completing establishing the second operating system and starting performing a task. In one embodiment, the second processor 15 starts performing a task of capturing an external update, before the first processor completes establishing the first operating system. Thus, the dual-processor system 100 may be promptly activated to perform the task of video capturing to minimize the probability of missing critical images. Further, as the dual-processor system 100 may be promptly activated to perform the task of video capturing without being in a standby state over an extended period of time, power consumption is saved and a utilization time of a battery is prolonged.

Referring to FIG. 4 , the dual-processor system 100 may further include a capturing element 16 coupled to the second processor 15 and the temporary memory 12 . In one embodiment, after completing establishing the second operating system (e.g., an RTOS), the second processor 15 executes a driver of the capturing element 16 , so as to control the capturing element 16 to capture an external update and to store the external update to the storage region 12 C in the temporary memory 12 . For example, the external update may be a still image, a dynamic image or a sound, and the capturing element 16 may include a photographing device, a video recording device or a sound recording device. In one embodiment, before storing the external update to the temporary memory 12 , the second processor 15 may perform a compression process on the external update received from the capturing element 16 , and store the compressed external update to the storage region 12 C of the temporary memory 12 .

›DETAILED DESCRIPTION OF THE INVENTION · 2 of 2

Referring to FIG. 5 , the dual-processor system 100 may further include a detection device 17 coupled to the power supply 11 . The detection device 17 detects an ambient environment condition, and requests the power supply 11 to start supplying power when the ambient environment condition satisfies a predetermined condition. For example, the detection device 17 may be realized by an infrared detector cooperating with a power control module (PMU), and the predetermined condition may be detecting a movement of an external object. When the infrared detector detects a movement of an external object, the infrared detector transmits a signal to the PMU to start supplying power to the components in the dual-processor system 100 , e.g., the temporary memory 12 , the first processor 14 , the second processor 15 and the capturing element 16 .

Referring to FIG. 6 , the dual-processor system 100 may further include a transmission device 18 coupled to the first processor 14 . In one embodiment, after completing establishing the first operating system (e.g., a Linux operating system), the first processor 14 may fetch the external update from the storage region 12 C of the temporary memory 12 , and request the transmission device 18 to send the external update to a remote storage system, a surveillance system or a mobile device. For example, the transmission device 18 may be a wireless transmission chip.

In one embodiment, as shown in FIG. 7 , the initialization process 300 may further include step S 36 between steps S 31 and S 32 . In step S 36 , the temporary memory 12 , the non-volatile memory 13 , the first processor 14 or the second processor 15 is set to operate at a rated speed i.e., a maximum speed). For example, the temporary memory 12 , the non-volatile memory 13 , the first processor 14 and the second processor 15 are all set to operate at a rated speed, and the dual-processor system 100 is allowed to more promptly start operating.

In the above embodiments, the second processor 16 executes the driver of the capturing element 16 to control the capturing element 16 to capture the external update only after completing establishing the second operating system (e.g., an RTOS). However, the present invention is not limited to such example. For example, in another embodiment, without establishing any operating system, the second processor 15 may directly execute the driver of the capturing element 16 to control the capturing element 16 to capture the external update.

A control method for a dual-processor system is further provided according to another embodiment of the present invention. The dual-processor system includes a power supply, a temporary memory, a non-volatile memory, a first processor and a second processor. The non-volatile memory stores a first configuration file corresponding to a first operating system, and a second configuration file corresponding to a second operating system. Compared to the first operating system, the second operating system has a shorter interrupt latency and a shorter thread switching latency. According to the control method, in a waiting period, the power supply does not supply power to the first processor and the second processor. After the power supply starts supplying power, the first processor sequentially performs the initialization process 300 in FIG. 3 . One person skilled in the art can understand that, the operation variations in the description associated with the dual-processor system 100 are applicable to the control method of the dual-processor system, and shall be omitted herein.

A non-transient computer-readable storage medium is provided according to another embodiment of the present invention. The non-transient computer-readable storage medium includes a program code executable by a dual-processor system. The dual-processor system includes a temporary memory, a first processor and a second processor. The program code includes an initialization program code, a first configuration file corresponding to a first operating system and a second configuration file corresponding to a second operating system. Compared to the first operating system, the second operating system has a shorter interrupt latency and a shorter thread switching latency. In practice, the non-transient computer-readable storage medium may be an electronic, magnetic or optical storage device, e.g., a ROM, a RAM, a CD-ROM, a DVD, a magnetic tape, a floppy disk or a hard drive. The program code may be realized by various program languages. It should be noted that, the operation variations of the dual-processor system 100 are applicable to the non-transient computer-readable storage medium, and shall be omitted herein.

While the invention has been described by way of example and in terms of the embodiments, it is to be understood that the invention is not limited thereto. On the contrary, it is intended to cover various modifications and similar arrangements and procedures, and the scope of the appended claims therefore should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements and procedures.

1 of 8 part labels are ours — the grant heads the rest

Claims as granted

16 claims

Log in to read the claims of this application.

Log in to unlock

Classifications

4 codes
IPC · International Patent Classification
Section G — Physics
  • G06F1/3287
  • G06F13/24
  • G06F9/4401
  • G06F1/3293

Claim changes

Soon
Coming soonHow the claims changed between publication and grant

See which claims were amended, added or cancelled during examination, with every added and removed word marked.

AmendedAddedCancelledUnchanged

The published claims of this application are not paired with the granted ones in what we hold.

File wrapper

⤢ drag to zoomJan 2017Jul 2017Jan 2018Jul 2018Jan 2019Jul 2019Jan 2020USPTOApplicantNon-final rejectionResponse after non-finalNotice of allowance
USPTOApplicanthover for detail · click to open
Pendency
2.8 y
1,013 days filing → grant
Office actions
1
non-final + final
Responses
1
no RCE
Examiner
Elias Mamo
art unit 2184 · TC 2100
Citations: 7 back · 0 forward

See the full prosecution history — every USPTO and applicant action on this file, in order.

Log in to unlock

Documents

Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.

Log in to unlock

Chain of title

⤢ drag to zoom2018202020222024202620282030203220342036Owner 3Owner 4
Titlehover for detail · click to open

See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.

Log in to unlock