JPH04314133A - Information processor - Google Patents

Information processor

Info

Publication number
JPH04314133A
JPH04314133A JP10680491A JP10680491A JPH04314133A JP H04314133 A JPH04314133 A JP H04314133A JP 10680491 A JP10680491 A JP 10680491A JP 10680491 A JP10680491 A JP 10680491A JP H04314133 A JPH04314133 A JP H04314133A
Authority
JP
Japan
Prior art keywords
fpga
cpu
program source
processing
information processing
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
JP10680491A
Other languages
Japanese (ja)
Inventor
Tatsushige Bito
尾藤 龍茂
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP10680491A priority Critical patent/JPH04314133A/en
Publication of JPH04314133A publication Critical patent/JPH04314133A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To execute the expected processing of a program source at high speed without using such exclusive hardware as to depend on a specified application program. CONSTITUTION:A converting means 2 inputs the program source 1, and converts it into an object 4 for a CPU to be executed in the CPU 7 and the object 3 for an FPGA to be executed in the FPGA 6, and a loading means 5 loads the object 4 for the CPU to the CPU 7, and simultaneously, it loads the object 3 for the FPGA to the FPGA 6. The CPU 7 executes the object 4 for the CPU, but in the process of this processing, it sends necessary data to the FPGA 6 through a connecting means 8, and the FPGA 6 gives the processing determined by the object 3 for the FPGA to this data, and executes the processing to return this result to the CPU 7 through the connecting means 8, and both the units execute the expected processing shown by the program source 1 in cooperation with each other.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】本発明は情報処理装置に関し、具
体的にはFPGA(Field Programmab
le GateArray)を使用してプログラムを高
速に実行する情報処理装置に関する。
[Industrial Application Field] The present invention relates to an information processing device, and specifically relates to an FPGA (Field Programmer).
The present invention relates to an information processing device that executes a program at high speed using a GateArray.

【0002】0002

【従来の技術】従来、情報処理装置においてプログラム
の実行スピードを向上させる場合、次の何れかの方法を
使用している。
2. Description of the Related Art Conventionally, in order to improve the execution speed of a program in an information processing apparatus, one of the following methods has been used.

【0003】■  特定のアプリケーション・プログラ
ムの処理を高速化するための専用のハードウェアを付加
する。
■ Adding dedicated hardware to speed up the processing of a specific application program.

【0004】■  ソフトウェア・プログラムの一部を
マイクロプログラムに変換して制御記憶にロードし、実
行する。
■ Converting a portion of a software program into a microprogram, loading it into control storage, and executing it.

【0005】[0005]

【発明が解決しようとする課題】上述した従来の情報処
理装置の高速化方法のうち、■の専用のハードウェアを
付加する方法は、専用のハードウェアで代行させた分だ
けプログラムの実行スピードが高まるが、特定のプログ
ラムに依存した専用のハードウェアを準備する必要があ
るため、装置が高価になるという欠点がある。
[Problem to be Solved by the Invention] Among the above-mentioned conventional methods for speeding up information processing devices, the method (2) of adding dedicated hardware increases the execution speed of the program by the amount of the dedicated hardware. However, since it is necessary to prepare dedicated hardware that depends on a specific program, it has the disadvantage that the device becomes expensive.

【0006】また、■のマイクロプログラム化する方法
は、■の方法のような専用のハードウェアを必要としな
いが、マイクロプログラムもソフトウェア・プログラム
と同様に逐次処理であるため、それほどの高速化は望め
ない。
[0006] In addition, the method (2) of creating a microprogram does not require dedicated hardware like the method (2), but since microprograms are sequential processes like software programs, it is not possible to speed up that much. I can't hope.

【0007】そこで本発明の目的は、特定のアプリケー
ション・プログラムに依存するような専用のハードウェ
アを使うことなく、与えられたプログラム・ソースによ
る所期の処理を高速に実行することができる情報処理装
置を提供することにある。
[0007] Therefore, an object of the present invention is to provide information processing that can quickly execute desired processing using a given program source without using dedicated hardware that depends on a specific application program. The goal is to provide equipment.

【0008】[0008]

【課題を解決するための手段】本発明の情報処理装置は
上記の目的を達成するために、CPUと、FPGAと、
前記CPUと前記FPGAとの間のデータ交換のための
接続手段と、プログラム・ソースを、前記CPUで実行
するCPU用オブジェクトと前記FPGAで実行するF
PGA用オブジェクトとに変換する変換手段と、この変
換手段で得られた前記CPU用オブジェクトを前記CP
Uにロードし、前記FPGA用オブジェクトを前記FP
GAにロードするロード手段とを備えている。
[Means for Solving the Problems] In order to achieve the above object, the information processing device of the present invention includes a CPU, an FPGA,
a connection means for exchanging data between the CPU and the FPGA; and a CPU object that executes a program source on the CPU and an FPGA that executes the program source on the FPGA.
a conversion means for converting the CPU object obtained by the conversion means into a PGA object;
Load the FPGA object into the FP
and loading means for loading into the GA.

【0009】[0009]

【作用】本発明の情報処理装置においては、変換手段が
プログラム・ソースを入力してそれをCPUで実行する
CPU用オブジェクトとFPGAで実行するFPGA用
オブジェクトとに変換し、ロード手段が、そのCPU用
オブジェクトをCPUにロードすると共にFPGA用オ
ブジェクトをFPGAにロードする。これによって、C
PUおよびFPGAが接続手段を通じて相互にデータ交
換を行いながら、CPU用オブジェクト,FPGA用オ
ブジェクトをそれぞれ実行し、両者協調してプログラム
・ソースで示される所期の処理を遂行する。
[Operation] In the information processing apparatus of the present invention, the converting means inputs a program source and converts it into a CPU object to be executed by the CPU and an FPGA object to be executed by the FPGA, and the loading means Objects for FPGA are loaded into the CPU and objects for FPGA are loaded into the FPGA. By this, C
While the PU and FPGA exchange data with each other through the connection means, they execute the CPU object and the FPGA object, respectively, and work together to accomplish the desired processing indicated by the program source.

【0010】0010

【実施例】次に、本発明の実施例について図面を参照し
て詳細に説明する。
Embodiments Next, embodiments of the present invention will be described in detail with reference to the drawings.

【0011】図1を参照すると、本発明の一実施例の情
報処理装置は、CPU7と、FPGA6と、両者間のデ
ータ交換を実現する接続手段8と、プログラム・ソース
1ををCPU用オブジェクト4とFPGA用オブジェク
ト3とに変換する変換手段2と、CPU用オブジェクト
4をCPU7にロードし、FPGA用オブジェクト3を
FPGA6にロードするロード手段5とを含んで構成さ
れている。
Referring to FIG. 1, an information processing apparatus according to an embodiment of the present invention includes a CPU 7, an FPGA 6, a connection means 8 for realizing data exchange between the two, and a program source 1 connected to a CPU object 4. and an FPGA object 3, and a loading means 5 that loads the CPU object 4 into the CPU 7 and the FPGA object 3 into the FPGA 6.

【0012】このような構成を有する情報処理装置にお
いて、プログラム・ソース1が与えられると、変換手段
2はそれをコンパイルしてオブジェクトを生成する。こ
のとき、変換手段2は、プログラム・ソース1のうちコ
ンパイルオプション10で指示されたプログラム・ソー
ス部分はFPGA用オブジェクト3に変換し、それ以外
のプログラム・ソース部分はCPU用オブジェクト4に
変換する。
In the information processing apparatus having such a configuration, when the program source 1 is given, the conversion means 2 compiles it to generate an object. At this time, the conversion means 2 converts the program source portion of the program source 1 specified by the compile option 10 into the FPGA object 3, and converts the other program source portions into the CPU object 4.

【0013】FPGA用オブジェクト3に変換するプロ
グラム・ソース部分としては、例えばプログラム・ソー
ス1内の高速化処理が特に必要な部分や、CPU7の実
行では処理時間が多くかかり過ぎる繰り返し処理の部分
とすることが望ましい。
The program source portion to be converted into the FPGA object 3 is, for example, a portion of the program source 1 that particularly requires high-speed processing, or a portion of repetitive processing that requires too much processing time when executed by the CPU 7. This is desirable.

【0014】変換手段2によるCPU用オブジェクト4
の生成はほぼ従来のコンパイラと同様に実施されるが、
本実施例ではプログラム・ソース1の所期の処理がCP
U7だけでなくFPGA6によっても実行されるため、
分割に伴って必要な若干のオブジェクトがCPU用オブ
ジェクト4に追加される。例えば、本来CPU7で行っ
ていた処理をFPGA6に実行させるために処理データ
を接続手段8を通じてFPGA6に渡し、その結果を接
続手段8を通じて受け取るといった処理にかかるオブジ
ェクトが追加される。
[0014] CPU object 4 by conversion means 2
is generated almost in the same way as a conventional compiler, but
In this embodiment, the intended processing of program source 1 is CP
Because it is executed not only by U7 but also by FPGA6,
Some necessary objects are added to the CPU object 4 along with the division. For example, in order to cause the FPGA 6 to execute processing that was originally performed by the CPU 7, an object is added for processing such as passing processing data to the FPGA 6 through the connection means 8 and receiving the result through the connection means 8.

【0015】また、変換手段2によるFPGA用オブジ
ェクト3の生成は、例えば変換対象のプログラム・ソー
ス部分を論理式等のハードウェア記述に一旦変換し、こ
のハードウェア記述とFPGA6の構成情報とに基づい
てFPGA6に上記ハードウェア記述に合致する論理動
作を行わせるための情報(マッピング情報)を生成する
ことで行う。この場合、マッピング情報がFPGA用オ
ブジェクト3となる。更に、変換手段2は、今回のFP
GA用オブジェクト3の実行時にFPGA6のプログラ
マブルな端子のうちどの端子が入力端子として使われ、
どの端子が出力端子として使われるかを示す入出力端子
情報11を生成する。
Furthermore, the generation of the FPGA object 3 by the conversion means 2 involves, for example, first converting the program source part to be converted into a hardware description such as a logical formula, and then converting it based on this hardware description and the configuration information of the FPGA 6. This is done by generating information (mapping information) for causing the FPGA 6 to perform a logical operation that matches the above hardware description. In this case, the mapping information becomes the FPGA object 3. Furthermore, the conversion means 2 is the current FP
Which terminal among the programmable terminals of FPGA 6 is used as an input terminal when executing GA object 3,
Input/output terminal information 11 indicating which terminal is used as an output terminal is generated.

【0016】変換手段2による上述した変換が終了する
と、ロード手段5は、CPU用オブジェクト4をCPU
7の図示しないメモリにロードし、FPGA用オブジェ
クト3をFPGA6内の図示しないRAMにロードし、
CPU7を起動する。
When the conversion means 2 completes the above-mentioned conversion, the loading means 5 transfers the CPU object 4 to the CPU.
7 into a memory (not shown), load the FPGA object 3 into a RAM (not shown) in the FPGA 6,
Start CPU7.

【0017】CPU7は起動されると、先ず、入出力端
子情報11を読み込み、制御線12により接続手段8の
動作設定を行う。即ち、接続手段8は、例えばFPGA
6の各端子に1対1につながる信号線とCPU7のバス
につながる信号線との間を任意に接続替えできる切り替
え器を内蔵しており、この切り替え器は制御線12で設
定された制御信号に応じた切り替え動作が行えるように
なっている。そこで、CPU7は、入出力端子情報11
が示すFPGA6の入力端子に、CPU7自身が送出し
たFPGA6向けのデータが入力されるように、また、
FPGA6の出力端子のデータがCPU7に入力される
ように、制御線12により接続手段8中の切り替え器の
設定を行うものである。これによって、FPGA6とC
PU7との間で接続手段8を介して相互にデータの交換
が可能になる。
When the CPU 7 is activated, it first reads the input/output terminal information 11 and sets the operation of the connection means 8 through the control line 12. That is, the connection means 8 is, for example, an FPGA.
It has a built-in switch that can arbitrarily change the connection between the signal line connected one-to-one to each terminal of 6 and the signal line connected to the bus of CPU 7. It is possible to perform switching operations according to the situation. Therefore, the CPU 7 inputs and outputs the input/output terminal information 11.
so that the data sent by the CPU 7 itself for the FPGA 6 is input to the input terminal of the FPGA 6 indicated by
The switching device in the connecting means 8 is set by the control line 12 so that the data at the output terminal of the FPGA 6 is input to the CPU 7. By this, FPGA6 and C
Data can be mutually exchanged with the PU 7 via the connection means 8.

【0018】その後、CPU7はCPU用オブジェクト
4の実行を開始する。これ以降、CPU7は必要なデー
タを接続手段8を介してFPGA6に送出し、FPGA
6はロードされたFPGA用オブジェクト3によって規
定される処理をそのデータに施して結果を接続手段8を
介してCPU7に送り、CPU7はそれを受け取って処
理を続行するといった動作が行われ、最終的に両者協調
してプログラム・ソース1で示される所期の処理を遂行
する。
Thereafter, the CPU 7 starts executing the CPU object 4. From this point on, the CPU 7 sends necessary data to the FPGA 6 via the connection means 8, and
6 performs the processing specified by the loaded FPGA object 3 on the data, sends the result to the CPU 7 via the connection means 8, and the CPU 7 receives it and continues processing. Both parties cooperate to carry out the intended processing indicated by program source 1.

【0019】[0019]

【発明の効果】以上説明したように、本発明の情報処理
装置は、プログラム・ソースのうち例えばCPUによる
実行では処理時間が多くかかる繰り返し部分や高速化処
理が特に必要となる部分はFPGA用オブジェクトを生
成してFPGAで実行させるので、特定のアプリケーシ
ョン・プログラムに依存するような専用のハードウェア
を使うことなく、与えられたプログラム・ソースによる
所期の処理を高速に実行することができる効果がある。
As explained above, in the information processing apparatus of the present invention, repetitive parts of the program source that require a lot of processing time when executed by a CPU, and parts that particularly require high-speed processing are processed using FPGA objects. Because it generates and executes on the FPGA, it has the effect of being able to quickly execute the desired processing using the given program source without using dedicated hardware that depends on a specific application program. be.

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

【図1】本発明の一実施例の情報処理装置のブロック図
である。
FIG. 1 is a block diagram of an information processing device according to an embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1…プログラム・ソース 2…変換手段 3…FPGA用オブジェクト 4…CPU用オブジェクト 5…ロード手段 6…FPGA(Field Programmable
 Gate Array)7…CPU 8…接続手段 10…コンパイルオプション 11…入出力端子情報 12…制御線
1...Program source 2...Conversion means 3...FPGA object 4...CPU object 5...Loading means 6...FPGA (Field Programmable
Gate Array) 7...CPU 8...Connection means 10...Compile option 11...I/O terminal information 12...Control line

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】  CPUと、FPGAと、前記CPUと
前記FPGAとの間のデータ交換のための接続手段と、
プログラム・ソースを、前記CPUで実行するCPU用
オブジェクトと前記FPGAで実行するFPGA用オブ
ジェクトとに変換する変換手段と、該変換手段で得られ
た前記CPU用オブジェクトを前記CPUにロードし、
前記FPGA用オブジェクトを前記FPGAにロードす
るロード手段とを含む情報処理装置。
1. A CPU, an FPGA, and a connection means for exchanging data between the CPU and the FPGA;
a conversion means for converting a program source into a CPU object to be executed by the CPU and an FPGA object to be executed by the FPGA; and loading the CPU object obtained by the conversion means to the CPU;
An information processing device comprising: loading means for loading the FPGA object into the FPGA.
【請求項2】  前記変換手段は、前記プログラム・ソ
ースのうちのコンパイルオプションで指示された部分を
FPGA用オブジェクトに変換することを特徴とする請
求項1記載の情報処理装置。
2. The information processing apparatus according to claim 1, wherein the converting means converts a portion of the program source specified by a compile option into an FPGA object.
【請求項3】  前記接続手段は、前記CPUから出力
された前記FPGA向けのデータを前記FPGAの入力
端子に入力し、前記FPGAの出力端子から出力された
データを前記CPUに出力する構成を有する請求項1ま
たは2記載の情報処理装置。
3. The connection means has a configuration for inputting data outputted from the CPU and destined for the FPGA to an input terminal of the FPGA, and outputting data outputted from an output terminal of the FPGA to the CPU. The information processing device according to claim 1 or 2.
JP10680491A 1991-04-11 1991-04-11 Information processor Pending JPH04314133A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10680491A JPH04314133A (en) 1991-04-11 1991-04-11 Information processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10680491A JPH04314133A (en) 1991-04-11 1991-04-11 Information processor

Publications (1)

Publication Number Publication Date
JPH04314133A true JPH04314133A (en) 1992-11-05

Family

ID=14443049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10680491A Pending JPH04314133A (en) 1991-04-11 1991-04-11 Information processor

Country Status (1)

Country Link
JP (1) JPH04314133A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000514944A (en) * 1997-05-08 2000-11-07 アイレディー コーポレイション Hardware accelerator for object-oriented programming languages
WO2001090887A1 (en) * 2000-05-25 2001-11-29 Fujitsu Limited Method fir processing program for high-speed processing by using dynamically reconfigurable hardware and program for executing the processing method
WO2001095099A1 (en) * 2000-06-06 2001-12-13 Tadahiro Ohmi System for managing circuitry of variable function information processing circuit and method for managing circuitry of variable function information processing circuit
JP2003036175A (en) * 2001-07-24 2003-02-07 Pacific Design Kk Method for designing data processor
WO2010016299A1 (en) 2008-08-07 2010-02-11 三菱電機株式会社 Semiconductor integrated circuit device, facility apparatus control device, and apparatus state display device
JP2010044578A (en) * 2008-08-12 2010-02-25 Toshiba Corp Multicore processor
JP2011090710A (en) * 1998-11-20 2011-05-06 Altera Corp Reconfigurable programmable logic device computer system
JP2012133756A (en) * 2010-11-10 2012-07-12 Src Computers Inc System and method for computational unification of heterogeneous implicit and explicit processing elements
WO2017056427A1 (en) * 2015-09-30 2017-04-06 日本電気株式会社 Program rewrite device, method, and storage medium

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000514944A (en) * 1997-05-08 2000-11-07 アイレディー コーポレイション Hardware accelerator for object-oriented programming languages
JP2011090710A (en) * 1998-11-20 2011-05-06 Altera Corp Reconfigurable programmable logic device computer system
WO2001090887A1 (en) * 2000-05-25 2001-11-29 Fujitsu Limited Method fir processing program for high-speed processing by using dynamically reconfigurable hardware and program for executing the processing method
WO2001095099A1 (en) * 2000-06-06 2001-12-13 Tadahiro Ohmi System for managing circuitry of variable function information processing circuit and method for managing circuitry of variable function information processing circuit
US7424595B2 (en) 2000-06-06 2008-09-09 Tadahiro Ohmi System for managing circuitry of variable function information processing circuit and method for managing circuitry of variable function information processing circuit
JP2003036175A (en) * 2001-07-24 2003-02-07 Pacific Design Kk Method for designing data processor
WO2010016299A1 (en) 2008-08-07 2010-02-11 三菱電機株式会社 Semiconductor integrated circuit device, facility apparatus control device, and apparatus state display device
US8823723B2 (en) 2008-08-07 2014-09-02 Mitsubishi Electric Corporation Semiconductor integrated circuit device, facility appliance control device, and appliance state display apparatus
JP2010044578A (en) * 2008-08-12 2010-02-25 Toshiba Corp Multicore processor
JP2012133756A (en) * 2010-11-10 2012-07-12 Src Computers Inc System and method for computational unification of heterogeneous implicit and explicit processing elements
WO2017056427A1 (en) * 2015-09-30 2017-04-06 日本電気株式会社 Program rewrite device, method, and storage medium

Similar Documents

Publication Publication Date Title
JPH04314133A (en) Information processor
JPH0528431B2 (en)
JP2001255912A (en) Method for executing motion program
CN213876697U (en) Operation accelerating circuit of SSD main control chip with high flexibility and low bandwidth
JPS60204029A (en) Signal processing device
JPH0589048A (en) Command processing system
CN112835553A (en) Operation acceleration method and circuit of SSD (solid State drive) main control chip with high flexibility and low bandwidth
JPH0314039A (en) Instruction conversion simplex test support system
JPH0452987B2 (en)
JP3348177B2 (en) Programmable controller
JPH0460719A (en) Electronic computer
KR930005706B1 (en) Hardware high speed processing method of plc
RU1829034C (en) Device for testing computing unit controlled by programs
JPS6273340A (en) Central processing unit
JPS6232557A (en) Communication protocol converter
JPH02205987A (en) Arithmetic processing system
JPS62221058A (en) Additional load control system for input/output control program
JPH07141288A (en) Dma transfer system
JPS5953902A (en) Control device
JPS58163045A (en) Controller of program counter
JPS6376053A (en) Multicomputer equipment
JPH03232030A (en) Computer
JPH04282704A (en) Sequence controller
JPH03209952A (en) Generating method for definition of communication control
JPH04153741A (en) Adverse debugging execution system for debugged program