【手続補正書】
【提出日】令和1年8月16日(2019.8.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ブロックベースのデータフロー命令セットアーキテクチャ(ISA)の粗粒度再構成可能アレイ(CGRA)構成回路であって、
複数のタイルを備えるCGRAであって、前記複数のタイルのうちの各タイルが機能ユニットおよびスイッチを備える、CGRAと、
命令復号回路と
を備え、前記命令復号回路が、
ブロックベースのデータフローコンピュータプロセッサコアから、複数のデータフロー命令を備えるデータフロー命令ブロックを受信することと、
前記複数のデータフロー命令のデータフロー命令ごとに、
前記データフロー命令を前記CGRAの前記複数のタイルのうちの1つのタイルにマッピングすることと、
前記データフロー命令を復号することと、
前記データフロー命令の機能に対応するように、前記マッピングされたタイルの前記機能ユニットのための機能制御構成を生成することと、
前記データフロー命令のコンシューマ命令ごとに、前記マッピングされたタイルの前記機能ユニットの出力を前記コンシューマ命令に対応する前記CGRAの前記複数のタイルのうちの宛先タイルにルーティングするために、前記CGRAの前記複数のタイルのうちの1つまたは複数のパスタイルの各々の前記スイッチのスイッチ制御構成を生成することと
を行うように構成される、CGRA構成回路。
【請求項２】
前記命令復号回路が、前記スイッチ制御構成を生成する前に、
前記コンシューマ命令に対応する前記CGRAの前記複数のタイルのうちの前記宛先タイルを識別することと、
前記マッピングされたタイルから前記宛先タイルへのパスを備える前記CGRAの前記複数のタイルのうちの前記1つまたは複数のパスタイルを決定することであって、前記1つまたは複数のパスタイルが、前記マッピングされたタイルおよび前記宛先タイルを含む、決定することと
を行うようにさらに構成される、請求項1に記載のCGRA構成回路。
【請求項３】
前記命令復号回路が、前記マッピングされたタイルと前記宛先タイルとの間の最短マンハッタン距離を決定することによって、前記マッピングされたタイルから前記宛先タイルへの前記パスを備える前記CGRAの前記複数のタイルのうちの前記1つまたは複数のパスタイルを決定するように構成される、請求項2に記載のCGRA構成回路。
【請求項４】
前記複数のタイルのうちの各タイルの前記機能ユニットが、複数のワードレベル演算を提供するための論理手段を備え、
前記機能ユニットが、前記生成された機能制御構成に応じて、前記複数のワードレベル演算のうちの1つのワードレベル演算を選択的に実行するように構成される、請求項2に記載のCGRA構成回路。
【請求項５】
前記複数のタイルのうちの各タイルの前記スイッチが、前記タイルの前記機能ユニットおよび前記対応する複数のタイルの複数のスイッチに通信可能に接続されており、
前記スイッチが、前記生成されたスイッチ制御構成に応じて、前記機能ユニットと、前記対応する複数のタイルの前記複数のスイッチのうちの1つまたは複数との間でデータを送信するように構成される、請求項2に記載のCGRA構成回路。
【請求項６】
前記コンシューマ命令が、前記データフロー命令の出力を入力として受信する命令を備える、請求項2に記載のCGRA構成回路。
【請求項７】
前記命令復号回路が、集中型ハードウェアステートマシンをさらに備え、
前記命令復号回路が、マッピングされたタイルごとに前記機能制御構成および前記スイッチ制御構成をCGRA構成バッファに出力するようにさらに構成される、請求項1に記載のCGRA構成回路。
【請求項８】
前記命令復号回路が、それぞれが前記CGRAの前記複数のタイルのうちの1つのタイルに統合されている複数の分散デコーダユニットをさらに備え、
前記命令復号回路が、前記マッピングされたタイルに対応する前記複数の分散デコーダユニットのうちの1つの分散デコーダユニットを使用して、各データフロー命令を復号し、マッピングされたタイルごとに前記機能制御構成および前記スイッチ制御構成を生成するように構成される、請求項1に記載のCGRA構成回路。
【請求項９】
前記命令復号回路が、実行時に、前記データフロー命令ブロックを実行するために前記CGRAおよび前記ブロックベースのデータフローコンピュータプロセッサコアのうちの1つを選択するようにさらに構成される、請求項1に記載のCGRA構成回路。
【請求項１０】
前記命令復号回路が、実行時に、マッピングされたタイルごとに前記機能制御構成および前記スイッチ制御構成の生成が成功したかどうかを決定するようにさらに構成され、
前記命令復号回路が、
マッピングされたタイルごとの前記機能制御構成および前記スイッチ制御構成の前記生成が成功したとの決定に応じて、前記データフロー命令ブロックを実行するために前記CGRAを選択することと、
マッピングされたタイルごとの前記機能制御構成および前記スイッチ制御構成の前記生成が成功しなかったとの決定に応じて、前記データフロー命令ブロックを実行するために前記ブロックベースのデータフローコンピュータプロセッサコアを選択することと
を行うように構成される、請求項9に記載のCGRA構成回路。
【請求項１１】
前記命令復号回路が、実行時に、前記CGRAが必要なリソースを提供するかどうかを検出するようにさらに構成され、
前記命令復号回路が、
前記CGRAが前記必要なリソースを提供するとの決定に応じて、前記データフロー命令ブロックを実行するために前記CGRAを選択することと、
前記CGRAが前記必要なリソースを提供していないとの決定に応じて、前記データフロー命令ブロックを実行するために、前記ブロックベースのデータフローコンピュータプロセッサコアを選択することと
を行うように構成される、請求項9に記載のCGRA構成回路。
【請求項１２】
集積回路(IC)に統合される、請求項1に記載のCGRA構成回路。
【請求項１３】
セットトップボックス、エンターテイメントユニット、ナビゲーションデバイス、通信デバイス、固定位置データユニット、モバイル位置データユニット、モバイル電話、セルラー電話、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末(PDA)、モニタ、コンピュータモニタ、テレビ、チューナ、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、携帯音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、およびポータブルデジタルビデオプレーヤで構成されるグループから選択されるデバイスに統合される、請求項1に記載のCGRA構成回路。
【請求項１４】
ブロックベースのデータフロー命令セットアーキテクチャ(ISA)におけるデータフロー命令ブロック実行のための粗粒度再構成可能アレイ(CGRA)を構成するための方法であって、
命令復号回路によって、ブロックベースのデータフローコンピュータプロセッサコアから、複数のデータフロー命令を備えるデータフロー命令ブロックを受信するステップと、
前記複数のデータフロー命令のデータフロー命令ごとに、
前記データフロー命令をCGRAの複数のタイルのうちの1つのタイルにマッピングするステップであって、前記複数のタイルのうちの各タイルが機能ユニットおよびスイッチを備える、ステップと、
前記データフロー命令を復号するステップと、
前記データフロー命令の機能に対応するように、前記マッピングされたタイルの前記機能ユニットのための機能制御構成を生成するステップと、
前記データフロー命令のコンシューマ命令ごとに、前記マッピングされたタイルの前記機能ユニットの出力を前記コンシューマ命令に対応する前記CGRAの前記複数のタイルのうちの宛先タイルにルーティングするために、前記CGRAの前記複数のタイルのうちの1つまたは複数のパスタイルの各々の前記スイッチのスイッチ制御構成を生成するステップと
を備える、方法。