JP5684518B2 - Software component execution control device - Google Patents

Software component execution control device Download PDF

Info

Publication number
JP5684518B2
JP5684518B2 JP2010207900A JP2010207900A JP5684518B2 JP 5684518 B2 JP5684518 B2 JP 5684518B2 JP 2010207900 A JP2010207900 A JP 2010207900A JP 2010207900 A JP2010207900 A JP 2010207900A JP 5684518 B2 JP5684518 B2 JP 5684518B2
Authority
JP
Japan
Prior art keywords
input
software
software component
output
data buffer
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
JP2010207900A
Other languages
Japanese (ja)
Other versions
JP2012063995A (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.)
Japan Radio Co Ltd
Ueda Japan Radio Co Ltd
Original Assignee
Japan Radio Co Ltd
Ueda Japan Radio Co Ltd
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 Japan Radio Co Ltd, Ueda Japan Radio Co Ltd filed Critical Japan Radio Co Ltd
Priority to JP2010207900A priority Critical patent/JP5684518B2/en
Publication of JP2012063995A publication Critical patent/JP2012063995A/en
Application granted granted Critical
Publication of JP5684518B2 publication Critical patent/JP5684518B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、例えば、センサ、スイッチ、7セグメントディスプレイおよびブザー等を制御するリアルタイム制御処理に用いられるソフトウェア部品(以下、単に「ソフト部品」という。)の実行を制御する実行制御装置に関する。   The present invention relates to an execution control apparatus that controls execution of software components (hereinafter simply referred to as “software components”) used in real-time control processing for controlling, for example, sensors, switches, 7-segment displays, and buzzers.

従来、リアルタイム制御系のソフトウェアでは、ソフトウェアの生産効率を向上させるために、PLC(Programmable Logic Controller)を使用し、PLCの制御処理をSFC(Sequential Function Chart)またはLD(Ladder Diagram)等で記述することによってプログラムを完成させることが多い。   Conventionally, real-time control system software uses PLC (Programmable Logic Controller) to improve software production efficiency, and PLC control processing is described in SFC (Sequential Function Chart) or LD (Ladder Diagram). In many cases, the program is completed.

また、ソフトウェア部品の再利用性を促進するものとして、オブジェクト指向技術やPLCのプログラミング言語に関する知識がなくてもソフト部品を配置および接続させることにより、システムのカスタマイズに費やす時間を減少させるものがある(例えば、特許文献1参照)。   Another thing that promotes the reusability of software components is to reduce the time spent customizing the system by arranging and connecting software components without knowledge of object-oriented technology or PLC programming language. (For example, refer to Patent Document 1).

特開2001−14155号公報JP 2001-14155 A

しかしながら、PLCは、サイクルタイムと呼ばれる周期でシーケンシャルプログラムを起動するため、プログラムサイズが大きくなるにつれて、処理応答速度が低下してしまうといった課題があった。   However, since the PLC starts the sequential program at a cycle called cycle time, there is a problem that the processing response speed decreases as the program size increases.

一方、特許文献1に開示されたソフト部品実行制御装置は、センサから入力されるデータの変化によりソフト部品が起動されるものの、ソフト部品間においては、入力ピンから入力されるデータに変化がなくてもソフト部品が起動されることがあるために、起動する必要がないソフト部品が起動してしまい、ソフト部品を実行するCPU(Central Processing Unit)等のプロセッサに負荷をかけてしまうことがあるといった課題があった。   On the other hand, the software component execution control device disclosed in Patent Document 1 is activated by a change in data input from a sensor, but there is no change in data input from an input pin between software components. However, since a software component may be activated, a software component that does not need to be activated may be activated, which may cause a load on a processor such as a CPU (Central Processing Unit) that executes the software component. There was a problem.

本発明は、上述したような従来の課題を解決するためになされたもので、処理応答速度を従来のものより向上しつつ、CPU等のプロセッサにかかる処理負荷を低減することができるソフト部品実行制御装置を提供することを目的とする。   The present invention has been made to solve the conventional problems as described above. Software component execution capable of reducing the processing load on a processor such as a CPU while improving the processing response speed compared to the conventional one. An object is to provide a control device.

本発明のソフト部品実行制御装置は、少なくとも1つの入力ピンおよび少なくとも1つの出力ピンをそれぞれに有し、ソフトウェアツールを用いて機能的に行列状に配置された複数のソフト部品と、入力外部装置から入力されたデータを一時的に保存する入力データバッファと、出力外部装置に出力するデータを一時的に保存する出力データバッファと、前記複数のソフト部品を行順および列順に起動させる起動手段と、を備えるソフト部品実行制御装置において、前記複数のソフト部品間で引き渡されるデータを一時的に保存するソフト部品間データバッファをさらに備え、前記起動手段は、前記複数のソフト部品を、前記複数のソフト部品に設けられた各入力ピンが前記入力データバッファまたは前記ソフト部品間データバッファの配列構造を有するどの配列要素と接続されているかを表す入力ピン接続情報と、前記入力データバッファまたは前記ソフト部品間データバッファの配列構造を有する各配列要素に含まれる変化フラグと、に基づいて判断される、何れかの入力ピンに入力されたデータが変化した場合に限って起動させるように構成されている。 A software component execution control device according to the present invention includes a plurality of software components each having at least one input pin and at least one output pin, which are functionally arranged in a matrix using a software tool, and an input external device An input data buffer that temporarily stores data input from the output, an output data buffer that temporarily stores data to be output to the output external device, and an activation unit that activates the plurality of software components in row order and column order In the software component execution control device, further comprising a data buffer between software components that temporarily stores data delivered between the plurality of software components, and the activation unit includes the plurality of software components as the plurality of software components. Each input pin provided in a software component is an array of the input data buffer or the data buffer between the software components Is determined based on input pin connection information indicating which array element has a structure and a change flag included in each array element having the array structure of the input data buffer or the inter-software component data buffer. It is configured to be activated only when the data input to any of the input pins changes .

この構成により、本発明のソフト部品実行制御装置は、何れかの入力ピンに入力されたデータが変化したソフト部品のみを起動させるようにしたため、処理応答速度を従来のものより向上しつつ、CPU等のプロセッサにかかる処理負荷を低減することができる。   With this configuration, the software component execution control device of the present invention starts only the software component whose data input to any of the input pins has changed, so that the processing response speed is improved compared to the conventional one and the CPU It is possible to reduce the processing load on the processor.

ところで、PLCは、前述したように、詳細な機能をSFCまたはLD等で記載する必要があり、ソフト部品の機能がビット論理演算のように単純であり、これらソフト部品を組み合せる必要がある。   By the way, as described above, the PLC needs to describe detailed functions in SFC or LD, etc., the function of the software component is as simple as a bit logical operation, and these software components need to be combined.

したがって、PLCによって構成される新たなシステムのプログラムを作成するために、再利用が可能な部分を有するプログラムがあったとしても、そのプログラムが新たなシステムにそのまま利用できない場合には、新たなシステムのプログラムを再度作成する必要が生じるため、プログラムの作成効率が低下してしまうことがあった。   Accordingly, even if there is a program having a reusable part for creating a program for a new system constituted by the PLC, if the program cannot be used as it is in the new system, the new system Since it is necessary to create the program again, the efficiency of creating the program may be reduced.

そこで、本発明のソフト部品実行制御装置においては、前記複数のソフト部品の入力ピンと出力ピンとは、同一ビット長のデータをそれぞれ入出力するようにしてもよい。 Therefore, in the software component execution control apparatus of the present invention, data of the same bit length may be input / output between the input pins and the output pins of the plurality of software components.

この構成により、本発明のソフト部品実行制御装置は、ソフト部品間の接続を容易にするとともに、各ソフト部品の機能を高機能化してソフト部品の再利用を促進することができるため、プログラムの作成効率を向上させることができる。   With this configuration, the software component execution control device according to the present invention facilitates the connection between the software components and enhances the function of each software component to promote the reuse of the software component. Creation efficiency can be improved.

本発明は、処理応答速度を従来のものより向上しつつ、CPU等のプロセッサにかかる処理負荷を低減することができるソフト部品実行制御装置を提供することができる。   The present invention can provide a software component execution control device capable of reducing the processing load on a processor such as a CPU while improving the processing response speed compared to the conventional one.

本発明の一実施の形態としてのソフト部品実行制御装置のハードウェア構成図である。It is a hardware block diagram of the software component execution control apparatus as one embodiment of this invention. 本発明の一実施の形態としてのソフト部品実行制御装置のソフトウェア構造の一例を示すブロック図である。It is a block diagram which shows an example of the software structure of the software component execution control apparatus as one embodiment of this invention. 本発明の一実施の形態としてのソフト部品実行制御装置を構成する入力データバッファ、出力データバッファおよびソフト部品間データバッファの各データバッファの構造を示す概念図である。It is a conceptual diagram which shows the structure of each data buffer of the input data buffer, the output data buffer, and the software buffer between software components which comprise the software component execution control apparatus as one embodiment of this invention. 本発明の一実施の形態としてのソフト部品実行制御装置によって参照される入力データバッファ定義情報を示す概念図である。It is a conceptual diagram which shows the input data buffer definition information referred by the software component execution control apparatus as one embodiment of this invention. 本発明の一実施の形態としてのソフト部品実行制御装置によって参照される出力データバッファ定義情報を示す概念図である。It is a conceptual diagram which shows the output data buffer definition information referred by the software component execution control apparatus as one embodiment of this invention. 本発明の一実施の形態としてのソフト部品実行制御装置によって参照されるソフト部品起動情報を示す概念図である。It is a conceptual diagram which shows the software component starting information referred by the software component execution control apparatus as one embodiment of this invention. 本発明の一実施の形態としてのソフト部品実行制御装置のソフト部品によって入出力されるデータを示す概念図である。It is a conceptual diagram which shows the data input / output by the software component of the software component execution control apparatus as one embodiment of this invention. 本発明の一実施の形態としてのソフト部品実行制御装置によって参照される入力ピン接続情報を示す概念図である。It is a conceptual diagram which shows the input pin connection information referred by the software component execution control apparatus as one embodiment of this invention. 本発明の一実施の形態としてのソフト部品実行制御装置によって参照される出力ピン接続情報を示す概念図である。It is a conceptual diagram which shows the output pin connection information referred by the software component execution control apparatus as one embodiment of this invention. 本発明の一実施の形態としてのソフト部品実行制御装置を構成するプロセッサの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the processor which comprises the software component execution control apparatus as one embodiment of this invention.

以下、本発明の実施の形態について、図面を参照して説明する。本発明の一実施の形態としてのソフト部品実行制御装置を図1に示す。   Embodiments of the present invention will be described below with reference to the drawings. A software component execution control apparatus according to an embodiment of the present invention is shown in FIG.

図1に示すように、本発明の一実施の形態としてのソフト部品実行制御装置1は、CPU等のプロセッサ10と、RAM(Random Access Memory)11と、ROM(Read Only Memory)12と、ハードディスク装置13と、キーボード装置やポインティングデバイス等よりなる入力装置14と、液晶ディスプレイ装置等よりなる表示装置15と、入力ポート16と、出力ポート17と、ネットワークモジュール18とを備えたコンピュータ装置によって構成されている。   As shown in FIG. 1, a software component execution control apparatus 1 according to an embodiment of the present invention includes a processor 10 such as a CPU, a random access memory (RAM) 11, a read only memory (ROM) 12, and a hard disk. The computer 13 includes a device 13, an input device 14 including a keyboard device and a pointing device, a display device 15 including a liquid crystal display device, an input port 16, an output port 17, and a network module 18. ing.

ROM12およびハードディスク装置13には、当該コンピュータ装置をソフト部品実行制御装置1として機能させるためのプログラムが記憶されている。すなわち、プロセッサ10がRAM11を作業領域としてROM12およびハードディスク装置13に記憶されたプログラムを実行することにより、当該コンピュータ装置は、ソフト部品実行制御装置1として機能し、RAM11またはハードディスク装置13は、ソフト部品実行制御装置1の記憶部19として機能する。   The ROM 12 and the hard disk device 13 store a program for causing the computer device to function as the software component execution control device 1. That is, when the processor 10 executes a program stored in the ROM 12 and the hard disk device 13 using the RAM 11 as a work area, the computer device functions as the software component execution control device 1, and the RAM 11 or the hard disk device 13 is a software component. It functions as the storage unit 19 of the execution control device 1.

入力ポート16には、ソフト部品実行制御装置1の用途に応じた、各種センサ等の入力外部装置が接続されている。出力ポート17には、ソフト部品実行制御装置1の用途に応じた、7セグメントディスプレイやデジタルアナログ(以下、単に「D/A」と記載する。)変換器等の出力外部装置が接続されている。   The input port 16 is connected to input external devices such as various sensors according to the application of the software component execution control device 1. An output external device such as a 7-segment display or a digital / analog (hereinafter simply referred to as “D / A”) converter is connected to the output port 17 in accordance with the application of the software component execution control device 1. .

図2は、プロセッサ10によって実行されるプログラムの構造の一例を示している。このプログラムを実行することにより、プロセッサ10は、入力外部装置から入力されたデータを一時的に保存しておくための入力データバッファ31と、外部装置に出力するデータを一時的に保存しておくための出力データバッファ32と、行列状に配置された複数のソフト部品34a〜34h(以下、総称して「ソフト部品34」ともいう。)と、ソフト部品34a〜34h間で引き渡されるデータを一時的に保存しておくためのソフト部品間データバッファ33として機能する。   FIG. 2 shows an example of the structure of a program executed by the processor 10. By executing this program, the processor 10 temporarily stores the input data buffer 31 for temporarily storing data input from the input external device and the data output to the external device. Output data buffer 32, a plurality of software components 34a to 34h arranged in a matrix (hereinafter also collectively referred to as “software component 34”), and data delivered between the software components 34a to 34h are temporarily stored. It functions as an inter-software-component data buffer 33 for storing data.

ソフト部品34は、少なくとも1つの入力ピン35と、少なくとも1つの出力ピン36とを有している。なお、ソフト部品34が有する入力ピン35の個数と、出力ピン36の個数とはソフト部品34毎に異なっていてもよい。   The soft component 34 has at least one input pin 35 and at least one output pin 36. Note that the number of input pins 35 and the number of output pins 36 included in the software component 34 may be different for each software component 34.

図3に示すように、入力データバッファ31、出力データバッファ32およびソフト部品間データバッファ33の各データバッファは、配列構造になっており、配列の各要素には配列番号が付されている。   As shown in FIG. 3, each of the input data buffer 31, the output data buffer 32, and the inter-software component data buffer 33 has an array structure, and an array element number is assigned to each element of the array.

入力データバッファ31、出力データバッファ32およびソフト部品間データバッファ33の各データバッファの各配列要素には、データと、そのデータが変化したか否かを表す変化フラグとが含まれる。本実施の形態において、各データバッファの各配列要素に記憶されるデータのビット長は、32ビットとする。   Each array element of each data buffer of the input data buffer 31, the output data buffer 32, and the inter-software component data buffer 33 includes data and a change flag indicating whether or not the data has changed. In the present embodiment, the bit length of data stored in each array element of each data buffer is 32 bits.

記憶部19には、図4に示すように、入力データバッファ31の各配列要素に、どの入力外部装置から出力されたデータが入力されるのかを表す入力データバッファ定義情報50が予め格納されている。   As shown in FIG. 4, the storage unit 19 stores in advance input data buffer definition information 50 indicating which input external device receives data output from each array element of the input data buffer 31. Yes.

例えば、図4に示した例は、配列番号1の配列要素にはセンサAから出力されたデータが入力され、配列番号2の配列要素にはセンサBから出力されたデータが入力され、配列番号Nの配列要素にはセンサNから出力されたデータが入力されることを表している。   For example, in the example shown in FIG. 4, the data output from the sensor A is input to the array element of the array number 1, and the data output from the sensor B is input to the array element of the array number 2. The N array elements indicate that the data output from the sensor N is input.

また、記憶部19には、図5に示すように、出力データバッファ32の各配列要素から、どの出力外部装置にデータが出力されるのかを表す出力データバッファ定義情報51が予め格納されている。   Further, as shown in FIG. 5, output data buffer definition information 51 indicating in which output external device data is output from each array element of the output data buffer 32 is stored in the storage unit 19 in advance. .

例えば、図5に示した例は、配列番号1の配列要素から7セグメントディスプレイ1にデータが出力され、配列番号2の配列要素からD/A変換器1にデータが出力され、配列番号Nの配列要素から7セグメントディスプレイNにデータが出力されることを表している。   For example, in the example shown in FIG. 5, data is output from the array element of array number 1 to the 7-segment display 1, data is output from the array element of array number 2 to the D / A converter 1, and array element of array number N It represents that data is output from the array element to the 7-segment display N.

また、記憶部19には、図6に示すように、ソフト部品34の起動順序を表すソフト部品起動情報52が予め格納されている。ソフト部品起動情報52において、ソフト部品34は、列順に起動され、同一の列内に複数のソフト部品34が存在する場合には、行順に起動される。   In addition, as shown in FIG. 6, software component activation information 52 representing the activation order of the software components 34 is stored in the storage unit 19 in advance. In the software component activation information 52, the software components 34 are activated in the column order, and when there are a plurality of software components 34 in the same column, they are activated in the row order.

例えば、図6に示した例は、ソフト部品a、ソフト部品b、ソフト部品c、ソフト部品d、ソフト部品e、ソフト部品f、ソフト部品g、ソフト部品hの順に起動されることを表している。   For example, the example shown in FIG. 6 represents that the software component a, the software component b, the software component c, the software component d, the software component e, the software component f, the software component g, and the software component h are activated in this order. Yes.

ここで、各ソフト部品34は、何れかの入力ピン35に入力されたデータが変化した場合に限って起動される。このため、あるソフト部品34(例えば、ソフト部品34dとする。)の入力ピン35の接続元が、その他のソフト部品34(例えば、ソフト部品34aとする。)の出力ピン36であるならば、ソフト部品34dは、ソフト部品34aよりも後ろの列に配置される。   Here, each software component 34 is activated only when the data input to any of the input pins 35 changes. For this reason, if the connection source of the input pin 35 of a certain software component 34 (for example, software component 34d) is the output pin 36 of another software component 34 (for example, software component 34a), The software component 34d is arranged in a row behind the software component 34a.

図7に示すように、本実施の形態において、ソフト部品34の入力ピン35と出力ピン36を介して入出力されるデータのビット長は、入力データバッファ31、出力データバッファ32およびソフト部品間データバッファ33に記憶されるデータのビット長と同一の32ビットとする。   As shown in FIG. 7, in this embodiment, the bit length of data input / output via the input pin 35 and the output pin 36 of the software component 34 is set between the input data buffer 31, the output data buffer 32 and the software component. The bit length of the data stored in the data buffer 33 is 32 bits.

このように、入力データバッファ31、出力データバッファ32およびソフト部品間データバッファ33に記憶されるデータのビット長と、ソフト部品34によって入出力されるデータのビット長とを同一にすることにより、外部装置とソフト部品34との間やソフト部品34間を適宜に接続させることが可能となる。   Thus, by making the bit length of the data stored in the input data buffer 31, the output data buffer 32, and the inter-software component data buffer 33 the same as the bit length of the data input / output by the software component 34, It is possible to appropriately connect between the external device and the software component 34 or between the software components 34.

