JP6629640B2 - コマンド制御装置、コマンド制御方法、及びコマンド制御プログラム - Google Patents

コマンド制御装置、コマンド制御方法、及びコマンド制御プログラム Download PDF

Info

Publication number
JP6629640B2
JP6629640B2 JP2016043552A JP2016043552A JP6629640B2 JP 6629640 B2 JP6629640 B2 JP 6629640B2 JP 2016043552 A JP2016043552 A JP 2016043552A JP 2016043552 A JP2016043552 A JP 2016043552A JP 6629640 B2 JP6629640 B2 JP 6629640B2
Authority
JP
Japan
Prior art keywords
signal
command
buffers
state machine
intermediate processing
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.)
Active
Application number
JP2016043552A
Other languages
English (en)
Other versions
JP2017161996A (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.)
NEC Platforms Ltd
Original Assignee
NEC Platforms 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 NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2016043552A priority Critical patent/JP6629640B2/ja
Publication of JP2017161996A publication Critical patent/JP2017161996A/ja
Application granted granted Critical
Publication of JP6629640B2 publication Critical patent/JP6629640B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Memory System (AREA)

Description

本発明は、コマンド制御装置、コマンド制御方法、及びコマンド制御プログラムに関する。特に、通信システムで用いられるコマンド制御装置、コマンド制御方法、及びコマンド制御プログラムに関する。
マルチメディア用の多様なコンテンツの増加に伴い、単一の装置あるいはシステムで達成できる性能を超える性能レベルが要求されるアプリケーションが増加しており、このようなアプリケーションの多くは、並列処理を用いている。該並列処理のために、複数のアプリケーションモジュールを用いる例として、特許文献1は、アプリケーションモジュールの各々に、メモリと、メモリとメモリバスとの間のデータ転送及びメモリの使用容量を規定するメモリ制御部と、メモリバスに対するコマンドを保持するコマンドレジスタと、当該コマンドレジスタに保持可能なコマンド数を規定するメモリバスコマンド制御部とを含むことにより、メモリバスへのアクセス頻度を調整可能とするデータ転送装置を開示している。
特開2009−003893号公報
しかし、複数の信号受信チャンネルを有するシステムにおいては、1つのチャンネルに受信したコマンド信号を処理部が処理している間に、他のチャンネルに受信したコマンド信号は破棄される。従って、処理部が処理しているコマンド信号の処理の終了を待たなければ、次の受信を実施することができなかった。
また、複数の受信チャンネルで同時刻に複数のコマンド信号を受信した場合、最も早い時刻に処理部が受信したコマンド信号のみが処理され、処理部が遅れて受信した信号は破棄され、処理されることはなかった。
この点、特許文献1に係る発明は、上記のように、あくまでメモリバスへのアクセス頻度を調整するものであり、メモリバスに対して同時に発行される複数のコマンド信号の破棄自体を減少させるものではなかった。
そこで本発明は、複数の受信チャンネルで並行に受信したコマンド信号を順次処理することが可能なコマンド制御装置、コマンド制御方法、及びコマンド制御プログラムを提供することを目的とする。
本発明の第1の観点によれば、通信システムで使用されるコマンド制御装置であって、複数の通信チャンネルの各々からコマンド信号を受信し、該コマンド信号の保持とビット検出をし、検出結果が正常であれば該コマンド信号を、前記検出結果が異常であればLOW信号を、中間処理コマンド信号として出力する複数のバッファと、前記複数のバッファが出力する複数の中間処理コマンド信号を受信し、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を順次選択して、コマンド処理信号として出力するステートマシンとを備えることを特徴とするコマンド制御装置が提供される。
本発明の第2の観点によれば、通信システムで使用されるコマンド制御方法であって、複数のバッファが、複数の通信チャンネルの各々からコマンド信号を受信し、該コマンド信号の保持とビット検出をし、検出結果が正常であれば該コマンド信号を、前記検出結果が異常であればLOW信号を、中間処理コマンド信号として出力し、ステートマシンが、前記複数のバッファが出力する複数の中間処理コマンド信号を受信し、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を順次選択して、コマンド処理信号として出力することを特徴とするコマンド制御方法が提供される。
本発明の第3の観点によれば、通信システムで使用されるコマンド制御方法をコンピュータに実行させるためのコマンド制御プログラムであって、前記コマンド制御方法は、複数のバッファが、複数の通信チャンネルの各々からコマンド信号を受信し、該コマンド信号の保持とビット検出をし、検出結果が正常であれば該コマンド信号を、前記検出結果が異常であればLOW信号を、中間処理コマンド信号として出力し、ステートマシンが、前記複数のバッファが出力する複数の中間処理コマンド信号を受信し、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を順次選択して、コマンド処理信号として出力することを特徴とするコマンド制御プログラムが提供される。
本発明によれば、複数のコマンド信号を処理する順序に関し、優先順位を決める機能を有することで、複数チャンネルにおいてコマンド信号を同時に受信した場合に、所定の処理順序に基づいて処理することが可能となる。
本発明の実施形態によるコマンド制御装置の構成例を示す図である。 図1に記載のバッファの構成例を示す図である。 図1に記載のステートマシンの構成例を示す図である。 図3のステートマシンで用いられる状態遷移図の例を示す図である。 図3のステートマシンで用いられる状態遷移表の例を示す図である。 図3のステートマシンで用いられる状態遷移表の例を示す図である。 図3のステートマシンで用いられる状態遷移表の例を示す図である。 図3のステートマシンで用いられる状態遷移表の例を示す図である。 図3のステートマシンを構成する回路の例を示す図である。
(構成の説明)
以下、図1乃至6を参照して本発明に係るコマンド制御装置について詳説する。
図1が示すのは、本発明に係るコマンド制御装置の構成例である。図1を参照すると、本発明の実施形態は、バッファ200−1乃至200−4、および、ステートマシン300を含む。なお、図1では、1つのステートマシン300に対し、4つのバッファ200−1乃至200−4を接続する構成としたが、本発明の実施の形態はこれには限定されず、任意の複数のバッファ200を含むことが可能である。
バッファ200−1は、コマンド信号Aを受信するコマンド信号受信経路(チャンネルA)と、クロック信号を受信する経路と、後述のようにステートマシン300から出力されるリセット信号Aを受信する経路とを有する。また、ステートマシン300に対して、中間処理コマンド信号(A)を送信する経路、及び、フラグ信号T(A)を送信する経路を有する。更に、当該バッファ200−1を初期化するリセット信号R(A)を出力し、当該バッファ200−1に入力する経路を有する。
同様に、バッファ200−2は、コマンド信号Bを受信するコマンド信号受信経路(チャンネルB)と、クロック信号を受信する経路と、後述のようにステートマシン300から出力されるリセット信号Bを入力する経路を有する。また、ステートマシン300に対して、中間処理コマンド信号(B)を送信する経路、及び、フラグ信号T(B)を送信する経路を有する。更に、当該バッファ200−2を初期化するリセット信号R(B)を出力し、当該バッファ200−2に入力する経路を有する。以下、バッファ200−3、及びバッファ200−4についても同様である。
バッファ200−1乃至200−4の役割は、受信したコマンド信号のビット検出(ビット数のカウント)、コマンド信号の保持、クロック信号に同期したタイミング信号の生成、コマンド信号の検出、リセット信号の生成等である。
ステートマシン300は、バッファ200−1乃至200−4の各バッファから出力される、中間処理コマンド信号(A)乃至(D)を受信する経路を4経路、フラグ信号T(A)乃至T(D)を受信する経路を4経路、外部からクロック信号を受信する経路を有する。また、ステートマシン300は、コマンド処理信号を出力する経路を有する。更に、ステートマシン300は、当該ステートマシンを初期化するためのリセット信号Sを出力し、当該ステートマシン300に入力する経路と、バッファ200−1乃至200−4の各々を初期化するリセット信号A乃至Dを出力する経路を有する。
ステートマシン300の役割は、バッファ200−1乃至200−4までの各バッファから受信する4つの中間処理コマンド信号(A)乃至(D)を処理する順序の決定、コマンド処理信号の出力、ステートマシン300自身を初期化するためのリセット信号の生成、及びバッファ200−1乃至200−4を初期化するためのリセット信号の生成等である。
図2が示すのは、上記のバッファ200の構成例である。バッファ200は、カウンタ210、シフトレジスタ220、ディテクタ230、及びタイミング240を含む。
カウンタ210は、コマンド信号(バッファ200がバッファ200−1の場合は、コマンド信号A)を入力する経路、クロック信号を入力する経路、リセット信号を入力する経路を有する。ここで「リセット信号」とは、上記の図1を用いて説明したステートマシン300から受信するリセット信号Aと、後述のディテクタ230から受信するリセット信号R(A)とが合流したものである。また、カウンタ210は、シフトレジスタ220へカウンタ信号P(バッファ200がバッファ200−1の場合は、カウンタ信号P(A))を出力する経路、及びタイミング240へカウンタ信号Q(バッファ200がバッファ200−1の場合は、カウンタ信号Q(A))を出力する経路を有する。
シフトレジスタ220は、カウンタ210から受信するカウンタ信号Pを入力する経路、クロック信号を入力する経路、リセット信号を入力する経路を有する。また、ディテクタ230へシフトレジスタ信号(バッファ200がバッファ200−1の場合は、シフトレジスタ信号(A))を出力する経路を有する。
ディテクタ230は、シフトレジスタ信号を入力する経路、カウンタ210から受信するカウンタ信号Qを入力する経路、クロック信号を入力する経路、リセット信号を入力する経路、及び、後述のタイミング240から受信するタイミング信号を入力する経路を有する。また、ディテクタ230は、上記のステートマシン300に中間処理コマンド信号(バッファ200がバッファ200−1の場合は、中間処理コマンド信号(A))を出力する経路、カウンタ210、シフトレジスタ220、当該ディテクタ230、タイミング240を初期化するリセット信号R(バッファ200がバッファ200−1の場合は、リセット信号R(A))を出力する経路、後述のタイミング240にフラグ信号D(バッファ200がバッファ200−1の場合は、フラグ信号D(A))を出力する経路を有する。なお上記のように、リセット信号R(A)は、ステートマシン300から受信するリセット信号Aと合流した上で、カウンタ210、シフトレジスタ220、ディテクタ230、タイミング240に入力される。
タイミング240は、カウンタ210から受信するカウンタ信号Qを入力する経路、クロック信号を入力する経路、リセット信号を入力する経路、及び、ディテクタ230から受信するフラグ信号Dを入力する経路を有する。また、タイミング240は、ステートマシン300にフラグ信号T(バッファ200がバッファ200−1の場合は、フラグ信号T(A))を出力する経路、及びディテクタ230にタイミング信号(バッファ200がバッファ200−1の場合は、タイミング信号(A))を出力する経路を有する。
図3が示すのは、上記のステートマシン300の構成例である。ステートマシン300は、順序回路310とセレクタ320とを含む。
順序回路310は、バッファ200−1乃至200−4から受信する4つのフラグ信号T(A)乃至T(D)を入力する4本の経路、クロック信号を入力する経路、及び後述のセレクタ320から受信するリセット信号Sを入力する経路を有する。また、順序回路310は、セレクタ320に対し、順序信号を出力する経路を有する。
セレクタ320は、バッファ200−1乃至200−4から受信する中間処理コマンド信号(A)乃至(D)を入力する4本の経路、上記の順序回路310からの順序信号を入力する経路、及びクロック信号を入力する経路を有する。また、セレクタ320は、コマンド処理信号を出力する経路と、バッファ200−1乃至200−4を初期化するリセット信号A乃至Dを出力する経路を有する。更に、セレクタ320は、順序回路310と当該セレクタ320を初期化するためのリセット信号Sを出力し、該リセット信号Sを入力する経路を有する。
(動作の説明)
図1において、チャンネルA乃至Dを経由して受信したコマンド信号A乃至Dは、それぞれバッファ200−1乃至200−4に入力される。
図2において、バッファ200−1に入力されたコマンド信号Aは、カウンタ210に入力される。カウンタ210では、入力されたコマンド信号Aのビット数をカウントし、規定されたビット数であることをチェックする。ビット数が規定されたビット数である場合には、カウンタ210は、コマンド信号Aをカウンタ信号P(A)としてシフトレジスタ220に出力する。更に、カウンタ210は、カウンタ信号P(A)を出力するタイミングに合わせて、カウンタ信号Q(A)をタイミング240に出力する。このカウンタ信号Q(A)は、後述のように、ディテクタ230がシフトレジスタ信号(A)に含まれるコマンド信号Aを検出するためのタイミング信号を生成する基礎となる。
シフトレジスタ220には、カウンタ210から受信したカウンタ信号P(A)、及びクロック信号が入力され、クロック信号に同期してカウンタ信号P(A)がレジスタに格納される。
タイミング240には、カウンタ210から受信するカウンタ信号Q(A)が入力される。タイミング240は、該カウンタ信号Q(A)に基づき、ディテクタ230でシフトレジスタ信号(A)に含まれるカウンタ信号P(A)を検出するためのタイミング信号(A)を生成し、ディテクタ230へ出力する。
ディテクタ230は、シフトレジスタ220から受信したシフトレジスタ信号(A)の内容をチェックし、シフトレジスタ信号(A)が正常であれば、HIGHレベルのフラグ信号D(A)を出力する。それと共に、ディテクタ230は、チェックしたシフトレジスタ信号(A)を、中間処理コマンド信号(A)として、ステートマシン300に出力する。上記のチェックのタイミングは、タイミング240から受信するタイミング信号(A)によって決定される。また、ディテクタ230における各動作は、クロック信号に同期して行われる。
更に、タイミング240は、上記のカウンタ210から受信するカウンタ信号Q(A)と、ディテクタ230から受信するフラグ信号D(A)とに基づき、フラグ信号T(A)を生成し、該フラグ信号T(A)をステートマシン300に出力する。
その後、ディテクタ230は、リセット信号R(A)を出力し、カウンタ210、シフトレジスタ220、ディテクタ230、及びタイミング240を初期化する。
バッファ200−2乃至200−4についても同様に、中間処理コマンド信号(B)乃至(D)、及びフラグ信号T(B)乃至T(D)を生成し、ステートマシン300に出力する。
図3において、順序回路310及びセレクタ320の各動作は、クロック信号に同期して実行される。
順序回路310では、バッファ200−1乃至200−4から受信した4つのフラグ信号T(A)乃至T(D)を受信する。これらのフラグ信号T(A)乃至T(D)の各々により、順序回路310は、バッファ200−1乃至200−4の各々のコマンド信号受信状態を検知する。更に、これら4つのフラグ信号T(A)乃至T(D)を元に、後述のセレクタ320が、中間処理コマンド信号(A)乃至(D)のうち、いずれを処理するかを決定する。その後、順序回路310は、決定した結果を順序信号としてセレクタ320に出力する。
セレクタ320は、中間処理コマンド信号(A)乃至(D)までの4つの信号を受信し、順序回路310から受信した順序信号に基づき、これらの4つの信号の中から1つの中間処理コマンド信号を選択する。その後、セレクタ320は、選択した中間処理コマンド信号を、コマンド処理信号として出力する。
以下、セレクタ320は、順次、中間処理コマンド信号(A)乃至(D)の中のいずれか1つを順序信号に基づいて選択し、出力する。その後、全ての信号の出力を終えたタイミングで、リセット信号A乃至D、及びリセット信号Sを出力する。
セレクタ320から出力されるリセット信号A乃至Dの各々によって、バッファ200−1乃至200−4は初期化される。また、セレクタ320から出力されるリセット信号Sによって、順序回路310及びセレクタ320は初期化される。
コマンド信号の受信チャンネルを4チャンネルで構成するシステムを例として説明するが、本発明の実施形態はこれには限定されない。
受信チャンネルを4チャンネルで構成するシステムは、図1と同じ構成とすることで実施可能となる。
ここでは、クロック信号の周期を1μs、コマンド信号の周期を4ms、各信号のHIGHレベルを5.0V、LOWレベルを0Vとするが、本発明の実施形態はこれには限定されない。
また、コマンド信号のビット数を13ビットとし、その構成は、先頭の1ビットがスタートビット、2ビット目から7ビット目がアドレスビット、8ビット目から12ビット目がコマンドビット、13ビット目がパリティビットとするが、本発明の実施形態はこれには限定されず、コマンド信号のビット数もその構成も任意である。
図1において、コマンド信号A乃至Dが、ほぼ同時刻に、チャンネルA乃至Dを経由してバッファ200−1乃至200−4に入力された場合、バッファ200−1乃至200−4は、それぞれ並列して、図2を用いて以下に記載する手順で信号を処理する。なお、図2において、クロック信号には常にクロックが入力されているものとし、図2における信号の処理は、全てクロック信号に同期して行われるものとする。また、リセット信号の初期値はLOWレベルでリセット解除状態とし、HIGHレベルの場合にリセットを実行するとするが、本発明の実施形態はこれには限定されない。
図2のバッファ200(ここではバッファ200−1の場合について説明する)において、カウンタ210が、入力されたコマンド信号Aのビット数をカウントする。ここで、カウンタ210は13ビットのカウンタとし、カウンタ信号P(A)の初期値は13ビットを全てLOWレベルとし、カウンタ信号Q(A)の初期値は全てLOWレベルとする。
カウンタ210においてコマンド信号Aのビット数をカウントした結果が正常な場合は、カウンタ210はシフトレジスタ220に対して、コマンド信号Aをカウンタ信号P(A)として出力すると共に、ディテクタ230及びタイミング240への出力信号であるカウンタ信号Q(A)のレベルを、LOWレベルからHIGHレベルに変化させる。逆に、カウントした結果が異常な場合は、カウンタ信号P(A)は全13ビットをLOWレベルとし、カウンタ信号Q(A)もLOWレベルを出力する。
また、カウントした結果が正常な場合は、カウンタ210から出力されるカウンタ信号P(A)をクロック信号に同期して、13ビットのシフトレジスタ220に格納する。逆に、カウントした結果が異常な場合は、全てがLOWレベルのカウンタ信号P(A)をシフトレジスタ220に格納する。
ディテクタ230において、カウンタ信号Q(A)のレベルによってカウンタ210がコマンド信号Aをカウントした結果が正常であると判断した場合は、シフトレジスタ信号(A)に対し、スタートビット、アドレスビット、コマンドビット、パリティビットを検出し、13ビットの信号を中間処理コマンド信号として出力すると共に、フラグ信号D(A)をHIGHレベルに変化させる。逆に、カウンタ210がコマンド信号Aをカウントした結果が異常と判断した場合は、検出処理を実施せず、13ビット全てをLOWレベルとした中間処理コマンド信号を出力し、フラグ信号D(A)もLOWレベルとする。
また、タイミング240において、ディテクタ230から出力されるフラグ信号D(A)及びカウンタ信号Q(A)をANDした結果を、フラグ信号T(A)として出力する。すなわち、フラグ信号D(A)がHIGHレベル、且つ、カウンタ信号Q(A)がHIGHレベルの場合のみ、フラグ信号T(A)はHIGHレベルとなる。
その後、ディテクタ230は、リセット信号R(A)を出力し、カウンタ210、シフトレジスタ220、ディテクタ230、及びタイミング240を初期化する。
続いて、図1のステートマシン300は、図3乃至6を用いて以下に説明する手順により、中間処理コマンド信号とフラグ信号とを処理する。なお、図3において、クロック信号には常にクロックが入力されているものとし、図3における信号の処理は、全てクロック信号に同期して行われるものとする。また、リセット信号の初期値はLOWレベルでリセット解除状態とし、HIGHレベルの場合にリセットを実行するとするが、本発明の実施形態はこれには限定されない。
図3のステートマシン300においては、順序回路310に、フラグ信号T(A)乃至T(D)及びクロック信号が入力される。順序回路310は、これらのフラグ信号T(A)乃至T(D)により、バッファ200−1乃至200−4の各々のコマンド信号受信状態を検知すると共に、これらのフラグ信号T(A)乃至T(D)の組み合わせを基に、セレクタ320に順序信号を出力する。
順序信号は、図4の遷移図、及び図5の遷移表を基に生成される。
図4の遷移図において、4つ存在する円は、図1における各チャンネルを表す。また、四角内に記載された値は、フラグ信号T(A)乃至T(D)までの状態を表し、下の桁から順に、フラグ信号T(A)…フラグ信号T(D)を表す。また、各桁の数字は、フラグ信号がHIGHレベルであれば、”1”、LOWレベルであれば“0”となり、“X”は“1”又は“0”のいずれでもよいことを示す。例えば、四角内の値が“XX10”の場合、フラグ信号T(A)が“0”、フラグ信号T(B)が“1”、フラグ信号T(C)とフラグ信号T(D)が、“0”又は“1”の何れかであることを示す。矢印は処理の遷移を表しており、図4における矢印の元の円は現時点でのステータスのチャンネルを表し、矢印の先の円は次のステータスのチャンネルを表す。
図5は、図4における遷移図を表で表したものである。表内の行はステータスを表し、列はチャンネルを表す。図5A乃至5Dは、それぞれ、現在のステータスがチャンネルA乃至チャンネルDの場合を表す。
図4の遷移図、及び図5A乃至5Dの遷移表から分かるように、現在のステータスがチャンネルAの場合を例に取ると、フラグT(A)乃至T(D)の組み合わせが、“0000”の場合は、次のステータスは、現在のステータスと同じく、チャンネルAのままとなる。“XX10”の場合は、次のステータスはチャンネルBとなる。“X100”の場合は、次のステータスはチャンネルCとなる。“1000”の場合は、次のステータスはチャンネルDとなる。なお、順序回路310のステータスの初期値、及び、リセット信号を受信した場合のステータスは、チャンネルAである。
順序回路310は、上記の図4の遷移図、及び図5A乃至5Dの遷移表に基づき、次のステータスに対応する順序信号を、セレクタ320に出力する。
セレクタ320は、中間処理コマンド信号(A)乃至(D)の中から、順序回路310から受信した順序信号に対応する中間処理コマンド信号を選択し、コマンド処理信号として出力する。
以下、セレクタ320は、順次、中間処理コマンド信号(A)乃至(D)の中のいずれか1つを順序信号に基づいて選択し、出力する。その後、全ての信号の出力を終えたタイミングで、リセット信号A乃至D、及びリセット信号Sを出力する。
なお、図6は、図4の順序回路の遷移図、および、図5の順序回路の遷移表を実現するためのステートマシン300(順序回路310並びにセレクタ320)の回路図の構成例である。
順序回路310は、フラグ信号T(A)乃至フラグ信号T(D)、及び、state<1:0>(2ビット)の信号を入力とする論理回路、セレクタ回路、ラッチ回路を含む。例えば、フラグ信号T(A)からフラグ信号T(D)の全てがHIGHレベル(1)の場合は、順序信号は2ビット共にLOWレベルの信号となる。
セレクタ320は、順序回路310から出力される順序信号<1:0>によって、中間処理コマンド信号Aから中間処理コマンド信号Dのうちの1つの信号を選択する。上記の例の場合は、セレクタ320は、中間処理コマンド信号Aを選択し、コマンド処理信号として出力する。
上記の実施形態により、本発明は、受信したコマンド信号を一時的に保持する機能を有することで、同時に受信した複数のコマンド信号を消失することなく処理することが可能である。また、本発明は、複数のコマンド信号を処理する順序に関し、優先順位を決める機能を有するので、複数のチャンネルで同時にコマンド信号を受信した場合に、所定の処理順序に基づき処理することが可能となる。
なお、上記においては、バッファ200−1乃至200−4で生成されるフラグ信号T(A)乃至T(D)の組み合わせを基に、ステートマシン300が中間処理コマンド信号(A)乃至(D)の中から一つの信号を選択後、出力する態様について述べたが、本発明の実施形態はこれには限られない。ステートマシン300は、別の信号や別の基準に基づいて、中間処理コマンド信号(A)乃至(D)を選択し出力する順序を決定してもよい。
以上、上記各実施例を参照して本発明を説明したが、本発明は上記各実施例に限定されるものではない。本発明の構成や詳細には、本発明の範囲内で当業者が理解し得る様々な変更をすることができる。
なお、上記のコマンド制御装置の各部分は、ハードウェア、ソフトウェアのいずれか又はこれらの組み合わせにより実現することができる。また、上記のコマンド制御装置により行われるコマンド制御方法も、ハードウェア、ソフトウェアのいずれか又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行すること、又は、ハードウェアがプログラムに相当するマイクロコードに従って動作することにより実現されることを意味する。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
上記の実施形態の一部または全部は、以下の付記のようにも記載されるが、以下には限られない。
(付記1)
通信システムで使用されるコマンド制御装置であって、
複数の通信チャンネルの各々からコマンド信号を受信し、該コマンド信号の保持とビット検出をし、検出結果が正常であれば該コマンド信号を、前記検出結果が異常であればLOW信号を、中間処理コマンド信号として出力する複数のバッファと、
前記複数のバッファが出力する複数の中間処理コマンド信号を受信し、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を順次選択して、コマンド処理信号として出力するステートマシンとを備えることを特徴とするコマンド制御装置。
(付記2)
付記1に記載のコマンド制御装置であって、
前記ステートマシンが、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を選択した後、前記複数のバッファにおいて、他の中間処理コマンド信号が当該複数のバッファから出力されるまで、破棄されることなく保持され続けることを特徴とするコマンド制御装置。
(付記3)
付記1又は2に記載のコマンド制御装置であって、
前記複数のバッファの各々が、前記検出結果に基づいてフラグ信号を生成した後、該フラグ信号を前記ステートマシンに送信し、
前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の各々に基づき、前記複数のバッファの各々のコマンド信号受信状態を検知することを特徴とするコマンド制御装置。
(付記4)
付記3に記載のコマンド制御装置であって、
前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の組み合わせに基づき、前記複数の中間処理コマンド信号の選択及び出力の順序を決定することを特徴とするコマンド制御装置。
(付記5)
付記1乃至4のいずれか1に記載のコマンド制御装置であって、
前記ステートマシンが、当該ステートマシンを初期化するリセット信号を生成し、該リセット信号を当該ステートマシンに送信することを特徴とするコマンド制御装置。
(付記6)
付記1乃至5のいずれか1に記載のコマンド制御装置であって、
前記ステートマシンが、前記複数のバッファを初期化するリセット信号を生成し、該リセット信号を前記複数のバッファに送信することを特徴とするコマンド制御装置。
(付記7)
付記1乃至6のいずれか1に記載のコマンド制御装置であって、
前記複数のバッファの各々が、当該複数のバッファの各々を初期化するリセット信号を生成し、該リセット信号を当該複数のバッファの各々に送信することを特徴とするコマンド制御装置。
(付記8)
通信システムで使用されるコマンド制御方法であって、
複数のバッファが、複数の通信チャンネルの各々からコマンド信号を受信し、該コマンド信号の保持とビット検出をし、検出結果が正常であれば該コマンド信号を、前記検出結果が異常であればLOW信号を、中間処理コマンド信号として出力し、
ステートマシンが、前記複数のバッファが出力する複数の中間処理コマンド信号を受信し、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を順次選択して、コマンド処理信号として出力することを特徴とするコマンド制御方法。
(付記9)
付記8に記載のコマンド制御方法であって、
前記ステートマシンが、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を選択した後、前記複数のバッファにおいて、他の中間処理コマンド信号が当該複数のバッファから出力されるまで、破棄されることなく保持され続けることを特徴とするコマンド制御方法。
(付記10)
付記8又は9に記載のコマンド制御方法であって、
前記複数のバッファの各々が、前記検出結果に基づいてフラグ信号を生成した後、該フラグ信号を前記ステートマシンに送信し、
前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の各々に基づき、前記複数のバッファの各々のコマンド信号受信状態を検知することを特徴とするコマンド制御方法。
(付記11)
付記10に記載のコマンド制御方法であって、
前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の組み合わせに基づき、前記複数の中間処理コマンド信号の選択及び出力の順序を決定することを特徴とするコマンド制御方法。
(付記12)
付記8乃至11のいずれか1に記載のコマンド制御方法であって、
前記ステートマシンが、当該ステートマシンを初期化するリセット信号を生成し、該リセット信号を当該ステートマシンに送信することを特徴とするコマンド制御方法。
(付記13)
付記8乃至12のいずれか1に記載のコマンド制御方法であって、
前記ステートマシンが、前記複数のバッファを初期化するリセット信号を生成し、該リセット信号を前記複数のバッファに送信することを特徴とするコマンド制御方法。
(付記14)
付記8乃至13のいずれか1に記載のコマンド制御方法であって、
前記複数のバッファの各々が、当該複数のバッファの各々を初期化するリセット信号を生成し、該リセット信号を当該複数のバッファの各々に送信することを特徴とするコマンド制御方法。
(付記15)
通信システムで使用されるコマンド制御方法をコンピュータに実行させるためのコマンド制御プログラムであって、
前記コマンド制御方法は、
複数のバッファが、複数の通信チャンネルの各々からコマンド信号を受信し、該コマンド信号の保持とビット検出をし、検出結果が正常であれば該コマンド信号を、前記検出結果が異常であればLOW信号を、中間処理コマンド信号として出力し、
ステートマシンが、前記複数のバッファが出力する複数の中間処理コマンド信号を受信し、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を順次選択して、コマンド処理信号として出力することを特徴とするコマンド制御プログラム。
(付記16)
付記15に記載のコマンド制御プログラムであって、
前記コマンド方法は、
前記ステートマシンが、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を選択した後、前記複数のバッファにおいて、他の中間処理コマンド信号が当該複数のバッファから出力されるまで、破棄されることなく保持され続けることを特徴とするコマンド制御プログラム。
(付記17)
付記15又は16に記載のコマンド制御プログラムであって、
前記コマンド方法は、
前記複数のバッファの各々が、前記検出結果に基づいてフラグ信号を生成した後、該フラグ信号を前記ステートマシンに送信し、
前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の各々に基づき、前記複数のバッファの各々のコマンド信号受信状態を検知することを特徴とするコマンド制御プログラム。
(付記18)
付記17に記載のコマンド制御プログラムであって、
前記コマンド制御方法は、
前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の組み合わせに基づき、前記複数の中間処理コマンド信号の選択及び出力の順序を決定することを特徴とするコマンド制御プログラム。
(付記19)
付記15乃至18のいずれか1に記載のコマンド制御プログラムであって、
前記コマンド制御方法は、
前記ステートマシンが、当該ステートマシンを初期化するリセット信号を生成し、該リセット信号を当該ステートマシンに送信することを特徴とするコマンド制御プログラム。
(付記20)
付記15乃至19のいずれか1に記載のコマンド制御プログラムであって、
前記コマンド制御方法は、
前記ステートマシンが、前記複数のバッファを初期化するリセット信号を生成し、該リセット信号を前記複数のバッファに送信することを特徴とするコマンド制御プログラム。
(付記21)
付記15乃至20のいずれか1に記載のコマンド制御プログラムであって、
前記コマンド制御方法は、
前記複数のバッファの各々が、当該複数のバッファの各々を初期化するリセット信号を生成し、該リセット信号を当該複数のバッファの各々に送信することを特徴とするコマンド制御プログラム。
本発明は、トランジスタなどの電子部品で構成されるシステムに適用することが可能である。更に、半導体集積回路で構成されるシステムに適用することも可能である。
100 コマンド制御装置
200 200−1 200−2 200−3 200−4 バッファ
210 カウンタ 220 シフトレジスタ 230 ディテクタ 240 タイミング
300 ステートマシン
310 順序回路 320 セレクタ

Claims (8)

  1. 通信システムで使用されるコマンド制御装置であって、
    複数の通信チャンネルの各々からコマンド信号を受信し、該コマンド信号の保持とビット検出をし、検出結果が正常であれば該コマンド信号を、前記検出結果が異常であればLOW信号を、中間処理コマンド信号として出力する複数のバッファと、
    前記複数のバッファが出力する複数の中間処理コマンド信号を受信し、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を順次選択して、コマンド処理信号として出力するステートマシンとを備え
    前記複数のバッファの各々が、前記検出結果に基づいてフラグ信号を生成した後、該フラグ信号を前記ステートマシンに送信し、
    前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の各々に基づき、前記複数のバッファの各々のコマンド信号受信状態を検知することを特徴とするコマンド制御装置。
  2. 請求項1に記載のコマンド制御装置であって、
    前記ステートマシンが、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を選択した後、前記複数のバッファにおいて、他の中間処理コマンド信号が当該複数のバッファから出力されるまで、破棄されることなく保持され続けることを特徴とするコマンド制御装置。
  3. 請求項1または2に記載のコマンド制御装置であって、
    前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の組み合わせに基づき、前記複数の中間処理コマンド信号の選択及び出力の順序を決定することを特徴とするコマンド制御装置。
  4. 請求項1乃至3のいずれか1項に記載のコマンド制御装置であって、
    前記ステートマシンが、当該ステートマシンを初期化するリセット信号を生成し、該リセット信号を当該ステートマシンに送信することを特徴とするコマンド制御装置。
  5. 請求項1乃至4のいずれか1項に記載のコマンド制御装置であって、
    前記ステートマシンが、前記複数のバッファを初期化するリセット信号を生成し、該リセット信号を前記複数のバッファに送信することを特徴とするコマンド制御装置。
  6. 請求項1乃至5のいずれか1項に記載のコマンド制御装置であって、
    前記複数のバッファの各々が、当該複数のバッファの各々を初期化するリセット信号を生成し、該リセット信号を当該複数のバッファの各々に送信することを特徴とするコマンド制御装置。
  7. 通信システムで使用されるコマンド制御方法であって、
    複数のバッファが、複数の通信チャンネルの各々からコマンド信号を受信し、該コマンド信号の保持とビット検出をし、検出結果が正常であれば該コマンド信号を、前記検出結果が異常であればLOW信号を、中間処理コマンド信号として出力し、
    ステートマシンが、前記複数のバッファが出力する複数の中間処理コマンド信号を受信し、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を順次選択して、コマンド処理信号として出力し、
    前記複数のバッファの各々が、前記検出結果に基づいてフラグ信号を生成した後、該フラグ信号を前記ステートマシンに送信し、
    前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の各々に基づき、前記複数のバッファの各々のコマンド信号受信状態を検知することを特徴とするコマンド制御方法。
  8. 通信システムで使用されるコマンド制御方法をコンピュータに実行させるためのコマンド制御プログラムであって、
    前記コマンド制御方法は、
    複数のバッファが、複数の通信チャンネルの各々からコマンド信号を受信し、該コマンド信号の保持とビット検出をし、検出結果が正常であれば該コマンド信号を、前記検出結果が異常であればLOW信号を、中間処理コマンド信号として出力し、
    ステートマシンが、前記複数のバッファが出力する複数の中間処理コマンド信号を受信し、前記複数の中間処理コマンド信号の中から1つの中間処理コマンド信号を順次選択して、コマンド処理信号として出力し、
    前記複数のバッファの各々が、前記検出結果に基づいてフラグ信号を生成した後、該フラグ信号を前記ステートマシンに送信し、
    前記ステートマシンが、前記複数のバッファから受信した複数の前記フラグ信号の各々に基づき、前記複数のバッファの各々のコマンド信号受信状態を検知することを特徴とするコマンド制御プログラム。
JP2016043552A 2016-03-07 2016-03-07 コマンド制御装置、コマンド制御方法、及びコマンド制御プログラム Active JP6629640B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016043552A JP6629640B2 (ja) 2016-03-07 2016-03-07 コマンド制御装置、コマンド制御方法、及びコマンド制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016043552A JP6629640B2 (ja) 2016-03-07 2016-03-07 コマンド制御装置、コマンド制御方法、及びコマンド制御プログラム

Publications (2)

Publication Number Publication Date
JP2017161996A JP2017161996A (ja) 2017-09-14
JP6629640B2 true JP6629640B2 (ja) 2020-01-15

Family

ID=59853053

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016043552A Active JP6629640B2 (ja) 2016-03-07 2016-03-07 コマンド制御装置、コマンド制御方法、及びコマンド制御プログラム

Country Status (1)

Country Link
JP (1) JP6629640B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7502916B2 (en) * 2005-12-02 2009-03-10 Infineon Technologies Flash Gmbh & Co. Kg Processing arrangement, memory card device and method for operating and manufacturing a processing arrangement
JP5381049B2 (ja) * 2008-12-01 2014-01-08 富士通株式会社 送信装置、および受信装置
JP5428687B2 (ja) * 2009-09-14 2014-02-26 株式会社リコー メモリ制御装置

Also Published As

Publication number Publication date
JP2017161996A (ja) 2017-09-14

Similar Documents

Publication Publication Date Title
EP3106978B1 (en) Digital true random number generator based on s-boxes
US9311975B1 (en) Bi-synchronous electronic device and FIFO memory circuit with jump candidates and related methods
JP6629640B2 (ja) コマンド制御装置、コマンド制御方法、及びコマンド制御プログラム
US9286260B2 (en) Serial-to parallel converter using serially-connected stages
KR20160068571A (ko) 반도체 장치
CN106024045B (zh) 半导体器件
US8290734B2 (en) Semiconductor integrated circuit
EP3641138A1 (en) Demultiplexer circuit, and semiconductor integrated circuit
JP5082954B2 (ja) 信号処理回路
CN109155798B (zh) 一种异步fifo电路及时延确定方法
US20140325300A1 (en) Semiconductor device
JP2020145356A (ja) 集積回路装置
KR20160058501A (ko) 반도체 장치 및 동작 방법
JP2013175832A (ja) 画像処理装置、信号伝達回路及び半導体集積回路
CN111600784B (zh) 数据处理方法、网络设备、主控板及逻辑芯片
US7401106B2 (en) Maximum change data pattern
JP6492467B2 (ja) 受信回路及び半導体集積回路
KR100667546B1 (ko) 직렬 데이터 링크의 테스트 장치 및 방법
JP2018201252A (ja) 受信回路及び半導体集積回路
US9903911B2 (en) Test setting circuit, semiconductor device, and test setting method
JP6366103B2 (ja) 半導体装置及びデータ出力方法
JP2009278394A (ja) メッセージ送信回路及び半導体集積回路
JP2015158824A (ja) 同期式シリアル通信方法およびスレーブ装置
JP2012039472A (ja) 半導体集積回路及びエッジ検出方法
JPWO2020144737A1 (ja) データ通信装置及びデータ通信方法

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20160921

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20170707

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190807

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190820

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191009

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191205

R150 Certificate of patent or registration of utility model

Ref document number: 6629640

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150