IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 深▲セン▼市紫光同創電子有限公司の特許一覧

特表2024-524285FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム
<>
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図1
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図2
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図3
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図4
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図5
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図6
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図7
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図8
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図9
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図10
  • 特表-FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-07-05
(54)【発明の名称】FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム
(51)【国際特許分類】
   G06F 30/337 20200101AFI20240628BHJP
   G06F 30/327 20200101ALI20240628BHJP
   G06F 119/12 20200101ALN20240628BHJP
【FI】
G06F30/337
G06F30/327
G06F119:12
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023579428
(86)(22)【出願日】2022-07-20
(85)【翻訳文提出日】2023-12-24
(86)【国際出願番号】 CN2022106775
(87)【国際公開番号】W WO2023001192
(87)【国際公開日】2023-01-26
(31)【優先権主張番号】202110819418.5
(32)【優先日】2021-07-20
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】520412486
【氏名又は名称】深▲セン▼市紫光同創電子有限公司
(74)【代理人】
【識別番号】100207561
【弁理士】
【氏名又は名称】柳元 八大
(72)【発明者】
【氏名】▲ドン▼ 波
(72)【発明者】
【氏名】孔 彪
(72)【発明者】
【氏名】張 敏
【テーマコード(参考)】
5B146
【Fターム(参考)】
5B146AA22
5B146GC02
5B146GC03
5B146GC04
(57)【要約】
本発明は、FPGAキャリーチェーンに基づく回路構造最適化方法及びシステムを提供する。前記方法は、論理統合ツールによって目標論理演算を論理統合して、統合ネットワークテーブルを得ることと、統合ネットワークテーブルにおけるキーパスを取得することと、キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つキーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換し、参照パスは連続隣接するルックアップテーブルからなるパスであることと、を含む。本発明の実施形態は、キーパス上の変換要求に合致するルックアップテーブルを探し、ルックアップテーブルをキャリーチェーンに変換する。キャリーチェーンとルックアップテーブルの2つの素子間の時間遅延が大きく、キャリーチェーンとキャリーチェーン間の時間遅延が小さいため、隣接するキャリーチェーンとルックアップテーブルを2つの隣接するキャリーチェーンに変換することにより、回路時間遅延を減少させ、回路周波数を高め、FPGAチップの性能を向上させる。
【選択図】図1
【特許請求の範囲】
【請求項1】
FPGAキャリーチェーンに基づく回路構造最適化方法であって、
論理統合ツールによって目標論理演算を論理統合して、統合ネットワークテーブルを得ることと、
前記統合ネットワークテーブルにおけるキーパスを取得することと、
前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換し、前記参照パスは連続隣接するルックアップテーブルからなるパスであることと、
を含む、
ことを特徴とするFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項2】
前記予め設定された閾値は、前記目標論理演算を実現するための目標FPGAチップに基づいて決定される、
ことを特徴とする請求項1に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項3】
前記予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数にcinピンの数を加えたことである、
ことを特徴とする請求項2に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項4】
前記予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数に1を加えたことである、
ことを特徴とする請求項2に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項5】
前記キーパスは1つまたは複数である、
ことを特徴とする請求項1~4の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項6】
前記キーパスは複数であり、
前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換することは、
それぞれの前記キーパス上にルックアップテーブルが存在するか否かを別々に調べることと、
前記キーパス上にルックアップテーブルが存在する場合、前記ルックアップテーブル上の実際に入力された信号の個数を計算することと、
前記実際に入力された信号の個数が予め設定された閾値より大きくなく、且つ前記ルックアップテーブルが所在する参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換することと、
を含む、
ことを特徴とする請求項5に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項7】
前記キーパスは、前記統合ネットワークテーブルの中で時間遅延が最も大きいパスを含む、
ことを特徴とする請求項1~6の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項8】
前記参照パスは1つ以上のルックアップテーブルを含む、
ことを特徴とする請求項1~7の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項9】
前記参照パスは複数の連続した隣接するルックアップテーブルを含み、
前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換することは、
前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端で、少なくとも1つの隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換することを含む、
ことを特徴とする請求項1~5の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項10】
前記統合ネットワークテーブルにおけるキーパスを取得することは、
静的タイミングシーケンス分析ツールを利用して、前記統合ネットワークテーブルに対してタイミングシーケンス分析を行い、前記統合ネットワークテーブルにおけるキーパスを確定することを含む、
ことを特徴とする請求項1~9の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項11】
前記キーパス上のルックアップテーブルをキャリーチェーンに変換することは、
前記キーパス上のルックアップテーブルを前記キャリーチェーンに替えることを含み、前記キャリーチェーンの入力ピンは前記キーパス上のルックアップテーブルの実際の信号入力ピンを替え、前記キャリーチェーンの出力ピンは前記キーパス上のルックアップテーブルの実際の信号出力ピンを替える、
ことを特徴とする請求項1~5の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項12】
前記論理統合ツールは、Design Compilerである、
ことを特徴とする請求項1~11の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項13】
FPGAキャリーチェーンに基づく回路構造最適化システムであって、
統合モジュール、パスモジュール及び変換モジュールを備え、
前記統合モジュールは、論理統合ツールによって目標論理演算を論理統合して、統合ネットワークテーブルを得るために用いられ、
前記パスモジュールは、前記統合ネットワークテーブルにおけるキーパスを取得するために用いられ、
前記変換モジュールは、前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられ、前記参照パスは連続隣接するルックアップテーブルからなるパスである、
ことを特徴とするFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項14】
前記予め設定された閾値は、前記目標論理演算を実現するための目標FPGAチップに基づいて決定される、
ことを特徴とする請求項13に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項15】
前記キーパスは複数であり、
前記変換モジュールは、それぞれの前記キーパス上にルックアップテーブルが存在するか否かを別々に調べて、前記キーパス上にルックアップテーブルが存在する場合、前記ルックアップテーブル上の実際に入力された信号の個数を計算し、前記実際に入力された信号の個数が予め設定された閾値より大きくなく、且つ前記ルックアップテーブルが所在する参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられる、
ことを特徴とする請求項13に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項16】
前記参照パスは1つ以上のルックアップテーブルを含む、
ことを特徴とする請求項13に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項17】
前記参照パスは複数の連続した隣接するルックアップテーブルを含み、
前記変換モジュールは、前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端で、少なくとも1つの隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられる、
ことを特徴とする請求項16に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項18】
前記変換モジュールは、前記キーパス上のルックアップテーブルを前記キャリーチェーンに替えるために用いられ、前記キャリーチェーンの入力ピンは前記キーパス上のルックアップテーブルの実際の信号入力ピンを替え、前記キャリーチェーンの出力ピンは前記キーパス上のルックアップテーブルの実際の信号出力ピンを替える、
ことを特徴とする請求項13に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項19】
コンピュータ装置であって、
メモリと、プロセッサと、前記メモリに格納されており且つ前記プロセッサ上で実行可能なコンピュータプログラムと、を備え、
前記プロセッサが前記コンピュータプログラムを実行すると、請求項1~12の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法のステップを実現する、
ことを特徴とするコンピュータ装置。
【請求項20】
コンピュータ記憶媒体であって、
前記コンピュータ記憶媒体にはコンピュータプログラムが格納されており、
前記コンピュータプログラムが前記プロセッサによって実行されると、請求項1~12の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法のステップを実現する、
ことを特徴とするコンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、中国特許庁に提出された中国特許出願の優先権を主張し、出願日は2021年7月20日であり、出願番号はCN202110819418.5であり、発明の名称は「FPGAキャリーチェーンに基づく回路構造最適化方法及びシステム」でり、且つ参照のためそれらの全文を本出願に組み込む。
【0002】
本発明は、回路技術分野に関し、特に、FPGAキャリーチェーンに基づく回路構造最適化方法及びシステムに関する。
【背景技術】
【0003】
デジタル化とインテリジェント化の発展に伴い、フィールドプログラマブルゲートアレイ(Field Programmable Gate,FPGAと略称する)チップコンポーネントは、通信、宇宙飛行、軍需産業などの分野で不可欠なコアデバイスとなり、国家戦略安全保障の重要な支持基礎となっている。FPGAソフトウェアにおいて、論理統合ツール(logic synthesis tool)はデジタル設計をゲートレベルテーブルにマッピングし、その冗長な回路構造を最適化し、その結果の性能レベルは後続のレイアウト配線結果に大きく影響し、その結果の性能レベルは後続のレイアウト配線結果に大きく影響し、最終のチップ応用時のタイミングシーケンス消費電力などの重要な性能に直接に影響する。
【0004】
FPGAチップの統合器は、統合過程において、自身のハードウェア構造の特性と制限のため、目標技術を含む1つまたは複数の関数ライブラリを引用する必要があり、関数ライブラリには、例えば、マルチビット加算器、レジスタ、メモリなどがある。統合器は、ハードウェア記述言語を解析することにより、コンパイラによってRLT記述を生成し、設計部分を実際のゲートレベルネットワークテーブルに効果的に統合する。統合器は、高度な抽象階層の記述を低階層の記述に変換するだけではなく、設計中の論理構造を最適化することができ、例えば、冗長な回路構造を除去するか、同じ機能の回路モジュールを繰り返し運用する。
【0005】
一般的に、FPGAでは小型のクエリテーブル(Look Up Table,LUTと略称する)を用いて論理関数を実現し、真値テーブルを格納することにより、任意のn個の入力1個の出力の論理関数を実現することができ、一般的に入力の範囲は4~6であり、FPGA論理統合の中の1つの重要なステップは、大型多入力の論理ブロックを4~6個の入力の小型論理関数に分解し、LUTを用いてこれらの小さな論理関数を実現する。
【0006】
しかし、LUTを利用して論理関数を実現する過程において、大きな時間遅延が発生するため、FPGAキャリーチェーンに基づく回路構造最適化方法が必要である。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、FPGAキャリーチェーンに基づく回路構造最適化方法及びシステムを提供し、回路タイミングシーケンスキーパスの時間遅延を低減し、回路全体の最大周波数を効果的に高め、目標FPGAチップの性能を増強することを主な目的とする。
【0008】
第一態様において、本発明の実施例は、FPGAキャリーチェーンに基づく回路構造最適化方法を提供し、
論理統合ツールによって目標論理演算を論理統合して、統合ネットワークテーブルを得ることと、
統合ネットワークテーブルにおけるキーパスを取得することと、
キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つキーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換し、参照パスは連続隣接するルックアップテーブルからなるパスであることと、
を含む。
【0009】
好ましくは、予め設定された閾値は、目標論理演算を実現するための目標FPGAチップに基づいて決定される。
【0010】
好ましくは、予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数にcinピンの数を加えたことである。
【0011】
好ましくは、予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数に1を加えたことである。
【0012】
好ましくは、キーパスは1つまたは複数である。
【0013】
好ましくは、キーパスは複数であり、キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つキーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換することは、それぞれのキーパス上にルックアップテーブルが存在するか否かを別々に調べることと、キーパス上にルックアップテーブルが存在する場合、ルックアップテーブル上の実際に入力された信号の個数を計算することと、実際に入力された信号の個数が予め設定された閾値より大きくなく、且つルックアップテーブルが所在する参照パスの両端の隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換することと、を含む。
【0014】
好ましくは、キーパスは、統合ネットワークテーブルの中で時間遅延が最も大きいパスを含む。
【0015】
好ましくは、参照パスは1つ以上のルックアップテーブルを含む。
【0016】
好ましくは、参照パスは複数の連続した隣接するルックアップテーブルを含み、キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つキーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換することは、キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つキーパス上の参照パスの両端で、少なくとも1つの隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換することを含む。
【0017】
好ましくは、統合ネットワークテーブルにおけるキーパスを取得することは、静的タイミングシーケンス分析ツールを利用して、前記統合ネットワークテーブルに対してタイミングシーケンス分析を行い、統合ネットワークテーブルにおけるキーパスを確定することを含む。
【0018】
好ましくは、キーパス上のルックアップテーブルをキャリーチェーンに変換することは、キーパス上のルックアップテーブルをキャリーチェーンに替えることを含み、キャリーチェーンの入力ピンはキーパス上のルックアップテーブルの実際の信号入力ピンを替え、キャリーチェーンの出力ピンはキーパス上のルックアップテーブルの実際の信号出力ピンを替える。
【0019】
好ましくは、論理統合ツールは、Design Compilerである。
【0020】
第二態様において、本発明の実施例は、FPGAキャリーチェーンに基づく回路構造最適化システムを提供し、統合モジュール、パスモジュール及び変換モジュールを備える。統合モジュールは、論理統合ツールによって目標論理演算を論理統合して、統合ネットワークテーブルを得るために用いられる。パスモジュールは、統合ネットワークテーブルにおけるキーパスを取得するために用いられる。変換モジュールは、キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つキーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられ、参照パスは連続隣接するルックアップテーブルからなるパスである。
【0021】
第三態様において、本発明の実施例は、コンピュータ装置を提供し、メモリと、プロセッサと、メモリに格納されており且つプロセッサ上で実行可能なコンピュータプログラムと、を備える。プロセッサがコンピュータプログラムを実行すると、上述したFPGAキャリーチェーンに基づく回路構造最適化方法のステップを実現する。
【0022】
第四態様において、本発明の実施例は、コンピュータ記憶媒体を提供し、コンピュータ記憶媒体にはコンピュータプログラムが格納されており、コンピュータプログラムがプロセッサによって実行されると、上述したFPGAキャリーチェーンに基づく回路構造最適化方法のステップを実現する。
【0023】
本発明が提出するFPGAキャリーチェーンに基づく回路構造最適化方法及びシステムは、キーパス上の変換要求に合致するルックアップテーブルを探し、ルックアップテーブルをキャリーチェーンに変換する。キャリーチェーンとルックアップテーブルの2つの素子間の時間遅延が大きく、キャリーチェーンとキャリーチェーン間の時間遅延が小さいため、隣接するキャリーチェーンとルックアップテーブルを2つの隣接するキャリーチェーンに変換することにより、回路時間遅延を減少させ、回路周波数を高め、FPGAチップの性能を向上させる。
【図面の簡単な説明】
【0024】
図1図1は、本発明の実施形態によって提供されるFPGAキャリーチェーンに基づく回路構造最適化方法のフローチャートである。
図2図2は、本発明の実施形態における論理統合使用の概略図である。
図3図3は、本発明の実施形態におけるキャリーチェーン構造の概略図である。
図4図4は、本発明の実施形態における1つの参照パスの概略図である。
図5図5は、本発明の実施形態におけるもう1つの参照パスの概略図である。
図6図6は、本発明の実施形態におけるキャリーチェーン素子の基本構成を示す概略図である。
図7図7は、本発明の実施形態におけるキャリーチェーン素子におけるsum部分論理の構成を示す概略図である。
図8図8は、本発明の実施形態における論理統合演算の構成を示す概略図である。
図9図9は、本発明の実施形態における論理演算を変換した後の回路構成を示す概略図である。
図10図10は、本発明の実施形態によって提供されるFPGAキャリーチェーンに基づく回路構造最適化システムの構成を示す概略図である。
図11図11は、本発明の実施形態によって提供されるコンピュータ装置の構成を示す概略図である。
【0025】
本発明の目的の実現、機能特徴及び利点は実施例と結合して、図面を参照しながらさらに説明する。
【発明を実施するための形態】
【0026】
本明細書に記載された具体的な実施形態は、ただ本発明を説明するために用いられ、本発明を限定するために用いられないことを理解されたい。
【0027】
図1は、本発明の実施形態によって提供されるFPGAキャリーチェーンに基づく回路構造最適化方法のフローチャートである。図1に示されたように、前記方法は、以下のステップを含む。
【0028】
ステップS110、論理統合ツールによって目標論理演算を論理統合して、統合ネットワークテーブルを得る。
【0029】
先ず、ある目標論理アルゴリズムを論理統合する場合、一般的に論理統合ツールを採用する。論理統合ツールは、一般的にいろいろな操作機能を統合するソフトウェアである。目標論理アルゴリズムは、一般的に論理演算である。論理統合とは、ツールを利用してレジスタ変換レベル(Registe Transfer Level,RTL)コードをゲートレベルネットワークテーブルに変換する過程である。一般的な論理統合ツールはsynopsysのDesign Compilerである。論理演算を統合するプロセスはRTLコードを読むことから始まり、タイミングシーケンス制約関係を印加することにより、マッピングによりゲートレベルネットテーブルファイルを生成し、3つのステップに分けられることができる。
【0030】
1、翻訳:回路のRTLレベル記述を読み込み、言語記述を対応する機能ブロックと機能ブロックの間のトポロジ構造に翻訳する。このプロセスの結果は、統合器内部で回路のブール関数式を生成し、いかなる論理再編成(logic reshuffling)や最適化は行わない。
【0031】
2、最適化:印加されたタイミングシーケンスと面積制約に基づいて、一定のアルゴリズムに従って翻訳結果に対して論理再編成及び最適化を行う。
【0032】
3、マッピング:印加されたタイミングシーケンスと面積制約に基づいて、ターゲットプロセスライブラリ(target process library)から条件を満たすユニットを検索して実際の回路の論理統合ネットワークテーブルを構成し、論理統合ネットワークは本発明の実施形態における統合ネットワークテーブルである。
【0033】
例えば、以下の設計を実現するために、目標論理アルゴリズムは10ビット入力に対するAND演算であり、論理統合ツールの統合結果は2つの接続されたルックアップテーブルを使用してこの論理機能を実現することである。図2に示されたように、図2は本発明の実施形態における論理統合使用の概略図である。
【0034】
この設計はは次の通りである。
module and_test
(
input [9:0] I,
output Z
);
assign Z = &I;
endmodule
【0035】
FPGAの基本ハードウェア構造には高速キャリーチェーン(CARRY CHIAN)もある。図3は、本発明の実施形態におけるキャリーチェーン構造の概略図である。図3に示されたように、一般的にはリップルキャリー加算器(Ripple Carry Adder,RCA)のキャリーチェーン構造であり、大ビット幅の加減算などの算術演算を実現するために用いられる。ハードウェア構造キャリーチェーンの基本構造は、一般的に入力範囲4~6の2出力のルックアップテーブル(Look-Up Table,LUT)プラスセレクタなどの他の論理ゲートである。
【0036】
S120、統合ネットワークテーブルにおけるキーパスを取得する。
【0037】
その後、静的タイミングシーケンス分析ツールを利用して、生成された統合ネットワークテーブルに対してタイミングシーケンス分析を行い、統合ネットワークテーブルにおけるキーパスを探し出す。
【0038】
本発明の実施形態において、キーパスは、回路の時間遅延に大きな影響を与える任意のパスであることができる。
【0039】
S130、キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つキーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換し、参照パスは連続隣接するルックアップテーブルからなるパスである。
【0040】
キーパスの本数が複数である場合、キーパスごとに対して、キーパスごとにルックアップテーブルが存在するか否かを検索し、当該キーパス上にルックアップテーブルが存在する場合、ルックアップテーブル上の実際に入力された信号の個数を計算し、実際に入力された信号の個数が予め設定された閾値より大きくなく、且つルックアップテーブルが所在する参照パスの両端の隣接素子がキャリーチェーンである場合、ルックアップテーブルが変換の要件を満たしていることを示し、ルックアップテーブルを変換することができる。
【0041】
本発明の実施形態において、図4は、本発明の実施形態における1つの参照パスの概略図であり、図4に示されたように、参照パスは1つのルックアップテーブルのみを含むことができ、参照パスが1つのルックアップテーブルのみを含む場合、ルックアップテーブルの2つの隣接素子における少なくとも1つがキャリーチェーンであると、ルックアップテーブルが変換要件を満たすことを説明し、ルックアップテーブルを変換する。
【0042】
また、図5は、本発明の実施形態におけるもう1つの参照パスの概略図であり、図5に示されたように、参照パスは複数の連続隣接するルックアップテーブルを含むこともでき、参照パスの両端において、少なくとも1つの隣接素子がキャリーチェーンであれば、参照パス上の全てのルックアップテーブルをキャリーチェーンに変換する。
【0043】
本発明が提案したFPGAキャリーチェーンに基づく回路構造最適化方法は、キーパス上の変換要求に合致するルックアップテーブルを探し、ルックアップテーブルをキャリーチェーンに変換する。キャリーチェーンとルックアップテーブルの2つの素子間の時間遅延が大きく、キャリーチェーンとキャリーチェーン間の時間遅延が小さいため、隣接するキャリーチェーンとルックアップテーブルを2つの隣接するキャリーチェーンに変換することにより、回路時間遅延を減少させ、回路周波数を高め、FPGAチップの性能を向上させる。
【0044】
また、本発明の実施例において、キーパス上の少量のルックアップテーブルに対する変換操作のみで、より良いタイミングシーケンス最適化効果が得られ、ソフトウェアの実行時間に対する負荷が極めて小さい。また、使用するキャリーチェーンリソースが少なく、FPGAチップにおけるキャリーチェーンリソースは極めて豊富であり、チップのリソース使用に影響を与えない。
【0045】
上述した実施形態に加えて、予め設定された閾値は、目標論理演算を実現するための目標FPGAチップに基づいて決定されることが好ましい。
【0046】
具体的には、予め設定された閾値は、目標FPGAチップに基づいて決定される。異なるチップ型番によって、目標FPGAチップの具体的なピンの個数及び使用方法が異なるため、異なる目標FPGAチップに対応する予め設定された閾値が異なる。
【0047】
上述した実施形態に加えて、予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数に1を加算することが好ましい。
【0048】
具体的には、予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数に1を加算したものである。
【0049】
具体的には、FPGAチップにおけるキャリーチェーンの理論入力個数は、LUTの理論入力個数にcinピンの数を加えたものであり、例えば、1はcinピンの数が1であることを表す。
【0050】
参照パスにおけるルックアップテーブルの実際の入力ピンの個数が予め設定された閾値より大きくない場合のみ、目標FPGAチップにおけるキャリーチェーンの使用できる入力ピンは十分である。
【0051】
上述した実施形態に加えて、キーパスは1つまたは複数であることが好ましい。
【0052】
具体的には、本発明の実施形態において、キーパスの数量は1つであってもよく、複数であってもよい。回路の周波数は最悪の時間遅延、つまり時間遅延が最も大きいパスによって決定されるため、他のパスのタイミングシーケンスを最適化することは回路の周波数を高めるのにあまり役に立たないが、依然として他のパスを最適化することができる。
【0053】
キーパスの数量が1つである場合、このキーパスは時間遅延が最も大きいパスであり、つまり設計のタイミングシーケンス性能に決定的な役割を果たすパスである。キーパスの数量が複数である場合、このキーパスにはきっと時間遅延が最も大きいパスが含まれる。
【0054】
上述した実施形態に加えて、好ましくは、キーパス上のルックアップテーブルをキャリーチェーンに変換することは、キーパス上のルックアップテーブルをキャリーチェーンに替えることを含み、キャリーチェーンの入力ピンは、キーパス上のルックアップテーブルの実際の信号入力ピンを替え、キャリーチェーンの出力ピンは、キーパス上のルックアップテーブルの実際の信号出力ピンを替える。
【0055】
具体的には、FPGAチップの論理関数は、通常、プログラム可能な相互接続されたルックアップテーブルによって実現されるため、設計されたキーパスにはカスケードルックアップテーブルがよく出現し、この場合の時間遅延を低減することができれば、設計のタイミングシーケンス性能に直接的に有効な最適化効果を持つことができる。
【0056】
キャリーチェーンは一般的に巧妙な信号トポロジ構造と高速技術を採用しているため、内部伝送の時間遅延は極めて小さく、実現される回路の全体的な時間遅延は1つのFPGAチップ中の通常のルックアップテーブルのプログラマブル相互接続で実現される総遅延よりずっと低い。
【0057】
図6は、本発明の実施形態におけるキャリーチェーン素子の基本構成を示す概略図である。図6に示されたように、通常のLUTに比べて、CARRY(キャリーチェーン)はキャリーの加減算などの算術演算機能を実現するために、デュアル出力を含むLUTに加えて、合計sumとキャリーcoutの演算を完了するためにセレクタmuxなどの論理ゲート(logic)を含む。
【0058】
加算演算はsum=A^B^CINに簡略化することができ、その中において、^は排他的論理和(exclusive OR)演算であり、CARRY内部のLUTnはA^Bの論理関数を実現することができる。図7は、本発明の実施形態におけるキャリーチェーン素子におけるsum部分論理の構成を示す概略図である。図7に示すような構造はキャリーチェーン素子中のsumの論理実現を実現することができ、図中のsum論理の演算部分とn+1ビットに入力されたLUTは一致し、任意のn+1入力の論理関数を実現することができ、同様にFPGAにおける通常のLUTの論理機能を替えることもできる。
【0059】
従ってFPGAデバイスにおけるLUTの入力がキャリーチェーン素子におけるLUTの入力個数に1を加算したもの以下であれば、チップにおけるCARRYリソースで替えることができる。
【0060】
例えば、目標論理演算Z=(A==B)?(&I):0を計算する論理統合ツールの結果は、通常、図8に示されたようであり、図8は、本発明の実施形態における論理統合演算の構成を示す概略図である。この場合、LUT6の実際の入力個数は6であり、CARRYにおけるLUT6理論入力個数は5であり、予め設定された閾値は5+1=6である。LUT6の実際の入力個数は予め設定された閾値と等しく、LUT6を前のキャリーチェーンの1段に変換することができ、キャリーチェーンとLUT6との間の接続時間遅延とLUT6自体の時間遅延をキャリーチェーン内部の最小時間遅延に変換する。図9は、本発明の実施形態における論理演算を変換した後の回路構成を示す概略図である。図9に示されたように、回路時間遅延を低減する目的に達成する。
【0061】
図10は、本発明の実施形態によって提供されるFPGAキャリーチェーンに基づく回路構造最適化システムの構成を示す概略図である。図10に示されたように、前記システムは、統合モジュール1010、パスモジュール1020及び変換モジュール1030を備える。
【0062】
統合モジュール1010は、論理統合ツールによって目標論理演算を論理統合して、統合ネットワークテーブルを得るために用いられる。
【0063】
パスモジュール1020は、統合ネットワークテーブルにおけるキーパスを取得するために用いられる。
【0064】
変換モジュール1030は、キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つキーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられ、参照パスは連続隣接するルックアップテーブルからなるパスである。
【0065】
いくつかの実施形態において、予め設定された閾値は、目標論理演算を実現するための目標FPGAチップに基づいて決定される。
【0066】
いくつかの実施形態において、予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数にcinピンの数を加えたことである。
【0067】
いくつかの実施形態において、予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数に1を加えたことである。
【0068】
いくつかの実施形態において、キーパスは1つまたは複数である。
【0069】
いくつかの実施形態において、キーパスは複数である。変換モジュール1030は、それぞれのキーパス上にルックアップテーブルが存在するか否かを別々に調べて、キーパス上にルックアップテーブルが存在する場合、ルックアップテーブル上の実際に入力された信号の個数を計算し、実際に入力された信号の個数が予め設定された閾値より大きくなく、且つルックアップテーブルが所在する参照パスの両端の隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられる。
【0070】
いくつかの実施形態において、キーパスは、統合ネットワークテーブルの中で時間遅延が最も大きいパスを含む。
【0071】
いくつかの実施形態において、参照パスは1つ以上のルックアップテーブルを含む。
【0072】
いくつかの実施形態において、参照パスは複数の連続した隣接するルックアップテーブルを含む。変換モジュール1030は、キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つキーパス上の参照パスの両端で、少なくとも1つの隣接素子がキャリーチェーンである場合、キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられる。
【0073】
いくつかの実施形態において、パスモジュール1020は、静的タイミングシーケンス分析ツールを利用して、統合ネットワークテーブルに対してタイミングシーケンス分析を行い、統合ネットワークテーブルにおけるキーパスを確定するために用いられる。
【0074】
いくつかの実施形態において、変換モジュール1030は、キーパス上のルックアップテーブルをキャリーチェーンに替えるために用いられ、キャリーチェーンの入力ピンは、キーパス上のルックアップテーブルの実際の信号入力ピンを替え、キャリーチェーンの出力ピンは、キーパス上のルックアップテーブルの実際の信号出力ピンを替える。
【0075】
いくつかの実施形態において、論理統合ツールは、Design Compilerである。
【0076】
なお、装置実施形態について、方法実施形態と基本的に類似するので、説明はより簡単であり、関連点は方法実施形態の一部の説明を参照すればよい。方法実施形態で説明されたいずれかの処理方式について、装置実施形態で対応する処理モジュールによって実現することができ、装置実施形態ではこれ以上説明しない。
【0077】
上述したFPGAキャリーチェーンに基づく回路構造最適化システムにおける各モジュールの全部又は一部は、ソフトウェア、ハードウェア及びそれらの組み合わせによって実現することができる。上述した各モジュールは、ハードウェア形式でコンピュータ装置中のプロセッサに組み込まれていてもよく、独立していてもよく、ソフトウェア形式でコンピュータ装置中のメモリに格納されていてもよく、従ってプロセッサが上述した各モジュールに対応する動作を呼び出して実行し易い。
【0078】
いくつかの実施形態において、図11は、本発明の実施形態によって提供されるコンピュータ装置の構造を示す概略図である。コンピュータ装置はサーバであることができ、その内部構造は図11に示されたようである。コンピュータ装置は、システムバスを介して接続されたプロセッサ、メモリ、ネットワークインターフェース及びデータベースを備える。コンピュータ装置のプロセッサは、計算及び制御能力を提供するために用いられる。コンピュータ装置のメモリは、コンピュータ記憶媒体、内部メモリを含む。コンピュータ記憶媒体には、オペレーティングシステム、コンピュータプログラム及びデータベースが格納されている。内部メモリは、コンピュータ記憶媒体内のオペレーティングシステム及びコンピュータプログラムの実行に環境を提供する。コンピュータ装置のデータベースは、FPGAキャリーチェーンに基づく回路構造最適化方法の実行中に生成又は取得されたデータを記憶するために用いられる。コンピュータ装置のネットワークインタフェースは、ネットワーク接続を介して外部の端末と通信するために用いられる。コンピュータプログラムはプロセッサによって実行されて、FPGAキャリーチェーンに基づく回路構造最適化方法を実現する。
【0079】
1つの実施形態において、メモリと、プロセッサと、メモリに格納されており且つプロセッサ上で実行可能なコンピュータプログラムとを含むコンピュータ装置が提供される。プロセッサがコンピュータプログラムを実行すると、上述した実施形態におけるFPGAキャリーチェーンに基づく回路構造最適化方法のステップを実現する。あるいは、プロセッサがコンピュータプログラムを実行すると、FPGAキャリーチェーンに基づく回路構造最適化システムという実施形態における各モジュール/ユニットの機能を実現し、重複を避けるために、こでは説明しない。
【0080】
1つの実施形態において、コンピュータプログラムを格納したコンピュータ記憶媒体が提供される。コンピュータプログラムがプロセッサによって実行されると、上述した実施形態におけるFPGAキャリーチェーンに基づく回路構造最適化方法のステップを実現する。あるいは、プロセッサがコンピュータプログラムを実行すると、FPGAキャリーチェーンに基づく回路構造最適化システムという実施形態における各モジュール/ユニットの機能を実現し、重複を避けるために、こでは説明しない。
【0081】
上述した方法実施形態におけるプロセスの全部又は一部は、コンピュータプログラムによって関連ハードウェアを指令することによって完成され得るということを、当業者は理解することができる。コンピュータプログラムは、不揮発性コンピュータ可読記憶媒体に格納されることができる。コンピュータプログラムが実行されると、上述した各方法実施形態のプロセスを実行することができる。ここで、本願が提供する各実施形態で使用されるメモリ、格納、データベース、又は他の媒体の任意の引用は、いずれも不揮発性及び/又は揮発性メモリを含むことができる。不揮発性メモリは、読み取り専用メモリ(read-only memory、ROM)、プログラム可能な読み取り専用メモリ(programmable ROM、PROM)、消去可能なプログラム可能な読み取り専用メモリ(erasable PROM、EPROM)、電気的に消去可能なプログラム可能な読み取り専用メモリ(electrically EPROM、EEPROM)、又はフラッシュメモリ(flash memory)を含むことができる。揮発性メモリは、ランダムアクセスメモリ(random access memory、RAM)又は外部高速キャッシュメモリを含むことができる。例示的であるが限定的ではない例として、様々なRAMが利用可能であり、例えば、スタティックランダムアクセスメモリ(static RAM、SRAM)、ダイナミックランダムアクセスメモリ(dynamic RAM、DRAM)、同期ダイナミックランダムアクセスメモリ(synchronous DRAM、SDRAM)、ダブルデータレート同期ダイナミックランダムアクセスメモリ(double data rate SDRAM、DDRSDRAM)、強化された同期ダイナミックランダムアクセスメモリ(enhanced SDRAM、ESDRAM)、同期リンクダイナミックランダムアクセスメモリ(synch-link DRAM、SLDRAM)、ランバスダイレクトランダムアクセスメモリ(Rambus Direct RAM,RDRAM)、ダイレクトランバスダイナミックランダムアクセスメモリ(Direct Rambus DRAM,DRDRAM)、ランバスダイナミックランダムアクセスメモリ(Rambus DRAM,RDRAM)などが挙げられる。
【0082】
説明の便宜と簡潔のために、上述した各機能ユニット、モジュールの区分のみを例を挙げて説明し、実際の応用では、必要に応じて上述した機能の分配を異なる機能ユニット、モジュールによって行うことができ、即ち装置の内部構造を異なる機能ユニット又はモジュールに区分して、上述した機能の全部又は一部を完成することができることを、当業者は明らかに了解することができる。
【0083】
上記の実施形態は、ただ本発明の技術方案を説明するために用いられ、それに限定されるものではない。上述した実施形態を参照して本発明を詳細に説明したが、依然として上述した各実施形態に記載された技術方案を修正したり、その一部の技術的特徴を同等に替えたりすることができ、これらの修正又は替えは、対応する技術方案の本質を本発明の各実施例の技術方案の精神と範囲から逸脱させるものではなく、すべて本発明の保護範囲に含まれるべきであることを、当業者は理解すべきである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
【手続補正書】
【提出日】2023-12-24
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0003
【補正方法】変更
【補正の内容】
【0003】
デジタル化とインテリジェント化の発展に伴い、フィールドプログラマブルゲートアレイ(Field Programmable Gate,FPGAと略称する)チップコンポーネントは、通信、宇宙飛行、軍需産業などの分野で不可欠なコアデバイスとなり、国家戦略安全保障の重要な支持基礎となっている。FPGAソフトウェアにおいて、論理統合ツール(logic synthesis tool)はデジタル設計をゲートレベルテーブルにマッピングし、その冗長な回路構造を最適化し、その結果の性能レベルは後続のレイアウト配線結果に大きく影響し最終のチップ応用時のタイミングシーケンス消費電力などの重要な性能に直接に影響する。
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
FPGAキャリーチェーンに基づく回路構造最適化方法であって、 論理統合ツールによって目標論理演算を論理統合して、統合ネットワークテーブルを得ることと、 前記統合ネットワークテーブルにおけるキーパスを取得することと、 前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換し、前記参照パスは連続隣接するルックアップテーブルからなるパスであることと、 を含む、 ことを特徴とするFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項2】
前記予め設定された閾値は、前記目標論理演算を実現するための目標FPGAチップに基づいて決定される、 ことを特徴とする請求項1に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項3】
前記予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数にcinピンの数を加えたことである、 ことを特徴とする請求項2に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項4】
前記予め設定された閾値は、目標FPGAチップキャリーチェーンにおけるルックアップテーブルの理論入力個数に1を加えたことである、 ことを特徴とする請求項2に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項5】
前記キーパスは1つまたは複数である、 ことを特徴とする請求項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項6】
前記キーパスは複数であり、 前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換することは、 それぞれの前記キーパス上にルックアップテーブルが存在するか否かを別々に調べることと、 前記キーパス上にルックアップテーブルが存在する場合、前記ルックアップテーブル上の実際に入力された信号の個数を計算することと、 前記実際に入力された信号の個数が予め設定された閾値より大きくなく、且つ前記ルックアップテーブルが所在する参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換することと、 を含む、 ことを特徴とする請求項5に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項7】
前記キーパスは、前記統合ネットワークテーブルの中で時間遅延が最も大きいパスを含む、 ことを特徴とする請求項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項8】
前記参照パスは1つ以上のルックアップテーブルを含む、 ことを特徴とする請求項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項9】
前記参照パスは複数の連続した隣接するルックアップテーブルを含み、 前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換することは、 前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端で、少なくとも1つの隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換することを含む、 ことを特徴とする請求項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項10】
前記統合ネットワークテーブルにおけるキーパスを取得することは、 静的タイミングシーケンス分析ツールを利用して、前記統合ネットワークテーブルに対してタイミングシーケンス分析を行い、前記統合ネットワークテーブルにおけるキーパスを確定することを含む、 ことを特徴とする請求項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項11】
前記キーパス上のルックアップテーブルをキャリーチェーンに変換することは、 前記キーパス上のルックアップテーブルを前記キャリーチェーンに替えることを含み、前記キャリーチェーンの入力ピンは前記キーパス上のルックアップテーブルの実際の信号入力ピンを替え、前記キャリーチェーンの出力ピンは前記キーパス上のルックアップテーブルの実際の信号出力ピンを替える、 ことを特徴とする請求項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項12】
前記論理統合ツールは、Design Compilerである、 ことを特徴とする請求項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法。
【請求項13】
FPGAキャリーチェーンに基づく回路構造最適化システムであって、 統合モジュール、パスモジュール及び変換モジュールを備え、 前記統合モジュールは、論理統合ツールによって目標論理演算を論理統合して、統合ネットワークテーブルを得るために用いられ、 前記パスモジュールは、前記統合ネットワークテーブルにおけるキーパスを取得するために用いられ、 前記変換モジュールは、前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられ、前記参照パスは連続隣接するルックアップテーブルからなるパスである、 ことを特徴とするFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項14】
前記予め設定された閾値は、前記目標論理演算を実現するための目標FPGAチップに基づいて決定される、 ことを特徴とする請求項13に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項15】
前記キーパスは複数であり、 前記変換モジュールは、それぞれの前記キーパス上にルックアップテーブルが存在するか否かを別々に調べて、前記キーパス上にルックアップテーブルが存在する場合、前記ルックアップテーブル上の実際に入力された信号の個数を計算し、前記実際に入力された信号の個数が予め設定された閾値より大きくなく、且つ前記ルックアップテーブルが所在する参照パスの両端の隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられる、 ことを特徴とする請求項13に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項16】
前記参照パスは1つ以上のルックアップテーブルを含む、 ことを特徴とする請求項13に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項17】
前記参照パスは複数の連続した隣接するルックアップテーブルを含み、 前記変換モジュールは、前記キーパス上のルックアップテーブルの実際の入力個数が予め設定された閾値より大きくなく、且つ前記キーパス上の参照パスの両端で、少なくとも1つの隣接素子がキャリーチェーンである場合、前記キーパス上のルックアップテーブルをキャリーチェーンに変換するために用いられる、 ことを特徴とする請求項16に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項18】
前記変換モジュールは、前記キーパス上のルックアップテーブルを前記キャリーチェーンに替えるために用いられ、前記キャリーチェーンの入力ピンは前記キーパス上のルックアップテーブルの実際の信号入力ピンを替え、前記キャリーチェーンの出力ピンは前記キーパス上のルックアップテーブルの実際の信号出力ピンを替える、 ことを特徴とする請求項13に記載のFPGAキャリーチェーンに基づく回路構造最適化システム。
【請求項19】
コンピュータ装置であって、 メモリと、プロセッサと、前記メモリに格納されており且つ前記プロセッサ上で実行可能なコンピュータプログラムと、を備え、 前記プロセッサが前記コンピュータプログラムを実行すると、請求項1~12の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法のステップを実現する、 ことを特徴とするコンピュータ装置。
【請求項20】
コンピュータ記憶媒体であって、 前記コンピュータ記憶媒体にはコンピュータプログラムが格納されており、 前記コンピュータプログラムが前記プロセッサによって実行されると、請求項1~12の中のいずれか一項に記載のFPGAキャリーチェーンに基づく回路構造最適化方法のステップを実現する、
ことを特徴とするコンピュータ記憶媒体。
【国際調査報告】