JP2006185423A - カスタムlsi開発プラットフォーム、命令セット・アーキテクチャ及び論理回路構成情報の生成方法、並びにプログラム - Google Patents
カスタムlsi開発プラットフォーム、命令セット・アーキテクチャ及び論理回路構成情報の生成方法、並びにプログラム Download PDFInfo
- Publication number
- JP2006185423A JP2006185423A JP2005338457A JP2005338457A JP2006185423A JP 2006185423 A JP2006185423 A JP 2006185423A JP 2005338457 A JP2005338457 A JP 2005338457A JP 2005338457 A JP2005338457 A JP 2005338457A JP 2006185423 A JP2006185423 A JP 2006185423A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- custom
- logic circuit
- program
- isa
- 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.)
- Granted
Links
Images
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
ユーザの所望するカスタムLSIを高級プログラミング言語により、作成可能なカスタムLSI開発プラットフォームを提供することにある。
【解決手段】
動的論理回路再構成可能プロセッサとソフトウェアプログラムとから成るカスタムLSI開発プラットフォームであり、前記ソフトウェアプログラムは、高級言語で記述されたプログラムから動的論理回路構成可能プロセッサの命令セットと論理素子接続情報とを含む命令セット・アーキテクチャ(以下、ISA)を生成するISAジェネレータと、前記論理素子接続情報と、前記動的論理回路構成可能プロセッサのプログラマブル・エレメント(以下、PE)の機能及び配置配列情報とから前記PEの配置配線情報を生成する論理回路構成・ジェネレータとを備えたカスタムLSI開発プラットフォーム。
【選択図】 図1
Description
の薄いハードウェア記述言語(HDL)を利用しなければならないという問題がある。かかるHDLのコードは記述量が多いことから作成に時間がかかる上、コンパイルやシミュレーションにかかる時間も長いという問題がある。
本明細書において、動的論理回路再構成可能プロセッサとは、動的にプロセッサ内部の論理回路を命令に従い、再構成しながら処理を行う機能を備えたプロセッサをいう。
を行う場合、あるいはリコンフィギュラブル・データ・パス24によらずにインデックス・レジスタ211内の値の操作のみを行う場合のどちらを選択するかを指示するものである。
件の指定を行えば、リコンフィギュラブル・データ・パス24での演算結果を用いて処理を分岐させることも可能である。
・サイクル数を処理内容によって、1,2,4,8クロック・サイクルに指定することに用いることができる。
化処理の仕様を忠実に記述したものをコンパイルすることによって行った。コンパイルオプションには−O2を用いた。
10 ソフトウェアプログラム
20 再構成可能プロセッサ
21 コントローラ
22 スタック
23 コンフィギュレーション・メモリ
24 再構成可能論理回路(リコンフィギュラブル・データ・パス)
25 レジスタ・ファイル
26 メモリ
100 Cソースプログラム
110 ISAジェネレータ
111 中間コード
112 命令セット・アーキテクチャ(ISA)
130 論理回路構成ジェネレータ
131 論理回路構成情報
141 プログラム・オブジェクトコード
142 論理回路構成・オブジェクトコード
160 ライブラリ
Claims (19)
- 高級言語で記述されたプログラム(以下、ソースプログラム)から命令セット・アーキテクチャ(以下、ISA)を自動生成する手段(以下、ISAジェネレータ)を含むソフトウェアプログラムと、前記生成されたISAに対応して論理回路を再構成する手段を含む再構成可能プロセッサとを備えたカスタムLSI開発プラットフォームであって、
前記ISAジェネレータは、
ソースプログラムの命令のパターンを抽出する手段と、
前記抽出した命令のパターンとライブラリに格納されているカスタム命令のパターンとを比較し、前記抽出した命令を前記カスタム命令、及び/又はカスタム命令の組み合わせで置換する手段と
を備えたことを特徴とするカスタムLSI開発プラットフォーム。 - 前記ソフトウェアプログラムは、前記再構成可能プロセッサの論理回路を構成するプログラマブル・エレメント(以下、PE)の配置配列情報と前記生成されたISAとから前記プロセッサの論理回路構成情報を生成する論理回路構成ジェネレータを備えたことを特徴とする請求項1に記載のカスタムLSI開発プラットフォーム。
- 前記ソフトウェアプログラムは、
前記生成されたISAを前記再構成可能プロセッサの実行可能可能なコード(以下、プログラム・オブジェクトコード)に変換する手段と、
前記論理回路構成情報を前記再構成可能プロセッサの実行可能可能なコード(以下、論理回路構成・オブジェクトコード)に変換する手段と
を備えたことを特徴とする請求項1または2に記載のカスタムLSI開発プラットフォーム。 - 前記再構成可能プロセッサは、前記プログラム・オブジェクトコードと前記論理回路構成・オブジェクトコードとに基づいて、PEを再配置し論理回路を再構成する手段を備えたことを特徴とする請求項1から3のいずれかに記載のカスタムLSI開発プラットフォーム。
- 前記ISAジェネレータは、
ライブラリに格納されているカスタム命令を呼び出すファンクションコール手段と、
前記プロセッサの制御命令を含む中間コードを生成する手段と
を備えたことを特徴とする請求項1から4のいずれかに記載のカスタムLSI開発プラットフォーム。 - 前記プログラム・オブジェクトコードと前記論理回路再構成・オブジェクトコードに基づいて、前記再構成可能プロセッサが前記ソースプログラムを実行するパフォーマンスをシミュレートする手段を備えたことを特徴とする請求項1から5のいずれかに記載のカスタムLSI開発プラットフォーム。
- 前記抽出した命令をカスタム命令に置換するプロセスにおいて、カスタム命令に置き換えられなかった命令を新たなカスタム命令として生成する手段を備えたことを特徴とする請求項1から6のいずれかに記載のカスタムLSI開発プラットフォーム。
- 再構成可能プロセッサの命令セット・アーキテクチャ(以下、ISA)の生成方法であって、
高級言語で記述されたプログラム(以下、ソースプログラム)の命令のパターンを抽出し、
前記抽出した命令のパターンとライブラリに格納されているカスタム命令のパターンとを比較し、
前記抽出した命令をカスタム命令、及び/又はカスタム命令の組み合わせで置換し、前記再構成可能プロセッサ用のISAを生成することを特徴とするISAの生成方法。 - 置換されたカスタム命令と関連付けられてライブラリに格納されている論理素子接続情報を抽出し、該論理素子接続情報を含んでISAを生成することを特徴とする請求項8に記載のISAの生成方法。
- 前記プロセッサが動的再構成可能プロセッサであることを特徴とする請求項8又は9に記載のISAの生成方法。
- 前記抽出した命令をカスタム命令、及び/又はカスタム命令の組み合わせで置換するプロセスにおいて、前記ソースプログラムの命令中、カスタム命令に置換できなかった命令を、新たなカスタム命令として定義するとともに前記ライブラリに追加し、カスタム命令の再抽出を行うことを特徴とする請求項8から10のいずれかに記載のISAの生成方法。
- 再構成可能プロセッサの論理回路構成情報の生成方法であって、
高級言語で記述されたプログラム(以下、ソースプログラム)の命令パターンを抽出し、
前記抽出された命令のパターンとライブラリに格納されているカスタム命令のパターンとを比較し、
前記抽出された命令を前記カスタム命令、及び/又はカスタム命令の組み合わせで置換し、
前記抽出したカスタム命令と関連付けられてライブラリに格納されている論理素子接続情報と、前記プロセッサのプログラマブル・エレメント(以下、PE)の配置配列情報とから、論理回路構成情報を生成することを特徴とする論理回路構成情報の生成方法。 - 前記再構成可能プロセッサが、動的再構成可能プロセッサであることを特徴とする請求項12に記載の論理回路構成情報の生成方法。
- 請求項3に記載のプログラム・オブジェクトコードと前記論理回路構成・オブジェクトコードとを実行する手段を備えた再構成可能プロセッサ。
- 動的再構成可能論理回路と、
前記動的再構成可能論理回路を構成するプログラマブル・エレメント(以下、PE)の命令毎の配置配列情報を記憶するコンフィギュレーション・メモリと、
命令の実行の中間結果を一時的に保持するレジスタ・ファイルと、
命令を保持するメモリと、
命令の実行順序を含むプロセッサの管理を行うコントローラと
を備えたことを特徴とする請求項14に記載の再構成可能プロセッサ。 - 前記コントローラは、前記メモリにアクセスするときのインデックスを記憶するインデックス・レジスタを備えたことを特徴とする請求項14又は15に記載の再構成可能プロセッサ。
- 前記インデックス・レジスタの値を記憶するスタックを更に備えたことを特徴とする請求項14から16のいずれかに記載の再構成可能プロセッサ。
- コンピュータに実行させ再構成可能プロセッサの命令セット・アーキテクチャ(以下、ISA)を生成するコンピュータ・プログラムであって、
前記コンピュータ・プログラムは、高級言語で記述されたプログラム(以下、ソースプログラム)の命令パターンを抽出するステップと、
前記抽出した命令パターンとライブラリに格納されているカスタム命令のパターンとを比較するステップと、
前記抽出した命令を前記カスタム命令、及び/又はカスタム命令の組み合わせで置換するステップと
をコンピュータに実行させるISAを生成するコンピュータ・プログラム。 - コンピュータに実行させ動的再構成可能プロセッサの論理回路構成情報を生成するコンピュータ・プログラムであって、
前記コンピュータ・プログラムは、高級言語で記述されたプログラム(以下、ソースプログラム)の命令パターンを抽出するステップと、
前記抽出した命令のパターンとライブラリに格納されているカスタム命令のパターンとを比較するステップと、
前記抽出された命令を前記カスタム命令、及び/又はカスタム命令の組み合わせで置換するステップと、
前記命令セットに含まれるカスタム命令と関連付けられてライブラリに格納されている論理素子接続情報と前記再構成可能プロセッサのプログラマブル・エレメント(以下、PE)の配置配列情報とから、論理回路構成情報を生成するステップと
をコンピュータに実行させる論理回路構成情報を生成するコンピュータ・プログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005338457A JP4390211B2 (ja) | 2004-11-30 | 2005-11-24 | カスタムlsi開発プラットフォーム、命令セット・アーキテクチャ及び論理回路構成情報の生成方法、並びにプログラム |
KR1020077014815A KR20070097051A (ko) | 2004-11-30 | 2005-11-30 | 동적으로 재구성 가능한 프로세서 |
EP05814535A EP1836601A2 (en) | 2004-11-30 | 2005-11-30 | Dynamically reconfigurable processor |
PCT/JP2005/022401 WO2006059775A2 (en) | 2004-11-30 | 2005-11-30 | Dynamically reconfigurable processor |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004345400 | 2004-11-30 | ||
JP2005338457A JP4390211B2 (ja) | 2004-11-30 | 2005-11-24 | カスタムlsi開発プラットフォーム、命令セット・アーキテクチャ及び論理回路構成情報の生成方法、並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006185423A true JP2006185423A (ja) | 2006-07-13 |
JP4390211B2 JP4390211B2 (ja) | 2009-12-24 |
Family
ID=36738456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005338457A Expired - Fee Related JP4390211B2 (ja) | 2004-11-30 | 2005-11-24 | カスタムlsi開発プラットフォーム、命令セット・アーキテクチャ及び論理回路構成情報の生成方法、並びにプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4390211B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205264A (ja) * | 2008-02-26 | 2009-09-10 | Nippon Telegr & Teleph Corp <Ntt> | ウェブサービス要求処理装置、ウェブサービス要求処理方法、及びウェブサービス要求処理システム |
US8234613B2 (en) * | 2008-07-15 | 2012-07-31 | Fujitsu Semiconductor Limited | Program, design apparatus, and design method for dynamic reconfigurable circuit |
JP2013165490A (ja) * | 2012-02-09 | 2013-08-22 | Altera Corp | 高レベル言語を用いるプログラマブルデバイスの構成 |
JP2018028919A (ja) * | 2012-02-09 | 2018-02-22 | アルテラ コーポレイションAltera Corporation | 高レベル言語を用いるプログラマブルデバイスの構成 |
JP7402240B2 (ja) | 2019-01-14 | 2023-12-20 | マイクロソフト テクノロジー ライセンシング,エルエルシー | スレッドの実行順序を維持する同期デジタル回路を生成する言語およびコンパイラ |
-
2005
- 2005-11-24 JP JP2005338457A patent/JP4390211B2/ja not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205264A (ja) * | 2008-02-26 | 2009-09-10 | Nippon Telegr & Teleph Corp <Ntt> | ウェブサービス要求処理装置、ウェブサービス要求処理方法、及びウェブサービス要求処理システム |
US8234613B2 (en) * | 2008-07-15 | 2012-07-31 | Fujitsu Semiconductor Limited | Program, design apparatus, and design method for dynamic reconfigurable circuit |
JP2013165490A (ja) * | 2012-02-09 | 2013-08-22 | Altera Corp | 高レベル言語を用いるプログラマブルデバイスの構成 |
JP2018028919A (ja) * | 2012-02-09 | 2018-02-22 | アルテラ コーポレイションAltera Corporation | 高レベル言語を用いるプログラマブルデバイスの構成 |
JP7402240B2 (ja) | 2019-01-14 | 2023-12-20 | マイクロソフト テクノロジー ライセンシング,エルエルシー | スレッドの実行順序を維持する同期デジタル回路を生成する言語およびコンパイラ |
Also Published As
Publication number | Publication date |
---|---|
JP4390211B2 (ja) | 2009-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20060242385A1 (en) | Dynamically reconfigurable processor | |
Zhao et al. | Performance modeling and directives optimization for high-level synthesis on FPGA | |
US7610475B2 (en) | Programmable logic configuration for instruction extensions | |
JP4893309B2 (ja) | 再構成可能な論理回路を有するデータ処理装置 | |
Yu et al. | Vector processing as a soft-core CPU accelerator | |
US20070074000A1 (en) | VLIW Acceleration System Using Multi-state Logic | |
US20060190909A1 (en) | Method for designing a system LSI | |
US7752592B2 (en) | Scheduler design to optimize system performance using configurable acceleration engines | |
JP4390211B2 (ja) | カスタムlsi開発プラットフォーム、命令セット・アーキテクチャ及び論理回路構成情報の生成方法、並びにプログラム | |
Chmiel et al. | An IEC 61131-3-based PLC implemented by means of an FPGA | |
Shen et al. | Dataflow-based design and implementation of image processing applications | |
KR20030057397A (ko) | 시스템 엘에스아이 설계 방법 | |
Kooli et al. | Towards a truly integrated vector processing unit for memory-bound applications based on a cost-competitive computational SRAM design solution | |
WO2006059775A2 (en) | Dynamically reconfigurable processor | |
Jain et al. | Implementation and extension of bit manipulation instruction on RISC-V architecture using FPGA | |
Sun et al. | Designing high-quality hardware on a development effort budget: A study of the current state of high-level synthesis | |
JP2793342B2 (ja) | 演算処理装置 | |
Levine et al. | Efficient application representation for HASTE: hybrid architectures with a single, transformable executable | |
Döbrich et al. | Exploring online synthesis for CGRAs with specialized operator sets | |
Chiu et al. | A multi-streaming SIMD multimedia computing engine | |
JP4787711B2 (ja) | データ処理装置および方法、コンピュータプログラム、情報記憶媒体、並びにデータ処理システム | |
JP2006202329A (ja) | システムlsiの設計方法及びこれを記憶した記録媒体 | |
CN106021175A (zh) | 控制处理系统中的处理器之间的数据流 | |
Sisejkovic et al. | Software Framework | |
Verdoscia | Codacs project: A development tool for embedded system prototyping |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090527 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20090716 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090724 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20090716 |
|
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: 20090928 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091002 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121016 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131016 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |