KR101478907B1 - 신호 처리 회로 및 이를 사용한 시험 장치 - Google Patents

신호 처리 회로 및 이를 사용한 시험 장치 Download PDF

Info

Publication number
KR101478907B1
KR101478907B1 KR1020130052628A KR20130052628A KR101478907B1 KR 101478907 B1 KR101478907 B1 KR 101478907B1 KR 1020130052628 A KR1020130052628 A KR 1020130052628A KR 20130052628 A KR20130052628 A KR 20130052628A KR 101478907 B1 KR101478907 B1 KR 101478907B1
Authority
KR
South Korea
Prior art keywords
memory
data
check
check circuit
built
Prior art date
Application number
KR1020130052628A
Other languages
English (en)
Other versions
KR20130126513A (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 가부시키가이샤 어드밴티스트
Publication of KR20130126513A publication Critical patent/KR20130126513A/ko
Application granted granted Critical
Publication of KR101478907B1 publication Critical patent/KR101478907B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

[과제]
내장형 CPU에 대해 적은 부담으로 메모리 체크를 실행한다.
[해결수단]
메모리 컨트롤러(6)는, 메모리(8)와 접속되고, ECC(Error Check and Correct) 기능을 포함하지 않는다. 내장형 CPU(4)는, 메모리 컨트롤러(6)를 통해 메모리에 액세스 가능하게 접속되어 내장된다. 메모리 체크 회로(10)는, 메모리 컨트롤러(6)를 통해 메모리에 액세스 가능하게 접속되고, 내장형 CPU(4)의 비동작 기간에 메모리(8)에 액세스하고, 메모리(8)에 격납되는 데이터를 체크한다.

Description

신호 처리 회로 및 이를 사용한 시험 장치{SIGNAL PROCESSING CIRCUIT AND TESTING APPARATUS USING THE SAME}
본 발명은 신호 처리 회로에 관한 것이다.
최근, 많은 신호 처리 회로에서, 내장형 프로세서(embedded processor)가 사용되고 있다. 도 1은 본 발명자가 검토한 신호 처리 회로의 제 1의 구성을 나타내는 블록도이다. 신호 처리 회로(1002a)는, 내장형 CPU(Central Processing Unit)(1004), 메모리 컨트롤러(1006) 및 메모리(1008)를 구비한다. 메모리(1008)에는, 내장형 CPU(1004)가 실행되어야 하는 프로그램이 격납된다. 내장형 CPU(1004)는, 메모리(1008)로부터의 명령을 페치(fetch)하고, 명령을 실행하고, 필요에 따라서 그 결과에 따른 데이터를 자신의 캐시 또는 메모리(1008)에 기입한다.
메모리(1008)의 데이터는, 우주선 등의 영향에 의해 의도하지 않게 파괴된다. 이것을 소프트 에러라고 칭한다. 도 1(a)의 메모리 컨트롤러(1006)는, ECC 기능을 포함하지 않는다. 이 경우, 내장형 CPU(1004)는, 메모리(1008)에 격납된 데이터가 파괴된 경우에, 그것을 알아차릴 수 없다. 예컨대, 메모리(1008)에 격납되는 프로그램 영역이 소프트 에러에 의해 파괴된 경우, 내장형 CPU(1004)가 오동작하고, 내장형 CPU(1004)가 생성한 데이터를 파괴한 경우, 틀린 연산 결과를 얻게 된다.
본 문제는, 도 1의 메모리 컨트롤러(1006)에 ECC 기능을 실장함으로써 해결된다. 도 2는, 본 발명자가 검토한 신호 처리 회로의 제 2의 구성을 나타내는 블록도이다. 메모리 컨트롤러(1006)는 ECC 기능을 포함하고 있으며, 그것에 의해 소프트 에러가 검출 및 정정된다. 그 결과, 메모리(1008)의 데이터가 바른 값으로 유지되고, 내장형 CPU(1004)의 오동작을 방지할 수 있다.
하지만, ECC 처리를 효율 좋게 진행하기 위해서는, 시스템(1002b) 전체가 당초의 기능을 실현하기 위해 필요한 데이터 영역에 더하여, ECC 처리를 위한 부가적인 데이터 영역이 필요하게 된다. 일반적으로는, 내장형 CPU를 사용하는 시스템에는, 저비용(low cost)화가 요구되는 경우가 많지만, ECC 기능을 실장하면 메모리(1008)의 용량 및/또는 매수가 ECC 처리를 진행하지 않는 도 1의 구성에 비해서 증대하고, 비용 증가(cost up)로 연결된다. 구체적으로는 메모리의 매수의 증대에 의해, 그들이 실장되는 프린트 기판의 면적이 증가하고, 또, 핀 수가 증대하기 때문에 인터페이스 회로의 비용이 증대한다.
그리고 ECC 기능을 이용하면, 내장용 CPU(1004)가 메모리(1008)에 액세스 할때마다 ECC 처리를 위한 부가적인 메모리 액세스가 발생하는 것, 그것에 동반하여 메모리 컨트롤러(1006) 내에서 패스·페일(pass·fail) 판정이 진행되는 것에 의해, 내장용 CPU(1004)의 1회의 버스 액세스 당 레이턴시(latency)가 증대한다. 일반적으로 내장용 CPU는, 고성능 CPU에 비해 단위 시간당 처리 능력이 부족하고, 따라서 퍼포먼스와의 트레이드오프(trade off)로 ECC 기능을 사용하게 된다.
본 발명은 이와 같은 상황에 비추어 이루어진 것이고, 그 일 양태의 예시적인 목적 중 하나는, 내장용 CPU에 대해 적은 부담으로 메모리 체크를 실행 가능한 신호 처리 회로의 제공에 있다.
본 발명의 일 양태는, 신호 처리 회로에 관한 것이다. 신호 처리 회로는, 메모리와, 메모리와 접속되고, ECC(Error Check and Correct) 기능을 포함하지 않는 메모리 컨트롤러와, 메모리 컨트롤러를 통해 메모리에 액세스 가능하게 접속되는 내장형 프로세서와, 메모리 컨트롤러를 통해 메모리에 액세스 가능하게 접속되고, 내장형 프로세서의 비동작 기간에 메모리에 액세스하고, 메모리에 격납되는 데이터를 체크하는 메모리 체크 회로를 구비한다.
본 양태에 의하면, 내장형 프로세서가 동작하지 않을 때, 바꾸어 말하면 내장형 프로세서에 의한 메모리 액세스가 발생하지 않는 기간에 메모리 체크를 진행하기 때문에, 내장형 프로세서의 메모리 액세스시의 레이턴시를 단축할 수 있고, 내장형 프로세서에 대한 부담을 줄일 수 있다. 본 명세서에서, 내장형 프로세서란, 내장형 CPU(Central Processing Unit), 내장형 MPU(Micro Processing Unit), FPGA(Field Programmable Gate Array) 내장의 프로세서 등, 이러한 종류의 프로세서를 말한다.
내장형 프로세서는, 동작 기간이나 비동작 기간을 나타내는 제어 신호를 메모리 체크 회로에 출력해도 좋다. 이 경우, 메모리 체크 회로는, 프로세서로부터의 제어 신호에 근거하여, 메모리 체크를 실행할 수 있다.
메모리 체크 회로는, 메모리에 격납되는 체크 대상의 데이터에 소정의 연산 처리를 시행하는 것에 의해 기대값를 생성하는 스텝과, 소정의 체크 사이클마다 메모리에 격납되는 데이터에 소정의 연산 처리를 시행하는 것에 의해 평가값를 생성하고, 평가값를 기대값와 비교하는 스텝을 내장형 프로세서의 비동작 기간에서 실행해도 좋다.
메모리 체크 회로는, 기대값를 메모리에 기입해도 좋다.
다른 양태에 있어서, 메모리 체크 회로는 기대값을 메모리와는 별도로 마련된 레지스터에 기입해도 좋다. 이 경우, 메모리 체크에 따른 메모리 액세스를 줄일 수 있다.
메모리 체크 회로가 체크 대상으로 하는 데이터 영역은, 설정 가능이어도 좋다. 이것에 의해, 여러 가지 시스템에 대응할 수 있다.
체크 사이클을 설정 가능이어도 좋다. 체크 사이클을 짧게 하면, 신뢰성을 높일 수 있고, 체크 사이클을 길게 하면, 메모리 체크로 나눠지는 리소스를 억제할 수 있다.
기대값 및 평가값는, 체크 대상의 데이터의 비트의 합이어도 좋다. 이 경우, 기대값를 격납하기 위해 필요한 기억 영역의 사이즈를 작게 할 수 있다.
기대값 및 평가값는, 체크 대상의 데이터 자체이어도 좋다. 이 경우, 비트마다 대비가 가능하게 되기 때문에, 정확한 에러 체크가 가능하게 된다.
체크 대상의 데이터의 값이 고정적인 경우, 메모리 체크 회로는 메모리에 최초로 데이터가 기입된 후에 1회, 기대값를 생성해도 좋다.
메모리 체크 회로는, 메모리에 격납된 데이터에 에러가 검출되었을 때, 메모리에 격납된 데이터를 바른 값으로 정정 가능하게 구성되어도 좋다.
메모리 컨트롤러를 통해 메모리에 액세스 가능하게 접속되고, 내장형 프로세서가 실행되어야 하는 프로그램을 메모리에 기입하는 호스트 프로세서를 더 구비해도 좋다. 호스트 프로세서는, 메모리 체크 회로에 의해 에러가 검출되면, 프로그램을 메모리에 다시 기입해도 좋다.
이것에 의해, 메모리의 콘텐츠를 정상적인 상태로 유지할 수 있다.
본 발명의 다른 양태는, 반도체 디바이스의 시험 장치에 관한 것이다. 시험 장치는, 상술한 어느 하나의 양태의 신호 처리 회로를 구비한다. 이것에 의하면, 내장형 프로세서의 오동작이 억제되기 때문에, 디바이스의 정확한 검사가 가능해진다.
또한, 이와 같은 구성 요소의 임의의 조합이나, 본 발명의 구성 요소나 표현을 방법, 장치, 시스템 등의 사이에서 상호 치환한 것도 또한, 본 발명의 양태로서 유효하다.
본 발명의 일 양태에 의하면, 내장형 프로세서에 대해 저부담이고, 또한, 저비용인 신호 처리 회로를 실현할 수 있다.
도 1은 본 발명자가 검토한 신호 처리 회로의 제 1의 구성을 나타내는 블록도이다.
도 2는 본 발명자가 검토한 신호 처리 회로의 제 2의 구성을 나타내는 블록도이다.
도 3은 실시형태에 관한 신호 처리 회로의 구성을 나타내는 블록도이다.
도 4는 메모리 체크 회로에 의한 메모리 체크 처리를 나타내는 플로 차트이다.
도 5의 도 5(a)~(c)는, 기대값의 생성에 관한 메모리의 상태 천이를 나타내는 도면이다.
도 6은 메모리 체크 회로에 의한 메모리 체크 동작을 나타내는 타임 차트이다.
도 7은 제 2의 변형예에 관한 신호 처리 회로의 구성을 나타내는 블록도이다.
이하, 본 발명을 호적한 실시형태를 근거로 도면을 참조하여 설명한다. 각 도면에 나와 있는 동일 또는 동등한 구성 요소, 부재, 처리에는, 동일한 부호를 붙이는 것으로 하고, 적당히 중복된 설명은 생략한다. 또, 실시형태는, 발명을 한정하는 것이 아닌 예시이고, 실시형태에 기술되는 모든 특징이나 그 조합은, 반드시 발명의 본질적인 것이라고는 할 수 없다.
도 3은, 실시형태에 관한 신호 처리 회로(2)의 구성을 나타내는 블록도이다. 신호 처리 회로(2)는, 내장형 CPU(4), 메모리 컨트롤러(6), 메모리(8), 메모리 체크 회로(10)를 구비한다. 내장형 CPU(4), 메모리 컨트롤러(6), 메모리 체크 회로(10)의 일부 또는 전부는, 하나의 반도체 칩 또는 모듈에 집적화되어도 좋다.
메모리(8)는, 내장형 CPU(4)가 실행되는 프로그램이나, 내장형 CPU(4)의 데이터 처리에 의해 생성되는 중간적인 데이터 등이 격납된다. 또, 메모리(6)에는 후술하는 메모리 칩 회로(10)에 의해 생성되는 기대값도 격납된다.
메모리 컨트롤러(6)는 메모리(8)와 접속된다. 메모리 컨트롤러(6)는 메모리(8) 이외의 회로와 메모리(8)와의 인터페이스 회로이다. 본 실시형태에서, 메모리 컨트롤러(6)는 ECC(Error Check and Correct) 기능을 포함하지 않는다.
내장형 CPU(4)는, 메모리 컨트롤러(6)를 통해 메모리(8)에 액세스 가능하게 접속된다. 내장형 CPU(4)는 메모리(8)에 격납된 프로그램을 읽고, 그것을 실행한다. 또, 내장형 CPU(4)는 필요에 따라서 중간적으로 생성되는 데이터를 메모리(8)에 격납한다. 구체적으로는, 내장형 CPU(4)가 실행되는 프로그램은, 메모리(8)의 고정 영역에 격납되고, 내장형 CPU(4)에 의해 값을 고쳐 쓸 수 있는 데이터는, 메모리(8)의 변동 영역에 격납된다.
메모리 체크 회로(10)는, 내장형 CPU(4)와 동일하게 메모리 컨트롤러(6)를 통해 메모리(8)에 액세스 가능하게 접속된다. 메모리 체크 회로(10)는, 내장형 CPU(4)의 비동작 기간에서 메모리(8)에 액세스하고, 메모리(8)에 격납되는 데이터를 체크한다. 메모리 체크 회로(10)는, 에러를 검출하면 그것을 내장형 CPU(4) 또는 외부의 유닛에 통지하는 개입 신호(SERR)를 어서트(assert)한다.
내장형 CPU(4)는, 시분할적으로 동작 기간과 비동작 기간을 반복하고 있으며, 지금 현재, 동작 기간이나 비동작 기간을 나타내는 제어 신호(CMT)를 메모리 칩 회로(10)에 출력한다. 동작 기간이란, 내장형 CPU(4)가 프로그램의 명령을 실행중이며, 메모리 액세스가 발생할 수 있는 기간이다. 또, 비동작 기간이란, 내장형 CPU(4)가 프로그램의 실행을 멈추고 있으며, 따라서 메모리 액세스가 발생할 수 없는 기간이고, 외부로부터의 지시를 대기하고 있는 유휴(idle) 상태에 상당한다.
이하 메모리 체크 회로(10)에 의한 구체적인 메모리 체크의 처리에 대해 설명한다. 도 4는, 메모리 체크 회로(10)에 의한 메모리 체크 처리를 나타내는 플로 차트이다.
신호 처리 회로(2)가 기동하면, 메모리(8)의 일 영역에 내장형 CPU(4)가 실행되어야 하는 프로그램이 로드되고, 또 내장형 CPU(4)가 이용 가능한 데이터 영역이 확보된다(S100).
그리고 메모리(8)에 격납되는 데이터 중, 메모리 체크 회로(10)에 의한 체크의 대상 영역이 지정된다(S102). 체크 대상의 영역, 구체적으로 그 개수나 범위는 외부에서 임의로 설정 가능하게 되어 있고, 메모리(8)에 로드되는 프로그램이나 데이터의 종류에 의해 적당히 변경된다.
또한, 제어 신호(CNT)에 근거하여, 내장형 CPU(4)가 동작 기간인지 비동작 기간인지가 판정된다(S104). 그리고 동작 기간이라면(S104의 예), 대기한다. 내장형 CPU(4)가 비동작 기간이라면(S104의 아니오), 메모리 체크 회로(10)는, 체크 대상의 영역의 데이터를 읽고, 읽은 데이터에 소정의 연산 처리를 시행하는 것에 의해 기대값을 생성한다(S106). 기대값은, 메모리(8)에 최초로 데이터가 기입된 후에 1회 생성되고, 그 후는 단속적으로 같은 값이 사용된다.
기대값의 생성 방법은 특히 한정되는 것이 아니다. 예컨대, 메모리 체크 회로(10)는, 체크 대상의 데이터에 포함되는 비트를 모두 가산하고, 그들의 합을 기대값으로 해도 좋다. 생성된 기대값은, 메모리(8)에 기입된다.
이어서, 제어 신호(CNT)에 근거하여, 내장형 CPU(4)가 동작 기간인지 비동작 기간인지가 판정된다(S108). 그리고 동작 기간이라면(S108의 예), 대기한다. 내장형 CPU(4)가 비동작 기간이라면(S108의 아니오), 메모리 체크 회로(10)는 체크 대상의 영역의 데이터를 읽고, 읽은 데이터에 기대값을 생성했을 때와 같은 연산 처리를 시행하는 것에 의해 평가값을 생성한다(S110).
이어서, 메모리 체크 회로(10)는, 평가값을 기대값과 비교한다(S112). 메모리(8)의 데이터가 파괴되어 있지 않다면, 기대값과 평가값은 일치할 것이다. 기대값과 평가값이 일치되어 있다면(S112의 예), 처리(S108)로 되돌아 간다. 기대값과 평가값이 일치하지 않는 경우(S112의 아니오), 에러가 검출된다(S114). 에러가 검출된 취지가, 내장형 CPU(4) 및/또는 다른 유닛에 통지되고, 필요한 처리가 진행된다.
또, 메모리 체크 회로(10)에 의한 메모리 체크의 도중, 구체적으로는 처리(S110나 S112)하는 도중, 내장형 CPU(4)의 동작 상태의 플래그가 서는 경우에는, 그 시점에서 메모리 체크 회로(10)는 그 처리를 일단 중지하고, 비동작 상태의 플래그가 설 때까지 대기한다. 그 후, 비동작 상태의 플래그가 서면, 메모리 체크 회로(10)는, 중단한 처리를 재개한다.
메모리 체크 회로(10)는, 소정의 체크 사이클마다 평가값을 생성하고, 기대값과 비교한다. 체크 사이클의 길이는 신호 처리 회로(2)의 설계자가 임의로 설정 가능하다.
이상이 신호 처리 회로(2)의 구성이다. 이어서 그 동작을 설명한다.
도 5(a)~(c)는, 기대값의 생성에 관한 메모리(8)의 상태 천이를 나타내는 도면이다. 신호 처리 회로(2)의 기동 직 후, 도 5(a)에 나와 있는 바와 같이 메모리(8)는 비어있다. 도 5(b)는 메모리(8)에 프로그램이 로드된 상태를 나타낸다. 이 예에서는, 선두의 1 워드가 값 변동 영역이고, 이어서 연속되는 128 워드가 값 고정 영역으로 되어 있다.
이어서 메모리 체크 회로(10)가 체크 대상이 되는 데이터 영역이 지정된다. 데이터 영역의 개수 및 각 데이터, 데이터의 길이(워드 수)는 임의로 설정할 수 있게 되어 있다. 이 예에서는, 128 워드의 값 변동 영역이 선두의 64 워드와 그것에 이어지는 64 워드에 분할되고, 각각 데이터 영역(A), 데이터 영역(B)으로 설정된다. 이어서 각 데이터 영역(A, B)마다 기대값이 생성되고, 도 5(c)에 나와 있는 바와 같이 메모리(8)의 일부에 격납된다.
그 후, 메모리 체크 회로(10)는, 도 4의 처리(S110, S112)를 소정의 체크 사이클마다 반복하여 실행하고, 데이터 영역(A), 데이터 영역(B) 각각의 에러의 유무를 검출한다.
도 6은, 메모리 체크 회로(10)에 의한 메모리 체크 동작(S110, S112)을 나타내는 타임 차트이다. 제어 신호(CNT)는 하이 레벨(high level)이 내장형 CPU(4)의 동작 상태에 대응하고, 로 레벨(low level)이 비동작 상태에 대응한다. 또, 메모리 체크의 하이 레벨은, 메모리 체크 처리(S110, S112)가 진행되고 있는 상태를 나타낸다. 도 6에 나와 있는 바와 같이, 기대값이 생성된 후에는, 내장형 CPU(4)의 비동작 기간에서, 소정의 체크 사이클(Tp)마다 메모리 체크가 진행된다. 내장형 CPU(4)의 동작 기간 중에는, 메모리 체크는 진행되지 않는다.
이상 신호 처리 회로(2)의 동작이다. 이어서 그 이점을 설명한다.
도 2에 나와 있는 아키텍처에는, 내장형 CPU(4)에 의한 메모리 액세스시에, 리얼타임 다이렉트에 에러 검출, 정정을 진행하는 것이었다. 이것에 대해, 실시형태에 관한 신호 처리 회로(2)에는, 메모리 체크 회로(10)에 의한 메모리 체크는 내장형 CPU(4)가 동작하지 않을 때, 바꾸어 말하면 내장형 CPU(4)에 따른 메모리 액세스가 발생하지 않는 기간에 집중적으로 진행된다. 이 점에 있어서, 신호 처리 회로(2)는, 비다이렉트의 메모리 체크를 진행하고 있다고 말할 수 있다. 그 결과, 내장형 CPU(4)의 메모리 액세스시에는, 메모리 체크에 관련된 데이터 액세스가 발생하지 않기 때문에 레이턴시를 단축할 수 있고, 내장형 CPU(4)의 부담을 줄일 수 있다.
또, 신호 처리 회로(2)에 의하면, 종래의 ECC와 비교해서 에러 체크를 위해 필요한 부가적인 데이터 영역을 작게 할 수 있다. 그 결과, 메모리의 용량, 매수를 저감할 수 있고, 코스트의 증대도 억제할 수 있다. 특히, 고성능 CPU를 사용하는 시스템과 비교해서 내장형 CPU(4)를 사용하는 시스템에는 비용 및 면적의 관점에서 메모리의 용량을 최소한으로 하는 요구가 강하고, 실시형태에 관한 신호 처리 회로(2)는 이러한 용도로 적합하다.
이상적으로는 메모리 체크 회로(10)는 메모리(8)의 모든 데이터를 체크 대상으로 하는 것이 바람직하지만, 현실적으로는 메모리 체크 회로(10)의 처리 속도 즉, 스루풋(throughput)은 유한하고, 내장형 CPU(4)가 비동작 상태라는 제한된 시간 안에서 모든 데이터를 체크하는 것은 어려운 경우도 있다. 이 문제는, 체크 대상으로 하는 데이터 영역을 임의로 설정 가능하게 한 것에 의해 해결된다. 예컨대, 메모리(8)의 용량이 크고, 메모리 체크 회로(10)의 리소스의 관점에서 메모리(8)의 전체를 체크하는 것이 어려운 경우에는, 파손되면 심각한 영향을 미치는 데이터, 다른 관점에서 말하면, 높은 신뢰성이 요구되는 데이터를 우선적으로 체크 대상으로 하면 좋다. 또, 메모리(8)에 로드되는 데이터의 배치가 신호 처리 회로(2)가 실행되는 프로그램마다 크게 다른 경우도 있지만, 이 경우에도 체크 대상의 데이터 영역을 적절히 설정할 수 있다.
따라서, 체크 대상의 데이터 영역의 유연한 선택성에 의해 여러 가지의 시스템에 대응할 수 있다.
또한, 메모리 체크 회로(10)는, 체크 사이클도 설정 가능하게 되어 있다. 따라서, 메모리 체크 회로(10)의 처리 속도에 여유가 있는 경우에는, 체크 사이클을 단축해서 신뢰성을 높일 수 있고, 처리 속도에 여유가 없는 경우에는, 체크 사이클을 길게 할 수 있다.
또, 체크 대상으로서 복수의 데이터 영역이 설정되는 경우, 고신뢰성이 요구되는 데이터 영역에 대해서는, 기타 데이터 영역보다도 체크 사이클을 상대적으로 짧게 할 수도 있다.
마지막으로, 신호 처리 회로(2)의 용도를 설명한다. 신호 처리 회로(2)는 임의의 신호 처리 시스템에 이용할 수 있지만, 예컨대 도 3 또는 도 7의 신호 처리 회로(2)는, 반도체 시험 장치(단순히 시험 장치라고 함)로 이용할 수 있다. 이것에 의해 메모리(8)의 소프트 에러를 검출하고, 검출된 경우에는 적절한 처리를 실행하는 것에 의해, 내장형 CPU(4)의, 나아가서는 시험 장치 전체의 오동작을 방지할 수 있다.
이와 같이, 본 발명에 대해서, 실시형태를 바탕으로 설명했다. 본 실시형태는 예시이고, 그들의 각 구성 요소나 각 처리 프로세스의 조합에 여러 가지 변형예가 가능한 것, 또한 그러한 변형예도 본 발명의 범위에 있는 것은 당업자에게 이해되는 부분이다. 이하, 이러한 변형예에 대해서 설명한다.
(제 1의 변형예)
도 3의 메모리 체크 회로(10)는, 메모리(8)에 발생한 에러를 검출하고 내장형 CPU(4)에 통지할 뿐이었다. 제 1의 변형예에 있어서, 메모리 체크 회로(10)는 메모리(8)에 격납된 데이터에 에러가 검출되었을 때, 메모리(8)에 격납된 데이터를 바른 값으로 정정 가능하게 구성된다. 즉, 메모리 체크 회로(10)에 ECC 기능이 실장된다. 메모리(8)에는, 기대값에 더하여 에러 정정을 위한 중복 비트 등, ECC에 필요한 데이터가 격납된다.
메모리 체크 회로(10)는, 메모리 체크의 결과 에러가 검출되면 오류 정정을 진행하고, 바른 데이터를 메모리(8)에 고쳐 쓴다. 제 1의 변형예에 있어서도, 메모리 체크 회로(10)에 의한 메모리(8)의 액세스는 내장형 CPU(4)의 비동작 기간에 한정되어 진행되기 때문에, 내장형 CPU(4)의 메모리 액세스의 레이턴시를 단축할 수 있다.
(제 2의 변형예)
도 7은, 제 2의 변형예에 관한 신호 처리 회로(2a)의 구성을 나타내는 블록도이다. 신호 처리 회로(2a)는, 도 3의 신호 처리 회로(2)에 더해 호스트 CPU(12)를 더 구비한다.
호스트 CPU(12)는. 메모리 컨트롤러(6)를 통해 메모리(8)에 액세스 가능하게 접속된다. 호스트 CPU(12)는 내장형 CPU(4)가 실행되어야 하는 프로그램을 메모리(8)에 로드한다. 그리고 호스트 프로세서(12)는 메모리 체크 회로(10)에 의해 에러가 검출되면, 프로그램을 메모리(8)에 다시 기입한다. 본 변형예에 의하면, 에러 발생시에, 메모리(8)의 데이터를 바른 값으로 고쳐 쓸 수 있다.
본 변형예에서, 호스트 CPU(12)는, 메모리(8)의 어느 어드레스에, 어떤 데이터가 로드되는지를 알고 있다. 거기서 호스트 CPU(12)는, 메모리 체크 회로(10)가 체크 대상으로 하는 데이터 영역을 지정하는 데이터(S1), 및/또는 체크 사이클을 지정하는 데이터를 생성하고, 메모리 체크 회로(10)에 송신해도 좋다. 이 구성에 의하면, 메모리 체크 회로(10)에 의한 메모리 체크 처리를 최적화할 수 있다.
(제 3의 변형예)
실시형태에는, 일단 생성한 기대값을 지속적으로 사용하는 경우를 설명했지만, 체크 사이클보다도 낮은 비율로, 정기적으로 갱신하도록 해도 좋다.
(제 4의 변형예)
실시형태에는, 기대값은 체크 대상의 데이터 영역의 비트의 합이었지만, 본 발명은 그것에는 한정되지 않는다. 예컨대, 체크 대상의 데이터 영역의 데이터 자체를 기대값 및 평가값으로서 이용해도 좋다. 이 경우, 필요한 메모리 용량의 증대와 교환에, 에러 검출의 정도를 높일 수 있다.
(제 5의 변형예)
실시형태에는, 메모리 체크 회로(10)의 메모리 체크 중에, 내장형 CPU(4)가 동작 상태로 천이한 경우에, 메모리 체크를 중단하는 경우를 설명했지만, 그것과는 반대로 도중의 처리가 완료할 때까지 내장형 CPU(4)의 메모리 액세스를 기다리게 해도 좋다.
(제 6의 변형예)
실시형태에는, 메모리 체크 회로(10)는, 내장형 CPU(4)으로부터의 제어 신호(CNT)에 근거하여, 내장형 CPU(4)의 동작 상태의 유무를 판정했지만, 본 발명은 그것에는 한정되지 않는다. 도 7의 신호 처리 회로(2a)에서, 내장형 CPU(4)의 동작 상태가 호스트 CPU(12)에 의해 제어되는 경우에는, 제어 신호(CNT)를 호스트 CPU(12)에 의해 생성해도 좋다.
실시형태에 근거하여, 본 발명을 설명했지만, 실시형태는 본 발명의 원리, 응용을 나타내는데 지나지 않고, 실시형태에는 청구 범위에 규정된 본 발명의 사상을 일탈하지 않는 범위에서 많은 변형예나 배치의 변경이 가능하다.
1: 시험 장치
2: 신호 처리 장치
4: 내장형 CPU
6: 메모리 컨트롤러
8: 메모리
10: 메모리 체크 회로
12: 호스트 CPU

Claims (14)

  1. 메모리와,
    상기 메모리와 접속되고, ECC(Error Check and Corect) 기능을 포함하지 않는 메모리 컨트롤러와,
    상기 메모리 컨트롤러를 통해 상기 메모리 액세스 가능하게 접속되는 내장형 프로세서와,
    상기 메모리 컨트롤러를 통해 상기 메모리에 액세스 가능하게 접속되고, 상기 내장형 프로세서의 비동작 기간에 상기 메모리에 액세스하고, 상기 메모리에 격납되는 데이터를 체크하는 메모리 체크 회로를 포함하는 것을 특징으로 하는 신호 처리 회로.
  2. 제1항에 있어서,
    상기 내장형 프로세서는, 동작 기간인지 비동작 기간인지를 나타내는 제어 신호를, 상기 메모리 체크 회로에 출력하는 것을 특징으로 하는 신호 처리 회로.
  3. 제1항 또는 제2항에 있어서,
    상기 메모리 체크 회로는,
    상기 메모리에 격납되는 체크 대상의 데이터에 소정의 연산 처리를 시행하는 것에 의해, 기대값를 생성하는 스텝과,
    소정의 체크 사이클마다, 상기 메모리에 격납되는 데이터에 상기 소정의 연산 처리를 시행하는 것에 의해 평가값를 생성하고, 상기 평가값를 상기 기대값와 비교하는 스텝을 상기 내장형 프로세서의 비동작 기간에서 실행하는 것을 특징으로 하는 신호 처리 회로.
  4. 제3항에 있어서,
    상기 메모리 체크 회로는, 상기 기대값를 상기 메모리에 기입하는 것을 특징으로 하는 신호 처리 회로.
  5. 제3항에 있어서,
    상기 메모리 체크 회로는, 상기 기대값를 상기 메모리와는 별도의 레지스터에 기입하는 것을 특징으로 하는 신호 처리 회로.
  6. 제1항 또는 제2항에 있어서,
    상기 메모리 체크 회로가 체크 대상으로 하는 데이터 영역은, 설정 가능한 것을 특징으로 하는 신호 처리 회로.
  7. 제3항에 있어서,
    상기 체크 사이클은 설정 가능한 것을 특징으로 하는 신호 처리 회로.
  8. 제3항에 있어서,
    상기 기대값 및 상기 평가값은, 체크 대상의 데이터의 비트의 합인 것을 특징으로 하는 신호 처리 회로.
  9. 제3항에 있어서,
    상기 기대값 및 상기 평가값는, 체크 대상의 데이터 자체인 것을 특징으로 하는 신호 처리 회로.
  10. 제3항에 있어서,
    체크 대상의 데이터의 값이 고정적인 경우, 상기 메모리 체크 회로는 상기 메모리에 최초로 데이터가 기입된 후에 1회, 상기 기대값를 생성하는 것을 특징으로 하는 신호 처리 회로.
  11. 제1항 또는 제2항에 있어서
    상기 메모리 체크 회로는, 상기 메모리에 격납된 데이터에 에러가 검출되었을 때, 상기 메모리에 격납된 데이터를 바른 값으로 정정 가능하게 구성되는 것을 특징으로 하는 신호 처리 회로.
  12. 제1항 또는 제2항에 있어서,
    상기 메모리 컨트롤러를 통해 상기 메모리에 액세스 가능하게 접속되고, 상기 내장형 프로세서가 실행되어야 하는 프로그램을 상기 메모리에 기입하는 호스트 프로세서를 더 포함하고,
    상기 호스트 프로세서는, 상기 메모리 체크 회로에 의해 에러가 검출되면, 상기 프로그램을 상기 메모리에 재기입하는 것을 특징으로 하는 신호 처리 회로.
  13. 제1항 또는 제2항에 있어서,
    상기 메모리 컨트롤러를 통해 상기 메모리에 액세스 가능하게 접속되고, 상기 내장형 프로세서가 실행되어야 하는 프로그램을 상기 메모리에 기입하는 호스트 프로세서를 더 포함하고,
    상기 호스트 프로세서는, 상기 내장형 프로세서가 동작 기간인지 비동작 기간인지를 나타내는 제어 신호를, 상기 메모리 체크 회로에 출력하는 것을 특징으로 하는 신호 처리 회로.
  14. 제1항 또는 제2항에 기재된 신호 처리 회로를 포함하는 것을 특징으로 하는 시험 장치.
KR1020130052628A 2012-05-11 2013-05-09 신호 처리 회로 및 이를 사용한 시험 장치 KR101478907B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2012-109897 2012-05-11
JP2012109897A JP2013238926A (ja) 2012-05-11 2012-05-11 信号処理回路およびそれを用いた試験装置

Publications (2)

Publication Number Publication Date
KR20130126513A KR20130126513A (ko) 2013-11-20
KR101478907B1 true KR101478907B1 (ko) 2014-12-31

Family

ID=49534200

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130052628A KR101478907B1 (ko) 2012-05-11 2013-05-09 신호 처리 회로 및 이를 사용한 시험 장치

Country Status (5)

Country Link
US (1) US20130305000A1 (ko)
JP (1) JP2013238926A (ko)
KR (1) KR101478907B1 (ko)
CN (1) CN103389921A (ko)
TW (1) TW201346529A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180066714A (ko) * 2016-12-09 2018-06-19 주식회사 뉴스젤리 데이터에 내재된 문제점 제거를 통한 데이터 정제 장치 및 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6020611B2 (ja) * 2015-01-20 2016-11-02 トヨタ自動車株式会社 車両データのリモート収集システム
JP6717059B2 (ja) * 2016-06-06 2020-07-01 オムロン株式会社 制御システム
TWI812571B (zh) * 2023-01-18 2023-08-11 慧榮科技股份有限公司 介面電路與記憶體控制器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH054265U (ja) * 1991-07-03 1993-01-22 横河電機株式会社 メモリ装置
JPH05158811A (ja) * 1991-12-04 1993-06-25 Nec Eng Ltd データ処理装置の障害検出方式

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7036064B1 (en) * 2000-11-13 2006-04-25 Omar Kebichi Synchronization point across different memory BIST controllers
US6950971B2 (en) * 2001-11-05 2005-09-27 Infineon Technologies Ag Using data compression for faster testing of embedded memory
US6971051B2 (en) * 2002-01-10 2005-11-29 Agilent Technologies, Inc. System and method of recovering from soft memory errors
GB2439968B (en) * 2006-07-07 2011-05-25 Advanced Risc Mach Ltd Memory testing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH054265U (ja) * 1991-07-03 1993-01-22 横河電機株式会社 メモリ装置
JPH05158811A (ja) * 1991-12-04 1993-06-25 Nec Eng Ltd データ処理装置の障害検出方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180066714A (ko) * 2016-12-09 2018-06-19 주식회사 뉴스젤리 데이터에 내재된 문제점 제거를 통한 데이터 정제 장치 및 방법
KR101964454B1 (ko) 2016-12-09 2019-04-01 주식회사 뉴스젤리 데이터에 내재된 문제점 제거를 통한 데이터 정제 장치 및 방법

Also Published As

Publication number Publication date
KR20130126513A (ko) 2013-11-20
US20130305000A1 (en) 2013-11-14
TW201346529A (zh) 2013-11-16
JP2013238926A (ja) 2013-11-28
CN103389921A (zh) 2013-11-13

Similar Documents

Publication Publication Date Title
US9935658B2 (en) Data processing apparatus
US7484141B2 (en) Semiconductor device capable of performing test at actual operating frequency
US8732532B2 (en) Memory controller and information processing system for failure inspection
KR101374455B1 (ko) 메모리 에러와 리던던시
US9870148B2 (en) Configuration control system and configuration control method
KR101478907B1 (ko) 신호 처리 회로 및 이를 사용한 시험 장치
JP2008139908A (ja) メモリ制御装置、コンピュータシステム及びデータ再生記録装置
JP6341795B2 (ja) マイクロコンピュータ及びマイクロコンピュータシステム
US8739012B2 (en) Co-hosted cyclical redundancy check calculation
Eisenhardt et al. Spatial and temporal data path remapping for fault-tolerant coarse-grained reconfigurable architectures
US20150106636A1 (en) Data processor and data processing system
JP2007034469A (ja) データエラー検出装置およびデータエラー検出方法
JP2011065565A (ja) キャッシュシステム及びマルチプロセッサシステム
US20100146224A1 (en) Request processing device, request processing system, and access testing method
US9256504B2 (en) Semiconductor integrated circuit including a state machine
US7584388B2 (en) Error notification method and information processing apparatus
JP2011154459A (ja) コンピュータシステムのプログラム異常動作検出装置
US8032720B2 (en) Memory access monitoring apparatus and related method
JP7394849B2 (ja) メモリ組込み自己テストコントローラを用いる読み出し専用メモリのテスト
US9459977B2 (en) Data processing system with debug control
CN109872150B (zh) 具有时钟同步操作的数据处理系统
JP7350488B2 (ja) 周辺装置制御システム、および周辺装置制御方法
JP2013061887A (ja) 故障位置判定回路、記憶装置、および情報処理装置
JP2006155145A (ja) 演算処理装置
JP2012003540A (ja) 違反メモリアクセス検出装置および違反メモリアクセス検出方法

Legal Events

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

Payment date: 20171129

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191126

Year of fee payment: 6