JP3893625B2 - 信号処理装置及び信号処理装置におけるプロセッサ間の接続を計画する方法 - Google Patents

信号処理装置及び信号処理装置におけるプロセッサ間の接続を計画する方法 Download PDF

Info

Publication number
JP3893625B2
JP3893625B2 JP52355499A JP52355499A JP3893625B2 JP 3893625 B2 JP3893625 B2 JP 3893625B2 JP 52355499 A JP52355499 A JP 52355499A JP 52355499 A JP52355499 A JP 52355499A JP 3893625 B2 JP3893625 B2 JP 3893625B2
Authority
JP
Japan
Prior art keywords
signal
input
signal processing
output terminal
time slot
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
JP52355499A
Other languages
English (en)
Other versions
JP2001508270A (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.)
Koninklijke Philips NV
Original Assignee
Philips Electronics NV
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 Philips Electronics NV filed Critical Philips Electronics NV
Publication of JP2001508270A publication Critical patent/JP2001508270A/ja
Application granted granted Critical
Publication of JP3893625B2 publication Critical patent/JP3893625B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Studio Circuits (AREA)
  • Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)

Description

技術分野
本発明は、請求項1の前置特徴部による信号処理装置、及びスイッチマトリクスを介してプロセッサの入力端子と出力端子との間の接続がなされるタイムスロットの割り付けを計画する方法に関する。
背景技術
このような信号処理装置は、米国特許第5103311号から既知である。この装置は、ビデオ信号処理タスクの種々の段階を真に同時並行的に実行する多数の処理要素を有している。一つの処理要素は、入力端子において信号ストリームの信号サンプルを入力し、これら信号サンプルを処理し、処理された信号ストリームの信号サンプルを出力端子において出力する。これらストリームはスイッチマトリクスを介して処理要素間で伝送されるが、該スイッチマトリクスは、各々が或る処理要素の入力端子と該処理要素の入力端子への信号ストリームの信号源の出力端子との間であるような、多数の接続を並列に確立する。上記信号源は他の処理要素であってもよいし、又は当該装置の入力端子であってもよい。
各処理要素は自身のプログラムを有している。処理要素のプログラムは、何の他の処理要素からスイッチマトリクスを介して信号ストリームのサンプルが入力されるかを決定する。
上記処理要素の多くが、幾つかの処理を時間インターリーブされた態様で実行することができる。これを支援するため、上記スイッチマトリクスによりなされる接続は、異なる信号源からの異なる信号ストリームのサンプルを入力するように規則的に切り換えられる。これらの切り換えも処理要素内でプログラムされている。この場合、なされる全ての接続は、処理の実行に充分に先立って、上記プログラムにおいて仲裁されている。このようにして、上記スイッチマトリクス及び処理要素の使用効率は、プログラミングの時点で最適化することができ、リアルタイム動作が保証され得る。
しかしながら、プログラムされた仲裁は、信号処理装置が信号ストリームの種々の組み合わせが異なる態様で(それらの幾つかは対話的に)扱われられなければならないようなマルチメディアアプリケーションを扱うのに必要とされる柔軟性に欠けるという欠点を有している。
1989年のACMオペレーティングシステムレビュー23(3)の第141〜151頁にA・ダム、J・ライジンガ、W・シュワブル及びH・コペッツにより掲載された“Marsのリアルタイムオペレーティングシステム”なる題名の論文は、プロセス制御用に設計された分散型のリアルタイムデータ処理システムを教示している。このシステムは、全ての入力端子及び出力端子が接続された単一バスを使用している。リアルタイム動作は、該バスを所定のタイムスロット内で厳しいリアルタイムメッセージの伝送に割り付けることにより保証されている。また、該バスは、要求に応じて、不使用タイムスロット内で厳しいリアルタイムメッセージ以外に割り付けられる。このことが、上記入力端子及び出力端子が、当該バスが割り付けられた場合に伝送用に利用することが可能となることを自動的に保証している。何故なら、バスの場合はスイッチマトリクスの場合とは対照的に、入力端子及び出力端子が、種々の連続した伝送に割り付けられるような単一情報チャンネル専用であるからである。
発明の開示
本発明の目的は、なかでも、処理要素及びスイッチマトリクスの使用の効率が最適化され、多数の信号ストリームに対してリアルタイム動作が保証され、それでいて信号ストリームの扱いにおける一層の柔軟性を可能にするような信号処理装置を提供することにある。
本発明による信号処理装置は、請求項1の特徴部分により特徴付けられる。本発明は一群の処理に対して固定した接続の割り付けを行うので、これら処理の効率を最適化することができると共に、リアルタイム動作が保証される。好ましくは、タイムスロットは周期的な繰り返しパターンで割り付けられるものとし、これは小さなメモリでプログラムすることができる。当該仲裁器は、関連する処理による実行時の要求に応じて、タイムスロットの持続期間の間に他の接続をなすこともできる。これらの接続は、接続が予め割り付けられている上記一群の処理によっては使用されない入力端子及び出力端子の間でなされる。使用されない入力端子及び出力端子は、例えば、これらの入力端子及び出力端子が予め割り付けられていないか、又は割り付けられた入力端子及び/又は出力端子がその時点で上記一群の処理によっては実際に使用されていないことを上記処理要素が示す故に発生する。
本発明による処理装置の一実施例が請求項2に記載されている。この実施例によれば、上記スイッチマトリクスは、2以上の信号値を伝送することができるが、全体のストリーム(又はビデオ)のフレームよりも大幅に少ないような期間にわたって入力端子と出力端子との間の接続を常に維持する。これは、当該装置による電力消費を減少させる。何故なら、上記スイッチマトリクスがより少ない頻度でしか切り換える必要がないからである。同時に、これは、上記処理要素の効率的な利用を保証する。何故なら、処理の間の柔軟な切り換えを可能にするからである。
本発明による処理装置の一実施例においては、タイムスロットの割り付けがプログラム可能となる。このように、使用者が本装置の異なる機能を必要とする場合は、当該装置により実行される上記一群の処理を変更することができ、新たな組の処理に対して最適であるような割り付けを、仲裁器により実施することができる。
本発明による処理装置の他の実施例においては、異なる処理を実行するために、処理要素に到来する異なるストリームに対して先入先出バッファが使用される。このようにして、割り付けの計画は上記異なる処理の実行のタイミングに無関係になすことが可能であるから、最適な計画を使用することができる。
請求項9は、タイムスロットの割り付けを、上記スイッチマトリクスの伝送容量を完全に利用することができるような態様で計画する方法を記載している。
【図面の簡単な説明】
本発明の上記及び他の有利な特徴を、以下の図面を用いて非限定的に説明する。
第1図は、信号処理装置を示す、
第2図は、タスクグラフを示す、
第3図は、周期的割り付けの一例を示す、
第4図は、処理要素を示す、
第5図は、割り付け計画アルゴリズムのフローチャートを示す、
第6図は、仲裁器を示す。
発明を実施するための最良の形態
第1図は信号処理装置を示す。該信号処理装置は、スイッチマトリクス12により相互接続された多数の処理要素10a-f(これらのうちの6個が示されている)を有している。伝送仲裁器14は、上記スイッチマトリクスによりなされる接続を選択するために、処理要素10a-fと該スイッチマトリクスとへの接続部(図示略)を有している。加えて、当該装置は、中央プロセッサ18と、上記処理要素10a-f、仲裁器14及び該中央プロセッサ18を接続する制御指向のバス16とを有している。
動作時において、当該信号処理装置は、例えば、多数のビデオ信号を同時に処理する。これらビデオ信号は連続したピクセル値のストリームとして実現される。処理要素10a-fは、例えば、外部入力ビデオ信号からの又はグラフィックス処理による入力ストリームのピクセル値を処理することにより導出される斯かるピクセル値のストリームを生成することができる。また、ピクセル値のストリームは処理要素10a-fに入力することもでき、該ストリームは当該処理要素10a-fにより実行される何らかの所定の処理に従って処理される。通常、処理された信号ストリームの連続するピクセル値の各々は、入力信号ストリームの連続するピクセル値の各々に又はピクセル値の連続するスライディングウィンドウに依存する。
処理要素10a-fにより実行される処理の典型的な例は、個々に、ビデオ信号ストリームの水平方向解像度の低減、ビデオ信号ストリームの垂直方向解像度の低減、フィルタ動作、MPEG復号等、即ちパイプラインの間には殆ど交差接続はないが、それら自身では入力されたビデオ信号と表示されるビデオ信号との間の完全な入出力関係をしばしば構成しないような粒状度のレベルでの処理、を含む。これら処理の殆どは、厳しいリアルタイム制約条件を満たす必要がある。何故なら、これらの処理は直接的に又は間接的に結果として、可視的な障害を避けるために時間内に表示されねばならない出力画像となるからである。テレテキスト画像の構築のような他の処理は、厳しいリアルタイム制約条件を満たす必要はないが、保証された平均速度で動作しなければならない。
第2図は、仮想の単純な信号処理タスクのタスクグラフを示す。該タスクグラフは、処理要素10a-fにより実行されるべき多数の処理“input”(2x)、T1〜T7及び“output”を記号的に表すためにノード20a-c、22a-c、24a-c、26を使用している。また、該タスクグラフは、これら処理の間の信号ストリームC1〜C6、A7、A8の伝送を表すために、ノード20a-c、22a-c、24a-c、26の間の接続21a-c、23a-c、25a-cを使用している。また、該タスクグラフは、共通の出力処理に集束する3つのパイプラインの処理T1〜T7を示している。斯かるタスクグラフにより実行される機能の一例は、例えば、重ねられたグラフィック画像を伴う、2つの異なるビデオ信号の同時的表示である。
複数の接続21a-c、23a-cは、信号ストリームC1〜C6の対応する伝送が厳しいリアルタイム制約条件を満たす必要があることを示すために実線で示されている。他の接続25a-cは、他の信号ストリームA7、A8に対しては厳しいリアルタイム制約条件を満たす必要がないことを示すために点線で示されている。これら信号ストリームにより必要とされる帯域幅は異なり得る。例えば、或るストリームC1の帯域幅は、該ストリームC1が高い解像度の画像を表す場合は、他のストリームC2〜C6の各々に関して個々に必要とされるものの2倍であり得る。
動作時には、種々の処理T1〜T7は処理要素10a-fにより実行される。処理要素10a-cの各々においては、数個の処理T1〜T7を時間インターリーブ態様で実行することができる。例えば、2つの処理T2、T3が第1処理要素10aにより実行され、他の処理T1、T4が他の処理要素10b,cにより実行されることもある。入力処理“input”は2つの別個の入力プロセッサ10d,e上で実行し、出力処理は別個の出力プロセッサ10f上で実行することができる。
数個の処理要素10a-fが1以上の処理を時間インターリーブ態様で実行することができるので、これら処理要素10a-fは、それらの入力端子で1以上の異なる処理要素10a-fからピクセル値を受信するか、又はそれらの出力端子から1以上の異なる処理要素10a-fへピクセル値を送信する必要がある。上記例においては、処理T2及びT3を実行する処理要素は、処理T1及び入力処理を各々実行する処理要素からピクセル値を受信する必要がある。また、処理T2及びT3を実行する処理要素は、出力処理要素及び処理要素T4等に対して出力する必要がある。
このことは、これら処理の間の信号ストリームC1〜C6の伝送がスイッチマトリクス12を介してなされる時間間隔に関して制約を課すことになる。何故なら、信号ストリームは或る処理要素10a-fの1つの入力端子に1以上の信号源から同時に到達することはできず、また、信号ストリームは或る処理要素10a-fの1つの出力端子から1以上の宛先に同時に送信することもできないからである。(伝送上への斯かる制約を避けるために、略全ての処理要素10a-fに、当該処理要素により時間インターリーブ態様で実行される全ての異なる処理に関して、スイッチマトリクス12に接続された別個の切り換え可能な入力部及びバッファを設ける必要があるであろう。しかしながら、別個の切り換え可能な入力部は、非常に少数であるが全ての処理が時間インターリーブ態様で実行されるならば、著しく大きな集積回路チップ面積を必要とすることが分かった。従って、このような制約を避けることは望ましいものではない。)
これらの制約の下での信号ストリームC1〜C6のリアルタイムな伝送を保証するために、スイッチマトリクス12の使用がタイムスロットに分割される。各タイムスロット内では、スイッチマトリクス12は入力端子と出力端子との間の或る組み合わせの接続をなす。この接続の組み合わせは、一つのタイムスロットから次のタイムスロットへと変化させることができる。好ましくは、各タイムスロットは多数の連続したピクセル値の伝送を可能にする。これはスイッチマトリクス12における電力消費を減少させる。何故なら、ビデオストリームにおいては、1つの信号ストリームの連続したピクセル値の間の方が、異なる信号ストリームのピクセル値の間よりも、少ない信号遷移しか必要とされない傾向にあるからである。一方、1以上の処理を同一の処理要素10a-f上で過度に大きなバッファを使用することなくリアルタイムで実行することができるように、各タイムスロットはビデオフレーム全体よりも遙かに少ない伝送を可能にする。64Mhzなるピクセル周波数(クロック周波数)の場合、タイムスロット当たり16ピクセル値が良い妥協点であることが分かった。
仲裁器14は、上記スイッチマトリクスが何の接続をなすかを選択する。処理T1〜T7の実行の前に、信号ストリームC1〜C6への接続の割付が、これら信号ストリームのリアルタイム伝送が保証されるような形で各タイムスロットに対して計画される。計画は、プログラムがコンパイルされる際に、即ち処理が実際に実行される前に、なすことができる。好ましくは、上記割付はビデオフレームを処理するのに要する合計時間間隔より大幅に短い繰り返し周期で周期的に繰り返されるようにする。各周期においては、多数のタイムスロットが各信号ストリームC1〜C6に対して、当該信号ストリームに必要とされる帯域幅(単位時間当たりのピクセル値)に比例して割り付けられる。
第3図は、このような周期的な割付のマトリクスにより表された一例を示している。該マトリクスの順次の行は周期内の順次のタイムスロットに対応している。一番左側の3つの列は処理要素10a-fの種々の入力に対応し、一番右側の4つの列は処理要素10a-fの種々の出力に対応している。該マトリクスにおいては、何の信号ストリームC1〜C6に対して各入力端子又は出力端子が各タイムスロットに割り付けられるかが示されている。例えば、第1タイムスロット(上側の行)においては第1入力端子は信号ストリームC1に割り付けられ、第2入力端子は信号ストリームC3に割り付けられている。また、第2出力端子は信号ストリームC3に割り付けられ、第3出力端子は信号ストリームC1に割り付けられている。第2、第3及び第4行は、第2、第3及び第4タイムスロットの各々において、何の信号ストリームC1〜C6に入力端子及び出力端子が割り付けられるかを示している。第5、第6、第7及び第8タイムスロットにおいても、入力端子及び出力端子は、該マトリクスの第1、第2、第3及び第4行に示されるのと同様に割り付けられ、等々である。このようにして、割付は4つのタイムスロットの周期で繰り返される。
入力端子及び出力端子が各周期における2つのタイムスロット内で第1信号ストリームC1に割り付けられ、他の信号ストリームC2〜C6に関しては1つのタイムスロット内で1つの入力端子と出力端子とが割り当てられていることが分かるであろう。これは、C1の帯域幅が他のストリームC2〜C6のものの2倍であるからである。
処理要素10a-fは、入力された信号値を使用する処理を、各周期内で平均して入力されたのと丁度同じくらい多くの信号値が処理されるように、実行する。しかしながら、実行は必ずしも伝送とロックステップにある必要はない。処理要素10a-fは、これを、信号ストリームに関して伝送される信号値をバッファリングすることにより達成することができる。同様にして、処理要素10a-fは、これら処理により発生された信号ストリームの信号値をバッファする。バッファには最大でM個の信号値が記憶される必要があり、ここで、Mは1周期内で、即ち割り付けが繰り返される前に伝送することが可能な信号値の数である。これら信号値の処理を開始する時点が注意深く選定される場合は、M/2の信号値に対する一層小さなバッファでさえ充分である。周期が長すぎない場合は、比較的小さなバッファで、既に、充分な信号値を常に記憶することができることが保証される。
第4図は、2つの入力端子と1つの出力端子とを備える処理要素の一例を示している。該処理要素は2つの入力端子を備えるプロセッサ40を有している。該処理要素は、プロセッサ40の各入力端子に入力FIFO(先入先出)ユニット42及び44を介して結合された2つの入力端子を有している。入力FIFOユニット42、44は、当該処理要素により実行される各処理に対して1つずつの多数の論理FIFOバッファ422、424を備えている。実際には、これらFIFOはFIFO態様でアドレス指定されるメモリとして構成することができ、上記論理FIFOは同メモリを共用することができる。デマルチプレクサ420は、前記スイッチマトリクスに結合された入力端子から入力される信号値を適切なFIFOバッファ422、424に指向させる。プロセッサ40は、当該処理要素の前記単一の出力端子に出力FIFOユニット46を介して結合された1つの出力端子を有している。上記出力FIFOユニットは、実行される各処理につき1つずつの多数の論理FIFOバッファ460、462を保持している。FIFOバッファ460、462の出力は、ルータ464を介して前記スイッチマトリクスに指向される。FIFOバッファ460、462は例えば別個のFIFOとしても構成することができ、又は異なるFIFOからの信号値用の1つのメモリと異なる論理FIFOバッファ用に使用されるメモリロケーションを追跡するための多数のポインタとにより構成することもできる。
プロセッサ40は、無状態処理ロジック部400(“無状態”:何れの時点における出力信号も1つの時点での入力信号のみに依存し、それ以上の入力又は出力信号には依存しない)と、当該処理要素によりインターリーブ態様で一緒に実行することができる各処理につき1つずつの多数の状態メモリ402、404とを有している。異なる処理の実行の間の切り換えは、上記無状態処理ロジックへ入力を供給する入力バッファ422、424と、上記状態メモリとを切り換えることにより達成される。このように、異なる処理の間の切り換えは、如何なる待ち状態を伴わずに実現することができる。各ストリームからの信号値は、通常、それらが到達する順に処理されるが、異なる処理の間の切り換えは異なるストリームに関する信号値の到達に正確に従う必要はない。即ち、異なるストリームからの信号値の処理は、到達順である必要はない。
入力端子及び出力端子の各タイムスロットにおけるリアルタイム処理T1〜T7の信号ストリームC1〜C6への割り付けは、リアルタイム仕様を満たすために前もって計画され、これはプログラムがコンパイルされる際又は処理が開始する前の実行時においてなすことができる。該リアルタイム仕様は、処理T1〜T7に関わる信号ストリームC1〜C6の所要の帯域幅として、例えば何らかの時間単位における当該処理に要するタイムスロットの数の形で表される。該計画は、全ての信号ストリームC1〜C6に対して、入力端子及び出力端子並びにスイッチマトリクス12の両方が信号ストリームC1〜C3を伝送するために各周期において充分な数のタイムスロットにわたって利用可能であることを保証するものでなければならない。
好ましくは、スイッチマトリクス12に接続される入力端子又は出力端子の数M(どちらか少ない方)と同じ数だけの接続を同時に設けることができるようなスイッチマトリクス12が使用される。もっと一般的には、該スイッチマトリクスは、単位時間当たりM個の入力端子へ又は出力端子から信号値を伝送するために、これらM個の入力端子又は出力端子の後又は前のプロセッサが単位時間当たりに処理することができるのと少なくとも同じくらい大きな帯域幅を備えなければならない。かくして、該スイッチマトリクスは上記割り付けに対して制限を課すことはなく、全ての信号ストリームC1〜C6に対して入力端子及び出力端子の両方が充分な数のタイムスロットにわたって利用可能であることのみが保証されなければならない。
時間単位当たりに利用可能なタイムスロットの数Kは、特定の信号ストリームC1〜C6に対して必要とされる入力端子及び出力端子の両方が同時に空きであるようなタイムスロットを常に見付けることができることを保証するために、充分に大きくなくてはならない。入力端子及び出力端子が一連の信号ストリームに対して増分的に割り付けられる場合は、上記数Kは、1つの入力端子に流れ込む全ての信号ストリームC1〜C6により実際に使用されるタイムスロットの数Nの2倍に−1を加えたもの以上でなければならない(K>=2N−1)ことが分かった。増分的計画においては、上記割付は先ず信号ストリームC1〜C6の部分集合に関して計画され、次いで、入力端子及び出力端子が上記部分集合以外の特定のストリームに対して、これら入力端子及び出力端子の両方が依然として空きであるようなタイムスロットで割り付けられる。この場合、上記特定の信号ストリームにより必要とされる入力端子及び出力端子の両方が、最悪の場合でも、上記K個のタイムスロットのうちの1つのタイムスロットで空きであることを保証するために、上記数Kに対する下限が必要である。上記最悪の場合とは、上記出力端子が、上記入力端子が他の信号ストリームC1〜C6に割り付けられる全ての(N−1)個のタイムスロットとは異なる(N−1)個のタイムスロットにおいて他の信号ストリームに割り付けられる場合である。
しかしながら、K=Nの場合でさえも、割り付け方法が実際に存在することが保証され得ることが分かった。斯かる割り付け方法を見付けるために、リアルタイム仕様を満たすため全てのタイムスロットKで信号ストリームを伝送しなければならないような全ての入力端子及び出力端子が含まれる異なる入力端子及び出力端子間の信号ストリームC1〜C6用の接続の組み合わせを捜すことから開始されるであろう。このような接続の組み合わせは常に存在するであろうことを証明することができる。この証明は、割り付け問題のグラフ理論の形での再定式化を使用する。各々が各入力端子又は出力端子に対応するノードを備えるグラフが使用される。各入力端子−出力端子対に対応するノードの間には、時間単位内で該タイムスロットが存在するのと同じ数だけのエッジが該グラフに含まれる。この段落の始めで述べた捜された接続の組み合わせは、該グラフのエッジの部分集合に対応し、該部分集合においては1以下のエッジが何れかのノードに接続され、該部分集合には当該グラフの最大数のエッジに接続された全てのノードが接続される。1934年にロンドン数学協会の協会誌第10巻の第26〜30頁に公表されたP・ホールによる“部分集合の表現について”なる題名の論文に述べられているグラフ理論からの定理は、常に上記のような部分集合が存在することを示している。
第5図は、処理要素10a-fの入力端子及び出力端子の異なるタイムスロットでの異なる信号ストリームへの割付を計画するアルゴリズムのフローチャートを示している。第1ステップ50において、タイムスロットカウントK1がKに初期化される。K個のタイムスロットにおいて何れかのストリームC1〜C6により接続が必要とされる入力端子−出力端子対のリストが、各タイムスロットに対して1つの対を含むように準備される。第2ステップ52において、該リストが空であるかが判定され、もしそうなら、該計画は終了され、もしそうでないなら、当該アルゴリズムは第3ステップ54に進む。第3ステップ54において、当該アルゴリズムは信号ストリームC1〜C6に関する入力端子−出力端子対のリストの第1部分集合を検索する。該検索は或る条件を満たす第1部分集合に限定される。該第1部分集合の対の全てにおいて、各入力端子及び各出力端子は1回のみ発生することができ、該リスト上の対のK1において発生する全ての入力端子及び出力端子は該第1部分集合に含まれなければならない。前述した証明は、このような第1部分集合が、例えば全ての可能性のある部分集合の全数検索を使用することにより、又は1973年のSIAM J.Compt.第2巻、第4号のP・ホールによる論文、並びにJ・E・ホプクロフト及びR・M・カープによる“2部グラフにおける最大マッチング用n^(5/2)アルゴリズム”なる題名の論文に記載されているようなアルゴリズムをカバーする多項式時間グラフを用いることにより見付けることができることを保証している。該第1部分集合は、各時間単位における第1タイムスロットにおいてなされるであろう接続に対応する。
第4ステップ56においては、該アルゴリズムは上記第1部分集合の対を上記リストから削除し、K1をデクリメントする。その後、該アルゴリズムは第2ステップ52からを繰り返す。各繰り返しにおいて、第3ステップは他のタイムスロットに対する割付を生成する。K回の繰り返しの後には、上記リストには更なる接続は残存していないであろう。
このアルゴリズムは、仲裁器14により実施された場合、スイッチマトリクス12に接続される入力端子及び出力端子が厳しいリアルタイム制約条件を満たすことができるよう充分な数のタイムスロット内で種々のストリームに割り付けられるであろうことを保証するような割り付け計画を作成する。厳しいリアルタイム制約条件を満たさねばならないストリーム用には使用されない残りのタイムスロットにおいては、厳しいリアルタイム制約条件を満たす必要がない他のストリームを伝送することができる。仲裁器14は、これら残りのタイムスロットを処理要素10a-fからの要求に応じて割り付ける。処理要素は、斯様な“他の”ストリームに関する信号値がある場合に要求を送出し、仲裁器14は、該“他の”ストリームの伝送に必要とされる入力端子及び出力端子が、例えば、該入力端子及び出力端子が割り付けられていない又は割り付けられたタイムスロットが使用されていない等の理由で、タイムスロット内で使用されていない場合は、このような要求を受諾する。
K=Nが常に可能であることを保証するために、上記割付は、プロセッサへの信号値の入力と該プロセッサからの処理された信号値の出力との間の時間差に拘わらず計画される。また、2以上の入力ストリームを伴う処理の場合は、異なる入力ストリームに関する割付の相対タイミングには配慮は払われない。非周期的な要求に対するタイムスロットの割付は、上記時間差が可変でさえあり得ることを意味する。このように、入力と出力との間の時間差に対して、周期的に繰り返す割り付けパターンを使用することから生ずるものを越えて、制限を課すことは望ましくない。
前記FIFOバッファ422、424、460、462は、これらの条件下で上記処理を実行することができることを保証する。例えば、プロセッサは、該プロセッサが或る処理からの出力に対してタイムスロットが割り付けられたことを検出した場合は、該処理に戻ることができる。この場合、該プロセッサにより実行される別の処理に入力される信号値は、必ずしも、これら信号値が到達したのと同じ順序で実行される必要はない。異なる信号ストリームからの信号値をFIFOバッファ422、424において異なる量の時間だけバッファリングすることにより、これらの信号値を、タイムスロットが出力用に利用することができるようになるまで、待たせることができる。この場合、FIFOバッファは、通常、当該処理要素の出力端子においては必要とされない。(この場合、FIFOバッファは、単一の処理から複数の出力ストリームを生成することができるプロセッサ、又は例えば可変長復号又はサブサンプリング用のように入力信号値と出力信号値との間に1対1の対応がない場合のみにおいて、必要となる。)
第6図は、上記のような割付を実行する仲裁器の一実施例を示す。この仲裁器は、厳しいリアルタイムサービス要求入力端子を備えるロード回路68を有している。該ロード回路の出力端子は割付メモリ60に結合されている。該割付メモリ60は、当該仲裁器の出力端子67a-dに各合成回路66a-dを介して結合された出力端子を有している。また、該割付メモリ60はタイムスロットカウンタ62に結合された入力端子を有している。また、該タイムスロットカウンタ62のカウント入力端子には、分周器63を介して信号値クロック入力が供給される。当該仲裁器は非リアルタイム仲裁器64を有し、該非リアルタイム仲裁器は伝送要求用のインターフェース65と、上記合成回路66a-dに結合された出力端子とを備えている。
動作時には、割付メモリ60は、スイッチマトリクス12の入力端子及び出力端子の異なるタイムスロットでの各処理に対する割り付けを決定する情報を記憶する。該割付メモリ60は各タイムスロットに対して各々ロケーションを有している。各ロケーションの内容はスイッチマトリクス12に接続された各入力端子及び各出力端子に対するエントリを有している。各エントリは、当該入力端子に接続された何の論理FIFOへ、又は当該出力端子に接続された何の論理FIFOから信号値が渡されねばならないか、及び該入力端子又は出力端子がスイッチマトリクス内でどの様に内部的に接続されるべきかを特定する。
割付メモリ60の各ロケーションの内容は順次のタイムスロットで出力される。この目的のため、クロック信号が分周器63に供給され、該分周器63はQクロックサイクル毎にタイムスロットカウンタ62にカウントパルスを供給する。各クロックサイクルは、スイッチマトリクス12を介して一群の信号値の同時伝送を指示する。タイムスロットは、Q個の斯かる伝送を含む(例えば、Q=16)。タイムスロットカウンタ62のカウント値はタイムスロットサイクル番号を表し、割付メモリ60用のアドレスとして使用される。これに応答して、割付メモリ60は当該タイムスロット用のロケーションの内容を出力する。この内容の種々のエントリが前記機能要素10a-fとスイッチマトリクス12とに渡され、これにより適切な論理FIFO及び適切な接続を各々選択する。
ロード回路68は当該装置に関してなされた割り付け計画を表す情報を含んでいる。この計画は、入力端子及び出力端子を異なるタイムスロットで信号ストリームに割り付ける。該ロード回路68は厳しいリアルタイムサービス要求入力端子69を有し、該入力端子を介して、計画された信号ストリームの1つが開始しなければならないことが通知される。これに応じて、ロード回路68は、割付メモリ60における入力端子及び出力端子が当該信号ストリームに割り付けられるロケーションに情報をロードする。この情報は、上記スイッチマトリクス及び論理FIFOに上記接続をさせるように選択される。上記ローディングは、例えば、各ストリームに対し各々のプログラムをロード回路68に含ませ、特定のストリームに対するロードプログラムを、該特定のストリームが開始することを通知された場合に実行することにより実現することができる。
信号ストリームが終了した場合は、これがロード回路68にも通知され、これに応じて該ロード回路は当該ストリームのために割付メモリ60でなされたエントリをリセットする。このように、信号ストリームが活性状態でない場合は、該信号ストリームに割り付けられたタイムスロット内では、割り付けられた入力端子及び出力端子用の可能化信号が割付メモリ60からスイッチマトリクス12に渡されることはない。勿論、入力端子及び出力端子が全く割り付けられていないタイムスロットにおいても、これら入力端子及び出力端子用の可能化信号が割付メモリ60からスイッチマトリクス12に渡されることはない。
非リアルタイム仲裁器64は、厳しいリアルタイム制約条件を満たす必要がない信号ストリームの伝送のために入力端子−出力端子対の使用に関する他の要求を入力する。該非リアルタイム仲裁器64は、これら他の要求の間の競合を従来の方法で仲裁すると共に、上記スイッチマトリクス及び機能要素に接続された各入力端子及び出力端子用の制御信号を出力して、何の入力端子及び出力端子が接続されるべきか及び何の論理FIFOが使用されるべきかを通知する。これらの制御信号は合成回路66a-dに供給される。該合成回路は、割付メモリ60から可能化信号を入力しない場合においてのみ、これら制御信号をスイッチマトリクス12及び処理要素10a-fに受け渡す。それ以外の場合、合成回路66a-dは割付メモリ60からの信号を通過させる。これにより、合成回路66a-dが、非リアルタイム信号ストリームにより必要とされる入力端子−出力端子対の1個のみの入力端子又は出力端子に関して制御信号を通過させる可能性が残される。これは検出され、スイッチマトリクスにより信号伝送が抑圧される。要求が許諾されたか否かは、これら非リアルタイム要求の信号源に返信される。
このように、割付メモリ60により決定される入力端子及び出力端子の割り付けは、常に、非リアルタイム要求に対する割り付けに優先する。これら非リアルタイム要求は、入力端子及び出力端子が厳しいリアルタイム信号ストリームのために使用されないタイムスロットにおいて、これら入力端子及び出力端子が割り付けられていないか、又は厳しいリアルタイムストリームが活動状態でないという理由により、許諾される。
前記中央プロセッサ18はユーザインターフェース(図示略)に接続されている。使用者は、該ユーザインターフェースを使用して、当該装置を含む機器により実行されるべき機能又は機能の組み合わせを選択することができる。当該機器が特定の機能又は機能の組み合わせを実行する場合は、特定の状態にあると言われる。このように、使用者は当該機器を多数の異なる状態の間で切り換えることができる。各状態は、厳しいリアルタイム制約条件の下で同時に実行されねばならない処理の組み合わせに対応する。当該装置を最適に利用するために、好ましくは、各状態に対して別個の割り付け計画を行う。該割り付け計画は処理要素10a-fの何の入力端子及び出力端子が何のタイムスロットで信号ストリームに割り付けられるかを特定する。原理的に、この割り付け計画は、例えば中央プロセッサ18により、新たな状態が発生する毎に計画することもできるが、計画は、当該装置が使用される機器の各々の可能性のある状態に関して前もってなされ、当該装置に記憶することもできる。使用者が当該機器を特定の状態に切り換える場合は、該状態用の割り付け計画が取り出され、中央プロセッサ18により仲裁器14のロード回路68にロードされる。
状態間の切り換えも、内部事象により起動することができる。例えば、使用者が第1状態と第2状態との間の切り換えを起動した場合は、該切り換えが起動される前に開始された幾つかの画像の処理を完了させ、これら幾つかの画像の処理が完了した後でのみ別の画像の処理を開始させる必要があるであろう。この場合、多数の中間の状態を規定し、これら中間状態を経て当該機器は前記第1状態から第2状態へ移行する。各中間状態は、自身の処理の組み合わせと、仲裁器14にロードされる自身の割り付け計画を持つ。上記第1状態、中間状態及び第2状態の間の移行は、処理の完了等の内部事象により起動される。この一連の状態の移行は、例えば、前記ユーザインターフェースから入力される信号により可能化される。
処理要素10a-fによる処理の実行は、データフロー原理に基づいて開始される。処理要素10a-fの中には、ビデオ信号のような外部入力を受信する入力プロセッサが存在する。これらの入力プロセッサは、信号ストリームを発生すると共に、これら信号ストリームをスイッチマトリクス12を介して他の処理要素10a-fに供給するようにプログラムされている。
入力プロセッサが信号ストリームを発生するようにプログラムされている場合は、該入力プロセッサは、信号ストリームを開始するようにプログラムされているような、ビデオフレームの開始等の外部事象を検出する。これに応じて、該入力プロセッサは厳しいリアルタイム要求を仲裁器14に送って、当該入力プロセッサの出力端子と、当該信号ストリーム用の他の処理要素10a-fの対応する入力端子との割り付けを得る。仲裁器14が当該信号ストリームに対して接続が利用できると通知すると、該入力プロセッサは先ず当該信号ストリームを識別するヘッダを送出し、次いで該信号ストリームの信号値を送出する。該ヘッダ及び後続する信号値は多数のタイムスロットにわたり分散され、これらタイムスロットにおいて仲裁器14は該入力端子及び出力端子を当該信号ストリームに割り付ける。他のタイムスロット内でインターリーブされて、他の信号ストリームが該入力端子及び出力端子を通過することができる。上記出力端子が利用できない場合は、当該入力プロセッサは信号値をFIFOバッファ内にバッファする。事前に計画される割り付けは、当該入力プロセッサ内でバッファのオーバーフローが生じないように充分なタイムスロットが割り付けられることを保証する。最終的に、例えば当該ビデオフレームが完了した場合に、当該入力プロセッサは仲裁器14に対し、上記入力端子及び出力端子が最早割り付けられる必要がないことを通知する。
上記入力プロセッサから信号ストリームを入力した処理要素10a-fは、先ず、前記ヘッダから何の信号ストリームが開始したかを読み取る。これに応答して、処理要素10a-fは該信号ストリームを処理する処理を開始する。処理要素10a-fは、これを、例えば信号ストリームと処理との間の対応付けの記憶されたテーブルから決定することができる。開始された後、当該処理は処理された信号ストリームを発生するが、このストリームは該処理された信号ストリームの信号値が後続する新たなヘッダを含んでいる。これらの信号値(もし必要なら、及び上記ヘッダ)は論理FIFOバッファに入力される。前記入力プロセッサと同様に、当該処理要素10a-fは仲裁器14からの当該処理された信号ストリーム用の入力端子及び出力端子の割り付けを要求し、仲裁器14が或るタイムスロットにおいて入力端子及び出力端子が利用可能であることを通知すると上記ヘッダ及び信号値を送出する。前記入力信号ストリームが終了した後、当該処理要素10a-fは処理された信号ストリームも終了させ、上記仲裁器に対して、入力端子及び出力端子が最早割り付けられる必要はないことを通知する。
このように、入力プロセッサを除く各処理要素10a-fは、信号ストリームの到来により起動される。上記データフロー原理の更に詳細な説明は本出願の発明者と同じ発明者による同時継続中の出願に示されており、データフロー機構を記載した該同時継続中出願の一部を本明細書に参照文献として組み入れるものとする。

Claims (9)

  1. 信号処理装置であって、
    − 複数の処理要素と、
    − 前記複数の処理要素への及びこれら処理要素からの入力端子及び出力端子と、
    − 前記入力端子と前記出力端子との間に結合され、前記処理要素上で並列に実行する一群の処理の間での信号ストリームの伝送のために前記入力端子と前記出力端子との間で2以上の選択可能な接続を同時になすのに適したスイッチマトリクスと、
    − 前記スイッチマトリクスによりなされる前記接続を選択する仲裁器であって、該仲裁器は前記信号ストリームの所定の部分を伝送するために、互いに接続されるべき入力端子と出力端子との各割り付けを連続するタイムスロットの各々においてなし、該仲裁器は前記一群の処理の間での信号ストリームの前記伝送のため前記各割り付けを複数のタイムスロットにわたって予め固定するような仲裁器と、
    を有するような信号処理装置において、
    前記仲裁器は、前記複数のタイムスロットの間における他の処理の間での他の伝送のために特定の入力端子と出力端子との間の他の接続をなすための要求を入力すると共に、前記特定の入力端子及び出力端子が前記割り付けの予め固定された信号ストリームの伝送用の前記一群の処理によっては使用されないタイムスロットにおいて前記他の接続の実行を選択するよう構成されていることを特徴とする信号処理装置。
  2. 請求項1に記載の信号処理装置において、前記部分の各々がタイムスロットにおいて入力端子と出力端子との間で伝送される信号ストリームの連続した少なくとも2つのサンプルを有していることを特徴とする信号処理装置。
  3. 請求項1に記載の信号処理装置において、前記仲裁器は前記の各割り付けを、これら割り付けが周期的サイクル内で繰り返されるように固定することを特徴とする信号処理装置。
  4. 請求項3に記載の信号処理装置において、前記周期的サイクル内で各信号ストリームに関して割り付けられるタイムスロットの各数が、これら各信号ストリームの帯域幅に従って相違していることを特徴とする信号処理装置。
  5. 請求項1に記載の信号処理装置において、前記仲裁器は、予め固定されている前記各割り付けの組み合わせを、機器の動作中に並列に実行する前記処理の組み合わせが変化する際に、変化させるように動的に再プログラム可能となっていることを特徴とする信号処理装置。
  6. 請求項5に記載の信号処理装置において、少なくとも1つの処理要素は、各々が少なくとも該1つの処理要素により実行される処理に入力される各ストリームからの連続した信号サンプルを入力するような複数のFIFOバッファを保持するように構成され、各処理の実行が、当該処理用の信号サンプルが前記スイッチマトリクスを介して伝送されるタイムスロットから独立とされることを特徴とする信号処理装置。
  7. 請求項6に記載の信号処理装置において、前記少なくとも1つの処理要素は、各々が各処理の処理状態を記憶する複数の状態メモリを有し、該処理要素は前記各処理を前記状態メモリ及び前記FIFOバッファを切り換えることにより切り換えることを特徴とする信号処理装置。
  8. 請求項7に記載の信号処理装置において、前記少なくとも1つの処理要素は、割り付けが前記スイッチマトリクスを介しての特定の処理の出力用に供される場合に、各タイムスロットにおいて該特定の処理に切り換えることを特徴とする信号処理装置。
  9. 同時並行的な処理を実行する処理要素の入力端子と出力端子とがスイッチマトリクスを介して相互に接続されるようなタイムスロットの割り付けを計画する方法において、
    − タイムスロットの基本周期からの各タイムスロットに対して計画されるべき入力端子−出力端子接続のリストを編集するステップと、
    − 前記リストから一群の接続を、各入力端子及び各出力端子が該群内の接続の中で多くても1度だけ発生し、特定の入力端子又は出力端子が前記基本周期内で前記リスト上の接続の中で発生する如何なる他の入力端子又は出力端子よりも少なくはない数のタイムスロットにおいて接続されなければならない場合は、該特定の入力端子又は出力端子が前記一群の接続内に含まれるように、検索するステップと、
    − 特定のタイムスロットにおける前記割り付けを、前記群内の全ての入力端子−出力端子接続が該タイムスロット内で発生するように設定するステップと、
    − 前記検索するステップと前記設定するステップとを、前記特定のタイムスロット外で計画されたままである前記接続に対して繰り返すステップと、
    を有していることを特徴とするタイムスロットの割り付けを計画する方法。
JP52355499A 1997-10-21 1998-10-08 信号処理装置及び信号処理装置におけるプロセッサ間の接続を計画する方法 Expired - Fee Related JP3893625B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP97203272 1997-10-21
EP97203272.6 1997-10-21
PCT/IB1998/001564 WO1999021080A2 (en) 1997-10-21 1998-10-08 Signal processing device and method of planning connections between processors in a signal processing device

Publications (2)

Publication Number Publication Date
JP2001508270A JP2001508270A (ja) 2001-06-19
JP3893625B2 true JP3893625B2 (ja) 2007-03-14

Family

ID=8228847

Family Applications (1)

Application Number Title Priority Date Filing Date
JP52355499A Expired - Fee Related JP3893625B2 (ja) 1997-10-21 1998-10-08 信号処理装置及び信号処理装置におけるプロセッサ間の接続を計画する方法

Country Status (5)

Country Link
US (1) US6400410B1 (ja)
EP (1) EP0950225B1 (ja)
JP (1) JP3893625B2 (ja)
DE (1) DE69833122T2 (ja)
WO (1) WO1999021080A2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594718B1 (en) * 2000-04-29 2003-07-15 Hewlett-Packard Development Company, L.P. Arbitration scheme for equitable distribution of bandwidth for agents with different bandwidth requirements
US7072353B2 (en) * 2000-06-15 2006-07-04 At&T Corp. Flexible bandwidth allocation in high-capacity grooming switches
DE10151938A1 (de) * 2001-10-22 2003-05-08 Siemens Ag System und Verfahren zur dynamischen Darstellung des Ist-Zustandes eines Auftrages in Relation zu einem Zielzustand
US20090300626A1 (en) * 2008-05-29 2009-12-03 Honeywell International, Inc Scheduling for Computing Systems With Multiple Levels of Determinism
JP2011223273A (ja) * 2010-04-08 2011-11-04 Sony Corp 画像処理装置、画像処理方法および画像処理システム
US20160127061A1 (en) * 2014-11-05 2016-05-05 Qualcomm Incorporated Broadcast interface

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4521874A (en) * 1982-09-28 1985-06-04 Trw Inc. Random access memory device
JPS61214694A (ja) * 1985-03-18 1986-09-24 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション データ伝送のスイッチング装置
NL8800053A (nl) * 1988-01-11 1989-08-01 Philips Nv Videoprocessorsysteem, alsmede afbeeldingssysteem en beeldopslagsysteem, voorzien van een dergelijk videoprocessorsysteem.
NL8800071A (nl) * 1988-01-13 1989-08-01 Philips Nv Dataprocessorsysteem en videoprocessorsysteem, voorzien van een dergelijk dataprocessorsysteem.
US5450557A (en) * 1989-11-07 1995-09-12 Loral Aerospace Corp. Single-chip self-configurable parallel processor
US5121502A (en) * 1989-12-20 1992-06-09 Hewlett-Packard Company System for selectively communicating instructions from memory locations simultaneously or from the same memory locations sequentially to plurality of processing
CA2073516A1 (en) * 1991-11-27 1993-05-28 Peter Michael Kogge Dynamic multi-mode parallel processor array architecture computer system
JPH06314264A (ja) * 1993-05-06 1994-11-08 Nec Corp セルフ・ルーティング・クロスバー・スイッチ
WO1994027216A1 (en) * 1993-05-14 1994-11-24 Massachusetts Institute Of Technology Multiprocessor coupling system with integrated compile and run time scheduling for parallelism
US5497373A (en) * 1994-03-22 1996-03-05 Ericsson Messaging Systems Inc. Multi-media interface
US6020931A (en) * 1996-04-25 2000-02-01 George S. Sheng Video composition and position system and media signal communication system

Also Published As

Publication number Publication date
DE69833122T2 (de) 2006-08-24
WO1999021080A2 (en) 1999-04-29
EP0950225B1 (en) 2006-01-04
DE69833122D1 (de) 2006-03-30
US6400410B1 (en) 2002-06-04
JP2001508270A (ja) 2001-06-19
EP0950225A2 (en) 1999-10-20
WO1999021080A3 (en) 1999-08-05

Similar Documents

Publication Publication Date Title
US4604743A (en) Bus structure for an image processor
US6138200A (en) System for allocating bus bandwidth by assigning priority for each bus duration time slot to application using bus frame and bus duration
US5566177A (en) Priority-based arbitrator on a token-based communication medium
US6119188A (en) Priority allocation in a bus interconnected discrete and/or integrated digital multi-module system
US5371893A (en) Look-ahead priority arbitration system and method
US7020161B1 (en) Prescheduling arbitrated resources
US4521874A (en) Random access memory device
KR0155368B1 (ko) 램을 기초로 하는 이벤트 계수 장치 및 그 계수 방법
EP1439467B1 (en) System and method for allocating a plurality of sources to a plurality of channels
JP4090883B2 (ja) 異なるリソースアクセス方式を有するシステム統合エージェント
JP3893625B2 (ja) 信号処理装置及び信号処理装置におけるプロセッサ間の接続を計画する方法
JPS6242228A (ja) 表示情報処理システム
US6415367B1 (en) Apparatus for reducing asynchronous service latency in a time slot-based memory arbitration scheme
JP2001216279A (ja) リアルタイム・システム用時分割多重メモリーを用いた、複数のプロセッサーのインターフェース及び、同期化及びアービトレーション方法
US6363461B1 (en) Apparatus for memory resource arbitration based on dedicated time slot allocation
EP0704807B1 (en) Programmable arbitrating apparatus
US6412049B1 (en) Method for minimizing CPU memory latency while transferring streaming data
US5692136A (en) Multi-processor system including priority arbitrator for arbitrating request issued from processors
JP2013196509A (ja) 情報処理装置及びその制御方法
EP0877985A1 (en) Signal processing device, using more than one processing element
US6847650B1 (en) System and method for utilizing a memory device to support isochronous processes
JPH0287745A (ja) セル競合制御回路
JP2004355117A (ja) バス制御システム及びバス制御方法
JPH09149043A (ja) 競合多重装置
JP2002314591A (ja) セル読出スケジューリング装置および方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060404

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060628

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060814

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060922

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061204

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20061204

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

Free format text: PAYMENT UNTIL: 20091222

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20091222

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees