RU2821349C1 - Method for testing non-volatile memory chips and device for its implementation - Google Patents
Method for testing non-volatile memory chips and device for its implementation Download PDFInfo
- Publication number
- RU2821349C1 RU2821349C1 RU2023124905A RU2023124905A RU2821349C1 RU 2821349 C1 RU2821349 C1 RU 2821349C1 RU 2023124905 A RU2023124905 A RU 2023124905A RU 2023124905 A RU2023124905 A RU 2023124905A RU 2821349 C1 RU2821349 C1 RU 2821349C1
- Authority
- RU
- Russia
- Prior art keywords
- test
- logical
- read
- volatile memory
- cells
- Prior art date
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 236
- 230000015654 memory Effects 0.000 title claims abstract description 145
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000002441 reversible effect Effects 0.000 claims abstract description 14
- 230000003068 static effect Effects 0.000 claims description 20
- 239000011159 matrix material Substances 0.000 claims description 4
- 230000007547 defect Effects 0.000 abstract description 36
- 238000001514 detection method Methods 0.000 abstract description 6
- 230000000694 effects Effects 0.000 abstract description 4
- 239000000126 substance Substances 0.000 abstract 1
- 238000005259 measurement Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 238000010998 test method Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000007257 malfunction Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000011960 computer-aided design Methods 0.000 description 3
- 230000002950 deficient Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000004092 self-diagnosis Methods 0.000 description 3
- 101710187795 60S ribosomal protein L15 Proteins 0.000 description 2
- 101100195396 Human cytomegalovirus (strain Merlin) RL11 gene Proteins 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 101100243950 Arabidopsis thaliana PIE1 gene Proteins 0.000 description 1
- 101000741965 Homo sapiens Inactive tyrosine-protein kinase PRAG1 Proteins 0.000 description 1
- 102100038659 Inactive tyrosine-protein kinase PRAG1 Human genes 0.000 description 1
- 101000995928 Mus musculus Nucleolar protein 58 Proteins 0.000 description 1
- -1 RL8 Proteins 0.000 description 1
- 102100039692 RNA-binding motif, single-stranded-interacting protein 1 Human genes 0.000 description 1
- 101100288529 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) LCD1 gene Proteins 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 206010027175 memory impairment Diseases 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012372 quality testing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 102200091804 rs104894738 Human genes 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Abstract
Description
Изобретение относится к области тестирования интегральных микросхем энергонезависимой памяти с последовательным интерфейсом и может применяться для тестирования микросхем памяти на соответствие статических параметров техническим условиям и на корректность работы при операциях чтения, записи и стирания данных.The invention relates to the field of testing integrated circuits of non-volatile memory with a serial interface and can be used for testing memory chips for compliance of static parameters with technical specifications and for correct operation during operations of reading, writing and erasing data.
Тестирование микросхем памяти является важным этапом процесса их производства. Рост сложности структуры микросхем памяти приводит к повышению процента брака выпуска микросхем. По оценкам экспертов, в скором будущем 90% всей площади кремниевой пластины будет занимать память разных видов [International Technology Roadmap for Semiconductors, 2007 Edition. URL: https://www.semiconductors.org/wp-content/uploads/2018/08/2007Design.pdf Дата обращения: 27.05.2023]. По этой причине наблюдается увеличение требований на качественное тестирование микросхем памяти. К тому же развитие технологий программирования памяти приводит к появлению неизвестных дефектов.Testing memory chips is an important step in the manufacturing process. The increasing complexity of the structure of memory chips leads to an increase in the percentage of defective chips produced. According to experts, in the near future, 90% of the total area of a silicon wafer will be occupied by various types of memory [International Technology Roadmap for Semiconductors, 2007 Edition. URL: https://www.semiconductors.org/wp-content/uploads/2018/08/2007Design.pdf Access date: 05/27/2023]. For this reason, there is an increase in requirements for high-quality testing of memory chips. In addition, the development of memory programming technologies leads to the emergence of unknown defects.
Энергонезависимые запоминающие устройства имеют широкое распространение в разных областях применения. Главной особенностью этого вида памяти является возможность долговременного хранения данных без питания микросхемы. Сложная структура (металлизированные слои) и высокая плотность размещения данных предоставляет возможность использовать энергонезависимую память в схемах с низким энергопотреблением и невысоким напряжением, что подчеркивает значимость данного вида запоминающих устройств. Non-volatile storage devices are widely used in various fields of application. The main feature of this type of memory is the possibility of long-term data storage without powering the microcircuit. The complex structure (metallized layers) and high data density makes it possible to use non-volatile memory in circuits with low power consumption and low voltage, which emphasizes the importance of this type of storage devices.
Энергонезависимые микросхемы памяти с последовательным интерфейсом имеют небольшое количество выводов, благодаря чему они занимают мало места на печатной плате, при этом упрощаются проектирование связей и разводка микросхемы на плате, возрастают показатели надежности и уменьшаются уровни шумов. Non-volatile memory chips with a serial interface have a small number of pins, due to which they take up little space on the printed circuit board, while simplifying the design of connections and wiring the chip on the board, increasing reliability and reducing noise levels.
В связи с тем, что неисправности оперативных запоминающих устройств не в полной мере описывают существующие дефекты постоянных запоминающих устройств, существует необходимость определять особенности появления неисправностей в энергонезависимой памяти. Due to the fact that faults of random access memory devices do not fully describe the existing defects of permanent storage devices, there is a need to determine the features of the occurrence of faults in non-volatile memory.
Вопрос эффективности средств тестирования и диагностирования неисправностей в энергонезависимой памяти остается актуальным. Эффективность решений складывается из двух параметров: количество обнаруженных дефектов и длительность диагностики.The issue of the effectiveness of tools for testing and diagnosing faults in non-volatile memory remains relevant. The effectiveness of solutions consists of two parameters: the number of detected defects and the duration of diagnostics.
Известен способ тестирования статических оперативных запоминающих устройств с целью выявления контрафактных микросхем, бывших в употреблении, на основе свойств деградации статических оперативных запоминающих устройств (RU 2757977, МПК G01R 31/30, 25.10.2021), сущность которого заключается в следующем: производят подсчет нестабильных бит путем записи при номинальном напряжении питания (Vп=Vном) во все биты статического оперативного запоминающего устройства значение 1 или 0. Затем напряжение питания уменьшают до значения, выбранного из диапазона 0≤Vп≤2/3Vп, которое гарантированно ниже критического уровня удержания микросхемой информации. После чего все биты статического оперативного запоминающего устройства последовательно вдоль линии слов переводят в режим чтения на период, достаточный для разрядки RC константы электрической схемы. Далее содержимое статического оперативного запоминающего устройства считывают и подсчитывают количество бит, изменивших свое значение (N). Микросхему статического оперативного запоминающего устройства с записанным во все ячейки значением 1 или 0 подвергают стрессовому воздействию путем воздействия повышенной температурой и напряжением (Vстресс) в течение периода времени Δt. Способ реализуют посредством комбинации подсчета нестабильных бит и по крайней мере двух итераций стрессового воздействия и подсчета нестабильных бит, при этом после первого подсчета нестабильных бит инициализируют начальное количество нестабильных бит N0=N, после второго подсчета нестабильных бит считают приращенное количество нестабильных бит относительно первого подсчета первой итерации стресса ΔN1=N-N0, после третьего подсчета нестабильных бит считают общее приращенное количество нестабильных бит относительно второго подсчета ΔN2=N-N0, затем вычисляют истинность выражения , истинность которого говорит о том, что микросхема статического оперативного запоминающего устройства «новая», а ложное значение - «использованная». Технический результат: выявление микросхем статического оперативного запоминающего устройства, бывших в употреблении, простым цифровым оборудованием без применения точных аналоговых измерительных приборов, посредством штатного интерфейса микросхемы, без специальных требований к ее электрической и топологической схеме, без априорной первичной информации о свойствах ее физически неклонируемых функциях. There is a known method for testing static random access memory devices in order to identify counterfeit microcircuits that were in use, based on the degradation properties of static random access memory devices (RU 2757977, IPC G01R 31/30, 10/25/2021), the essence of which is as follows: unstable bits are counted by writing the value 1 or 0 at the rated supply voltage (Vp=Vnom) into all bits of the static random access memory. Then the supply voltage is reduced to a value selected from the range 0≤Vp≤2/3Vp, which is guaranteed below the critical level of information retention by the chip. Then all the bits of the static random access memory sequentially along the word line are put into read mode for a period sufficient to discharge the RC constant of the electrical circuit. Next, the contents of the static random access memory are read and the number of bits that have changed their value (N) is counted. A static random access memory chip with a value of 1 or 0 written to all cells is subjected to stress by exposure to elevated temperature and voltage (Vstress) for a period of time Δt. The method is implemented through a combination of counting unstable bits and at least two iterations of the stress effect and counting unstable bits, wherein after the first counting of unstable bits the initial number of unstable bits N0=N is initialized, after the second counting of unstable bits the incremental number of unstable bits is counted relative to the first count of the first stress iterations ΔN1=N-N0, after the third count of unstable bits, the total incremental number of unstable bits is calculated relative to the second count ΔN2=N-N0, then the truth of the expression is calculated , whose true value indicates that the SRAM chip is “new”, and whose false value indicates “used”. Technical result: identification of used static random access memory chips using simple digital equipment without the use of precise analog measuring instruments, through the standard interface of the chip, without special requirements for its electrical and topological circuit, without a priori primary information about the properties of its physically non-clonable functions.
К недостаткам известного способа относятся невозможность качественного и точного определения неисправности на конкретном бите. Данный способ применим к тестированию оперативных запоминающих устройств для определение общего состоянии памяти на основе приращения значений нестабильных бит, то есть производится вероятностное определение пригодности памяти. К тому же данный способ неприменим для постоянных запоминающих устройств, так как не учитываются операции стирания. Способ не позволяет оценить соответствие статических параметров микросхемы памяти норме. The disadvantages of this known method include the inability to qualitatively and accurately determine a fault on a specific bit. This method is applicable to testing random access memory devices to determine the general state of the memory based on the increment in the values of unstable bits, that is, a probabilistic determination of the suitability of the memory is made. In addition, this method is not applicable for permanent storage devices, since erasing operations are not taken into account. The method does not allow assessing the compliance of the static parameters of the memory chip with the norm.
Известно энергонезависимое запоминающее устройство и способ его самотестирования (US 2007/0165454, МПК G11C I6/04, 19.07.2007), согласно которому тестовый интерфейс получает тестовую команду, обозначающую выполнение теста для ячейки памяти. Схема хранения тестов хранит тестовую информацию, необходимую для выполнения теста. Цепь тестовой памяти включает в себя стираемый программируемый блок памяти. Декодер декодирует тестовую команду, введенную в тестовый интерфейс, и выбирает тестовую информацию, хранящуюся в тестовой запоминающей схеме. Усилитель считывания считывает из тестовой схемы хранения тестовую информацию, выбранную декодером. Цепь хранения содержит тестовую информацию, считываемую усилителем считывания. Схема управления управляет тестовой операцией проверки того, нормально ли работает ячейка памяти, на основе тестовой информации, хранящейся в схеме хранения. Схема хранения дефектов формируется для ячейки памяти и сохраняет информацию об отказе, указывающую, что ячейка памяти неисправна, если ячейка памяти не работает нормально в тестовом режиме. Технический результат – сокращение времени тестирования энергонезависимого запоминающего устройства.A non-volatile memory device and a method for self-testing are known (US 2007/0165454, IPC G11C I6/04, 07/19/2007), according to which the test interface receives a test command indicating the execution of a test for a memory cell. The test storage scheme stores the test information needed to execute the test. The test memory circuit includes an erasable programmable memory block. The decoder decodes the test command entered into the test interface and selects test information stored in the test memory circuit. The sense amplifier reads from the test storage circuit the test information selected by the decoder. The storage circuit contains test information read by the sense amplifier. The control circuit controls the test operation of checking whether the memory cell is operating normally based on the test information stored in the storage circuit. A defect storage circuit is formed for a memory cell and stores fault information indicating that the memory cell is faulty if the memory cell does not operate normally in test mode. The technical result is a reduction in the testing time of a non-volatile storage device.
К недостаткам известного способа относятся невозможность определения, какую неисправность содержит конкретная ячейка памяти. Производится запись тестовой информации в конкретную ячейку памяти и сравнивается с шаблоном (ожидаемым значением), однако не проводится проверка влияние операции записи на значение в ячейках памяти на одной битовой строке. Схема хранения не производит анализ влияния операции стирания на состояние ячейки. Данный способ также не позволяет оценить соответствие статических параметров микросхемы памяти норме. The disadvantages of this known method include the inability to determine which fault a specific memory cell contains. Test information is written to a specific memory cell and compared with a template (expected value), but the influence of the write operation on the value in memory cells on one bit line is not checked. The storage circuit does not analyze the effect of the erase operation on the state of the cell. This method also does not allow assessing the compliance of the static parameters of the memory chip with the norm.
Известно устройство и способ тестирования памяти, предназначенные для восстановления ячейки памяти в системе тестирования памяти (US 9831003B2, МПК GIIC 29/44, GIIC 29/56, 28.11.2017), в котором тестовое устройство обнаруживает адрес сбоя, проверяя запоминающее устройство в соответствии с тестовой командой, и временно сохраняет адрес сбоя в памяти адреса сбоя (fail address memory, FAM). Адрес сбоя передается в запоминающее устройство в соответствии с режимом передачи адреса сбоя, временно сохраняется в памяти временного адреса сбоя запоминающего устройства, а затем сохраняется в массиве защиты от предохранителей, который является энергонезависимым запоминающим устройством. Для обеспечения надежности данных сохраненные данные могут быть считаны для проверки данных, а результат проверки может быть последовательно или параллельно передан на тестовое устройство. Технический результат – повышение эксплуатационной надежности запоминающего устройства.A device and method for testing memory are known, intended for restoring a memory cell in a memory testing system (US 9831003B2, IPC GIIC 29/44, GIIC 29/56, 11/28/2017), in which the test device detects the fault address by checking the memory device in accordance with test command, and temporarily stores the fault address in the failure address memory (FAM). The fault address is transmitted to the storage device according to the fault address transmission mode, temporarily stored in the temporary fault address memory of the storage device, and then stored in the fuse protection array, which is a non-volatile storage device. To ensure data reliability, the stored data can be read to verify the data, and the verification result can be transmitted serially or in parallel to the test device. The technical result is an increase in the operational reliability of the storage device.
К недостаткам известного способа относятся вероятность ошибки передачи адреса сбоя из тестируемого устройства по алгоритму передачи адреса сбоя. Схема хранения не производит анализ влияния операции стирания на состояние ячейки. Известный способ дорогостоящий и также не позволяет оценить соответствие статических параметров микросхемы памяти норме.The disadvantages of the known method include the possibility of an error in transmitting the fault address from the device under test according to the algorithm for transferring the fault address. The storage circuit does not analyze the effect of the erase operation on the state of the cell. The known method is expensive and also does not allow assessing the compliance of the static parameters of the memory chip with the norm.
Известен способ обеспечения программируемых тестовых условий для встроенной схемы самотестирования устройства флэш-памяти (WO 2006081168, МПК G11C29/12, 03.08.2006). Способ включает предоставление интерфейса (built-in self-test, BIST), адаптированного для настройки условий тестирования, используемого в схеме BIST, предоставление ячеек памяти устройства флэш-памяти, и обеспечение схемы BIST, адаптированной для проверки флэш-памяти. Способ дополнительно содержит передачу с интерфейсом BIST одной или нескольких глобальных переменных, связанных с условием проверки, настройку условия проверки, используемого схемой BIST, на основе значений, представленных глобальными переменными, выполнение одной или нескольких тестовых операций во флэш-памяти в соответствии с настроенным тестовым условием, и сообщают о результатах операций тестирования памяти. Способ может дополнительно включать в себя среду последовательной связи и использование протокола последовательного тестирования для передачи глобальных переменных в интерфейс BIST и результатов тестирования из интерфейса. Глобальные переменные также могут быть предоставлены пользователем запоминающего устройства. Технический результат – своевременное тестирование памяти с достаточно высокой степенью охвата неисправностей без необходимости постоянного интерактивного (последовательного) контроля с помощью внешнего тестового оборудования.There is a known method for providing programmable test conditions for the built-in self-test circuit of a flash memory device (WO 2006081168, IPC G11C29/12, 08/03/2006). The method includes providing an interface (built-in self-test, BIST) adapted to configure the test conditions used in the BIST circuit, providing memory cells of the flash memory device, and providing a BIST circuit adapted for testing the flash memory. The method further comprises passing with the BIST interface one or more global variables associated with the test condition, setting the test condition used by the BIST circuit based on the values represented by the global variables, performing one or more test operations in flash memory in accordance with the configured test condition , and report the results of memory testing operations. The method may further include a serial communication environment and using a serial test protocol to communicate global variables to the BIST interface and test results from the interface. Global variables can also be provided by the storage device user. The technical result is timely memory testing with a sufficiently high degree of fault coverage without the need for constant interactive (sequential) monitoring using external test equipment.
К недостаткам известного способа относятся увеличение служебной площади самой микросхемы с возможным негативным влиянием на функциональность памяти. Известный способ в основном используется для производственного тестирования по принципу «годен/не годен» без определения конкретной неисправности и адреса обнаружения неисправности, необходимых для мониторинга процесса и ремонта устройства.The disadvantages of this method include an increase in the service area of the microcircuit itself, with a possible negative impact on the functionality of the memory. The known method is mainly used for pass/fail production testing without identifying the specific fault and fault detection address necessary for process monitoring and device repair.
Необходимо отметить, что при создании универсального и надежного способа тестирования микросхем энергонезависимой памяти необходимо ограничить число моделей неисправностей, обнаруживаемых при тестировании, так как, во-первых, имеет смысл рассматривать неисправности, которые являются базовыми для возникновения других видов дефектов (Hamdioui S. et al. Memory fault modeling trends: A case study //Journal of Electronic Testing. – 2004. – Т. 20. – С. 245-255.). Так как обнаружить базовые дефекты проще, чем более сложные модели неисправностей, можно однозначно определить неисправность микросхемы памяти, затратив при этом меньше ресурсов. Во-вторых, число наиболее вероятных дефектов ограничено. В работе (Kang D. et al. Probability level dependence of failure mechanisms in sub-20 nm NAND flash memory //IEEE Electron Device Letters. – 2014. – Т. 35. – №. 3. – С. 348-350.) показано, что модели неисправности SAF, TF, WED, WPD, BED и BPD имеют большую вероятность появления в памяти по сравнению с другими дефектами. Описание всех моделей представлено на Фиг 1.It should be noted that when creating a universal and reliable method for testing non-volatile memory chips, it is necessary to limit the number of fault models detected during testing, since, firstly, it makes sense to consider faults that are basic for the occurrence of other types of defects (Hamdioui S. et al . Memory fault modeling trends: A case study // Journal of Electronic Testing - 2004. - T. 20. - P. 245-255.). Since basic defects are easier to detect than more complex fault models, a faulty memory chip can be unambiguously identified with fewer resources. Secondly, the number of most likely defects is limited. In the work (Kang D. et al. Probability level dependence of failure mechanisms in sub-20 nm NAND flash memory //IEEE Electron Device Letters. – 2014. – T. 35. – No. 3. – P. 348-350. ) shows that the fault models SAF, TF, WED, WPD, BED and BPD have a higher probability of appearing in memory compared to other defects. Descriptions of all models are presented in Figure 1.
Первый блок дефектов относятся ко всем видам памяти:The first block of defects applies to all types of memory:
SAF – константные неисправности ячеек памяти. Дефект характеризуется тем, что ячейка принимает одно и то же значение логического 0 или 1 и не может поменять свое состояние при выполнении любых действия с этой ячейкой.SAF – persistent faults of memory cells. The defect is characterized by the fact that the cell takes the same logical value 0 or 1 and cannot change its state when performing any actions with this cell.
TF – дефект переключения ячеек памяти. Дефект характеризуется тем, что при записи значения, в ячейке памяти не происходит изменений и логический 0 не может перейти в логическую 1 и наоборот (Kang D. et al. Probability level dependence of failure mechanisms in sub-20 nm NAND flash memory //IEEE Electron Device Letters. – 2014. – Т. 35. – №. 3. – С. 348-350.). TF – memory cell switching defect. The defect is characterized by the fact that when writing a value, no changes occur in the memory cell and logical 0 cannot go into logical 1 and vice versa (Kang D. et al. Probability level dependence of failure mechanisms in sub-20 nm NAND flash memory //IEEE Electron Device Letters. – 2014. – T. 35. – No. 3. – P. 348-350.).
Следующий блок моделей неисправностей характерен для энергонезависимой памяти.The following block of fault models is typical for non-volatile memory.
Модель неисправности WED (word-line erase disturbance). Нарушение возникает, когда программирование ячейки вызывает стирание значения логического 0 в соседней ячейке в той же строке слова.WED (word-line erase disturbance) fault model. The violation occurs when programming a cell causes a logic 0 value in an adjacent cell on the same word line to be erased.
Модель неисправности WPD (word-line program disturbance). Дефект возникает, когда программирование ячейки вызывает программирование на логической 0 соседней ячейки в той же строке слова. WPD (word-line program disturbance) fault model. The defect occurs when programming a cell causes programming at logic 0 of an adjacent cell on the same word line.
Модель неисправности BED (line erase disturbance). Нарушения BED аналогично нарушению WED, за исключением расположения дефектных ячеек. Для помех этого типа затронутые ячейки находятся на той же битовой линии, что и выбранная ячейка. BED (line erase disturbance) fault model. BED violations are similar to WED violations, except for the location of the defective cells. For this type of interference, the affected cells are on the same bit line as the selected cell.
Модель неисправности BPD (bit-line program disturbance). Нарушения BPD аналогично нарушению WPD, но дефектные ячейки находятся на той же битовой линии, что и программируемая ячейка. BPD (bit-line program disturbance) fault model. BPD violations are similar to WPD violations, but the defective cells are on the same bit line as the cell being programmed.
Модель неисправности RD (read disturbance). Суть неисправности RD заключается в том, что после прочтения значения ячейки памяти значение изменяется на противоположное. Fault model RD (read disturbance). The essence of the RD malfunction is that after reading the value of a memory cell, the value changes to the opposite.
Модель неисправности OED (over-erase disturbance). OED характеризуется тем, что пороговое напряжение выбранной ячейки низкое и невозможно ее запрограммировать (в любом случае ячейка в состоянии «стерта»).OED (over-erase disturbance) fault model. OED is characterized by the fact that the threshold voltage of the selected cell is low and it is impossible to program it (in any case, the cell is in the “erased” state).
Существует множество способов тестирования памяти: маршевые тесты, шахматный код, галопирующий тест и многие другие. Способы отличаются временем тестирования и количеством обнаруженных дефектов. There are many ways to test memory: marching tests, chess code, galloping test and many others. The methods differ in testing time and the number of defects detected.
Ниже рассмотрены наиболее часто применяемые способы тестирования памяти.Below are the most commonly used memory testing methods.
Галопирующий тест. Пример использования представлен в разработке системы тестирования памяти для измерения скачков напряжения на линиях электропередачи (Mohammad M. G. Fault model and test procedure for phase change memory //IET computers & digital techniques. – 2011. – Т. 5. – №. 4. – С. 263-270.). Суть этого способа заключается в постоянной записи байта в ячейку памяти и сравнение записанного значения с эталонным. Вначале в ячейку памяти записывается байт 0000 0000, далее производится запись 0000 0001 и осуществляется проверка на изменение первых 7 бит (сравнение с эталоном 0000 0001). После этого в эту же ячейку записывается следующий байт 0000 0010 и также проходит сравнение с шаблоном. Процесс продолжается до записи в эту ячейку значения 1000 0000. Далее запускается цикл на проверку логического 0 и записывается в эту же ячейку памяти число 1111 1111. Изменение значение числа происходит с нулевого бита с последующей проверкой оставшихся битов с эталонным значением. Таким образом, галопирующий тест позволяет провести два цикла теста на проверку логической 1 и 0. Описанный тест работает медленно и может потребовать сотни часов на объемах памяти в сотни Мбайт, соответственно такой способ тестирования памяти целесообразно использовать на небольших объемах памяти, не превышающих 6-8 Кбайт. Этот способ позволяет обнаружить SAF и TF дефекты. Galloping test. An example of use is presented in the development of a memory testing system for measuring voltage surges on power lines (Mohammad M. G. Fault model and test procedure for phase change memory //IET computers & digital techniques. – 2011. – Vol. 5. – No. 4. – C . 263-270.). The essence of this method is to constantly write a byte into a memory cell and compare the written value with the reference value. First, byte 0000 0000 is written to the memory cell, then 0000 0001 is written and the first 7 bits are checked for changes (comparison with the standard 0000 0001). After this, the next byte 0000 0010 is written to the same cell and is also compared with the template. The process continues until the value 1000 0000 is written to this cell. Next, a cycle is started to check logical 0 and the number 1111 1111 is written to the same memory cell. The value of the number changes from the zero bit, followed by checking the remaining bits with the reference value. Thus, the galloping test allows you to carry out two test cycles to check logical 1 and 0. The described test works slowly and can require hundreds of hours on memory volumes of hundreds of MB; accordingly, this method of memory testing is advisable to use on small amounts of memory, not exceeding 6-8 KB. This method allows you to detect SAF and TF defects.
«Шахматный код». Суть алгоритма заключается в следующем: логическая 1 и 0 записываются в ячейки памяти массива ячеек в шахматном порядке. Алгоритм делит ячейки на две чередующиеся группы, так что каждая соседняя ячейка находится в другой группе. Шаблон шахматной доски в основном используется для обнаружения SAF дефекта и отказов, возникающих в результате утечек, коротких замыканий между ячейками. Шаги алгоритма включают запись «шахматного» кода с порядком адресации вверх; чтение «шахматного» кода с порядком адресации вверх; запись обратного «шахматного» кода с порядком адресации вверх; чтение обратного «шахматного» кода с порядком адресации вверх."Chess code". The essence of the algorithm is as follows: logical 1 and 0 are written to the memory cells of the cell array in a checkerboard pattern. The algorithm divides the cells into two alternating groups so that each adjacent cell is in a different group. The checkerboard pattern is mainly used to detect SAF defect and failures resulting from leakage, short circuits between cells. The steps of the algorithm include writing a "chessboard" code with the addressing order up; reading chessboard code with addressing order up; writing a reverse "chess" code with the addressing order up; Reading reverse chessboard code with addressing order up.
Маршевый тест. В этих тестах применяются шаблоны, которые «маршируют» вверх и вниз по адресу памяти при записи значений и чтении значений из известных ячеек памяти. Количество маршевых элементов конечно, при этом каждый марш определяется адресной последовательностью и порядком операций записи и чтения. Последовательность определяется по инкременту, декременту или одновременному возрастанию и убыванию номера ячейки памяти. Последовательность определяется из простейших операций: запись значения логического 0 в ячейку памяти; чтение значения ячейки памяти с ожиданием логического 0; запись значения логической 1 в ячейку памяти; чтение значения ячейки памяти с ожиданием логической 1. Маршевые тесты проще в реализации и быстрее в исполнении, что отвечает требованиям бизнеса тестирования микросхем памяти. По этой причине дипломантами выбран именно этот вид тестирования для реализации программно-аппаратного комплекса по тестированию микросхем энергонезависимой памяти (Li Y. et al. Design of Memory Test System for Measuring Transmission Lines Galloping //Journal of Physics: Conference Series. – IOP Publishing, 2019. – Т. 1187. – №. 2. – С. 022027.; Ярмолик С. В. Анализ методов тестирования флэш-памяти //Доклады Белорусского государственного университета информатики и радиоэлектроники. – 2010. – №. 4 (50). – С. 62-68.).Marching test. These tests use patterns that "march" up and down a memory address as they write values to and read values from known memory locations. The number of march elements is finite, and each march is determined by the address sequence and the order of write and read operations. The sequence is determined by increment, decrement, or simultaneous increase and decrease of the memory cell number. The sequence is determined from the simplest operations: writing a logical 0 value to a memory cell; reading the value of a memory cell expecting a logical 0; writing a logical 1 value to a memory cell; reading the value of a memory cell and waiting for logical 1. Marching tests are easier to implement and faster to execute, which meets the requirements of the business of testing memory chips. For this reason, the diploma students chose this type of testing to implement a hardware and software complex for testing non-volatile memory chips (Li Y. et al. Design of Memory Test System for Measuring Transmission Lines Galloping //Journal of Physics: Conference Series. – IOP Publishing, 2019. – T. 1187. – No. 2. – P. 022027.; Analysis of flash memory testing methods // Reports of the Belarusian State University of Informatics and Radioelectronics. – 2010. – No. – P. 62-68.).
Для энергонезависимой памяти обычных алгоритмов тестирования недостаточно. Операции и требования к испытаниям для энергонезависимой памяти отличаются от энергозависимой (Ярмолик В. Н., Леванцевич В. А., Деменковец Д. В. Анализ и синтез маршевых тестов запоминающих устройств //Цифровая трансформация. – 2021. – №. 2. – С. 45-55.; Mohammad M.Gh., Saluja K.K., Yap A. Testing flash memories // VLSI Design 2000. Wireless and Digital Imaging in the Millennium. Proceedings of 13th International Conference on VLSI Design. IEEE Comput. Soc. – P. 406–411.; Yeh J. C. et al. Flash memory testing and built-in self-diagnosis with march-like test algorithms //IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. – 2007. – Т. 26. – №. 6. – С. 1101-1113.). Оперативная память, кроме того, что она является энергозависимой, отличается от постоянной памяти отсутствием операции стирания. Таким образом необходимо изучить методы тестирования с учётом внесения в них операции стирания (Mohammad M. G., Saluja K. K. Flash memory disturbances: Modeling and test //Proceedings 19th IEEE VLSI Test Symposium. VTS 2001. – IEEE, 2001. – С. 218-224.; Van der Velde D. P., vd Goor A. J. Designing a memory module tester //Records of the 1999 IEEE International Workshop on Memory Technology, Design and Testing. – IEEE, 1999. – С. 91-98.; Kinoshita, Saluja. Built-in testing of memory using an on-chip compact testing scheme //IEEE Transactions on Computers. – 1986. – Т. 100. – №. 10. – С. 862-870.; Карташёв С. С., Лосев В. В., Крупкина Т. Ю. Исследование и разработка схемы последовательного доступа к flash-памяти //Известия высших учебных заведений. Электроника. – 2016. – Т. 21. – №. 5. – С. 478-481.).For non-volatile memory, conventional testing algorithms are not enough. Operations and test requirements for non-volatile memory differ from volatile memory (Yarmolik V.N., Levantsevich V.A., Demenkovets D.V. Analysis and synthesis of marching tests of storage devices //Digital Transformation. – 2021. – No. 2. – pp. 45-55.; Mohammad M.Gh., Saluja K.K., Yap A. Testing flash memories // VLSI Design 2000. Wireless and Digital Imaging in the Millennium. – P. 406–411.; Yeh J. C. et al. Flash memory testing and built-in self-diagnosis with march-like test algorithms //IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems – 2007. – T. 26. – No. 6. – P. 1101-1113.). RAM, in addition to being volatile, differs from permanent memory in the absence of an erase operation. Thus, it is necessary to study testing methods taking into account the introduction of an erase operation into them (Mohammad M. G., Saluja K. K. Flash memory disturbances: Modeling and test //Proceedings 19th IEEE VLSI Test Symposium. VTS 2001. - IEEE, 2001. - pp. 218-224. ; Van der Velde D. P., vd Goor A. J. Designing a memory module tester // Records of the 1999 IEEE International Workshop on Memory Technology, Design and Testing. - IEEE, 1999. - P. 91-98.; in testing of memory using an on-chip compact testing scheme //IEEE Transactions on Computers. – T. 100. – No. 10. – P. 862-870.; ., Krupkina T. Yu. Research and development of a serial access scheme for flash memory // News of higher educational institutions. Electronics - 2016. - T. 21. - No. 5. - P. 478-481.).
Для тестирования энергонезависимой памяти используются расширенные алгоритмы маршевого тестирования – Flash-March и March-FT. To test non-volatile memory, advanced marching testing algorithms are used - Flash-March and March-FT.
Flash-March – один из первых маршевых тестов, предназначенных для энергонезависимой памяти (Yeh J. C. et al. Flash memory testing and built-in self-diagnosis with march-like test algorithms //IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. – 2007. – Т. 26. – №. 6. – С. 1101-1113.). Flash-March is one of the first marching tests designed for non-volatile memory (Yeh J. C. et al. Flash memory testing and built-in self-diagnosis with march-like test algorithms //IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems . – 2007. – T. 26. – No. 6. – P. 1101-1113.).
Его последовательность выглядит следующим образом (формула (1)):Its sequence is as follows (formula (1)):
C;↑(R1,S);↕(R0);C;↓(R1,S);↕(R0) (1)C;↑(R1,S);↕(R0);C;↓(R1,S);↕(R0) (1)
где:Where:
Операция C – Clear означает стирание памяти, она устанавливает значения всех ячеек в 1, стрелки указывают направление операций, с начала в конец или из конца в начало.Operation C - Clear means erasing memory, it sets the values of all cells to 1, the arrows indicate the direction of operations, from beginning to end or from end to beginning.
Операция R1 – Read 1 чтение с ожиданием 1 в ячейках.Operation R1 – Read 1 read with wait 1 in cells.
Операция R0 – Read 0, соответственно, операция чтения с ожиданием 0 в прочитанных ячейках.Operation R0 – Read 0, respectively, a read operation with the expectation of 0 in the read cells.
S – Set установка в 0.S – Set setting to 0.
Операции, указанные в скобках, выполняются одна за другой к одной ячейке и только после выполнения идёт переход к следующей (по направлению стрелки) ячейке, пока итерация не достигнет конца или начала памяти.The operations indicated in parentheses are performed one after another to one cell and only after execution there is a transition to the next (in the direction of the arrow) cell until the iteration reaches the end or beginning of memory.
Сложность этого теста рассчитывается по общему количеству циклов чтения R (Qr), операциям установки S (Qs), стирания C (Qc) и основным аргументов является емкость памяти Q. Соответственно сложность Flash-March I рассчитывается по формуле (2): The complexity of this test is calculated by the total number of read cycles R (Qr), set operations S (Qs), erase C (Qc) and the main argument is the memory capacity Q. Accordingly, the complexity of Flash-March I is calculated using formula (2):
(2) (2)
March-FT – следующий представитель поколения маршевых тестов для энергонезависимой памяти (Yeh J. C. et al. Flash memory testing and built-in self-diagnosis with march-like test algorithms //IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. – 2007. – Т. 26. – №. 6. – С. 1101-1113.).March-FT is the next representative of the generation of marching tests for non-volatile memory (Yeh J. C. et al. Flash memory testing and built-in self-diagnosis with march-like test algorithms //IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. – 2007. – T. 26. – No. 6. – P. 1101-1113.).
March-FT представляет собой следующую последовательность (3):March-FT is the following sequence (3):
C;↑(R1,S,R0);↕(R0);C;↓(R1,S,R0);↕(R0) (3) C;↑(R1,S,R0);↕(R0);C;↓(R1,S,R0);↕(R0) (3)
В отличие от Flash-March в этом тесте производится двойное чтение установки логического нуля. Сложность N рассчитывается по формуле (4): Unlike Flash-March, this test performs a double reading of the logical zero setting. Complexity N is calculated using formula (4):
(4) (4)
Основным недостатком рассмотренных маршевых тестов является их сложность и длительность выполнения диагностики. The main disadvantage of the considered marching tests is their complexity and the length of time it takes to perform diagnostics.
Предлагаются способ тестирования микросхем энергонезависимой памяти и устройство для его осуществления.A method for testing non-volatile memory chips and a device for its implementation are proposed.
Способ тестирования микросхем энергонезависимой памяти отличается тем, что Тест 1, Тест 2, Тест 3, предназначенные для тестирования микросхем энергонезависимой памяти, проводятся выборочно либо последовательно друг за другом, по завершению каждого из тестов, причем команды внутри каждого теста выполняются в строгой последовательности: Тест 1 производится со следующей последовательностью: C;↑(R1, S);↓(R0): операция стирания значений во всех ячейках памяти, затем следует операция чтения ячеек памяти в прямой последовательности по инкременту, и если значение ячейки равно логической 1, то происходит установка в эту ячейку логического 0, далее идёт операция считывания в обратной последовательности по декременту с ожиданием значения логического 0; Тест 2 производится со следующей последовательностью: C;↑(R1,S,R0);↓(R0): начинается с операции стирания и установки логической 1, далее следует операция чтения ячеек памяти с начала в конец по инкременту с ожиданием логической 1, после этого каждая ячейка с первой по последнюю считывается, на случай если какие-либо из ячеек изменили свои значения, устанавливается в логический 0 и сразу считывается, затем считываются все ячейки в обратном порядке; Тест 3 производится со следующей последовательностью: C;↑(R1,S);C;↓(R1,S,R0);↑(R0), который начинается с операции стирания, после этого из начала в конец идут операции чтения и установки в 0, далее следует операция чтения ячеек памяти с конца по инкременту с ожиданием логической 1, после этого каждая ячейка с первой по последнюю считывается, на случай если какие-либо из ячеек изменили свои значения, устанавливается в логический 0 и сразу считывается, затем считываются все ячейки в прямом порядке.The method of testing non-volatile memory chips differs in that Test 1, Test 2, Test 3, intended for testing non-volatile memory chips, are carried out selectively or sequentially one after another, upon completion of each test, and the commands within each test are executed in strict sequence: Test 1 is performed with the following sequence: C;↑(R1, S);↓(R0): an operation to erase values in all memory cells, followed by an operation to read memory cells in direct incremental sequence, and if the cell value is equal to logical 1, then setting a logical 0 to this cell, then a read operation occurs in the reverse order of decrement, waiting for the value of logical 0; Test 2 is performed with the following sequence: C;↑(R1,S,R0);↓(R0): begins with an erase operation and setting logical 1, followed by an operation of reading memory cells from beginning to end incrementally with waiting for logical 1, after this means that each cell from the first to the last is read, in case any of the cells have changed their values, it is set to logical 0 and read immediately, then all cells are read in reverse order; Test 3 is performed with the following sequence: C;↑(R1,S);C;↓(R1,S,R0);↑(R0), which begins with the erase operation, after which the read and set operations go from beginning to end 0, followed by the operation of reading memory cells from the end incrementally with the expectation of logical 1, after which each cell from the first to the last is read, in case any of the cells have changed their values, it is set to logical 0 and immediately read, then all are read cells in direct order.
Устройство для осуществления способа тестирования микросхем энергонезависимой памяти содержит центральное вычислительное устройство для подачи управляющих сигналов на источник питания, мультиметр и микроконтроллер, источник питания, необходимый для подачи входного напряжения на микросхему энергонезависимой памяти и схемы реле, мультиметр для измерения статических параметров микросхемы энергонезависимой памяти, микроконтроллерную плату оснастки, причем микроконтроллерная плата оснастки состоит из микроконтроллера, предназначенного для отправки команд, соответствующих последовательностям выполнения команд Теста 1, Теста 2, Теста 3, в микросхему энергонезависимой памяти и получения от нее проверяемых значений, схем реле, предназначенных для переключения режима работы при измерении статических параметров микросхемы энергонезависимой памяти, и матрицы транзисторов, обеспечивающей управление реле от микроконтроллера. Центральное вычислительное устройство соединяется с источником питания и мультиметром через интерфейс USB и с микроконтроллером платы оснастки через интерфейс USB-UART. Микросхема энергонезависимой памяти с последовательным доступом подключается к микроконтроллеру через интерфейс I2C.A device for implementing a method for testing non-volatile memory chips contains a central computing device for supplying control signals to a power source, a multimeter and a microcontroller, a power source necessary for supplying an input voltage to the non-volatile memory chip and relay circuits, a multimeter for measuring the static parameters of the non-volatile memory chip, a microcontroller equipment board, wherein the microcontroller board of equipment consists of a microcontroller designed to send commands corresponding to the sequences of execution of the Test 1, Test 2, Test 3 commands to a non-volatile memory chip and receive from it the tested values, relay circuits designed to switch the operating mode during measurement static parameters of a non-volatile memory chip, and a transistor matrix that provides relay control from the microcontroller. The central computing device is connected to the power supply and multimeter via the USB interface and to the microcontroller of the equipment board via the USB-UART interface. A non-volatile memory chip with serial access is connected to the microcontroller via an I2C interface.
Техническая задача, на решение которой направлено заявляемое изобретение, заключается в проведении качественного функционального тестирования микросхем энергонезависимой памяти.The technical problem to be solved by the claimed invention is to conduct high-quality functional testing of non-volatile memory chips.
Техническим результатом заявленного изобретения является расширение диапазона определения дефектов энергонезависимой памяти: выявление SAF, TF, WED, WPD, BED, BPD, RD и OED в микросхемах энергонезависимой памяти, сокращение сложности и длительности выполнения тестирования.The technical result of the claimed invention is to expand the range of detection of non-volatile memory defects: identifying SAF, TF, WED, WPD, BED, BPD, RD and OED in non-volatile memory chips, reducing the complexity and duration of testing.
Для решения поставленной технической задачи предлагаются способ тестирования микросхем энергонезависимой памяти и устройство для его осуществления.To solve the stated technical problem, a method for testing non-volatile memory chips and a device for its implementation are proposed.
Способ тестирования микросхем энергонезависимой памяти отличается тем, что Тест 1, Тест 2, Тест 3, предназначенные для тестирования микросхем энергонезависимой памяти, проводятся выборочно либо последовательно друг за другом, по завершению каждого из тестов, причем команды внутри каждого теста выполняются в строгой последовательности: Тест 1 производится со следующей последовательностью: C;↑(R1, S);↓(R0): операция стирания значений во всех ячейках памяти, затем следует операция чтения ячеек памяти в прямой последовательности по инкременту, и если значение ячейки равно логической 1, то происходит установка в эту ячейку логического 0, далее идёт операция считывания в обратной последовательности по декременту с ожиданием значения логического 0; Тест 2 производится со следующей последовательностью: C;↑(R1,S,R0);↓(R0): начинается с операции стирания и установки логической 1, далее следует операция чтения ячеек памяти с начала в конец по инкременту с ожиданием логической 1, после этого каждая ячейка с первой по последнюю считывается, на случай если какие-либо из ячеек изменили свои значения, устанавливается в логический 0 и сразу считывается, затем считываются все ячейки в обратном порядке; Тест 3 производится со следующей последовательностью: C;↑(R1,S);C;↓(R1,S,R0);↑(R0), который начинается с операции стирания, после этого из начала в конец идут операции чтения и установки в 0, далее следует операция чтения ячеек памяти с конца по инкременту с ожиданием логической 1, после этого каждая ячейка с первой по последнюю считывается, на случай если какие-либо из ячеек изменили свои значения, устанавливается в логический 0 и сразу считывается, затем считываются все ячейки в прямом порядке.The method of testing non-volatile memory chips differs in that Test 1, Test 2, Test 3, intended for testing non-volatile memory chips, are carried out selectively or sequentially one after another, upon completion of each test, and the commands within each test are executed in strict sequence: Test 1 is performed with the following sequence: C;↑(R1, S);↓(R0): an operation to erase values in all memory cells, followed by an operation to read memory cells in direct incremental sequence, and if the cell value is equal to logical 1, then setting a logical 0 to this cell, then a read operation occurs in the reverse order of decrement, waiting for the value of logical 0; Test 2 is performed with the following sequence: C;↑(R1,S,R0);↓(R0): begins with an erase operation and setting logical 1, followed by an operation of reading memory cells from beginning to end incrementally with waiting for logical 1, after this means that each cell from the first to the last is read, in case any of the cells have changed their values, it is set to logical 0 and read immediately, then all cells are read in reverse order; Test 3 is performed with the following sequence: C;↑(R1,S);C;↓(R1,S,R0);↑(R0), which begins with the erase operation, after which the read and set operations go from beginning to end 0, followed by the operation of reading memory cells from the end incrementally with the expectation of logical 1, after which each cell from the first to the last is read, in case any of the cells have changed their values, it is set to logical 0 and immediately read, then all are read cells in direct order.
Устройство для осуществления способа тестирования микросхем энергонезависимой памяти содержит центральное вычислительное устройство для подачи управляющих сигналов на источник питания, мультиметр и микроконтроллер, источник питания, необходимый для подачи входного напряжения на микросхему энергонезависимой памяти и схемы реле, мультиметр для измерения статических параметров микросхемы энергонезависимой памяти, микроконтроллерную плату оснастки, причем микроконтроллерная плата оснастки состоит из микроконтроллера, предназначенного для отправки команд, соответствующих последовательностям выполнения команд Теста 1, Теста 2, Теста 3, в микросхему энергонезависимой памяти и получения от нее проверяемых значений, схем реле, предназначенных для переключения режима работы при измерении статических параметров микросхемы энергонезависимой памяти, и матрицы транзисторов, обеспечивающей управление реле от микроконтроллера. Центральное вычислительное устройство соединяется с источником питания и мультиметром через интерфейс USB и с микроконтроллером платы оснастки через интерфейс USB-UART. Микросхема энергонезависимой памяти с последовательным доступом подключается к микроконтроллеру через интерфейс I2C.A device for implementing a method for testing non-volatile memory chips contains a central computing device for supplying control signals to a power source, a multimeter and a microcontroller, a power source necessary for supplying an input voltage to the non-volatile memory chip and relay circuits, a multimeter for measuring the static parameters of the non-volatile memory chip, a microcontroller equipment board, wherein the microcontroller board of equipment consists of a microcontroller designed to send commands corresponding to the sequences of execution of the Test 1, Test 2, Test 3 commands to a non-volatile memory chip and receive from it the tested values, relay circuits designed to switch the operating mode during measurement static parameters of a non-volatile memory chip, and a transistor matrix that provides relay control from the microcontroller. The central computing device is connected to the power supply and multimeter via the USB interface and to the microcontroller of the equipment board via the USB-UART interface. A non-volatile memory chip with serial access is connected to the microcontroller via an I2C interface.
Осуществление описанного способа тестирования микросхем энергонезависимой памяти и устройства для его осуществления позволяет достигнуть заявленного технического результата – расширения диапазона определения дефектов энергонезависимой памяти: выявления SAF, TF, WED, WPD, BED, BPD, RD и OED в микросхемах энергонезависимой памяти, сокращения сложности и длительности выполнения тестирования.Implementation of the described method of testing non-volatile memory chips and the device for its implementation makes it possible to achieve the stated technical result - expanding the range of determination of non-volatile memory defects: identifying SAF, TF, WED, WPD, BED, BPD, RD and OED in non-volatile memory chips, reducing complexity and duration performing testing.
Таким образом техническая задача, заключающаяся в проведении качественного функционального тестирования микросхем энергонезависимой памяти, решается за счет масштабирования покрытия неисправностей. Модели неисправностей возможно обнаружить на этапе чтения значений в памяти. Для того, чтобы определить какие неисправности может обнаружить алгоритм необходимо последовательно проанализировать команды теста. Thus, the technical problem of conducting high-quality functional testing of non-volatile memory chips is solved by scaling the fault coverage. Fault models can be detected at the stage of reading values in memory. In order to determine what faults the algorithm can detect, it is necessary to sequentially analyze the test commands.
Тест 1 представляет алгоритм со следующей последовательностью: C;↑(R1, S);↓(R0): сначала производится операция стирания значений во всех ячейках памяти. После этого следует операция чтения ячеек памяти в прямой последовательности по инкременту, и если значение ячейки равно логической 1, то происходит установка в эту ячейку логического 0. Далее идёт операция считывания в обратной последовательности по декременту с ожиданием значения логического 0. Test 1 presents an algorithm with the following sequence: C;↑(R1, S);↓(R0): first, the operation of erasing values in all memory cells is performed. This is followed by an operation of reading memory cells in direct sequence by increment, and if the value of the cell is equal to logical 1, then a logical 0 is installed in this cell. Next comes a reading operation in reverse sequence by decrement, waiting for the value of logical 0.
Тест 1 позволяет обнаружить SAF и OED дефекты. Обнаружить SAF неисправность можно по первой паре команд C стирания и R1 чтения с ожиданием логической 1. Во время выполнения команды стирания происходит побайтовая запись логической 1 во все ячейки памяти, затем срабатывает команда чтения значений в этих ячейках с прямой адресацией с ожиданием логической 1 и если обнаружен логический 0, то эта ячейка идентифицируется, как «зараженная» константой неисправностью SAF. OED возможно обнаружить последующей парой команд S установкой 0 и R0 чтением с ожиданием 0. Соответственно если после установки 0 обнаружена логическая 1, чтением с обратной адресацией, то фиксируется неисправность стирания в этой ячейки памяти.Test 1 detects SAF and OED defects. A SAF malfunction can be detected by the first pair of commands C erase and R1 read with the expectation of logical 1. During the execution of the erase command, logical 1 is written byte-by-byte to all memory cells, then the command to read the values in these cells is triggered with direct addressing with the expectation of logical 1 and if If a logical 0 is detected, then this cell is identified as “infected” with the SAF fault constant. OED can be detected by the subsequent pair of commands S by setting 0 and R0 by reading with expectation of 0. Accordingly, if after setting 0 a logical 1 is detected by reading with reverse addressing, then an erase fault is detected in this memory cell.
Тест 1 позволяет сократить время тестирования в 2 раза. Test 1 allows you to reduce testing time by 2 times.
Сложность данного теста минимальна и рассчитывается по формуле (5):The complexity of this test is minimal and is calculated using formula (5):
(5) (5)
Тест 2 определяется как последовательность: C;↑(R1,S,R0);↓(R0: начинается с операции стирания и установки логической 1. Далее следует операция чтения ячеек памяти с начала в конец по инкременту с ожиданием логической 1. После этого каждая ячейка с первой по последнюю считывается, на случай если какие-либо из ячеек изменили свои значения, устанавливается в логический 0 и сразу считывается. Далее считать все ячейки в обратном порядке. Test 2 is defined as the sequence: C;↑(R1,S,R0);↓(R0: begins with the erase operation and setting logical 1. This is followed by the operation of reading memory cells from beginning to end incrementally, waiting for logical 1. After this, each the cell from the first to the last is read, in case any of the cells have changed their values, is set to logical 0 and then read all the cells in reverse order.
Тест 2 помимо ранее описанных дефектов позволяет обнаружить неисправность чтения RD. Данную ошибку можно обнаружить на этапе последнего чтения. После первого чтения с ожиданием 0, производится повторное чтение с ожиданием 0, и если считанные значения байтов отличается от первого чтения, то это характеризуется наличием дефекта RD.Test 2, in addition to the previously described defects, allows you to detect a malfunction in reading the RD. This error can be detected at the last reading stage. After the first read with an expectation of 0, a second read with an expectation of 0 is performed, and if the read byte values differ from the first read, then this is characterized by the presence of an RD defect.
Тест 2 позволяет сократить время тестирования в 2 раза по сравнению с более сложными тестами Flash-March и March-FT. Test 2 allows you to reduce testing time by 2 times compared to the more complex Flash-March and March-FT tests.
Сложность этого теста можно определить по следующей формуле (6):The difficulty of this test can be determined by the following formula (6):
(6) (6)
Тест 3 имеет следующую последовательность: C;↑(R1,S);C;↓(R1,S,R0);↑(R0). Test 3 has the following sequence: C;↑(R1,S);C;↓(R1,S,R0);↑(R0).
Как и предыдущие тесты, алгоритм начинается с операции стирания. После этого из начала в конец идут операции чтения и установки в 0. Далее следует повторение операций из Тест 2, но «марш» совершается в противоположном направлении. Тест 3 значительно сложнее первого и второго теста и соответственно предполагается, что этот тест позволяет обнаружить большее количество дефектов. SAF дефект возможно обнаружить на первом чтении. Далее производятся команды установки 0 прямой адресацией с последующей операцией стиранием. После этой пары операций, считыванием с обратной адресацией и ожиданием 1, будет возможно обнаружить дефект переключения TF. Последующая операция чтения R0 позволяет обнаружить неисправность стирания OED по принципу, как в тесте 1 и 2. Последняя команда чтения позволяет обнаружить ошибку чтения RD.Like previous tests, the algorithm begins with an erase operation. After this, the operations of reading and setting to 0 go from beginning to end. This is followed by a repetition of the operations from Test 2, but the “march” is performed in the opposite direction. Test 3 is much more difficult than the first and second tests and, accordingly, it is assumed that this test allows detecting a larger number of defects. SAF defect can be detected on the first reading. Next, commands are made to set 0 by direct addressing, followed by an erase operation. After this pair of operations, reading with reverse addressing and waiting for 1, it will be possible to detect the switching defect of the TF. The subsequent R0 read operation detects the OED erase fault in the same way as in test 1 and 2. The last read command detects the RD read fault.
Сложность теста определяется по формуле (7): The complexity of the test is determined by formula (7):
. (7) . (7)
Устройство для осуществления заявленного способа содержит центральное вычислительное устройство, источник питания 5,0 В с разрешением 1 мВ, мультиметр, измеряющий постоянный ток в диапазоне 200.000 мкА с разрешением 1 нА, микроконтроллер на 400 кГц, матрицу транзисторов (набор ключей) 50,0 В 0,35 A, электромагнитное реле 10 А, подключенные к выходам 1C-7C матриц транзисторов, входы которых подключены ко входам RD0-11 микроконтроллера, операционный усилитель 160 МГц, USB коннектор, конденсаторы 33 пкФ – 100 нФ, резисторы 27 – 15к Ом, диоды 10 В, 500 мВт. В качестве переключателей использованы электромагнитные реле, которые подсоединены к управляющему модулю через матрицы транзисторов. Использование реле вместо микроамперметра позволяет сократить материальные затраты. Также необходимо обеспечить переключение между контактами для установки нужного режима измерения. Ручное переключение затратно по времени, а реле позволят обеспечить простое решение для автоматического переключения. Вместо реле можно использовать простое соединение и, меняя его, измерять в различных режимах, однако с помощью реле под управлением модулем возможно измерение всех токов утечки без каких-либо дополнительных действий со схемой измерений. К тому же использование активных элементов вместо реле привело бы к тому, что нужно проводить метрологические операции.The device for implementing the claimed method contains a central computing device, a 5.0 V power supply with a resolution of 1 mV, a multimeter that measures direct current in the range of 200,000 μA with a resolution of 1 nA, a microcontroller at 400 kHz, a matrix of transistors (a set of switches) 50.0 V 0.35 A, electromagnetic relay 10 A, connected to outputs 1C-7C of transistor matrices, the inputs of which are connected to inputs RD0-11 of the microcontroller, operational amplifier 160 MHz, USB connector, capacitors 33 pF - 100 nF, resistors 27 - 15 k Ohm, diodes 10 V, 500 mW. Electromagnetic relays are used as switches, which are connected to the control module through transistor matrices. Using a relay instead of a microammeter allows you to reduce material costs. It is also necessary to ensure switching between contacts to set the desired measurement mode. Manual switching is time-consuming, but relays will provide a simple solution for automatic switching. Instead of a relay, you can use a simple connection and, by changing it, measure in different modes, however, using a relay controlled by the module, it is possible to measure all leakage currents without any additional actions with the measurement circuit. In addition, the use of active elements instead of relays would lead to the need to carry out metrological operations.
К контактам микроконтроллера SCL и SDA подключены контакты памяти SCK, SDA, вход WP заземлён. Данный интерфейс имеет всего две линии связи – SCL и SDA, по которым необходимо проводить параметрический контроль. В отличие от I2C интерфейс SPI имеет 4 линии связи, что приводит к усложнению процесса измерения статических параметров в 2 раза.Memory contacts SCK, SDA are connected to the microcontroller contacts SCL and SDA, the WP input is grounded. This interface has only two communication lines - SCL and SDA, through which it is necessary to carry out parametric control. Unlike I2C, the SPI interface has 4 communication lines, which makes the process of measuring static parameters twice as complicated.
Для связи между микроконтроллером и центральным вычислительным устройством используется интерфейс USB/UART, так как он подходит для подключения одного устройства и позволяет быстро обмениваться данными. UART универсальный приемник-передатчик, который позволяет настроить соединение между компьютером и микроконтроллером. Для приема и передачи используется аппаратный модуль UART микроконтроллера. При передаче данных по интерфейсу USB/UART используется скорость обмена 19200 бит, 1 стоп бит.The USB/UART interface is used for communication between the microcontroller and the central computing device, as it is suitable for connecting one device and allows for fast data exchange. UART is a universal receiver-transmitter that allows you to configure the connection between a computer and a microcontroller. The UART hardware module of the microcontroller is used for reception and transmission. When transmitting data via the USB/UART interface, the exchange rate is 19200 bits, 1 stop bit.
Для связи между центральным вычислительным устройством и оснасткой используется интерфейс USB/USB, так как он позволяет подключить одновременно много устройств оснастки, в частности источник питания и мультиметр.For communication between the central computing device and the equipment, the USB/USB interface is used, since it allows you to simultaneously connect many equipment devices, in particular a power supply and a multimeter.
Устройство тестирования микросхем энергонезависимой памяти работает следующим образом. С персонального компьютера поступают сигналы по интерфейсу USB, содержащие информацию обо всех параметрах тестируемой микросхемы ПЗУ, а также обо всех условиях проводимого тестирования и выбранном алгоритме. Через преобразователь интерфейса USB в UART данная информация по интерфейсу UART попадает в микроконтроллер, который обрабатывает ее и подает управляющие сигналы на блок выбора источника питания, на основании которых происходит подключение требуемого источника к испытуемой микросхеме памяти. The device for testing non-volatile memory chips works as follows. Signals are received from the personal computer via the USB interface, containing information about all the parameters of the ROM chip being tested, as well as about all the testing conditions and the selected algorithm. Through the USB to UART interface converter, this information via the UART interface enters the microcontroller, which processes it and supplies control signals to the power source selection unit, based on which the required source is connected to the memory chip under test.
Реле подключены к выходам 1C-7C матриц транзисторов ULN2003A, входы которых подключены ко входам RD0-11 микроконтроллера. Использование ULN2003A в режиме ключа обусловлено тем, что ток реле достаточно высок и подключать реле напрямую к выходам микроконтроллера невозможно. Схема с реле RL1-9 позволяет измерять токи утечек в разных режимах, переключение RL10 позволяет измерить ток потребления, а переключение RL11 выходное напряжение. Управляя реле с помощью микроконтроллера, можно задавать различные режимы измерения. Например, по умолчанию контакты памяти SCK, SDA подключены к контактам микроконтроллера SCL и SDA, соответственно, вход WP заземлён. При подаче питания на вход RD4 микроконтроллером реле RL4 и RL5 переключаются в другое положение, таким образом, подключая SCK и SDA к земле. Данное переключение реле позволяет закончить функциональный контроль и начать проведение параметрического, то есть начать измерять ток утечки микросхемы в различных режимах работы. Топология печатной платы устройства изображена на Фиг. 2. Ток утечки измеряется на трех данных входах-выходах (SDA, SCL и WP) при различных режимах работы микросхемы. Режимы работы задаются путём подачи питания либо заземления каждого из контактов микросхемы памяти. Всего возможно реализовать 6 режимов работы микросхемы. 4 режима для измерения токов утечек: SCL- SDA+ WP-, SCL+ SDA+ WP-, SCL+ SDA- WP+, SCL+ SDA+ WP+. Один режим для измерения тока потребления SCL+ SDA+ WP- и один режим для измерения выходного напряжения низкого уровня SCL+ SDA+ WP+. Полное описание состояние сигналов SCL, SDA и WP представлено в таблице 1.The relays are connected to outputs 1C-7C of ULN2003A transistor matrices, the inputs of which are connected to inputs RD0-11 of the microcontroller. The use of ULN2003A in key mode is due to the fact that the relay current is quite high and it is impossible to connect the relay directly to the microcontroller outputs. The circuit with relay RL1-9 allows you to measure leakage currents in different modes, switching RL10 allows you to measure current consumption, and switching RL11 allows you to measure the output voltage. By controlling the relay using a microcontroller, you can set different measurement modes. For example, by default the memory contacts SCK, SDA are connected to the microcontroller contacts SCL and SDA, respectively, the WP input is grounded. When power is applied to the RD4 input by the microcontroller, relays RL4 and RL5 switch to another position, thereby connecting SCK and SDA to ground. This switching of the relay allows you to complete the functional control and begin parametric testing, that is, begin to measure the leakage current of the microcircuit in various operating modes. The topology of the device's printed circuit board is shown in Fig. 2. Leakage current is measured at three given inputs and outputs (SDA, SCL and WP) under different operating modes of the microcircuit. Operating modes are set by supplying power or grounding each of the contacts of the memory chip. In total, it is possible to implement 6 modes of operation of the microcircuit. 4 modes for measuring leakage currents: SCL- SDA+ WP-, SCL+ SDA+ WP-, SCL+ SDA- WP+, SCL+ SDA+ WP+. One mode for measuring current consumption SCL+ SDA+ WP- and one mode for measuring low level output voltage SCL+ SDA+ WP+. A complete description of the status of the SCL, SDA and WP signals is presented in Table 1.
Таблица 1 – Режимы работы микросхемыTable 1 – Microcircuit operating modes
В память микроконтроллера (МК) загружена программа, содержащая готовые алгоритмы испытания микросхем энергонезависимой памяти, а также всевозможные интерфейсы и ключевые флаги, необходимые для работы с периферийными устройствами.A program containing ready-made algorithms for testing non-volatile memory chips, as well as various interfaces and key flags necessary for working with peripheral devices is loaded into the memory of the microcontroller (MK).
После подачи напряжения питания на тестер супервизором формируется сигнал сброса и происходит запуск программы из памяти микроконтроллера. Согласно программе, выполняется инициализация портов и интерфейсов микроконтроллера. Для организации узла необходимо его проинициализировать. Для этого необходимо направление порта Tx сделать выходом, а Rx входом. Tx это шестой бит регистра TRISC, Rx седьмой. Далее необходимо определить значение генератора скорости передачи SPBRG. Значение можно определить по формуле (8):After supplying the supply voltage to the tester, the supervisor generates a reset signal and runs the program from the microcontroller’s memory. According to the program, the ports and interfaces of the microcontroller are initialized. To organize a node, you need to initialize it. To do this, you need to make the direction of the Tx port an output, and the Rx an input. Tx is the sixth bit of the TRISC register, Rx is the seventh. Next, you need to determine the value of the baud rate generator SPBRG. The value can be determined by formula (8):
SPBRG = (F_CPU /(ω*φ))-1 (8)SPBRG = (F_CPU /(ω*φ))-1 (8)
где F_CPU – частота процессора, определяем, как отношение частоты микроконтроллера к тактовой частоте (#define F_CPU 10000000/64); where F_CPU is the processor frequency, defined as the ratio of the microcontroller frequency to the clock frequency (#define F_CPU 10000000/64);
ω – тактовая частота процессора; ω – processor clock frequency;
φ – скорость передачи данных (φ=19200).φ – data transfer rate (φ=19200).
После этого необходимо провести инициализацию регистра статуса и контроля и передачи данных TXSTA и регистр состояния и контроля приемки RCSTA. Далее необходимо провести настройку работы последовательного порта по прерыванию. Для этого необходимо 4 (TXIE) и 5 (RCIE) бит регистра разрешения прерывания PIE1 перевести в режим «разрешить», присвоив битам значение логической 1. Бит TXIE позволяет разрешить прерывание передачи сообщения по UART, а RCIE разрешит прерывание приема. На этом инициализация UART выполнена.After this, it is necessary to initialize the status and control and data transmission register TXSTA and the status and reception control register RCSTA. Next, you need to configure the serial port to use interrupts. To do this, it is necessary to set bits 4 (TXIE) and 5 (RCIE) of the PIE1 interrupt enable register to the “enable” mode, assigning the bits the value logical 1. The TXIE bit allows you to enable interruption of message transmission via UART, and RCIE will enable interruption of reception. This completes the UART initialization.
Далее по последовательному порту необходимо передать сообщение непосредственно на компьютер, согласно структурной схеме комплекса и временной диаграмме. Для этого сначала ожидаем получение флага прерывания и после этого необходимо запустить проверку заполнения регистра состояния и контроля приемника RCSTA, за это отвечает первый бит переполнения. Если он принимает значение логического 0, то ошибки приемки нет, иначе ошибка есть. Если ошибки приемки не нет, необходимо отключить приемку путем установки бита CREN в 0. По истечению времени задержки приемки, необходимо включить приемку следующим образом: RCSTA.CREN=1. Next, the message must be transmitted via the serial port directly to the computer, according to the block diagram of the complex and timing diagram. To do this, we first wait for the interrupt flag to be received and after that it is necessary to start checking the filling of the status register and control of the RCSTA receiver, the first overflow bit is responsible for this. If it takes the value of logical 0, then there is no acceptance error, otherwise there is an error. If there is no receive error, it is necessary to disable reception by setting the CREN bit to 0. After the reception delay time has expired, it is necessary to enable reception as follows: RCSTA.CREN=1.
Для написания работы алгоритма I2C необходимо описать инициализацию регистров, функции отправки стартового, повторного стартового, стопового импульсов, импульсов подтверждения и отклонения, а также функций записи и чтения. Функции записи и чтения написаны в нескольких вариациях, для возможности отправки одного байта или массива байт. Регистры SSPSTAT, SSPCON1 и SSPCON2 необходимы для включения MSSP модуля, который позволяет подавать тактовые сигналы по модулю SCL. Данные регистры настраиваются по-разному в зависимости от того, какой интерфейс используется SPI или I2C.To write the operation of the I2C algorithm, it is necessary to describe the initialization of registers, functions for sending start, restart, stop pulses, acknowledge and reject pulses, as well as write and read functions. The write and read functions are written in several variations, to allow sending a single byte or an array of bytes. The SSPSTAT, SSPCON1 and SSPCON2 registers are required to enable the MSSP module, which allows clock signals to be supplied to the SCL module. These registers are configured differently depending on whether the interface is SPI or I2C.
Регистр TRISC устанавливает биты PORTC, как входы или выходы. Например, для того чтобы установить B6, как выход, необходимо B6 установить в 0. Соответственно для настройки регистра, как входя, необходимо значение бита установить в логическую 1. SSPADD регистр устанавливает частоту обмена данными по I2C протоколу, поэтому там используются переменные, для вычисления необходимой частоты.The TRISC register sets the PORTC bits as inputs or outputs. For example, in order to set B6 as an output, you need to set B6 to 0. Accordingly, to configure the register as an input, you need to set the bit value to logical 1. The SSPADD register sets the frequency of data exchange via the I2C protocol, so variables are used there to calculate required frequency.
После этого возможно реализовать передачу и прием слова по интерфейсу I2C. Для этого необходимо открыть коммуникацию ведущего и ведомого устройства, запустить цикл while, посылая адрес памяти с командой записи. Ожидая пока ведомое устройство свободно, запустить restart интерфейса по передачи сообщения и циклом for производить запись каждого байта.After this, it is possible to implement word transmission and reception via the I2C interface. To do this, you need to open communication between the master and slave, run a while loop, sending the memory address with the write command. While waiting until the slave device is free, restart the interface to send the message and use a for loop to write each byte.
Алгоритм чтение сообщения, поступившего в ведомое устройство, аналогичен записи, однако со своим набором команд. Здесь важно правильно настроить регистр NACK, иначе чтение будет нарушено. На протяжении всей длительности цикла активного программирования микросхема не воспринимает внешнее обращение по I2C-шине. Время цикла стирания/записи измеряется (контролируется) установлением времени обращения к микросхеме. Если микросхема выдает подтверждение при последующем обращении, то цикл программирования уже закончился. Если не выдает, то цикл программирования еще продолжается.The algorithm for reading a message received in a slave device is similar to writing, but with its own set of commands. It is important to set the NACK register correctly here, otherwise the reading will be broken. Throughout the entire duration of the active programming cycle, the microcircuit does not perceive external access via the I2C bus. The erase/write cycle time is measured (controlled) by setting the access time to the chip. If the microcircuit issues a confirmation upon subsequent access, then the programming cycle has already ended. If it does not issue, then the programming cycle still continues.
После подтверждения исправности тестера в программном обеспечении (ПО) требуется задать все основные параметры испытуемой микросхемы памяти:After confirming the serviceability of the tester in the software (software), you need to set all the main parameters of the memory chip under test:
рабочее напряжение шины I2C тестируемой микросхемы;operating voltage of the I2C bus of the tested microcircuit;
напряжение питания;supply voltage;
COM-порт, к которому подключен тестер;COM port to which the tester is connected;
разрядность шины адреса;address bus width;
значение тока утечки на выводах в зависимости от режима испытания;value of leakage current at the terminals depending on the test mode;
допустимое значение отклонения тока утечки, согласно ТУ.permissible value of leakage current deviation, according to specifications.
Все указанные выше данные, необходимые для корректной работы тестера с данной микросхемой памяти, записываются в регистры микроконтроллера и автоматически извлекаются им в ходе выполнения программы. Сразу подключается необходимый источник питания, настройки драйверов, компараторов и нагрузки активируют соответствующие режимы измерения статических параметров, контролирующих выводы шины данных. All of the above data necessary for the tester to work correctly with this memory chip is written to the registers of the microcontroller and is automatically retrieved by it during program execution. The required power source is immediately connected, the settings of drivers, comparators and loads activate the corresponding modes for measuring static parameters that control the data bus outputs.
Для контроля приборов используется спецификация IEEE-488, которая описывает интерфейс подключения к цифровым приборам. В данной спецификации описаны стандартные команды для программируемых цифровых приборов. Одной из таких команд является команда «*IDN?» которая запрашивает ID прибора. С использованием данной команды в программно-аппаратном комплексе происходит инициализация мультиметра и источника питания по их ID. После инициализации приборов используются специальные команды из системы команд RIGOL. Данная система различна для приборов и описана в документации на них. Для установки напряжения используется команда ":APPLy CH1,5,0", которая устанавливает напряжение канала 1 в источнике питания равное пяти вольтам. После этого используется команда ":OUTPut CH1,ON", которая открывает/включает этот канал. Для измерения тока и отправки результатов измерения мультиметру подаётся команда ":MEASure:CURRent:DC?".To control devices, the IEEE-488 specification is used, which describes the interface for connecting to digital devices. This specification describes standard commands for programmable digital devices. One of these commands is the command “*IDN?” which requests the device ID. Using this command in the hardware and software complex, the multimeter and power supply are initialized by their ID. After initializing the devices, special commands from the RIGOL command system are used. This system is different for devices and is described in the documentation for them. To set the voltage, use the command ":APPLy CH1,5,0", which sets the voltage of channel 1 in the power supply to five volts. After this, the command ":OUTPut CH1,ON" is used, which opens/turns on this channel. To measure current and send measurement results to the multimeter, issue the command “:MEASure:CURRent:DC?”.
После успешного подключения оснастки и установки связи управляющего устройства с микроконтроллером предоставляется выбор вида тестирования интегральной микросхемы памяти. Для проведения функционального контроля (обнаружение неисправностей) необходимо выбрать один из тестов в левой части экрана, в зависимости от того какие неисправности нужно исследовать. По результатам тестирования будет сформирован файл в формате xml с подробным описанием оценки проведенного контроля, согласно Фиг. 3. After successfully connecting the equipment and establishing communication between the control device and the microcontroller, you are given a choice of the type of testing of the integrated memory chip. To carry out functional testing (fault detection), you must select one of the tests on the left side of the screen, depending on what faults need to be investigated. Based on the testing results, a file in xml format will be generated with a detailed description of the assessment of the control performed, according to Fig. 3.
Такой формат выбран благодаря его независимости от платформы, он отвечает международному стандарту и имеет строгий синтаксис, что позволяет документу быть простым и непротиворечивым. This format was chosen because it is platform independent, follows an international standard, and has a strict syntax that allows the document to be simple and consistent.
По результатам тестирования будет предоставлена оценка исправности интегральной микросхемы. В случае обнаружения неисправности будет предоставлена информация о количестве неисправных байт. Based on the test results, an assessment of the serviceability of the integrated circuit will be provided. If a fault is detected, information about the number of faulty bytes will be provided.
В дополнении будет высчитан общий процент неисправных байт. Более подробный отчет по тестированию будет сохранен в файл протокола. In addition, the total percentage of bad bytes will be calculated. A more detailed test report will be saved in a log file.
Формат протокола следующий:The protocol format is as follows:
<Memory_name> объявляется имя объекта контроля. Данные берутся из подготовленного файла пользователем </Memory_name><Memory_name> declares the name of the monitoring object. Data is taken from the prepared file by user </Memory_name>
<Functional_testing> описание функционального контроля: name - название метода тестирования, time - время тестирования и memory_size - емкость объекта контроля.<Functional_testing> description of the functional control: name - name of the testing method, time - testing time and memory_size - capacity of the control object.
объявляется список неисправностей и номер бита, где дефект обнаружен. a list of faults and the bit number where the fault was detected are announced.
<Functional_outcome> объявляется количество неисправных байт </Functional_outcome><Functional_outcome> declares the number of faulty bytes </Functional_outcome>
<Functional_result> объявляется результат функционального контроля – Годен/Не годен </Functional_result>. Функциональный тест закончен </Functional_testing>.<Functional_result> declares the result of the functional control - Pass/Fail </Functional_result>. Functional test completed </Functional_testing>.
<Param_testing> старт описания результатов параметрического контроля.<Param_testing> start of description of parametric testing results.
<param> описание режима измерения токов утечки согласно таблице 1.<param> description of the leakage current measurement mode according to Table 1.
<Standart> описание значения нормы: единица измерения значения нормы тока утечки, допустимая погрешность при измерении в % и значение нормы согласно ТУ </Standart><Standart> description of the standard value: unit of measurement of the leakage current standard value, permissible measurement error in % and standard value according to specifications </Standart>
<acceptance> объявляется результат параметрического контроля для заданного режима – Норма/Не норма <acceptance><acceptance> declares the result of parametric control for a given mode - Normal / Not normal <acceptance>
<Param_result> объявляется результат параметрического контроля для микросхемы. Параметрическое тестирование закончено </Param_testing>.<Param_result> declares the result of parametric control for the microcircuit. Parametric testing completed </Param_testing>.
<Result> объявляется результат функционального и параметрического контроля – Годен/Не годен </Result><Result> declares the result of functional and parametric testing - Pass/Fail </Result>
В случае, если обнаружена неисправность в ходе функционального тестирования, микросхема считается негодной. If a malfunction is detected during functional testing, the chip is considered unusable.
При параметрическом контроле в случае отклонения параметра от нормы микросхема считается негодной.With parametric control, if a parameter deviates from the norm, the microcircuit is considered unusable.
В результате предлагаемое изобретение позволяет проводить в полном объеме функциональный и параметрический контроль микросхем энергонезависимой памяти. As a result, the proposed invention allows for full functional and parametric control of non-volatile memory chips.
Заявляемое изобретение иллюстрируется чертежами, где:The claimed invention is illustrated by drawings, where:
на Фиг. 1 представлено описание всех моделей неисправностей, обнаруживаемых при тестировании;in Fig. 1 provides a description of all fault models detected during testing;
на Фиг. 2 представлена топология печатной платы устройства;in Fig. Figure 2 shows the topology of the device's printed circuit board;
на Фиг. 3 представлен файл в формате xml с подробным описанием оценки проведенного контроля;in Fig. 3 presents a file in xml format with a detailed description of the assessment of the control performed;
на Фиг. 4 показан полный алгоритм работы устройства.in Fig. Figure 4 shows the complete operating algorithm of the device.
Ниже изобретение иллюстрируется следующими примерами.The invention is illustrated below by the following examples.
Пример 1. В таблице 2 показаны результаты моделирования энергонезависимой памяти 256 байт (256x8), буфер записи страницы до 8 байт.Example 1. Table 2 shows the simulation results for 256 byte (256x8) non-volatile memory, page write buffer up to 8 bytes.
Таблица 2 – Результаты тестирования микросхемы памяти IN24LC02BNTable 2 – Results of testing the IN24LC02BN memory chip
Таблица 3– Среднее время тестирования микросхемы памяти IN24LC02BNTable 3 – Average testing time for IN24LC02BN memory chip
При использовании заявленного способа время обнаружения неисправности сокращается с O() до O().When using the claimed method, the fault detection time is reduced from O( ) to O( ).
Пример 2. Работу комплекса осуществляли по следующим шагам:Example 2. The operation of the complex was carried out according to the following steps:
Проверка подключаемых устройств – источники питания и измерительные приборы.Checking connected devices - power supplies and measuring instruments.
Считывание значений напряжения и тока, определение COM порта для определения платы оснастки. Проверка подключения интегральной микросхемы и микроконтроллера.Reading voltage and current values, determining the COM port to identify the equipment board. Checking the connection of the integrated circuit and microcontroller.
Проведение функционального и параметрического контроля микросхемы памяти.Carrying out functional and parametric testing of the memory chip.
Обработка и вывод результатов тестирования пользователю.Processing and displaying test results to the user.
Полный алгоритм работы устройства показан на Фиг. 4.The complete operating algorithm of the device is shown in Fig. 4.
Методы испытаний описаны в таблице 4.Test methods are described in Table 4.
Таблица 4 – Методы испытанийTable 4 - Test methods
Подключить мультиметр RIGOL DM3068 к микроконтроллерной оснастке согласно принципиальной схеме комплекса.
В приложении нажать на кнопку «Подключить источник питания и амперметр»Connect the RIGOL DP832A power supply to the microcontroller equipment according to the circuit diagram of the complex.
Connect the RIGOL DM3068 multimeter to the microcontroller equipment according to the circuit diagram of the complex.
In the application, click on the “Connect power source and ammeter” button
Кнопка «Перейти к подключению микросхемы памяти» доступна.The application will display a message indicating that the power supply and ammeter have been successfully connected.
The “Go to memory chip connection” button is available.
Задать напряжение питания тестируемой микросхемы согласно ТУ – 5 Вольт.
Выбрать COM порт подключения комплекса. В случае необходимости обновить список доступных портов.
Выбрать путь к файлу, в котором согласно образцу* заполнены параметры микросхемы. Файл формата txt.
Нажать на кнопку «Проверить подключение микросхемы памяти и микроконтроллера»Set the operating voltage of the I2C bus of the microcircuit under test according to the specifications - 5 Volts.
Set the supply voltage of the microcircuit under test according to the specifications - 5 Volts.
Select the COM port for connecting the complex. If necessary, update the list of available ports.
Select the path to the file in which the microcircuit parameters are filled in according to the sample*. txt file format.
Click on the “Check the connection of the memory chip and microcontroller” button
Приложении выдаст сообщение об успешном подключении микроконтроллера и микросхемы памяти.
Кнопка «Перейти к подключению микросхемы памяти» доступна.The input file has been processed.
The application will display a message indicating successful connection of the microcontroller and memory chip.
The “Go to memory chip connection” button is available.
Выбрать путь сохранения файла с результатом тестирования или оставить по умолчанию.
Нажать на кнопку «Начать тестирование»
Нажать на кнопку «В меню»Select Test 1 from the list of functional control methods.
Select the path to save the file with the test result or leave it as default.
Click on the “Start testing” button
Click on the “To Menu” button
Общий процент неисправных байт.
Заполненный протокол испытаний.
Зафиксировать время исполнения теста.List of defects and the number of bytes affected by these defects.
Total percentage of bad bytes.
Completed test report.
Record the test execution time.
Выбрать путь сохранения файла с результатом тестирования или оставить по умолчанию.
Нажать на кнопку «Начать тестирование»
Нажать на кнопку «В меню»Select Test 2 from the list of functional control methods.
Select the path to save the file with the test result or leave it as default.
Click on the “Start testing” button
Click on the “To Menu” button
Общий процент неисправных байт.
Заполненный протокол испытаний.
Зафиксировать время исполнения теста.List of defects and the number of bytes affected by these defects.
Total percentage of bad bytes.
Completed test report.
Record the test execution time.
Выбрать путь сохранения файла с результатом тестирования или оставить по умолчанию.
Нажать на кнопку «Начать тестирование»
Нажать на кнопку «В меню»Select Test 3 from the list of functional control methods.
Select the path to save the file with the test result or leave it as default.
Click on the “Start testing” button
Click on the “To Menu” button
Общий процент неисправных байт.
Заполненный протокол испытаний.
Зафиксировать время исполнения теста.List of defects and the number of bytes affected by these defects.
Total percentage of bad bytes.
Completed test report.
Record the test execution time.
Выбрать путь сохранения файла с результатом тестирования или оставить по умолчанию.
Нажать на кнопку «Начать тестирование»
Нажать на кнопку «В меню»Select Flash-March from the list of functional control methods.
Select the path to save the file with the test result or leave it as default.
Click on the “Start testing” button
Click on the “To Menu” button
Общий процент неисправных байт.
Заполненный протокол испытаний.
Зафиксировать время исполнения теста.List of defects and the number of bytes affected by these defects.
Total percentage of bad bytes.
Completed test report.
Record the test execution time.
Выбрать путь сохранения файла с результатом тестирования или оставить по умолчанию.
Нажать на кнопку «Начать тестирование»
Нажать на кнопку «В меню»Select March-FT from the list of functional control methods.
Select the path to save the file with the test result or leave it as default.
Click on the “Start testing” button
Click on the “To Menu” button
Общий процент неисправных байт.
Заполненный протокол испытаний.
Зафиксировать время исполнения теста.List of defects and the number of bytes affected by these defects.
Total percentage of bad bytes.
Completed test report.
Record the test execution time.
Выбрать путь сохранения файла с результатом тестирования или оставить по умолчанию.
Нажать на кнопку «Начать тестирование»
Нажать на кнопку «Закрыть программу»Select the item “Leakage current testing”.
Select the path to save the file with the test result or leave it as default.
Click on the “Start testing” button
Click on the “Close program” button
Таким образом, вышеизложенное описание свидетельствует о выполнении при использовании заявленного изобретения следующей совокупности условий:Thus, the above description indicates that the following set of conditions are met when using the claimed invention:
средство, воплощающее заявленное изобретение, при его осуществлении, предназначено для тестирования микросхем памяти на соответствие статических параметров техническим условиям и на корректность работы при операциях чтения, записи и стирания данных;the means embodying the claimed invention, when implemented, is intended for testing memory chips for compliance of static parameters with technical specifications and for correct operation during operations of reading, writing and erasing data;
для заявленного способа, в том виде как оно охарактеризовано в изложенной формуле изобретения, подтверждена возможность его осуществления с помощью описанных в заявке средств и методов;for the claimed method, as described in the stated claims, the possibility of its implementation using the means and methods described in the application has been confirmed;
средство, воплощающее заявленное изобретение при осуществлении, способно обеспечить достижение усматриваемого заявителем технического результата – расширения диапазона определения дефектов энергонезависимой памяти: выявления SAF, TF, WED, WPD, BED, BPD, RD и OED в микросхемах энергонезависимой памяти, сокращения сложности и длительности выполнения тестирования.the means embodying the claimed invention when implemented is capable of achieving the technical result envisioned by the applicant - expanding the range of detection of non-volatile memory defects: identifying SAF, TF, WED, WPD, BED, BPD, RD and OED in non-volatile memory chips, reducing the complexity and duration of testing .
Claims (4)
Publications (1)
Publication Number | Publication Date |
---|---|
RU2821349C1 true RU2821349C1 (en) | 2024-06-21 |
Family
ID=
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1987005432A1 (en) * | 1986-02-28 | 1987-09-11 | Ncr Corporation | Nonvolatile memory system having a testing capability |
US6055200A (en) * | 1998-11-07 | 2000-04-25 | Samsung Electronics Co., Ltd. | Variable test voltage circuits and methods for ferroelectric memory devices |
US20030074611A1 (en) * | 2001-10-10 | 2003-04-17 | Tower Semiconductor Ltd. | Efficient test structure for non-volatile memory and other semiconductor integrated circuits |
US20040153924A1 (en) * | 2002-10-30 | 2004-08-05 | Masatoshi Shinagawa | Nonvolatile memory microcomputer chip, and a method for testing the nonvolatile memory microcomputer chip |
WO2006081168A1 (en) * | 2005-01-24 | 2006-08-03 | Spansion Llc | Automated tests for built-in self test |
US9032264B2 (en) * | 2013-03-21 | 2015-05-12 | Kabushiki Kaisha Toshiba | Test method for nonvolatile memory |
US20150279485A1 (en) * | 2014-03-28 | 2015-10-01 | Lenovo (Singapore) Pte, Ltd. | Advanced memory test diagnostics |
US9831003B2 (en) * | 2012-02-29 | 2017-11-28 | Samsung Electronics Co., Ltd. | Device and method for repairing memory cell and memory system including the device |
RU194203U1 (en) * | 2019-03-29 | 2019-12-03 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Петрозаводский государственный университет" | FPGA-based NAND memory chip testing device |
RU199432U1 (en) * | 2020-06-29 | 2020-09-01 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Петрозаводский государственный университет" | MULTI-CRYSTAL MICROCIRCUIT TESTING DEVICE |
RU199833U1 (en) * | 2019-06-03 | 2020-09-22 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Петрозаводский государственный университет" | Modular system for electrical and functional testing of FPGA-based NAND memory chips |
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1987005432A1 (en) * | 1986-02-28 | 1987-09-11 | Ncr Corporation | Nonvolatile memory system having a testing capability |
US6055200A (en) * | 1998-11-07 | 2000-04-25 | Samsung Electronics Co., Ltd. | Variable test voltage circuits and methods for ferroelectric memory devices |
US20030074611A1 (en) * | 2001-10-10 | 2003-04-17 | Tower Semiconductor Ltd. | Efficient test structure for non-volatile memory and other semiconductor integrated circuits |
US20040153924A1 (en) * | 2002-10-30 | 2004-08-05 | Masatoshi Shinagawa | Nonvolatile memory microcomputer chip, and a method for testing the nonvolatile memory microcomputer chip |
WO2006081168A1 (en) * | 2005-01-24 | 2006-08-03 | Spansion Llc | Automated tests for built-in self test |
US9831003B2 (en) * | 2012-02-29 | 2017-11-28 | Samsung Electronics Co., Ltd. | Device and method for repairing memory cell and memory system including the device |
US9032264B2 (en) * | 2013-03-21 | 2015-05-12 | Kabushiki Kaisha Toshiba | Test method for nonvolatile memory |
US20150279485A1 (en) * | 2014-03-28 | 2015-10-01 | Lenovo (Singapore) Pte, Ltd. | Advanced memory test diagnostics |
RU194203U1 (en) * | 2019-03-29 | 2019-12-03 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Петрозаводский государственный университет" | FPGA-based NAND memory chip testing device |
RU199833U1 (en) * | 2019-06-03 | 2020-09-22 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Петрозаводский государственный университет" | Modular system for electrical and functional testing of FPGA-based NAND memory chips |
RU199432U1 (en) * | 2020-06-29 | 2020-09-01 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Петрозаводский государственный университет" | MULTI-CRYSTAL MICROCIRCUIT TESTING DEVICE |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100599348B1 (en) | Distributed interface for parallel testing of multiple devices using a single tester channel | |
US6216241B1 (en) | Method and system for testing multiport memories | |
TW569232B (en) | Recording of result information in a built-in self-test circuit and method therefor | |
JP2001202799A (en) | Measurement for threshold voltage distribution of memory array bit cell in circuit | |
KR20010104363A (en) | Efficient parallel testing of integrated circuit devices using a known good device to generate expected responses | |
KR20010104362A (en) | Parallel testing of integrated circuit devices using cross-dut and within-dut comparisons | |
JP3645578B2 (en) | Apparatus and method for embedded self-test of smart memory | |
US20170045579A1 (en) | Cpu bist testing of integrated circuits using serial wire debug | |
JP4334463B2 (en) | Semiconductor integrated circuit test apparatus and method | |
CN104569794A (en) | FPGA on-line tester based on boundary scan structure and testing method thereof | |
CN114639439B (en) | Chip internal SRAM test method and device, storage medium and SSD device | |
US9711241B2 (en) | Method and apparatus for optimized memory test status detection and debug | |
US6219289B1 (en) | Data writing apparatus, data writing method, and tester | |
US6954886B2 (en) | Deterministic hardware reset for FRC machine | |
US20170278583A1 (en) | Fusebox-based memory repair | |
Chiu et al. | Diagonal test and diagnostic schemes for flash memories | |
KR20090096154A (en) | Test system for conducting parallel bit test | |
RU2821349C1 (en) | Method for testing non-volatile memory chips and device for its implementation | |
JP2002323993A (en) | Single chip microcomputer, testing method therefor and test program | |
CN116994633A (en) | Easy-maintenance and regeneration design system, method and equipment for memory bank | |
CN114464242B (en) | DDR test method, device, controller and storage medium | |
CN117290165A (en) | Method, system, device and storage medium for chip test | |
US7363565B2 (en) | Method of testing apparatus having master logic unit and slave logic unit | |
Tuv et al. | Development of a Hardware and Software Complex Based on the Study of the Diagnostic Properties of Methods for Testing Nonvolatile Memory with a Serial Interface | |
CN219997875U (en) | Memory protection module, integrated circuit chip and test circuit thereof |