JP7794409B2 - ソフトウェア開発装置、ソフトウェア開発プログラムおよびソフトウェア開発方法 - Google Patents
ソフトウェア開発装置、ソフトウェア開発プログラムおよびソフトウェア開発方法Info
- Publication number
- JP7794409B2 JP7794409B2 JP2024217770A JP2024217770A JP7794409B2 JP 7794409 B2 JP7794409 B2 JP 7794409B2 JP 2024217770 A JP2024217770 A JP 2024217770A JP 2024217770 A JP2024217770 A JP 2024217770A JP 7794409 B2 JP7794409 B2 JP 7794409B2
- Authority
- JP
- Japan
- Prior art keywords
- controller
- software development
- generating
- pads
- code
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/47—Retargetable compilers
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y30/00—IoT infrastructure
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
- Programmable Controllers (AREA)
Description
0をIoTシステムに適用した場合について説明するが、本開示はIoTシステムに限らず任意のシステムおよびコントローラに適用可能である。
まず、本実施の形態に従うソフトウェア開発装置100およびエッジデバイス2を含むIoTシステム1の全体構成について説明する。
次に、本実施の形態に従うIoTシステム1に含まれるデバイスのハードウェア構成例について説明する。
ソフトウェア開発装置100は、典型的には汎用コンピュータで実現される。
、複数のコアを有するプロセッサ102を採用してもよい。
は、プロセッサ102で実行される各種プログラムや各種データを保持する。なお、ハードディスク110に代えて、SSD(Solid State Drive)やフラッシュメモリなどの不
揮発性記憶装置を採用してもよい。ハードディスク110に格納されたプログラムのうち、指定されたプログラムがメインメモリ104上に展開され、プロセッサ102は、メインメモリ104上に展開されたプログラムに含まれるコンピュータ可読命令(computer-readable instructions)を順次実行することで、後述するような各種機能を実現する。
ハードワイヤード回路を用いて実現してもよい。さらにあるいは、FPGA(field-programmable gate array)上にコンピュータ可読命令に相当する回路を用いて実現してもよ
い。また、プロセッサ102およびメインメモリ、ASIC、FPGAなどを適宜組み合わせて実現してもよい。
ようにしてもよい。
コントローラ200は、汎用コンピュータを用いて実現してもよいし、処理を実現するために必要なコンポーネントを含む半導体基板を用いて実現してもよい。
、W-CDMA、CDMA200、LTE(Long Term Evolution)、第5世代移動通信
システム(5G)のいずれであってもよい。
<C.課題および解決手段>
次に、本実施の形態に従うソフトウェア開発装置100が解決しようとする課題について説明する。
ードウェアの仕様などを意識せず、ソフトウェア資産を継続して利用することができるという利点が得られる。また、コントローラ200のメーカやベンダは、使用するマイコンなどの仕様が変更されても、各パッドに予め設定されている要求を満たすように内部配線を設計さえすれば、ソースコードの変更や改修などを生じさせることがない。
次に、本実施の形態に従うソフトウェアの機能構成について説明する。
てもよい。
次に、本実施の形態に従うコントローラ200が提供するパッド220の応用例について説明する。上述したように、本実施の形態においては、コントローラ200が有している1または複数のパッド220を特定して各種処理を実行することができる。このようなパッド220を利用することで、様々なハードウェアとの物理的なインターフェイスを実現できる。
ドウェア構成が採用されたとしても、そのハードウェア構成を定義するコンフィグレーション118さえ用意すれば、ソースコード112をそのまま流用できる。すなわち、コントローラ200のハードウェア構成の変更をソフトウェアで吸収できる。
次に、本実施の形態に従うソフトウェア開発装置100におけるソースコード112から実行コード116を生成する処理手順について説明する。
上述の説明においては、説明の便宜上、物理的なインターフェイスの典型例として、パッドについて説明したが、「パッド」という用語に限定されることなく、1または複数の任意の物理的なインターフェイス(信号を遣り取り可能な回路の一部)について同様に適用可能である。
本実施の形態によれば、コントローラ200が提供する物理的なインターフェイスのうち利用されるインターフェイスをソースコード112において定義できるとともに、コントローラ200のハードウェア構成の相違を吸収できる仕組みを提供できる。これによって、コントローラ200に接続されるデバイスから見れば、コントローラ200の種類に依存することなく同一のインターフェイスを維持できるとともに、コントローラ200の変更によらず、ソフトウェアもそのまま利用できる。
Claims (7)
- ソースコードからコントローラの実行コードを生成するためのソフトウェア開発装置であって、
前記ソースコードからパッドを指定する記述を抽出する抽出手段と、
前記抽出されたパッドに従って、前記実行コードを生成する生成手段とを備え、
前記生成手段は、
第1のコントローラ用の実行コードを生成する場合には、前記第1のコントローラのハードウェア情報に基づいて、前記ソースコードから、前記抽出された指定が示すパッドに接続された前記第1のコントローラのピンが特定された第1実行コードを生成し、
前記第1のコントローラとは異なる第2のコントローラ用の実行コードを生成する場合には、前記第2のコントローラのハードウェア情報に基づいて、前記ソースコードから、前記抽出された指定が示すパッドに接続された前記第2のコントローラのピンが特定された第2実行コードを生成し、
前記ハードウェア情報は、対象となるコントローラのピンとパッドとの接続関係を含む、ソフトウェア開発装置。 - 前記パッドを指定する記述は、1または複数のパッドのうち、利用対象のパッドを特定する識別情報を含む、請求項1に記載のソフトウェア開発装置。
- 前記ハードウェア情報は、外部のサーバから追加可能に構成されている、請求項1または2に記載のソフトウェア開発装置。
- 前記ハードウェア情報は、対象となるコントローラのピンと論理ポートとの対応関係をさらに含む、請求項1~3のいずれか1項に記載のソフトウェア開発装置。
- 前記生成手段は、前記ハードウェア情報を参照して、前記抽出された記述により指定されたパッドに接続されているピンと当該ピンに対応する論理ポートとを含む、経路情報を決定する、請求項1~4のいずれか1項に記載のソフトウェア開発装置。
- ソースコードから実行コードを生成するソフトウェア開発プログラムであって、前記ソフトウェア開発プログラムはコンピュータに、
前記ソースコードからパッドを指定する記述を抽出するステップと、
前記抽出されたパッドに従って、前記実行コードを生成するステップとを備え、
前記生成するステップは、
第1のコントローラ用の実行コードを生成する場合に、前記第1のコントローラのハードウェア情報に基づいて、前記ソースコードから、前記抽出された指定が示すパッドに接続された前記第1のコントローラのピンが特定された第1実行コードを生成するステップと、
前記第1のコントローラとは異なる第2のコントローラ用の実行コードを生成する場合に、前記第2のコントローラのハードウェア情報に基づいて、前記ソースコードから、前記抽出された指定が示すパッドに接続された前記第2のコントローラのピンが特定された第2実行コードを生成するステップとを含み、
前記ハードウェア情報は、対象となるコントローラのピンとパッドとの接続関係を含む、ソフトウェア開発プログラム。 - ソースコードから実行コードを生成するコンピュータが実行するソフトウェア開発方法であって、
前記ソースコードからパッドを指定する記述を抽出するステップと、
前記抽出されたパッドに従って、前記実行コードを生成するステップとを備え、
前記生成するステップは、
第1のコントローラ用の実行コードを生成する場合に、前記第1のコントローラのハードウェア情報に基づいて、前記ソースコードから、前記抽出された指定が示すパッドに接続された前記第1のコントローラのピンが特定された第1実行コードを生成するステップと、
前記第1のコントローラとは異なる第2のコントローラ用の実行コードを生成する場合に、前記第2のコントローラのハードウェア情報に基づいて、前記ソースコードから、前記抽出された指定が示すパッドに接続された前記第2のコントローラのピンが特定された第2実行コードを生成するステップとを含み、
前記ハードウェア情報は、対象となるコントローラのピンとパッドとの接続関係を含む、ソフトウェア開発方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2024217770A JP7794409B2 (ja) | 2019-05-31 | 2024-12-12 | ソフトウェア開発装置、ソフトウェア開発プログラムおよびソフトウェア開発方法 |
| JP2025244194A JP2026035883A (ja) | 2019-05-31 | 2025-12-10 | ソフトウェア開発装置およびソフトウェア開発プログラム |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2019103139A JP7385240B2 (ja) | 2019-05-31 | 2019-05-31 | ソフトウェア開発装置およびソフトウェア開発プログラム |
| JP2023188125A JP7630066B2 (ja) | 2019-05-31 | 2023-11-02 | ソフトウェア開発装置およびソフトウェア開発プログラム |
| JP2024217770A JP7794409B2 (ja) | 2019-05-31 | 2024-12-12 | ソフトウェア開発装置、ソフトウェア開発プログラムおよびソフトウェア開発方法 |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2023188125A Division JP7630066B2 (ja) | 2019-05-31 | 2023-11-02 | ソフトウェア開発装置およびソフトウェア開発プログラム |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2025244194A Division JP2026035883A (ja) | 2019-05-31 | 2025-12-10 | ソフトウェア開発装置およびソフトウェア開発プログラム |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2025032310A JP2025032310A (ja) | 2025-03-11 |
| JP2025032310A5 JP2025032310A5 (ja) | 2025-08-15 |
| JP7794409B2 true JP7794409B2 (ja) | 2026-01-06 |
Family
ID=73552153
Family Applications (4)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2019103139A Active JP7385240B2 (ja) | 2019-05-31 | 2019-05-31 | ソフトウェア開発装置およびソフトウェア開発プログラム |
| JP2023188125A Active JP7630066B2 (ja) | 2019-05-31 | 2023-11-02 | ソフトウェア開発装置およびソフトウェア開発プログラム |
| JP2024217770A Active JP7794409B2 (ja) | 2019-05-31 | 2024-12-12 | ソフトウェア開発装置、ソフトウェア開発プログラムおよびソフトウェア開発方法 |
| JP2025244194A Pending JP2026035883A (ja) | 2019-05-31 | 2025-12-10 | ソフトウェア開発装置およびソフトウェア開発プログラム |
Family Applications Before (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2019103139A Active JP7385240B2 (ja) | 2019-05-31 | 2019-05-31 | ソフトウェア開発装置およびソフトウェア開発プログラム |
| JP2023188125A Active JP7630066B2 (ja) | 2019-05-31 | 2023-11-02 | ソフトウェア開発装置およびソフトウェア開発プログラム |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2025244194A Pending JP2026035883A (ja) | 2019-05-31 | 2025-12-10 | ソフトウェア開発装置およびソフトウェア開発プログラム |
Country Status (5)
| Country | Link |
|---|---|
| US (2) | US12393409B2 (ja) |
| EP (1) | EP3979069B1 (ja) |
| JP (4) | JP7385240B2 (ja) |
| TW (2) | TWI875633B (ja) |
| WO (1) | WO2020241571A1 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117610500A (zh) * | 2023-06-01 | 2024-02-27 | 上海同星智能科技有限公司 | 汽车开发用文本代码与图形代码转换定位方法及转换系统 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6357039B1 (en) | 1998-03-03 | 2002-03-12 | Twelve Tone Systems, Inc | Automatic code generation |
| JP2002299452A (ja) | 2001-03-30 | 2002-10-11 | Fujitsu Ltd | 半導体集積回路及び電源レイアウト設計方法 |
| JP2014154800A (ja) | 2013-02-13 | 2014-08-25 | Shinko Electric Ind Co Ltd | 配線基板及びその製造方法 |
| JP2016026385A (ja) | 2009-09-15 | 2016-02-12 | アール アンド ディー サーキッツインコーポレイテッドR & D Circuits Inc. | 相互接続構造における電力利得(電力供給)及び電力損失(電力消費)を改善するインターポーザ基板の内蔵部品 |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5561282A (en) * | 1978-10-27 | 1980-05-08 | Nippon Soken Inc | Separate excitation type inverter circuit |
| JPH02137764A (ja) | 1988-11-18 | 1990-05-28 | Dai Ichi Kogyo Seiyaku Co Ltd | 無機粉体射出成形用バインダー |
| JPH02137764U (ja) * | 1989-04-19 | 1990-11-16 | ||
| JP4457347B2 (ja) | 2005-02-02 | 2010-04-28 | 株式会社デンソー | 自動車用制御装置 |
| JP4958692B2 (ja) * | 2007-08-31 | 2012-06-20 | キヤノン株式会社 | 配信装置、配信方法、及びコンピュータプログラム |
| JP5307581B2 (ja) | 2009-03-02 | 2013-10-02 | ルネサスエレクトロニクス株式会社 | 半導体装置、入力選択制御方法 |
| US20110209128A1 (en) * | 2010-02-24 | 2011-08-25 | Nokia Corporation | Systems, methods and apparatuses for facilitating targeted compilation of source code |
| US9563585B2 (en) | 2014-02-19 | 2017-02-07 | Futurewei Technologies, Inc. | System and method for isolating I/O execution via compiler and OS support |
| CA3172550C (en) * | 2014-05-26 | 2024-05-28 | The Toronto-Dominion Bank | On-boarding server for authorizing an entity to effect electronic payments |
| US10229404B1 (en) * | 2016-12-16 | 2019-03-12 | Worldpay, Llc | Systems and methods for network configurations of pin pads |
| JP6207782B1 (ja) | 2017-03-08 | 2017-10-04 | ネットエージェント株式会社 | ソフトウェア生成システム、情報処理装置およびプログラム |
| CN109002721B (zh) | 2018-07-12 | 2022-04-08 | 南方电网科学研究院有限责任公司 | 一种信息安全漏洞的挖掘分析方法 |
-
2019
- 2019-05-31 JP JP2019103139A patent/JP7385240B2/ja active Active
-
2020
- 2020-05-25 EP EP20814469.1A patent/EP3979069B1/en active Active
- 2020-05-25 WO PCT/JP2020/020542 patent/WO2020241571A1/ja not_active Ceased
- 2020-05-25 US US17/615,043 patent/US12393409B2/en active Active
- 2020-05-28 TW TW113126549A patent/TWI875633B/zh active
- 2020-05-28 TW TW109117815A patent/TWI851728B/zh active
-
2023
- 2023-11-02 JP JP2023188125A patent/JP7630066B2/ja active Active
-
2024
- 2024-12-12 JP JP2024217770A patent/JP7794409B2/ja active Active
-
2025
- 2025-07-18 US US19/273,619 patent/US20250342023A1/en active Pending
- 2025-12-10 JP JP2025244194A patent/JP2026035883A/ja active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6357039B1 (en) | 1998-03-03 | 2002-03-12 | Twelve Tone Systems, Inc | Automatic code generation |
| JP2002299452A (ja) | 2001-03-30 | 2002-10-11 | Fujitsu Ltd | 半導体集積回路及び電源レイアウト設計方法 |
| JP2016026385A (ja) | 2009-09-15 | 2016-02-12 | アール アンド ディー サーキッツインコーポレイテッドR & D Circuits Inc. | 相互接続構造における電力利得(電力供給)及び電力損失(電力消費)を改善するインターポーザ基板の内蔵部品 |
| JP2014154800A (ja) | 2013-02-13 | 2014-08-25 | Shinko Electric Ind Co Ltd | 配線基板及びその製造方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3979069B1 (en) | 2025-07-30 |
| US20250342023A1 (en) | 2025-11-06 |
| JP2020197867A (ja) | 2020-12-10 |
| TW202111516A (zh) | 2021-03-16 |
| TWI851728B (zh) | 2024-08-11 |
| TW202503510A (zh) | 2025-01-16 |
| US20220229642A1 (en) | 2022-07-21 |
| US12393409B2 (en) | 2025-08-19 |
| JP2024001328A (ja) | 2024-01-09 |
| JP7630066B2 (ja) | 2025-02-17 |
| EP3979069A1 (en) | 2022-04-06 |
| JP7385240B2 (ja) | 2023-11-22 |
| JP2026035883A (ja) | 2026-03-04 |
| WO2020241571A1 (ja) | 2020-12-03 |
| JP2025032310A (ja) | 2025-03-11 |
| EP3979069A4 (en) | 2023-05-31 |
| TWI875633B (zh) | 2025-03-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9003363B2 (en) | Device flags | |
| JP2026035883A (ja) | ソフトウェア開発装置およびソフトウェア開発プログラム | |
| JP7789291B2 (ja) | システムおよび方法 | |
| US11030362B2 (en) | Modeling and cooperative simulation of systems with interdependent discrete and continuous elements | |
| JP7789292B2 (ja) | ソフトウェア開発装置、ソフトウェア開発プログラムおよび方法 | |
| JP7592334B2 (ja) | コンピューティングシステムおよび情報処理方法 | |
| Arzenšek et al. | Criteria for selecting mobile application testing tools |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20250110 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250804 |
|
| 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: 20251111 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20251210 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7794409 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |