[go: up one dir, main page]

KR19990080113A - 시어리얼 인터페이스 회로를 구비하는 프로그래머블 마이크로콘트롤러와 이의 데이터 기입 및 독출방법 - Google Patents

시어리얼 인터페이스 회로를 구비하는 프로그래머블 마이크로콘트롤러와 이의 데이터 기입 및 독출방법 Download PDF

Info

Publication number
KR19990080113A
KR19990080113A KR1019980013118A KR19980013118A KR19990080113A KR 19990080113 A KR19990080113 A KR 19990080113A KR 1019980013118 A KR1019980013118 A KR 1019980013118A KR 19980013118 A KR19980013118 A KR 19980013118A KR 19990080113 A KR19990080113 A KR 19990080113A
Authority
KR
South Korea
Prior art keywords
data
address
memory unit
output
clock
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1019980013118A
Other languages
English (en)
Other versions
KR100505600B1 (ko
Inventor
김종인
Original Assignee
윤종용
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 윤종용, 삼성전자 주식회사 filed Critical 윤종용
Priority to KR1019980013118A priority Critical patent/KR100505600B1/ko
Publication of KR19990080113A publication Critical patent/KR19990080113A/ko
Application granted granted Critical
Publication of KR100505600B1 publication Critical patent/KR100505600B1/ko
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • G06F9/30189Instruction operation extension or modification according to execution mode, e.g. mode flag
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1036Read-write modes for single port memories, i.e. having either a random port or a serial port using data shift registers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)

Abstract

기입 및 독출동작시 필요한 핀수를 감소시킬 수 있는 프로그래머블 마이크로 콘트롤러와 이의 데이터 기입방법 및 데이터 독출방법이 개시된다. 상기 데이터 기입방법 및 데이터 독출방법을 수행하는 상기 프로그래머블 마이크로 콘트롤러는, 기입동작시 외부에서 입출력핀을 통해 인가되는 시어리얼 데이터를 클락핀을 통해 인가되는 쉬프트 클락에 동기시켜 시어리얼하게 수신하여 패러렐하게 상기 메모리부에 전달하고, 독출동작시 상기 메모리부로부터 패러렐하게 전달되는 데이터를 상기 쉬프트 클락에 동기시켜 상기 입출력핀을 통해 시어리얼하게 외부로 송신하는 시어리얼 인터페이스 회로를 구비하는 것을 특징으로한다. 따라서 상기 프로그래머블 마이크로 콘트롤러는, 상기 시어리얼 인터페이스 회로를 구비함으로써 기입 및 독출동작시 하나의 데이터 입출력핀과 하나의 클락핀만이 필요하므로 핀수가 감소된다.

Description

시어리얼 인터페이스 회로를 구비하는 프로그래머블 마이크로 콘트롤러와 이의 데이터 기입 및 독출방법
본 발명은 프로그래머블 마이크로 콘트롤러(Programmable Microcontroller)에 관한 것으로, 특히 시어리얼 인터페이스(Serial Interface) 회로를 구비하는 프로그래머블(Programmable) 마이크로 콘트롤러와 이의 데이터 기입 및 독출방법에 관한 것이다.
마이크로 콘트롤러에는 마스크롬 형(Mask ROM Type) 마이크로 콘트롤러와 프로그래머블 형 마이크로 콘트롤러가 있다. 마스크롬 형 마이크로 콘트롤러는 응용 프로그램이 코드화되어 내장되는 롬이 마스크롬 형으로서 주로 대량생산을 목적으로 사용된다. 반면에 프로그래머블 마이크로 콘트롤러는 내장 롬으로 OTP(One Time Programmable) 형의 EPROM이나 MTP(Multiple Time Programmable) 형의 EEPROM 또는 플래쉬(Flash) 롬을 사용한다. 따라서 응용 프로그램 개발시 프로그래머블 마이크로 콘트롤러를 사용하면 응용 프로그램의 코드를 충분히 검증할 수 있는 장점이 있으며 또한 소규모 물량의 씨스템을 생산하고자 할 경우 프로그래머블 마이크로 콘트롤러를 사용하면 원가가 다소 높아지는 단점이 있지만 빠른 시간에 생산이 가능하다는 장점이 있다.
특히 프로그래머블 마이크로 콘트롤러에서는 응용 프로그램의 코드를 내장 롬에 기입하기 위해 어드레스와 데이터가 다수개의 핀들을 통해 병렬로 동시에 인가되는 패러렐 인터페이스(Parallel Interface) 방법이 사용된다. 그런데 패러렐 인터페이스 방법이 사용되는 프로그래머블 마이크로 콘트롤러에서는 다수개의 어드레스 핀들, 데이터 핀들, 및 제어핀들이 필요하므로 핀수가 증가되는 단점이 있으며 이에 따라 대략 30핀 이하의 패키지에는 사용되기 어렵다. 또한 프로그래머블 마이크로 콘트롤러들이 동일한 핀수의 패키지를 갖더라도, 즉 정상모드에서는 핀수가 동일하더라도 프로그램 모드에서는 내장 롬의 용량에 따라 어드레스 핀, 데이터 핀, 및 제어핀의 수가 다르고 또한 핀의 위치가 다르므로, 프로그램용 소켓이 공용되기 어려운 단점이 있다.
따라서 본 발명이 이루고자하는 기술적 과제는, 기입 및 독출동작시 필요한 핀수를 감소시킬 수 있는 프로그래머블 마이크로 콘트롤러를 제공하는 데 있다.
본 발명이 이루고자하는 다른 기술적 과제는, 기입동작시 필요한 핀수를 감소시킬 수 있는 프로그래머블 마이크로 콘트롤러의 데이터 기입방법을 제공하는 데 있다.
본 발명이 이루고자하는 또 다른 기술적 과제는, 독출동작시 필요한 핀수를 감소시킬 수 있는 프로그래머블 마이크로 콘트롤러의 데이터 독출방법을 제공하는 데 있다.
도 1은 본 발명에 따른 프로그래머블 마이크로 콘트롤러의 바람직한 일실시예의 블락도
도 2는 도 1에 도시된 시어리얼 데이터 포맷의 프로토콜(Protocol)을 나타내는 도면
도 3은 도 1에 도시된 시어리얼 데이터 및 쉬프트 클락의 파형도
상기 기술적 과제를 달성하기 위한 본 발명에 따른 프로그래머블 마이크로 콘트롤러는, 메모리부와, 상기 메모리부로부터 데이터를 읽어내어 연산 및 제어기능들을 수행하는 중앙처리부와, 특히 기입동작시 외부에서 입출력핀을 통해 인가되는 시어리얼 데이터를 클락핀을 통해 인가되는 쉬프트 클락에 동기시켜 시어리얼하게 수신하여 패러렐하게 상기 메모리부에 전달하고, 독출동작시 상기 메모리부로부터 패러렐하게 전달되는 데이터를 상기 쉬프트 클락에 동기시켜 상기 입출력핀을 통해 시어리얼하게 외부로 송신하는 시어리얼 인터페이스 회로를 구비하는 것을 특징으로한다.
상기 시어리얼 인터페이스 회로는, 어드레스 필드 검출기와, 쉬프트 레지스터와, 어드레스 레지스터부, 및 기입/독출버퍼를 구비하여 구성된다.
상기 어드레스 필드 검출기는, 상기 시어리얼 데이터 및 상기 쉬프트 클락으로부터 어드레스 필드 조건을 검출하여 어드레스 플래그를 발생한다. 상기 쉬프트 레지스터는, 기입동작시에는 상기 시어리얼 데이터를 상기 쉬프트 클락에 동기되어 우측으로 이동시켜 저장한 다음 패러렐하게 출력하고, 독출동작시에는 패러렐하게 입력되는 독출데이터를 우측으로 이동시켜 시어리얼하게 외부로 출력한다. 상기 어드레스 레지스터부는, 상기 어드레스 플래그가 엑티브되는 동안에 상기 쉬프트 레지스터로부터 패러렐하게 출력되는 데이터를 저장하여 상기 메모리부의 첫 번째 어드레스로서 출력한다. 상기 기입/독출버퍼는, 상기 어드레스 플래그가 넌엑티되는 동안에 기입모드일 경우에는 상기 쉬프트 레지스로부터 패러렐하게 출력되는 데이터를 버퍼링하여 상기 메모리부에 기입될 기입데이터로서 출력하고, 독출모드일 경우에는 상기 메모리부로부터 독출되는 데이터를 버퍼링하여 상기 독출데이터로서 출력한다.
특히 상기 어드레스 필드 검출기는, 상기 쉬프트 클락이 논리"하이"인 상태에서 상기 데이터가 논리"로우"에서 논리"하이"로 천이할 때 상기 어드레스 플래그를 엑티브시키고 이후 시어리얼하게 입력되는 상기 데이터중 M바이트(M은 정수)를 어드레스 필드로 인식하여 상기 어드레스 플래그의 엑티브 상태를 유지하며, 그 다음에 입력되는 N바이트(N은 정수)를 데이터 필드로 인식하여 상기 어드레스 플래그를 넌엑티브시킨다. 상기 어드레스 레지스터부는 상기 첫 번째 어드레스를 출력한 다음 자동으로 증가되는 어드레스를 발생시킨다.
상기 다른 기술적 과제를 달성하기 위한 본 발명에 따른 프로그래머블 마이크로 콘트롤러의 데이터 기입방법은, 외부에서 입출력핀을 통해 인가되는 시어리얼 데이터를 클락핀을 통해 인가되는 쉬프트 클락에 동기시켜 시어리얼하게 수신하여 패러렐하게 메모리부에 기입하는 단계를 구비하는 것을 특징으로 한다.
상기 단계는, 상기 시어리얼 데이터 및 상기 쉬프트 클락으로부터 어드레스 필드 조건을 검출하여 어드레스 플래그를 발생시키는 (1)단계와, 상기 시어리얼 데이터를 상기 쉬프트 클락의 첫 번째부터 8번째 클락에 순차적으로 동기시켜 우측으로 이동시켜 1바이트씩 저장한 다음 9번째 클락에 동기시켜 패러렐하게 1바이트씩 출력시키는 (2)단계와, 상기 어드레스 플래그가 엑티브되는 동안에 상기 1바이트씩 패러렐하게 출력되는 M바이트의 데이터를 순차적으로 저장하여 상기 메모리부의 첫 번째 어드레스로서 출력시키는 (3)단계, 및 상기 어드레스 플래그가 넌엑티되는 동안에 상기 N바이트의 데이터 이후에 출력되는 N바이트의 데이터를 순차적으로 저장하고 버퍼링하여 상기 메모리부에 기입될 기입데이터들로서 출력시키는 (4)단계로 이루어진다.
상기 단계는, 상기 (3) 단계후에 상기 쉬프트 클락의 9번째 클락마다 상기 어드레스를 자동으로 증가시키는 단계를 더 구비한다. 또한 상기 (1) 단계의 어드레스 플래그는, 상기 쉬프트 클락이 논리"하이"인 상태에서 상기 시어리얼 데이터가 논리"로우"에서 논리"하이"로 천이할 때 엑티브되고 상기 (3) 단계에서 상기 M바이트의 데이터를 순차적으로 저장할 때 까지 계속 엑티브 상태를 유지한다.
상기 또 다른 기술적 과제를 달성하기 위한 본 발명에 따른 프로그래머블 마이크로 콘트롤러의 데이터 독출방법은, 메모리부로부터 패러렐하게 독출되는 데이터를 클락핀을 통해 인가되는 쉬프트 클락에 동기시켜 입출력핀을 통해 시어리얼하게 외부로 송신하는 단계를 구비하는 것을 특징으로 한다.
상기 단계는, 상기 시어리얼 데이터 및 상기 쉬프트 클락으로부터 어드레스 필드 조건을 검출하여 어드레스 플래그를 발생시키는 (1)단계와, 상기 시어리얼 데이터를 상기 쉬프트 클락의 첫 번째부터 8번째 클락에 순차적으로 동기시켜 우측으로 이동시켜 1바이트씩 저장한 다음 9번째 클락에 동기시켜 패러렐하게 1바이트씩 M바이트를 출력시키는 (2)단계와, 상기 어드레스 플래그가 엑티브되는 동안에 상기 1바이트씩 패러렐하게 출력되는 M바이트의 데이터를 순차적으로 저장하여 상기 메모리부의 첫 번째 어드레스로서 출력시키는 (3)단계와, 상기 어드레스 플래그가 넌엑티되는 동안에 상기 메모리부로부터 1바이트씩 패러럴하게 독출되는 데이터를 순차적으로 저장하고 버퍼링하는 (4)단계, 및 상기 1바이트씩 버퍼링된 독출데이터를 받아 상기 쉬프트 클락의 첫 번째부터 8번째 클락에 순차적으로 동기시켜 우측으로 이동시켜 상기 입출력핀을 통해 시어리얼하게 외부로 출력하는 (5)단계로 이루어진다.
상기 단계는, 상기 (3)단계후에 상기 쉬프트 클락의 9번째 클락마다 상기 어드레스를 자동으로 증가시키는 단계를 더 구비한다. 상기 (1)단계의 어드레스 플래그는, 상기 쉬프트 클락이 논리"하이"인 상태에서 상기 시어리얼 데이터가 논리"로우"에서 논리"하이"로 천이할 때 엑티브되고 상기 (3) 단계에서 상기 M바이트의 데이터를 순차적으로 저장할 때 까지 계속 엑티브 상태를 유지한다.
이하 본 발명에 따른 프로그래머블 마이크로 콘트롤러의 구성 및 동작과 이 회로에서 수행되는 데이터 기입 및 독출방법을 첨부도면을 참조하여 상세히 설명하겠다.
도 1은 본 발명에 따른 프로그래머블 마이크로 콘트롤러의 바람직한 일실시예의 블락도이다.
도 1을 참조하면, 상기 본 발명에 따른 프로그래머블 마이크로 콘트롤러는, 중앙처리부(11), 메모리부(13), 및 시어리얼 인터페이스 회로(15)를 구비한다.
상기 중앙처리부(11)은 상기 메모리부(13)에 저장되는 데이터를 읽어내어 연산 및 제어기능들을 수행하고, 상기 메모리부(13)은 내장 롬(ROM)으로서 OTP 형의 EPROM이나 MTP 형의 EEPROM 또는 플래쉬 롬으로 구성되며 외부에서 응용 프로그램이 코드화되어 인가되는 상기 데이터를 저장한다. 상기 시어리얼 인터페이스 회로(15)는, 기입동작시 외부에서 입출력핀(17)을 통해 인가되는 시어리얼 데이터(SDAT), 즉 상기 메모리부(13)의 어드레스 및 데이터를 클락핀(19)를 통해 인가되는 쉬프트 클락(SCLK)에 동기시켜 시어리얼하게 수신하여 패러렐하게 상기 메모리부(13)에 전달한다. 또한 상기 시어리얼 인터페이스 회로(15)는, 독출동작시 상기 메모리부(13)으로부터 패러렐하게 전달되는 데이터를 상기 쉬프트 클락(SCLK)에 동기시켜 상기 입출력핀(17)을 통해 시어리얼하게 외부로 송신한다.
특히 상기 시어리얼 인터페이스 회로(15)는, 어드레스 필드 검출기(15a)와, 쉬프트 레지스터(15b)와, 어드레스 레지스터부(15c), 및 기입/독출버퍼(15d)를 포함하여 구성된다.
상기 어드레스 필드 검출기(15a)는, 상기 시어리얼 데이터(SDAT) 및 상기 쉬프트 클락(SCLK)으로부터 어드레스 필드 조건을 검출하여 어드레스 플래그(FLAG)를 발생한다.
상기 쉬프트 레지스터(15b)는 8비트 쉬프트 레지스터이며, 기입동작시에는 외부에서 1비트씩 시어리얼하게 인가되는 상기 시어리얼 데이터(SDAT)를 상기 쉬프트 클락(SCLK)에 동기되어 우측으로 이동시켜(Shift right) 8비트씩 저장한 다음 저장된 8비트 데이터를 패러렐하게 출력한다. 또한 상기 쉬프트 레지스터(15b)는, 독출동작시에는 상기 메모리부(13)으로부터 상기 기입/독출버퍼(15d)를 통해 패러렐하게 입력되는 8비트 독출데이터를 상기 쉬프트 클락(SCLK)에 동기되어 우측으로 이동시켜 1비트씩 상기 입출력핀(17)을 통해 시어리얼하게 외부로 출력한다.
상기 어드레스 레지스터부(15c)는 3개의 8비트 어드레스 레지스터, 즉 제1 내지 제3어드레스 레지스터(15c1,15c2,15c3)를 포함하고, 상기 어드레스 플래그(FLAG)가 엑티브되는 동안에 상기 쉬프트 레지스터(15b)로부터 8비트씩 패러렐하게 출력되는 24비트, 즉 3바이트의 어드레스 필드의 데이터를 순차적으로 저장하여 상기 메모리부(13)의 첫 번째 어드레스로서 출력한다. 이후 상기 어드레스 레지스터부(15c)는, 상기 첫 번째 어드레스를 출력한 다음 자동으로 증가되는 어드레스를 발생시킨다.
상기 기입/독출버퍼(15d)는 8비트로 구성되며, 상기 어드레스 플래그(FLAG)가 넌엑티되는 동안에 기입모드일 경우에는 상기 쉬프트 레지스터(15b)로부터 8비트씩 패러렐하게 출력되는 데이터, 즉 상기 3바이트의 어드레스 필드 다음에 입력되는 1바이트 이상의 데이터 필드의 데이터를 버퍼링하여 상기 메모리부(13)에 기입될 기입데이터로서 출력한다. 또한 상기 기입/독출버퍼(15d)는, 독출모드일 경우에는 상기 메모리부(13)으로부터 독출되는 8비트의 데이터를 버퍼링하여 상기 독출데이터로서 출력한다.
도 2는 도 1에 도시된 시어리얼 데이터(SDAT) 포맷의 프로토콜(Protocol)을 나타내는 도면이다.
도 2를 참조하면, 상기 시어리얼 데이터(SDAT) 포맷의 프로토콜은, 첫부분의 시작조건(21)과, 이후 연속되는 3바이트, 즉 제1 내지 제3어드레스(22,23,24)의 어드레스 필드와, 이후 연속되는 다수의 바이트, 즉 제1 내지 제n데이터(25 내지 28)의 데이터 필드와, 마지막 부분의 종료조건(29)를 포함한다.
도 3은 도 1에 도시된 시어리얼 데이터(SDAT) 및 쉬프트 클락(SCLK)의 파형도이다.
이하 도 2 및 도 3을 참조하여 도 1에 도시된 본 발명에 따른 프로그래머블 마이크로 콘트롤러의 동작과 이 회로에서 수행되는 데이터 기입 및 독출방법을 상세히 설명하겠다.
먼저 상기 데이터 기입방법은, 외부에서 상기 하나의 입출력핀(17)을 통해 인가되는 상기 시어리얼 데이터(SDAT)를 상기 클락핀(19)를 통해 인가되는 상기 쉬프트 클락(SCLK)에 동기시켜 시어리얼하게 수신하여 패러렐하게 상기 메모리부(13)에 기입하는 단계로 이루어진다. 여기에서 도 2 및 도 3에 도시된 시작조건(21,31) 이후에 연속적으로 입력되는 상기 시어리얼 데이터(SDAT)의 첫 번째 바이트, 즉 제1 어드레스(22)의 최하위 비트(LSB)(도 3에 도시된 A16)가 "0"일 때 기입모드가 된다.
좀더 상세히 설명하면, 먼저 상기 어드레스 필드 검출기(15a)가 상기 시어리얼 데이터(SDAT) 및 상기 쉬프트 클락(SCLK)으로부터 어드레스 필드 조건을 검출하여 상기 어드레스 플래그(FLAG)를 발생시킨다(제1단계). 이때 상기 어드레스 플래그(FLAG)는 도 2 및 도 3에 도시된 시작조건(21,31), 즉 상기 쉬프트 클락(SCLK)가 논리"하이"인 상태에서 상기 시어리얼 데이터(SDAT)가 논리"로우"에서 논리"하이"로 천이할 때 엑티브된다. 다음에 상기 시작조건(21,31) 이후에 연속적으로 입력되는 상기 시어리얼 데이터(SDAT)의 3바이트, 즉 제1 내지 제3어드레스(22,23,24)(도 3에 도시된 A23 내지 A0)가 어드레스 필드로 인식되어 상기 어드레스 필드 동안에 상기 어드레스 플래그(FLAG)는 엑티브 상태를 계속 유지한다. 이후 상기 3바이트의 어드레스 필드 다음에 입력되는 다수의 바이트, 즉 제1 내지 제n데이터(25 내지 28)는 데이터 필드로 인식되어 상기 어드레스 플래그(FLAG)는 넌엑티브된다.
상기 제1단계이후, 상기 쉬프트 레지스터(15b)는 외부에서 1비트씩 시어리얼하게 인가되는 상기 시어리얼 데이터(SDAT)를 상기 쉬프트 클락(SCLK)의 첫 번째부터 8번째 클락에 순차적으로 동기되어 우측으로 이동시켜(Shift right) 1바이트씩 저장한 다음 9번째 클락, 즉 더미(Dummy) 클락에 동기시켜 패러렐하게 1바이트씩 3바이트의 데이터, 즉 제1 내지 제3어드레스(22,23,24)를 순차적으로 출력한다(제2단계).
상기 제2단계이후, 상기 어드레스 레지스터부(15c)는 상기 어드레스 플래그(FLAG)가 엑티브되는 동안에 상기 쉬프트 레지스터(15b)로부터 1바이트씩 패러렐하게 출력되는 상기 3바이트의 데이터, 즉 제1 내지 제3어드레스(22,23,24)를 순차적으로 저장하여 상기 메모리부(13)의 첫 번째 어드레스로서 출력시킨다(제3단계). 이후 상기 어드레스 레지스터부(15c)는 상기 쉬프트 클락(SCLK)의 9번째 클락, 즉 더미 클락마다 상기 어드레스를 자동으로 증가시켜 다음에 기입할 어드레스를 출력시킨다.
상기 제3단계후에, 상기 기입/독출버퍼(15d)는 상기 어드레스 플래그(FLAG)가 넌엑티되는 동안에 상기 3바이트의 데이터 이후에 상기 쉬프트 레지스터(15b)로부터 1바이트씩 패러렐하게 출력되는 다수의 바이트, 즉 제1 내지 제n데이터(25 내지 28)을 순차적으로 버퍼링하여 상기 메모리부(13)에 기입될 기입데이터들로서 출력시킨다(제4단계).
상기와 같은 동작에 의해 상기 첫 번째 어드레스가 상기 어드레스 레지스터부(15c)로부터 출력되고 상기 제1데이터(25)가 상기 기입/독출버퍼(15d)로부터 출력된 후 상기 쉬프트 클락(SCLK)의 9번째 클락, 즉 더미 클락의 하강에지에서 상기 제1데이터(25)가 기입된다. 또한 상기 어드레스 레지스터부(15c)에 의해 순차적으로 증가되는 어드레스에 상기 제2 내지 제n데이터(26 내지 28)이 순차적으로 기입된다. 이후 더미 데이터(FF)가 외부에서 추가로 입력된 후 기입동작이 종료된다.
또한 상기 데이터 독출방법은, 상기 메모리부(13)으로부터 패러렐하게 8비트씩 독출되는 데이터를 상기 클락핀(19)를 통해 인가되는 상기 쉬프트 클락(SCLK)에 동기시켜 상기 입출력핀(17)을 통해 시어리얼하게 외부로 송신하는 단계로 이루어진다. 여기에서 도 2 및 도 3에 도시된 시작조건(21,31) 이후에 연속적으로 입력되는 상기 시어리얼 데이터(SDAT)의 첫 번째 바이트, 즉 제1 어드레스(22)의 최하위 비트(LSB)(도 3에 도시된 A16)가 "1"일 때 독출모드가 된다.
좀더 상세히 설명하면, 상기 기입동작에서와 마찬가지로 먼저 상기 어드레스 필드 검출기(15a)가 상기 시어리얼 데이터(SDAT) 및 상기 쉬프트 클락(SCLK)으로부터 어드레스 필드 조건을 검출하여 상기 어드레스 플래그(FLAG)를 발생시킨다(제1단계).
상기 제1단계이후, 상기 쉬프트 레지스터(15b)는 외부에서 1비트씩 시어리얼하게 인가되는 상기 시어리얼 데이터(SDAT)를 상기 쉬프트 클락(SCLK)의 첫 번째부터 8번째 클락에 순차적으로 동기되어 우측으로 이동시켜(Shift right) 1바이트씩 저장한 다음 9번째 클락, 즉 더미(Dummy) 클락에 동기시켜 패러렐하게 1바이트씩 3바이트의 데이터, 즉 제1 내지 제3어드레스(22,23,24)를 순차적으로 출력한다(제2단계).
상기 제2단계이후, 상기 어드레스 레지스터부(15c)는 상기 어드레스 플래그(FLAG)가 엑티브되는 동안에 상기 쉬프트 레지스터(15b)로부터 1바이트씩 패러렐하게 출력되는 상기 3바이트의 데이터, 즉 제1 내지 제3어드레스(22,23,24)를 순차적으로 저장하여 상기 메모리부(13)의 첫 번째 어드레스로서 출력시킨다(제3단계). 이후 상기 어드레스 레지스터부(15c)는 상기 쉬프트 클락(SCLK)의 8번째 클락마다 상기 어드레스를 자동으로 증가시켜 다음에 독출될 어드레스를 출력시킨다.
상기 제3단계이후, 상기 기입/독출버퍼(15d)가 상기 어드레스 플래그(FLAG)가 넌엑티되는 동안에 상기 어드레스에 따라 메모리부(13)으로부터 1바이트씩 패러럴하게 독출되는 데이터를 순차적으로 버퍼링한다(제4단계).
상기 제4단계이후, 상기 쉬프트 레지스터(15b)는 상기 1바이트씩 버퍼링된 독출데이터를 상기 쉬프트 클락(SCLK)의 더미 클락에 동기되어 패러렐하게 받아 상기 쉬프트 클락(SCLK)의 첫 번째부터 8번째 클락에 순차적으로 동기되어 우측으로 이동시켜 상기 입출력핀(17)을 통해 시어리얼하게 1비트씩 외부로 출력한다.
상기와 같은 동작에 따라, 상기 어드레스 레지스터부(15c)에 의해 순차적으로 증가되는 어드레스로부터 독출되는 상기 제1 내지 제n데이터(26 내지 28)이 순차적으로 상기 입출력핀(17)을 통해 시어리얼하게 외부로 출력된다. 이후 상기 쉬프트 클락(SCLK)가 논리"하이"인 상태에서 상기 시어리얼 데이터(SDAT)가 논리"하이"에서 논리"로우"로 천이할 때, 즉 도 2 및 도 3에 도시된 종료조건(29,33)에서 독출동작이 종료된다.
이상과 같이, 본 발명을 일실시예를 들어 한정적으로 설명하였으나 이에 한정되지 않으며 본 발명의 사상의 범위 내에서 당해 분야의 통상의 지식을 가진 자에 의해 본원 발명에 대한 각종 변형이 가능함은 자명하다.
상술한 바와 같이 본 발명에 따른 데이터 기입 및 독출방법을 수행하는 프로그래머블 마이크로 콘트롤러는, 시어리얼 인터페이스 회로를 구비함으로써 기입 및 독출동작시 하나의 데이터 입출력핀과 하나의 클락핀만이 필요하므로 핀수가 감소된다. 따라서 핀수가 적은 패키지로 조립될 수 있는 장점이 있다. 또한 내장 메모리의 용량에 무관하게 하나의 데이터 입출력핀과 하나의 클락핀만이 필요하므로, 상기 프로그래머블 마이크로 콘트롤러들이 서로 다른 용량의 내장 메모리를 갖더라도 동일한 패키지로 조립될 수 있으며 이에 따라 동일한 프로그램용 소켓이 사용될 수 있는 장점이 있다.

Claims (21)

  1. 메모리부;
    상기 메모리부로부터 데이터를 읽어내어 연산 및 제어기능들을 수행하는 중앙처리부; 및
    기입동작시 외부에서 입출력핀을 통해 인가되는 시어리얼 데이터를 클락핀을 통해 인가되는 쉬프트 클락에 동기시켜 시어리얼하게 수신하여 패러렐하게 상기 메모리부에 전달하고, 독출동작시 상기 메모리부로부터 패러렐하게 전달되는 데이터를 상기 쉬프트 클락에 동기시켜 상기 입출력핀을 통해 시어리얼하게 외부로 송신하는 시어리얼 인터페이스 회로를 구비하는 것을 특징으로하는 프로그래머블 마이크로 콘트롤러.
  2. 제1항에 있어서, 상기 메모리부는 EPROM, EEPROM, 및 플레쉬 메모리중 선택되는 어느 하나로 구성되는 것을 특징으로 하는 프로그래머블 마이크로 콘트롤러.
  3. 제1항에 있어서, 상기 시어리얼 인터페이스 회로는,
    상기 시어리얼 데이터 및 상기 쉬프트 클락으로부터 어드레스 필드 조건을 검출하여 어드레스 플래그를 발생하는 어드레스 필드 검출기와,
    기입동작시에는 상기 시어리얼 데이터를 상기 쉬프트 클락에 동기되어 우측으로 이동시켜 저장한 다음 패러렐하게 출력하고, 독출동작시에는 패러렐하게 입력되는 독출데이터를 우측으로 이동시켜 시어리얼하게 외부로 출력하는 쉬프트 레지스터와,
    상기 어드레스 플래그가 엑티브되는 동안에 상기 쉬프트 레지스터로부터 패러렐하게 출력되는 데이터를 저장하여 상기 메모리부의 첫 번째 어드레스로서 출력하는 어드레스 레지스터부, 및
    상기 어드레스 플래그가 넌엑티되는 동안에 기입모드일 경우에는 상기 쉬프트 레지스로부터 패러렐하게 출력되는 데이터를 버퍼링하여 상기 메모리부에 기입될 기입데이터로서 출력하고, 독출모드일 경우에는 상기 메모리부로부터 독출되는 데이터를 버퍼링하여 상기 독출데이터로서 출력하는 기입/독출버퍼를 구비하는 것을 특징으로하는 프로그래머블 마이크로 콘트롤러.
  4. 제3항에 있어서, 상기 어드레스 필드 검출기는, 상기 쉬프트 클락이 논리"하이"인 상태에서 상기 데이터가 논리"로우"에서 논리"하이"로 천이할 때 상기 어드레스 플래그를 엑티브시키고 이후 시어리얼하게 입력되는 상기 데이터중 M바이트(M은 정수)를 어드레스 필드로 인식하여 상기 어드레스 플래그의 엑티브 상태를 유지하며, 그 다음에 입력되는 N바이트(N은 정수)를 데이터 필드로 인식하여 상기 어드레스 플래그를 넌엑티브시키는 것을 특징으로 하는 프로그래머블 마이크로 콘트롤러.
  5. 제4항에 있어서, 상기 M은 3이고 상기 N은 1이상인 것을 특징으로 하는 프로그래머블 마이크로 콘트롤러.
  6. 제3항에 있어서, 상기 쉬프트 레지스터는 8비트 쉬프트 레지스터인 것을 특징으로 하는 프로그래머블 마이크로 콘트롤러.
  7. 제3항에 있어서, 상기 어드레스 레지스터부는 상기 첫 번째 어드레스를 출력한 다음 자동으로 증가되는 어드레스를 발생시키는 것을 특징으로 하는 프로그래머블 마이크로 콘트롤러.
  8. 제3항에 있어서, 상기 어드레스 레지스터부는 N개의 8비트 어드레스 레지스터를 포함하고 상기 쉬프트 레지스터로부터 패러렐하게 순차적으로 출력되는 N바이트의 데이터를 순차적으로 저장하는 것을 특징으로 하는 프로그래머블 마이크로 콘트롤러.
  9. 제3항에 있어서, 상기 기입/독출버퍼는 8비트로 구성되는 것을 특징으로 하는 프로그래머블 마이크로 콘트롤러.
  10. 메모리부와, 상기 메모리부로부터 데이터를 읽어내어 연산 및 제어기능들을 수행하는 중앙처리부를 구비하는 프로그래머블 마이크로 콘트롤러의 데이터 기입방법에 있어서,
    외부에서 입출력핀을 통해 인가되는 시어리얼 데이터를 클락핀을 통해 인가되는 쉬프트 클락에 동기시켜 시어리얼하게 수신하여 패러렐하게 상기 메모리부에 기입하는 단계를 구비하는 것을 특징으로 하는 데이터 기입방법.
  11. 제10항에 있어서, 상기 단계는,
    (1) 상기 시어리얼 데이터 및 상기 쉬프트 클락으로부터 어드레스 필드 조건을 검출하여 어드레스 플래그를 발생시키는 단계와,
    (2) 상기 시어리얼 데이터를 상기 쉬프트 클락의 첫 번째부터 8번째 클락에 순차적으로 동기시켜 우측으로 이동시켜 1바이트씩 저장한 다음 9번째 클락에 동기시켜 패러렐하게 1바이트씩 출력시키는 단계와,
    (3) 상기 어드레스 플래그가 엑티브되는 동안에 상기 1바이트씩 패러렐하게 출력되는 M바이트의 데이터를 순차적으로 저장하여 상기 메모리부의 첫 번째 어드레스로서 출력시키는 단계, 및
    (4) 상기 어드레스 플래그가 넌엑티되는 동안에 상기 N바이트의 데이터 이후에 출력되는 N바이트의 데이터를 순차적으로 저장하고 버퍼링하여 상기 메모리부에 기입될 기입데이터들로서 출력시키는 단계를 구비하는 것을 특징으로 하는 데이터 기입방법.
  12. 제11항에 있어서, 상기 단계는, 상기 (3) 단계후에 상기 쉬프트 클락의 9번째 클락마다 상기 어드레스를 자동으로 증가시키는 단계를 더 구비하는 것을 특징으로 하는 데이터 기입방법.
  13. 제11항에 있어서, 상기 (1) 단계의 어드레스 플래그는, 상기 쉬프트 클락이 논리"하이"인 상태에서 상기 시어리얼 데이터가 논리"로우"에서 논리"하이"로 천이할 때 엑티브되고 상기 (3) 단계에서 상기 M바이트의 데이터를 순차적으로 저장할 때 까지 계속 엑티브 상태를 유지하는 것을 특징으로 하는 데이터 기입방법.
  14. 제11항에 있어서, 상기 M은 3이고 상기 N은 1이상인 것을 특징으로 하는 데이터 기입방법.
  15. 제10항에 있어서, 상기 메모리부는 EPROM, EEPROM, 및 플레쉬 메모리중 선택되는 어느 하나로 구성되는 것을 특징으로 하는 데이터 기입방법.
  16. 메모리부와, 상기 메모리부로부터 데이터를 읽어내어 연산 및 제어기능들을 수행하는 중앙처리부를 구비하는 프로그래머블 마이크로 콘트롤러의 데이터 독출방법에 있어서,
    상기 메모리부로부터 패러렐하게 독출되는 데이터를 클락핀을 통해 인가되는 쉬프트 클락에 동기시켜 입출력핀을 통해 시어리얼하게 외부로 송신하는 단계를 구비하는 것을 특징으로 하는 데이터 독출방법.
  17. 제16항에 있어서, 상기 단계는,
    (1) 상기 시어리얼 데이터 및 상기 쉬프트 클락으로부터 어드레스 필드 조건을 검출하여 어드레스 플래그를 발생시키는 단계와,
    (2) 상기 시어리얼 데이터를 상기 쉬프트 클락의 첫 번째부터 8번째 클락에 순차적으로 동기시켜 우측으로 이동시켜 1바이트씩 저장한 다음 9번째 클락에 동기시켜 패러렐하게 1바이트씩 M바이트를 출력시키는 단계와,
    (3) 상기 어드레스 플래그가 엑티브되는 동안에 상기 1바이트씩 패러렐하게 출력되는 M바이트의 데이터를 순차적으로 저장하여 상기 메모리부의 첫 번째 어드레스로서 출력시키는 단계와,
    (4) 상기 어드레스 플래그가 넌엑티되는 동안에 상기 메모리부로부터 1바이트씩 패러럴하게 독출되는 데이터를 순차적으로 저장하고 버퍼링하는 단계, 및
    (5) 상기 1바이트씩 버퍼링된 독출데이터를 받아 상기 쉬프트 클락의 첫 번째부터 8번째 클락에 순차적으로 동기시켜 우측으로 이동시켜 상기 입출력핀을 통해 시어리얼하게 외부로 출력하는 단계를 구비하는 것을 특징으로 하는 데이터 독출방법.
  18. 제17항에 있어서, 상기 단계는, 상기 (3) 단계후에 상기 쉬프트 클락의 9번째 클락마다 상기 어드레스를 자동으로 증가시키는 단계를 더 구비하는 것을 특징으로 하는 데이터 독출방법.
  19. 제17항에 있어서, 상기 (1) 단계의 어드레스 플래그는, 상기 쉬프트 클락이 논리"하이"인 상태에서 상기 시어리얼 데이터가 논리"로우"에서 논리"하이"로 천이할 때 엑티브되고 상기 (3) 단계에서 상기 M바이트의 데이터를 순차적으로 저장할 때 까지 계속 엑티브 상태를 유지하는 것을 특징으로 하는 데이터 독출방법.
  20. 제17항에 있어서, 상기 M은 3인 것을 특징으로 하는 데이터 독출방법.
  21. 제16항에 있어서, 상기 메모리부는 EPROM, EEPROM, 및 플레쉬 메모리중 선택되는 어느 하나로 구성되는 것을 특징으로 하는 데이터 독출방법.
KR1019980013118A 1998-04-13 1998-04-13 시어리얼 인터페이스 회로를 구비하는 프로그래머블 마이크로콘트롤러와 이의 데이터 기입 및 독출방법 Expired - Fee Related KR100505600B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980013118A KR100505600B1 (ko) 1998-04-13 1998-04-13 시어리얼 인터페이스 회로를 구비하는 프로그래머블 마이크로콘트롤러와 이의 데이터 기입 및 독출방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980013118A KR100505600B1 (ko) 1998-04-13 1998-04-13 시어리얼 인터페이스 회로를 구비하는 프로그래머블 마이크로콘트롤러와 이의 데이터 기입 및 독출방법

Publications (2)

Publication Number Publication Date
KR19990080113A true KR19990080113A (ko) 1999-11-05
KR100505600B1 KR100505600B1 (ko) 2005-09-26

Family

ID=37304918

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980013118A Expired - Fee Related KR100505600B1 (ko) 1998-04-13 1998-04-13 시어리얼 인터페이스 회로를 구비하는 프로그래머블 마이크로콘트롤러와 이의 데이터 기입 및 독출방법

Country Status (1)

Country Link
KR (1) KR100505600B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100404232B1 (ko) * 2002-01-02 2003-11-05 주식회사 하이닉스반도체 마이크로 컨트롤러 장치
CN112470137A (zh) * 2019-01-24 2021-03-09 株式会社矽因赛德 具有级联结构的主机和从机设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3150005B2 (ja) * 1992-03-13 2001-03-26 日本電気株式会社 シリアルインタフェース回路

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100404232B1 (ko) * 2002-01-02 2003-11-05 주식회사 하이닉스반도체 마이크로 컨트롤러 장치
CN112470137A (zh) * 2019-01-24 2021-03-09 株式会社矽因赛德 具有级联结构的主机和从机设备

Also Published As

Publication number Publication date
KR100505600B1 (ko) 2005-09-26

Similar Documents

Publication Publication Date Title
US5794033A (en) Method and system for in-site and on-line reprogramming of hardware logics with remote loading in a network device
US8046527B2 (en) Apparatus and method for using a page buffer of a memory device as a temporary cache
US4071887A (en) Synchronous serial data adaptor
US7590027B2 (en) Nonvolatile semiconductor memory device
KR100505600B1 (ko) 시어리얼 인터페이스 회로를 구비하는 프로그래머블 마이크로콘트롤러와 이의 데이터 기입 및 독출방법
KR100377708B1 (ko) 저소비 전력화가 가능한 파이프라인 방식의 반도체 기억장치
US6892269B2 (en) Nonvolatile memory device with double serial/parallel communication interface
US20040117570A1 (en) Programmable transition state machine
US4747038A (en) Disk controller memory address register
US6611462B2 (en) Semiconductor integrated circuit
JP2014071929A (ja) Fifo回路
KR19990023884A (ko) 과도적인 효과에 의한 영향을 받지 않고 회로 스위칭이 가능한 반도체 논리회로 장치
FI87282B (fi) Anordning i en skivstyrning foer att i ett databehandlingssystem oeverfoera dataenhetsblock.
KR860000596A (ko) 슬레이브형 인터페이스 회로
CN112445742B (zh) 一种地址宽度自动识别的方法
KR100404232B1 (ko) 마이크로 컨트롤러 장치
KR20000046220A (ko) 가변 에스에프알 어드레스 기능을 갖는 에뮬레이션 마이크로 컨트롤러
RU1805496C (ru) Запоминающее устройство
SU1509861A2 (ru) Адаптер канал-канал
RU1817097C (ru) Устройство сопр жени интерфейсов
SU1049895A2 (ru) Адаптер канал-канал
JP3254781B2 (ja) 半導体装置
JP3703599B2 (ja) パターン信号発生装置
SU1444787A1 (ru) Устройство дл сопр жени канала передачи данных с магистралью
RU2024050C1 (ru) Адаптер канал - канал

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 19980413

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20030218

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 19980413

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20041209

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20050617

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20050726

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20050727

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee