[go: up one dir, main page]

JP2008165494A - 信号制御回路および信号制御装置 - Google Patents

信号制御回路および信号制御装置 Download PDF

Info

Publication number
JP2008165494A
JP2008165494A JP2006354396A JP2006354396A JP2008165494A JP 2008165494 A JP2008165494 A JP 2008165494A JP 2006354396 A JP2006354396 A JP 2006354396A JP 2006354396 A JP2006354396 A JP 2006354396A JP 2008165494 A JP2008165494 A JP 2008165494A
Authority
JP
Japan
Prior art keywords
data
output
bit
time
unit
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.)
Pending
Application number
JP2006354396A
Other languages
English (en)
Inventor
Hiroyuki Minoshima
弘幸 蓑島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006354396A priority Critical patent/JP2008165494A/ja
Priority to US11/905,891 priority patent/US8245121B2/en
Publication of JP2008165494A publication Critical patent/JP2008165494A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

【課題】処理時間の短縮を図ることができる。また、受信側の回路形態にかかわらず、確実に正確なデータの送受信を行うことができる。
【解決手段】データ判定部5は、データ生成部2からデータが出力されたとき、前回出力したデータと今回送信するデータとをビット毎に比較して変化したビット数の判定を行い、変化したビット数が所定値以上になった今回送信するデータについて、変化したビットの位置を示す位置情報および変化したビットの個数をカウントした回数情報を出力する。出力制御部6は、位置情報および回数情報を受け取り、データ出力の際に位置情報に該当するビットについてこのビットの値のばらつきを落ち着かせるための時間を確保し、該確保した時間の経過後、位置情報に該当するビットの値を外部回路7に送信するようデータ格納部3に指示する。
【選択図】図1

Description

本発明は信号制御回路および信号制御装置に関し、特に複数ビットの外部出力端子を備える信号制御回路および複数ビットのデータの入出力が内部で行われる信号制御装置に関する。
LSI(Large Scale Integration)に内蔵される一般的な信号制御回路において、信号制御回路から出力される複数の出力信号が同時に変化(例えば、8ビットの出力信号が、「00000000」から「11111111」に変化)することにより生じるノイズによって1つまたは複数ビットの出力信号が過渡的に誤った値を示し、誤動作の原因となることがある。この誤動作への対処方法としては、例えばノイズの絶対量を減らすための、電源系の強化や入出力速度の低速化が考えられる。しかし、電源まわりを強化するにはコストがかかり、入出力速度を低速化すると、性能も低下するという問題がある。
これに対し、同時変化を監視し、所定の変化数を上回った際にノイズ対策を施す方法が知られている(例えば特許文献1〜3参照)。特許文献1は、同時変化が基準値以上のときに基準信号を遅延させ、ノイズによる過渡的なデータ誤り状態の終了後のデータを有効とするものである。特許文献2、3では、所定のビット幅に分割し、同時変化ノイズの発生を抑えている。分割した際に、有効または無効となるビットを通知するため、対応するビット毎に書き込み制御信号を出力している。
特開平11−167530号公報 特開2004−318450号公報 特開平7−84985号公報
しかしながら、前述した特許文献1〜3の回路構成においては、外部回路へのデータ転送時に同時判定を行う方法を採用している。このため、データ転送と同時にアドレス、転送長を外部回路に伝えており、処理に時間がかかるという問題があった。
また、外部回路の回路形態は多様にわたり、種々の構成の外部回路に適用する信号制御方法が望まれている。
本発明はこのような点に鑑みてなされたものであり、処理時間の短縮を図ることができる信号制御回路および信号制御装置を提供することを目的とする。
また、他の目的として、受信側の回路形態にかかわらず、確実に正確なデータの送受信を行うことができる信号制御回路および信号制御装置を提供することを目的とする。
本発明では上記課題を解決するために、複数ビットのデータを出力する信号制御回路において、複数ビットのデータを生成するデータ生成部と、前記データ生成部により生成された前記データを格納し、前記データの出力要求に応じて外部回路に前記データを出力するデータ格納部と、前回出力した前記データを保持するデータ保持部と、前記データ生成部から前記データが出力されたとき、前回出力した前記データと今回送信する前記データとをビット毎に比較して変化したビット数の判定を行い、変化した前記ビット数が所定値以上になった今回送信する前記データについて、変化したビットの位置を示す位置情報および変化したビットの個数をカウントした回数情報を出力するデータ判定部と、前記位置情報および前記回数情報を受け取り、データ出力の際に前記位置情報に該当するビットについて該ビットの値のばらつきを落ち着かせるための時間を確保し、該確保した時間の経過後、前記位置情報に該当するビットの値を前記外部回路に送信するよう前記データ格納部に指示する出力制御部と、を有することを特徴とする信号制御回路が提供される。
このような信号制御回路によれば、データ生成部により、複数ビットのデータが生成される。データ格納部により、データ生成部によって生成されたデータが格納され、データの出力要求に応じて外部回路にデータが出力される。データ保持部により、前回出力したデータが保持される。データ判定部により、データ生成部からデータが出力されたとき、前回出力したデータと今回送信するデータとがビット毎に比較され変化したビット数の判定が行われ、変化したビット数が所定値以上になった今回送信するデータについて、位置情報および回数情報が出力される。この位置情報および回数情報が出力制御部により受け取られ、出力制御部により、データ出力の際に位置情報に該当するビットについて該ビットの値のばらつきを落ち着かせるための時間を確保し、この確保した時間の経過後、位置情報に該当するビットの値を外部回路に送信するようデータ格納部が指示される。
本発明によれば、出力制御部が、前もって作成された位置情報および回数情報を受け取り、データの出力の際に、位置情報に該当するビットの値のばらつきを落ち着かせるための時間を確保し、確保した時間の経過後、位置情報に該当するビットの値を外部回路に出力するようにデータ格納部に指示するようにしたので、データ出力の際に、位置情報および回数情報を算出する場合に比べ処理時間を短縮することができる。
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
まず、本発明の概要について説明し、その後、実施の形態を説明する。
図1は、本発明の概要を示す図である。
図1に示す信号制御回路1は、データ生成部2と、データ格納部3と、データ保持部4と、データ判定部5と、出力制御部6とを有している。
データ生成部2は、複数ビットのデータ(図1では「111」)を生成する。
データ格納部3は、データ生成部2により生成されたデータを格納し、データの出力要求に応じて信号制御回路1の外部に設けられた外部回路7にデータを出力する。なお、外部回路7は、信号制御回路1にとっての外部回路であり、信号制御回路1と外部回路7とが一体的に形成されていてもよい。
データ保持部4は、前回出力したデータ(図1では「011」)を保持する。
データ判定部5は、データ生成部2からデータが出力されたとき、前回出力したデータ(「011」)と今回送信するデータ(「111」)とをビット毎に比較して変化したビット数の判定を行い、変化したビット数が所定値以上になった今回送信するデータ(「111」)について、変化したビットの位置を示す位置情報および変化したビットの個数をカウントした回数情報を出力する。
図1では、所定値が「1」である場合、出力開始から数えたビットの位置「1」を位置情報として出力し、変化したビットの個数「1」を回数情報として出力する。
出力制御部6は、位置情報および回数情報を受け取り、データ出力の際に位置情報に該当するビットについて、このビットの値のばらつきを落ち着かせるための時間を確保し、確保した時間の経過後、位置情報に該当するビットの値を外部回路7に送信するようデータ格納部3に指示する。図1では、データ「111」のうちの1ビット目の値「1」について、値のばらつきを落ち着かせるための時間を確保(・・)し、確保した時間の経過後、1ビット目の値を外部回路7に送信するようデータ格納部3に指示する。
このような信号制御回路1によれば、データ生成部2により、複数ビットのデータが生成される。データ格納部3により、データ生成部2によって生成されたデータが格納され、データの出力要求に応じて外部回路7にデータが出力される。データ保持部4により、前回出力したデータが保持される。データ判定部5により、データ生成部2からデータが出力されたとき、前回出力したデータと今回送信するデータとがビット毎に比較され変化したビット数の判定が行われ、変化したビット数が所定値以上になった今回送信するデータについて、位置情報および回数情報が出力される。この位置情報および回数情報が出力制御部6により受け取られ、出力制御部6により、データ出力の際に位置情報に該当するビットについて該ビットの値のばらつきを落ち着かせるための時間を確保し、この確保した時間の経過後、位置情報に該当するビットの値を外部回路7に送信するようデータ格納部3が指示される。
以下、本発明の実施の形態を説明する。
図2は、実施の形態の信号制御装置を示す図である。
信号制御装置30は、信号制御回路10と信号制御回路10に接続された外部RAM(Random Access Memory)20とを有している。外部RAM20としては特に限定されないが、例えばSDRAM(Synchronous DRAM)とSDRAMコントローラの組み合わせの形態等が挙げられる。
信号制御回路10は、CPU(Central Processing Unit)11と、データ生成部12と、データバッファRAM13と、設定レジスタ14と、FF(フリップフロップ)15と、データ判定部16とRAM(設定情報格納部)17と、出力制御部18とを有している。
CPU11は、信号制御回路10全体を制御しており主として以下(1)〜(3)の動作を行う。
(1)データ生成部12に外部RAM20に送信するデータの生成指示を送る。
(2)設定レジスタ14に設定情報(後述)を送る。
(3)データ判定部16および出力制御部18にデータを出力する指示(転送指示)を送る。
データ生成部12は、CPU11の生成指示を受けて外部RAM20に出力する複数ビットのデータを生成し、生成したデータを出しつつライト制御信号(ライトイネーブルおよびライトアドレス)をデータバッファRAM13に出力する。その後、データ生成部12は、データを、データバッファRAM13に出力すると同時にデータ判定部16にも出力する。
データバッファRAM13は、データ生成部12と外部RAM20との間に設けられており、受け取ったデータを一時格納する。また、リード要求および読み出しアドレスを受け取ると、該当するアドレスに格納されているデータを外部RAM20に送信する。
設定レジスタ14は、CPU11から入力された設定情報を格納する。設定情報には、以下の3つの情報が含まれている。
(1)例えばデータ生成部12が生成したデータのビット数が32ビットである場合、例えばそのうちの16ビットが変化するとデータ判定部に同時変化が生じたと判定させるための値(判定基準値)。判定基準値は、例えば過去の同等回路における、データ出力のクロック周波数とノイズが生じる同時変化ビット数との関連等によりCPU11が適宜決定する。
(2)1回あたりのデータのばらつきに対し延長するサイクル数(保持長)。保持長は、例えばノイズによる過渡的なデータ誤り状態が終了すると判断されるサイクル数からCPU11が適宜決定する。
(3)同時変化点のデータを予め設定した保持長のサイクルだけ延長して出力するモード(保持モード)と、同時変化点で分割して出力するモード(分割モード)のいずれか一方が指定されたモード選択信号。モード選択信号は、外部RAM20の形態に応じて予めどちらのモードを使用するのかをCPU11が適宜決定する。
また、保持モードにはさらに2つのモードが存在し、データバッファRAM13から外部RAM20へのデータ送信時に、データの有効/無効を通知する書き込み制御信号を外部RAM20に出力するモードを第1の保持モード(保持モード#1)といい、出力しないモードを第2の保持モード(保持モード#2)という。
FF15は、データ生成部12から出力されるデータを一時的に保持する機能を有している。
データ判定部16は、データ生成部12が出力するライト制御信号を受け取ると、設定レジスタ14から設定情報を読み取り、入力されるデータからばらついている箇所の個数を判断する。具体的には、データ生成部12から受け取ったデータの各ビット(今回出力されたデータ)と、前のデータ(FF15に格納されているデータ)の各ビットとを比較(同時変化検出)して値が変化しているビットの位置(変化位置)および変化したビットの個数(検出数)を検出する。そして、変化位置のビットの値について、判定基準値に基づいてサイクル数を延長するか否かの判定をする。具体的には判定基準値以上の同時変化を検出した場合に、サイクル数を延長する判定を行う。
サイクル数を延長する判定を行った場合、ばらついた箇所を変化位置(例えば、32個のデータのうち5番目が変化した)としてRAM17に書き込む。また、ばらついた箇所の延べの個数を検出数としてRAM17に書き込む。
出力制御部18は、RAM17から変化位置と検出数とを読み取り、これからデータの転送長を算出し、書き込みアドレスとともに外部RAM20に出力する(転送要求)。これにより、外部RAM20側は、データが書き込まれる前にどれだけのデータをどこに書き込めばよいのかを容易に把握することができる。
その後、データの送信開始を示す制御信号を外部RAM20に出力する(リクエスト)。
その後、出力制御部18は、データバッファRAM13にデータのリード要求および読み出しアドレスを出す。
また、出力制御部18は、選択されているモード(保持モード、分割モード)とRAM17から読み取った変化位置とに応じてデータバッファRAM13へのリード要求および読み出しアドレスを変化させる。
次に、データ判定部16の同時変化を検出する動作(同時変化検出動作)の概要について説明する。
図3は、同時変化検出動作を示すフローチャートである。
データ判定部16は、ライト制御信号を見て、データが入力されたか否か(データがデータバッファRAM13に書き込まれたか否か)を判断する(ステップS11)。
データが入力されていない場合(ステップS11のNo)、データの入力を待機する。
データが入力されると(ステップS11のYes)、前後のデータの各ビットを比較して同時変化が判定基準値以上か否かを判断する(ステップS12)。
同時変化が判定基準値未満の場合(ステップS12のNo)、ステップS14に移行する。
一方、同時変化が判定基準値以上の場合(ステップS12のYes)、変化位置をRAM17に書き込む(ステップS13)。
次にライト制御信号を見て、データ生成部12のデータの出力が終了したか否か(データのデータバッファRAM13への書き込みが終了したか否か)を判断する(ステップS14)。
データの出力が終了していない場合(ステップS14のNo)、ステップS12に移行して同時変化検出動作を継続して行う。
一方、データの出力が終了した場合(ステップS14のYes)、検出数をRAM17に書き込む(ステップS15)。
以上で同時変化検出動作を終了する。
次に、データ判定部16の機能について詳しく説明する。
図4は、データ判定部の機能を示すブロック図である。
データ判定部16は、比較部161と、判定部162と、カウンタ部163と、カウンタ部164と、イネーブル付きフリップフロップ(FF)165と、アドレス生成部166とを有している。
比較部161は、受け取ったデータ(新データ)と前のデータ(前データ)とをビット毎に比較し、検出数を得る。
判定部162は、設定レジスタ14に格納された判定基準値を読み出し、検出数が判定基準値以上であった場合には1サイクルの処理制御信号をカウンタ部163に送る。
カウンタ部163は、検出数をカウントするカウンタを有しており、処理制御信号が入力される毎に検出数を1カウントアップする。
カウンタ部164は、データバッファRAM13へのデータ格納の際に、データ生成部12から出力されているライト制御信号に含まれるライトイネーブル信号をカウントする。これにより、書き込み開始からのデータ位置に等しい数がカウントされる。
イネーブル付きフリップフロップ165は、判定部162からの処理制御信号をイネーブル信号とし、処理制御信号が入力されたとき、すなわち検出数が判定基準値以上であった場合、そのときのデータ位置の値を変化位置としてRAM17に書き込む。
アドレス生成部166は、処理制御信号を受ける毎に、変化位置のアドレス(変化位置アドレス)を生成し、RAM17に書き込む。これにより、RAM17には、変化位置およびそのアドレスの情報が関連づけられて格納される。
CPU11からの転送指示77により、検出数がRAM17の所定のアドレスへ書き込まれる。その後、カウンタ部163およびカウンタ部164の各カウンタはリセットされる。なお、図4中、3つの転送指示77はそれぞれ同じ信号である。
次に、出力制御部18の機能について詳しく説明するが、出力制御部18の機能は保持モードと分割モードとで異なるため、最初に保持モードの出力制御部18の機能について説明し、次に分割モードの出力制御部18の機能について説明する。
図5は、保持モードの出力制御部の機能を示すブロック図である。
出力制御部18は、パラメータ出力部181と、アドレス生成部182と、読み出し制御部183とを有している。
図5に示すように、転送指示には、転送開始要求と実データ長、外部RAMアドレスが含まれている。ここで実データ長は、データ生成部12が出力するデータの長さ(ビット数)を示す情報である。また、外部RAMアドレスは、外部RAM20にデータを出力する際の先頭番地のアドレスである。
パラメータ出力部181は、CPU11から転送開始要求が入力されると、その時点での実データ長、外部RAMアドレス、保持長、モード選択信号の各値を保持する。
その後、パラメータ出力部181は、変化位置、検出数読み出し要求をRAM17に出して検出数および変化位置を読み出し、実データ長を用いて転送長を算出する。そして、算出した転送長を読み出し制御部183に送り、外部RAMアドレスから転送長分のアドレスを確保した書き込みアドレスを生成し、転送長とともに外部RAM20に送信する。
アドレス生成部182は、カウンタを備えており、リード要求がHiの期間はカウンタをインクリメントして値を生成する。そして、生成した値を読み出しアドレスとしてデータバッファRAM13に送る。また、リード要求がLoの期間はカウンタをインクリメントせずに、当該カウンタの値を読み出しアドレスとしてデータバッファRAM13に送る。
読み出し制御部183は、外部RAM20から出力要求を受信すると、リード要求をデータバッファRAM13およびアドレス生成部182に送る。また、リード要求を送っている最中に、変化位置に到達した場合、変化位置通知をパラメータ出力部181に送る。
<保持モード#1の処理>
次に、出力制御部18の保持モード#1の処理(データ出力処理)について説明する。
図6は、第1の保持モードの処理を示すフローチャートである。
まず、パラメータ出力部181がRAM17から検出数を読み出す(ステップS21)。
次に、パラメータ出力部181が転送長を算出する(ステップS22)。計算式は、転送長=データ長+検出数×保持長である。
次に、読み出し制御部183が、外部RAM20にリクエスト(制御信号)を送信して、データの出力を開始する(ステップS23)。
次に、読み出し制御部183が、RAM17から変化位置を読み込む(ステップS24)。
次に、読み出し制御部183が、リード要求を出力し、アドレス生成部182が読み出しアドレスを出力し、データバッファRAM13にデータの各ビットを出力させる(ステップS25)。
読み出し制御部183は、リード要求の際、データの各ビットに対し、それぞれ変化位置か否かを判断する(ステップS26)。
変化位置の場合(ステップS26のYes)、読み出し制御部183は、保持長のサイクルだけ要求データをLoにし、変化位置のビットの値を出力する時間を延長する(ステップS27)。すなわち、変化位置のビットの値は(保持長+1)サイクル期間保持される。このとき、変化位置を含めた保持長のサイクル分、制御信号を書き込み禁止状態にする。
変化位置ではない場合(ステップS26のNo)、読み出し制御部183は、転送長分のデータ出力が終了したか否か(転送終了か)を判断する(ステップS28)。
データ出力が終了していない場合(ステップS28のNo)、ステップS25に移行し、変化位置の読み取り位置を次の位置に変えて、動作を繰り返す。これにより、全部で「検出数」のデータ出力処理を行うことになる。
一方、データ出力が終了した場合(ステップS28のYes)、データ出力処理を終了する。
図7は、保持モードにおいて外部RAMに出力されるデータを示す図である。
図7において、転送長はN、保持長はLである。
<保持モード#2の処理>
出力制御部18の保持モード#2においては、図6におけるステップS27にて変化位置を含めた保持長のサイクル分、制御信号を書き込み禁止状態にしないこと以外は、保持モード#1と同じ処理を行う。
<保持モードの具体例>
次に、保持モード#1であるときの出力制御部18の動作を、実データ長が「16」、保持長が「2」、検出数が「2」、変化位置が、「6」および「11」である場合を例にとって説明する。
図8は、具体例のRAMからの読み出しアドレスおよび外部RAMに出力されるデータの関係を示す図である。図8中のデータは、データバッファRAM13から外部RAM20に出力されるデータである。また、図8中のデータに付されたアドレスの値は、アドレス生成部182が出力する読み出しアドレスの値であり、外部RAM20のアドレス値を表すものではない。すなわち、図8中、アドレス値「1」は、データバッファRAM13に格納されているデータ(図8中のデータ)「1」の格納アドレスを指す。
パラメータ出力部181は、実データ長とRAM17から読み出した保持長および検出数とで転送長を計算する。本具体例では、転送長=16+2×2=20となる。
そして、パラメータ出力部181は、外部RAM20に対し、転送長および書き込みアドレスを転送パラメータとして、外部RAM20に送信する。その後、転送長および保持長を読み出し制御部183に送り、読み出し要求をRAM17に送る。これによりRAM17が変化位置(=6)と検出数とをパラメータ出力部181および読み出し制御部183に送る。
読み出し制御部183は、制御信号(リクエスト)を外部RAM20に送信し、出力要求を受信すると、リード要求(Hi)をデータバッファRAM13およびアドレス生成部182に送る。
アドレス生成部182は、読み出しアドレスを生成し、データバッファRAM13に送る。
データバッファRAM13は、読み出しアドレスに該当するアドレスのデータを読み出し、外部RAM20に出力する。
読み出し制御部183は、変化位置(=6)のリード要求出力後、リード要求をLoにする。これにより、アドレス生成部182が変化位置の読み出しアドレスと同じ読み出しアドレスを出し続けることによって、データバッファRAM13からは、変化位置(=6)のデータと同じデータが出力され続けることになる。なお、ここで「モード選択信号」が保持モード#1であるため、同期間、制御信号をHiにして、データバッファRAM13が出力するデータを外部RAM20が書き込むのを禁止させる。
また、読み出し制御部183は、リード要求をLoにすると同時に、変化位置通知をパラメータ出力部181に送る。
パラメータ出力部181は、変化位置通知を受け取ると、RAM17に対し、次の変化位置の読み出し要求を送る。これによりRAM17が、次の変化位置(=11)を出力する。
保持長分(=2サイクル)経過後、読み出し制御部183は、リード要求をHiにするとともに制御信号をLoにする。これにより、アドレス生成部182が新たな読み出しアドレスを生成し、データバッファRAM13から新たなビットのデータが出力される。
読み出し制御部183は、次の変化位置(=11)のビットのデータを受け取ると、上記と同様の動作を行う。すなわち、変化位置(=11)のリード要求出力後、リード要求をLoにする。これにより、データバッファRAM13から出力されるデータは変化位置(=11)のデータと同じデータが出力され続けることになる。また、同期間、制御信号をHiにする。
また、読み出し制御部183は、リード要求をLoにすると同時に、変化位置通知をパラメータ出力部181に送る。
読み出し制御部183は、転送長(=20)のリード要求が終了した時点で、リード要求の送信を停止する。これにより、外部RAM20へのデータ転送が終了する。
このようにして、転送指示により外部RAM20に与えた転送長で、データ判定部16で計算された変化位置が引き延ばされたデータがデータバッファRAM13から外部RAM20に送信される。
<分割モード>
図9は、分割モードの出力制御部の機能を示すブロック図である。
分割モードは、主としてモード選択信号の設定値と、パラメータ出力部181および読み出し制御部183の動作が保持モードと異なっている。以下、保持モードと同様の部分についてはその説明を省略する。
分割モードでは、出力制御部18は、RAM17からの変化位置および検出数はパラメータ出力部181のみが受け取る(読み出し制御部183は受け取らない)。
パラメータ出力部181は、CPU11からの転送開始要求により、その時点での実データ長、外部RAM20のアドレス、モード選択信号の各値を受け取り保持する(保持長は使用しない)。
また、パラメータ出力部181は、検出数と変化位置とをRAM17から読み出すと、分割モードの転送長を算出する。
また、読み出し制御部183は、データ転送中にデータバッファRAM13が出力するデータを外部RAM20が書き込むのを禁止させる制御信号を送信しない。但し、リクエストは送信する。
<分割モードの処理>
次に、出力制御部18の分割モードの処理(データ出力処理)について説明する。
図10は、分割モードの処理を示すフローチャートである。
まず、転送回数=0とする(ステップS31)。この検出回数は、出力制御部18が保持しているパラメータである。
まず、RAM17から検出数を読み出す(ステップS32)。
次に、RAM17から変化位置を読み出す(ステップS33)。
次に、変化位置を用いて転送長を算出する(ステップS34)。計算方法は後述する。
次に、外部RAM20への書き込みアドレスを算出する(ステップS35)。外部RAM20への書き込みアドレスは、前回のアドレスと前回の転送長とから求める。
次に、外部RAM20にリクエストを送信し(ステップS36)、データの出力を開始し、転送長分のデータの出力を行う(ステップS37)。その際、データの各ビットを出力する度に、データ出力が終了したか否か(転送長分のデータを出力したか否か)を判断する(ステップS38)。
データ出力が終了していない場合(ステップS38のNo)、ステップS37に移行して、次のビットのデータを出力する。
一方、データ出力が終了した場合(ステップS38のYes)、転送回数が、検出数+1の値に等しいか否かを判断する(ステップS39)。
転送回数が、検出数+1の値に等しくない場合(ステップS39のNo)、ステップS32に移行して、ステップS33以降の処理を継続する。
一方、転送回数が、検出数+1の値に等しい場合(ステップS39のYes)、データ出力処理を終了する。すなわち、分割モードではデータの転送を検出数+1回だけ繰り返す。
次に、前述したステップS34の転送長の算出処理について説明する。
図11は、転送長の算出処理を示すフローチャートである。
まず、転送回数を1インクリメントする(ステップS341)。
次に、転送回数=1か否かを判断する(ステップS342)。
転送回数=1の場合(ステップS342のYes)、初回の転送であるため、転送長=変化位置−1とする(ステップS343)。
一方、転送回数=1ではない場合(ステップS342のNo)、初回以降の転送であると判断し、次に転送回数=検出数+1か否かを判断する(ステップS344)。
転送回数=検出数+1ではない場合(ステップS344のNo)、最後の転送ではないため、転送長=今回読み込んだ変化位置−前回の変化位置とする(ステップS345)。
一方、転送回数=検出数+1の場合(ステップS344のYes)、最後の転送であるため、転送長=実データ長−前回の変化位置+1とする(ステップS346)。
図12は、分割モードの外部RAMに出力されるデータを示す図である。
図12において、転送長はN、検出数はM、m1、m2、・・・、mMは、それぞれ1番目、2番目、・・・、M番目の変化位置、斜線部分は分割区間を示す。
<分割モードの具体例>
次に、分割モードであるときの出力制御部18の動作を、実データ長が「16」、検出数「2」、変化位置「6」および「11」である場合を例にとって説明する。
図13は、具体例の分割モードのデータバッファRAMからの出力データの様子を示す図である。なお、図13中の出力データの各ビットに付された値は、アドレス生成部182が生成する読み出しアドレスの値である。
パラメータ出力部181は、読み出した変化位置から転送長を計算する。前述したように、初回は変化位置−1とすることから、本具体例では初回の転送長=6−1=5となる。
パラメータ出力部181は、転送長とアドレスを転送パラメータとして、転送要求を外部RAM20に出力する。ここでは、書き込みアドレスは「0x0」とする。
また、パラメータ出力部181は、転送長を読み出し制御部183に送る。
読み出し制御部183は、外部RAM20から出力要求を受信すると、転送(転送No.1)を開始する。すなわち、転送長の期間(=5サイクル)、リード要求をデータバッファRAM13およびアドレス生成部182に送る。
アドレス生成部182は、リード要求の出力により読み出しアドレス[0x0]〜[0x5]を生成する。
読み出し制御部183は、転送長(=5)のリード要求が終了した後にリード要求をLoにして完了通知をパラメータ出力部181に送る。これにより、転送No.1が終了する。
ここで、パラメータ出力部181は、転送回数(=2)が検出数+1(=3)より少ないと判断し、2回目の転送(転送No.2)を行う。転送No.2は、今回の変化位置が「11」、前回の変化位置が「6」であることから、転送長は、11−6=5となる。
次に、書き込みアドレスを、前回の書き込みアドレスと、前回の転送長とから求める。本具体例では、外部RAM20のビット幅が、出力データビット幅と同じだとして、前回の書き込みアドレスに前回の転送長を足したものとなる。よって、書き込みアドレス=0x0+0x5=0x5となる。
これらの転送長と書き込みアドレスを転送パラメータとして、転送要求を出力する。以下、1回目と同様である。
読み出し制御部183は、転送長(=5)のリード要求が終了した後にリード要求をLoにして完了通知をパラメータ出力部181に送る。これにより、転送No.2が終了する。
ここで、パラメータ出力部181は、転送回数(=3)が検出数+1(=3)に等しいと判断し、3回目の転送(転送No.3)を行う。
3回目の転送は、最後の転送となるので、転送長=16−11+1=6となる。また、書き込みアドレスは、0x5+0x5=0xAとなる。以下、1、2回目と同様である。
以上述べたように、信号制御装置30によれば、データ生成部12から一旦データバッファRAM13に格納する際に、データ判定部16が、同時変化への処理の判定を予め行い、外部RAM20へのデータを出力する際に、出力制御部18が、判定結果を用いて保持モードまたは分割モードによりデータバッファRAM13にデータを出力させるようにしたので、例えばデータバッファRAM13からデータを出力する際に判定を行う場合に比べて処理時間の短縮を図ることができる。
また、例えば外部からのノイズ等により、データ生成部12から出力されるデータのばらつきが生じた場合においても正確なデータを確実に外部RAM20に送信することができる。
また、外部RAM20が全ビット一括での有効/無効制御信号にのみ対応しているRAMの場合には、保持モード#1を設定することにより対応することができる。
また、例えば、機能試験等で、データの正当性のみを必要とする場合は、保持モード#2を用いることにより、制御を簡略化することで、処理時間の短縮を図ることができる。
また、例えば最初は保持モード#1を使用し、信頼性が確保された後に保持モード#2に切り替えるような制御を行うことにより、さらに処理時間の短縮を図ることができる。
なお、保持モード#2は、外部RAM20がデータの有効/無効処理信号に対応していなくても使用することができる。この場合、保持長Lの期間だけ期待値(予定される値)を“X”(don't care)とする。
図14は、第2の保持モードを説明する図である。
図14の場合、保持長Lの期間だけ出力データを正常なデータとして外部RAM20に読み込ませないことにより、正確なデータを得ることができる。
また、信号制御回路10と外部RAM20との間にメモリコントローラを接続して用いる場合等においては、保持モード#2を用いるのが好ましい。この場合は、メモリコントローラが、外部RAM20への出力データ期待値に対して、保持長Lの期間および期待値を“X”(don't care)とする操作を行うようにする。
また、分割モードは、データの有効/無効処理に対応していない外部RAM20(外部回路)にも使用することができる。また、信号制御回路10と外部RAM20との間にメモリコントローラを接続して用いる場合等においても、分割モードを使用することができる。最終的に外部RAM20へのデータ出力も分割されるためである。
さらに、CPU11がモード切り替え(保持モード#1および保持モード#2の切り替えや保持モード、分割モード間での切り替え)を行い、より遅延の少ないモードを選択するようにしてもよい。
以上、本発明の信号制御回路および信号制御装置を、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
また、本発明は、前述した実施の形態のうちの、任意の2以上の構成(特徴)を組み合わせたものであってもよい。
本発明の概要を示す図である。 実施の形態の信号制御装置を示す図である。 同時変化検出動作を示すフローチャートである。 データ判定部の機能を示すブロック図である。 保持モードの出力制御部の機能を示すブロック図である。 第1の保持モードの処理を示すフローチャートである。 保持モードにおいて外部RAMに出力されるデータを示す図である。 具体例の読み出しアドレスおよび出力されるデータの関係を示す図である。 分割モードの出力制御部の機能を示すブロック図である。 分割モードの処理を示すフローチャートである。 転送長の算出処理を示すフローチャートである。 分割モードの外部RAMに出力されるデータを示す図である。 具体例の分割モードの外部RAMに出力されるデータを示す図である。 第2の保持モードを説明する図である。
符号の説明
1 信号制御回路
2 データ生成部
3 データ格納部
4 データ保持部
5 データ判定部
6 出力制御部
7 外部回路
10 信号制御回路
11 CPU
12 データ生成部
13 データバッファRAM
14 設定レジスタ
15 FF
16 データ判定部
17 RAM
18 出力制御部
20 外部RAM
30 信号制御装置
161 比較部
162 判定部
163、164 カウンタ部
165 イネーブル付きフリップフロップ
166 アドレス生成部
181 パラメータ出力部
182 アドレス生成部
183 読み出し制御部

Claims (8)

  1. 複数ビットのデータを出力する信号制御回路において、
    複数ビットのデータを生成するデータ生成部と、
    前記データ生成部により生成された前記データを格納し、前記データの出力要求に応じて外部回路に前記データを出力するデータ格納部と、
    前回出力した前記データを保持するデータ保持部と、
    前記データ生成部から前記データが出力されたとき、前回出力した前記データと今回送信する前記データとをビット毎に比較して変化したビット数の判定を行い、変化した前記ビット数が所定値以上になった今回送信する前記データについて、変化したビットの位置を示す位置情報および変化したビットの個数をカウントした回数情報を出力するデータ判定部と、
    前記位置情報および前記回数情報を受け取り、データ出力の際に前記位置情報に該当するビットについて該ビットの値のばらつきを落ち着かせるための時間を確保し、該確保した時間の経過後、前記位置情報に該当するビットの値を前記外部回路に送信するよう前記データ格納部に指示する出力制御部と、
    を有することを特徴とする信号制御回路。
  2. 前記データ判定部は、前記データ生成部から前記データ格納部に前記データが格納されるときに前記判定を行うことを特徴とする請求項1記載の信号制御回路。
  3. 前記出力制御部は、前記データ格納部への指示の前に前記位置情報に該当するビットの値のばらつきを落ち着かせるための時間を加味した転送長を前記外部回路に出力することを特徴とする請求項1記載の信号制御回路。
  4. 前記出力制御部は、前記位置情報および前記回数情報を受け取り、前記位置情報に示されたビットについては、予め設定された時間だけ前記位置情報に示されたビットと同じビットの値を前記外部回路に送信するよう、前記データ格納部に指示することを特徴とする請求項1記載の信号制御回路。
  5. 前記外部回路が前記データの有効または無効を判断することができる場合、前記出力制御部は、前記位置情報に該当するビットの値のばらつきを落ち着かせるための時間において前記外部回路に前記データを書き込み禁止にする信号を送信することを特徴とする請求項4記載の信号制御回路。
  6. 予め設定された時間を格納する保持長格納部をさらに有することを特徴とする請求項4記載の信号制御回路。
  7. 前記出力制御部は、前記位置情報および前記回数情報を受け取り、前記位置情報に示されたビットと次のビットとの間で前記データを分割して前記外部回路に送信するよう、前記データ格納部に指示することを特徴とする請求項1記載の信号制御回路。
  8. 複数ビットのデータの入出力が内部で行われる信号制御装置において、
    複数ビットのデータが入力される対象回路と、
    前記データを生成するデータ生成部と、前記データ生成部により生成された前記データを格納し、前記データの出力要求に応じて前記対象回路に前記データを出力するデータ格納部と、前回出力した前記データを保持するデータ保持部と、前記データ生成部から前記データが出力されたとき、前回出力した前記データと今回送信する前記データとをビット毎に比較して変化したビット数の判定を行い、変化した前記ビット数が所定値以上になった今回送信する前記データについて、変化したビットの位置を示す位置情報および変化したビットの個数をカウントした回数情報を出力するデータ判定部と、前記位置情報および前記回数情報を受け取り、データ出力の際に前記位置情報に該当するビットについて該ビットの値のばらつきを落ち着かせるための時間を確保し、該確保した時間の経過後、前記位置情報に該当するビットの値を前記対象回路に送信するよう前記データ格納部に指示する出力制御部とを備える信号制御回路と、
    を有することを特徴とする信号制御装置。
JP2006354396A 2006-12-28 2006-12-28 信号制御回路および信号制御装置 Pending JP2008165494A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006354396A JP2008165494A (ja) 2006-12-28 2006-12-28 信号制御回路および信号制御装置
US11/905,891 US8245121B2 (en) 2006-12-28 2007-10-05 Signal control circuit and signal control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006354396A JP2008165494A (ja) 2006-12-28 2006-12-28 信号制御回路および信号制御装置

Publications (1)

Publication Number Publication Date
JP2008165494A true JP2008165494A (ja) 2008-07-17

Family

ID=39585803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006354396A Pending JP2008165494A (ja) 2006-12-28 2006-12-28 信号制御回路および信号制御装置

Country Status (2)

Country Link
US (1) US8245121B2 (ja)
JP (1) JP2008165494A (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784985A (ja) * 1993-06-30 1995-03-31 Nec Corp 出力回路
JPH11167530A (ja) * 1997-12-04 1999-06-22 Brother Ind Ltd 信号制御回路
JP2002300021A (ja) * 2001-03-29 2002-10-11 Matsushita Electric Ind Co Ltd 集積回路装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3346999B2 (ja) * 1996-01-08 2002-11-18 株式会社東芝 入出力装置
US6708277B1 (en) * 2000-05-12 2004-03-16 Motorola, Inc. Method and system for parallel bus stepping using dynamic signal grouping
JP2004318450A (ja) 2003-04-16 2004-11-11 Hitachi Ltd バス制御装置
US7411840B2 (en) * 2004-03-02 2008-08-12 Via Technologies, Inc. Sense mechanism for microprocessor bus inversion
KR100643498B1 (ko) * 2005-11-21 2006-11-10 삼성전자주식회사 반도체 메모리에서의 데이터 버스 반전 회로 및 데이터버스 반전 방법
JP2007174236A (ja) * 2005-12-21 2007-07-05 Fujitsu Ltd 半導体集積回路及びデータ出力方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784985A (ja) * 1993-06-30 1995-03-31 Nec Corp 出力回路
JPH11167530A (ja) * 1997-12-04 1999-06-22 Brother Ind Ltd 信号制御回路
JP2002300021A (ja) * 2001-03-29 2002-10-11 Matsushita Electric Ind Co Ltd 集積回路装置

Also Published As

Publication number Publication date
US8245121B2 (en) 2012-08-14
US20080163037A1 (en) 2008-07-03

Similar Documents

Publication Publication Date Title
JP5169486B2 (ja) Fpgaコンフィグレーション装置及びこれを有する回路基板、電子装置、及びfpgaコンフィグレーション方法
US7889581B2 (en) Digital DLL circuit
US8356203B2 (en) Asynchronous interface circuit and data transfer method
JP2007080484A (ja) Nandフラッシュメモリ装置
JP2007004967A (ja) 並列データ経路アーキテクチャ
JP4454772B2 (ja) 通信バスの異常検出装置とマイクロコンピュータ
JP2003187575A (ja) 半導体記憶装置のリフレッシュ制御方法、及び該制御方法を有する半導体記憶装置
US6748464B2 (en) Semiconductor device comprising CPU and peripheral circuit wherein control unit performs wait cycle control that makes peripheral circuit wait a predetermined time before responding to CPU
JP6070600B2 (ja) マイクロコンピュータ
JP2008165494A (ja) 信号制御回路および信号制御装置
JP5982845B2 (ja) トレース制御装置及びトレース制御方法
JP4757582B2 (ja) データ転送動作終了検知回路及びこれを備える半導体記憶装置
JP4160068B2 (ja) ベースバンドプロセッサと無線周波数集積モジュールとの間のデジタルプログラミングインターフェース
JP5549474B2 (ja) 集積回路
JP4280239B2 (ja) 半導体記憶装置
JP4478592B2 (ja) メモリ回路
JP5907558B2 (ja) マルチインターバルタイマ並びにその制御装置、制御方法及び制御プログラム
KR102797265B1 (ko) 메모리에 적용되는 라이트 레벨링 회로 및 제어 방법, 제어 장치
JP4549073B2 (ja) メモリ制御回路
JP5126090B2 (ja) メモリテスト装置
KR20120004150A (ko) 설정회로 및 이를 포함하는 반도체 메모리 장치
JP6337730B2 (ja) メモリ装置
JP3935152B2 (ja) バッファメモリ装置
JP4838060B2 (ja) アナログ波形発生装置
JP2010011713A (ja) パルス出力回路

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080729

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111026

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120313