JP5373620B2 - データ転送制御装置、データ転送装置、データ転送制御方法及び再構成回路を用いた半導体集積回路 - Google Patents

データ転送制御装置、データ転送装置、データ転送制御方法及び再構成回路を用いた半導体集積回路 Download PDF

Info

Publication number
JP5373620B2
JP5373620B2 JP2009539939A JP2009539939A JP5373620B2 JP 5373620 B2 JP5373620 B2 JP 5373620B2 JP 2009539939 A JP2009539939 A JP 2009539939A JP 2009539939 A JP2009539939 A JP 2009539939A JP 5373620 B2 JP5373620 B2 JP 5373620B2
Authority
JP
Japan
Prior art keywords
unit
reconfiguration
circuit
data transfer
control unit
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.)
Expired - Fee Related
Application number
JP2009539939A
Other languages
English (en)
Other versions
JPWO2009060567A1 (ja
Inventor
公一 石野
高志 森本
幸治 浅井
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2009539939A priority Critical patent/JP5373620B2/ja
Publication of JPWO2009060567A1 publication Critical patent/JPWO2009060567A1/ja
Application granted granted Critical
Publication of JP5373620B2 publication Critical patent/JP5373620B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1694Configuration of memory controller to different memory types

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、複数のバスマスタ、バス及びメモリを備える半導体集積回路において、各バスマスタがバスを介してメモリとの間でデータ転送を行う技術に関し、特に、データ転送の性能の向上を図る技術に関する。
従来、複数のバスマスタ、バス及びメモリを備える半導体集積回路において、各バスマスタがバスを介してメモリとの間でデータ転送を行う場合に、特許文献1に記載されているバス制御装置では、メモリなどのスレーブデバイスにバスアクセスデータを一時的に保持するバッファを設け、バッファの存在を前提とした上で、複数の並列バスあるいは時分割バスのアービトレーションを実行することによりシステム性能の向上を実現している。
また、特許文献2によると、再構成回路において、メモリセルとスイッチング素子とを組み合わせた組合せ回路を多数集積したアレイを設けると共に、各組合せ回路のメモリ機能を使用するか論理機能を使用するかを制御する制御回路を開示している。
特開平10−214249号公報 特開平4−252515号公報
しかしながら、前記従来の構成では、メモリバンド幅確保のための専用バッファを設けることになり、面積及びコストが増大してしまう。
本発明は、前記従来の課題を解決するため、面積及びコストを増大させることなく、データの転送に必要なメモリバンド幅を確保して、データの転送の性能を向上させることができるデータ転送制御装置、データ転送装置、データ転送制御方法及び半導体集積回路を提供することを目的とする。
上記目的を達成するために、本発明は、外部デバイスとの間のデータの転送を制御するデータ転送制御装置であって、再構成可能な回路を備える再構成手段と、データの転送を要求する内部デバイスと、内部デバイスと外部デバイスとの間でデータ転送を中継するとともに、前記転送要求により必要とされるメモリバンド幅に応じて、データ転送を支援する回路を定める再構成情報を取得する転送制御部と、取得された前記再構成情報に基づいて、前記再構成手段における回路の再構成を制御する再構成制御手段とを備えることを特徴とする。
この構成によると、内部デバイスと外部デバイスとの間のデータ転送により必要とされるメモリバンド幅に応じて、定められデータ転送を支援する回路を定める再構成情報に基づいて、前記再構成手段における回路の再構成を制御するので、面積及びコストを増大させることなく、再構成手段により再構成された回路により、データ転送を支援することができる。
ここで、前記転送制御部は、前記メモリバンド幅が所定閾値以上である場合に、前記再構成情報を取得し、前記再構成制御手段は、取得された前記再構成情報を用いて、前記再構成手段に対して回路を再構成するよう制御するとしてもよい。
この構成によると、前記メモリバンド幅が所定閾値以上である場合に、前記再構成手段に再構成された回路により、データ転送を支援することができる。
ここで、前記転送制御部は、前記転送要求に係るデータを一時的に保持するバッファ部としての回路を定める前記再構成情報を取得し、前記再構成制御手段は、前記バッファ部としての回路を再構成するように前記再構成手段を制御してもよい。
この構成によると、前記再構成手段には、前記バッファ部としての回路が再構成されるので、データ転送においてバッファ部を用いることができる。
ここで、前記再構成情報は、さらに、演算部又は制御部としての回路を定め、前記再構成制御手段は、さらに、演算部又は制御部としての回路を再構成するように前記再構成手段を制御してもよい。
ここで、データ転送装置は、さらに、前記再構成手段が回路を再構成する場合、再構成直前に前記再構成手段に構築されている現回路の処理状態を保持する状態保持手段を備えるとしてもよい。
前記再構成手段は、さらに、前記再構成手段が前に構築された回路を再構成する場合、前記状態保持手段に保持されている回路の処理状態を用いるとしてもよい。
ここで、前記転送制御部は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を定める前記再構成情報を取得し、前記再構成制御手段は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を再構成するように前記再構成手段を制御してもよい。
この構成によると、前記メモリバンド幅が所定閾値より小さい場合に、前記再構成手段に演算部又は制御部としての回路を再構成するので、データ転送において用いることのない初期値としての回路を構成することができる。
ここで、前記転送制御部は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を定める前記再構成情報を取得し、前記メモリバンド幅が所定閾値以上である場合に、前記転送要求に係るデータを一時的に保持するバッファ部としての回路を定める前記再構成情報を取得し、前記再構成制御手段は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を再構成するように前記再構成手段を制御し、前記メモリバンド幅が所定閾値以上である場合に、前記バッファ部としての回路を再構成するように前記再構成手段を制御し、データ転送装置は、さらに、前記再構成手段が回路を再構成する場合、再構成直前に前記再構成手段に構築されている回路の処理状態を保持する状態保持手段を備えるとしてもよい。
この構成によると、前記メモリバンド幅が所定閾値以上である場合に、前記再構成手段に再構成された回路により、データ転送を支援することができるとともに、前記メモリバンド幅が所定閾値より小さい場合に、前記再構成手段に演算部又は制御部としての回路を再構成するので、データ転送において用いることのない初期値としての回路を構成することができる。
ここで、前記再構成手段は、前記内部デバイスによるデータの転送要求が実行されていない時間帯において、メモリバンド幅に空きがあるときに、その空き分のみを使用するデバイスとしての演算部又は制御部を構成するとしてもよい。
ここで、前記転送制御部は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を定める前記再構成情報を取得し、前記メモリバンド幅が所定閾値以上である場合に、演算部又は制御部としての回路及び前記転送要求に係るデータを一時的に保持するバッファ部としての回路を定める前記再構成情報を取得し、前記再構成制御手段は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を再構成するように前記再構成手段を制御し、前記メモリバンド幅が所定閾値以上である場合に、演算部又は制御部としての回路及び前記バッファ部としての回路を再構成するように前記再構成手段を制御するとしてもよい。
ここで、データ転送装置は、さらに、前記再構成手段がバッファ部を再構成する場合、再構成直前に前記再構成手段に構築されている回路の処理状態を保持する状態保持手段を備えるとしてもよい。
ここで、前記転送制御部は、前記メモリバンド幅が所定閾値以上である場合に取得する前記再構成情報は、前記バッファ部にアクセスする前記演算部又は制御部としての回路を定め、前記再構成制御手段は、前記メモリバンド幅が所定閾値以上である場合に、前記バッファ部にアクセスする前記演算部又は制御部としての回路を再構成するように前記再構成手段を制御するとしてもよい。
ここで、前記再構成手段は、内部デバイスによる転送要求に高い優先度が割り当てられ、リアルタイム応答を要求される前記内部デバイスによるデータの転送要求が実行されていない時間帯において、メモリバンド幅に空きがあるときに、その空き分のみを使用するデバイスとしての演算部又は制御部を構成するとしてもよい。
また、本発明は、内部のデバイス間でデータを転送するデータ転送装置であって、再構成可能な回路を備える再構成手段と、データの転送要求を出力する第1デバイスと、第1デバイスによる転送要求の対象である第2デバイスと、第1デバイスと第2デバイスとの間でデータ転送を中継するとともに、前記転送要求により必要とされるメモリバンド幅に応じて、データ転送を支援する回路を定める再構成情報を取得する転送制御部と、取得された前記再構成情報に基づいて、前記再構成手段における回路の再構成を制御する再構成制御手段とを備えることを特徴とする。
ここで、前記データ転送装置は、リアルタイム処理を行うリアルタイム処理装置であり、前記第2デバイスは、データを記憶するための記憶デバイスであり、前記第1デバイスは、リアルタイム応答を要求され、前記記憶デバイスに対してデータの書き込みを要求し、又は前記記憶デバイスからデータの読み出しを要求するとしてもよい。
また、本発明は、内部デバイスと転送要求の対象である外部デバイスとの間でデータの転送を中継する半導体集積回路であって、再構成可能な回路を備える再構成手段と、データの転送要求を出力する内部デバイスと、内部デバイスと外部デバイスとの間でデータ転送を中継するとともに、前記転送要求により必要とされるメモリバンド幅に応じて、データ転送を支援する回路を定める再構成情報を取得する転送制御部と、取得された前記再構成情報に基づいて、前記再構成手段における回路の再構成を制御する再構成制御手段とを備えることを特徴とする。
以上、本発明によれば、再構成回路により、システム動作中にオーバースペックとなっている不要な演算部あるいは制御部をバッファとして活用することにより低コストでメモリバンド幅を有効活用することが出来る。
民生機器10の基本構成を示す構成図である。 再構成回路1100の構成を示す。 論理回路4011の構成を示す。 状態保持テーブル5000のデータ構造を示す。 メモリバンド幅監視部1210の構成を示す。 閾値テーブル3000のデータ構造を示す。 閾値テーブル3000のデータ構造の一例を示す。 民生機器10における動作フローの概略を示すフローチャートである。 民生機器10における動作フローを示すフローチャートである。図10へ続く。 民生機器10における動作フローを示すフローチャートである。図11へ続く。 民生機器10における動作フローを示すフローチャートである。図12へ続く。 民生機器10における動作フローを示すフローチャートである。図11から続く。 再構成情報の取得の動作フローを示すフローチャートである。 再構成回路の再構成の動作フローを示すフローチャートである。 再構成部1110の回路構成の遷移を示す。
以下、本発明に係る一の実施の形態としての民生機器10について、図面を参照しながら説明する。
(実施の形態)
1.民生機器10の構成
民生機器10は、例えば、デジタル放送受信装置、携帯電話、DVD再生装置などであり、民生機器10が実行する複数の処理のうち、映像や音楽などの再生のようにリアルタイム性が要求される処理などを、他の処理に優先して、行うリアルタイム処理装置である。図1に、民生機器10の基本的な構成を示す。
民生機器10は、図1に示すように、半導体集積回路100、データ記憶部1002及び図示していないその他の構成要素から構成されており、半導体集積回路100とデータ記憶部1002とは、バス部1006を介して接続されている。半導体集積回路100は、第一バスマスタ部1000、第二バスマスタ部1001、データ転送制御部1200及び再構成回路1100から構成されており、第一バスマスタ部1000とデータ転送制御部1200とは、バス部1003を介して接続され、第二バスマスタ部1001とデータ転送制御部1200とは、バス部1007を介して接続され、後述する論理部1111とデータ転送制御部1200とは、バス部1004を介して接続され、後述するバッファ部1112とデータ転送制御部1200とは、バス部1005を介して接続されている。
なお、簡略化のため、半導体集積回路100は、第一バスマスタ部1000及び第二バスマスタ部1001の2個のバスマスタ部のみを含むとしているが、半導体集積回路100は、3個以上のバスマスタ部を含むとしてもよい。
また、第一バスマスタ部1000、第二バスマスタ部1001及び及びデータ記憶部1002をそれぞれ第1デバイス、第2デバイス及び第3デバイスと呼ぶこともある。
1.1 第一バスマスタ部1000及び第二バスマスタ部1001
第一バスマスタ部1000は、一例として、デジタル放送により放送される番組を受信し、受信した番組をデータとして蓄積するように制御するための制御回路であり、受信した放送波からユーザの所望のチャネルを選択し、選択したチャネルからユーザの所望の番組を抽出し、抽出した番組をデータ記憶部1002に蓄積する。ここで、受信した放送波から番組を抽出して蓄積する処理は、リアルタイムに行われるべきものである。また、第二バスマスタ部1001は、一例として、番組を再生する回路であり、データ記憶部1002から蓄積されている番組を読み出し、読み出された番組を再生して、その映像信号及び音声信号を生成し、生成した映像信号及び音声信号を外部のモニタ装置へ出力する。ここで、番組を再生して映像信号及び音声信号を出力する処理も、リアルタイムに行われるべきものである。
第一バスマスタ部1000及び第二バスマスタ部1001は、それぞれ、データ転送制御部1200に対して、データの転送要求を出力する。ここで、データの転送要求とは、データを保持するためのデータ記憶部1002へのデータの書込み要求又はデータ記憶部1002からのデータの読出し要求などである。
データ記憶部1002へのアクセスについて、例えば、第二バスマスタ部1001に割り当てられた優先度より高い優先度が第一バスマスタ部1000に割り当てられている。第一バスマスタ部1000及び第二バスマスタ部1001それぞれから同時に発生したデータの転送要求は、前記の優先度に基づいて、データ転送制御部1200により調停される。
1.2 再構成回路1100
再構成回路1100は、民生機器10の動作中においても動的に内部の回路構成を変更することを実現する回路である。
図1及び図2に示すように、再構成回路1100は、再構成部1110、再構成制御部1120及び状態保持部1130から構成されている。なお、再構成部1110は、動的に回路構成を変更することできる可変回路であり、一方、再構成制御部1120及び状態保持部1130は、回路構成を変更することができない固定回路である。
(1)再構成部1110
再構成部1110は、動的に回路構成の変更が可能な回路であり、再構成制御部1120の制御により、後述する再構成情報を用いて、その内部に、演算及び制御を実行する論理部1111及びデータを保持するためのバッファ部1112を構築する。
回路が構築された後の再構成部1110は、図2に示すように、論理部1111及びバッファ部1112から構成され、論理部1111は、状態管理部4002、演算データ要求部4005及び論理回路4011から構成され、バッファ部1112は、バッファ制御部4000及びバッファ用メモリ4021から構成される。
データ記憶部1002へのアクセスについて、第二バスマスタ部1001に割り当てられた優先度より高い優先度が第一バスマスタ部1000に割り当てられ、第一バスマスタ部1000が、リアルタイム応答を必要とするデータ記憶部1002へのアクセス要求をする場合、第一バスマスタ部1000から当該アクセス要求がまだ出力されておらず(つまり、出力されていない時間帯において)、当該アクセス要求がまだ実行されていないとき(つまり、実行されていない時間帯)であって、メモリバンド幅に空きがあるときに、再構成部1110は、その空き分のみを使用し、バスマスタ部として動作する演算回路又は制御回路を実現する論理部1111及びデータを保持するバッファ部1112を構築する。
(演算データ要求部4005)
演算データ要求部4005は、演算処理中に再構成実施要求信号1211により論理部1111の回路構成が変更され、新たに論理回路4011を構築するために、状態保持部1130に退避されたデータが必要になった場合、演算データ要求信号4006を状態保持部1130へ出力し、状態保持部1130から指示信号4007とともに、退避演算データ4008を獲得する。
(論理回路4011)
論理回路4011は、ユーザの民生機器10の利用状況に応じて、再構成すべき回路である。論理回路4011の一例を図3に示す。
論理回路4011は、再構成された結果、一例として図3に示すように、複数の演算器6000、演算器6001、演算器6002から構成されるものとする。各演算部は、一つの演算結果を持つ。演算器6000は、その演算処理の後、演算器6000による演算結果を演算器6001へ出力する。演算器6001は、演算器6000による演算結果を用いて、演算処理をし、その演算結果をさらに演算器6002へ出力する。演算器6002は、演算器6001による演算結果を用いて、演算処理をする。
ここで、例えば、演算器6000の演算が終了した直後であって、演算器6001の演算が終了する前に、論理回路4011に、再構成情報により、別の回路が再構成され、その後、再び、論理回路4011に元の演算器6000、演算器6001、演算器6002が再構成されたとする。このような場合には、新たに再構成された演算器6000、演算器6001、演算器6002は、新たに演算処理を行うのではなく、前の演算結果を利用できると、無駄な演算をしなくて済む。このため、例えば、演算器6000、演算器6001、演算器6002の途中の演算結果がそれぞれ蓄積されている必要がある。また、次に演算を再開するときに、どの演算器から開始すべきかなどの情報を蓄積されている必要がある。
なお、簡略化のため、論理回路4011には、3個の演算器6000、演算器6001、演算器6002が構成されるとしているが、論理回路4011上の構成される演算器の数は任意である。
また、再構成部1110には、演算器と演算器との接続を切り換える配線制御回路なども備えられており、再構成情報に従って、演算器と演算器との接続を切り換えることにより、論理回路4011が構成される。
(状態管理部4002)
状態管理部4002は、論理部1111の状態を示す論理部状態信号4001を生成し、生成した論理部状態信号4001を状態保持部1130へ出力する。ここで、論理部状態信号4001は、例えば、上記の各演算器の演算結果、次に演算を再開するときに、どの演算器から開始すべきかなどの情報などである。
(バッファ制御部4000)
バッファ制御部4000は、後述するバッファアクセス要求部1220からバッファアクセス書込要求信号1221を受け取る。バッファアクセス書込要求信号1221を受け取ると、バス部1005を介して転送されるデータをバッファ部1112のバッファ用メモリ4021に格納する。
また、バッファ制御部4000は、バッファアクセス要求部1220からバッファアクセス読出要求信号1222を受け取る。バッファアクセス読出要求信号1222を受け取ると、バッファ部1112のバッファ用メモリ4021に格納されたデータを、バス部1005を介して、データ転送制御部1200へ転送する。
このとき、バッファ部1112のバッファ用メモリ4021に格納されているデータを全て転送し、バッファ部1112のバッファ用メモリ4021が空になれば、バッファ制御部4000は、再構成制御部1120に対して、バッファ空信号4004を出力する。
(バッファ用メモリ4021)
バッファ用メモリ4021は、バッファ制御部4000の制御により、データを一時的に記憶する。
(2)再構成制御部1120
再構成制御部1120は、再構成部1110に回路を構築するよう制御する。
再構成制御部1120は、メモリバンド幅監視部1210から再構成実施要求信号1211を受け取る。再構成実施要求信号1211を受け取ると、再構成制御部1120は、再構成情報1212及び前回の再構成時に状態保持部1130に保持された情報をもとに再構成部1110を再構成すると同時に、状態保持部1130に再構成実施信号4003を出力する。
また、再構成実施要求信号1211が出力されておらずメモリバンド幅が閾値を超えていない場合、バッファ空信号4004を受け取った再構成制御部1120は、状態保持部1130により保持された情報をもとに論理部1111をバッファ部1112が構成される前の初期状態である回路Aとして構成する。
(3)状態保持部1130
状態保持部1130は、動的に回路構成が変更される際に、変更前の回路状態や演算途中の値を保持するための状態保持テーブル5000を記憶している。
状態保持テーブル5000は、図4に示すように、複数の状態情報から構成され、各状態情報は、論理回路4011に構成された演算器に対応し、演算器ID、有効無効区分及び演算結果値から構成されている。演算器IDは、対応する演算器を識別する識別情報である。有効無効区分は、対応する演算器が有効であるか無効であるかを示す。有効であるとは、当該演算器が論理回路4011の一部として機能していることを示し、無効であるは、当該演算器が論理回路4011の一部として機能していないことを示す。演算結果値は、対応する演算器による演算処理により得られた結果の値を示す。
状態保持部1130は、状態保持テーブル5000の他に、上述したように、演算器6000、演算器6001及び演算器6002による演算を再開するときに、どの演算器から開始すべきかなどを示す情報を蓄積している。このような情報が論理回路4011の状態を示す情報の一例である。
状態保持部1130は、再構成制御部1120から再構成実施信号4003を受け取り、また、状態管理部4002から論理部状態信号4001を受け取る。再構成実施信号4003を受け取ると、状態保持部1130は、状態管理部4002から受け取った論理部状態信号4001から、その時点の論理部1111の状態及び演算途中の値を獲得し、獲得した状態及び値を状態保持テーブル5000に保存する。
1.3 データ転送制御部1200
データ転送制御部1200は、第一バスマスタ部1000及び第二バスマスタ部1001から出力される複数の転送要求を調停し、調停結果に基づいてデータ記憶部1002にアクセスする。データ転送制御部1200は、図1に示すように、バッファアクセス要求部1220、メモリバンド幅監視部1210及び図示していない他の構成要素から構成されている。
(1)バッファアクセス要求部1220
バッファアクセス要求部1220は、第一バスマスタ部1000(又は第二バスマスタ部1001)がデータ記憶部1002へアクセスする場合に、(a)アクセス対象となるデータをバッファ部1112のバッファ用メモリ4021へ保持するとき、バッファ部1112へ、バッファ用メモリ4021へのデータの書込みの要求を意味するバッファアクセス書込要求信号1221を出力し、(b)アクセス対象となるデータをバッファ部1112のバッファ用メモリ4021から読み出すとき、バッファ部1112へ、バッファ用メモリ4021からのデータの読出しの要求を意味するバッファアクセス読出要求信号1222を出力する。
(2)メモリバンド幅監視部1210
メモリバンド幅監視部1210は、メモリバンド幅の使用状況を監視し、再構成制御部1120に対して再構成実施を要求する再構成実施要求信号1211、及び再構成に必要な情報である再構成情報1212を通知する。
メモリバンド幅監視部1210は、図5に示すように、メモリバンド幅算出部2000、閾値保持部2001、メモリバンド幅比較部2002及びメモリバンド幅情報通知部2003から構成される。
(メモリバンド幅算出部2000)
メモリバンド幅算出部2000は、第一バスマスタ部1000及び第二バスマスタ部1001が発行するデータ記憶部1002へのアクセスコマンドよりメモリバンド幅を計測する。アクセスコマンドには、データの転送サイズ(又は転送回数)が含まれており、メモリバンド幅算出部2000は、アクセスコマンドのうち、データ転送制御部1200により調停され、実行対象となるアクセスコマンドから、単位時間内の転送サイズの和を算出して、これをメモリバンド幅とする。次に、算出したメモリバンド幅をメモリバンド幅比較部2002へ出力する。アクセスコマンドが取得できない場合、例えば、第一バスマスタ部1000又は第二バスマスタ部1001によりアクセスコマンドが発行されていない時間帯においては、メモリバンド幅を「0」として算出する。
(閾値保持部2001)
閾値保持部2001は、図6に示すように、メモリバンド幅の閾値情報として閾値テーブル3000を保持している。
メモリバンド幅の取り得る値の範囲は、複数の区間に分けられている。閾値テーブル3000は、区間毎に、再構成部1110の論理部1111及びバッファ部1112として再構成すべき回路及びバッファを定めている。閾値テーブル3000は、メモリバンド幅算出部2000により求められたメモリバンド幅に応じて、再構成部1110が内部にどのような論理回路を構成するかを決定するために用いられる。
閾値テーブル3000は、図6に示すように、複数の閾値情報から構成され、各閾値情報は、各区間に対応している。各閾値情報は、閾値、バッファ容量情報及び論理部回路構成情報を含む。閾値は、対応する区間の上限値であり、バッファ容量情報は、再構成部1110に構成されるバッファ部1112の容量であり、論理部回路構成情報は、再構成部1110の論理部1111に構成されるべき回路の構成情報である。
具体例として、閾値テーブル3000は、閾値「1.6GB/s」、バッファ容量情報「0MB」及び論理部回路構成情報「回路A」を含む閾値情報、閾値「1.8GB/s」、バッファ容量情報「64MB」及び論理部回路構成情報「回路B」を含む閾値情報、閾値「2.0GB/s」、バッファ容量情報「128MB」及び論理部回路構成情報「回路C」を含む閾値情報及び閾値「∞」、バッファ容量「192MB」及び論理部回路構成情報「回路D」を含む閾値情報から構成されている。
ここで、「回路A」は、再構成部1110に、論理部1111として、状態管理部4002、演算データ要求部4005及び論理回路4011を再構成し、バッファ制御部4000を再構成するための回路構成情報を含むものとする。また、論理回路4011は、演算部、制御部、又は演算部及び制御部を含む。
また、「回路B」、「回路C」及び「回路D」は、それぞれ、再構成部1110に、論理回路4011を再構成するための回路構成情報を含むものとし、「回路B」、「回路C」及び「回路D」の回路構成情報は、状態管理部4002、演算データ要求部4005及び論理回路4011を再構成することなく、状態管理部4002、演算データ要求部4005及び論理回路4011は、そのまま維持されるものとする。また、論理回路4011は、演算部、制御部、又は演算部及び制御部を含む。
図6に一例として示す閾値テーブル3000は、次のことを意味している。つまり、民生機器10への電源投入あるいはリセットにより、又は、算出されたメモリバンド幅が1.6GB/s未満の場合に、再構成部1110は、バッファ部1112を持たず、論理部1111に回路Aを構成する。算出されたメモリバンド幅が1.6GB/s以上、かつ、1.8GB/s未満の場合に、64MBの容量を有するバッファ部1112を構成し、論理部1111に回路Bを構成する。算出されたメモリバンド幅が1.8GB/s以上、かつ、2.0GB/s未満の場合に、128MBの容量を有するバッファ部1112を構成し、論理部1111に回路Cを構成する。算出されたメモリバンド幅が2.0GB/s以上の場合に、192MBの容量を有するバッファ部1112を構成し、論理部1111に回路Dを構成する。
なお、図6に示す閾値テーブル3000では、一つの閾値に一種の回路のみが対応しているが、一つの閾値に複数種類の回路を対応させ、再構成の都度どの回路を利用するか調停し選択する構成でもよい。具体的には、図7に示すように、閾値テーブル3000は、閾値情報3000aを含み、閾値情報3000aは、閾値「1.8GB/s」、バッファ容量情報「64MB」及び論理部回路構成情報「回路X、回路Y、回路Z」を含むとしてもよい。閾値情報3000aは、算出されたメモリバンド幅が1.6GB/s以上、かつ、1.8GB/s未満の場合に、64MBの容量を有するバッファ部1112を構成し、論理部1111に回路X、回路Y、回路Zを構成することを意味している。
また、図6に示す閾値テーブル3000は、簡略化のため、4個の閾値情報を含むとしているが、その数は任意であり、2個の閾値情報又は3個の閾値情報を含むとしてもよいし、閾値テーブル3000は、さらに多くの閾値情報を含むとしてもよい。なお、この閾値情報は、本半導体集積回路の設計時にあらかじめ設定されるとしてもよいし、ソフトウェアにより変更可能としてもよい。
(メモリバンド幅比較部2002)
メモリバンド幅比較部2002は、メモリバンド幅算出部2000からメモリバンド幅を受け取り、閾値保持部2001から閾値テーブル3000に含まれる全ての閾値情報を読み出し、上記に説明したように、メモリバンド幅算出部2000により求められたメモリバンド幅と閾値保持部2001に保持されている閾値の比較を行い、比較結果をメモリバンド幅情報通知部2003へ出力する。
(メモリバンド幅情報通知部2003)
メモリバンド幅情報通知部2003は、メモリバンド幅比較部2002から比較結果を受け取り、メモリバンド幅比較部2002によりメモリバンド幅算出部2000により求められたメモリバンド幅が閾値保持部2001に保持されているメモリバンド幅より大きい値をとった場合に、比較結果に対応するバッファ容量情報及び論理部回路構成情報により構成されるバッファ部1112及び論理部1111が現在のバッファ部1112及び論理部1111と異なるときに限り、比較結果に対応するバッファ容量情報及び論理部回路構成情報により、再構成情報1212を生成し、再構成制御部1120に対して再構成実施要求信号1211及び再構成情報1212を出力する。比較結果に対応するバッファ容量情報及び論理部回路構成情報により構成されるバッファ部1112及び論理部1111が現在のバッファ部1112及び論理部1111と同一であるときには、再構成の必要はない。
2.民生機器10の動作
ここでは、民生機器10の動作について説明する。
(1)半導体集積回路100における動作の概略
半導体集積回路100における動作の概略について、図8に示すフローチャートを用いて説明する。
半導体集積回路100は、電源又はリセットの投入を受け付けると(ステップS7000)、再構成部1110は、初期状態を構成する(ステップS7001)。
次に、メモリバンド幅比較部2002は、算出されたメモリバンド幅が閾値を超えるか否かを判断し(ステップS7002)、閾値を超えない場合には(ステップS7002でN)、ステップS7002に戻って比較を繰り返す。
閾値を超える場合には(ステップS7002でY)、再構成実施信号4003を受けた状態保持部1130は、論理部状態信号4001から再構成前の状態を獲得し保存し(ステップS7003)、次に、再構成制御部1120は、論理部1111に論理回路4011を構成させ、バッファ部1112にバッファ用メモリ4021を構成させる(ステップS7004)。
バッファ制御部4000が再構成制御部1120に対して、バッファ空信号4004を出力していない場合に(ステップS7005でN)、ステップS7002へ戻って処理を繰り返す。
バッファ空信号4004を出力した場合に(ステップS7005でY)、状態保持部1130により保持された情報をもとに、論理部1111がバッファ部1112を構成する前の論理部の状態に復元される(ステップS7006)。
次に、ステップS7002へ戻って処理を繰り返す。
(2)半導体集積回路100における動作の詳細
半導体集積回路100における動作の詳細について、図9〜図12に示すフローチャートを用いて説明する。
データ転送制御部1200は、電源又はリセットの投入を受け付けると(ステップS101)、再構成情報を取得する。ここで取得した再構成情報は、電源又はリセットの投入直後に取得したものであるので、初期値である。なお、再構成情報の取得の詳細については、後述する(ステップS102)。次に、再構成実施要求信号及び取得した再構成情報(初期値)を再構成制御部1120へ出力する(ステップS103)。次に、再構成制御部1120は、再構成実施要求信号及び再構成情報(初期値)を再構成部1110へ出力し、再構成部1110は、受け取った再構成情報に従って論理部1111及びバッファ部1112を再構成する(ステップS105)。
ここまでは、半導体集積回路100における再構成部1110の初期化について説明しており、図8のステップS7000〜S7001に対応している。
次に、第一バスマスタ部1000は、データ転送制御部1200に対して、第1アクセスコマンドを出力する。この第1アクセスコマンドは、データ記憶部1002へデータを転送することを示すものであり、第1アクセスコマンドには、データの転送サイズの合計値が含まれる(ステップS111)。また、第二バスマスタ部1001は、データ転送制御部1200に対して、第2アクセスコマンドを出力する。この第2アクセスコマンドは、データ記憶部1002へデータを転送することを示すものであり、第2アクセスコマンドには、データの転送サイズの合計値が含まれる(ステップS112)。ここで、第一バスマスタ部1000による第1アクセスコマンドの出力と、第二バスマスタ部1001による第2アクセスコマンドの出力とは、ほぼ同一時刻に行われるものとする。また、第一バスマスタ部1000が発行する第1アクセスコマンドに対して割り当てられる優先度は、第二バスマスタ部1001が発行する第2アクセスコマンドに対して割り当てられる優先度よりも高いものであるとする。
データ転送制御部1200が第一バスマスタ部1000及び第二バスマスタ部1001からそれぞれ第1アクセスコマンド及び第2アクセスコマンドを受け取ると、データ転送制御部1200の調停部(図示していない)は、第1アクセスコマンド及び第2アクセスコマンドを調停する。調停は、それぞれのアクセスコマンドに割り当てられた優先度を用いて行う。ここでは、第1アクセスコマンドに割り当てられた優先度が第2アクセスコマンドに割り当てられた優先度よりも高いので、第1アクセスコマンドが、第2アクセスコマンドに優先して実行される(ステップS113)。
次に、データ転送制御部1200は、再構成情報を取得する。再構成情報の取得については、後述する(ステップS114)。
データ転送制御部1200は、現在の再構成部1110の構成と取得し再構成情報により構成されるべき再構成部1110の構成とを比較する。データ転送制御部1200は、この比較を次のようにして行う。例えば、データ転送制御部1200は、前回に取得し再構成に用いた再構成情報を識別する識別子を記憶しており、今回取得した再構成情報を識別する識別子と記憶している識別子とを比較する。次回の比較のために、今回取得した再構成情報を識別する識別子を記憶しておく(ステップS115)。一致していれば(ステップS115で「一致」)、再構成を実施しない。
一致していなければ(ステップS115で「不一致」)、再構成を実施するために、取得した再構成情報及び再構成実施要求信号を再構成回路1100へ出力し(ステップS116)、再構成回路1100は、再構成部1110において、論理部1111及びバッファ部1112を再構成する(ステップS117)。
ここまでで、再構成回路1100における再構成部1110の再構成が完了する。
次に、第一バスマスタ部1000(又はデータ記憶部1002)からデータ記憶部1002(又は第一バスマスタ部1000)へのデータ転送について説明する。なお、以下において、「第一バスマスタ部1000」を「第二バスマスタ部1001」と置き換えても、以下の半導体集積回路100の動作は、成立する。
第一バスマスタ部1000(又はデータ記憶部1002)は、転送すべきデータのうち、メモリバンド幅が閾値を超えた分の転送データを、データ転送制御部1200へ出力し(ステップS131)、データ転送制御部1200は、バッファアクセス書込要求信号をバッファ制御部4000へ出力し(ステップS132)、転送すべきデータをバッファ制御部4000へ出力する(ステップS133)。次に、バッファ制御部4000は、転送すべきデータをバッファ用メモリ4021へ出力し(ステップS134)、バッファ用メモリ4021は、転送すべきデータを記憶する(ステップS135)。
第一バスマスタ部1000(又はデータ記憶部1002)からデータ記憶部1002(又は第一バスマスタ部1000)へ転送すべきデータの総量のうち、メモリバンド幅が閾値を超えた分の転送データが、ステップS131〜S135により転送できる最大のデータ量よりも大きいときは、データの転送が完了するまで、ステップS131〜S135が繰り返される。
次に、データ転送制御部は、バス部1005の使用状況を監視しており、バス部1005の使用状況が空き状態となると、つまり、バス部1005において転送されるデータが存在しなければ(ステップS141でYES)、バッファアクセス読出要求信号をバッファ制御部4000へ出力し(ステップS142)、バッファ用メモリ4021は、バッファ制御部400の制御により、データを読み出し(ステップS143)、読み出したデータをバッファ制御部400へ出力し、読み出し対象のデータをバッファ用メモリ4021から削除する(ステップS145)。バッファ制御部4000は、読み出されたデータをデータ転送制御部1200へ出力し(ステップS146)、データ転送制御部1200は、読み出されたデータをデータ記憶部1002(又は第一バスマスタ部1000)へ出力する(ステップS147)。
バッファ制御部4000は、バッファ用メモリ4021が空か否かを監視する(ステップS148)。
バッファ用メモリ4021に蓄積されたデータの総量が、ステップS142〜S148により転送できる最大のデータ量よりも大きいときは、バッファ用メモリ4021に蓄積されたデータの総量の転送が完了するまで、ステップS142〜S148が繰り返される。
以上により、第一バスマスタ部1000からデータ記憶部1002へのデータ転送が完了する。
次に、バッファ制御部4000によりバッファ用メモリ4021が空であると判断された場合(ステップS148でYES)、バッファ制御部4000は、バッファ空信号を再構成制御部1120へ出力する(ステップS151)。
再構成制御部1120は、バッファ空信号を受け取ると(ステップS151)、再構成実施要求信号を受信しているか否かを判断し(ステップS152)、受信している場合は、その要求に従って動作する。
メモリバンド幅監視部1210は、再構成情報を取得する。再構成情報の取得の詳細については、後述する。この時点において、第一バスマスタ部1000又は第二バスマスタ部1001からのアクセスコマンドの出力がなければ、初期値としての再構成情報が取得される(ステップS153)。メモリバンド幅監視部1210は、取得した再構成情報を再構成制御部1120へ出力する(ステップS154)。
再構成制御部1120が再構成実施要求信号を受信していない場合(ステップS152で「なし」)に、メモリバンド幅監視部1210から再構成情報(初期値)を受け取ったときは(ステップS154)、再構成制御部1120は、再構成情報(初期値)及び再構成実施要求信号を再構成部1110へ出力し(ステップS155)、再構成部1110は、再構成情報(初期値)に従って、論理部1111とバッファ部1112を再構成する。つまり、再構成部1110は、初期化される(ステップS156)。
(3)メモリバンド幅監視部1210による再構成情報の取得
次に、メモリバンド幅監視部1210による再構成情報の取得の動作について、図13に示すフローチャートを用いて説明する。
メモリバンド幅監視部1210は、データ転送制御部1200の調停部による調停がされたアクセスコマンドを監視している(ステップS201)。調停されたアクセスコマンドが存在すれば(ステップS202で「有」)、調停されたアクセスコマンドから転送すべきデータのサイズの和を抽出し、抽出したサイズの和をメモリバンド幅として算出する(ステップS204)。アクセスコマンドが存在しなければ、例えば、第一バスマスタ部1000及び第二バスマスタ部1001の両方からアクセスコマンドが発行されていない時間帯であれば(ステップS202で「無」)、「0」をメモリバンド幅とする(ステップS203)。
次に、メモリバンド幅監視部1210は、閾値テーブル3000から先頭の閾値情報に含まれる閾値「1.6GB/s」を読み出し(ステップS205)、算出したメモリバンド幅と閾値「1.6GB/s」とを比較し(ステップS206)、算出したメモリバンド幅が閾値「1.6GB/s」より小さければ(ステップS206でYES)、閾値「1.6GB/s」に対応するバッファ容量情報「0MB」及び論理部回路構成情報「回路A」を、再構成情報として読み出し(ステップS207)、メモリバンド幅監視部1210による処理を終了する。
算出したメモリバンド幅が閾値「1.6GB/s」より大きいか又は等しければ(ステップS206でNO)、閾値テーブル3000から次の閾値情報に含まれる閾値「1.8GB/s」を読み出し(ステップS208)、算出したメモリバンド幅と閾値「1.8GB/s」とを比較し(ステップS209)、算出したメモリバンド幅が閾値「1.8GB/s」より小さければ(ステップS209でYES)、閾値「1.8GB/s」に対応するバッファ容量情報「64MB」及び論理部回路構成情報「回路B」を、再構成情報として読み出し(ステップS210)、メモリバンド幅監視部1210による処理を終了する。
算出したメモリバンド幅が閾値「1.8GB/s」より大きいか又は等しければ(ステップS209でNO)、閾値テーブル3000から次の閾値情報に含まれる閾値「2.0GB/s」を読み出し(ステップS211)、算出したメモリバンド幅と閾値「2.0GB/s」とを比較し、算出したメモリバンド幅が閾値「2.0GB/s」より小さければ(ステップS212でYES)、閾値「2.0GB/s」に対応するバッファ容量情報「128MB」及び論理部回路構成情報「回路C」を、再構成情報として読み出し(ステップS213)、メモリバンド幅監視部1210による処理を終了する。
算出したメモリバンド幅が閾値「2.0GB/s」より大きいか又は等しければ(ステップS212でNO)、閾値テーブル3000から次の閾値情報にバッファ容量情報「192MB」及び論理部回路構成情報「回路D」を、再構成情報として読み出し(ステップS214)、メモリバンド幅監視部1210による処理を終了する。
(4)再構成回路1100による再構成
次に、再構成回路1100による再構成の動作について、図14に示すフローチャートを用いて説明する。
再構成制御部1120は、データ転送制御部1200から再構成の指示を受け取ると、再構成実施要求信号を再構成部1110へ出力し(ステップS251)、再構成実施信号を状態保持部1130へ出力し(ステップS252)、再構成情報を再構成部1110へ出力する(ステップS254)。
再構成部1110は、再構成実施要求信号を受け取ると(ステップS251)、論理部状態信号を状態保持部1130へ出力し(ステップS253)、状態保持部1130は、論理部1111の状態、演算途中の値を獲得し(ステップS255)、論理部1111の状態、演算途中の値を保存する(ステップS256)。
次に、再構成部1110は、演算データ要求信号を状態保持部1130へ出力し(ステップS257)、状態保持部1130は、保存している論理部1111の状態、演算途中の値を読み出し(ステップS258)、指示信号を再構成部1110へ出力し(ステップS259)、読み出した論理部1111の状態、演算途中の値からなる退避演算データを再構成部1110へ出力し(ステップS260)、再構成部1110は、受け取った再構成情報と退避演算データとに従って、再構成部1110に論理部1111とバッファ部1112を再構成する(ステップS261)。
(5)半導体集積回路100の動作
本実施形態における半導体集積回路100の動作フローを簡略に述べると次のようになる。
電源あるいはリセットが投入されると、再構成制御部1120により論理部1111及びバッファ部1112には、初期状態の回路が構成される。
第一バスマスタ部1000をはじめとする各バスマスタ部がデータ記憶部1002へのデータ転送要求コマンドを発行すると、メモリバンド幅比較部2002は、メモリバンド幅算出部2000により求められるメモリバンド幅と閾値保持部2001に保持されている閾値とを比較する。
比較の結果、求められたメモリバンド幅が閾値を超えた場合、メモリバンド幅情報通知部2003は、再構成制御部1120に対して再構成実施要求信号1211及び再構成情報1212を出力する。
再構成実施要求信号1211及び再構成情報1212を受け取った再構成制御部1120は、再構成実施要求信号1211をもとに状態保持部1130に対して再構成実施信号4003を出力する。再構成実施信号4003を受け取った状態保持部1130は、論理部状態信号4001から、その時点の論理部1111の状態を獲得し保存する。この論理部1111の状態とは、状態保持テーブル5000のように演算器毎の状態および演算値である。
また、再構成制御部1120は、再構成情報1212及び前回の再構成時に状態保持部1130に保持された情報をもとに、再構成部1110に論理部1111とバッファ部1112とを再構成する。
メモリバンド幅が閾値を超えた分の転送データを、バッファアクセス書込要求信号1221を受けたバッファ制御部4000がバッファ部1112に格納していく。
バス部1005の使用状況が空き状態となると、バッファアクセス要求部1220は、バッファアクセス読出要求信号1222を出力し、バッファ部1112のデータがバス部1005によりデータ転送制御部1200へ転送され、さらにバス部1006によりデータ記憶部1002へと転送されていく。
また、閾値テーブル3000に複数の閾値情報を持つ場合で、メモリバンド幅がある閾値を超え閾値テーブル3000に従った回路構成をとり、構成されたバッファ部1112を用いてデータ転送中に、別の閾値を超えた場合、同様に閾値テーブル3000に従った回路を再構成する。
バッファ部1112に格納されているデータを全て転送し、バッファ部1112が空になれば、バッファ制御部4000が再構成制御部1120に対して、バッファ空信号4004を出力する。また、再構成実施要求信号1211が出力されておらずメモリバンド幅が閾値を超えていない場合、バッファ空信号4004を受け取った再構成制御部1120は、状態保持部1130により保持された情報をもとに論理部1111を、バッファ部1112が構成される前の初期状態の回路に再構成し、演算を再開する。
(6)再構成部1110のシステム動作における遷移の一例
次に、図15を用いて、再構成部1110のシステム動作における遷移の一例について述べる。
電源投入あるいはリセットによる初期化が実行されると、再構成部1110は、閾値テーブル3000に従って、論理部1111に回路A(1111a)のみを構成する(状態8100)。
その後、メモリバンド幅が1.8GB/sを超えたため、再構成部1110は、論理部1111に回路C(1111b)、容量128MBのバッファ部1112を構成する。バッファ部1112は、バッファ用メモリ1112aを含む。この時、回路Aが演算途中であれば、回路状態、演算値を状態保持部1130に保持する(状態8200)。
その後、メモリバンド幅が1.8GB/sよりは小さくなり1.6GB/sは超えた状態になると、再構成部1110は、論理部1111に回路B(1111c)を構成し、容量64MBのバッファ部1112を構成する。バッファ部1112は、バッファ用メモリ1112bを含む。この時、再構成制御部1120が論理部1111に回路B(1111c)を構成する際、必要であれば状態保持部1130の保持情報を回路B(1111c)に適用する。また、回路C(1111b)が演算途中であれば、回路状態、演算値を状態保持部1130に保持する(状態8300)。
その後、メモリバンド幅が1.6GB/sより小さくなり、状態8200や状態8300でデータが書込まれたバッファ部1112のデータもデータ記憶部1002に全て転送され、バッファ部1112が空状態となれば、再構成部1110は論理部1111に回路A(1111d)のみを構成する(状態8400)。
3.まとめ
以上説明したように、本実施形態を用いれば、各バスマスタ部のメモリバンド幅がデータ記憶部1002のデバイス依存の最大メモリバンド幅を超える可能性がある場合に、再構成部1110により構成したバッファ部1112が、バンド幅の超過分を吸収し、メモリバンド幅の確保を可能とする。
なお、論理部1111がDMA(ダイレクトメモリアクセス)を実行中にメモリバンド幅が閾値を超える場合は、DMAによる転送データを一時的に保持する領域を前記バッファ部1112に設け、論理部1111もバッファ部1112にアクセスすることにより、システム破綻を防ぐ。
4.その他の変形例
(1)上記実施の形態では、各バスマスタ部は、データ記憶部1002に対してアクセスするとしているが、これには限定されない。
半導体集積回路100は、データ記憶部1002に代えて、第三バスマスタ部(第4デバイスと呼ぶこともある。)を備えており、第一バスマスタ部1000は、データ記憶部1002に代えて、第三バスマスタ部との間でデータ転送してもよい。また、第二バスマスタ部1001も、データ記憶部1002に代えて、第三バスマスタ部との間でデータ転送をするとしてもよい。
このとき、例えば、第一バスマスタ部1000と第三バスマスタ部との間のデータ転送は、第二バスマスタ部1001と第三バスマスタ部との間のデータ転送に優先するものとし、データ転送制御部1200は、2個のデータ転送を調停し、第一バスマスタ部1000と第三バスマスタ部との間のデータ転送を優先させる。メモリバンド幅監視部1210は、第一バスマスタ部1000から出力されるアクセスコマンドからメモリバンド幅を算出し、算出したメモリバンド幅とと閾値とを比較して、再構成部1110を再構成するか否かを決定し、再構成すると決定した場合に、再構成情報を再構成制御部1120へ出力し、再構成部1110は、再構成情報に従って回路を再構成する。
(2)図6に示す閾値テーブル3000は、閾値情報として、閾値「2.0GB/s」、バッファ容量情報「128MB」及び論理部回路構成情報「回路C」を含む閾値情報に代えて、例えば、閾値「2.0GB/s」及びバッファ容量情報「256MB」を含む閾値情報を含むとしてもよい。この閾値情報は、論理部回路構成情報を含まない。この場合には、論理回路4011は、構成されず、256MBのバッファ容量を有するバッファ用メモリ4021のみが構成される。
(3)図1に示す再構成回路1100において、状態保持部1130は、存在しないものとしてもよい。また、状態管理部4002及び演算データ要求部4005も存在しないものとしてもよい。この場合には、以前に再構成部1110に構成されていた論理回路4011を再構成するときに、以前の論理回路4011の回路の状態を引き継ぐことはできない。
(4)上記の実施の形態において、図1に示すデータ転送制御部1200は、調停部(図示していない)、バッファアクセス要求部1220及びメモリバンド幅監視部1210を含むとしているが、次のように構成してもよい。
転送制御部1200は、調停部、バッファアクセス要求部1220及びメモリバンド幅監視部1210を含んでおらず、転送制御部1200は、調停部、バッファアクセス要求部1220及びメモリバンド幅監視部1210がそれぞれ有する機能及び構成を有する。
(5)本発明は、再構成回路により、リアルタイム応答を要求されるためデータ記憶部へのアクセス時の優先度が高く、バスマスタ部のデータ記憶部へのアクセス要求が実行されていない場合であって、メモリバンド幅に空きがある場合に、その空き分のみを使用するバスマスタ部の不要な演算部あるいは制御部をバッファとして活用することにより、低コストでバンド幅の有効活用を可能とするデータ転送装置、データ転送方法及び半導体集積回路を提供する。
本発明は、複数のバスマスタ、バス及びメモリを備える半導体集積回路において、各バスマスタがバスを介してメモリとの間でデータ転送を行う技術であり、特に、再構成回路を利用して、各バスマスタが要求するメモリバンド幅を確保して、データ転送の性能の向上を図る技術である。
半導体集積回路は、転送されるデータを記憶するデータ記憶部にアクセスする複数のバスマスタ部と、前記複数のバスマスタ部が独立して発生するデータ転送要求を管理し前記データ記憶部にアクセスするデータ転送制御部と、前記複数のバスマスタ部と前記データ転送制御部とを結ぶ複数のバス部Aと、前記データ転送制御部と前記データ記憶部とを結ぶバス部Bとを備え、前記複数のバスマスタ部が前記バス部Aと前記データ転送制御部と前記バス部Bとを介してデータ転送を行う。前記半導体集積回路は、さらに、前記複数のバスマスタ部が前記バス部Aと前記データ転送制御部と前記バス部Bとを介して前記データ記憶部にアクセスする際のメモリバンド幅を監視するメモリバンド幅監視部と、前記複数のバスマスタ部と同様に前記データ転送制御部とバス接続された再構成部と、前記メモリバンド幅監視部の出力情報をもとに前記再構成部を制御する再構成制御部とを備えていることを特徴とする。
この構成では、メモリバンド幅が所定の値に達したかどうかを判定し、その判定結果に応じて再構成部を最適制御することが可能となる。
また、前記半導体集積回路において、前記メモリバンド幅監視部により、前記複数のバスマスタ部が前記バス部Aと前記データ転送制御部と前記バス部Bとを介して前記データ記憶部にアクセスする際のメモリバンド幅が所定の値に達したと判定された場合、前記再構成制御部は、前記再構成部を所定の回路構成に再構成することを特徴とする。
また、前記半導体集積回路において、前記メモリバンド幅監視部により、メモリバンド幅に空きがあると判断する閾値より使用メモリバンド幅が小さいと判定された時は、演算部あるいは制御部としての論理部を構成し、使用メモリバンド幅が大きいと判定された時は、前記再構成部を前記複数のバスマスタ部が前記データ記憶部にアクセスする際のアクセスデータを一時的に保持するバッファ部を構成する。前記半導体集積回路は、さらに、前記再構成部が前記バッファ部を構成する際、再構成実施直前の前記論理部の処理状態を保持する状態保持部を備えていることを特徴とする。
また、前記半導体集積回路において、データ記憶部へのアクセスの優先度が高く、リアルタイム応答を要求されるバスマスタ部によるデータ記憶部へのアクセス要求が実行されていない場合であって、メモリバンド幅に空きがあるときに、前記論理部は、その空き分のみを使用するバスマスタ部としての演算部あるいは制御部を構成することを特徴とする。
また、前記半導体集積回路において、前記再構成制御部が前記メモリバンド幅監視部により、メモリバンド幅が空いていると判断する閾値より使用メモリバンド幅が小さいと判定された時は、演算部あるいは制御部としての論理部を構成する。また、使用メモリバンド幅が前記閾値より大きいと判定された時は、前記再構成部を前記複数のバスマスタ部が前記データ記憶部にアクセスする際のアクセスデータを一時的に保持するバッファ部と前記論理部とを混在して構成することを特徴とする。
また、前記半導体集積回路において、前記再構成部が前記バッファ部を構成する際、再構成の実施直前の前記論理部の処理状態を保持する状態保持部を備えていることを特徴とする。
また、前記半導体集積回路において、前記論理部も前記バッファ部にアクセスすることを特徴とする。
また、前記半導体集積回路において、データ記憶部へのアクセスの優先度が高く、リアルタイム応答を要求されるバスマスタ部によるデータ記憶部へのアクセス要求が実行されていない場合であって、メモリバンド幅に空きがある場合に、前記論理部は、その空き分のみを使用するバスマスタ部としての演算部あるいは制御部を構成することを特徴とする。
また、又は本発明に係る半導体集積回路では、転送されるデータを記憶するデータ記憶部にアクセスする複数のバスマスタ部と、前記複数のバスマスタ部が独立して発生するデータ転送要求を管理し前記データ記憶部にアクセスするデータ転送制御部と、前記複数のバスマスタ部と前記データ転送制御部とを結ぶ複数のバス部Aと、前記データ転送制御部と前記データ記憶部とを結ぶバス部Bとを備え、前記複数のバスマスタ部が前記バス部Aと前記データ転送制御部と前記バス部Bとを介してデータ転送を行う半導体集積回路であって、前記複数のバスマスタ部が前記バス部Aと前記データ転送制御部と前記バス部Bとを介して前記データ記憶部にアクセスする際のメモリバンド幅を監視するメモリバンド幅監視部と、前記複数のバスマスタ部と同様に前記データ転送制御部とバス接続された再構成部と、前記メモリバンド幅監視部の出力情報をもとに前記再構成部を制御する再構成制御部とを備えており、前記再構成部が、演算部あるいは制御部としての論理部と、前記複数のバスマスタ部が前記データ記憶部にアクセスする際のアクセスデータを一時的に保持するバッファとを混在して構成すること特徴としている。
この構成では、メモリバンド幅の状況に応じて、リアルタイム応答を要求されるためデータ記憶部アクセス時の優先度の高いバスマスタ部のデータ記憶部へのアクセス要求が実行されていない場合であるメモリバンド幅に空きがある場合に、その空き分のみを使用するバスマスタ部と、メモリバンド幅確保のために使用されるデータ記憶部へのアクセスデータの一時バッファとを、最適に構成することができ、バッファ資源の増大を防ぎ、低コストでメモリバンド幅の有効活用ができる。
本発明によれば、再構成回路により、システム動作中にオーバースペックとなっている不要な演算部あるいは制御部をバッファとして活用することにより低コストでメモリバンド幅を有効活用することが出来る。
本発明は、システムLSIにおいて、リアルタイム応答を要求され、データ記憶部へのアクセス時に高い優先度が割り当てられるバスマスタ部が備えられ、当該バスマスタ部によるデータ記憶部へのアクセス要求が実行されていない場合であって、メモリバンド幅に空きがある場合に、その空き分のみを使用するバスマスタ部を有し、再構成可能ロジックを搭載する民生機器に有用である。
10 民生機器
100 半導体集積回路
1000 バスマスタ部A
1001 バスマスタ部B
1002 データ記憶部
1003 バス部
1004 バス部
1005 バス部
1006 バス部
1007 バス部
1100 再構成回路
1110 再構成部
1111 論理部
1112 バッファ部
1120 再構成制御部
1130 状態保持部
1200 データ転送制御部
1210 メモリバンド幅監視部
1220 バッファアクセス要求部
2000 メモリバンド幅算出部
2001 閾値保持部
2002 メモリバンド幅比較部
2003 メモリバンド幅情報通知部
4000 バッファ制御部
4002 状態管理部
4005 演算データ要求部

Claims (17)

  1. 外部デバイスとの間のデータの転送を制御するデータ転送制御装置であって、
    再構成可能な回路を備える再構成手段と、
    データの転送を要求する内部デバイスと、
    内部デバイスと外部デバイスとの間でデータ転送を中継するとともに、前記転送要求により必要とされるメモリバンド幅に応じて、データ転送を支援する回路を定める再構成情報を取得する転送制御部と、
    取得された前記再構成情報に基づいて、前記再構成手段における回路の再構成を制御する再構成制御手段と
    を備えることを特徴とするデータ転送制御装置。
  2. 前記転送制御部は、前記メモリバンド幅が所定閾値以上である場合に、前記再構成情報を取得し、
    前記再構成制御手段は、取得された前記再構成情報を用いて、前記再構成手段に対して回路を再構成するよう制御する
    ことを特徴とする請求項1に記載のデータ転送制御装置。
  3. 前記転送制御部は、前記転送要求に係るデータを一時的に保持するバッファ部としての回路を定める前記再構成情報を取得し、
    前記再構成制御手段は、前記バッファ部としての回路を再構成するように前記再構成手段を制御する
    ことを特徴とする請求項2に記載のデータ転送制御装置。
  4. 前記再構成情報は、さらに、演算部又は制御部としての回路を定め、
    前記再構成制御手段は、さらに、演算部又は制御部としての回路を再構成するように前記再構成手段を制御する
    ことを特徴とする請求項3に記載のデータ転送装置。
  5. データ転送装置は、さらに、前記再構成手段が回路を再構成する場合、再構成直前に前記再構成手段に構築されている現回路の処理状態を保持する状態保持手段を備える
    ことを特徴とする請求項4に記載のデータ転送制御装置。
  6. 前記再構成手段は、さらに、前記再構成手段が前に構築された回路を再構成する場合、前記状態保持手段に保持されている回路の処理状態を用いる
    ことを特徴とする請求項5に記載のデータ転送制御装置。
  7. 前記転送制御部は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を定める前記再構成情報を取得し、
    前記再構成制御手段は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を再構成するように前記再構成手段を制御する
    ことを特徴とする請求項1に記載のデータ転送制御装置。
  8. 前記転送制御部は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を定める前記再構成情報を取得し、前記メモリバンド幅が所定閾値以上である場合に、前記転送要求に係るデータを一時的に保持するバッファ部としての回路を定める前記再構成情報を取得し、
    前記再構成制御手段は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を再構成するように前記再構成手段を制御し、前記メモリバンド幅が所定閾値以上である場合に、前記バッファ部としての回路を再構成するように前記再構成手段を制御し、
    データ転送装置は、さらに、前記再構成手段が回路を再構成する場合、再構成直前に前記再構成手段に構築されている回路の処理状態を保持する状態保持手段を備える
    ことを特徴とする請求項1に記載のデータ転送制御装置。
  9. 前記再構成手段は、前記内部デバイスによるデータの転送要求が実行されていない時間帯において、メモリバンド幅に空きがあるときに、その空き分のみを使用するデバイスとしての演算部又は制御部を構成する
    ことを特徴とする請求項8に記載のデータ転送制御装置。
  10. 前記転送制御部は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を定める前記再構成情報を取得し、前記メモリバンド幅が所定閾値以上である場合に、演算部又は制御部としての回路及び前記転送要求に係るデータを一時的に保持するバッファ部としての回路を定める前記再構成情報を取得し、
    前記再構成制御手段は、前記メモリバンド幅が所定閾値より小さい場合に、演算部又は制御部としての回路を再構成するように前記再構成手段を制御し、前記メモリバンド幅が所定閾値以上である場合に、演算部又は制御部としての回路及び前記バッファ部としての回路を再構成するように前記再構成手段を制御する
    ことを特徴とする請求項1に記載のデータ転送制御装置。
  11. データ転送装置は、さらに、前記再構成手段がバッファ部を再構成する場合、再構成直前に前記再構成手段に構築されている回路の処理状態を保持する状態保持手段を備える
    ことを特徴とする請求項10に記載のデータ転送制御装置。
  12. 前記転送制御部は、前記メモリバンド幅が所定閾値以上である場合に取得する前記再構成情報は、前記バッファ部にアクセスする前記演算部又は制御部としての回路を定め、
    前記再構成制御手段は、前記メモリバンド幅が所定閾値以上である場合に、前記バッファ部にアクセスする前記演算部又は制御部としての回路を再構成するように前記再構成手段を制御する
    ことを特徴とする請求項10に記載のデータ転送制御装置。
  13. 前記再構成手段は、内部デバイスによる転送要求に高い優先度が割り当てられ、リアルタイム応答を要求される前記内部デバイスによるデータの転送要求が実行されていない時間帯において、メモリバンド幅に空きがあるときに、その空き分のみを使用するデバイスとしての演算部又は制御部を構成する
    ことを特徴とする請求項12に記載のデータ転送制御装置。
  14. 内部のデバイス間でデータを転送するデータ転送装置であって、
    再構成可能な回路を備える再構成手段と、
    データの転送要求を出力する第1デバイスと、
    第1デバイスによる転送要求の対象である第2デバイスと、
    第1デバイスと第2デバイスとの間でデータ転送を中継するとともに、前記転送要求により必要とされるメモリバンド幅に応じて、データ転送を支援する回路を定める再構成情報を取得する転送制御部と、
    取得された前記再構成情報に基づいて、前記再構成手段における回路の再構成を制御する再構成制御手段と
    を備えることを特徴とするデータ転送装置。
  15. 前記データ転送装置は、リアルタイム処理を行うリアルタイム処理装置であり、
    前記第2デバイスは、データを記憶するための記憶デバイスであり、
    前記第1デバイスは、リアルタイム応答を要求され、前記記憶デバイスに対してデータの書き込みを要求し、又は前記記憶デバイスからデータの読み出しを要求する
    ことを特徴とする請求項14に記載のデータ転送装置。
  16. 内部デバイスと転送要求の対象である外部デバイスとの間でデータの転送を中継する半導体集積回路であって、
    再構成可能な回路を備える再構成手段と、
    データの転送要求を出力する内部デバイスと、
    内部デバイスと外部デバイスとの間でデータ転送を中継するとともに、前記転送要求により必要とされるメモリバンド幅に応じて、データ転送を支援する回路を定める再構成情報を取得する転送制御部と、
    取得された前記再構成情報に基づいて、前記再構成手段における回路の再構成を制御する再構成制御手段と
    を備えることを特徴とする半導体集積回路。
  17. 再構成可能な回路を備える再構成手段を備え、データの転送要求を出力する第1デバイスと、第1デバイスによる転送要求の対象である第2デバイスとの間でデータの転送を中継する半導体集積回路において用いられるデータ転送制御方法であって、
    第1デバイスと第2デバイスとの間でデータ転送を中継するとともに、前記転送要求により必要とされるメモリバンド幅に応じて、データ転送を支援する回路を定める再構成情報を取得する転送制御ステップと、
    取得された前記再構成情報に基づいて、前記再構成手段における回路の再構成を制御する再構成制御ステップと
    を含むことを特徴とするデータ転送制御方法。
JP2009539939A 2007-11-09 2008-10-24 データ転送制御装置、データ転送装置、データ転送制御方法及び再構成回路を用いた半導体集積回路 Expired - Fee Related JP5373620B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009539939A JP5373620B2 (ja) 2007-11-09 2008-10-24 データ転送制御装置、データ転送装置、データ転送制御方法及び再構成回路を用いた半導体集積回路

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2007291490 2007-11-09
JP2007291490 2007-11-09
PCT/JP2008/003016 WO2009060567A1 (ja) 2007-11-09 2008-10-24 データ転送制御装置、データ転送装置、データ転送制御方法及び再構成回路を用いた半導体集積回路
JP2009539939A JP5373620B2 (ja) 2007-11-09 2008-10-24 データ転送制御装置、データ転送装置、データ転送制御方法及び再構成回路を用いた半導体集積回路

Publications (2)

Publication Number Publication Date
JPWO2009060567A1 JPWO2009060567A1 (ja) 2011-03-17
JP5373620B2 true JP5373620B2 (ja) 2013-12-18

Family

ID=40625477

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009539939A Expired - Fee Related JP5373620B2 (ja) 2007-11-09 2008-10-24 データ転送制御装置、データ転送装置、データ転送制御方法及び再構成回路を用いた半導体集積回路

Country Status (3)

Country Link
US (1) US20100042751A1 (ja)
JP (1) JP5373620B2 (ja)
WO (1) WO2009060567A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190133555A (ko) * 2018-05-23 2019-12-03 삼성전자주식회사 재구성 가능 로직을 포함하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8225052B2 (en) * 2009-06-03 2012-07-17 Micron Technology, Inc. Methods for controlling host memory access with memory devices and systems
US9064050B2 (en) * 2010-10-20 2015-06-23 Qualcomm Incorporated Arbitrating bus transactions on a communications bus based on bus device health information and related power management
US8830716B2 (en) * 2012-09-29 2014-09-09 Intel Corporation Intelligent far memory bandwith scaling
JP6713410B2 (ja) * 2016-11-21 2020-06-24 日立オートモティブシステムズ株式会社 電子制御装置
JP6810651B2 (ja) * 2017-04-24 2021-01-06 日立オートモティブシステムズ株式会社 電子制御装置、論理回路の制御方法
JP2019103013A (ja) 2017-12-05 2019-06-24 ルネサスエレクトロニクス株式会社 半導体装置及びその再構成制御方法
CN112395245B (zh) * 2019-08-16 2023-04-28 上海寒武纪信息科技有限公司 处理器的访问装置、方法及计算机设备
CN112446473A (zh) * 2019-08-31 2021-03-05 上海寒武纪信息科技有限公司 数据处理装置和方法
JP2022040721A (ja) * 2020-08-31 2022-03-11 富士フイルムビジネスイノベーション株式会社 情報処理装置、及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10240678A (ja) * 1997-02-27 1998-09-11 Oki Inf Syst 拡張入出力バス
JP2001162903A (ja) * 1999-12-08 2001-06-19 Minolta Co Ltd 画像形成装置
WO2001061525A2 (en) * 2000-02-15 2001-08-23 Intel Corporation Reconfigurable logic for a computer
JP2002149479A (ja) * 2000-11-09 2002-05-24 Matsushita Electric Ind Co Ltd メモリカード装置
WO2006055122A2 (en) * 2004-11-19 2006-05-26 Arbor Company Llp Logic device comprising reconfigurable core logic for use in conjunction with microprocessor-based computer systems

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6052773A (en) * 1995-02-10 2000-04-18 Massachusetts Institute Of Technology DPGA-coupled microprocessors
US5956518A (en) * 1996-04-11 1999-09-21 Massachusetts Institute Of Technology Intermediate-grain reconfigurable processing device
US6226680B1 (en) * 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US6154446A (en) * 1998-07-08 2000-11-28 Broadcom Corporation Network switching architecture utilizing cell based and packet based per class-of-service head-of-line blocking prevention
US7643481B2 (en) * 1999-03-17 2010-01-05 Broadcom Corporation Network switch having a programmable counter
US6879588B1 (en) * 1999-05-21 2005-04-12 Broadcom Corporation Address resolution snoop support for CPU
US6484254B1 (en) * 1999-12-30 2002-11-19 Intel Corporation Method, apparatus, and system for maintaining processor ordering by checking load addresses of unretired load instructions against snooping store addresses
GB2382498B (en) * 2000-01-24 2003-11-05 Radioscape Ltd Digital wireless basestation
SE0000533D0 (sv) * 2000-02-18 2000-02-18 Ericsson Telefon Ab L M Static cache
US6523092B1 (en) * 2000-09-29 2003-02-18 Intel Corporation Cache line replacement policy enhancement to avoid memory page thrashing
US6684298B1 (en) * 2000-11-09 2004-01-27 University Of Rochester Dynamic reconfigurable memory hierarchy
US20040022094A1 (en) * 2002-02-25 2004-02-05 Sivakumar Radhakrishnan Cache usage for concurrent multiple streams
EP1518186A2 (de) * 2002-03-21 2005-03-30 PACT XPP Technologies AG Verfahren und vorrichtung zur datenverarbeitung
US20090279558A1 (en) * 2002-05-06 2009-11-12 Ian Edward Davis Network routing apparatus for enhanced efficiency and monitoring capability
US7515612B1 (en) * 2002-07-19 2009-04-07 Qlogic, Corporation Method and system for processing network data packets
US7007203B2 (en) * 2002-08-02 2006-02-28 Motorola, Inc. Error checking in a reconfigurable logic signal processor (RLSP)
US7571303B2 (en) * 2002-10-16 2009-08-04 Akya (Holdings) Limited Reconfigurable integrated circuit
US7152073B2 (en) * 2003-01-30 2006-12-19 Decode Genetics Ehf. Method and system for defining sets by querying relational data using a set definition language
US7536682B2 (en) * 2003-04-22 2009-05-19 International Business Machines Corporation Method and apparatus for performing interpreter optimizations during program code conversion
GB2401217B (en) * 2003-05-02 2005-11-09 Transitive Ltd Improved architecture for generating intermediate representations for program code conversion
US7966246B2 (en) * 2003-10-23 2011-06-21 Alphacet, Inc. User interface for correlation of analysis systems
US7138820B2 (en) * 2004-04-30 2006-11-21 Xilinx, Inc. System monitor in a programmable logic device
US7721069B2 (en) * 2004-07-13 2010-05-18 3Plus1 Technology, Inc Low power, high performance, heterogeneous, scalable processor architecture
US7635987B1 (en) * 2004-12-13 2009-12-22 Massachusetts Institute Of Technology Configuring circuitry in a parallel processing environment
US7389403B1 (en) * 2005-08-10 2008-06-17 Sun Microsystems, Inc. Adaptive computing ensemble microprocessor architecture
EP1808774A1 (en) * 2005-12-22 2007-07-18 St Microelectronics S.A. A hierarchical reconfigurable computer architecture
US8437369B2 (en) * 2006-05-19 2013-05-07 Integrated Device Technology, Inc. Packets transfer device that intelligently accounts for variable egress channel widths when scheduling use of dispatch bus by egressing packet streams
US7634633B2 (en) * 2006-11-30 2009-12-15 Motorola, Inc. Method and apparatus for memory address generation using dynamic stream descriptors

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10240678A (ja) * 1997-02-27 1998-09-11 Oki Inf Syst 拡張入出力バス
JP2001162903A (ja) * 1999-12-08 2001-06-19 Minolta Co Ltd 画像形成装置
WO2001061525A2 (en) * 2000-02-15 2001-08-23 Intel Corporation Reconfigurable logic for a computer
JP2002149479A (ja) * 2000-11-09 2002-05-24 Matsushita Electric Ind Co Ltd メモリカード装置
WO2006055122A2 (en) * 2004-11-19 2006-05-26 Arbor Company Llp Logic device comprising reconfigurable core logic for use in conjunction with microprocessor-based computer systems

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190133555A (ko) * 2018-05-23 2019-12-03 삼성전자주식회사 재구성 가능 로직을 포함하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법
US11550738B2 (en) 2018-05-23 2023-01-10 Samsung Electronics Co., Ltd. Storage device including reconfigurable logic and method of operating the storage device
US11650940B2 (en) 2018-05-23 2023-05-16 Samsung Electronics Co., Ltd. Storage device including reconfigurable logic and method of operating the storage device

Also Published As

Publication number Publication date
US20100042751A1 (en) 2010-02-18
JPWO2009060567A1 (ja) 2011-03-17
WO2009060567A1 (ja) 2009-05-14

Similar Documents

Publication Publication Date Title
JP5373620B2 (ja) データ転送制御装置、データ転送装置、データ転送制御方法及び再構成回路を用いた半導体集積回路
CN107690622B9 (zh) 实现硬件加速处理的方法、设备和系统
JP3587095B2 (ja) 情報処理装置
US10713202B2 (en) Quality of service (QOS)-aware input/output (IO) management for peripheral component interconnect express (PCIE) storage system with reconfigurable multi-ports
WO2018157836A1 (zh) 一种可编程硬件的资源管理方法、可编程硬件设备及存储介质
US7822945B2 (en) Configuration managing device for a reconfigurable circuit
CN109299190B (zh) 分布式存储系统中处理对象的元数据的方法及装置
CN103354977A (zh) 在集成电路内进行处理器系统的扩展
US8533300B2 (en) Storage device, controller, and address management method
CN112955880B (zh) 用于处理片上系统中的地址解码的装置和方法
US7795955B2 (en) Semiconductor integrated circuit and power control method
US7774591B2 (en) Data processing device and data processing method
JP2021118006A (ja) レイテンシ及びスループット中心の再構成可能なストレージ装置及びその動作方法
US8601232B2 (en) Memory management device, memory management method, memory management program, computer-readable recording medium recording memory management program and integrated circuit
CN116185599A (zh) 异构服务器系统及其使用方法
JP2005149283A (ja) 情報処理システム、情報処理システムの制御方法及びプログラム
JP6584529B2 (ja) ファイルにアクセスするための方法および装置、ならびに記憶システム
US10050627B2 (en) Information processing device, PLD management program, and PLD management method
JP2005293427A (ja) データ転送処理装置及びデータ転送処理方法
CN117667299A (zh) 虚拟机迁移方法、芯片、网卡、处理设备、系统及介质
CN111290701B (zh) 数据读写控制方法、装置、介质和电子设备
JP3573193B2 (ja) 情報処理システム
CN116483740B (zh) 内存数据的迁移方法、装置、存储介质及电子装置
JP7313123B2 (ja) 演算システムおよび演算方法
CN112352216A (zh) 数据存储方法及数据存储装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130205

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: 20130827

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130919

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees