KR20000028708A - 프로토콜 제어용 집적 회로 - Google Patents

프로토콜 제어용 집적 회로 Download PDF

Info

Publication number
KR20000028708A
KR20000028708A KR1019990040885A KR19990040885A KR20000028708A KR 20000028708 A KR20000028708 A KR 20000028708A KR 1019990040885 A KR1019990040885 A KR 1019990040885A KR 19990040885 A KR19990040885 A KR 19990040885A KR 20000028708 A KR20000028708 A KR 20000028708A
Authority
KR
South Korea
Prior art keywords
control
integrated circuit
circuit
control program
protocol
Prior art date
Application number
KR1019990040885A
Other languages
English (en)
Other versions
KR100538193B1 (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 KR20000028708A publication Critical patent/KR20000028708A/ko
Application granted granted Critical
Publication of KR100538193B1 publication Critical patent/KR100538193B1/ko

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/22Payment schemes or models
    • G06Q20/229Hierarchy of users of accounts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/346Cards serving only as information carrier of service
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/363Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes with the personal data of a user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • G06Q20/40975Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0866Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means by active credit-cards adapted therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Technology Law (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Computer Security & Cryptography (AREA)
  • Development Economics (AREA)
  • Communication Control (AREA)
  • Cash Registers Or Receiving Machines (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Microcomputers (AREA)

Abstract

휴대용 매체와 통신하여 데이터의 수취를 행하기 위해 필요한 하드웨어나 제어 프로그램을 하나의 칩 상에 집적하고, 이 칩을 각종 장치에서 공통 이용할 수 있도록 하여, 각종 장치의 설계 개발 공정수나 인정 기관 등에 의한 인정 공정수를 삭감함과 동시에, 신뢰성의 향상 및 높은 보안 성능을 실현한다. 복수의 다른 방식의 전자 화폐용 프로토콜에 대응하여 작성된 제어 프로그램(5)을 격납한 기억부(2)와, 이 기억부(2)에 격납된 상기 제어 프로그램을 실행함으로써, 상기 복수의 다른 방식의 전자 화폐의 취급을 제어하는 처리부(1)와, 외부 처리부 또는 외부 기억부 중 적어도 한 쪽을 외부 회로에 접속하고, 이 외부 회로와 처리부(1) 사이의 인터페이스 기능을 달성한 인터페이스 회로(3)를 하나의 칩(4) 상에 집적하여, 전자 화폐 제어용 집적 회로(10)을 구성한다.

Description

프로토콜 제어용 집적 회로{INTEGRATED CIRCUIT FOR PROTOCOL CONTROL}
본 발명은 휴대용 매체와 통신하여 데이터의 수취를 행하는 장치에 조립되는 프로토콜 제어용 집적 회로에 관한 것으로, 특히 전자 화폐나 크레디트 취인(transaction)에 대응 가능하게 구성되는 각종 취인 장치, 예를 들면 ATM (Automatic Teller Machine), ECR (Electric Cash Register), 전자 화폐 로드 단말, 전자 지갑, POS (Point Of Sales: 판매 시점 정보 관리) 시스템을 이루는 POS 단말/휴대 POS 단말(핸디 POS)/POS 서버 등에 이용될 수 있는 것으로서, 상술한 바와 같은 각종 취인 장치와 전자 화폐를 격납한 휴대용 매체 (예를 들면 IC(Integrated Circuit) 카드)와의 사이의 인터페이스 디바이스로서 기능하는, 프로토콜 제어용 집적 회로에 관한 것이다.
근래에, 결재의 안전성, 편리성 등의 면에서, 지폐, 화폐 등의 통화에 대신하는 결재 수단으로서, 전자적 디지탈 데이터를 현금으로 이용하는, 소위 전자 화폐가 주목되고 있으며, 발행 형태, 통화 형태나 결재 형태가 다른 다양한 방식의 전자 화폐가 실용화되고 있다. 방식이 다르면, 전자 화폐를 취급하기 위한 프로토콜도 다르다.
이 때문에, 전자 화폐를 취급하는 장치에서는, 프로토콜이 다른 복수 종류의 전자 화폐를 용이하게 처리할 수 있도록 하기 위한 공통 콤포넌트(공통 소재)의 제공이 요망되고 있다.
근래, 통화의 전자적 대상으로서 정의되는 전자 화폐를 취급하는 취인 장치로서는, 전술한 바와 같이, ATM, ECR, 전자 활폐 로드 단말, 전자 지갑, POS 단말, 핸디 POS, POS 서버 등, 다양한 것이 개발되고 있다.
이들의 장치에서는, 장치 마다 필요로 하는 CPU 성능, 표시 성능 등의 사양이 다르기 때문에, 장치 마다 최적 사양의 CPU, 메모리, 표시 제어 회로, 입력 제어 회로, IC 카드 제어 회로 등을 설계하여, 이들을 제어하기 위한 프로그램을 작성하고 있다.
또, 전술한 바와 같이, 전자 화폐의 방식도 다양한 것이 실용화되고 있지만, 방식에 따라 전자 화폐를 취급하기 위한 프로토콜도 다르다. 따라서, 전자 화폐의 방식이 다르면, 그 전자 화폐를 취급하는 장치에서의 제어 프로그램도 다르게 된다.
전자 화폐를 취급하는 장치를 제조할 때에는, 많은 경우, 그 장치의 설계 단계에서, 장치 마다 또 전자 화폐의 방식 마다, 그 전자 화폐의 사양원 등에 의한 인정을 받을 필요가 있다. 또, 인정을 받기 위해서는, 방식 마다 규정되어 있는 프로토콜에 기초하여 제어 프로그램이 바르게 작성되어 있는지, 에러 체킹에 대한 제어가 정확하게 실행되었는지 등, 각종 검증(인증 작업)을 행하여, 그 검증 결과를 제출할 필요가 있다.
그러나, 종래에는 이하와 같은 과제나 요망이 있었다.
(1) 장치 마다 제어 프로그램을 개발해야 했으므로, 제어 프로그램을 개발하는 단계에서, 신뢰성을 확보하기 위해 행하는 테스트의 공정수 즉 설계, 개발 공정수가 많아지게 된다. 또, 하나의 장치에서, 방식(프로토콜)이 다른 복수 종류의 전자 화폐를 취급하는 경우, 전자 화폐의 방식 마다 제어 프로그램을 개발하고, 당연하게 프로토콜 마다 제어 프로그램에 대해서도 동일한 테스트를 행하지 않으면 안되므로, 테스트의 공정이 더욱 증대하게 된다.
(2) 인정을 받을 필요가 있는 경우, 인정을 받기 위해, 전자 화폐의 방식에 따라서는 극히 팽대한 양의 검증 결과를 첨부하지 않으면 않되고, 그 검증 결과를 얻기 위한 인증 작업에 필요한 공정이 팽대하게 된다. 또, 하나의 장치에서, 방식(프로토콜)이 다른 복수 종류의 전자 화폐를 취급하는 경우, 방식 마다 인정을 받게 되면, 전술한 인증 작업에 필요한 공정이 더욱 증대한다.
(3) 전자 화폐의 제어 프로그램의 제어 로직이나 암호 키이는 안보상, 외부로부터 보이지 않도록 유지하는 것이 바람직하고, 이를 위해 장치 전체 또는 CPU나 메모리의 주변을 수지로 피복하는 등의 안보 대책이 필요하지만, 장치 전체를 피복하려고 하면 꽤 크기가 커져버리기 때문에, 보안을 확보하기 위해서 대상 부분을 가능한 한 작게 하는 것이 바람직하다.
본 발명은 이와 같은 과제를 감안하여 창안된 것으로, 프로토콜이 다른 복수 방식의 데이터 통신을 행하기 위해 필요한 하드웨어나 제어 프로그램(소프트웨어)를 하나의 칩 상에 집적하고, 그 칩(직적 회로)을 각종 장치에서 공통 이용할 수 있도록 함으로써, 각종 장치의 설계, 개발 공정의 삭감이나, 인정 기관 등에 의한 인정 공정수(인정을 받기 위한 검증 공정수)의 삭감을 얻을 수 있으면서, 신뢰성의 향상 및 높은 보안 성능을 실현한, 프로토콜 제어용 집적 회로를 제공하는 것을 목적으로 한다.
도 1 내지 도 10은 모두 본 발명의 원리 블럭도.
도 1에서 나타낸 본 발명의 프로토콜 제어용 집적 회로(10)는 통화의 전자적 대상으로서 정의되는 전자 화폐에 대응 가능하게 구성되는 장치에 조립되는 것으로, 적어도 처리부(1), 기억부(2) 및 인터페이스 회로(3)를 하나의 칩(4) 상에 집적하여 구성되어 있다.(청구항 1).
여기에서, 기억부(2)는 복수의 다른 방식의 전자 화폐용 프로토콜에 대응하여 작성된 제어 프로그램(5)을 격납한 것이며, 처리부(1)는 이 기억부(2)에 기억된 제어 프로그램(5)을 실행함으로써, 복수의 다른 방식의 전자 화폐의 취급을 제어하는 것이다. 또, 인터페이스 회로(3)는 외부 처리부 또는 외부 기억부 (도 2의 부호 11 참조) 중 적어도 한 쪽을 포함하는 외부 회로에 접속되며, 이 외부 회로와 처리부(1) 사이의 인터페이스 기능을 달성하는 것이다.
이 때, 전자 화폐의 처리에 관련되는 제어 기능을 달성하는 주변 제어 회로를, 칩(4) 상에 더욱 집적하여, 집적 회로(10)을 구성하여도 좋고(청구항 2), 도 1에서 나타낸 집적 회로(10)에서는, 주변 제어 회로로서, 매체 제어 회로(6)(청구항 3), 통신 제어 회로(7)(청구항 4), 표시 제어 회로(8)(청구항 5) 및 입력 제어 회로(청구항 6)가 포함되어 있다.
매체 제어 회로(6)는 처리부(1) 및 제어 프로그램(5)에 의해 제어되며, 전자 화폐를 격납한 휴대용 매체에 대한 제어를 행하는 것이며, 통신 제어 회로(7)는 처리부(1) 및 제어 프로그램(5)에 의해 제어되며, 외부 장치(도 8의 부호 14 참조)와의 통신을 제어하는 것이고, 표시 제어 회로(8)는 처리부(1) 및 제어 프로그램(5)에 의해 제어되고, 외부 표시 장치를 제어하는 것이며, 입력 제어 회로(9)는 처리부(1) 및 제어 프로그램(5)에 의해 제어되며, 외부 입력 장치로부터의 신호의 입력 처리를 행하는 것이다.
또, 기억부(2)와 집적 회로(10)의 외부 접속 단자와의 사이가 논리적으로 차단되는 동시에, 제어 프로그램(5)은 집적 회로(10)의 제조 시점에서 기억부(2)에 격납된다(청구항 7).
도 2에 도시된 바와 같이, 본 발명의 집적 회로(10)에, 인터페이스 회로(3)를 거쳐 프로그램 격납용 외부 기억부(11)가 외부 회로로서 접속되어 있는지의 여부를 판별하는 식별 수단(12)을 내장하고, 이 식별 수단(12)에 의해 외부 기억부(11)가 접속되어 있다고 판별된 경우에는, 처리부(1)가 외부 기억부(11)에 격납되어 있는 프로그램(11a)을 실행하여도 좋다(청구항 8). 이 때, 식별 수단(12)은 프로그램 격납용 외부 기억부(11)와의 접속용으로 미리 할당된 하나 이상의 논리 어드레스를 판독하여, 그 판독 결과로서 얻어진 값과 소정치를 비교함으로써, 프로그램 격납용 외부 기억부(11)의 접속/비접속을 판별할 수 있다(청구항 9).
도 3에서 나타낸 바와 같이, 기억부(2)에 격납된 제어 프로그램(5)을 인터페이스 회로(3)에 접속된 외부 회로 또는 주변 제어 회로를 디바이스로서 제어하는 하나 이상의 디바이스 제어 프로그램(501)과, 복수의 다른 방식의 전자 화폐 각각에 대응하여 디바이스 제어 프로그램(501)을 제어하는 복수의 프로토콜 제어용 프로그램(502)와, 이들 디바이스 제어 프로그램(501) 및 프로토콜 제어 프로그램(502)를 제어하는 어플리케이션 프로그램(503)으로 구성하여도 좋다(청구항 10).
이 때, 어플리케이션 프로그램(503)이 도 4에 도시한 바와 같은, 복수의 다른 방식의 전자 화폐 중 하나를 지정하는 전자 화폐 종별 필드(131)와 복수의 다른 방식의 전자 화폐에 공통의 취인 종별을 지정하는 취인 종별 필드(132)를 포함하는 제어 전문(13)을 받으면, 전자 화폐 종별 필드(131)에서 지정된 전자 화폐에 대응하는 프로토콜 제어 프로그램(502)에 의해 취인 종별 필드(132)에서 지정된 취인을 행할 수 있다(청구항 11).
또, 어플리케이션 프로그램(503)이 도 5에서 나타낸 바와 같은, 디바이스 제어 프로그램(501)을 지정하는 디바이스 종별 필드(133)와 디바이스 제어 프로그램(501)에의 제어 명령을 기술하는 명령 필드(134)를 포함하는 제어 전문(13)을 수신하면, 디바이스 종별 필드(133)에서 지정된 디바이스 제어 프로그램(501)에 명령 필드(134)에 기술된 명령을 통지하여 명령을 실행시키고, 그 명령에 대한 디바이스 제어 프로그램(501)로부터의 응답을 응답 전문으로서 명령의 발생처에 송신한다(청구항 12).
또, 도 6에서 나타낸 바와 같이, 제어 전문(13)에서 전자 화폐 종별 필드(131)와 디바이스 종별 필드(133)를 동일한 필드에서 공용하고, 그 필드를 전자 화폐 종별 필드(131)로서 이용할 때의 지정 데이터와 그 필드를 디바이스 종별 필드(133)으로서 이용할 때의 지정 데이터를 서로 배타 값으로 해도 좋다(청구항 13). 게다가, 이 경우, 도 6에서 나타낸 바와 같이, 제어 전문(13)에서 취급 종별 필드(132)와 명렬 필드(134)를 동일 필드에서 공용해도 좋다(청구항 14).
도 7에서 나타낸 바와 같이, 제어 프로그램(5)이 디바이스 제어 프로그램(501), 프로토콜 제어 프로그램(502) 및 어플리케이션 프로그램(503)을 모듈(모듈군(510) 참조)로서 가지면서, 이들 모듈 상호간을 접속하는 인터페이스 기능을 제공하는 경로 제어 프로그램(504)을 가지고 구성되며, 모듈의 각각에 고유의 모듈 식별자가 부여되고, 경로 제어 프로그램(504)이 접속 요구원 모듈의 모듈 식별자와 접속 상대처 모듈의 모듈 식별자를 파라미터로서 이용하여 모듈의 상호간을 접속하여도 좋다(청구항 15).
또한, 도 8에서 나타낸 바와 같이, 집적 회로(10)가 주변 제어 회로로서 외부 장치(14)와의 통신을 제어하는 통신 제어 회로(7)를 포함하고, 제어 프로그램(5)이 도 7과 동일한 모듈군(510) 및 경로 제어 프로그램(504)를 가지면서, 통신 제어 회로(7)를 제어하는 통신 제어 프로그램(505)를 가지고 구성되며, 경로 제어 프로그램(504)이 접속 상대처 모듈(14a)이 외부 장치(14)에 속하는 경우, 통신 제어 프로그램(505)에 의해 제어되는 통신 제어 회로(7)를 거쳐, 집적 회로(10)에서의 접속 요구원 모듈과 외부 장치(14)에서의 접속 상대처 모듈(14a)을 접속하여도 좋다(청구항 16). 통신 제어 프로그램(505)은 모듈군(510)에서의 디바이스 제어 프로그램(501)의 하나로서 포함되어 있어도 좋다.
이 경우, 집적 회로(10)에 속하는 모듈(모듈군(510))의 각각과 외부 장치(14)에 속하는 모듈(14a) 각각에 고유의 모듈 식별자가 부여됨과 동시에, 집적 회로(10) 및 외부 장치(14) 각각에 고유의 경로 식별자가 부여되고, 경로 제어 프로그램(504)이 접속 요구원 모듈의 모듈 식별자와 접속 상대처 모듈(14a)의 모듈 식별자와 경로 식별자를 파라미터로서 이용하여 모듈 상호간을 접속한다(청구항 17).
또, 도 8에서 나타낸 바와 같이, 제어 프로그램(5)이 모듈 식별자와 그 모듈 식별자를 부여한 모듈이 속하는 집적 회로(10) 또는 외부 장치(14)를 나타내는 경로 식별자와의 대응 관계를 유지하는 테이블(506)을 가지고, 경로 제어 프로그램(504)이 접속 상대처 모듈(14a)의 모듈 식별자로 테이블(506)을 검색하고, 접속 상대처 모듈(14a)의 모듈 식별자에 대응하는 경로 식별자를 얻어, 그 경로 식별자가 집적 회로(10)의 경로 식별자와 일치하는 경우에는 집적 회로(10) 내에서 접속 요구원 모듈과 접속 상대처 모듈을 접속하는 한편, 그 경로 식별자가 집적 회로(10)의 경로 식별자와 일치하지 않는 경우에는, 접속 상대처 모듈(14a)이 외부 장치(14)에 속하는 것이라고 판단하고, 통신 제어 회로(7)을 거쳐, 집적 회로(10)에서의 접속 요구원 모듈과 외부 장치(14)에서의 접속 상대처 모듈(14a)을 접속하여도 좋다(청구항 18).
또, 테이블(506)에 유지되는 상기 대응 관계를, 통신 제어 회로(7)에서 수신된 전문에 의해 설정/변경 가능하게 구성하여도 좋고(청구항 19), 테이블(506)을 인터페이스 회로(3)를 거쳐 접속된 외부 회로로서의 외부 기억부에 격납하여도 좋다(청구항 20).
도 8에서 나타낸 외부 장치(14)는 도 8에서 나타낸 집적 회로(10)와 동일한 기능을 갖는 처리 장치 (예를 들면 퍼스널 컴퓨터)이어도 좋고(청구항 21), 도 9에서 나타낸 바와 같이, 도 8에서 나타낸 집적 회로(10)와 동일한 구성을 갖는 다른 집적 회로(10)이어도 좋다(청구항 22).
또한, 도 8에서 나타낸 외부 장치(14)가 도 10에서 나타낸 바와 같이, 집적 회로(10)의 경로 제어 프로그램(504)에 대하여 집적 회로(10)에 속하는 모듈과의 접속 요구를 발생할 수 있는 어플리케이션(15a)을 갖는 처리 장치(15)이고, 경로 제어 프로그램(504)이 통신 제어 프로그램(505)에 의해 제어되는 통신 제어 회로(7)를 거쳐 처리 장치(15)로부터 상기 접속 요구를 받는 경우, 집적 회로(10)에서의 해당 모듈과 처리 장치(15)를 접속하여도 좋다(청구항 23).
또, 본 발명의 프로토콜 제어용 집적 회로(청구항 24)는 휴대용 매체와 통신하여 데이터의 수취를 행하는 장치에 조립되는 것으로, 복수의 다른 방식의 데이터 통신용 프로토콜에 대응하여 작성되는 제어 프로그램을 격납한 기억부와, 이 기억부에 격납된 제어 프로그램을 실행함으로써 복수의 다른 방식의 데이터 통신을 제어하는 처리부와, 외부 처리부 또는 외부 기억부 중 적어도 한 쪽을 외부 회로에 접속하여 이 외부 회로와 처리부와의 사이의 인터페이스 기능을 달성하는 인터페이스 회로를 하나의 칩 상에 집적하여 구성된 것을 특징으로 한다.
상술한 바와 같이 구성된 본 발명의 프로토콜 제어용 집적 회로(10)에서는, 이하와 같은 작용을 얻을 수 있다.
(1) 하나의 집적 회로(10)에 의해 복수의 다른 방식의 전자 화폐의 취급이 가능하게 됨과 동시에, 그 집적 회로(10)를 전자 메일 대응의 각종 취인 장치에서 공통으로 이용할 수 있다(청구항 1).
(2) 집적 회로(10)에 주변 제어 회로도 내장함으로써, 각종 취인 장치에서 공통하는 부분을 보다 확대할 수 있다(청구항 2∼6).
(3) 집적 회로(10) 내의 제어 프로그램(5)을 격납하는 기억부(2)를 마스크 ROM으로 구성함으로써, 집적 회로(10)의 외부로부터 제어 프로그램(5)에의 억세스를 금지시킬 수 있으며, 보안을 확보할 수 있다(청구항 7).
(4) 집적 회로(10)에 프로그램 격납용 외부 기억부(11)을 접속 가능하게 함으로써, 집적 회로(10)의 확장성을 보다 높일 수 있다(청구항 8, 9).
(5) 제어 전문(13)을 이용함으로써, 집적 회로(10)의 외부로부터 사용하는 전자 화폐의 종별(프로토콜 제어 프로그램)을 지정할 수 있다(청구항 10, 11).
(6) 제어 전문(13)을 이용함으로써, 집적 회로(10)에 내장된 각종 주변 제어 회로를 외부로부터 직접 제어할 수 있기 때문에, 각종 전자 화폐에 대한 처리 이외의 처리(전자 화폐의 처리와는 무관계하게 예를 들면 IC 카드 리더/라이터 (reader/writer)를 사용하는 처리)를 실행할 수 있다(청구항 12∼14).
(7) 집적 회로(10)를 단일체로 취인 장치 등에 조립하여 이용할 수 있는 외에, 상위 장치(외부 장치)에 집적 회로(10)를 접속하고, 상위 장치(외부 장치)에 복수의 집적 회로(10)를 캐스캐이드 형상으로 접속할 수도 있기 때무에, 집적 회로(10)를 이용하여 극히 유연하게 시스템을 구축할 수 있다(청구항 15∼23).
(8) 하나의 집적 회로에 의해 복수의 다른 방식의 데이터 통신이 가능하게 됨과 동시에, 그 집적 회로를 휴대용 매체와 통신하여 데이터의 수취를 행하는 각종 장치에서 공통으로 이용할 수 있다(청구항 24).
도 1은 본 발명의 원리 블럭도.
도 2는 본 발명의 원리 블럭도.
도 3은 본 발명의 원리 블럭도.
도 4는 본 발명의 원리 블럭도.
도 5는 본 발명의 원리 블럭도.
도 6은 본 발명의 원리 블럭도.
도 7은 본 발명의 원리 블럭도.
도 8은 본 발명의 원리 블럭도.
도 9는 본 발명의 원리 블럭도.
도 10은 본 발명의 원리 블럭도.
도 11은 본 발명의 일 실시 형태로서의 프로토콜 제어용 집적 회로(프로토콜 콘트롤러)의 구성을 모식적으로 나타낸 도면.
도 12는 본 실시 형태에서의 외부 ROM의 식별 방법을 설명하기 위해, 본 실시 형태의 프로토콜 콘트롤러에서의 어드레스 공간의 구성을 나타내는 도면.
도 13은 본 실시 혀태의 프로토콜 콘트롤러에서의 제어 프로그램의 구조를 나타낸 블럭도.
도 14는 본 실시 형태의 프로토콜 콘트롤러에서 이용되는 제어 전문의 구성을 설명하기 위한 도면.
도 15는 본 실시 형태의 프로토콜 콘트롤러에서의 제어 프로그램의 구조의 다른 예를 나타낸 블럭도.
도 16의 (a), (b)는 모두 본 실시 형태에서 모듈 식별자와 경로 식별자와의 대응 관계를 유지하는 테이블의 내용을 설명하기 위한 도면.
도 17은 본 실시 형태의 프로토콜 콘트롤러의 캐스캐이드 접속예를 나타낸 도면.
도 18은 본 실시 형태의 프로토콜 콘트롤러를 이용한 취인 처리의 일 예를 설명하기 위한 도면.
도 19는 본 실시 형태의 프로토콜 콘트롤러를 이용한 취인 처리의 다른 예를 설명하기 위한 도면.
도 20은 본 실시 형태의 프로토콜 콘트롤러를 적용한 ATM의 구성예를 나타낸 블럭도.
도 21은 본 실시 형태의 프로토콜 콘트롤러를 적용한 POS 시스템 및 외부 카드 리더/라이터의 구성예를 나타낸 블럭도.
도 22는 본 실시 형태의 프로토콜 콘트롤러를 적용한 휴대 POS 단말의 구성예를 나타낸 블럭도.
도 23은 본 실시 형태의 프로토콜 콘트롤러에서의 디바이스 접속 상태 인식 방법을 설명하기 위한 회로도.
도 24는 본 실시 형태의 프로토콜 콘트롤러에서의 디바이스 접속 상태 인식 방법을 설명하기 위한 회로도.
도 25는 본 실시 형태의 프로토콜 콘트롤러에서의 디바이스 접속 상태 인식 방법을 설명하기 위한 플로우 챠트.
도 26은 본 실시 형태의 프로토콜 콘트롤러에서의 구성 정보 레지스터(HWSTR)의 구성을 나타낸 도면.
도 27은 본 실시 형태의 프로토콜 콘트롤러에서의 구성 정보 레지스터의 각 비트의 의미를 설명하기 위한 도면.
도 28은 본 실시 형태의 프로토콜 콘트롤러에서의 구성 정보 레지스터의 각 비트의 의미를 설명하기 위한 도면.
도 29는 본 실시 형태에서 프로토콜 콘트롤러와 IC 카드와의 사이에 구비된 디멀티플렉서 (데이터 전송 제어 장치)의 구성을 나타낸 블럭도.
도 30은 본 실시 형태에서 프로토콜 콘트롤러와 IC 카드와의 사이에 구비된 디멀티플렉서 (데이터 전송 제어 장치)의 구성을 나타낸 블럭도.
도 31은 본 실시 형태에서 프로토콜 콘트롤러와 IC 카드와의 사이에 구비된 디멀티플렉서 (데이터 전송 제어 장치)의 구성을 나타낸 블럭도.
도 32는 본 실시 형태의 프로토콜 콘트롤러에 접속된 IC 카드에의 전원 공급계의 구성을 나타낸 블럭도.
도 33은 본 실시 형태의 프로토콜 콘트롤러에서 디멀티플렉서에 선택 신호를 출력할 때에 이용되는 IC 카드 포트 할당 레지스터(CDSEL)의 구성을 나타내는 도면.
도 34는 본 실시 형태의 프로토콜 콘트롤러에서의 IC 카드 포트 할당 레지스터의 각 비트의 의미를 설명하기 위한 도면.
도 35는 본 실시 형태에서의 디멀티플렉서의 동작을 설명하기 위한 타임챠트.
도 36은 본 실시 형태에서의 디멀티플렉서의 동작을 설명하기 위한 타임 챠트.
<도면의 주요 부분에 대한 간단한 설명>
1 : 처리부
2 : 기억부
3 : 인터페이스 회로
4 : 칩
5, 5A, 5B : 제어 프로그램
6 : 매체 제어 회로(주변 제어 회로)
7 : 통신 제어 회로(주변 제어 회로)
8 : 표시 제어 회로(주변 제어 회로)
9 : 입력 제어 회로(주변 제어 회로)
10 : 프로토콜 제어용 집적 회로
11 : 프로그램 격납용 외부 기억부
11a : 프로그램
12 : 식별 수단
13, 130 : 제어 전문
131 : 전자 화폐 종별 필드
132 : 취인 종별 필드
133 : 디바이스 종별 필드
134 : 명령 필드
135 : 데이터 길이 필드
136 : 데이터 필드
14 : 외부 장치
14a : 모듈
15 : 처리 장치
15a : 어플리케이션 프로그램
20 : 프로토콜 제어용 집적 회로(프로토콜 콘트롤러)
21 : CPU(처리부)
22 : ROM(기억부)
23 : RAM
24 : 어드레스 버스
25 : 데이터 버스
26 : 시리얼 송수신 제어 회로(통신 제어 회로, 주변 제어 회로)
27 : 메모리 패리티 생성/체크 회로(주변 제어 회로)
29 : LCD 제어 회로(표시 제어 회로, 주변 제어 회로)
31 : 키보드 제어 회로(입력 제어 회로, 주변 제어 회로)
32 : 그린 버튼 제어 회로(입력 제어 회로, 주변 제어 회로)
33 : 펄스 생성 회로(표시 제어 회로, 주변 제어 회로)
34 : MS 시리얼 입력 제어 회로(주변 제어 회로)
35 : 카드 반송 제어 회로(주변 제어 회로)
36A, 36B : IC 카드 제어 회로(매체 제어 회로, 주변 제어 회로)
38 : 카드용 클럭 생성 회로(주변 제어 회로)
39 : 카드용 리세트 제어 회로(IC 카드 제어 회로, 매체 제어 회로)
40 : 카드용 C4/C8 제어 회로(IC 카드 제어 회로, 매체 제어 회로)
41 : 카드용 데이터 입출력 제어 회로(IC 카드 제어 회로, 매체 제어 회로)
42 : 카드용 전원 제어 회로
43 : 카드 선택 회로
50a∼50c : RS232C 드라이버
50d∼50g : 시리얼 드라이버/리시버
51 : 호스트 시스템(외부 장치)
52 : 서브 시스템(외부 장치)
53: 프린터(외부 장치)
54 : 외부 메모리(외부 기억부)
54a : ROM(외부 ROM, 프로그램 격납용 외부 기억부)
54b : RAM(외부 RAM, 외부 기억부)
54c : FLASH ROM(외부 기억부)
56 : LCD(표시 장치)
59 : 버스 제어 회로
60 : 키보드(KB, 입력 장치)
61, 61a, 61b : 그린 버튼(GB, 입력 장치)
62 : 부저(표시 장치)
63 : MS 리더(입력 장치)
64 : 카드 콘베이어
70 : 전자 화폐(IC 카드) 대응 유니트
71 : 네트워크
72 : 상위 처리부(CPU)
80 : ATM(Automatic Teller Machine)
81 : 제어 회로
82 : 스크린/터치 패널
83 : 프린터
84 : 카드 리더/라이터 (reader/writer)
86 : 엠보스부
87 : 자기 스트라이프부(MS)
88 : 프로토콜 콘트롤러 블럭
88a : PIN 패드
90 : POS 시스템
91 : 메인 보드
92 : 디스플레이
93 : 프린터
94 : MS 리더
95 : 키보드(KB)
96 : 드로어(인출)
97 : 리더/라이터 인터페이스 어댑터
113 : 풀업 저항
114 : 풀다운 저항
150 : 외부 카드 리더/라이터
160 : 휴대 POS 단말
161 : 메인 보드
162 : 디스플레이
163 : 터치 패널
164 : 키보드(KB)
165 : 부저(Bz)
166 : 프린터
166 : PC 카드 인터페이스(PCMCIA)
167 : 무선 통신부(SSRF)
168 : 스캐너
169 : 호스트
170 : 시리얼 드라이버/리시버
171 : 프로토콜 콘트롤러 블럭
330, 330-1, 330-2 : IC 카드(휴대용 매체)
331 : SIM
340 : 디멀티플렉서(데이터 전송 제어 장치, 카드 전환기)
341 : 게이트 콘트롤러
342-0∼342-5 : 선택기
343-0∼343-5 : 래치 회로
344-0∼344-5 : 3 상태 입출력 포트
345A, 345B : 선택기
346A, 346B : 3 상태 입출력 포트
347-0∼347-5 : 선택기
348-0∼348-5 : 래치 회로
349-0∼349-5 : 3 상태 입출력 포트
350 : 클럭 신호선
351A, 351B : 선택기
360 : 전압 선택기
361-0∼361-5 : 선택기
370 : 파워 레귤레이터(전원 조절기)
501 : 디바이스 제어 프로그램
502 : 프로토콜 제어 프로그램
503 : 어플리케이션 프로그램
504 : 경로 제어 프로그램
505 : 통신 제어 프로그램
506 : 테이블
510 : 모듈군
520 : 부트 프로그램(BOOT)
521 : OS(오퍼레이팅 시스템)
522 : 어플리케이션 프로그램
523-1 : 제1 전자 화폐용 프로토콜 제어 프로그램
523-2 : 제2 전자 화폐용 프로토콜 제어 프로그램
530 : 디바이스 제어 프로그램 군
531A : 프린터 핸들러
532A : HOST 수순 핸들러(디바이스 제어 프로그램, 통신 제어 프로그램)
531B/532B : RS232C 드라이버(디바이스 제어 프로그램, 통신 제어 프로그램)
533A : LCD 핸들러(디바이스 제어 프로그램)
533B : 533A : LCD 드라이버(디바이스 제어 프로그램)
534A : KB 핸들러(디바이스 제어 프로그램)
534B : KB 드라이버(디바이스 제어 프로그램)
535A : GB 핸들러(디바이스 제어 프로그램)
535B : GB 드라이버(디바이스 제어 프로그램)
536A : IC 핸들러(디바이스 제어 프로그램)
536B : IC 드라이버(디바이스 제어 프로그램)
537B : RS232C 드라이버(디바이스 제어 프로그램, 통신 제어 프로그램)
540 : 디바이스 루터(경로 제어 프로그램)
550 : 테이블
533A : LCD 핸들러(디바이스 제어 프로그램)
이하, 도면을 참조하여 본 발명의 실시 형태를 설명한다.
[1] 본 실시 형태의 프로토콜 제어용 집적 회로(프로토콜 콘트롤러)의 설명
도 11은 본 발명의 일 실시 형태로서의 프로토콜 제어용 집적 회로(프로토콜 콘트롤러)의 구성을 모식적으로 나타낸 도면이다.
이 도 11에서 나타낸 본 실시 형태의 프로토콜 제어용 집적 회로 (이하, 프로토콜 콘트롤러라고 함; 20)는 통화의 전자적 상징으로서 정의되는 전자 화폐를 취급하는 취인 장치(예를 들면 ATM, ECR, 전자 화폐 로드 단말, 전자 지갑, POS 단말, 핸디 POS, POS 서버 등)에 조립되어도, 공통으로 이용되도록 구성된 것이다. 그 상세한 구성에 대해서, 도 11을 참조하면서 설명한다.
프로토콜 콘트롤러(20)는 CPU(21), ROM(22), RAM(23), 어드레스 버스(24), 데이터 버스(25) 및 인터페이스 회로(3)와 함께, 후술하는 주변 제어 회로로서의 회로(26, 27, 29, 31∼35, 36A, 36B, 38, 42, 43)을 하나의 칩 상에 집적하여 구성하여도 좋다.
ROM(기억부; 22)은 복수의 다른 방식의 전자 화폐용 프로토콜에 대응하여 작성된 제어 프로그램(5A 또는 5B; 도 13 또는 도 15 참조)를 격납한 것이다. 제어 프로그램(5A, 5B)의 상세한 구성에 대해서는, 각각 도 13, 도 15를 참조하면서 후술한다.
또, 본 실시형태에서는, 2종류의 방식의 전자 화폐를 제1 전자 화폐 및 제2 전자 화폐로서 취급하기 위해, 제어 프로그램(5A, 5B)이 각 전자 화폐의 프로토콜에 대응하여 작성되어 있다.
또, ROM(22)과 프로토콜 프로그램(20)의 외부 접속 단자와의 사이는 논리적으로 차단되어 있고, 제어 프로그램(5A, 5B)은 프로토콜 콘트롤러(20)의 제조 시점에서 기입되어 있다. 즉, 본 실시 형태의 프로토콜 콘트롤러(20)에서의 ROM(22)은 마스크 ROM으로 구성되어 있다.
CPU(처리부; 21)는 예를 들면 16비트의 것으로, ROM(22)에 격납된 제어 프로그램(5A) 또는 (5B)를 실행함으로써, 프로토콜 콘트롤러(20)에 탑재된 각종 주변 제어 회로의 동작을 제어하여 제1 전자 화폐및 제2 전자 화폐의 취급을 제어하는 것이다.
RAM(23)은 CPU(21)의 워킹 에어리어 등으로 이용되는 것이다.
인터페이스 회로(3)는 외부 처리부나 외부 메모리(외부 기억부; 54) 등의 외부 회로에 접속되고, 이 외부 회로와 CPU(21)와의 사이의 인터페이스 기능을 달성하는 것이다. 도 11에서는, 외부 메모리(54)를 외부 회로로서 프로토콜 콘트롤러(20)에 접속한 경우가 도시되어 있다. 여기에서, 외부 메모리(54)로서는, 예를 들면 외부 ROM(54a), 외부 RAM(54b), FROM(FLASH ROM; 54c) 등이 접속된다(도 23 참조). 또, 외부 ROM(54a)는 예를 들면 OS 등의 프로그램을 격납하기 위한 프로그램 격납용 외부 기억부로서 이용될 수 있다.
어드레스 버스(24) 및 데이터 버스(25)는 CPU(21), ROM(22), RAM(23), 인터페이스 회로(3), 후술하는 회로(26, 27, 29, 31∼35, 36A, 36B, 38, 42, 43)의 상호 간을 접속하여, 어드레스/데이터의 수취를 행하는 것이다.
본 실시 형태의 프로토콜 콘트롤러(20)에 갖추어진 주변 제어 회로는, 어느 것이나 전자 화폐의 처리에 관련되는 제어 기능을 달성하는 것으로, 구체적으로는 이하와 같은 회로(26, 27, 29, 31∼35, 36A, 36B, 38, 42, 43)가 주변 제어 회로로서 구비되어 있다.
시리얼 송수신 제어 회로(통신 제어 회로; 26)는 CPU(21) 및 제어 프로그램(5A, 5B)에 의해 제어되며, 외부 장치(예를 들면 호스트 시스템(51), 서브시스템(52), 프린터(53) 등)와의 통신을 제어하는 것이다. 본 실시 형태의 프로토콜 콘트롤러(20)에는 세 개의 통신용 포트(도 17의 P0, P1, P2 참조)가 구비되고, 각 포트에 대응하여 세 개의 시리얼 송수신 제어 회로(시리얼 Tr/Rv; 26)가 구비되어 있다.
또, 시리얼 송수신 제어 회로(26)와 세 개의 외부 장치(호스트 시스템(51), 서브 시스템(52), 프린터(53))는, 각각 RS232C 드라이버(50a∼50c)를 거쳐, 송수신을 행한다. 또, 호스트 시스템(51)은 예를 들면 ATM이나 POS 단말 등이고, 서브 시스템(52)은 예를 들면 다른 IC 카드 리더/라이터 등이고, 프린터(53)는 예를 들면 레시트를 인쇄하는 것이다. 또한, 시리얼 송수신 제어 회로(26)를 제어하기 위한 프로그램(디바이스 제어 프로그램, 통신 제어 프로그램)으로서는, 제어 프로그램(5A 또는 5B)에서의, 프린터 헤드(531A), HOST 수순 핸들러(532A), RS232C 드라이버(531B/532B, 537B)를 이용할 수 있다 (도 13 또는 도 15 참조).
메모리 패리티 생성/체크 회로 (Memory Parity Generator Checker; 27)는 CPU(21) 및 제어 프로그램(5A, 5B)에 의해 제어되고, 프로토콜 콘트롤러(20)에 접속된 외부 메모리(54; RAM(43b))의 패리티 체크를 행하기 위한 것이다.
LCD 제어 회로 (표시 제어 회로; 29)는 CPU(21) 및 제어 프로그램(5A, 5B)에 의해 제어되고, 프로토콜 콘트롤러(20)에 접속된 표시 장치로서의 콘트롤러 내장형 LCD (Liquid Crystal Display; 56)를 제어하는 것이다. 이 LCD 제어 회로(29)를 제어하기 위한 프로그램 (디바이스 제어 프로그램)으로서는, 제어 프로그램(5A 또는 5B)에서의, LCD 핸들러(533A) 및 LCD 드라이버(533B)가 이용된다 (도 13 또는 도 15 참조).
키보드 제어 회로(입력 제어 회로; 31)는, CPU(21) 및 제어 프로그램(5A, 5B)에 의해 제어되고, 버스 제어 회로(59)를 거쳐 입력 장치로서의 키보드(KB; 60)로부터의 신호의 입력 처리를 행하는 것이다. 이 키보드 제어 회로(31)를 제어하기 위한 프로그램 (디바이스 제어 프로그램)으로서는, 제어 프로그램(5A 또는 5B)에서의, KB 핸들러(534A) 및 KB 드라이버(534B)를 이용할 수 있다 (도 13 또는 도 15 참조).
그린 버튼 제어 회로(입력 제어 회로; 32)는, CPU(21) 및 제어 프로그램(5A, 5B)에 의해 제어되고, 프로토콜 콘트롤러(20)에 접속되는 입력 장치로서의 그린 버튼(GB; 61)으로부터의 입력 처리를 행하는 동시에, 이 그린 버튼(61)의 점등/소등 등의 제어도 행하는 것이다. 이 그린 버튼 제어 회로(32)를 제어하기 위한 프로그램 (디바이스 제어 프로그램)으로서는, 제어 프로그램(5A 또는 5B)에서의, GB 핸들러(535A) 및 GB 드라이버(535B)가 이용된다 (도 13 또는 도 15 참조). 또, 그린 버튼(61)은 실제로서는 두 개의 버튼(61a, 61b)으로 이루어지고, 이용자가 전자 화폐 등을 이용한 지불을 행할 의지가 있는지의 여부를 확인하기 위한 것으로, 이용자가 조작을 충족할 때에 녹색으로 점등 제어되도록 되어 있다.
펄스 생성 회로 (표시 제어 회로; 33)는 CPU(21) 및 제어 프로그램(5A, 5B)에 의해 제어되고, 프로토콜 콘트롤러(20)에 접속되는 표시 장치로서의 서버(62)를 명동(鳴動)시키기 위한 펄스 신호를 생성하여, 이 서버(62)의 명동 동작을 제어하는 것이다.
MS 시리얼 입력 제어 회로(34)는 CPU(21) 및 제어 프로그램(5A, 5B)에 의해 제어되고, 프로토콜 콘트롤러(20)에 접속되는 입력 장치로서의 자기 스트라이프 리더(MS 리더; 63)로부터의 신호의 입력 처리를 행하는 것으로, 본 실시 형태의 프로토콜 콘트롤러(20)에는 4 트랙 분의 MS 판독 데이터에 동시에 대응시킬 수 있도록 네 개의 MS 시리얼 입력 제어 회로(34)가 구비되어 있다.
카드 반송 제어 회로(35)는 CPU(21) 및 제어 프로그램(5A, 5B)에 의해 제어되고, 프로토콜 콘트롤러(20)에 접속되는 카드 콘베이어(64)의 동작을 제어하는 것이다. 또, 카드 콘베이어(64)는 예를 들면 IC 카드 리더/라이터에서 IC 카드(330)를 반송 구동하기 위한 것이다.
IC 카드 제어 회로 (매체 제어 회로; 36A, 36B)는 CPU(21) 및 제어 프로그램(5A, 5B)에 의해 제어되고, 전자 화폐를 격납한 IC 카드 (휴대용 매체; 330)에 대한 제어를 행하는 것이다. 본 실시 형태의 프로토콜 콘트롤러(20)에서는, 직접적으로는 2개의 IC 카드(330)에 대응할 수 있도록 두 개의 포트 A 및 B가 구비되어 있고, 이들의 포트 A 및 B에 대응하여 두 개의 IC 카드 제어 회로(36A 및 36B)가 구비되어 있다. 이들의 IC 카드 제어 회로(36A 및 36B)를 제어하기 위한 프로그램 (디바이스 제어 프로그램)으로서는, 제어 프로그램(5A 또는 5B)에서의, IC 카드 핸들러(536A) 및 IC 카드 드라이버(536B)가 이용된다 (도 13 또는 도 15 참조). 또, IC 카드로서는, 예를 들면 ISO7816에 준거하는 것을 이용한다.
이들 IC 카드 제어 회로(36A 및 36B) 각각은 카드용 리세트 제어 회로(39), 카드용 C4/C8 제어 회로(40) 및 카드용 데이터 입출력 제어 회로(41)로 구성되어 있다.
프로토콜 콘트롤러(20)에서의 두 개의 포트 A 및 B에는, 데이터 전송용 신호선으로서 데이터선, C4 신호선, C8 신호선, 리세트 신호선 (각 하나)이 구비되어 있다. 카드용 리세트 제어 회로(39)는 상기 리세트 신호선을 거쳐 IC 카드(330)에 출력되는 리세트 신호를 제어하는 것이고, 카드용 C4/C8 제어 회로(40)는 상기 C4 신호선이나 C8 신호선을 거쳐 IC 카드(330)에의 C4/C8 신호의 출력 제어 및 IC 카드(330)로부터의 C4/C8 신호의 입력 제어를 행하는 것이고, 카드용 데이터 입출력 제어 회로(41)는 상기 데이터선을 거쳐, IC 카드(330)에의 데이터의 시리얼 출력 제어, 및 IC 카드(330)로부터의 데이터의 시리얼 입력 제어를 행하는 것이다.
또, 본 실시 형태에서는, 프로토콜 콘트롤러(20)와 IC 카드(330)와의 사이에 디멀피플렉서(340)을 개장함으로써, 프로토콜 콘트롤러(20)는 두 개의 포트 A 및 B, 즉 두 개의 IC 카드 제어 회로(36A 및 36B)를 이용하여 최대 6개의 IC 카드(330)에 대한 제어를 행할 수 있도록 구성되어 있다. 또, 도 11에서, 6개의 IC 카드(330)는 각각 ICC0∼ICC5로 표시되고 있고, ICC0∼ICC5는 각각 포트 번호 0∼5를 부여한 실제의 카드 포트 (이하, 포트0∼5로 표기함)에 장착된다.
디멀티플렉서(340)는 6개의 IC 카드(330)과 프로토콜 콘트롤러(20)의 IC 카드 제어 회로(36A, 36B) (포트 A, B)와의 사이를 적당하게 접속하고, 이들 사이에서의 데이터 전송을 제어하는 데이터 전송 제어 장치(카드 전환기)로서 기능하고, 프로토콜 콘트롤러(20)의 억세스 대상이 되는 2개의 IC 카드(330)와, 포트 A 및 B를 선택적으로 전환하여 접속하는 것이다.
또, 디멀티플렉서(340)에는 프로토콜 콘트롤러(20)의 억세스 대상이 되지 않는 IC 카드(330; 비억세스 대상)에 대한 신호(데이터, C4/C8 신호, 리세트 신호)의 상태를 래치하기 위한 래치 회로(343-0∼343-5, 348-0∼348-5) (도 29, 도 30 참조)가 구비되어 있다. 또, 멀티플렉서(340)의 상세하면서 구체적인 구성에 대해서는, 도 29∼도 31을 참조하면서 후술한다.
그리고, 프로토콜 콘트롤러(20)에는, 디멀티플렉서(340)에 대해, 각 포트 A, B에 접속하기 위해 IC 카드(330)를 억세스 대상으로서 선택, 지정하는 억세스 신호를 공급하고, 이 디멀티플렉서(340)를 교체 동작시키기 위한 카드 선택 회로(43)가 구비되어 있다. 이 카드 선택 회로(43)로부터의 선택 신호에 의해 선택되지 않은 IC 카드(330)는 비억세스 대상으로서 취급되고, 비억세스 대상 IC 카드(330)에 대한 신호 상태는, 디멀티플렉서(340)의 래치 회로(343-0∼343-5, 348-0∼348-5)에서, 비억세스 상태로의 천이 직전에서 래치되도록 되어 있다.
또, 카드 선택 회로(43)는 IC 카드 포트 할당 레지스터(도 33 참조)를 이용하여 선택 신호를 설정하고, 그 선택 신호를 디멀티플렉서(340)에 출력하도록 구성되어 있다. 선택 신호의 상세에 대해서는, 도 33 및 도 34를 참조하면서 후술한다. 또, 선택 신호에 의한 디멀티플렉서(340)의 구체적인 전환 동작에 대해서는, 도 35 및 도 36을 참조하면서 후술한다.
카드용 클럭 생성 회로(38)는 본 실시 형태의 프로토콜 콘트롤러(20)에 대해 접속하는 최대 6개의 IC 카드(330) 각각에 대해, 클럭 신호선(350)을 통해 공급하기 위해 클럭 신호 (제어 클럭)을 생성하는 것으로, 장착될 수 있는 IC 카드(330)의 최대 개수와 동일한 수 (즉 6) 만큼 구비되어 있다.
이와 같이, 본 실시 형태에서는, 각 IC 카드(330)에서 이용될 수 있는 클럭 신호는 프로토콜 콘트롤러(20)로부터 IC 카드(330)와 동수(6개)의 클럭 신호선(350)을 통해, 각 IC 카드(330)에 공급되는 한편, 6개의 IC 카드(330)가 디멀티플렉서(340)를 거쳐 프로토콜 콘트롤러(20)의 두 개의 포트 A, B에 설치된 데이터 전송용 신호선(데이터선, C4 신호선, C8 신호선, 리세트 신호선 등)을 공용하도록 되어 있다.
또한, 본 실시 형태에서, 각 IC 카드(330)에의 전원 공급은, 전압 선택기(360) 및 파워 레귤레이터(전원 조절기; 370)를 이용하여 행해지도록 되어 있다. 여기에서, 파워 레귤레이터(370)는 3V와 5V의 2 종류의 전압을 생성 출력하는 것으로, 전압 선택기(360)는 디멀티플렉서(340)로부터의 지시에 따라 3V 또는 5V의 전압을 선택하여 각 IC 카드(330)에 인가 공급하는 것이다. 이 전압 선택기(360)를 포함하는 전원 공급계의 상세 구성에 대해서는 도 32를 참조하면서 후술한다.
그리고, 프로토콜 콘트롤러(20)에는, IC 카드(330)에 대해 공급하기 위해 전압 3V/5V를 지정하기 위한 신호를 각각 생성하여 디멀티플렉서(340)에 출력하는 두 개의 카드용 전원 제어 회로(42)가 구비되어 있다. 각 카드용 전원 제어 회로(42)로부터의 신호는 디멀티플렉서(340)를 경유하여 전압 선택기(360)에 보내고, 이 전압 선택기(360)가 그 신호에 따른 전압 전환 동작을 행하도록 되어 있다. 또, 전압 선택기(360)는 어떤 요인에 의해 각 IC 카드(330)에 대한 전원 공급에 이상이 생긴 경우에는 그 요인(파워 이상)을 카드용 전원 제어 회로(42)에 통지하도록 되어 있다.
또, 도 11에서는 도시하지 않았지만, 프로토콜 콘트롤러(20)의 포트 A, B와 IC 카드(330)용 포트 0∼5와의 사이에는 IC 카드 장착 통지선이 구비되어 있다. 도 31에서 후술하는 바와 같이, 포트 0∼5 각각에 IC 카드(ICC0∼ICC5; 330)가 장착되어 있는지의 여부의 정보가 그 IC 카드 장착 통지선 및 디멀티플렉서(340)를 거쳐 IC 카드 제어 회로(36A, 36B)에 통지하도록 되어 있다.
상술한 주변 제어 회로(26, 27, 29, 31∼35, 36A, 36B, 38, 42, 43)는 부호 51∼54, 56, 59∼64)를 붙혀 설명한 각종 기기 등에 항상 접속되어 이들 기기를 제어할 필요는 없고, 필요에 따라서 이들의 기기를 제어할 수 있도록 프로토콜 콘트롤러(20)에 미리 조립되어 있다. 이에 의해 본 실시 형태의 프로토콜 콘트롤러(20)의 범용성은 극히 높아지게 된다.
[1-1] 외부 ROM의 접속 식별 수단의 설명
다음에, 본 실시 형태의 프로토콜 콘트롤러(20)에 프로그램 격납용 외부 기억부로서 기능하는 외부 ROM(54a)이 접속되어 있는지의 여부를 식별하는 방법에 대해서, 도 12를 참조하면서 설명한다. 또, 도 12는 본 실시 형태의 프로토콜 콘트롤러(20)에서의 어드레스 공간의 구성을 나타내고 있다.
본 실시 형태의 프로토콜 콘트롤러(20)에서의 CPU(21)는 프로토콜 콘트롤러(20)에 인퍼테이스 회로(3)를 거쳐 외부 ROM(54a)이 접속되어 있는지의 여부를 식별하는 식별 수단으로서의 기능을 달성하고 있다. 이 식별 기능에 의해 외부 ROM(54a)이 접속되어 있다고 판별한 경우, CPU(21)는 그 외부 ROM(54a)에 격납되어 있는 프로그램 (예를 들면 OS; 1a)를 판독하여 기동한다.
본 실시 형태에서의 어드레스 공간은 예를 들면 도 12에서 나타낸 바와 같이, 내장 ROM(22), 내장 RAM(23), 외부 ROM(54a), 외부 RAM(54b), 외부 FROM(54c)에 대해 할당되어 있다. 본 실시 형태의 프로토콜 콘트롤러(20)에서는 외부 ROM(54a)에 대해 예를 들면 어드레스 C00000∼EDFFFF가 할당되어 있다.
이 때, 외부 ROM(54a)의 선두 2 바이트 (도 12의 사선 부분: 어드레스 C00000∼C00001)에 0x0000를 미리 격납하여 둠과 동시에, 프로토콜 콘트롤러(20) 내에, 외부 ROM(54a)에 접속되는 데이터 버스(25)의 전 데이터 신호선을 미리 풀업 저항을 거쳐 고전위에 접속하여 둔다.
이와 같은 구성에 의해, CPU(21)는 논리 어드레스 C00000∼C00001의 데이터를 판독하는 것으로, 외부 ROM(54a)의 유무를 식별하는 것이 가능하게 된다. 즉, 외부 ROM(54a)이 접속되어 있는 경우, CPU(21)는 데이터 버스(25)를 통해 데이터 0x0000을 외부 ROM(54a)로부터 판독하게 된다. 이에 대해, 외부 ROM(54a)이 접속되어 있지 않는 경우, CPU(21)는 데이터 버스(25)의 전 데이터 신호선이 풀업되어 있기 때문에, 데이터 0xfffff를 판독하는 것과 같이 보인다.
따라서, 본 실시 형태의 CPU(21)는 논리 어드레스 C00000∼C00001로부터의 판독 결과로서 얻은 값이 0x0000인지 0xfffff인지를 판별함으로써, 외부 ROM(54a)의 접속/비접속을 식별할 수 있다.
[1-2] 제어 프로그램의 구조의 설명
다음에, 본 실시 형태의 프로토콜 콘트롤러(20)에서의 제어 프로그램 구조에 대해서, 도 13을 참조하면서 설명한다.
이 도 13에서 나타낸 바와 같이, ROM(22)에 격납된 제어 프로그램(5A)은 부트 프로그램(BOOT; 52), OS(오퍼레이팅 시스템; 521), 어플리케이션 프로그램(522), 제1 전자 화폐용 프로토콜 제어용 프로그램(523-1), 제2 전자 화폐용 프로토콜 제어 프로그램(523-2) 및 디바이스 제어 프로그램군(530)을 갖고 구성되어 있다.
BOOT(520)는 제어 프로그램(5A)을 기동하기 위해 최초로 기동되는 것으로, 이 BOOT(520)에 의해 OS(521)가 기동되게 되어 있다.
디바이스 제어 프로그램군(530)은 인터페이스 회로(3)에 접속된 외부 회로나 도 11에서 전술한 주변 제어 회로를 디바이스로서 제어하는 복수의 디바이스 제어 프로그램이고, 통상, 한 쌍의 핸들러 및 드라이버에 의해 하나의 디바이스 제어 프로그램이 구성된다. 본 실시 형태에서는, 디바이스 제어 프로그램으로서 전술한 핸들러(531A∼536A) 및 드라이버(531B∼537B)가 구비되어 있다.
제1 전자 화폐용 프로토콜 제어 프로그램(523-1) 및 제2 전자 화폐용 프로토콜 제어 프로그램(523-2)은 2종류 방식의 전자 화폐 각각에 대응하여 디바이스 제어 프로그램군(530)에 속하는 프로그램을 제어하는 것이다.
어플리케이션 프로그램(522)은 디바이스 제어 프로그램군(530)에 속하는 프로그램이나, 2종류의 프로토콜 제어 프로그램(523-1 및 523-2)을 제어하는 것이다.
[1-3] 제어 전문의 설명
다음에, 본 실시 형태의 프로토콜 콘트롤러(20)에서 이용될 수 있는 제어 전문(130)의 구성에 대해서 도 14를 참조하여 설명한다.
본 실시 형태의 제어 프로그램(5A)에서의 어플리케이션 프로그램(522)은 예를 들면 호스트 시스템(51) 등의 외부 장치로부터 시리얼 송수신 제어 회로(26)를 거쳐 도 14에서 나타낸 제어 전문(130)을 수신함으로써, 그 제어 전문(130)의 내용에 따라서, 디바이스 제어 프로그램군(530)에 속하는 프로그램이나, 2종류의 프로토콜 제어 프로그램(523-1 및 523-2)을 제어한다.
여기에서, 도 14에서 나타낸 바와 같이, 제어 전문(130)은 N 바이트의 데이터 필드(136)을 갖고, 이 데이터 필드(136)에 데이터를 격납하여 전송하기 위한 것이다. 이 전송 데이터에는, 1바이트의 데이터 헤더 DH1 및 1 바이트의 데이터 헤더 DH2와 함께, 전송되는 데이터 필드(136)에 격납된 데이터 길이 L을 지시하는 데이터 길이 필드(135)가 부여된다.
그리고, 본 실시 형태의 제어 전문(130)에서는, 데이터 헤더 DH1가 전자 화폐 종별 필드(131) 또는 디바이스 종별 필드(133)으로서 이용될 수 있음과 동시에, 데이터 헤더 DH2가 취인 종별 필드(132) 또는 명령 필드(134)로서 이용될 수 있다.
이 때, 데이터 헤더 DH1을 전자 화폐 종별 필드(131)로서 이용할 때의 지정 데이터와 데이터 헤더 DH1을 디바이스 종별 필드(133)로서 이용할 때의 지정 데이터와는, 서로 배타 값이 되어 있고, 데이터 헤더 DH1가 전자 화폐 종별 필드(131)로서 이용되는 경우, 데이터 헤더 DH2는 취인 종별 필드(132)로서 기능하는 한편, 데이터 헤더 DH1가 디바이스 종별 필드(133)로서 이용되는 경우, 데이터 헤더 DH2는 명령 필드(134)로서 기능한다.
보다 구체적으로 설명하면, 도 14에서 나타낸 바와 같이, 데이터 헤더 DH1에는 예를 들면 1바이트의 데이터 "0x01", "0x02", "0x81", "0x82", "0x83", "0x84", "0x85"가 기입된다.
이들 중, "0x01" 및 "0x02"는 각각 전자 화폐 종별을 지정하는 것으로, "0x01"은 제1 전자 화폐를 지정하고, "0x02"는 제2 전자 화폐를 지정한다. 따라서, 데이터 헤더 DH1에 "0x01" 또는 "0x02"가 기입되는 경우, 데이터 헤더 DH1은 전자 화폐 종별 필드(131)로서 기능하게 된다.
이에 대해, "0x81"∼"0x85"는 각각 디바이스의 종별로서, IC 카드, GB(그린 버튼), KB(키보드), LCD, RS232C를 지정한다. 따라서, 데이터 헤더 DH1에 "0x81"∼"0x85" 중 어느 것인가를 기입하는 경우, 데이터 헤더 DH2는 디바이스 종별 필드(133)로서 기능하게 된다.
데이터 헤더 DH1에 "0x01" 또는 "0x02"가 기입되어 있는 경우, 데이터 헤더 DH2에는 지정된 전자 화폐에 의해 행하기 위해 취인 종별을 지정하는 1 바이트의 데이터로서, 예를 들면 "0x01"∼"0x04"가 기입된다. 이들 데이터 "0x01"∼"0x04"에 의해 지불, 반환, 인출, 예입이라고 하는 취인 종별이 각각 지정된다.
또, 데이터 헤더 DH1에 "0x81"∼"0x85" 중 어으 것인가에 기입되어 있는 경우, 데이터 헤더 DH2에는 지정된 디바이스에 대한 명령을 지정하는 1바이트의 데이터로서 예를 들면 "0x01"∼"0x07"이 기입된다. 이들 데이터 "0x01"∼"0x07"에 의해, 상태 리드, 전원 제어, 흡입, 배출, 데이터 전송, 카드세트 대기, 카드 발취 대기라고 하는 명령이 각각 지정된다.
그리고, 어플리케이션 프로그램(522)은 수취된 제어 전문(130)의 데이터 헤더 DH1 및 데이터 헤더 DH2가 각각 전자 화폐 종별 필드(131) 및 취인 종별 필드(132)로서 이용되고 있는 경우에는, 전자 화폐 종별 필드(131)에서 지정된 전자 화폐에 대응하는 프로토콜 제어 프로그램(523-1 또는 523-2)에 의해 취인 종별 필드(132)에서 지정된 취인을 행하게 한다.
또, 어플리케이션 프로그램(522)은 수취된 제어 전문(130)의 데이터 헤더 DH1 및 데이터 헤더 DH2가 각각 디바이스 종별 필드 (133) 및 명령 필드(134)로서 이용되고 있는 경우에는, 디바이스 종별 필드(133)에서 지정된 디바이스를 제어하기 위한 디바이스 제어 프로그램(디바이스 제어 프로그램군(530) 내의 한 쌍의 핸들러/드라이버)에 명령 필드(134)에 기술된 명령을 통지하여 명령을 실행시키고, 그 명령에 대한 디바이스 제어 프로그램으로부터의 응답을 응답 전문으로서 명령의 발행원 (즉, 제어 전문(130)의 발행원; 예를 들면 호스트 시스템(510))에 시리얼 송수신 제어 회로(26)을 거쳐 송신한다.
[1-4] 제어 프로그램 외의 구조의 설명
다음에, 본 실시 형태의 프로토콜 콘트롤러(20)에서의 제어 프로그램 구조의 다른 예에 대해서, 도 15를 참조하여 설명한다.
이 도 15에서 나타낸 바와 같이, ROM(22)에 격납되는 제어 프로그램(5B)은 도 13에서 전술한 제어 프로그램(5A)에, 또한 디바이스 루터 (경로 제어 프로그램; 540) 및 테이블(550)을 추가한 것이다. 도 15 중, 기술한 부호와 동일한 부호는 동일 또는 거의 동일한 것을 나타내고 있기 때문에, 그 설명은 생략한다.
또, 이하에서는, 디바이스 제어 프로그램군(530)에 속하는 프로그램이나, 어플리케이션 프로그램(522), 프로토콜 제어 프로그램(523-1, 523-2)을 모듈로서 칭하는 경우가 있다.
디바이스 루터 (경로 제어 프로그램; 540)은 상기 모듈의 상호간을 접속할 수 있는 인터페이스 기능을 제공하는 것이다. 여기에서 설명하는 제어 프로그램(5B)을 이용하는 경우, 상기 모듈 각각에는 고유의 모듈 식별자가 미리 부여되어 있고, 디바이스 루터(540)는 접속 요구원 모듈의 모듈 식별자와 접속 상대처 모듈의 모듈 식별자를 파라미터로서 이용하여 모듈 상호간을 접속하며, 이들 모듈 상호간에서 전술한 바와 같은 제어 전문(130)의 수취를 실행시킨다.
이 때, 접속 상대처 모듈이 프로토콜 콘트롤러(20)의 통신용 포트 P0∼P2를 거쳐 접속된 외부 장치(호스트 시스템(51) 등)에 속하고 있는 경우, 디바이스 루터(540)는 통신 제어 프로그램으로서의 HOST 수순 핸들러(532A)나 RS232C 드라이버(531B/532B, 537B)에 시리얼 송수신 제어 회로(26)를 제어시켜, 프로토콜 콘트롤러(20)에서의 접속 요구원 모듈과 외부 장치에서의 접속 상대처 모듈을 접속한다.
여기에서, 프로토콜 콘트롤러(20)에 접속되어 통신 대상이 되는 외부 장치는, 도 17에서 나타낸 바와 같이, 본 실시 형태의 프로토콜 콘트롤러(20)와 동일한 기능을 갖는 처리 장치(예를 들면 퍼스널 컴퓨터)이어도 좋고, 취인 장치 내에 조립된, 본 실시 형태의 프로토콜 콘트롤러(20)와 동일한 구성(기능)을 갖는 다른 프로토콜 콘트롤러(20)이어도 좋다.
또, 도 17에서 나타낸 바와 같이, 프로토콜 콘트롤러(20)의 세 개의 통신용 포트 P0∼P2를 이용하여, 복수의 프로토콜 콘트롤러(20)를, POS/ECR/ATM 등의 호스트 시스템(51)으로부터 캐스캐이드 상으로 접속한 경우, 이들의 프로토콜 콘트롤러(20)나 호스트 시스템(51) 상호간에서도, 디바이스 루터(540)의 인터페이스 기능에 의해 통신을 행하는 것이 가능하게 된다.
프로토콜 콘트롤러(20)가 모듈을 갖는 외부 장치 (처리 장치나 다른 프로토콜 콘트롤러(20))와 통신 가능하게 접속되어 있는 경우, 외부 장치에 속하여 통신 대상이 될 수 있는 모듈에도, 고유의 모듈 식별자가 미리 부여됨과 동시에, 프로토콜 콘트롤러(20)나 외부 장치에도 디바이스 루터(540)가 구비되어 각각 고유의 경로 식별자 (접속 상대처 모듈을 식별할 수 있는 것)가 미리 부여되어 있고, 디바이스 루터(540)는 접속 요구원 모듈의 모듈 식별자와, 접속 상대처 모듈의 모듈 식별자와, 접속 상대처 모듈이 속하는 장치의 경로 식별자를 파라미터로서 이용하여 모듈 상호간을 접속한다.
상술한 바와 같이 모듈 식별자 및 경로 식별자를 이용하여 모듈간 접속을 행하기 위해서, 본 실시 형태의 제어 프로그램(5B)에는, 모듈 식별자와 그 모듈 식별자를 부여한 모듈이 속하는 장치를 표시하는 경로 식별자와의 대응 관계를 유지하는 테이블(550)이 구비되어 있다. 이 테이블(550)의 내용은 프로토콜 콘트롤러(20)를 조립하는 하드웨어(시스템)의 구성에 의해 결정되는 것으로, 그 시스템에서 상호 통신 가능하게 접속되어 디바이스 루터(540)를 조립하고 있는 모든 장치 (프로토콜 콘트롤러(20)나 처리 장치)에는, 동일한 내용을 유지하는 테이블(550)이 구비되어 있다.
이 테이블(550)의 구체적인 내용을 도 16의 (a) 및 (b)에 도시한다.
도 17에서 나타낸 바와 같이 복수의 프로토콜 콘트롤러가 캐스캐이드 상으로 접속되어 있는 경우, 도 16의 (a)에서 나타낸 바와 같이, 각 프로토콜 콘트롤러의 경로 식별자와, 그 프로토콜 콘트롤러가 접속되어 있는 상위 프로토콜 콘트롤러의 경로 식별자 및 통신용 포트 번호와의 대응 관계 (프로토콜 콘트롤러의 구성의 정의)가 테이블(550)에 유지된다.
도 16의 (a)에 나타낸 테이블(550)의 내용으로부터, 경로 식별자 #90의 프로토콜 콘트롤러가 루트(ROOT)이고, 경로 식별자 #01의 프로토콜 콘트롤러는 경로 식별자 #90의 프로토콜 콘트롤러에서의 포트 #1에 접속되고, 경로 식별자 #02의 프로토콜 콘트롤러는 경로 식별자 #01의 프로토콜 콘트롤러에서의 포트 #1에 접속되고, 경로 식별자 #03의 프로토콜 콘트롤러는 경로 식별자 #01의 프로토콜 콘트롤러에서의 포트 #2에 접속되고, 경로 식별자 #04의 프로토콜 콘트롤러는 경로 식별자 #02의 프로토콜 콘트롤러에서의 포트 #1에 접속되고, 경로 식별자 #05의 프로토콜 콘트롤러는 경로 식별자 #02의 프로토콜 콘트롤러에서의 포트 #2에 접속되어 있음을 알 수 있다.
또, 도 16의 (b)에 나타낸 바와 같이, 복수의 프로토콜 콘트롤러가 갖는 전체 모듈에 부여된 모듈 식별자와, 그 모듈이 속하는 프로토콜 콘트롤러의 경로 식별자와 대응 관계 (모듈 식별자(디바이스 번호)의 정의)가 그 모듈명 (또는 그 모듈에 의해 제어되는 디바이스 이름)과 함께, 테이블(550)에 유지된다.
도 16의 (b)에 나타낸 테이블(550)의 내용으로부터, 모듈 식별자 #01의 모듈은 경로 식별자 #01의 프로토콜 콘트롤러에 속하고, 모듈 식별자 #02의 모듈 (디바이스 이름 ICCRW01)은 경로 식별자 #02의 프로토콜 콘트롤러에 속하고, 모듈 식별자 #02의 모듈 (디바이스 이른 ICCRW02)은 경로 식별자 #02의 프로토콜 콘트롤러에 속하고, 모듈 식별자 #20의 모듈 (디바이스 이름 LCD)은 경로 식별자 #01의 프로토콜 콘트롤러에 속하고, 모듈 식별자 #21의 모듈 (디바이스 이름 KEY)은 경로 식별자 #01의 프로토콜 콘트롤러에 속하고 있음을 알 수 있다.
이와 같은 테이블(550)에 유지되는 내용 (상기 대응 관계)은 시리얼 송수신 제어 회로(26)에서 수신된 전문에 기초하여 CPU(21)에 의해 설정/변경할 수 있도록 되어 있다. 또, 테이블(550)을 제어 프로그램(5B) 내가 아니라, 인터페이스 회로(3)을 거쳐 접속된 외부 메모리(54)에 격납하여 둘 수도 있다.
본 실시 형태의 디바이스 루터(540)는 모듈 상호간을 접속하는 경우, 접속 상대처 모듈의 모듈 식별자에 의해 테이블(550)의 내용(여기에서는 도 16의 (b)에서 나타낸 내용)을 검색하고, 접속 상대처 모듈의 모듈 식별자에 대응하는 경로 식별자를 얻는다.
검색으로 얻은 경로 식별자가 자신에게 부여된 경로 식별자와 일치하는 경우, 접속 요구원 모듈과 접속 상대처 모듈은 동일한 프로토콜 콘트롤러(20)에 속하고 있기 때문에, 디바이스 루터(540)는 프로토콜 콘트롤러(20) 내에서 이들의 모듈 상호간을 접속한다. 한편, 검색으로 얻은 경로 식별자가 자신에게 부여된 경로 식별자와 일치하지 않는 경우, 디바이스 루터(540)는 접속 상대처 모듈이 다른 프로토콜 콘트롤러에 속하는 것이라고 판단하여, 그 경로 식별자에 의해 테이블(550)의 내용 (여기에서는 도 16의 (a)에서 나타낸 내용)을 검색하여 다른 프로토콜 콘트롤러의 접속 관계를 파악하기 때문에, HOST 수순 핸들러(532A)나 RS232C 드라이버(531B/532B, 537B)에 시리얼 송수신 제어 회로(26)를 제어시켜, 프로토콜 콘트롤러(20)에서의 접속 요구원 모듈과 다른 프로토콜 콘트롤러에서의 접속 상대처 모듈을 접속한다.
또, 본 실시 형태의 프로토콜 콘트롤러(20)에, 하기와 같은 구성을 갖는, 퍼스널 컴퓨터 등의 처리 장치 (a), (b)를 외부 장치로서 접속함으로써, 이들 처리 장치 (a), (b)와 프로토콜 콘트롤러(20)와의 사이에서 통신을 행할 수 있도록 되어 있다.
처리 장치(a)는, CPU와, 전술과 동일한 제어 프로그램(5B)을 격납하기 위한 메모리와, 외부 장치 (여기에서는 프로토콜 콘트롤러(20))와의 통신을 제어하는 통신 제어 회로를 갖고, 제어 프로그램(5B)이 적어도 통신 제어 회로를 제어하는 통신 제어 프로그램 (전술한 HOST 수순 핸들러(532A)나 RS232C 드라이버(531B/532B, 537B)와 동일한 것)과, 고유의 경로 식별자를 갖는 경로 제어 프로그램 (전술한 디바이스 루터(540)과 동일한 것)과, 고유의 모듈 식별자를 갖는 모듈 (어플리케이션 프로글매, 프로토콜 제어 프로그램, 디바이스 제어 프로그램 등)을 갖고 있다. 이와 같은 처리 장치 (a)를 프로토콜 콘트롤러(20)에 접속한 경우, 처리 장치 (a)와 프로토콜 콘트롤러(20)와의 사이의 통신은, 두 개의 프로토콜 콘트롤러(20) 상호간의 통신과 전혀 동일하게 행해진다.
처리 장치 (b)는 CPU와, 프로그램(5)을 격납하기 위한 메모리와, 외부 장치 (여기에서는 프로토콜 콘트롤러(20))와의 통신을 제어하는 통신 제어 회로를 갖고, 그 메모리에 적어도 통신 제어 회로를 제어하는 통신 제어 프로그램과, 통신 제어 회로에 접속되어 있는 프로토콜 콘트롤러(20) 내의 각종 모듈에 대한 접속 요구를 프로토콜 콘트롤러(20) 내의 디바이스 루터(540)에 대해 발행할 수 있는 어플리케이션 프로그램이 격납되어 있다. 이와 같은 처리 장치 (b)를 프로토콜 콘트롤러(20)에 접속한 경우, 프로토콜 콘트롤러(20)의 디바이스 루터(540)는 처리 장치 (b)로부터의 접속 요구를 받으면, 프로토콜 콘트롤러(20)에서의 해당 모듈과 처리 장치 (b)을 접속한다.
[1-5] 프로토콜 콘트롤러에 의한 취인 처리 예의 설명
다음에, 도 18 및 도 19를 참조하면서, 본 실시 형태의 프로토콜 콘트롤러(20)를 이용한 취인 처리예에 대해서 설명한다.
도 18에서 나타낸 예에서는, 취인 장치인 전자 화폐 (IC 카드) 대응 유니트(70)에는, 프로토콜 콘트롤러(20)가 조립되며, 이 프로토콜 콘트롤러(20)를 제어하는 프로토콜 콘트롤러 어플리케이션과, 이 프로토콜 콘트롤러 어플리케이션을 제어하기 위해 상위 처리부(CPU; 72)에서 실행되는 상위 어플리케이션이 구비되어 있다.
그리고, 2개의 IC 카드 (휴대용 매체; 330-1, 330-2)를 프로토콜 콘트롤러(20)에 대해 접속한 상태에서, 상위 처리부(72)가 한 쪽의 IC 카드(330-1)로부터 다른 쪽의 IC 카드(330-2)로의 전자 화폐 전송을 프로토콜 콘트롤러(20)에 요구하면 (화살표 ① 참조), 프로토콜 콘트롤러(20)에 의해 실제의 전자 화폐의 전송 처리가 행해지고(화살표 ② 참조), 그 처리 결과가 프로토콜 콘트롤러(20)로부터 상취 처리부(72)에 통지된다(화살표 ③ 참조).
즉, 상위 처리부(72; 상위 어플리케이션)는 방식에 따라 다른 전자 화폐의 프로토콜에 대해서 아무것도 의미하는 일 없이, 간단하게 전자 화폐에 대한 취인 요구를 발행할 뿐이며, 복수의 다른 방식의 전자 화폐를 취급할 수 있다.
도 19에서 나타낸 예에서는, 상술한 전자 화폐 대응 유닛(70)을 2조 구비하고, 이들 유닛(70, 70) 상호간을 네트워크(71)에 의해 상호 통신 가능하게 접속한 시스템을 상정하고, 이들 두 개의 유닛(70, 70)의 프로토콜 콘트롤러(20, 20)에 각각 IC 카드(330-1, 330-2)를 접속한 상태에서, IC 카드(330-1)과 (330-2) 사이에서의 전자 화폐 전송을 행하고 있다.
이 경우, 먼저, 두 개의 유니트(70, 70)에서의 상위 처리부(72, 72) 상호간에 통신 패스를 확립한 후에 (화살표 ① 참조), 한 쪽의 유니트(70)의 상위 처리부(72)가 한 쪽의 IC 카드(330-1)로부터 다른 쪽의 IC 카드(330-2)로의 전자 화폐 전송을 프로토콜 콘트롤러(20)에 대해 요구한다 (화살표 ② 참조). 이 요구에 따라서, 네트워크(71) 상의 통신 패스를 경유하면서 두 개의 프로토콜 콘트롤러(20, 20) 사이에서 실제의 전자 화폐의 전송 처리가 행해진다 (화살표 ③ 참조). 그 후, 그 처리 결과가 프로토콜 콘트롤러(20)로부터 상위 처리부(72)에 통지되고(화살표 ④ 참조), 통신 패스가 절단된다(화살표 ⑤ 참조).
즉, 이 경우도, 두 개의 유니트(70, 70)에서의 상위 처리부(72, 72)는 방식에 따라 다른 전자 화폐의 프로토콜에 대해서 아무것도 의식하지 않고 단순히 전자 화폐에 대한 취인 요구를 발생할 뿐으로, 네트워크(71)를 거치면서 복수의 다른 방식의 전자 화폐를 취급할 수 있는 것이다.
[1-6] 프로토콜 콘트롤러의 구체적인 이용예의 설명
다음에, 도 20∼도 22를 참조하여, 본 실시 형태의 프로토콜 콘트롤러(20)의 구체적인 이용예 (각종 취인 장치에의 조립예)에 대해 설명한다.
도 20은 본 실시 형태의 프로토콜 콘트롤러(20)를 조립한 ATM (Automatic Teller Machine; 80)의 구성예를 나타낸 블럭도이다. 이 도 20에서 나타낸 바와 같이, ATM(80)은 제어 회로 (Controller; 81), 스크린/터치 패널 (Screen+Touch Panel; 82), 프린터(83), 카드 리더/라이터 (Card R/W; 84) 및 프로토콜 콘트롤러 블럭(88)을 갖고 구성되어, 호스트(89)에 접속되어 있다.
그리고, 프로토콜 콘트롤러 블럭(88)은 본 실시 형태의 프로토콜 콘트롤러(20)가 구비되어 있음과 동시에, 이 프로토콜 콘트롤러(20)에 외부 RAM(54b)이 접속되면서, PIN (Personal Identification Numbers)을 입력하기 위한 PIN 패드(88a)가 디바이스로서 접속되어 있다.
여기에서, 제어 회로(81)는 호스트(89)나 스크린/터치 패널(82)로부터의 신호 등에 따라 프린터(83), 카드 리더/라이터(84), 프로토콜 콘트롤러(20)를 제어하는 것이다. 또, 카드 리더/라이터(84)는, IC 카드(330)에 대한 기입/판독 억세스를 행하는 외에, 카드에 형성된 엠보스부(86)을 판독하고, 카드 상의 자기 스트라이프부(MS; 87)의 자기 정보를 판독하는 기능을 갖고 있다.
이와 같은 ATM(80)은 다종 다양한 기능을 갖고 있고, 극히 복잡한 IC 카드(330) 등의 핸들링을 행하는 것으로, 그 기능 전체를 프로토콜 콘트롤러(20)에서 행하는 것은 불가능하다. 그리고, ATM(80)에서는, 예를 들면 각종 전자 화폐의 프로토콜에 관한 처리 (화살표 ① 참조)나 PIN의 암호화에 관한 처리 (화살표 ②참조)를 실행할 때에 프로토콜 콘트롤러(20)의 기능을 이용하여, 그 이외 모든 I/O 제어 (예를 들면, IC 카드(330)의 핸들링, 금액 입력, 화면 표시, 인자 출력 등)는 제어 회로(81)에 의해 행한다.
예를 들면, 실제의 카드 리더/라이터(84)에 대한 I/O 제어는 상술한 바와 같이 제어 회로(81)에 의해 행하지만, 그 I/O 제어 중 전자 화폐의 프로토콜에 관한 부분의 처리는 화살표 ①에서 나타낸 바와 같이, 제어 회로(81)로부터 프로토콜 콘트롤러(20)에 의뢰하고, 이 프로토콜 콘트롤러(20)에서 처리 대상의 전자 화폐의 방식에 따른 프로토콜 제어 프로그램을 이용하여 실행된다.
또, 전자 화폐의 프로토콜에 따라서는 PIN을 암호화하지 않으면 안될 경우가 있다. 이와 같은 전자 화폐를 취급하는 경우, 제어 회로(81)은 PIN 패드(88a)로부터 입력된 PIN의 암호화 처리나, 암호화된 PIN의 해독 처리를 화살표 ②에서 나타낸 바와 같이 프로토콜 콘트롤러(20)에서 실행시킨다.
이와 같이 제어 회로(81)에 의해 프로토콜 콘트롤러(20)를 이용하여 처리를 행할 때, 전술한 제어 전문(130)에 의한 동작 요구 기능이나 디바이스 루터(540)에 의한 경로 제어 기능이 유효하게 이용되게 된다.
도 21은 본 실시 형태의 프로토콜 콘트롤러(20)를 조립한 POS 시스템(90) 및 외부 카드 리더/라이터(150)의 구성예를 나타낸 블럭도이고, 이 도 21에서 나타낸 바와 같이, POS 시스템(90)은 메인 보드(91), 디스플레이(92), 프린터(93), MS 리더(94), 키보드(KB; 95), 드로어(인출; 96) 및 리더/라이터 인터페이스 어댑터(R/W I/F Adapter; 97)을 갖고 구성되어, 외부 카드 리더 라이터(150)에 접속되어 있다.
POS 시스템(90)의 리더/라이터 인터페이스 어댑터(97)에는, 본 실시 형태의 프로토콜 콘트롤러(20)가 구비됨과 동시에, 이 프로토콜 콘트롤러(20)에는 시리얼 드라이버/리시버(50d 및 50e)를 거쳐 메인 보드(91) 및 외부 카드 리더/라이터(150)가 접속됨과 동시에, 디멀티플렉서(340; 도 21에서는 도시 생략)을 거쳐, 4개의 SIM (Subscriber Indentity Module; 331)과, 머천트 카드로서 기능하는 IC 카드(330)가 접속되어 있다. 여기에서, 메인 보드(91)는 MS 리더(94)나 키보드(KB; 95)로부터의 신호를 수신하고, 디스플레이(92), 프린터(93), 드로어(인출; 96)의 동작을 제어하는 것이다.
외부 카드 리더/라이터(150)에는, 본 실시 형태의 프로토콜 콘트롤러(20)가 구비될 수 있음과 동시에, 이 프로토콜 콘트롤러(20)에는 시리얼 드라이버/리시버(50f)를 거쳐 POS 시스템(90)이 접속됨과 동시에, LCD(56), 키보드(60), 그린 버튼(61), 부저(Bz; 62) 및 IC 카드(330)가 디바이스로서 접속되어 있다.
POS 시스템(90)은 예를 들면 점포에서 레지스터로서 이용되는 것으로, 이 POS 시스템(90)에는, 상술한 외부 카드 리더/라이터(150)가 접속되어 있고, 고객은 전자 화폐에 의한 지불을 행할 때, IC 카드(330)을 외부 카드 리더/라이터(150)에 장착하고, LCD(56)의 표시를 참조하면서 키보드(60)나 그린 버튼(61)을 조작하고, IC 카드(330)로부터 전자 화폐에 의한 소정 금액의 지불을 행한다. 이 때, 두 개의 프로토콜 콘트롤러(20, 20)는 메인 보드(91)의 지배하에서 캐스캐이드 상으로 접속되어 있고, 이들 프로토콜 콘트롤러(20, 20)을 거쳐 POS 시스템(90) 측의 IC 카드 (머천트 카드; 330)과 외부 카드 라더/라이터(150)에서의 고객 IC 카드(330)와의 사이에서 전자 화폐의 전송 처리가 행해지게 된다.
도 22는 본 실시 형태의 프로토콜 콘트롤러(20)를 조립한 휴대 POS 단말(핸디 POS; 160)의 구성예를 나타내는 블럭도이고, 이 도 22에서 나타낸 바와 같이, 휴대 POS 단말(160)은 메인 보드(161), 디스플레이(162), 터치 패널(163), 키보드(KB; 164), 부저(Bz; 165), 프린터(160), PC 카드 인터페이스(PCMCIA; 166), 무선 통신부(SSRF; 167), 스캐너(168), 시리얼 드라이버/리시버(170) 및 프로토콜 콘트롤러 블럭(171)을 갖고 구성되어 있다.
그리고, 프로토콜 콘트롤러 블럭(171)에는, 본 실시 형태의 프로토콜 콘트롤러(20)가 구비되어 있음과 동시에, 이 프로토콜 콘트롤러(20)에 시리얼 드라이버/리시버(50g 및 170)을 거쳐 메인 보드(161)가 접속됨과 동시에, MS 리더(63), IC 카드(330) 및 4개의 SIM(331)이 접속되어 있다.
여기에서, 메인 보드(161)는 시리얼 드라이버/리시버(170)를 거쳐 스캐너(168)에 접속됨과 동시에, PC 카드 인터페이스(PCMCIA; 166) 및 무선 통신부(SSRF; 167)를 거쳐 호스트(169)에도 접속된다. 또, 메인 보드(161)는 터치 패널(163)이나 키보드(164)로부터의 신호를 받아, 디스플레이(162), 부저(Bz; 165) 및 프린터(160)의 동작을 제어하는 것이다.
휴대 POS 단말(160)은 지불을 행하는 고객이 레지스터(POS 단말)의 장소 까지 가지 않고, 레스토랑 등이면 착석한 채로 정산을 행할 때에 이용되는 것으로, 전자 화폐에 의한 지불을 행할 때, 고객의 IC 카드(330)을 휴대 POS 단말(160)에 장착한 상태에서, 터치 패널(163)이나 키보드(164)가 조작되어, 소정의 정산이 행해진다. 정산에 대한 정보 (지불 금액 등)는 호스트(169)로부터 휴대 POS 단말(160)에 무선으로 통지됨과 동시에, IC 카드(330)로부터 인출된 전자 화폐의 정보는 휴대 POS 단말(160)로부터 호스트(169)에 무선으로 통지된다. 휴대 POS 단말(160)의 프로토콜 콘트롤러(20)는 상술한 바와 같이 전자 화폐를 IC 카드(330)으로부터 인출하여 정산 처리를 행하기 위해 사용된다.
[1-7] 암호 키이의 설명
또, 본 실시 형태의 프로토콜 콘트롤러(20)에서의 ROM(22)은 상술한 바와 같이 마스크 ROM으로 구성되어 있기 때문에, 이 ROM(22)에 복수의 암호 키이 또는 암호 키이 집합 중 하나를 선택하여 제어 프로그램(5A 또는 5B)에서 사용되도록 구성하여도 좋다.
이 경우, 프로토콜 콘트롤러(20) 내에서 시리얼 송수신 제어 회로(26)에 의해 외부로부터 수신된 전문에 의해 복수의 암호 키이 또는 암호 키이 집합 중 하나를 지정할 수 있도록 구성된다. 또, 인터페이스 회로를 거쳐 접속된 외부 기억부 (예를 들면 ROM(54a))에 의해 복수의 암호 키이 또는 암호 키이 집합 중 하나를 지정할 수 있도록 구성하여도 좋다.
이와 같이, 프로토콜 콘트롤러(20) 내의 ROM(22)에 복수의 암호 키이 또는 암호 키이 집합을 미리 격납하여 두고, 프로토콜 콘트롤러(20)의 외부로부터 암호 키이 또는 암호 키이 집합을 선택하여 전환함으로써, 암호 키이의 보안을 확보하면서, 복수의 암호 키이 또는 암호 키이 집합에 대응할 수 있다.
[1-8] 본 실시 형태의 프로토콜 콘트롤러에 의한 효과의 설명
이와 같이, 본 발명의 일 실시 형태로서의 프로토콜 콘트롤러(20)에 의하면, 하나의 프로토콜 콘트롤러(20)에 의해 복수의 다른 방식의 전자 화폐의 취급이 가능하게 됨과 동시에, 그 프로토콜 콘트롤러(20)를 전자 화폐 대응의 각종 취인 장치 (예를 들면 전술한 ATM(80), POS 시스템(90), 외부 카드 리더/라이터(150), 휴대 POS 단말(160))에서 공통으로 이용할 수 있다. 이 때, 프로토콜 콘트롤러(20)에 각종 주변 제어 회로를 내장 (집적화)함으로써, 각종 취인 장치에서 공통하는 부분을 보다 확대할 수 있다.
또, 프로토콜 콘트롤러(20) 내의 제어 프로그램(5A 또는 5B)을 격납하는 ROM(22)을 마스크 ROM으로서 구성하고 있기 때문에, 프로토콜 콘트롤러(20)의 외부로부터 제어 프로그램(5A 또는 5B)에의 억세스를 금지할 수 있고, 보안을 확보할 수 있는 것 외에, 프로토콜 콘트롤러(20)에 외부 부착된 ROM(54a)을 프로그램 격납용 외부 기억부로서 접속 가능하게 함으로써, 프로토콜 콘트롤러(20)의 확장성을 보다 높일 수 있다.
또한, 제어 전문(130)을 이용함으로써, 프로토콜 콘트롤러(20)의 외부로부터 사용하는 전자 화폐의 종별 (프로토콜 제어 프로그램)을 지정할 수 있는 것 외에, 프로토콜 콘트롤러(20)에 내장된 각종 주변 제어 회로를 외부로부터 직접 제어할 수 있기 때문에, 각종 전자 화폐에 대한 처리 이외의 처리 (전자 화폐의 처리와는 무관계하게 예를 들면 IC 카드 리더/라이터를 사용하는 처리)를 실행할 수 있다.
또한, 프로토콜 콘트롤러(20)를 단일체로 취인 장치 등에 조립하여 이용할 수 있는 것 외에, 도 17에 나타낸 바와 같이, 호스트 시스템(51)에 프로토콜 콘트롤러(20)를 접속하고, 호스트 시스템(51)에 복수의 프로토콜 콘트롤러(20)를 캐스캐이드 상으로 접속할 수도 있기 때문에, 프로토콜 콘트롤러(20)를 이용하여 극히 유연하게 시스템을 구책할 수 있다.
이와 같이, 본 실시 형태의 프로토콜 콘트롤러(20)의 범용성은 극히 높아, 프로토콜 콘트롤러(20)을 전자 화폐 대응의 각종 취인 장치에서 공통으로 이용할 수 있다. 이에 의해 프로토콜 콘트롤러(20)에 대해 인정을 받으면, 이 프로토콜 콘트롤러(20)를 조립하여 구책한 각종 취인 장치에 대해서는, 프로토콜 콘트롤러(20) 이외의 장치 독자적인 부분에 대해서만 인정을 받으면 좋고, 복수의 다른 방식의 전자 화폐 마다 인정을 받을 필요도 없어진다. 따라서, 각종 취인 장치의 설계 개발 공정을 대폭으로 삭감할 수 있고, 인정 기관 등에 의한 인정 공정수 (인정을 받기 위한 검증 공정수)도 대폭으로 삭감할 수 있음과 동시에, 신뢰성의 향상 및 높은 보안 성능을 실현할 수 있다.
[2] 본 실시 형태의 프로토콜 콘트롤러에서의 디바이스 접속 상태 인식 수단의 설명
다음에, 도 23∼도 28을 참조하여, 상술한 본 실시 형태의 프로토콜 콘트롤러(20)에 적용되는 디바이스 접속 상태 인식 방법에 대해 설명한다. 본 실시 형태의 프로토콜 콘트롤러(20)의 CPU(21)은 도 12을 참조하면서 상술한 대로, 이 프로토콜 콘트롤러(20)에 외부 ROM(54a)가 접속되어 있는지의 여부를 식별하는 식별 수단이 구비되어 있지만, 이에 대신에, 이하에서 설명하는 디바이스 접속 상태 인식 기능을 구비하여도 좋다. 이 디바이스 접속 상태 인식 기능을 이용함으로써, 외부 ROM(54a) 이외의 각종 디바이스의 접속/비접속 (접속 상태)에 대해서도 인식할 수 있게 된다.
도 23 및 도 24에서는, 프로토콜 콘트롤러(20)에서의 CPU(21), 어드레스 버스(24) 및 데이터 버스(25)를 추출하여 도시하고, 그 외 구성 회로 등의 도시는 생략하고 있다. 또, 도 23에서는, 디바이스로서 외부 ROM(54a), 외부 RAM(54b) 및 FROM(FLASH; 54c)이 접속되는 프로토콜 콘트롤러(20)의 회로 구성이 도시되고, 도 24에서는, 디바이스로서 외부 RAM(54b) 및 FROM(FLASH; 54c)이 접속되는 프로토콜 콘트롤러(20)의 회로 구성이 도시되어 있다. 또, 본 실시 형태에서는, 데이터 버스(25)로서, 전술한 대로 16비트의 것이 이용되고 있다. 즉, 데이터 버스(25)는 16개의 데이터 신호선 DT0∼DT15로 구성되어 있다.
프로토콜 콘트롤러(20)의 설계시에는, 그 프로토콜 콘트롤러(20)가 조립되는 취인 장치의 종류에 의해서, 프로토콜 콘트롤러(20)에 어떤 디바이스가 외부에 부착되었는지가 판명된다. 여기에서, 본 실시 형태에서는, 프로토콜 콘트롤러(20)의 제조시에, 이 프로토콜 콘트롤러(20)에 접속되는 디바이스의 종류에 따라서, 데이터 버스(25)의 데이터 신호선 DT0∼DT15를 각각 풀업 저항(113)을 거쳐 고전위(+V)에 접속하고, 또는 풀다운 저항(114)을 거쳐 저전위(그라운드: GND)에 접속하여 둔다.
그리고, 프로토콜 콘트롤러(20)의 CPU(21)는 시스템 기동시 등에, 어드레스버스(24)에서 소정의 논리 어드레스, 본 실시 형태에서는 외부 ROM(54a)의 선두 어드레스 C00000(도 12 참조)를 지정하고, 데이터 신호선 DT0∼DT15를 통해 데이터를 판독한다.
본 실시 형태에서, 프로토콜 콘트롤러(20)에 외부 ROM(54a)이 접속되는 경우, 그 외부 ROM(54a)의 선두 어드레스 C00000에 그 프로토콜 콘트롤러(20)에 접속되는 디바이스에 대한 정보가 도 26에 나타낸 바와 같은 16비트의 구성 정보 레지스터 (HWSTR: Hardware Structure Register)로서 미리 설정되도록 되어 있다.
따라서, 외부 ROM(54a)이 프로토콜 콘트롤러(20)에 접속되어 있는 경우, 어드레스 C00000을 지정하면, CPU(21)는 데이터 버스(25)를 통해 구성 정보 레지스터(HWSTR)의 정보를 판독할 수 있다.
이에 대해, 외부 ROM(54a)이 프로토콜 콘트롤러(20)에 접속되어 있지 않는 경우, 어드레스 C00000을 지정하면, CPU(21)는 데이터 신호선 DT0∼DT15에서 풀업 저항(113)/풀다운 저항(114)에 의해 생성되는 고전위 상태/저전위 상태[1(하이)/0(로우)]를 구성 정보 데이터로서 판독되게 된다.
여기에서, 풀업 저항(113) 및 풀다운 저항(114)에 의해 설정되는 16비트분의 구성 정보 데이터는, 외부 ROM(54a)의 선두 어드레스 C00000에 설정될 수 있는 16비트의 구성 정보 레지스터(HWSTR)의 데이터와 완전히 동일하게 되도록 설정된다.
구성 정보 레지스터(HWSTR)의 데이터에 대해서, 즉 풀업 저항(113) 및 풀다운 저항(114)에 의한 구성 정보 데이터의 설정 방법에 대해 도 26∼도 28을 참조하면서 설명한다.
또, 구성 정보 레지스터(HWSTR)의 비트 번호 0∼15와, 데이터 버스(25)의 데이터 신호선 DT0∼DT15가 각각 대응한다. 즉, 구성 정보 레지스터(HWSTR)의 비트 번호 i(i=0∼15)가 0이면, 데이터 신호선 DTi는 풀다운 저항(114)을 거쳐 저전위(GND)에 접속되는 한편, 구성 정보 레지스터(HWSTR)의 비트 번호 i가 1이면, 데이터 신호선 DTi은 풀업 저항(113)을 거쳐 고전위(+V)에 접속된다.
도 26 및 도 27에서 나타낸 바와 같이, 비트 번호 0 즉 데이터 신호선 DT0에서 확장 I/O의 접속(0)/비접속(1)이 설정되고, 비트 번호 1 즉 데이터 신호선 DT1에서 확장 버스의 접속(0)/비접속(1)이 설정되고, 비트 번호 5 즉 데이터 신호선 DT5에서 카드 전환기 (디멀티플렉서(340))의 접속(0)/비접속(1)이 설정된다.
그리고, 도 26∼도 28에서 나타낸 바와 같이, 비트 번호 2∼4 즉 데이터 신호선 DT2∼DT4에서, 이 프로토콜 콘트롤러(20)에 접속된 IC 카드(330)의 개수(0∼6매)가 설정된다.
또, 비트 번호 6 즉 데이터 신호선 DT6에서 반송기(카드 콘베이어(64))의 접속(0)/비접속(1)이 설정되고, 비트 번호 7 즉 데이터 신호선 DT7에서 MS 리더(6)의 접속(0)/비접속(1)이 설정되고, 비트 번호 8 즉 데이터 신호선 DT8에서 부저(62)의 접속(0)/비접속(1)이 설정되고, 비트 번호 9 즉 데이터 신호선 DT9에서 그린 버튼(61)의 접속(0)/비접속(1)이 설정되고, 비트 번호 10 즉 데이터 신호선 DT10에서 키보드(60)의 접속(0)/비접속(1)이 설정된다.
동일하게, 비트 번호 11 즉 데이터 신호선 DT11에서 외부 RAM(54b)의 접속(0)/비접속(1)이 설정되고, 비트 번호 12 즉 데이터 신호선 DT12에서 외부 FLASH(54c)의 접속(0)/비접속(1)이 설정되고, 비트 번호 13 즉 데이터 신호선 DT13에서 외부 ROM(54a)의 접속(0)/비접속(1)이 설정되고, 비트 번호 14 즉 데이터 신호선 DT14에서 하위 장치 (예를 들면 서브시스템(52))의 접속(0)/비접속(1)이 설정되고, 비트 번호 15 즉 데이터 신호선 DT15에서 상위 장치 (예를 들면 호스트 시스템(51))의 접속(0)/비접속(1)이 설정된다.
예를 들면 도 23에서 나타낸 예에서는, 적어도 외부 ROM(54a), 외부 RAM(54b) 및 FROM(FLASH; 54c)이 디바이스로서 접속되기 때문에, 이들에 대응하여 프로토콜 콘트롤러(20)에서의 데이터 신호선 DT13, DT11, DT12는 풀다운 저항(113)을 거쳐 저전위(GND)에 접속되어 있다.
또, 도 24에서 나타낸 예에서는, 적어도 외부 RAM(54b) 및 FROM(FLASH; 54c)이 디바이스로서 접속되기 때문에, 이들에 대응하여 프로토콜 콘트롤러(20)에서의 데이터 신호선 DT11, DT12는 풀다운 저항(113)을 거쳐 저전위(GND)에 접속되어 있다.
또, 도 23 및 도 24에서 나타낸 예에서는, 데이터 신호선 DT0, DT1이 풀다운 저항(113)을 거쳐 저전위(GND)에 접속되어 있기 때문에, 도 23이나 도 24중에는 도시하지 않았지만, 확장 I/O 및 확장 버스도 접속되어 있게 된다.
그리고, CPU(21)는 논리 어드레스 C00000을 지정함으로써 얻은 구성 정보 데이터에 기초하여, 자신이 속하는 프로토콜 콘트롤러(20)에 접속되어 있는 디바이스의 접속 상태 (도 27에 나타낸 각종 디바이스 중 어느 디바이스가 접속되어 있는지)를 인식하는 인식부로서 기능하게 된다.
또, 상술한 것과는 반대로, 디바이스가 프로토콜 콘트롤러(20)에 접속되어 있는 경우, 데이터 버스(25)의 데이터 신호선 DTi를 풀업 저항(113)을 거쳐 고전위에 접속하는 한편, 디바이스가 프로토콜 콘트롤러(20)에 접속되어 있지 않는 경우, 데이터 버스(25)의 데이터 신호선 DTi를 풀다운 저항(114)를 거쳐 저전위로 접속하여도 좋다.
다음에, 도 25에서 나타낸 플로우챠트 (스텝 S0∼S9)에 따라서, 본 실시 형태의 프로토콜 콘트롤러(20)의 CPU(21)에서의 디바이스 접속 상태 인식 수순에 대해 설명한다. 또, 본 실시 형태에서는, CPU(21)에 의해 디바이스의 접속/비접속을 인식하면서, 접속되어 있는 디바이스의 드라이버/핸들러(디바이스 제어 프로그램)도 기동시키고 있다.
시스템 기동시 등에, CPU(21)는 먼저 외부 ROM(54a)의 선두 어드레스로서 할당되어 있는 논리 어드레스 C00000을 어드레스 버스(24)에 의해 지정하여, 데이터 버스(25)를 통해 16 비트의 구성 정보 데이터를 획득하고, 데이터 신호선 DT13에 의해 얻어진 데이터가 "0"인지를 판단한다(스텝 S1). 즉, CPU(21)는 제일 먼저 외부 ROM(54a)이 접속되어 있는지의 여부를 인식한다.
이 데이터가 "0"인 경우(스텝 S1의 YES 루트), CPU(21)는 외부 ROM(54a)이 탑재되어 있다고 판단하여, 이 외부 ROM(54a) 상의 OS521 (도 13, 도 15 참조)를 기동한다(스텝 S2). 한편, 스텝 S1에서 데이터 신호선 DT13의 데이터가 "0"이 아니고 즉 "1"이라고 판단된 경우 (스텝 S1의 NO 루트), CPU(21)은 외부 ROM(54a)이 탑재되어 있지 않다고 판단하여, 내장 ROM(22) 상의 OS521을 기동한다(스텝 S3).
OS521을 기동한 후, CPU(21)은 데이터 신호선 DT13 이외의 데이터 신호선 0∼12 및 14, 15의 데이터를 순차 체크하여 둔다. 즉, 비트 번호 x로서 "0"을 설정하여 두고(스텝 S4), 데이터 신호선 DTx (x=0∼12, 14, 15)에 의해 얻어진 데이터가 "1"인지를 판단한다(스텝 S5).
이 데이터가 "1"이 아닌 경우, 즉 "0"인 경우(스텝 S5의 NO 루트), CPU(21)는 비트 번호 x에 대응하는 디바이스 Dx의 드라이버/핸들러를 디바이스 제어 프로그램군(530; 도 13, 도 15 참조) 중에서 판독하여 기동하고 나서(스텝 S6), 후술하는 스텝 S7으로 옮겨간다.
한편, 스텝 S5에서 데이터 신호선 DTx의 데이터가 "1"이라고 판단한 경우(스텝 S5의 YES 루트), CPU(21)은 디바이스 Dx가 미탑재되었다고 판단하여, 비트 번호 x에 1을 가산하고(스텝 S7), 새로운 비트 번호 x가 이미 판단 완료된 비트 번호 13이면, 비트 번호 x에 더욱 1을 가산한다(스텝 S8).
그리고, CPU(21)는 새로운 비트 번호 x가 "16"인지의 여부를 판단하고(스텝 S9), x=16이면(YES 루트), 처리를 종료하는 한편, x≠16이면(NO 루트), 스텝 S5로 되돌아가, 동일한 처리를 반복하여 행한다.
이와 같이, 본 실시 형태의 프로토콜 콘트롤러(20)에서의 디바이스 접속 상태 인식 방법에 의하면, CPU(21)는 데이터 신호선 DT0∼DT15에서 풀업 저항(113)/풀다운 저항(114)에 의해 생성된 고전위 상태(1)/저전위 상태(0)을 구성 정보 데이터로서 판독하는 것으로, 검출 전용 신호선 등을 추가하는 일 없이, 그 구성 정보 데이터에 기초하여 디바이스 접속 상태를 인식하고, 그 디바이스에 대응한 드라이버/핸들러(디바이스 제어 프로그램) 만을 기동시킬 수 있다.
본 실시 형태의 프로토콜 콘트롤러(20)에 탑재된 ROM(22)이나 외부 ROM(54a)은 프로토콜 콘트롤러(20)에 접속될 수 있는 모든 디바이스를 위한 드라이버/핸들러(디바이스 제어 프로그램)을 갖는 제어 프로그램(5A 또는 5B)를 격납함으로써 범용화되어 있지만, 이와 같은 범용화된 ROM(22, 54a)를 이용한 경우에도, CPU(21)는 상술한 바와 같이 디바이스를 인식할 수 있기 때문에, 접속된 디바이스에 대한 드라이버/핸들러 (디바이스 제어 프로그램)만을 기동시킬 수 있다.
따라서, 프로토콜 콘트롤러(20)를 조립한 취인 장치 (컴퓨터 시스템) 마다 다른 제어 프로그램을 격납한 ROM을 준비할 필요가 없어지고, ROM에의 프로그램 탑재에 필요한 수고를 생략하면서 부품 관리를 간략화할 수 있기 때문에, 각종 취인 장치(시스템)의 제조에 필요한 비용을 대폭으로 삭감할 수 있다.
[3] 본 실시 형태에서의 프로토콜 콘트롤러와 IC 카드 간의 데이터 전송 제어 방법의 설명
도 11을 참조하면서 전술한 대로, 본 실시 형태에서는, 프로토콜 콘트롤러(20)와 이 프로토콜 콘트롤러(20)에 장착될 수 있는 최대 6개의 IC 카드(330) 사이에는 디멀티플렉서(340)가 개장되어 있다.
즉, 본 실시 형태에서는, 프로토콜 콘트롤러(20)와 IC 카드(330) 사이에 디멀티플렉서(340)를 개장함으로써, 프로토콜 콘트롤러(20)는 두 개의 포트 A 및 B, 즉 두 개의 IC 카드 제어 회로(36A 및 36B)를 이용하여, 최대 6개의 IC 카드(330)에 대한 제어를 행할 수 있도록 구성되어 있다.
이 디멀티플렉서(340)는 6개의 IC 카드(330)와 프로토콜 콘트롤러(20)의 IC 카드 제어 회로(36A, 36B; 포트 A, B)와의 사이를 적당하게 접속하고, 이들 사이에서의 데이터 전송을 제어하는 데이터 전송 제어 장치 (카드 전환기)로서 기능하고, 프로토콜 콘트롤러(20)의 억세스 대상이 되는 2개의 IC 카드(330)와, 포트 A 및 B를 선택적으로 전환하여 접속하는 것이다.
이하, 디멀티플렉서(340)의 상세 또는 구체적인 구성에 대해서, 도 29 내지 도 31을 참조하여 설명한다.
또, 도 29에서는 디멀티플렉서(340) 중, 프로토콜 콘트롤러(20)와 IC 카드(330)의 사이에서 쌍방향 통신되는 신호 (데이터 및 C4/C8 신호)를 위한 전환 회로의 구성이 도시되고, 도 30에서는 디멀티플렉서(340) 중 프로토콜 콘트롤러(20)로부터 IC카드(330)에 단방향으로 통신되는 신호(리세트 신호)를 위한 전환 회로의 구성이 도시되고, 도 31에서는 디멀티플렉서(340) 중 IC 카드(330)로부터 프로토콜 콘트롤러(20)에 단방향으로 통신되는 신호 (IC 카드 장착 통지 신호)를 위한 전환 회로의 구성이 도시되어 있다. 또, 도 11과 동일하게, 도 29 내지 도 31에서, 6개의 IC 카드(330; ICC0∼ICC5)는 각각 포트 번호 0∼5를 부여한 실제의 카드 포트 (이하, 포트 0∼5로 표기함)에 장착된다.
도 29 내지 도 31에서 나타낸 바와 같이, 본 실시 형태의 디멀티플렉서(340)는 게이트 콘트롤러(341)과, 2입력 1출력의 선택기(342-0∼342-5, 347-0∼347-5)와, 6입력 1출력의 선택기(345A, 345B, 351A, 351B)와, 래치 회로(343-0∼343-5, 348-0∼348-5)와, 3 상태 입출력 포트(344-0∼344-5, 346A, 346, 349-0∼349-5)를 구비하여 구성되어 있다.
게이트 콘트롤러(341)는 시스템 블럭의 공급을 받아 동작함과 동시에, 프로토콜 콘트롤러(20)의 카드 선택 회로(43)로부터의 선택 신호 CDSEL[0:4]에 따라서, 선택기(342-0∼342-5, 347-0∼347-5), 선택기(345A, 345B, 351A, 351B)와, 래치 회로(343-0∼343-5, 348-0∼348-5)와, 3 상태 입출력 포트(344-0∼344-5, 346A, 346B, 349-0∼349-5)와의 동작을 제어하는 것이다. 또, 선택 신호 CDSEL[0:4]의 상세에 대해서는, 도 33 및 도 34를 참조하여 후술한다.
도 29에서 나타낸 바와 같이, 디멀티플렉서(340)에서, 프로토콜 콘트롤러(20)와 IC 카드(330)의 사이에서 쌍방향 통신되는 신호 (데이터 및 C4/C8 신호)를 위한 전환 회로에는, 선택기(342-0∼342-5, 345A, 345B), 래치 회로(343-0∼343-5), 3 상태 입출력 포트(344-0∼344-5) 및 3 상태 입출력 포트(346A, 346B)가 구비되어 있다.
여기에서, 선택기(342-0∼342-5)는 게이트 콘트롤러(341)에 의해 제어되고, 프로토콜 콘트롤러(20)의 두개의 포트 A, B로부터 출력된 데이터 (또는 C4/C8 신호) 중 어느 한 쪽을 선택적으로 전환하여, 6개의 IC 카드(330; ICC0∼ICC5) 측으로 각각 출력되는 것이다.
래치 회로(343-0∼343-5)는 게이트 콘트롤러(341)에 의해 제어되며, 각각 ICC0∼ICC5가 비억세스 대상인 경우 비억세스 상태로 천이되기 직전에 선택기(342-0∼342-5)로부터 출력된 신호를 래치하는 것이다.
3 상태 입출력 포트(344-0∼342-5)는 각각 ICC0∼ICC5가 비억세스 대상인 경우 또는 ICC0∼ICC5에 대해 출력해야 할 신호가 "1" 즉 하이 상태인 경우, 하이임피던스 상태가 되도록 게이트 콘트롤러(341)에 의해 제어되는 것이다.
선택기(345A, 345B)는 게이트 콘트롤러(341)에 의해 제어되고, 6개의 IC 카드(330)로부터 출력된 데이터 (또는 C4/C8 신호) 중 어느 하나를 선택적으로 전환하여 프로토콜 콘트롤러(20)의 포트 A, B에 출력하는 것이다.
상술한 구성에 의해, 프로토콜 콘트롤러(20)의 포트 A에 접속되어야 하는 IC 카드(330)으로부터의 데이터나 C4/C8 신호는, 선택기(345)에 의해 선택되어 프로토콜 콘트롤러(20)의 포트 A에 입력되고, 프로토콜 콘트롤러(20)의 포트 B에 접속되어야 할 IC 카드(330)로부터의 데이터나 C4/C8 신호는 선택기(345B)에 의해 선택되어 프로토콜 콘트롤러(20)의 포트 B에 입력된다. 또, ICCi(i=0∼5)에 접속되어야 할 프로토콜 콘트롤러(20)의 포트 A 또는 B로부터의 데이터나 C4/C8 신호는 선택기(342-i)에 의해 선택되어, 래치 회로(343-i) 및 3 상태 입출력 포트(344-i)를 거쳐 ICCi에 출력된다.
도 30에서 나타낸 바와 같이, 디멀티플렉서(340)에서 프로토콜 콘트롤러(20)로부터 IC 카드(330)에 단방향으로 통신되는 신호(리세트 신호)를 위한 전환 회로에는, 선택기(347-0∼347-5), 래치 회로(348-0∼348-5) 및 3 상태 입출력 포트(349-0∼349-5)가 구비되어 있다.
선택기(347-0∼347-5)는 게이트 콘트롤러(341)에 의해 제어되며, 프로토콜 콘트롤러(20)의 두 개의 포트 A, B로부터 출력된 리세트 신호 중 어느 한 쪽을 선택적으로 전환하여 6개의 IC 카드(330; ICC0∼ICC5) 측으로 각각 출력되는 것이다.
래치 회로(348-0∼348-5)는 게이트 콘트롤러(341)에 의해 제어되며, 각각 ICC0∼ICC5가 비억세스 대상인 경우 비억세스 상태로 천이되기 직전에 선택기(342-0∼342-5)로부터 출력된 리세트 신호를 래치하는 것이다.
3 상태 입출력 포트(349-0∼349-5)는 각각 ICC0∼ICC5가 비억세스 대상인 경우 또는 ICC0∼ICC5에 대해 출력해야 할 신호가 "1" 즉 하이 상태인 경우, 하이 임피던스 상태가 되도록 게이트 콘트롤러(341)에 의해 제어되는 것이다.
상술한 구성에 의해 ICCi(i=0∼5)에 접속되어야 할 프로토콜 콘트롤러(20)의 포트 A 또는 B로부터의 리세트 신호는, 선택기(347-i)에 의해 선택되고, 래치 회로(348-i) 및 3 상태 입출력 포트(349-i)를 거쳐 ICCi에 출력된다.
도 31에서 나타낸 바와 같이, 디멀티플렉서(340)에서 IC 카드(330)로부터 프로토콜 콘트롤러(20)에 단방향으로 통신되는 신호 (IC 카드 장착 통지 신호)를 위한 전환 회로에는 선택기(351A, 351B)가 구비되어 있다.
전술한 대로, 프로토콜 콘트롤러(20)의 포트 A, B와 IC 카드(330)용 포트 0∼5의 사이에는 IC 카드 장착 통지선이 구비되어 있고, 포트 0∼5 각각에 IC 카드(ICC0∼ICC5; 330)가 장착되어 있는지의 여부의 정보 (IC 카드 장착 통지 신호)가 프로토콜 콘트롤러(20)의 포트 A, B (IC 카드 제어 회로(36A, 36B)에 단방향으로 통지되도록 되어 있다.
그리고, 선택기(351A, 351B)는 게이트 콘트롤러(341)에 의해 제어되며, 6개의 IC 카드(330)로부터 출력된 IC 카드 장착 통지 시호 중 어느 하나를 선택적으로 전환하여 프로토콜 콘트롤러(20)의 포트 A, B에 출력하는 것이다.
상술한 구성에 의해, 프로토콜 콘트롤러(20)의 포트 A에 접속되야 할 IC 카드(330)로부터의 IC 카드 장착 통지 신호는 선택기(345A)에 의해 선택되어 프로토콜 콘트롤러(20)의 포트 A에 입력되고, 프로토콜 콘트롤러(20)의 포트 B에 접속되야 할 IC 카드(330)로부터의 IC 카드 장착 통지 신호는 선택기(345B)에 의해 선택되어 프로토콜 콘트롤러(20)의 포트 B에 입력된다.
도 32는 본 실시 형태의 프로토콜 콘트롤러(20)에 접속되는 최대 6개의 IC 카드(330)에 전원 공급계의 구성을 나타낸 것이다. 또, 이 도 32에서도, 6개의 IC 카드(330; ICC0∼ICC5)는 각각 포트 번호 0∼5를 부여한 실재의 카드 포트 (이하, 포트 0∼5으로 표기함)에 장착된다.
도 32에서 나타낸 바와 같이, 본 실시 형태의 전원 공급계는, 도 11을 참조하면서 전술한 대로, 디멀티플렉서(340), 전압 선택기(360) 및 파워 레귤레이터 (전원 조절기; 370)로 구성되어 있다.
여기에서, 전술한 바와 같이, 파워 레귤레이터(370)는 3V와 5V 두 종류의 전압을 생성, 출력하는 것으로, 전압 선택기(360)는 디멀티플렉서(340)로부터의 지시에 따라서, 3V 또는 5V의 전압을 선택하여 각 IC 카드(330)에 인가 공급되는 것이다.
그리고, 전압 선택기(360)는 2입력 1출력의 선택기(361-0∼361-5)를 구비하여 구성된다. 이들 선택기(361-0∼361-5)는 디멀티플렉서(340; 게이트 콘트롤러(341))에 의해 제어되고, 각각 ICC0∼ICC5가 장착되어 있는 경우, 항상 파워 레귤레이터(370)으로부터의 2 종류의 전압 3V, 5V 중 어느 한 쪽을 선택적으로 전환하여 6개의 IC 카드(330; ICC0∼ICC5)에 전원으로서 공급하는 것이다.
이 때, 디멀티플렉서(340; 게이트 콘트롤러(341))는 프로토콜 콘트롤러(20)의 카드용 전원 제어 회로(42; 도 11 참조)로부터의 신호에 따라서, 전압 선택기(360)의 선택기(360-0∼361-5)를 제어한다.
상술한 구성에 의해, ICCi(i=0∼5)에 공급해야 할 전원 전압이 3V인 경우에는, 파워 레귤레이터(370)로부터의 전압 3V의 전원이 선택기(361-i)에 의해 선택되어 ICCi에 공급되는 한편, ICCi(i=0∼5)에 공급해야 할 전원 전압이 5V인 경우에는, 파워 레귤레이터(370)으로부터의 전압 5V의 전원이 선택기(361-i)에 의해 선택되어 ICCi에 공급된다.
또, 도 11에서 도시한 대로, 본 실시 형태의 프로토콜 콘트롤러(20)에 대해 접속할 수 있는 최대 6개의 IC 카드(330) 각각에 대해서는, 프로토콜 콘트롤러(20)에서의 6개의 카드용 클럭 생성 회로(38)로부터 클럭 신호선(350)을 통해 공급해야 할 클럭 신호(제어 클럭)가 각각 공급된다. 즉, 본 실시 형태에서는, 각 IC 카드(330)에서 이용될 수 있는 클럭 신호는 프로토콜 콘트롤러(20)로부터 IC 카드(330)와 동수(6개)의 클럭 신호선(350)을 통해 각 IC 카드(330)에 공급되는 한편, 6개의 IC 카드(330)가 디멀티플렉서(340)을 거쳐 프로토콜 콘트롤러(20)의 두 개의 포트 A, B에 설치된 데이터 전송용 신호선 (데이터선, C4 신호선, C8 신호선, 리세트 신호선 등)을 공용한다.
다음에, 프로토콜 콘트롤러(20)의 카드 선택 회로(43)로부터 디멀티플렉서(340)에의 선택 신호 CDSEL[0:4]에 대해서, 도 33 및 도 34를 참조하여 설명한다. 또, 도 33은 본 실시 형태의 프로토콜 콘트롤러(20)에서, 디멀티플렉서(340)에 선택 신호 CDSEL[0:4]를 출력할 때에 이용되는 IC 카드 포트 할당 레지스터(CDSEL)의 구성을 도시한 도면이고, 도 34는 이 IC 카드 포트 할당 레지스터의 각 비트의 의미를 설명하기 위한 도면이다.
도 33에서 나타낸 바와 가이, IC 카드 포트 할당 레지스터 (CDSEL)는 예를 들면 논리 어드레스 002080에 설정된 1 바이트 데이터이고, 그 하위 5비트(비트 번호 0∼4)가 이용된다.
이와 같은 5비트의 선택 신호 CDSEL[0:4]를 도 34에 나타낸 바와 같이 설정함으로써, 프로토콜 콘트롤러(20)의 포트 A에 접속해야 할 IC 카드(330) (ICC0∼ICC5 중 어느 하나)와, 프로토콜 콘트롤러(20)의 포트 B에 접속해야 할 IC 카드(330) (포트 A에 접속되는 IC 카드(330) 이외의 것)가 선택된다.
단, 도 34에서 나타낸 바와 같이, 선택 신호 CDSEL[0:4]의 5 비트를 모두 "0"으로 한 경우에는, 이 선택 신호 CDSEL[0:4]는 디멀티플렉서(340; 래치 회로(343-0∼343-5, 348-0∼348-5를 포함)의 리세트 지시 신호로서 이용된다. 또, 선택 신호 CDSEL[0:4]의 5 비트를 모두 "1"로 한 경우에는, 이 선택 신호 CDSEL[0:4]는 IC 카드(330)에 대한 모든 출력 신호를 래치 회로(343-0∼343-5, 348-0∼348-5)에 의해 래치하기 위한 래치 지시 신호로서 이용된다.
다음에, 선택 신호 CDSEL[0:4]에 의한 디멀티플렉서(340)의 구체적인 전환 동작에 대해서는, 도 35 및 도 36을 참조하여 후술한다. 또, 도 35 및 도 36은 둘 다 본 실시 형태에서의 디멀티플렉서(340)의 전환 동작을 설명하기 위한 타임 챠트이다.
도 35에서, 프로토콜 콘트롤러(20)가 두 개의 포트 A, B로부터 일정 주기의 방형파를 항상 출력하고 있는 상태에서 선택 신호 CDSEL[0:4]에 의해 디멀티플렉서(340)를 제어하여 포트 A, B와 접속되는 IC 카드(330; ICC0∼ICC6)를 전환한 경우에 대해서, 디멀티플렉서(340)로부터 각 IC 카드(330; ICC0∼ICC6)에 출력되는 신호 파형이 나타나 있다.
도 36에서는, IC 카드(330; ICC0∼ICC6)가 일정 주기의 방형파를 항상 출력하고 있는 상태에서, 프로토콜 콘트롤러(20)가 선택 신호 CDSEL[0:4]에 의해 디멀티플렉서(340)을 제어하여 포트 A, B와 접속되는 IC 카드(330; ICC0∼ICC6)를 전환한 경우에 대해서, 디멀티플렉서(340)로부터 프로토콜 콘트롤러(20)의 포트 A, B에 입력되는 신호 파형이 나타나 있다.
이들 도 35 및 도 36에서, 시각 t0∼t1에서는, 선택 신호 CDSEL[0:4]가 "11101"에서 포트 A에는 ICC5가 접속됨과 동시에 포트 B에는 ICC3이 접속된다. 동일하게, 시각 t2∼t3에서는, 선택 신호 CDSEL[0:4]가 "11110"에서 포트 A에는 ICC5가 접속됨과 동시에 포트 B에는 ICC4가 접속되고, 시각 t8∼t9에서는, 선택 신호 CDSEL[0:4]가 "1"에서 포트 A에는 ICC0이 접속됨과 동시에 포트 B에는 ICC1이 접속되고, 시각 t10∼t11에서는 선택 신호 CDSEL[0:4]가 "10"에서 포트 A에는 ICC0이 접속됨과 동시에 포트 B에는 ICC2가 접속되고, 시각 t12∼t13에서는, 선택 신호 CDSEL[0:4]가 "11"에서 포트 A에는 ICC0이 접속됨과 동시에 포트 B에는 ICC3이 접속된다. 또, 시각 t4∼t5 및 t6∼t7에서는, 선택 신호 CDSEL[0:4]가 "0"이기 때문에, 전술한 대로 리세트 신호 XRST(로액티브)가 생성되어 있다.
도 35에서 나타낸 바와 같이, 디멀티플렉서(340)로부터 각 IC 카드(330; ICC0∼ICC6)에 출력되는 신호는, 선택 신호 CDSEL[0:4]에 의해 접속처의 IC 카드(330)가 전환될 때마다 래치되어, 전환 직전의 상태가 유지되어 있다. 그리고, 선택된 IC 카드(330)에는 대응하는 포트 A 또는 B로부터의 신호가 출력된다.
도 36에서 나타낸 바와 같이, 각 IC 카드(330(ICC0∼ICC6)로부터 디멀티플렉서(340)에 입력된 신호는, 선택 신호 CDSEL[0:4]에 따라서 대응하는 포트 A 또는 B로부터 전환 출력된다.
도 11을 참조하여 전술한 대로, 프로토콜 콘트롤러(20)에서는 포트 A, B 마다 IC 카드 제어 회로(36A, 36B)가 구비되어 있고, 각 IC 카드 제어 회로(36A, 36B)가 프로토콜 콘트롤러(20) 내의 CPU(21)로부터의 지시를 받아 동작함으로써, 프로토콜 콘트롤러(20)로부터 각 IC 카드(330)에 대한 억세스가 행해지게 된다.
또, 통신중의 각 IC 카드(330)는 각 IC 카드 제어 회로(36A, 36B)로부터의 코맨드를 수신하면, 그 코맨드에 따른 리스폰스를 각 IC 카드 제어 회로(36A, 36B)에 송신한다. 통신 중 이외(비억세스 대상)의 IC 카드(330)는 클럭 신호선(350)에 의해 클럭 신호를 공급하면서 전압 선택기(360) 및 파워 레귤레이터(370)에 의해 소정 전압(3V/5V)의 전원 공급을 받아, 코맨드 대기 상태가 되어 있으므로, 언제라도 각 IC 카드 제어 회로(36A, 36B)로부터의 코맨드를 수신할 수 있도록 되어 있다.
그리고, 프로토콜 콘트롤러(20)에 복수의 IC 카드(330)을 접속한 상태에서, 프로토콜 콘트롤러(20)의 CPU(21)로부터의 지시를 받은 두 개의 IC 카드 제어 회로(36A, 36B)가 동시에 동작함으로써, 두 개의 포트 A, B에 디멀티플렉서(340)를 거쳐 접속된 두 개의 휴대용 매체(330)에 대한 억세스가 행해지고 있다. 이와같이 하여 두 개의 휴대용 매체(330)에 대한 억세스를 동시에 행함으로써, 처리 장치(300)는 두 개의 휴대용 매체(330과 330) 사이에서 데이터 전송 처리를 행하고 있다.
이와 같이, 본 실시 형태에서의 데이터 전송 제어 방법에 의하면, 디멀티플렉서(340)를 이용하여 두 개의 포트 A, B와 6개의 IC 카드(330) 간의 접속 상태의 전환을 행함으로써, 프로토콜 콘트롤러(20) 측에서의 포트 수보다 많은 IC 카드(330)에 대해 억세스할 수 있기 때문에, 프로토콜 콘트롤러(20)에 의해 제어해야 할 IC 카드(330)의 수를 증가시키는 경우, 프로토콜 콘트롤러(20) 측의 포트나 IC 카드 제어 회로를 증가시킬 필요가 없어진다.
따라서, 프로토콜 콘트롤러(20)의 제조 비용을 증대시키지 않고, 제어 대상의 IC 카드(330)의 수를 증가시킬 수 있다. 특히, 본 실시 형태와 같이, 집적화된 프로토콜 콘트롤러(20)에서는, 제어 대상의 IC 카드(330)의 수를 증대시켜도, 다수개의 라인이나 IC 카드 제어 회로를 고밀도로 집적할 필요가 없어지고, 제조 비용이나 회로 규모의 삭감에 현저히 기여한다.
또, 비억세스 대상의 IC 카드(330)에 대한 신호 상태를 래치하여 둠으로써, 그 IC 카드(330)가 비억세스 대상으로부터 억세스 대상으로 전환한 직후에 그 IC 카드(330)에 대한 신호 상태가 불안정하게 되는 것을 확실하게 방지할 수 있다.
또한, 프로토콜 콘트롤러(20)로부터의 억세스 신호 CDSEL[0:4]를 이용하여, 디멀티플렉서(340)에 의한 전환 동작 및 래치 회로(343-0∼343-5, 348-0∼348-5)의 래치 동작을 리세트하고, 복수의 IC 카드(330)에 대한 모든 출력 신호를 래치 회로(343-0∼343-5, 348-0∼348-5)에서 래치할 수 있기 때문에, 다양한 상황에 대응하여 디멀티플렉서(340)의 동작 상태나 래치 상태를 용이하게 제어할 수 있다.
또, 프로토콜 콘트롤러(20)에 접속되는 IC 카드(330)의 개수가 2개 이하인 경우에는, 외부의 디멀티플렉서(340)을 이용하지 않고, 프로토콜 콘트롤러(20)의 두 개의 포트 A, B로부터 직접적으로 IC 카드(330)를 제어하여도 좋다.
또, 본 실시 형태에서는, 디멀티플렉서(340)를 프로토콜 콘트롤러(20)와는 별개로 하고 있지만, 디멀티플렉서(340)를 프로토콜 콘트롤러(20)와 동일한 칩 상에 집적하여 프로토콜 콘트롤러(20)와 일체화하여도 좋다.
또한, 본 실시 형태에서는, 프로토콜 콘트롤러(20)의 포트수가 2, 프로토콜 콘트롤러(20)에 접속되는 IC 카드(330)의 최대 개수가 6인 경우에 대해서 설명하고 있지만, 본 발명은 이들 수에 한정되는 것은 아니다.
[4] 그 외
또, 본 발명은 상술한 실시 형태에 한정되는 것은 아니고, 본 발명의 취지를 이탈하지 않는 범위에서 다양하게 변형하여 실시할 수 있다.
예를 들면, 상술한 실시 형태에서는, 휴대용 매체가 IC 카드인 경우에 대해 설명하고 있지만, 본 발명은 이에 한정되는 것은 아니고, 예를 들면 광 카드, 무선 카드 등의 휴대용 매체에도 동일하게 적용되며, 상술한 실시 형태와 동일한 작용 효과를 얻을 수 있다.
또, 상술한 실시 형태에서는, 전자 화폐가 2종류인 경우에 대해 설명했지만, 본 발명은 이에 한정되지 않고, 3 종류 이상의 전자 화폐를 취급하는 경우이면, 각 전자 화폐의 프로토콜에 대응한 프로토콜 제어 프로그램을 구비하여 제어 프로그램(5A나 5B)을 구성함으로써, 상술한 실시 형태와 동일한 작용 효과를 얻을 수 있다.
게다가, 상술한 실시 형태에서는, 본 발명의 집적 회로를 적용한 장치가 전자 화폐를 데이터로서 취급하는 각종 취인 장치인 경우에 대해서 설명했지만, 본 발명은 이에 한정되는 것은 아니고, 휴대용 매체에 격납될 수 있는 각종 데이터 (의료 데이터, 개인 데이터 등)를 취급하는 각종 장치에도 적용되며, 상술한 실시 형태와 동일한 작용 효과를 성취할 수 있다.
이상 상술한 바와 같이, 본 발명의 프로토콜 제어용 집적 회로(청구항 1∼23)에 의하면, 전자 화폐를 취급하기 위해 필요한 하드웨어 (인퍼테이스 회로나 주변 제어 회로)나 소프트웨어 (복수의 다른 방식의 전자 화폐용 프로토콜에 대응하여 작성된 제어 프로그램)을 하나의 칩 상에 집적하여 집적 회로가 구성되어 있기 때문에, 범용성이 극히 높은 집적 회로를 제공할 수 있으며, 그 집적 회로를 전자 화폐 대응의 각종 취인 장치에서 공통으로 이용할 수 있으며, 각종 취인 장치의 설계 개발 공정수를 대폭으로 삭감할 수 있으며, 인정 기관 등에 의한 인정 공정수(인정을 받기 위한 검증 공정수)도 대폭으로 삭감될 수 있으면서, 신뢰성의 향상 및 높은 보안 성능을 실현할 수 있는 효과가 있다.
또, 본 발명의 프로토콜 제어용 집적 회로(청구항 24)에 의하면, 프로토콜이 다른 복수 방식의 데이터 통신을 행하기 위해 필요한 하드웨어나 제어 프로그램이나 소프트웨어를 하나의 칩 상에 집적하고 있기 때문에, 범용성이 극히 높은 집적 회로를 제공할 수 있으며, 그 집적 회로를 휴대용 매체와 통신하여 데이터의 수취를 행하는 각종 장치에서 공통으로 이용할 수 있으며, 각종 장치의 설계, 개발 공정수를 대폭으로 삭감할 수 있으며, 인정 기관 등에 의한 인정 공정수 (인정을 받기 위한 검증 공정수)도 대폭으로 삭감할 수 있음과 동시에, 신뢰성의 향상 및 높은 보안 성능을 실현할 수 있는 효과가 있다.

Claims (24)

  1. 통화의 전자적 상징으로서 정의되는 전자 화폐에 대응 가능하게 구성되는 장치에 조립되는 프로토콜 제어용 집적 회로에 있어서,
    복수의 다른 방식의 전자 화폐용 프로토콜에 대응하여 작성된 제어 프로그램을 격납한 기억부;
    상기 기억부에 격납된 상기 제어 프로그램을 실행함으로써, 상기 복수의 다른 방식의 전자 화폐의 취급을 제어하는 처리부; 및
    외부 처리부 또는 외부 기억부중 적어도 한 쪽을 포함하는 외부 회로에 접속되어, 상기 외부 회로와 상기 처리부 사이의 인터페이스 기능을 달성하는 인터페이스 회로
    를 한 쪽의 칩 상에 집적하여 구성되는 프로토콜 제어용 집적 회로.
  2. 제1항에 있어서, 전자 화폐의 처리에 관련되는 제어 기능을 달성하는 주변 제어 회로를 상기 칩 상에 집적하여 구성되는 프로토콜 제어용 집적 회로.
  3. 제2항에 있어서, 상기 주변 제어 회로로서, 상기 처리부 및 상기 제어 프로그램에 의해 제어되며, 전자 화폐를 격납한 휴대용 매체에 대한 제어를 행하는 매체 제어 회로가 포함되어 있는 프로토콜 제어용 집적 회로.
  4. 제2항에 있어서, 상기 주변 제어 회로로서, 상기 처리부 및 상기 제어 프로그램에 의해 제어되며, 외부 장치와의 통신을 제어하는 통신 제어 회로가 포함되어 있는 프로토콜 제어용 집적 회로.
  5. 제2항에 있어서, 상기 주변 제어 회로로서, 상기 처리부 및 상기 제어 프로그램에 의해 제어되며, 외부의 표시 장치를 제어하는 표시 제어 회로가 포함되어 있는 프로토콜 제어용 집적 회로.
  6. 제2항에 있어서, 상기 주변 제어 회로로서, 상기 처리부 및 상기 제어 프로그램에 의해 제어되며, 외부의 입력 장치로부터의 신호의 입력 처리를 행하는 입력 제어 회로가 포함되어 있는 프로토콜 제어용 집적 회로.
  7. 제1항에 있어서, 상기 기억부와 상기 집적 회로의 외부 접속 단자의 사이가 논리적으로 차단됨과 함께, 상기 제어 프로그램이 상기 집적 회로의 제조 시점에서 상기 기억부에 격납되는 프로토콜 제어용 집적 회로.
  8. 제1항에 있어서, 상기 인터페이스 회로를 거쳐 프로그램 격납용 외부 기억부가 상기 외부 회로로서 접속되어 있는지의 여부를 판별하는 식별 수단을 내장하고,
    상기 식별 수단에 의해 상기 프로그램 격납용 외부 기억부가 접속되어 있다고 판별된 경우에는, 상기 처리부가 상기 프로그램 격납용 외부 기억부에 격납되어 있는 프로그램을 실행하는 프로토콜 제어용 집적 회로.
  9. 제8항에 있어서, 상기 식별 수단은, 상기 프로그램 격납용 외부 기억부와의 접속용으로 미리 할당된 1 이상의 논리 어드레스를 판독하고, 그 판독 결과로서 얻은 값과 소정치를 비교함으로써, 상기 프로그램 격납용 외부 기억부의 접속/비접속을 판별하는 프로토콜 제어용 집적 회로.
  10. 제2항에 있어서, 상기 제어 프로그램은,
    상기 인터페이스 회로에 접속된 상기 외부 회로 또는 상기 주변 제어 회로를 디바이스로서 제어하는 하나 이상의 디바이스 제어 프로그램;
    상기 복수의 다른 방식의 전자 화폐 각각에 대응하여, 상기 디바이스 제어 프로그램을 제어하는 복수의 프로토콜 제어 프로그램; 및
    상기 디바이스 제어 프로그램 및 상기 프로토콜 제어 프로그램을 제어하는 어플리케이션 프로그램
    으로 구성되어 있는 프로토콜 제어용 집적 회로.
  11. 제10항에 있어서, 상기 어플리케이션 프로그램은,
    상기 복수의 다른 방식의 전자 화폐 중 하나를 지정하는 전자 화폐 종별 필드와 상기 복수의 다른 방식의 전자 화폐에 공통의 취인(transaction) 종별을 지정하는 취인 종별 필드를 포함하는 제어 전문(control telegraphic statement)을 받으면,
    상기 전자 화폐 종별 필드에서 지정된 전자 화폐에 대응하는 상기 프로토콜 제어 프로그램에 의해 상기 취인 종별 필드에서 지정된 취인을 행하게 하는 프로토콜 제어용 집적 회로.
  12. 제11항에 있어서, 상기 어플리케이션 프로그램은,
    상기 디바이스 제어 프로그램을 지정하는 디바이스 종별 필드와 상기 디바이스 제어 프로그램으로의 제어 명령을 기술하는 명령 필드를 포함하는 상기 제어 전문을 받으면,
    상기 디바이스 종별 필드에서 지정된 상기 디바이스 제어 프로그램에 상기 명령 필드에 기술된 명령을 통지하여 상기 명령을 실행시키고,
    상기 명령에 대한 상기 디바이스 제어 프로그램으로부터의 응답을 응답 전문으로서 상기 명령의 발생원에 송신하는 프로토콜 제어용 집적 회로.
  13. 제12항에 있어서, 상기 제어 전문에서 상기 전자 화폐 종별 필드와 상기 디바이스 종별 필드를 동일한 필드에서 공용하고, 상기 필드를 상기 전자 화폐 종별 필드로서 이용할 때의 지정 데이터와 상기 필드를 상기 디바이스 종별 필드로서 이용할 때의 지정 데이터를 상호 배타적인 값으로 하는 프로토콜 제어용 집적 회로.
  14. 제13항에 있어서, 상기 제어 전문에서 상기 취인 종별 필드와 상기 명령 필드를 동일한 필드에서 공용하는 프로토콜 제어용 집적 회로.
  15. 제10항에 있어서, 상기 제어 프로그램은, 상기 디바이스 제어 프로그램, 상기 프로토콜 제어 프로그램 및 상기 어플리케이션 프로그램을 모듈로서 가짐과 함께, 이들 모듈의 상호간을 접속할 수 있는 인터페이스 기능을 제공하는 경로 제어 프로그램을 갖고 구성되며,
    상기 모듈 각각에 고유의 모듈 식별자가 부여되며,
    상기 경로 제어 프로그램은 접속 요구원 모듈의 모듈 식별자와 접속 상대처 모듈의 모듈 식별자를 파라미터로서 이용하여 상기 모듈 상호간을 접속하는 프로토콜 제어용 집적 회로.
  16. 제10항에 있어서, 상기 주변 제어 회로로서 외부 장치와의 통신을 제어하는 통신 제어 회로가 포함되고,
    상기 제어 프로그램은, 상기 디바이스 제어 프로그램, 상기 프로토콜 제어 프로그램 및 상기 어플리케이션 프로그램을 모듈로서 가짐과 함께, 이들 모듈 상호간을 접속할 수 있는 인터페이스 기능을 제공하는 경로 제어 프로그램과 상기 통신 제어 회로를 제어하는 통신 제어 프로그램을 갖고 구성되며,
    상기 경로 제어 프로그램은, 접속 상대처 모듈이 상기 외부 장치에 속하는 경우, 상기 통신 제어 프로그램에 의해 제어되는 상기 통신 제어 회로를 거쳐 상기 집적 회로에서의 접속 요구원 모듈과 상기 외부 장치에서의 상기 접속 상대처 모듈을 접속하는 프로토콜 제어용 집적 회로.
  17. 제16항에 있어서, 상기 집적 회로에 속하는 상기 모듈 각각과 상기 외부 장치에 속하는 모듈 각각에 고유의 모듈 식별자가 부여됨과 함께, 상기 집적 회로 및 상기 외부 장치 각각에 고유의 경로 식별자가 부여되며,
    상기 경로 제어 프로그램은 상기 접속 요구원 모듈의 모듈 식별자와 상기 접속 상대처 모듈의 모듈 식별자와 상기 경로 식별자를 파라미터로서 이용하여 상기 모듈의 상호간을 접속하는 프로토콜 제어용 집적 회로.
  18. 제17항에 있어서, 상기 모듈 식별자와, 그 모듈 식별자를 부여한 모듈이 속하는 상기 집적 회로 또는 상기 외부 장치를 나타내는 경로 식별자와의 대응 관계를 유지하는 테이블을 구비하고,
    상기 경로 제어 프로그램은,
    상기 접속 상대처 모듈의 모듈 식별자로 상기 테이블을 검색하고, 상기 접속 상대처 모듈의 모듈 식별자에 대응하는 경로 식별자를 얻어,
    그 경로 식별자가 상기 집적 회로의 경로 식별자와 일치하는 경우에는 상기 집적 회로 내에서 상기 접속 요구원 모듈과 상기 접속 상대처 모듈을 접속하는 한편,
    그 경로 식별자가 상기 집적 회로의 경로 식별자와 일치하지 않는 경우에는, 상기 접속 상대처 모듈이 상기 외부 장치에 속하는 것이라고 판단하여, 상기 통신 제어 회로를 거쳐, 상기 집적 회로에서의 접속 요구원 모듈과 상기 외부 장치에서의 상기 접속 상대처 모듈을 접속하는 프로토콜 제어용 집적 회로.
  19. 제18항에 있어서, 상기 테이블에 유지되는 상기 대응 관계가, 상기 통신 제어 회로에서 수신된 전문에 의해 설정/변경 가능하게 구성되어 있는 프로토콜 제어용 집적 회로.
  20. 제18항에 있어서, 상기 테이블은, 상기 인터페이스 회로를 거쳐 접속된 상기 외부 회로로서의 상기 외부 기억부에 격납되어 있는 프로토콜 제어용 집적 회로.
  21. 제16항 내지 제20항 중 어느 한 항에 있어서, 상기 외부 장치는, 상기 집적 회로와 동일한 기능을 갖는 처리 장치인 프로토콜 제어용 집적 회로.
  22. 제16항 내지 제20항 중 어느 한 항에 있어서, 상기 외부 장치는, 상기 집적 회로와 동일한 구성을 갖는 다른 집적 회로인 프로토콜 제어용 집적 회로.
  23. 제16항 내지 제20항 중 어느 한 항에 있어서, 상기 외부 장치는, 상기 집적 회로의 상기 경로 제어 프로그램에 대하여 상기 집적 회로에 속하는 모듈과의 접속 요구를 발생시킬 수 있는 어플리케이션 프로그램을 갖는 처리 장치이고,
    상기 경로 제어 프로그램은 상기 통신 제어 프로그램에 의해 제어되는 상기 통신 제어 회로를 거쳐 상기 처리 장치로부터 상기 접속 요구를 받는 경우, 상기 집적 회로에서의 해당 모듈과 상기 처리 장치를 접속하는 프로토콜 제어용 집적 회로.
  24. 휴대용 매체와 통신하여 데이터의 수취를 행하는 장치에 조립되는 프로토콜 제어용 집적 회로에 있어서,
    복수의 다른 방식의 데이터 통신용 프로토콜에 대응하여 작성된 제어 프로그램을 격납한 기억부;
    상기 기억부에 격납된 상기 제어 프로그램을 실행시킴으로써, 상기 복수의 다른 방식의 데이터 통신을 제어하는 처리부; 및
    외부 처리부 또는 외부 기억부 중 적어도 한 쪽을 포함하는 외부 회로에 접속되어, 상기 외부 회로와 상기 처리부 간의 인터페이스 기능을 달성하는 인퍼페이스 회로
    를 하나의 칩 상에 집적하여 구성되는 프로토콜 제어용 집적 회로.
KR10-1999-0040885A 1998-10-22 1999-09-22 프로토콜 제어용 집적 회로 KR100538193B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP1998-301498 1998-10-22
JP30149898A JP3537680B2 (ja) 1998-10-22 1998-10-22 プロトコル制御用集積回路

Publications (2)

Publication Number Publication Date
KR20000028708A true KR20000028708A (ko) 2000-05-25
KR100538193B1 KR100538193B1 (ko) 2005-12-22

Family

ID=17897647

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0040885A KR100538193B1 (ko) 1998-10-22 1999-09-22 프로토콜 제어용 집적 회로

Country Status (6)

Country Link
US (1) US6968995B1 (ko)
EP (1) EP0996101B1 (ko)
JP (1) JP3537680B2 (ko)
KR (1) KR100538193B1 (ko)
CN (1) CN100382088C (ko)
DE (1) DE69932301D1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100669516B1 (ko) * 2004-11-02 2007-01-19 김유정 통신기능이 구비된 가전기기 및 홈서버와 이를 위한 기록매체

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001318745A (ja) * 2000-05-11 2001-11-16 Sony Corp データ処理装置およびデータ処理方法、並びに記録媒体
US7292876B2 (en) * 2002-10-08 2007-11-06 Sonion Nederland B.V. Digital system bus for use in low power instruments such as hearing aids and listening devices
JP2004355085A (ja) * 2003-05-27 2004-12-16 Nippon Telegr & Teleph Corp <Ntt> 電子価値移転方法及び該方法に使用するサービス提供装置とサービス利用装置
GB0501196D0 (en) * 2005-01-20 2005-03-02 Rue De Int Ltd Deposit unit and system
CN100534039C (zh) * 2006-06-22 2009-08-26 北京飞天诚信科技有限公司 一种处理符合usb接口规范的信息载体的金融交易终端及其工作方法
US9177313B1 (en) 2007-10-18 2015-11-03 Jpmorgan Chase Bank, N.A. System and method for issuing, circulating and trading financial instruments with smart features
US9897986B2 (en) 2013-10-29 2018-02-20 Regal Beloit America, Inc. System and method for enabling a motor controller to communicate using multiple different communication protocols
CN105701065A (zh) * 2016-01-15 2016-06-22 浪潮电子信息产业股份有限公司 一种协议表可变更协议处理器的实现方法
CN107025559B (zh) 2017-01-26 2020-09-18 创新先进技术有限公司 一种业务处理方法及装置
CN113722120B (zh) * 2021-07-30 2024-04-05 龙芯中科(太原)技术有限公司 集成电路及其实现程序开发的方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2168514A (en) * 1984-12-12 1986-06-18 Ibm Security module
JP3034362B2 (ja) 1990-11-22 2000-04-17 株式会社日立製作所 周辺制御装置およびscsiバス制御装置
DE4406602C2 (de) * 1994-03-01 2000-06-29 Deutsche Telekom Ag Sicherheitssystem zum Identifizieren und Authentisieren von Kommunikationspartnern
JPH07262025A (ja) 1994-03-18 1995-10-13 Fujitsu Ltd 実行制御システム
US5577121A (en) * 1994-06-09 1996-11-19 Electronic Payment Services, Inc. Transaction system for integrated circuit cards
US5590038A (en) * 1994-06-20 1996-12-31 Pitroda; Satyan G. Universal electronic transaction card including receipt storage and system and methods of conducting electronic transactions
US5596642A (en) * 1994-09-30 1997-01-21 Electronic Payment Services, Inc. Network settlement performed on consolidated information
GB9513379D0 (en) 1995-06-30 1995-09-06 Jonhig Ltd Electronic purse system
JPH09128464A (ja) 1995-11-02 1997-05-16 Kokusai Gijutsu Kaihatsu Kk 電子マネー
US5796832A (en) * 1995-11-13 1998-08-18 Transaction Technology, Inc. Wireless transaction and information system
CA2192017C (en) * 1995-12-08 2000-04-25 Masayuki Ohki Ic card reader/writer and method of operation thereof
EP0807907A1 (en) * 1996-05-13 1997-11-19 Thomas De La Rue Limited System for securely accessing data from smart cards
JPH10247187A (ja) 1997-03-06 1998-09-14 Nec Eng Ltd 1チップマイクロコンピュータ
DE19710249C2 (de) * 1997-03-12 2002-03-28 Siemens Nixdorf Inf Syst Netzwerkunterstütztes Chipkarten-Transaktionsverfahren und Anordnung zur Abwicklung von Transaktionen
US6220510B1 (en) * 1997-05-15 2001-04-24 Mondex International Limited Multi-application IC card with delegation feature
DE19728011C2 (de) * 1997-07-01 2003-03-27 Ibm Integriertes Zahlungsmodul für ein Terminal
US6250557B1 (en) * 1998-08-25 2001-06-26 Telefonaktiebolaget Lm Ericsson (Publ) Methods and arrangements for a smart card wallet and uses thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100669516B1 (ko) * 2004-11-02 2007-01-19 김유정 통신기능이 구비된 가전기기 및 홈서버와 이를 위한 기록매체

Also Published As

Publication number Publication date
DE69932301D1 (de) 2006-08-24
JP3537680B2 (ja) 2004-06-14
EP0996101A2 (en) 2000-04-26
CN100382088C (zh) 2008-04-16
CN1252582A (zh) 2000-05-10
EP0996101B1 (en) 2006-07-12
JP2000132615A (ja) 2000-05-12
KR100538193B1 (ko) 2005-12-22
US6968995B1 (en) 2005-11-29
EP0996101A3 (en) 2003-09-24

Similar Documents

Publication Publication Date Title
KR100285111B1 (ko) 카드 인터페이스
EP0996067B1 (en) Method of recognition of a device connection state and processing unit having function of such recognition
US6896116B2 (en) Bill acceptor
US7685328B2 (en) Generic universal serial bus device operable at low and full speed and adapted for use in a smart card device
KR100538193B1 (ko) 프로토콜 제어용 집적 회로
US6932269B2 (en) Pass-code identification device and pass-code identification method
KR20080089299A (ko) 마이크로프로세서 카드
JP2003091704A (ja) 不揮発性メモリを備えた記憶装置及びその記憶装置が着脱自在な情報処理装置
US6641045B1 (en) Portable electronic device with self-diagnostic function
JP2003030613A (ja) 記憶装置及び記憶装置を備えたデータ処理装置
US10552826B2 (en) Selecting an application on a card
EP0996066B1 (en) Method and system for data transfer control
EP1146421A2 (en) Control method and electronic device to enhance the functionality of a main processor
CN1767544B (zh) 信息处理系统的下位装置、下位装置用动作控制程序及动作控制方法
KR100390366B1 (ko) 복합 카드 리더기 및 그 제어방법
JP3526287B2 (ja) 携帯可能電子装置及びそのデータ書込方法
US20030149877A1 (en) Smart card with keypro function
JP2002304605A (ja) Icカード
JP2003187193A (ja) カードリーダ及びカードリーダの通信制御方法
JP2000259789A (ja) Icカード処理装置
JPH07325894A (ja) Icカード制御装置
CN103366141A (zh) 一种读卡器

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

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20121121

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee