JP2017041157A - Embedded software development support system, embedded software development support method, and embedded software development support program - Google Patents

Embedded software development support system, embedded software development support method, and embedded software development support program Download PDF

Info

Publication number
JP2017041157A
JP2017041157A JP2015163307A JP2015163307A JP2017041157A JP 2017041157 A JP2017041157 A JP 2017041157A JP 2015163307 A JP2015163307 A JP 2015163307A JP 2015163307 A JP2015163307 A JP 2015163307A JP 2017041157 A JP2017041157 A JP 2017041157A
Authority
JP
Japan
Prior art keywords
block
function unit
calculation
software development
development support
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.)
Pending
Application number
JP2015163307A
Other languages
Japanese (ja)
Inventor
理恵 辻井
Rie Tsujii
理恵 辻井
達斎 外山
Tatsunari Toyama
達斎 外山
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.)
Meidensha Corp
Meidensha Electric Manufacturing Co Ltd
Original Assignee
Meidensha Corp
Meidensha Electric Manufacturing 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 Meidensha Corp, Meidensha Electric Manufacturing Co Ltd filed Critical Meidensha Corp
Priority to JP2015163307A priority Critical patent/JP2017041157A/en
Publication of JP2017041157A publication Critical patent/JP2017041157A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To allow a change to a desired arithmetic sequence without recreating a block diagram and thereby reduce the labor of a developer.SOLUTION: A start block acquisition function unit 11 implemented by the arithmetic sequence automatic setup device 10 of an embedded software development support system acquires all blocks of each block diagram that indicate an input. A coordinate acquisition function unit 12 acquires coordinate information that pertains to each of the acquired blocks. A coordinate comparison function unit 13 compares each of the acquired coordinate information, and adds an input-side block to an arithmetic sequence setup list on the basis of the comparison result and presetting rules. An arithmetic sequence setup block acquisition function unit 14 extracts one block from the beginning of the arithmetic sequence setup list. An arithmetic sequence addition function unit 15 adds the extracted block to the arithmetic sequence setup list. An output block addition function unit 16 adds a block that is on the output side of the extracted block to the arithmetic sequence setup list.SELECTED DRAWING: Figure 1

Description

本発明は、産業機器や家電製品などに内蔵されるシステムで動作する組み込みソフトウェアの開発を支援するシステム、方法並びにプログラムであって、特に組み込みソフトウェアにおけるブロック間の演算順序を自動設定する技術に関する   The present invention relates to a system, a method, and a program for supporting the development of embedded software that operates in a system built in industrial equipment, home appliances, and the like, and more particularly to a technique for automatically setting the operation order between blocks in the embedded software.

周知のように組み込みソフトウェアの開発では、演算に関する設計図としてブロック線図(ブロック図ともいう。)を作成する。例えば開発対象の組み込み機器が加算と乗算とを実行する場合、入力から出力まで加算や乗算を表すブロックを配置し、ブロック間を線で結んで演算順序を表現する。   As is well known, in the development of embedded software, a block diagram (also referred to as a block diagram) is created as a design drawing related to computation. For example, when an embedded device to be developed executes addition and multiplication, blocks representing addition and multiplication are arranged from input to output, and the operation order is expressed by connecting the blocks with lines.

ここで作成したブロック線図を元にプログラムを作成し、作成されたプログラムを専用のコンパイラを使用してコンパイル化し、実機に組み込んで動作を試験する。例えば特許文献1の組み込みソフトウェア開発支援システムなどによりプログラムが作成されている。   A program is created based on the block diagram created here, and the created program is compiled using a dedicated compiler and incorporated into an actual machine to test the operation. For example, a program is created by an embedded software development support system disclosed in Patent Document 1.

この特許文献1の組み込みソフトウェア開発支援システムは、複数のブロックで構成されるブロック線図の各ブロックの演算順序を設定する装置として、演算順序自動設定装置と演算順序手動設定装置とを備え、該両装置で設定した演算順序にしたがってソースコード作成とコンパイルによりプログラムを生成し、演算シミュレーション装置で動作試験を行っている。   The embedded software development support system of Patent Document 1 includes an operation order automatic setting device and an operation order manual setting device as devices for setting the operation order of each block in a block diagram composed of a plurality of blocks. A program is generated by creating and compiling source code according to the calculation order set by both apparatuses, and an operation test is performed by an operation simulation apparatus.

図3に基づき特許文献1の演算順序自動設定を説明する。図3(a)は、単線のブロック線図を示している。この場合には入力側から出力側に向かってブロックが探索され、入力ブロック(i1)から出力ブロック(o1)への一方向(矢印F方向)に演算順序が自動設定される。   Based on FIG. 3, the automatic calculation order setting of Patent Document 1 will be described. FIG. 3A shows a block diagram of a single line. In this case, blocks are searched from the input side to the output side, and the calculation order is automatically set in one direction (arrow F direction) from the input block (i1) to the output block (o1).

また、図3(b)は、分岐のあるブロック線図を示している。この場合には出力側の優先順位が高いブロックが先に演算される。図中の数字は、前記優先順位の数値を示し、数値の小さいブロックの優先順位が高いことを示している。したがって、演算ブロックAが先に演算されて出力され、その後に演算ブロックBが演算されて出力される。   FIG. 3B shows a block diagram having a branch. In this case, the block with the higher priority on the output side is calculated first. The numbers in the figure indicate the numerical values of the priorities, and indicate that the blocks with a small numerical value have a high priority. Therefore, the calculation block A is calculated and output first, and then the calculation block B is calculated and output.

さらに図3(c)は、多入力のブロック線図を示している。この場合にも入力の優先順位が高いブロックが先に演算される。したがって、演算ブロックBが先に演算されて演算ブロックCに入力され、その後に演算ブロックAが演算されて演算ブロックCに入力される。   Further, FIG. 3C shows a block diagram of multiple inputs. Also in this case, a block having a higher input priority is calculated first. Therefore, the calculation block B is calculated first and input to the calculation block C, and then the calculation block A is calculated and input to the calculation block C.

特開2010−66847JP 2010-66847 A

特許文献1の組み込みソフトウェア開発支援システムによれば、ブロック線図の示す演算処理が前の演算結果を使用しない場合、即ちデータ間につながりのない別々の演算を行う場合には、演算順序はブロックを配置した順番に依存する。   According to the embedded software development support system of Patent Document 1, when the calculation process shown in the block diagram does not use the previous calculation result, that is, when different calculations without connection between data are performed, the calculation order is a block. Depends on the order of placement.

したがって、既に配置されたブロックの位置を入れ替えた場合でも、予め決定された演算順序は変更されない。図4に基づき説明すれば、図4(a)に示す演算ブロックAの演算処理結果は、演算ブロックBの演算処理には利用されず、それぞれの演算処理にはデータにつながりはなく、別々の演算といえる。   Therefore, even when the positions of already arranged blocks are exchanged, the predetermined calculation order is not changed. If it demonstrates based on FIG. 4, the calculation process result of the calculation block A shown to Fig.4 (a) will not be utilized for the calculation process of the calculation block B, and there is no connection with data in each calculation process, and it is different. It can be said to be an operation.

この場合、図4(b)に示すように、「入力ブロック(i1)から演算ブロックAを介して出力ブロック(o1)で出力される」一連の演算処理と、「入力ブロック(i2)から演算ブロックBを介して出力ブロック(o2)で出力される」一連の演算処理ブロックとを上下の位置関係を入れ替えても、最初のブロック配置時に決められた演算順序は不変である。   In this case, as shown in FIG. 4B, a series of arithmetic processing “output from the input block (i1) through the arithmetic block A and output block (o1)” and “calculation from the input block (i2)” Even if the upper and lower positional relations of a series of operation processing blocks output from the output block (o2) via the block B are switched, the operation order determined at the time of the first block arrangement is not changed.

その結果、開発者は、既に決定された演算順序を所望の演算順序に変更する場合にブロック線図を作り直さなければならなかった。これでは効率的でなく、開発者の労力負担が増加するおそれがある。   As a result, the developer has to recreate the block diagram when changing the already determined operation order to a desired operation order. This is not efficient and may increase the burden on the developer.

本発明は、このような従来の問題を解決するためになされ、各ブロック線図がデータ間につながりのない別々の演算処理を行う場合に改めて作成し直すことなく、所望の演算順序へ変更可能とすることで開発者の労力軽減を図ることを解決課題としている。   The present invention is made to solve such a conventional problem, and each block diagram can be changed to a desired calculation order without re-creating it when performing separate calculation processing without connection between data. The solution is to reduce the developer's effort.

本発明の組み込みソフトウェア開発支援システムは、各ブロック線図の入力を示すブロックをすべて取得する開始ブロック取得機能部と、前記開始ブロック取得機能部の取得した各ブロックの座標情報を取得する座標取得機能部と、前記座標取得機能部の取得した各座標情報を比較し、該比較の結果と事前設定のルールとに基づき演算順序設定リストに入力側のブロックを追加する座標比較機能部と、前記演算順序設定リストの先頭から一つのブロックを取り出す演算順序設定ブロック取得機能部と、前記演算ブロック設定取得機能部の取出したブロックを演算順序リストに追加する演算順序追加機能部と、前記取出したブロックの出力側のブロックを演算順序設定リストに追加する出力ブロック追加機能部と、を備える。   The embedded software development support system of the present invention includes a start block acquisition function unit that acquires all the blocks indicating the input of each block diagram, and a coordinate acquisition function that acquires coordinate information of each block acquired by the start block acquisition function unit And a coordinate comparison function unit that compares each coordinate information acquired by the coordinate acquisition function unit, and adds a block on the input side to the calculation order setting list based on the comparison result and a preset rule, and the calculation An operation order setting block acquisition function unit for extracting one block from the head of the order setting list, an operation order addition function unit for adding the block extracted by the operation block setting acquisition function unit to the operation order list, and the extracted block An output block addition function unit for adding the output side block to the calculation order setting list.

本発明の組み込みソフトウェア開発支援方法は、各ブロック線図の入力を示すブロックをすべて取得する開始ブロック取得ステップと、前記開始ブロック取得ステップで取得した各ブロックの座標情報を取得する座標取得ステップと、前記座標取得ステップで取得した各座標情報を比較し、該比較の結果と事前設定のルールとに基づき演算順序設定リストに入力側のブロックを追加する座標比較ステップと、前記演算順序設定リストの先頭から一つのブロックを取り出す演算順序設定ブロック取得ステップと、前記演算ブロック設定取得ステップで取出したブロックを演算順序リストに追加する演算順序追加ステップと、前記取出したブロックの出力側のブロックを演算順序設定リストに追加する出力ブロック追加ステップと、を有する。   The embedded software development support method of the present invention includes a start block acquisition step for acquiring all blocks indicating input of each block diagram, a coordinate acquisition step for acquiring coordinate information of each block acquired in the start block acquisition step, The coordinate comparison step of comparing each coordinate information acquired in the coordinate acquisition step, and adding the block on the input side to the calculation order setting list based on the result of the comparison and a preset rule, and the head of the calculation order setting list An operation order setting block acquisition step for extracting one block from the operation block, an operation order addition step for adding the block extracted in the operation block setting acquisition step to the operation order list, and an operation order setting for the output side block of the extracted block Adding an output block to the list.

前記ルールとしては、前記座標情報の順に演算順序設定リストに追加することを定めることができる。なお、本発明は、前記ソフトウェア開発支援システムとしてコンピュータを機能させるプログラムであってもよい。   As the rule, it can be determined that the coordinate information is added to the calculation order setting list in the order of the coordinate information. The present invention may be a program that causes a computer to function as the software development support system.

本発明によれば、各ブロック線図がデータ間につながりのない別々の演算処理を行う場合に改めて作成し直すことなく、所望の演算順序に変更することができ、この点で開発者の労力軽減に貢献できる。   According to the present invention, each block diagram can be changed to a desired calculation order without re-creating it when performing separate calculation processing without connection between data. Can contribute to mitigation.

本発明の実施形態に係る組み込みソフトウェア開発支援システムの自動演算設定装置の主要機能部を示す構成図。The block diagram which shows the main function parts of the automatic calculation setting apparatus of the embedded software development support system which concerns on embodiment of this invention. (a)はブロック線図の位置変更前の演算順序算出を示す説明図、(b)は(a)のブロック線図の位置変更後の演算順序算出を示す説明図。(A) is explanatory drawing which shows calculation order calculation before the position change of a block diagram, (b) is explanatory drawing which shows calculation order calculation after the position change of the block diagram of (a). (a)は特許文献1における単線のブロック線図の演算順序を示す説明図、(b)は同分岐がある場合の演算順序を示す説明図、(c)は同多入力の場合の演算順序を示す説明図。(A) is explanatory drawing which shows the calculation order of the block diagram of a single line in patent document 1, (b) is explanatory drawing which shows the calculation order in case there exists the same branch, (c) is the calculation order in the case of the same multi-input. FIG. (a)は二つのブロック線図でデータ間につながりのない別々の演算を行う場合を示す図。(b)は(a)の各ブロック線図の上下を入れ替えた状態を示す図。(A) is a figure which shows the case where a separate calculation without connection between data is performed with two block diagrams. (B) is a figure which shows the state which replaced each block diagram of (a).

以下、本発明の実施形態に係る組み込みソフトウェア開発支援システムを説明する。このソフトウェア開発支援システムは、複数のブロックで構成されるブロック線図(ブロック図)の各ブロックの演算順序を設定する装置として、図1に示すように、算順序自動設定装置10と演算順序手動設定装置18とを備える。   Hereinafter, an embedded software development support system according to an embodiment of the present invention will be described. As shown in FIG. 1, this software development support system is a device for setting the calculation order of each block in a block diagram (block diagram) composed of a plurality of blocks. And a setting device 18.

この両装置10,18により演算順序が設定され、該設定された演算順序に従ってプログラム生成装置19にてソースコード生成とコンパイルとによりプログラムが生成され、演算シミュレーション装置20で動作試験を行う。   An operation order is set by both the devices 10 and 18, a program is generated by source code generation and compilation in the program generation device 19 in accordance with the set operation order, and an operation test is performed by the operation simulation device 20.

なお、前記各装置18〜20は、特許文献1と同じなため、説明を省略する。ここでは演算順序自動設定装置10を中心に前記ソフトウェア開発支援システムを説明する。   In addition, since each said apparatus 18-20 is the same as patent document 1, description is abbreviate | omitted. Here, the software development support system will be described focusing on the calculation order automatic setting device 10.

≪構成例≫
図1に基づき前記演算順序自動設定装置10の構成例を説明する。この演算順序自動設定装置10は、入力ブロックの座標情報を基準に演算順序を決定する機能が追加されている点で特許文献1と相違する。
≪Configuration example≫
A configuration example of the calculation order automatic setting device 10 will be described with reference to FIG. The calculation order automatic setting device 10 is different from Patent Document 1 in that a function for determining the calculation order based on the coordinate information of the input block is added.

具体的には前記演算順序設定装置10は、コンピュータにより構成され、コンピュータの通常のハードウェアリソース(例えばCPU,RAMやROMなどの主記憶装置,SSD,HDDなどの補助記憶装置)を備える。   Specifically, the calculation order setting device 10 is configured by a computer and includes normal hardware resources of the computer (for example, a main storage device such as a CPU, a RAM and a ROM, and an auxiliary storage device such as an SSD and an HDD).

このハードウェアリソースとソフトウェアリソース(OS,アプリケーションなど)の協働の結果、前記演算順序自動設定装置10は、開始ブロック取得機能部11,座標取得機能部12,座標比較機能部13,演算順序設定ブロック取得機能部14,演算順序追加機能部15,出力ブロック追加機能部16,優先ブロック追加機能部17,演算順序設定リストDB21,演算順序リストDB22を実装する。   As a result of the cooperation of this hardware resource and software resource (OS, application, etc.), the calculation order automatic setting device 10 has a start block acquisition function unit 11, a coordinate acquisition function unit 12, a coordinate comparison function unit 13, and a calculation order setting. A block acquisition function unit 14, an operation order addition function unit 15, an output block addition function unit 16, a priority block addition function unit 17, an operation order setting list DB 21, and an operation order list DB 22 are mounted.

この各機能部11〜17および各DB21,22のそれぞれは、同一コンピュータに実装してもよく、複数のコンピュータに分散して実装してもよく、前記各装置18〜20と同じコンピュータに実装してもよく、異なるコンピュータに実装してもよい。なお、各DB21,22は前記記憶装置に構築され、演算順序設定リストと演算順序リストとを保持している。   Each of the functional units 11 to 17 and the DBs 21 and 22 may be mounted on the same computer, may be distributed on a plurality of computers, or may be mounted on the same computer as the devices 18 to 20. It may be implemented on a different computer. Each DB 21 and 22 is constructed in the storage device, and holds an operation order setting list and an operation order list.

開始ブロック取得機能部11は、各ブロック線図に示す一連の演算処理の開始を示すブロックを取得する。例えば各ブロック線図に表された入力ブロックを取得する。   The start block acquisition function unit 11 acquires a block indicating the start of a series of arithmetic processing shown in each block diagram. For example, the input block represented in each block diagram is acquired.

座標取得機能部12は、開始ブロック取得機能部11で取得された各ブロックの座標情報(例えば座標位置)を取得する。すなわち、ブロック線図においては、入力ブロック,演算ブロック,出力ブロック、各分岐点などのそれぞれに座標情報が設定され、該設定されたブロックの座標情報を取得するものとする。   The coordinate acquisition function unit 12 acquires coordinate information (for example, coordinate position) of each block acquired by the start block acquisition function unit 11. That is, in the block diagram, coordinate information is set for each of an input block, a calculation block, an output block, each branch point, and the like, and the coordinate information of the set block is acquired.

座標比較機能部13は、座標取得機能部12の取得した各座標情報を比較し、矢印Hに示すように、比較結果と事前設定のルールとに基づき前記DB21の演算順序設定リストに追加(記述)する。ここでは前記ルールの一例として座標位置の順、即ち座標位置が上のブロックが先となるように入力側のブロックを追加することが設定されている。   The coordinate comparison function unit 13 compares the coordinate information acquired by the coordinate acquisition function unit 12 and adds to the calculation order setting list of the DB 21 based on the comparison result and the preset rule as shown by the arrow H (description) ) Here, as an example of the rule, the order of the coordinate position, that is, the addition of the input side block is set so that the block with the upper coordinate position comes first.

演算順序設定ブロック取得機能部14は、矢印Iに示すように、前記DB21の演算順序設定リストの先頭から一つのブロックを取り出す。ここで取り出されたブロックは、矢印Jに示すように、演算順序追加機能部15により前記DB22の演算順序リストに追加される。これにより前記DB22の演算順序リストには、演算順序設定のために演算順序設定リストの先頭から取り出されたブロックが順次に格納される。   The calculation order setting block acquisition function unit 14 takes out one block from the top of the calculation order setting list of the DB 21 as indicated by an arrow I. The blocks taken out here are added to the calculation order list of the DB 22 by the calculation order addition function unit 15 as indicated by an arrow J. Thus, the blocks extracted from the head of the calculation order setting list for setting the calculation order are sequentially stored in the calculation order list of the DB 22.

出力ブロック追加機能部15は、前記取り出されたブロックの出力側のブロックを、矢印Kに示すように、前記DB21の演算順序設定リストに追加する。これにより前記DB21の演算順序設定リストには、座標情報が上のものが先頭となるように入力側および出力側のブロックが格納される。   The output block addition function unit 15 adds the block on the output side of the extracted block to the calculation order setting list of the DB 21 as indicated by an arrow K. As a result, the block on the input side and the output side are stored in the calculation order setting list of the DB 21 so that the top coordinate information is the top.

なお、優先ブロック追加機能部17は、入力ブロックに結線されたブロックが複数存在する場合や、ブロックの出力側に接続されるブロックが複数存在する場合などに特許文献1と同じ処理を実行する。   Note that the priority block addition function unit 17 executes the same processing as in Patent Document 1 when there are a plurality of blocks connected to the input block or when there are a plurality of blocks connected to the output side of the block.

≪実施例≫
図2に基づき前記演算順序自動設定装置10を用いた実施例を説明する。ここでは開発者により図2(a)のブロック線図(α),(β)が作成された場合の演算順序設定を説明する。
<Example>
An embodiment using the calculation order automatic setting device 10 will be described with reference to FIG. Here, description will be given of the calculation order setting when the developer creates the block diagrams (α) and (β) of FIG.

このブロック線図(α)は、「入力ブロック(i1)から演算ブロックAを介して出力ブロック(o1)で出力される」単線接続に関する。また、ブロック線図(β)は、「入力ブロック(i2)から演算ブロックBを介して出力ブロック(o2)で出力される」単線接続に関する。作成されたブロック線図(α),(β)は、図示省略のデータベースに格納される。   This block diagram (α) relates to a single line connection “output from the input block (i1) via the operation block A at the output block (o1)”. Further, the block diagram (β) relates to a single-line connection “output from the input block (i2) via the operation block B to the output block (o2)”. The created block diagrams (α) and (β) are stored in a database (not shown).

(1)実施例1
実施例1では、ブロック線図(α),(β)に対する基本的な演算順序自動設定の処理を説明する。まず、開発者の操作などで処理が開始されると、開始ブロック取得機能部11は、前記データベースからブロック線図(α),(β)を取得し、さらにブロック線図(α),(β)からすべての入力ブロック、即ち入力ブロック(i1)と入力ブロック(i2)とを取得する。ここで取得された両入力ブロック(i1),(i2)は、前記記憶装置などに一時記憶される。
(1) Example 1
In the first embodiment, basic calculation order automatic setting processing for block diagrams (α) and (β) will be described. First, when processing is started by a developer's operation or the like, the start block acquisition function unit 11 acquires block diagrams (α) and (β) from the database, and further, block diagrams (α) and (β ), All the input blocks, that is, the input block (i1) and the input block (i2) are obtained. Both input blocks (i1) and (i2) acquired here are temporarily stored in the storage device or the like.

つぎに座標取得機能部12により両入力ブロック(i1),(i2)の座標位置が取得され、その後に取得された両座標位置が比較される。この場合に入力ブロック(i1)は、入力ブロック(i2)よりも座標位置が上であり、前記DB21の演算順序設定リストへの追加順序(記述順位)が先となる。   Next, the coordinate acquisition function unit 12 acquires the coordinate positions of both input blocks (i1) and (i2), and then compares the acquired coordinate positions. In this case, the input block (i1) has a higher coordinate position than the input block (i2), and the order of addition (description order) to the calculation order setting list in the DB 21 is first.

したがって、図2(a)の矢印Hにおいて、入力ブロック(i1)が先頭となるように入力側のブロックが追加される。このとき入力ブロック(i1)に接続された演算ブロックAが、入力ブロック(i2)に接続された演算ブロックBよりも先に追加される。   Therefore, the input side block is added so that the input block (i1) is at the head at the arrow H in FIG. At this time, the operation block A connected to the input block (i1) is added before the operation block B connected to the input block (i2).

そして、演算順序設定ブロック取得機能部14により前記DB21の演算順序設定リストの先頭から順にブロックが取り出される。ここで取り出されたブロックは、演算順序追加機能部15により前記DB22の演算順序リストに順次追加される。   Then, the calculation order setting block acquisition function unit 14 extracts blocks in order from the top of the calculation order setting list of the DB 21. The extracted blocks are sequentially added to the calculation order list of the DB 22 by the calculation order addition function unit 15.

このとき入力側のブロックについては、矢印Iにおいて前記DB21の演算順序設定リストから「演算ブロックA→演算ブロックB」の順で取り出され、矢印Jにおいて前記DB22の演算順序リストに「演算ブロックA→演算ブロックB」の順で追加される。   At this time, the input side blocks are extracted from the calculation order setting list of the DB 21 in the order of “arithmetic block A → arithmetic block B” at the arrow I, and are added to the arithmetic order list of the DB 22 at the arrow J. They are added in the order of “calculation block B”.

また、演算順序設定ブロック取得機能部14により取出された前記ブロックの出力側のブロックは、出力ブロック追加機能部16により前記DB22の演算順序リスト設定リストに追加される。   Further, the output side block of the block extracted by the calculation order setting block acquisition function unit 14 is added to the calculation order list setting list of the DB 22 by the output block addition function unit 16.

これにより演算ブロックAが演算順序「1」となり、演算ブロックBが演算順序「2」となり、その後に優先ブロック追加機能部17などで出力側の演算順序が決められる。なお、前記DB21の演算順序設定リストが空になると演算順序自動設定の処理を終了する。   As a result, the calculation block A becomes the calculation order “1”, the calculation block B becomes the calculation order “2”, and then the calculation order on the output side is determined by the priority block addition function unit 17 or the like. When the calculation order setting list in the DB 21 becomes empty, the calculation order automatic setting process ends.

(2)実施例2
実施例2では、ブロック線図(α)の位置とブロック線図(β)の位置とを上下入れ替えた場合における演算順序の再設定を説明する。このときブロック線図(α),(β)は、データ間につながりのない別々の演算を行うため、特許文献1によれば演算順序はブロックを配置した順番に依存する。
(2) Example 2
In the second embodiment, resetting of the calculation order when the position of the block diagram (α) and the position of the block diagram (β) are swapped up and down will be described. At this time, since the block diagrams (α) and (β) perform different calculations that are not connected between data, according to Patent Document 1, the calculation order depends on the order in which the blocks are arranged.

これに対して前記演算順序自動設定装置10によれば、上下入れ替えの配置変更を考慮した演算順序の自動再設定が実行される。すなわち、実施例1の自動設定された演算順序は「演算ブロックA→演算ブロックB」であるものの、何らかの理由により開発者が演算ブロックBよりも演算ブロックAを先に演算するように再設定したい場合がある。   On the other hand, according to the calculation order automatic setting device 10, the calculation order is automatically reset in consideration of the change in the arrangement of the upside down. That is, although the calculation sequence automatically set in the first embodiment is “calculation block A → calculation block B”, the developer wants to reset the calculation block A before the calculation block B for some reason. There is a case.

この場合に開発者は、ブロック線図(α),(β)をディスプレイに表示させてブロック線図(β)を選択し、さらにブロック線図(α)の上に移動させる。この開発者の操作に応じて前記演算順序自動設定装置10が、演算順序の自動再設定処理を実行する。   In this case, the developer displays the block diagrams (α) and (β) on the display, selects the block diagram (β), and further moves the block diagram (α) onto the block diagram (α). In accordance with the developer's operation, the calculation order automatic setting device 10 executes the calculation order automatic resetting process.

図2(b)に基づき詳細を説明すれば、座標取得機能部12により入力ブロック(i1),(i2)の座標位置が再取得される。ここではブロック線図(α),(β)の位置の上下が入れ替えられたため、入力ブロック(i2)の座標位置は、入力ブロック(i1)よりも上となり、矢印Pに示すように、前記DB21の演算順序設定リストが書き換えられる。   If the details are described based on FIG. 2B, the coordinate position of the input blocks (i1) and (i2) is reacquired by the coordinate acquisition function unit 12. Here, since the upper and lower positions of the block diagrams (α) and (β) are interchanged, the coordinate position of the input block (i2) is above the input block (i1), and the DB 21 as shown by the arrow P, as shown in FIG. The calculation order setting list is rewritten.

すなわち、入力ブロック(i2)の演算順序設定リストへの記述順位が先なため、図2(b)の矢印Hにおいて入力ブロック(i2)が先頭なるように演算順序設定リストが更新され、それぞれの入力側のブロックが記述される。   That is, since the description order of the input block (i2) in the calculation order setting list is first, the calculation order setting list is updated so that the input block (i2) is first at the arrow H in FIG. The input side block is described.

また、演算順序設定ブロック取得機能部14により前記DB21の演算順序設定リストの先頭から順にブロックが取り出され、取り出されたブロックが演算順序追加機能部15により前記DB22の演算順序リストに順次記述されて更新される。   Further, the calculation order setting block acquisition function unit 14 sequentially extracts blocks from the top of the calculation order setting list of the DB 21, and the extracted blocks are sequentially described in the calculation order list of the DB 22 by the calculation order addition function unit 15. Updated.

このとき入力側のブロックについては、矢印Iにおいて前記DB21の演算順序設定リストから「演算ブロックB→演算ブロックA」の順で取り出され、矢印Jにおいて前記DB22の演算順序リストに「演算ブロックB→演算ブロックA」の順で記述される。   At this time, the input side blocks are taken out from the calculation order setting list of the DB 21 in the order of “arithmetic block B → arithmetic block A” in the arrow I, and in the arithmetic order list of the DB 22 in the arrow J, “arithmetic block B → It is described in the order of “operation block A”.

また、演算順序設定ブロック取得機能部14により取出された前記ブロックの出力側のブロックは、出力ブロック追加機能部16により前記DB21の演算順序リスト設定リストに記述される。   Further, the block on the output side of the block extracted by the calculation order setting block acquisition function unit 14 is described in the calculation order list setting list of the DB 21 by the output block addition function unit 16.

これにより演算ブロックBが演算順序「1」となり、演算ブロックAが演算順序「2」に変更され、その後に優先ブロック追加機能部17などで出力側の演算順序が決められる。なお、実施例1と同じく前記DB21の演算順序設定リストが空になると演算順序自動再設定の処理を終了する。   As a result, the calculation block B is changed to the calculation order “1”, the calculation block A is changed to the calculation order “2”, and then the calculation order on the output side is determined by the priority block addition function unit 17 or the like. As in the first embodiment, when the calculation order setting list in the DB 21 becomes empty, the calculation order automatic resetting process is terminated.

このように前記演算順序自動設定装置10を備えた前記ソフトウェア開発支援システムによれば、入力ブロックの座標位置を基準に演算順序が決定されるため、矢印F2に示す入力ブロックから出力ブロックへの方向だけではなく、矢印F1に示すブロック線図の移動位置に応じた演算順序を設定することが可能となる。   In this way, according to the software development support system provided with the calculation order automatic setting device 10, the calculation order is determined based on the coordinate position of the input block, so the direction from the input block to the output block indicated by the arrow F2 In addition, it is possible to set the calculation order according to the movement position of the block diagram indicated by the arrow F1.

これにより既に作成したブロック線図の配置を変更するだけで自在に演算順序を変更することができる。特に各ブロック線図がデータ間につながりのない別々の演算処理を行う場合であっても改めて作成し直すことなく、開発者の所望の演算順序に自動的に再設定できる。この点で効率性が向上し、開発者の労力が軽減される。   As a result, the calculation order can be freely changed simply by changing the arrangement of the already created block diagram. In particular, each block diagram can be automatically reset to a developer's desired calculation order without re-creating it, even when separate calculation processes without connection between data are performed. This improves efficiency and reduces developer effort.

また、作成済みのブロック線図の演算順序を自在に変更可能なため、ブロック線図の作成順序は演算順序決定の際の決定的要因とはならず、この点でも開発者の負担を軽減できる。   In addition, since the calculation order of the created block diagram can be freely changed, the creation order of the block diagram is not a decisive factor in determining the calculation order, and this can also reduce the burden on the developer. .

なお、本発明は、上記実施形態に限定されるものではなく、各請求項に記載された範囲内で変形して実施することができる。例えば本発明は、前記各部11〜17,21,22としてコンピュータを機能させる組み込みソフトウェア開発支援プログラムとすることもできる。   In addition, this invention is not limited to the said embodiment, It can deform | transform and implement within the range described in each claim. For example, the present invention may be an embedded software development support program that causes a computer to function as each of the units 11 to 17, 21, and 22.

このプログラムによれば、前記実施例1,2の処理内容をコンピュータに実行させることができる。このプログラムは、例えばCD−ROMやDVD−ROMなどの記録媒体に記録して配布でき、またネットワーク経由で配布することもできる。   According to this program, the processing contents of the first and second embodiments can be executed by a computer. This program can be distributed by being recorded on a recording medium such as a CD-ROM or a DVD-ROM, or can be distributed via a network.

10…演算順序自動設定装置
11…開始ブロック取得機能部
12…座標取得機能部
13…座標比較機能部
14…演算順序設定ブロック取得機能部
15…演算順序追加機能部
16…出力ブロック追加機能部
17…優先ブロック追加機能部
18…演算順序手動設定装置
19…プログラム生成装置
20…演算シミュレーション装置
21…演算順序設定リストDB
22…演算順序リストDB
DESCRIPTION OF SYMBOLS 10 ... Calculation order automatic setting apparatus 11 ... Start block acquisition function part 12 ... Coordinate acquisition function part 13 ... Coordinate comparison function part 14 ... Calculation order setting block acquisition function part 15 ... Calculation order addition function part 16 ... Output block addition function part 17 ... priority block addition function part 18 ... calculation order manual setting device 19 ... program generation device 20 ... calculation simulation device 21 ... calculation order setting list DB
22 ... Operation order list DB

Claims (5)

ブロック間を結線して演算順序を表現したブロック線図に基づきプログラムを作成し、作成されたプログラムをコンパイルして実機に組み込むソフトウェアとする組み込みソフトウェア開発支援システムであって、
前記各ブロック線図の入力を示すブロックをすべて取得する開始ブロック取得機能部と、
前記開始ブロック取得機能部の取得した各ブロックの座標情報を取得する座標取得機能部と、
前記座標取得機能部の取得した各座標情報を比較し、該比較の結果と事前設定のルールとに基づき演算順序設定リストに入力側のブロックを追加する座標比較機能部と、
前記演算順序設定リストの先頭から一つのブロックを取り出す演算順序設定ブロック取得機能部と、
前記演算ブロック設定取得機能部の取出したブロックを演算順序リストに追加する演算順序追加機能部と、
前記取出したブロックの出力側のブロックを演算順序設定リストに追加する出力ブロック追加機能部と、
を備えることを特徴とする組み込みソフトウェア開発支援システム。
An embedded software development support system that creates a program based on a block diagram that expresses the operation sequence by connecting blocks, and compiles the created program into software that is embedded in an actual machine.
A start block acquisition function unit for acquiring all the blocks indicating the input of each of the block diagrams;
A coordinate acquisition function unit for acquiring coordinate information of each block acquired by the start block acquisition function unit;
A coordinate comparison function unit that compares each coordinate information acquired by the coordinate acquisition function unit, and adds a block on the input side to the calculation order setting list based on the result of the comparison and a preset rule;
A calculation order setting block acquisition function unit for extracting one block from the top of the calculation order setting list;
A calculation order addition function unit for adding the block extracted by the calculation block setting acquisition function unit to the calculation order list;
An output block addition function unit for adding a block on the output side of the extracted block to the calculation order setting list;
An embedded software development support system characterized by comprising:
前記ルールとして、前記座標情報の順に演算順序設定リストに追加することが定められている
ことを特徴とする請求項1記載の組み込みソフトウェア開発支援システム。
The embedded software development support system according to claim 1, wherein the rule is to add to the calculation order setting list in the order of the coordinate information.
ブロック間を結線して演算順序を表現したブロック線図に基づきプログラムを作成し、作成されたプログラムをコンパイルして実機に組み込むソフトウェアとする組み込みソフトウェア開発支援システムの実行する方法であって、
前記各ブロック線図の入力を示すブロックをすべて取得する開始ブロック取得ステップと、
前記開始ブロック取得ステップで取得した各ブロックの座標情報を取得する座標取得ステップと、
前記座標取得ステップで取得した各座標情報を比較し、該比較の結果と事前設定のルールとに基づき演算順序設定リストに入力側のブロックを追加する座標比較ステップと、
前記演算順序設定リストの先頭から一つのブロックを取り出す演算順序設定ブロック取得ステップと、
前記演算ブロック設定取得ステップで取出したブロックを演算順序リストに追加する演算順序追加ステップと、
前記取出したブロックの出力側のブロックを演算順序設定リストに追加する出力ブロック追加ステップと、
を有することを特徴とする組み込みソフトウェア開発支援方法。
A method for executing a built-in software development support system that creates a program based on a block diagram that expresses an operation order by connecting blocks, and compiles the created program into software to be embedded in a real machine,
A starting block acquisition step of acquiring all blocks indicating the input of each block diagram;
A coordinate acquisition step of acquiring coordinate information of each block acquired in the start block acquisition step;
A coordinate comparison step of comparing each coordinate information acquired in the coordinate acquisition step, and adding an input side block to the calculation order setting list based on the result of the comparison and a preset rule,
A calculation order setting block acquisition step for extracting one block from the top of the calculation order setting list;
An operation order addition step of adding the block extracted in the operation block setting acquisition step to the operation order list;
An output block adding step of adding a block on the output side of the extracted block to the calculation order setting list;
An embedded software development support method characterized by comprising:
前記座標比較ステップにおいて、
前記ルールとして、前記座標情報の順に演算順序設定リストに追加することが定められている
ことを特徴とする請求項3記載の組み込みソフトウェア開発支援方法。
In the coordinate comparison step,
The embedded software development support method according to claim 3, wherein the rule is to add to the calculation order setting list in the order of the coordinate information.
請求項1または2のいずれか1項に記載の組み込みソフトウェア開発支援システムとして、コンピュータを機能させることを特徴とする組み込みソフトウェア開発支援プログラム。   An embedded software development support program for causing a computer to function as the embedded software development support system according to claim 1.
JP2015163307A 2015-08-21 2015-08-21 Embedded software development support system, embedded software development support method, and embedded software development support program Pending JP2017041157A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015163307A JP2017041157A (en) 2015-08-21 2015-08-21 Embedded software development support system, embedded software development support method, and embedded software development support program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015163307A JP2017041157A (en) 2015-08-21 2015-08-21 Embedded software development support system, embedded software development support method, and embedded software development support program

Publications (1)

Publication Number Publication Date
JP2017041157A true JP2017041157A (en) 2017-02-23

Family

ID=58206570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015163307A Pending JP2017041157A (en) 2015-08-21 2015-08-21 Embedded software development support system, embedded software development support method, and embedded software development support program

Country Status (1)

Country Link
JP (1) JP2017041157A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019096789A (en) * 2017-11-24 2019-06-20 株式会社デンソー Ignition coil for internal combustion engine

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019096789A (en) * 2017-11-24 2019-06-20 株式会社デンソー Ignition coil for internal combustion engine

Similar Documents

Publication Publication Date Title
US9424006B2 (en) Execution optimization of mobile applications
US20140298321A1 (en) Installation control method and installation control apparatus
JP2017504910A5 (en)
CN112199855B (en) Dynamic generation method, device, equipment and medium for thermal hydraulic simulation software
JP6003699B2 (en) Test data generation program, method and apparatus
JP2015103021A (en) Method for obtaining execution frequency information on execution paths in control flow graph, and computer and computer program for obtaining the information
US20180316587A1 (en) Automated analysis and recommendations for highly performant single page web applications
JP7015625B2 (en) Step-back mechanism for developing and diagnosing process applications
JP2017041157A (en) Embedded software development support system, embedded software development support method, and embedded software development support program
CN109992516B (en) Programming debugging method and device and related product
JP2016192692A (en) Path arrangement method, path arrangement device, and program
JP5687122B2 (en) Software evaluation device, software evaluation method, and system evaluation device
CN103853554A (en) Software reconstruction position determination method and software reconstruction position identification device
JP2007080049A (en) Built-in program generation method, built-in program development system and information table section
JP6087472B2 (en) Program diagram creating apparatus, program diagram creating method, and program diagram creating program
JP2010102362A (en) Software development support system, development support method, and program
JP6157745B2 (en) Execution time estimation program and execution time estimation device
JP6088445B2 (en) Software scale arithmetic device and program
US10902174B1 (en) Power and ground mesh modeling for placement in circuit design
US11928500B1 (en) Multi-threaded network routing based on partitioning
JP5602273B1 (en) Power system simulator, power system simulation program, and simulation method
JP6452904B1 (en) Design support apparatus, design support method, and program
JP7292333B2 (en) Decision support device, decision support program and decision support method
JP2020502687A5 (en)
CN113238967A (en) Test case generation method and device