KR101230296B1 - 시험 장치, 시리얼 전송 시스템, 프로그램, 및 기록 매체 - Google Patents

시험 장치, 시리얼 전송 시스템, 프로그램, 및 기록 매체 Download PDF

Info

Publication number
KR101230296B1
KR101230296B1 KR1020117012337A KR20117012337A KR101230296B1 KR 101230296 B1 KR101230296 B1 KR 101230296B1 KR 1020117012337 A KR1020117012337 A KR 1020117012337A KR 20117012337 A KR20117012337 A KR 20117012337A KR 101230296 B1 KR101230296 B1 KR 101230296B1
Authority
KR
South Korea
Prior art keywords
data
transmission
transmission data
unit
retransmission
Prior art date
Application number
KR1020117012337A
Other languages
English (en)
Other versions
KR20110079772A (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 KR20110079772A publication Critical patent/KR20110079772A/ko
Application granted granted Critical
Publication of KR101230296B1 publication Critical patent/KR101230296B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1887Scheduling and prioritising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/24Testing correct operation

Abstract

피시험 디바이스를 시험하는 시험 유닛과 시험 유닛을 제어하는 제어부와의 사이에 전송 데이터를 전송하는 시리얼 전송부를 가지는 반도체 시험 장치를 제공한다. 시리얼 전송부는, 미리 정해진 순서로 복수의 전송 데이터를 송신하는 데이터 송신부와, 전송 데이터를 재송신시키는 재송신 제어부와, 송신측으로 수취한 상기 확인 신호에 첨부되어야 할 상기 식별 데이터의 확인 ID 기대값을 기억하는 확인 ID 기대값 기억부를 가진다. 재송신 제어부는, 전송 데이터가 재송신의 데이터인지 여부를 나타내는 재송신 카운트 정보, 및 확인 ID 기대값 기억부가 기억하는 확인 ID 기대값에 기초하여, 재송신의 필요성을 판단한다.

Description

시험 장치, 시리얼 전송 시스템, 프로그램, 및 기록 매체{TESTING DEVICE, SERIAL TRANSMISSION SYSTEM, PROGRAM, AND RECORDING MEDIUM}
본 발명은, 시험 장치, 시리얼 전송 시스템, 프로그램, 및 기록 매체에 관한 것이다. 미국에 있어서 본 출원은, 미국 출원 No. 12/335550(출원일: 2008년 12월 16일)의 계속 출원이다.
반도체 시험 장치는, 복수의 시험 모듈을 구비한다. 각각의 시험 모듈은, 다른 시험 모듈과의 사이, 또는 피시험 디바이스를 탑재하는 퍼포먼스 보드 등과의 사이에, 시험용 데이터 등의 송수신을 실시한다. 시험 모듈은, 대량의 데이터를 단시간에 전송하는 것을 목적으로 하여, 고속 시리얼 버스 등에 의해 데이터 전송을 실시한다. 더하여, 관련하는 기술 문헌으로서, 이하의 특허 문헌 1을 파악하고 있다.
일본특허공개 소 57-145451호 공보
반도체 시험 장치에서의 시험 모듈 사이의 통신에 있어서는, 비트 에러율 10-17에서 10-19 정도의 높은 신뢰성이 요구된다. 그런데 , 최근의 전송 속도의 고속 화에 수반하여, 비트 에러율은 증가하는 경향에 있다. 전송로의 신뢰성을 높이는 방법으로서, 송수신하는 데이터를 프레임화한 다음, 비트 오류가 생긴 프레임을 재송신하는 재송신 제어가 알려져 있다.
송신측은, 정상적으로 수신되지 않은 전송 데이터를, CPU 등의 제어에 의해 재송신함으로써, 모든 전송 데이터를 확실히 송신할 수 있다. 그런데, 확인 신호가 전송로에서 소실된 경우에는, 재송신이 필요한 것을 검출하기까지 장시간을 필요로 한다. 그 결과, 장시간에 걸치는 데이터를 보존하기 위한 버퍼 사이즈와 회로 규모가 커진다는 과제가 있다.
여기에서, 본 발명의 일 측면에서는, 상기의 과제를 해결할 수 있는 시험 장치, 시리얼 전송 시스템, 프로그램, 및 기록 매체를 제공하는 것을 목적으로 한다. 이 목적은 청구의 범위에서의 독립항에 기재된 특징의 조합에 의해 달성된다. 또한, 종속항은 본 발명의 한층 더 유리한 구체적인 예를 규정한다.
즉, 본 발명의 제1 태양에 의하면, 피시험 디바이스를 시험하는 시험 장치에 있어서, 피시험 디바이스와 전기적으로 접속되어 피시험 디바이스를 시험하는 시험 유닛과, 시험 유닛을 제어하는 제어부와, 제어부 및 시험 유닛의 사이에 전송 데이터를 전송하는 시리얼 전송부를 포함하고, 시리얼 전송부는, 송신측에서, 미리 정해진 순서로 복수의 전송 데이터를 송신하는 데이터 송신부와, 수신측에서 전송 데이터를 수취한 경우에, 해당 전송 데이터를 수취한 취지의 확인 신호에 식별 데이터를 첨부하여 송신측에 송신하는 수신 통지부와, 확인 신호로 나타나는 전송 데이터의 수신 순서가, 미리 정해진 순서와 다른 경우에, 미리 정해진 순서가 수신 순서와 다르게 된 전송 데이터로부터, 전송 데이터가 재송신의 데이터인지 여부를 나타내는 재송신 카운트 정보를 첨부하여 수신측에 재송신시키는 재송신 제어부와, 송신측으로 수취한 확인 신호에 첨부되어야 할 식별 데이터를 나타내는 확인 ID 기대값을 기억하는 확인 ID 기대값 기억부를 포함하고, 수신 통지부는, 수신한 전송 데이터에 대한 확인 신호에, 해당 전송 데이터의 재송신 카운트 정보를 첨부하여, 상기 송신측에 송신시키고, 재송신 제어부는, 확인 신호로 나타나는 전송 데이터의 수신 순서가, 미리 정해진 순서와 다른 경우에 있어서, 재송신 카운트 정보가 재송신의 데이터인 취지를 나타내고 있는 한편, 확인 신호에 첨부된 식별 데이터가 확인 ID 기대값과 일치하는 경우에, 전송 데이터의 재송신을 실시하지 않는 시험 장치를 제공한다.
본 발명의 제2 태양에 의하면, 수신측 및 송신측의 사이에 전송 데이터를 전송하는 시리얼 전송 시스템에서 있어서, 송신측에서, 미리 정해진 순서로 복수의 전송 데이터를 송신하는 데이터 송신부와, 수신측에서 전송 데이터를 수취한 경우에, 해당 전송 데이터를 수취한 취지의 확인 신호에 식별 데이터를 첨부하여 송신측에 송신하는 수신 통지부와, 확인 신호로 나타나는 전송 데이터의 수신 순서가, 미리 정해진 순서와 다른 경우에, 미리 정해진 순서가 수신 순서와 다르게 된 전송 데이터로부터, 전송 데이터가 재송신의 데이터인지 여부를 나타내는 재송신 카운트 정보를 첨부하여 수신측에 재송신시키는 재송신 제어부와, 송신측으로 수취한 확인 신호에 첨부되어야 할 식별 데이터를 나타내는 확인 ID 기대값을 기억하는 확인 ID 기대값 기억부를 포함하고, 수신 통지부는, 수신한 전송 데이터에 대한 확인 신호에, 해당 전송 데이터의 재송신 카운트 정보를 첨부하여, 송신측에 송신시키고, 재송신 제어부는, 확인 신호로 나타나는 전송 데이터의 수신 순서가, 미리 정해진 순서와 다른 경우에 있어서, 재송신 카운트 정보가 재송신의 데이터인 취지를 나타내는 한편, 확인 신호에 첨부된 식별 데이터가 확인 ID 기대값과 일치하는 경우에, 전송 데이터의 재송신을 실시하지 않는 시리얼 전송 시스템을 제공한다.
본 발명의 제3 태양에 의하면, 피시험 디바이스를 시험하는 시험 장치를 기능시키는 프로그램에 있어서, 시험 장치를, 피시험 디바이스와 전기적으로 접속되어 피시험 디바이스를 시험하는 시험 유닛과, 시험 유닛을 제어하는 제어부와, 제어부 및 시험 유닛의 사이에 전송 데이터를 전송하는 시리얼 전송부로서 기능시키고, 시리얼 전송부를, 송신측에서, 미리 정해진 순서로 복수의 전송 데이터를 송신하는 데이터 송신부와, 수신측에서 전송 데이터를 수취한 경우에, 해당 전송 데이터를 수취한 취지의 확인 신호에 식별 데이터를 첨부하여 송신측에 송신하는 수신 통지부와, 확인 신호로 나타나는 전송 데이터의 수신 순서가, 미리 정해진 순서와 다른 경우에, 미리 정해진 순서가 수신 순서와 다르게 된 전송 데이터로부터, 전송 데이터가 재송신의 데이터인지 여부를 나타내는 재송신 카운트 정보를 첨부하여 수신측에 재송신시키는 재송신 제어부와, 송신측으로 수취한 확인 신호에 첨부되어야 할 식별 데이터를 나타내는 확인 ID 기대값을 기억하는 확인 ID 기대값 기억부로서 기능시키고, 수신 통지부에, 수신한 전송 데이터에 대한 확인 신호에, 해당 전송 데이터의 재송신 카운트 정보를 첨부하여, 송신측에 송신시키고, 재송신 제어부에, 확인 신호로 나타나는 전송 데이터의 수신 순서가, 미리 정해진 순서와 다른 경우에 있어서, 재송신 카운트 정보가 재송신의 데이터인 취지를 나타내는 한편, 확인 신호에 첨부된 식별 데이터가 확인 ID 기대값과 일치하는 경우에, 전송 데이터의 재송신을 실시하지 않게 하는 프로그램 및 해당 프로그램을 기록한 기록 매체를 제공한다.
또한 상기의 발명의 개요는, 본 발명의 필요한 특징의 모두를 열거한 것이 아니고, 이러한 특징군의 서브 콤비네이션도 또한 발명이 될 수 있다.
도 1은 본 실시 형태에 관한 반도체 시험 장치(10)의 구성을 나타낸다.
도 2는 본 실시 형태에 관한 송수신부(100)의 구성을 도시한다.
도 3은 본 실시 형태에 관한 송수신부(200)의 구성을 도시한다.
도 4는 송수신부(100) 및 송수신부(200)의 사이에 송수신되는, DAT 프레임 및 ACK 프레임의 프레임 구성을 도시한다.
도 5는 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서의, 정상시의 시컨스를 도시한다.
도 6은 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서의, 에러 발생시의 시컨스를 도시한다.
도 7은 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서, 에러가 생긴 경우의 시컨스를 도시한다.
도 8은 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서, 에러가 생긴 경우의 시컨스를 도시한다.
도 9는 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서, 에러가 생긴 경우의 시컨스를 도시한다.
도 10은 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서, 에러가 생긴 경우의 시컨스를 도시한다.
도 11은 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서, 에러가 생긴 경우의 시컨스를 도시한다.
도 12는 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서, 에러가 생긴 경우의 시컨스를 도시한다.
도 13은 송수신부(100)의 제2 구성을 도시한다.
도 14는 송신 데이터 메모리(128)의 기입 제어 방법을 도시한다.
도 15는 송신 데이터 메모리(128)의 독출 제어 방법을 도시한다.
도 16은 제2 실시 형태에 관한 컴퓨터(1900)의 하드웨어 구성의 일례를 도시한다.
이하, 발명의 실시의 형태를 통해서 본 발명의 일 측면을 설명하지만, 이하의 실시 형태는 청구의 범위에 걸리는 발명을 한정하는 것이 아니고, 또한 실시 형태 중에서 설명되고 있는 특징의 조합의 모두가 발명의 해결 수단에 필수라고는 할 수 없다.
도 1은, 본 실시 형태에 관한 반도체 시험 장치(10)의 구성을, 피시험 디바이스(50)과 함께 도시한다. 반도체 시험 장치(10)는, 제어부(20), 복수의 시험 유닛(30), 및 복수의 시리얼 전송부(40)를 구비한다. 제어부(20)는, 미리 주어지는 복수의 시험 제어 프로그램(22) 등을 실행함으로써, 복수의 시험 유닛(30)을 제어 하여, 복수의 피시험 디바이스(50)의 시험을 제어한다. 제어부(20)는, 예를 들면 CPU를 가져도 된다.
복수의 시험 유닛(30)은, 복수의 피시험 디바이스(50) 또는 피시험 디바이스(50)의 복수의 핀에 대응하여 설치된다. 제어부(20)는, 이러한 시험 유닛(30)을 제어하여, 복수의 피시험 디바이스(50)를 병행하여 시험하여도 된다. 각각의 시험 유닛(30)은, 피시험 디바이스와 전기적으로 접속되어, 피시험 디바이스를 시험한다. 예를 들면, 각각의 시험 유닛(30)은, 피시험 디바이스의 시험에 이용하는 데이터를 생성하는 동시에, 피시험 디바이스가 출력하는 데이터를 해석하여도 된다.
시리얼 전송부(40)는, 전송 매체(42), 송수신부(100), 및 송수신부(200)를 구비한다. 송수신부(100)는, 전송 매체(42)의 제어부(20) 측의 단부에 설치되어도 된다. 또한, 송수신부(200)는, 전송 매체(42)의 시험 유닛(30) 측의 단부에 설치되어도 된다. 송수신부(100) 및 송수신부(200)는, 전송 매체(42)를 통해서, 제어부(20) 및 시험 유닛(30)의 사이에 전송 데이터를 전송한다.
또한, 송수신부(100) 및 송수신부(200)는, 제어부(20) 및 시험 유닛(30)의 사이에 전송 데이터를 정상적으로 송수신할 수 없는 경우에, 제어부(20)로부터의 제어를 통하지 않고, 해당 전송 데이터를 복구한다. 이에 의해, 전송 에러가 생긴 경우에, 멀티 태스크를 실행하고 있는 제어부(20)의 부하를 증대시키지 않고, 전송 데이터를 복구할 수 있다. 송수신부(100) 및 송수신부(200)는, 하드웨어에 의해, 전송 에러의 검출 및 복구를 실시하여도 된다.
도 2는, 본 실시 형태에 관한 송신측의 송수신부(100)의 구성을 도시한다. 본 예의 송수신부(100)는, 전송 데이터를 수취한 경우에, 그 취지를 상대방에게 통지한다. 전송 데이터를 송신한 송수신부는, 전송 데이터가 소정의 차례로 수신되지 않은 경우에 전송 데이터를 재송신한다.
동 도면에서, 송수신부(100)는, 데이터 송신부(120) 및 데이터 수신부(150)를 가진다. 데이터 송신부(120) 및 데이터 수신부(150)는, 송수신부(100)가 송수신부(200)와의 사이에 실시하는, 전송 프레임의 송수신을 제어한다. 본 예에서는, 전송 프레임으로서 시험 패턴 등의 전송 데이터를 포함하는 프레임 종류(이하, DAT 프레임이라 한다)와, 전송 데이터를 수취한 취지의 확인 신호를 포함한 프레임 종류(이하, ACK 프레임이라 한다)를 이용하여 설명한다.
송수신부(100)로부터 송수신부(200)에 전송 데이터를 송신하는 경우에는, 데이터 송신부(120)는, 전송 데이터를 포함한 DAT 프레임을 송수신부(200)에 대하여 송신한다. 또한, 송수신부(100)가 송수신부(200)로부터 DAT 프레임을 수신한 경우에는, 데이터 송신부(120)는, DAT 프레임에 대한 ACK 프레임을 송신한다. 송수신부(100)는, 송신하는 DAT 프레임에, 식별 데이터(이하, 프레임 ID)를 첨부하여도 되고, 송신하는 ACK 프레임에, 수신한 DAT 프레임의 프레임 ID와 동일한 프레임 ID를 첨부하여도 된다.
데이터 송신부(120)는, 송신 데이터 메모리(128), DAT 프레임 송신부(130), 수신 통지부(132), 멀티플렉서(134), 재송신 제어부(136), 재송신 정보 관리부(138), 어드레스 제어부(140)를 가진다. 데이터 송신부(120)는, 미리 정해진 순서로 복수의 전송 데이터를 송신한다. 또한, 데이터 송신부(120)는, 순차적으로 송신하는 전송 데이터에 첨부되는 프레임 ID를, 전송 데이터마다 미리 정해진 규칙으로 변화시켜도 된다. 예를 들면 데이터 송신부(120)는, 전송 데이터마다 순차적으로 인크리먼트한 숫자를 포함하는 프레임 ID를, 전송 데이터에 첨부하여도 된다.
데이터 수신부(150)는, 프레임 수신부(152), 수신 데이터 메모리(154), ID 기대값 비교부(158), ID 기대값 갱신부(160), ID 기대값 기억부(162), 및 어드레스 제어부(164)를 가진다. 프레임 수신부(152)는, DAT 프레임에 포함되는 프레임 ID를 취득한다. 또한, 프레임 수신부(152)는, 송수신부(200)로부터 수신한 DAT 프레임에 포함되는 프레임 코드에 기초하여, 프레임 종류를 인식한다. 수신한 전송 프레임이 ACK 프레임인 경우에는, 수신한 ACK 프레임에 포함되는 전송 데이터를 재송신 제어부(136)에 대하서 출력하여도 된다. 또한, 프레임 수신부(152)는, 수신한 전송 프레임이 DAT 프레임인 경우에는, 수신한 DAT 프레임에 포함되는 전송 데이터를 패러럴 데이터로 변환한 다음, 수신 데이터 메모리(154)에 대하여 출력하여도 된다.
ID 기대값 기억부(162)는, 프레임 수신부(152)가 수취한 전송 프레임에 첨부되어야 할 프레임 ID를 나타내는 ID 기대값을 기억한다. ID 기대값 비교부(158)는, 수취한 전송 데이터에 첨부되어 있는 프레임 ID를, ID 기대값 기억부(162)가 기억하고 있는 ID 기대값과 비교한다.
ID 기대값 갱신부(160)는, 프레임 수신부(152)가 수취한 전송 데이터에 첨부되어 있는 프레임 ID가, ID 기대값 기억부(162)가 기억하고 있는 ID 기대값과 일치한 경우에, ID 기대값 기억부(162)가 기억하는 ID 기대값을, 미리 정해진 규칙에 기초하여 갱신한다. ID 기대값 갱신부(160)는, 데이터 송신부(120)가 프레임 ID를 변화시키는 규칙과 동일한 규칙으로, ID 기대값을 변화시키는 것이 바람직하다.
프레임 수신부(152)는, 수신한 전송 데이터에 포함되어 있는 프레임 ID를 ID 기대값 비교부(158)에 통지하는 동시에, ID 기대값 비교부(158)가 출력하는 비교 결과를 취득함으로써, 송수신부(200)에 송신한 데이터가 정상적으로 도달하였는지 여부를 판단하여도 된다.
ID 기대값 기억부(162)는, 프레임 종류마다, 프레임 ID의 기대값을 기억하여도 된다. 예를 들면, ID 기대값 기억부(162)는, DAT 프레임에 대하여는, DAT_ID 기대값을 기억하는 데이터 ID 기대값 기억부로서 기능하여도 되고, ACK 프레임에 대하여는, ACK_ID 기대값을 기억하는 확인 ID 기대값 기억부로서 기능하여도 된다. 또한, ID 기대값 기억부(162)는, ID 기대값 갱신부(160)의 제어에 의해, 기억하는 기대값을 갱신하여도 된다.
ID 기대값 비교부(158)는, 프레임 수신부(152)가 수취한 전송 데이터에 첨부되어 있는 프레임 ID를, ID 기대값 기억부(162)가 기억하고 있는 기대값과 비교한다. ID 기대값 비교부(158)는, 프레임 종류마다, 프레임 ID와 기대값을 비교하여도 된다. 예를 들면, ID 기대값 비교부(158)는, DAT 프레임에 대하여는, 프레임 ID와 DAT_ID 기대값을 비교하는 데이터 ID 기대값 비교부로서 기능하여도 되고, ACK 프레임에 대하여는, 프레임 ID와 ACK 프레임 ID를 비교하는 확인 ID 기대값 비교부로서 기능하여도 된다.
ID 기대값 갱신부(160)는, ID 기대값 비교부(158)로부터 비교 결과를 수취한다. 또한, ID 기대값 갱신부(160)는, 프레임 수신부(152)가 수취한 전송 데이터에 첨부되어 있는 프레임 ID가, ID 기대값 기억부(162)가 기억하고 있는 기대값과 일치하는 경우에, ID 기대값 기억부(162)가 기억하는 기대값을, 미리 정해진 규칙에 기초하여 갱신한다. ID 기대값 갱신부(160)는, 프레임 종류마다 기대값을 갱신하여도 된다. 예를 들면, ID 기대값 갱신부(160)는, DAT 프레임에 대하여는, DAT_ID 기대값을 갱신하는 데이터 ID 기대값 갱신부로서 기능하여도 되고, ACK 프레임에 대하여는, ACK_ID 기대값을 갱신하는 확인 ID 기대값 갱신부로서 기능하여도 된다.
예를 들면, ID 기대값 갱신부(160)는, 프레임 ID의 값을 1씩 증가시키는 것으로, 각각의 ID 기대값을 갱신하여도 된다. 더욱 구체적으로는, 프레임 수신부(152)가 송수신부(200)로부터 수신한, 직전의 ACK 프레임의 프레임 ID가 「2」인 경우, 다음에 수취하여야 할 ACK 프레임의 프레임 ID는 「3」이다. 따라서, ID 기대값 기억부(162)는, 수신하는 ACK_ID 기대값으로서 「3」을 기억하고 있다.
이 상태로, 프레임 수신부(152)가 수신한 ACK 프레임의 프레임 ID가 「3」인 경우에는, ID 기대값 비교부(158)는, 비교 결과가 일치하고 있는 것을 ID 기대값 갱신부(160)에 통지한다. ID 기대값 갱신부(160)는, 비교 결과가 일치하고 있는 경우에는, ID 기대값 기억부(162)에 대하여, 기억하고 있는 ACK_ID 기대값을 「4」로 갱신하는 지시를 내도 된다. ID 기대값 기억부(162)는, ID 기대값 갱신부(160)의 지시에 기초하여, 기억하는 ACK_ID 기대값을 「4」로 갱신한다.
이에 대하여, 프레임 수신부(152)가 수신한 ACK 프레임의 프레임 ID가 「3」이 아닌 경우에는, ID 기대값 비교부(158)는, 비교 결과가 일치하지 않는 것을 ID 기대값 갱신부(160)에 통지한다. ID 기대값 갱신부(160)는, 비교 결과가 일치하지 않는 경우에는, ID 기대값 기억부(162)에 대하여, 기억하고 있는 ACK_ID 기대값을 갱신하는 지시를 출력하지 않는다.
ID 기대값 비교부(158)는, 비교 결과를 프레임 수신부(152)에 통지하여도 된다. 재송신 제어부(136)는, 프레임 수신부(152) 경유로 수취한 ID 기대값 비교부(158)에 의한 비교 결과에 기초하여, 재송신 제어를 하여도 된다.
제어부(20)는, 데이터 선(202)에 의해 송신 데이터 메모리(128)에 접속되는 동시에, 제어선(204)에 의해 어드레스 제어부(140)에 접속된다. 마찬가지로, 제어부(20)는, 데이터 선(206)에 의해 수신 데이터 메모리(154)에 접속되는 동시에, 제어선(208)에 의해 어드레스 제어부(164)에 접속된다. 제어부(20)는, 데이터 선(202)을 경유하여, 송신하는 데이터를 송신 데이터 메모리(128)에 기입하여도 된다. 또한, 제어부(20)는, 데이터 선(206)을 경유하여, 수신 데이터 메모리(154)가 기억하는 수신 데이터를 독출하여도 된다.
이하, 데이터 송신부(120)의 동작의 상세를 설명한다. 송신 데이터 메모리(128)는, 송신하는 전송 데이터를 격납하는 메모리이다. 송신 데이터 메모리(128)는, 복수의 어드레스를 가진다. 송신 데이터 메모리(128)는, 제어부(20)로부터 주어지는 전송 데이터를, 기입 가능한 어드레스에 기입하는 한편, 어드레스 제어부(140)가 출력하는 독출 어드레스에 의해 지정되는 어드레스의 전송 데이터를 출력한다. 송신 데이터 메모리(128)는, 듀얼 포트 메모리이어도 된다. 송신 데이터 메모리(128)는, 어드레스 제어부(140)가 출력하는 기입 어드레스에, 전송 데이터를 기입하는 동시에, 어드레스 제어부(140)가 출력하는 독출 어드레스로부터, 전송 데이터를 독출하여도 된다.
DAT 프레임 송신부(130)는, 송신 데이터 메모리(128)로부터 독출한 전송 데이터를 시리얼 데이터로 변환한다. 또한, DAT 프레임 송신부(130)는, 재송신 제어부(136)의 지시에 기초하여, 송신 데이터 메모리(128)로부터 독출한 전송 데이터에 프레임 ID를 첨부한 다음, 소정의 DAT 프레임을 생성한다. DAT 프레임 송신부(130)는, DAT 프레임에 FCS(프레임 체크 시컨스) 부호를 더 첨부하여도 된다. DAT 프레임 송신부(130)는, 생성한 DAT 프레임을 멀티플렉서(134)에 출력하여도 된다.
수신 통지부(132)는, 송수신부(200)으로부터 전송 데이터를 수취한 경우에, 해당 전송 데이터를 수취한 취지의 ACK 프레임을 생성하여, 멀티플렉서(134)에 출력한다. 수신 통지부(132)는, 송수신부(200)로부터 재차 수취한 DAT 프레임에 대해서도, 송수신부(200)에 ACK 프레임을 송신하여도 된다. 즉, 수신 통지부(132)는, 송수신부(200)로부터 복수의 같은 DAT 프레임을 수신한 경우에는, 각각의 DAT 프레임에 대한 ACK 프레임을 송신하여도 된다. 멀티플렉서(134)는, DAT 프레임 송신부(130)가 출력하는 DAT 프레임, 또는 수신 통지부(132)가 출력하는 ACK 프레임을, 송수신부(200)에 대하여 송신하여도 된다.
재송신 제어부(136)는, 송수신부(200)에 대하여 송신하는 DAT 프레임의 송신 순서를 제어한다. 재송신 제어부(136)는, 송수신부(200)에 대하여 송신하는 DAT 프레임의 프레임 ID를 DAT 프레임 송신부(130)에 통지하여도 된다.
또한, 재송신 제어부(136)는, 송수신부(200)에 송신한 DAT 프레임에 대하여 수신하는 ACK 프레임으로 나타나는 전송 데이터의 수신 순서가, 미리 정해진 순서와 다른 경우에, 미리 정해진 순서가 수신 순서와 다르게 된 전송 데이터로부터, 재송신하는 제어를 실시한다. 재송신 제어부(136)는, 재송신해야 할 DAT 프레임의 프레임 ID를 DAT 프레임 송신부(130)에 통지함으로써, DAT 프레임의 재송신을 하여도 된다.
예를 들면, 송수신부(100)가 송수신부(200)에 대하여 순차적으로 송신한 DAT 프레임의 프레임 ID가, 각각 「1」, 「2」, 「3」, 「4」, 「5」라고 한다. 이 경우에, 송수신부(100)가 송수신부(200)로부터 수신한 ACK 프레임이 나타내는 프레임 ID가 「1」, 「2」, 「4」, 「5」이라면, 프레임 ID가 「3」이 되어야 하는 것으로, ACK 프레임이 나타내는 프레임 ID가 「4」가 되어, 미리 정해진 순서와 다른 프레임 ID를 수신하고 있다. 여기에서, 재송신 제어부(136)는, 프레임 ID가 「3」인 DAT 프레임(이하, 「프레임 ID3」이라 한다)으로부터 재송신하여도 된다.
또한, 재송신 제어부(136)는, 데이터 송신부(120)가, 다음에 송신해야 할 전송 데이터가 주어지지 않은 경우에, 다음에 송신해야 할 전송 데이터가 데이터 송신부(120)에게 주어질 때까지, 직전에 송신한 전송 데이터를 송수신부(200)에 계속 재송신시킬 수 있도록, DAT 프레임 송신부(130)를 제어하여도 된다. 예를 들면, DAT 프레임 송신부(130)는, 프레임 ID가 「1」, 「2」, 「3」, 「3」, 「3」이 되는 DAT 프레임을 순차적으로 송신하여도 된다.
재송신 제어부(136)는, ACK 프레임에 의해 나타나는 DAT 프레임의 수신 순서가 미리 정해진 순서와 다른 한편, ACK 프레임에 대응하는 DAT 프레임이, ACK_ID 기대값에 대응하는 DAT 프레임과 일치하지 않는다고 판단한 경우에, DAT 프레임을 재송신한다. 재송신 제어부(136)는, DAT 프레임을 재송신하는 경우에는, 해당 DAT 프레임이 재송신 프레임인 것을 나타내는, 재송신 카운트 정보를 첨부하여 DAT 프레임을 송신할 수 있도록, DAT 프레임 송신부(130)를 제어하여도 된다. 예를 들면, DAT 프레임을 처음으로 송신하는 경우에는, 재송신 카운트 정보를 「0」으로 하고, DAT 프레임을 재송신하는 경우에는, 재송신 카운트 정보를 「1」로 하여도 된다. 수신 통지부(132)는, 재송신 카운트 정보가 첨부된 DAT 프레임을 수신하면, 해당 재송신 카운트 정보를 첨부하여 ACK 프레임을 송신하여도 된다.
재송신 제어부(136)는, 수신한 ACK 프레임에 포함되는, 재송신 카운트 정보 및 프레임 ID에 기초하여, 재송신 제어를 하여도 된다. 예를 들면, 재송신 제어부(136)는, 수신한 ACK 프레임에 포함되는 프레임 ID가, 직전에 수신한 ACK 프레임에 포함되는 프레임 ID를 1 인크리먼트한 값이면, 재송신을 실시하지 않아도 된다.
재송신 제어부(136)는, 송수신부(200)가 수신한 DAT 프레임의 수신 순서가, 미리 정해진 순서와 다른 경우이어도, 송수신부(200)로부터 수신한 ACK 프레임에 포함되는 재송신 카운트 정보가 재송신의 데이터인 취지를 나타내고 있는 한편, ACK 프레임에 첨부된 프레임 ID가 확인 ID 기대값(이하, ACK_ID 기대값)과 일치한다면, DAT 프레임의 재송신을 실시하지 않아도 된다. 예를 들면, 미리 정해진 프레임 ID의 순서가, 「1」, 「2」, 「3」, 「4」, 「5」인 경우에, 송수신부(100)가 송수신부(200)로부터 수신한 ACK 프레임이 나타내는 프레임 ID가 「1」, 「2」, 「4」, 「5」라고 한다. 프레임 ID 「4」를 나타내는 ACK 프레임(이하, 「ACK 프레임 4」라 한다)은, 연속하지 않는 순서로 수신되고 있어, 프레임 ID 「3」을 건너 뛴 번호가 되어 있다.
이 경우에, 수신한 ACK 프레임 4에 첨부되어 있는 재송신 카운트 정보가, 재송신 프레임인 것을 나타내는 「1」인 한편, 프레임 ID 「4」가, ID 기대값 기억부(162)에 격납되어 있는 확인 ID 기대값 「4」과 일치하고 있다면, 재송신 제어부(136)는, 재송신한 DAT 프레임 4가, 송수신부(200)에 정상적으로 도달하였다고 판단하여도 된다. 이 경우에는, 재송신 제어부(136)는, DAT 프레임 4를 재송신하지 않아도 된다.
이에 대하여, 재송신 제어부(136)는, ACK 프레임에 나타나는 전송 데이터의 수신 순서가, 미리 정해진 순서와 다른 경우에 있어서, ACK 프레임에 첨부된 프레임 ID가, ID 기대값 기억부(162)에 기억된 ACK_ID 기대값과 일치하지 않는 경우에, 전송 데이터의 재송신을 실시한다고 판단하여도 된다. 예를 들면, 미리 정해진 프레임 ID의 순서가, 「1」, 「2」, 「3」, 「4」, 「5」인데 대하여, ACK 프레임이 나타내는 프레임 ID가 「1」, 「2」, 「4」, 「5」라 한다. 이 경우, ACK 프레임 4에 있어서, 미리 정해진 순서와 다르게 되어, 프레임 ID 「3」을 건너뛴 번호가 되어 있다. 여기서, ID 기대값 기억부(162)가, ACK_ID 기대값으로서 「3」을 기억하고 있는 경우에는, 재송신 제어부(136)는, 수신한 ACK 프레임 4가 나타내는 프레임 ID 「4」는, ACK_ID 기대값 「3」과 다르다. 따라서, 재송신 제어부(136)는, DAT 프레임 3의 재송신이 필요하다고 판단하여도 된다.
재송신 카운트 정보는, DAT 프레임을 재송신한 회수를 나타내는 정보이어도 된다. 재송신 카운트 정보가 재송신 회수를 나타내는 것으로, 동일한 DAT 프레임의 데이터 오류가 복수 회 발생한 경우에도, 재송신할 수 있다.
구체적으로는, 송수신부(100)가 송수신부(200)에 대하여 순차적으로 송신한 DAT 프레임의 프레임 ID가, 「1」, 「2」, 「3」, 「2R」, 「3R」이라 한다. 여기에서, 「2R」, 「3R」은, 각각, 프레임 ID 「2」, 「3」을 가지는 DAT 프레임의 재송신 프레임인 것을 나타낸다. 이 경우에 있어서, 송수신부(100)가 송수신부(200)로부터 수신한 ACK 프레임이 나타내는 프레임 ID가 「1」, 「2」, 「3」, 「3R」이라면, 재송신 제어부(136)는, 송수신부(200)에서의 수신 순서가, 미리 정해진 순서인 「1」, 「2」, 「3」, 「2R」, 「3R」과 다르다고 판단한다. 또한, 재송신 제어부(136)는, 수신한 프레임 3R의 프레임 ID 「3」은, ACK_ID 기대값에 일치하지 않는다고 판단하고, DAT 프레임 2를 재송신하여도 된다. 재송신 정보 관리부(138)는, DAT 프레임 2의 2번째의 재송신을 했으므로, DAT 프레임 2의 재송신 카운트 정보를 「2」로 갱신하여도 된다.
재송신 제어부(136)는, ACK_ID 기대값에 대응하는 DAT 프레임을 수신한 취지의 ACK 프레임을 송수신부(100)가 수취한 경우에, 재송신 정보 관리부(138)가 기억하는 재송신 카운트 정보에 나타나는 재송신 회수를 초기값으로 리셋트하여도 된다. 예를 들면, 데이터 송신부(120)가 송수신부(200)에 대하여, 재송신 카운트 정보를 「2」라고 한 프레임 ID 「3」의 DAT 프레임을 재송신했다고 한다. 이 경우에, 송수신부(100)가, 송수신부(200)로부터 ACK 프레임 3R을 수신하면, 수신한 ACK 프레임 3R에 포함되는 프레임 ID 「3」이 ACK_ID 기대값 「3」에 일치하므로, 송수신부(100)는, 송수신부(200)에 해당 DAT 프레임이 정상적으로 수신되었다고 판단하여도 된다. 여기에서, 재송신 제어부(136)는, 재송신 카운트 정보를 리셋트하여, 「0」으로 하야도 된다.
또한, 송수신부(100)는, 수신한 ACK 프레임에 포함되는 재송신 카운트 정보에 나타나는 재송신 회수가, 미리 정해진 임계값을 넘었을 경우에, DAT 프레임의 전송을 정지하여도 된다. 송수신부(100)는, 재송신 회수가 소정의 회수를 넘는 경우에는, DAT 프레임의 송신을 중지한 다음, 제어부(20)에 대하여, 그 취지를 통지하여도 된다.
어드레스 제어부(140)는, 송수신부(200)로부터 수신한 ACK 프레임의 수신 순서가, 미리 정해진 순서와 일치하는 경우에, 해당 ACK 프레임에 대응하는 DAT 프레임으로 송신한 전송 데이터가 격납된 송신 데이터 메모리(128)의 어드레스를, 기입 가능한 어드레스로서 제어하여도 된다. 즉, 송신 데이터 메모리(128)에 격납되어 있는 송신 데이터가, 송수신부(200)에 의해 수신된 것이 확인되면, 어드레스 제어부(140)는, 해당 송신 데이터가 격납된 어드레스에, 다른 데이터를 기입하여도 된다.
프레임 수신부(152)는, 수취한 DAT 프레임의 프레임 ID가, 미리 정해진 규칙에 의해 정해지는 프레임 ID와 다른 경우에, 수신 데이터 메모리(154)에의 수신 데이터의 출력을 정지한다. 프레임 수신부(152)는, 미리 정해진 규칙에 의해 정해지는 프레임 ID가 첨부된 DAT 프레임을 수취한 경우에, 수신 데이터 메모리(154)에의 수신 데이터의 출력을 재개하여도 된다. 또한, 프레임 수신부(152)는, 수신 통지부(132)가 송신한 ACK 프레임의 프레임 ID와 동일한 프레임 ID를 가지는 DAT 프레임을 재차 수취한 경우에, 재차 수취한 DAT 프레임을 파기하여도 된다.
또한, 프레임 수신부(152)는, 수신한 DAT 프레임의 프레임 ID가 DAT_ID 기대값과 다르다는 통지를, ID 기대값 비교부(158)로부터 수취한 경우에는, 수신한 데이터를 수신 데이터 메모리(154)에 출력하지 않고, 파기하여도 된다. 또한, 프레임 수신부(152)는, 수신한 DAT 프레임의 프레임 ID가 DAT_ID 기대값과 일치한다는 통지를, ID 기대값 비교부(158)로부터 수취한 경우에는, 수신 데이터를 수신 데이터 메모리(154)에 대하여 출력하여도 된다.
수신 데이터 메모리(154)는, 수신한 데이터를 격납하는 버퍼이다. 수신 데이터 메모리(154)는, 듀얼 포트 메모리이어도 된다. 수신 데이터 메모리(154)는, 프레임 수신부(152)가 출력하는 데이터를, 어드레스 제어부(164)가 출력하는 기입 어드레스에 기입하여도 된다. 또한, 수신 데이터 메모리(154)는, 어드레스 제어부(164)가 출력하는 독출 어드레스에 격납되어 있는 데이터를, 제어부(20)에 대하여 출력하여도 된다. 시리얼 전송부(40)는, 수신 데이터 메모리(154)에 격납된 수신 데이터를 독출하여도 된다.
도 3은, 본 실시 형태에 관한 수신측의 송수신부(200)의 구성을 도시한다. 송수신부(200)는, 데이터 송신부(220) 및 데이터 수신부(250)을 가진다. 데이터 송신부(220)는, 송신 데이터 메모리(228), DAT 프레임 송신부(230), 멀티플렉서(234), 수신 통지부(232), 재송신 제어부(236), 재송신 정보 관리부(238), 및 어드레스 제어부(240)를 가진다. 데이터 수신부(250)는, 프레임 수신부(252), 수신 데이터 메모리(254), ID 기대값 비교부(258), ID 기대값 갱신부(260), ID 기대값 기억부(262), 및 어드레스 제어부(264)를 가진다. 송수신부(100) 및 송수신부(200)의 대응하는 구성 요소는, 동일한 기능을 가져도 된다.
멀티플렉서(234) 및 프레임 수신부(252)는, 송수신부(100)와 접속되어, 데이터를 송수신한다. 송신 데이터 메모리(228) 및 수신 데이터 메모리(254)는, 시험 유닛(30)과 접속되어, 시험 데이터를 송수신한다. DAT 프레임 송신부(230)는, 송신 데이터 메모리(228)로부터 송신하는 데이터를 독출한 다음, 프레임 ID를 첨부하여 DAT 프레임을 생성한다.
수신 통지부(232)는, 프레임 수신부(252)가 수신한 DAT 프레임에 대응하는 ACK 프레임을 송신한다. 재송신 제어부(236)는, DAT 프레임의 송신 순서를 제어한다. ID 기대값 갱신부(260)는, ID 기대값 비교부(258)의 비교 결과에 기초하여, ID 기대값 기억부(262)가 기억하는 DAT_ID 기대값, 및 ACK_ID 기대값을 갱신한다.
도 4는, 송수신부(100) 및 송수신부(200)의 사이에 송수신되는, DAT 프레임 및 ACK 프레임의 프레임 구성을 도시한다. 프레임 코드에는, DAT 프레임과 ACK 프레임을 구별하기 위한 프레임 종류를 나타내는 정보, 및 재송신 카운트 정보를 포함하여도 된다.
프레임 ID에는, DAT 프레임 및 ACK 프레임을 식별하는 번호 정보가 격납된다. 송수신부(100) 및 송수신부(200)가 재송신 제어를 하는 경우에는, 프레임 ID를 참조한다. 프레임 길이에는, 송신하는 프레임의 데이터 길이가 격납된다. 송수신부(100) 및 송수신부(200)는, 수신한 데이터의 길이가, 프레임 길이가 나타내는 값과 일치하지 않는 경우에는, 수신 데이터에 에러가 생기고 있다고 판단하여도 된다.
커맨드 0 ~ 2에는, 송수신부(100) 및 송수신부(200)가, 데이터를 송신하는 상대에게 통지하고 싶은 제어 정보가 격납된다. 예를 들면, 수신한 데이터에 에러가 생긴 경우에는, 재송신을 요구하는 커맨드를 격납하여도 된다. 어드레스 0 ~ 어드레스 2에는, 송신처의 어드레스를 격납하여도 된다. 복수의 상대와 통신을 하는 경우에는, 각각의 상대에게 지정된 어드레스를 격납하여 송신하여도 된다. 예를 들면, 송수신부(100)가 송수신부(200)에 대하여 송신하는 경우에는, 어드레스 0 ~ 어드레스 2에, 「200」에 상당하는 값을 격납하여도 된다.
데이터 0 ~ 데이터 n에는, 송신하는 데이터를 격납한다. 데이터 길이는 가변이어도 된다. FCS는, 전송 매체(42)에서 생긴 에러를 검출하는 것을 목적으로 하는 프레임 체크 시컨스이다.
도 5는, 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에서의, 정상시의 시컨스를 도시한다. 데이터 송신측인 송수신부(100)는, DAT 프레임을 송수신부(200)에 대하여 송신하는 동시에, 송수신부(200)로부터 ACK 프레임을 수신한다. 「ACK_ID 기대값」은, 송신한 DAT 프레임에 대하여 수신하는 ACK 프레임의 프레임 ID의 기대값이고, ID 기대값 기억부(162)에 격납되고 있다.
데이터 수신측인 송수신부(200)는, DAT 프레임을 송수신부(100)로부터 수신하는 동시에, 송수신부(100)에 대하여 ACK 프레임을 송신한다. 「DAT_ID 기대값」은, 송수신부(200)가 수신하는 DAT 프레임의 프레임 ID의 기대값이고, ID 기대값 기억부(262)에 격납되고 있다.
예를 들면, S101에서, 송수신부(100)는 DAT 프레임 1을 송신한다. 송수신부(200)는, DAT 프레임 1을 수신하고(S201), ACK 프레임 1을 송수신부(100)에 대하여 송신한다(S301). 이 경우, 수신한 DAT 프레임 1의 프레임 ID인 「1」은, DAT_ID 기대값 「1」과 일치하므로, 프레임 수신부(252)는, 수신 데이터 메모리(254)에 대하여 데이터를 출력하여도 된다. 또한, ID 기대값 갱신부(260)는, ID 기대값 기억부(262)가 기억하는 DAT_ID 기대값을 1만 인크리먼트하여도 된다.
송수신부(100)는, 송수신부(200)가 송신한 ACK 프레임 1을 수신한다(S401). ACK 프레임 1에 첨부되어 있는 프레임 ID는 「1」이므로, ID 기대값 기억부(162)에 격납되어 있는 ACK_ID 기대값인 「1」과 일치한다. 따라서, 프레임 수신부(252)는, 송수신부(200)가 DAT 프레임 1을 정상적으로 수신하였다고 판단하여도 된다. 또한, ID 기대값 갱신부(160)는, ID 기대값 기억부(162)가 기억하는 ACK_ID 기대값을 1만 인크리먼트하여도 된다.
송수신부(100)는, DAT 프레임 1에 이어, DAT 프레임 2 및 DAT 프레임 3을 송신한다. 송수신부(100)는, 제어부(20)로부터 DAT 프레임 3에 계속되는 송신 데이터를 수취하지 않기 때문에, DAT 프레임 3을 송신한 후에도, DAT 프레임 3R을 계속하여 송신한다(S104 ~ S109). 또한, DAT 프레임 3R은, 프레임 ID가 「3」인 DAT 프레임의 재송신 프레임이다. 송수신부(100)는, DAT 프레임 3에 대한 ACK 프레임 3을 수신하면(S403), 송수신부(200)가 DAT 프레임 3을 정상적으로 수신하였다고 판단하여, DAT 프레임 3의 송신을 정지하여도 된다(S110).
도 6은, 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서의, 에러 발생시의 시컨스를 도시한다. 동 도면에서는, 송수신부(100)가 송신한 DAT 프레임 3이 전송 매체(42)에서 소실되었다고 가정하고 있다(S603). 송수신부(200)는, DAT 프레임 3을 수신할 수 없기 때문에, ACK 프레임 3을 송신하지 않는다. 따라서, 송수신부(100)는, S802에서 ACK 프레임 2를 수신한 후에, ACK 프레임 3을 수신할 수 없다.
송수신부(100)는, DAT 프레임 3의 송신 후, S504 ~ S510에서 DAT 프레임 3R을 재송신한다. 이에 대하여, 송수신부(200)는, 재송신된 DAT 프레임 3R을 수신한다(S604). 송수신부(200)는, 수신한 DAT 프레임 3R의 프레임 ID를 격납한 ACK 프레임 3R을 송신한다(S705).
또한, 송수신부(200)는, 수신한 DAT 프레임 3R의 프레임 ID 「3」이, ID 기대값 기억부(262)에 기억되어 있는 DAT_ID 기대값 「3」과 일치하므로, 수신한 데이터를 수신 데이터 메모리(254)에 출력하여도 된다. 또한, ID 기대값 갱신부(260)는, ID 기대값 기억부(262)가 기억하고 있는 DAT_ID 기대값을 1만 인크리먼트하여도 된다. 프레임 수신부(252)는, S605 이후에 수신하는 DAT 프레임 3R을 파기하여도 된다.
송수신부(100)는, 송수신부(200)가 송신한 ACK 프레임 3R을 수신한다(S804). 송수신부(100)는, DAT 프레임 3이 송수신부(200)에 정상적으로 도달하였다고 판단하여, DAT 프레임 3R의 송신을 정지하여도 된다. 이상과 같이, 송신해야 할 데이터가 없는 경우에, 직전에 송신한 DAT 프레임을 연속하여 재송신함으로써, 전송 매체(42)에서 에러가 생긴 경우에서도, 송수신부(200)는, 에러가 생긴 DAT 프레임을, 신속하게 수신할 수 있다.
도 7 내지 도 12는, 송수신부(100)로부터 송수신부(200)에의 전송 데이터의 송신에 있어서, 에러가 생긴 경우의 시컨스의 예를 도시한다. 또한, 도 7 내지 도 12의 각 도면에 도시된 시컨스는, 각 도면의 순서에 따라 연속하여 행해진다.
동 도면에서, 「재송신 카운트 정보 A」는, 송수신부(100)가 수신한 ACK 프레임에 포함되어 있는 재송신 카운트 정보를 도시한다. 「재송신 카운트 정보 D」는, 송수신부(100)가 송신한 DAT 프레임에 포함되어 있는 재송신 카운트 정보를 나타낸다. 초기 상태에서는, 재송신 카운트 정보 A 및 재송신 카운트 정보 D는, 모두, 「0」이다. 또한, 「Idle」은, 프레임의 송수신이 수행되지 않는 상태를 나타낸다.
이하, 도 7 내지 도 12에 도시된 시컨스에 따라, 재송신 카운트 정보, DAT_ID 기대값, 및 ACK_ID 기대값 등에 기초하는 재송신 제어의 상세에 대하여 설명한다. 도 7에서는, 송수신부(100)가 송신한 DAT 프레임 2가 전송 매체(42)에서 소실되었다고 가정하고 있다(S901). 이 경우, 송수신부(100)에서는, ACK 프레임 1을 수신한 다음에, ACK 프레임 3을 수신한다(S902). 프레임 수신부(152)는, 수신한 ACK 프레임에 포함되는 프레임 ID 및 재송신 카운트 정보 A를, 재송신 제어부(136)에 출력한다.
재송신 제어부(136)는, 수신한 ACK 프레임의 순서가 미리 정한 순서가 아닌 한편, 직전에 수신한 ACK 프레임 내의 재송신 카운트 정보 A에 대하여, 해당 ACK 프레임 내의 재송신 카운트 정보 A가 인크리먼트하고 있지 않는 경우에는, 송신한 DAT 프레임이 소실되었다고 판단하여도 된다. 예를 들면, S902에서는, ACK_ID 기대값이 「2」인 것에도 불구하고, 수신한 ACK 프레임의 프레임 ID가 「3」인 한편, ACK 프레임 1에 대하여 ACK 프레임 3에 격납되어 있는 재송신 카운트 정보 A가 인크리먼트되어 있지 않다. 따라서, 재송신 제어부(136)는, DAT 프레임 2가 송수신부(200)에 도달하지 않았다고 판단하고, DAT 프레임 2를 재송신하여도 된다.
재송신 제어부(136)는, 재송신 정보 관리부(138)이 기억하고 있는 재송신 카운트 정보 D를 독출하여, DAT 프레임 2의 재송신 카운트 정보가 「0」인 것을 인식한다. 여기에서, 재송신 제어부(136)는, 재송신 정보 관리부(138)가 관리하는 재송신 카운트 정보 D를 「1」로 갱신하여도 된다.
계속하여, 재송신 제어부(136)는, DAT 프레임 송신부(130)에 대하여 재송신 카운트 정보 D를 「1」로 하고, DAT 프레임 2를 송신하는 것을 통지한다. 또한, 재송신 제어부(136)는, 어드레스 제어부(140)에 대하여, DAT 프레임 2가 격납되어 있는 독출 어드레스를 출력하는 것을 지시한다. DAT 프레임 송신부(130)는, 송신 데이터 메모리(128)에 격납되어 있는 DAT 프레임 2의 데이터를 독출한 다음, 재송신 카운트 정보 D를 「1」로 하고, 송수신부(200)에 대하여 DAT 프레임 2를 재송신한다(S903).
도 8에서는, 송수신부(100)가 재송신한 DAT 프레임 2가, 다시 전송 매체(42)에서 소실되었다고 가정하고 있다(S911). 이 경우, 송수신부(100)는, 재송신 카운트 정보 A가 「0」인 ACK 프레임 4R을 수신한 후에, 재송신 카운트 정보 A가 「1」인 ACK 프레임 3을 수신한다(S912).
재송신 제어부(136)는, 수신한 ACK 프레임 내의 재송신 카운트 정보 A가, 직전에 수신한 ACK 프레임 내의 재송신 카운트 정보 A에 대하여 인크리먼트되는 동시에, 수신한 ACK 프레임 내의 프레임 ID가, ACK_ID 기대값과 다른 경우에는, 송신한 DAT 프레임이 소실되었다고 판단하여도 된다. 예를 들면, S912에서는, 수신한 ACK 프레임 3 내의 재송신 카운트 정보 A는 「1」이며, 직전에 수신한 ACK 프레임 4R 내의 재송신 카운트 정보 A의 「0」에 대하여 인크리먼트되고 있다. 또한, ACK 프레임 3의 프레임 ID 「3」은, ACK_ID 기대값 「2」에 일치하지 않는다. 따라서, 재송신 제어부(136)는, 재송신한 ACK 프레임 2가 송수신부(200)에 도달하지 않았다고 판단하여도 된다. 재송신 제어부(136)는, 재송신 카운트 정보 D를 「2」로 하는 DAT 프레임 2를 송수신부(200)에 대하여 송신할 수 있도록 DAT 프레임 송신부(130) 및 어드레스 제어부(140)를 제어하여도 된다(S913).
도 9에서는, 송수신부(200)는, 2번째의 재송신이 수행된 DAT 프레임 2를 수신한다. 송수신부(200)는, 수신한 DAT 프레임 2의 프레임 ID 「2」가, DAT_ID 기대값 「2」와 일치하므로, 수신 데이터를 수신 데이터 메모리(254)에 출력하여도 된다. 또한, 송수신부(200)는, ID 기대값 기억부(262)가 기억하는 DAT_ID 기대값을 인크리먼트하여도 된다(S921).
송수신부(100)는, 송수신부(200)가 송신하는 ACK 프레임 2를 수신한다(S922). 재송신 제어부(136)는, 수신한 ACK 프레임 내의 재송신 카운트 정보 A가, 직전에 수신한 ACK 프레임 내의 재송신 카운트 정보 A에 대하여 인크리먼트되는 한편, 수신한 ACK 프레임의 프레임 ID가, ACK_ID 기대값과 일치하는 경우에는, 재송신한 프레임이 송수신부(200)에 정상적으로 도달하였다고 판단하여도 된다.
예를 들면, S922에서는, ACK 프레임 2의 전에 수신한 ACK 프레임 4R의 재송신 카운트 정보 A가 「1」인데 대하여, ACK 프레임 2 내의 재송신 카운트 정보 A는 「2」이다. 또한, ACK 프레임 2의 프레임 ID 「2」는, ACK_ID 기대값 「2」와 일치한다. 따라서, 재송신 제어부(136)는, 재송신한 DAT 프레임 2가, 정상적으로 송수신부(200)에 도달하였다고 판단하여도 된다. 재송신 제어부(136)는, 재송신 프레임이 정상적으로 송수신부(200)에 도달하였다고 판단하면, 재송신 정보 관리부(138)가 관리하는 재송신 카운트 정보 D를 리셋트하여 「0」으로 갱신하여도 된다(S923).
여기에서, 송수신부(100)가 송신한 DAT 프레임 4가, 전송 매체(42)에서 소실되었다고 가정한다(S924). 이 경우에는, 도 10에 도시된 바와 같이, 송수신부(100)는, ACK 프레임 3에 이어 ACK 프레임 5를 수신하므로, 재송신 제어부(136)는 ACK 프레임 4가 소실되었다고 판단한다(S931). 여기에서, 재송신 제어부(136)는, 재송신 카운트 정보 D를 「1」로 하고 DAT 프레임 4를 재송신할 수 있도록, DAT 프레임 송신부(130) 및 어드레스 제어부(140)를 제어한다(S932).
송수신부(200)는, 재송신된 DAT 프레임 4를 수신한다. 수신한 DAT 프레임 4의 프레임 ID는, DAT_ID 기대값 「4」에 일치한다. 여기에서, 송수신부(200)는, 수신 데이터를 수신 데이터 메모리(254)에 출력한 다음, ID 기대값 기억부(262)가 기억하는 DAT_ID 기대값을 「5」로 갱신한다(S933).
송수신부(100)는, S934에서, 재송신 카운트 정보 A가 「2」인 ACK 프레임 6R과 재송신 카운트 정보 A가 「0」인 ACK 프레임 6R을 수신한다. 수신한 ACK 프레임 6R의 프레임 ID는, ACK_ID 기대값과 다르다. 이 경우도, 재송신 제어부(136)는, 수신한 ACK 프레임에 포함되어 있는 재송신 카운트 정보 A가 인크리먼트되지 않는 한편, 수신한 ACK 프레임의 프레임 ID가 직전에 수신한 ACK 프레임의 프레임 ID와 동일하면, 에러가 발생하였다고 판단하지 않아도 된다.
도 11에 있어서, 송수신부(100)는, ACK 프레임 4를 수신한다(S941). 수신한 ACK 프레임 4는, 재송신 카운트 정보 A가 인크리먼트되는 동시에, ACK_ID 기대값과 일치하고 있다. 따라서, 재송신 제어부(136)는, S932에서 재송신한 DAT 프레임 4가 정상적으로 송수신부(200)에 도달하였다고 판단하여도 된다. 여기에서, 재송신 제어부(136)는, 재송신 카운트 정보 D를 리셋트하여 「0」으로 한 다음, DAT 프레임 7을 송신할 수 있도록, DAT 프레임 송신부(130) 및 어드레스 제어부(140)를 제어하여도 된다(S942).
여기에서, 송수신부(100)가 송신한 DAT 프레임 7이, 전송 매체(42)에서 소실되었다고 가정한다(S943). 그러면, 송수신부(100)는, 도 12의 S951에서, ACK 프레임 6R에 이어 ACK 프레임 7R을 수신한다. 수신한 ACK 프레임 7R의 재송신 카운트 정보 A는 「0」이며, 직전에 수신한 ACK 프레임 6R의 재송신 카운트 정보 A의 「1」로부터 디크리먼트되고 있다. 또한, ACK 프레임 7R의 프레임 ID 「7」은, ACK_ID 기대값과 일치한다.
따라서, 재송신 제어부(136)는, DAT 프레임 7이 송수신부(200)에 정상적으로 도달하였다고 판단하여도 된다. 이와 같이, 송수신부(100)는, 보내야 할 데이터가 없는 경우에, 동일한 프레임을 연속하여 송신함으로써, 송신한 DAT 프레임이 소실되어도, 해당 DAT 프레임을 재송신하지 않고, 송신해야 할 데이터를 송수신부(200)에 보낼 수 있다.
도 13은, 송수신부(100)의 제2 구성을 도시한다. 어드레스 제어부(140)는, 기입 어드레스 포인터 관리부(142), 독출 어드레스 포인터 관리부(144), 및 메모리 관리부(146)를 가진다. 또한, 어드레스 제어부(164)는, 기입 어드레스 포인터 관리부(166), 독출 어드레스 포인터 관리부(168), 및 메모리 관리부(170)를 가진다.
기입 어드레스 포인터 관리부(142)는, 제어부(20)가 송신 데이터 메모리(128)에 데이터를 기입하는 어드레스를 나타내는, 기입 어드레스 포인터를 관리한다. 기입 어드레스 포인터 관리부(142)는, 송신 데이터 메모리(128)의 기입 어드레스를, 프레임 단위로 관리하여도 된다. 예를 들면, 제어부(20)가 1 프레임 분의 데이터를 기입할 때마다, 기입 어드레스 포인터를 가산하여도 된다.
독출 어드레스 포인터 관리부(144)는, DAT 프레임 송신부(130)가 송신 데이터 메모리(128)로부터 데이터를 독출하는 어드레스를 나타내는, 독출 어드레스 포인터를 관리한다. 독출 어드레스 포인터 관리부(144)는, 송신 데이터 메모리(128)의 독출 어드레스를, 프레임 단위로 관리하여도 된다. 예를 들면, DAT 프레임 송신부(130)가 1 프레임 분의 데이터를 독출할 때마다, 독출 어드레스 포인터를 가산하여도 된다.
어드레스 제어부(164)는, 기입 어드레스 포인터 관리부(166), 독출 어드레스 포인터 관리부(168), 및 메모리 관리부(170)를 가진다. 기입 어드레스 포인터 관리부(166)는, 프레임 수신부(152)가 수신 데이터 메모리(154)에 데이터를 기입하는 어드레스 포인터를 관리한다. 기입 어드레스 포인터 관리부(166)는, 수신 데이터 메모리(154)의 기입 어드레스를, 프레임 단위로 관리하여도 된다. 예를 들면, 프레임 수신부(152)가 1 프레임 분의 데이터를 기입할 때마다, 기입 어드레스 포인터를 가산하여도 된다.
독출 어드레스 포인터 관리부(168)는, 제어부(20)가 수신 데이터 메모리(154)로부터 데이터를 독출하는 어드레스 포인터를 관리한다. 독출 어드레스 포인터 관리부(168)는, 수신 데이터 메모리(154)의 독출 어드레스를, 프레임 단위로 관리하여도 된다. 예를 들면, 제어부(20)가 1 프레임 분의 데이터를 독출할 때마다, 독출 어드레스 포인터를 감산하여도 된다.
도 14는, 송신 데이터 메모리(128)에 전송 데이터를 기입하는 경우의, 기입 어드레스 포인터 및 독출 어드레스 포인터의 관계를 도시한다. 동 도면에서, C_WAP는, 기입 어드레스 포인터를 나타낸다. C_RAP는, 독출 어드레스 포인터를 나타낸다. 기입 어드레스 포인터 관리부(142)는, 기입 어드레스 포인터가 「독출 어드레스 포인터가 나타내는 어드레스 - 1」의 어드레스, 즉 N_WAP가 나타내는 어드레스에 도달할 때까지, 기입 어드레스 포인터를 1씩 인크리먼트하여도 된다. 또한, 기입 어드레스 포인터 관리부(142)는, 제어부(20)가 송신 데이터 메모리(128)에 전송 데이터를 기입한 경우에, 송신 데이터 메모리(128)의 기입 어드레스를 인크리먼트하는 동시에, 기입 어드레스가 소정의 최종 어드레스 값이 된 경우에, 기입 어드레스를 소정의 초기 어드레스에 루프시켜도 된다.
예를 들면, 동 도면에 도시된 바와 같이, 기입 어드레스 포인터가 「30」이며, 독출 어드레스 포인터가 「3」인 경우에는, 기입 어드레스 포인터 관리부(142)는, 제어부(20)가 기입하는 전송 데이터를 어드레스 「30」으로부터 기입할 수 있도록 제어한다. 제어부(20)가 1 프레임 분의 전송 데이터를 어드레스 「30」에 기입하면, 기입 어드레스 포인터를 1만 인크리먼트하여, 「0」으로 하여도 된다. 그리고, 기입 어드레스 포인터 관리부(142)는, 기입 어드레스 포인터가 「2」까지 도달하면, 어드레스의 인크리먼트를 정지하여도 된다. 기입 어드레스 포인터 관리부(142)는, 제어부(20)에 대하여, 기입 정지 신호를 출력하여도 된다.
또한, 기입 어드레스 포인터 관리부(142)는, 기입 어드레스 포인터로부터, 최대로 「어드레스 수 - 1」의 수에 상당하는 프레임 분의 전송 데이터를 연속하여 기입할 수 있도록, 어드레스를 제어하여도 된다. 본 예에서는, 송신 데이터 메모리(128)는 31의 어드레스를 가지므로, DAT 프레임 송신부(130)는, 30 프레임 분의 전송 데이터를 독출하여도 된다.
도 15는, 송신 데이터 메모리(128)로부터 전송 데이터를 독출하는 경우의, 기입 어드레스 포인터 및 독출 어드레스 포인터의 관계를 나타낸다. 동 도면에서, C_WAP는, 기입 어드레스 포인터의 위치이고, 다음의 프레임의 전송 데이터를 기입하는 어드레스를 나타낸다. C_RAP는 독출 어드레스 포인터의 위치를 나타낸다. 독출 어드레스 포인터 관리부(144)는, 독출 어드레스 포인터가 「기입 어드레스 포인터가 나타내는 어드레스 - 1」의 어드레스, 즉, N_RAP가 나타내는 어드레스에 도달할 때까지, 독출 어드레스 포인터를 1씩 인크리먼트하여도 된다.
또한, 독출 어드레스 포인터 관리부(144)는, DAT 프레임 송신부(130)가 송신 데이터 메모리(128)로부터 전송 데이터를 독출한 경우에, 송신 데이터 메모리(128)의 독출 어드레스를 인크리먼트하는 동시에, 독출 어드레스가 소정의 최종 어드레스 값이 된 경우에, 독출 어드레스를 소정의 초기 어드레스에 루프 시켜도 된다. 예를 들면, 기입 어드레스 포인터가 「2」이며, 독출 어드레스 포인터가 「3」인 경우에는, 독출 어드레스 포인터 관리부(144)는, DAT 프레임 송신부(130)가 1 프레임 분의 전송 데이터를 독출할 때마다, 독출 어드레스 포인터를 1씩 인크리먼트하여도 된다. 그리고, 독출 어드레스 포인터 관리부(144)는, 독출 어드레스 포인터가 「30」에 도달하면, 다음은 「0」으로 돌아와, 독출 어드레스 포인터가 「2」에 도달할 때까지 계속하여도 된다.
덧붙여 독출 어드레스 포인터 관리부(144)는, 독출 어드레스 포인터로부터, 최대로 「어드레스 수 - 1」의 수에 상당하는 프레임 분의 전송 데이터를 연속하여 독출할 수 있도록, 어드레스를 제어하여도 된다. 본 예에서는, 송신 데이터 메모리(128)는 31개의 어드레스를 가지므로, DAT 프레임 송신부(130)는, 30 프레임 분의 전송 데이터를 독출하여도 된다.
메모리 관리부(146)는, 송신 데이터 메모리(128)가 격납하고 있는, 송수신부(200)가 수신하고 있지 않는 미수신의 전송 데이터의 개수를 관리한다. 메모리 관리부(146)는, 수신한 ACK 프레임에 의해 나타나는, 송수신부(200)에서의 DAT 프레임의 수신 순서가, 미리 정해진 순서와 일치하는 경우에, 미수신의 전송 데이터의 개수로부터 소정값을 빼도 된다. 예를 들면, 메모리 관리부(146)가 관리하고 있는 미수신의 전송 데이터의 개수가 「5」이라 한다. 이 경우에, 메모리 관리부(146)는, 재송신 제어부(136)로부터의 통지에 의해, 송수신부(200)에 대하여 1 프레임이 정상적으로 도달한 것을 인식하면, 미수신의 전송 데이터의 개수를 「4」로 하여도 된다.
기입 어드레스 포인터 관리부(142)는, 메모리 관리부(146)가 관리하는 미수신의 전송 데이터의 개수가, 송신 데이터 메모리(128)의 어드레스 수에 따른 수가 될 때까지, 기입 어드레스를 인크리먼트하여도 된다. 예를 들면, 송신 데이터 메모리(128)가 31 프레임 분의 어드레스를 가지고 있는 경우에는, 송수신부(200)가 수신하고 있지 않는 DAT 프레임의 개수가 「31」에 도달할 때까지는, 기입 어드레스를 1씩 가산하여도 된다.
기입 어드레스 포인터 관리부(142) 및 독출 어드레스 포인터 관리부(144)는, 기입 어드레스 및 독출 어드레스가 일치하지 않도록, 기입 어드레스 및 독출 어드레스를 제어하여도 된다. 예를 들면, 기입 어드레스 포인터가 「10」이며, 독출 어드레스 포인터가 「5」인 경우에는, 독출 가능한 전송 데이터는, 어드레스 「5」로부터 어드레스 「9」에 격납되고 있다. 여기에서, 독출 어드레스 포인터 관리부(144)는, DAT 프레임 송신부(130)로부터 독출 신호를 수신한 경우에, 어드레스 「5」로부터 어드레스 「9」까지는 순차적으로 어드레스를 변화시키는 동시에, 어드레스 「10」이상의 어드레스를 출력하지 않게 제어하여도 된다.
마찬가지로, 독출 어드레스가 「10」이며, 기입 어드레스가 「5」인 경우에는, DAT 프레임 송신부(130)는, 어드레스 「5」로부터 어드레스 「9」에 격납되어 있는 전송 데이터를 이미 송신하고 있다. 따라서, 기입 어드레스 포인터 관리부(142)는, 시리얼 전송부(40)로부터 기입 신호를 수신한 경우에, 어드레스 「5」로부터 어드레스 「9」까지는 순차적으로 어드레스를 변화시키는 동시에, 어드레스 「10」이상의 어드레스를 출력하지 않도록 제어하여도 된다.
여기서, 송수신부(200)로 미수신의 전송 데이터 수가, 송신 데이터 메모리(128)의 어드레스 수를 상회하는 경우에는, 송수신부(200)에 송신해야 하는 전송 데이터가 소실되어 버린다. 여기에서, 기입 어드레스 포인터 관리부(142)는, 송수신부(200)가 미수신의 전송 데이터를 보관해 둘 수 있도록 제어하는 것이 바람직하다. 예를 들면, 기입 어드레스 포인터 관리부(142)는, 메모리 관리부(146)이 관리 하는 미수신의 전송 데이터의 개수가, 송신 데이터 메모리(128)의 어드레스 수 보다 1 적은 수가 될 때까지, 기입 어드레스를 인크리먼트하여도 된다.
도 16은, 제2 실시 형태에 관한 컴퓨터(1900)의 하드웨어 구성의 일례를 도시한다. 본 실시 형태에 관한 컴퓨터(1900)는, 호스트·컨트롤러(2082)에 의해 서로 접속되는 CPU(2000), RAM(2020), 그래픽·컨트롤러(2075), 및 표시 장치(2080)를 가지는 CPU 주변부와, 입출력 컨트롤러(2084)에 의해 호스트·컨트롤러(2082)에 접속되는 통신 인터페이스(2030), 하드 디스크 드라이브(2040), 및 CD-ROM 드라이브(2050)를 가지는 입출력부와, 입출력 컨트롤러(2084)에 접속되는 ROM(2010), 플렉시블 디스크·드라이브(2050), 및 입출력 칩(2070)을 가지는 레거시 입출력부를 구비한다.
호스트·컨트롤러(2082)는, RAM(2020)과, 높은 전송 레이트로 RAM(2020)을 액세스하는 CPU(2000) 및 그래픽·컨트롤러(2075)를 접속한다. CPU(2000)는, ROM(2010) 및 RAM(2020)에 격납된 프로그램에 기초하여 동작하여, 각부의 제어를 실시한다. 그래픽·컨트롤러(2075)는, CPU(2000) 등이 RAM(2020) 내에 마련한 프레임·버퍼 상에 생성하는 화상 데이터를 취득하여, 표시 장치(2080) 상에 표시시킨다. 이에 대신하여, 그래픽·컨트롤러(2075)는, CPU(2000) 등이 생성하는 화상 데이터를 격납하는 프레임·버퍼를, 내부에 포함하여도 된다.
입출력 컨트롤러(2084)는, 호스트·컨트롤러(2082)와, 비교적 고속인 입출력 장치인 통신 인터페이스(2030), 하드 디스크 드라이브(2040), CD-ROM 드라이브(2050)를 접속한다. 통신 인터페이스(2030)는, 네크워크를 통해서 다른 장치와 통신한다. 하드 디스크 드라이브(2040)는, 컴퓨터(1900) 내의 CPU(2000)가 사용하는 프로그램 및 데이터를 격납한다. CD-ROM 드라이브(2050)는, CD-ROM(2095)으로부터 프로그램 또는 데이터를 독취하고, RAM(2020)을 통해서 하드 디스크 드라이브(2040)에 제공한다.
또한, 입출력 컨트롤러(2084)에는, ROM(2010)과, 플렉시블 디스크·드라이브(2050), 및 입출력 칩(2070)의 비교적 저속인 입출력 장치가 접속된다. ROM(2010)은, 컴퓨터(1900)가 기동 시에 실행하는 부트·프로그램, 및/또는 컴퓨터(1900)의 하드웨어에 의존하는 프로그램 등을 격납한다. 플렉시블 디스크·드라이브(2050)는, 플렉시블 디스크(2090)로부터 프로그램 또는 데이터를 독취하고, RAM(2020)를 통해서 하드 디스크 드라이브(2040)에 제공한다. 입출력 칩(2070)은, 플렉시블 디스크·드라이브(2050)를 입출력 컨트롤러(2084)로 접속하는 동시에, 예를 들면 패러럴·포트, 시리얼·포트, 키보드·포트, 마우스·포트 등을 통해서 각종의 입출력 장치를 입출력 컨트롤러(2084)로 접속한다.
RAM(2020)를 통해서 하드 디스크 드라이브(2040)에 제공되는 프로그램은, 플렉시블 디스크(2090), CD-ROM(2095), 또는 IC 카드 등의 기록 매체에 격납되어 이용자에 의해 제공된다. 프로그램은, 기록 매체로부터 독출되어, RAM(2020)을 통해서 컴퓨터(1900) 내의 하드 디스크 드라이브(2040)에 인스톨되어 CPU(2000)에서 실행된다.
컴퓨터(1900)에 인스톨되어 컴퓨터(1900)를 반도체 시험 장치(10)로서 기능 시키는 프로그램은, 컴퓨터(1900)를, 제어부(20), 시험 유닛(30), 및 시리얼 전송부(40)로서 기능시킨다. 해당 프로그램은, 컴퓨터(1900)에, 송신측에서, 미리 정해진 순서로 복수의 전송 데이터를 송신시키는 데이터 송신 모듈과, 수신측에서 전송 데이터를 수취한 경우에, 해당 전송 데이터를 수취한 취지의 확인 신호를 송신측에 송신시키는 수신 통지 모듈과, 확인 신호로 나타나는 전송 데이터의 수신 순서가, 미리 정해진 순서와 다른 경우에, 미리 정해진 순서가 수신 순서와 다르게 된 전송 데이터로부터, 전송 데이터가 재송신의 데이터인지 여부를 나타내는 재송신 카운트 정보를 첨부하여 수신측에 재송신시키는 재송신 제어 모듈과, 송신측으로 수취한 확인 신호에 첨부되어야 할 식별 데이터를 나타내는 확인 ID 기대값을 기억하는 확인 ID 기대값 기억 모듈을 구비한다. 이러한 프로그램 또는 모듈은, CPU(2000) 등의 제어에 의해, 컴퓨터(1900)를, 반도체 시험 장치(10)로서 각각 기능시킨다.
이러한 프로그램에 기술된 정보 처리는, 컴퓨터(1900)에 읽어 들이는 것으로, 소프트웨어과 상술한 각종의 하드웨어 자원이 협동한 구체적 수단인 DAT 프레임 송신부(130), 수신 통지부(132), 재송신 제어부(136), 및 재송신 정보 관리부(138)로서 기능한다. 그리고, 이러한 구체적 수단에 의해, 본 실시 형태에서의 컴퓨터(1900)의 사용 목적에 따른 정보의 연산 또는 가공을 실현함으로써, 사용 목적에 따른 특유의 반도체 시험 장치(10)가 구축된다.
일례로서, 컴퓨터(1900)와 외부의 장치 등과의 사이에 통신을 실시하는 경우에는, CPU(2000)는, RAM(2020) 상에 로드된 통신 프로그램을 실행하고, 통신 프로그램에 기술된 처리 내용에 기초하여, 통신 인터페이스(2030)에 대하여 통신 처리를 지시한다. 통신 인터페이스(2030)는, CPU(2000)의 제어를 받아, RAM(2020), 하드 디스크 드라이브(2040), 플렉시블 디스크(2090), 또는 CD-ROM(2095) 등의 기억 장치 상에 마련한 송신 버퍼 영역 등에 기억된 송신 데이터를 독출하여 네크워크로 송신하고, 또는 네크워크로부터 수신한 수신 데이터를 기억 장치 상에 마련한 수신 버퍼 영역 등으로 기입한다. 이와 같이, 통신 인터페이스(2030)는, DMA(다이렉트·메모리·액세스) 방식에 의해 기억 장치와의 사이에 송수신 데이터를 전송하여도 되고, 이에 대신하여, CPU(2000)가 전송원의 기억 장치 또는 통신 인터페이스(2030)로부터 데이터를 독출하여, 목적지의 통신 인터페이스(2030) 또는 기억 장치로 데이터를 기입하는 것으로 송수신 데이터를 전송하여도 된다.
또한, CPU(2000)는, 하드 디스크 드라이브(2040), CD-ROM 드라이브(2050)(CD-ROM(2095)), 플렉시블 디스크·드라이브(2050)(플렉시블 디스크(2090)) 등의 외부 기억 장치에 격납된 파일 또는 데이터 베이스 등의 중에서, 전부 또는 필요한 부분을 DMA 전송 등에 의해 RAM(2020)으로 독출하게 하여, RAM(2020)상의 데이터에 대하여 각종의 처리를 실시한다. 그리고, CPU(2000)는, 처리를 종료한 데이터를, DMA 전송 등에 의해 외부 기억 장치로 기입하여 되돌린다.
이러한 처리에서, RAM(2020)은, 외부 기억 장치의 내용을 일시적으로 유지하는 것으로 간주할 수 있기 때문에, 본 실시 형태에서는 RAM(2020) 및 외부 기억 장치 등을 메모리, 기억부, 또는 기억 장치 등으로 총칭한다. 본 실시 형태에서의 각종의 프로그램, 데이터, 테이블, 데이터 베이스 등의 각종의 정보는, 이러한 기억 장치 상에 격납되어, 정보 처리의 대상이 된다. 또한, CPU(2000)는, RAM(2020)의 일부를 캐시 메모리에 유지하고, 캐시 메모리 상에서 읽고 쓰기를 실시할 수도 있다. 이러한 형태에서도, 캐시 메모리는 RAM(2020)의 기능의 일부를 담당하기 때문에, 본 실시 형태에서는, 구별하여 나타내는 경우를 제외하고는, 캐시 메모리도 RAM(2020), 메모리, 및/또는 기억 장치에 포함되는 것으로 한다.
또한, CPU(2000)는, RAM(2020)으로부터 독출한 데이터에 대하여, 프로그램의 명령열에 의해 지정된, 본 실시 형태 중에 기재한 각종의 연산, 정보의 가공, 조건 판단, 정보의 검색·치환 등을 포함한 각종의 처리를 실시하고, RAM(2020)으로 기입하여 되돌린다. 예를 들면, CPU(2000)는, 조건 판단을 실시하는 경우에 있어서는, 본 실시 형태에서 나타낸 각종의 변수가, 다른 변수 또는 상수와 비교하여, 큰, 작은, 이상, 이하, 동일한 등의 조건을 만족하는지 여부를 판단하여, 조건이 성립한 경우(또는 불성립인 경우)에, 다른 명령열로 분기하거나, 또는 서브 루틴을 호출한다.
또한, CPU(2000)는, 기억 장치 내의 파일 또는 데이터 베이스 등에 격납된 정보를 검색할 수 있다. 예를 들면, 제1 속성의 속성값에 대해 제2 속성의 속성값이 각각 대응된 복수의 엔트리가 기억 장치에 격납되어 있는 경우에 있어서, CPU(2000)는, 기억 장치에 격납되어 있는 복수의 엔트리 중에서 제1 속성의 속성값이 지정된 조건과 일치하는 엔트리를 검색하고, 그 엔트리에 격납되어 있는 제2 속성의 속성값을 독출하는 것으로, 소정의 조건을 만족하는 제1 속성에 대응된 제2 속성의 속성값을 얻을 수 있다.
이상으로 나타낸 프로그램 또는 모듈은, 외부의 기록 매체에 격납되어도 된다. 기록 매체로서는, 플렉시블 디스크(2090), CD-ROM(2095) 외에, DVD 또는 CD 등의 광학 기록 매체, MO 등의 광자기 기록 매체, 테이프 매체, IC 카드 등의 반도체 메모리 등을 이용할 수 있다. 또한, 전용 통신 네크워크 또는 인터넷에 접속된 서버 시스템에 마련한 하드 디스크 또는 RAM 등의 기억 장치를 기록 매체로서 사용하고, 네크워크를 통해서 프로그램을 컴퓨터(1900)에 제공하여도 된다.
이상, 본 발명의 1 측면을 실시의 형태를 이용해 설명했지만, 본 발명의 기술적 범위는 상기 실시의 형태에 기재된 범위에는 한정되지 않는다. 상기 실시의 형태에, 다양한 변경 또는 개량을 더할 수 있다. 그와 같은 변경 또는 개량을 더한 형태도 본 발명의 기술적 범위에 포함될 수 있는 것이, 청구의 범위의 기재로부터 분명하다.
청구의 범위, 명세서, 및 도면 중에서 나타낸 장치, 시스템, 프로그램, 및 방법에서의 동작, 순서, 스텝, 및 단계 등의 각 처리의 실행 순서는, 특별히 「보다 전에」, 「앞서며」등으로 명시하고 있지 않고, 또한, 전의 처리의 출력을 후의 처리로 이용하지 않는 한, 임의의 순서로 실현할 수 있다는 것에 유의해야 한다. 청구의 범위, 명세서, 및 도면 중의 동작 플로우에 관해서, 편의상 「우선,」, 「다음에,」등을 이용하여 설명하였다고 해도, 이 순서로 실시하는 것이 필수인 것을 의미하는 것은 아니다.
상기 설명으로부터 분명한 바와 같이, 본 발명의 일실시 형태에 의하면, 반도체 시험 장치에 있어서의 데이터 송신에 있어서, 재송신 카운트 정보 및 확인 ID 기대값에 기초하여 재송신 제어를 실시하는 것으로, 버퍼 사이즈 및 회로 규모를 작게 할 수 있다.
10 반도체 시험 장치 20 제어부
22 시험 제어 프로그램 30 시험 유닛
40 시리얼 전송부 42 전송 매체
50 피시험 디바이스 100 송수신부
120 데이터 송신부 128 송신 데이터 메모리
130 DAT 프레임 송신부 132 수신 통지부
134 멀티플렉서 136 재송신 제어부
138 재송신 정보 관리부 140 어드레스 제어부
142 기입 어드레스 포인터 관리부 144 독출 어드레스 포인터 관리부
146 메모리 관리부 150 데이터 수신부
152 프레임 수신부 154 수신 데이터 메모리
158 ID 기대값 비교부 160 ID 기대값 갱신부
162 ID 기대값 기억부 164 어드레스 제어부
166 기입 어드레스 포인터 관리부 168 독출 어드레스 포인터 관리부
170 메모리 관리부 200 송수신부
202 데이터 선 204 제어선
206 데이터 선 208 제어선
220 데이터 송신부 228 송신 데이터 메모리
230 DAT 프레임 송신부 232 수신 통지부
234 멀티플렉서 236 재송신 제어부
238 재송신 정보 관리부 240 어드레스 제어부
250 데이터 수신부 252 프레임 수신부
254 수신 데이터 메모리 258 ID 기대값 비교부
260 ID 기대값 갱신부 262 ID 기대값 기억부
264 어드레스 제어부 1900 컴퓨터
2000 CPU 2010 ROM
2020 RAM 2030 통신 인터페이스
2040 하드 디스크 드라이브 2050 플렉시블 디스크·드라이브
2060 CD-ROM 드라이브 2070 입출력 칩
2075 그래픽·컨트롤러 2080 표시 장치
2082 호스트·컨트롤러 2084 입출력 컨트롤러
2090 플렉시블 디스크 2095 CD-ROM

Claims (22)

  1. 피시험 디바이스를 시험하는 시험 장치에 있어서,
    상기 피시험 디바이스와 전기적으로 접속되어 상기 피시험 디바이스를 시험하는 시험 유닛;
    상기 시험 유닛을 제어하는 제어부; 및
    상기 제어부 및 상기 시험 유닛의 사이에 전송 데이터를 전송하는 시리얼 전송부
    를 포함하고,
    상기 시리얼 전송부는,
    송신측에서, 미리 정해진 순서로 복수의 상기 전송 데이터를 송신하는 데이터 송신부;
    수신측에서 상기 전송 데이터를 수취한 경우에, 해당 전송 데이터를 수취한 취지의 확인 신호에 식별 데이터를 첨부하여 송신측에 송신하는 수신 통지부;
    상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 다른 경우에, 상기 미리 정해진 순서가 상기 수신 순서와 다르게 된 상기 전송 데이터로부터, 상기 전송 데이터가 재송신의 데이터인지 여부를 나타내는 재송신 카운트 정보를 첨부하여 상기 수신측에 재송신시키는 재송신 제어부; 및
    상기 송신측으로 수취한 상기 확인 신호에 첨부되어야 할 상기 식별 데이터를 나타내는 확인 ID 기대값을 기억하는 확인 ID 기대값 기억부
    를 포함하고,
    상기 수신 통지부는, 수신한 상기 전송 데이터에 대한 상기 확인 신호에, 해당 전송 데이터의 재송신 카운트 정보를 첨부하여, 상기 송신측에 송신시키고,
    상기 재송신 제어부는, 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 다른 경우에 있어서, 상기 재송신 카운트 정보가 재송신의 데이터인 취지를 나타내고 있는 한편, 상기 확인 신호에 첨부된 상기 식별 데이터가 상기 확인 ID 기대값과 일치하는 경우에, 상기 전송 데이터의 재송신을 실시하지 않는,
    시험 장치.
  2. 제1항에 있어서,
    상기 재송신 제어부는, 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가 상기 미리 정해진 순서와 다른 경우에 있어서, 상기 확인 신호에 첨부된 상기 식별 데이터가 상기 확인 ID 기대값과 일치하고 있지 않는 경우에, 상기 전송 데이터의 재송신을 실시하는,
    시험 장치.
  3. 제2항에 있어서,
    상기 재송신 제어부는, 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가 상기 미리 정해진 순서와 다른 한편, 해당 확인 신호에 대응하는 상기 전송 데이터가, 상기 확인 ID 기대값에 대응하는 상기 전송 데이터와 일치하지 않는다고 판단하고, 상기 전송 데이터를 재송신한 회수를 나타내는 상기 재송신 카운트 정보를 생성하는,
    시험 장치.
  4. 제3항에 있어서,
    상기 시리얼 전송부는, 상기 재송신 카운트 정보에 나타나는 재송신 회수가, 미리 정해진 임계값을 넘었을 경우에, 상기 전송 데이터의 전송을 정지하는,
    시험 장치.
  5. 제4항에 있어서,
    상기 재송신 제어부는, 상기 확인 ID 기대값에 대응하는 상기 전송 데이터를 수신한 취지의 상기 확인 신호를 수취한 경우에, 상기 재송신 카운트 정보에 나타나는 재송신 회수를 초기값으로 리셋트하는,
    시험 장치.
  6. 제1항에 있어서,
    상기 시리얼 전송부는, 각각의 상기 전송 데이터를 식별하는 식별 데이터를 첨부하여, 상기 전송 데이터를 전송하고,
    상기 수신 통지부는, 수취한 상기 전송 데이터의 상기 식별 데이터를 포함한 상기 확인 신호를 상기 송신측에 송신하는,
    시험 장치.
  7. 제3항에 있어서,
    상기 재송신 제어부는, 다음에 송신해야 할 상기 전송 데이터가 상기 데이터 송신부에게 주어지지 않는 경우에, 다음에 송신해야 할 상기 전송 데이터가 상기 데이터 송신부에게 주어질 때까지, 직전에 송신한 상기 전송 데이터를 상기 수신측에 계속 재송신시키는,
    시험 장치.
  8. 제7항에 있어서,
    상기 시리얼 전송부는, 상기 수신측에서, 상기 수신 통지부가 송신한 상기 확인 신호의 상기 식별 데이터와 동일한 상기 식별 데이터가 첨부된 상기 전송 데이터를 재차 수취한 경우에, 재차 수취한 상기 전송 데이터를 파기하는 데이터 수신부를 더 포함하고,
    상기 수신 통지부는, 재차 수취한 상기 전송 데이터에 대하여, 상기 확인 신호를 상기 송신측에 송신한는,
    시험 장치.
  9. 제8항에 있어서,
    상기 데이터 송신부는, 순차적으로 송신하는 상기 전송 데이터에 첨부되는 식별 데이터를, 상기 전송 데이터마다 미리 정해진 규칙으로 변화시키고,
    상기 데이터 수신부는, 수취한 상기 전송 데이터의 상기 식별 데이터가, 상기 미리 정해진 규칙에 의해 정해지는 상기 식별 데이터와 다른 경우에, 후단의 회로에의 상기 전송 데이터의 출력을 정지하는,
    시험 장치.
  10. 제9항에 있어서,
    상기 데이터 수신부는, 상기 미리 정해진 규칙에 의해 정해지는 상기 식별 데이터가 첨부된 상기 전송 데이터를 수취한 경우에, 후단의 회로에의 상기 전송 데이터의 출력을 재개하는,
    시험 장치.
  11. 제10항에 있어서,
    상기 시리얼 전송부는,
    상기 수신측에서 수취한 상기 전송 데이터에 첨부되어야 할 상기 식별 데이터의 데이터 ID 기대값을 기억하는 데이터 ID 기대값 기억부;
    상기 수신측에서 수취한 상기 전송 데이터에 첨부되어 있는 상기 식별 데이터를, 상기 데이터 ID 기대값 기억부가 기억하고 있는 상기 데이터 ID 기대값과 비교하는 데이터 ID 비교부; 및
    상기 수신측에서 수취한 상기 전송 데이터에 첨부되어 있는 상기 식별 데이터가, 상기 데이터 ID 기대값 기억부가 기억하고 있는 상기 데이터 ID 기대값과 일치한 경우에, 상기 데이터 ID 기대값 기억부가 기억하는 상기 데이터 ID 기대값을, 상기 미리 정해진 규칙에 기초하여 갱신하는 데이터 ID 기대값 갱신부
    를 더 포함하는,
    시험 장치.
  12. 제11항에 있어서,
    상기 시리얼 전송부는,
    상기 송신측에서 수취한 상기 확인 신호에 첨부되어 있는 상기 식별 데이터를, 상기 확인 ID 기대값 기억부가 기억하고 있는 상기 확인 ID 기대값과 비교하는 확인 ID 비교부; 및
    상기 송신측에서 수취한 상기 확인 신호에 첨부되어 있는 상기 식별 데이터가, 상기 확인 ID 기대값 기억부가 기억하고 있는 상기 확인 ID 기대값과 일치한 경우에, 상기 확인 ID 기대값 기억부가 기억하는 상기 확인 ID 기대값을, 상기 미리 정해진 규칙에 기초하여 갱신하는 확인 ID 기대값 갱신부
    를 더 포함하는,
    시험 장치.
  13. 제12항에 있어서,
    상기 재송신 제어부는, 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가 상기 미리 정해진 순서와 다른 경우에 있어서, 해당 확인 신호에 첨부된 상기 재송신 카운트 정보가, 직전에 수신한 상기 확인 신호에 첨부된 상기 재송신 카운트 정보에 대하여 인크리먼트되는 한편, 상기 확인 신호로 나타나는 식별 신호가, 상기 확인 ID 기대값 기억부가 기억하고 있는 상기 확인 ID 기대값과 일치하는 경우에, 상기 재송신 카운트 정보에 나타나는 재송신 회수를 초기값으로 리셋트하는,
    시험 장치.
  14. 제12항에 있어서,
    상기 재송신 제어부는, 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가 상기 미리 정해진 순서와 다른 경우에 있어서, 해당 확인 신호에 첨부된 상기 재송신 카운트 정보가, 직전에 수신한 상기 확인 신호에 첨부된 상기 재송신 카운트 정보에 대하여 인크리먼트되어 있지 않은 경우에, 상기 전송 데이터의 재송신을 실시하는,
    시험 장치.
  15. 제12항에 있어서,
    상기 재송신 제어부는, 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가 상기 미리 정해진 순서와 다른 경우에 있어서, 상기 확인 신호에 첨부된 상기 재송신 카운트 정보가, 직전에 수신한 상기 확인 신호에 첨부된 상기 재송신 카운트 정보에 대하여 인크리먼트되는 한편, 상기 확인 신호로 나타나는 식별 신호가, 상기 확인 ID 기대값 기억부가 기억하고 있는 상기 확인 ID 기대값과 일치하지 않는 경우에, 상기 전송 데이터의 재송신을 실시하는,
    시험 장치.
  16. 제1항에 있어서,
    상기 데이터 송신부는,
    상기 송신측에 설치되어 복수의 어드레스를 가지고, 주어지는 상기 전송 데이터를 기입 가능한 상기 복수의 어드레스에 기입하는 한편, 독출 어드레스에 의해 지정되는 어드레스의 상기 전송 데이터를 출력하는 데이터 메모리; 및
    상기 송신측으로 수취한 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 일치하는 경우에, 해당 확인 신호에 대응하는 상기 전송 데이터가 격납된 상기 데이터 메모리의 어드레스를, 기입 가능한 어드레스로서 제어하는 어드레스 제어부
    시험 장치.
  17. 제16항에 있어서,
    상기 어드레스 제어부는,
    상기 데이터 메모리에 상기 전송 데이터를 기입한 경우에, 상기 데이터 메모리의 기입 어드레스를 인크리먼트하고, 상기 기입 어드레스가 소정의 최종 어드레스 값이 된 경우에, 상기 기입 어드레스를 소정의 초기 어드레스에 루프시키는 기입 어드레스 포인터 관리부; 및
    상기 데이터 메모리가 격납하고 있는 미수신의 상기 전송 데이터의 개수를 관리하는 메모리 관리부
    를 포함하고,
    상기 기입 어드레스 포인터 관리부는, 상기 메모리 관리부가 관리하는 미수신의 상기 전송 데이터의 개수가, 상기 데이터 메모리의 어드레스 수에 따른 수가 될 때까지, 상기 기입 어드레스를 인크리먼트 가능하고,
    상기 메모리 관리부는, 수신한 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 일치하는 경우에, 상기 미수신의 상기 전송 데이터의 개수로부터 소정값을 빼는,
    시험 장치.
  18. 제17항에 있어서,
    상기 어드레스 제어부는, 상기 데이터 메모리로부터 상기 전송 데이터를 독출한 경우에, 상기 데이터 메모리의 독출 어드레스를 인크리먼트하고, 상기 독출 어드레스가 소정의 최종 어드레스 값이 된 경우에, 상기 독출 어드레스를 소정의 초기 어드레스에 루프시키는 독출 어드레스 포인터 관리부를 더 포함하고,
    상기 기입 어드레스 포인터 관리부 및 상기 독출 어드레스 포인터 관리부는, 상기 기입 어드레스 및 상기 독출 어드레스가 일치하지 않도록, 상기 기입 어드레스 및 상기 독출 어드레스를 제어하는,
    시험 장치.
  19. 제18항에 있어서,
    상기 기입 어드레스 포인터 관리부는, 상기 메모리 관리부가 관리하는 미수신의 상기 전송 데이터의 개수가, 상기 데이터 메모리의 어드레스 수보다 1 적은 수가 될 때까지, 상기 기입 어드레스를 인크리먼트할 수 있는,
    시험 장치.
  20. 수신측 및 송신측의 사이에 전송 데이터를 전송하는 시리얼 전송 시스템에서 있어서,
    송신측에서, 미리 정해진 순서로 복수의 상기 전송 데이터를 송신하는 데이터 송신부;
    수신측에서 상기 전송 데이터를 수취한 경우에, 해당 전송 데이터를 수취한 취지의 확인 신호에 식별 데이터를 첨부하여 송신측에 송신하는 수신 통지부;
    상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 다른 경우에, 상기 미리 정해진 순서가 상기 수신 순서와 다르게 된 상기 전송 데이터로부터, 상기 전송 데이터가 재송신의 데이터인지 여부를 나타내는 재송신 카운트 정보를 첨부하여 상기 수신측에 재송신시키는 재송신 제어부; 및
    상기 송신측으로 수취한 상기 확인 신호에 첨부되어야 할 상기 식별 데이터를 나타내는 확인 ID 기대값을 기억하는 확인 ID 기대값 기억부
    를 포함하고,
    상기 수신 통지부는, 수신한 상기 전송 데이터에 대한 상기 확인 신호에, 해당 전송 데이터의 재송신 카운트 정보를 첨부하여, 상기 송신측에 송신시키고,
    상기 재송신 제어부는, 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 다른 경우에 있어서, 상기 재송신 카운트 정보가 재송신의 데이터인 취지를 나타내는 한편, 상기 확인 신호에 첨부된 상기 식별 데이터가 상기 확인 ID 기대값과 일치하는 경우에, 상기 전송 데이터의 재송신을 실시하지 않는,
    시리얼 전송 시스템.
  21. 수신측 및 송신측의 사이에 전송 데이터를 전송하는 시리얼 전송 방법에 있어서,
    상기 송신측에서, 미리 정해진 순서로 복수의 상기 전송 데이터를 송신하는 단계;
    상기 수신측에서, 상기 전송 데이터를 수취한 경우에, 해당 전송 데이터를 수취한 취지의 확인 신호에 식별 데이터를 첨부하여 송신측에 송신하는 단계;
    상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 다른 경우에, 상기 미리 정해진 순서가 상기 수신 순서와 다르게 된 상기 전송 데이터로부터, 상기 전송 데이터가 재송신의 데이터인지 여부를 나타내는 재송신 카운트 정보를 첨부하여 상기 수신측에 재송신시키는 단계; 및
    상기 송신측으로 수취한 상기 확인 신호에 첨부되어야 할 상기 식별 데이터를 나타내는 확인 ID 기대값을 기억하는 단계
    를 포함하고,
    상기 확인 신호에 상기 식별 데이터를 첨부한 상기 송신측에 송신하는 단계는, 수신한 상기 전송 데이터에 대한 상기 확인 신호에, 해당 전송 데이터의 재송신 카운트 정보를 첨부하여, 상기 송신측에 송신하고,
    상기 재송신 카운트 정보를 첨부하여 상기 수신측에 재송신시키는 단계는, 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 다른 경우에 있어서, 상기 재송신 카운트 정보가 재송신의 데이터인 취지를 나타내는 한편, 상기 확인 신호에 첨부된 상기 식별 데이터가 상기 확인 ID 기대값과 일치하는 경우에, 상기 전송 데이터의 재송신을 실시하지 않게 하는,
    시리얼 전송 방법.
  22. 피시험 디바이스를 시험하는 시험 장치를 기능시키는 프로그램을 기록한 기록 매체에 있어서,
    상기 시험 장치를,
    상기 피시험 디바이스와 전기적으로 접속되어 상기 피시험 디바이스를 시험하는 시험 유닛;
    상기 시험 유닛을 제어하는 제어부; 및
    상기 제어부 및 상기 시험 유닛의 사이에 전송 데이터를 전송하는 시리얼 전송부
    로서 기능시키고,
    상기 시리얼 전송부를,
    송신측에서, 미리 정해진 순서로 복수의 상기 전송 데이터를 송신하는 데이터 송신부;
    수신측에서 상기 전송 데이터를 수취한 경우에, 해당 전송 데이터를 수취한 취지의 확인 신호에 식별 데이터를 첨부하여 송신측에 송신하는 수신 통지부;
    상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 다른 경우에, 상기 미리 정해진 순서가 상기 수신 순서와 다르게 된 상기 전송 데이터로부터, 상기 전송 데이터가 재송신의 데이터인지 여부를 나타내는 재송신 카운트 정보를 첨부하여 상기 수신측에 재송신시키는 재송신 제어부; 및
    상기 송신측으로 수취한 상기 확인 신호에 첨부되어야 할 상기 식별 데이터를 나타내는 확인 ID 기대값을 기억하는 확인 ID 기대값 기억부
    로서 기능시키고,
    상기 수신 통지부에, 수신한 상기 전송 데이터에 대한 상기 확인 신호에, 해당 전송 데이터의 재송신 카운트 정보를 첨부하여, 상기 송신측에 송신시키고,
    상기 재송신 제어부에, 상기 확인 신호로 나타나는 상기 전송 데이터의 수신 순서가, 상기 미리 정해진 순서와 다른 경우에 있어서, 상기 재송신 카운트 정보가 재송신의 데이터인 취지를 나타내는 한편, 상기 확인 신호에 첨부된 상기 식별 데이터가 상기 확인 ID 기대값과 일치하는 경우에, 상기 전송 데이터의 재송신을 실시하지 않게 하는,
    프로그램을 기록한 기록 매체.
KR1020117012337A 2008-12-16 2009-12-11 시험 장치, 시리얼 전송 시스템, 프로그램, 및 기록 매체 KR101230296B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/335,550 2008-12-16
US12/335,550 US8155897B2 (en) 2008-12-16 2008-12-16 Test apparatus, transmission system, program, and recording medium
PCT/JP2009/006822 WO2010070859A1 (ja) 2008-12-16 2009-12-11 試験装置、シリアル伝送システム、プログラム、および、記録媒体

Publications (2)

Publication Number Publication Date
KR20110079772A KR20110079772A (ko) 2011-07-07
KR101230296B1 true KR101230296B1 (ko) 2013-02-07

Family

ID=42241559

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117012337A KR101230296B1 (ko) 2008-12-16 2009-12-11 시험 장치, 시리얼 전송 시스템, 프로그램, 및 기록 매체

Country Status (5)

Country Link
US (1) US8155897B2 (ko)
JP (1) JPWO2010070859A1 (ko)
KR (1) KR101230296B1 (ko)
TW (1) TWI409475B (ko)
WO (1) WO2010070859A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012073395A1 (ja) * 2010-11-29 2012-06-07 株式会社アドバンテスト 通信システムおよび試験装置
WO2013011545A1 (ja) 2011-07-15 2013-01-24 三菱電機株式会社 送信装置、受信装置、通信装置、通信システムおよび送信方法
JP6054151B2 (ja) * 2012-11-26 2016-12-27 ルネサスエレクトロニクス株式会社 テスト装置
US10846160B2 (en) * 2018-01-12 2020-11-24 Quanta Computer Inc. System and method for remote system recovery
TWI756560B (zh) * 2019-08-23 2022-03-01 和碩聯合科技股份有限公司 無線通信系統、無線通信方法以及自走式裝置
CN114726457B (zh) * 2020-12-22 2023-07-18 华为技术有限公司 通信方法、电子装置、处理装置与电子设备
TWI798943B (zh) * 2021-11-18 2023-04-11 瑞昱半導體股份有限公司 偵測結果記錄與輸出裝置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010063783A (ko) * 1999-12-24 2001-07-09 오길록 디지털 가입자 회선 프로토콜 처리장치에 대한 전송성능시험장치
KR20040082376A (ko) * 2001-11-20 2004-09-24 주식회사 아도반테스토 위상 조정 장치 및 반도체 시험 장치
JP2004297442A (ja) 2003-03-27 2004-10-21 Nec Corp データ伝送・再送方式およびデータ伝送・再送方法
JP2005039360A (ja) 2003-07-16 2005-02-10 Ics:Kk 仮想化した入出力通信ポートを複数対具備するマルチ通信試験装置および方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6441537A (en) 1987-08-07 1989-02-13 Matsushita Electric Ind Co Ltd Signal transmitter
JPH0547218Y2 (ko) * 1987-09-03 1993-12-13
JP2771556B2 (ja) * 1988-10-31 1998-07-02 古河電気工業株式会社 車両用多重伝送装置
JP2700843B2 (ja) * 1991-12-10 1998-01-21 三菱電機株式会社 多重通信制御装置
JP2967897B2 (ja) * 1993-07-22 1999-10-25 エヌ・ティ・ティ移動通信網株式会社 自動再送要求データ伝送方法
DE19612631A1 (de) * 1995-03-31 1996-10-02 Mazda Motor Multiplexdatenübermittlungssystem
US20030110427A1 (en) 2000-04-12 2003-06-12 Advantest Corporation Semiconductor test system storing pin calibration data in non-volatile memory
JP3870771B2 (ja) * 2001-12-05 2007-01-24 日本電気株式会社 チャネル切り替え方式及びチャネル切り替え方法
JP2006114149A (ja) * 2004-10-15 2006-04-27 Fujitsu Ltd 半導体試験システム
JP4821407B2 (ja) * 2006-03-30 2011-11-24 日本電気株式会社 通信装置,通信システムおよび障害検出プログラム
JP2008190975A (ja) * 2007-02-05 2008-08-21 Yokogawa Electric Corp 半導体試験装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010063783A (ko) * 1999-12-24 2001-07-09 오길록 디지털 가입자 회선 프로토콜 처리장치에 대한 전송성능시험장치
KR20040082376A (ko) * 2001-11-20 2004-09-24 주식회사 아도반테스토 위상 조정 장치 및 반도체 시험 장치
JP2004297442A (ja) 2003-03-27 2004-10-21 Nec Corp データ伝送・再送方式およびデータ伝送・再送方法
JP2005039360A (ja) 2003-07-16 2005-02-10 Ics:Kk 仮想化した入出力通信ポートを複数対具備するマルチ通信試験装置および方法

Also Published As

Publication number Publication date
JPWO2010070859A1 (ja) 2012-05-24
US8155897B2 (en) 2012-04-10
TWI409475B (zh) 2013-09-21
WO2010070859A1 (ja) 2010-06-24
KR20110079772A (ko) 2011-07-07
US20100153034A1 (en) 2010-06-17
TW201027098A (en) 2010-07-16

Similar Documents

Publication Publication Date Title
KR101230296B1 (ko) 시험 장치, 시리얼 전송 시스템, 프로그램, 및 기록 매체
US20220035766A1 (en) Hybrid remote direct memory access
US8156415B1 (en) Method and system for command queuing in disk drives
US8094566B2 (en) Test apparatus and test method
CN104699576B (zh) 串行通信测试装置、包括该装置的系统及其方法
US20070002827A1 (en) Automated serial protocol target port transport layer retry mechanism
US8484396B2 (en) Method and system for conditional interrupts
CN114710224A (zh) 帧同步方法及装置、计算机可读介质、电子设备
JP3996928B2 (ja) 破損データを処理する方法
US11892955B2 (en) System and method for bypass memory read request detection
US8196028B2 (en) Error detection device
US20120096195A1 (en) Data transfer device and data transfer method
KR101576833B1 (ko) 이중화 장치에서 수신 버퍼를 이용한 통신 데이터의 중복 검사 방법
US8291270B2 (en) Request processing device, request processing system, and access testing method
CN111857546A (zh) 用于处理数据的方法、网络适配器和计算机程序产品
US7076636B1 (en) Data storage system having an improved memory circuit board configured to run scripts
US10795797B2 (en) Controller, SATA system and method of operation therefor
US8392621B2 (en) Managing dataflow in a temporary memory
US8412998B1 (en) Restart operation with logical blocks in queued commands
WO2010061482A1 (ja) 試験装置、シリアル伝送システム、プログラム、および、記録媒体
WO2022256153A1 (en) System and method for bypass memory read request detection
US20040078712A1 (en) Method and apparatus for stressing data paths
CN117421267A (zh) 数据通道防死锁方法、装置、设备及介质
JP2003271466A (ja) Usbブリッジ回路
CN117222992A (zh) 用于旁路存储器读取请求检测的系统和方法

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee