KR100441533B1 - 반도체장치에사용된주변디바이스식별방법 - Google Patents

반도체장치에사용된주변디바이스식별방법 Download PDF

Info

Publication number
KR100441533B1
KR100441533B1 KR1019970012303A KR19970012303A KR100441533B1 KR 100441533 B1 KR100441533 B1 KR 100441533B1 KR 1019970012303 A KR1019970012303 A KR 1019970012303A KR 19970012303 A KR19970012303 A KR 19970012303A KR 100441533 B1 KR100441533 B1 KR 100441533B1
Authority
KR
South Korea
Prior art keywords
peripheral device
connection terminal
identification
semiconductor device
identifying
Prior art date
Application number
KR1019970012303A
Other languages
English (en)
Other versions
KR970072438A (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 KR970072438A publication Critical patent/KR970072438A/ko
Application granted granted Critical
Publication of KR100441533B1 publication Critical patent/KR100441533B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B10/00Static random access memory [SRAM] devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Stored Programmes (AREA)
  • Microcomputers (AREA)
  • Storage Device Security (AREA)

Abstract

탑재가 예상되는 주변 디바이스에 대한 제어 프로그램, 주변 디바이스의 사양을 식별하는 식별 프로그램 및 그들의 식별에 따라서 대응하는 제어 프로그램을 선택하는 프로그램이 준비되어 실행된다.
따라서, 주변 디바이스의 사양마다 대응하는 제어 프로그램만을 반도체 장치에 격납하도록 관리할 필요가 없기 때문에, 반도체 장치의 제조가 복잡하게 되는 것을 방지할 수 있다.

Description

반도체 장치에 사용된 주변 디바이스 식별방법{ Method of identifying peripheral device employed in a semiconductor device }
본 발명은 마이크로 프로세서(이하, "MPU"라고 칭한다)를 갖는 반도체 장치에 관한 것으로, 특히, 반도체 장치의 입/출력포트(이하, I/O포트라고 칭한다)에 전기적으로 접속되어 사용된 불휘발성 메모리 등의 주변 디바이스의 사양(仕樣)을 식별하는 방법에 관한 것이다.
최근의 MPU를 탑재한 반도체 장치에 있어서, 제어 프로그램을 그 내부에 격납하기 위한 판독 전용 메모리(이하, ROM이라 칭한다) 및 처리 데이터를 그 내부에 기록하고 그곳으로부터 그것을 판독하기 위한 랜덤 액세스 메모리(이하, RAM이라 칭한다) 외에, 주변 디바이스를 탑재함으로, MPU와의 협동처리에 의해 그 처리 동작의 확장 등이 가능하다. 주변 디바이스는, 반도체 장치의 I/O 포트를 통해 MPU 등과 전기적으로 접속된다. 주변 디바이스에는 여러가지 사양이 있다. 예를 들면, 1개 주변 디바이스에 대응하는 불휘발성 메모리의 경우에서도, 공지된 2종류, 즉 주변 디바이스가 2개의 접속단자로 MPU와 전기적으로 접속되는 2선식의 것과, 주변디바이스가 5개의 접속단자로 MPU에 전기적으로 접속되는 5선식의 것이 있다. 이와 같이, 반도체 장치에 탑재된 주변 디바이스의 사양(접속단자수)이 서로 다르기 때문에, 각각의 주변 디바이스에 대응하는 제어 프로그램을 준비 또는 제공할 필요가 있다. 더구나, 주변 디바이스를 탑재하지 않은 것도 있기 때문에, 그것을 위해 제어 프로그램을 준비할 필요가 있다.
이러한 제어 프로그램은, MPU와 함께 반도체 장치에 내장된 ROM 또는 MPU에 내장된 메모리에 격납될 것이다.
그러나, 이런 경우에 있어서는, 반도체 장치가 주변 디바이스의 탑재의 유무, 또는, 주변 디바이스의 사양에 대응하는 제어 프로그램을 그 내부에 격납하는 ROM을 개별적으로 준비해야 하다. 따라서, 반도체 장치의 제조가 복잡하게 된다.
특히, 제어 프로그램을 MPU에 내장된 메모리에 준비하는 경우, MPU를 제조하기 위한 포토마스크를 내장 메모리에 격납된 제어 프로그램의 종류마다 준비해야 하다. 따라서, MPU의 제조가 복잡하게 될 뿐만 아니라, 제조비용이 증가한다고 하는 문제점이 있었다.
또한, 그것의 제조가 복잡하게 되는 사실 때문에, 양산이 어렵다고 하는 문제점도 있었다.
본 발명은 상기 문제점를 감안하여 이루어진 것으로, 그 목적은 제조의 복잡성, 비용의 증가 및 양산의 곤란을 해소하여, 주변 디바이스의 사양에 관계없이 그것의 제조를 공통으로 행할 수 있는 반도체 장치를 제공하는 것에 있다.
또한, 본 발명의 다른 목적은, 반도체 장치에 특별한 구성을 추가하는 일 없이 상기한 목적을 실현하는 것에 있다.
본 발명의 일면에 따르면, 상기 목적을 달성하기 위해서, 마이크로 프로세서를 탑재하고, 적어도 제1접속단자 및 제2접속단자로 마이크로 프로세서와 전기적으로 접속 가능하며, 마이크로 프로세서와 협동하여 동작을 실행하는 주변 디바이스를 갖는 반도체 장치에 사용된 주변 디바이스를 식별하는 방법이 제공되는데, 상기 방법은
제1메모리로부터 주변 다바이스를 식별하기 위한 식별 프로그램을 판독하는 제1단계와,
제1접속단자에 신호를 출력하는 제2단계와,
제2접속단자로부터 출력된 신호를 수신하는 3단계와,
제2단계에서 출력된 신호와 제3단계에서 수신된 신호를 비교하는 4단계와,
제4단계에서 얻어진 비교 결과에 응답하여 상기 주변 디바이스를 식별하는 제5단계와,
식별결과를 그 내부에 격납하는 제6단계를 포함한다.
또한, 상기 목적을 달성하기 위해, 상기 반도체 장치는, 제1접속단자에 신호를 출력하는 제1수단과, 제2접속단자로부터 출력된 신호를 수신하는 제2수단과, 제1수단으로부터 출력된 신호와 제2수단에 의해 수신된 신호를 비교하는 비교수단과, 상기 비교수단에 의한 비교 결과에 응답하여 주변 디바이스를 식별하는 식별수단을 포함한다.
더구나, 상기한 목적을 달성하기 위해, 상기 제1수단, 상기 제2수단, 상기 비교수단 및 상기 식별수단은 마이크로 프로세서로 구성된다.
본 발명의 또 다른 일면에 따르면, 상기 목적을 달성하기 위해, 마이크로 프로세서를 탑재하고, 적어도 제1접속단자 내지 제4접속단자로 마이크로 프로세서와 전기적으로 접속 가능하며, 마이크로 프로세서와 협동하여 동작을 실행하며, 그것의 사양에 따라 그 내부에 탑재되는 주변 디바이스를 갖는 반도체 장치에 사용된 주변 디바이스를 식별하는 방법이 제공되는데, 상기 방법은,
반도체 장치에 사용된 주변 디바이스를 식별하는 식별 프로그램을 제1메모리에 격납하는 단계와,
제1접속단자 및 제3접속단자에 신호를 각각 출력하는 단계와,
제2접속단자 및 제4접속단자로부터 출력된 신호를 각각 수신하는 단계와,
출력 단계에서 출력된 신호와 수신 단계에서 수신된 신호를 비교하는 단계와,
비교 단계에서 얻어진 비교 결과에 응답하여 주변 디바이스를 식별하는 단계와,
식별결과를 제2메모리에 격납하는 단계를 포함한다.
더구나, 상기 목적을 달성하기 위해, 상기 반도체 장치는, 제1접속단자 및 제3접속단자에 신호를 각각 출력하는 제1수단과, 제2접속단자 및 제4접속단자로부터 출력된 신호를 각각 수신하는 제2수단과, 제1수단으로부터 출력된 신호와 제2수단에 의해 수신된 신호를 비교하는 비교수단과, 상기 비교수단에 의한 비교 결과에응답하여 주변 디바이스를 식별하는 식별수단을 구비한다.
또한, 상기 목적을 달성하기 위해, 상기 비교수단은 제1접속단자 및 제2접속단자의 신호들간의 비교와 제3접속단자 및 제4접속단자의 신호들간의 비교를 수행하고, 상기 식별수단은 비교수단에 의한 비교결과로부터 반도체 장치에 탑재된 주변 디바이스의 종류를 식별한다.
본 출원의 다양한 발명 중의 일반적인 것들은 간략히 나타내었다. 그러나, 본 출원의 다양한 발명 및 이들 발명의 특정한 구성은 이하의 설명으로부터 알게 될 것이다.
본 명세서는 본 발명에서 주목하는 문제를 지적하고 뚜렷하게 주장하는 청구범위로 결말을 짓지만, 본 발명의 목적 및 특징, 그것의 다른 목적, 특징 및 이점은 첨부 도면을 의거하여 얻어진 이하의 설명으로부터 보다 더 이해될 것이라고 고려된다.
도 1은 본 발명의 제1실시예에 따른 반도체 장치의 구성을 나타낸 블록도,
도 2는 식별 프로그램 및 제어 프로그램을 격납한 ROM 내의 메모리 영역를 나타낸 개략도,
도 3은 도 2에 나타낸 식별 프로그램의 실행 내용을 나타낸 플로우차트,
도 4는 주변 디바이스가 미탑재된 반도체 장치를 나타낸 개략 블록도,
도 5는 도 1에 나타낸 MPU의 구성을 나타낸 개략도,
도 6은 본 발명의 제2실시예에 따른 반도체 장치의 구성을 나타낸 블록도,
도 7은 본 발명의 제2실시예에 따른 반도체 장치의 구성을 식별할 수 있는 식별 프로그램의 실행 내용을 나타낸 플로우차트,
도 8은 식별결과를 사용한 제어 프로그램의 선택을 나타낸 플로우차트이다.
* 도면의 주요 부분에 대한 부호의 설명 *
1 : MPU 3 : ROM
5 : RAM 7 : 버스선
9 : I/O포트
10 : 주변 디바이스(5선식의 불휘발성 메모리)
20 : 주변 디바이스(2선식의 불휘발성 메모리)
21∼25 : 단자 51 : 시퀀스 제어부
53 : 연산부 55 : 타이밍 제어부
57 : 레지스터부 59 : 입출력 버퍼부
61 : 내부 버스선
이하, 본 발명의 실시예에 관해서 도면을 참조하여 상세히 설명한다.
도 1는 제1실시예에 따른 반도체 장치의 구성 블록도이다. 도 1에 있어서, 1은 MPU, 3은 ROM, 5은 RAM, 7은 복수의 버스선, 9는 I/O포트, 10은 주변 디바이스를 각각 나타낸다. ROM(3)은 제어 프로그램, 식별 프로그램 등을 격납하기 위해 사용된다. RAM(5)은 반도체 장치에 의해 처리된 데이터를 기록하고 그것으로부터 데리터를 판독하기 위해 사용된다. 복수의 버스선(7)은 MPU(1), ROM(3), RAM(5)에 각각 전기적으로 접속되고, 이들의 사이의 신호의 전송에 사용된다. I/O 포트(9)는버스선(7)으로부터 전송된 데이터를 주변 디바이스(10)에 출력하거나, 주변 디바이스(10)로부터 전송된 데이터를 수신하여 버스선(7)으로 그것을 전송하기 위해 사용된다. 본 실시예에 있어서, 주변 디바이스는 5선식의 불휘발성 메모리이다.
이 불휘발성 메모리(10)의 데이터 입력단자(DI)는 I/O 포트(9)의 단자(21)에 전기적으로 접속되어 있다. 데이터 출력단자(DO)는 I/O 포트(9)의 단자(22)에 전기적으로 접속되어 있다. 칩선택단자(CS)는 I/O 포트(9)의 단자(23)에 전기적으로 접속되어 있다. 준비/사용(ready/busy) 단자 R/B는 I/O 포트(9)의 단자(24)에 전기적으로 접속되어 있다. 클럭단자(CLK)는 I/O 포트(9)의 단자(25)에 전기적으로 접속되어 있다. 따라서, 불휘발성 메모리(10)는 I/O 포트(9)를 통해 불휘발성 메모리(10)와 MPU(1) 등 사이에서 데이터를 전송할 수 있다. 여기에서, 데이터라는 용어는, 어드레스 데이터 및 연산 등에 사용되는 처리 데이터뿐만 아니라, 각종 동작 제어를 위한 제어신호를 포함해서 "데이터"로 불린다.
도 2는 식별 프로그램 및 제어 프로그램이 격납된 ROM(3) 내의 메모리 영역을 나타내는 개략도이다.
ROM(3)에 있어서, 예를 들면, 도 2에 나타낸 바와 같이, 어드레스 10000∼어드레스 1FFFF에는, 주변 디바이스가 5선식의 불휘발성 메모리인 경우에 대응하는 제어를 위해 의도된 제어 프로그램(1)이 격납되어 있다. ROM(3) 내에 있어서, 어드레스 20000∼어드레스 2FFFF에는, 후술하는 주변 디바이스가 2선식의 불휘발성 메모리인 경우에 대응하는 제어를 위해 의도된 제어 프로그램(2)이 격납되어 있다. 더구나, ROM에 있어서, 어드레스 30000∼어드레스 3FFFF에는, 주변 디바이스가 미탑재된 경우에 대응하는 제어를 위해 의도된 제어 프로그램(3)이 격납되어 있다. 더욱이, 어드레스 40000∼어드레스 4FFFF에는, 주변 디바이스의 사양을 식별하는 식별 프로그램이 격납되어 있다. 본 실시예에 있어서, 제어 프로그램과 식별 프로그램은 어드레스 10000∼4FFFF의 연속한 영역에 격납되어 있지만, 프래그램 판독제어를 수행할 수 있는 것이면, 그 프로그램을 반드시 연속하여 격납할 필요는 없다.
도 3은 도 2에 나타낸 식별 프로그램의 실행내용을 나타낸 플로우차트이다.
이 식별 프로그램은, 반도체 장치의 전원이 투입된 경우와, MPU(1)가 리셋된 경우에, RAM(5)에 의해 ROM(3)로부터 판독되어 RAM(5)의 초기화 등의 초기 설정 동작에 따라서 실행된다.
도 3을 참조하면, 우선, 스텝 S1으로서, 상기 설명된 것처럼 MPU(1)는 식별 프로그램의 실행을 개시한다. 스텝 S2에서, MPU(1)는 I/O 포트(9)의 단자(21)에 데이터 "1"을 출력한다. 이 I/O 포트(21)로부터 전송된 데이터는 불휘발성 메모리(10)의 입력단자(DI)로 전송된다. 스텝 S3에서, MPU(1)는, I/O 포트(9)의 단자(22)에 수신된 데이터가 단자(21)로부터 입력된 데이터와 동일한지 아닌지를 확인한다. 도 1에서, 단자(22)는 불휘발성 메모리(10)의 출력단자(DO)에 전기적으로 접속되어 있고, 불휘발성 메모리(10)는 초기 설정 시간 때문에 출력지시를 아직 받지 않는다. 따라서, 불안정한 출력, 예를 들면, 데이터 "0"과 같은 고임피던스 상태의 출력 또는 고정된 출력을 단자(22)로부터 출력한다. 따라서, 스텝 S3에서, 단자(22)에서는 고임피던스 상태 또는 데이터 "0"을 유지하기 때문에, 상기 데이터가 단자(21)로부터 입력된 데이터와 일치하지 않는다는 것을 알게 된다. 따라서, 스텝S10에서 규정된 바와 같이, 주변 디바이스로서 불휘발성 메모리(10)가 접속되어 있다고 인식 또는 식별한다. 그 인식된 정보를 RAM(5) 내의 소정의 어드레스에 기록한다.
상기 언급된 바와 같이, I/O 포트(9)의 단자(22)에 수신된 데이터를, 불휘발성 메모리(10)의 초기 출력에 대응하는 "0" 또는 고임피던스 상태로서 설명하였다. 그러나, 단자(22)에 수신된 데이터가 "1"인 경우(불휘발성 메모리(10)의 초기 출력이 "1"인 경우), 단자(21)로부터 입력된 데이터가 단자(22)에 수신된 데이터와 일치한다. 이 경우에, MPU(1)는 스텝 S4로 진행한다. 스텝 S4에 있어서, MPU(1)는 I/O 포트(9)의 단자(21)에 데이터 "0"을 입력한다. 스텝 S5에서, MPU(1)는 I/O 포트(9)의 단자(22)에 수신된 데이터가 단자(21)로부터 입력된 데이터와 동일한지 아닌지를 확인한다. 단자(22)에는 데이터 "1"이 수신되어 있기 때문에, 데이터 "1"이 단자(21)로부터 입력된 데이터 "0"과 일치하지 않는다. 따라서, MPU(1)는 상기 스텝(S10)의 처리를 수행한다.
따라서, 주변 디바이스로서 불휘발성 메모리(10)가 접속되어 있는 것을 인식할 수 있다.
다음에, 반도체 장치에 주변 디바이스가 미탑재된 경우에 관해서 설명한다.
도 4는 주변 디바이스가 미탑재된 반도체 장치를 나타내는 개략적인 블록도이다.
도 4에 있어서, 도 1에 나타낸 것과 동일한 구성 소자에는 같은 참조부호를 붙이고 있다.
도 4를 참조하면, 반도체 장치는 I/O 포트(9)의 단자(21, 22) 및 단자(23, 24)를 단락하여, 단자들 21 및 22 사이와 단자들 23 및 24 사이를 전기적으로 접속하는 것을 특징으로 한다. 이 때문에, 도 3에 나타낸 식별 프로그램을 실행한 경우, 단자(21)로부터 데이터 "1" 및 데이터 "0"이 입력되면(스텝 S2 및 S4), 그 데이터는 단자(22)로 공급된다. 따라서, 단자(21)로부터 입력된 데이터는 단자(22)에 수신된 데이터와 일치하게 된다(스텝 S3 및 S5). 그 후, 이와 유사하게, 단자(23)로부터 데이터 "1"이 입력된다(스텝 S6). 또한, 단자(23)로부터 입력된 데이터가 단자(24)에 수신된 데이터와 일치한지 아닌지에 관해서 확인을 한다(스텝 S7). 또한, 단자(23)로부터 데이터 "0"이 입력되고(스텝S8), 단자(23)로부터 입력된 데이터가 단자(24)에 수신된 데이터와 일치한지 아닌지에 관해서 확인을 한다(스텝 S9). 이 일치 확인시에도 일치가 검출되기 때문에, MPU(1)는 스텝 S11의 처리, 즉, 반도체 장치에 주변 디바이스가 미탑재되어 있다고 인식할 수 있다. 이 인식된 정보를 RAM(5)의 소정의 어드레스 내에 기록한다.
이와 같이, 식별 프로그램을 실행함으로써 주변 디바이스의 사양(상기 설명까지는 주변 디바이스의 유무)을 확인할 수 있고, 그 확인된 정보를 격납할 수 있다.
여기에서, 상기 식별 프로그램의 실행에 있어서는, 적어도 단자(21, 23)에서 데이터 "1" 및 "0"을 생성하여 그곳으로부터 그들을 출력하는 수단(스텝 S2, S4, S6, S8)과, 단자(22, 24)로부터 출력된 데이터를 수신하여 단자(21, 23)로부터 입력된 데이터와 수신된 데이터를 비교하는 수단(스텝 S3, S5, S7, S9)과, 비교 결과에 따라서 주변 디바이스의 사양을 식별하여 그 식별된 정보를 출력하는 수단(스텝 S10, S11)과, 식별정보를 소정의 메모리 내에 기록하도록 제어하는 수단(스텝 S10, S11)이 필요하다. 이들 수단은, 특별한 구성으로서 준비될 수도 있다. 그러나, MPU(1)의 기능을 이용하면, 이들 모든 동작을 실현할 수 있다.
도 5에 MPU(1)의 구성을 개략적으로 나타낸다. MPU(1)는 도 5를 사용하여 설명한다. 참조 부호 51, 53, 55, 57, 59 및 61은 각각 시퀀스 제어부, 연산부, 타이밍 제어부, 레지스터부, 입/출력 버퍼와 ROM(3) 등 사이에서 데이터를 전송하기 위해 버스선(7)에 전기적으로 접속된 입/출력 버퍼와 같은 다른 장치 및 내부 버스선출 나타낸다.
상기 시퀀스 제어이부(51)는 식별 프로그램, 제어 프로그램 등과 같은 판독프로그램을 디코드하여, 다른 구성 또는 소자의 동작을 제어하는 신호를 발생한다. 연산부(53)는 각종 데이터에 관한 연산 동작을 수행한다. 타이밍 제어부(55)는 클럭신호 등을 수신하여, 각 구성 소자를 활성화하기 위해 제공된 타이밍를 제어한다. 레지스터부(57)는 연산 동작 등에 사용되는 데이터 등을 격납하는 복수의 레지스터를 갖는다. 내부 버스선(61)은 상기 언급된 각 장치 사이에서 데이터를 전송을 하기 위해 사용된다.
상기 설명된 바와 같이 구성된 MPU(1)에 있어서, 시퀀스 제어부(51)는 식별프로그램을 디코드한다. 이 디코드 결과에 근거하여 각각의 구성 소자가 제어된다. 예를 들면, 단자(21, 23)에 데이터 "1" 및 "0"을 생성하여 그들을 출력하는 수단으로서 레지스터부(57)의 2개의 레지스터가 사용된다. 상기 데이터 "1" 및 데이터"0"은 2개의 레지스터에 각각 격납된다. 이 격납된 데이터는 입/출력 버퍼부(59)로부터 단자(21) 또는 단자(23)에 대응하는 버스선(7)에 공급될 수도 있다. 또한, 연산부(53)는 단자(21, 23)로부터 입력된 데이터를 비교하는 수단으로서 사용된다. 본 실시예에 있어서, 연산부(53)는, 예를 들면 단자(21, 23)로부터 입력된 데이터가 서로 일치한 경우, 가산결과가 "2" 또는 "0"으로 되기 때문에 가산 동작을 수행한다. 그 가산결과는 비교 결과로서 사용될 수 있다. 또한, 비교 결과에 따라서 주변 디바이스의 사양을 식별하여, 그 식별정보를 출력하는 수단 및 식별정보를 소정의 메모리에 기록하도록 제어하는 수단으로서 레지스터부(57)의 레지스터를 사용하여, 시퀀스 제어부(51)가 레지스터 내에 격납된 데이터의 가산결과에 따라서 제어신호를 출력한다. 각 식별 정보는 그 제어신호에 따라서 판독이 지시되는 레지스터부(57)의 레지스터 내에 각각 격납될 수도 있다. 이 제어신호의 출력에 응답하여, RAM(5)에 기록 지시를 한다. 이 경우, 미리 소정의 어드레스가 주어지도록 정보를 기록하기 위해 RAM(5) 내부의 각 타깃 어드레스를 제어할 필요가 있다. 각 어드레스를 그것의 대응하는 레지스터 등에 격납하는 것은 당연 가능하다.
상기 설명된 바와 같이, 식별 프로그램은 식별 프로그램의 특별한 구성을 제공할 필요없이 실행될 수 있다. 상기 MPU(1)에서의 각 부의 동작은, 어디까지나 예시이고, 이것에 한정되는 것이 아니다.
다음에, 제2실시예로서 사양에 있어서 상기와 다른 주변 디바이스가 탑재된 반도체 장치에 관해 도 6을 참조하여 설명한다.
도 6을 참조하면, 상기 반도체 장치는 주변 디바이스로서 2선식의 불휘발성메모리(20)가 I/O 포트(9)에 전기적으로 접속되어 있는 것을 특징으로 한다. 즉, 이 불휘발성 메모리(20)에 사용된 직렬 클럭단자(SCLK)와 직렬 데이터단자(SDATA)에 해당하는 2개의 단자가 I/O 포트(9)의 단자(21, 22)에 각각 전기적으로 접속되어 있다. 때문에, 단자(23, 24)는 단락된다.
도 6에 근거한 식별처리에 관해서, 도 7의 플로우차트를 사용하여 설명한다. 스텝 S31∼스텝 S35는 도 3에 나타낸 스텝 S1∼S5와 비숫하다. 예를 들면, 이 스텝 S35까지는, 본 반도체 장치는 도 1에 나타낸 주변 디바이스로서 5선식의 불휘발성 메모리(10)가 접속되어 있는 것과 구별할 수 없다. 다음에, 데이터 "1" 또는 데이터 "0"을 단자(23)에 입력한다(스텝 S36 및 S38). 또한, 단자(23)로부터 입력된 데이터와 단자(24)에 수신된 데이터를 비교하여 그들이 서로 일치하는지 아닌지를 결정한다(스텝 S37 및 S39). 따라서, 주변 디바이스의 불휘발성 메모리가 5선식인지 2선식인지를 구별할 수 있다. 즉, 2선식의 경우, 단자(23, 24)가 단락되어 있기 때문에, 스텝 S37 및 스텝 S39에 있어서도 일치라는 결과를 얻게 된다. 따라서, 2선식 및 5선식의 경우에는, 스텝 S42의 처리와 스텝 S40의 처리가 각각 실행된다. 더구나, 반도체 장치에 주변 디바이스가 미탑재된 경우는, 스텝 S41의 처리가 실행된다. 스텝 S40 내지 스텝 S42의 처리에서는, 그 식별결과를 각각 나타내는 데이터를 RAM(5)의 소정의 어드레스에 기록한다. 주변 디바이스가 5선석의 불휘발성메모리이고 2선식의 불휘발성 메모리이며, 미탑재된 경우에는, 예를 들면, 데이터 "11", 데이터 "01" 및 데이터 "00"이 식별결과에 대응하는 데이터로서 그들의 대응하는 어드레스에 기록될 수 있다.
이 제2실시예에 사용된 식별처리에 있어서도 특별한 구성을 준비할 수 있다. 그러나, 상기 식별 처리는 제1실시예에 사용된 것과 비숫한 처리 스텝으로 구성되어 있기 때문에, MPU(1)가 갖고 있는 구성에 근거하여 식별 처리를 실행할 수 있는 것은 말할 필요도 없다.
상기 식별결과를 사용한 제어 프로그램의 선택에 관해서, 도 8의 플로우차트를 사용하여 설명한다.
이 처리는, 예를 들어 주변 디바이스에 대한 액세스가 필요한 경우에 MPU(1)에 의해 수행된다. 주변 디바이스에 대한 액세스가 필요하다고 판단되거나 결정된 경우에는(스텝 S51), RAM(5)으로부터 식별정보를 판독한다(스텝 S52). 이 식별정보가 데이터 "00"인지 데이터 "01"인지를 판단한다(스텝 S53 및 S54). 식별정보가 데이터 "00"이면, ROM(3) 내의 어드레스 30000∼3FFFF에 격납된 제어 프로그램 3을 판독한다(스텝 S55). 한편, 식별정보가 데이터 "01"이면, ROM(3) 내의 어드레스 20000∼2FFFF에 격납된 제어 프로그램 2를 판독한다(스텝 S56). 식별정보가 데이터 "00" 및 "01"의 양쪽에 속하지 않으면, ROM(3) 내의 어드레스 10000∼IFFFF에 격납된 제어 프로그램 1을 판독한다(스텝 S57). 따라서, 주변 디바이스의 사양에 대응하는 각 제어 프로그램에 근거하여 MPU(1)은 주변 디바이스에 대한 액세스를 할 수 있다. 주변 디바이스에 대한 액세스가 요구될지라도, 주변 디바이스가 미탑재된 경우, 예를 들면, 주변 디바이스를 탑재하는 일없이 ROM(3)으로 대행할 수 있는 경우, MPU(1)는 ROM(3)에 대한 액세스를 한다.
부수적으로, 이 선택처리를 위해 사용된 프로그램도 예를 들면, ROM(3) 내에격납될 수 있다. 또한, 특별한 접속 수단이 식별 결과를 사용한 제어 프로그램의 선택 동작을 위해 탑재될 수도 있다. 그러나, 비교기능 및 판독기능을 갖는 것이 사용되면, 식별 프로그램과 비숫한 방법으로 제어 처리가 실행될 수 있다. 그러므로, 상기 설명된 바와 같이, MPU(1)가 그것의 처리를 대행할 수 있는 것은 말할 필요도 없다.
이상 설명된 바와 같이, 제1실시예 및 제2실시예에 따르면, 반도체 장치의 ROM에 미리 탑재될 것으로 예상되는(미탑재도 포함한다) 주변 디바이스의 제어 프로그램을 준비한다. 더구나, 주변 디바이스의 사양을 식별하는 처리와, 그 식별결과로부터 소정의 제어 프로그램을 판독하는 처리를 간단히 수행할 수 있다. 따라서, 어떤 사양의 주변 디바이스가 반도체 장치에 탑재되더라도, 그것에 대응한 제어 프로그램을 격납하는 것에 관한 제어를 수행할 필요가 없다. 따라서, 반도체 장치의 제조의 복잡성이 해소된다.
특히, 제어 프로그램이 MPU에 내장된 메모리 내에 준비된 경우, MPU를 제조하기 위한 포토마스크가 1 종류일 수도 있다. 따라서, 비용면에서의 증가도 줄일 수 있다.
이상 설명된 효과에 기인하여, 양산의 경우에 있어서도 종래와 같은 문제점이 해소된다.
부수적으로, 본 발명은, 상기한 실시예의 동작 및 각 반도체 장치의 기능에 반드시 한정되는 것이 아니다. 예를 들면, 제1실시예에서는, 식별 프로그램을 도 3에 나타낸 바와 같이, 스텝 S1∼ S11에 따라 실행한다. 그러나, 주변 디바이스의탑재의 유무만을 인식하는 것이 바람직한 경우에는, 스텝 S6∼S9를 수행하지 않아도 된다. 또한, I/O 포트(9)의 접속단자(21∼24)에 접속된 주변 디바이스가 채택되면, 그 주변 디바이스가 I/O 포트(9)와 정확하게 접속되어 있는지 아닌지에 관한 확인을 위해 스텝(S6∼S9)이 사용될 수 있다.
이상 설명된 대로, 반도체 장치는 주변 디바이스의 탑재의 유무에 관계없이 대응하는 제어 프로그램을 선택하기 때문에 제조의 복잡성을 피할 수 있다.
또한, 상기 설명된 동작을 위해 특별한 회로 구성을 준비할 필요가 없기 때문에 반도체 장치의 대형화를 방지할 수 있다.
더구나, 반도체 장치는 주변 디바이스의 탑재의 유무 및 사양에 관계없이 대응하는 제어 프로그램을 선택하기 때문에 반도체 장치의 제조가 복잡하게 되는 것을 방지할 수 있다.
본 발명은 예시한 실시예를 참조하여 설명되었지만, 이 설명은 제한적인 의미에서 해석될 것라고 의도되지 않는다. 본 발명의 다른 실시예 뿐만 아니라, 예시한 실시예의 다양한 변형은 이 설명을 참조하여 본 발명이 속하는 기술분야의 당업자에게서 분명해질 것이다. 그러므로, 첨부된 청구범위는 본 발명의 범위내에 속하기 때문에 그런 어떠한 변형 또는 실시예도 포함할 것이라고 고려된다.

Claims (8)

  1. 마이크로 프로세서를 탑재하고, 적어도 제1접속단자 및 제2접속단자에서 상기 마이크로 프로세서와 전기적으로 접속 가능하며, 상기 마이크로 프로세서와 협동하여 동작을 실행하는 주변 디바이스를 갖고, 상기 주변 디바이스가 접속되어 있지 않은 때에는 상기 제1접속단자 및 제2접속단자가 단락되게 구성된 반도체 장치에 사용된 주변 디바이스의 식별방법에 있어서,
    상기 주변 다바이스를 식별하기 위한 식별 프로그램을 제1메모리로부터 판독하는 제1단계와,
    신호를 상기 제1접속단자로 출력하는 제2단계와,
    상기 제2접속단자로부터 출력된 신호를 수신하는 제3단계와,
    상기 제2단계에서 출력된 신호와 상기 제3단계에서 수신된 신호를 비교하는 제4단계와,
    상기 제4단계에서 얻어진 비교 결과에 응답하여 상기 주변 디바이스를 식별하는 제5단계와,
    식별결과를 그 내부에 격납하는 제6단계를 구비한 것을 특징으로 하는 반도체 장치에 사용된 주변 디바이스의 식별방법.
  2. 제 1 항에 있어서,
    상기 반도체 장치는,
    상기 제1접속단자에 신호를 출력하는 제1수단과,
    상기 제2접속단자로부터 출력된 신호를 수신하는 제2수단과,
    상기 제1수단으로부터 출력된 신호와 상기 제2수단에 의해 수신된 신호를 비교하는 비교수단과,
    상기 비교수단에 의한 비교 결과에 응답하여 상기 주변 디바이스를 식별하는 식별수단을 구비한 것을 특징으로 하는 반도체 장치에 사용된 주변 디바이스의 식별방법.
  3. 제 2 항에 있어서,
    상기 제1수단, 상기 제2수단, 상기 비교수단 및 상기 식별수단은 상기 마이크로 프로세서를 구성하는 것을 특징으로 하는 반도체 장치에 사용된 주변 디바이스의 식별방법.
  4. 제 1 항에 있어서,
    상기 마이크로 프로세서는 상기 주변 디바이스의 식별 요구에 응답하여 상기 주변 디바이스를 식별하기 위한 처리를 수행하는 것을 특징으로 하는 반도체 장치에 사용된 주변 디바이스의 식별방법.
  5. 마이크로 프로세서를 탑재하고, 적어도 제1접속단자 내지 제4접속단자에서 상기 마이크로 프로세서와 전기적으로 접속 가능하며 상기 마이크로 프로세서와 협동하여 동작을 실행하고 그것의 사양에 따라 그 내부에 탑재 가능한 주변 디바이스를 갖는 반도체 장치에 사용된 주변 디바이스의 식별방법에 있어서,
    상기 반도체 장치에 사용된 상기 주변 디바이스를 식별하기 위한 식별 프로그램을 제1메모리에 격납하는 단계와,
    상기 제1접속단자 및 제3접속단자에 신호를 각각 출력하는 단계와,
    상기 제2접속단자 및 제4접속단자로부터 출력된 신호를 각각 수신하는 단계와,
    상기 출력 단계에서 출력된 신호와 상기 수신 단계에서 수신된 신호를 비교하는 단계와,
    상기 비교 단계에서 얻어진 비교 결과에 응답하여 상기 주변 디바이스를 식별하는 단계와,
    식별결과를 제2메모리에 격납하는 단계를 구비한 것을 특징으로 하는 반도체 장치에 사용된 주변 디바이스의 식별방법.
  6. 제 5 항에 있어서,
    상기 반도체 장치는,
    상기 제1접속단자 및 제3접속단자에 신호를 각각 출력하는 제1수단과,
    상기 제2접속단자 및 제4접속단자로부터 출력된 신호를 각각 수신하는 제2수단과,
    상기 제1수단으로부터 출력된 신호와 상기 제2수단에 의해 수신된 신호를 비교하는 비교수단과,
    상기 비교수단에 의한 비교 결과에 응답하여 상기 주변 디바이스를 식별하는 식별수단을 구비한 것을 특징으로 하는 방법.
  7. 제 6 항에 있어서,
    상기 비교수단은, 상기 제1접속단자 및 제2접속단자의 신호간의 비교와 상기 제3접속단자 및 제4접속단자의 신호간의 비교를 수행하고,
    상기 식별수단은, 상기 비교수단에 의한 비교 결과로부터 상기 반도체 장치내에 탑재된 주변 디바이스의 종류를 식별하는 것을 특징으로 하는 반도체 장치에 사용된 주변 디바이스의 식별방법.
  8. 제 5 항에 있어서,
    상기 마이크로 프로세서는 상기 주변 디바이스의 식별요구에 따라 상기 주변 디바이스를 식별하기 위한 처리를 수행하는 것을 특징으로 하는 반도체 장치에 사용된 주변 디바이스의 식별방법.
KR1019970012303A 1996-04-26 1997-04-03 반도체장치에사용된주변디바이스식별방법 KR100441533B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP96-107233 1996-04-26
JP107233 1996-04-26
JP10723396A JP3673015B2 (ja) 1996-04-26 1996-04-26 半導体装置における周辺デバイス識別方法

Publications (2)

Publication Number Publication Date
KR970072438A KR970072438A (ko) 1997-11-07
KR100441533B1 true KR100441533B1 (ko) 2004-10-14

Family

ID=14453872

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970012303A KR100441533B1 (ko) 1996-04-26 1997-04-03 반도체장치에사용된주변디바이스식별방법

Country Status (8)

Country Link
US (1) US6032254A (ko)
EP (2) EP0803802B1 (ko)
JP (1) JP3673015B2 (ko)
KR (1) KR100441533B1 (ko)
CN (1) CN1166652A (ko)
CA (1) CA2201201C (ko)
DE (2) DE69734910T2 (ko)
SG (2) SG88761A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI980465A (fi) 1998-02-27 1999-08-28 Nokia Mobile Phones Ltd Menetelmä palveluiden asentamiseksi
US6393585B1 (en) 1998-12-23 2002-05-21 Scientific-Atlanta, Inc. Method and apparatus for restoring operating systems in a set-top box environment
DE10204172A1 (de) * 2002-02-01 2003-08-07 Heidenhain Gmbh Dr Johannes Verfahren zur Überprüfung einer Schnittstelle
US7551165B2 (en) * 2004-03-12 2009-06-23 International Business Machines Corporation Updatable electronic labeling of electronic devices
JP2006128975A (ja) * 2004-10-28 2006-05-18 Matsushita Electric Ind Co Ltd 半導体装置
TWI459204B (zh) * 2009-03-03 2014-11-01 Htc Corp 電子裝置、電子系統以及周邊裝置自動偵測與辨識方法
KR101139630B1 (ko) * 2010-12-09 2012-05-30 한양대학교 산학협력단 식별키 생성 장치 및 방법
KR101118826B1 (ko) 2011-02-15 2012-04-20 한양대학교 산학협력단 물리적 공격을 방어하는 암호화 장치 및 암호화 방법
US9569957B2 (en) * 2012-03-08 2017-02-14 Htc Corporation Systems, devices and methods involving device identification
KR102186475B1 (ko) 2013-12-31 2020-12-03 주식회사 아이씨티케이 홀딩스 랜덤한 디지털 값을 생성하는 장치 및 방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3881174A (en) * 1974-01-18 1975-04-29 Process Computer Systems Inc Peripheral interrupt apparatus for digital computer system
KR860007588A (ko) * 1985-03-25 1986-10-15 미쓰다 가쓰시게 데이터 처리장치
US5325513A (en) * 1987-02-23 1994-06-28 Kabushiki Kaisha Toshiba Apparatus for selectively accessing different memory types by storing memory correlation information in preprocessing mode and using the information in processing mode
JP2896148B2 (ja) * 1988-09-29 1999-05-31 株式会社東芝 制御情報のリードライト制御方式
US5430859A (en) * 1991-07-26 1995-07-04 Sundisk Corporation Solid state memory system including plural memory chips and a serialized bus
US5345564A (en) * 1992-03-31 1994-09-06 Zilog, Inc. Serial communication peripheral integrated electronic circuit that recognizes its unique address before the entire circuit is enabled
US5603055A (en) * 1994-01-27 1997-02-11 Vlsi Technology, Inc. Single shared ROM for storing keyboard microcontroller code portion and CPU code portion and disabling access to a portion while accessing to the other
US5671413A (en) * 1994-10-31 1997-09-23 Intel Corporation Method and apparatus for providing basic input/output services in a computer
CA2159979C (en) * 1995-10-05 1999-05-25 Arthur Lai Methology to link any pci rom based device using a single software or hardware interrupt vector in pc system at runtime

Also Published As

Publication number Publication date
JP3673015B2 (ja) 2005-07-20
JPH09293040A (ja) 1997-11-11
EP0803802A3 (en) 2002-06-19
DE69735907T2 (de) 2006-11-30
DE69734910D1 (de) 2006-01-26
EP0803802B1 (en) 2005-12-21
EP1571551A1 (en) 2005-09-07
EP1571551B1 (en) 2006-05-17
CA2201201A1 (en) 1997-10-26
DE69734910T2 (de) 2006-08-17
US6032254A (en) 2000-02-29
DE69735907D1 (de) 2006-06-22
KR970072438A (ko) 1997-11-07
EP0803802A2 (en) 1997-10-29
SG55294A1 (en) 1998-12-21
CA2201201C (en) 2005-05-31
SG88761A1 (en) 2002-05-21
CN1166652A (zh) 1997-12-03

Similar Documents

Publication Publication Date Title
US6002638A (en) Memory device having a switchable clock output and method therefor
JP3030342B2 (ja) カード
US7233541B2 (en) Storage device
KR100441533B1 (ko) 반도체장치에사용된주변디바이스식별방법
JP4113750B2 (ja) Pcカード制御装置及びこのpcカード制御装置を備えるコンピュータシステム
US5884074A (en) Microcomputer utilizing flash memory for data storage
US5781796A (en) System for automatic configuration of I/O base address without configuration program using readout data on common bus by responding device
US6230216B1 (en) Method for eliminating dual address cycles in a peripheral component interconnect environment
JP3477306B2 (ja) 拡張入出力インターフェイス
US5263141A (en) Microprocessor with an exclusive address terminal for selecting at least one part of a peripheral device
KR920010977B1 (ko) 개선된 성능의 메모리 버스 아키텍쳐(memory bus architecture)
US6711658B2 (en) Architecture and configuring method for a computer expansion board
US7020813B2 (en) On chip debugging method of microcontrollers
US6088271A (en) Method and apparatus for transferring signal to circuit without waveform distortion
US20050149648A1 (en) Multi-purpose IO system
JP2859184B2 (ja) フィールドプログラマブルゲートアレイ
JP2003099164A (ja) 基板間の接続方法
JPH10283299A (ja) データ入力処理回路
JP4174272B2 (ja) デバイス制御装置
EP1067462A1 (en) A computer peripheral apparatus and a computer readable medium having a program for controlling the computer peripheral apparatus
JPH0236975B2 (ja) Shusekikaronrisochiniokeruchitsupushikibetsujohoyomitorihoshiki
JPH10289199A (ja) 拡張バス・インタフェース制御装置および制御方法
JPH06290137A (ja) ディジタル制御装置
JPH04232556A (ja) 実装基板管理システム
JPH04136769U (ja) データキヤリア

Legal Events

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

Payment date: 20110617

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee