JP3837135B2 - プログラマブル論理回路 - Google Patents

プログラマブル論理回路 Download PDF

Info

Publication number
JP3837135B2
JP3837135B2 JP2004035042A JP2004035042A JP3837135B2 JP 3837135 B2 JP3837135 B2 JP 3837135B2 JP 2004035042 A JP2004035042 A JP 2004035042A JP 2004035042 A JP2004035042 A JP 2004035042A JP 3837135 B2 JP3837135 B2 JP 3837135B2
Authority
JP
Japan
Prior art keywords
data
setting information
unit
logic
circuit
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
JP2004035042A
Other languages
English (en)
Other versions
JP2005229275A (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 JP2004035042A priority Critical patent/JP3837135B2/ja
Priority to US10/589,078 priority patent/US7365566B2/en
Priority to PCT/JP2005/001837 priority patent/WO2005078933A1/ja
Priority to KR1020067016161A priority patent/KR100840030B1/ko
Publication of JP2005229275A publication Critical patent/JP2005229275A/ja
Application granted granted Critical
Publication of JP3837135B2 publication Critical patent/JP3837135B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、プログラムすることにより所定の論理演算の機能を実現できるプログラマブル論理回路に関するものであり、特に、動的に内部構成を変化させながら処理を行うダイナミックプログラマブル論理回路に関するものである。
従来のプログラマブル論理回路として、特許文献1に記載のものがある。この従来のプログラマブル論理回路は、動的相互接続アレーとラッチ回路とダイナミックロジックコアを用いて、具現化すべき回路を段階的に実行する動的再構成可能なフィールドプログラマブルロジックデバイスである。前記従来のプログラマブル論理回路においては、大規模な論理回路を実現する場合に、複数の前記プログラマブル論理回路を直列に接続して、各レベルの論理処理を順番に実行するようにしている。
この場合に、前記従来のプログラマブル論理回路においては、回路レベルを示す回路レベルカウンタと内部レベルを示す内部カウンタを用いて、第1のチップの内部レベルが規定のレベルまで達すると、次のチップを動作させるように制御している。すなわち、前記従来のプログラマブル論理回路においては、チップ単位に回路レベルを分割して具現化している。
特表平8−510885号公報
しかしながら、従来のプログラマブル論理回路においては、より大規模な論理回路を実現しようとすると、処理並列度を1チップに収まる程度に抑える必要があるため、処理時間が増加するという問題がある。また、従来のプログラマブル論理回路においては、処理時間を短縮するため、単一のチップに含まれるダイナミックロジックモジュールの個数を増加させることで処理並列度を高めると、これに比例して動的相互接続アレーの接続点が増加し必要となる設定情報が増大するため、実装回路面積が増大してしまうという問題がある。
本発明は、かかる点に鑑みてなされたものであり、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することを目的とする。
請求項1に記載の発明は、並列に接続されている複数の単位論理回路と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号に所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、分岐用設定情報を受けて当該分岐用設定情報に基づいて前記記憶手段の前記第1及び第2の設定情報のいずれかを読み出して前記論理演算手段と前記データ処理手段とに与えて制御するメモリ制御手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行う構成を採る。
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。また、この構成によれば、複数の単位論理回路の各々が分岐用設定情報を受けて当該分岐用設定情報に基づいて前記記憶手段の前記第1及び第2の設定情報のいずれかを読み出して論理演算手段とデータ処理手段とに与えて制御するため、より汎用性があるプログラマブル論理回路を提供することができる。
請求項2に記載の発明は、並列に接続されている複数の単位論理回路と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号に所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、停止用設定情報を受けて当該停止用設定情報に基づいて前記論理演算手段と前記データ処理手段との停止を制御するメモリ制御手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行う構成を採る。
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。また、この構成によれば、停止用設定情報を受けて当該停止用設定情報に基づいて論理演算手段とデータ処理手段との停止を制御するため、より汎用性があるプログラマブル論理回路を提供することができる。
請求項3に記載の発明は、請求項1又は請求項2に記載の発明において、前記論理演算手段が、前記第1の設定情報に基づいて機能の変更が可能であって前記入力信号に所定の論理演算処理を行って前記データを生成するロジックセルを具備する構成を採る。
この構成によれば、請求項1又は請求項2に記載の発明の効果を有する。
請求項4に記載の発明は、請求項1から請求項3のいずれかに記載の発明において、前記データ処理手段が、前記第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行って前記データを生成するクロスコネクトスイッチを具備する構成を採る。
この構成によれば、請求項1から請求項3のいずれかに記載の発明の効果を有する。
請求項5に記載の発明は、請求項4に記載の発明において、前記データ処理手段が、前記クロスコネクトスイッチからの前記データを保持し前記出力信号として前記出力信号制御手段に与えるフリップフロップを具備する構成を採る。
この構成によれば、請求項4に記載の発明の効果を有する。
請求項6に記載の発明は、並列に接続されている複数の単位論理回路と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路における一の前記単位論理回路と当該一の前記単位論理回路に対して物理的配置上で隣接する他の前記単位論理回路とを接続する接続手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号及び隣接の前記他の単位論理回路からのデータのいずれかに所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、分岐用設定情報を受けて当該分岐用設定情報に基づいて前記記憶手段の前記第1及び第2の設定情報のいずれかを読み出して前記論理演算手段と前記データ処理手段とに与えて制御するメモリ制御手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行う構成を採る。
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。また、この構成によれば、入力信号及び隣接の他の単位論理回路からのデータのいずれかに所定の論理演算処理を行ってデータを生成し、また、複数の単位論理回路の各々が分岐用設定情報を受けて当該分岐用設定情報に基づいて記憶手段の第1及び第2の設定情報のいずれかを読み出して論理演算手段とデータ処理手段とに与えて制御するため、より汎用性があるプログラマブル論理回路を提供することができる。
請求項7に記載の発明は、並列に接続されている複数の単位論理回路と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路における一の前記単位論理回路と当該一の前記単位論理回路に対して物理的配置上で隣接する他の前記単位論理回路とを接続する接続手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号及び隣接の前記他の単位論理回路からのデータのいずれかに所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、停止用設定情報を受けて当該停止用設定情報に基づいて前記論理演算手段と前記データ処理手段との停止を制御するメモリ制御手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行う構成を採る。
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。また、この構成によれば、入力信号及び隣接の他の単位論理回路からのデータのいずれかに所定の論理演算処理を行ってデータを生成し、また、停止用設定情報を受けて当該停止用設定情報に基づいて論理演算手段とデータ処理手段との停止を制御するため、より汎用性があるプログラマブル論理回路を提供することができる。
請求項8に記載の発明は、請求項7に記載の発明において、前記論理演算手段が、前記第1の設定情報に基づいて機能の変更が可能であって前記入力信号又は隣接の前記他の単位論理回路からの前記データに所定の論理演算処理を行って前記データを生成するロジックセルを具備する構成を採る。
この構成によれば、請求項7に記載の発明の効果を有する。
請求項9に記載の発明は、請求項6から請求項8のいずれかに記載の発明において、前記データ処理手段が、前記第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行って前記データを生成するクロスコネクトスイッチを具備する構成を採る。
この構成によれば、請求項6から請求項8のいずれかに記載の発明の効果を有する。
請求項10に記載の発明は、請求項9に記載の発明において、前記データ処理手段が、前記クロスコネクトスイッチからの前記データを保持し前記出力信号として前記出力信号制御手段に与えるフリップフロップを具備する構成を採る。
この構成によれば、請求項9に記載の発明の効果を有する。
以上説明したように、本発明によれば、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。
本発明の骨子の第1のものは、メモリ制御手段が分岐用設定情報に基づいて記憶手段の第1及び第2の設定情報のいずれかを読み出して論理演算手段とデータ処理手段とに与えて制御し、複数の単位論理回路の各々が、記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うことである。
また、本発明の骨子の第2のものは、メモリ制御手段が停止用設定情報に基づいて論理演算手段とデータ処理手段との停止を制御し、複数の単位論理回路の各々が、記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うことである。
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係るプログラマブル論理回路の構成を示すブロック図である。
図1に示すように、本発明の実施の形態1に係るプログラマブル論理回路100は、複数のプロセッサエレメント101、複数のメモリ装置102、入出力制御部103、制御バス104、入力バス105及び出力バス106を具備している。プログラマブル論理回路100には、クロック生成回路107及びユーザー回路108が接続されている。
複数のプロセッサエレメント101と複数のメモリ装置102とは、1対1で接続されている。1対1で接続されているプロセッサエレメント101とメモリ装置102とは、単位論理回路を構成している。複数の単位論理回路は、並列に接続されている。
複数のプロセッサエレメント101の各々は、1次元的に1列状に配置されており、物理配置上で隣接する2つの他のプロセッサエレメント101と接続線101aで接続されている。すなわち、複数の単位論理回路は、1次元的に1列状に配置されており、複数の単位論理回路における一の前記単位論理回路と当該一の前記単位論理回路に対して物理的配置上で隣接する他の前記単位論理回路とは、接続線101aで接続されている。
プロセッサエレメント101は、接続線を用いて隣接する2つの他のプロセッサエレメント101との間でデータの受け渡しを行う。
入出力制御部103は、外部とのインターフェース回路となっており、ユーザー回路108と接続されている。制御バス104は、入出力制御部103及びプロセッサエレメント101と接続されている。制御バス104は、初期化及び起動等の制御信号を入出力制御部103から受け取り、各プロセッサエレメント101に転送する。入力バス105は、入出力制御部103及びプロセッサエレメント101と接続されている。入力バス105は、論理演算に用いるデータを入出力制御部103から受け取り、各プロセッサエレメント101に転送する。
出力バス106は、入出力制御部103及びプロセッサエレメント101と接続されている。出力バス106は、演算結果のデータをプロセッサエレメント101から受け取り、入出力制御部103に転送する。クロック生成回路107は、内部クロック信号109及びユーザークロック信号110を生成する。ユーザークロック信号110は、ユーザー回路108及び入出力制御部103で使用される。内部クロック信号109は、ユーザークロック信号110の逓倍の周波数となっており、プログラマブル論理回路100の内部で使用される。
次に、本プログラマブル論理回路100の機能に関して、図面を参照して説明する。
図1において、プログラマブル論理回路100が行う論理演算処理の内容は、メモリ装置102に設定情報として保持されている。各プロセッサエレメント101は、メモリ装置102の設定情報を順次に読み出して、対応する論理演算処理を行う。プログラマブル論理回路100は、ユーザー回路108からユーザークロック信号110に同期して起動信号及び論理演算に用いるデータを受ける。これから一定時間経過後に、プログラマブル論理回路100は、論理演算処理後のデータをユーザー回路108にユーザークロック信号110に同期して与える。
次に、プログラマブル論理回路100の内部ブロックの機能に関して、図面を参照して説明する。
図1において、各メモリ装置102には、隣接のプロセッサエレメント101の設定情報が格納されている。メモリ装置102は、プロセッサエレメント101から制御信号とメモリアドレスが入力されると、アドレスで指定された設定情報をプロセッサエレメント101に与える。プロセッサエレメント101は、この設定情報に基づいて、実行する処理内容を決定する。
プロセッサエレメント101は、制御バス104から初期化信号が入力されると、メモリ装置102の特定のアドレスを読み出し、入力される読み出しデータから設定情報の格納位置アドレスを抽出して保持する。この格納位置アドレスは、設定情報の先頭位置を示すアドレスである。
また、プロセッサエレメント101は、制御バス104から起動信号が入力されると、メモリ装置102の前記保持した格納位置アドレスから順次に設定情報を読み出す。さらに、プロセッサエレメント101は、入力バス105及び隣接のプロセッサエレメント101から論理処理用のデータを受け取り、設定情報に基づいてデータの論理処理を行った後にデータの整列、複製及び反転処理を行い、かつ、処理後のデータの保持を行う。また、プロセッサエレメント101は、保持した処理後のデータを出力バス106及び隣接のプロセッサエレメント101に出力する。
このようにして、複数のプロセッサエレメント101は、データの受け渡しを行う。入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した起動信号及び論理処理用データを受け取り、このデータを内部クロック信号109に同期させて入力バス105に与える。また、入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した初期化信号を受け取り、このデータを内部クロック信号109に同期させて入力バス105に出力する。また、入出力制御部103は、出力バス106から内部クロック信号109に同期した論理処理後のデータを受け取り、このデータをユーザークロック信号110に同期させてユーザー回路108に出力する。このようにして、入出力制御部103は、ユーザー回路108との制御信号、論理処理用及び処理結果のデータの受け渡しを行う。
次に、プログラマブル論理回路100の内部のプロセッサエレメント101の構成について、図面を参照して説明する。
図2は、プロセッサエレメント101の構成を示している。図2に示すように、プロセッサエレメント101は、ロジックエレメント200及びメモリ制御部201を具備している。プロセッサエレメント101は、メモリ装置102、制御バス104、入力バス105及び出力バス106と接続されている。メモリ制御部201は、メモリ装置102、ロジックエレメント200、制御バス104及びデータバス111と接続されている。ロジックエレメント200は、隣接のプロセッサセレメント101のロジックエレメント200及びメモリ制御部201、入力バス105、出力バス106並びにデータバス111と接続されている。
次に、プロセッサエレメント101の機能について、図面を参照して説明する。図2において、メモリ制御部201は、制御バス104から初期化信号を受けると、前述した格納位置アドレスの抽出及び保持の処理を行う。メモリ制御部201は、制御バス104から起動信号が入力されると、メモリ装置102の前記保持した格納位置アドレスから順次に設定情報を読み出し、ロジックエレメント200に転送する。
ロジックエレメント200は、入力バス105及び隣接のプロセッサエレメント101からデータを受け取り、メモリ制御部201から転送される設定情報に基づいてデータの論理処理を行った後にデータの整列、複製及び反転処理を行い、かつ、処理後のデータの保持を行う。また、ロジックエレメント200は、メモリ制御部201から転送される設定情報に基づいて、出力バス106及び隣接のプロセッサエレメント101に処理後のデータを出力する。
次に、プロセッサエレメント101の内部のロジックエレメント200の構成及び設定情報の構成について、図面を参照して説明する。
図3には、ロジックエレメント200の構成が示されている。図4には、設定情報とメモリ装置102の構成が示されている。
図3において、ロジックエレメント200は、ロジックセル300、クロスコネクトスイッチ301及びフリップフロップ302を具備している。ロジックエレメント200は、メモリ制御部201、入力バス105及び出力バス106と接続されている。ロジックセル300は、メモリ制御部201、フリップフロップ302及びクロスコネクトスイッチ301と接続されている。クロスコネクトスイッチ301は、メモリ制御部201、ロジックセル300、フリップフロップ302、入力バス105及び隣接のロジックエレメント200の内部のロジックセル300と接続されている。フリップフロップ302は、ロジックセル300、クロスコネクトスイッチ301、出力バス106及びメモリ制御部201と接続されている。
なお、ロジックセル300は、論理演算回路を構成している。また、クロスコネクトスイッチ301は、データ処理装置を構成している。また、クロスコネクトスイッチ301及びフリップフロップ302は、データ処理装置を構成している。
図4は、メモリ装置の構成を示している。図4において、メモリ装置102の内部の先頭部分には、設定情報の格納アドレス情報が格納されている。メモリ装置102の内部における先頭部分以外の特定領域には、設定情報が格納されている。
図4において、ビット25〜26はロジックセル300の設定情報であり、ビット0〜24はクロスコネクトスイッチ301の設定情報である。ビット0〜24は、5ビット単位にクロスコネクトスイッチ301の5つの出力に対応する4ビットの接続情報及び1ビットの反転制御情報から構成されている。
次に、ロジックエレメント200の機能について、図面を参照して説明する。図3において、ロジックセル300は、フリップフロップ302から入力されるデータに対し、メモリ制御部201から転送される設定情報によって指定される特定の論理処理を行い、クロスコネクトスイッチ301、隣接のプロセッサエレメント101のロジックエレメント200へ処理後のデータを出力する。クロスコネクトスイッチ301は、ロジックセル300、入力バス105、隣接のプロセッサエレメント101のロジックエレメント200から入力されるデータに対し、メモリ制御部201から転送される設定情報によって指定される特定のデータの整列、複製及び反転処理を行い、フリップフロップ302へ処理後のデータを出力する。フリップフロップ302は、クロスコネクトスイッチ301から入力されるデータを、内部クロック信号109のタイミングで保持する。フリップフロップ302は、保持したデータをロジックセル300及び出力バス106に出力する。
次に、ロジックセル300の機能及び動作について、具体例を用いて説明する。
図5において、ロジックセル300に対し設定情報の2ビット及び入力データの2ビットが入力され、ロジックセル300は出力データの1ビットを出力している。図6は、この場合のロジックセル300の機能及び動作の例を示している。図6において、設定情報が00である時には、ロジックセル300は入力データの論理和(OR)を出力する。設定情報が01である時には、ロジックセル300は入力データの論理積(AND)を出力する。設定情報が10である時には、ロジックセル300は入力データの排他的論理和(XOR)を出力する。設定情報が11である時には、ロジックセル300は入力データの論理和の反転データ(NOR)を出力する。このように、ロジックセル300は、設定情報に基づいて、異なる複数の論理機能を実現可能な回路である。
次に、クロスコネクトスイッチ301の機能について、具体例を用いて説明する。
図7には、クロスコネクトスイッチ301の内部ブロック及び機能の例が示されている。図7において、クロスコネクトスイッチ301の内部の相互接続部700に対し設定情報の4ビット並びに入力データA、B、Cの3ビット及びロウレベルが入力され、相互接続部700から出力データOUT1、OUT2の2ビットが出力されている。さらに、相互接続部700の各出力データは、設定情報の1ビットと排他的論理和(XOR)がとられ、外部に出力される。このXORは、クロスコネクトスイッチ301からの出力データを設定情報に基づいてビット単位に反転するためのものである。この場合、出力数は2であるのでXOR部分に2ビットの設定情報が使用されるため、クロスコネクトスイッチ301の全体で使用する設定情報は合計6ビットとなる。
図8は、この場合の相互接続部700の機能例を示している。図8において、相互接続部700は、設定情報のMSBの2ビットがOUT1に出力されるデータを選択し、LSBの2ビットがOUT2に出力されるデータを選択している。相互接続部700は、設定情報が00である時には入力データAを出力し、設定情報が01である時には入力データBを出力する。相互接続部700は、設定情報が10である時には入力データCを出力し、設定情報が11である時にはロウレベルを出力する。
このように、クロスコネクトスイッチ301は、設定情報に基づいて複数の入力データの整列、複製及び反転処理が可能であり、また、設定情報に設定された固定値を出力することも可能な回路である。
次に、プログラマブル論理回路100の動作について、図面を参照して説明する。図9及び図10には、プログラマブル論理回路100の動作タイミングの例が示されている。図9には、外部からの初期化の動作が表されている。図10には、外部からの起動及び実際の論理処理の動作が表されている。
まず、T1期間において、入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した初期化信号900を受けて内部初期化信号901として保持する。T2期間において、入出力制御部103は、保持した内部初期化信号901を内部クロック信号109に同期させて制御バス104に出力する。制御バス104の内部初期化信号902は、すべてのプロセッサエレメント101のメモリ制御部201に入力される。
T3期間において、プロセッサエレメント101のメモリ制御部201は、入力された内部初期化信号902をトリガにして、メモリ装置102の特定のアドレス904に対し、読み出し信号903を出力する。その後、メモリ制御部201は、入力される読み出しデータ905を保持データ906として一度保持し、この保持データ906から設定情報の格納位置アドレス907を抽出して保持する。T1〜T3の動作により、設定情報の格納位置アドレス907が各プロセッサエレメント101に記憶され、いつでも処理を実行できる状態となる。
T4期間において、プログラマブル論理回路100は、起動待ち状態である。T5期間において、入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した起動信号1000及び処理用データ1001を受け取って内部起動信号1002及び処理用データ1003として保持する。T6期間において、入出力制御部103は、保持した内部起動信号1002を内部クロック信号109に同期させて制御バス104に出力する。また、入出力制御部103は、保持した内部処理用データ1003を内部クロック信号109に同期させて入力バス105に出力する。
制御バス104の内部起動信号1004は、すべてのプロセッサエレメント101のメモリ制御部201に入力される。入力バス105の論理処理用データ1005は、すべてのプロセッサエレメント101のロジックエレメント200に入力される。T7期間において、各プロセッサエレメント101のメモリ制御部201は、入力された内部起動信号1004をトリガにして、メモリ装置102のT3期間において保持した格納位置アドレス907に対し読み出し信号903を出力する。T8期間において、各メモリ制御部201は、メモリ装置102から出力される読み出しデータ905を保持データ906として保持する。同時に、メモリ制御部201は、メモリ装置102の次のアドレスに対し、読み出し信号603を出力する。
T9期間において、各メモリ制御部201は、保持データ906をロジックエレメント200に出力する。また、各メモリ制御部201は、メモリ装置102から出力される読み出しデータ905を保持する。同時に、各メモリ制御部201は、メモリ装置102の次のアドレスに対し、読み出し信号を出力する。各ロジックエレメント200は、入力される保持データ(設定情報)906に基づいて、入力バス105からの論理処理用データ1005の整列、複製及び反転処理を行い、処理後のデータを内部のフリップフロップ302に保持する。
T10期間において、各メモリ制御部201は、保持データ906をロジックエレメント200に出力する。また、各メモリ制御部201は、メモリ装置102から出力される読み出しデータ905を内部に保持する。同時に、各メモリ制御部201は、メモリ装置102の次のアドレスに対して読み出し信号を出力する。
各ロジックエレメント200は、フリップフロップ302、入力バス105及び隣接のプロセッサエレメント101からの論理処理用データ1005を、入力される保持データ(設定情報)906に基づいて論理処理を行って、処理後のデータをフリップフロップ302に保持する。以下、T10期間の処理を繰り返すことにより、一つの論理処理を実現する。
すべての期間において、フリップフロップ302のデータは、出力バス106に出力されており、入出力制御部103は、このデータを常に内部クロック信号109に同期して保持している。入出力制御部103は、保持データをユーザークロック信号110に同期してユーザー回路108に出力する。ユーザー回路108は、入力されるデータのフラグを参照し、出力データ(論理処理後のデータ)を保持する、又は、決められた期間後のデータを保持する。
次に、特定の論理処理機能をプログラマブル論理回路100にマッピングした例を、図面を参照して説明する。説明を簡潔に行うため、動作例で示したT9、T10期間のロジックエレメント200の動作のみを説明する。
図11は、2入力2出力のロジックセル300の機能を示している。図12は、ロジックセル300を持つプログラマブル論理回路100に対して、4ビットの比較回路をマッピングした場合の例を示している。図12において、縦方向には物理的に異なる4つのプロセッサエレメント101が示されており、横方向には同一のプロセッサエレメント101が各サイクルでどのような処理を行うかが示されている。
図13は、4ビットの比較回路を示している。図13に示すように、入力データとして、IN0〜7の8ビットデータがあり、IN0〜3とIN4〜7の比較結果が1ビットのデータとして出力される。
図12において、ロジックセル(LC)300の入力及び出力は、上側がLSBであり、下側がMSBである。また、ロジックセル(LC)300の下部に記載されているデータは、ロジックセル(LC)300に対する設定情報である。複数のロジックセル(LC)300は、図13に示すように動作する。まず、サイクル1及び2において、複数のロジックセル(LC)300は入力データをビット単位に整列する。サイクル3において、複数のロジックセル(LC)300は各ビットに対してXNORの処理を行う。サイクル4において、複数のロジックセル(LC)300はサイクル3の結果に対してAND処理を行う。サイクル5において、複数のロジックセル(LC)300はサイクル4の結果に対してAND処理を行う。サイクル6において、複数のロジックセル(LC)300は比較結果を出力する。結果として、内部クロック信号109の6サイクルで出力が確定される。内部クロック信号109のクロック数がユーザークロック信号110のクロック数の6倍である時に、ユーザー回路108からは、1クロックで比較処理が完了したように見える。
次に、本発明の実施の形態1に係るプログラマブル論理回路100のメモリ制御部201の動作を主とした動作について、図面を参照して詳細に説明する。
図3に示すように、メモリ制御部201は、メモリ装置102、制御バス104及びデータバス111と接続されている。また、メモリ制御部201の入力端子は、ロジックエレメント200のフリップフロップ302の出力端子に接続されている。また、メモリ制御部201の出力端子は、ロジックエレメント200のロジックセル300及びクロスコネクトスイッチ301に接続されている。
メモリ制御部201は、制御バス104からの制御信号に基づいてメモリ装置102と情報の送受をし、かつ、データバス111からのデータバスデータ1111を受ける。また、メモリ制御部201は、フリップフロップ302からのフリップフロップデータ3021を受ける。
次に、プログラマブル論理回路100による分岐制御について、詳細に説明する。
図14は、プログラマブル論理回路100による分岐制御に用いられる分岐用設定情報の構成を説明するための図である。分岐用設定情報1400は、分岐を示すコード1401、分岐判定用データの選択コード(REF)1402、分岐先アドレス(JMPB)1403及び分岐先アドレス(JMPA)1404を有している。
分岐を示すコード1401は、ビット24〜21からなり、「1111」である場合には分岐を示し、「1111」でない場合には分岐以外の通常の処理を示している。分岐判定用データの選択コード1402は、ビット19〜16からなり、分岐判定に用いるデータを選択するための情報である。本例では、分岐判定用データの選択コード1402は、データバスデータ1111及びフリップフロップデータ3021から特定の1ビットを選択するための情報として使用される。分岐先アドレス1403は、ビット15〜8からなり、判定用ビット=1の時に飛ぶ分岐先アドレスを示している。分岐先アドレス1404は、ビット7〜0からなり、判定用ビット=0の時に飛ぶ分岐先アドレスを示している。
図3において、メモリ制御部201は、一連のメモリ装置102からの読み出し動作において、読み出しデータのビット24〜21を参照し、データ値が「1111」以外である時には読み出しデータが通常の設定情報であると判断し、ロジックエレメント200にデータをそのまま転送し、通常の処理を継続する。また、メモリ制御部201は、ビット24〜21が「1111」である時には読み出しデータが分岐制御用情報であると判断し、ロジックエレメント200に動作を一時停止する擬似設定情報、例えば、すべて「0」のデータを転送し、図14におけるREFビット、すなわち、ビット19〜16を参照する。
次に、メモリ制御部201は、REFビットに従って、データバスデータ1111及びフリップフロップデータ3021から特定の1ビットを選択し、選択した前記ビットが「1」である時にはメモリ装置102に出力する読み出しアドレスにJMPBで指定されたアドレスをセットする。
メモリ制御部201は、選択した前記ビットが「0」である時にはメモリ装置102に出力する読み出しアドレスにJMPAで指定されたアドレスをセットする。これ以降において、メモリ制御部201は、セットされたアドレスより順番にメモリ装置102の設定情報を読み出しロジックエレメント200に転送する。
次に、プログラマブル論理回路100の分岐制御による処理について、図1乃至図3と共に図15乃至図17を参照して詳細に説明する。
図15は、プログラマブル論理回路を実装した処理回路を示すブロック図である。図15において、処理回路1500は、回路Cの処理結果に従って回路A及び回路Bの処理結果のいずれかの値をセレクタ1501が外部に出力するよう動作する。簡単のため、各回路A、B、Cは、それぞれ1つのプロセッサエレメントを用いて実現可能とする。また、処理回路(LSI)1500に搭載されたプロセッサエレメントの数は3とする。
まず、図16に、プログラマブル論理回路の分岐制御を用いない場合の処理サイクルを示す。図16は、左から右方向へのクロックサイクル進行における、それぞれの回路の処理レイテンシを示している。例えば、回路Aの処理レイテンシは5サイクルである。回路B及び回路Cの処理レイテンシはそれぞれ5サイクル及び6サイクルである。これらのレイテンシの差を吸収するため、回路A、Bは、回路Cの処理完了までのサイクルにデータ保持のみを行っている。サイクル7において、1つのプロセッサエレメントは、回路A、Bの結果をうけて、図15におけるセレクタ1501の処理を実行して外部に処理回路1500の処理結果データを出力する。
図16に示すように、結果的に全体として7サイクルの処理時間及び3つのプロセッサエレメントが必要となっている。これは、1つのプロセッサエレメントを1サイクル使用する処理を1プロセッサエレメント時間とすると、3×7=21のプロセッサエレメント時間を使用していることになる。
一方、図17には、プログラマブル論理回路100の分岐制御を用いた場合の処理サイクルを示す。図17に示す例では、図16におけるサイクル6までの期間に回路Cのみの処理を行い、サイクル7において、回路Cの結果データを用いて分岐判定を実行している。分岐判定結果としてメモリ制御部201は、回路Bの処理に対応するアドレスをメモリ装置100に対し出力し、次のサイクルより回路Bを実行している。結果的に全体処理時間は、14サイクルに増加しているが、プロセッサエレメントの必要数は1に削減できるため、全体で1×14=14のプロセッサエレメント時間で処理が完了していることになる。
このように、本発明の実施の形態1においては、分岐制御を実施することにより、同時に並列的に実行される処理のうち、結果的に無駄になる処理部分を削減することができる。特に、出力までの要求時間が長い処理にこの分岐制御を用いることにより、空き状態となるプロセッサエレメント101に他の処理を割り当てることができるため、全体の処理性能を高めることが可能となる。また、本発明の実施の形態1においては、プロセッサエレメントの数が実装すべき回路に対して十分でない場合にも特に有効に全体の処理性能を高めることが可能となる。
(実施の形態2)
次に、本発明の実施の形態2について、図面を参照して詳細に説明する。本発明の実施の形態2に係るプログラマブル論理回路の構成は、本発明の実施の形態1に係るプログラマブル論理回路100と同じである。
本発明の実施の形態2に係るプログラマブル論理回路は、分岐制御の処理によりメモリ使用効率を向上させるものである。
図18は、プログラマブル論理回路を実装する処理回路を示すブロック図である。図18において、処理回路1800は、回路A、回路B、回路C、回路A及び回路Dの順に処理を行う回路である。最初の回路Aと3番目の回路Aは入力に対して同一の処理を行うものとする。
また、図19は、プログラマブル論理回路100の分岐制御を用いない場合におけるメモリ装置102の内部の設定情報の格納状態を説明するための図である。図19において、回路Aは40ワードのメモリ領域を使用し、回路B、C、Dはそれぞれ20ワードのメモリ領域を使用する。
図18における処理回路1800は、メモリ装置102のアドレス10から150まで順に実行され、合計140ワードの領域を使用することになる。
一方、図20は、プログラマブル論理回路100の分岐制御を用いた場合におけるメモリ装置102の内部の設定情報の格納状態を説明するための図である。図20において、回路Aの処理後には回路B又は回路Dの先頭アドレスに飛ぶ分岐制御用情報が挿入されている。また、回路Cの処理後に、回路A又は回路Dの先頭アドレスに飛ぶ分岐制御用情報が挿入されている。本例において処理順序は、先ず、アドレス10から読み出しを行って回路Aの処理完了後に、分岐によりアドレス51に飛んで回路Bの処理を行う。その後に、回路Cの処理を行い、処理完了後、分岐によりアドレス10に飛び再度回路Aを処理する。
回路Aの処理完了後に、分岐によりアドレス92に飛び、回路Dの処理を行う。結果的に回路Aの1つ分の領域が削減されている。分岐の方法としては、回路Cの処理完了時にフラグビットを生成し、このフラグビットを用いる方法がある。
このように、本発明の実施の形態2においては、分岐制御を実施することにより、複数回使用される回路のメモリ領域を削減することができるため、回路全体の機能実装効率が高まる。また、本発明の実施の形態2においては、外部からの入力データを監視する処理や特定の値までカウントアップするような処理においては、同一の処理が繰り返し実行される場合が多い回路、例えば、100までカウントアップ後に特定の処理を行うような回路においては、+1の処理を行う回路の後に分岐制御用情報を挿入し、分岐判定条件として、カウンタ値と固定値100の比較結果を用いることにより、大きく面積を削減することができる。
なお、本発明の実施の形態2において、分岐するアドレスは、2通りに限定する必要はなく、参照するビット数を増やして、多くの分岐先アドレスを設定してもよい。
(実施の形態3)
次に、本発明の実施の形態3について、図面を参照して詳細に説明する。本発明の実施の形態3に係るプログラマブル論理回路の構成は、本発明の実施の形態1に係るプログラマブル論理回路100と同じである。本発明の実施の形態3に係るプログラマブル論理回路は、停止制御により実装効率を向上させるものである。
図21は、本発明の実施の形態3に係るプログラマブル論理回路100による停止制御に用いられる停止用設定情報を説明するための図である。停止用設定情報2100は、分岐を示すコード2101、停止を示すコード(REF)2102及び停止サイクル数2103を有している。
分岐を示すコード2101は、ビット24〜21からなり、「1111」である場合には分岐を示し、「1111」でない場合には分岐以外の通常の処理を示している。停止を示すコード2102は、ビット19〜16からなり、停止か否かを示す情報である。停止サイクル数2103は、停止を示すコード2102が停止を示している時における停止サイクル数(停止期間)の情報である。
図3において、メモリ制御部201は、メモリ装置102からの情報の読み出し動作において、読み出した情報のビット24〜21を参照し、データ値が「1111」以外である時に、読み出した情報が通常の設定情報であると判断し、ロジックエレメント200に情報をそのまま転送し、通常の処理を継続する。メモリ制御部201は、読み出した情報のビット24〜21が「1111」であり、REFビットが「1111」以外である時に、読み出した情報が分岐コードであると判断し、前述した分岐の動作を行う。
また、メモリ制御部201は、読み出した情報のビット24〜21が「1111」であり、かつ、REFビットが「1111」である時に、読み出した情報が停止コードであると判断し、ビット0〜7を内部にラッチし、内部カウンタのカウントアップを開始する。カウンタ値が前記ラッチデータの値に達するまでカウントアップは継続し、同時にロジックエレメント200に動作を停止する擬似設定情報、例えば、すべて0のデータを転送し続ける。この間、メモリ制御部201は、メモリ装置102の情報の読み出しは行わない。その後に、カウンタ値が前記ラッチデータの値に達した時点で、メモリ制御部201は、再びメモリ装置102の情報の読み出しを開始して通常動作を再開する。
このような制御により、連帯動作する他のプロセッサエレメント101の処理完了待ち状態にあるプロセッサエレメント101、又は、自身の処理完了により動作の必要のなくなったプロセッサエレメント101の消費電力を抑えることができ、かつ、メモリ装置102における無駄な領域を削減できる。
例えば、図15において、回路A及び回路Bの処理が2サイクルで完了するような場合に、回路Cの処理完了まで前記擬似停止コードをサイクルごとに読み出した場合に、4×2=8サイクル分のメモリ領域が停止コードのみで使用されてしまうことになる。停止コードを回路A及び回路Bの領域の直後に挿入することにより、6サイクル分の無駄なコードを削減できることになる。同時にこの期間のメモリアクセスが停止するため、その分の消費電力を抑えることができる。また、停止サイクル数の領域に停止期間がx無限となる値を設定することにより、最初から使用しないプロセッサエレメント101の消費電力を抑えることも可能である。
以上説明したように、本発明の実施の形態1、2、3に係るプログラマブル論理回路100は、複数のプロセッサエレメント101が独立に動作することも連帯動作することも可能であり、複数種類の論理処理を同時に並列的に行うことが可能であり、かつ、一つの論理処理を連帯して行うことも可能となっている。
また、本発明の実施の形態1、2、3に係るプログラマブル論理回路100は、同一のエレメントが1次元的に1列状に配列されているため、実装規模に応じて柔軟に対応可能であり、拡張性が高い。また、本発明の実施の形態1、2、3に係るプログラマブル論理回路100は、データの送受を隣接のプロセッサエレメント101の間に限定することにより、設定情報を大幅に削減することが可能となり、回路面積を削減でき、かつ、実装するLSIのコスト及び消費電力を削減できる。
また、本発明の実施の形態1、2、3に係るプログラマブル論理回路100は、実装エレメント数に関係なく、任意のプロセッサエレメント101のフリップフロップから隣接する他のプロセッサエレメント101のフリップフロップまでの配線距離が最小限かつ一定であるため、動作周波数を限界にまで引き上げることが可能となり、従来のプログラマブルロジックに比して、高速動作が可能となっている。
また、本発明の実施の形態1、2、3に係るプログラマブル論理回路100は、同一の回路上で、繰り返し機能を変更しながら処理を行うため、回路面積を削減でき、かつ、実装するLSIのコスト及び消費電力を削減できる。
なお、本発明の実施の形態1において、内部クロック信号109は、必ずしもユーザークロック信号110の逓倍である必要がなく、例えば、入出力制御部103に適切なクロック乗せ換え回路を用いることで、ユーザークロック信号110に同期しないクロック信号を内部クロック信号として用いてもよい。
また、本発明の実施の形態1、2,3において、メモリ装置102は、プログラマブル論理回路100の内部に存在する必要がなく、プログラマブル論理回路101の外部に存在する構成でもよい。また、本発明の実施の形態1、2、3において、クロック生成回路107は、プログラマブル論理回路100の内部に配設してもよい。
また、本発明の実施の形態1、2、3において、メモリ装置102とプロセッサエレメント101との間にマルチプレクサなどの選択回路を挿入して、設定によりメモリ装置102と各プロセッサエレメント101との接続を変更可能にしてもよい。ただし、この場合にはデータの処理の遅延量が増加するため、周波数を維持するためには、パイプライン等を用いて高速化を図る必要がある。
また、本発明の実施の形態1、2、3において、図3に示すロジックエレメント200の内部の各ブロック、ロジックセル300、クロスコネクトスイッチ301及びフリップフロップ302の間の接続及び前記各ブロックと入力バス105、出力バス106及び隣接のロジックエレメント200との接続は、図3のものに限定されるものではなく、例えば、ロジックセル300とクロスコネクトスイッチ301の間にフリップフロップを設けて、さらに動作周波数を高めてもよい。また、本発明の実施の形態1において、入力バス105からのデータはクロスコネクトスイッチ301ではなく、ロジックセル300又はフリップフロップ302に入力してもよい。
また、本発明の実施の形態1において、複数のプロセッサエレメント101の各々は、他のプロセッサエレメント101に接続されていなくてもよい。
本発明は、電子装置を制御する制御装置などに適用することができる。
本発明の実施の形態1に係るプログラマブル論理回路の構成を示すブロック図 本発明の実施の形態1に係るプログラマブル論理回路のプロセッサエレメントの構成を示すブロック図 本発明の実施の形態1に係るプログラマブル論理回路のプロセッサエレメントのロジックエレメントの構成を示すブロック図 本発明の実施の形態1に係るプログラマブル論理回路の設定情報とメモリ装置の構成を説明するための図 本発明の実施の形態1に係るプログラマブル論理回路のプロセッサエレメントのロジックエレメントにおけるロジックセルの機能を説明するためのブロック図 本発明の実施の形態1に係るプログラマブル論理回路のプロセッサエレメントのロジックエレメントにおけるロジックセルの動作を説明するための図 本発明の実施の形態1に係るプログラマブル論理回路のプロセッサエレメントのクロスコネクトスイッチの構成を示すブロック図 本発明の実施の形態1に係るプログラマブル論理回路のプロセッサエレメントのクロスコネクトスイッチの動作を説明するための図 本発明の実施の形態1に係るプログラマブル論理回路の初期化時の動作を説明するためのタイミング図 本発明の実施の形態1に係るプログラマブル論理回路の起動時及びデータ処理時の動作を説明するためのタイミング図 本発明の実施の形態1に係るプログラマブル論理回路のプロセッサエレメントのロジックエレメントにおけるロジックセルの動作を説明するための図 本発明の実施の形態1に係るプログラマブル論理回路で4ビットの比較回路をマッピングした場合のプロセッサエレメントの動作を時間軸方向に展開した図 本発明の実施の形態1に係るプログラマブル論理回路で4ビットの比較回路をマッピングした場合のプロセッサエレメントで形成する4ビットの比較回路を示す回路図 本発明の実施の形態1に係るプログラマブル論理回路に用いる分岐用設定情報を説明するための図 プログラマブル論理回路を実装した処理回路を示すブロック図 本発明の実施の形態1に係るプログラマブル論理回路の分岐制御を用いない場合の処理サイクルを説明するための図 本発明の実施の形態1に係るプログラマブル論理回路の分岐制御を用いた場合の処理サイクルを説明するための図 プログラマブル論理回路を実装する処理回路を示すブロック図 本発明の実施の形態2に係るプログラマブル論理回路の分岐制御を用いない場合におけるメモリ装置の内部の設定情報の格納状態を説明するための図 本発明の実施の形態2に係るプログラマブル論理回路の分岐制御を用いた場合におけるメモリ装置の内部の設定情報の格納状態を説明するための図 本発明の実施の形態3に係るプログラマブル論理回路による停止制御に用いられる停止用設定情報を説明するための図
符号の説明
100 プログラマブル論理回路
101 プロセッサエレメント
101a 接続線
102 メモリ装置
103 入出力制御部
104 制御バス
105 入力バス
106 出力バス
200 ロジックエレメント
201 メモリ制御部
300 ロジックセル
301 クロスコネクトスイッチ
302 フリップフロップ
1400 分岐用設定情報
2100 停止用設定情報

Claims (10)

  1. 並列に接続されている複数の単位論理回路と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号に所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、分岐用設定情報を受けて当該分岐用設定情報に基づいて前記記憶手段の前記第1及び第2の設定情報のいずれかを読み出して前記論理演算手段と前記データ処理手段とに与えて制御するメモリ制御手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うプログラマブル論理回路。
  2. 並列に接続されている複数の単位論理回路と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号に所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、停止用設定情報を受けて当該停止用設定情報に基づいて前記論理演算手段と前記データ処理手段との停止を制御するメモリ制御手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うプログラマブル論理回路。
  3. 前記論理演算手段は、前記第1の設定情報に基づいて機能の変更が可能であって前記入力信号に所定の論理演算処理を行って前記データを生成するロジックセルを具備する請求項1又は請求項2に記載のプログラマブル論理回路。
  4. 前記データ処理手段は、前記第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行って前記データを生成するクロスコネクトスイッチを具備する請求項1から請求項3のいずれかに記載のプログラマブル論理回路。
  5. 前記データ処理手段は、前記クロスコネクトスイッチからの前記データを保持し前記出力信号として前記出力信号制御手段に与えるフリップフロップを具備する請求項4に記載のプログラマブル論理回路。
  6. 並列に接続されている複数の単位論理回路と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路における一の前記単位論理回路と当該一の前記単位論理回路に対して物理的配置上で隣接する他の前記単位論理回路とを接続する接続手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号及び隣接の前記他の単位論理回路からのデータのいずれかに所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、分岐用設定情報を受けて当該分岐用設定情報に基づいて前記記憶手段の前記第1及び第2の設定情報のいずれかを読み出して前記論理演算手段と前記データ処理手段とに与えて制御するメモリ制御手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うプログラマブル論理回路。
  7. 並列に接続されている複数の単位論理回路と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路における一の前記単位論理回路と当該一の前記単位論理回路に対して物理的配置上で隣接する他の前記単位論理回路とを接続する接続手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号及び隣接の前記他の単位論理回路からのデータのいずれかに所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、停止用設定情報を受けて当該停止用設定情報に基づいて前記論理演算手段と前記データ処理手段との停止を制御するメモリ制御手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うプログラマブル論理回路。
  8. 前記論理演算手段は、前記第1の設定情報に基づいて機能の変更が可能であって前記入力信号又は隣接の前記他の単位論理回路からの前記データに所定の論理演算処理を行って前記データを生成するロジックセルを具備する請求項7に記載のプログラマブル論理回路。
  9. 前記データ処理手段は、前記第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行って前記データを生成するクロスコネクトスイッチを具備する請求項6から請求項8のいずれかに記載のプログラマブル論理回路。
  10. 前記データ処理手段は、前記クロスコネクトスイッチからの前記データを保持し前記出力信号として前記出力信号制御手段に与えるフリップフロップを具備する請求項9に記載のプログラマブル論理回路。
JP2004035042A 2004-02-12 2004-02-12 プログラマブル論理回路 Expired - Fee Related JP3837135B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2004035042A JP3837135B2 (ja) 2004-02-12 2004-02-12 プログラマブル論理回路
US10/589,078 US7365566B2 (en) 2004-02-12 2005-02-08 Programmable logic circuit
PCT/JP2005/001837 WO2005078933A1 (ja) 2004-02-12 2005-02-08 プログラマブル論理回路
KR1020067016161A KR100840030B1 (ko) 2004-02-12 2005-02-08 프로그래머블 논리 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004035042A JP3837135B2 (ja) 2004-02-12 2004-02-12 プログラマブル論理回路

Publications (2)

Publication Number Publication Date
JP2005229275A JP2005229275A (ja) 2005-08-25
JP3837135B2 true JP3837135B2 (ja) 2006-10-25

Family

ID=35003657

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004035042A Expired - Fee Related JP3837135B2 (ja) 2004-02-12 2004-02-12 プログラマブル論理回路

Country Status (1)

Country Link
JP (1) JP3837135B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10482209B1 (en) 2018-08-06 2019-11-19 HLS Logix LLC Field programmable operation block array

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187478A (ja) * 2008-02-08 2009-08-20 Sanyo Electric Co Ltd 情報処理装置、情報処理方法およびプロセッサ
CN112487744B (zh) * 2020-12-15 2023-12-19 北京东土科技股份有限公司 一种逻辑元件的连线避让方法、装置及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10482209B1 (en) 2018-08-06 2019-11-19 HLS Logix LLC Field programmable operation block array

Also Published As

Publication number Publication date
JP2005229275A (ja) 2005-08-25

Similar Documents

Publication Publication Date Title
US7653805B2 (en) Processing in pipelined computing units with data line and circuit configuration rule signal line
CN102541809B (zh) 一种动态可重构处理器
JP4484756B2 (ja) リコンフィギュラブル回路および処理装置
KR100239349B1 (ko) 역이산 코사인 변환기의 데이타 포멧 변환 회로
CA2671184A1 (en) Id generation apparatus and method for serially interconnected devices
JP2007128633A (ja) 半導体記憶装置及びこれを備えた送受信システム
KR20090031516A (ko) 직렬로 상호접속된 장치에 대해 장치 식별자를 발행하는 장치 및 방법
JP2000285016A (ja) メモリ制御回路
KR100840030B1 (ko) 프로그래머블 논리 회로
CN101501633A (zh) 具有上下文切换装置的寄存器及上下文切换方法
JP3837135B2 (ja) プログラマブル論理回路
EP1117100A1 (en) Data transfer method using shift register blocks
JP3837136B2 (ja) プログラマブル論理回路
JP2005057452A (ja) プログラマブル論理回路
US8432763B2 (en) Integrated circuit
CN112486453A (zh) 一种异步先入先出寄存器以及芯片
RU2374672C1 (ru) Устройство для построения программируемых цифровых микропроцессорных систем
KR20110097478A (ko) 테스트모드신호 생성회로
JP2010093814A (ja) スケーラブルアレイ構成方法及び装置
JP2005057451A (ja) プログラマブル論理回路
JP2008090360A (ja) 集積回路及びリコンフィギュラブル回路の入力データ制御方法
JP6493044B2 (ja) マルチプロセッサシステム
RU2319192C2 (ru) Устройство для построения программируемых цифровых микропроцессорных систем
JP2008219728A (ja) 再構成可能な演算処理回路
KR20090049349A (ko) 데이터 처리장치 및 그 제어방법

Legal Events

Date Code Title Description
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: 20060725

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060728

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090804

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100804

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110804

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110804

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120804

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130804

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees