Industrial controller using shared memory multicore architecture
AssigneeRockwell Automation Technologies, Inc.
InventorsRonald E. Schultz, Scot A. Tutkovics, Richard J. Grgic, James J. Kay, James W. Kenst, Daniel W. Clark
Life of this patent
Estimating the term…
Abstract
A multicore processor for industrial control provides for the execution of separate operating systems on the cores under control of one of the cores to tailor the operating system to optimum execution of different applications of industrial control and communication. One core may provide for a reduced instruction set for execution of industrial control programs with the remaining cores providing a general-purpose instruction set.
Claims10
An industrial controller comprising:
- a multicore electronic computer having a first processor, a second processor, a first cache, and a second cache, wherein the first cache corresponds to the first processor and the second cache corresponds to the second processor;
- a dedicated communication interface between and accessible only by the first processor and the second processor;
- a shared electronic memory loadable into the first cache and the second cache for access by the first and second processors;
- and
- a steering circuit for monitoring memory access attempts of the first cache by the first processor, wherein:
- the steering circuit determines whether each memory access attempt corresponds to a predefined portion of the shared electronic memory and when the memory access attempt corresponds to the predefined portion of the shared electronic memory, the steering circuit connects the first processor to the second cache,
- the first processor interrupts execution of the second processor via the dedicated communication interface prior to initiating a memory access attempt within the predefined portion of the shared electronic memory, and
- the first processor restarts execution of the second processor via the dedicated communication interface after the first processor accesses the second cache.
The industrial controller of claim l wherein the executable instructions in the first and second portions for a given driver are written in different computer languages.
An industrial controller comprising:
- a multicore electronic computer having a first processor, a second processor, a first cache, and a second cache, wherein the first cache corresponds to the first processor and the second cache corresponds to the second processor;
- a dedicated communication interface between and accessible only by the first processor and the second processor;
- a shared electronic memory communicating with the first and second processors through their respective memory caches, the shared electronic memory including executable industrial control logic for controlling a machine in real-time by reading input signals from sensors on the machine to provide output signals to actuators on the machine according to the control logic;
- a microcoder executable by at least one of the first and second processors and configured to interpret instructions associated with network communication between the first and second processor and to execute the instruction using the dedicated communication interface;
- and
- a steering, circuit for monitoring memory access attempts of the first cache by the first processor, wherein the steering circuit determines whether each memory access attempt corresponds to a predefined portion of the shared electronic memory and when the memory access attempt corresponds to the predefined portion of the shared electronic memory, the steering circuit connects the first processor to the second cache, and wherein the first processor interrupts execution of the second processor via the dedicated communication interface prior to initiating a memory access attempt within the predefined portion of the shared electronic memory and the first processor restarts execution of the second processor via the dedicated communication interface after the first processor accesses the second cache.
Dependencies are inferred from the claim text.