JP2018029377A - データ処理装置およびその制御方法 - Google Patents

データ処理装置およびその制御方法 Download PDF

Info

Publication number
JP2018029377A
JP2018029377A JP2017197078A JP2017197078A JP2018029377A JP 2018029377 A JP2018029377 A JP 2018029377A JP 2017197078 A JP2017197078 A JP 2017197078A JP 2017197078 A JP2017197078 A JP 2017197078A JP 2018029377 A JP2018029377 A JP 2018029377A
Authority
JP
Japan
Prior art keywords
unit
channel
wiring
units
post
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
JP2017197078A
Other languages
English (en)
Other versions
JP6656217B2 (ja
Inventor
佐藤 友美
Tomomi Sato
友美 佐藤
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.)
Axion Research Inc
Original Assignee
Axion Research Inc
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 Axion Research Inc filed Critical Axion Research Inc
Publication of JP2018029377A publication Critical patent/JP2018029377A/ja
Application granted granted Critical
Publication of JP6656217B2 publication Critical patent/JP6656217B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • H03K19/17744Structural details of routing resources for input/output signals

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Logic Circuits (AREA)
  • Stored Programmes (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)

Abstract

【課題】多様なアルゴリズムを、動的に回路を再構成しながら実行させるデータ処理装置を提供する。
【解決手段】データ処理装置1は、複数のエレメント20と、複数のエレメント20を接続する配線チャネル50とを含むデータ処理部10を含む。各エレメント20は、論理エレメント25と、論理エレメントの入力側とチャネルとの接続をサイクル単位でオンオフし、データの取得の要否を制御する取得ユニット21a〜21dと、論理エレメント25の出力側記チャネルとの接続をサイクル単位でオンオフするポストユニット28a〜28dと、取得ユニットのオンオフおよびポストユニットのオンオフをサイクル単位で制御するタイミングコントローラ26とを含む。
【選択図】図4

Description

本発明は、処理内容を変更可能なデータ処理装置およびその制御方法に関するものである。
特許文献1には、アプリケーションを実行するための回路の少なくとも一部であるオブジェクト回路を動的に再構成可能な論理回路の一部にマッピングするためのオブジェクト回路情報と、オブジェクト回路に接するインタフェース回路を論理回路にマッピングするためのインタフェース回路情報と、インタフェース回路において実現する境界条件とを含むアーキテクチャコードを使用するデータ処理装置が記載されている。
国際公開WO2005/022380号公報
サイクル単位で回路を動的に再構成することによりハードウェアの利用効率は高まり、アルゴリズムをハードウェアによりフレキシブルに実装できるので処理速度も向上させやすい。しかしながら、電子部品を配線で接続して目的の動作を行わせる電気回路を構成することに変わりはなく、多様なアルゴリズムを、動的に回路を再構成しながら実行させるには多くの配線資源が必要となる。
本発明の一態様は、複数のエレメントと、複数のエレメントの間でデータを転送するチャネルとを含むデータ処理部を有する装置の制御方法である。データ処理部の複数のエレメントのそれぞれは、論理エレメントと、論理エレメントの入力側とチャネルとの接続をサイクル単位でオンオフし、データの取得の要否を制御する取得ユニットと、論理エレメントの出力側とチャネルとの接続をサイクル単位でオンオフするポストユニット(ポスティングユニット)とを含み、データ処理部は、さらに、取得ユニットのオンオフおよびポストユニットのオンオフを制御する制御ユニットを含む。
この制御方法は以下のステップを含む。
1.制御ユニットが取得ユニットのオンオフまたはポストユニットのオンオフをサイクル単位で制御し、複数のエレメントのチャネルに対する取得およびポストをサイクル単位で変更すること。
サイクル単位で変更することは、チャネルの構成をサイクル単位で変更することを含んでいてもよい。また、サイクル単位で変更することは、論理エレメントの処理内容を変更することを含んでいてもよい。
また、サイクル単位で変更することは、以下のステップを含んでいてもよい。
・制御ユニットが自律的に論理エレメントの処理内容、取得ユニットのオンオフまたはポストユニットのオンオフをサイクル単位で制御すること。
・外部からのローディングにより論理エレメントの処理内容、取得ユニットのオンオフおよびポストユニットのオンオフをサイクル単位で制御すること。
本発明の他の態様の1つは、複数のエレメントと、複数のエレメントの間でデータを転送するチャネルとを含むデータ処理部を有する装置である。複数のエレメントのそれぞれは、論理エレメントと、論理エレメントの入力側とチャネルとの接続をサイクル単位でオンオフし、データの取得の要否を制御する取得ユニットと、論理エレメントの出力側とチャネルとの接続をサイクル単位でオンオフするポストユニットとを含む。データ処理部は、さらに、取得ユニットのオンオフおよびポストユニットのオンオフをサイクル単位で制御するタイミング制御ユニットを含む。複数のエレメントのそれぞれがタイミング制御ユニットを含んでいてもよい。タイミング制御ユニットは論理エレメントの処理内容をサイクル単位で変更するユニットを含んでいてもよい。
この装置は、データ処理部にアプリケ―ション、アルゴリズムまたは論理を実装する情報を格納するメモリを有することが望ましい。実装する情報は、複数のエレメントのいずれかを選択する情報と、取得ユニットのオンオフおよびポストユニットのオンオフの少なくともいずれかをサイクル単位で制御するタイミング情報とを含む。タイミング情報は、サイクル単位で論理エレメントの処理内容を選択する情報を含んでいてもよい。この装置は、さらに、メモリから実装する情報の少なくとも一部を、チャネルを介して複数のエレメントのそれぞれに供給するユニットを有していてもよい。
チャネルは配線群を含んでいてもよく、取得ユニットは、配線群のいずれかの配線との接続をサイクル単位でオンオフするユニットを含み、ポストユニットは、配線群のいずれかの配線との接続をサイクル単位でオンオフするユニットを含んでいてもよい。チャネルは、第1の方向に沿って配置された第1の配線チャネルと第1の方向と異なる第2の方向に沿って配置された第2の配線チャネルとを含み、データ処理部は、第1の配線チャネルおよび第2の配線チャネルに時分割で接続する配線ボックスを含んでいてもよい。配線ボックスは、入力側ボックスと、出力側ボックスとを含んでいてもよい。
エレメントは、特定の処理を行う機能が固定されたブロックを含んでいてもよい。タイミング制御ユニットは、自律的に取得ユニットのオンオフおよびポストユニットのオンオフをサイクル単位で制御する機能と、外部からのローディングにより取得ユニットのオンオフおよびポストユニットのオンオフをサイクル単位で制御する機能とを含んでいてもよい。これらの機能は、論理エレメントの処理内容をサイクル単位で制御する機能を含んでいてもよい。
ポストユニットは、付加情報を含む拡張ビットを出力するユニットを含むことが望ましい。ポストユニットは、同期機能を実現する多チャンネル対応の出力スイッチを含むことが望ましい。
データ処理装置の概要を示す図。 データ処理部の概要を示す図。 データ処理部の構成を拡大して示す図。 エレメントの概要を示す図。 配線ボックスの一例を示す図。 入力側のモジュールの一例を示す図。 出力側のモジュールの一例を示す図。 エレメントの制御方法を示すフローチャート。 図9(a)は、配線チャネルの使用状況を示す図、図9(b)は配線チャネルの使用状況を示すタイミングチャート。 データ処理装置を含むシステムの一例を示す図。
プログラマブルなデータ処理装置として、回路を動的に再構成可能な論理回路を含む装置がある。回路は、「電気の流れる、輪のように閉じている道筋」、また、電子回路は「電気部品を電気伝導体で接続し電流の通り道を作り、目的の動作を行わせる電気回路」などと定義される。これに対し、電子回路により実装される目的の動作(処理、算術演算、論理演算)を断続的に、たとえば、クロックのタイミングで、断続的に行うことを考えると、閉じている道筋を形成する必要はない。したがって、目的の動作を行わせるための電子回路を形成する必要はない。回路を形成せずに処理を進めることができるデータ処理部、すなわち、非回路型のデータ処理部により、論理回路を経た結果と同等の結果を得ることが可能である。
本明細書では、複数のエレメント(ノード、処理エレメント、処理ユニット)と、複数のエレメントの間でデータを転送するチャネルとを含むデータ処理部を有する装置(データ処理装置)を説明する。チャネルの代表例は、配線チャネル、配線群、配線マトリクスと称される電子および/または光の通路である。チャネルは2次元に配置されていてもよく、3次元に配置されていてもよい。チャネルは、配線チャネルのように予め適当なルールにしたがって配置されていてもよく、可視光通信のように指向性を持った通信手段により空間に適宜形成されてもよい。
光、電波を用いた指向性がそれほど高くない通信手段であれば、適当なプロトコルを採用することにより所定のエレメント間でデータを転送または交換するチャネルを形成できる。しかしながら、プロトコルの処理に要する時間を考慮するとハード的に接続をオンオフできることが望ましい。
複数のエレメントのそれぞれは、論理エレメント(コア)と、論理エレメントの入力側とチャネルとの接続をサイクル単位でオンオフし、データ(信号を含む概念)の取得の要否を制御する取得ユニット(取得デバイス、入力ユニット、ゲットユニット、リードユニット、アクアイアユニット)と、論理エレメントの出力側とチャネルとの接続をサイクル単位でオンオフするポストユニット(ポスティングユニット、ポストデバイス、投稿ユニット、データまたは信号をチャネルに載せるデバイス)とを含む。データ処理部は、さらに、論理エレメントの処理内容、取得ユニットのオンオフおよびポストユニットのオンオフをサイクル単位で制御するタイミング制御ユニットを含む。
取得ユニットは受動的に入力データが流れ込むのを待つのではなく、チャネルに載ったデータまたは信号をチャネルに対する接続をオンオフして取得し、エレメントに取り込む。取得ユニットは、たとえば、チャネルとの接続をオンオフしてエレメントに対するデータの流入をオンオフしてもよく、チャネルにポストされたデータをラッチするかしないかでチャネルに対する接続をオンオフして取得の要否を制御してもよい。ポストユニットは、データをチャネルに垂れ流しするのではなく、チャネルに対する接続をオンオフし、チャネルをドライブする権限を取得したり、放棄(解放)したりする。
このデータ処理部は、複数のエレメントの接続関係をチャネル、たとえば配線群により形成して、複数のエレメントが接続された回路を構成すること、すなわちサイクル単位であっても、目的の動作を行わせる回路を生成または固定することによりアプリケーションまたはアルゴリズムを実現してもよい。
一方、目的の動作を行わせる回路を固定または生成せずに、論理エレメント(コア)と、取得ユニットと、ポストユニットとの処理のタイミングをサイクル単位(クロック単位)で制御し、複数のエレメントのチャネルに対する取得およびポスト(取得と投稿との関係、ゲット・ポストの関係)をサイクル単位で変更してもよい。
このデータ処理部において、チャネルのみではエレメントの接続関係(接続)は規定されない。チャネルは、ポストされたデータを配信するが、取得するのはエレメントであり、チャネルはそれを規定または制限するものではない。チャネルがマルチルートで、それぞれのルートにアクセスできるエレメントが限られている場合は、その範囲でポストされたデータにアクセスできるエレメントが限定されてもよい。各エレメントは自律的にチャネルからデータを入手し、チャネルにデータをポストする。チャネルはエレメント間の接続関係を規定せず、さらに、チャネルに対するエレメントのゲット・ポスト(ゲット・プット、入出力)は1サイクルで変わる。このため、データ処理部にサイクル単位で実装される接続のオンオフから目的とする動作を読み取れる必要はない。
エレメントのチャネルに対するゲット・ポストをサイクル単位で変更することにより、所定のサイクルが経過した後に、目的の動作を行わせる回路と同一の結果が得られるように、チャネルに対するゲット・ポストを規定する情報(タイミング情報、ファンクション情報)を用意することができる。このファンクション情報は、エレメントが属する、あるいはエレメントがアクセスできるチャネルに対する取得のタイミング、チャネルの選択、ポストのタイミング、ポストするチャネルの選択を含むが、回路あるいは接続関係の構成(再構成)を示すものではない。サイクル単位のデータの交換(入出力、ポスト−ゲット)は、エレメント毎の取得ユニットとポストユニットとが、それぞれチャネルにアクセス(オンオフ)するか否かで決定できる。
複数のエレメントのチャネルに対するゲット(アクアイア)およびポストを繰り返して変更することにより目的の動作(処理、演算)を行わせる場合、チャネルは、チャネルにアクセスできる他のエレメントに対し、相手を特定せずに1サイクルでデータを提供する放送網として機能すればよい。チャネルが配線群のようにマルチルートであることは並列に複数種類のデータを広げることができるので好ましい。配線群は、いずれかの配線にアクセスしたエレメントから、その配線にアクセス可能な他のエレメントに対し、相手を特定せずに1サイクル単位でデータを提供する放送網として機能する。
チャネルに対するポストおよび取得をエレメント単位で独立して制御することにより、チャネルが特定のエレメントに占有されることを防止でき、チャネル資源(配線資源)の利用効率を大幅に向上できる。また、1サイクルでも信号(データ)が載らない、すなわち、いずれかのエレメントによりドライブされないようなチャネルは排除でき、その点でもチャネル資源の利用効率を大幅に向上できる。すなわち、このデータ処理部に実装できる技術は、エレメント同士の接続を規定してもよいが、エレメント同士の接続を規定しなくてもよく、エレメント同士の接続を規定しないことによりチャネルは占有されず、使用範囲が広がりハードウェアの利用効率が格段に向上する。
サイクル単位で、チャネルの利用者(利用エレメント、送信者と受信者と)は変わり、チャネルを通じて目的の動作を行わせるための回路は形成されない。一方、チャネルへのアクセス(接続のオンオフ)は、取得ユニットおよびポストユニットが接続をオンオフする、すなわち、接続する/接続しないにより制御される。このため、チャネル、たとえば、配線資源は、それに接続されているエレメントとの間で、サイクル単位で、通信プロトコルの確立も不要な放送媒体として使用される。すなわち、チャネル(配線資源)は、非同期の要素としてではなく、送信側および/または受信側と同期した範囲で情報を伝達する媒体(要素)として機能する。
このため、サイクル単位で異なる論理あるいはアルゴリズムに関連する情報を、エレメントはチャネルにポスト(出力)でき、他のエレメント(1つに限らない)は取得できる。したがって、配線などのチャネル資源を低減でき、実装密度が高く、ハードウェアの利用効率も高いデータ処理装置を提供できる。さらに、チャネルをサイクル単位の論理演算の要素として使用してもよい。すなわち、チャネルに接続する/しないを取得ユニットおよびポストユニットでスケジュール管理することによりワイヤードロジックの一部を構成することが可能である。さらに、チャネルは量子操作を反映できるものであってもよく、量子コンピューティングの一部を構成するものであってもよい。
このデータ処理部を有する装置においては、アプリケ―ション、アルゴリズムまたは論理を含み、高位言語で記述されうる手続きを実行または実装する情報(高位レベルの情報、ファンクション情報)は、エレメントの選択(特定)と、チャネルに対して取得またはポストするタイミングとの情報に変換される。ファンクション情報は、取得またはポストするチャネルの選択を含んでいてもよい。エレメントを特定する情報はたとえば位置であり、2次元または3次元の位置情報として変換されてもよい。処理のタイミング(時間の経過)を考えると、ファンクション情報(高位レベルの情報)は、エレメントの配置が立体であれば4次元の情報に変換されうるし、エレメントの配置が平面であれば3次元の情報に変換されうる。エレメントを選択(特定)する情報は一次元であってもよく、高位レベルの情報は2次元の情報に変換されうる。高位レベルの情報は5次元以上の多次元の情報に変換されてもよい。
エレメントを選択する情報は、エレメントに冗長性があれば特定のエレメントや特定の場所等を示す情報でなくてもよく、代替え性の高い情報に変換されうる。また、タイミングを示す情報も、チャネルの冗長性または時間的な裕度、たとえば、配線の占有時間が確保できたり、データを遅延させたり、データを退避させたりすることができれば、代替え性の高い情報に変換されうる。したがって、データ処理部において目的の処理を行わせるためのファンクション情報(高位レベルの情報)は、極めて代替え性の高い情報として提供でき、データ処理装置のハードウェアを高速処理、低消費電力、超並列性を含む多種多様な目的で使用できる。
配線群は固定されたものであってもよく、再構成できるものであってもよい。また、エレメントにより実現される処理内容(論理演算、算術演算)も、固定されたものであってもよく、再構成または変更可能なものであってもよい。エレメントの冗長性を向上するためには、エレメントにより実現される論理は変更可能であることが望ましい。
タイミング制御ユニットは、予め設定された順番あるいは情報に基づいて自律的に論理エレメントの処理内容、取得ユニットのオンオフまたはポストユニットのオンオフをサイクル単位で制御してもよい。タイミング制御ユニットは、外部からのローディングにより論理エレメントの処理内容、取得ユニットのオンオフおよびポストユニットのオンオフをサイクル単位で制御してもよい。タイミング制御ユニットは、外部からのローディングのみによりエレメントをサイクル単位で制御してもよいが、データ処理部は、外部からそのための情報、すなわち、上述したファンクション情報をローディングするためのチャネル資源を含む。一方、外部からのローディングなしだと、タイミング制御ユニットで制御できる内容が限定される可能性がある。したがって、上記の2つの制御を組み合わせることが望ましい。
データ処理装置は、データ処理部に、アプリケ―ション、アルゴリズムまたは論理を実装する情報(ファンクション情報)を格納するメモリを有し、メモリから実装する情報の少なくとも一部を、チャネルを介して複数のエレメントのそれぞれに供給するユニットを有していてもよい。チャネルはエレメント同士の処理に占有されるものではなく、時分割あるいは並列にチャネルを、ファンクション情報をエレメントに供給するために共用できる。
チャネル(配線資源)は固定であっても、再構成可能であっても、可視光通信のようにその都度形成されてもよい。チャネルは配線チャネルのようにマルチルートであることが望ましく、適当な範囲で複数のエレメントのアクセスをローカライズしたりグルーピングしたりできることは有効である。また、チャネルは多重化または多層化されていてもよく、2次元、3次元さらにはメモリや遅延素子などを介して時間方向にデータを転送できるものであってもよい。
チャネルの一例は、第1の方向に沿って配置された第1の配線チャネルと第1の方向と異なる第2の方向に沿って配置された第2の配線チャネルとを含むものである。第1の配線チャネルと第2の配線チャネルとは縦横等、グリッド状あるいはマトリクス状に複数のエレメントが配置された領域あるいは空間をカバーするものであることが望ましい。第1の配線チャネルと第2の配線チャネルとは直交していても直交していなくてもよく、第3の配線チャネルなどのさらに多くのデータの伝達方向の異なる配線チャネルを含んでもよい。上述したように配線チャネルは2次元である必要はなく、3次元および時間を含めた4次元以上の高次元に配置されたものであってもよい。
データ処理部は、第1の配線チャネルおよび第2の配線チャネルに時分割で接続する配線ボックスを含む。配線チャネル同士を動的に接続することにより、配線チャネルを再構成でき、配線チャネルによりデータに対するアクセスがローカライズされるエレメントを再構成できる。取得ユニットおよびポストユニットは、第1および第2の配線チャネルに対しそれぞれ独立してアクセスできることが望ましい。取得ユニットおよびポストユニットは直に第1および第2の配線チャネルにアクセスできるものであってよく、タイムシェアードタイプの配線ボックスを介してアクセスできるものであってもよい。
エレメントの一例は、コアである論理エレメントに対して、データの流れとして、取得ユニットである入力側ボックスと、ポストユニットである出力側ボックスとがコアを挟むような形で接続されるものである。論理エレメントは、固定機能ブロックと、機能書き換えが可能なブロックとを含むものであり、これらのブロックに対し独立して複数、たとえば、4つの配線チャネルが接続されうるものである。論理エレメントは、少なくとも1つの機能書き換え可能ブロックを含み、外部からのローディング無しに、必要に応じてこれを内部更新することが望ましい。論理エレメント(コア)の機能を変更(書き換える)ために要する配線コストをさらに低減できる。つまり、使用頻度の高い機能(演算他)は、内部に実装されている圧縮された機能選択情報から、出力側のメモリスイッチに専用の固定された機能選択情報がコピーされる。これにより、常時外部から更新すべき機能選択情報を取り込む必要が無くなる。
論理エレメント(コア)は、さらに、出力側、すなわちポストユニットから、演算機能やその他の付加情報を含む拡張ビットをポストする機能を含むことが望ましい。オバーフロー、ゼロフラグ、パリティ、キャリービット、多ビット演算対応キャリー、シフト情報、例外イベント出力等に対応可能な構造をもったデータをチャネルにポストできる。
論理エレメントは、さらに、ポストユニットの、同期機能を実現する多チャンネル対応の出力スイッチを制御する機能を含むことが望ましい。例えば、急にイベントが発生した場合に、イベント対応の処理領域を生成するには、配線資源およびエレメント資源の割り当てを変更して、ハードウェアに空きがある処理領域を瞬時に生成する必要がある。この資源の割り当て変更の対応や入力チャネル・出力チャネルのタイミングを制御して、矛盾なくイベント対応の処理が実行される領域が実現される必要があり、この為の制御要素がエレメント内に実装されていてもよく、外部に設けられていてもよい。
ただし、配線との接続は、予め組み込まれパターンでの対応か、イベント情報を受け取り更新された情報の2系統に対応するだけで、その整合性や一致性を確認する機能は実装されていない。この機能は、必要があれば、隣接するコアにその機能を追加で、一時的に実装して、機能が完了すると消滅(更新)させられる構造としている。
配線チャネルは、タイムスロットの暗黙の割当を利用して動作する構造を採用できる。取得ユニット(取得デバイス)の一例は、シフトレジスター型のフリップフロップと簡単なマスク機能を持ったANDゲートを利用して、有効データを取り込むか取り込まないのかを決定するものである。4ビットを単位として制御する例であれば、4サイクル分の取り込みの要否の情報(ファンクション情報)をフリップフロップに記憶させる。5サイクル目からは、ファンクション情報をメモリから取り込むか最初に戻って同じ4サイクルを繰り返すかを決めて動作させる。パターンが長い場合は、5サイクル目、9サイクル目、13サイクル目をそれぞれメモリからローディングして繰り返すことで、メモリのアクセスタイムに余裕を持たせると同時に、長期パターンにも対応可能な構造とすることができる。
配線ボックスに実装される配線チャネルスイッチは、基本的には、複数の縦側チャネルから次の縦側チャネルの指定するチャネルへスイッチするか、横側チャネルの指定されるチャネルにスイッチするかを決める機能を含む。スイッチが正常に動作したか否かは、基本的に、アプリケーション側が責任を持つ方式である。すなわち、配線チャネルの構成がエレメント同士の接続を決定しないので、エレメント側がアクセスするかしないかをタイミングとともに制御することでエレメント間の授受が決定される。したがって、物理的に配線の接続を検証することに意味はなく、エラーチェックをする処理をエレメントの選択情報とタイミングとの情報で追加することが可能である。
コスト削減を優先する場合、正常に配線チャネルがスイッチされることを前提にして、エレメントを動作させる。データ取りこみは、エレメント側で制御され、配線チャネルスイッチは、配線間のスイッチ(取りこみと出力)だけの機能を持っている。取りこみは、指定されたタイミングで、データのスイッチだけを行う。あるいは、出力させる配線チャネルを選択してデータを有効にするだけの機能を果たす。
図1に、回路を形成せずに処理を行えるデータ処理部10を含むデータ処理装置1の一例を部分的に拡大しながら示している。このデータ処理装置1は、固定された回路または再構成可能な回路を用いてデジタル処理を行うデジタル処理部3と、CPU2と、メモリ5と、タイミング制御により処理を行うデータ処理部10とを含む。非回路なデータ処理部10は、複数のエレメント(セル)20と、縦横にマトリクス状に配置された配線チャネル50と、配線ボックス58とを含む。
図2に、非回路なデータ処理部10の構成を、一部を拡大して示している。このデータ処理部10は、複数、本例では64×64個、すなわち、4096個のエレメント(セル)20と、それらのエレメント20が接続できるように縦横に配置された配線チャネル50とを含む。配線チャネル50は、図2の横方向(第1の方向)に配置された横配線(第1の配線チャネル)51と、横配線51と直交する第2の方向に配置された縦配線(第2の配線チャネル)52とを含む。
図3に、非回路なデータ処理部10の構成を部分的にさらに拡大して示している。エレメント20は、中心のコア31と、その周囲に配置された4方向の接続制御ユニット35a、35b、35cおよび35dとを含む。接続制御ユニット35a〜35dは、後述する取得ユニット21a〜21dと、ポストユニット28a〜28dとをそれぞれ含む。配線チャネル50は、縦横の配線チャネル51および52に加え、配線ボックス58とエレメント20とを接続するローカル配線チャネル55を含む。各エレメント20は、縦横のグローバルな配線チャネル51および52に配線ボックス58を介して接続できる。
各エレメント20は、さらに、配線ボックス58を介してローカル配線チャネル55により、グローバルな配線チャネル51および52を経由せずに、隣接するエレメント20に接続できる。ローカルに接続できるエレメント20の範囲は、4方に限定してもよく、8方向に限定してもよく、さらに、その外側まで延長してもよい。配線ボックス58を介さずに、エレメント20同士がローカルで接続できるようにしてもよい。ローカルな配線はエレメント20に占有される可能性が高いので、配線の利用効率は低くなる可能性がある。その一方、グローバルな配線チャネル51および52を、ローカルなエレメント20同士のデータ交換から解放できるのでチャネル51および52の利用効率が向上する。
配線ボックス58は、時分割(タイムシェア)で、サイクル単位で縦横の配線チャネル51および52に含まれる配線の接続を再構成する。配線ボックス58は、入力側ボックス59aおよび出力側ボックス59bを含み、配線チャネル51および52に対するエレメント20からの出力および入力方向を制御できる。本例では、エレメント(セル)20が独立して、エレメント20の上下に配置された2つの配線チャネル51および左右に配置された縦方向の配線チャネル52の4つ(4方向)の配線チャネル50に対し接続をオンオフできる構造となっている。接続をオンオフできる配線チャネルの数は4方向に限定されない。3次元にエレメント20が配置されている場合は8方向(8配線チャネル)であってもよい。配線チャネルが交差する角度は90度に限定されないので、さらに多くの方向に延びた配線チャネルを配置することも可能であり、それらに対して接続が制御できるエレメント20を配置してもよい。
配線ボックス(接続制御ユニット、配線チャネルスイッチ)58は、複数の縦側チャネル52から次の縦側チャネル52の指定するチャネルへスイッチするか、横側チャネル51の指定されるチャネルにスイッチするかをサイクル単位で決定する機能を含む。配線ボックス58のスイッチングが正常かどうかは、基本的に、アプリケーション側が責任を持つ方式であり、もし、心配であれば、このエラーチェックをする機能が配線ボックス59の接続制御ユニットに付加される。コスト削減を優先する場合、正常にスイッチングされることを前提にして動作させる。データの取りこみの要否は、エレメント20の側で選択される。したがって、配線ボックス58は、配線間のスイッチング(取りこみと出力)だけの機能を持ち、取り込む側のエレメント20が指定されたタイミングでデータを取り込むスイッチングだけを行う。あるいは、エレメント20が出力する配線チャネルを選択してデータを有効にするだけの処理を行う。
データ処理部10は、バス8を介してデジタル処理部3、CPU2、およびメモリ5と接続される。メモリ5には、データ処理部10に、アプリケーションなどを実装するファンクション情報5aが格納されている。ファンクション情報5aは、上述したタイミング情報5bと、エレメントを選択(特定)する情報5cとを含む。ファンクション情報5aはさらに、配線ボックス58をサイクル単位で制御する情報5dなどを含んでいてもよい。
CPU2は、メモリ5からファンクション情報5aを、配線チャネル50を介して各エレメント20に供給する機能(供給ユニット)2aを含む。供給ユニット2aは、装置1のリセット時、特定の処理の開始時などのタイミングでファンクション情報5aを各エレメント20に配線チャネル50を介して供給する。さらに、供給ユニット2aは、処理の途中に、ファンクション情報5aを配線チャネル50にポストし、所定のエレメント20がローディングできるようにしてもよい。データ処理部10においては、配線チャネル50がサイクルベースで解放されるので、配線チャネル50をエレメント20の間でデータの交換、ファンクション情報5aの供給などに共用できる。
図4にエレメント20の概略構成を拡大して示している。エレメント20は、データ処理部(AxionNipeR)10の基本セルであり、独立した4CHの取得ユニット(入力部)21a〜21dと、独立した4CHのポストユニット(出力部、2CHx2は共通)28a〜28dと、コアである論理エレメント25とを含む。論理エレメント25は、高利用頻度が予想される4ビットの加算・減算・比較・論理演算と8ビット、12ビット、16ビット拡張迄の対応を論理エレメント25の基本回路として内部に圧縮して、他のエレメント20と共通回路として保持し、外部からの情報入力を不要としている。論理エレメント25が対応していない新しい回路構成情報は、ファンクション情報5aを介して外部から導入して更新する方式となる。
取得ユニット(取得モジュール、MUX−INA、−INB、−INC,−IND)21a〜21dは、配線チャネル50からのデータを取得する4つの独立したマルチプレクサである。入力データ信号は、隣接している配線チャネル50から供給される。取得ユニット21a〜21dは、配線チャネル50との接続をサイクル単位でオンオフする。配線チャネル50に対する接続をオンオフし、配線チャネル50にポストされたデータを、取得ユニット21a〜21dを介して入力制御ユニット22にラッチをするかどうかは、全て以下で説明するタイミング・コントローラ(タイミング制御ユニット、CTL−TMNG)26にてサイクル単位で確定する。
入力制御ユニット(入力制御モジュール、ラッチユニット、MUX−4×4)22は、タイミング・コントローラ26から供給される制御パターン情報に従って、4CHの独立した入力信号をラッチし、レジスタ23aおよび23bに格納済みの入力信号の入替や交換、ファンクション・ラッチ・ブロック24a〜24dのいずれに入力データを接続するかを決定する。入力制御ユニット22は、データ信号のスイッチ機能を実現している。入力制御ユニット22は、特殊な制御コード情報による自己診断、配線チャネル50を介して外部、たとえば、CPU2の供給ユニット2aからのファンクション情報5aのローディング指示を解読する機能を有している。これらの機能は、タイミング・コントローラ26と連動して実現している。
ファンクション・ラッチ・ブロック(ファンクションラッチモジュール、FNC−LA、−LB、−LC、−LD)24a〜24dは、ファンクションメモリ(論理エレメント)25から内部デコード(解読)されたファンクションを記憶するラッチモジュールである。ファンクション・ラッチ・ブロック24a〜24dは、それぞれ、図面上の横方向に4サイクル分のファンクションをラッチして格納し、入力データを4CHの独立した論理で処理(算術演算、論理演算を含む)して出力する。
ファンクション・ラッチ・ブロック24a〜24dは、ファンクション情報5aなどの特殊制御コードがエレメント20に届き、ラッチされると、その制御コードに含まれている外部情報の取り込みを行い、内部デコードを無視して、それを取り込む機能を含む。内部デコードのラッチは、原則、1サイクルで完了する。外部情報の取り込みを実行する場合は、1〜4クロック・サイクルを消費してもよい。
ファンクションメモリ(LST−FXP)25は、エレメント20のコアである論理エレメント31の中心となる内部論理が格納されているメモリである。ファンクションメモリ25は、4ビット単位での処理や8ビット、12ビット、16ビットでの拡張データ処理、加算・減算・比較、論理演算、その他のエレメント20として使用頻度の高いパターンを圧縮してエレメント20の内部に保持している。ファンクションメモリ25は、外部から取得ユニット21a〜21dを介して、または、内部のタイミング・コントローラ26から特殊ローディングコードを受け取ると、その制御情報に従って、予め格納されている中から必要なファンクション情報5aを選んで、これを内部のラッチ24a〜24dに格納する。
タイミング・コントローラ(タイミング制御ユニット、CTL−TMNG)26は、外部からタイミング制御情報を受け取り、内部に用意された、または内部でデコードされ、レジスタ27aおよび27bにセットされた4セットのファンクション情報5aに基づき4つの独立したファンクション・ブロックをサイクル単位(クロック単位)で制御する。すなわち、タイミング・コントローラ26は、取得モジュール21a〜21d、ファンクション・ラッチ・ブロック24a〜24d、および以下で説明するポストユニット28a〜28dをそれぞれ必要に応じてタイミング制御をするモジュールである。
タイミング・コントローラ26の主な機能の1つは、配線チャネル50から入力データを取り込むタイミングの制御である。タイミング・コントローラ26の主な機能の他の1つは、配線チャネル50の所定のチャネルへ出力データを送信(ポスト、配信)するタイミングの制御である。出力の必要が無い場合は、出力信号は、全て“0”または“1”へと固定される。配線チャネル50に接続できるエレメント20の間において負論理が処理されているか、正論理が処理されているかに依存する。
このタイミング・コントローラモジュール26は、電源投入後(パワーオンリセット)、特殊パターンが入力されると、自己診断機能や外部からの制御情報や新しいファンクションの取り込みを自動的に行う機能を有していてもよい。また、タイミング・コントローラ26は、エレメント20の各機能を制御するのみならず、エレメント20に属している配線ボックス58の制御をサイクル単位で行ってもよい。また、タイミング・コントローラ26は、基本的には、内部デコードしてレジスタ27aおよび27bに格納されたファンクション情報5aに基づいて繰り返し、または所定のパターンでエレメント20を自律して(独立して)制御する。一方、配線チャネル50を介して、外部から特殊コードとともにファンクション情報5aが供給されると、それをファンクション・ラッチ・ブロック24a〜24dに直接出力してエレメント20の機能(処理内容)を一時的に変えたり、ファンクションメモリ25の内容を更新してエレメント20の基本的な機能を変えたりすることができる。
ポストユニット(MUX−OUTA、−OUTB、−OUTC、OUTD)28a〜28dは、エレメント20から配線チャネル50に対して出力を決定する4つの独立した出力チャネルである。出力信号をアクティブにするかどうかは、全てタイミング・コントローラ26が確定する。ポストユニット28a〜28dは、サイクル単位で配線チャネル50に対する接続をオンオフする。ポストユニット28a〜28dは、それぞれ異なる配線チャネル50に出力データをポスト(投稿、載せる)してもよく、バス形式の配線チャネル50に所定のビット長のデータをポストしてもよい。ポストユニット28a〜28dは、同期機能を実現する多チャンネル対応の出力スイッチを含むことが望ましい。
ポストユニット(ポスティングユニット)28a〜28dは、配線チャネル50にデータを出力(ポスト)しないときは、配線チャネル50とエレメント20の出力側との接続をオフにする。これにより、配線チャネル50はポストユニット28a〜28dにドライブされず、出力しないエレメント20から解放され、配線チャネル50は他のデータ出力をするタイミングとなっているエレメント20によりドライブされる。
ポストユニット28a〜28dは、出力データに加え、付加情報を出力する。付加情報は、オバーフロー、ゼロフラグ、パリティ、キャリービット、多ビット演算対応キャリー、シフト情報、例外イベント出力などを、配線チャネル50を介して配信するために用いられる。取得ユニット21a〜21dは、配線チャネル50から付加情報を含めてデータを入手してもよく、付加情報を除いてデータを入手してもよい。
エレメント20のコア31は、上記の複数の機能書き換え可能ブロック(可変機能ブロック)に加え、固定機能ブロックを含んでいてもよい。エレメント20のコア31の可変機能ブロックは、ファンクションメモリ25を備えており、外部からのローディング無しに、必要に応じてこれを内部のデータ(情報)だけでそれぞれの機能を更新することが可能である。使用頻度のさらに高い機能(演算他)は、固定機能ブロックで対応してもよく、ファンクションメモリ25に圧縮されたファンクション情報の量を削減できる可能性がある。
なお、上記のエレメント20は4ビットで構成された例を示しているが、2ビットでもよく、8ビット以上を基本とするエレメントであってもよい。さらに、上記のエレメント20は4サイクル分のファンクション情報を予めフリップフロップまたはレジスタ27a、27b、24a〜24dに記憶させて内部で自律的に制御できる例を示している。5サイクル分以上のファンクション構成情報を内部に展開して繰り返して処理するものであってもよい。4サイクル分のファンクション情報が終了すると、5サイクル目からは、外部または他のメモリから取り込んでもよく、ファンクションメモリ25から新たにデコードしてもよく、すでにデコード済みのファンクション情報を繰り返し使用してもよい。
エレメント20において実行する処理の繰り返しパターンが長い場合は、5サイクル目、9サイクル目、13サイクル目をそれぞれ外部メモリ5からローディングして、これを繰り返えしてもよい。メモリ5のアクセスタイムに余裕を持たせると同時に、長期パターンにも対応可能となる。
図5に配線ボックス58の内部構成の一例を示している。配線ボックス58もサイクル単位でグローバルな配線チャネル51および52の接続を変えたり、配線チャネル51または52からローカルな配線チャネル55を介してエレメント20との接続を変えたりする機能を備えている。図5に示した例は、シフトレジスター型のフリップフロップと簡単なマスク機能を持ったANDゲートを利用して、有効データを取り込む、または取り込まないかを決定するものである。
図6に、取得ユニット21a〜21d、配線ボックス58において、配線チャネル50の中の指定されたバスとの接続をオンオフするモジュール61の一例を示している。このモジュール61は、MUXが不要な単純な構造を採用した例である。
図7に、ポストユニット28a〜28d、配線ボックス58において、配線チャネル50の中の指定されたバスとの接続をオンオフするモジュール62の一例を示している。配線チャネル50は、タイムスロットの暗黙の割当を利用して動作する構造であり、出力側のモジュール62は、配線チャネル50の中のプログラムされたバスのみをドライブし、必要のないバスを解放する構成が採用されている。
図8に、データ処理部10の各エレメント20のタイミングの制御をフローチャートにより示している。この制御方法は、論理(論理回路)としてエレメント20、タイミング・コントローラ26などに実装されていてもよく、ファームウェア、マイクロプログラム(プログラム製品)として提供され、メモリなどの適当な記録媒体に格納されていてもよい。
ステップ71で、タイミング・コントローラ26がエレメント20の入力側を配線チャネル50に接続するタイミング(サイクル)であると判断すると、ステップ72で取得ユニット21a〜21dのいずれかをオンし、ステップ73で配線チャネル50にポストされているデータをラッチする。取得ユニット21a〜21dをオンする際、ステップ85で配線チャネル50の縦横の配線チャネル51および52の接続は再構成されており、その再構成された配線チャネル50でローカライズされたエレメント20がポストしたデータをラッチする。その後、ステップ74で、取得ユニット21a〜21dをオフし、配線チャネル50を解放する。
ステップ75においてラッチされたデータが演算用か、ファンクション情報の更新用かを判断する。ファンクション情報であれば、ステップ81でファンクションメモリ25を更新するか、ファンクション・ラッチ・ブロック24a〜24dでラッチして、エレメント20の処理内容を変更する。
ステップ75においてラッチされたデータが演算用であれば、ステップ76で、エレメント20の内部で、そのタイミング(サイクル)で指定された処理(演算)が行われる。ステップ77で、タイミング・コントローラ26が出力側を配線チャネル50に接続するタイミング(サイクル)であると判断すると、ステップ78でポストユニット28a〜28dのいずれかがオンになり、ステップ79で配線チャネル50に出力データがポストされる。ポストユニット28a〜28dをオンする際、ステップ85で配線チャネル50の縦横の配線チャネル51および52の接続は再構成されており、その再構成された配線チャネル50でローカライズされたエレメント20がポストされたデータを取得することができる。その後、ステップ80で、ポストユニット28a〜28dをオフし、配線チャネル50を解放する。
その後、ステップ82で、タイミング・コントローラ26が次のファンクション情報を認識し、そのファンクション情報にしたがってエレメント20の制御を繰り返す。
図9に、配線チャネル50の占有状況が変化する様子を模式的に示している。図9(a)は、エレメントC33とエレメントC11との間でデータ交換が行われる処理(論理演算)と、エレメントC32とエレメントC21との間でデータ交換が行われる処理とを時分割で物理的に同じ配線チャネル50、具体的には、配線チャネルX6およびY2に対してオンオフすることで行うことを示している。図9(b)は配線チャネルX6およびY2の占有を示すタイミングチャートである。
ファンクション情報CD1ではエレメントC33およびC11が配線チャネルX6およびY2に対してオンとなり、それらの間でデータ交換が行われる。ファンクション情報CD2ではエレメントC32およびC21が配線チャネルX6およびY2に対してオンとなり、それらの間でデータ交換が行われる。ファンクション情報CD3およびCD4では、エレメントC11,C21,C32およびC33は、配線チャネルX6およびY2に対してオフであり、これらの配線に他のエレメント20がアクセスしてデータのポストおよび取得が行われる。配線チャネルX6およびY2は、サイクル単位で利用者が変わり、配線チャネルは時分割で占有される。配線チャネルの利用者を固定することももちろん可能である。
データ処理部10の配線チャネル50は、サイクル単位で送信者と受信者とが変わり、配線チャネル50を通じて目的の動作を行わせるための回路は形成されない。配線チャネル50は、配線チャネル50に接続されているエレメント(セル)20の間で、サイクル単位で、通信プロトコルの確立も不要な放送媒体として使用され、利用者はサイクル単位で配線チャネルにアクセスできる。
配線チャネル50は、信号が伝達される非同期の要素としてではなく、送信側および/または受信側と同期した範囲で情報を伝達する媒体(要素)として機能する。このため、エレメント20は、サイクル単位で異なる論理あるいはアルゴリズムに関連する情報を、時分割で配線資源に出力(ポスト)でき、他のセル20は時分割で情報(データ、信号)を取得できる。したがって、配線資源を低減でき、実装密度が高く、ハードウェアの利用効率も高いデータ処理装置を提供できる。さらに、配線資源をサイクル単位で論理演算を行う要素しても使用できる。
論理演算エレメントであるコア31は、加算、乗算などの比較的ゲート数の大きな論理演算を行うもの(コースグレイン)であってもよく、4入力以下のAND、NAND、OR、NOR、EXORなどの比較的ゲート数の小さな論理演算を行うもの(ファイングレイン)であってもよい。本例では、ファイングレインなコア31を採用している。論理演算はルックアップテーブルを用いるものであってもよく、セレクタータイプのものであってもよく、メモリタイプのものであってもよい。
図10に、データ処理装置1を含むシステム(OLP)100の一例を示している。このシステム100は、FAIMSなどのセンサーから得られたデータ101を解析するシステムであり、非回路型のデータ処理部10に様々な機能を時分割または並列に実装することが可能である。このシステム100は、様々なアプリケーションのプラットフォームとして使用できる。アプリケーションのいくつかの例は、ヘルスケアモニタリング100a、プロセスモニタリング100b、セキュリティーモニタリング100c、コンシューマー向けの匂いビジネスアプリケーション100dである。装置1には、FAIMS(イオン移動度センサー)、MS(質量センサー)などのセンサーから得られるデータ101の他に、温度、湿度、圧力、周辺画像、GPSなどの補助センサーデータ102と、サンプリングシステムのデータ、たとえば、サンプリングタイム、サンプリング対象に関するデータ103が入力される。
データ処理部10には、たとえば、測定対象物のカテゴリーなどを判断して解析条件を設定するパーサ110と、ベースライン補正などのデータ補正を行うユニット111と、ピークを規格化したり、ノイズを低減するユニット113と、センサーデータ101に含まれるピークを検出したり分離するユニット114と、分離されたピークから種類(性質、属性)および量を判断する分析エンジン115と、SOM(自己組織化写像)、ニューラルネットワークなどの手法を用いて分析エンジン115において得られた情報から測定元の化学物質を類推または分類するエンジン116と、装置内部のデータベースまたはネットワークを経由してデータベースサーチを行い、測定対象の化学物質を判断するユニット(機能)117とが実装される。これらの機能は、原則として、エレメント20を選択する情報と、配線チャネルにアクセスするタイミングの情報とによりデータ処理部10に実装される。
CPU2は、データ処理部10における処理を支援するための機能を実現する。たとえば、CPU2は、参照データベースにアクセスする機能124、クラウド(LAN)にアクセスする機能123、ユーザーインタフェース機能122、データ取得制御機能121を提供する。これらの機能は、データ処理部10の空きスペースや空き時間を用いてデータ処理部10に実装することも可能である。
リアルタイムで化学物質を検出および分析のためには大規模並列データ処理エンジンが要望される。リアルタイムで化学物質を検出および分析することにより、疾患検出のバイオマーカの同定や定量化、健康状態あるいは生体機能の監視、遠隔監視技術による管理医療の提供といった画期的なサービスをユーザーに提供することが可能となる。そのためのプラットフォームは、知的であり、拡張可能であり、さまざまなアプリケーションやパフォーマンスへの要求に答えられる必要がある。非回路型の情報処理セクターであるデータ処理部10を含む装置1は、配線チャネルに複数のエレメントが自在にアクセスできるという並列処理ハードウェアとしての機能に加え、タイミング制御により動的にプログラム可能であり、上記の要求にマッチしたハードウェアである。
センサーの1つは、FAIMS(Field Asymmetric ion mobility spectrometer)である。FAIMSは、空気などに含まれる微量な化学成分の検出に適しており、警備、環境モニタリング、ヘルスケア、産業プロセス、エネルギーなどの広範囲にわたるアプリケーションに適用されようとしている。FAIMSおよびMS(質量センサー)はチップレベルの小型軽量なものが市場に提供され始めており、チップレベルで実現できる装置1を解析用のプラットフォームとして採用することにより、小型、軽量、機械的および熱的に堅牢で、低パワーの、チップレベルでのリアルタイム化学物質分析装置を提供できる。
1 データ処理装置、 10 データ処理部、 20 エレメント

Claims (15)

  1. 複数のエレメントと、前記複数のエレメントの間でデータを転送するチャネルとを含むデータ処理部を有する装置の制御方法であって、
    前記複数のエレメントのそれぞれは、論理エレメントと、
    前記論理エレメントの入力側と前記チャネルとの接続をサイクル単位でオンオフし、データの取り込みの要否を制御する取得ユニットと、
    前記論理エレメントの出力側と前記チャネルとの接続をサイクル単位でオンオフするポストユニットとを含み、
    前記データ処理部は、さらに、前記取得ユニットの前記オンオフおよび前記ポストユニットの前記オンオフを制御する制御ユニットを含み、
    当該制御方法は、
    前記制御ユニットが前記取得ユニットの前記オンオフまたは前記ポストユニットの前記オンオフをサイクル単位で制御し、前記複数のエレメントの前記チャネルに対する取得およびポストをサイクル単位で変更することを含む、制御方法。
  2. 請求項1において、
    前記サイクル単位で変更することは、前記チャネルの構成をサイクル単位で変更することを含む、制御方法。
  3. 請求項1または2において、
    前記サイクル単位で変更することは、前記論理エレメントの処理内容を変更することを含む、制御方法。
  4. 請求項3において、
    前記サイクル単位で変更することは、前記制御ユニットが自律的に前記論理エレメントの処理内容、前記取得ユニットの前記オンオフまたは前記ポストユニットの前記オンオフをサイクル単位で制御することと、
    外部からのローディングにより前記論理エレメントの処理内容、前記取得ユニットの前記オンオフおよび前記ポストユニットの前記オンオフをサイクル単位で制御することとを含む、制御方法。
  5. 複数のエレメントと、前記複数のエレメントの間でデータを転送するチャネルとを含むデータ処理部を有し、
    前記複数のエレメントのそれぞれは、論理エレメントと、
    前記論理エレメントの入力側と前記チャネルとの接続をサイクル単位でオンオフし、データの取得の要否を制御する取得ユニットと、
    前記論理エレメントの出力側と前記チャネルとの接続をサイクル単位でオンオフするポストユニットとを含み、
    前記データ処理部は、さらに、前記取得ユニットの前記オンオフおよび前記ポストユニットの前記オンオフをサイクル単位で制御するタイミング制御ユニットを含む装置。
  6. 請求項5において、前記複数のエレメントのそれぞれが前記タイミング制御ユニットを含む、装置。
  7. 請求項5または6において、前記タイミング制御ユニットは、前記論理エレメントの処理内容をサイクル単位で変更するユニットを含む、装置。
  8. 請求項5ないし7のいずれかにおいて、前記データ処理部に、アプリケ―ション、アルゴリズムまたは論理を実装する情報を格納するメモリを有し、
    前記実装する情報は、前記複数のエレメントのいずれかを選択する情報と、
    前記取得ユニットの前記オンオフおよび前記ポストユニットの前記オンオフの少なくともいずれかをサイクル単位で制御するタイミング情報とを含む、装置。
  9. 請求項8において、前記メモリから前記実装する情報の少なくとも一部を、前記チャネルを介して前記複数のエレメントのそれぞれに供給するユニットを有する、装置。
  10. 請求項5ないし9のいずれかにおいて、
    前記チャネルは配線群を含み、
    前記取得ユニットは、前記配線群のいずれかの配線との接続をサイクル単位でオンオフするユニットを含み、
    前記ポストユニットは、前記配線群のいずれかの配線との接続をサイクル単位でオンオフするユニットを含む、装置。
  11. 請求項5ないし10のいずれかにおいて、
    前記チャネルは、第1の方向に沿って配置された第1の配線チャネルと、
    前記第1の方向と異なる第2の方向に沿って配置された第2の配線チャネルとを含み、
    前記データ処理部は、前記第1の配線チャネルおよび前記第2の配線チャネルに時分割で接続する配線ボックスを含む、装置。
  12. 請求項11において、前記配線ボックスは、入力側ボックスと、出力側ボックスとを含む、装置。
  13. 請求項5ないし12のいずれかにおいて、前記タイミング制御ユニットは、自律的に前記取得ユニットの前記オンオフおよび前記ポストユニットの前記オンオフをサイクル単位で制御する機能と、
    外部からのローディングにより前記取得ユニットの前記オンオフおよび前記ポストユニットの前記オンオフをサイクル単位で制御する機能とを含む、装置。
  14. 請求項5ないし13のいずれかにおいて、前記ポストユニットは、付加情報を含む拡張ビットを出力するユニットを含む、装置。
  15. 請求項5ないし14のいずれかにおいて、前記ポストユニットは、同期機能を実現する多チャンネル対応の出力スイッチを含む、装置。
JP2017197078A 2013-03-01 2017-10-10 データ処理装置およびその制御方法 Active JP6656217B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013040536 2013-03-01
JP2013040536 2013-03-01

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015502791A Division JP6290855B2 (ja) 2013-03-01 2014-03-03 データ処理装置およびその制御方法

Publications (2)

Publication Number Publication Date
JP2018029377A true JP2018029377A (ja) 2018-02-22
JP6656217B2 JP6656217B2 (ja) 2020-03-04

Family

ID=51427943

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2015502791A Active JP6290855B2 (ja) 2013-03-01 2014-03-03 データ処理装置およびその制御方法
JP2017197078A Active JP6656217B2 (ja) 2013-03-01 2017-10-10 データ処理装置およびその制御方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2015502791A Active JP6290855B2 (ja) 2013-03-01 2014-03-03 データ処理装置およびその制御方法

Country Status (11)

Country Link
US (3) US9667256B2 (ja)
EP (1) EP2963824B1 (ja)
JP (2) JP6290855B2 (ja)
KR (1) KR20150127608A (ja)
CN (1) CN105027446B (ja)
AU (1) AU2014222148A1 (ja)
CA (1) CA2901062A1 (ja)
EA (1) EA201591613A1 (ja)
IL (1) IL240911A0 (ja)
SG (1) SG11201506674RA (ja)
WO (1) WO2014132669A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107478710A (zh) * 2017-09-14 2017-12-15 安徽理工大学 一种消除Hadamard离子迁移谱基线漂移失真方法
US11360930B2 (en) * 2017-12-19 2022-06-14 Samsung Electronics Co., Ltd. Neural processing accelerator
JP7080065B2 (ja) * 2018-02-08 2022-06-03 株式会社Screenホールディングス データ処理方法、データ処理装置、データ処理システム、およびデータ処理プログラム
WO2021090711A1 (ja) * 2019-11-06 2021-05-14 太陽誘電株式会社 データ処理装置および情報処理装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001519133A (ja) * 1997-03-24 2001-10-16 ザイリンクス,インコーポレイテッド Fpga繰返し可能相互接続構成体
WO2005022380A1 (ja) * 2003-08-29 2005-03-10 Ipflex Inc. データ処理装置
WO2006011232A1 (ja) * 2004-07-30 2006-02-02 Fujitsu Limited リコンフィギュラブル回路およびリコンフィギュラブル回路の制御方法
WO2006046711A1 (ja) * 2004-10-28 2006-05-04 Ipflex Inc. 再構成可能な論理回路を有するデータ処理装置
JP2007041796A (ja) * 2005-08-02 2007-02-15 Mitsubishi Electric Corp コード生成装置
US20070210826A1 (en) * 2006-03-08 2007-09-13 Madurawe Raminda U Programmable logic devices comprising time multiplexed programmable interconnect
WO2008026731A1 (fr) * 2006-08-31 2008-03-06 Ipflex Inc. Procédé et système pour le montage d'un modèle de circuit sur un dispositif reconfigurable
JP2009017010A (ja) * 2007-07-02 2009-01-22 Nec Electronics Corp 再構成可能デバイス
JP2009213054A (ja) * 2008-03-06 2009-09-17 Fujitsu Microelectronics Ltd 論理回路装置
JP2015502791A (ja) * 2011-12-15 2015-01-29 オリンパス・ウィンター・アンド・イベ・ゲゼルシャフト・ミット・ベシュレンクテル・ハフツング シャフトを備えるレゼクトスコープ

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5850564A (en) * 1995-05-03 1998-12-15 Btr, Inc, Scalable multiple level tab oriented interconnect architecture
GB2305759A (en) * 1995-09-30 1997-04-16 Pilkington Micro Electronics Semi-conductor integrated circuit
US6020760A (en) * 1997-07-16 2000-02-01 Altera Corporation I/O buffer circuit with pin multiplexing
US6678646B1 (en) * 1999-12-14 2004-01-13 Atmel Corporation Method for implementing a physical design for a dynamically reconfigurable logic circuit
TWI234737B (en) * 2001-05-24 2005-06-21 Ip Flex Inc Integrated circuit device
EP1416388A4 (en) * 2001-07-12 2006-02-08 Ip Flex Inc INTEGRATED CIRCUIT DEVICE
EP1443392A4 (en) * 2001-09-07 2007-08-15 Ip Flex Inc DATA PROCESSING DEVICE AND ASSOCIATED CONTROL METHOD
US7493426B2 (en) * 2005-01-31 2009-02-17 International Business Machines Corporation Data communication method and apparatus utilizing programmable channels for allocation of buffer space and transaction control
US7268581B1 (en) 2005-04-21 2007-09-11 Xilinx, Inc. FPGA with time-multiplexed interconnect
US8850411B2 (en) 2006-06-21 2014-09-30 Element Cxi, Llc Compiler system, method and software for a resilient integrated circuit architecture
DE102006032650B3 (de) * 2006-07-13 2007-09-06 Technotrans Ag Farbversorgungsvorrichtung für eine Druckmaschine
US7500023B2 (en) * 2006-10-10 2009-03-03 International Business Machines Corporation Facilitating input/output processing by using transport control words to reduce input/output communications

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001519133A (ja) * 1997-03-24 2001-10-16 ザイリンクス,インコーポレイテッド Fpga繰返し可能相互接続構成体
WO2005022380A1 (ja) * 2003-08-29 2005-03-10 Ipflex Inc. データ処理装置
WO2006011232A1 (ja) * 2004-07-30 2006-02-02 Fujitsu Limited リコンフィギュラブル回路およびリコンフィギュラブル回路の制御方法
WO2006046711A1 (ja) * 2004-10-28 2006-05-04 Ipflex Inc. 再構成可能な論理回路を有するデータ処理装置
JP2007041796A (ja) * 2005-08-02 2007-02-15 Mitsubishi Electric Corp コード生成装置
US20070210826A1 (en) * 2006-03-08 2007-09-13 Madurawe Raminda U Programmable logic devices comprising time multiplexed programmable interconnect
WO2008026731A1 (fr) * 2006-08-31 2008-03-06 Ipflex Inc. Procédé et système pour le montage d'un modèle de circuit sur un dispositif reconfigurable
JP2009017010A (ja) * 2007-07-02 2009-01-22 Nec Electronics Corp 再構成可能デバイス
JP2009213054A (ja) * 2008-03-06 2009-09-17 Fujitsu Microelectronics Ltd 論理回路装置
JP2015502791A (ja) * 2011-12-15 2015-01-29 オリンパス・ウィンター・アンド・イベ・ゲゼルシャフト・ミット・ベシュレンクテル・ハフツング シャフトを備えるレゼクトスコープ

Also Published As

Publication number Publication date
CA2901062A1 (en) 2014-09-04
AU2014222148A1 (en) 2015-09-17
US20180294814A1 (en) 2018-10-11
SG11201506674RA (en) 2015-09-29
JP6656217B2 (ja) 2020-03-04
EA201591613A1 (ru) 2016-05-31
WO2014132669A1 (ja) 2014-09-04
EP2963824A1 (en) 2016-01-06
US9667256B2 (en) 2017-05-30
EP2963824A4 (en) 2016-10-19
US10009031B2 (en) 2018-06-26
KR20150127608A (ko) 2015-11-17
US20170257102A1 (en) 2017-09-07
EP2963824B1 (en) 2020-08-19
IL240911A0 (en) 2015-10-29
JP6290855B2 (ja) 2018-03-07
JPWO2014132669A1 (ja) 2017-02-02
CN105027446A (zh) 2015-11-04
US20160020771A1 (en) 2016-01-21
CN105027446B (zh) 2019-06-21

Similar Documents

Publication Publication Date Title
JP6656217B2 (ja) データ処理装置およびその制御方法
EP1713007B1 (en) A dynamically reconfigurable System-on-Chip comprising a plurality of reconfigurable gate array devices
US20190171450A1 (en) Programmable matrix processing engine
Rossi et al. A heterogeneous digital signal processor for dynamically reconfigurable computing
EP3343563A1 (en) Matrix storage using data shifting memory
Yuan et al. A multi-granularity FPGA with hierarchical interconnects for efficient and flexible mobile computing
JP2008537268A (ja) 可変精度相互接続を具えたデータ処理エレメントの配列
JP2010171994A (ja) データ処理装置
KR102539571B1 (ko) 네트워크 온칩 데이터 처리 방법 및 장치
KR102539572B1 (ko) 네트워크 온칩 데이터 처리 방법 및 장치
KR102539573B1 (ko) 네트워크 온칩 데이터 처리 방법 및 장치
Schuck et al. An Interface for a Decentralized 2D Reconfiguration on Xilinx Virtex‐FPGAs for Organic Computing
JP2006303730A (ja) 半導体集積回路装置および半導体集積回路装置の設計装置
TWI644253B (zh) Data processing device and control method thereof
Chen et al. Fpga framework for agent systems using dynamic partial reconfiguration
Guevara et al. Open architecture for WSN based on runtime reconfigurable systems and the IEEE 1451
Chen et al. Dynamic partial reconfigurable fpga framework for agent systems
CN112394985B (zh) 执行方法、装置及相关产品
CN111209245B (zh) 数据处理装置、方法及相关产品
CN112396186B (zh) 执行方法、装置及相关产品
Glesner et al. Reconfigurable platforms for ubiquitous computing
Wijtvliet et al. Concept of the Blocks Architecture
Krasteva et al. Using partial reconfiguration for SoC design and implementation
Tunbunheng et al. A retargetable compiler based on graph representation for dynamically reconfigurable processor arrays
Portilla et al. Using Partial Reconfiguration for SoC Design and Implementation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190121

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190319

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191227

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200204

R150 Certificate of patent or registration of utility model

Ref document number: 6656217

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250