KR0139494B1 - 스마트카드의 데이타 통신장치 및 방법 - Google Patents

스마트카드의 데이타 통신장치 및 방법

Info

Publication number
KR0139494B1
KR0139494B1 KR1019940025042A KR19940025042A KR0139494B1 KR 0139494 B1 KR0139494 B1 KR 0139494B1 KR 1019940025042 A KR1019940025042 A KR 1019940025042A KR 19940025042 A KR19940025042 A KR 19940025042A KR 0139494 B1 KR0139494 B1 KR 0139494B1
Authority
KR
South Korea
Prior art keywords
data
register
parity
output
terminal
Prior art date
Application number
KR1019940025042A
Other languages
English (en)
Other versions
KR960011753A (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 KR1019940025042A priority Critical patent/KR0139494B1/ko
Priority to DE19535968A priority patent/DE19535968C2/de
Priority to FR9511460A priority patent/FR2726416B1/fr
Priority to JP7255329A priority patent/JPH08194784A/ja
Priority to US08/537,962 priority patent/US5729004A/en
Publication of KR960011753A publication Critical patent/KR960011753A/ko
Application granted granted Critical
Publication of KR0139494B1 publication Critical patent/KR0139494B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • 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
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야:스마트카드 장치
2. 발명이 해결하려고 하는 기술적 과제:스마트카드 장치에서 송신모드시 입출력장치에서 패리티비트를 발생시키고, 수신모드시 수신된 데이타로부터 패리티비트를 검출함.
3. 발명의 해결 방법의 요지:송신모드시 라이트신호에 의해 데이타레지스터가 데이타버스 상의 병렬데이타를 로드하며, 패리티발생기가 데이타레지스터로부터 병렬데이타를 수신한 후 데이타들의 논리를 연산하여 패리티비트를 발생하고, 패리티레지스터가 패리티비트를 로드한다. 그리고 쉬프트클럭에 의해 스타트레지스터, 데이타레지스터 및 패리티레지스터에 저장 중인 데이타를 순차적으로 쉬프트 출력하여 카드리더에 전송 프레임 형태의 직렬데이타로 출력한다. 또한 수신모드시에는 쉬프트클럭에 의해 카드리더로부터 출력되는 전송 프레임 형태의 직렬데이타를 쉬프트 입력하여 스타트레지스터, 데이타레지스터 및 패리티레지스터에 순차적으로 저장한다. 그리고 리드신호에 의해 패리티발생기가 데이타레지스터에 저장 중인 병렬데이타를 수신한 후 데이타들의 논리를 연산하여 패리티비트를 발생하고, 패리티레지스터의 수신패리티비트와 연산패리티비트의 논리를 비교하여 동일할 시 패리티검출신호를 발생하여 데이타레지스터에 저장중인 데이타를 데이타버스로 출력한다.
4. 발명의 중요한 용도:스마트카드 장치에서 카드리더와 데이타 통신시 제어부의 프로그램 부하를 줄이고, 데이타 통신 속도를 향상시킴.

Description

스마트카드의 데이타 통신장치 및 방법
제1도는 스마트카드 장치의 제1구성도.
제2도는 스마트카드 장치의 제2구성도.
제3도는 스마트카드 장치의 입출력부 구성도.
제4도는 제3도 중 제2레지스터의 구성도.
제5도는 제4도중 패리티연산부의 구성도.
제6도는 제3도 중 제1레지스터 및 제2레지스터의 내부 구성도.
제7도는 제6도 중 병렬데이타처리부의 구성도.
제8도는 제7도 중 검출데이타출력부의 구성도.
제9도는 제6도 중 직렬데이타처리부의 구성도.
제10도는 제3도 중 제3레지스터의 내부 구성도.
제11도는 본 발명에 따라 상기 입출력부가 송신모드를 수행할 시의 각 부 동작파형도.
제12도는 본 발명에 따라 상기 입출력부가 수신모드를 수행할 시의 각 부 동작파형도.
본 발명은 스마트카드와 카드리더 간에 데이타를 통신하는 장치 및 방법에 관한 것으로, 특히 스마트카드에서 송신모드시 전송 데이타에 패리트비트를 부가하고 수신모드시 수신데이타로부터 패리티를 연산하고 수신된 패리티비트를 비교하여 수신데이타를 처리할 수 있는 장치 및 방법에 관한 것이다.
일반적으로 IC카드는 카드리더가 IC카드에 저장된 서비스 정보를 단순하게 리드만 할 수 있는 메모리카드(memory card)와, 카드리더와 IC카드 간에 데이타 통신을 수행하면서 IC카드의 저장된 정보를 변경할 수 있는 스마트카드(smart card)로 구분된다. 따라서 이들 IC카드의 차이점은 상기 메모리카드의 경우 서비스 정보를 저장하는 메모리장치만을 실장하고 있는데 반하여, 스마트카드는 서비스 정보를 저장하는 메모리 장치 외에 상기 메모리장치의 서비스 정보를 등록, 변경 및 삭제할 수 있는 중앙처리장치를 구비하게 된다.
따라서 상기 스마트카드 장치는 중앙처리장치가 외부의 카드리더에서 공급되는 제어신호에 의해 메모리 장치를 억세스 할 수 있을 뿐 아니라, 직렬입출력장치를 통해 ISO.7816 권고 프로토콜에 따라 카드리더와 데이타 통신을 수행할 수 있어 상기 메모리 장치 내의 정보를 수시로 등록, 삭제 및 변경할 수 있게 된다.
최근 IC카드의 사용은 주발행자(issuer), 부발행자(sub-issuer) 및 사용자(holer)들의 다양한 서비스 정보와 사용자 개인의 서비스 정보에 대한 보안 및 신뢰성 때문에 스마트카드를 선호하게 되었다.
제1도는 현재 널리 사용되고 있는 스마트카드의 구성을 도시하고 있으며, 카드리더와 연결되는 5개의 VCC, GND, RESET, SCK, SIO단자를 갖는다.
상기 제1도를 참조하여 스마트카드의 동작을 살펴보면, 상기 스마트카드는 스마트카드의 전반적인 동작을 제어하는 프로그램메모리 13과 각종 서비스 정보들을 저장하는 데이타메모리 14로 구성된다. 여기서 상기 프로그램메모리 13은 통상적으로 프로그램이 마스킹된 마스크롬(mask ROM)을 사용하며, 데이타메모리 14는 서비스 정보를 기록 및 리드할 수 있는 EEPROM을 사용한다. 이때 상기 데이타메모리 14를 EEPROM으로 사용하는 이유는 이는 상기 스마트카드가 평상시 카드리더와 분리된 상태를 유지하기 때문이다. 즉, 상기 EEPROM은 비휘발성메모리(non volatile memory)이므로 전원이 공급되지 않는 상태에서도 이전 상태의 정보를 그대로 유지할 수 있으며, 또한 전기적으로 소거가 가능하므로 서비스 정보를 리드 및 라이트할 수 있기 때문이다.
중앙처리장치 12는 입출력부 11을 통해 카드리더와 비동기 방식으로 직렬데이타를 통신할 수 있다. 따라서 상기 중앙처리장치 12는 상기 입출력부 11을 통해 상기 데이타메모리 14의 서비스 정보를 리드하여 카드리더로 전송할 수 있고, 상기 카드리더로부터 수신되는 서비스 정보를 상기 데이타메모리 14에 저장할 수 있다.
상기 프로그램메모리 13은 상기 중앙처리장치 12가 상기 입출력부 11은 통해 데이타를 통신하거나 상기 데이타메모리 14를 억세스하기 위한 제어 프로그램 정보들을 저장하고 있다. 그리고 상기 데이타메모리 14는 카드 사용자, 주발행자 및 부발행자에 대한 모든 서비스 정보를 저장하고 있다.
제2도는 스마트카드에 대한 또 다른 구성을 도시하고 있다.
상기 제2도를 참조하면, 입출력부 21은 SIO단자를 통해 카드리더와 연결된다. 상기 입출력부 21은 상기 카드리더와 비동기방식으로 데이타 통신을 수행하며, 상기 카드리더로부터 수신되는 직렬데이타를 병렬데이타로 변환하며, 병렬데이타를 직렬데이타로 변환하여 상기 SIO단자로 출력한다. 중앙처리장치 22는 상기 입출력부 21과 연결되며, 상기 입출력부 21로부터 수신되는 정보를 분석하여 정보를 억세스하기 위한 메모리선택신호, 어드레스들 및 제어신호들을 발생하고 데이타버스를 통해 기록하고자 하는 정보를 출력하거나 데이타 버스 상의 정보를 수신하여 상기 입출력부 21로 출력한다. EEPROM24는 프로그램 정보를 저장하는 제1영역 및 서비스 정보를 저장하는 제2영역을 구비한다. 상기 EEPROM24는 상기 메모리선택신호에 의해 제1영역 또는 제2영역이 선택되며, 상기 어드레스들 및 제어신호에 의해 선택된 영역의 정보를 상기 데이타버스로 출력하거나 또는 데이타버스 상의 정보를 수신하여 저장한다. 연결부 23은 상기 중앙처리장치 22와 EEPROM24상에 연결되며, 상기 중앙처리장치 22로부터 출력되는 메모리선택신호, 어드레스들 및 제어신호들을 상기 EEPROM24로 인가한다. 또한 상기 연결부 23은 테스트모드시 상기 리세트신호/RESET의 논리에 따라 상기 중앙처리장치 22와 EEPROM24를 분리시키거나 또는 연결시켜 상기 EEPROM24의 억세스 동작 및 상기 중앙처리장치 22의 동작을 테스트할 수 있도록 한다.
상술한 제2도의 구성에 대한 동작은 본원 출원인에 의해 출원된 특허 제 호에 상세히 개시되어 있다.
상기와 같은 스마트카드의 제어부는 카드리더와 데이타를 전송할 시, ISO-7816-3애 규정되어 있는 전송방식에 따라 직렬 데이타를 비동기 방식으로 통신한다. 여기서 상기 제어부라 함은 제1도의 중앙처리장치 12 및 제2도의 중앙처리장치 22를 의미하며,입출력장치라 함은 제1도의 입출력부 11 및 제2도의 입출력부 21을 의미한다.
일반적으로 직렬 데이타의 전송 프레임은 스타트 비트 및 스톱비트를 포함하며, 8비트의 데이타 비트 및 1비트의 패리티로 이루어지는 총 11비트로 이루어지며, 전송 방식은 반이중통신방식(half duplex)을 사용한다. 상기 스마트카드는 SIO단자를 통해 상기 카드리더로부터 규정된 방식에 의해 데이타 및 명령어를 수신하여 처리하며, 그 결과에 따라 내부의 데이타 메모리 영역에 정보를 등록 및 변경하고 필요한 경우 데이타 메모리 영역에 등록된 정보를 상기 SIO단자를 통해 카드리더 측으로 전송한다.
상기와 같이 스마트카드가 카드리더로 데이타를 전송하거나 상기 카드리더로부터 출력되는 데이타를 수신하는 경우, 데이타의 오류 발생 유무를 확인하기 위하여 패리티 검사 방식을 사용한다. 그러나 종래의 스마트카드는 데이타를 전송할 시 전송 프레임에 삽입되는 패리티비트를 발생하는 기능과, 데이타를 수신할 시 패리티비트의 상태를 검사하는 기능을 제어부가 소프트웨어적으로 처리하였다. 따라서 종래의 스마트카드 장치에서는 전송시 8비트의 각 데이타 비트들의 논리들을 더하여 패리트비트(even parity or odd parity)를 발생하고, 수신모드시 수신된 8비트의 데이타의 수신 여부를 판단하여 오류가 발생되었으면 재전송하도록 요구하는 동작을 프로그램을 이용하여 수행하였다. 이로인해 종래의 스마트카드 장치에서 상기 직렬입출력장치는 단순히 데이타를 직병렬 변환하는 기능만을 수행하고 제어부가 데이타의 전송 및 수신동작을 제어하므로서, 데이타의 통신속도를 저하시켰으며 또한 제어부의 프로그램 부하가 가중되는 문제점이 있었다.
따라서 본 발명의 목적은 스마트카드 장치에서 카드리더와 연결되는 입출력장치가 패리티 기능을 처리할 수 있는 데이타 통신 장치 및 방법을 제공함에 있다.
본 발명의 다른 목적은 스마트카드에서 송신모드시 전송되는 데이타의 논리를 연산하여 패리티를 발생한 후 전송 데이타 프레임에 삽입하며, 수신모드시 수신된 데이타의 논리를 연산하여 패리티비트를 발생하고 수신된 패리티비트와 논리 비교를 행하여 동일한 논리를 갖는 패리티비트일시 이를 제어부로 통보하는 데이타 통신 장치 및 방법을 제공함에 있다.
본 발명의 또 다른 목적은 스마트카드에서 입출력장치가 패리티연산수단을 구비하고, 송신모드시 상기 패리티연산수단이 전송되는 데이타의 논리를 연산하여 패리티를 발생한 후 전송 데이타 프레임에 삽입하며, 수신모드시 상기 패리티연산수단이 수신된 데이타의 논리를 연산하여 패리티비트를 발생하고 수신된 패리티비트와 논리 비교를 행하여 동일한 논리를 갖는 패리티비트일 시 이를 제어부로 통보하는 입출력할 수 있는 장치 및 방법을 제공함에 있다.
이러한 본 발명의 목적들을 달성하기 위하여 본 발명에 따른 스마트카드의 입출력 장치가, 직렬입력단자가 SIO단자와 연결되는 제1레지스터와; 병렬검출단자를 구비하며, 병렬입력단자 및 병렬출력단자가 데이타버스와 연결되며, 첫단의 직렬입력단자가 상기 제1레지스터의 직렬출력단자와 연결되며 단의 직렬출력단자가 뒷단의 직렬입력단자에 연결되는 구성을 가지는 N비트의 제2레지스터와; 병렬입력단자가 접지단에 연결되며, 직렬입력단자가 상기 제2레지스터의 마지막 단의 직렬출력단자와 연결되고 직렬출력단자가 상기 SIO단자에 연결되는 제3레지스터와; 상기 제2레지스터의 병렬검출단자들의 출력을 수신하며, 수신된 8비트의 데이타 논리를 연산하여 패리티비트를 발생하여 상기 제1레지스터의 병렬입력단자로 인가하는 패리티발생수단과; 통신모드신호와 상기 제1레지스터 및 패리티발생수단의 출력을 수신하며, 수신모드일시 인에이블되어 상기 두 패리티신호를 비교하여 동일한 논리일시 패리티검출신호를 출력하는 수단을 구비한다. 그리고 상기 입출력장치가, 송신모드시 라이트신호에 의해 상기 제2레지스터가 상기 데이타버스 상의 데이타를 로드하고, 상기 패리티발생수단이 상기 제2레지스터의 병렬검출단자로부터 출력되는 데이타들의 논리를 연산하여 패리티비트를 발생하는 순간 상기 제1레지스터가 상기 패리티비트를 로드하며, 이후 발생되는 쉬프트클럭에 의해 상기 제3레지스터, 제2레지스터 및 제1레지스터에 로드된 정보들을 순차적으로 쉬프트 출력하며; 수신모드시 상기 쉬프트클럭에 이해 상기 제3레지스터, 제2레지스터 및 제1레지스터가 직렬데이타들을 순차적으로 쉬프트 입력하며, 리드신호에 의해 상기 패리티발생수단이 수신된 데이타들의 논리를 연산하여 패리티비트를 발생하며, 상기 패리티비트와 제1레지스터의 수신 패리티비트를 비교하여 동일한 논리일 패리티검출신호를 발생하는 것을 특징으로 한다.
이하 본 발명의 바람직한 실시예가 첨부된 도면의 참조와 함께 상세히 설명될 것이다. 도면들중 동일한 부품들은 가능한한 어느곳에서든지 동일한 부호들을 나타내고 있음을 유의하여야 한다.
하기 설명에서 이븐 패리티발생 등과 같은 많은 특정 상세들이 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있다. 이들 특정 상세들 없이 본 발명이 실시될 수 있다는 것은 이 기술분야에서 통상의 지식을 가진자에게 자명할 것이다.
제3도는 본 발명에 따른 직렬입출력장치의 구성도로서, 입출력장치의 동작을 제어하는 각종 제어신호들을 발생하는 구성은 도시되지 않고 있다. 그러나 상기와 같은 각종 제어신호들의 특성은 송신모드 및 수신모드에 따라 제11도 및 제12도에 도시되어 있다. 상기 제3도를 참조하여 직렬입출력장치에서 전송 프레임데이타에 패리티비트를 발생하는 삽입하는 과정 및 수신된 전송 프레임 데이타로부터 패리티비트를 연산하는 과정을 살펴본다.
제1레지스터 31은 직렬입력단자 SI가 SIO단자와 연결되며, 병렬입력단자 PI가 연산패리티비트 DPB와 연결된다. 상기 제1레지스터 31은 라이트신호 SWR수신시 상기 병렬입력단자 PO로 수신되는 연산패리티비트 DPB를 로드하며, 쉬프트클럭 SCK 수신시 상기 로드한 연산패리트비트 DPB 또는 상기 SIO단자로 수신되는 직렬데이타를 쉬프트하여 직렬출력단자 SO로 출력한다. 따라서 상기 제1레지스터 31은 송신모드시 상기 연산패리티비트 DPB를 로드한 후 쉬프트클럭 SCK에 의해 직렬출력단자 SO로 출력한다. 또한 수신모드시 상기 SIO단자로 수신되는 패리티비트를 저장하며, 상기 제1레지스터 31의 직렬출력단자 SO를 출력하는 신호는 수신패리티비트 RPB가 된다.
제2레지스터 32는 8비트의 데이타레지스터를 구비하며, 내부 구성은 제4도와 같이 구성된다. 상기 제2레지스터 32의 직렬입력단자 SI는 앞단의 데이타레지스터의 직렬출력단자 SO와 연결되며, 직렬출력단자 SO는 뒷단의 데이타레지스터의 직렬입력단자 SI와 연결되고, 병렬입력단자 PI7-PI0는 각각 해당하는 데이타버스에 대응되는 데이타 비트들과 연결되고, 병렬출력단자 PO7-PO0는 각각 해당하는 데이타버스의 비트들과 연결되며, 병렬검출단자 CD7-CD0는 패리티연산부 34의 입력단자와 연결된다. 상기 제2레지스터 32는 리세트신호 RST수신시 초기화되며, 라이트신호 SWR 수신시 병렬입력단자 PI7-PI0로 수신되는 데이타 버스 상의 8비트 데이타를 각각 병렬 로드하는 동시에 병렬검출단자 CD7-CD0로 출력하며, 리드신호 SRD 수신시 저장하고 있는 8비트 데이타를 병렬검출단자 CD7-CD0로 출력하는 동시에 병렬출력단자 PO7-PO0로 출력하고, 쉬프트클럭 SCK 수신시 저장하고 있는 데이타를 뒷단의 데이타레지스터로 쉬프팅 출력한다. 따라서 상기 제2레지스터 32는 송신모드시 상기 라이트신호에 의해 제어부가 데이타 버스 상으로 출력하는 8비트의 데이타들을 병렬입력단자 PI7-PI0를 통해 병렬 로드하는 동시에 병렬검출단자 CD7-CD0로 출력하며, 쉬프트클럭 SCK에 의해 로드한 데이타 및 직렬입력단자 SI로 수신하는 데이타를 다음단의 데이타 레지스터로 쉬프트 출력한다. 그리고 수신모드시 직렬입력단자 SI로 수신되는 데이타를 쉬프트클럭 SCK에 의해 뒷단의 데이타레지스터로 출력하며, 리드신호 SRD 수신시 병렬출력단자 PO7-PO0로 출력하는 동시에 병렬검출단자 CD7-CD0로 출력한다.
제3레지스터 33은 직렬입력단자 SI가 상기 제2레지스터 32의 마지막 데이타레지스터의 직렬출력단자 SO와 연결되며, 직렬출력단자 SO가 상기 SIO단자와 연결되며, 병렬입력단자 PI가 접지단과 연결된다. 상기 제3레지스터 33은 통신개시신호 CWR 수신시 직렬 프레임데이타를 전송하거나 수신할 시 데이타 통신을 수행하기 위해 초기화 동작을 수행하고, 라이트신호 SWR 수신시 직렬입력단자 PI를 통해 접지전원을 로드하며, 쉬프트클럭 SCK에 의해 로드한 데이타를 SIO단자로 출력한다. 따라서 상기 제3레지스터 33은 송신모드시 라이트신호 SWR에 의해 병렬입력단자 PI로 수신되는 접지전원을 스타트버트로 로드하고, 상기 쉬프트클럭 SCK에 의해 로드한 데이타 및 직렬입력단자 SI로 수신되는 데이타를 SIO단자로 출력한다.
패리티연산부 34는 상기 제2레지스터 32의 병렬검출단자 CD7-CD0와 연결되며, 상기 병렬검출단자 CD7-CD0로 부터 출력되는 병렬데이타를 수신한 후 수신된 데이타들의 논리를 연산하여 연산패리티비트 DPB를 발생한다. 상기 패리티연산부 34는 송신모드시 상기 데이타버스 상의 데이타들에 대한 논리를 연산하여 연산패리티비트 DPB를 발생하며, 수신모드시 상기 카드리더로부터 출력되는 데이타들의 논리를 연산하여 연산패리티비트 DPB를 발생한다.
패리티검출부 35는 상기 제1레지스터 31를 출력하는 수신패리티비트 RPB와 상기 패리티연산부 34를 출력하는 연산패리티비트 DPB를 배타적부논리합하는 익스클루시브 노아게이트 37과, 통신모드신호 T/RX를 반전 출력하는 인버터 36과, 상기 인버터 36의 출력과 상기 익스클루시브노아게이트 37의 출력을 수신하여 부논리합하여 패리티검출신호 PBT를 출력하는 노아게이트 38로 구성된다. 상기 패리티검출부 35는 상기 수신모드에서 상기 수신패리티비트 RBT와 연산패리티비트 DPB의 논리가 동일할 시 수신 데이타가 정상상태임을 나타내는 패리티검출신호 PBT를 발생하고 두 패리티비트의 논리가 다를시 수신데이타에 에러가 발생되었음을 나타내는 패리티검출신호 PBT를 발생한다.
제4도는 상기 제2레지스터 32의 내부 구성도로서 데이타레지스터 41-48로 구성된다. 상기 데이타레지스터 41-48은 각각 제어신호 SRD, RST, SWR, SCK들을 공유하여 사용하며, 버스 PI7-PI0, PO7-PO0, CD7-CD0를 공유하여 사용한다. 그리고 데이타레지스터 41의 직렬입력단자 SIO는 제1레지스터 31의 직렬입력단자 SO와 연결되고, 데이타레지스터 48의 직렬출력단자 SO7은 제3레지스터 33의 직렬입력단자 SI와 연결되며, 나머지 데이타레지스터 42-47의 직렬입력단자 SI1-SI7은 각각 전단의 데이타레지스터 41-47의 직렬출력단자 SO0-SO6과 연결되는 구성을 가진다.
따라서 상기 데이타레지스터 41-48은 송신모드시 라이트신호 SWR에 의해 각각 대응되는 병렬입력단자 PI0-PI7를 통해 수신되는 데이타 버스 상의 데이타들을 병렬로드하여 병렬검출단자 CD0-CD7로 병렬 출력하며, 쉬프트클럭 SCK에 의해 저장한 데이타 및 전단의 데이타레지스터로부터 출력되어 직렬입력단자 SI로 수신되는 데이타를 순차적으로 쉬프트하여 직렬출력단자 SO로 출력한다. 그리고 수신모드시에는 상기 직렬입력단자 SI로 수신되는 전단 데이타레지스터의 출력데이타를 시프트하여 직렬출력하여, 리드신호 SRD 수신시 저장 중인 데이타를 상기 병렬출력단자 PO0-PO7로 병렬 출력하는 동시에 병렬검출단자 CD0-CD7로 병렬 출력한다.
제5도는 상기 패리티연산부 35의 구체회로도로서, 이븐 패리티를 발생하는 회로를 도시하고 있다. 상기 패리티연산부 35는 8개의 익스클루시브오아게이트 51-58로 구성되며, 익스클루시브오아게이트 51은 일단이 접지단에 연결되고 나머지 단자가 CD0데이타를 수신하여 두 신호의 논리를 비교하며, 익스클루시브오아게이트 52-58은 각각 일단이 대응되는 CD1-CD7데이타를 수신하고 나머지단자가 전단의 익스클루시브오아게이트 51-57의 출력단과 연결된다. 따라서 상기 제5도와 같은 구성을 갖는 패리티연산부 34는 8비트의 CD7-CD0데이타 논리를 연산하여 1의 갯수가 짝수일시 상기 익스클루시브오아게이트 58을 출력하는 연산패리티비트 DPB는 0가 되며, 1의 갯수가 홀수일시 상기 익스클루시브오아게이트 58을 출력하는 연산패리티비트 DPB는 1이된다. 이때 상기 패리티연산부 35를 오드 패리티를 발생하는 회로로 구성하고자 하는 경우에는 상기 익스클루시브오아게이트 51에 연결된 접지전원 대신에 동작 전원단과 연결하면 된다. 이런 경우 패리티연산부 34는 CD7-CD0데이타에서 1의 갯수가 짝수일시 연산패리티비트 DPB를 1로 출력하며, 1의 갯수가 홀수일시 연산패리티비트 DPB를 0로 발생한다.
상기 패리티연산부 34는 송신모드시 상기 데이타버스 상으로 출력되는 데이타들의 논리를 연산하여 연산패리티비트 DPB를 발생한 후 상기 제1레지스터 31의 병렬입력단자 PI로 인가하고, 수신모드시 상기 카드리더로부터 출력된 데이타들의 논리를 연산하여 연산패리티비트를 발생한 후 상기 패리티검출부 35로 출력한다.
제6도는 제3도 및 제4도에 도시된 제1레지스터 31 및 제2레지스터 32들의 구성으로서, 병렬데이타처리부 61은 상기한 바와같이 입력단이 제어신호 SCK, SRD, SWR, RST를 수신하며, 데이타버스 상의 데이타 중 대응되는 비트의 데이타를 수신하는 단자 PI 및 앞단의 데이타 레지스터의 직렬출력단자 SO로부터 출력되는 데이타를 수신하는 직렬입력단자 SI로 구성된다. 그리고 출력단은 병렬출력단자 PO 및 병렬검출단자 CD로 이루어진다.
직렬데이타처리부 62는 상기 병렬검출단자 CD의 출력신호를 데이타로 수신하며, 반전된 상기 쉬프트클럭 SCK를 클럭신호로 수신하고, 리세트신호 RST를 초기화신호로 수신하며, 출력단자는 상기 직렬출력단자 SO가 된다.
제7도는 상기 제6도 중 병렬데이타처리부 61의 구성도로서, 노아게이트 73은 인버터 72를 통해 반전된 라이트신호 SWR과 직렬입력단자 PI로 수신되는 데이타를 부논리합하여 출력한다. 노아게이트 74는 상기 노아게이트 74의 출력과 인버터 71을 통해 반전된 리세트신호 RST를 수신하여 부논리곱한 후 검출데이타출력부 76의 rb단자로 출력한다. 낸드게이트 75는 상기 라이트신호 SWR과 병렬입력단자 PI로 수신되는 데이타를 부논리곱한 후 검출데이타출력부 76의 sb단자로 출력한다. 상기 검출데이타출력부 76은 직렬입력단자 SI로 수신되는 데이타를 d단자로 수신하며, 쉬프트클럭 SCK를 c단자로 수신한다. 따라서 상기 검출데이타출력부 76은 상기 라이트신호 SWR에 의해 병렬입력단자 PI로 수신되는 데이타를 로드하며, 쉬프트클럭 SCK에 의해 직렬입력단자 SI로 수신되는 데이타를 쉬프트 출력한다. 상기 검출데이타출력부 76의 qb단자를 출력하는 신호는 인버터 77을 통해 병렬검출단자 CD로 출력된다.
상기 인버터 77을 출력의 출력은 전달게이트 78의 입력단자로 출력된다. 상기 전달게이트 78은 리드신호 SRD를 제1게이트신호로 수신하고 인버터 79를 통해 반전된 리드신호 SRD를 제2게이트신호로 수신한다. 상기 전달게이트 78은 상기 리드신호 SRD발생시 온되어 상기 인버터 77의 출력을 병렬출력단자 PO로 출력한다.
따라서 상기 병렬데이타처리부 61은 송신모드시 상기 라이트신호 SWR에 의해 상기 병렬입력단자 PI로 수신되는 데이타를 로드하며, 쉬프트클럭 SCK에 의해 로드한 데이타 및 직렬입력단자 SI로 수신되는 직렬데이타를 쉬프트 출력한다. 그리고 수신모드시 상기 직렬입력단자 SI로 수신되는 직렬데이타를 쉬프트 출력하여 병렬검출단자 CD로 출력하며, 리드신호 SRD수신시 상기 병렬검출단자 CD의 출력을 스위칭시켜 병렬출력단자 PO로 출력한다.
제8도는 제7도 중 검출데이타출력부 76의 구체회로도로서, 낸드게이트 81은 상기 rb단자로 수신되는 신호 및 d단자로 수신되는 신호를 부논리곱하여 출력한다. 인버터 82는 상기 c단자의 출력을 반전하고, 인버터 83은 상기 인버터 82의 출력을 반전시킨다. 그리고 전달게이트 84는 상기 낸드게이트 81의 출력을 수신하며, 상기 인비터 82의 출력을 제1게이트신호로 수신하고 상기 인버터 83의 출력을 제2게이트신호로 수신하여 상기 쉬프트클럭 SCK수신시 상기 낸드게이트 81로 수신되는 직렬데이타를 출력한다. 전달게이트 85는 상기 전달게이트 84의 출력을 수신하며, 상기 인버터 83의 출력을 제1게이트신호로 수신하고 상기 인버터 82의 출력을 제2게이트신호로 수신하여 상기 쉬프트클럭 SCK수신시 상기 전달게이트 84의 출력을 qb단자로 출력한다. 낸드게이트 86은 상기 sb단자의 출력신호 및 상기 전달게이트 84의 출력을 수신하여 부논리곱 출력한다. 낸드게이트 87은 상기 rb단자의 출력 및 상기 낸드게이트 86의 출력을 부논리곱하여 상기 qb단자로 출력한다.
제9도는 상기 제6도 중 직렬데이타처리부 62의 구체회로도로서, 인버터 91은 c단자로 수신되는 쉬프트클럭 SCK를 반전 출력하고, 인버터 92는 상기 인버터 92의 출력를 반전 출력한다. 전달게이트 93은 상기 d단자의 출력을 수신하며 상기 인버터 91의 출력을 제1게이트신호로 수신하고 상기 인버터 92의 출력을 제2게이트신호로 수신한다. 전달게이트 94는 상기 전달게이트 93의 출력을 수신하며, 상기 인버터 92의 출력을 제1게이트신호로 수신하고 상기 인버터 91의 출력을 제2게이트신호로 수신하여 직렬출력단자 SO로 출력한다. 낸드게이트 95는 상기 rb단자의 출력 및 상기 전달게이트 93의 출력을 부논리곱하고, 인버터 96은 상기 낸드게이트 95의 출력을 반전하여 직렬출력단자 SO로 출력한다.
제10도는 상기 제3도 중 제3레지스터 33의 구성도로서, 직렬데이타처리부 62의 rb단자로 인가되는 신호 이외에는 상기 제6도의 구성과 동일하다. 인버터 63은 상기 통신개시신호 CWR를 반전 출력하며, 앤드게이트 64는 상기 리세트신호 RST와 상기 인버터 64의 출력을 논리곱하여 상기 직렬데이타처리부 62의 rb단자로 인가한다. 즉, 상기 제3레지스터 33은 리세트신호 RST 및 통신개시신호 CWR에 의해 초기화 됨을 알 수 있다.
제11도는 스마트카드 장치에서 카드리더로 데이타를 전송할 시 입출력장치에서 수행하는 송신모드의 동작 파형도를 도시하고 있다. 먼저 제11도의 11A와 같이 리세트신호 RST가 하이 논리 상태로 천이되면, 상기 제1레지스터 31, 제2레지스터 32 및 제3레지스터 33은 리세트 상태에서 해제된다. 이후 통신개시신호 CWR이 제11도의 11B와 같이 발생되면 통신모드신호 T/RX는 제11도의 11C와 같이 로우 상태로 천이된다. 그러면 상기 로우 상태의 통신모드신호 T/RX는 인버터 36을 통해 하이 논리 신호로 반전된 후 노아게이트 38로 인가되므로, 패리티검출신호 PBT는 제11도의 11J와 같이 항상 로우 논리 상태를 유지한다. 즉, 송신모드에서는 상기 패리티검출신호 PBT를 발생하지 않는다.
상기와 같은 상태에서 제11도의 11D와 같이 라이트신호 SWR이 발생되면, 상기 제1레지스터 31, 제2레지스터 32 및 제3레지스터 33은 각각 제11도의 11G와 같이 병렬입력단자 PI로 수신되는 데이타들을 로드한다. 이때 상기 제3레지스터 33은 상기 병렬입력단자 PI가 접지단과 연결되어 있으므로 로우 논리신호를 로드하게 되며, 이는 이후 스타트비트로 전송된다. 또한 상기 제2레지스터 32는 제4도에 도시된 바와 같이 각각 데이타버스 상의 해당하는 데이타비트들을 로드한다. 즉, 상기 제2레지스터 32를 구성하는 데이타레지스터 4148은 상기 라이트신호 SWR에 의해 데이타 버스상의 데이타들을 로드하며, 제6도-제8도로 도시된 병렬데이타처리부 61은 상기 로드한 데이타를 각각 해당하는 검출단자 CD를 통해 출력하게 된다. 그러므로 상기 제2레지스터 32는 송신모드시 데이타버스로부터 병렬입력단자 PI7-PI0를 통해 데이타를 병렬 로드하면, 이를 다시 병렬검출단자 CD7-CD0를 통해 출력하게 되는 것이다. 상기 제11도의 11E는 상기 제2레지스터 32가 상기 라이트신호 SWR에 의해 병렬데이타를 로드한 후 병렬검출단자 CD7-CD0로 출력하는 로드주기 T1을 도시하고 있다.
그러면 상기 제11도의 11D와 같이 라이트신호 SWR이 발생된 제11도의 로드주기 T1이 경과되면, 패리티연산부 34는 상기 제2레지스터 32의 병렬검출단자 CD7-CD0를 출력하는 송신 데이타들을 수신하게 된다. 그리고 상기 제5도와 같은 구성을 갖는 패리티연산부 34는 수신되는 데이타들의 논리 상태를 연산하여 연산패리티비트 DPB를 발생한다. 상기 제5도는 이븐 패리티를 발생하는 구성을 도시하고 있다. 상기 패리티연산부 35의 구성을 살펴보면, 익스클루시브오아게이트 51-58은 일단이 상기 제2레지스터 32의 병렬검출단자 CD0-CD7과 각각 1:1로 연결되고 타단이 선행하는 익스클루시브오아게이트의 출력단과 연결되어 있다. 그리고 익스클루시브오아게이트 51은 접지단과 연결되어 있으며, 익스클루시브오아게이트 58의 출력단은 연산패리티비트 DPB를 출력한다. 따라서 상기 패리티연산부 35는 수신된 CD7-CD0데이타들의 논리를 비교한 후, 1의 논리를 갖는 데이타가 홀수이면 연산패리티비트 DPB를 1로 발생하고 1의 논리를 갖는 데이타가 짝수이면 연산패리티비트 DPB를 0로 발생한다. 여기서 상기 익스클루시브오아게이트 51의 입력단을 동작전원단과 연결시키면, 상기 패리티연산부 35는 오드 패리티를 발생하는 수단이 된다.
상기와 같이 발생되는 연산패리티비트 DPB는 익스클루시브노아게이트 37 및 제1레지스터 31의 병렬입력단자 PI로 인가된다. 이때 송신모드에서는 상기 연산패리티비트 DPB에 관계없이 상기 패리티검출신호 PBT는 제11J와 같이 로우 논리 상태를 유지한다. 상기 연산패리티비트 DPB는 송신모드시 제1레지스터 31에 로드된 후 전송 데이타 프레임에 삽입되어 카드리더 측으로 전송되어야 한다. 따라서 상기 패리티연산부 34는 상기 라이트신호 SWR이 오프되기 전에 연산패리티비트 DPB를 발생하여 상기 제1레지스터 31의 병렬입력단자 PI로 출력할 수 있어야 한다. 따라서 상기 패리티연산부 34는 상기 라이트신호 SWR이 종료되기 전에 제11도의 11F에 도시된 바와 같이 패리티연산주기 T2동안 연산패리티비트 DPB를 발생한다. 그러면 상기 제1레지스터 31은 상기 연산패리티비트 DPB를 상기 제11도의 11D와 같은 라이트신호 SWR에 의해 로드하게 된다. 따라서 상기 연산패리티비트 DPB를 상기 제1레지스터 31에 로드하기 위해서, 상기 라이트신호 SWR은 11D에 도시된 바와 같이 상기 제2레지스터 32의 병렬데이타 로드주기 T1 및 상기 패리티연산부 34의 패리티 연산주기 T2이상 유지될 수 있어야 한다.
상기 라이트신호 SWR이 오프되어 병렬데이타의 라이트가 종료되면, 상기 제3레지스터 33에는 로우 논리를 갖는 스타트 비트가 로드된 상태가 되며, 제2레지스터 32에는 제4도와 같은 데이타레지스터 41-48들이 각각 해당하는 데이타 비트들을 로드하고 있는 상태가 되고, 상기 제1레지스터 31에는 연산패리티비트 DPB가 로드되어 있는 상태가 된다.
상기 라이트신호 SWR이 오프되면, 제11도의 11H와 같이 쉬프트클럭 SCK가 발생된다. 상기 쉬프트클럭 SCK는 상기 레지스터 31-33에 로드된 1비트의 스타트비트, 8비트의 데이타 및 1비트의 패리티비트를 모두 쉬프트시켜 출력할 수 있도록 10클럭이상 발생된다. 상기 쉬프트클럭 SCK가 11H와 같이 발생되면 상기 레지스터 31-33은 첫번째 클럭에서 현재 로드한 데이타를 직렬출력단자 SC를 통해 출력하고, 직렬입력단자 SI로 수신되는 앞단 레지스터의 출력을 수신하여 저장한다. 따라서 결과적으로 상기 쉬프트클럭 SCK에 의해 제11도의 11I와 같이 전송 데이타 프레임이 직렬 데이타로 변환되는 카드리더 측으로 전송된다.
제12도는 카드리더에서 스마트카드 장치로 데이타를 전송할시 입출력장치에서 수행하는 수신모드의 동작 파형도를 도시하고 있다. 먼저 제12도의 12A와 같이 리세트신호 RST가 하이 논리 상태로 천이되면, 상기 제1레지스터 31, 제2레지스터 32 및 제3레지스터 33은 리세트 상태에서 해제된다. 이후 통신개시신호 CWR이 제12도의 12B와 같이 발생되면 통신모드신호 T/RX는 제12도의 12C와 같이 하여 하이 상태로 천이된다. 그러면 상기 로우 상태의 통신모드신호 T/RX는 인버터 36을 통해 로우 논리 신호로 반전된 후 노아게이트 38로 인가되므로, 패리티검출신호 PBT는 제12도의 12J와 같이 패리티비트가 검출되기 전까지는 로우 논리상태를 유지한다. 즉, 수신모드에서는 상기 수신된 데이타프레임의 수신패리티비트 RPB와 연산패리티비트 DPB의 논리에 따라 패리티검출신호 PBT가 결정된다.
이때 상기 카드리더로부터 전송되는 데이타 프레임은 스타트비트로 시작되는데, 상기 스타트비트는 로우 논리이므로, 카드리더에서 데이타 전송을 개시하는 시점에서 상기 SIO단자는 하이 논리에서 로우 논리로 천이된다. 따라서 상기 SIO단자에서 하강 에지신호(falling edge)가 검출되면 제12도의 12E와 같이 쉬프트클럭 SCK가 발생된다. 그러면 상기 레지스터 31-33은 직렬입력단자 SI로 수신되는 데이타를 상기 쉬프트클럭 SCK에 의해 쉬프트 출력한다. 이때 상기 제1레지스터 31의 직렬입력단자 SI는 상기 SIO단자에 연결되며, 제2레지스터 32는 상기 제4도에 도시된 바와 같이 8개의 데이타레지스터 51-58로 이루어져 직렬입력단자 SI가 전단의 직렬출력단자 SO와 연결되는 구성을 가진다. 따라서 상기 레지스터 31-33은 상기 제12도의 12E와 같이 발생되는 쉬프트클럭 SCK에 의해 수신되는 데이타를 제12도의 12F와 같이 쉬프트 출력하며 저장한다.
상기 쉬프트클럭 SCK의 발생이 종료되면, 상기 제1레지스터 31에는 수신패리티비트 RTB가 저장된 상태이며, 상기 제2레지스터 32에는 8비트의 데이타들이 각각 저장된 상태가 되고, 상기 제3레지스터 33에는 스타트비트가 저장된 상태이다. 상기와 같이 제2레지스터 32에 저장된 8비트의 데이타들은 제6도-제8도에 도시된 바와 같이 병렬데이타처리부 62에 의해 병렬검출단자 CD7-CD0로 출력된다. 또한 상기 쉬프트클럭 SCK가 종료되면, 제어부가 데이타버스를 통해 상기 수신된 데이타 프레임을 수신할 수 있도록 제12도의 12G와 같이 리드신호 SRD가 발생된다. 상기 리드신호 SRD가 발생되면, 상기 병렬검출단자 CD7-CD0를 출력이 병렬출력단자 PO7-PO0를 통해 출력된다.
이때 상기 패리티연산부 34는 상기 제2레지스터 32의 병렬검출단자 CD7-CD0를 출력하는 수신데이타들의 논리를 연산하여 연산패리티비트 DPB를 발생한다. 이때 상기 패리티연산부 34에서는 제12도의 12H와 같은 패리티연산주기 T3동안 수신된 데이타들의 논리를 검사하여 연산패리티비트 DPB를 발생한다. 그러면 익스클루시브노아게이트 37은 상기 연산패리티비트 DPB와 상기 제1레지스터 31의 직렬출력단자 SO를 출력하는 수신패리티비트 RPB를 배타적부논리합하여 두 패리티비트의 논리를 비교한다. 이때 상기 패리티비트 RPB 및 DPB의 논리가 동일한 논리를 갖는 경우에는 수신된 데이타가 정상적으로 수신되었음을 의미하며, 상이한 논리를 갖는 경우에는 수신된 데이타가 오류 상태임을 의미한다. 따라서 상기 익스클루시브노아게이트 37은 상기 두 패리티비트가 동일한 논리이면 정상 데이타임을 나타내는 하이 논리신호를 출력하고, 두 패리티비트가 상이한 논리이면 비정상 데이타임을 나타내는 로우 논리신호를 출력한다. 이때 수신모드시 상기 노아게이트는 상기 통신모드신호 T/RX의 반전신호인 로우 논리신호를 수신하고 있으므로, 상기 익스클루시브노아게이트 37의 출력에 따라 패리티검출신호 PBT의 논리가 결정된다. 이때 상기 익스클루시브노아게이트 37이 하이 논리신호를 출력하면 제12도의 12K에 도시된 바와 같이 수신데이타가 정상임을 나타내는 로우 논리 상태의 패리티검출신호 PBT를 발생하고, 상기 익스클루시브노아게이트 37이 로우 논리신호를 출력하면 제12도의 12K에 도시된 바와 같이 수신데이타가 비정상임을 나타내는 하이 논리 상태의 패리티검출신호 PBT를 발생한다.
그리고 상기와 같이 패리티검출신호 PBT를 검출하는 동안, 상기 제2레지스터 32는 로드주기 T4동안 제12도의 12J와 같이 수신된 직렬데이타를 병렬출력단자 PO7-PO0로 출력한다. 따라서 상기 리드신호 SWR은 제12도의 12G로 도시된 바와 같이 상기 패리티연산부 34가 연산패리티비트 DPB를 연산하는 주기 T3 및 상기 제2레지스터 32가 직렬수신된 데이타를 병렬출력단자 PO7-PO0로 출력하는 주기 T4이상 유지되어야 한다.
이때 상기 스마트카드 장치의 제어부는 제12도의 12K와 같이 발생되는 상기 패리티검출신호 PBT의 논리를 분석하여, 정상적인 패리티검출신호 PBT이면 데이타버스를 통해 제12도의 12J와 같이 데이타를 병렬 로드하고, 비정상적인 패리티검출신호 PBT이면 데이타를 로드하지 않고 에러 처리한다.
상술한 바와 같이 본 발명에 의한 스마트카드 장치의 입출력장치가 송신모드시 전송데이타의 논리를 연산하여 패리티를 발생하는 동시에 전송 데이타프레임에 삽입시켜 전송하며, 수신모드시에는 수신된 데이타들을 직렬 저장한 후 논리를 연산하여 패리티비트를 발생하고 수신된 패리티비트와 논리를 비교하여 수신된 데이타가 정상상태인지 아닌지를 판단할 수 있다. 따라서 스마트카드 장치에서 제어부의 프로그램 부하를 감소시킬 수 있으며, 또한 카드리더와 데이타 전송을 신속하게 수행할 수 있는 효과가 있다.

Claims (8)

  1. 카드리더와 비동기방식으로 직렬데이타를 통신하는 스마트카드의 직렬입출력장치에 있어서, 직렬입력단자가 SIO단자와 연결되는 제1레지스터와, 병렬검출단자를 구비하며, 병렬입력단자 및 병렬출력단자가 데이타버스와 연결되며, 직렬입력단자가 상기 제1레지스터의 직렬출력단자와 연결되는 다단의 쉬프트레지스터 구성을 갖는 제2레지스터와, 병렬입력단자가 접지단에 연결되며, 직렬입력단자가 상기 제2레지스터의 마지막 단의 직렬출력단자와 연결되고 직렬출력단자가 상기 SIO단자에 연결되는 제3레지스터와, 상기 제2레지스터의 병렬검출단자들의 출력을 수신하며, 수신데이타 논리를 연산하여 패리티비트를 발생하여 상기 제1레지스터의 병렬입력단자로 인가하는 패리티발생수단과, 상기 제1레지스터 및 패리티발생수단의 출력을 수신하며, 수신모드일 시 인에이블되어 상기 두 패리티신호를 비교하여 동일한 논리일 시 패리티검출신호를 출력하는 수단을 구비하며, 송신모드시 라이트신호에 의해 상기 제2레지스터가 상기 데이타버스 상의 데이타를 병렬 로드하고, 상기 패리티발생수단이 상기 제2레지스터의 병렬검출단자로부터 출력되는 데이타들의 논리를 연산하여 패리티비트를 발생하며, 상기 제1레지스터가 상기 패리티비트를 로드하며, 이후 발생되는 쉬프트클럭에 의해 상기 제3레지스터, 제2레지스터 및 제1레지스터에 로드된 데이타들을 순차적으로 쉬프트 출력하며, 수신모드시 상기 쉬프트클럭에 의해 상기 제3레지스터, 제2레지스터 및 제1레지스터가 직렬데이타들을 순차적으로 쉬프트 입력하며, 리드신호에 의해 상기 제2레지스터가 저장중인 데이타들을 상기 병렬검출단자로 출력하고, 상기 패리티발생수단이 수신 데이타들의 논리를 연산하여 패리티비트를 발생하며, 상기 연산패리티비트와 제1레지스터의 수신 패리티비트를 비교하여 동일한 논리일 패리티검출신호를 발생하는것을 특징으로 하는 스마트카드의 입출력장치.
  2. 제1항에 있어서, 상기 패리티발생수단이, 상기 접지전원과 제1검출데이타를 배타적논리합하여 제1연산데이타를 제1게이트와, 이전 게이트를 출력하는 연산데이타와 각각 대응되는 제2검출데이타-제7검출데이타를 각각 배타적 논리합하여 제2연산데이타-제7연산데이타를 발생하는 제2게이트-제7게이트와, 상기 제7연산데이타와 상기 제8검출데이타를 배타적논리합하여 이븐 패리티비트를 발생하는 제8게이트로 구성된 것을 특징으로 하는 스마트카드의 입출력장치.
  3. 제1항에 있어서, 상기 패리티발생수단이, 동작전원과 제1검출데이타를 배타적논리합하여 제1연산데이타를 제1게이트와, 이전 게이트를 출력하는 연산데이타와 각각 대응되는 제2검출데이타-제7검출데이타를 각각 배타적 논리합하여 제2연산데이타-제7연산데이타를 발생하는 제2게이트-제7게이트와, 상기 제7연산데이타와 상기 제8검출데이타를 배타적논리합하여 오드 패리티 비트를 발생하는 제8게이트로 구성된 것을 특징으로 하는 스마트카드의 입출력장치.
  4. 카드리더와 직렬 통신을 수행하여 정보를 교환하는 스마트카드 장치에 있어서,패리티연산수단을 구비하고, 직렬입출력단자를 통해 상기 카드리더와 연결되며, 수신모드시 상기 카드리더로부터 수신되는 직렬데이타를 병렬데이타로 변환한 후 데이타들의 논리를 연산하여 패리티비트를 발생하고 발생된 패리티비트와 수신된 패리티비트를 비교하며 동일한 패리티비트일 시 패리티검출신호를 발생하며, 송신모드시, 송신한 병렬데이타들의 논리를 연산하여 상기 패리티비트를 발생한 후 데이타들과 함께 직렬데이타로 변환하여 상기 카드리더로 출력하는 입출력수단과, 프로그램 정보를 저장하는 제1영역 및 서비스 정보를 저장하는 제2영역을 구비하는 EEPROM과, 상기 입출력수단과 연결되며, 송신모드시 병렬 형태의 서비스 정보를 송출하고 수신모드시 상기 패리티검출신호에 의해 상기 입출력수단으로부터 수신되는 병렬데이타를 수신하며, 상기 입출력수단으로부터 수신되는 상기 카드리더의 정보에 따라 상기 EEPROM의 해당하는 영역을 억세스하여 정보를 등록, 삭제 및 변경하는 제어수단으로 구성된 것을 특징으로 하는 스마트카드 장치.
  5. 제4항에 있어서, 상기 입출력수단이, 직렬입력단자가 SIO단자와 연결되는 제1레지스터와, 병렬검출단자를 구비하며, 병렬입력단자 및 병렬출력단자가 데이타버스와 연결되며, 직렬입력단자가 상기 제1레지스터의 직렬출력단자와 연결되는 다단의 쉬프트레지스터 구성을 갖는 제2레지스터와, 병렬입력단자가 접지단에 연결되며, 직렬입력단자가 상기 제2레지스터의 마지막 단의 직렬출력단자와 연결되고 직렬출력단자가 상기 SIO단자에 연결되는 제3레지스터와, 상기 제2레지스터의 병렬검출단자들의 출력을 수신하며, 수신데이타 논리를 연산하여 패리티비트를 발생하여 상기 제1레지스터의 병렬입력단자로 인가하는 패리티발생수단과, 상기 제1레지스터 및 패리티발생수단의 출력을 수신하며, 수신모드일 시 인에이블되어 상기 두 패리티신호를 비교하여 동일한 논리일 시 패리티검출신호를 출력하는 수단을 구비하여, 송신모드시 라이트신호에 의해 상기 제2레지스터가 상기 데이타버스 상의 데이타를 병렬 로드하고, 상기 패리티발생수단이 상기 제2레지스터의 병렬검출단자로부터 출력되는 데이타들의 논리를 연산하여 패리티비트를 발생하며, 상기 제1레지스터가 상기 패리티비트를 로드하며, 이후 발생되는 쉬프트클럭에 의해 상기 제3레지스터, 제2레지스터 및 제1레지스터에 로드된 데이타들을 순차적으로 쉬프트 출력하며, 수신모드시 상기 쉬프트클럭에 의해 상기 제3레지스터, 제2레지스터 및 제1레지스터가 직렬데이타들을 순차적으로 쉬프트 입력하며, 리드신호에 의해 상기 제2레지스터가 저장중인 데이타들을 상기 병렬검출단자로 출력하고, 상기 패리티 발생수단이 수신 데이타들의 논리를 연산하여 패리티비트를 발생하며, 상기 연산 패리티비트와 제1레지스터의 수신 패리티비트를 비교하여 동일한 논리일 패리티 검출신호를 발생하는 것을 특징으로 하는 스마트카드의 입출력장치.
  6. 카드리더와 직렬 통신을 수행하여 정보를 교환하는 스마트카드 장치에 있어서, 패리티연산수단을 구비하고, 직렬입출력단자를 통해 상기 카드리더와 연결되며, 수신모드시 상기 카드리더로부터 수신되는 직렬데이타를 병렬데이타로 변환한 후 데이타들의 논리를 연산하여 패리티비트를 발생하고 발생된 패리티비트와 수신된 패리티비트를 비교하며 동일한 패리티비트일 시 패리티검출신호를 발생하며, 송신모드시, 송신한 병렬데이타들의 논리를 연산하여 상기 패리티비트를 발생한 후 데이타들과 함께 직렬데이타로 변환하여 상기 카드리더로 출력하는 입출력수단과, 스마트카드 장치의 제어 프로그램 정보를 저장하는 마스크롬과, 사용자의 서비스 정보를 저장하는 EEPROM과, 상기 입출력수단과 연결되며, 송신모드시 병렬 형태의 서비스 정보를 송출하고 수신모드시 상기 패리티검출신호에 의해 상기 입출력수단으로부터 수신되는 병렬데이타를 수신하며, 상기 입출력수단으로부터 수신되는 상기 카드리더의 정보에 따라 상기 EEPROM의 해당하는 영역을 억세스하여 정보를 등록, 삭제 및 변경하는 제어수단으로 구성된 것을 특징으로 하는 스마트카드 장치.
  7. 제6항에 있어서, 상기 입출력수단이, 직렬입력단자가 SIO단자와 연결되는 제1레지스터와, 병렬검출단자를 구비하며, 병렬입력단자 및 병렬출력단자가 데이타버스와 연결되며, 직렬입력단자가 상기 제1레지스터의 직렬출력단자와 연결되는 다단의 쉬프트레지스터 구성을 갖는 제2레지스터와, 병렬입력단자가 접지단에 연결되며, 직렬입력단자가 상기 제2레지스터의 마지막 단의 직렬출력단자와 연결되고 직렬출력단자가 상기 SIO단자에 연결되는 제3레지스터와, 상기 제2레지스터의 병렬검출단자들의 출력을 수신하며, 수신데이타 논리를 연산하여 패리티비트를 발생하여 상기 제1레지스터의 병렬입력단자로 인가하는 패리티발생수단과, 상기 제1레지스터 및 패리티발생수단의 출력을 수신하며, 수신모드일 시 인에이블되어 상기 두 패리티신호를 비교하여 동일한 논리일 시 패리티검출신호를 출력하는 수단을 구비하여, 송신모드시 라이트신호에 의해 상기 제2레지스터가 상기 데이타버스 상의 데이타를 병렬 로드하고, 상기 패리티발생수단이 상기 제2레지스터의 병렬검출단자로부터 출력되는 데이타들의 논리를 연산하여 패리티비트를 발생하며, 상기 제1레지스터가 상기 패리티비트를 로드하며, 이후 발생되는 쉬프트클럭에 의해 상기 제3레지스터, 제2레지스터 및 제2레지스터에 로드된 데이타들을 순차적으로 쉬프트 출력하며, 수신모드시 상기 쉬프트클럭에 의해 상기 제3레지스터, 제2레지스터 및 제1레지스터가 직렬데이타들을 순차적으로 쉬프트 입력하며, 리드신호에 의해 상기 제2레지스터가 저장중인 데이타들을 상기 병렬검출단자로 출력하고, 상기 패리티발생수단이 수신 데이타들의 논리를 연산하여 패리티비트를 발생하며, 상기 연산 패리티비트와 제1레지스터의 수신 패리티비트를 비교하여 동일한 논리일 패리티검출신호를 발생하는 것을 특징으로 하는 스마트카드의 입출력장치.
  8. 패리티레지스터, 데이타레지스터, 스타트레지스터 및 패리티발생기로 이루어지는 입출력장치를 구비하는 스마트카드 장치의 데이타 통신 방법에 있어서, 송신모드시 라이트신호에 의해 상기 데이타레지스터가 데이타버스 상의 병렬 데이타를 로드하며, 상기 패리티발생기가 상기 데이타레지스터로부터 병렬데이타를 수신한 후 데이타들의 논리를 연산하여 패리티비트를 발생하고, 사이 패리티레지스터가 상기 패리티비트를 로드하며, 상기 라이트신호가 상기 패리티발생시점까지 유지되는 과정과, 상기 과정 수행 후 쉬프트클럭에 의해 상기 스타트레지스터, 데이타레지스터 및 패리티레지스터에 저장 중인 데이타를 순차적으로 쉬프트 출력하여 카드리더에 전송 프레임 형태의 직렬데이타로 출력하는 과정과, 수신모드시 상기 쉬프트클럭에 의해 상기 카드리더로부터 출력되는 전송 프레임 형태의 직렬데이타를 쉬프트 입력하여 상기 스타트레지스터, 데이타레지스터 및 패리티레지스터에 순차적으로 저장하는 과정과, 상기 과정 수행 후 리드신호에 의해 상기 데이타레지스터에 저장 중인 병렬데이타를 수신한 후 데이타들의 논리를 연산하여 패리티비트를 발생하고, 상기 패리티레지스터의 수신패리티비트와 상기 연산패리티비트의 논리를 비교하여 동일할 시 패리티검출신호를 발생하여 상기 데이타레지스터에 저장중인 데이타를 데이타버스로 출력하는 과정으로 이루어짐을 특징으로 하는 스마트카드 장치의 데이타 통신 방법.
KR1019940025042A 1994-09-30 1994-09-30 스마트카드의 데이타 통신장치 및 방법 KR0139494B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1019940025042A KR0139494B1 (ko) 1994-09-30 1994-09-30 스마트카드의 데이타 통신장치 및 방법
DE19535968A DE19535968C2 (de) 1994-09-30 1995-09-27 Eingabe/Ausgabe-Vorrichtung in einer Smartcard und Datenkommunikationsverfahren für diese
FR9511460A FR2726416B1 (fr) 1994-09-30 1995-09-29 Dispositif de communication de donnees et procede d'utilisation d'une carte intelligente
JP7255329A JPH08194784A (ja) 1994-09-30 1995-10-02 スマートカードの入出力装置
US08/537,962 US5729004A (en) 1994-09-30 1995-10-02 Data communication device and method of a smart card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940025042A KR0139494B1 (ko) 1994-09-30 1994-09-30 스마트카드의 데이타 통신장치 및 방법

Publications (2)

Publication Number Publication Date
KR960011753A KR960011753A (ko) 1996-04-20
KR0139494B1 true KR0139494B1 (ko) 1998-07-01

Family

ID=19394143

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940025042A KR0139494B1 (ko) 1994-09-30 1994-09-30 스마트카드의 데이타 통신장치 및 방법

Country Status (5)

Country Link
US (1) US5729004A (ko)
JP (1) JPH08194784A (ko)
KR (1) KR0139494B1 (ko)
DE (1) DE19535968C2 (ko)
FR (1) FR2726416B1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2774195A1 (fr) * 1998-01-27 1999-07-30 Gemplus Card Int Carte a microprocesseur comportant un circuit de communication cable
FR2774196B1 (fr) * 1998-01-27 2000-03-17 Gemplus Card Int Carte a memoire asynchrone
US6199128B1 (en) * 1998-03-26 2001-03-06 Gemplus, S.C.A. Smart card system for use with peripheral devices
US6297789B2 (en) 1998-07-09 2001-10-02 Tyco Electronics Corporation Integrated circuit card with liquid crystal display for viewing at least a portion of the information stored in the card
US6332173B2 (en) * 1998-10-31 2001-12-18 Advanced Micro Devices, Inc. UART automatic parity support for frames with address bits
TW410314B (en) * 1998-12-09 2000-11-01 Winbond Electronics Corp An universal asynchronous receiver-transmitter with reading interface of IC card and card reading system IC card applied with the technique
DE60139253D1 (de) * 2000-05-22 2009-08-27 Panasonic Corp Chipkarte
JP3566630B2 (ja) * 2000-07-28 2004-09-15 Necマイクロシステム株式会社 カードシステム、それに用いるicカード及びカードリーダライタ
KR20030076910A (ko) * 2002-03-23 2003-09-29 엘퍼스크 주식회사 스마트 카드 리더에서의 스마트 카드 및 시리얼통신 모듈인터페이스장치

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2483713A1 (fr) * 1980-05-30 1981-12-04 Cii Honeywell Bull Dispositif pour la transmission de signaux entre deux stations de traitement de l'information
US4906828A (en) * 1983-02-28 1990-03-06 Paperless Accounting, Inc. Electronic money purse and fund transfer system
JPS6361389A (ja) * 1986-09-01 1988-03-17 Nec Corp Idカ−ドの読取り方法
JPS63197240A (ja) * 1987-02-12 1988-08-16 Matsushita Electric Ind Co Ltd パリテイ検出回路
JP2801595B2 (ja) * 1987-06-16 1998-09-21 ケル株式会社 並一直変換装置
JPH01114995A (ja) * 1987-10-29 1989-05-08 Toppan Printing Co Ltd Icカード
JPH01233590A (ja) * 1988-03-14 1989-09-19 Toshiba Corp 携帯可能電子装置
US5109152A (en) * 1988-07-13 1992-04-28 Matsushita Electric Industrial Co., Ltd. Communication apparatus
US5227613A (en) * 1989-01-24 1993-07-13 Matsushita Electric Industrial Co., Ltd. Secure encrypted data communication system having physically secure ic cards and session key generation based on card identifying information
JPH03291787A (ja) * 1990-04-10 1991-12-20 Matsushita Electric Ind Co Ltd メモリ装置
US5149945A (en) * 1990-07-05 1992-09-22 Micro Card Technologies, Inc. Method and coupler for interfacing a portable data carrier with a host processor
US5418353A (en) * 1991-07-23 1995-05-23 Hitachi Maxell, Ltd. Non-contact, electromagnetically coupled transmission and receiving system for IC cards
JP3083187B2 (ja) * 1991-09-30 2000-09-04 富士通株式会社 電子財布システムの鍵管理方式
JP2842750B2 (ja) * 1992-04-07 1999-01-06 三菱電機株式会社 Icカード
JPH06104875A (ja) * 1992-09-24 1994-04-15 Oki Electric Ind Co Ltd シリアルポート
DE69324445T2 (de) * 1992-11-27 1999-09-30 Denso Corp Tragbares elektronisches Gerät
FR2705810B1 (fr) * 1993-05-26 1995-06-30 Gemplus Card Int Puce de carte à puce munie d'un moyen de limitation du nombre d'authentifications.

Also Published As

Publication number Publication date
FR2726416A1 (fr) 1996-05-03
KR960011753A (ko) 1996-04-20
DE19535968C2 (de) 1999-04-01
JPH08194784A (ja) 1996-07-30
FR2726416B1 (fr) 2001-09-07
US5729004A (en) 1998-03-17
DE19535968A1 (de) 1996-04-18

Similar Documents

Publication Publication Date Title
US5495593A (en) Microcontroller device having remotely programmable EPROM and method for programming
US7233541B2 (en) Storage device
EP1129408B1 (en) Microcomputer with test instruction memory
JPH02210590A (ja) データを記憶し処理するための携帯可能なデータ担体
JP2000222176A (ja) 乱数生成回路、当該乱数生成回路を内蔵する非接触icカード及びリーダ/ライタ、並びに、当該乱数生成回路を内蔵する装置のテスト方法
US5243561A (en) Data erasing and re-writing circuit for use in microcomputer integrated circuit device
JP2002175261A (ja) データ転送制御回路
KR0139494B1 (ko) 스마트카드의 데이타 통신장치 및 방법
KR20030040021A (ko) 마이크로컴퓨터
US8723654B2 (en) Interrupt generation and acknowledgment for RFID
US20120007721A1 (en) Fast block write using an indirect memory pointer
EP1220077B1 (en) Data processing apparatus and memory card using the same
US5781796A (en) System for automatic configuration of I/O base address without configuration program using readout data on common bus by responding device
US5327363A (en) Pattern memory circuit for integrated circuit testing apparatus
US20050240697A1 (en) Enhanced structure of extensible time-sharing bus
US7275186B2 (en) Memory bus checking procedure
JP2000250816A (ja) 集積回路の認証方法
US8957763B2 (en) RFID access method using an indirect memory pointer
EP0721163A1 (en) Information processing apparatus with a mode setting circuit
US5825204A (en) Apparatus and method for a party check logic circuit in a dynamic random access memory
US5307472A (en) Data transfer interface module
JP2001527669A (ja) 集積回路および該集積回路のテスト方法
US7116783B2 (en) Non-deterministic method for secured data transfer
US7306140B2 (en) Integrated circuit card system and method thereof
US5396611A (en) Microprocessor use in in-circuit emulator having function of discriminating user's space and in-circuit emulator space

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

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20130228

Year of fee payment: 16

LAPS Lapse due to unpaid annual fee