JP2009031974A - Semiconductor integrated circuit - Google Patents

Semiconductor integrated circuit Download PDF

Info

Publication number
JP2009031974A
JP2009031974A JP2007194420A JP2007194420A JP2009031974A JP 2009031974 A JP2009031974 A JP 2009031974A JP 2007194420 A JP2007194420 A JP 2007194420A JP 2007194420 A JP2007194420 A JP 2007194420A JP 2009031974 A JP2009031974 A JP 2009031974A
Authority
JP
Japan
Prior art keywords
memory
data
instruction
read
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.)
Withdrawn
Application number
JP2007194420A
Other languages
Japanese (ja)
Inventor
Akio Inomata
章生 猪又
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.)
Kawasaki Microelectronics Inc
Original Assignee
Kawasaki Microelectronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawasaki Microelectronics Inc filed Critical Kawasaki Microelectronics Inc
Priority to JP2007194420A priority Critical patent/JP2009031974A/en
Publication of JP2009031974A publication Critical patent/JP2009031974A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To detect the abnormality of a memory without deteriorating processing efficiency or making a designer conscious of it. <P>SOLUTION: This semiconductor integrated circuit is provided with a memory monitor circuit configured of an instruction monitoring part for monitoring an instruction to be sent from a memory interface to a memory; a write-in data storage part for storing data to be sent to the memory so as to be written in the specific address of the memory when an instruction to instruct the write-in of data in the specific address of the memory is detected by the instruction monitoring part; a read-out data storage part for storing the data to be read from the specific address, and to sent to the memory interface when an instruction to instruct the read-out of the data from the specific address of the memory is detected by the instruction monitoring part; and a data comparison section for comparing the data stored by the write-in data storage part with the data stored by the read-out data storage part, and for detecting mismatching. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、メモリーインタフェースを介してメモリーを利用する半導体集積回路に関し、特に、メモリーが異常状態になったことを検出し、もしくはさらに、異常状態になったメモリーを初期化するメモリー監視回路を備えた半導体集積回路に関する。   The present invention relates to a semiconductor integrated circuit that uses a memory via a memory interface, and in particular, includes a memory monitoring circuit that detects that a memory is in an abnormal state, or further initializes the memory in an abnormal state. The present invention relates to a semiconductor integrated circuit.

さまざまな目的のためにデータ処理を行う半導体集積回路において、処理すべきデータを一時的に記憶するために、メモリーが必要になる場合が多い。特に、画像データ等の大量のデータを処理するためには、大きな記憶量を有するメモリーが必要である。メモリーは、メモリーを利用してデータ処理を行う回路と同一の半導体集積回路チップ上に設けることが好ましい場合もある。しかし、大容量のメモリーが必要な場合には、別チップのメモリーと組み合わせて、データ処理回路を構成する方が好ましい場合も多い。そこで、顧客のニーズに応じたASIC(特定用途向け半導体集積回路)を提供するASICベンダーでは、メモリーチップを制御するメモリーコントローラを、設計資産として提供することが一般的である。   In a semiconductor integrated circuit that performs data processing for various purposes, a memory is often required to temporarily store data to be processed. In particular, in order to process a large amount of data such as image data, a memory having a large storage capacity is required. In some cases, the memory is preferably provided on the same semiconductor integrated circuit chip as a circuit that performs data processing using the memory. However, when a large-capacity memory is required, it is often preferable to configure a data processing circuit in combination with a memory of another chip. Therefore, an ASIC vendor that provides an ASIC (application-specific semiconductor integrated circuit) according to customer needs generally provides a memory controller that controls a memory chip as a design asset.

メモリーを利用してデータ処理を行う半導体集積回路の場合、メモリーを同一チップ上に設ける場合でも、別チップのメモリーを利用する場合でも、メモリーの動作に異常があると正常な処理ができなくなる。そこで、メモリーの異常を検知するために、メモリーの特定のアドレスに書き込んだデータと、同一のアドレスから読み出したデータとを比較する方法が従来から知られている。   In the case of a semiconductor integrated circuit that performs data processing using a memory, even when the memory is provided on the same chip or when a memory of another chip is used, normal processing cannot be performed if the memory operation is abnormal. Therefore, in order to detect an abnormality in the memory, a method of comparing data written to a specific address in the memory with data read from the same address is conventionally known.

例えば、特許文献1には、ブランキング期間は画像記録用のメモリーの書き込み/読み出しが中断されていることを利用し、その期間に、診断対象領域に記憶されたデータを退避した上で、メモリーにテストデータを書き込み、読み出して元のテストデータと比較することで、正常/異常判断を行うことが提案されている。   For example, Patent Document 1 utilizes the fact that writing / reading of an image recording memory is interrupted during the blanking period, and during that period, data stored in the diagnosis target area is saved and then the memory is stored. It has been proposed to make a normal / abnormal judgment by writing test data into and reading it out and comparing it with the original test data.

特許文献2には、メモリーに書き込まれるデータを保持するデータラッチ回路と、メモリーへの書き込みが終了した時点でリード制御信号を生成するリードパルス生成回路とを設け、リード制御信号の生成によってメモリーから格納されているデータを出力させ、比較回路でデータラッチ回路からのデータと比較し、一致しないときはエラー信号を出力することが提案されている。
特開平7−67146号公報 特開平7−160586号公報
Patent Document 2 includes a data latch circuit that holds data to be written to the memory and a read pulse generation circuit that generates a read control signal when writing to the memory is completed. It has been proposed to output stored data, compare it with data from a data latch circuit by a comparison circuit, and output an error signal if they do not match.
JP-A-7-67146 JP-A-7-160586

特許文献1の技術では、ブランキング期間であることを検出するととともに、さまざまな操作を制御する回路、もしくは、ソフトウエアが必要である。特許文献1の実施例では、ブランキング期間検出回路およびその他の回路と、メモリー診断プログラムがロードされたCPUとが、メモリー診断の制御を行う。しかし、データ処理用の半導体集積回路の設計を行う設計者に対して、本来のデータ処理ではないメモリーの異常検知を行うための回路やソフトウエアの設計を要求することは困難である。特に、顧客に設計を依頼するASICの場合にはきわめて困難である。従って、設計者が意識すること無く、メモリーの異常検知を行い、さらに好ましくは、対策を行うことが望まれる。特許文献1の技術ではこのような課題には対応できない。   The technique of Patent Document 1 requires a circuit or software for detecting various blanking periods and controlling various operations. In the embodiment of Patent Document 1, a blanking period detection circuit and other circuits, and a CPU loaded with a memory diagnosis program control memory diagnosis. However, it is difficult to require a designer who designs a semiconductor integrated circuit for data processing to design a circuit or software for detecting an abnormality in a memory that is not the original data processing. This is particularly difficult in the case of an ASIC that requests a design from a customer. Therefore, it is desirable to detect the abnormality of the memory without being aware of the designer, and more preferably to take countermeasures. The technique of Patent Document 1 cannot cope with such a problem.

特許文献2の技術では、データラッチ回路、リードパルス発生回路等によって、CPU等による制御を必要とすることなく、メモリーの異常を検知することができる。しかしながら、メモリーへの書き込みが行われるたびにエラー検知のための読み出しが行われる。このため、本来のデータ処理の目的以外でメモリーが利用される期間が長くなり、データ処理の効率が低下するという問題がある。   In the technique of Patent Document 2, a memory abnormality can be detected by a data latch circuit, a read pulse generation circuit, or the like without requiring control by a CPU or the like. However, every time writing to the memory is performed, reading for error detection is performed. For this reason, there is a problem that the period of time during which the memory is used for purposes other than the purpose of the original data processing becomes longer, and the efficiency of data processing decreases.

本発明は、処理効率を低下させることなく、かつ、設計者が意識することなく、メモリーの異常を検知する、もしくはさらに、異常に対する対策を行うことが可能な技術を提供することを課題とする。
It is an object of the present invention to provide a technology capable of detecting a memory abnormality or taking a countermeasure against the abnormality without lowering the processing efficiency and without the designer being aware of it. .

上記の課題を解決するため、本発明の第1の半導体集積回路は、メモリーインタフェースからメモリーに送られる命令を監視する命令監視部と、
前記命令監視部が、前記メモリーの特定のアドレスへの書き込みを指示する命令を検知したときに、該特定のアドレスに書き込むために前記メモリーインタフェースから前記メモリーに送られるデータを保持するとともに、フラグをセットする書込データ保持部と、
前記のフラグがセットされ、かつ、前記命令監視部が、前記メモリーの前記特定のアドレスからの読み出しを指示する命令を検知したときに、該特定のアドレスから読み出されて前記メモリーインタフェースに送られるデータを保持する読出データ保持部と、
前記読出データ保持部がデータを保持したときに、前記書込データ保持部が保持したデータと前記読出データ保持部が保持したデータとを比較し、不一致を検出するデータ比較部とからなるメモリー監視回路を備えたことを特徴とする。
In order to solve the above problem, a first semiconductor integrated circuit according to the present invention includes an instruction monitoring unit that monitors an instruction sent from a memory interface to a memory;
When the instruction monitoring unit detects an instruction to write to a specific address in the memory, the instruction monitoring unit holds data sent from the memory interface to the memory to write to the specific address, and sets a flag. Write data holding unit to be set;
When the flag is set and the instruction monitoring unit detects an instruction to read from the specific address of the memory, the instruction is read from the specific address and sent to the memory interface. A read data holding unit for holding data;
Memory monitoring comprising a data comparison unit for comparing the data held by the write data holding unit with the data held by the read data holding unit and detecting a mismatch when the read data holding unit holds data A circuit is provided.

ここで、前記データ比較部が、前記不一致を検出したときに、前記メモリーインタフェースに対して、前記メモリーの初期化を要求する状態通知信号を出力することが好ましい。   Here, it is preferable that when the data comparison unit detects the mismatch, the data comparison unit outputs a status notification signal requesting initialization of the memory to the memory interface.

さらに、前記データ比較部が、所定回数だけ連続して不一致を検出したときに、前記状態通知信号を出力することがより好ましい。   Furthermore, it is more preferable that the state comparison signal is output when the data comparison unit detects a mismatch continuously a predetermined number of times.

上記の課題を解決するため、本発明の第2の半導体集積回路は、ユーザーロジック部とメモリーインタフェースとを備え、該ユーザーロジック部に含まれる回路がメモリーインタフェースを介して外部に接続されるメモリーへのデータ書き込み、および、該メモリーからのデータの読み出しを行う半導体集積回路において、
前記メモリーインタフェースから前記メモリーに送られる命令を監視する命令監視部と、
前記命令監視部が、前記メモリーの特定のアドレスへの書き込みを指示する命令を検知したときに、該所定のアドレスに書き込むために前記メモリーインタフェースから前記メモリーに送られるデータを保持するとともに、フラグをセットする書込データ保持部と、
前記のフラグがセットされ、かつ、前記命令監視部が、前記メモリーの前記特定のアドレスからの読み出しを指示する命令を検知したときに、該所定のアドレスから読み出されて前記メモリーインタフェースに送られるデータを保持する読出データ保持部と、
前記読出データ保持部がデータを保持したときに、前記書込データ保持部が保持したデータと前記読出データ保持部が保持したデータとを比較し、不一致を検出するデータ比較部とからなるメモリー監視回路を備えたことを特徴とする。
In order to solve the above problem, a second semiconductor integrated circuit according to the present invention includes a user logic unit and a memory interface, and a circuit included in the user logic unit is connected to the outside via the memory interface. In a semiconductor integrated circuit that writes data and reads data from the memory,
A command monitoring unit that monitors commands sent from the memory interface to the memory;
When the instruction monitoring unit detects an instruction to write to a specific address of the memory, the instruction monitoring unit holds data sent from the memory interface to the memory to write to the predetermined address, and sets a flag. Write data holding unit to be set;
When the flag is set and the instruction monitoring unit detects an instruction to instruct reading from the specific address of the memory, the instruction is read from the predetermined address and sent to the memory interface. A read data holding unit for holding data;
Memory monitoring comprising a data comparison unit for comparing the data held by the write data holding unit with the data held by the read data holding unit and detecting a mismatch when the read data holding unit holds data A circuit is provided.

ここで、前記ユーザーロジック部に含まれる回路が顧客が設計した回路であり、かつ、前記メモリーインタフェースおよびメモリー監視回路がASIC製造者がマクロセルとして用意したものであることが好ましい。   Here, it is preferable that the circuit included in the user logic unit is a circuit designed by a customer, and the memory interface and the memory monitoring circuit are prepared as a macro cell by an ASIC manufacturer.

本発明の半導体集積回路では、メモリー監視回路が、メモリーインタフェースからメモリーに送られる命令を監視することにより、他の回路やソフトウエアによる制御を必要とすることなくメモリーの状態を監視することができる。従って、設計者が意識することなくメモリーの状態を監視し、異常状態になった場合に検知することが可能になる。また、メモリー監視回路が、特定のアドレスへの書き込みと、その後の同一アドレスからの読み出しを検知して、書込データおよび読出データを保持し、その間の比較を行うので、メモリーが、データ処理のために本来必要な書き込み、読み出し動作を行うことのみによって、状態の監視を行うことができる。従って、処理効率が低下することはない。   In the semiconductor integrated circuit of the present invention, the memory monitoring circuit can monitor the state of the memory without the need for control by other circuits or software by monitoring instructions sent from the memory interface to the memory. . Therefore, it is possible to monitor the state of the memory without being aware of the designer and detect when an abnormal state occurs. In addition, the memory monitoring circuit detects writing to a specific address and subsequent reading from the same address, holds write data and read data, and performs comparison between them. Therefore, it is possible to monitor the state only by performing the write and read operations that are originally necessary. Therefore, the processing efficiency does not decrease.

図1は、本発明の半導体集積回路の第1の実施形態の一例を示す回路図である。   FIG. 1 is a circuit diagram showing an example of a first embodiment of a semiconductor integrated circuit according to the present invention.

図1の半導体集積回路10は、別チップとして設けたメモリー(SDRAM)50を利用して論理演算処理を行う各種の回路が設けられたユーザーロジック部20と、メモリー50の制御を行うとともにユーザーロジック部20とメモリー50との間のデータのやりとりを制御するメモリーインタフェース30とを含む。   The semiconductor integrated circuit 10 shown in FIG. 1 controls a user logic unit 20 provided with various circuits for performing logical operation processing using a memory (SDRAM) 50 provided as a separate chip, and controls the memory 50 and user logic. And a memory interface 30 that controls data exchange between the unit 20 and the memory 50.

メモリーインタフェース30とメモリー50との間は、データ配線32と命令配線34とによって接続されている。データ配線32は、ユーザーロジック部20の回路が、メモリー50に書き込むべきデータ(書込データW_DATA)を、メモリーインタフェース30を介してメモリー50に送信するとともに、メモリー50から読み出したデータ(読出データR_DATA)を、メモリーインタフェース30を介して受信するための配線である。データ配線32は、半導体集積回路10内では、書込データ配線32Bと読出データ配線32Cとに分かれている。これらの半導体集積回路10内のデータ配線は、それぞれ出力バッファおよび入力バッファを介して、半導体集積回路10とメモリー50との間の共通のデータ配線32Aと接続されている。   The memory interface 30 and the memory 50 are connected by a data line 32 and a command line 34. The data wiring 32 transmits data (write data W_DATA) to be written to the memory 50 by the circuit of the user logic unit 20 to the memory 50 via the memory interface 30 and also reads data (read data R_DATA) read from the memory 50. ) Is received via the memory interface 30. In the semiconductor integrated circuit 10, the data line 32 is divided into a write data line 32B and a read data line 32C. The data lines in the semiconductor integrated circuit 10 are connected to a common data line 32A between the semiconductor integrated circuit 10 and the memory 50 through an output buffer and an input buffer, respectively.

命令配線34は、ユーザーロジック部20の回路が、メモリーを制御するための各種の命令COMを、メモリーインタフェース30を介してメモリー50に送るための配線である。例えば、書き込みや読み出し等の命令や、メモリー50の初期化のために必要な各種の命令が、命令配線34を通じてメモリー50に送られる。また、データを書き込む、もしくは、データを読み出すアドレスを指定するアドレス信号ADDRも、命令配線を通じてメモリー50に送られる。データ配線34は、半導体集積回路10内のデータ配線34Bと、半導体集積回路10とメモリー50とのデータ配線32Aとに別れ、これらは出力バッファを介して接続されている。   The command wiring 34 is a wiring for the circuit of the user logic unit 20 to send various commands COM for controlling the memory to the memory 50 via the memory interface 30. For example, commands such as writing and reading and various commands necessary for initializing the memory 50 are sent to the memory 50 through the command wiring 34. Further, an address signal ADDR for designating an address for writing data or reading data is also sent to the memory 50 through the command wiring. The data line 34 is divided into a data line 34B in the semiconductor integrated circuit 10 and a data line 32A between the semiconductor integrated circuit 10 and the memory 50, which are connected via an output buffer.

なお、これらのデータ配線32、命令配線34、およびそれ以外の、二重線で示された配線は、それぞれのデータ、アドレス、および命令を送るために必要なビット幅を有するものである。   Note that the data wiring 32, the command wiring 34, and the other wirings indicated by double lines have a bit width necessary for sending each data, address, and command.

半導体装置集積回路10とメモリー50との間には、また、クロック信号CLKをメモリー50に供給するクロック配線22が設けられている。クロック配線22は、半導体集積回路10内のクロック配線22Bと、半導体集積回路10とメモリー50とのクロック配線22Aとに別れ、これらは出力バッファを介して接続されている。クロック信号CLKは、メモリーインタフェース30にも供給される。   Between the semiconductor device integrated circuit 10 and the memory 50, a clock wiring 22 for supplying the clock signal CLK to the memory 50 is provided. The clock wiring 22 is divided into a clock wiring 22B in the semiconductor integrated circuit 10 and a clock wiring 22A between the semiconductor integrated circuit 10 and the memory 50, which are connected via an output buffer. The clock signal CLK is also supplied to the memory interface 30.

半導体集積回路10のユーザーロジック部20に設けた各種の回路は、別チップとして設けたメモリー50に、メモリーインタフェース30を介して各種の命令およびアドレス信号を送り、データの送受信を行う。これによって、メモリー50を利用した各種のデータ処理を行うことができる。しかし、図1に示した構成では、例えば、半導体集積回路10とメモリー50との間のクロック配線22A(通常は、配線基板上に設けられる)の長さや形状の影響によって、メモリー50が受け取るクロック信号CLKのタイミングを厳密に制御することが困難である。このため、特に、クロック信号CLKに同期してデータの書き込みおよび読み出しを行う同期型メモリーをメモリー50として利用した場合、データの書き込みもしくは読み出しを行おうとした時に動作異常が発生し、その後のデータ書き込み、読み出しが行えない異常状態(スタック状態)になることがある。   Various circuits provided in the user logic unit 20 of the semiconductor integrated circuit 10 send and receive data by sending various commands and address signals to the memory 50 provided as a separate chip via the memory interface 30. Thus, various data processing using the memory 50 can be performed. However, in the configuration shown in FIG. 1, for example, the clock received by the memory 50 due to the influence of the length and shape of the clock wiring 22A (usually provided on the wiring board) between the semiconductor integrated circuit 10 and the memory 50. It is difficult to strictly control the timing of the signal CLK. For this reason, in particular, when a synchronous memory that writes and reads data in synchronization with the clock signal CLK is used as the memory 50, an operation error occurs when attempting to write or read data, and subsequent data writing , There may be an abnormal state (stack state) in which reading cannot be performed.

また、突発的なノイズによって異常状態になることもある。   Moreover, an abnormal state may be caused by sudden noise.

そこで、メモリー50の状態を監視し、このような異常状態になったことを検出するために、半導体集積回路10は、さらに、命令監視部42、書込データ保持部44、読出データ保持部46、データ比較部48からなるメモリー監視回路40を含む。これらメモリー監視回路40の各部は、それぞれ、クロック信号CLKの供給を受け、クロック信号CLKに同期して動作する。   Therefore, in order to monitor the state of the memory 50 and detect that such an abnormal state has occurred, the semiconductor integrated circuit 10 further includes an instruction monitoring unit 42, a write data holding unit 44, and a read data holding unit 46. The memory monitoring circuit 40 including the data comparison unit 48 is included. Each part of the memory monitoring circuit 40 is supplied with the clock signal CLK and operates in synchronization with the clock signal CLK.

命令監視部42は、命令配線34Bに接続されており、メモリーインタフェース30からメモリー50に送られる命令COMおよびアドレス信号ADDRを監視する。そして、メモリー50に送られる命令が書き込み命令であり、かつ、対象アドレスが特定のアドレスであることを検知すると、書込データ保持部44に書込データ保持命令W_COMを送る。命令監視部42は、また、メモリー50に送られる命令が読出命令であり、かつ、対象アドレスが特定のアドレスであることを検知すると、読出データ保持部46に読出データ保持命令R_COMを送る。   The instruction monitoring unit 42 is connected to the instruction wiring 34B and monitors the instruction COM and the address signal ADDR sent from the memory interface 30 to the memory 50. When it is detected that the command sent to the memory 50 is a write command and the target address is a specific address, the write data holding command W_COM is sent to the write data holding unit 44. When the instruction monitoring unit 42 detects that the instruction sent to the memory 50 is a read instruction and the target address is a specific address, the instruction monitoring unit 42 sends a read data holding instruction R_COM to the read data holding unit 46.

書込データ保持部44は、書込データ配線32Bに接続されており、命令監視部42からの命令W_COMを受けたときに、メモリー50に送られる書込データを保持する。ここで、アドレス信号と書込データとは、メモリー50の仕様によって決まる特定のタイミング関係を持って、メモリー50に送られる。命令監視部42は、この特定のタイミング関係を考慮することにより、特定のアドレスに書き込まれるためにメモリー50に送られるデータを保持することができるタイミングで、書込データ保持部44に保持命令W_COMを送る。   The write data holding unit 44 is connected to the write data wiring 32 </ b> B and holds the write data sent to the memory 50 when receiving the command W_COM from the command monitoring unit 42. Here, the address signal and the write data are sent to the memory 50 with a specific timing relationship determined by the specifications of the memory 50. The instruction monitoring unit 42 considers this specific timing relationship, and at the timing at which data sent to the memory 50 to be written to a specific address can be held, the instruction monitoring unit 42 holds the hold instruction W_COM in the write data holding unit 44. Send.

また、書込データ保持部44は、図示しない書込データ保持フラグを有しており、書込データの保持が行われたときに書込フラグを設定する。書込フラグの値FLGは、読出データ保持部46から読み出し可能である。   The write data holding unit 44 has a write data hold flag (not shown), and sets the write flag when the write data is held. The value FLG of the write flag can be read from the read data holding unit 46.

読出データ保持部46は、読出データ配線32Cに接続されている。そして、書込データ保持部44の保持フラグが設定された状態で、命令監視部42からの保持命令R_COMを受けたときに、メモリー50から読み出されてメモリーインタフェース30に送られる読出データを保持する。この時にも、命令監視部42は、特定のアドレスから読み出されたデータを保持することができるタイミングで、読出データ保持部46に保持命令R_COMを送る。読出データ保持部46は、読出データの保持が行われたときには、書込データ保持部44およびデータ比較部48に、読出データ保持通知信号R_REGを出力する。保持通知信号R_REGが入力されると、書込データ保持部44は、データ保持フラグを初期化する。   The read data holding unit 46 is connected to the read data wiring 32C. Then, when the holding flag R of the write data holding unit 44 is set, when the holding command R_COM is received from the command monitoring unit 42, the read data read from the memory 50 and sent to the memory interface 30 is held. To do. Also at this time, the instruction monitoring unit 42 sends a holding instruction R_COM to the read data holding unit 46 at a timing at which data read from a specific address can be held. When read data is held, read data holding unit 46 outputs read data holding notification signal R_REG to write data holding unit 44 and data comparison unit 48. When the holding notification signal R_REG is input, the write data holding unit 44 initializes the data holding flag.

データ比較部48は、保持通知信号R_REGが入力されると、書込データ保持部44に保持された書込データと、読出データ保持部46に保持された読出データとを読み出し、両者を比較する。そして、比較結果に応じて、メモリー状態通知信号STAを出力する。ここで、読出データ保持部46に保持された読出データは、書込データ保持部44に保持された書込データが書き込まれた特定のアドレスから読み出されたデータである。従って、メモリー50が正常な状態である場合には両者が一致する。逆に、両者が異なっていた場合には、メモリー50の状態が異常であると判断できる。   When the holding notification signal R_REG is input, the data comparing unit 48 reads out the write data held in the write data holding unit 44 and the read data held in the read data holding unit 46 and compares them. . Then, a memory state notification signal STA is output according to the comparison result. Here, the read data held in the read data holding unit 46 is data read from a specific address where the write data held in the write data holding unit 44 is written. Therefore, when the memory 50 is in a normal state, the two match. On the contrary, when both are different, it can be determined that the state of the memory 50 is abnormal.

図1に示す半導体集積回路10に設けられたメモリー監視回路40では、ユーザーロジック部20に設けられた各種の回路がメモリー50を利用するときに命令配線34を通じて送られる命令COMおよびアドレス信号ADDRを命令監視部42が監視する。そして、命令監視部42が特定の命令およびアドレスを検出したときに、書込データ保持部44および読出データ保持部46に保持命令W_COM、R_COMを送る。そして、命令監視部42からの命令を受けた書込データ保持部44および読出データ保持部46が、ユーザーロジック部20に設けられた各種の回路がメモリー50を利用するときに書込データ配線32Bを通じて送る書込データW_DATAおよび読出データ配線32Cを通じて受け取る読出データR_DATAを保持する。そして、書込データ保持部44および読出データ保持部46に保持されたデータをデータ比較部48が比較することによって、メモリー50の動作異常を検知する。   In the memory monitoring circuit 40 provided in the semiconductor integrated circuit 10 shown in FIG. 1, the instruction COM and the address signal ADDR sent through the instruction wiring 34 when various circuits provided in the user logic unit 20 use the memory 50 are used. The instruction monitoring unit 42 monitors. When the instruction monitoring unit 42 detects a specific instruction and address, it sends holding instructions W_COM and R_COM to the write data holding unit 44 and the read data holding unit 46. The write data holding unit 44 and the read data holding unit 46 that have received an instruction from the instruction monitoring unit 42 use the write data wiring 32B when various circuits provided in the user logic unit 20 use the memory 50. Write data W_DATA sent through and read data R_DATA received through read data wiring 32C are held. Then, the data comparison unit 48 compares the data held in the write data holding unit 44 and the read data holding unit 46 to detect an abnormal operation of the memory 50.

このように、メモリー監視回路40は、ユーザーロジック部20からの指示を必要とすることなくメモリー50の状態を監視することができる。従って、ユーザーロジック部20の設計を行う設計者が意識することなくメモリー50の監視を行うことができる。また、メモリー監視回路40は、ユーザーロジック部20の回路がメモリー50を利用するために送られる命令、アドレス、およびデータを、監視もしくは保持するのみであり、メモリー50を監視するためにメモリー50を利用することはない。従って、ユーザーロジック部20の回路がメモリー50を利用して行うデータ処理の効率が低下することもない。   As described above, the memory monitoring circuit 40 can monitor the state of the memory 50 without requiring an instruction from the user logic unit 20. Therefore, the memory 50 can be monitored without the designer who designs the user logic unit 20 being conscious. The memory monitoring circuit 40 only monitors or holds instructions, addresses, and data sent to use the memory 50 by the circuit of the user logic unit 20, and the memory 50 is monitored to monitor the memory 50. Never use it. Therefore, the efficiency of data processing performed by the circuit of the user logic unit 20 using the memory 50 is not reduced.

データ比較部48では、書込データと読出データとの不一致が検出されたときに、直ちに、メモリーの異常を示す状態通知信号STAを出力することも可能である。もしくは、データ比較部48内に図示しないカウンタを設け、累積の不一致検出回数が所定回数に達したときに状態通知信号STAを出力することも可能である。出力された状態通知信号STAは、ANDゲート36を介してメモリーインタフェース30のリセット端子に供給される。そして、メモリーインタフェース30から、メモリー50を初期化するための命令がメモリー50に供給され、メモリー50が初期化される。これによって、メモリー50の異常状態(スタック状態)が解消され、再び、データの書き込み、読み出しを行うことが可能になる。   The data comparison unit 48 can immediately output a state notification signal STA indicating a memory abnormality when a mismatch between the write data and the read data is detected. Alternatively, a counter (not shown) may be provided in the data comparison unit 48, and the status notification signal STA may be output when the cumulative mismatch detection count reaches a predetermined count. The output state notification signal STA is supplied to the reset terminal of the memory interface 30 via the AND gate 36. Then, an instruction for initializing the memory 50 is supplied from the memory interface 30 to the memory 50, and the memory 50 is initialized. As a result, the abnormal state (stack state) of the memory 50 is eliminated, and data can be written and read again.

この時、半導体集積回路10のユーザーロジック部20の初期化を行うことなく、メモリー50のみの初期化が行われる。従って、半導体集積回路10のユーザーロジック部20に設けられた各種の回路による、メモリー50を利用したデータ処理を、メモリー50初期化の終了後、直ちに再開することができる。また、メモリー50の初期化を行う以前にユーザーロジック部20の回路で行われていた中間処理結果が失われることもない。   At this time, only the memory 50 is initialized without initializing the user logic unit 20 of the semiconductor integrated circuit 10. Therefore, data processing using the memory 50 by various circuits provided in the user logic unit 20 of the semiconductor integrated circuit 10 can be resumed immediately after the initialization of the memory 50 is completed. In addition, the intermediate processing result performed in the circuit of the user logic unit 20 before the initialization of the memory 50 is not lost.

例えば、メモリーインタフェース30をASIC製造者がマクロセルとして用意し、顧客が、このメモリーインタフェース30を介してメモリー50を利用するユーザーロジック部20の回路を設計した、ASIC製品として半導体集積回路10を構成することが可能である。そして、ASIC製造者は、メモリーインタフェース30と組み合わせて利用するメモリー監視回路40を、マクロ(ソフトマクロ)セルとして用意しておき、ユーザーロジック部20の設計データを顧客から受け取った段階で、メモリーインタフェース30およびメモリー監視回路40を組み合わせて半導体集積回路10を構成することができる。この場合、顧客は、メモリー監視回路40の存在さえ、意識する必要がない。   For example, the ASIC manufacturer prepares the memory interface 30 as a macro cell, and the customer designs the circuit of the user logic unit 20 that uses the memory 50 via the memory interface 30 to configure the semiconductor integrated circuit 10 as an ASIC product. It is possible. The ASIC manufacturer prepares a memory monitoring circuit 40 to be used in combination with the memory interface 30 as a macro (soft macro) cell, and at the stage of receiving design data of the user logic unit 20 from a customer, 30 and the memory monitoring circuit 40 can be combined to form the semiconductor integrated circuit 10. In this case, the customer does not need to be aware of even the presence of the memory monitoring circuit 40.

図2は、図1に示す半導体集積回路10の動作の概要を示すフロー図である。   FIG. 2 is a flowchart showing an outline of the operation of the semiconductor integrated circuit 10 shown in FIG.

まず、ステップS110において電源投入が行われる。そして、ステップS112においてユーザーロジック部20、メモリーインタフェース30、およびメモリー監視回路40の初期化が行わる。具体的には、メモリー監視回路40においては、書込データ保持部44の図示しないデータ保持フラグの値を“0”に、データ比較部48の図示しないカウンタのカウント値Countを“0”にする。さらに、ステップS114において、メモリー50の初期化が行われる。すなわち、ユーザーロジック部20がメモリーインタフェース30にリセット信号RSTを送り、メモリーインタフェース30がメモリー50に、メモリー50の初期化のために必要な命令を送る。   First, power is turned on in step S110. In step S112, the user logic unit 20, the memory interface 30, and the memory monitoring circuit 40 are initialized. Specifically, in the memory monitoring circuit 40, the value of a data holding flag (not shown) of the write data holding unit 44 is set to “0”, and the count value Count of a counter (not shown) of the data comparison unit 48 is set to “0”. . Further, in step S114, the memory 50 is initialized. That is, the user logic unit 20 sends a reset signal RST to the memory interface 30, and the memory interface 30 sends a command necessary for initializing the memory 50 to the memory 50.

初期化の終了後、半導体集積回路10のユーザーロジック部20に設けられたさまざまな回路は、通常の動作を行う。この動作において、メモリー50へのデータ書き込みが必要になったときには、メモリーインタフェース30および命令配線34を通じて、メモリー50に、書込命令、および、書込対象のアドレスを示すアドレス信号を送る。また、メモリーインタフェース30およびデータ配線32B、32Aを通じて、メモリー50に、書き込むべきデータを送る。同様に、メモリー50に書き込んだデータの読み出しが必要になった場合には、メモリーインタフェース30および命令配線34を通じて、メモリー50に、読出命令、および、読出対象のアドレスを示すアドレス信号を送る。そして、メモリーから読み出されたデータを、データ配線32A、32C、および、メモリーインタフェース30を介して受け取る。   After the initialization is completed, various circuits provided in the user logic unit 20 of the semiconductor integrated circuit 10 perform normal operations. In this operation, when it becomes necessary to write data to the memory 50, a write command and an address signal indicating an address to be written are sent to the memory 50 through the memory interface 30 and the command wiring 34. Further, data to be written is sent to the memory 50 through the memory interface 30 and the data wirings 32B and 32A. Similarly, when it is necessary to read the data written in the memory 50, a read command and an address signal indicating an address to be read are sent to the memory 50 through the memory interface 30 and the command wiring 34. Then, the data read from the memory is received via the data lines 32A and 32C and the memory interface 30.

このような動作をユーザーロジック部20の回路が行っている期間に、メモリー監視回路40が、メモリー50の状態の監視を行う。すなわち、ステップS120において、命令監視部42が、メモリー50に送られる命令およびアドレス信号の監視を行う。そして、ステップS122で、特定のアドレスへのデータ書き込み命令が検出されると、書込データ保持部44にデータ保持命令が送られる。これにより、ステップS124で、特定のアドレスへの書き込みのためにメモリー50に送られるデータが、書込データ保持部44に保持される。また、書込データ保持部44内の図示しない保持フラグが“1”にセットされる。その後、ステップS120に戻って、命令およびアドレス信号の監視が継続される。   The memory monitoring circuit 40 monitors the state of the memory 50 during the period when the circuit of the user logic unit 20 performs such an operation. That is, in step S120, the instruction monitoring unit 42 monitors instructions and address signals sent to the memory 50. When a data write command to a specific address is detected in step S122, the data hold command is sent to the write data holding unit 44. Thereby, in step S124, the data sent to the memory 50 for writing to the specific address is held in the write data holding unit 44. Further, a holding flag (not shown) in the write data holding unit 44 is set to “1”. Thereafter, the process returns to step S120, and the monitoring of the instruction and address signal is continued.

一方、ステップS130で、特定のアドレスからのデータ読み出し命令が検出されると、読出データ保持部46に、読出データ保持命令が送られる。この場合には、ステップ132において、書込データ保持部44の保持フラグの値FLGの確認が行われる。保持フラグがセットされていない(FLG=0)場合は、ステップS120に戻り、監視が継続される。一方、保持フラグがセットされている(FLG=1)場合には、ステップS134で、メモリー50の特定のアドレスから読み出されてメモリーインタフェース30に送られるデータが、読出データ保持部46に保持される。また、読出データ保持部46から書込データ保持部44に、保持通知信号が送られ、保持フラグが“0”に初期化される。   On the other hand, when a data read command from a specific address is detected in step S 130, a read data holding command is sent to the read data holding unit 46. In this case, in step 132, the value FLG of the holding flag of the write data holding unit 44 is confirmed. If the holding flag is not set (FLG = 0), the process returns to step S120 and monitoring is continued. On the other hand, if the holding flag is set (FLG = 1), the data read from the specific address of the memory 50 and sent to the memory interface 30 is held in the read data holding unit 46 in step S134. The Further, a read notification signal is sent from the read data holding unit 46 to the write data holding unit 44, and the holding flag is initialized to “0”.

保持通知信号は、また、読出データ保持部46からデータ比較部48にも送られる。そして、ステップS140で、データ比較部48において、書込データ保持部44に保持された書込データと読出データ保持部46に保持された読出データとの比較が行われる。比較によって両データの一致が検出された場合には、ステップS142で、データ比較部48のカウンタのカウント値Countが“0”に初期化され、ステップS120に戻って、命令監視部42による監視が継続される。データの不一致が検出された場合には、ステップS144でカウント値Countに1を追加し、ステップS146で、カウント値Countの確認が行われる。カウント値Countが所定の値(N)に達していない場合には、ステップS120に戻り、メモリー50の監視が継続される。一方、カウント値が所定の値に達したことが検出された場合には、ステップS148でカウント値Countが“0”に初期化され、データ比較部48から異常状態を示す状態通知信号STAが出力される。   The holding notification signal is also sent from the read data holding unit 46 to the data comparison unit 48. In step S140, the data comparison unit 48 compares the write data held in the write data holding unit 44 with the read data held in the read data holding unit 46. If a match between the two data is detected by the comparison, the count value Count of the counter of the data comparison unit 48 is initialized to “0” in step S142, and the process returns to step S120 to be monitored by the instruction monitoring unit 42. Will continue. If a data mismatch is detected, 1 is added to the count value Count in step S144, and the count value Count is confirmed in step S146. If the count value Count has not reached the predetermined value (N), the process returns to step S120 and monitoring of the memory 50 is continued. On the other hand, if it is detected that the count value has reached the predetermined value, the count value Count is initialized to “0” in step S148, and the data notification unit 48 outputs a state notification signal STA indicating an abnormal state. Is done.

状態通知信号STAが、ANDゲート36を介してメモリーインタフェース30に入力されると、ステップS114で、メモリー50の初期化が行われる。その後、ユーザーロジック部20によるメモリー50を利用したデータ処理が再開されると、再び、メモリー監視回路40によるメモリー50の状態の監視が継続される。   When the status notification signal STA is input to the memory interface 30 via the AND gate 36, the memory 50 is initialized in step S114. Thereafter, when the data processing using the memory 50 by the user logic unit 20 is resumed, the monitoring of the state of the memory 50 by the memory monitoring circuit 40 is continued again.

図3には、メモリーインタフェース30およびメモリー監視回路40を含む半導体集積回路10Aを含む機器100の実施形態の一例を示す。   FIG. 3 shows an example of an embodiment of the device 100 including the semiconductor integrated circuit 10 </ b> A including the memory interface 30 and the memory monitoring circuit 40.

図3に示す機器100は、半導体集積回路10Aに入力される動画像データMP_DATAに基づいて、表示装置70への表示を行う表示装置である。半導体集積回路10Aは、入力された動画像データMP_DATAに、所定の処理を行って生成した表示データDSP_DATAを表示装置70に出力する。半導体集積回路10Aのユーザーロジック部20Aには、動画像データに対して所定の処理を行うデータ処理回路が形成されている。処理回路は、動画像データの1フレーム分の画像データを、メモリーインタフェース30を介して接続されたメモリー50に記憶する。そして、この記憶された1フレーム分のデータを再び読み出しながら、例えば、輝度調整やオーバードライブ等の処理を行い、表示データDSP_DATAを生成する。   A device 100 illustrated in FIG. 3 is a display device that performs display on the display device 70 based on moving image data MP_DATA input to the semiconductor integrated circuit 10A. The semiconductor integrated circuit 10A outputs display data DSP_DATA generated by performing predetermined processing on the input moving image data MP_DATA to the display device 70. In the user logic unit 20A of the semiconductor integrated circuit 10A, a data processing circuit that performs predetermined processing on moving image data is formed. The processing circuit stores image data for one frame of moving image data in a memory 50 connected via the memory interface 30. Then, while reading the stored data for one frame again, for example, processing such as brightness adjustment and overdrive is performed to generate display data DSP_DATA.

図3に示す機器100において、メモリー50は、1フレーム分の画像データを記憶するためのフレームメモリーとして利用される。この場合、それぞれのフレーム期間毎に、所定の範囲内のアドレスへのデータの書き込みと読み出しが行われる。従って、メモリー監視回路40によって監視する特定のアドレスを、この所定の範囲内に設定しておけば、それぞれのフレーム期間毎に、書込データと読出データとの比較を行うことができる。これ以外の用途でメモリー50を利用する場合であっても、頻繁に書き込み、読み出しが行われるアドレスを、監視対象の特定アドレスとして設定することが好ましい。   In the device 100 shown in FIG. 3, the memory 50 is used as a frame memory for storing image data for one frame. In this case, data is written to and read from addresses within a predetermined range for each frame period. Therefore, if the specific address monitored by the memory monitoring circuit 40 is set within this predetermined range, the write data and the read data can be compared for each frame period. Even when the memory 50 is used for other purposes, it is preferable to set a frequently written / read address as a specific address to be monitored.

本発明の半導体集積回路10の開発中に、監視対象の特定アドレスを決定することが可能である場合には、開発時に設定を行う。例えば、ASIC製品として半導体集積回路10を構成する場合には、ASIC製造者が、顧客が設計したユーザーロジック部20に、メモリーインタフェース30およびメモリー監視回路40を組み合わせるときに、メモリー監視回路40の設定を行う。このためには、監視対象の特定アドレスの設定が可能なマクロとして、メモリー監視回路40を用意する。一方、開発段階において特定のアドレスを決定することが困難な場合には、命令監視部42(図1参照)内に図示しないアドレス設定保持部を用意しておき、半導体対集積回路10の製造後に設定を行うことも可能である。   If the specific address to be monitored can be determined during the development of the semiconductor integrated circuit 10 of the present invention, the setting is made at the time of development. For example, when the semiconductor integrated circuit 10 is configured as an ASIC product, when the ASIC manufacturer combines the memory interface 30 and the memory monitoring circuit 40 with the user logic unit 20 designed by the customer, the setting of the memory monitoring circuit 40 is performed. I do. For this purpose, a memory monitoring circuit 40 is prepared as a macro capable of setting a specific address to be monitored. On the other hand, if it is difficult to determine a specific address in the development stage, an address setting holding unit (not shown) is prepared in the instruction monitoring unit 42 (see FIG. 1), and after the semiconductor-to-integrated circuit 10 is manufactured. Settings can also be made.

メモリー50に書き込む(読み出す)個々のアドレスをアドレス信号で指定するのではなく、先頭アドレスのみを指定して、先頭アドレスおよびそれに続くバースト長の範囲のアドレスに書き込む(読み出す)、バースト書き込み(読み出し)が行われる場合もある。この場合、命令監視部42は、書込命令もしくは読出命令とともに、バースト長を考慮して、特定アドレスへの書き込み(読み出し)が行われる先頭アドレスを示すアドレス信号を検知したときに、保持命令を出力する。この時、例えば命令監視部42内にクロック信号CLKをカウントする図示しないカウンタを設け、特定のアドレスに書き込む(読み出した)データが送られるタイミングで、書込データ保持部44もしくは読出データ保持部46に保持命令を送る。   Rather than designating each address to be written (read) to the memory 50 by an address signal, only the first address is designated, and the first address and subsequent burst length address are written (read), burst write (read) May be performed. In this case, when the instruction monitoring unit 42 detects an address signal indicating a head address at which writing (reading) to a specific address is performed in consideration of the burst length together with the write instruction or the read instruction, the instruction monitoring unit 42 issues a holding instruction. Output. At this time, for example, a counter (not shown) that counts the clock signal CLK is provided in the instruction monitoring unit 42, and the write data holding unit 44 or the read data holding unit 46 is sent at a timing when data written (read) to a specific address is sent. Send a hold command to.

書込データ保持部44および読出データ保持部46は、例えば、同時に書き込み、読み出しが行われる1ワード分のビット数のデータを保持するものである。図2のステップS140において、例えば、書込データ保持部44と読出データ保持部46に保持された複数ビットのデータとの間に、1ビット以上の不一致があれば、「不一致」と判断することができる。もしくは、1ビットの不一致だけで「不一致」と判断せず、2ビットもしくはそれ以上の所定のビット数以上の不一致があったときに「不一致」と判断することも可能である。   The write data holding unit 44 and the read data holding unit 46 hold, for example, data of the number of bits for one word that are simultaneously written and read. In step S140 of FIG. 2, for example, if there is a mismatch of 1 bit or more between the multi-bit data held in the write data holding unit 44 and the read data holding unit 46, it is determined as “mismatch”. Can do. Alternatively, it is also possible to determine “mismatch” when there is a mismatch of more than a predetermined number of bits of 2 bits or more, without determining “mismatch” only by mismatch of 1 bit.

以上、本発明の実施形態について詳細に説明した。本発明が上記の具体例には限定されず、さまざまな変形、改良が可能であることは言うまでもない。   The embodiment of the present invention has been described in detail above. It goes without saying that the present invention is not limited to the specific examples described above, and various modifications and improvements are possible.

前述のように、メモリー50を半導体集積回路10と別チップとして設け、その間をチップ間の配線で接続した場合に、メモリー50が異常状態になる場合が多く、本発明の有用性が高い。特に、それぞれの別のパッケージに格納した半導体集積回路10とメモリー50とを、配線基板に実装し、その間を配線基板の配線で接続した場合には、メモリー50が異常状態になる可能性が高く、本発明の有用性が高い。しかし、半導体集積回路10とメモリー50とを、同一のパッケージ内に格納した場合であってもメモリー50が異常状態になることはあり、本発明は有用である。さらに、半導体集積回路10を、メモリー50を含むチップとして構成した場合であっても、特に、メモリー50の容量およびチップ寸法が大きくなり、メモリーインタフェース30とメモリー50との間を接続する配線の長さが増大した場合には、動作中に、メモリー50が異常状態になる可能性はある。このような場合にも、本発明は有用である。   As described above, when the memory 50 is provided as a separate chip from the semiconductor integrated circuit 10 and connected between them by wiring between the chips, the memory 50 is often in an abnormal state, and the usefulness of the present invention is high. In particular, when the semiconductor integrated circuit 10 and the memory 50 stored in different packages are mounted on a wiring board and connected between them by wiring on the wiring board, the memory 50 is likely to be in an abnormal state. The utility of the present invention is high. However, even if the semiconductor integrated circuit 10 and the memory 50 are stored in the same package, the memory 50 may be in an abnormal state, and the present invention is useful. Further, even when the semiconductor integrated circuit 10 is configured as a chip including the memory 50, the capacity and chip size of the memory 50 are increased particularly, and the length of the wiring connecting the memory interface 30 and the memory 50 is increased. If the memory capacity increases, the memory 50 may become abnormal during operation. Even in such a case, the present invention is useful.

本発明の半導体集積回路の第1の実施形態の一例の構成を示すブロック図である。1 is a block diagram showing a configuration of an example of a first embodiment of a semiconductor integrated circuit according to the present invention. 本発明の半導体集積回路におけるメモリー監視の実施形態の一例を示すフロー図である。It is a flowchart which shows an example of embodiment of the memory monitoring in the semiconductor integrated circuit of this invention. 本発明の半導体集積回路を利用した機器の一例の構成を示すブロック図である。It is a block diagram which shows the structure of an example of the apparatus using the semiconductor integrated circuit of this invention.

符号の説明Explanation of symbols

10 半導体集積回路
20 ユーザーロジック部
30 メモリーインタフェース
40 メモリー監視回路
50 メモリー
70 表示装置
DESCRIPTION OF SYMBOLS 10 Semiconductor integrated circuit 20 User logic part 30 Memory interface 40 Memory monitoring circuit 50 Memory 70 Display apparatus

Claims (6)

メモリーインタフェースからメモリーに送られる命令を監視する命令監視部と、
前記命令監視部が、前記メモリーの特定のアドレスへの書き込みを指示する命令を検知したときに、該特定のアドレスに書き込むために前記メモリーインタフェースから前記メモリーに送られるデータを保持するとともに、フラグをセットする書込データ保持部と、
前記のフラグがセットされ、かつ、前記命令監視部が、前記メモリーの前記特定のアドレスからの読み出しを指示する命令を検知したときに、該特定のアドレスから読み出されて前記メモリーインタフェースに送られるデータを保持する読出データ保持部と、
前記読出データ保持部がデータを保持したときに、前記書込データ保持部が保持したデータと前記読出データ保持部が保持したデータとを比較し、不一致を検出するデータ比較部とからなるメモリー監視回路を備えたことを特徴とする半導体集積回路。
A command monitoring unit that monitors commands sent from the memory interface to the memory;
When the instruction monitoring unit detects an instruction to write to a specific address in the memory, the instruction monitoring unit holds data sent from the memory interface to the memory to write to the specific address, and sets a flag. Write data holding unit to be set;
When the flag is set and the instruction monitoring unit detects an instruction to read from the specific address of the memory, the instruction is read from the specific address and sent to the memory interface. A read data holding unit for holding data;
Memory monitoring comprising a data comparison unit for comparing the data held by the write data holding unit with the data held by the read data holding unit and detecting a mismatch when the read data holding unit holds data A semiconductor integrated circuit comprising a circuit.
前記データ比較部が、前記不一致を検出したときに、前記メモリーインタフェースに対して、前記メモリーの初期化を要求する状態通知信号を出力することを特徴とする請求項1記載の半導体集積回路。   2. The semiconductor integrated circuit according to claim 1, wherein the data comparison unit outputs a status notification signal requesting initialization of the memory to the memory interface when the mismatch is detected. 前記データ比較部が、所定回数だけ連続して不一致を検出したときに、前記状態通知信号を出力することを特徴とする請求項2記載の半導体集積回路。   3. The semiconductor integrated circuit according to claim 2, wherein the state comparison signal is output when the data comparison unit detects a mismatch continuously a predetermined number of times. ユーザーロジック部とメモリーインタフェースとを備え、該ユーザーロジック部に含まれる回路がメモリーインタフェースを介して外部に接続されるメモリーへのデータ書き込み、および、該メモリーからのデータの読み出しを行う半導体集積回路において、
前記メモリーインタフェースから前記メモリーに送られる命令を監視する命令監視部と、
前記命令監視部が、前記メモリーの特定のアドレスへの書き込みを指示する命令を検知したときに、該所定のアドレスに書き込むために前記メモリーインタフェースから前記メモリーに送られるデータを保持するとともに、フラグをセットする書込データ保持部と、
前記のフラグがセットされ、かつ、前記命令監視部が、前記メモリーの前記特定のアドレスからの読み出しを指示する命令を検知したときに、該所定のアドレスから読み出されて前記メモリーインタフェースに送られるデータを保持する読出データ保持部と、
前記読出データ保持部がデータを保持したときに、前記書込データ保持部が保持したデータと前記読出データ保持部が保持したデータとを比較し、不一致を検出するデータ比較部とからなるメモリー監視回路を備えたことを特徴とする半導体集積回路。
In a semiconductor integrated circuit comprising a user logic unit and a memory interface, and a circuit included in the user logic unit writes data to a memory connected to the outside via the memory interface, and reads data from the memory ,
A command monitoring unit that monitors commands sent from the memory interface to the memory;
When the instruction monitoring unit detects an instruction to write to a specific address of the memory, the instruction monitoring unit holds data sent from the memory interface to the memory to write to the predetermined address, and sets a flag. Write data holding unit to be set;
When the flag is set and the instruction monitoring unit detects an instruction to instruct reading from the specific address of the memory, the instruction is read from the predetermined address and sent to the memory interface. A read data holding unit for holding data;
Memory monitoring comprising a data comparison unit for comparing the data held by the write data holding unit with the data held by the read data holding unit and detecting a mismatch when the read data holding unit holds data A semiconductor integrated circuit comprising a circuit.
前記ユーザーロジック部に含まれる回路が顧客が設計した回路であり、かつ、前記メモリーインタフェースおよびメモリー監視回路がASIC製造者がマクロセルとして用意したものであることを特徴とする請求項4記載の半導体集積回路。   5. The semiconductor integrated circuit according to claim 4, wherein the circuit included in the user logic unit is a circuit designed by a customer, and the memory interface and the memory monitoring circuit are prepared as a macro cell by an ASIC manufacturer. circuit. 前記データ比較部が、前記不一致を検出したときに、前記メモリーインタフェースに対して、前記メモリーの初期化を要求する状態通知信号を出力することを特徴とする請求項4または5記載の半導体集積回路。   6. The semiconductor integrated circuit according to claim 4, wherein the data comparison unit outputs a status notification signal for requesting initialization of the memory to the memory interface when the mismatch is detected. .
JP2007194420A 2007-07-26 2007-07-26 Semiconductor integrated circuit Withdrawn JP2009031974A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007194420A JP2009031974A (en) 2007-07-26 2007-07-26 Semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007194420A JP2009031974A (en) 2007-07-26 2007-07-26 Semiconductor integrated circuit

Publications (1)

Publication Number Publication Date
JP2009031974A true JP2009031974A (en) 2009-02-12

Family

ID=40402419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007194420A Withdrawn JP2009031974A (en) 2007-07-26 2007-07-26 Semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JP2009031974A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011141790A (en) * 2010-01-08 2011-07-21 Seiko Epson Corp Error detector, semiconductor device including error detector, information processing apparatus using semiconductor device including error detector, and error detection method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011141790A (en) * 2010-01-08 2011-07-21 Seiko Epson Corp Error detector, semiconductor device including error detector, information processing apparatus using semiconductor device including error detector, and error detection method

Similar Documents

Publication Publication Date Title
TWI724254B (en) Semiconductor apparatus, memory module and operation method thereof
US10824499B2 (en) Memory system architectures using a separate system control path or channel for processing error information
US7484141B2 (en) Semiconductor device capable of performing test at actual operating frequency
US20060069948A1 (en) Error detecting memory module and method
CN101171524A (en) Memory device and method having a data bypass path to allow rapid testing and calibration
TWI701661B (en) Method and computer program product for verifying memory interface
US20150067201A1 (en) Semiconductor device and method of operating the same
US8064283B2 (en) Semiconductor memory apparatus and a method for reading data stored therein
US7558932B2 (en) Semiconductor memory device and method for operating the same
US10976368B2 (en) Memory apparatus relating to determination of a failed region and test method thereof, memory module and system using the same
US7007181B2 (en) Microcontroller
JP2009031974A (en) Semiconductor integrated circuit
US8713247B2 (en) Data transfer operation completion detection circuit and semiconductor memory device provided therewith
JP2008192264A (en) Semiconductor memory device
JP2011248952A (en) Flash memory with test mode and connection test method for the same
KR100772724B1 (en) Semiconductor memory device
JP6846225B2 (en) Inspection circuits, semiconductor storage devices, semiconductor devices, and connection inspection methods
US7388797B2 (en) Semiconductor memory device
JP2001118400A (en) Memory logic compound semiconductor device
JP4985462B2 (en) Integrated circuit, integrated circuit operation test method, and operation test program
JP4587000B2 (en) Chip select circuit
TW594481B (en) Semiconductor integrated circuit device
JP2007011632A (en) Memory speed optimization method and program
JP2001093300A (en) Synchronous memory device recording history of input signal
JP2005173896A (en) Semiconductor integrated circuit

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20101005