したがって、ソフト部品34は、複数の入力ピン35と出力ピン36を有しているので、多くのデータを扱えることができ、ビット論理演算のような単純な処理のみならず、四則演算はもちろん、最小二乗法やFFT(Fast Fourier Transform)等の高度な数値演算、および、32ビット以上の情報を用いたシーケンス制御のような高度な処理を実行することができ、ソフト部品34の再利用を促進することができる。   Therefore, since the software component 34 has a plurality of input pins 35 and output pins 36, it can handle a large amount of data, and not only a simple process such as a bit logic operation but also an arithmetic operation, Advanced numerical operations such as least squares and FFT (Fast Fourier Transform), and advanced processing such as sequence control using information of 32 bits or more can be executed, facilitating the reuse of software components 34 can do.

また、記憶部19には、図8に示すように、各ソフト部品34に設けられた各入力ピン35が入力データバッファ31またはソフト部品間データバッファ33のどの配列番号の配列要素と接続されているかを表す入力ピン接続情報53が格納されている。入力ピン接続情報53は、ソフト部品34毎に存在する。   Further, in the storage unit 19, as shown in FIG. 8, each input pin 35 provided in each software component 34 is connected to the array element of which array number in the input data buffer 31 or the inter-software component data buffer 33. The input pin connection information 53 indicating whether or not is stored. Input pin connection information 53 exists for each software component 34.

また、記憶部19には、図9に示すように、各ソフト部品34に設けられた各出力ピン36が出力データバッファ32またはソフト部品間データバッファ33のどの配列番号の配列要素と接続されているかを表す出力ピン接続情報54が格納されている。出力ピン接続情報53は、ソフト部品34毎に存在する。   Further, in the storage unit 19, as shown in FIG. 9, each output pin 36 provided in each software component 34 is connected to the array element of which array number in the output data buffer 32 or the inter-software component data buffer 33. The output pin connection information 54 indicating whether or not is stored. The output pin connection information 53 exists for each software component 34.

ここで、各ソフト部品34の配置やソフト部品34間の入力ピン35と出力ピン36との接続は、汎用的なパーソナルコンピュータによって実行されるソフトウェアツールを用いて行うのが一般的である。   Here, the arrangement of the software components 34 and the connection between the input pins 35 and the output pins 36 between the software components 34 are generally performed using a software tool executed by a general-purpose personal computer.

具体的には、このソフトウェアツールによって、図4に示した入力データバッファ定義情報50、図5に示した出力データバッファ定義情報51、図6に示したソフト部品起動情報52、図8に示した各ソフト部品34の入力ピン接続情報53、および、図9に示した各ソフト部品34の出力ピン接続情報54が作成される。   Specifically, by this software tool, the input data buffer definition information 50 shown in FIG. 4, the output data buffer definition information 51 shown in FIG. 5, the software component activation information 52 shown in FIG. 6, and the information shown in FIG. The input pin connection information 53 of each software component 34 and the output pin connection information 54 of each software component 34 shown in FIG. 9 are created.

すなわち、ソフト部品実行制御装置1は、このソフトウェアツールによって作成された情報50〜54を参照しながら、入力データバッファ31、出力データバッファ32およびソフト部品間データバッファ33の各配列要素を更新していくことにより、各ソフト部品34を実行していくようになっている。   That is, the software component execution control device 1 updates each array element of the input data buffer 31, the output data buffer 32, and the inter-software component data buffer 33 while referring to the information 50 to 54 created by the software tool. As a result, each software component 34 is executed.

このように構成されたソフト部品実行制御装置1を構成するプロセッサ10の動作について図10を参照しながら説明する。   The operation of the processor 10 constituting the software component execution control device 1 configured as described above will be described with reference to FIG.

なお、以下に説明するプロセッサ10の動作は、図6に示したように、行数が3、列数が3の行列状にソフト部品34が配置されている場合を例として説明する。また、以下に説明するプロセッサ10の動作は、一定の時間間隔または入力外部装置から割り込み信号が入力されたタイミングで実行される。   Note that the operation of the processor 10 described below will be described by taking as an example the case where the software components 34 are arranged in a matrix with three rows and three columns as shown in FIG. The operation of the processor 10 described below is executed at regular time intervals or timing when an interrupt signal is input from the input external device.

まず、プロセッサ10は、入力データバッファ定義情報50に基づいて、入力データバッファ31を更新する(ステップS1)。   First, the processor 10 updates the input data buffer 31 based on the input data buffer definition information 50 (step S1).

例えば、プロセッサ10は、入力データバッファ定義情報50において、まず、センサAからデータを入力して配列番号1の配列要素にデータを格納する。その際に、以前のデータ内容と相違があれば、プロセッサ10は、配列番号1の配列要素の変化フラグをオンに設定する。   For example, in the input data buffer definition information 50, the processor 10 first inputs data from the sensor A and stores the data in the array element of array number 1. At this time, if there is a difference from the previous data content, the processor 10 sets the change flag of the array element of the array element number 1 to ON.

同様に、プロセッサ10は、センサBからデータを入力して配列番号2の配列要素にデータを格納する。その際に、以前のデータ内容と相違があれば、プロセッサ10は、配列番号2の配列要素の変化フラグをオンに設定する。以降、同様に、プロセッサ10は、入力データバッファ定義情報50に基づいて、配列番号Nまでデータを入力する。   Similarly, the processor 10 inputs data from the sensor B and stores the data in the array element of array element number 2. At this time, if there is a difference from the previous data content, the processor 10 sets the change flag of the array element of the array element number 2 to ON. Thereafter, similarly, the processor 10 inputs data up to the array element number N based on the input data buffer definition information 50.

次に、プロセッサ10は、ソフト部品起動前処理を実行する(ステップS2)。具体的には、プロセッサ10は、出力データバッファ32の全ての配列要素の変化フラグと、ソフト部品間データバッファ33の全ての配列要素の変化フラグをオフに設定する。   Next, the processor 10 executes software component activation pre-processing (step S2). Specifically, the processor 10 sets the change flags of all the array elements of the output data buffer 32 and the change flags of all the array elements of the inter-software-component data buffer 33 to OFF.

次に、プロセッサ10は、各ソフト部品34を識別する列カウント変数としてのiを1に初期化し(ステップS3)、行カウント変数としてのjを1に初期化する(ステップS4)。以降、プロセッサ10は、j行i列に配置されたソフト部品34の入力ピン35のデータが変化したか否かを判断し、入力ピン35のデータが変化したソフト部品34を起動させて行く。   Next, the processor 10 initializes i as a column count variable for identifying each software component 34 to 1 (step S3), and initializes j as a row count variable to 1 (step S4). Thereafter, the processor 10 determines whether or not the data of the input pin 35 of the software component 34 arranged in the j row and i column has changed, and activates the software component 34 whose data of the input pin 35 has changed.

まず、プロセッサ10は、j行i列にソフト部品34が配置されているか否かをソフト部品起動情報52に基づいて判断する(ステップS5)。ここで、j行i列にソフト部品34が配置されていないと判断した場合には、プロセッサ10は、後述するステップS9を実行する。   First, the processor 10 determines whether or not the software component 34 is arranged in the j-th row and the i-th column based on the software component activation information 52 (step S5). Here, when it is determined that the software component 34 is not arranged in the j-th row and the i-th column, the processor 10 executes Step S9 described later.

一方、j行i列にソフト部品34が配置されていると判断した場合には、プロセッサ10は、j行i列に配置されたソフト部品34の何れかの入力ピン35に入力されたデータが変化しているか否かを、入力ピン接続情報53と、入力データバッファ31またはソフト部品間データバッファ33の配列要素の変化フラグに基づいて判断する(ステップS6)。   On the other hand, if it is determined that the software component 34 is arranged in the j row and the i column, the processor 10 receives the data input to any one of the input pins 35 of the software component 34 arranged in the j row and the i column. Whether or not there is a change is determined based on the input pin connection information 53 and the change flag of the array element of the input data buffer 31 or the inter-software component data buffer 33 (step S6).

例えば、プロセッサ10は、ソフト部品34の入力ピン接続情報53が図8である場合、入力ピン番号1に対応する入力ピン35に、入力データバッファの配列番号100の配列要素からデータを入力するが、その際に配列番号100の配列要素の変化フラグがオンかどうかを判断する。   For example, when the input pin connection information 53 of the software component 34 is FIG. 8, the processor 10 inputs data from the array element of the array number 100 of the input data buffer to the input pin 35 corresponding to the input pin number 1. At this time, it is determined whether or not the change flag of the array element with the array element number 100 is ON.

同様に、プロセッサ10は、入力ピン番号2に対応する入力ピン35に、ソフト部品間データバッファ33の配列番号1の配列要素からデータを入力するが、その際に配列番号1の配列要素の変化フラグがオンかどうかを判断する。このように、プロセッサ10は、各入力ピン35に対して同様の処理を行う。   Similarly, the processor 10 inputs data from the array element of array number 1 of the inter-software-component data buffer 33 to the input pin 35 corresponding to the input pin number 2, and changes the array element of array number 1 at that time. Determine if the flag is on. In this way, the processor 10 performs the same processing for each input pin 35.

ここで、j行i列に配置されたソフト部品34の全ての入力ピン35に入力されたデータが変化していないと判断した場合には、プロセッサ10は、ステップS9を実行する。   Here, if it is determined that the data input to all the input pins 35 of the software component 34 arranged in the j-th row and the i-th column has not changed, the processor 10 executes Step S9.

一方、j行i列に配置されたソフト部品34の何れかの入力ピン35に入力されたデータが変化していると判断した場合には、プロセッサ10は、j行i列に配置されたソフト部品34を起動する(ステップS7)。   On the other hand, if it is determined that the data input to any of the input pins 35 of the software component 34 arranged in the j row and the i column has changed, the processor 10 determines the software arranged in the j row and the i column. The component 34 is activated (step S7).

次に、プロセッサ10は、出力ピン接続情報54を参照し、ソフト部品間データバッファ33または出力データバッファ32の配列要素のデータを更新する(ステップS8)。   Next, the processor 10 refers to the output pin connection information 54 and updates the data of the array elements of the inter-software-component data buffer 33 or the output data buffer 32 (step S8).

例えば、プロセッサ10は、ソフト部品34の出力ピン接続情報54が図9である場合、j行i列に配置されたソフト部品34を実行し、出力ピン番号1に対応する出力ピン36から出力されるデータを出力データバッファ32の配列番号200の配列要素に格納し、データが以前と相違があれば変化フラグをオンに設定する。   For example, when the output pin connection information 54 of the software component 34 is FIG. 9, the processor 10 executes the software component 34 arranged in j rows and i columns and is output from the output pin 36 corresponding to the output pin number 1. Data is stored in the array element of array number 200 in the output data buffer 32, and if the data is different from the previous data, the change flag is set to ON.

同様に、プロセッサ10は、出力ピン番号2に対応する出力ピン36から出力されるデータをソフト部品間データバッファ33の配列番号100の配列要素に格納し、データが以前と相違があれば変化フラグをオンに設定する。このように、プロセッサ10は、各出力ピン36に対して同様の処理を行う。   Similarly, the processor 10 stores the data output from the output pin 36 corresponding to the output pin number 2 in the array element of the array number 100 of the inter-software component data buffer 33, and if the data is different from the previous, the change flag Set to on. In this way, the processor 10 performs the same processing for each output pin 36.

次に、プロセッサ10は、jをインクリメントし(ステップS9)、jが行数を超えているか否かを判断する(ステップS10)。ここで、jが行数を超えていないと判断した場合には、プロセッサ10は、ステップS5を実行する。   Next, the processor 10 increments j (step S9), and determines whether j exceeds the number of rows (step S10). Here, when it is determined that j does not exceed the number of rows, the processor 10 executes Step S5.

一方、jが行数を超えていると判断した場合には、プロセッサ10は、iをインクリメントし(ステップS11)、iが列数を超えているか否かを判断する(ステップS12)。ここで、iが列数を超えていないと判断した場合には、プロセッサ10は、ステップS4を実行する。   On the other hand, if it is determined that j exceeds the number of rows, the processor 10 increments i (step S11), and determines whether i exceeds the number of columns (step S12). If it is determined that i does not exceed the number of columns, the processor 10 executes step S4.

一方、iが列数を超えていると判断した場合には、プロセッサ10は、ソフト部品起動後処理を実行する(ステップS13)。具体的には、プロセッサ10は、出力データバッファ32の変化フラグがオンになっている配列要素のデータのみを出力データバッファ定義情報51に基づいて、出力外部装置に出力する。   On the other hand, if it is determined that i exceeds the number of columns, the processor 10 executes post-software component activation processing (step S13). Specifically, the processor 10 outputs only the data of the array element whose change flag of the output data buffer 32 is turned on to the output external device based on the output data buffer definition information 51.

以上に説明したように、本発明の一実施の形態のソフト部品実行制御装置1は、何れかの入力ピン35に入力されたデータが変化したソフト部品34のみを起動させるようにしたため、処理応答速度を従来のものより向上しつつ、CPU等のプロセッサ10にかかる処理負荷を低減することができる。   As described above, the software component execution control apparatus 1 according to the embodiment of the present invention activates only the software component 34 whose data input to any of the input pins 35 has changed. The processing load on the processor 10 such as a CPU can be reduced while the speed is improved from the conventional one.

また、本発明の一実施の形態のソフト部品実行制御装置1は、ソフト部品34の入力ピン35と出力ピン36とが同一ビット長のデータをそれぞれ入出力することにより、ソフト部品34間の接続を容易にするとともに、各ソフト部品34の機能を高機能化してソフト部品34の再利用を促進することができるため、プログラムの作成効率を向上させることができる。   In addition, the software component execution control apparatus 1 according to the embodiment of the present invention connects the software components 34 by inputting and outputting data having the same bit length to the input pins 35 and the output pins 36 of the software components 34. Since the functions of each software component 34 can be enhanced and the reuse of the software component 34 can be promoted, the efficiency of creating a program can be improved.

1 ソフト部品実行制御装置
10 プロセッサ
11 RAM
12 ROM
13 ハードディスク装置
14 入力装置
15 表示装置
16 入力ポート
17 出力ポート
18 ネットワークモジュール
19 記憶部
31 入力データバッファ
32 出力データバッファ
33 ソフト部品間データバッファ
34、34a〜34h ソフト部品
35 入力ピン
36 出力ピン
50 入力データバッファ定義情報
51 出力データバッファ定義情報
52 ソフト部品起動情報
53 入力ピン接続情報
54 出力ピン接続情報
1 software component execution control device 10 processor 11 RAM
12 ROM
13 hard disk device 14 input device 15 display device 16 input port 17 output port 18 network module 19 storage unit 31 input data buffer 32 output data buffer 33 software component data buffer 34, 34a to 34h software component 35 input pin 36 output pin 50 input Data buffer definition information 51 Output data buffer definition information 52 Software component activation information 53 Input pin connection information 54 Output pin connection information

