KR100778459B1 - Apparatus and method for programming, erasing and verificating a pluality of electronic devices - Google Patents

Apparatus and method for programming, erasing and verificating a pluality of electronic devices Download PDF

Info

Publication number
KR100778459B1
KR100778459B1 KR1020060047476A KR20060047476A KR100778459B1 KR 100778459 B1 KR100778459 B1 KR 100778459B1 KR 1020060047476 A KR1020060047476 A KR 1020060047476A KR 20060047476 A KR20060047476 A KR 20060047476A KR 100778459 B1 KR100778459 B1 KR 100778459B1
Authority
KR
South Korea
Prior art keywords
data
electronic device
cpu
state
electronic devices
Prior art date
Application number
KR1020060047476A
Other languages
Korean (ko)
Inventor
조흥엽
박효성
박승욱
Original Assignee
(주) 컴파스 시스템
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주) 컴파스 시스템 filed Critical (주) 컴파스 시스템
Priority to KR1020060047476A priority Critical patent/KR100778459B1/en
Application granted granted Critical
Publication of KR100778459B1 publication Critical patent/KR100778459B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)

Abstract

An apparatus for programming, erasing and verifying plural electronic devices are provided to operate plural FPGAs(Field Programmable Gate Arrays) via one CPU in one set of a device like a ROM writer, and to perform a programming procedure, an erasing procedure or a verification procedure regarding electronic devices like semiconductor chips for increasing efficiency. An apparatus for programming, erasing and verifying plural electronic devices comprises a buffer memory(10), electronic devices(50-1-n), FPGAs(40-1-n) and a CPU(20). The buffer memory(10) stores data to be programmed. The electronic devices(50-1-n) are targets where the data is programmed. The FPGAs(40-1-n) program the data for the electronic devices(50-1-n), verify programmed result data, and erase the data stored at the electronic devices(50-1-n). The CPU(20) controls the FPGAs(40-1-n) to perform programming, erasing and verification concurrently regarding the electronic devices(50-1-n). The FPGA checks a state of an electronic device included in itself, expresses the checked state with one bit data, transmits the checked state to the CPU(20). The FPGA compares original data of the buffer memory(10) with the data programmed at the electronic device, expresses the comparison result with one bit data, and transmits the comparison result to the CPU(20) in the verification. The CPU(20) checks an electronic device where there occurs an error regarding a currently progressed process and controls maintaining to perform the currently progressed process for only electronic devices without an error on the basis of the checked state and the comparison result from the plural FPGAs(40-1-n).

Description

복수의 전자장치를 프로그램, 소거 및 검증하는 장치{Apparatus and method for programming, erasing and verificating a pluality of electronic devices}Apparatus and method for programming, erasing and verificating a pluality of electronic devices}

도 1은 종래 복수의 전자장치를 프로그램, 소거 및 검증하는 장치를 도시한 블록도,1 is a block diagram illustrating an apparatus for programming, erasing, and verifying a plurality of conventional electronic devices;

도 2는 본 발명에 따른 복수 전자장치를 프로그램, 소거 및 검증하는 장치의 블록구성도,2 is a block diagram of an apparatus for programming, erasing, and verifying a plurality of electronic devices according to the present invention;

도 3은 도 2에 도시한 본 발명의 요구 상세 구성도,3 is a detailed configuration diagram of the present invention shown in FIG.

도 4는 본 발명에 따른 복수 전자장치를 프로그램, 소거 및 검증하는 장치에 의한 복수 전자장치의 상태 체크를 설명하기 위한 도면이다.4 is a diagram illustrating a state check of a plurality of electronic devices by a device for programming, erasing, and verifying the plurality of electronic devices according to the present invention.

< 도면의 주요 부분에 대한 부호의 설명 ><Description of Symbols for Main Parts of Drawings>

10 : 버퍼 메모리 20 : CPU10: buffer memory 20: CPU

30 : 모드 설정부 30: mode setting unit

40_1~40_n : FPGA(field-programmable gate array)40_1 ~ 40_n: FPGA (field-programmable gate array)

41 : 제어디코더부 42 : 어드레스 래치41: control decoder 42: address latch

43 : 기록데이터래치 44 : 비교데이터래치43: record data latch 44: comparison data latch

45 : 읽기데이터래치 46 : 상태점검부45: read data latch 46: status check unit

48 : 비교결과래치 49 : 셀렉터48: comparison result latch 49: selector

50_1~50_n : 반도체 칩(전자장치)50_1 to 50_n: semiconductor chip (electronic device)

본 발명은 복수 전자장치를 프로그램, 소거 및 검증하는 장치에 관한 것으로, 보다 상세하게는 프로그램 및 데이터저장 가능한 반도체장치(이하, "전자장치"라고 한다)의 복수 개를 동시에 프로그램 및 데이터 소거하는 과정과 프로그램 후에 저장된 데이터를 검증하는 과정에서 소요되는 시간을 획기적으로 감소시키는 장치에 관한 것이다.The present invention relates to a device for programming, erasing and verifying a plurality of electronic devices, and more particularly, a process of simultaneously programming and erasing a plurality of semiconductor devices (hereinafter, referred to as "electronic devices") capable of storing programs and data. And a device for drastically reducing the time spent in verifying stored data after a program.

종래, 비휘발성 반도체장치(ROM, 플래시 메모리 등)와 이를 내장하는 반도체장치(이하, 모두 "전자장치"라고 한다)는 프로그래머(예를 들면 ROM 라이터)에서 반전에 하나씩 기록(write) 또는 그로그램, 소거(erase) 및 검증(verify)을 각각 실시했다. Conventionally, nonvolatile semiconductor devices (ROMs, flash memories, etc.) and semiconductor devices (hereinafter, all referred to as "electronic devices") incorporating the same are written or programmed one by one in inversion in a programmer (for example, a ROM writer). Erase and verify were performed respectively.

또, 동일시간에 더 많은 전자장치를 프로그램하기 위하여 한번에 4개, 8개, 16개까지 동시에 진행하는 장치가 개발되었다. 이러한 장치를 도 1에 도시하였다. In addition, in order to program more electronic devices at the same time, up to 4, 8, 16 devices at the same time have been developed. Such an apparatus is shown in FIG. 1.

도 1에 도시한 바와 같이, 종래 장치는 프로그램할 16개의 전자장치(반도체 칩)(5_1~5_16)를 탑재하고, 모드설정부(3)를 통하여 프로그램모드를 설정하면 CPU(2)는 버퍼 메모리(1)에 저장된 데이터를 읽어와서 로직IC(4_1~4_16)로 전달하고 로직 IC((4_1~4_16))에 의하여 데이터를 전자장치(반도체 칩)(5_1~5_16)에 기록하게 된다. 프로그램할 때는 매 바이트를 기록할 때마다 상태 점검 비트를 확인하 고 프로그램해야 하며, 소거할 때도 매 섹터당 상태 점검 비트를 확인하고 소거해야 한다. 또한 프로그램한 내용을 검증할 때는 모든 내용을 버퍼 메모리 내용과 비교해서 이상 유무를 알려 주어야 한다. 즉, 프로그램한 내용의 이상 유무를 확인하기 위해서는 모든 전자장치(반도체 칩)(5_1~5_16)에 저장된 내용을 읽어 와서 버퍼 메모리(1)의 내용과 비교하여 이상 유무를 알려 주어야 한다. 이때는 각각의 모든 전자장치(반도체 칩)(5_1~5_16)의 저장 내용을 읽고 비교하여야 하기 때문에 전자장치(반도체 칩)의 개수만큼의 시간이 필요하였다.As shown in Fig. 1, the conventional apparatus is equipped with 16 electronic devices (semiconductor chips) 5_1 to 5_16 to be programmed, and when the program mode is set via the mode setting section 3, the CPU 2 buffers the memory. Data stored in (1) is read and transferred to the logic ICs 4_1 to 4_16, and the data is written to the electronic devices (semiconductor chips) 5_1 to 5_16 by the logic ICs 4_1 to 4_16. When programming, you must check and program the status check bit for every byte written, and also check and clear the status check bit for every sector when erasing. In addition, when verifying the programmed contents, all contents should be compared with the contents of the buffer memory to indicate whether there is an error. In other words, in order to confirm the abnormality of the programmed contents, the contents stored in all the electronic devices (semiconductor chips) 5_1 to 5_16 should be read and compared with the contents of the buffer memory 1 to inform them of the abnormality. In this case, since the contents of each electronic device (semiconductor chip) 5_1 to 5_16 should be read and compared, the time required by the number of electronic devices (semiconductor chip) was required.

따라서, 종래의 장치에는 한번에 1개의 전자장치에 대하여 프로그램하고 읽고 검증할 때는 어쩔 수 없이 1번씩 모두 하지만, 한번에 여러 개(16개)의 전자장치에 대하여 수행할 때는 16개의 전자장치에 대하여 동시에 프로그램(write)하는 과정과 그 프로그램한 내용을 확인하는 과정에서도 각각의 전자장치별로 구분하여 수행하기 때문에 전자장치의 개수만큼 시간이 걸려서 수분에서 수 십분 씩 기다려야 하는 상황이 발생한다.Therefore, in a conventional device, all one time is inevitable when programming, reading, and verifying one electronic device at a time. However, when performing a plurality of (16) electronic devices at a time, programs are simultaneously performed on 16 electronic devices. In the process of writing and checking the programmed contents, the electronic devices are classified and performed according to the number of electronic devices. Therefore, it takes time as many as the number of electronic devices to wait for several tens of minutes.

최근에는 대용량 플래시 메모리의 사용 증가로 이러한 시간 단축의 필요성이 더욱 많이 필요하게 되었다.In recent years, with the increasing use of large-capacity flash memory, there is a greater need for this time reduction.

따라서, 본 발명은 상기한 종래 사정을 감안하여 이루어진 것으로, 복수 개의 전자장치를 동시에 프로그램 및 데이터 소거하는 과정과 프로그램 후에 저장된 데이터를 검증하는 과정에서 소요되는 시간을 획기적으로 감소시킬 수 있는 장치를 제공하고자 함에 그 목적이 있다.Accordingly, the present invention has been made in view of the above-described conventional situation, and provides an apparatus capable of drastically reducing the time required for simultaneously programming and erasing a plurality of electronic devices and verifying data stored after the program. The purpose is to.

상기한 목적을 달성하기 위해 본 발명에 따른 장치는, 프로그램(기록)할 데이터가 저장되는 버퍼 메모리와; 탑재되는 프로그램 대상인 복수 개의 전자장치(반도체 칩)와; 각각의 전자장치에 대응하여 설치되어, 상기 전자장치에 데이터를 프로그램하고 프로그램 결과 데이터를 검증하며 상기 전자장치에 저장된 데이터를 소거하는 기능을 수행하는 복수 개의 FPGA와; 상기 복수의 FPGA를 제어하여 복수 개의 전자장치에 대한 프로그램 과정, 검증과정 및 소거과정을 동시에 수행하도록 총괄하는 CPU를 포함하여 구성되고, 상기 FPGA는 자신에 속하는 전자장치의 상태를 점검하여 그 점검상태를 1비트 데이터로 표현하여 상기 CPU로 전송하며, 자신에 속하는 전자장치에 대한 검증과정에서 상기 버퍼 메모리로부터의 원본 데이터와 상기 전자장치에 프로그램된 데이터의 동일 여부에 대한 비교정보를 1비트 데이터로 표현하여 상기 CPU로 전송하며, 상기 CPU는 상기 복수의 FPGA로부터 수신된 1비트의 점검상태정보 또는 비교정보에 근거하여 현재 진행되고 있는 처리에 대한 에러가 발생한 전자장치를 확인하고, 에러가 발생하지 않은 전자장치에 대해서만 현재 진행되고 있는 처리를 지속하도록 제어하는 것을 특징으로 한다.In order to achieve the above object, an apparatus according to the present invention includes a buffer memory for storing data to be programmed (written); A plurality of electronic devices (semiconductor chips) to be mounted on the program; A plurality of FPGAs installed corresponding to each of the electronic devices to perform a function of programming data in the electronic device, verifying program result data, and erasing data stored in the electronic device; The CPU is configured to control the plurality of FPGAs to simultaneously perform a program process, a verification process, and an erase process for a plurality of electronic devices, wherein the FPGA checks a state of an electronic device belonging to the inspection device and checks the state. Is expressed as 1-bit data and transmitted to the CPU, and the comparison information on whether the original data from the buffer memory and the data programmed in the electronic device is the same as the 1-bit data during the verification process for the electronic device belonging to the CPU. Expresses and transmits the data to the CPU. The CPU identifies an electronic device in which an error has occurred regarding a process that is currently being processed, based on 1 bit of check status information or comparison information received from the plurality of FPGAs, and does not generate an error. It is characterized in that only the electronic devices which are not used are controlled to continue the processing currently in progress.

이하, 첨부 도면을 참조하여 본 발명의 바람직한 실시예에 따른 복수의 전자장치를 프로그램, 소거 및 검증하는 장치에 대하여 상세히 설명한다.Hereinafter, an apparatus for programming, erasing, and verifying a plurality of electronic devices according to an exemplary embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 따른 복수 전자장치를 프로그램, 소거 및 검증하는 장치의 블록 구성도이다. 동 도면에 도시한 바와 같이, 본 발명에 따른 장치는, 버퍼 메모리(10), CPU(20), 모드설정부(30), 복수 개의 FPGA(40_1~40_n) 및 프로그램 대상으 로 탑재되는 복수 개의 전자장치(반도체 칩)(50_1~50_n)를 포함하여 구성된다.2 is a block diagram of an apparatus for programming, erasing, and verifying a plurality of electronic devices according to the present invention. As shown in the figure, the apparatus according to the present invention includes a buffer memory 10, a CPU 20, a mode setting unit 30, a plurality of FPGAs 40_1 to 40_n, and a plurality of electronics mounted on a program target. It comprises a device (semiconductor chip) 50_1-50_n.

상기 버퍼 메모리(10)는 프로그램 대상 전자장치(반도체 칩)(50_1~50_n)에 기록할 데이터를 임시 저장하는 장치이다 상기 모드설정부(30)는 사용자에 의하여 각종 모드를 설정하기 위한 것으로서, 예를 들면 프로그램 대상 전자장치(반도체 칩)(50_1~50_n)에 데이터를 기록하기 위한 프로그램 모드와, 프로그램 대상 전자장치(반도체 칩)(50_1~50_n)에 기록된 데이터를 소거하기 위한 소거 모드 및, 전자장치(반도체 칩)(50_1~50_n)에 프로그램된 내용을 확인하기 위한 검증 모드 등을 설정하기 위한 것이다. 여기서, 상기 전자장치는 비휘발성 반도체 메모리장치(ROM, 플래시 메모리 등)와 이를 내장하는 반도체장치이다.The buffer memory 10 is a device for temporarily storing data to be recorded in a program target electronic device (semiconductor chip) 50_1 to 50_n. The mode setting unit 30 is for setting various modes by a user. For example, a program mode for recording data in the program target electronic devices (semiconductor chips) 50_1 to 50_n, an erase mode for erasing data recorded in the program target electronic devices (semiconductor chips) 50_1 to 50_n, and The verification mode for checking the contents programmed in the electronic device (semiconductor chip) 50_1 to 50_n is set. Here, the electronic device is a nonvolatile semiconductor memory device (ROM, flash memory, etc.) and a semiconductor device containing the same.

상기 CPU(20)는 상기 모드설정부(30)의 설정 모드에 따라서 전자장치(반도체 칩)(50_1~50_n)의 프로그램 과정, 소거 과정 및 검증과정에 대한 전체적인 제어를 수행한다. 여기서, 상기 CPU(20)는 예를 들면 16비트 데이터 단위로 프로그램을 수행하는 과정, 소거를 수행하는 과정 및 검증을 수행하는 과정에서 상기 FPGA(40_1~40_n)으로부터 각각 그 결과 정보를 수신하게 되는데, 이때 그 결과 정보로서 에러신호를 전송하는 FPGA에 대해서는 에러 처리하고 그 이후의 처리를 수행하지 않도록 한다. The CPU 20 performs overall control of a program process, an erase process, and a verification process of the electronic device (semiconductor chip) 50_1 to 50_n according to the setting mode of the mode setting unit 30. In this case, the CPU 20 receives the result information from the FPGAs 40_1 to 40_n, respectively, in a process of performing a program in a 16-bit data unit, a process of erasing, and a process of verifying. In this case, the error processing is performed on the FPGA that transmits the error signal as the result information, and the subsequent processing is not performed.

상기 FPGA(40_1~40_n)는 상기 CPU(20)의 제어에 따라 전자장치(반도체 칩)(50_1~50_n)의 프로그램 과정, 소거 과정 및 검증과정을 실제로 수행하는 구성이다. 동 도면에서는 도면의 간략화만을 위하여 FPGA(40_1)에만 그 구체 블록 구성을 도시하였으며 나머지 FPGA(40_2~40_n)도 동일한 구성이다.The FPGAs 40_1 to 40_n are configured to actually perform a program process, an erase process, and a verification process of the electronic device (semiconductor chip) 50_1 to 50_n under the control of the CPU 20. In the figure, only the FPGA 40_1 is shown in the concrete block configuration for simplicity of the drawing, and the remaining FPGAs 40_2 to 40_n have the same configuration.

상기 FPGA(40_1~40_n)는 CPU(41)로부터 전달된 명령신호를 디코딩하여 전자장치(반도체 칩)(50_1~50_n)로 전달하는 제어디코더부(41)와; CPU(41)로부터 전달된 어드레스를 래치하는 어드레스래치(42)와; CPU(41)로부터 프로그램 모드시에 전달된 기록 데이터를 래치하는 기록데이터래치(43)와; CPU(41)로부터 검증모드시에 전달된 비교 데이터를 래치하는 비교데이터래치(44)와; 전자장치(반도체 칩)(50_1~50_n)에서 읽어온 데이터를 래치하는 읽기데이터래치(45)와; 전자장치(반도체 칩)(50_1~50_n)의 상태의 점검하는 상태점검부(46)와; 검증시에 상기 비교데이터래치(44)에 래치된 데이터와 읽기데이터래치(45)에 래치된 데이터를 비교하는 비교기(47)와; 상기 CPU(20)로부터의 신호에 따라서 16비트 데이터 비교, 반도체 칩의 레디비지(RYBY) 핀 점검, 읽기 제어기 상태 점검(비트 14), 읽기 제어기 상태 점검(비트 10), 낸드 블록 언록(unlock) 점검, 낸드 블록 록(lock) 점검, 데이터 폴링(polling) 점검, 보호 상태 점검을 위한 선택신호를 출력하는 셀렉터(48)와, 상기 셀렉터(48)의 선택신호에 따라서 상기 상태점검부(46)로부터의 상태신호들과 상기 비교기의 비교신호중 어느 하나를 선택하여 16비트 신호로 만들어 CPU(20)로 전송하는 비교결과래치(48)를 포함하여 구성된다.The FPGAs 40_1 to 40_n include a control decoder 41 for decoding a command signal transmitted from the CPU 41 and transmitting the decoded command signal to an electronic device (semiconductor chip) 50_1 to 50_n; An address latch 42 for latching an address transferred from the CPU 41; A write data latch 43 for latching write data transferred from the CPU 41 in program mode; A comparison data latch 44 for latching comparison data transmitted from the CPU 41 in the verify mode; A read data latch 45 for latching data read from the electronic device (semiconductor chip) 50_1 to 50_n; A state check unit 46 for checking a state of the electronic device (semiconductor chip) 50_1 to 50_n; A comparator (47) for comparing the data latched in the comparison data latch (44) with the data latched in the read data latch (45) during verification; 16-bit data comparison according to the signal from the CPU 20, readiness (RYBY) pin check of the semiconductor chip, read controller status check (bit 14), read controller status check (bit 10), NAND block unlock A selector 48 for outputting a selection signal for inspection, NAND block lock inspection, data polling inspection, protection state inspection, and the state inspection unit 46 according to the selection signal of the selector 48; And a comparison result latch 48 which selects any one of the state signals from the comparator and the comparison signal of the comparator and converts the signal into a 16-bit signal.

