JP5350049B2 - インターフェース回路 - Google Patents

インターフェース回路 Download PDF

Info

Publication number
JP5350049B2
JP5350049B2 JP2009091436A JP2009091436A JP5350049B2 JP 5350049 B2 JP5350049 B2 JP 5350049B2 JP 2009091436 A JP2009091436 A JP 2009091436A JP 2009091436 A JP2009091436 A JP 2009091436A JP 5350049 B2 JP5350049 B2 JP 5350049B2
Authority
JP
Japan
Prior art keywords
signal
circuit
output
access
input
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
JP2009091436A
Other languages
English (en)
Other versions
JP2010244259A (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.)
Semiconductor Components Industries LLC
Original Assignee
Semiconductor Components Industries LLC
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 Semiconductor Components Industries LLC filed Critical Semiconductor Components Industries LLC
Priority to JP2009091436A priority Critical patent/JP5350049B2/ja
Priority to US12/748,481 priority patent/US7945744B2/en
Priority to EP10158321A priority patent/EP2237160A2/en
Publication of JP2010244259A publication Critical patent/JP2010244259A/ja
Application granted granted Critical
Publication of JP5350049B2 publication Critical patent/JP5350049B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Manipulation Of Pulses (AREA)

Description

本発明は、インターフェース回路に関する。
一般に、メモリとメモリ制御回路との間やモーター駆動回路とマイコンとの間等の異なる機能を有する回路間では、論理レベルのデータが送受信されることにより、所定の処理が実行される。例えば、メモリ制御回路は、プロセッサからのアクセス要求に基づいて、アクセス信号の論理レベルを変化させることによりメモリアクセスを行う。したがって、アクセス信号の論理レベルがノイズ等により変化した場合、メモリ制御回路は、アクセスを正常に行うことができない場合がある。このため、メモリ制御回路は、アクセス信号におけるデータにパリティビットを付加することにより、メモリアクセスの正常性を検出することがある(例えば特許文献1)。具体的には、メモリ制御回路は、プロセッサからの書き込み指示に基づいて、入力されるデータにパリティビットを付加し、メモリにパリティビットの付加されたデータを書き込む。また、メモリ制御回路は、プロセッサからの読み出し指示に基づいて、メモリからパリティビットの付加されたデータを読み出す。そして、メモリ制御回路は、パリティビットを検査することによりメモリアクセスの正常性を検出する。
特開平8−16487号公報
前述のように、例えばメモリとメモリ制御回路との間等で送受信されるデータにパリティビットを付加する場合、パリティビットを検査することによりデータに誤りがあるか否かを検出することは可能となる。しかしながら、送受信されるデータにパリティビットが付加されると、メモリ及びメモリ制御回路の間で送受信されるデータ量が増加するという問題があった。
本発明は上記課題を鑑みてなされたものであり、データ量の増加を抑制しつつ、データに誤りがあるか否かを検出することが可能なインターフェース回路を提供することを目的とする。
上記目的を達成するため、本発明の一つの側面に係るインターフェース回路は、記憶回路にアクセスするべく一方の論理レベルまたは他方の論理レベルに変化するアクセス信号が入力され、前記アクセス信号の論理レベルと同じ論理レベルの第1信号を前記記憶回路に出力する第1出力回路と、前記第1出力回路から出力された前記第1信号のレベルと所定のしきい値との比較結果に応じた論理レベルの第2信号を出力する第2出力回路と、を有するI/Oバッファと、前記アクセス信号の少なくとも一部が前記第1出力回路に入力された後、前記第1出力回路に入力される前記アクセス信号の論理レベル及び前記第2出力回路から出力される前記第2信号の論理レベルの変化の回数を比較し、前記第1出力回路に入力される前記アクセス信号に基づく所定のアクセスがされたか否かを示す比較信号を出力する比較回路と、を備え、前記比較回路は、前記第1出力回路に入力される前記アクセス信号の所定のエッジに基づいてカウントする第1カウンタと、前記第2出力回路から出力される前記第2信号の前記所定のエッジに基づいてカウントする第2カウンタと、前記アクセス信号の少なくとも一部が前記第1出力回路に入力されてから所定期間経過後までの間に、前記第1カウンタ及び前記第2カウンタの夫々のカウント値の変化量が同じ場合、前記所定のアクセスがされたことを示す前記比較信号を出力し、前記変化量が異なる場合、前記所定のアクセスがされなかったことを示す前記比較信号を出力する比較信号出力回路と、を含むことを特徴とする。
データ量の増加を抑制しつつ、データに誤りがあるか否かを検出することが可能なインターフェース回路を提供することができる。
本発明の一実施形態であるシステムLSI10の構成を示す図である。 本発明の一実施形態であるインターフェース回路21の構成を示す図である。 リードアクセスにおいて、端子22〜27にノイズが発生しない場合のシステムLSI10の動作を示すタイミングチャートである。 リードアクセスにおいて、端子22〜27に所定のタイミングでノイズが発生する場合のシステムLSI10の動作を示すタイミングチャートである。
本明細書および添付図面の記載により、少なくとも以下の事項が明らかとなる。
図1は本発明の一実施形態であるシステムLSI(Large Scale Integration)10の構成を示す図である。
システムLSI10は、例えば、光ディスク装置(不図示)に設けられ、マイコン20、インターフェース回路21、端子22〜27を含んで構成される。また、システムLSI10は、シリアルフラッシュメモリ11に格納されたプログラムを実行することにより、例えば、光ディスク装置(不図示)を制御する。
シリアルフラッシュメモリ11(記憶回路)は、不揮発性のメモリであり、端子12〜17を含んで構成される。本実施形態では、マイコン20により実行されるプログラムデータや、マイコン20により処理される各種データが格納される。シリアルフラッシュメモリ11は、端子12に入力される信号CS1に基づいてシステムLSI10からのアクセスが可能となると、端子13に入力されるクロックCLK1に同期して、端子14に入力されるアクセスデータSI1を取り込む。なお、本実施形態におけるアクセスデータSI1には、例えばプログラムデータ等が格納されている領域のアドレス、リードまたはライトを示すコマンド、及びライトデータが含まれることとする。また、端子15からは、シリアルフラッシュメモリ11がリードアクセスされる場合のリードデータSO1が出力される。また、本実施形態のシリアルフラッシュメモリ11は、端子16に入力される信号WP1に基づいて、誤ったデータが書き込まれることを防止し、端子17に入力される信号HOLD1に基づいて、端子13に入力されるクロックCLK1を無効とする。
マイコン20は、インターフェース回路21を制御するとともに、インターフェース回路21から出力されるプログラムデータ等に基づいた処理を行う回路である。本実施形態のマイコン20は、アクセス要求データREQ、アドレスADDRESS、データDATA及びコマンドCMDをインターフェース回路21に出力し、インターフェース回路21にシリアルフラッシュメモリ11の所定アドレスの記憶領域にアクセスをさせる。
インターフェース回路21は、マイコン20からのアクセス要求データREQに基づいて、シリアルフラッシュメモリ11にアクセスする回路である。本実施形態では、マイコン20から入力されるアクセス要求データREQに基づいて、クロックCLK1を端子22に、信号CS1を端子24にそれぞれ出力し、アクセス要求データREQ、アドレスADDRESS、データDATA、及びコマンドCMDに基づいて、アクセスデータSI1を端子23に出力する。また、インターフェース回路21は、所定のアクセスが完了すると、所定のアクセスがされたか否かを示す信号ACKをマイコン20に出力する。なお、シリアルフラッシュメモリ11がリードアクセスされた場合、リードデータSO1が端子25に入力されるため、インターフェース回路21は、リードデータSO1をデータDATAとしてマイコン20に出力する。さらに、本実施形態のインターフェース回路21は、アクセス要求データREQに基づいて信号WP1を端子26に出力することにより、シリアルフラッシュメモリ11に誤ったデータが書き込まれることを防止し、アクセス要求データREQに基づいて信号HOLD1を端子27に出力することにより、シリアルフラッシュメモリ11に入力されるクロックCLK1を無効にする。なお、インターフェース回路21は、本発明のインターフェース回路に相当する。
図2はインターフェース回路21の構成を示す図である。
インターフェース回路21は、クロック発生回路40、CS信号発生回路41、WP信号発生回路42、HOLD信号発生回路43、データ出力回路44,45、メインカウンタ46、カウンタ50〜54,90〜94、I/Oバッファ60〜64、検出回路100〜104、OR回路111、ACK信号発生回路112、およびレジスタ113を含んで構成される。
クロック発生回路40(アクセス信号生成回路)は、入力されるアクセス要求データREQに基づいて、インターフェース回路21がシリアルフラッシュメモリ11にアクセスするためのクロックCLK2(アクセス信号)を出力する回路である。本実施形態では、アクセス要求データREQが入力されてから所定のタイミングでクロックCLK2の出力を開始し、アクセス要求データREQに基づいた期間、クロックCLK2を出力し続ける。
CS信号発生回路41(アクセス信号生成回路)は、入力されるアクセス要求データREQに基づいて、インターフェース回路21がシリアルフラッシュメモリ11とのアクセスを可能とするための信号CS2(アクセス信号)を出力する回路である。本実施形態では、アクセス要求データREQに基づいたアクセスができるよう、信号CS2の論理レベルを所定の期間Lレベルとする。
WP信号発生回路42(アクセス信号生成回路)は、入力されるアクセス要求データREQに基づいて、インターフェース回路21がシリアルフラッシュメモリ11に誤ったデータが書き込まれることを防止するための信号WP2(アクセス信号)を出力する回路である。本実施形態のWP信号発生回路42は、書き込みを防止するためのアクセス要求データREQに基づいて、Lレベルの信号WP2を出力する。一方、書き込み許可するためのアクセス要求データREQが入力されると、Hレベルの信号WP2を出力する。
HOLD信号発生回路43(アクセス信号生成回路)は、入力されるアクセス要求データREQに基づいて、インターフェース回路21がシリアルフラッシュメモリ11に入力されるクロックCLK1を無効にすることによりアクセスを中断するための信号HOLD2(アクセス信号)を出力する回路である。具体的には、HOLD信号発生回路43は、アクセスを中断させるためのアクセス要求データREQが入力されると、信号HOLD2の論理レベルをHレベルからLレベルへと変化させる。
データ出力回路44(アクセス信号生成回路)は、マイコン20から入力されるアドレスADDRESS、データDATA、及びコマンドCMDを保持する。なお、データDATAは、インターフェース回路21がシリアルフラッシュメモリ11にライトアクセスする場合にのみマイコン20から入力される。そして、データ出力回路44は、アクセス要求データREQが入力されると、信号SI2(アクセス信号)として保持しているコマンドCMD、アドレスADDRESS、データDATAの順にI/Oバッファ64に出力する。なお、本実施形態では、保持されているアドレスADDRESS、データDATA、及びコマンドCMDはマイコン20から入力される度に更新されることとする。
データ出力回路45は、リードアクセスにおいて、シリアルフラッシュメモリ11から入力されるリードデータSO1を保持する。後述するACK信号発生回路112から信号ACKが入力されると、データ出力回路45は保持しているリードデータSO1をデータDATAとしてマイコン20に出力する。なお、本実施形態では、シリアルフラッシュメモリ11からリードデータSO1が入力される度に、保持されているリードデータSO1は更新されることとする。
メインカウンタ46は、入力されるアクセス要求データREQに基づいて、最大カウント値が変化するとともに入力されるクロックCLK2の立ち上がりエッジをカウントする回路である。なお、本実施形態におけるメインカウンタ46の最大カウント値は、入力されるクロックCLK2の立ち上がりエッジを全てカウントした際の値となる。例えば、クロック発生回路40が、リードアクセスをさせるアクセス要求データREQに基づいて、サイクル数が41のクロックCLK2を出力する場合、メインカウンタ46の最大カウント値は41となる。また、本実施形態のメインカウンタ46は、メインカウンタ46のカウント値が、最大カウント値より1少ない値になると、検出回路100〜104に指示信号TRG1を出力する。また、メインカウンタ46のカウント値が最大になると、メインカウンタ46は、カウンタ50〜54、及び後述するACK信号発生回路112に指示信号TRG2を出力する。例えば、メインカウンタ46の最大カウント値が41である場合、メインカウンタ46のカウント値が40になると指示信号TRG1が出力され、メインカウンタ46のカウント値が41になると指示信号TRG2が出力される。
カウンタ50(第1カウンタ)は、入力される論理レベルの信号の立ち上がりエッジをカウントし、カウント値として出力する。また、カウンタ50にメインカウンタ46から指示信号TRG2が入力されると、カウンタ50のカウント値はリセットされる。本実施形態のカウンタ50には、クロック発生回路40からのクロックCLK2が入力される。このため、カウンタ50は、所定のアクセスがされる間に入力されるクロックCLK2の立ち上がりエッジをカウントし、カウント値CNT1として出力する。
カウンタ51〜54は、それぞれに入力される論理レベルの信号が、信号CS2、信号WP2、信号HOLD2、信号SI2である以外カウンタ50と同様である。このため、カウンタ51〜54のそれぞれは、入力される信号CS2、信号WP2、信号HOLD2、信号SI2の立ち上がりエッジをカウントし、カウント値CNT3,CNT5,CNT7,CNT9として出力する。なお、カウンタ51〜54は、本発明の第1カウンタに相当する。
I/Oバッファ60は、入力される論理レベルの信号をシリアルフラッシュメモリ11に出力するとともに、システムLSI10とシリアルフラッシュメモリ11と接続する信号線等に生じるノイズを検出する回路である。本実施形態のI/Oバッファ60は、出力回路70,80を含んで構成される。
出力回路70(第1出力回路)は、入力される論理レベルの信号を出力するバッファ回路である。具体的には、Hレベルの信号に応じてHレベルの信号を出力し、Lレベルの信号に応じてLレベルの信号を出力する。本実施形態の出力回路70には、クロックCLK2が入力されるため、クロックCLK2がクロックCLK1として端子22に出力されることとなる。
出力回路80(第2出力回路)は、入力電圧のレベルを所定のしきい値電圧と比較して、論理レベルの信号として出力する回路である。具体的には入力電圧のレベルがしきい値電圧より高い場合、Hレベルの信号を出力し、入力電圧のレベルがしきい値電圧より低い場合、Lレベルの信号を出力する。本実施形態の出力回路80の入力は、端子22と接続されているため、端子22の電圧レベルの変化に応じた論理レベルの信号が出力されることとなる。具体的には、出力回路70からクロックCLK1が出力される間に端子22にノイズが発生しない場合、すなわち、端子22の電圧レベルがクロックCLK1のみに基づいて変化する場合、クロックCLK1がクロックCLK3として出力される。一方、出力回路70からクロックCLK1が出力される間に端子22にノイズが発生する場合、すなわち、端子22の電圧レベルがクロックCLK1及びノイズに基づいて変化する場合、クロックCLK1及びノイズに基づいて定まる電圧に応じたクロックCLK3が出力されることとなる。
本実施形態では、I/Oバッファ61〜64はI/Oバッファ60と同様の構成であり、出力回路71〜74、出力回路81〜84をそれぞれ含んで構成される。また、出力回路71〜74は出力回路70と同様の構成である。出力回路71〜74は入力される信号CS2、信号WP2、信号HOLD2、信号SI2を信号CS1、信号WP1、信号HOLD1、信号SI1としてそれぞれ出力する。さらに、出力回路81〜84は出力回路80と同様の構成である。出力回路81〜84の入力は、端子24、端子26、端子27、端子23がそれぞれ接続される。このため、出力回路81〜84は端子24、端子26、端子27、端子23のそれぞれの電圧レベルに応じた信号CS3、信号WP3、信号HOLD3、信号SI3を出力する。なお、出力回路71〜74は、本発明の第1出力回路に相当し、出力回路81〜84は、本発明の第2出力回路に相当する。
カウンタ90(第2カウンタ)は、入力される論理レベルの信号の立ち上がりエッジをカウントし、カウント値として出力する。また、カウンタ90にメインカウンタ46から指示信号TRG2が入力されると、カウンタ90のカウント値はリセットされる。本実施形態のカウンタ90には、出力回路80からのクロックCLK3が入力される。このため、カウンタ90は、所定のアクセスがされる間に入力されるクロックCLK3の立ち上がりエッジをカウントし、カウント値CNT2として出力する。
カウンタ91〜94は、それぞれに入力される論理レベルの信号が、信号CS3、信号WP3、信号HOLD3、信号SI3である以外カウンタ90と同様である。このため、カウンタ91〜94のそれぞれは、入力される信号CS3、信号WP3、信号HOLD3、信号SI3の立ち上がりエッジをカウントし、カウント値CNT4,CNT6,CNT8,CNT10として出力する。なお、カウンタ91〜94は、本発明の第2カウンタに相当する。
検出回路100(比較信号出力回路)は、メインカウンタ46から指示信号TRG1が入力されると、カウンタ50から入力されるカウント値CNT1とカウンタ90から入力されるカウント値CNT2とを取り込むとともに比較する。そして、比較結果が一致する場合、Lレベルの比較信号CMP1(比較信号)を出力する。一方、比較結果が不一致の場合、Hレベルの比較信号CMP1を出力する。なお、本実施形態では、保持されているカウント値はカウンタ50、及びカウンタ90から入力される度に更新されることとする。
検出回路101〜104は、それぞれに入力されるカウント値がカウント値CNT3,4、カウント値CNT5,6、カウント値CNT7,8、カウント値CNT9,10である以外検出回路100と同様である。このため、検出回路101〜104のそれぞれは、カウント値CNT3,4、カウント値CNT5,6、カウント値CNT7,8、カウント値CNT9,10を取り込むとともに比較し、比較信号CMP2,CMP3,CMP4,CMP5を出力する。なお、検出回路101〜104は、本発明の比較信号出力回路に相当し、比較信号CMP2〜5は、本発明の比較信号に相当する。
なお、カウンタ50,90、及び検出回路100、カウンタ51,91、及び検出回路101、カウンタ52,92、及び検出回路102、カウンタ53,93、及び検出回路103、カウンタ54,94、及び検出回路104が本発明の比較回路に相当する。
OR回路111は、検出回路100〜104からそれぞれ入力される比較信号CMP1〜5が全てLレベルの場合、Lレベルの信号FLGを出力する。また、検出回路100〜104からそれぞれ入力される比較信号CMP1〜5の何れかがHレベルの場合、OR回路111はHレベルの信号FLGを出力する。
ACK信号発生回路112は、メインカウンタ46から指示信号TRG2が入力された際に、OR回路111から入力される信号FLGがLレベルの場合、信号ACKをデータ出力回路45、及びマイコン20に出力する。また、メインカウンタ46から指示信号TRG2が入力された際に、OR回路111から入力される信号FLGがHレベルの場合、レジスタ113に再アクセス要求信号RTYを出力する。
レジスタ113は、マイコン20から入力されるアクセス要求データREQを保持する。そして、ACK信号発生回路112から再アクセス要求信号RTYが入力されると、所定アクセスを再度行うべく、保持しているアクセス要求データREQをクロック発生回路40、CS信号発生回路41、WP信号発生回路42、HOLD信号発生回路43、データ出力回路44に出力する。なお、本実施形態では、保持されているアクセス要求データREQは、マイコン20から入力される度に更新されることとする。
ここで、リードアクセスにおいて、端子22〜27にノイズが発生しない場合のシステムLSI10の動作について説明する。ここでは図3を参照しつつ、カウンタ50,90、I/Oバッファ60、出力回路70,80、及び検出回路100の動作を代表して説明する。
なお、本実施形態では、4ビットのアドレスADDRESS、及び4ビットのコマンドCMDがデータ出力回路44に保持されていることとする。また、シリアルフラッシュメモリ11から入力されるリードデータSO1は32ビットであるとする。さらに、本実施形態では、リードアクセスにおいて、アドレスADDRESSの出力に要するクロックCLK2のサイクル数が4、コマンドCMDの出力に要するクロックCLK2のサイクル数が4、リードデータSO1の入力に要するクロックCLK2のサイクル数が32、ACK信号またはRTY信号の出力に要するクロックCLK2のサイクル数が1であるため、メインカウンタ46の最大カウント値が41であるとする。
図3に示すように、時刻T1でマイコン20からアクセス要求データREQが、クロック発生回路40、CS信号発生回路41、WP信号発生回路42、HOLD信号発生回路43、データ出力回路44、及びレジスタ113に入力されるとともにレジスタ113に保持される。
時刻T2、すなわちアクセス要求データREQが入力されてから所定のタイミングで信号CS2はLレベルとなる。そして、出力回路71から信号CS2が信号CS1として出力されることにより、シリアルフラッシュメモリ11とのアクセスが可能になる。
時刻T3、すなわちアクセス要求データREQが入力されてから所定のタイミングでクロックCLK2の出力が開始される。そして、出力回路70からクロックCLK2がクロックCLK1として出力されることにより、シリアルフラッシュメモリ11はクロックCLK1に同期して信号CS1、信号WP1、信号HOLD1、アクセスデータSI1を取り込むことが可能となる。さらに、出力回路80からクロックCLK1がクロックCLK3として出力される。また、クロックCLK2がカウンタ50に入力されると、クロックCLK2の立ち上がりエッジがカウントされ、カウント値CNT1のインクリメントが開始される。一方、クロックCLK3がカウンタ90に入力されると、クロックCLK3の立ち上がりエッジがカウントされ、カウント値CNT2のインクリメントが開始される。前述の時刻T3になると、データ出力回路44に保持されているコマンドCMD、及びアドレスADDRESSがアクセスデータSI2として順次出力される。このため、出力回路74からアクセスデータSI2がアクセスデータSI1として順次出力される。
時刻T4でアドレスADDRESSの出力が完了すると、時刻T5でアクセスデータSI1として入力されたコマンドCMD、及びアドレスADDRESSに基づいて、シリアルフラッシュメモリ11の所定アドレスの記憶領域から読み出されたリードデータSO1の入力が開始される。前述の時刻T5になると、順次入力されるリードデータSO1は、データ出力回路45に順次保持される。
時刻T6でクロックCLK2のサイクル数が40になると、カウンタ50により40がカウントされ、カウント値CNT1として出力される。一方、端子22にノイズは発生しておらず、クロックCLK1がクロックCLK3として出力されるため、カウンタ90により40がカウントされ、カウント値CNT2として出力される。また、メインカウンタ46のカウント値が40になるため、指示信号TRG1がメインカウンタ46から出力される。指示信号TRG1が検出回路100に入力されると、カウンタ50からカウント値CNT1として40が、カウンタ90からカウント値CNT2として40が検出回路100に取り込まれるとともに比較される。カウント値CNT1とカウント値CNT2が同じ値であるため、比較結果が一致として検出回路100からLレベルの比較信号CMP1が出力される。したがって、比較信号CMP1がLレベルとなる場合、クロックCLK3にノイズが生じていないことが検出される。さらに、ここでは端子23〜27でノイズは発生していないため、カウント値CNT3,4、カウント値CNT5,6、カウント値CNT7,8、カウント値CNT9,10はそれぞれ一致となる。したがって、検出回路101〜104からそれぞれ出力される比較信号CMP2〜5は全てLレベルとなるため、OR回路111からLレベルのフラグFLGが出力される。
時刻T7でクロックCLK2のサイクル数が41になると、すなわち、メインカウンタ46のカウント値が41になると、指示信号TRG2がメインカウンタ46から出力される。指示信号TRG2がカウンタ50、及びカウンタ90に入力されるとそれぞれのカウント値がリセットされる。また、指示信号TRG2がACK発生回路112に入力される際に、OR回路111から入力されるフラグFLGがLレベルのため、信号ACKがデータ出力回路45、及びマイコン20に出力される。そして、保持されているリードデータSO1がデータDATAとしてマイコン20に出力されるとともに所定アクセスがされたことがマイコン20に通知される。
つぎに、リードアクセスにおいて、端子22〜27に所定のタイミングでノイズが発生する場合のシステムLSI10の動作について説明する。ここでは図4を参照しつつ、後述する時刻T11〜T12でノイズが発生する場合のカウンタ50,90、I/Oバッファ60、出力回路70,80、及び検出回路100の動作を代表して説明する。
図4に示すように、時刻T8で入力されたアクセス要求データREQに基づいて、時刻T9からT11の動作は、ノイズ発生しない場合と同様のリードアクセス動作となる。
時刻T11からT12で、出力回路70からクロックCLK1が出力される間に端子22にノイズが発生し、端子22の電圧レベルがHレベルに固定されたとする。この場合、出力回路80から端子22に応じてHレベルに固定されたクロックCLK3が出力される。したがって、クロックCLK2の6サイクル目において、カウント値CNT2として4が出力される。一方、カウンタ50により6がカウントされ、カウント値CNT1として出力される。
時刻T13から14の動作はノイズが発生しないため、アクセス要求データREQに基づいて、前述の場合と同様のリードアクセス動作となる。
時刻T15で、クロックCLK2のサイクル数が40になると、カウンタ50において40がカウントされ、カウント値CNT1として出力される。一方、クロックCLK2の5,6サイクルにおいて、カウント値がインクリメントされないため、カウンタ90にカウント値CNT2として38がカウントされる。また、メインカウンタ46のカウント値が40になると、指示信号TRG1がメインカウンタ46から出力される。指示信号TRG1が検出回路100に入力されると、カウンタ50からカウント値CNT1として40が、カウンタ90からカウント値CNT2として38が検出回路100に取り込まれるともに比較される。カウント値CNT1とカウント値CNT2が異なる値であるため、比較結果が不一致として検出回路100からHレベルの比較信号CMP1が出力される。したがって、比較信号CMP1がHレベルとなる場合、クロックCLK3にノイズが生じていることが検出される。さらに、ここでは端子23〜27でノイズが発生しているため、カウント値CNT3,4、カウント値CNT5,6、カウント値CNT7,8、カウント値CNT9,10はそれぞれ不一致となる。したがって、検出回路101〜104からそれぞれ出力される比較信号CMP2〜5は全てHレベルとなるため、OR回路111からHレベルのフラグFLGが出力される。
時刻T16で、クロックCLK2のサイクル数が41になると、すなわち、メインカウンタ46のカウント値が41になると、指示信号TRG2がメインカウンタ46から出力される。指示信号TRG2がカウンタ50、及びカウンタ90に入力されるとそれぞれのカウント値がリセットされる。また、指示信号TRG2がACK信号発生回路112に入力される際に、OR回路111から入力されるフラグFLGがHレベルのため、信号ACKはデータ出力回路45、及びマイコン20に出力されない。したがって、リードデータSO1はデータ出力回路45に保持され続ける。一方、信号RTYがレジスタ113に出力され、レジスタ113に保持されているアクセス要求データREQが出力される。入力されたアクセス要求データREQに基づいて、クロック発生回路40、CS信号発生回路41、WP信号発生回路42、HOLD信号発生回路43、データ出力回路44にそれぞれ信号を発生させることにより、前述のリードアクセスが再び実行される。
以上に説明した構成からなる本実施形態のインターフェース回路21において、本実施形態では、出力回路70は、入力されるクロックCLK2をクロックCLK1として端子22に出力する。そして、出力回路80は、端子22の電圧レベルの変化に応じてクロックCLK3を出力する。クロックCLK2が出力回路70に入力されてから所定アクセスがされる間、カウンタ50は、入力されるクロックCLK2の論理レベルの変化の回数をカウントし、カウンタ90は、入力されるクロックCLK3の論理レベルの変化の回数をカウントする。検出回路100は、メインカウンタ46から指示信号TRG1が入力されると、カウンタ50からカウント値CNT1とカウンタ90からカウント値CNT2を取り込むとともに比較する。端子22〜27にノイズが発生しない場合、比較結果は一致となるため、検出回路100はLレベルの比較信号CMP1を出力する。したがって、所定のアクセスがされたことが検出される。一方、端子22〜27にノイズが発生する場合、比較結果は不一致となるため、検出回路100はHレベルの比較信号CMP1を出力する。したがって、所定のアクセスがされなかったことが検出される。以上から、例えば送受信されるデータにパリティビットを付加することによりアクセスの正常性を検出する方法と比較して、本実施形態ではパリティビットを付加することがない。このため、アクセスにおけるデータ量の増加を抑制するとともに、アクセス速度を低下させることなくメモリアクセスの正常性を検出することが可能である。
また、本実施形態では、カウンタ50,90、及び検出回路100により、端子22に発生するノイズが検出される。カウンタ50は、所定のアクセスがされる間に入力されるクロックCLK2の立ち上がりエッジをカウントし、カウンタ90は所定のアクセスがされる間に入力されるクロックCLK3の立ち上がりエッジをカウントする。したがって、前述のように、取り込まれたカウント値の比較結果に基づいて、端子22〜27にノイズが発生しているか否かを検出することが可能である。ここで、カウンタ50,90、及び検出回路100ではなく、例えばEXORゲートにクロックCLK2とクロックCLK3とを入力し、EXORゲートの出力に基づいてクロックCLK2とクロックCLK3とが一致しているか否かを検出することが可能である。しかし、入力されるクロックCLK2と入力されるクロックCLK3との間に遅延が生じると、EXORゲートは誤った比較結果を出力することがある。一方、本実施形態において、カウンタ50,90は、それぞれ入力されるクロックの立ち上がりエッジをそれぞれカウントしているため、入力されるクロックCLK2と入力されるクロックCLK3との間に遅延が生じた場合であっても、誤った比較結果を出力することはない。したがって、本実施形態では、カウンタを用いることにより、クロックCLK2とクロックCLK3の論理レベルの変化の回数を正確に比較することができる。
また、本実施形態では、端子22にノイズが発生していることが検出されると、ACK信号発生回路112は信号RTYを出力する。そして、レジスタ113は、信号RTYが入力されると所定アクセスを再度行うべく、保持している所定のアクセス要求データREQをクロック発生回路40、CS信号発生回路41、WP信号発生回路42、HOLD信号発生回路43、データ出力回路44に出力する。したがって、本実施形態では、ノイズが生じていることが検出されると、自律で所定アクセスを再度行うことができる。
また、本実施形態では、クロックCLK2に基づいて、メインカウンタ46のカウント値が40になると指示信号TRG1を出力する。そして、検出回路100は、指示信号TRG1が入力されると、カウンタ50,90からそれぞれ入力されるカウント値CNT1,2を取り込むとともに比較し、比較信号CMP1を出力する。このため、本実施形態においては、例えば、データ転送速度の変更等によりクロックCLK2の周期が変更された場合であっても、確実に所定のアクセスが完了するよりも1サイクル前のタイミングで、検出回路100に比較信号CMP1を出力させることが可能となる。
なお、上記実施例は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
本実施形態では、マイコン20がインターフェース回路21を介してシリアルフラッシュメモリ11との間でプログラムデータを送受信する際、インターフェース回路21の端子22〜27に設けたI/Oバッファ60〜64、カウンタ50〜54,90〜94、及び検出回路100〜104によりノイズが検出され、データの正否を検出可能な構成としている。例えば、マイコンがモーター駆動回路内部のレジスタとの間でモーターを制御するためのデータを送受信する際、マイコンがデータを送信する端子にI/Oバッファ60、カウンタ50、90、及び検出回路100を設けることとしてもよい。その場合、端子に発生するノイズが検出され、データの正否を検出できる。なお、この際には、モーター駆動回路内部のレジスタが本発明の記憶回路に相当する。
本実施形態では、クロックCLK2のサイクル数41に応じてメインカウンタ46は、カウント値が40になると指示信号TRG1を出力し、カウント値が41になると指示信号TRG2を出力する。本実施形態では、これに限られるものではなく、例えば、TRGカウント値が30になると指示信号TRG1を出力し、カウント値が41になると指示信号TRG2を出力することとしてもよい。この場合であっても、クロックCLK2のサイクル数が30となるまでの間に端子22に発生するノイズを検出できる。また、メインカウンタ46のカウント値が41になった後、マイコンが、例えばクロックCLK2のサイクル数が42になると指示信号TRG1を出力し、クロックCLK2のサイクル数が43になると指示信号TRG2を出力することとしてもよい。この場合であっても、クロックCLK2のサイクル数が43となるまでの間に端子22に発生するノイズを検出できる。
本実施形態では、検出回路100〜104からそれぞれ出力される比較信号CMP1〜5により、端子22〜27に発生するノイズが検出される。そして、比較信号CMP1〜5に基づいてOR回路111は信号FLGを出力し、信号FLGに基づいてACK信号発生回路112が、信号ACKをマイコン20に出力する構成としている。しかし、検出回路102が出力する比較信号CMP3をマイコン20に出力することにより、信号WP1が出力される間に端子26に発生するノイズを検出する構成としてもよい。その場合、書き込みが禁止されている領域に誤ってデータが書き込まれることにより、シリアルフラッシュメモリ11に格納されたプログラムデータが壊されているか否かを検出できる。
本実施形態では、カウンタ51〜53は、それぞれに入力される論理レベルの信号が、信号CS2、信号WP2、信号HOLD2である以外カウンタ50と同様としたが、CS2信号、信号WP2、信号HOLD2の論理レベルの変化回数はクロックCLK2の論理レベルの変化回数より少ないため、カウンタ51〜53をカウンタ50より最大カウント値が少ないカウンタで構成してもよい。
本実施形態では、端子22にノイズが発生し、出力回路80から端子22に応じてクロックCLK3が出力される場合、クロックCLK3の論理レベルの変化回数は、クロックCLK2の論理レベルの変化回数より多いことがある。したがって、本実施形態では、カウンタ90をカウンタ50より最大カウント値が多いカウンタで構成してもよい。
10 システムLSI
11 シリアルフラッシュメモリ
12〜17 端子
20 マイコン
21 インターフェース回路
22〜27 端子
40 クロック発生回路
41 CS信号発生回路
42 WP信号発生回路
43 HOLD信号発生回路
44,45 データ出力回路
46 メインカウンタ
50〜54 カウンタ
60〜64 I/Oバッファ
70〜74 出力回路
80〜84 出力回路
90〜94 カウンタ
100〜104 検出回路
111 OR回路
112 ACK信号発生回路
113 レジスタ

Claims (4)

  1. 記憶回路にアクセスするべく一方の論理レベルまたは他方の論理レベルに変化するアクセス信号が入力され、前記アクセス信号の論理レベルと同じ論理レベルの第1信号を前記記憶回路に出力する第1出力回路と、前記第1出力回路から出力された前記第1信号のレベルと所定のしきい値との比較結果に応じた論理レベルの第2信号を出力する第2出力回路と、を有するI/Oバッファと、
    前記アクセス信号の少なくとも一部が前記第1出力回路に入力された後、前記第1出力回路に入力される前記アクセス信号の論理レベル及び前記第2出力回路から出力される前記第2信号の論理レベルの変化の回数を比較し、前記第1出力回路に入力される前記アクセス信号に基づく所定のアクセスがされたか否かを示す比較信号を出力する比較回路と、
    を備え
    前記比較回路は、
    前記第1出力回路に入力される前記アクセス信号の所定のエッジに基づいてカウントする第1カウンタと、
    前記第2出力回路から出力される前記第2信号の前記所定のエッジに基づいてカウントする第2カウンタと、
    前記アクセス信号の少なくとも一部が前記第1出力回路に入力されてから所定期間経過後までの間に、前記第1カウンタ及び前記第2カウンタの夫々のカウント値の変化量が同じ場合、前記所定のアクセスがされたことを示す前記比較信号を出力し、前記変化量が異なる場合、前記所定のアクセスがされなかったことを示す前記比較信号を出力する比較信号出力回路と、
    を含むことを特徴とするインターフェース回路。
  2. 請求項1に記載のインターフェース回路であって、
    前記アクセス信号は、クロック信号及びデータ信号を含み、
    前記I/Oバッファは、前記クロック信号のための第1I/Oバッファと、前記データ信号のための第2I/Oバッファと、を含み、
    前記比較回路は、前記クロック信号のための第1比較回路と、前記データ信号のための第2比較回路と、を含み、
    前記第1及び第2比較回路から夫々出力される第1及び第2比較信号が入力され、前記第1及び第2比較信号のうち、一方の比較信号が一方の論理レベルであるとともに他方の比較信号が他方の論理レベルであるとき、前記所定のアクセスがされなかったことを示すフラグ信号を出力するOR回路、を更に備える
    ことを特徴とする請求項1に記載のインターフェース回路。
  3. 請求項に記載のインターフェース回路であって、
    前記所定のアクセスがされなかったことを示す前記比較信号に基づいて、前記アクセス信号を前記第1出力回路に対して出力するアクセス信号生成回路を更に備えること、
    を特徴とするインターフェース回路。
  4. 請求項または請求項3に記載のインターフェース回路であって、
    前記アクセス信号は、
    所定周期のクロック信号であり、
    前記比較信号出力回路は、
    前記クロック信号に基づいて、前記クロック信号の少なくとも一部が前記第1出力回路に入力されてから前記所定期間経過後に前記比較信号を出力すること、
    を特徴とするインターフェース回路。
JP2009091436A 2009-04-03 2009-04-03 インターフェース回路 Active JP5350049B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2009091436A JP5350049B2 (ja) 2009-04-03 2009-04-03 インターフェース回路
US12/748,481 US7945744B2 (en) 2009-04-03 2010-03-29 Interface circuit
EP10158321A EP2237160A2 (en) 2009-04-03 2010-03-30 Memory interface circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009091436A JP5350049B2 (ja) 2009-04-03 2009-04-03 インターフェース回路

Publications (2)

Publication Number Publication Date
JP2010244259A JP2010244259A (ja) 2010-10-28
JP5350049B2 true JP5350049B2 (ja) 2013-11-27

Family

ID=42315914

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009091436A Active JP5350049B2 (ja) 2009-04-03 2009-04-03 インターフェース回路

Country Status (3)

Country Link
US (1) US7945744B2 (ja)
EP (1) EP2237160A2 (ja)
JP (1) JP5350049B2 (ja)

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440749A (en) * 1989-08-03 1995-08-08 Nanotronics Corporation High performance, low cost microprocessor architecture
JPH04336724A (ja) * 1991-05-13 1992-11-24 Matsushita Electric Ind Co Ltd シリアル受信装置
JP3904244B2 (ja) * 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
JP2648796B2 (ja) * 1993-10-12 1997-09-03 富士通株式会社 データ伝送異常検出方式およびデータ伝送機器
JPH0816487A (ja) 1994-07-01 1996-01-19 Hitachi Ltd データ処理装置
JP3019740B2 (ja) * 1994-12-27 2000-03-13 日本電気株式会社 シリアルインターフェースおよびシリアルデータ転送システム
JP3461290B2 (ja) * 1998-07-30 2003-10-27 富士通株式会社 バッファアクセス制御回路
JP2001331384A (ja) * 2000-05-24 2001-11-30 Nec Miyagi Ltd パッケージ間通信障害検出システム及びその方法
JP2005049970A (ja) * 2003-07-30 2005-02-24 Renesas Technology Corp 半導体集積回路
US7394716B1 (en) * 2005-04-01 2008-07-01 Cypress Semiconductor Corporation Bank availability indications for memory device and method therefor
JP2007148592A (ja) * 2005-11-24 2007-06-14 Funai Electric Co Ltd データ通信装置
US7730268B2 (en) * 2006-08-18 2010-06-01 Cypress Semiconductor Corporation Multiprocessor system having an input/output (I/O) bridge circuit for transferring data between volatile and non-volatile memory
JP2008262444A (ja) * 2007-04-13 2008-10-30 Seiko Epson Corp 制御装置、プリンタ、リードアクセス方法およびプログラム

Also Published As

Publication number Publication date
US7945744B2 (en) 2011-05-17
JP2010244259A (ja) 2010-10-28
EP2237160A2 (en) 2010-10-06
US20100253388A1 (en) 2010-10-07

Similar Documents

Publication Publication Date Title
JP4550439B2 (ja) Ecc制御装置
KR102393427B1 (ko) 반도체장치 및 반도체시스템
US8732551B2 (en) Memory controller with automatic error detection and correction
JP4840859B2 (ja) 半導体装置、及び起動方法
JP4936746B2 (ja) 半導体装置
US20060195650A1 (en) Method to detect NAND-flash parameters by hardware automatically
KR100474622B1 (ko) 마이크로컴퓨터
US10891185B2 (en) Error counters on a memory device
TWI639086B (zh) 具有可中斷指令序列的記憶體及其操作方法
TWI489482B (zh) 取樣電路模組、記憶體控制電路單元及資料取樣方法
US8041856B2 (en) Skip based control logic for first in first out buffer
CN107797821B (zh) 重试读取方法以及使用该方法的装置
TWI729239B (zh) 半導體裝置
TW201836276A (zh) 半導體裝置
US20070245036A1 (en) Illegal commands handling at the command decoder stage
JP6447167B2 (ja) 半導体デバイス、ログ取得方法及び電子機器
US10254994B2 (en) Methods for migrating data to avoid read disturbance and apparatuses using the same
JP5350049B2 (ja) インターフェース回路
US11327882B2 (en) Method and apparatus for eliminating bit disturbance errors in non-volatile memory devices
US10204699B2 (en) Methods for migrating data to avoid read disturbance and apparatuses using the same
JP4103452B2 (ja) シリアルeepromのデータ入力制御装置
EP2400393A2 (en) Data processing circuit and data processing method
KR20170042242A (ko) 불휘발성 기억 장치
US10566062B2 (en) Memory device and method for operating the same
JP6137944B2 (ja) 半導体装置、試験回路及び試験方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20110613

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120402

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20130212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130708

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130821

R150 Certificate of patent or registration of utility model

Ref document number: 5350049

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250