JP2007274397A - 半導体装置 - Google Patents

半導体装置 Download PDF

Info

Publication number
JP2007274397A
JP2007274397A JP2006098289A JP2006098289A JP2007274397A JP 2007274397 A JP2007274397 A JP 2007274397A JP 2006098289 A JP2006098289 A JP 2006098289A JP 2006098289 A JP2006098289 A JP 2006098289A JP 2007274397 A JP2007274397 A JP 2007274397A
Authority
JP
Japan
Prior art keywords
output
data
valid
unit
value
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
Application number
JP2006098289A
Other languages
English (en)
Other versions
JP4685682B2 (ja
Inventor
Yoshihisa Saito
美寿 齋藤
Hisanori Fujisawa
久典 藤沢
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006098289A priority Critical patent/JP4685682B2/ja
Priority to EP20060254227 priority patent/EP1840756B1/en
Priority to DE200660009760 priority patent/DE602006009760D1/de
Priority to US11/504,763 priority patent/US7694108B2/en
Priority to CNB2006101514737A priority patent/CN100562865C/zh
Publication of JP2007274397A publication Critical patent/JP2007274397A/ja
Application granted granted Critical
Publication of JP4685682B2 publication Critical patent/JP4685682B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

【課題】データの出力タイミングを制御可能な演算器を有する再構成可能な半導体装置を提供する。
【解決手段】供給されるコンフィギュレーションデータに応じて回路構成を再構成可能な演算器10に、入力データを用いて処理を行うデータ処理部11に加え、その処理結果を保持して出力データDOとして出力する出力データ保持部13と、出力データが有効であるか否かを示す出力バリッド信号S3を出力する出力バリッド信号制御部14を設け、出力バリッド信号の出力タイミングを制御することで、演算器外部に対する有効なデータの出力タイミングを任意に制御できるようにする。
【選択図】図1

Description

本発明は、半導体装置に関し、詳しくは再構成可能な半導体装置におけるデータフロー制御技術に関する。
粗粒度リコンフィギュラブル回路は、様々な機能を備えた複数のプロセッシングエレメントと、それらプロセッシングエレメント間を接続する内部接続ネットワークで構成される。粗粒度リコンフィギュラブル回路は、コンフィギュレーションデータに応じてプロセッシングエレメントの機能及び内部接続ネットワークの経路が設定され、そのコンフィギュレーションデータを変更することにより任意の機能を実現する。つまり、粗粒度リコンフィギュラブル回路は、プロセッシングエレメントで実行する処理内容及び処理に供されるデータの経路が、コンフィギュレーションデータに応じて動的に再構成可能になっている。
プロセッシングエレメントは、四則演算、シフト、マスクなどのワード単位の演算や、タイミング調整のための遅延処理、セレクタのような条件命令処理及びAND(論理積)演算/OR(論理和)演算などのビット処理といった機能を備えている。また、それらの機能等を利用して、プロセッシングエレメントにカウンタの機能を持たせることも可能である。
ワイヤレス通信等のストリーム系アプリケーションの処理(通信用ストリームデータに係る処理)においては、データのフロー制御を伴う処理が含まれる。このようなフロー制御を伴う処理には、一つの入力データをシーケンシャルな系列データに変換してパイプライン処理を実行したり、逆にシーケンシャルな系列データの中から一つだけ有効なデータを取り出して演算したりする処理がある。前者の例としては、1ビットの入力(符号)に多ビットの拡散符号を掛け合わせて多ビットの信号に変換する符号拡散処理(図8(A)参照)があり、後者の例としては、異なる周波数で動作する回路間、例えば低周波数動作の回路から高周波数動作の回路に対するデータ転送処理(図9参照)がある。
このような処理を実現するためには、回路構成が固定される通常の回路であれば当該処理のみを実行する回路を予め組み込んでおけば良い。一方、リコンフィギュラブル回路においては、いわゆるデータフローマシンのような処理形態が望ましい。そのため、プロセッシングエレメントが備える基本機能を用いて上述したような処理を実現するには、多くのプロセッシングエレメントが必要となる。
例えば、リコンフィギュラブル回路にて、図8(A)に示したような多ビット(例えば、nビット)の拡散符号を用いる符号拡散処理を実現する場合には、同じ入力(符号)を時間的に繰り返すために、1ビットの入力(符号)をさらに(n−1)ビット分繰り返す。その入力とnビットの拡散符号とを掛け合わせることにより、符号拡散処理されたnビットの信号を得ることになる。
具体的には、図8(B)に示すように入力信号を分岐させて複数のパラレル信号に変換した後、セレクタ103がカウンタ102の出力に応じて信号を順次選択することによりパラレルシリアル変換処理を行ってシーケンシャルな1次元系列の信号を得る。そして、この1次元系列の信号と拡散符号とを排他的論理和演算器(XOR演算器)104により掛け合わせて所望の拡散処理された符号が得られる。ここで、セレクタ103によるパラレルシリアル変換処理の前段では、遅延器101−1、101−2、…、101−(n−1)により、それらの出力がシーケンシャルな配列になるようにタイミングの調整が行われる。
遅延器101、カウンタ102、セレクタ103、及びXOR演算器104のそれぞれは、1つのプロセッシングエレメントにより構成される。したがって、例えばnビットの拡散符号を用いた符号拡散処理をリコンフィギュラブル回路により実現するためには、最大nの遅延が可能な(n−1)個の遅延器101、カウンタ102、n入力のセレクタ103、及びXOR演算器104が使用され、多くのプロセッシングエレメントが必要となる。
特開2004−199694号公報
本発明は、データの出力タイミングを制御可能な演算器を有する再構成可能な半導体装置を提供することを目的とする。
本発明の半導体装置は、コンフィギュレーションメモリより供給される構成情報に応じて動的に回路構成を再構成可能な複数の演算器を有し、演算器は、データ処理部、出力データ保持部、及び出力バリッド信号制御部を有する。データ処理部が入力データを用いて構成情報に応じた処理を行って得られた処理結果を、出力データ保持部が保持する。そして、保持した処理結果を出力データとして出力データ保持部より出力するとともに、出力データが有効であるか否かを示す出力バリッド信号を出力バリッド信号制御部より出力する。
本発明によれば、入力データを処理して得られた処理結果を保持して出力データとして出力するとともに、その出力データが有効であるか否かを示す出力バリッド信号を出力するので、出力バリッド信号の出力タイミングを制御することにより出力データの出力タイミングが任意に制御可能となる。
本発明によれば、半導体装置の一部構成であって、供給される構成情報に応じて動的に回路構成を再構成可能な演算器が、入力データを基に得られる処理結果を保持し出力データとして出力する出力データ保持部、及びその出力データが有効であるか否かを示す出力バリッド信号を出力する出力バリッド信号制御部を有する。これにより、出力バリッド信号制御部からの出力バリッド信号の出力タイミングを制御することで、演算器外部に対するデータの出力タイミングを任意に制御することができる。したがって、データの出力タイミングを制御可能な演算器を有する再構成可能な半導体装置を提供するができ、従来と比較して少ない数の演算器で所望の処理を実現することが可能になる。
以下、本発明の実施形態を図面に基づいて説明する。
図1は、本発明の一実施形態による半導体装置を適用したリコンフィギュラブル回路の構成例を示すブロック図である。なお、図1においては、1つの演算器(プロセッシングエレメント)10を図示しているが、複数の図1に示すような演算器(プロセッシングエレメント)により本実施形態におけるリコンフィギュラブル回路が構成される。また、各々の演算器には構成情報としてのコンフィギュレーションデータが供給される。つまり、コンフィギュレーションメモリ20は、リコンフィギュラブル回路が有する複数の演算器の各々に対して、コンフィギュレーションデータが供給可能なように接続されている。
本実施形態におけるリコンフィギュラブル回路は、コンフィギュレーションメモリ20からのコンフィギュレーションデータに応じて、各演算器10にて実行する処理(機能)及び演算器間等におけるデータの入出力経路が設定される。これにより、本実施形態におけるリコンフィギュラブル回路は、コンフィギュレーションデータに基づき回路構成が動的に再構成され、任意の機能を実現可能である。
ここで、本実施形態におけるリコンフィギュラブル回路内の演算器10については、コンフィギュレーションデータにより規定されるデータの出力タイミングとして、図2及び図3に示すように、以下の5つのパターン(モードA、B、C、D、及びE)を設けている。各演算器10は、それぞれ供給されるコンフィギュレーションデータに応じて、図2及び図3に示す5つのパターンを選択的に実現する。なお、データ出力タイミングの各モードの詳細については後述する。
<モードA>(図2(A)参照。)
コンフィギュレーションの切り替え後(より詳細には、所定時間が経過して切り替え後のコンフィギュレーションデータに応じた動作を演算器10で開始した後)、さらにオフセット時間が経過した後に最初の出力信号(データの有効性を示す出力バリッド信号付の出力データ)を出力する。続いて、インターバル時間の間は、出力バリッド信号を無効にしておき、インターバル時間が経過した後に次の出力信号(データの有効性を示す出力バリッド信号付の出力データ)を出力する。このインターバル時間間隔で出力信号を出力する処理を、規定した反復回数だけ繰り返し行う。
<モードB>(図2(B)参照。)
有効な(バリッド信号付の)信号が入力されてからオフセット時間が経過した後に最初の出力信号(データの有効性を示す出力バリッド信号付の出力データ)を出力する。続いて、インターバル時間の間は、出力バリッド信号を無効にしておき、インターバル時間が経過した後に次の出力信号(データの有効性を示す出力バリッド信号付の出力データ)を出力する。このインターバル時間間隔で出力信号を出力する処理を、規定した反復回数だけ繰り返し行う。
<モードC>(図2(C)参照。)
規定した個数の有効な(バリッド信号付の)信号が入力された後に最初の出力信号(データの有効性を示す出力バリッド信号付の出力データ)を出力する。続いて、インターバル時間の間は、出力バリッド信号を無効にしておき、インターバル時間が経過した後に次の出力信号(データの有効性を示す出力バリッド信号付の出力データ)を出力する。このインターバル時間間隔で出力信号を出力する処理を、規定した反復回数だけ繰り返し行う。
<モードD>(図3(A)参照。)
規定した個数の有効な(バリッド信号付の)信号が入力された後に、1回だけ出力信号(データの有効性を示す出力バリッド信号付の出力データ)を出力する。
<モードE>(図3(B)参照。)
有効な(バリッド信号付の)信号が入力された後に1回だけ出力信号(データの有効性を示す出力バリッド信号付の出力データ)を出力し、その後規定した個数の有効な(バリッド信号付の)信号が入力されるまでは出力しない。言い換えれば、有効な信号が入力された後に1回だけ出力信号を出力し、その後有効な信号が規定の個数入力された後に出力信号を出力する。
次に、本実施形態におけるリコンフィギュラブル回路の構成の詳細について説明する。上述したように本実施形態におけるリコンフィギュラブル回路は、複数の演算器10及びコンフィギュレーションメモリ20を備える。
演算器10は、図1に示したようにデータ処理部11、入力バリッド信号制御部12、出力データ保持部13、及び出力バリッド信号制御部14を有している。なお、図1においては、演算器10に2つの入力データDIA、DIBが入力される場合を一例として示しているが、これに限定されるものではなく、コンフィギュレーションデータにより設定されるデータ経路に応じて入力されるデータの数は決定される。
データ処理部11は、他の演算器10あるいは外部等から第1の入力データDIA及び第2の入力データDIBが入力されるとともに、入力バリッド信号制御部12により生成される内部バリッド信号S2が入力される。また、データ処理部11は、コンフィギュレーションメモリ20よりコンフィギュレーションデータ(データ処理部)21が供給される。
データ処理部11は、供給されるコンフィギュレーションデータに応じて回路構成を再構成し、当該コンフィギュレーションデータにより規定された機能を実現する。データ処理部11は、有効な入力データDIA、DIBを用いて、規定された機能に応じた所定の処理(演算処理等)を行い、その処理結果を内部データINTDとして出力データ保持部13に出力する。なお、データ処理部11での入力データDIA、DIBが有効であるか否かの判定(入力データの有効性に係る判断)は、入力バリッド信号制御部12からの内部バリッド信号S2の値に基づいて行う。
入力バリッド信号制御部12は、他の演算器10あるいは外部等から第1のバリッド信号VIA及び第2のバリッド信号VIBが入力される。このバリッド信号VIA、VIBは、対応する入力データDIA、DIBが有効であるか無効であるかを示す信号(タグ)である。また、入力バリッド信号制御部12は、コンフィギュレーションメモリ20よりコンフィギュレーションデータ(入力バリッド信号制御部)22が供給され、当該コンフィギュレーションデータに応じて回路構成が再構成される。
入力バリッド信号制御部12は、入力されるバリッド信号VIA、VIBに基づいて内部バリッド信号S2を生成し、データ処理部11、出力データ保持部13、及び出力バリッド信号制御部14に出力する。本実施形態では、内部バリッド信号S2の値が“1”(ハイレベル)の場合にデータが有効であることを示すものとし、値が“0”(ロウレベル)の場合にデータが無効であることを示すものとする。なお、バリッド信号VIA、VIB及び出力バリッド信号S3についても同様とする。
出力データ保持部13は、データ処理部11より出力される内部データINTDが入力されるとともに、入力バリッド信号制御部12により生成される内部バリッド信号S2が入力される。出力データ保持部13は、有効な処理結果を保持するためのものであり、有効な処理結果としての内部データINTDが供給されるまでは既に保持している(前クロックにおける)データを続けて保持し、有効な処理結果としての内部データINTDが入力されると保持するデータを当該内部データINTDに更新する。出力データ保持部13に保持されているデータは、出力データDOとして演算器10外部に出力される。なお、内部データINTDが有効な処理結果であるか否かは、内部バリッド信号S2の値に基づいて判定する。
出力データ保持部13は、例えば図4に示すように、1つの2入力セレクタ41、及び入力される値を一時的に記憶し出力するフリップフロップ42により構成される。
2入力セレクタ41は、一方の入力にフリップフロップ42の出力が供給され、他方の入力にデータ処理部11からの内部データINTDが供給されている。また、2入力セレクタ41の制御入力には、入力バリッド信号制御部12からの内部バリッド信号S2が供給されている。2入力セレクタ41は、内部バリッド信号S2の値が“1”の場合には内部データINTDを選択して出力し、内部バリッド信号S2の値が“0”の場合にはフリップフロップ42の出力を選択して出力する。
フリップフロップ42は、2入力セレクタ41の出力が入力されており、図示しないクロック信号により動作して出力を2入力セレクタ41の一方に供給するとともに、出力データOUTとして出力する。
出力バリッド信号制御部14は、入力バリッド信号制御部12により生成される内部バリッド信号S2が入力される。出力バリッド信号制御部14は、入力される内部バリッド信号S2等に基づいて、出力データDOが有効であるか否かを示す出力バリッド信号S3を生成して演算器10外部に出力する。また、出力バリッド信号制御部14は、コンフィギュレーションメモリ20よりコンフィギュレーションデータ(出力バリッド信号制御部)23が供給され、当該コンフィギュレーションデータに応じて回路構成が再構成される。
ここで、出力バリッド信号制御部14に供給されるコンフィギュレーションデータには、演算器10におけるデータの出力タイミングを規定するためのコンフィギュレーションデータが含まれる。このコンフィギュレーションデータには、例えば反復回数値、オフセット値、インターバル値、動作モード値、起動モード値、及び出力タイミング値があり、これらにより規定されるタイミングで出力バリッド信号S3を生成し出力する。
反復回数値は、モードA、B、Cにおいて出力する信号の個数を規定するためのものであり、オフセット値は、モードA、Bにおいて最初の信号を出力するまでの時間を規定し、インターバル値は、モードA、B、Cにおいて出力する信号間の時間間隔を規定する。また、オフセット値は、モードD、Eにおいて入力信号数の規定値にも用いられる。
動作モード値、起動モード値、及び出力タイミング値は、実行するモードを規定するためのものであり、例えば図2及び図3に示したように、動作モード値、起動モード値、及び出力タイミング値の組み合わせにより実行するモードが一意に決定される。なお、本実施形態では、動作モード値及び出力タイミング値はそれぞれ1ビットであり、起動モード値は2ビットである。
コンフィギュレーションデータ21、22、23は、コンフィギュレーションメモリ20に記憶されており、データ処理部11、入力バリッド信号制御部12、及び出力バリッド信号制御部14にそれぞれ供給される。コンフィギュレーションメモリ20よりデータ処理部11、入力バリッド信号制御部12、及び出力バリッド信号制御部14にそれぞれ供給されるデータは、図示しない制御機構からコンフィギュレーションメモリ20に供給されるコンフィグレーション切替信号S1に応じて切り替えられる。なお、図1においては、対応を明確にするためにコンフィギュレーションメモリ20に記憶されるコンフィギュレーションデータ21、22、23を分けて図示しているが、コンフィギュレーションメモリ20へのコンフィギュレーションデータの格納形式は任意である。
出力バリッド信号制御部14は、例えば図5に示すように構成される。出力バリッド信号制御部14は、カウンタ有効信号生成部51、内部状態生成部53、カウンタ部55、比較部58、バリッド信号生成部63、及びフリップフロップ64を有する。また、出力バリッド信号制御部14には、コンフィギュレーションメモリ20よりコンフィギュレーションデータとして、反復回数値、オフセット値、インターバル値、動作モード値、起動モード値、及び出力タイミング値が適宜供給されて保持される。
カウンタ有効信号生成部51は、動作モード値、起動モード値、内部バリッド信号S2、及びウェイトフラグ54の値が供給され、それらの値に基づいて、内部状態生成部53を制御するための内部制御信号21及びカウンタ部55を制御するカウンタ制御信号S22を生成する。カウンタ有効信号生成部51における内部制御信号21及びカウンタ制御信号S22の生成論理テーブルを表1に示す。
Figure 2007274397
表1に示されるように、カウンタ有効信号生成部51は、動作モード値が“0”、すなわち動作モードがモードD、Eであり、かつ内部バリッド信号S2の値が“1”の場合には、内部制御信号S21の値を“0”にし、カウンタ制御信号S22の値を“1”にする。また、カウンタ有効信号生成部51は、動作モード値が“1”で起動モード値が“0X”(Xは任意値、以下同様)、すなわち動作モードがモードB、Cであり、かつ内部バリッド信号S2の値が“1”及びウェイトフラグ54の値が“0”の場合には、内部制御信号S21の値を“0”にし、カウンタ制御信号S22の値を“1”にする。
また、カウンタ有効信号生成部51は、動作モード値が“1”で起動モード値が“0X”、すなわち動作モードがモードB、Cであり、かつウェイトフラグ54の値が“0”の場合、又は動作モード値が“1”で起動モード値が“1X”、すなわち動作モードがモードAの場合には、制御信号S21及びS22の値をともに“1”にする。カウンタ有効信号生成部51は、それ以外の場合には、制御信号S21及びS22の値をともに“0”にする。
内部状態生成部53は、内部制御信号S21、起動モード値、比較部58の結果出力が供給され、それらの値に基づいて各動作モードにおける状態を示すインターバルフラグ53及びウェイトフラグ54を生成する。ここで、インターバルフラグ53は、オフセット/インターバルカウンタ56の値と比較する値(比較値)を切り替えるフラグであり、モードA、Bにおいて、オフセット期間中は比較値としてオフセット値を選択させ、信号出力から信号出力までのインターバル期間中は比較値としてインターバル値を選択させるためのものである。ウェイトフラグ54は、モードB、Cにおいて、最初の入力信号が入力されるまではカウンタ部55を停止状態にするためのフラグである。
内部状態生成部53におけるインターバルフラグ53の生成論理テーブルを表2に示し、ウェイトフラグ54の生成論理テーブルを表3に示す。
Figure 2007274397
表2に示されるように、内部状態生成部53は、内部制御信号S21の値が“1”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値が“1”、及び終了出力信号検出値が“0”の場合には、インターバルフラグ53を“1”に設定する。また、内部状態生成部53は、内部制御信号S21の値が“1”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値及び終了出力信号検出値がともに“1”の場合には、インターバルフラグ53を“0”に設定する。それ以外の場合には、インターバルフラグ53の値は保持される。
Figure 2007274397
表3に示されるように、内部状態生成部53は、内部制御信号S21の値が“1”で起動モード値が“00”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値が“0”の場合には、ウェイトフラグ54を“1”に設定する。また、内部状態生成部53は、内部制御信号S21の値が“1”で起動モード値が“0X”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値が“1”、及び終了出力信号検出値が“0”の場合には、ウェイトフラグ54を“1”に設定する。
また、内部状態生成部53は、内部制御信号S21の値が“1”で起動モード値が“0X”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値及び終了出力信号検出値がともに“1”の場合には、ウェイトフラグ54を“0”に設定する。それ以外の場合には、ウェイトフラグ54の値は保持される。
カウンタ部55は、クロック数や入力信号(入力データ)数をカウントするオフセット/インターバルカウンタ56、及び出力信号(出力データ)の個数をカウントする出力回数カウンタ57を有する。なお、オフセット時間とインターバル時間を同時にカウントすることがないため、本実施形態ではオフセット/インターバルカウンタ56を切り替えて用いるようにしているが、オフセット時間カウント用のカウンタとインターバル時間カウント用のカウンタをそれぞれ設けるようにしても良い。カウンタ部55における各カウンタの動作に係る論理テーブルを表4に示す。
Figure 2007274397
表4に示すように、オフセット/インターバルカウンタ56のカウンタ値は、カウンタ制御信号S22の値が“1”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値が“0”の場合に1インクリメントされ、カウンタ制御信号S22の値が“1”であり、かつオフセット/インターバル検出値が“1”の場合に“0”にリセットされる。それ以外の場合には、オフセット/インターバルカウンタ56のカウンタ値は保持される。
出力回数カウンタ57のカウンタ値は、カウンタ制御信号S22の値が“1”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値が“1”、及び終了出力信号検出値が“0”の場合には、1インクリメントされる。また、出力回数カウンタ57のカウンタ値は、カウンタ制御信号S22の値が“1”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値及び終了出力信号検出値がともに“1”の場合には、“0”にリセットされる。それ以外の場合には、出力回数カウンタ57のカウンタ値は保持される。
比較部58は、オフセット/インターバルカウンタ56のカウンタ値と、コンフィギュレーションメモリ20より供給されるオフセット値又はインターバル値(インターバルフラグ53により選択)とを比較するとともに、出力回数カウンタ57のカウンタ値とコンフィギュレーションメモリ20より供給される反復回数値とを比較して、出力データ(出力バリッド信号)の出力タイミングを決定する。また、比較部58は、最初の入力信号の入力を検出して先頭信号検出値を出力するための比較も実施する。
比較部58にて実現される機能を、図6を参照して説明する。
比較部58内の終了出力信号検出部59は、出力回数カウンタ57のカウンタ値と反復回数値とを比較し、それらが一致する場合には結果出力としての終了出力信号検出値を“1”にし、一致しない場合には終了出力信号検出値を“0”にする。
また、比較部58内の先頭信号検出部61は、オフセット/インターバルカウンタ56のカウンタ値をモニタし、カウント値が“0”の場合には結果出力としての先頭信号検出値を“1”にし、そうでない場合には先頭信号検出値を“0”にする。
また、比較部58内のオフセット/インターバル検出部60は、セレクタ62の出力とオフセット/インターバルカウンタ56のカウンタ値とを比較する。ここで、セレクタ62は、インターバルフラグ53の値に応じてオフセット値又はインターバル値の一方を出力する。オフセット/インターバル検出部60は、比較の結果、値が一致する場合には結果出力としてのオフセット/インターバル検出値を“1”にし、一致しない場合にはオフセット/インターバル検出値を“0”にする。
バリッド信号生成部63は、カウンタ制御信号S22、動作モード値、出力タイミング値、及び比較部58の結果出力が入力され、それらに基づいて出力信号の有効性を示す出力バリッド信号を生成し出力する。なお、バリッド信号生成部63の後段には、生成し出力された出力バリッド信号を保持するフリップフロップ64を設けているため、バリッド信号生成部63にて出力バリッド信号が生成されてから1クロック遅れて演算器10外部に出力される。バリッド信号生成部63における出力バリッド信号の生成論理テーブルを表5に示す。
Figure 2007274397
表5に示されるように、バリッド信号生成部63は、カウンタ制御信号S22の値が“1”、動作モード値及び出力タイミング値がともに“0”であり、かつ比較部58の結果出力のうち、先頭信号検出値が“1”の場合には、出力バリッド信号の値を“1”にする。バリッド信号生成部63は、カウンタ制御信号S22の値が“1”、動作モード値が“0”、出力タイミング値が“1”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値が“1”の場合には、出力バリッド信号の値を“1”にする。また、バリッド信号生成部63は、カウンタ制御信号S22の値及び動作モード値がともに“1”であり、かつ比較部58の結果出力のうち、オフセット/インターバル検出値が“1”の場合には、出力バリッド信号の値を“1”にする。それ以外の場合には、出力バリッド信号の値を“0”にする。
<モードA>
図2(A)に示したモードAにおける動作について説明する。モードAにおいては、コンフィギュレーションの切り替え後(より詳細には、所定時間が経過して切り替え後のコンフィギュレーションデータに応じた動作を演算器10で開始した後)、所定時間が経過した後に最初の有効な出力データを出力し、その後一定時間間隔で指定された個数の有効な出力データを出力する。以下に説明するモードAの動作においては、出力データは出力データ保持部13にセットしてあるものとする。
入力されたコンフィギュレーション切替信号S1に基づいてコンフィギュレーションを切り替えた後の初期状態において、オフセット/インターバル検出値、終了出力信号検出値、インターバルフラグ53の値は“0”に初期化される。また、モードAにおいて、動作モード値は“1”、起動モード値は“1X”(“11”又は“10”)である。
この場合、表1に示した論理テーブルに従って、カウンタ有効信号生成部51は、値がともに“1”の内部制御信号S21及びカウンタ制御信号S22を出力する。また、内部状態生成部53におけるフラグの値は保持される。カウンタ部55では、オフセット/インターバルカウンタ56の値が1つ増加し“1”となる。
一方、比較部58のオフセット/インターバル検出部60は、インターバルフラグ53の値が“0”であるため、オフセット値とオフセット/インターバルカウンタ56のカウント値とを比較する。仮にオフセット値が“0”に設定してある場合には、オフセット/インターバルカウンタ56のカウント値が“0”であるため、オフセット/インターバル検出値は“1”となって出力バリッド信号は“1”が出力されるが、ここでは、オフセット値はk(≠0)とする(図2(A)に示した例ではk=2)。したがって、オフセット/インターバル検出値は“0”であり、バリッド信号生成部63が生成する出力バリッド信号は“0”が出力される。
そして、次のクロックにおいて、比較部58のオフセット/インターバル検出部60は、オフセット/インターバルカウンタ56の値とオフセット値とを比較する。その結果、カウンタ56の値とオフセット値が異なれば、オフセット/インターバル検出値は“0”が設定される。そして、カウンタ部55におけるオフセット/インターバルカウンタ56の値が1つ増加して“2”となる。
この処理は、オフセット/インターバルカウンタ56のカウント値とオフセット値が等しくなるまで続けられる。オフセット値がkの場合には、kクロック目にカウンタ56の値とオフセット値が等しくなる。オフセット/インターバルカウンタ56の値がオフセット値と等しくなると、オフセット/インターバル検出部60は、オフセット/インターバル検出値に“1”がセットされる。
その結果、オフセット/インターバルカウンタ56は、カウント値が“0”にリセットされ、出力回数カウンタ57は、カウント値が“1”となる。また、内部状態生成部53のインターバルフラグ53が“1”に設定され、比較部58のオフセット/インターバル検出部60で用いる比較値として、オフセット値のかわりにインターバル値がセレクタ62により選択される。また、バリッド信号生成部63は、出力バリッド信号S3として“1”(出力1)を出力する。したがって、この時刻における出力データは有効なデータとして出力されることになる。
オフセット/インターバル検出値が“1”となった次の時刻からは、比較部58のオフセット/インターバル検出部60は、オフセット/インターバルカウンタ56のカウント値とインターバル値を比較して、オフセット/インターバル検出値をセットすることになる。オフセット/インターバルカウンタ56の値とインターバル値とを比較した結果、値が異なれば、オフセット/インターバル検出値は“0”が設定され、オフセット/インターバルカウンタ56はカウント値を1増加する。時刻の経過とともに、インターバル値と等しくなるまでオフセット/インターバルカウンタ56のカウント値は1クロック毎に1ずつインクリメントされる。
そして、オフセット/インターバルカウンタ56のカウント値とインターバル値が等しくなると(例えば、図2(A)に示した例ではインターバル時間として1クロック経過した時刻)、比較部58のオフセット/インターバル検出部60は、オフセット/インターバル検出値に“1”を設定する。その結果、オフセット/インターバルカウンタ56は、カウント値が“0”にリセットされ、出力回数カウンタ57は、カウント値が“2”になる。また、バリッド信号生成部63は、出力バリッド信号S3として“1”(出力2)を出力する。
以降、同様にして、インターバル値として設定された時間間隔で出力バリッド信号S3が“1”となる。そして、出力回数カウンタ57のカウント値が反復回数値に達したら、比較部58の終了出力信号検出部59は、出力信号検出値を“1”に設定する。これにより、内部状態生成部53におけるインターバルフラグ53は“0”にリセットされる。
その次の時刻からは、比較部58のオフセット/インターバル検出部60では、再びオフセット/インターバルカウンタ56のカウント値とインターバル値の比較が行われ、上述した処理動作が繰り返される。
<モードB>
次に、図2(B)に示したモードBにおける動作について説明する。モードBにおいては、有効な入力データが演算器10に入力された後、所定時間が経過した後に最初の有効な出力データを出力し、その後一定時間間隔で指定された個数の有効な出力データを出力する。以下に説明するモードBの動作においては、ウェイトフラグ54が使用される。
入力されたコンフィギュレーション切替信号S1に基づいてコンフィギュレーションを切り替えた後の初期状態において、オフセット/インターバル検出値、終了出力信号検出値、インターバルフラグ53の値、及びウェイトフラグ54の値は“0”に初期化されている。また、モードBにおいて、動作モード値は“1”、起動モード値は“00”であるため、カウンタ有効信号生成部51は、有効な入力データが入力されるまで(言い換えると、入力データの有効性を示す内部バリッド信号S2の値が“1”となるまで)は、値がともに“0”の内部制御信号S21及びカウンタ制御信号S22を出力する。したがって、カウンタ部55内の2つのカウンタ56、57の値はいずれも“0”のままであり、バリッド信号生成部63が生成する出力バリッド信号の値は“0”である。
その後、演算器10に対して有効な入力データが入力されると、内部バリッド信号S2の値は“1”となる。そのため、カウンタ有効信号生成部51は、値がともに“1”の内部制御信号S21及びカウンタ制御信号S22を出力する。比較部58のオフセット/インターバル検出部60は、インターバルフラグ53の値が“0”であるため、オフセット値とオフセット/インターバルカウンタ56のカウント値を比較し、その結果に基づいてオフセット/インターバル検出値を決定する。
仮にオフセット値が“0”の場合には、オフセット/インターバルカウンタ56のカウント値が“0”であるため、オフセット/インターバル検出値は“1”となり、バリッド信号生成部63は値が“1”の出力バリッド信号が出力される。一方、オフセット値が“0”でなければ、オフセット/インターバル検出値は“0”のままであり、カウンタ部55内のオフセット/インターバルカウンタ56はカウント値が“1”となるとともに、値が“0”の出力バリッド信号が出力される。
以下、上述したモードAの処理動作と同様にして、オフセット/インターバルカウンタ56は、カウント値(クロック数)がオフセット値と等しくなるまでカウントを行う。そして、カウンタ56のカウント値とオフセット値が等しくなると、比較部58のオフセット/インターバル検出部60は、オフセット/インターバル検出値に“1”をセットする。これにより、バリッド信号生成部63は、出力バリッド信号S3として“1”(出力1)を出力する。その後、オフセット/インターバル検出値は“0”に戻る。
続いて、オフセット/インターバルカウンタ56のカウント値と比較する比較値をインターバル値に変更して、再びカウンタ56のカウント値がインターバル値に達するまでカウントを行う。そして、カウンタ56のカウント値とインターバル値が等しくなると、比較部58のオフセット/インターバル検出部60は、オフセット/インターバル検出値に再び“1”をセットする。これにより、バリッド信号生成部63は、出力バリッド信号S3として“1”(出力2)を出力する。
出力バリッド信号S3の値を“1”とした回数を出力回数カウンタ57によりカウントし、出力回数カウンタ57のカウント値が反復回数値に達するまで上述した処理を繰り返す。出力回数カウンタ57のカウント値が反復回数値に達したら、比較部58の終了出力信号検出部59は、出力信号検出値を“1”に設定する。これにより、内部状態生成部52にてインターバルフラグ53及びウェイトフラグ54がともに“0”にセットされ初期状態に戻る。
<モードC>
次に、図2(C)に示したモードCにおける動作について説明する。モードCにおいては、規定個数の有効な入力データが演算器10に入力された後、最初の有効な出力データを出力し、その後一定時間間隔で指定された個数の有効な出力データを出力する。
上述したモードBにおける動作では、有効な入力データが入力されてからクロック数をオフセット/インターバルカウンタ56によりカウントし、そのカウント値がオフセット値に達した後に最初の有効な出力データを出力した。モードCにおける動作では、オフセット/インターバルカウンタ56によりクロック数をカウントする代わりに、有効な入力データ数(言い換えると、入力データの有効性を示す内部バリッド信号S2の値が“1”である回数)をカウントして、そのカウント値がオフセット値に達した後に最初の有効な出力データを出力する。
そのため、モードCにおける動作においては、ウェイトフラグ54の値は、最初の有効な出力データが出力されるまでは“0”のままであり、内部バリッド信号S2が入力された場合のみカウンタ有効信号生成部51から値が“1”のカウンタ制御信号S22が出力され、オフセット/インターバルカウンタ56のカウンタ値がインクリメントされる。そして、オフセット/インターバルカウンタ56のカウント値がオフセット値に達すると、比較部58のオフセット/インターバル検出部60は、オフセット/インターバル検出値に“1”をセットする。これにより、バリッド信号生成部63は、出力バリッド信号S3として“1”を出力され、最初の有効な出力データが出力される。その後の動作は、上述したモードBにおける動作と同様であるので説明は省略する。
<モードD>
次に、図3(A)に示したモードDにおける動作について説明する。モードDにおいては、規定個数の有効な入力データが演算器10に入力された後に一度だけ有効な出力データを出力する。
モードDにおいては、表1から明らかなようにカウンタ有効信号生成部51より出力される内部制御信号S21の値は常に“0”であり、インターバルフラグ53及びウェイトフラグ54は“0”に固定したままである。また、コンフィギュレーションデータのオフセット値には、出力しない入力データの個数(例えば、図3(A)に示すように2つのデータ入力後に有効な出力データを出力したい場合にはオフセット値は1となる。)をセットする。
入力されたコンフィギュレーション切替信号S1に基づいてコンフィギュレーションを切り替えて動作を開始した後、カウンタ有効信号生成部51は、内部バリッド信号S2が入力されるとカウンタ制御信号S22の値を“1”にする。これにより、オフセット/インターバルカウンタ56のカウンタ値がインクリメントされる。
そして、オフセット値で指定した個数の入力データが入力されると、次のクロックにてオフセット/インターバルカウンタ56のカウンタ値がオフセット値と等しくなるため、比較部58のオフセット/インターバル検出部60は、オフセット/インターバル検出値を“1”に設定する。以降、内部バリッド信号S2が入力しない限り、カウンタ有効信号生成部51から出力されるカウンタ制御信号S22の値は“0”であるので、オフセット/インターバルカウンタ56のカウント値はオフセット値に固定されたままとなる。
その後、次に有効な入力データ(すなわち、値が“1”の内部バリッド信号S2)が入力されると、カウンタ制御信号S22の値は“1”となり、バリッド信号生成部63は値が“1”の出力バリッド信号を出力する。そして、カウンタ部55ではオフセット/インターバルカウンタ56のカウンタ値はリセットされて“0”となり、次のクロック以降、再び有効な入力データのカウントが開始され、上述した動作を繰り返す。
<モードE>
次に、図3(B)に示したモードEについて説明する。モードEにおいては、規定個数の有効な入力データに対して、最初の有効な入力データが演算器10に入力されたときのみ有効な出力データを出力する。
モードEにおける動作は、モードDにおける動作とほぼ同様であるが、バリッド信号生成部63における値が“1”の出力バリッド信号の出力タイミングが異なる。モードDにおいては、オフセット値に1を加えた個数の入力データが入力されたタイミングで出力バリッド信号の値を“1”としたが、モードEにおいては、最初の有効な入力データが入力されたタイミングで出力バリッド信号の値を“1”とする。そのため、モードEにおける動作では、バリッド信号生成部63は、比較部58の先頭信号検出部61により設定される先頭信号検出値を参照して出力バリッド信号の値を決定している。
以上、本実施形態によれば、コンフィギュレーションメモリ20からのコンフィギュレーションデータに応じて動的に回路構成が再構成可能な演算器10に、入力データを用いて処理を行うデータ処理部11に加え、その処理結果を保持して出力データDOとして演算器10外部に出力する出力データ保持部13と、出力データDOが有効なデータであるか否かを示す出力バリッド信号S3を出力する出力バリッド信号制御部14を設ける。
これにより、出力バリッド信号制御部14からの出力バリッド信号S3の出力タイミング、より詳細には信号の値を“1”にするタイミングを制御することで、演算器10外部に対する有効な出力データDOの出力タイミングを任意に制御することができる。したがって、演算器10外部に対するデータの出力タイミングを制御可能なリコンフィギュラブル回路を提供するができ、例えば、ある処理を行おうとする場合には、従来と比較して少ない数の演算器10で実現することが可能になる。
なお、上述したように本実施形態におけるリコンフィギュラブル回路は複数の演算器を有し構成されるが、すべての演算器が演算器10と同様に出力データ保持部13及び出力バリッド信号制御部14を備えるようにしても良いし、一部の演算器が出力データ保持部13及び出力バリッド信号制御部14を備え、残りの他の演算器はデータ処理部11及び入力バリッド信号制御部12のみで構成するようにしても良い。
図7は、上述した本実施形態におけるリコンフィギュラブル回路を使用したワイヤレス通信システムの構成例を示すブロック図である。
図7に示すように、ワイヤレス通信システムは、アンテナ部71、RF部72、ディジタルベースバンド処理部73、リコンフィギュラブル回路部74、及びMAC部75を有する。アンテナ部71は、無線信号(RF信号)を送受信するためのものである。RF部72は、RF/IF変換処理を行うものである。RF部72は、アンテナ71にて受信されたRF(高周波)信号をIF(中周波)信号に変換してディジタルベースバンド処理部73及びリコンフィギュラブル回路部74に供給したり、ディジタルベースバンド処理部73及びリコンフィギュラブル回路部74からのIF信号をRF信号に変換してアンテナ部71に供給したりする。
ディジタルベースバンド処理部73及びリコンフィギュラブル回路部74は、送受信される信号に係るベースバンド処理を行うものであり、例えば上述したようなストリームデータに係る処理を行う。リコンフィギュラブル回路部74は、本実施形態におけるリコンフィギュラブル回路を用いて構成され、実行されるベースバンド処理の一部を実行する。なお、ディジタルベースバンド処理部73を設けずに、リコンフィギュラブル回路部74にて、実行されるすべてのベースバンド処理を実行するようにしても良い。MAC部75は、いわゆるMAC処理を行うものである。
なお、図7に示したワイヤレス通信システムは、本実施形態におけるリコンフィギュラブル回路の一利用例を示したものであり、本実施形態におけるリコンフィギュラブル回路の用途はこれに限定されるものでない。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の諸態様を付記として以下に示す。
(付記1)構成情報を記憶するコンフィギュレーションメモリと、
上記コンフィギュレーションメモリより供給される上記構成情報に応じて動的に回路構成を再構成可能な複数の演算器とを備え、
上記演算器は、
入力データを用いて上記構成情報に応じた処理を行うデータ処理部と、
上記データ処理部による処理結果を保持するとともに、保持した処理結果を出力データとして出力する出力データ保持部と、
上記出力データ保持部より出力する出力データが有効であるか否かを示す出力バリッド信号を出力する出力バリッド信号制御部と
を有することを特徴とする半導体装置。
(付記2)上記出力バリッド信号制御部は、上記構成情報により規定されるタイミングで上記出力バリッド信号を出力することを特徴とする付記1記載の半導体装置。
(付記3)上記データ処理部は、上記入力データが有効であるか否かを示す信号に基づいて生成される内部バリッド信号に基づいて上記構成情報に応じた処理を行い、
上記出力データ保持部は、データが有効であることを上記内部バリッド信号が示した場合に、保持する処理結果を上記データ処理部より供給される処理結果に更新することを特徴とする付記1記載の半導体装置。
(付記4)上記出力データ保持部は、
入力されるデータを一時保持して上記出力データとして出力するデータ保持部と、
上記データ処理部による処理結果及び上記データ保持部の出力が入力され、何れか一方を上記データ保持部の入力に供給するセレクタ部とを有することを特徴とする付記1記載の半導体装置。
(付記5)上記出力バリッド信号制御部は、
クロック数もしくはデータ数をカウントするカウンタ部と、
上記カウンタ部のカウント値と、上記構成情報により規定される上記出力バリッド信号の出力タイミングに係る値とを比較する比較部と、
上記比較部での比較結果に基づいて、上記出力バリッド信号を生成し出力する出力バリッド信号生成部とを有することを特徴とする付記1記載の半導体装置。
(付記6)上記カウンタ部は、有効な入力データ数、所定の出力契機が生じてから有効な出力データを出力するまでのクロック数、有効な出力データの出力時間間隔に係るクロック数、及び有効な出力データ数をカウント可能であることを特徴とする付記5記載の半導体装置。
(付記7)上記出力データ保持部及び上記出力バリッド信号制御部が、上記構成情報に応じた動作を開始してから所定時間が経過した後に最初の有効な出力データを出力し、続いて、上記構成情報により指定された個数の有効な出力データを一定時間間隔で出力するよう制御を行うことを特徴とする付記1記載の半導体装置。
(付記8)上記出力データ保持部及び上記出力バリッド信号制御部が、有効な入力データが入力されてから所定時間が経過した後に最初の有効な出力データを出力し、続いて、上記構成情報により指定された個数の有効な出力データを一定時間間隔で出力するよう制御を行うことを特徴とする付記1記載の半導体装置。
(付記9)上記出力データ保持部及び上記出力バリッド信号制御部が、上記構成情報により指定された個数の有効な入力データが入力された後に最初の有効な出力データを出力し、続いて、上記構成情報により指定された個数の有効な出力データを一定時間間隔で出力するよう制御を行うことを特徴とする付記1記載の半導体装置。
(付記10)上記出力データ保持部及び上記出力バリッド信号制御部が、上記構成情報により指定された個数の有効な入力データが入力された後に一度だけ有効な出力データを出力するよう制御を行うことを特徴とする付記1記載の半導体装置。
(付記11)上記出力データ保持部及び上記出力バリッド信号制御部が、上記構成情報により指定された個数の有効な入力データに対して、最初の有効な入力データが入力されたときのみ有効な出力データを出力するよう制御を行うことを特徴とする付記1記載の半導体装置。
(付記12)上記複数の演算器のうち一部の演算器が、上記データ処理部、上記出力データ保持部、及び上記出力バリッド制御部を有することを特徴とする付記1記載の半導体装置。
(付記13)上記複数の演算器のすべてが、上記データ処理部、上記出力データ保持部、及び上記出力バリッド制御部をそれぞれ有することを特徴とする付記1記載の半導体装置。
(付記14)付記1記載の半導体装置を用いて、ベースバンド処理に係る機能の全部又は一部を実行することを特徴とする無線通信システム。
本発明の一実施形態におけるリコンフィギュラブル回路の構成例を示す図である。 本実施形態における演算器からのデータの出力タイミングを示すタイミングチャートである。 本実施形態における演算器からのデータの出力タイミングを示すタイミングチャートである。 出力データ保持部の構成例を示す図である。 出力バリッド信号制御部の構成例を示す図である。 出力バリッド信号制御部内の比較部の機能を説明するための図である。 本実施形態におけるリコンフィギュラブル回路を使用したワイヤレス通信システムの構成例を示す図である。 nビットの拡散符号を用いた符号拡散処理を説明するための図である。 異なる周波数で動作する回路間のデータ転送処理を説明するための図である。
符号の説明
10 演算器(プロセッシングエレメント)
11 データ処理部
12 入力バリッド信号制御部
13 出力データ保持部
14 出力バリッド信号制御部
20 コンフィギュレーションメモリ
S1 コンフィグ切替信号
S2 内部バリッド信号
S3 出力バリッド信号

Claims (10)

  1. 構成情報を記憶するコンフィギュレーションメモリと、
    上記コンフィギュレーションメモリより供給される上記構成情報に応じて動的に回路構成を再構成可能な複数の演算器とを備え、
    上記演算器は、
    入力データを用いて上記構成情報に応じた処理を行うデータ処理部と、
    上記データ処理部による処理結果を保持するとともに、保持した処理結果を出力データとして出力する出力データ保持部と、
    上記出力データ保持部より出力する出力データが有効であるか否かを示す出力バリッド信号を出力する出力バリッド信号制御部と
    を有することを特徴とする半導体装置。
  2. 上記出力バリッド信号制御部は、上記構成情報により規定されるタイミングで上記出力バリッド信号を出力することを特徴とする請求項1記載の半導体装置。
  3. 上記出力データ保持部は、
    入力されるデータを一時保持して上記出力データとして出力するデータ保持部と、
    上記データ処理部による処理結果及び上記データ保持部の出力が入力され、何れか一方を上記データ保持部の入力に供給するセレクタ部とを有することを特徴とする請求項1記載の半導体装置。
  4. 上記出力バリッド信号制御部は、
    クロック数もしくはデータ数をカウントするカウンタ部と、
    上記カウンタ部のカウント値と、上記構成情報により規定される上記出力バリッド信号の出力タイミングに係る値とを比較する比較部と、
    上記比較部での比較結果に基づいて、上記出力バリッド信号を生成し出力する出力バリッド信号生成部とを有することを特徴とする請求項1記載の半導体装置。
  5. 上記出力データ保持部及び上記出力バリッド信号制御部が、上記構成情報に応じた動作を開始してから所定時間が経過した後に最初の有効な出力データを出力し、続いて、上記構成情報により指定された個数の有効な出力データを一定時間間隔で出力するよう制御を行うことを特徴とする請求項1記載の半導体装置。
  6. 上記出力データ保持部及び上記出力バリッド信号制御部が、有効な入力データが入力されてから所定時間が経過した後に最初の有効な出力データを出力し、続いて、上記構成情報により指定された個数の有効な出力データを一定時間間隔で出力するよう制御を行うことを特徴とする請求項1記載の半導体装置。
  7. 上記出力データ保持部及び上記出力バリッド信号制御部が、上記構成情報により指定された個数の有効な入力データが入力された後に最初の有効な出力データを出力し、続いて、上記構成情報により指定された個数の有効な出力データを一定時間間隔で出力するよう制御を行うことを特徴とする請求項1記載の半導体装置。
  8. 上記出力データ保持部及び上記出力バリッド信号制御部が、上記構成情報により指定された個数の有効な入力データが入力された後に一度だけ有効な出力データを出力するよう制御を行うことを特徴とする請求項1記載の半導体装置。
  9. 上記出力データ保持部及び上記出力バリッド信号制御部が、上記構成情報により指定された個数の有効な入力データに対して、最初の有効な入力データが入力されたときのみ有効な出力データを出力するよう制御を行うことを特徴とする請求項1記載の半導体装置。
  10. 請求項1記載の半導体装置を用いて、ベースバンド処理に係る機能の全部又は一部を実行することを特徴とする無線通信システム。
JP2006098289A 2006-03-31 2006-03-31 半導体装置 Expired - Fee Related JP4685682B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2006098289A JP4685682B2 (ja) 2006-03-31 2006-03-31 半導体装置
EP20060254227 EP1840756B1 (en) 2006-03-31 2006-08-11 Semiconductor device with reconfigurable dataflow based arithmetic units
DE200660009760 DE602006009760D1 (de) 2006-03-31 2006-08-11 Halbleiterbauelement mit rekonfigurierbaren, datenflussbasierten Arithmetik-Einheiten
US11/504,763 US7694108B2 (en) 2006-03-31 2006-08-16 Reconfigurable semiconductor device capable of controlling output timing of data
CNB2006101514737A CN100562865C (zh) 2006-03-31 2006-09-08 半导体器件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006098289A JP4685682B2 (ja) 2006-03-31 2006-03-31 半導体装置

Publications (2)

Publication Number Publication Date
JP2007274397A true JP2007274397A (ja) 2007-10-18
JP4685682B2 JP4685682B2 (ja) 2011-05-18

Family

ID=37757097

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006098289A Expired - Fee Related JP4685682B2 (ja) 2006-03-31 2006-03-31 半導体装置

Country Status (5)

Country Link
US (1) US7694108B2 (ja)
EP (1) EP1840756B1 (ja)
JP (1) JP4685682B2 (ja)
CN (1) CN100562865C (ja)
DE (1) DE602006009760D1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9552328B2 (en) 2011-06-30 2017-01-24 Socionext Inc. Reconfigurable integrated circuit device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0721142A (ja) * 1994-06-20 1995-01-24 Seiko Epson Corp 1チップマイクロコンピュータ
JP2000278166A (ja) * 1999-03-26 2000-10-06 Nec Corp ソフトウエア携帯電話機
JP2001267909A (ja) * 2000-03-17 2001-09-28 Victor Co Of Japan Ltd 信号処理装置及びその方法
JP2006024152A (ja) * 2004-07-09 2006-01-26 Omron Corp 制御信号作成用のリコンフィギャラブルな設定データの構造
WO2006087773A1 (ja) * 2005-02-15 2006-08-24 Fujitsu Limited プロトコル変換回路
JP2006252440A (ja) * 2005-03-14 2006-09-21 Fujitsu Ltd 再構成可能演算処理装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5239556A (en) * 1990-12-28 1993-08-24 Victor Company Of Japan, Ltd. Demodulation system for spread spectrum communication
JP2937743B2 (ja) * 1994-04-28 1999-08-23 沖電気工業株式会社 スペクトル拡散通信のための拡散符号生成装置
EP0721157A1 (en) * 1994-12-12 1996-07-10 Advanced Micro Devices, Inc. Microprocessor with selectable clock frequency
JPH09275364A (ja) * 1996-04-08 1997-10-21 Toyota Autom Loom Works Ltd スペクトラム拡散通信用同期装置
US5748630A (en) * 1996-05-09 1998-05-05 Maker Communications, Inc. Asynchronous transfer mode cell processing system with load multiple instruction and memory write-back
KR100319789B1 (ko) * 1997-11-19 2002-01-05 다치카와 게이지 복수 부호계열 동시 생성기 및 그것을 사용한 cdma 무선수신장치
US6292506B1 (en) * 1998-12-04 2001-09-18 The United States Of America As Represented By The Secretary Of The Air Force Length selectable, hardware efficient pseudorandom code generator
US6934319B2 (en) * 1999-12-30 2005-08-23 Infineon Technologies Ag Configurable multimode despreader for spread spectrum applications
WO2001050147A1 (en) * 1999-12-30 2001-07-12 Morphics Technology, Inc. A configurable code generator system for spread spectrum applications
JP2001202236A (ja) 2000-01-20 2001-07-27 Fuji Xerox Co Ltd プログラマブル論理回路装置によるデータ処理方法、プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路再構成方法
JP5075313B2 (ja) * 2000-01-28 2012-11-21 インフィネオン テヒノロジース アクチェンゲゼルシャフト 構成可能なスペクトル拡散通信装置のためのコンフィギュレーションを生成する方法
US7006440B2 (en) * 2001-10-26 2006-02-28 Luminous Networks, Inc. Aggregate fair queuing technique in a communications system using a class based queuing architecture
US7433389B2 (en) * 2001-11-20 2008-10-07 Mediatek Inc. Methods and apparatus for spread spectrum signal processing using a reconfigurable coprocessor
JP3932906B2 (ja) * 2002-01-23 2007-06-20 日本電気株式会社 基地局装置及びそれを用いた移動通信システム
EP1427116B1 (en) * 2002-12-04 2018-03-28 Nippon Telegraph And Telephone Corporation Spread-spectrum demodulator
US7293162B2 (en) 2002-12-18 2007-11-06 Fujitsu Limited Split data-flow scheduling mechanism
US6885610B2 (en) * 2003-04-11 2005-04-26 Sun Microsystems, Inc. Programmable delay for self-timed-margin
EP1652065B1 (en) * 2003-07-23 2013-09-04 ST-Ericsson SA Device and method for composing codes
JP3834318B2 (ja) * 2004-03-17 2006-10-18 シャープ株式会社 データ駆動プロセッサ用のデータ入力装置、データ出力装置およびそれらの方法
JP4294566B2 (ja) 2004-09-30 2009-07-15 独立行政法人科学技術振興機構 全反射吸収測定用プリズムを用いた全反射吸収測定方法
US7609104B2 (en) * 2006-10-26 2009-10-27 Toshiba America Electronic Components, Inc. Spread spectrum clock generator
US20080129361A1 (en) * 2006-12-05 2008-06-05 Rajesh Mamidwar Method and system for programmable delays on transport outputs

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0721142A (ja) * 1994-06-20 1995-01-24 Seiko Epson Corp 1チップマイクロコンピュータ
JP2000278166A (ja) * 1999-03-26 2000-10-06 Nec Corp ソフトウエア携帯電話機
JP2001267909A (ja) * 2000-03-17 2001-09-28 Victor Co Of Japan Ltd 信号処理装置及びその方法
JP2006024152A (ja) * 2004-07-09 2006-01-26 Omron Corp 制御信号作成用のリコンフィギャラブルな設定データの構造
WO2006087773A1 (ja) * 2005-02-15 2006-08-24 Fujitsu Limited プロトコル変換回路
JP2006252440A (ja) * 2005-03-14 2006-09-21 Fujitsu Ltd 再構成可能演算処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9552328B2 (en) 2011-06-30 2017-01-24 Socionext Inc. Reconfigurable integrated circuit device

Also Published As

Publication number Publication date
EP1840756B1 (en) 2009-10-14
EP1840756A1 (en) 2007-10-03
CN101046797A (zh) 2007-10-03
CN100562865C (zh) 2009-11-25
JP4685682B2 (ja) 2011-05-18
DE602006009760D1 (de) 2009-11-26
US7694108B2 (en) 2010-04-06
US20070234013A1 (en) 2007-10-04

Similar Documents

Publication Publication Date Title
US6667708B2 (en) Method and system for a programmable code generator
Farashahi et al. FPGA based fast and high-throughput 2-slow retiming 128-bit AES encryption algorithm
US6834291B1 (en) Gold code generator design
EP2260376B1 (en) Digital random number generator based on digitally-controlled oscillators
JPH1195984A (ja) 擬似乱数発生方法および装置
WO2012016588A1 (en) Bit sequence generator
KR101332232B1 (ko) 유한체 연산을 이용한 암호화된 무작위 숫자 생성기
CN110413257A (zh) 随机数产生电路
RU2577588C1 (ru) Способ и устройство для формирования кода скремблирования
US9619206B2 (en) Pseudo-random bit sequence generator
JP2010245881A (ja) 暗号処理装置
JP4685682B2 (ja) 半導体装置
JP5171420B2 (ja) 擬似乱数生成装置
CN107678731B (zh) 一种基于fpga的高频异步随机数发生器
JP2005100085A (ja) 演算装置、および、暗号・復号演算装置
Peinado et al. Improving the period and linear span of the sequences generated by DLFSRs
JP5119417B2 (ja) 擬似乱数生成装置
Singh et al. Efficient VLSI architectures of LILLIPUT block cipher for resource-constrained RFID devices
Mucci et al. Implementation of parallel LFSR-based applications on an adaptive DSP featuring a pipelined configurable gate array
Nas et al. High throughput, low set-up time, reconfigurable linear feedback shift registers
JP4176720B2 (ja) 同期制御装置および同期制御方法
JP2000350262A (ja) 符号生成方法および符号生成回路
Corvetto et al. Robust detection and lossless compression of the foreground in magnetic resonance images
JP3914626B2 (ja) Pn符号発生回路
CN114089810A (zh) 用于为加密核提供处理时钟信号的方法和时钟产生电路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101224

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

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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140218

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4685682

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees