Patent ID: 8301869

Claim:
A programmable controller which executes a plurality of independent sequence programs in parallel, the programmable controller comprising: a plurality of arithmetic-logic units configured to execute predetermined first instructions in the sequence programs by hardware; a plurality of MPUs configured to execute second instructions in the independent sequence programs, from among the plurality of independent sequence programs executed in parallel, which can not be executed by the arithmetic-logic units; first transfer means configured to transfer information associated with at least one of the second instructions generated in the arithmetic-logic units to the MPUs in the order of execution of the instructions; and second transfer means configured to transfer information associated with results of execution of the second instructions executed by the MPUs to the arithmetic-logic units which are sources of generation of the information associated with the second instructions, wherein the plurality of arithmetic-logic units are divided into groups as many as the MPUs, each of the groups including at least one arithmetic-logic unit; at least one of the groups includes at least two arithmetic-logic units, and the first and second transfer means and the MPUs are arranged in association with a group including the at least two arithmetic-logic units; and said programmable controller further comprises selection means for selecting, when grouping the arithmetic-logic units into a plurality of groups, respective groups to which individual arithmetic-logic unit is caused to belong.