Claims (2)

少なくとも1つの入力ピンおよび少なくとも1つの出力ピンをそれぞれに有し、ソフトウェアツールを用いて機能的に行列状に配置された複数のソフト部品と、入力外部装置から入力されたデータを一時的に保存する入力データバッファと、出力外部装置に出力するデータを一時的に保存する出力データバッファと、前記複数のソフト部品を行順および列順に起動させる起動手段と、を備えるソフト部品実行制御装置において、
前記複数のソフト部品間で引き渡されるデータを一時的に保存するソフト部品間データバッファをさらに備え、
前記起動手段は、前記複数のソフト部品を、前記複数のソフト部品に設けられた各入力ピンが前記入力データバッファまたは前記ソフト部品間データバッファの配列構造を有するどの配列要素と接続されているかを表す入力ピン接続情報と、前記入力データバッファまたは前記ソフト部品間データバッファの配列構造を有する各配列要素に含まれる変化フラグと、に基づいて判断される、何れかの入力ピンに入力されたデータが変化した場合に限って起動させることを特徴とするソフト部品実行制御装置。
A plurality of software components each having at least one input pin and at least one output pin, which are functionally arranged in a matrix using a software tool, and data input from an input external device are temporarily stored. A software component execution control device comprising: an input data buffer to be output; an output data buffer for temporarily storing data to be output to an output external device; and an activation unit that activates the plurality of software components in row order and column order.
A data buffer between software components for temporarily storing data delivered between the plurality of software components;
The activation means determines which array element having the array structure of the input data buffer or the inter-software-part data buffer is connected to the plurality of software parts, and each input pin provided in the plurality of software parts. Data input to any of the input pins, determined based on the input pin connection information that represents and the change flag included in each array element having the array structure of the input data buffer or the inter-software data buffer A software component execution control device that is activated only when the value of the software changes .
前記複数のソフト部品の入力ピンと出力ピンとは、同一ビット長のデータをそれぞれ入出力することを特徴とする請求項1に記載のソフト部品実行制御装置。 2. The software component execution control device according to claim 1, wherein the input pins and the output pins of the plurality of software components respectively input and output data having the same bit length.
JP2010207900A 2010-09-16 2010-09-16 Software component execution control device Active JP5684518B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010207900A JP5684518B2 (en) 2010-09-16 2010-09-16 Software component execution control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010207900A JP5684518B2 (en) 2010-09-16 2010-09-16 Software component execution control device

Publications (2)

Publication Number Publication Date
JP2012063995A JP2012063995A (en) 2012-03-29
JP5684518B2 true JP5684518B2 (en) 2015-03-11

Family

ID=46059639

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010207900A Active JP5684518B2 (en) 2010-09-16 2010-09-16 Software component execution control device

Country Status (1)

Country Link
JP (1) JP5684518B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001014155A (en) * 1999-07-01 2001-01-19 Japan Radio Co Ltd Controller for executing software parts

Also Published As

Publication number Publication date
JP2012063995A (en) 2012-03-29

Similar Documents

Publication Publication Date Title
CN103605568B (en) A kind of Multithread management method and device
JP5994679B2 (en) Processing device and control method of processing device
US9830731B2 (en) Methods of a graphics-processing unit for tile-based rendering of a display area and graphics-processing apparatus
JP2005078309A (en) Data processing system
JP5684518B2 (en) Software component execution control device
JP2005310144A (en) Synchronous formal language for programming deterministic finite state machine
TWI470400B (en) Conversion device, peripheral device and programmable logic controller
JP2009205277A (en) Controller for machine tool
JP5803721B2 (en) Data processing device
CN108536644B (en) Device for pushing core into queue from device end
WO2018207883A1 (en) Data processing device
JP2003228418A (en) Control apparatus for industrial purpose robot, and display method for the apparatus
JP3328714B2 (en) Programmable controller
JP2002278774A (en) Method and device for generating instruction word in controlling function unit in processor
JP2021020108A5 (en)
US10289644B2 (en) Method for generating database using lookup table
JP6201921B2 (en) Microcomputer
JPWO2021157080A5 (en)
JPH05297913A (en) Programmable controller
CN111208994A (en) Application program execution method and device, electronic equipment and storage medium
JPH0119167B2 (en)
JPWO2020112261A5 (en)
JP2005148899A (en) Simd-type processor
KR20150022714A (en) Method for operating a buffer memory of a data processing system and data processing system
JPH0119168B2 (en)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130912

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140711

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: 20150113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150115

R150 Certificate of patent or registration of utility model

Ref document number: 5684518

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250