도 3은 도 2에 도시한 본 발명의 요구 상세 구성도이다. 동 도면에서, 상태점검부(46)는 보호상태를 점검하기 위하여 비교데이터래치(44)의 비트0과 읽기데이터래치(45)의 비트0을 배타적 논리합연산하여 출력하는 배터적논리합게이트(A)와, 데이터 폴링 점검을 위하여 비교데이터래치(44)의 비트7과 읽기데이터래치(45)의 비트7을 배타적 논리합연산하여 출력하는 배터적논리합게이트(B)와, 낸드(NAND)블 록 록(lock) 상태를 점점하기 위하여 비교데이터래치(44)의 비트1과 읽기데이터래치(45)의 비트1을 배타적 논리합연산하여 출력하는 배터적논리합게이트(C)와, 낸드블록 언록(unlock) 상태를 점검하기 위하여 비교데이터래치(44)의 비트2와 읽기데이터래치(45)의 비트2를 배타적 논리합연산하여 출력하는 배터적논리합게이트(D)와, 읽기제어기 상태를 점검하기 위하여 비교데이터래치(44)의 비트10과 읽기데이터래치(45)의 비트10을 배타적 논리합연산하여 출력하는 배터적논리합게이트(E)와, 읽기제어기 상태를 점검하기 위하여 비교데이터래치(44)의 비트14와 읽기데이터래치(45)의 비트14를 배타적 논리합연산하여 출력하는 배터적논리합게이트(F)와, 반도체 칩의 레디비지(RYBY) 핀 점검을 위한 단자(G)를 포함한다. 여기서, 배터적논리합게이트(E)와 배터적논리합게이트(F)는 프로그램 대상인 전자장치(반도체칩)의 유형에 따라서 읽기제어기 상태를 점검하기 위한 비트가 상이하기 때문에 2개 설치되어 있는 것이다.FIG. 3 is a detailed configuration diagram of the present invention shown in FIG. 2. In the same figure, the state checking unit 46 performs exclusive logical sum operation on bit 0 of the comparison data latch 44 and bit 0 of the read data latch 45 to output the exclusive logical sum gate A to check the protection state. And a batter logic gate (B) for performing exclusive logic operation on the bit 7 of the comparison data latch 44 and the bit 7 of the read data latch 45 to output the data polling check, and a NAND block ( In order to increase the lock state, the exclusive logical sum gate C outputting the exclusive logical operation of bit 1 of the comparison data latch 44 and bit 1 of the read data latch 45 and outputting the NAND block unlock state is performed. A batter logic gate (D) for performing exclusive logic operation on the bit 2 of the comparison data latch 44 and the bit 2 of the read data latch 45 for output, and the comparison data latch 44 for checking the state of the read controller. Bit 10) and read data latch 45 The exclusive logic sum gate (E) for outputting the exclusive logical sum operation of bit 10 and the output of the exclusive logical sum operation of bit 14 of the comparison data latch 44 and bit 14 of the read data latch 45 to check the read controller state. And a terminal G for checking the ready-use RYBY pin of the semiconductor chip. Here, two logic logic gates (E) and two battery logic gates (F) are provided because the bits for checking the read controller state differ depending on the type of electronic device (semiconductor chip) to be programmed.

상기 셀렉터(48)는 CPU(20)의 명령에 따라서 다음과 같이 출력이 설정된다. 즉,The selector 48 has an output set as follows in accordance with a command of the CPU 20. In other words,

S2 S1 S0S2 S1 S0 EE 설명Explanation 0 0 00 0 0 1One 6비트 데이터 비교 6-bit data comparison 0 0 10 0 1 1One 반도체 칩 레디비지 핀 점검 Semiconductor chip ready pin check 0 1 00 1 0 1One 읽기 제어기 상태 점검(비트 14) Check Read Controller Status (bit 14) 0 1 10 1 1 1One 읽기 제어기 상태 점검(비트 10) Check Read Controller Status (bit 10) 1 0 01 0 0 1One 낸드 블록 언록(unlock) 점검 NAND block unlock check 1 0 11 0 1 1One 낸드 블록 록(lock) 점검 NAND block lock check 1 1 01 1 0 1One 데이터 폴링(polling) 점검 Check data polling 1 1 11 1 1 1One 보호 상태 점검 Check protection status

상기 비교결과래치(48)는 "S2,S1,S0,E"가 "0,0,0,1"인 경우 비교기(47)의 출력을 도 4에 도시한 바와 같이 자신에 할당된 비트(예를 들면 첫번째 FPGA의 경 우에는 비트 0, 두번째 FPGA의 경우 비트 2, ..., 16번째 FPGA의 경우 비트 15)에 표시하고 나머지 비트들을 모두 하이 임피던스 값을 채운 16비트 값을 CPU(20)으로 전달한다.When the comparison result latch 48 is " S2, S1, S0, E " is " 0, 0, 0, 1 ", the bit allocated to itself as shown in FIG. For example, bit 20 for the first FPGA, bit 2 for the second FPGA, bit 15 for the 16th FPGA, and bit 15 for the 16th FPGA, and the 16-bit value with the remaining high-impedance values filled in the CPU 20. To pass.

또, 상기 비교결과래치(48)는 "S2,S1,S0,E"가 "0,0,1,1"인 경우 단자(G)의 값을 도 4에 도시한 바와 같이 자신에 할당된 비트에 표시하고 나머지 비트들을 모두 하이 임피던스 값을 채운 16비트 값을 CPU(20)으로 전달한다.In addition, the comparison result latch 48 is a bit allocated to itself as shown in Figure 4 when the value of the terminal (G) when "S2, S1, S0, E" is "0, 0, 1, 1" It transmits to the CPU 20 a 16-bit value indicated by and filled in the high impedance value with all remaining bits.

또한, 상기 비교결과래치(48)는 "S2,S1,S0,E"가 "0,1,0,1"인 경우 배타적논리합게이트(F)의 출력값을 도 4에 도시한 바와 같이 자신에 할당된 비트에 표시하고 나머지 비트들을 모두 하이 임피던스 값을 채운 16비트 값을 CPU(20)으로 전달한다.Further, the comparison result latch 48 assigns the output value of the exclusive logic gate F to itself as shown in FIG. 4 when "S2, S1, S0, E" is "0, 1, 0, 1". The 16-bit value is displayed to the CPU 20 and the remaining bits are filled with the high impedance value.

또, 상기 비교결과래치(48)는 "S2,S1,S0,E"가 "0,1,1,1"인 경우 배타적논리합게이트(E)의 출력값을 도 4에 도시한 바와 같이 자신에 할당된 비트에 표시하고 나머지 비트들을 모두 하이 임피던스 값을 채운 16비트 값을 CPU(20)으로 전달한다.The comparison result latch 48 assigns the output value of the exclusive logic gate E to itself as shown in FIG. 4 when " S2, S1, S0, E " is " 0, 1, 1, 1 ". The 16-bit value is displayed to the CPU 20 and the remaining bits are filled with the high impedance value.

또한, 상기 비교결과래치(48)는 "S2,S1,S0,E"가 "1,0,0,1"인 경우 배타적논리합게이트(D)의 출력값을 도 4에 도시한 바와 같이 자신에 할당된 비트에 표시하고 나머지 비트들을 모두 하이 임피던스 값을 채운 16비트 값을 CPU(20)으로 전달한다.Also, the comparison result latch 48 assigns the output value of the exclusive logical gate D to itself as shown in FIG. 4 when "S2, S1, S0, E" is "1, 0, 0, 1". The 16-bit value is displayed to the CPU 20 and the remaining bits are filled with the high impedance value.

또, 상기 비교결과래치(48)는 "S2,S1,S0,E"가 "1,0,1,1"인 경우 배타적논리합게이트(C)의 출력값을 도 4에 도시한 바와 같이 자신에 할당된 비트에 표시하고 나머지 비트들을 모두 하이 임피던스 값을 채운 16비트 값을 CPU(20)으로 전달한다.The comparison result latch 48 assigns the output value of the exclusive logic gate C to itself as shown in FIG. 4 when " S2, S1, S0, E " is " 1, 0, 1, 1 ". The 16-bit value is displayed to the CPU 20 and the remaining bits are filled with the high impedance value.

또한, 상기 비교결과래치(48)는 "S2,S1,S0,E"가 "1,1,0,1"인 경우 배타적논리합게이트(B)의 출력값을 도 4에 도시한 바와 같이 자신에 할당된 비트에 표시하고 나머지 비트들을 모두 하이 임피던스 값을 채운 16비트 값을 CPU(20)으로 전달한다.Further, the comparison result latch 48 assigns the output value of the exclusive logic gate B to itself as shown in FIG. 4 when "S2, S1, S0, E" is "1, 1, 0, 1". The 16-bit value is displayed to the CPU 20 and the remaining bits are filled with the high impedance value.

또, 상기 비교결과래치(48)는 "S2,S1,S0,E"가 "1,1,1,1"인 경우 배타적논리합게이트(A)의 출력값을 도 4에 도시한 바와 같이 자신에 할당된 비트에 표시하고 나머지 비트들을 모두 하이 임피던스 값을 채운 16비트 값을 CPU(20)으로 전달한다.The comparison result latch 48 assigns the output value of the exclusive logic gate A to itself when " S2, S1, S0, E " is " 1, 1, 1, 1 " The 16-bit value is displayed to the CPU 20 and the remaining bits are filled with the high impedance value.

다음으로, 상기와 같이 구성된 본 발명에 따른 장치의 동작에 대하여 설명한다.Next, the operation of the apparatus according to the present invention configured as described above will be described.

먼저, 전자장치(반도체 칩)에 데이터를 프로그램(기록)하는 과정은 다음과 같다.First, a process of programming (writing) data in an electronic device (semiconductor chip) is as follows.

즉, 모드 설정부(30)에 프로그램모드가 설정되면 CPU(20)는 제어디코드부(41)로 기록명령을 출력하여 반도체칩(50_1~50_n)에 기록명령을 통지한다. That is, when the program mode is set in the mode setting section 30, the CPU 20 outputs a write command to the control decoding section 41 to notify the semiconductor chips 50_1 to 50_n.

그후, CPU(20)는 버퍼메모리(10)에서 유효 데이터를 16비트 단위로 읽어와서 기록데이터래치(43)에 래치시킴과 동시에 어드레스래치(42)에 반도체칩(50_1~ 50_n)의 기록 어드레스를 래치시킨다.Thereafter, the CPU 20 reads the valid data from the buffer memory 10 in units of 16 bits, latches the write data latch 43, and simultaneously writes the write addresses of the semiconductor chips 50_1 to 50_n to the address latch 42. Latch it.

이어, 반도체칩(50_1~50_n)을 폴링(polling)하고 상태점검부(46)에서 반도체 칩(50_1~50_n)의 기록준비가 되어 있는 것으로 확인되면 상기 기록데이터래치(43)에 래치된 데이터가 반도체칩(50_1~50_n)에 기록된다. Subsequently, when the semiconductor chips 50_1 to 50_n are polled and the state check unit 46 confirms that the semiconductor chips 50_1 to 50_n are ready to be written, the data latched to the write data latch 43 is stored. Written in the semiconductor chips 50_1 to 50_n.

이어서, 어드레스를 증가시키고 상기한 과정을 마지막 어드레스까지 반복하여 반도체칩(50_1~50_n)에의 데이터기록(프로그램)을 완료한다.Subsequently, the address is increased and the above process is repeated to the last address to complete data writing (program) to the semiconductor chips 50_1 to 50_n.

한편, 상기한 과정에서 반도체칩(50_1~50_n)의 폴링 후에 상태점검부(46)에서 반도체칩들 중에서 기록준비가 되어 있는 지의 여부는 도 4와 같은 포맷으로 CPU(20)에 전달된다. 이때, 16비트 중에서 자신의 상태를 표시하는 비트가 예를 들면 "0"(기록에 이상이 있는 상태)으로 되어 있는 경우가 발생하면 CPU(20)는 해당하는 FPGA에 속하는 반도체 칩의 프로그램과정을 에러처리하고 나머지 반도체칩에만 프로그램하도록 한다.On the other hand, after the polling of the semiconductor chips 50_1 to 50_n in the above-described process, whether or not the state checking unit 46 is ready to write among the semiconductor chips is transmitted to the CPU 20 in the format as shown in FIG. 4. At this time, if a bit indicating its state among the 16 bits is, for example, " 0 " (the state in which there is an error in writing), the CPU 20 executes the programming process of the semiconductor chip belonging to the corresponding FPGA. Error handling and program only the remaining semiconductor chip.

다음으로, 전자장치(반도체 칩)에 기록된 데이터를 소거하는 과정(섹터 소거과정)은 다음과 같다.Next, a process of erasing data recorded in the electronic device (semiconductor chip) (sector erasing process) is as follows.

모드 설정부(30)에 소거모드가 설정되면 CPU(20)는 제어디코드부(41)로 소거명령을 출력하여 반도체칩(50_1~50_n)에 소거명령을 통지한다. When the erase mode is set in the mode setting unit 30, the CPU 20 outputs an erase command to the control decoder 41 to notify the semiconductor chip 50_1 to 50_n of the erase command.

그후, CPU(20)는 어드레스래치(42)에 반도체칩(50_1~ 50_n)의 소거 섹터 어드레스를 래치시킨다.Thereafter, the CPU 20 latches the erase sector address of the semiconductor chips 50_1 to 50_n in the address latch 42.

이어, 반도체칩(50_1~50_n)을 폴링(polling)하고 상태점검부(46)에서 반도체칩(50_1~50_n)의 소거준비가 되어 있는 것으로 확인되면 약 50μs가 지나면 한 섹터가 지워 진다.Subsequently, when the semiconductor chips 50_1 to 50_n are polled and the state check unit 46 confirms that the semiconductor chips 50_1 to 50_n are ready to be erased, one sector is deleted after about 50 μs.

이어서, 섹터 어드레스를 증가시키고 상기한 과정을 소거될 마지막 섹터 어 드레스까지 반복하여 반도체칩(50_1~50_n)에의 데이터 소거를 완료한다.Subsequently, the sector address is increased and the above process is repeated until the last sector address to be erased, thereby completing data erasing to the semiconductor chips 50_1 to 50_n.

한편, 상기한 과정에서 반도체칩(50_1~50_n)의 폴링 후에 상태점검부(46)에서 반도체칩들 중에서 소거준비가 되어 있는지의 여부는 도 4와 같은 포맷으로 CPU(20)에 전달된다. 이때, 16비트 중에서 자신의 상태를 표시하는 비트가 예를 들면 "0"(소거에 이상이 있는 상태)으로 되어 있는 경우가 발생하면 CPU(20)는 해당하는 FPGA에 속하는 반도체 칩의 소거과정을 에러처리하고 나머지 반도체칩에만 소거과정을 지속하도록 한다.On the other hand, after the polling of the semiconductor chips 50_1 to 50_n in the above-described process, whether or not the erase is ready among the semiconductor chips is transmitted to the CPU 20 in the format as shown in FIG. 4. At this time, if a bit indicating its state among the 16 bits is, for example, " 0 " (an abnormal state in the erase), the CPU 20 performs an erase process of the semiconductor chip belonging to the corresponding FPGA. Error handling is performed and the erase process is continued only to the remaining semiconductor chips.

다음으로, 전자장치(반도체 칩)에 프로그램(기록)된 데이터를 검증하는 과정은 다음과 같다.Next, a process of verifying data programmed (recorded) in the electronic device (semiconductor chip) is as follows.

즉, 모드 설정부(30)에 프로그램(기록)된 데이터에 대한 검증모드가 설정되면 CPU(20)는 버퍼메모리(10)에서 데이터를 16비트 단위로 읽어와서 비교데이터래치(44)에 래치시킴과 동시에 어드레스래치(42)에 반도체칩(50_1~ 50_n)의 읽기어드레스를 래치시킨다.That is, when the verification mode for the data (programmed) programmed in the mode setting unit 30 is set, the CPU 20 reads data from the buffer memory 10 in units of 16 bits and latches the data in the comparison data latch 44. At the same time, the address latch 42 latches the read addresses of the semiconductor chips 50_1 to 50_n.

이어, 반도체칩(50_1~50_n)에서 해당하는 어드레스에서 읽어온 16비트 데이터가 읽기데이터래치(45)에 래치된다.Subsequently, 16-bit data read from the corresponding address in the semiconductor chips 50_1 to 50_n is latched in the read data latch 45.

그후, 비교기(47)에서 상기 비교데이터래치(44)에 래치된 데이터와 상기 읽기데이터래치(45)에 래치된 데이터를 비트단위로 비교하여 그 비교결과를 비교결과래치(48)로 출력한다.Thereafter, the comparator 47 compares the data latched in the comparison data latch 44 and the data latched in the read data latch 45 in units of bits and outputs the comparison result to the comparison result latch 48.

이어서, 어드레스를 증가시키고 상기한 과정을 마지막 어드레스까지 반복하여 반도체칩(50_1~50_n)에의 기록데이터에 대한 검증을 완료한다.Subsequently, the address is increased and the above process is repeated to the last address to complete verification of the write data to the semiconductor chips 50_1 to 50_n.

한편, 상기한 과정에서 반도체칩(50_1~50_n)의 비교기(47)에 의한 비교결과는 비교결과래치(48)를 통하여 도 4와 같은 포맷으로 CPU(20)에 전달된다. 이때, 16비트 중에서 자신의 비교결과상태를 표시하는 비트가 예를 들면 "0"(즉, 비교결과 일치하지 않는 상태)으로 되어 있는 경우가 발생하면 CPU(20)는 해당하는 FPGA에 속하는 반도체 칩의 검증과정을 에러처리하고 나머지 반도체칩에만 검증과정을 지속하도록 한다.Meanwhile, in the above process, the comparison result by the comparator 47 of the semiconductor chips 50_1 to 50_n is transmitted to the CPU 20 in the format as shown in FIG. 4 through the comparison result latch 48. At this time, if a bit indicating its comparison result state among the 16 bits is, for example, "0" (that is, a state in which the comparison result does not match) occurs, the CPU 20 determines that the semiconductor chip belongs to the corresponding FPGA. Error verification process and continue the verification process only for the remaining semiconductor chips.

한편, 본 발명은 상기한 특정 실시예에 한정되는 것이 아니라 본 발명의 요지를 벗어나지 않는 범위 내에서 여러 가지로 변형 및 수정하여 실시할 수 있는 것이다.On the other hand, the present invention is not limited to the above specific embodiments, but can be modified and modified in various ways without departing from the gist of the present invention.

종래의 방법은 검증 과정에서 반도체 칩에 프로그램(기록)된 데이터를 16비트 단위로 읽어오고 버퍼 메모리의 데이터를 16비트 단위로 CPU를 통하여 읽어와서, 버퍼 메모리의 16비트 데이터를 한번에 1개의 반도체 칩의 16비트 데이터와 비교하고, 다 끝나면 다음 번 반도체 칩으로 넘어가서 수행하고 하는 방식으로 16번 반복하여 그 결과를 사용자에게 알려준다.The conventional method reads data (programmed) written in a semiconductor chip in 16-bit units in the verification process and reads data from the buffer memory through the CPU in 16-bit units, so that 16-bit data in the buffer memory is read at one time. The 16-bit data is compared with the 16-bit data, and when it is finished, the next step is performed to the semiconductor chip and repeated 16 times to inform the user of the result.

그러나 본 발명에 의하면 FPGA를 복수 개(예를 들면 16개) 사용하여 동시에 16개의 반도체 칩의 내용을 비교하여 그 결과를 사용자에게 한번에 알려 준다.However, according to the present invention, a plurality of FPGAs (eg, 16) are used to compare the contents of 16 semiconductor chips at the same time, and the result is notified to the user at once.

따라서, 본 발명은 1세트의 장치(예를 들면 ROM 라이터)에서 1개의 CPU로 복수 개(예를 들면 16개)의 FPGA를 동시에 동작시켜 전자장치(반도체칩)에 대하여 프로그램(기록), 소거 및 검증(verification)을 수행하여 복수 배(예를 들면 16배)의 능률을 올릴 수 있다.Therefore, in the present invention, a plurality of (for example, 16) FPGAs are simultaneously operated by one CPU in one set of devices (for example, a ROM writer) to program (write) and erase the electronic device (semiconductor chip). And verification can be performed to increase the efficiency of multiple times (eg, 16 times).

Claims (7)

프로그램(기록)할 데이터가 저장되는 버퍼 메모리와; 탑재되는 프로그램 대상인 복수 개의 전자장치(반도체 칩)와; 각각의 전자장치에 대응하여 설치되어, 상기 전자장치에 데이터를 프로그램하고 프로그램 결과 데이터를 검증하며 상기 전자장치에 저장된 데이터를 소거하는 기능을 수행하는 복수 개의 FPGA와; 상기 복수의 FPGA를 제어하여 복수 개의 전자장치에 대한 프로그램 과정, 검증과정 및 소거과정을 동시에 수행하도록 총괄하는 CPU를 포함하여 구성되고,A buffer memory in which data to be programmed (written) is stored; A plurality of electronic devices (semiconductor chips) to be mounted on the program; A plurality of FPGAs installed corresponding to each of the electronic devices to perform a function of programming data in the electronic device, verifying program result data, and erasing data stored in the electronic device; It is configured to include a CPU to control the plurality of FPGAs to perform the program process, verification process and erase process for a plurality of electronic devices at the same time 상기 FPGA는 자신에 속하는 전자장치의 상태를 점검하여 그 점검상태를 1비트 데이터로 표현하여 상기 CPU로 전송하며, 자신에 속하는 전자장치에 대한 검증과정에서 상기 버퍼 메모리로부터의 원본 데이터와 상기 전자장치에 프로그램된 데이터의 동일 여부에 대한 비교정보를 1비트 데이터로 표현하여 상기 CPU로 전송하며,The FPGA checks a state of an electronic device belonging to the FPGA and expresses the check state as 1-bit data to the CPU, and the original data from the buffer memory and the electronic device during the verification of the electronic device belonging to the FPGA. Represents the comparison information for the same or not as the data programmed in the 1-bit data and transmits it to the CPU. 상기 CPU는 상기 복수의 FPGA로부터 수신된 1비트의 점검상태정보 또는 비교정보에 근거하여 현재 진행되고 있는 처리에 대한 에러가 발생한 전자장치를 확인하고, 에러가 발생하지 않은 전자장치에 대해서만 현재 진행되고 있는 처리를 지속하도록 제어하는 것을 특징으로 하는 장치.The CPU checks an electronic device having an error for the processing currently being performed based on the 1-bit check state information or the comparison information received from the plurality of FPGAs, and currently proceeds only for the electronic device in which the error has not occurred. And control to continue processing. 제1항에 있어서,The method of claim 1, 상기 FPGA는, 상기 전자장치의 프로그램(기록)모드시에 상기 버퍼메모리로부 터 상기 CPU를 통하여 전달된 소정 비트의 유효 데이터를 기록어드레스와 함께 전달받고 해당 전자장치의 상태를 점검한 후에 해당 유효 데이터를 해당 전자장치의 상기 기록어드레스에 기록하고나서, 기록 어드레스를 증가시켜가면서 반복하여 기록을 수행하는 것을 특징으로 하는 장치.The FPGA receives the valid data of a predetermined bit transmitted from the buffer memory through the CPU in the program (write) mode of the electronic device together with the write address, and checks the state of the electronic device after checking the state of the electronic device. And recording data repeatedly after recording data in the recording address of the electronic device. 제1항에 있어서,The method of claim 1, 상기 FPGA는, 상기 전자장치의 소거 모드시에 상기 CPU에서 전달된 소거 어드레스를 전달받고 해당 전자장치의 상태를 점검한 후에 해당 전자장치의 상기 소거 어드레스를 소거한 후, 소거 어드레스를 증가시켜가면서 반복하여 소거를 수행하는 것을 특징으로 하는 장치.The FPGA, after receiving the erase address transmitted from the CPU in the erase mode of the electronic device and checking the state of the electronic device, erases the erase address of the electronic device, and repeats while increasing the erase address. Performing erasing. 제1항에 있어서,The method of claim 1, 상기 FPGA는, 상기 전자장치의 검증모드시에 상기 버퍼메모리로부터 상기 CPU를 통하여 전달된 소정 비트의 원본 데이터를 읽기어드레스와 함께 전달받고 해당 전자장치의 읽기어드레스에 대응하는 기록데이터를 읽어온 후, 상기 원본데이터와 상기 기록데이터를 비교하고나서, 읽기 어드레스를 증가시켜가면서 반복하여 비교를 수행하는 것을 특징으로 하는 장치.The FPGA receives original data of a predetermined bit transmitted from the buffer memory from the buffer memory with the read address in the verification mode of the electronic device, reads write data corresponding to the read address of the corresponding electronic device, And comparing the original data with the recorded data, and repeatedly performing a comparison while increasing a read address. 제1항 내지 제4항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 4, 상기 FPGA는, 상기 CPU로부터 전달된 어드레스를 래치하는 어드레스래치와;The FPGA includes an address latch for latching an address transferred from the CPU; 상기 CPU로부터 전달된 기록 데이터를 래치하는 기록데이터래치와;A write data latch for latching write data transferred from said CPU; 상기 CPU로부터 검증모드시에 상기 버퍼메모리로부터의 원본데이터인 비교 데이터를 래치하는 비교데이터래치와;A comparison data latch for latching comparison data which is original data from the buffer memory in the verify mode from the CPU; 상기 전자장치에서 읽어온 데이터를 래치하는 읽기데이터래치와;A read data latch for latching data read from the electronic device; 상기 전자장치의 상태의 점검하여 상태점검신호를 출력하는 상태점검부와;A state check unit for checking a state of the electronic device and outputting a state check signal; 검증모드시에 상기 비교데이터래치에 래치된 원본데이터와 읽기데이터래치에 래치된 데이터를 비교하는 비교기와;A comparator for comparing original data latched in the comparison data latch and data latched in a read data latch in a verify mode; 상기 CPU로부터의 신호에 따라서 상기 상태점검부의 상태출력과 상기 비교기의 비교출력중 어느 하나를 선택하기 위한 선택신호를 출력하는 셀렉터와;A selector for outputting a selection signal for selecting any one of a state output of the state checking unit and a comparison output of the comparator in accordance with a signal from the CPU; 상기 셀렉터의 선택신호에 따라서 상기 상태점검부의 상태출력과 상기 비교기의 비교출력중 어느 하나를 출력하는 비교결과래치를 포함하여 구성된 것을 특징으로 하는 장치.And a comparison result latch for outputting any one of a state output of the state check unit and a comparison output of the comparator according to the selection signal of the selector. 제5항에 있어서,The method of claim 5, 상기 상태점검부는, 반도체 칩의 레디비지(RYBY) 핀 점검, 읽기 제어기 상태 점검, 낸드 블록 언록(unlock) 점검, 낸드 블록 록(lock) 점검, 데이터 폴링(polling) 점검, 보호 상태 점검을 수행하는 것을 특징으로 하는 장치.The state checking unit performs a check of the RYBY pin of the semiconductor chip, a read controller state check, a NAND block unlock check, a NAND block lock check, a data polling check, and a protection state check. Device characterized in that. 제5항에 있어서,The method of claim 5, 상기 전자장치는 비휘발성 반도체 메모리장치와 이를 내장하는 반도체장치 중 어느 하나인 것을 특징으로 하는 장치.The electronic device is any one of a nonvolatile semiconductor memory device and a semiconductor device embedded therein.
KR1020060047476A 2006-05-26 2006-05-26 Apparatus and method for programming, erasing and verificating a pluality of electronic devices KR100778459B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060047476A KR100778459B1 (en) 2006-05-26 2006-05-26 Apparatus and method for programming, erasing and verificating a pluality of electronic devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060047476A KR100778459B1 (en) 2006-05-26 2006-05-26 Apparatus and method for programming, erasing and verificating a pluality of electronic devices

Publications (1)

Publication Number Publication Date
KR100778459B1 true KR100778459B1 (en) 2007-11-21

Family

ID=39080463

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060047476A KR100778459B1 (en) 2006-05-26 2006-05-26 Apparatus and method for programming, erasing and verificating a pluality of electronic devices

Country Status (1)

Country Link
KR (1) KR100778459B1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101028594B1 (en) * 2008-12-23 2011-04-13 (주) 컴파스 시스템 Programmer
WO2014130056A1 (en) * 2013-02-21 2014-08-28 Advantest Corporation A test architecture having multiple fpga based hardware accelerator blocks for testing multiple duts independently
US9810729B2 (en) 2013-02-28 2017-11-07 Advantest Corporation Tester with acceleration for packet building within a FPGA block
US9952276B2 (en) 2013-02-21 2018-04-24 Advantest Corporation Tester with mixed protocol engine in a FPGA block
US10161993B2 (en) 2013-02-21 2018-12-25 Advantest Corporation Tester with acceleration on memory and acceleration for automatic pattern generation within a FPGA block
US10288681B2 (en) 2013-02-21 2019-05-14 Advantest Corporation Test architecture with a small form factor test board for rapid prototyping
US10884847B1 (en) 2019-08-20 2021-01-05 Advantest Corporation Fast parallel CRC determination to support SSD testing
US10976361B2 (en) 2018-12-20 2021-04-13 Advantest Corporation Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes
US11137910B2 (en) 2019-03-04 2021-10-05 Advantest Corporation Fast address to sector number/offset translation to support odd sector size testing
US11237202B2 (en) 2019-03-12 2022-02-01 Advantest Corporation Non-standard sector size system support for SSD testing

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990007516U (en) * 1997-07-31 1999-02-25 윤종용 Device for detecting the state of F.P.G.A
KR19990059251A (en) * 1997-12-30 1999-07-26 윤종용 Semiconductor memory device and program / erase verification method thereof
US20030097187A1 (en) * 1997-12-17 2003-05-22 Huppenthal Jon M. Multiprocessor computer architecture incorporating a plurality of memory algorithm processors in the memory subsystem
KR20030096657A (en) * 2002-06-17 2003-12-31 삼성전자주식회사 Computer system test device using FPGA and programmable memory modules and the test method thereof
KR20050063825A (en) * 2003-12-19 2005-06-28 엘지전자 주식회사 Method for remotely updating multi-fpga code of base station manager

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990007516U (en) * 1997-07-31 1999-02-25 윤종용 Device for detecting the state of F.P.G.A
US20030097187A1 (en) * 1997-12-17 2003-05-22 Huppenthal Jon M. Multiprocessor computer architecture incorporating a plurality of memory algorithm processors in the memory subsystem
KR19990059251A (en) * 1997-12-30 1999-07-26 윤종용 Semiconductor memory device and program / erase verification method thereof
KR20030096657A (en) * 2002-06-17 2003-12-31 삼성전자주식회사 Computer system test device using FPGA and programmable memory modules and the test method thereof
KR20050063825A (en) * 2003-12-19 2005-06-28 엘지전자 주식회사 Method for remotely updating multi-fpga code of base station manager

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101028594B1 (en) * 2008-12-23 2011-04-13 (주) 컴파스 시스템 Programmer
US11009550B2 (en) 2013-02-21 2021-05-18 Advantest Corporation Test architecture with an FPGA based test board to simulate a DUT or end-point
WO2014130056A1 (en) * 2013-02-21 2014-08-28 Advantest Corporation A test architecture having multiple fpga based hardware accelerator blocks for testing multiple duts independently
TWI550629B (en) * 2013-02-21 2016-09-21 愛德萬測試股份有限公司 A test architecture having multiple fpga based hardware accelerator blocks for testing multiple duts independently
US9952276B2 (en) 2013-02-21 2018-04-24 Advantest Corporation Tester with mixed protocol engine in a FPGA block
US10161993B2 (en) 2013-02-21 2018-12-25 Advantest Corporation Tester with acceleration on memory and acceleration for automatic pattern generation within a FPGA block
US10162007B2 (en) 2013-02-21 2018-12-25 Advantest Corporation Test architecture having multiple FPGA based hardware accelerator blocks for testing multiple DUTs independently
US10288681B2 (en) 2013-02-21 2019-05-14 Advantest Corporation Test architecture with a small form factor test board for rapid prototyping
US9810729B2 (en) 2013-02-28 2017-11-07 Advantest Corporation Tester with acceleration for packet building within a FPGA block
US10976361B2 (en) 2018-12-20 2021-04-13 Advantest Corporation Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes
US11137910B2 (en) 2019-03-04 2021-10-05 Advantest Corporation Fast address to sector number/offset translation to support odd sector size testing
US11237202B2 (en) 2019-03-12 2022-02-01 Advantest Corporation Non-standard sector size system support for SSD testing
US10884847B1 (en) 2019-08-20 2021-01-05 Advantest Corporation Fast parallel CRC determination to support SSD testing

Similar Documents

Publication Publication Date Title
KR100778459B1 (en) Apparatus and method for programming, erasing and verificating a pluality of electronic devices
US7388782B2 (en) Semiconductor integrated circuit device
US6751122B2 (en) Nonvolatile semiconductor memory device
US7031188B2 (en) Memory system having flash memory where a one-time programmable block is included
US7739560B2 (en) Nonvolatile semiconductor memory device and method of self-testing the same
KR102566994B1 (en) Method for performing multi-chip debugging and multi-chip system adopting the same
US8095834B2 (en) Macro and command execution from memory array
JP2006079811A (en) Semiconductor memory device equipped with parity generator for error detection
KR20090073094A (en) Defective block isolation in a non-volatile memory system
JP6014777B2 (en) Data path consistency verification
CN110838313A (en) Semiconductor memory device and method of operating the same
US9177672B2 (en) Methods of operating memory involving identifiers indicating repair of a memory cell
KR20080084180A (en) Method of auto erasing for flash memory device
US7457167B2 (en) Method for preventing over-erasing of unused column redundant memory cells in a flash memory having single-transistor memory cells
US8924671B2 (en) Semiconductor storage device and control method thereof
KR100634432B1 (en) Nand flash memory device and error detection method detecting error during copy_back program operation
KR20100085657A (en) Non volatile memory device and method of operating the same
TWI753814B (en) Semiconductor storage apparatus and ecc related information reading method
JPH10241377A (en) Non-volatile semiconductor memory
US20210132864A1 (en) Controller, a memory system including the controller, and method of operating the controller
KR20080021397A (en) Flash memory device and program method thereof
KR20170043296A (en) Semiconductor memory device including guarantee blocks and operating method thereof
TWI508078B (en) Semiconductor memory device
CN113012733A (en) Semiconductor memory device and controller
KR20090122686A (en) Programming method of non volatile memory device

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121115

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130903

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140924

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150907

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160906

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170921

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180827

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20191028

Year of fee payment: 13