# US 9,436,500 B2 · Multi-processor command management in electronic components with multiple microcontrollers

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,436,500 B2
- Document ID: US9436500B2
- Status: Granted
- Kind: B2
- Application number: 14/844,046
- Filed: 2015-09-03
- Published: 2016-03-24
- Granted: 2016-09-06
- Earliest claimed: 2014-09-24
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Thomas C. Long
- Web page: https://patentgrep.com/patent/US9436500B2

## CPC

- G06F 9/46: Multiprogramming arrangements
- G06F 9/4881: {Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

In one embodiment, a computer-implemented method includes executing firmware including a command list configured to maintain commands executable by a host processor of a field-programmable unit. One or more of the commands define communications between the host processor and one or more back-end processors of the field-replaceable unit. The command list includes both periodic commands representing periodic processes and non-periodic commands representing non-periodic processes. Each command in the command list is set to one of active mode and inactive mode. Executing the firmware includes cycling through the command list, and executing, by the host processor, only the commands in the command list that are set to active mode while cycling through the command list.

## Claims

### Claim 1

A computer-implemented method, comprising:
executing firmware comprising a command list configured to maintain commands executable by a host processor of a field-replaceable unit;
wherein one or more of the commands define communications between the host processor and one or more back-end processors of the field-replaceable unit;
wherein the command list comprises both periodic commands representing periodic processes and non-periodic commands representing non-periodic processes;
wherein each command in the command list is set to one of active mode and inactive mode; and
wherein executing the firmware comprises:
cycling through the command list; and
executing, by the host processor, only the commands in the command list that are set to active mode, while cycling through the command list.

### Claim 2 (depends on 1)

The method of claim 1, wherein the firmware comprises no more than a single command list configured to maintain commands for communicating with the back-end processors.

### Claim 3 (depends on 1)

The method of claim 1, wherein the command list is a fixed list for which space is allocated at compile time of the firmware.

### Claim 4 (depends on 1)

The method of claim 1, wherein the command list comprises a greater number of instances of a first command than the number of instances of a second command, wherein the first command is given higher priority than the second command, and wherein executing the firmware further comprises:
receiving a non-periodic command from outside the field-replaceable unit, wherein the non-periodic command corresponds to the first command; and
setting two or more instances of the first command of the command list to active mode, in response to receiving the non-periodic command, wherein setting the two or more instances of the first command of the command list to active mode grants the higher priority to the first command.

### Claim 5 (depends on 1)

The method of claim 1, wherein executing the firmware further comprises:
receiving a non-periodic command from outside the field-replaceable unit; and
setting a first command of the command list to active mode, wherein the first command corresponds to the received non-periodic command, in response to receiving the non-periodic command.

### Claim 6 (depends on 1)

The method of claim 1, wherein the command list comprises a wildcard command, and wherein executing the firmware further comprises:
receiving a command from outside the field-replaceable unit;
determining that the received command corresponds to no command in the command list;
associating the received command with a wildcard command in the command list; and
activating the wildcard command, in response to receiving the command.
