JPH01273144A - Software development supporting device - Google Patents

Software development supporting device

Info

Publication number
JPH01273144A
JPH01273144A JP63102193A JP10219388A JPH01273144A JP H01273144 A JPH01273144 A JP H01273144A JP 63102193 A JP63102193 A JP 63102193A JP 10219388 A JP10219388 A JP 10219388A JP H01273144 A JPH01273144 A JP H01273144A
Authority
JP
Japan
Prior art keywords
symbol
emulator
symbols
program
file
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
JP63102193A
Other languages
Japanese (ja)
Inventor
Takaharu Yamamoto
敬治 山本
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP63102193A priority Critical patent/JPH01273144A/en
Publication of JPH01273144A publication Critical patent/JPH01273144A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

PURPOSE:To improve the debug efficiency and the debug accuracy by obtaining a registered symbol and a real address corresponding to the symbol from information at the time of a link processing and generating them as a symbol file of each separate emulator of a decodable format by the emulator. CONSTITUTION:A symbol and a symbol address which have been fetched by a symbol extracting means 16 and a symbol address extracting means 17 are brought to data conversion to a symbol format of a decodable format of each emulator by a format conversion means 18a-18n. Thereafter, this symbol format data which has been brought to format conversion is registered in its corresponding emulator symbol file 14 by a symbol file registering means 19. Subsequently, the symbol file corresponding to the emulator which is used at the time of using the emulator is selected from the registered symbol file 14 and given to the emulator EMU, so that the symbol can be used instead of the real address. In such a way, the program development can be executed efficiently.

Description

【発明の詳細な説明】 〔発明の目的〕 (産業上の利用分野) 本発明はプログラム中の必要なシンボルアドレスを自動
収集して所望の形式のシンボルファイルを生成すること
ができるソフトウェア開発支援装置に関するものである
[Detailed Description of the Invention] [Object of the Invention] (Industrial Application Field) The present invention provides a software development support device that can automatically collect necessary symbol addresses in a program and generate a symbol file in a desired format. It is related to.

(従来の技術) 近年においては半導体技術の目覚ましい進歩とマイクロ
コンピュータ技術の進展により、電子機器のみならず、
各種産業機器等においては制御の中枢をコンピュータ化
し、ソフトウェアによって実施する傾向がますます顕著
になっている。ところでこのような機器のソフトウェア
を開発するには、エディタ等を用いてのプログラム・エ
デイツト(ソースプログラムの作成と編集)、この作成
されたプログラムのアセンブルまたはコンパイル、アセ
ンブルまたはコンパイルにより生成されたオブジェクト
ファイルをプロセッサの実行可能な実行形式ファイルに
変換するリンク、この実行形式のファイルの実行結果に
基づ(問題箇所のデバッグ、と言う工程を繰返す。
(Conventional technology) In recent years, with the remarkable progress of semiconductor technology and advancement of microcomputer technology, not only electronic devices but also
In various types of industrial equipment, there is a growing tendency to computerize the control center and implement it using software. By the way, in order to develop software for such devices, it is necessary to program edit (create and edit a source program) using an editor etc., assemble or compile the created program, and create an object file generated by assembling or compiling. This process is repeated based on the execution result of this executable file (debugging the problem area).

ところで上記デバッグ時にはエミュレータを使用してプ
ログラムのデバッグを行う。ここで、エミュレータとは
ターゲットとなるマイクロプロセッサ(以下、MPUと
称する)と同機種のMPUとメモリを内蔵し、開発対象
システムのプロトタイプからMPUを抜去り、これの代
りにエミュレータのプラグを挿入してプロトタイプシス
テムにおけるMPUとメモリの動作を代行させて動作の
確認を行うものである。エミュレータは多くの場合、ソ
フトウェア開発支援装置の外側にアダプタとして接続し
て使用され、当該ソフトウェア開発支援装置のモニタの
管理下で、ハードウェアレジスタに設定されたブレーク
ポイントによる停止、ジャンプ命令の追跡をするジャン
プトレース、メモリ貸出し、経過時間の測定等を行うこ
とができる。
By the way, when debugging the program, an emulator is used to debug the program. Here, an emulator has a built-in MPU and memory of the same type as the target microprocessor (hereinafter referred to as MPU), and the MPU is removed from the prototype of the system to be developed and an emulator plug is inserted in its place. This is to confirm the operation by having the MPU and memory operate on behalf of the prototype system. An emulator is often used by being connected as an adapter outside a software development support device, and under the control of the monitor of the software development support device, it can track stop and jump instructions using breakpoints set in hardware registers. You can perform jump tracing, memory lending, measuring elapsed time, etc.

使用法の一例を示すと、例えば、開発したプログラムを
小区間に分割し、各分割プログラムの最後にブレークポ
イントを設定し、各分割プログラムをエミュレータ夕に
実行させてみてはそのプログラムとプロトタイプシステ
ムにおけるハードウェアの動作を確認し、目的の結果が
得られるように調整したり、プログラムに問題があれば
プログラムのデバッグをしたりする。そして、動作の確
認が済んだプログラムとハードウェアを順次統合して、
目的のシステムに近付けて行く。エミュレータのメモリ
上で動作を確認されたプログラムは順次プロトタイプシ
ステムのメモリに移し、動作を再確認し、こうしてプロ
グラムを全てプロトタイプシステムのメモリに移して動
作確認したならば、エミュレータをプロトタイプシステ
ムから抜去って元のMPUを装着し、今度はプロトタイ
プシステムのみで独立に動作させる。
An example of how to use it is to divide a developed program into small sections, set a breakpoint at the end of each divided program, and run each divided program on an emulator. Check the operation of the hardware, make adjustments to obtain the desired results, and debug the program if there are problems with the program. Then, we will gradually integrate programs and hardware that have been confirmed to work,
Get closer to the target system. Programs that have been confirmed to work in the emulator's memory are sequentially moved to the prototype system's memory and their operations are reconfirmed.Once all programs have been moved to the prototype system's memory and their operation has been confirmed, the emulator is removed from the prototype system. The original MPU was then installed, and this time the prototype system was operated independently.

エミュレータを用いてのターゲットシステム開発はこの
ような具合に行う。ところで、一般的にはデバッグを行
う段階ではシンボリックやデバッガを用いるのが普通で
ある。そして、このシンボリック・デバッガでは各種コ
マンドを使用する際、ジャンプ先のアドレスやプログラ
ムモジュールの先頭アドレス等を指すのに、実アドレス
で表記する代りにシンボル(名前)を用いることができ
、−々実アドレスを考えずに済むので大変便利である。
Target system development using an emulator is performed in this way. By the way, in general, it is common to use symbolic or debugger at the stage of debugging. With this symbolic debugger, when using various commands, you can use symbols (names) to indicate the jump destination address, the start address of a program module, etc. instead of the actual address. This is very convenient because you don't have to think about addresses.

このように、シンボリック−デバッガではデバッガに与
えるコマンドにこのシンボルによる指定ができるように
なっているので実アドレスの入力ミスと云うような初歩
的な誤りを防ぐこともできる。しかし、このシンポリツ
タ−デバッグを行うに当っては、使用できるシンボルは
共通参照記号(すなわちパブリック(PUBKIC)宣
言をした名前)だけである。すなわち、シンボルを使用
するには共通参照記号を登録したシンボル・ファイルが
必要であり、デバッガ自身がこのシンボル・ファイルを
解読できることが前提となる。
In this way, in the symbolic debugger, the command given to the debugger can be specified using this symbol, so that elementary errors such as input errors in real addresses can be prevented. However, when performing this symbol debugging, the only symbols that can be used are common reference symbols (that is, names declared as public (PUBKIC)). That is, in order to use symbols, a symbol file in which common reference symbols are registered is required, and it is a prerequisite that the debugger itself can decode this symbol file.

一方、エミュレータもシンボル利用形式で使用すればシ
ンボルによるコマンド入力が可能になっているが、使用
するリンクローダ(リンカ)やデバッガがこれらのツー
ルの使用するシンボル・ファイルを共通に使用できるよ
うに当初からソフトウェア上の関係を持たせてエミュレ
ータが開発されていればソフトウェア開発支援装置より
シンボルを使用してのコマンドをエミュレータに与えて
実行させることができるが、このようなソフト的に関連
のないエミュレータではシンボルを利用してのコマンド
入力ができない。
On the other hand, if the emulator is used in a symbol-based format, it is possible to input commands using symbols, but it was originally designed so that the link loader (linker) and debugger used could commonly use the symbol files used by these tools. If an emulator is developed with a software relationship between the two, it is possible to give commands using symbols from the software development support device to the emulator and have it execute. In this case, you cannot enter commands using symbols.

このように、リンクローダやアセンブラ等のソフトウェ
ア開発ツールと、使用するエミュレータとが当初から共
通のシンボル・ファイルを使用できるように設計されて
いない場合、デバッキング時にソフトウェア開発支援装
置からシンボルを利用してのデバッキングを実行しよう
としても、リンクローダ等が生成するシンボル・ファイ
ルとエミュレータが解読できるシンボル・ファイルは形
式が異なることから、当然使用できないので、開発中に
作成されたリンクローダやアセンブラの生成するシンボ
ル・ファイルやシンボルリストを見ながらデバッグに必
要となるシンボルのアドレス、或いはプログラムアドレ
スを求めなければならない。このような時、開発技術者
は例えばリンク時に出力されるリンクマツプ(使用した
シンボルとリンク処理の結果、定まったそのシンボルの
とる実アドレスの情報)と電卓(電子式卓上計算機)を
用いて手作業で求めるなどするが、そのため、デバッグ
の効率を大幅に低下させるばかりでなく、計算間違い等
によりデバッグの精度を低下させると云う問題点がある
In this way, if a software development tool such as a link loader or assembler and the emulator used are not designed from the beginning to be able to use common symbol files, symbols may be used from the software development support device during debugging. Even if you try to perform debugging, the symbol files generated by the link loader etc. and the symbol files that can be decoded by the emulator are of different formats, so of course you cannot use them. It is necessary to find the symbol address or program address necessary for debugging while looking at the generated symbol file and symbol list. In such a case, a development engineer can use, for example, a link map (information about the symbol used and the real address of the symbol determined as a result of link processing) that is output during linking and a calculator (electronic desktop calculator). However, there is a problem in that not only the efficiency of debugging is greatly reduced, but also the precision of debugging is reduced due to calculation errors and the like.

これを解決するにはプログラム中のシンボルを使用して
デバッグを行えるようにする必要があり、そのためには
、メーカがセットで提供しているアセンブラ、リンカ、
エミュレータ(デバッガ)を購入すれば良いが、これら
は高価であるために開発コストがかさむ他、今まで使用
していた開発システムがまるまる無駄になると云う問題
が残る。
To solve this problem, it is necessary to be able to debug using symbols in the program, and in order to do so, you need to use an assembler, linker,
It is possible to purchase an emulator (debugger), but since these are expensive, the development cost increases, and the problem remains that the development system that has been used up until now is completely wasted.

(発明が解決しようとする課題) 上述の如<、MPUを使用した機器のソフトウェアを開
発する場合、エミュレータを用いる。
(Problems to be Solved by the Invention) As mentioned above, when developing software for devices using an MPU, an emulator is used.

ゲット・システムのプログラムのデバッグを行う際にも
シンボルを用いることができれば便利である。しかし、
このシンボルを用いてエミュレータを操作するには、使
用するシンボルをエミュレータが解読できなければなら
ない。そのためにはシンボルとして使用する共通参照記
号を登録したシンボル・ファイルが必要であり、エミュ
レータがこのシンボル拳ファイルを解読できることが前
提となる。
It would be convenient if symbols could be used when debugging programs on the target system. but,
In order to operate an emulator using these symbols, the emulator must be able to decode the symbols used. To do this, a symbol file is required in which the common reference symbols used as symbols are registered, and it is a prerequisite that the emulator can decode this symbol fist file.

一方、エミュレータもシンボルによるコマンド入力が可
能になっているが、使用するリンクローダやデバッガ等
の開発ツールが使用するシンボル・ファイルを共通に使
用できるように当初から関係を持たせてエミュレータが
開発されていればソフトウェア開発支援装置よりシンボ
ルを使用してのコマンドをエミュレータに与えて実行さ
せることができるが、このようなソフト的な関連のない
エミュレータではシンボルを利用してのコマンド入力が
できない。そのため、このような場合にはリンクローダ
の生成したリンクマツプファイルを参照しながら、目的
のシンボルの示すアドレスを手計算で求め、コマンドと
ともにエミュレータに与えて実行させながらデバッグを
行っていた。
On the other hand, emulators can also input commands using symbols, but emulators were developed from the beginning so that the symbol files used by development tools such as link loaders and debuggers could be used in common. If the software development support device had a software development support device, it would be possible to give a command using symbols to the emulator and have it execute it, but such an emulator with no software relationship cannot input commands using symbols. Therefore, in such cases, the address indicated by the target symbol was calculated by hand while referring to the link map file generated by the link loader, and was then given to the emulator along with a command to be executed while debugging.

そのため、能率が悪く、また、アドレス値の計算を間違
える等、デバッグの精度も低くなって生産性も悪い。
As a result, efficiency is low, and debugging accuracy is low due to errors in calculation of address values, resulting in poor productivity.

このように、従来のプログラム開発におい゛(はその開
発に使用する言語やリンクローダなどのソフトウェア・
ツールとエミュレータとがセットで開発されて搗倶され
ているものでない限り、デバッグ時に必要となるシンボ
ル・ファイルをエミュレータが解読出来る形式で作成す
ることはできないため、エミュレータに指令するアドレ
スはソフトウェア・ツールの側で使用したものを参照し
云う問題があった。また、アセンブラやリンクロ;−ダ
と同じシンボルやファイルを解読できるように当初から
セットで提供されている装置では高価であり、ハードウ
ェア及びソフトウェアを含めて現在使用しているシステ
ムが無駄になって、開発コストが高騰すると云う問題が
ある。
In this way, in traditional program development, the language used for development, software such as link loaders, etc.
Unless a tool and an emulator have been developed and manufactured as a set, it is not possible to create the symbol files required for debugging in a format that the emulator can read, so the address that is commanded to the emulator must be set by the software tool. There was a problem with referring to what was used on the side. Additionally, equipment that is provided as a set from the beginning to be able to decode the same symbols and files as an assembler or linker is expensive, and the system currently in use, including hardware and software, is wasted. However, there is a problem in that development costs are rising.

そこでこの発明の目的とするところは、新しいエミュレ
ータ等の装置を購入することな(プログラム中のシンボ
ルを使用できるように、各種工ミュレータが解読可能な
シンボルファイルを作成することが出来るようにしたソ
フトウェア開発支援装置を提供することにある。
Therefore, the purpose of this invention is to provide software that can create symbol files that can be read by various emulators so that symbols in programs can be used without purchasing new emulators or other devices. Our goal is to provide development support equipment.

〔発明の構成〕[Structure of the invention]

(課題を解決するための手段) 上記目的を達成するため本発明は次のように構成する。 (Means for solving problems) In order to achieve the above object, the present invention is configured as follows.

すなわち、実アドレスに代えシンボルを使用して作成し
た目的プログラムをリンク処理により実行形式のプログ
ラムに変換して得、この実行形式のプログラムをエミュ
レータに与えて入力手段よりデバッグのための各種指令
を必要に応じてアドレス情報゛等も含めて与えることに
よりエミュレーションさせ、プロセッサを利用したター
ゲットシステムに使用するプログラムを開発する開発支
援装置において、プログラムのデバッグ時に必要となる
プログラム中のシンボルを前記入力手段より人力するこ
とによりシンボルテーブルに登録する手段と、前記シン
ボルテーブル中に登録されたシンボルを順次取出すシン
ボル抽出手段と、プログラムリンク処理時に出力される
各プログラムのリンクマツプ情報である使用シンボル並
びにリンク処理により決定された各シンボルのとる実ア
ドレスよりなる情報を与えるとこのリンクマツプ情報か
ら前記シンボル抽出手段によって取出されたシンボルの
シンボルアドレスを取出すシンボルアドレス抽出手段と
、前記シンボル抽出手段とシンボルアドレス抽出手段に
より取出されたシンボル及びシンボルアドレスを各エミ
ュレータの解。
That is, a target program created using symbols instead of real addresses is converted into an executable program through link processing, and this executable program is given to an emulator, which requires various commands for debugging from input means. In a development support device that develops a program to be used in a target system using a processor by emulating it by providing address information etc. according to the program, symbols in the program that are necessary when debugging the program are inputted from the input means. A means for manually registering symbols in a symbol table; a symbol extracting means for sequentially extracting symbols registered in the symbol table; and symbols used, which are link map information of each program outputted during program link processing, and link processing. A symbol address extracting means for extracting the symbol address of the symbol extracted by the symbol extracting means from this link map information when information consisting of the real address taken by each determined symbol is given, and the symbol extracting means and the symbol address extracting means Solution of extracted symbols and symbol addresses for each emulator.

読可能な形式のシンボルフォーマットにデータ変換する
フォーマット変換手段と、このフォーマット変換された
シンボルフォーマットデータを各エミュレータ対応のシ
ンボルファイルに登録するシンボルファイル登録手段と
を設けて構成する。
The system includes a format conversion means for converting data into a readable symbol format, and a symbol file registration means for registering the converted symbol format data in a symbol file corresponding to each emulator.

(作 用) このような構成において、プログラムのデバッグ時に必
要となるプログラム中のシンボルを前記入力手段より人
力することにより登録手段はシンボルテーブルに登録す
る。そしてシンボル抽出手段はこのシンボルテーブル中
に登録されたシンボルを順次取出し、シンボルアドレス
抽出手段はプログラムリンク処理時に出力される各プロ
グラムのリンクマツプ情報をもとにして前記シンボル抽
出手段によって取出されたシンボルの相当するアドレス
を取出す。このシンボル抽出手段とシンボルアドレス抽
出手段により取出されたシンボル及びシンボルアドレス
はフォーマット変換手段により各エミュレータの解読可
能な形式のシンボルフォーマットにデータ変換された後
、シンボルファイル登録手段によりこのフォーマット変
換されたシンボルフォーマットデータはその対応のエミ
ュレータ用シンボルファイルに登録される。そして、エ
ミュレータ使用時に5該使用するエミュレータ対応のシ
ンボルファイルを前記登録シンボルファイルから選択し
て当該エミュレータに与えることによりシンボルを実ア
ドレスに代えて使用可能にする。
(Function) In such a configuration, the registration means registers symbols in the program, which are necessary when debugging the program, into the symbol table by inputting them manually from the input means. The symbol extraction means sequentially extracts the symbols registered in this symbol table, and the symbol address extraction means extracts the symbols extracted by the symbol extraction means based on the link map information of each program output during program link processing. Extract the corresponding address. The symbols and symbol addresses extracted by the symbol extracting means and the symbol address extracting means are data-converted by the format converting means into a symbol format that can be read by each emulator, and then the converted symbols are sent to the symbol file registering means. The format data is registered in the corresponding emulator symbol file. Then, when an emulator is used, a symbol file corresponding to the emulator to be used is selected from the registered symbol files and given to the emulator, thereby enabling the symbol to be used in place of the real address.

このようにすることにより、各種エミュレータの解読可
能なそれぞれのシンボルファイルをリンク処理時に同時
に作成することが可能になり、この作成したシンボルフ
ァイルを使用エミュレータに与えてシンボルを用いての
各種指令を実行させることができるようになり、デバッ
グの際に実アドレスの代りにプログラム開発過程で使用
しているシンボルを用いたシンボルデバッギングを行う
ことが出来るようになって、新たにエミュレータ等を買
い直さずにしかも能率的にプログラム開発が可能になる
By doing this, it is possible to create symbol files that can be decoded by various emulators at the same time during the link process, and give the created symbol files to the emulator used to execute various commands using the symbols. This makes it possible to perform symbol debugging using symbols used in the program development process instead of real addresses during debugging, without having to buy a new emulator etc. Moreover, it becomes possible to develop programs efficiently.

(実施例) 以下、本発明の一実施例について図面を参照して説明す
る。
(Example) Hereinafter, an example of the present invention will be described with reference to the drawings.

第1図は本発明の一実施例を示すシステム構成図であり
、図中11はソフトウェア開発支援装置のコンソール装
置で14、キーボードやデイスプレィ装置等よりなる。
FIG. 1 is a system configuration diagram showing an embodiment of the present invention. In the figure, reference numeral 11 denotes a console device of a software development support device, and 14 includes a keyboard, a display device, and the like.

12はシンボル・テーブル、13はリンクマツプファイ
ル、14はシンボルファイルであり、これらは例えば外
部記憶装置に記憶さ゛れている。20はソフトウェア開
発支援装置における制御の中紙を担う制御部である。制
御部20は本装置の各種基本的な制御°、ロードされた
アセンブラやコンパイラ、エディタ、リンクローダ、デ
バツガなどの実行、エミュレータに対する各種指令やデ
ータの授受、エミュレータに対するメモリの内容のリー
ド・ライト、モニタ機能等の他、コンソール装置11よ
り入力されたシンボルをシンボルテーブル12に登録す
る機能であるシンボル登録手段15、シンボルテーブル
12を利用してのシンボル抽出を行う機能であるシンボ
ル抽出手段16、シンボル抽出手段16が抽出したシン
ボルの対応するアドレスをリンクマツプファイル13よ
り抽出する機能であるシンボルアドレス抽出手段1フ、
シンボルアドレス抽出手段17により抽出されたシンボ
ルとそのアドレスを、使用するエミュレータに使用可能
な形式のデータに変換したシンボルファイルを生成する
フォーマット変換手段18、この生成されたシンボルフ
ァイルをシンボルファイル14に登録するシンボルファ
イル登録手段19を有している。
12 is a symbol table, 13 is a link map file, and 14 is a symbol file, which are stored in, for example, an external storage device. Reference numeral 20 denotes a control unit that is responsible for controlling the software development support device. The control unit 20 performs various basic controls of the device, executes loaded assemblers, compilers, editors, link loaders, debuggers, etc., sends and receives various commands and data to the emulator, reads and writes memory contents to the emulator, In addition to the monitor function, symbol registration means 15 has the function of registering symbols input from the console device 11 in the symbol table 12, symbol extraction means 16 has the function of extracting symbols using the symbol table 12, symbol Symbol address extraction means 1F, which has a function of extracting the address corresponding to the symbol extracted by the extraction means 16 from the link map file 13;
Format conversion means 18 that generates a symbol file in which the symbols and their addresses extracted by the symbol address extraction means 17 are converted into data in a format usable by the emulator used, and this generated symbol file is registered in the symbol file 14. The symbol file registration means 19 has a symbol file registration means 19.

ここで、上記フォーマット変換手段18は使用する各エ
ミュレータ対応に、フォーマット変換部18a〜18n
を有する。また、EMUは制御部20に接続されるエミ
ュレータであり、エミュレータEMUはそれぞれ定めた
所定フォーマットによるシンボルファイルであればその
ファイルが与えられるとその内容を解読して入力シンボ
ルの指し示す実アドレスに変換して受付けることができ
る機能を最低限有しているものとし、従ってシンボルに
よるコマンドの入力を可能にするものとする。
Here, the format conversion means 18 has format conversion sections 18a to 18n corresponding to each emulator used.
has. Further, the EMU is an emulator connected to the control unit 20, and when the emulator EMU is given a symbol file in a predetermined format, it decodes the contents and converts it into the real address pointed to by the input symbol. It shall have at least a function that can accept commands using symbols, and therefore it shall be possible to input commands using symbols.

第2図〜第4図は本発明で使用するファイルと作成する
ファイルの一例を示したものである。
FIGS. 2 to 4 show examples of files used and created in the present invention.

第2図は必要とするシンボルを登録しておくシンボルテ
ーブル例を示す図、第3図は本発明の一実施例における
作成されたシンボルファイル例、第4図はリンクローダ
がリンク時に生成したシンボルのアドレスを抽出するち
ととなるリンクマツプファイルの例を示している。
Figure 2 is a diagram showing an example of a symbol table in which necessary symbols are registered, Figure 3 is an example of a symbol file created in an embodiment of the present invention, and Figure 4 is a symbol generated by the link loader when linking. An example of a link map file from which to extract addresses is shown.

以上のような構成の本装置の作用を説明する。The operation of this device configured as above will be explained.

第5図はシンボル登録手段15を用いたシンボルの登録
手順を示す。
FIG. 5 shows a symbol registration procedure using the symbol registration means 15.

先ず、デバッグ時に必要となるシンボルをファイル名を
指定してコンソール装置11より入力する(Sl)。こ
れにより制御部20はこのコンソール装置11より入力
されたシンボルをシンボルテーブル12中の対応するフ
ァイル名の場所に順次登録する(s2)。コンソール装
置11よりの入力に基づき制御部20はシンボルの入力
か、終了の指令かチエツクしくs3)、シンボル入力の
終了であればこのルーチンを終了し、新たなシンボルの
入力ならば再びSlに戻って上記動作を繰返す。このよ
うにして必要な全シンボルの登録をファイル別に行う。
First, a symbol required for debugging is inputted from the console device 11 by specifying a file name (Sl). As a result, the control unit 20 sequentially registers the symbols input from the console device 11 in the locations of the corresponding file names in the symbol table 12 (s2). Based on the input from the console device 11, the control unit 20 checks whether it is a symbol input or an end command (s3). If the symbol input is completed, this routine is ended, and if a new symbol is input, the control section 20 returns to Sl. and repeat the above operation. In this way, all necessary symbols are registered for each file.

この作業の実行に当っては、登録内容や入力内容を制御
部20はコンソール装置11のデイスプレィにも表示し
て操作者の便宜を図る。
When performing this work, the control unit 20 also displays the registered contents and input contents on the display of the console device 11 for the operator's convenience.

以上の動作により作成されたシンボルテーブルは一度作
成するだけで良く、その後のシンボルファイル作成時に
常に参照される。
The symbol table created by the above operations only needs to be created once, and is always referenced when creating symbol files thereafter.

第6図は各エミュレータ対応のシンボルファイルを作成
する手順を示すものである。すなわち、このルーチンが
起動されると、制御部20は前述したシンボルテーブル
12のうち、エミュレータn用のファイル名を持つシン
ボルテーブルより順次シンボルを取出す(sll)。次
にシンボルに対応するリンクマツプファイル13からシ
ンボルアドレスをサーチして取出す(s12)。このス
テップs12でシンボルアドレスが見付からなかった場
合は次のシンボルのサーチに移る。そして次にステップ
sll 。
FIG. 6 shows the procedure for creating symbol files for each emulator. That is, when this routine is activated, the control unit 20 sequentially extracts symbols from the symbol table having the file name for the emulator n from the symbol table 12 described above (sll). Next, a symbol address is searched and extracted from the link map file 13 corresponding to the symbol (s12). If the symbol address is not found in step s12, the process moves on to searching for the next symbol. And then step sll.

s12で取出したシンボルとシンボルアドレスをエミュ
レータn用のフォーマットに変換する(s13a)。
The symbol and symbol address extracted in s12 are converted into a format for emulator n (s13a).

同様にシンボルとシンボルアドレスをエミュレータn用
のフォーマットに変換する(s13b)。以下、同様に
してエミュレータn用までのフォーマットデータを作成
する(s13n)。
Similarly, symbols and symbol addresses are converted into a format for emulator n (s13b). Thereafter, format data for emulator n is created in the same manner (s13n).

このようにして作成した各々のエミュレータ対応のフォ
ーマットデータを各々のエミュレータEMUに対して用
意されたシンボルファイル2b中に順次登録して行< 
(s14)。上記の手順を指定された全シンボルに対し
て行ったかをチエツクし、行った場合には処理を終了さ
せ、全シンボルに対して終了してない場合にはallに
戻って上記の作業を繰返す。
The format data corresponding to each emulator created in this way is sequentially registered in the symbol file 2b prepared for each emulator EMU, and the line <
(s14). It is checked whether the above procedure has been performed for all the designated symbols, and if it has been performed, the process is terminated, and if it has not been completed for all symbols, the process returns to "all" and the above operation is repeated.

このようにして作成した各種エミュレータ対応で当該エ
ミュレータが解読可能な形式のそれぞれのシンボルファ
イルは、そのエミュレータ使用時にコンソール装置11
より指令を与えて当該エミュレータに与え、シンボルを
利用してのコマンド入力を可能にさせ、コンソール装置
11よりのシンボルを利用してのコマンド入力操作によ
り、当該エミュレータに指令を与えてデバッグを進める
ことができるようなる。
Each symbol file created in this way that is compatible with various emulators and in a format that can be decoded by the emulator is stored in the console device 11 when the emulator is used.
give commands to the emulator, enable command input using symbols, and proceed with debugging by giving commands to the emulator through command input operations using symbols from the console device 11; You will be able to do it.

従って、本実施例によれば、プログラム開発時のデバッ
グ工程で必要な各種エミュレータ対応で当該エミュレー
タが解読可能な形式のシンボルファイルを作成してその
エミュレータ使用時に当該エミュレータに与えることが
出来、新たなエミュレータを使用する場合でもそのエミ
ュレータに対するフォーマット変換手段を追加するだけ
で新しいエミュレータでシンボルを用いたデバッグを実
施できるようになる。
Therefore, according to this embodiment, it is possible to create a symbol file in a format that is compatible with various emulators required in the debugging process during program development and in a format that can be decoded by the emulator, and to give it to the emulator when the emulator is used. Even when using an emulator, debugging using symbols can be performed with a new emulator simply by adding a format conversion means for the emulator.

以上、説明したように、今まではプログラム開発中に各
エミュレータに対応したシンボルファイルが作成できず
、デバッグ効率とデバッグ精度を悪くしていたが、上述
の本装置ではプログラムのデバッグ時に必要となるプロ
グラム中のシンボルを入力手段より入力することにより
登録手段はシンボルテーブルに登録し、シンボル抽出手
段はこのシンボルテーブル中に登録されたシンボルを順
次取出し、シンボルアドレス抽出手段はプログラムリン
ク処理時に出力される各プログラムのリンクマツプファ
イルをもとにして前記シンボル抽出手段によって取出さ
れたシンボルの相当するアドレスを取出し、このシンボ
ル抽出手段とシンボルアドレス抽出手段により取出され
たシンボル及びシンボルアドレスはフォーマット変換手
段により各エミュレータの解読可能な形式のシンボルフ
ォーマットにデータ変換した後、シンボルファイル登録
手段によりこのフォーマット変換されたシンボルフォー
マットデータをその対応のエミュレータ用シンボルファ
イルに登録し、そして、エミュレータ使用時に当該使用
するエミュレータ対応のシンボルファイルを前記登録シ
ンボルファイルから選択して当該エミュレータに与える
ことによりシンボルを実アドレスに代えて使用可能にし
たものであるから、各種エミュレータの解読可能なそれ
ぞれのシンボルファイルをリンク処理時に同時に作成す
ることが可能になり、この作成したシンボルファイルを
使用エミュレータに与えてシンボルを用いての各種指令
を実行させることができるようになって、デバッグの際
に実アドレスの代りにプログラム開発過程で使用してい
るシンボルを用いたシンボルデバッギングを行うことが
出来るようになり、新たにエミュレータ等を買い直さず
にしかも能率的にターゲットシステムのプログラム開発
が可能になる。また、大きなプログラムの開発において
も、予め必要なシンボルを登録しておくと、その登録の
範囲内のシンボルについて、シンボルファイルが作成で
きるため、エミュレータの持つシンボル制限数内で、有
効なデバッグが行える利点が有る。更にいくつものエミ
ュレータ用のシンボルファイルが作成できることにより
、従来からあるエミュレータを有効に活用することがで
きるから資源の有効利用を図ることができ、新しいエミ
ュレータを導入する必要がないと云う利点が得られる。
As explained above, until now it was not possible to create symbol files compatible with each emulator during program development, which worsened debugging efficiency and debugging accuracy, but with this device described above, symbol files are required when debugging programs. By inputting symbols in the program through the input means, the registration means registers them in the symbol table, the symbol extraction means sequentially extracts the symbols registered in this symbol table, and the symbol address extraction means outputs the symbols during program link processing. Based on the link map file of each program, addresses corresponding to the symbols extracted by the symbol extracting means are extracted, and the symbols and symbol addresses extracted by the symbol extracting means and the symbol address extracting means are converted into respective addresses by the format converting means. After converting the data into a symbol format that can be read by the emulator, the symbol file registration means registers the converted symbol format data in the symbol file for the corresponding emulator, and when the emulator is used, it is compatible with the emulator being used. By selecting a symbol file from the registered symbol files and giving it to the emulator, the symbol can be used in place of a real address. Therefore, each symbol file that can be read by various emulators is created at the same time during link processing. It is now possible to give this created symbol file to the emulator used to execute various commands using symbols, and it can be used in the program development process instead of real addresses during debugging. It becomes possible to perform symbol debugging using the existing symbols, and it becomes possible to efficiently develop programs for the target system without purchasing a new emulator or the like. Also, when developing a large program, by registering the necessary symbols in advance, symbol files can be created for the symbols within the range of registration, allowing effective debugging within the emulator's limited number of symbols. There are advantages. Furthermore, by being able to create symbol files for multiple emulators, existing emulators can be used effectively, making it possible to use resources more effectively, and there is the advantage that there is no need to introduce new emulators. .

また、新しいエミュレータを導入した場合でも、その新
しいエミュレータに対応したフォーマット変換手段を追
加するだけで対応することができるようになり汎用性に
も富む。
Furthermore, even if a new emulator is introduced, it can be handled simply by adding a format conversion means compatible with the new emulator, making it highly versatile.

なお、本発明は上記し、且つ図面に示す実施例に限定す
ることなくその要旨を変更しない範囲内で適宜変形して
実施し得るものであり、また、本発明はエミュレータだ
けでなく、デバッガ、フィールドモニタ用のシンボルフ
ァイルの作成にも応用できる。
Note that the present invention is not limited to the embodiments described above and shown in the drawings, and can be implemented with appropriate modifications within the scope of the gist thereof, and the present invention is applicable not only to emulators but also to debuggers, It can also be applied to creating symbol files for field monitors.

〔発明の効果〕〔Effect of the invention〕

以上、詳述したように本発明によれば、シンボルを登録
しておくと、プログラム開発の過程で使用しているシン
ボルのうち、上記登録したシンボルとそのシンボル対応
の実アドレスをリンク処理時の情報から得て、これをエ
ミュレータが解読可能な形式のエミュレータ別のシンボ
ルファイルとして生成するので、開発中のプログラムに
使用しているシンボルを用いて各エミュレータにコマン
ドを与えることができ、従って、論理的なデバラグが可
能となり、これによって、デバッグ効率とデバッグ精度
を飛躍的に向上させることができるようになるソフトウ
ェア開発支援装置を提供できる。
As described in detail above, according to the present invention, when symbols are registered, the registered symbols and the real addresses corresponding to the symbols used in the process of program development can be used during link processing. It takes this information and generates it as an emulator-specific symbol file in a format that the emulator can read, so you can give commands to each emulator using the symbols you are using in the program you are developing, and therefore the logic Thus, it is possible to provide a software development support device that can dramatically improve debugging efficiency and debugging accuracy.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の一実施例を示すシステム構成ブロック
図、第2図はシンボルテーブルの例を示す図、第3図は
本発明の一実施例における作成されたシンボルファイル
例を示す図、第4図はリンクマツプファイル例を示す図
、第5図及び第6図は本発明装置の作用を説明するため
のフローチャートである。 11・・・ソフトウェア開発支援装置のコンソール装置
、12・・・シンボル番テーブル、13・・・リンクマ
ツプファイル、14・・・シンボルファイル、15・・
・シンボル登録手段、1B・・・シンボル抽出手段、1
7・・・シンボルアドレス抽出手段、18・・・フォー
マット変換手段、18a−18n・・・フォーマット変
換部、19・・・シンボルファイル登録手段、20・・
・制御部、EMU・・・エミュレータ。 シレホ゛ル、〒−アル 第2図 エミ1し−り用シレ岸Jルフ丁イノし仲」第3図 第5図
FIG. 1 is a system configuration block diagram showing an embodiment of the present invention, FIG. 2 is a diagram showing an example of a symbol table, and FIG. 3 is a diagram showing an example of a symbol file created in an embodiment of the present invention. FIG. 4 is a diagram showing an example of a link map file, and FIGS. 5 and 6 are flowcharts for explaining the operation of the apparatus of the present invention. 11... Console device of software development support device, 12... Symbol number table, 13... Link map file, 14... Symbol file, 15...
・Symbol registration means, 1B...Symbol extraction means, 1
7... Symbol address extraction means, 18... Format conversion means, 18a-18n... Format conversion unit, 19... Symbol file registration means, 20...
・Control unit, EMU...emulator. Figure 3 Figure 5

Claims (1)

【特許請求の範囲】[Claims] 実アドレスに代えシンボルを使用して作成した目的プロ
グラムをリンク処理により実行形式のプログラムに変換
して得、この実行形式のプログラムをエミュレータに与
えて入力手段よりデバッグのための各種指令を必要に応
じてアドレス情報等も含めて与えることによりエミュレ
ーションさせ、プロセッサを利用したターゲットシステ
ムに使用するプログラムを開発する開発支援装置におい
て、プログラムのデバッグ時に必要となるプログラム中
のシンボルを前記入力手段より入力することによりシン
ボルテーブルに登録する手段と、前記シンボルテーブル
中に登録されたシンボルを順次取出すシンボル抽出手段
と、プログラムリンク処理時に出力される各プログラム
のリンクマップ情報である使用シンボル並びにリンク処
理により決定された各シンボルのとる実アドレスよりな
る情報を与えるとこのリンクマップ情報から前記シンボ
ル抽出手段によって取出されたシンボルのシンボルアド
レスを取出すシンボルアドレス抽出手段と、前記シンボ
ル抽出手段とシンボルアドレス抽出手段により取出され
たシンボル及びシンボルアドレスを各エミュレータの解
読可能な形式のシンボルフォーマットにデータ変換する
フォーマット変換手段と、このフォーマット変換された
シンボルフォーマットデータを各エミュレータ対応のシ
ンボルファイルに登録するシンボルファイル登録手段と
を有し、エミュレータ使用時に当該使用するエミュレー
タ対応のシンボルファイルを前記登録シンボルファイル
から選択して当該エミュレータに与えることによりシン
ボルを実アドレスに代えて使用可能にしたことを特徴と
するソフトウェア開発支援装置。
A target program created using symbols instead of real addresses is converted into an executable program through link processing, and this executable program is given to the emulator to input various commands for debugging as needed from input means. In a development support device for developing a program to be emulated and used in a target system using a processor by giving address information including address information, etc., symbols in the program necessary for debugging the program are inputted from the input means. symbol extracting means for sequentially extracting the symbols registered in the symbol table; symbols used which are link map information of each program output during program link processing; and symbols determined by link processing. Symbol address extraction means extracts the symbol address of the symbol extracted by the symbol extraction means from this link map information when information consisting of the real address taken by each symbol is given; It has a format conversion means for converting symbols and symbol addresses into a symbol format that can be read by each emulator, and a symbol file registration means for registering the converted symbol format data in a symbol file compatible with each emulator. A software development support device characterized in that, when an emulator is used, a symbol file compatible with the emulator to be used is selected from the registered symbol files and provided to the emulator, thereby making it possible to use symbols in place of real addresses.
JP63102193A 1988-04-25 1988-04-25 Software development supporting device Pending JPH01273144A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63102193A JPH01273144A (en) 1988-04-25 1988-04-25 Software development supporting device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63102193A JPH01273144A (en) 1988-04-25 1988-04-25 Software development supporting device

Publications (1)

Publication Number Publication Date
JPH01273144A true JPH01273144A (en) 1989-11-01

Family

ID=14320828

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63102193A Pending JPH01273144A (en) 1988-04-25 1988-04-25 Software development supporting device

Country Status (1)

Country Link
JP (1) JPH01273144A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0432933A (en) * 1990-05-23 1992-02-04 Matsushita Electric Ind Co Ltd Software development device
JPH05342044A (en) * 1992-06-09 1993-12-24 Fujikura Ltd Emulator

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0432933A (en) * 1990-05-23 1992-02-04 Matsushita Electric Ind Co Ltd Software development device
JPH05342044A (en) * 1992-06-09 1993-12-24 Fujikura Ltd Emulator

Similar Documents

Publication Publication Date Title
US5926638A (en) Program debugging system for debugging a program having graphical user interface
US10747507B2 (en) Development support device, development support method, and non-transitory recording medium
US20070277165A1 (en) Debugging Interpreted Input
US11256481B2 (en) Software development environment with compilation and read-evaluate-print-loop operations
JP2002532804A (en) Hybrid computer programming environment
JPH01273144A (en) Software development supporting device
JPH0766342B2 (en) Program test equipment
WO1987005725A1 (en) Method of executing emulation
Xavier et al. Type checking Circus specifications
JP2008204023A (en) Programmable controller system and debug method for programmable controller
JPH10187461A (en) Language processing system
JP2802128B2 (en) Program development equipment
JP2004287869A (en) Program execution monitoring device and method
JP2006350676A (en) Program debugging method of built-in system
Firth The role of software tools in the development of the ECLIPSE® MV/8000 microcode
JP2590083B2 (en) Source program translation processing method
CN114327403A (en) Development method and device of intelligent contract and electronic equipment
JPS6033640A (en) Data monitoring system
Gaurav Implementation of Breakpoints in GDB for Sim-nML based Architectures
Cosserat MicroSim-a new approach to program development
JPH02284240A (en) Program single body test system
JP2001147832A (en) Display system corresponding to source program
JPS58169637A (en) Compile processing system
On Rhapsody®
JPH04307630A (en) Compiler with simple debugging option