JP5445500B2 - Semiconductor memory device - Google Patents

Semiconductor memory device Download PDF

Info

Publication number
JP5445500B2
JP5445500B2 JP2011075547A JP2011075547A JP5445500B2 JP 5445500 B2 JP5445500 B2 JP 5445500B2 JP 2011075547 A JP2011075547 A JP 2011075547A JP 2011075547 A JP2011075547 A JP 2011075547A JP 5445500 B2 JP5445500 B2 JP 5445500B2
Authority
JP
Japan
Prior art keywords
data
read
sector
unit
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2011075547A
Other languages
Japanese (ja)
Other versions
JP2012209003A (en
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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP2011075547A priority Critical patent/JP5445500B2/en
Publication of JP2012209003A publication Critical patent/JP2012209003A/en
Application granted granted Critical
Publication of JP5445500B2 publication Critical patent/JP5445500B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

本発明は、BIST(built in self test)機能、特にテストパターンをプログラミングして使うことが可能なプログラマブルBIST機能を備えた半導体記憶装置に関する。   The present invention relates to a BIST (built in self test) function, and more particularly to a semiconductor memory device having a programmable BIST function capable of programming and using a test pattern.

半導体記憶装置の1つであるフラッシュメモリの検査では、メモリの全領域のビットに対してプログラム(書き込み)とリード(読み出し)などの動作を行いメモリの不良を検出する。BIST機能を備えたフラッシュメモリ装置では、それ自身でメモリの検査とその結果の判定を行うことが可能であり、プログラム検査を実行する場合、従来構成においては図8に示すフローチャートの制御を実行し、すべてのセクタに対し順次セクタごとに同じデータの書き込みを行う。   In the inspection of a flash memory which is one of semiconductor memory devices, memory defects are detected by performing operations such as program (write) and read (read) on the bits of the entire area of the memory. In the flash memory device having the BIST function, it is possible to inspect the memory and determine the result by itself. When executing the program inspection, the conventional configuration executes the control of the flowchart shown in FIG. The same data is sequentially written for every sector in all sectors.

まず、図8のステップS10において、フラッシュメモリのメモリセルアレイのプログラム検査のための初期化を行う。そして、ステップS20へ進み、フラッシュメモリのメモリセルアレイにプログラムしたい1単位データ分のデータパターン(書き込みデータ、期待値)をバッファ(ライトバッファ)に発生させる。続いて、ステップS30へ進み、メモリセルアレイに1単位データ分のデータパターンをプログラムする処理、即ち、書き込み動作とベリファイ(verify)動作を実行する。そして、ステップS40へ進み、プログラム(書き込み)が正常に行われた否かを判断し、異常があった場合、「NO」へ進み、異常終了する(fail)。   First, in step S10 of FIG. 8, initialization for program inspection of the memory cell array of the flash memory is performed. In step S20, a data pattern (write data, expected value) for one unit data to be programmed in the memory cell array of the flash memory is generated in the buffer (write buffer). Subsequently, the process proceeds to step S30, and a process of programming a data pattern for one unit data in the memory cell array, that is, a write operation and a verify operation are executed. Then, the process proceeds to step S40, where it is determined whether or not the program (write) has been normally performed. If there is an abnormality, the process proceeds to “NO” and ends abnormally (fail).

上記ステップS40において、プログラムが正常に行われた場合、「YES」へ進み、ステップS50へ進み、メモリセルアレイのセクタ内の最後の単位データであるか否かを判断する。ここで、最後の単位データでなければ、ステップS50にて「NO」へ進み、次の単位データに移り(ステップS60)、ステップS20へ戻り、次の単位データのデータパターン(書き込みデータ、期待値)をバッファに発生させる。以下、セクタ内のすべての単位データをプログラムするまで、上記したステップS10〜S60を繰り返す。   If the program is normally executed in step S40, the process proceeds to “YES”, and the process proceeds to step S50 to determine whether or not it is the last unit data in the sector of the memory cell array. If it is not the last unit data, the process proceeds to “NO” in step S50, moves to the next unit data (step S60), returns to step S20, and returns to the next unit data (write data, expected value). ) In the buffer. Thereafter, the above steps S10 to S60 are repeated until all the unit data in the sector are programmed.

そして、セクタ内のすべての単位データのプログラムが終了したら、ステップS50にて「YES」へ進み、ステップS70へ進み、メモリセルアレイ内の最後のセクタであるか否かを判断する。ここで、最後のセクタでなければ、ステップS70にて「NO」へ進み、次のセクタに移り(ステップS80)、ステップS10へ戻り、セクタの最初の単位データのデータパターン(期待値)をバッファに発生させる。以下、最後のセクタ内のすべての単位データをプログラムするまで、上記したステップS10〜S80を繰り返す。これにより、すべてのセクタに同じパターンのデータをプログラムできる。   When the programming of all the unit data in the sector is completed, the process proceeds to “YES” in step S50 and proceeds to step S70 to determine whether or not it is the last sector in the memory cell array. If it is not the last sector, the process proceeds to “NO” in step S70, moves to the next sector (step S80), returns to step S10, and stores the data pattern (expected value) of the first unit data in the sector. To generate. Thereafter, steps S10 to S80 described above are repeated until all the unit data in the last sector are programmed. As a result, data of the same pattern can be programmed in all sectors.

リードの検査を実行する場合についても同様に、例1として図9又は例2として図10のようなフローに基づいてすべてのセクタに対するリード検査が実施される。例1では、セクタ内のそれぞれの読み出し単位について読み出し動作を行った後、特許文献1にあるように、センスアンプの先にあるデータ判定回路によって期待したデータと一致しているかの判定を行う。例2ではそれぞれの読み出し単位について読み出し動作を行った後、いったんデータをRAMなどに保存し、CPUがそのデータにアクセスし演算等を行うことにより期待したデータに一致しているかどうかを判定する。いずれの例も最初のセクタから最後のセクタまで1セクタづつ順次読み出しの動作を行い、これによりすべてのセクタのリード検査を完了する。   Similarly, in the case where the read inspection is executed, the read inspection is performed on all the sectors based on the flow shown in FIG. 9 as Example 1 or FIG. 10 as Example 2. In Example 1, after performing the read operation for each read unit in the sector, as disclosed in Patent Document 1, it is determined whether or not the data matches the expected data by the data determination circuit ahead of the sense amplifier. In Example 2, after performing the read operation for each read unit, the data is temporarily stored in a RAM or the like, and it is determined whether or not the data matches the expected data by the CPU accessing the data and performing an operation or the like. In either example, the reading operation is sequentially performed one sector at a time from the first sector to the last sector, thereby completing the read inspection of all sectors.

特開2007−207319号公報JP 2007-207319 A

上記従来構成のプログラム検査の場合、ステップS20のプログラムしたい1単位データ分のデータパターンをCPUによる演算等によりバッファに発生させる処理を実行する必要が生じる。上記従来構成のプログラム検査においては、メモリセルアレイ内のすべての単位データについて、書き込み動作検査であるステップS30の処理に加え上記ステップS20の処理を実行しなければならないため、プログラム検査終了するまでに、本来の書き込み動作に要する時間以外に、長い時間がかかってしまい効率が良くないという問題点があった。   In the case of the program inspection with the above-described conventional configuration, it is necessary to execute a process of generating a data pattern for one unit data to be programmed in the buffer in a step S20 by calculation by the CPU or the like. In the program inspection of the conventional configuration, since all the unit data in the memory cell array must execute the process of step S20 in addition to the process of step S30 which is the write operation inspection, before the program inspection ends, In addition to the time required for the original write operation, there is a problem that it takes a long time and the efficiency is not good.

また上記従来構成のリード検査の場合、例1では読み出したデータの判定において専用のパターン判定回路を使用しているため、回路設計時に想定していたデータのパターンでしか判定を行うことができず、もし量産立ち上げ時などに検査に使用したいパターンが変更された場合には回路変更を行う必要が生じる。一方、例2では読み出したデータを一旦RAMなどに保存しCPUでこのデータにアクセスし演算を行うことで期待したデータに一致しているかどうかの判定を行うので検査に要する時間が長くなる。   Further, in the case of the above-described conventional lead inspection, since the dedicated pattern determination circuit is used for determining the read data in Example 1, the determination can be made only with the data pattern assumed at the time of circuit design. If the pattern to be used for inspection is changed at the start of mass production, etc., it is necessary to change the circuit. On the other hand, in Example 2, the read data is temporarily stored in a RAM or the like, and the CPU accesses the data and performs an operation to determine whether the data matches the expected data, so that the time required for the inspection becomes longer.

そこで、本発明の目的は、BIST機能を備えた構成において、回路変更なしにあらゆるデータパターンを用いた検査を可能とすること、さらに検査シーケンスの工夫で不必要な繰り返しを最小限にすることによりメモリセルアレイの検査に要する時間を短縮することができる半導体記憶装置を提供することにある。この方法はメモリのチップ内にすでに存在している回路(RAM等)に加え、簡単な論理回路の変更で実現することが可能なため、チップ面積に対するインパクトが小さいという利点がある。   Therefore, an object of the present invention is to enable inspection using any data pattern without changing a circuit in a configuration having a BIST function, and to minimize unnecessary repetition by devising an inspection sequence. An object of the present invention is to provide a semiconductor memory device that can shorten the time required for inspection of a memory cell array. Since this method can be realized by a simple logic circuit change in addition to a circuit (such as a RAM) already existing in the memory chip, there is an advantage that the impact on the chip area is small.

請求項1の発明によれば、メモリセルアレイをプログラム検査するBIST機能を備えた半導体記憶装置において、前記メモリセルアレイは第1の設定数のセクタで構成され、前記セクタは第2の設定数の単位データで構成され、前記単位データは、プログラムする単位のデータであり、第3の設定数のビットのデータで構成され、1個の単位データのプログラム検査用のデータを格納するバッファと、前記セクタの中の1番目の単位データのプログラム検査用のデータを前記バッファに格納した状態で、このプログラム検査用のデータを用いて1番目のセクタの中の1番目の単位データから最後のセクタの中の1番目の単位データまでプログラム検査を各1番目の単位データ毎に順次実行し、その後、前記セクタの中の2番目の単位データのプログラム検査用のデータを前記バッファに格納した状態で、このプログラム検査用のデータを用いて1番目のセクタの中の2番目の単位データから最後のセクタの中の2番目の単位データまでプログラム検査を各2番目の単位データ毎に順次実行し、以下同様にして、3番目以降の単位データのプログラム検査を順次実行していくことにより、全てのセクタのプログラム検査を実行するプログラム検査手段とを備えたので、メモリセルアレイのプログラム検査において任意のデータパターンを用いることが可能であり、なおかつ検査に要する時間を短縮することができる。 According to the first aspect of the present invention, in the semiconductor memory device having a BIST function for program-inspecting a memory cell array, the memory cell array is composed of a first set number of sectors, and the sector is a second set number unit. The unit data is data of a unit to be programmed, is composed of a third set number of bits of data, and stores a program check data of one unit data; and the sector in a state that the data for program inspection of the first unit data stored in the buffer in the, in the first unit data in the first sector using the data for this program checking for the last sector first the program test to unit data sequentially performed for each first unit data, then the second unit data in said sector of The data for program inspection in a state stored in the buffer, the program test from the second unit data in the first sector using the data for the program verify until the second unit data in the last sector Are sequentially executed for each second unit data , and in the same manner, program inspection means for executing program inspection for all sectors by sequentially executing program inspection of the third and subsequent unit data. Since it is provided, an arbitrary data pattern can be used in the program inspection of the memory cell array, and the time required for the inspection can be shortened.

請求項2の発明によれば、リードした単位データの期待値を格納する記憶手段と、読み出したデータと、前記記憶手段内のリードデータの期待値とを回路動作により照合する比較回路を備え、前記セクタの中の1番目の単位データをリードしたときのリードデータの期待値を前記記憶手段に格納した状態で、この期待値を用いて1番目のセクタの中の1番目の単位データから最後のセクタの中の1番目の単位データまでリード検査を各1番目の単位データ毎に順次実行し、その後、前記セクタの中の2番目の単位データをリードしたときのリードデータの期待値を前記記憶手段に保持した状態で、この期待値を用いて1番目のセクタの中の2番目の単位データから最後のセクタの中の2番目の単位データまでリード検査を各2番目の単位データ毎に順次実行し、以下同様にして、3番目以降の単位データのリード検査を順次実行していくことにより、全てのセクタのリード検査を実行するリード検査手段とを備えたので、メモリセルアレイのリード検査において任意のデータパターンを用いることが可能であり、なおかつ検査に要する時間を短縮することができる。 According to the invention of claim 2, the storage means for storing the expected value of the read unit data, the comparison circuit for comparing the read data and the expected value of the read data in the storage means by circuit operation, Finally the expected value of the read data when the read first data unit in said sectors in a state stored in the storage means, from the first unit data in the first sector using the expected value The read inspection is sequentially executed for each first unit data until the first unit data in the sector, and then the expected value of the read data when the second unit data in the sector is read while holding the storage means, the first second from the unit data in the last sector of the second unit data each second unit data read test until in the sector with the expectation Sequentially executed every, and so on, by sequentially executing the read test of the unit data of third and subsequent, since a lead inspection means for performing a read test of all the sectors of the memory cell array Any data pattern can be used in the lead inspection, and the time required for the inspection can be shortened.

請求項3の発明によれば、1個の単位データのプログラム検査用のデータを格納するバッファと、前記セクタ内においてプログラム単位のデータに重複がある場合、単位データのプログラム順を適宜入れ替えて同じデータをプログラムするプログラム単位については連続してプログラムを実行するようにし、その間単位データのプログラムデータを前記バッファに格納した状態のまま保持することにより、データパターンを前記バッファに格納する回数を減らすように制御するプログラム検査手段とを備えたので、検査に要する時間をより一層短縮することができる。   According to the invention of claim 3, when there is an overlap in the program unit data in the sector and the buffer for storing the data for program inspection of one unit data, the program order of the unit data is appropriately changed to be the same In order to reduce the number of times data patterns are stored in the buffer by continuously executing the programs for the program units for programming the data and holding the program data of the unit data in the buffer in the meantime. The program inspection means for controlling the inspection is provided, so that the time required for the inspection can be further reduced.

請求項4の発明によれば、リードした単位データの期待値を格納する記憶手段と、読み出したデータと、前記記憶手段内のリードデータの期待値とを回路動作により照合する比較回路を備え、前記セクタ内においてリード単位のデータに重複がある場合、単位データのリード順を適宜入れ替えて期待データが同じリード単位に対するリード動作を連続して実行するようにし、その間単位データの期待リードデータを前記バッファに格納した状態のまま保持することにより、データパターンを前記バッファに格納する回数を減らすように制御するリード検査手段とを備えたので、検査に要する時間をより一層短縮することができる。   According to the invention of claim 4, the storage means for storing the expected value of the read unit data, the comparison circuit for comparing the read data and the expected value of the read data in the storage means by circuit operation, When there is an overlap in the read unit data in the sector, the read order of the unit data is appropriately changed so that the read operation for the same read unit with the expected data is continuously performed, while the expected read data of the unit data is By holding the state stored in the buffer as it is, the lead inspection means for controlling to reduce the number of times the data pattern is stored in the buffer is provided, so that the time required for the inspection can be further shortened.

本発明の第1実施形態を示すフラッシュメモリ装置のブロック図1 is a block diagram of a flash memory device showing a first embodiment of the present invention. メモリセルアレイの構成を説明する図FIG. 6 illustrates a structure of a memory cell array メモリ検査時のデータパターンの一例を示す図The figure which shows an example of the data pattern at the time of a memory test | inspection 本発明のプログラム検査の制御を示すフローチャートThe flowchart which shows the control of the program inspection of this invention 本発明のリード検査の制御を示すフローチャートFlowchart showing control of lead inspection of the present invention 本発明の第2実施形態を示す図1相当図FIG. 1 equivalent view showing a second embodiment of the present invention 本発明の第3実施形態を示す図3相当図FIG. 3 equivalent view showing a third embodiment of the present invention. 従来構成を示す図4相当図FIG. 4 equivalent diagram showing the conventional configuration 従来構成を示す図5相当図(例1)FIG. 5 equivalent diagram showing a conventional configuration (Example 1) 従来構成を示す図5相当図(例2)FIG. 5 equivalent diagram showing a conventional configuration (example 2)

以下、本発明の第1実施形態について、図1ないし図4を参照して説明する。まず、図1は、本実施形態のフラッシュメモリ装置(半導体記憶装置)1の電気的構成を示す図である。フラッシュメモリ装置1は、メモリセルアレイ2、カラムデコーダ3、センスアンプ4、ロウデコーダ5、セクタデコーダ6、昇圧回路7、制御回路8および入出力バッファ9を備えて構成されている。   Hereinafter, a first embodiment of the present invention will be described with reference to FIGS. First, FIG. 1 is a diagram showing an electrical configuration of a flash memory device (semiconductor memory device) 1 of the present embodiment. The flash memory device 1 includes a memory cell array 2, a column decoder 3, a sense amplifier 4, a row decoder 5, a sector decoder 6, a booster circuit 7, a control circuit 8, and an input / output buffer 9.

メモリセルアレイ2は、フラッシュメモリセルのアレイであり、複数のセクタで構成されている。セクタは1度に消去されるメモリセルの単位であり、1つのセクタの大きさは、通常、例えば数10Kbit〜数Mbit程度である。尚、セクタ(メモリセルアレイ2)の具体的構造については、後述する。   The memory cell array 2 is an array of flash memory cells and is composed of a plurality of sectors. A sector is a unit of memory cells that are erased at a time, and the size of one sector is usually about several tens of Kbits to several Mbits, for example. A specific structure of the sector (memory cell array 2) will be described later.

カラムデコーダ3は、リード(読み出し)動作時には、アドレス情報によって選択されたメモリセルアレイ2のビット線をセンスアンプ4に接続させる。また、カラムデコーダ3は、プログラム(書き込み)動作時またはイレーズ(消去)動作時には、センスアンプ4をメモリセルアレイ2から切り離し、メモリセルアレイ2に必要な電圧を供給する。センスアンプ4は、選択したメモリセルに流れる電流を検知し、その結果からデータが「1」であるか「0」であるかを判定する。   The column decoder 3 connects the bit line of the memory cell array 2 selected by the address information to the sense amplifier 4 during a read (read) operation. In addition, the column decoder 3 disconnects the sense amplifier 4 from the memory cell array 2 and supplies a necessary voltage to the memory cell array 2 during a program (write) operation or an erase (erase) operation. The sense amplifier 4 detects the current flowing through the selected memory cell, and determines whether the data is “1” or “0” based on the result.

ロウデコーダ5は、アドレス情報からメモリセルアレイ2のワード線(メモリセルのゲート)を選択する。選択したメモリセルのゲートに、リード、プログラムまたはイレーズ時に必要な電圧がこのブロックを通じて印加される。   The row decoder 5 selects a word line (memory cell gate) of the memory cell array 2 from the address information. A voltage required for reading, programming or erasing is applied to the gate of the selected memory cell through this block.

セクタデコーダ6は、アドレス情報からリード、プログラムまたはイレーズの動作を行うセクタを選択しイネーブルする。昇圧回路7は、リード、プログラムまたはイレーズの動作を行うための高電圧や負電圧を生成する。   The sector decoder 6 selects and enables a sector that performs a read, program, or erase operation from the address information. The booster circuit 7 generates a high voltage or a negative voltage for performing a read, program, or erase operation.

制御回路8は、CPU10、ROM11及びRAM12を備え、アドレス情報やコマンド(制御)やデータを入出力バッファ9を介して入出力するように構成されている。制御回路8は、外部から受けたコマンドを解釈することにより、プログラムまたはイレーズなどの動作を実行し、昇圧回路7をディセーブル、イネーブルしたり、プログラムやイレーズパルスのコントロールを行う。更に、制御回路8は、リード動作などでデータを外部に出力するときのアウトプットイネーブル/ディセーブル制御する機能、プログラムベリファイの結果を一時的にRAM12に保存する機能、チップの状態やメモリセルへの動作を制御する機能などを有する。   The control circuit 8 includes a CPU 10, a ROM 11, and a RAM 12, and is configured to input / output address information, commands (control), and data via the input / output buffer 9. The control circuit 8 interprets a command received from the outside to execute an operation such as a program or erase, and disables and enables the booster circuit 7 and controls the program and erase pulse. Further, the control circuit 8 has a function of controlling output enable / disable when data is output to the outside by a read operation, a function of temporarily storing the result of program verification in the RAM 12, a state of the chip and a memory cell. A function of controlling the operation of the device.

特に、本実施形態の制御回路8は、BIST(built in self test)動作を実現するための論理回路やCPU(CPU10)も備えている。この場合、制御回路8は、プログラム検査手段及びリード検査手段を構成している。尚、BISTとは、チップ内部で、メモリセルアレイ2に対してリード、プログラム、イレーズなどを使った検査を実施し、その結果判定を行う機能のことである。そして、本実施形態の制御回路8は、ソフトBIST、即ち、半導体チップ上のROM11やRAM12に格納されたソフトウエアによりBIST動作を実現する機能を有する。このため、上記制御回路8は、ソフトBIST動作実現用のソフトウエアで制御可能なCPU10や論理回路を有する構成となっている。尚、制御回路8に、CPUのかわりにBIST等の各種の動作を実現する専用の回路(ハードウエア)を組み込むように構成しても良い。   In particular, the control circuit 8 of the present embodiment also includes a logic circuit and a CPU (CPU 10) for realizing a BIST (built in self test) operation. In this case, the control circuit 8 constitutes program inspection means and lead inspection means. Note that BIST is a function of performing an inspection using read, program, erase, etc. on the memory cell array 2 in the chip and determining the result. The control circuit 8 of the present embodiment has a function of realizing the BIST operation by software BIST, that is, software stored in the ROM 11 or RAM 12 on the semiconductor chip. Therefore, the control circuit 8 includes a CPU 10 and a logic circuit that can be controlled by software for realizing the software BIST operation. The control circuit 8 may be configured to incorporate a dedicated circuit (hardware) for realizing various operations such as BIST instead of the CPU.

次に、上記構成の動作、BIST動作のうちのプログラム検査について、図2ないし図4を参照して説明する。まず、本実施形態のメモリセルアレイ2の構造について、図2及び図3に従って説明する。図2に示すように、メモリセルアレイ2は、第1の設定数としてのN(図2にはN=16の例を示す)個のセクタ13から構成されている。1個のセクタ13は、図3に示すように、第2の設定数としてのn個(n行)のワード線14から構成されている。1個(1行)のワード線14は、第3の設定数としてのMビットのデータで構成され、ここではプログラム(書き込み)の単位と一致しているものとする。尚、一般にプログラムの単位データは、1個のワード線14の大きさのデータに限られるものではない。   Next, the program inspection in the operation of the above configuration and the BIST operation will be described with reference to FIGS. First, the structure of the memory cell array 2 of this embodiment will be described with reference to FIGS. As shown in FIG. 2, the memory cell array 2 is composed of N sectors 13 (N = 16 is shown in FIG. 2) as the first set number. As shown in FIG. 3, one sector 13 includes n (n rows) word lines 14 as the second set number. One (one row) word line 14 is composed of M-bit data as the third set number, and here, it is assumed that it matches the unit of program (write). In general, the unit data of the program is not limited to data of the size of one word line 14.

メモリセルアレイ2のプログラム検査を実行する場合、N個の全てのセクタ13について、例えば図3に示すようなダイアゴナルパターン、即ち、1番目のワード線14としてデータ「0111・・・1」(Mビットのデータであり、この場合、2進数で表わしている)、2番目のワード線14としてデータ「1011・・・1」、3番目のワード線14としてデータ「1101・・・1」、・・・、n番目のワード線14としてデータ「1111・・・10」を書き込む検査を実行する。尚、図3に示すダイアゴナルパターンは、1例であり、他の種々のパターンでも良い。そして、図3に示す各番目のワード線14のダイアゴナルパターンのデータは、チップ内の制御回路8内のCPU10によってアドレス情報を基にして演算で生成する構成となっている。尚、半導体チップ外の例えばテスターからダイアゴナルパターンのデータを制御回路8に送信する(書き込む)ように構成しても良い。   When the program inspection of the memory cell array 2 is executed, the data “0111... 1” (M bits) as a diagonal pattern as shown in FIG. (In this case, expressed in binary), the data “1011... 1” as the second word line 14, the data “1101... 1” as the third word line 14,. A test for writing data “1111... 10” as the nth word line 14 is executed. The diagonal pattern shown in FIG. 3 is an example, and other various patterns may be used. The diagonal pattern data of each word line 14 shown in FIG. 3 is generated by calculation based on the address information by the CPU 10 in the control circuit 8 in the chip. Note that, for example, the data of the diagonal pattern may be transmitted (written) to the control circuit 8 from a tester outside the semiconductor chip.

次に、プログラム検査の制御について、図4のフローチャートを参照して説明する。まず、ステップS110において、プログラム検査のための初期化を行い、2つの変数s、iにそれぞれ「1」をセットする。尚、変数sはセクタ13の順番を示す数値であり、変数iはワード線14の順番を示す数値である。続いて、ステップS120へ進み、プログラム検査のために書き込むワード線14のデータを、今の場合、1番目のワード線14のデータ「0111・・・1」をバッファ(制御回路8のRAM12に設けられている)に格納する。   Next, program inspection control will be described with reference to the flowchart of FIG. First, in step S110, initialization for program inspection is performed, and "1" is set to each of the two variables s and i. The variable s is a numerical value indicating the order of the sectors 13, and the variable i is a numerical value indicating the order of the word lines 14. In step S120, the data of the word line 14 to be written for the program check, in this case, the data “0111... 1” of the first word line 14 is buffered (provided in the RAM 12 of the control circuit 8). Stored).

そして、ステップS130へ進み、メモリセルアレイ2のs番目のセクタ13のi番目のワード線14(今の場合、メモリセルアレイ2の1番目のセクタ13の1番目のワード線14)に、上記バッファ内のデータをプログラム(書き込む)する動作、具体的には、書き込み動作とベリファイ動作を行う。   In step S130, the i-th word line 14 of the s-th sector 13 of the memory cell array 2 (in this case, the first word line 14 of the first sector 13 of the memory cell array 2) is stored in the buffer. The data is programmed (written), specifically, a write operation and a verify operation are performed.

この後、ステップS140へ進み、書き込みが正常に実行されたか否かを判断し、ここで、書き込み異常があったと判断されると、「NO」へ進み、「プログラム異常有り」としてプログラム検査を終了する(fail)。   Thereafter, the process proceeds to step S140, where it is determined whether or not the writing has been executed normally. If it is determined that there is a writing abnormality, the process proceeds to “NO” and the program inspection is terminated as “program abnormality present”. Fail.

また、上記ステップS140において、書き込みが正常に実行されたと判断されると、次の(今の場合、2番目の)セクタ13のi番目(今の場合、1番目)のワード線14のプログラム検査を行うために、「YES」へ進み、ステップS150へ進む。このステップS150では、上記プログラム検査したセクタ13が最後(今の場合、16番目(一般化した場合、N番目))のセクタ13であるか否か、即ち、s=16(N)であるか否かを判断する。今の場合、上記プログラム検査したセクタ13が最後のセクタ13でないから、「NO」へ進み、ステップS160へ進み、次のセクタ13へ移る処理、即ち、セクタ13の順番を示す変数sをカウントアップ(s=s+1=1+1=2)する処理を実行する。   If it is determined in step S140 that the writing has been normally executed, the program check of the i-th (in this case, the first) word line 14 of the next (second in this case) sector 13 is performed. Therefore, the process proceeds to “YES” and proceeds to step S150. In this step S150, whether or not the sector 13 subjected to the program check is the last (in this case, the 16th (Nth in the case of generalization)) sector, that is, whether s = 16 (N). Judge whether or not. In this case, since the sector 13 subjected to the program inspection is not the last sector 13, the process proceeds to “NO”, proceeds to step S160, and moves to the next sector 13, that is, counts up the variable s indicating the order of the sectors 13 The process of (s = s + 1 = 1 + 1 = 2) is executed.

この後、ステップS130へ戻り、次の(今の場合、2番目の)セクタ13のi番目(今の場合、1番目)のワード線14に、前記バッファ内のデータをプログラム(書き込む)する動作、即ち、書き込み動作とベリファイ動作を行う。以下、最後のセクタ13のi番目(今の場合、1番目)のワード線14のプログラム検査が終了するまで、ステップS130〜S160の処理を繰り返し実行する。   Thereafter, the process returns to step S130, and the data in the buffer is programmed (written) to the i-th (first in this case) word line 14 of the next (second in this case) sector 13. That is, a write operation and a verify operation are performed. Thereafter, the processes in steps S130 to S160 are repeatedly executed until the program inspection of the i-th (first in this case) word line 14 of the last sector 13 is completed.

そして、最後のセクタ13のi番目(今の場合、1番目)のワード線14(単位データ)のプログラム検査が終了すると、全てのセクタ13の次のワード線14(今の場合、2番目のワード線14)のプログラム検査を行うために、ステップS150にて、「YES」へ進み、ステップS170へ進む。このステップS170では、上記プログラム検査したi番目のワード線14(今の場合、1番目のワード線14)がセクタ13内の最後のワード線14(n番目のワード線14)であるか否か、即ち、i=nであるか否かを判断する。今の場合、上記プログラム検査したワード線14が最後のワード線14でないから、「NO」へ進み、ステップS180へ進み、次のワード線14(単位データ)へ移る処理、即ち、ワード線14の順番を示す変数iをカウントアップ(i=i+1=1+1=2)すると共に、セクタ13の順番を示す変数sを初期化(s=1)する処理を実行する。   When the program check of the i-th (in this case, the first) word line 14 (unit data) of the last sector 13 is completed, the next word line 14 of all the sectors 13 (in this case, the second word line 14). In order to perform the program inspection of the word line 14), the process proceeds to “YES” in step S150, and then proceeds to step S170. In this step S170, whether or not the i-th word line 14 (in this case, the first word line 14) subjected to the program check is the last word line 14 (n-th word line 14) in the sector 13 or not. That is, it is determined whether i = n. In this case, since the word line 14 subjected to the program check is not the last word line 14, the process proceeds to “NO”, proceeds to step S180, and moves to the next word line 14 (unit data), that is, the word line 14 A process of counting up the variable i indicating the order (i = i + 1 = 1 + 1 = 2) and initializing the variable s indicating the order of the sector 13 (s = 1) is executed.

この後、ステップS120へ戻り、プログラム検査のために書き込むi番目のワード線14のデータを、今の場合、2番目のワード線14のデータ「1011・・・1」をバッファ(制御回路8のRAM12に設けられている)に格納する。続いて、ステップS130へ進み、s番目の(今の場合、1番目の)セクタ13のi番目(今の場合、2番目)のワード線14に、上記バッファ内のデータをプログラム(書き込む)する動作、即ち、書き込み動作とベリファイ動作を行う。以下、最後のセクタ13のi番目(今の場合、2番目)のワード線14のプログラム検査が終了するまで、ステップS130〜S160の処理を繰り返し実行する。   Thereafter, the process returns to step S120, and the data of the i-th word line 14 to be written for the program check, in this case, the data “1011... 1” of the second word line 14 is buffered (of the control circuit 8). Stored in the RAM 12). Subsequently, the process proceeds to step S130, and the data in the buffer is programmed (written) to the i-th (in this case, the second) word line 14 of the s-th (in this case, the first) sector 13. An operation, that is, a write operation and a verify operation are performed. Thereafter, the processing of steps S130 to S160 is repeatedly executed until the program inspection of the i-th (second in this case) word line 14 of the last sector 13 is completed.

そして、最後のセクタ13のi番目(今の場合、2番目)のワード線14のプログラム検査が終了すると、全てのセクタ13の次のワード線14(今の場合、3番目のワード線14)のプログラム検査を行うために、ステップS150にて、「YES」へ進み、ステップS170へ進む。このステップS170では、上記プログラム検査したワード線14(今の場合、2番目のワード線14)がセクタ13内の最後のワード線14(n番目のワード線14)であるか否か、即ち、i=nであるか否かを判断する。今の場合、上記プログラム検査したワード線14が最後のワード線14でないから、「NO」へ進み、ステップS180へ進み、次のワード線14(単位データ)へ移る処理、即ち、ワード線14の順番を示す変数iをカウントアップ(i=i+1=21+1=3)すると共に、セクタ13の順番を示す変数sを初期化(s=1)する処理を実行した後、ステップS120へ戻る。以下、全てのセクタ13の最後のワード線14(n番目のワード線14)のプログラム検査が終了するまで、ステップS120〜S180の処理を繰り返し実行する。   When the program inspection of the i-th (second in this case) word line 14 of the last sector 13 is completed, the next word line 14 of all the sectors 13 (in this case, the third word line 14). In step S150, the process proceeds to “YES”, and the process proceeds to step S170. In this step S170, it is determined whether or not the word line 14 (the second word line 14 in this case) subjected to the program inspection is the last word line 14 (nth word line 14) in the sector 13, that is, It is determined whether i = n. In this case, since the word line 14 subjected to the program check is not the last word line 14, the process proceeds to “NO”, proceeds to step S180, and moves to the next word line 14 (unit data), that is, the word line 14 After counting up the variable i indicating the order (i = i + 1 = 21 + 1 = 3) and initializing the variable s indicating the order of the sector 13 (s = 1), the process returns to step S120. Thereafter, the processes of steps S120 to S180 are repeatedly executed until the program inspection of the last word line 14 (nth word line 14) of all the sectors 13 is completed.

そして、全てのセクタ13の最後のワード線14(今の場合、n番目のワード線14)のプログラム検査が終了すると、ステップS170にて、「YES」へ進み、メモリセルアレイ2のプログラム検査を完了する。   When the program check of the last word line 14 of all the sectors 13 (in this case, the nth word line 14) is completed, the process proceeds to “YES” in step S170 to complete the program check of the memory cell array 2. To do.

次に、第2実施形態としてメモリセルアレイ2のリード検査の制御について、図5ないし図6を参照して説明する。図5はリード検査のフローチャートを示すものであり、図6は本発明の第2実施形態を示すものである。尚、第1実施形態と同一構成には、同一符号を付している。第2実施形態では、制御回路8内に設けた比較回路15(ハードウエア回路)により読み出したデータの判定を実行するように構成した。具体的には、メモリセルアレイ2内のセクタ13内のワード線14を読み出したデータ、即ち、センスアンプ出力と、RAM内のデータ(期待値のデータ)を制御回路8内の比較回路15の回路動作により照合(比較)する構成とした。ここでは1個(1行)のワード線14は、リード(読み込み)の単位と一致しているものとし、第3の設定数としてのMビットのデータで構成されている。尚、一般にリードの単位データは、1個のワード線14の大きさのデータに限られるものではなく、またプログラムに用いられるデータの単位とリードに用いられるデータの単位が一致しているとも限らない。   Next, read inspection control of the memory cell array 2 will be described with reference to FIGS. 5 to 6 as a second embodiment. FIG. 5 shows a flowchart of lead inspection, and FIG. 6 shows a second embodiment of the present invention. In addition, the same code | symbol is attached | subjected to the same structure as 1st Embodiment. In the second embodiment, the data read by the comparison circuit 15 (hardware circuit) provided in the control circuit 8 is determined. Specifically, the data of the word line 14 in the sector 13 in the memory cell array 2, that is, the sense amplifier output and the data in RAM (expected value data) are compared with the circuit of the comparison circuit 15 in the control circuit 8. It was set as the structure collated (comparison) by operation | movement. Here, one (one row) word line 14 is assumed to coincide with the unit of reading (reading), and is composed of M-bit data as the third set number. In general, the unit data for reading is not limited to the data of the size of one word line 14, and the unit of data used for programming and the unit of data used for reading may not be the same. Absent.

まず、図5のステップS210において、リード検査のための初期化を行い、2つの変数s、iにそれぞれ「1」をセットする。続いて、ステップS220へ進み、読み出しデータの期待値を、今の場合、各セクタ13の1番目のワード線14のデータ「0111・・・1」をSRAM(制御回路8のRAM12に設けられている)に格納する。   First, in step S210 in FIG. 5, initialization for lead inspection is performed, and “1” is set in each of the two variables s and i. Subsequently, the process proceeds to step S220, where the expected value of the read data, in this case, the data “0111... 1” of the first word line 14 of each sector 13 is provided in the SRAM (RAM 12 of the control circuit 8). Stored).

そして、ステップS230へ進み、メモリセルアレイ2のs番目のセクタ13のi番目のワード線14(今の場合、メモリセルアレイ2の1番目のセクタ13内の1番目のワード線14)のデータをリード(読み出す)する。続いて、ステップS240へ進み、読み出したデータとRAM内のデータ(期待値のデータ)を回路動作により照合(比較)する。次いで、ステップS250へ進み、リードが正常に実行されたか否か、即ち、読み出したデータと期待値のデータが一致したか否かを判断する。ここで、読み出し異常があったと判断されると、ステップS250にて「NO」へ進み、異常有りでリード検査を終了する(fail)。   In step S230, the data of the i-th word line 14 in the s-th sector 13 of the memory cell array 2 (in this case, the first word line 14 in the first sector 13 of the memory cell array 2) is read. (Read). In step S240, the read data and the data in the RAM (expected value data) are collated (compared) by a circuit operation. Next, the process proceeds to step S250, and it is determined whether or not the read has been normally executed, that is, whether or not the read data matches the expected value data. Here, if it is determined that there is a reading abnormality, the process proceeds to “NO” in step S250, and the lead inspection is terminated when there is an abnormality (fail).

また、上記ステップS250において、読み出しが正常に実行されたと判断されると、次の(今の場合、2番目の)セクタ13のi番目(今の場合、1番目)のワード線14のリード検査を行うために、「YES」へ進み、ステップS260へ進む。このステップS260では、上記リード検査したセクタ13が最後(今の場合、16番目(一般化した場合、N番目))のセクタ13であるか否か、即ち、s=16(N)であるか否かを判断する。今の場合、上記プログラム検査したセクタ13が最後のセクタ13でないから、「NO」へ進み、ステップS270へ進む。このステップS270では、次のセクタ13へ移る処理、即ち、セクタ13の順番を示す変数sをカウントアップ(s=s+1=1+1=2)する処理を実行する。   If it is determined in step S250 that the reading has been normally executed, the read check of the i-th (first in this case) word line 14 of the next (second in this case) sector 13 is performed. Therefore, the process proceeds to “YES” and proceeds to step S260. In this step S260, whether or not the sector 13 subjected to the read check is the last (in this case, the 16th (Nth in the general case)) sector, that is, whether s = 16 (N). Judge whether or not. In this case, since the sector 13 subjected to the program check is not the last sector 13, the process proceeds to “NO”, and the process proceeds to step S270. In step S270, a process of moving to the next sector 13, that is, a process of counting up the variable s indicating the order of the sectors 13 (s = s + 1 = 1 + 1 = 2) is executed.

この後、ステップS230へ戻り、次のs番目(今の場合、2番目)のセクタ13のi番目(今の場合、1番目)のワード線14のデータをリードする。以下、最後のセクタ13のi番目(今の場合、1番目)のワード線14のデータのリード検査が終了するまで、ステップS230〜S270の処理を繰り返し実行する。   Thereafter, the process returns to step S230, and the data of the i-th (first in this case) word line 14 of the next s-th (second in this case) sector 13 is read. Thereafter, the processing of steps S230 to S270 is repeatedly executed until the data read inspection of the i-th (in this case, the first) word line 14 of the last sector 13 is completed.

そして、最後のセクタ13のi番目(今の場合、1番目)のワード線14のデータのリード検査が終了すると、全てのセクタ13の次のワード線14(今の場合、2番目のワード線14)のプログラム検査を行うために、ステップS260にて、「YES」へ進み、ステップS280へ進む。このステップS280では、上記リード検査したi番目の単位データとしてのワード線14(今の場合、1番目のワード線14)がセクタ13内の最後のワード線14(n番目のワード線14)であるか否か、即ち、i=nであるか否かを判断する。今の場合、上記リード検査したワード線14(単位データ)が最後のワード線14でないから、「NO」へ進み、ステップS290へ進み、次のワード線14(単位データ)へ移る処理、即ち、ワード線14の順番を示す変数iをカウントアップ(i=i+1=1+1=2)すると共に、セクタ13の順番を示す変数sを初期化(s=1)する処理を実行する。   When the data read inspection of the i-th (in this case, the first) word line 14 of the last sector 13 is completed, the next word line 14 of all the sectors 13 (in this case, the second word line) 14) In order to perform the program inspection of step 14), the process proceeds to “YES” in step S260, and then proceeds to step S280. In step S280, the word line 14 (the first word line 14 in this case) as the i-th unit data subjected to the read check is the last word line 14 (n-th word line 14) in the sector 13. It is determined whether or not i.e., i = n. In this case, since the read-inspected word line 14 (unit data) is not the last word line 14, the process proceeds to “NO”, proceeds to step S290, and moves to the next word line 14 (unit data). The variable i indicating the order of the word lines 14 is counted up (i = i + 1 = 1 + 1 = 2), and the variable s indicating the order of the sectors 13 is initialized (s = 1).

この後、ステップS220へ戻り、リード検査のために読み出すi番目のワード線14のデータの期待値を、今の場合、2番目のワード線14のデータ「1011・・・1」をRAM(制御回路8のRAM12に設けられている)に格納する。続いて、ステップS230へ進み、s番目の(今の場合、1番目の)セクタ13のi番目(今の場合、2番目)のワード線14のデータをリードする。以下、最後のセクタ13のi番目(今の場合、2番目)のワード線14のプログラム検査が終了するまで、ステップS230〜S270の処理を繰り返し実行する。   Thereafter, the process returns to step S220, and the expected value of the data of the i-th word line 14 read for the read inspection, in this case, the data “1011. Stored in the RAM 12 of the circuit 8. Subsequently, the process proceeds to step S230, and the data of the i-th (second in this case) word line 14 of the s-th (first in this case) sector 13 is read. Thereafter, the processing of steps S230 to S270 is repeatedly executed until the program inspection of the i-th (second in this case) word line 14 of the last sector 13 is completed.

そして、最後のセクタ13のi番目(今の場合、2番目)のワード線14のデータのリード検査が終了すると、全てのセクタ13の次のワード線14(今の場合、3番目のワード線14)のデータのリード検査を行うために、ステップS260にて、「YES」へ進み、ステップS280へ進む。このステップS280では、上記リード検査したi番目のワード線14(今の場合、2番目のワード線14)がセクタ13内の最後のワード線14(n番目のワード線14)であるか否か、即ち、i=nであるか否かを判断する。今の場合、上記リード検査したワード線14が最後のワード線14でないから、「NO」へ進み、ステップS290へ進み、次のワード線14(単位データ)へ移る処理、即ち、ワード線14の順番を示す変数iをカウントアップ(i=i+1=2+1=3)すると共に、セクタ13の順番を示す変数sを初期化(s=1)する処理を実行した後、ステップS220へ戻る。以下、全てのセクタ13内の最後のワード線14(n番目のワード線14)のデータのリード検査が終了するまで、ステップS220〜S290の処理を繰り返し実行する。   When the data read inspection of the i-th (in this case, second) word line 14 of the last sector 13 is completed, the next word line 14 of all the sectors 13 (in this case, the third word line) In step S260, the process advances to “YES” and the process advances to step S280 to perform the data lead inspection of 14). In this step S280, whether or not the i-th word line 14 (in this case, the second word line 14) subjected to the read check is the last word line 14 (n-th word line 14) in the sector 13 or not. That is, it is determined whether i = n. In this case, since the word line 14 subjected to the read check is not the last word line 14, the process proceeds to “NO”, proceeds to step S290, and moves to the next word line 14 (unit data), that is, the word line 14 After counting up the variable i indicating the order (i = i + 1 = 2 + 1 = 3) and initializing the variable s indicating the order of the sector 13 (s = 1), the process returns to step S220. Thereafter, the processes of steps S220 to S290 are repeatedly executed until the data read inspection of the last word line 14 (nth word line 14) in all the sectors 13 is completed.

そして、全てのセクタ13の最後のワード線14(今の場合、n番目のワード線14)のデータのリード検査が終了すると、ステップS280にて、「YES」へ進み、メモリセルアレイ2のリード検査を完了する。   When the data read inspection of the last word line 14 (in this case, the nth word line 14) of all the sectors 13 is completed, the process proceeds to “YES” in step S280, and the read inspection of the memory cell array 2 is performed. To complete.

上記第1実施形態においては、BIST機能でメモリセルアレイ2のプログラム検査を行うときに、プログラム検査のために書き込むワード線14のデータをバッファに格納する回数がn回(即ち、ワード線14の個数の回数)となるように構成した。このため、本実施形態によれば、バッファにワード線14のデータを格納する回数が大幅に少なくなる(尚、図8に示す従来構成の場合、(n*16(N))回であるから、1/16(N)になる)。通常ワード線14のデータをバッファに格納する処理を実行するのに時間を要するため、その繰り返しの回数を減らすことによりプログラム検査に要する検査時間を大幅に短縮することができる。また、上記実施形態によれば、プログラム検査時にメモリセルアレイ2の全てのセクタ13に書き込むデータパターンを、制御回路8に組み込むソフトウエアの変更だけで自由に変更することができるので、検査データパターンが変更されたような場合に、ハードウエアの変更が不要となり容易に対応することができる。   In the first embodiment, when the program inspection of the memory cell array 2 is performed with the BIST function, the number of times the data of the word line 14 to be written for the program inspection is stored in the buffer is n times (that is, the number of the word lines 14). The number of times). For this reason, according to the present embodiment, the number of times the data of the word line 14 is stored in the buffer is significantly reduced (in the case of the conventional configuration shown in FIG. 8, this is (n * 16 (N)) times. 1/16 (N)). Since it usually takes time to execute the process of storing the data of the word line 14 in the buffer, the inspection time required for the program inspection can be greatly shortened by reducing the number of repetitions. Further, according to the above-described embodiment, the data pattern written in all the sectors 13 of the memory cell array 2 at the time of program inspection can be freely changed only by changing the software incorporated in the control circuit 8. In the case of a change, it is not necessary to change the hardware and can be easily handled.

また、上記第2実施形態においては、リード検査において読み出したデータが期待したデータと一致しているかの判定において、あらかじめ用意されたパターン判定回路で行うのではなく、またCPU等を用いた演算によってソフトウェア的に行うのでもなく、センスアンプ出力とRAM(制御回路8のRAM12)上に発生させた期待値データとの照合を行う回路によって判定することにした。これにより、リード検査中にRAMに格納するリード検査用のデータパターン(期待値のデータ)を、制御回路8に組み込むソフトウエアの変更だけで自由に変更させることができるので、リード検査用のデータパターンが変更されたような場合に、回路変更せずに容易に対応することができる上、制御回路8のCPU10の演算によりパターン一致を判定する構成に比べて、照合に要する時間を短縮することができる。また、第1の実施形態におけるプログラム検査の場合と同様に、リード検査のために読み出すワード線14のデータの期待値をRAMに格納する回数がn回(即ち、ワード線14の個数の回数)となるように構成した。このため、本実施形態によれば、RAMにワード線14のデータの期待値を格納する回数が大幅に少なくなる(尚、従来構成の場合、(n*16(N))回であるから、1/16(N)になる)ので、リード検査に要する検査時間を大幅に短縮することができる。特に、ワード線14のデータの期待値をRAMに格納する処理を実行するのに長い時間を要するため、リード検査に要する検査時間を実質的に大幅に短縮できる。上記により、任意のデータパターンでの検査と検査時間の短縮を両立することが可能となる。   In the second embodiment, the determination whether the data read in the lead inspection matches the expected data is not performed by a pattern determination circuit prepared in advance, but by calculation using a CPU or the like. Instead of using software, the decision was made by a circuit that collates the sense amplifier output with the expected value data generated on the RAM (RAM 12 of the control circuit 8). As a result, the data pattern for the lead inspection (expected value data) stored in the RAM during the lead inspection can be freely changed only by changing the software incorporated in the control circuit 8. When a pattern is changed, it can be easily handled without changing the circuit, and the time required for verification can be shortened as compared with the configuration in which the pattern match is determined by the calculation of the CPU 10 of the control circuit 8. Can do. Similarly to the case of the program check in the first embodiment, the expected number of data of the word line 14 read for the read check is stored in the RAM n times (that is, the number of word lines 14). It comprised so that it might become. For this reason, according to the present embodiment, the number of times the expected value of the data of the word line 14 is stored in the RAM is significantly reduced (in the conventional configuration, (n * 16 (N)) times. 1/16 (N)), the inspection time required for lead inspection can be greatly shortened. In particular, since it takes a long time to execute the process of storing the expected value of the data of the word line 14 in the RAM, the inspection time required for the read inspection can be substantially reduced. As described above, it is possible to achieve both inspection with an arbitrary data pattern and reduction in inspection time.

図7は、本発明の第3実施形態を示すものである。尚、第1実施形態と同一構成には、同一符号を付している。第1実施形態では、プログラム検査を実行する際に、図3に示すようなダイアゴナルパターンを書き込むように構成したが、これに代えて、第3実施形態においては、図7に示すチェッカーボードパターンを書き込むように構成した。   FIG. 7 shows a third embodiment of the present invention. In addition, the same code | symbol is attached | subjected to the same structure as 1st Embodiment. In the first embodiment, when the program inspection is executed, the diagonal pattern as shown in FIG. 3 is written. Instead, in the third embodiment, the checkerboard pattern shown in FIG. 7 is used. Configured to write.

チェッカーボードパターンは、図7に示すように、奇数番目のワード線14のデータパターンは全て同じであると共に、偶数番目のワード線14のデータパターンは全て同じである。即ち、ワード線14(単位データ)のデータパターンは、2種類しかない。このため、第3実施形態では、プログラム検査のために書き込むワード線14のデータをバッファに格納する回数を2回とすることができる。   As shown in FIG. 7, in the checkerboard pattern, the data patterns of the odd-numbered word lines 14 are all the same, and the data patterns of the even-numbered word lines 14 are all the same. That is, there are only two types of data patterns for the word line 14 (unit data). For this reason, in the third embodiment, the number of times the data of the word line 14 to be written for the program check is stored in the buffer can be set to two.

例えば、まず、はじめに奇数番目のワード線14のデータパターンをバッファに格納した状態で、すべてのセクタ13について、奇数番目のワード線14のプログラム検査を実行し(すべてのセクタ13について1番目のワード線をプログラムを行い、次にすべてのセクタ13について3番目のワード線、以後同様に5番目以降の奇数番目のワード線についてプログラムを行う)、その後、偶数番目のワード線14のデータパターンをバッファに格納した状態で、すべてのセクタ13について、偶数番目のワード線14のプログラム検査を実行(すべてのセクタ13について2番目のワード線をプログラムを行い、次にすべてのセクタ13について4番目のワード線、以後同様に6番目以降の偶数番目のワード線についてプログラムを行う)するように制御すれば良い。   For example, first, in a state where the data pattern of the odd-numbered word lines 14 is stored in the buffer, the program check of the odd-numbered word lines 14 is executed for all the sectors 13 (the first word for all the sectors 13). The line is programmed, then the third word line is programmed for all sectors 13, and then the fifth and subsequent odd word lines are similarly programmed), and then the data pattern of the even-numbered word lines 14 is buffered. , The program check of the even-numbered word lines 14 is executed for all sectors 13 (the second word line is programmed for all sectors 13 and then the fourth word for all sectors 13 is written. Program the line and then the sixth and subsequent even numbered word lines) It may be controlled to so that.

上述した以外の第3実施形態の構成は、第1実施形態と同じ構成となっている。従って、第3実施形態においても、第1実施形態とほぼ同じ作用効果を得ることができる。特に、第3実施形態によれば、プログラム検査のために書き込むワード線14のデータをバッファに格納する回数を最小で2回とすることができるので、プログラム検査に要する検査時間を実質的に更に大幅に短縮することができる。   The configuration of the third embodiment other than that described above is the same as that of the first embodiment. Therefore, in the third embodiment, substantially the same operational effects as in the first embodiment can be obtained. In particular, according to the third embodiment, since the number of times the data of the word line 14 to be written for the program inspection is stored in the buffer can be reduced to two times, the inspection time required for the program inspection can be further increased. It can be greatly shortened.

尚、上記第3実施形態では、プログラム検査を実行する際に、セクタ13に書き込むデータパターンとして、ワード線14(単位データ)のデータパターンが2種類しかないデータパターンについて説明したが、これに限られるものではなく、セクタ内でのワード線14(単位データ)のデータパターンが重複している場合には、プログラム検査のために書き込むワード線14のデータをバッファに格納する回数が最小となるように書き込みデータ単位のプログラム順序を適宜並べ替えるように、すべてのセクタ13に対するワード線14のプログラム検査の制御(即ち、すべてのセクタ13に対して同じ種類のデータパターンのワード線14のプログラム検査をまとめて実行する制御)を適宜構成すれば良い。   In the third embodiment, a data pattern in which there are only two types of data patterns of the word line 14 (unit data) has been described as a data pattern to be written to the sector 13 when executing the program inspection. If the data pattern of the word line 14 (unit data) in the sector is not duplicated, the number of times the data of the word line 14 to be written for program inspection is stored in the buffer is minimized. The program check of the word lines 14 for all the sectors 13 (that is, the program check of the word lines 14 of the same type of data pattern for all the sectors 13) (Control to be executed collectively) may be appropriately configured.

また、上記第3実施形態および変形形態では、プログラムの単位データを1個のワード線14としたが、一般にこれに限られるものではない。
第4実施形態として、第3実施形態と同様にチェッカーボードパターンでリード検査を行う場合も同様に、はじめに奇数番目のワード線14のデータパターンをバッファに格納した状態で、すべてのセクタ13について、奇数番目のワード線14のリード検査を実行し、その後、偶数番目のワード線14のデータパターンをバッファに格納した状態で、すべてのセクタ13について、偶数番目のワード線14のリード検査を実行するように制御すればリード検査のために書き込むワード線14のデータをバッファに格納する回数を最小で2回とすることが可能であり更なる時間短縮が可能である。
In the third embodiment and the modification, the unit data of the program is one word line 14, but the present invention is not limited to this.
As in the fourth embodiment, similarly to the third embodiment, in the case of performing the lead inspection with the checkerboard pattern, the data pattern of the odd-numbered word lines 14 is first stored in the buffer, and all the sectors 13 are The read inspection of the odd-numbered word lines 14 is executed, and then the read inspection of the even-numbered word lines 14 is executed for all the sectors 13 with the data pattern of the even-numbered word lines 14 stored in the buffer. By controlling in this way, the number of times the data of the word line 14 to be written for the read test can be stored in the buffer can be reduced to a minimum of 2, and the time can be further reduced.

尚、上記実施形態において、メモリセルアレイ2のプログラム検査を実行し、書き込み異常があったときには、その異常があったセクタが不良であると確定し、冗長なセクタと置き換えるなどの処理を行うように構成しても良い。また、上記実施形態において、メモリセルアレイ2のリード検査を実行し、読み込み異常があったときには、その異常があったセクタが不良であると確定し、冗長なセクタと置き換えるなどの処理を行うように構成しても良い。   In the above embodiment, when the program check of the memory cell array 2 is performed and there is a write abnormality, it is determined that the sector having the abnormality is defective and processing such as replacement with a redundant sector is performed. It may be configured. In the above embodiment, when the read inspection of the memory cell array 2 is performed and there is a reading abnormality, the sector having the abnormality is determined to be defective, and processing such as replacement with a redundant sector is performed. It may be configured.

図面中、1はフラッシュメモリ装置、2はメモリセルアレイ、8は制御回路、10はCPU、11はROM、12はRAM、13はセクタ、14はワード線、15は比較回路を示す。   In the drawings, 1 is a flash memory device, 2 is a memory cell array, 8 is a control circuit, 10 is a CPU, 11 is a ROM, 12 is a RAM, 13 is a sector, 14 is a word line, and 15 is a comparison circuit.

Claims (4)

メモリセルアレイをプログラム検査するBIST機能を備えた半導体記憶装置において、
前記メモリセルアレイは第1の設定数のセクタで構成され、
前記セクタは第2の設定数の単位データで構成され、
前記単位データは、プログラムする単位のデータであり、第3の設定数のビットのデータで構成され、
1個の単位データのプログラム検査用のデータを格納するバッファと、
前記セクタの中の1番目の単位データのプログラム検査用のデータを前記バッファに格納した状態で、このプログラム検査用のデータを用いて1番目のセクタの中の1番目の単位データから最後のセクタの中の1番目の単位データまでプログラム検査を各1番目の単位データ毎に順次実行し、その後、前記セクタの中の2番目の単位データのプログラム検査用のデータを前記バッファに格納した状態で、このプログラム検査用のデータを用いて1番目のセクタの中の2番目の単位データから最後のセクタの中の2番目の単位データまでプログラム検査を各2番目の単位データ毎に順次実行し、以下同様にして、3番目以降の単位データのプログラム検査を順次実行していくことにより、全てのセクタのプログラム検査を実行するプログラム検査手段とを備えたことを特徴とする半導体記憶装置。
In a semiconductor memory device having a BIST function for program-inspecting a memory cell array,
The memory cell array is composed of a first set number of sectors,
The sector is composed of a second set number of unit data,
The unit data is data of a unit to be programmed, and is composed of a third set number of bits of data,
A buffer for storing data for program inspection of one unit data;
While storing the data for program inspection of the first unit data in the sector in the buffer, first for the last sector from the first unit data in the sector using the data for the program verification The program check is sequentially executed for each first unit data until the first unit data in the data, and then the program check data of the second unit data in the sector is stored in the buffer. sequentially executes the program test until the second unit data in the last sector from the second unit data in the first sector using the data for the program test for each second unit data, In the same manner, the program check for executing the program check for all sectors is performed by sequentially executing the program check for the third and subsequent unit data. The semiconductor memory device characterized by comprising a means.
メモリセルアレイをリード検査するBIST機能を備えた半導体記憶装置において、
前記メモリセルアレイは第1の設定数のセクタで構成され、
前記セクタは第2の設定数の単位データで構成され、
前記単位データは、リードする単位のデータであり、第3の設定数のビットのデータで構成され、
リードした単位データの期待値を格納する記憶手段と、読み出したデータと、前記記憶手段内のリードデータの期待値とを照合する比較回路を備え、
前記セクタの中の1番目の単位データをリードしたときのリードデータの期待値を前記記憶手段に格納した状態で、この期待値を用いて1番目のセクタの中の1番目の単位データから最後のセクタの中の1番目の単位データまでリード検査を各1番目の単位データ毎に順次実行し、その後、前記セクタの中の2番目の単位データをリードしたときのリードデータの期待値を前記記憶手段に格納した状態で、この期待値を用いて1番目のセクタの中の2番目の単位データから最後のセクタの中の2番目の単位データまでリード検査を各2番目の単位データ毎に順次実行し、以下同様にして、3番目以降の単位データのリード検査を順次実行していくことにより、全てのセクタのリード検査を実行するリード検査手段とを備えたことを特徴とする半導体記憶装置。
In a semiconductor memory device having a BIST function for performing a lead inspection on a memory cell array,
The memory cell array is composed of a first set number of sectors,
The sector is composed of a second set number of unit data,
The unit data is data of a unit to be read, and is composed of a third set number of bits of data,
A storage means for storing the expected value of the read unit data, a comparison circuit for comparing the read data with the expected value of the read data in the storage means,
Finally the expected value of the read data when the read first data unit in said sectors in a state stored in the storage means, from the first unit data in the first sector using the expected value The read inspection is sequentially executed for each first unit data until the first unit data in the sector, and then the expected value of the read data when the second unit data in the sector is read while stored in the storage unit, the lead inspection until the second unit data in the last sector from the second unit data in the first sector using the expected value for each second unit data sequentially executes, in the same manner, by sequentially executing the read test of the unit data of third and subsequent, characterized by comprising a lead inspection means for performing a read test of all the sectors Conductor memory device.
前記セクタ内においてプログラム単位のデータに重複がある場合、単位データのプログラム順を適宜入れ替えて同じデータをプログラムするプログラム単位に対する書き込み動作を連続して実行するようにし、その間単位データのプログラムデータを前記バッファに格納した状態のまま保持することにより、データパターンを前記バッファに格納する回数を減らすように制御するプログラム検査手段とを備えたことを特徴とする請求項1に記載の半導体記憶装置。   When there is an overlap in program unit data in the sector, the program order of the unit data is appropriately changed, and the write operation to the program unit for programming the same data is continuously executed, while the program data of the unit data is 2. The semiconductor memory device according to claim 1, further comprising program checking means for controlling to reduce the number of times the data pattern is stored in the buffer by holding the buffer in the state stored in the buffer. 前記セクタ内においてリード単位のデータに重複がある場合、単位データのリード順を適宜入れ替えて期待データが同じリード単位に対するリード動作を連続して実行するようにし、その間単位データについて期待するリードデータを前記バッファに格納した状態のまま保持することにより、期待するデータパターンを前記バッファに格納する回数を減らすように制御するリード検査手段とを備えたことを特徴とする請求項2に記載の半導体記憶装置。   If there is an overlap in the read unit data in the sector, the read order of the unit data is appropriately changed so that the read operation for the read unit with the same expected data is continuously executed, and the expected read data for the unit data is 3. The semiconductor memory according to claim 2, further comprising: a read inspection unit that controls to reduce the number of times an expected data pattern is stored in the buffer by holding the buffer in the state stored in the buffer. apparatus.
JP2011075547A 2011-03-30 2011-03-30 Semiconductor memory device Expired - Fee Related JP5445500B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011075547A JP5445500B2 (en) 2011-03-30 2011-03-30 Semiconductor memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011075547A JP5445500B2 (en) 2011-03-30 2011-03-30 Semiconductor memory device

Publications (2)

Publication Number Publication Date
JP2012209003A JP2012209003A (en) 2012-10-25
JP5445500B2 true JP5445500B2 (en) 2014-03-19

Family

ID=47188593

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011075547A Expired - Fee Related JP5445500B2 (en) 2011-03-30 2011-03-30 Semiconductor memory device

Country Status (1)

Country Link
JP (1) JP5445500B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2947117B2 (en) * 1995-03-27 1999-09-13 ヤマハ株式会社 Test method for semiconductor memory device
JP2000132982A (en) * 1998-10-26 2000-05-12 Sony Corp Medium element, apparatus and method for recording information, and apparatus and method for reproducing information
JP2005050393A (en) * 2003-07-29 2005-02-24 Toshiba Lsi System Support Kk Semiconductor device and its failure detection method
JP4405292B2 (en) * 2004-03-22 2010-01-27 パナソニック株式会社 Nonvolatile semiconductor memory device and writing method thereof
JP4750813B2 (en) * 2008-03-07 2011-08-17 力晶科技股▲ふん▼有限公司 Nonvolatile semiconductor memory device and self test method thereof

Also Published As

Publication number Publication date
JP2012209003A (en) 2012-10-25

Similar Documents

Publication Publication Date Title
CN1905068B (en) Non-volatile memory device having improved programming speed and associated programming method
KR100624595B1 (en) Non-volatile semiconductor memory device, data write-in method of non-volatile semiconductor memory device and memory card
US20130326295A1 (en) Semiconductor memory device including self-contained test unit and test method thereof
US6981188B2 (en) Non-volatile memory device with self test
US8159892B2 (en) Nonvolatile memory device and method of testing the same
JP2010009642A (en) Semiconductor memory device and test method thereof
US8184483B2 (en) Nonvolatile memory device and method of programming the same
JP2007066386A (en) Semiconductor memory device
US8006145B2 (en) Semiconductor integrated circuit device
KR102019567B1 (en) Semiconductor memory device and operation setting method thereof
JP2011253593A (en) Nonvolatile semiconductor memory device
KR102031191B1 (en) Non-volatile memory and boot up operation method of the same
KR100898653B1 (en) Flash memory device and method of programming the same
KR102103415B1 (en) Semiconductor device, memory device and system including the same
JPH07282600A (en) Electrically changeable nonvolatile memory in which test function is incorporated
JP5445500B2 (en) Semiconductor memory device
TWI571879B (en) Flash memory apparatus and data erasing method thereof
JP2006190488A (en) Write-in method in semiconductor memory device
KR20100085657A (en) Non volatile memory device and method of operating the same
JP2009032313A (en) Nonvolatile semiconductor storage device, and test method of nonvolatile semiconductor storage device
US9666291B2 (en) Auto program and auto cycling method for non-volatile memory
JP2013127827A (en) Nonvolatile semiconductor memory device
US20080205149A1 (en) Method of programming non-volatile memory device
JP2013037749A (en) Writing circuit, semiconductor integrated circuit, and writing method
JP2000123581A (en) Write-in method for semiconductor memory, and semiconductor memory

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130415

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130806

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130924

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131209

R151 Written notification of patent or utility model registration

Ref document number: 5445500

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

LAPS Cancellation because of no payment of annual fees