KR20060047334A - 제어 장치 - Google Patents

제어 장치 Download PDF

Info

Publication number
KR20060047334A
KR20060047334A KR1020050033102A KR20050033102A KR20060047334A KR 20060047334 A KR20060047334 A KR 20060047334A KR 1020050033102 A KR1020050033102 A KR 1020050033102A KR 20050033102 A KR20050033102 A KR 20050033102A KR 20060047334 A KR20060047334 A KR 20060047334A
Authority
KR
South Korea
Prior art keywords
data
internal
flash rom
external
nonvolatile memory
Prior art date
Application number
KR1020050033102A
Other languages
English (en)
Other versions
KR100697153B1 (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 KR20060047334A publication Critical patent/KR20060047334A/ko
Application granted granted Critical
Publication of KR100697153B1 publication Critical patent/KR100697153B1/ko

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F21LIGHTING
    • F21VFUNCTIONAL FEATURES OR DETAILS OF LIGHTING DEVICES OR SYSTEMS THEREOF; STRUCTURAL COMBINATIONS OF LIGHTING DEVICES WITH OTHER ARTICLES, NOT OTHERWISE PROVIDED FOR
    • F21V33/00Structural combinations of lighting devices with other articles, not otherwise provided for
    • 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
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47GHOUSEHOLD OR TABLE EQUIPMENT
    • A47G33/00Religious or ritual equipment in dwelling or for general use
    • A47G33/02Altars; Religious shrines; Fonts for holy water; Crucifixes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Stored Programmes (AREA)

Abstract

회로 면적의 증대 및 제조 코스트의 증대를 억제하면서, 전기적으로 재기입 가능한 내부 불휘발성 메모리에 CPU의 동작 프로그램의 기입을 행할 수 있는 제어 장치를 제공한다. 다운로드 인에이블 신호를 수신한 다운로드 제어 회로(51)는, 제1 커맨드 레지스터(61)의 판독용 커맨드 세트 및 어드레스 레지스터(53)에 세트된 어드레스에 의해, 외부 시리얼 플래시 ROM(30)의 데이터를 판독하여 데이터 레지스터(54)에 일시적으로 기억한다. 그리고, 제2 커맨드 레지스터(62)의 기입용 커맨드 세트, 어드레스 레지스터(53)에 세트된 어드레스 및 데이터 레지스터(54)에 일시적으로 기억된 데이터에 의해, 내부 플래시 ROM(10)에 데이터를 기입한다.
내부 불휘발성 메모리, CPU, 다운로드 제어 회로, 커맨드 레지스터, 어드레스 레지스터, 데이터 레지스터, 내부 플래시 ROM

Description

제어 장치{CONTROL DEVICE}
도 1은 본 발명의 일 실시예를 도시하는 블록도.
도 2는 본 실시예에서의 초기 데이터의 기입 수순.
도 3은 본 실시예에서의 초기 데이터의 기입 수순.
<도면의 주요 부분에 대한 부호의 설명>
10 : 내부 플래시 ROM
20 : 마이크로컴퓨터(CPU)
30 : 외부 시리얼 플래시 ROM
40 : 외부 인터페이스
50 : 다운로드 회로
51 : 다운로드 제어 회로
52 : 플립플롭
53 : 어드레스 레지스터
54 : 데이터 레지스터
55 : 카운터
61 : 제1 커맨드 레지스터
62 : 제2 커맨드 레지스터
70 : 내부 인터페이스
100 : 제어 장치
[특허 문헌 1] 일본특허공개 평5-81012호 공보
본 발명은 제어 장치에 관한 것이다.
일반적으로, 광 디스크 드라이브 장치 등의 주변 기기에는, 각 회로의 제어를 행하기 위한 마이크로컴퓨터(CPU)의 동작 프로그램을 기억하기 위한 메모리로서, ROM이 탑재되어 있다. 최근에는, 이 ROM으로서, 데이터를 전기적으로 재기입 가능한 플래시 ROM이 사용되는 것이 일반적이다. 이는, 주변 기기의 개발 중 등에 행해지는 디버그나, 주변 기기의 기능 향상을 위한 업데이트(버전업)에 의해, 동작 프로그램의 갱신이 필요하게 되는 것에 의한다.
플래시 ROM에는 2 종류의 프로그램이 기입되어 있는데, 이는, CPU가 각 회로의 제어를 행하기 위한 상술한 동작 프로그램과, 이를 갱신하기 위한 업데이트용 프로그램이다. 주변 기기의 통상의 동작 시에는, CPU는 플래시 ROM에 기입된 동작 프로그램에 따라 각 회로의 제어를 행한다. 한편, 동작 프로그램의 갱신 시에는, CPU는 플래시 ROM에 기입된 업데이트용 프로그램에 따라 플래시 ROM에 기억된 동작 프로그램을 재기입한다.
이상의 설명은, 플래시 ROM에 동작 프로그램이나 업데이트용 프로그램이 이미 기입되어 있는 상태에서의 동작이다. 그러나, 완전한 초기 상태에서는, 당연히 플래시 ROM에는 어떤 데이터도 기입되어 있지 않다. 즉, CPU가 동작 프로그램을 플래시 ROM에 기입하기 위해서는 적어도 업데이트용 프로그램이 이미 플래시 ROM에 기입되어 있을 필요가 있지만, 완전한 초기 상태에서는 이것도 기입되어 있지 않다.
이 때문에, 종래에는, 플래시 ROM 메이커에 위탁하거나, ROM 라이터 등을 이용하거나 하여, 플래시 ROM 단체(單體)의 상태에서 미리 결정된 초기 데이터(적어도 업데이트용 프로그램을 포함하는 데이터)의 기입을 행하고 있다. 이 초기 데이터가 기입된 플래시 ROM 칩은, 그 후, 해당 기기의 프린트 기판에 납땜 등으로 실장되게 된다.
그런데, 상술한 방법에서는, 주변 기기에 플래시 ROM 칩을 실장하기 전에, 초기 데이터의 기입 작업이 별도로 필요하게 되므로, 공정이 번잡화되어 제조 코스트의 증대가 불가피하다.
따라서, 상기와는 다른 종래 기술에서는, 데이터가 기입되어 있지 않은 플래시 ROM을 실장하고, 그 후에 동작 프로그램의 기입을 행하는 방법이 채용되고 있다. 구체적으로는, 해당 기기에는, 적어도 업데이트용 프로그램을 기억한 마스크 ROM이 내장되고, 이 마스크 ROM은 CPU에 접속되어 있다. 그리고, 마스크 ROM에 기억된 업데이트용 프로그램에 따라 CPU를 동작시키고, 그 CPU가 ATA/ATAPI나 SCSI 등의 인터페이스를 통하여 외부의 호스트 컴퓨터로부터 수신한 동작 프로그램을 플래시 ROM에 기입한다.
그러나, 이 방법에서는, 적어도 업데이트용 프로그램을 기억한 마스크 ROM이 필요하지만, 이 마스크 ROM은 통상의 동작에는 사용되지 않는다. 따라서, 통상의 동작에 전혀 필요가 없는 마스크 ROM을 탑재하는 것은, 제어 장치(제어용 집적 회로)의 칩 면적을 증대시킨다. 또한, 외부에 초기 데이터를 공급하는 외부의 호스트 컴퓨터를 필요로 하기 때문에, 초기 데이터의 기입 작업을 위한 공정 코스트도 여전히 크다.
본 발명의 목적은, 회로 면적의 증대 및 제조 코스트의 증대를 억제하면서, 전기적으로 재기입 가능한 내부 불휘발성 메모리에 CPU의 동작 프로그램의 기입을 행할 수 있는 제어 장치를 제공하는 것에 있다.
상기 문제점을 해결하기 위해, 제어 장치로서, 마이크로컴퓨터에 소정의 동작 제어를 행하게 하는 동작 프로그램을 기억하기 위한 전기적으로 재기입 가능한 내부 불휘발성 메모리와, 상기 내부 불휘발성 메모리와의 입출력을 제어하는 내부 인터페이스와, 외부 불휘발성 메모리와의 입출력을 제어하는 외부 인터페이스와, 외부로부터의 지시에 의해, 상기 외부 인터페이스를 통하여 상기 외부 불휘발성 메모리에 기억된 데이터를 소정의 어드레스 단위로 판독하고, 상기 내부 인터페이스를 통하여 상기 내부 불휘발성 메모리에 상기 소정의 어드레스 단위로 상기 데이터를 기입하는 반복 동작을 제어하는 다운로드 회로를 포함하고, 외부로부터의 상기 지시에 의해 상기 다운로드 회로가 동작 중에는, 상기 마이크로컴퓨터는 슬립 상태로 되고, 상기 내부 인터페이스는 상기 내부 불휘발성 메모리와 상기 마이크로컴퓨터와의 접속을 절단하는 것을 특징으로 한다.
이하, 본 발명을 구체화한 일 실시예를 도 1에 따라서 설명한다.
도 1은, 예를 들면 CD-ROM 드라이브 장치 등의 제어 장치(100)를 도시하는 블록도이다. 도 1에 도시하는 바와 같이, 이 제어 장치(100)는, 전기적으로 재기입 가능한 내부 불휘발성 메모리인 내부 플래시 ROM(10)과, 마이크로컴퓨터(CPU)(20)와, 외부 인터페이스(40)와, 다운로드 회로(50)와, 제1 커맨드 레지스터(61)와, 제2 커맨드 레지스터(62)와, 내부 인터페이스(70)를 구비하고 있다. 내부 플래시 ROM(10)은, 공장에서의 제조 직후에는 초기 데이터(동작 프로그램 및 업데이트용 프로그램)는 기입되어 있지 않아, CPU(20)는 아무런 동작을 행할 수 없다.
이하, 본 실시예에서의 내부 플래시 ROM(10)에의 초기 데이터의 기입(다운로드) 양태에 대하여 개략을 설명한다.
제어 장치(100)는 외부 인터페이스(40)를 통하여 외부 불휘발성 메모리인 외부 시리얼 플래시 ROM(30)이 접속 가능하게 되어 있다. 다운로드할 때에는, 외부 인터페이스(40)에는 외부 시리얼 플래시 ROM(30)이 접속되어 있고, 이 외부 시리얼 플래시 ROM(30)에는 초기 데이터가 기억되어 있다. 다운로드 인에이블 신호가 외부 단자를 통하여 다운로드 회로(50)에 송신되면, 다운로드 회로(50)는 CPU(20)의 동작을 슬립시키는 제어 신호를 생성하고, 동시에 내부 인터페이스(70)는 CPU(20)와 내부 플래시 ROM(10)과의 접속을 절단한다. 따라서, 다운로드 회로(50)는 CPU(20)에 의해 저해되는 일 없이, 내부 플래시 ROM(10)의 소정 어드레스에 축차적으로 소정의 데이터를 기입할 수 있게 된다.
그 후, 다운로드 회로(50)는 외부 인터페이스(40)를 통하여 외부 시리얼 플래시 ROM(30)에 기억된 데이터를 소정의 어드레스 단위로 판독하고, 판독한 데이터를 내부 인터페이스(70)를 통하여 내부 플래시 ROM(10)에 기입한다. 이후, 다운로드 회로(50)는 소정의 어드레스 단위의 다음 데이터에 대해서도 외부 시리얼 플래시 ROM(30)으로부터 판독하고, 판독한 데이터를 내부 플래시 ROM(10)에 기입한다. 이를 내부 플래시 ROM(10)의 최종 어드레스까지 반복함으로써, 모든 데이터(동작 프로그램)를 내부 플래시 ROM(10)에 기입할 수 있다. 기입 종료 후, 다운로드 회로(50)는 내부 플래시 ROM(10)에 기입된 데이터를 베리파이한다. 베리파이 후, 다운로드 회로(50)는 기입의 종료를 나타내는 다운로드 종료 신호를 외부 단자를 통하여 외부에 송신한다. 외부에서는 다운로드 종료 신호를 수신하면 LED가 발광하도록 해 둠으로써, 내부 플래시 ROM(10)에의 초기 데이터의 기입(다운로드)의 종료를 알 수 있다.
내부 인터페이스(70)에 의해 CPU(20)와 내부 플래시 ROM(10)을 접속하고, CPU(20)의 동작을 슬립 상태로부터 개방하는 것은, 베리파이 직후에 다운로드 회로(50)가 행하여도 되고, 다운로드 종료 후의 전원 재투입에 의해 행하도록 하여도 된다.
다음으로, 본 실시예에서의 내부 플래시 ROM(10)에의 초기 데이터의 기입 양태에 대하여 상세하게 설명한다.
불휘발성 메모리로 구성된 제1 커맨드 레지스터(61)는, 외부 시리얼 플래시 ROM(30)으로부터 데이터를 판독하기 위한 커맨드 세트를 미리 기억한 레지스터 세트이다. 단, 외부 시리얼 플래시 ROM(30)으로부터의 판독용 커맨드 세트가 불필요할 때에는, 제1 커맨드 레지스터(61)는 설치하지 않아도 된다. 커맨드 세트란, 일반적으로 플래시 메모리에 액세스할 때에 필요한 커맨드로서, 복수 쌍의 커맨드 어드레스 및 커맨드 데이터를 플래시 메모리에 송신함으로써, 소거, 기입, 판독 등의 소정의 동작을 플래시 메모리에 행하게 하는 것이다. 커맨드 세트의 내용은 플래시 메모리의 규격에 따라 다르다.
또한, 제2 커맨드 레지스터(62)는, 내부 플래시 ROM(10)에 데이터를 기입하거나 혹은 내부 플래시 ROM(10)으로부터 데이터를 판독하거나 하기 위한 커맨드 세트를 기억하는 레지스터 세트이다. 제2 커맨드 레지스터(62)는 불휘발성 메모리로 구성되어도 되고, 휘발성 메모리로 구성하여 두고 외부 시리얼 플래시 ROM(30)의 소정 어드레스 영역으로부터 커맨드 세트를 판독하고 기억시켜도 된다. 이 때, 외부 시리얼 플래시 ROM(30)의 소정 어드레스 영역에는 미리 내부 플래시 ROM(10)의 커맨드 세트가 기억되어 있다.
다운로드 회로(50)는, 다운로드 제어 회로(51), 플립플롭(52), 어드레스 레지스터(53), 데이터 레지스터(54) 및 카운터(55)를 포함하여 구성되어 있다.
다운로드 제어 회로(51)는 어드레스 레지스터(53), 데이터 레지스터(54) 및 카운터(55)가 접속됨과 함께, 플립플롭(52)을 통하여 내부 인터페이스(70)에 접속되어 있다. 플립플롭(52)은 다운로드 제어 회로(51)와 내부 플래시 ROM(10) 간의 복수의 신호를 보유하도록 설치되어 있다.
어드레스 레지스터(53)는, 외부 시리얼 플래시 ROM(30) 및 내부 플래시 ROM(10)에 액세스하는 어드레스를 기억하는 레지스터이다. 데이터 레지스터(54)는, 어드레스 레지스터(53)에 기억된 어드레스에 대하여 외부 시리얼 플래시 ROM(30)으로부터 판독한 데이터를 기억하는 레지스터이다. 카운터(55)는, 내부 플래시 ROM(10)에 대한 기입에 필요한 사이클 수를 카운트하는 카운터로서, 내부 플래시 ROM(10)의 전기적 특성과 클럭 신호의 주파수에 따른 카운트 설정값(사이클 수)까지 카운트한다. 이 카운트 설정값은, 카운터(55)에 불휘발성 메모리로서 미리 기억해 두어도 되고, 외부 시리얼 플래시 ROM(30)의 소정 어드레스 영역으로부터 판독하여 휘발성 메모리에 기억시켜도 된다.
내부 플래시 ROM(10)은, 셋업이나 홀드 시간에 의해, 그 액세스의 간격에 소정 기간을 요한다. 예를 들면, 내부 플래시 ROM(10)에 데이터를 연속하여 기입하는 경우, 1개의 데이터를 기입하고 나서 다음 데이터를 기입하기까지 소정 기간 대기해야 한다. 이 소정 기간은 내부 플래시 ROM(10)의 전기적 특성에 의한 것이다.
다운로드 제어 회로(51)는 이 대기 시간을 위해 클럭 신호를 이용한다. 즉, 다운로드 제어 회로(51)는, 카운터(55)에 클럭 신호의 펄스 수를 카운트시킴으로써, 소정 기간(대기 시간)을 계측한다. 그리고, 클럭 신호의 주파수는, 이 제어 장치(100)를 탑재하는 주변 기기에 따라 다르다. 따라서, 다운로드 제어 회로(51)는 내부 플래시 ROM(10)의 전기적 특성과 주변 기기의 클럭 신호의 주파수에 따른 설정 카운트값까지 대기하고 나서 내부 플래시 ROM(10)에 액세스하여 다음 데이터 를 기입한다.
본 실시예에서의 내부 플래시 ROM(10)에의 초기 데이터의 기입 수순을 도 2 및 도 3을 이용하면서 설명한다.
최초에, 다운로드 인에이블 신호가 다운로드 제어 회로(51)에 수신된다(S10). 이에 의해, 다운로드 제어 회로(51)는 CPU(20)의 동작을 슬립시키는 제어 신호를 생성하고, 동시에 내부 인터페이스(70)는 CPU(20)와 내부 플래시 ROM(10)과의 접속을 절단하고 내부 플래시 ROM(10)과 플립플롭(52)을 접속한다(S12). 그리고, 다운로드 제어 회로(51)는, 외부 시리얼 플래시 ROM(30)에 최초로 액세스하는 어드레스(예를 들면, "0")를 어드레스 레지스터(53)에 세트한다(S14). 그리고, 제1 커맨드 레지스터(61)로부터 순차적으로 판독용 커맨드 세트를 판독하고, 판독한 커맨드 세트 및 어드레스 레지스터(53)에 세트된 어드레스를 순차적으로 외부 인터페이스(40)를 통하여 외부 시리얼 플래시 ROM(30)에 출력한다(S16). 이에 의해, 외부 시리얼 플래시 ROM(30)은, 입력된 어드레스의 데이터를 출력한다. 외부 시리얼 플래시 ROM(30)으로부터 출력된 데이터는 외부 인터페이스(40)를 통하여 다운로드 제어 회로(51)에 판독되고, 데이터 레지스터(54)에 일시적으로 기억된다(S18).
다음으로, 다운로드 제어 회로(51)는 제2 커맨드 레지스터(62)로부터 순차적으로 기입용 커맨드 세트를 판독하고, 판독한 커맨드 세트, 어드레스 레지스터(53)에 세트된 어드레스 및 데이터 레지스터(54)에 일시적으로 기억된 데이터를 순차적으로 플립플롭(52) 및 내부 인터페이스(70)를 통하여 내부 플래시 ROM(10)에 출력한다(S20). 플립플롭(52)은 내부 플래시 ROM(10)에의 기입 동작을 유지하기 위해 설치되는 것이고, 이 때문에, 내부 플래시 ROM(10)에의 기입 중에는, 다운로드 제어 회로(51)는 다른 동작을 실시할 수 있다. 또한, 다운로드 제어 회로(51)는, 플립플롭(52)에 상기의 출력을 행하면, 카운터(55)의 카운트를 스타트시킨다(S22). 카운터(55)는, 예를 들면 인크리먼트 카운터이고, 도시하지 않은 기준 클럭 신호의 펄스 수를 카운트한다. 그리고, 카운터(55)는 그 카운트값이 다운로드 제어 회로(51)의 설정 카운트값과 일치하는 경우에는 소정 레벨의 카운트 종료 신호를 다운로드 제어 회로(51)에 출력하고, 카운트값을 리세트한다. 다운로드 제어 회로(51)는 소정 레벨의 카운트 종료 신호에 응답하여 내부 플래시 ROM(10)에 대한 다음 액세스를 할 수 있다는 것을 검지한다.
그런데, 다운로드 제어 회로(51)는 카운터(55)의 카운트를 스타트시킴과 함께, 어드레스 레지스터(53)의 어드레스를 갱신(예를 들면, 카운트업)하고, 외부 시리얼 플래시 ROM(30)에 다음으로 액세스하는 어드레스를 어드레스 레지스터(53)에 세트한다(S24). 그리고, 다운로드 제어 회로(51)는, 어드레스 레지스터(53)에 세트된 어드레스가 내부 플래시 ROM(10)의 최종 어드레스 설정값 이하인지의 여부를 판정한다(S26). 이 최종 어드레스 설정값은 다운로드 제어 회로(51)에 불휘발성 메모리로서 미리 기억해 두어도 되고, 외부 시리얼 플래시 ROM(30)의 소정 어드레스 영역으로부터 판독하여 휘발성 메모리에 기억시켜도 된다. 최종 어드레스 설정값 이하인 경우에는, 제1 커맨드 레지스터(61)로부터 순차적으로 판독용 커맨드 세트를 판독하고, 판독한 커맨드 세트 및 어드레스 레지스터(53)에 세트된 어드레스를 순차적으로 외부 인터페이스(40)를 통하여 외부 시리얼 플래시 ROM(30)에 출력 한다(S28). 이에 의해, 외부 시리얼 플래시 ROM(30)은, 입력된 어드레스의 데이터를 출력한다. 외부 시리얼 플래시 ROM(30)으로부터 출력된 데이터는 외부 인터페이스(40)를 통하여 다운로드 제어 회로(51)에 판독되고, 데이터 레지스터(54)에 일시적으로 기억된다(S30).
그리고, 다운로드 제어 회로(51)는 카운터(55)로부터의 카운트 종료 신호가 출력되는 것을 대기한다(S32). 카운트 종료 신호가 출력되면 단계 S20으로 진행하여, 다운로드 제어 회로(51)는 제2 커맨드 레지스터(62)로부터 순차적으로 기입용 커맨드 세트를 판독하고, 판독한 커맨드 세트, 어드레스 레지스터(53)에 세트된 어드레스 및 데이터 레지스터(54)에 일시적으로 기억된 데이터를 순차적으로 플립플롭(52) 및 내부 인터페이스(70)를 통하여 내부 플래시 ROM(10)에 출력한다.
이후, 단계 S20으로부터 단계 S32까지를 반복하고, 어드레스 레지스터(53)에 세트된 어드레스가 내부 플래시 ROM(10)의 최종 어드레스 설정값을 초과하면, 다운로드 제어 회로(51)는 카운터(55)로부터의 카운트 종료 신호가 출력되는 것을 대기하고(S34), 베리파이의 단계로 진행한다.
또한, 제2 커맨드 레지스터(62)의 커맨드 세트, 카운트 설정값, 최종 어드레스 설정값을 휘발성 메모리에 기억시키는 경우에는, 단계 S10 후, 시리얼 플래시 ROM(30)의 소정 어드레스(예를 들면, 내부 플래시 ROM(10)의 최종 어드레스보다 큰 어드레스 영역)로부터 판독하여 기억시킨다. 그리고, 단계 S12로 진행하면 된다.
베리파이에서는, 우선, 다운로드 제어 회로(51)는, 외부 시리얼 플래시 ROM(30)에 최초로 액세스하는 어드레스(예를 들면, "0")를 어드레스 레지스터(53) 에 세트한다(S40). 제1 커맨드 레지스터(61)로부터 순차적으로 판독용 커맨드 세트를 판독하고, 판독한 커맨드 세트 및 어드레스 레지스터(53)에 세트된 어드레스를 순차적으로 외부 인터페이스(40)를 통하여 외부 시리얼 플래시 ROM(30)에 출력한다(S42). 이에 의해, 외부 시리얼 플래시 ROM(30)은, 입력된 어드레스의 데이터를 출력한다. 외부 시리얼 플래시 ROM(30)으로부터 출력된 데이터는 외부 인터페이스(40)를 통하여 다운로드 제어 회로(51)에 판독되고, 데이터 레지스터(54)에 일시적으로 기억된다(S44).
다음으로, 다운로드 제어 회로(51)는 제2 커맨드 레지스터(62)로부터 순차적으로 판독용 커맨드 세트를 판독하고, 판독한 커맨드 세트, 어드레스 레지스터(53)에 세트된 어드레스를 순차적으로 플립플롭(52) 및 내부 인터페이스(70)를 통하여 내부 플래시 ROM(10)에 출력한다(S46). 이에 의해, 내부 플래시 ROM(10)은, 입력된 어드레스의 데이터를 출력한다. 내부 플래시 ROM(10)으로부터 출력된 데이터는 내부 인터페이스(70)를 통하여 플립플롭(52)에 판독된다(S48).
다운로드 제어 회로(51)는, 플립플롭(52)에 기억된 데이터와 데이터 레지스터(54)에 기억된 데이터를 비교한다(S50).
양 데이터가 일치하지 않는 경우에는, 다운로드 제어 회로(51)는 다운로드 에러 신호를 출력한다.
양 데이터가 일치하는 경우에는, 다운로드 제어 회로(51)는 어드레스 레지스터(53)의 어드레스를 갱신(예를 들면, 카운트업)하고, 외부 시리얼 플래시 ROM(30)에 다음으로 액세스하는 어드레스를 어드레스 레지스터(53)에 세트한다(S52). 그 리고, 다운로드 제어 회로(51)는, 어드레스 레지스터(53)에 세트된 어드레스가 내부 플래시 ROM(10)의 최종 어드레스 설정값 이하인지의 여부를 판정한다(S54). 최종 어드레스 설정값 이하인 경우에는 단계 S42로 되돌아가 단계 S42∼S54를 반복하고, 최종 어드레스 설정값보다 큰 경우에는 베리파이를 종료한다.
베리파이 후, 내부 인터페이스(70)는 CPU(20)와 내부 플래시 ROM(10)을 접속하고, 다운로드 회로(50)는 CPU(20)의 동작을 슬립 상태로부터 개방한다(S56). 그리고, 다운로드 회로(50)는 기입의 종료를 나타내는 다운로드 종료 신호를 외부 단자를 통하여 외부에 송신한다.
이와 같이 하여, 내부 플래시 ROM(10)에는, CPU(20)가 주변 기기의 각 회로의 제어를 행하기 위한 동작 프로그램과, CPU(20)가 동작 프로그램의 갱신을 행하기 위한 업데이트용 프로그램의 2 종류가 기입된다. 따라서, CPU(20)는 내부 인터페이스(70)를 통하여 내부 플래시 ROM(10)에 기입된 동작 프로그램을 판독하고, 그에 따라 각 회로의 제어를 행한다. 예를 들면 주변 기기가 CD-ROM 드라이브 장치인 경우에는, 레이저를 조사하기 위한 픽업을 광 디스크의 소정 위치로 이동시키거나, 레이저의 반사광을 판독하여 광 디스크에 기억된 데이터를 판독하기도 한다. 한편, 동작 프로그램의 갱신 시에는, CPU(20)는 업데이트용 프로그램에 따라 동작 프로그램의 데이터 재기입을 행할 수 있게 된다.
이상, 상술한 바와 같이, 본 실시예에 따르면, 이하에 기재하는 효과가 얻어지게 된다.
(1) 본 실시예에서는, CPU를 통하지 않고 다운로드 제어 회로의 전용 회로에 서 외부 시리얼 플래시 ROM에 기억된 초기 데이터를 플래시 ROM에 복사하도록 기입하기 때문에, 다운로드의 스피드가 빠르다. 동작 프로그램을 기입하기 위한 업데이트용 프로그램을 기억한 마스크 ROM을 별도로 설치할 필요도 없어, 제어 장치(100)의 회로 면적의 증대를 억제할 수 있다. 즉, 시리얼 내부 플래시 ROM(10) 및 플래시 ROM(30)에 액세스하는 데 필요한 커맨드 세트만 준비하면 된다. 또한, 내부 플래시 ROM(10) 단체의 상태에서 미리 초기 데이터를 기입해 놓고, 이것을 실장하는 등의 작업도 불필요하므로, 제조 코스트의 증대도 억제할 수 있다.
(2) 본 실시예에서는, 다운로드 제어 회로의 전용 회로에서 외부 시리얼 플래시 ROM에 기억된 초기 데이터를 플래시 ROM에 복사하도록 기입하기 때문에, 초기 데이터를 플래시 ROM에 기입할 때, 초기 데이터를 공급하는 외부의 호스트 컴퓨터를 불필요하게 하는 것이 가능하다.
(3) 본 실시예에서는, 내부 플래시 ROM(10)에의 기입 동작을 유지하기 위해 플립플롭(52)이 설치되고, 기입 시간의 관리는 카운터(55)가 행하고 있기 때문에, 내부 플래시 ROM(10)에의 데이터의 기입 중에 다음 기입 데이터를 외부 시리얼 플래시 ROM(30)으로부터 판독하여 놓을 수 있기 때문에, 다운로드의 시간을 단축할 수 있다.
(4) 본 실시예에서는, 내부 플래시 ROM(10)에 미리 초기 데이터를 기억해 둘 필요가 없기 때문에, 예를 들면 제어 장치(100)에 일체적으로 집적하는 것도 가능하고, 이 경우에는 주변 기기 전체로서의 회로 면적을 저감할 수 있다.
또한, 본 발명의 실시예는 상기 실시예에 한정되는 것이 아니고, 다음과 같 이 변경하여도 된다.
본 실시예에서는, 외부 플래시 ROM(30)은 시리얼 메모리이지만, 이에 한하는 것이 아니고, 어드레스 단자 및 데이터 단자를 복수 구비하는 메모리이어도 된다.
본 실시예에서는, 내부 플래시 ROM(10)에의 기입마다 필요하게 되는 1 어드레스당 데이터 기입 시간의 관리는 카운터(55)에서 행하고 있지만, 다운로드 제어 회로(51)가 기입이 충분하게 행해지는 시간만큼 대기하고, 내부 플래시 ROM(10)에 다음 기입 데이터를 보내도록 하여도 된다. 혹은, 다운로드 제어 회로(51)가 내부 플래시 ROM(10)의 기입 종료를 토글 비트나 폴링으로 검지하도록 하여도 된다.
본 실시예에서는, 내부 플래시 ROM(10)에 다운로드하는 초기 데이터를 외부 시리얼 플래시 ROM(30)으로부터 판독하는 구성으로 하고 있기 때문에, 제어 장치(100)가 다운로드 시에 필요로 하는 외부 단자 수를 적게 할 수 있다. 이 때문에, 이러한 다운로드 시에 사용하는 외부 단자를, 다운로드 시 이외에 제어 장치(100)가 외부와의 신호의 교환에 사용하는 통상 단자와 공용시킴으로써, 외부 단자와 통상 단자를 합계한 총 수를 늘리지 않고 구성할 수 있다. 또한, 외부 시리얼 플래시 ROM(30)의 전원을, 제어 장치(100)로부터 외부 단자를 통하여 공급함으로써, 외부 시리얼 플래시 ROM(30)을 외부 인터페이스(40)에 삽입하여 다운로드 인에이블 신호를 송신하는 것만으로 다운로드시키는 것도 가능하다.
본 실시예에서는, 1 어드레스 단위로 외부 시리얼 플래시 ROM(30)으로부터 데이터를 판독하고, 1 어드레스 단위의 데이터를 내부 플래시 ROM(10)에 기입하고 있다. 그러나, 복수의 소정 어드레스 단위로 외부 시리얼 플래시 ROM(30)으로부터 데이터를 판독하고, 버스트 모드를 이용하는 등 하여, 이들 복수의 소정 어드레스 단위의 데이터를 내부 플래시 ROM(10)에 기입하여도 된다. 이 경우, 데이터 레지스터(54)에는 복수 어드레스에 따른 복수의 데이터를 기억할 수 있도록 하고, 다운로드 제어 회로(51)는 버스트 모드에 따른 커맨드 세트 등을 플립플롭에 출력하도록 한다.
본 실시예에서는, 마이크로컴퓨터에 소정의 동작 제어를 행하게 하는 동작 프로그램을 기억하기 위한 전기적으로 재기입 가능한 불휘발성 메모리로서 플래시 ROM을 설명하고 있지만, 데이터의 기입이 가능하면, 그 밖의 PROM을 채용하여도 된다.
본 실시예에서는, 내부 플래시 ROM(10)은 제어 장치(100)에 일체적으로 집적해 두어도 되고, 혹은 패키징 시에 복수의 반도체 칩을 1개로 집적하는 멀티칩 패키지로 하여도 된다.
본 실시예에서, 주변 기기는 CD-ROM 드라이브 장치에 한하지 않고, 컴퓨터와 접속하여 데이터의 교환이 가능하면 어떠한 기기이어도 된다. 예를 들면 MD나 DVD-RAM 등의 광 디스크 드라이브 장치나, MO와 같은 광 자기 디스크 드라이브 장치, 하드디스크와 같은 자기 디스크 드라이브 장치 등이어도 된다. 또한, 이러한 정보 기억 장치에 한하지 않고, 예를 들면 프린터와 같은 출력 장치나 스캐너와 같은 판독 장치, 모뎀이나 LAN과 같은 통신 장치 등이어도 된다.
본 발명에 따르면, 회로 면적의 증대 및 제조 코스트의 증대를 억제하면서 전기적으로 재기입 가능한 내부 불휘발성 메모리에 CPU의 동작 프로그램의 기입을 행할 수 있다.

Claims (7)

  1. 마이크로컴퓨터에 소정의 동작 제어를 행하게 하는 동작 프로그램을 기억하기 위한 전기적으로 재기입 가능한 내부 불휘발성 메모리와,
    상기 내부 불휘발성 메모리와의 입출력을 제어하는 내부 인터페이스와,
    외부 불휘발성 메모리와의 입출력을 제어하는 외부 인터페이스와,
    외부로부터의 지시에 의해, 상기 외부 인터페이스를 통하여 상기 외부 불휘발성 메모리에 기억된 데이터를 소정의 어드레스 단위로 판독하고, 상기 내부 인터페이스를 통하여 상기 내부 불휘발성 메모리에 상기 소정의 어드레스 단위로 상기 데이터를 기입하는 반복 동작을 제어하는 다운로드 회로
    를 포함하고,
    외부로부터의 상기 지시에 의해 상기 다운로드 회로가 동작 중에는, 상기 마이크로컴퓨터는 슬립 상태로 되고, 상기 내부 인터페이스는 상기 내부 불휘발성 메모리와 상기 마이크로컴퓨터와의 접속을 절단하는 것을 특징으로 하는 제어 장치.
  2. 제1항에 있어서,
    상기 다운로드 회로는,
    상기 내부 불휘발성 메모리에 상기 데이터를 기입 중인 상태를 유지하기 위한 플립플롭과,
    상기 내부 불휘발성 메모리에의 데이터의 기입 시간을 관리하는 카운터
    를 구비하는 것을 특징으로 하는 제어 장치.
  3. 제1항에 있어서,
    상기 외부 시리얼 메모리에 기억된 데이터를 판독하기 위한 커맨드 세트를 기억한 내부 불휘발성의 제1 커맨드 레지스터
    를 포함하는 것을 특징으로 하는 제어 장치.
  4. 제1항에 있어서,
    상기 내부 불휘발성 메모리에 상기 데이터를 기입하기 위한 커맨드 세트를 기억하는 제2 커맨드 레지스터
    를 포함하는 것을 특징으로 하는 제어 장치.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 다운로드 회로가 동작하지 않을 때에 외부와의 신호의 교환에 사용하는 통상 단자
    를 포함하고,
    상기 외부 불휘발성 메모리와 상기 외부 인터페이스 사이의 적어도 일부의 외부 단자는 상기 통상 단자의 일부 또는 전부인 것을 특징으로 하는 제어 장치.
  6. 제5항에 있어서,
    상기 외부 불휘발성 메모리에 전원을 공급하는 단자
    를 포함하는 것을 특징으로 하는 제어 장치.
  7. 제5항에 있어서,
    상기 외부 불휘발성 메모리는 시리얼 메모리인 것을 특징으로 하는 제어 장치.
KR1020050033102A 2004-04-22 2005-04-21 제어 장치 KR100697153B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2004-00126940 2004-04-22
JP2004126940A JP2005309839A (ja) 2004-04-22 2004-04-22 制御装置

Publications (2)

Publication Number Publication Date
KR20060047334A true KR20060047334A (ko) 2006-05-18
KR100697153B1 KR100697153B1 (ko) 2007-03-20

Family

ID=35137801

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050033102A KR100697153B1 (ko) 2004-04-22 2005-04-21 제어 장치

Country Status (5)

Country Link
US (1) US7788454B2 (ko)
JP (1) JP2005309839A (ko)
KR (1) KR100697153B1 (ko)
CN (1) CN1332306C (ko)
TW (1) TWI258957B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100955122B1 (ko) * 2006-11-29 2010-04-28 야마하 가부시키가이샤 집적 회로 장치 및 오디오 처리 장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004063757A1 (de) * 2004-12-29 2006-07-13 Francotyp-Postalia Ag & Co. Kg Verfahren und Anordnung zum Manipulieren des Inhalts eines Datenspeichers
CN101221541B (zh) * 2007-01-09 2011-04-20 张立军 用于soc的可编程通信控制器
CN104220958B (zh) * 2012-02-29 2017-04-19 华硕科技(苏州)有限公司 计算机装置及其通用串行总线连接器的工作模式转换方法
JP2014149669A (ja) * 2013-01-31 2014-08-21 Toshiba Corp 半導体記憶装置
JP2015069602A (ja) * 2013-09-30 2015-04-13 株式会社東芝 メモリ・システム
JP2020149236A (ja) * 2019-03-12 2020-09-17 キオクシア株式会社 電子機器及び電子機器の制御方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0520050A (ja) * 1991-07-11 1993-01-29 Sharp Corp 情報記憶装置
JPH0581012A (ja) 1991-09-25 1993-04-02 Nec Corp 情報処理装置のフアームウエア書き換え方式
US6144976A (en) * 1993-02-26 2000-11-07 Norand Corporation Hand-held data collection computer terminal having power management architecture including switchable multi-purpose input display screen
JPH07122084A (ja) * 1993-10-21 1995-05-12 Tec Corp 電子機器
KR100206374B1 (ko) * 1996-11-26 1999-07-01 이형도 플래쉬 메모리를 사용하는 제어장치와 그 생산지그장치
KR19980067233A (ko) * 1997-01-31 1998-10-15 김광호 메모리 장치 및 그 기록방법
KR100448932B1 (ko) * 1997-09-23 2004-12-17 삼성전자주식회사 플래시 롬 라이터 장치 및 그 제어 방법
JP2000099394A (ja) * 1998-09-24 2000-04-07 Oki Electric Ind Co Ltd メモリ制御回路
KR20000026010A (ko) * 1998-10-16 2000-05-06 김영환 플래시 메모리 장치
JP2000194551A (ja) * 1998-12-28 2000-07-14 Oki Micro Design Co Ltd フラッシュメモリ書換え回路
JP2000222137A (ja) * 1999-01-28 2000-08-11 Toshiba Corp ディスク記憶装置及び同装置におけるバッファ制御方法
JP2000276347A (ja) * 1999-03-29 2000-10-06 Nec Corp 携帯電子機器
JP2001056803A (ja) * 1999-08-19 2001-02-27 Mitsubishi Electric Corp マイクロコンピュータ
US6496915B1 (en) * 1999-12-31 2002-12-17 Ilife Solutions, Inc. Apparatus and method for reducing power consumption in an electronic data storage system
JP2001350625A (ja) * 2000-06-08 2001-12-21 Sanyo Electric Co Ltd 制御装置及びデータ処理システム
JP2001350738A (ja) * 2000-06-08 2001-12-21 Mitsubishi Electric Corp フラッシュメモリ内蔵マイクロコンピュータ
TWI233040B (en) * 2000-11-10 2005-05-21 Sanyo Electric Co Microcomputer and controlling method thereof
JP2002269065A (ja) * 2001-03-08 2002-09-20 Mitsubishi Electric Corp プログラム可能な不揮発性メモリを内蔵したマイクロコンピュータ
US6715041B2 (en) * 2002-01-28 2004-03-30 M-Systems Flash Disk Pioneers Ltd. Non-volatile memory device with multiple ports
KR100470993B1 (ko) * 2002-07-10 2005-03-10 삼성전자주식회사 디에스피 프로그램 다운로드 장치 및 그 방법
JP2004118544A (ja) * 2002-09-26 2004-04-15 Renesas Technology Corp メモリシステム
JP4238580B2 (ja) * 2002-11-15 2009-03-18 ソニー株式会社 データ記憶装置、データ記録システム
JP4153802B2 (ja) * 2003-02-07 2008-09-24 株式会社ルネサステクノロジ 記憶装置
US7380705B2 (en) * 2003-08-28 2008-06-03 Symbol Technologies, Inc. Multi-interface data acquisition system and method thereof
US7239238B2 (en) * 2004-03-30 2007-07-03 E. J. Brooks Company Electronic security seal
US7254667B2 (en) * 2004-04-02 2007-08-07 Arm Limited Data transfer between an external data source and a memory associated with a data processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100955122B1 (ko) * 2006-11-29 2010-04-28 야마하 가부시키가이샤 집적 회로 장치 및 오디오 처리 장치

Also Published As

Publication number Publication date
US20050240719A1 (en) 2005-10-27
CN1690966A (zh) 2005-11-02
US7788454B2 (en) 2010-08-31
JP2005309839A (ja) 2005-11-04
TW200603584A (en) 2006-01-16
TWI258957B (en) 2006-07-21
KR100697153B1 (ko) 2007-03-20
CN1332306C (zh) 2007-08-15

Similar Documents

Publication Publication Date Title
KR100697153B1 (ko) 제어 장치
KR100568641B1 (ko) 디스크 드라이브 장치
US7676640B2 (en) Flash memory controller controlling various flash memory cells
US6507881B1 (en) Method and system for programming a peripheral flash memory via an IDE bus
JP4173297B2 (ja) メモリカード
US20080028165A1 (en) Memory device, its access method, and memory system
US20070118682A1 (en) Method and apparatus for interfacing and managing NAND flash memory
KR20040086502A (ko) 외부 접속 기기, 호스트 기기 및 데이터 통신 시스템
KR100606306B1 (ko) 제어 장치 및 데이터 기입 방법
KR100686280B1 (ko) 제어 장치 및 데이터 기입 방법
JP5107776B2 (ja) メモリコントローラ、メモリシステム、及びメモリデバイスへのデータの書込方法
KR100573639B1 (ko) 디스크드라이브장치
JP2000321332A (ja) 半導体装置の評価方法および評価装置
JP4005950B2 (ja) マイクロコントローラ
JP2004021421A (ja) メモリ装置の制御方法およびそのプログラムならびに記録媒体
JPH11328089A (ja) Pciバスインタフェース用デバイスにおけるid情報書き込み回路
KR20010111456A (ko) 제어 장치 및 데이터 처리 시스템
JP2006107049A (ja) 半導体装置及びその半導体装置を備えたメモリカード
US20100049903A1 (en) Recording system and data recording method
JP2021165995A (ja) メモリ制御装置およびメモリ制御装置の制御方法
JPH10208487A (ja) 不揮発性メモリ
CN109375958A (zh) 一种固件加载方法及电路板
JPH04274577A (ja) 電子機器並びに情報記録及び又は再生装置
KR19990041731A (ko) 플레쉬메모리 정상동작 체크방법
JP2001101068A (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: 20120228

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee