KR100388219B1 - Flash memory embeded one-chip micro controller unit - Google Patents
Flash memory embeded one-chip micro controller unit Download PDFInfo
- Publication number
- KR100388219B1 KR100388219B1 KR10-2000-0050492A KR20000050492A KR100388219B1 KR 100388219 B1 KR100388219 B1 KR 100388219B1 KR 20000050492 A KR20000050492 A KR 20000050492A KR 100388219 B1 KR100388219 B1 KR 100388219B1
- Authority
- KR
- South Korea
- Prior art keywords
- flash memory
- microcontroller unit
- data
- register
- programming
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 8
- 239000004065 semiconductor Substances 0.000 claims 2
- 230000002093 peripheral effect Effects 0.000 abstract description 8
- 238000012546 transfer Methods 0.000 abstract description 6
- 230000006870 function Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 10
- 230000007704 transition Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7839—Architectures of general purpose stored program computers comprising a single central processing unit with memory
- G06F15/7842—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/06—Address interface arrangements, e.g. address buffers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Microcomputers (AREA)
Abstract
본 발명은 플래쉬 메모리가 내장된 원칩 마이크로 콘트롤러 유닛에 관한 것으로, 마이크로 콘트롤러 유닛과 플래쉬 메모리를 하나의 칩 상에 구현하고, 플래쉬 메모리 내에 스테이트 머신 대신 레지스터를 두어 소거와 프로그래밍이 수행되도록 하는데 그 목적이 있다. 이와 같은 목적의 본 발명에 따른 원칩 마이크로 콘트롤러 유닛은, 마이크로 콘트롤러 유닛과 롬, 플래쉬 메모리, 주변 회로, 플래쉬 메모리 인터페이스가 하나의 칩에 형성되어 이루어진다. 마이크로 콘트롤러 유닛은 제어와 연산 기능을 수행한다. 롬에는 마이크로 콘트롤러 유닛에서 수행되는 명령어와 시스템 부팅시 필요한 명령어 및 데이터가 저장된다. 플래쉬 메모리에는 마이크로 콘트롤러 유닛의 명령어와 데이터가 프로그래밍 된다. 주변 회로는 마이크로 콘트롤러 유닛과 외부에 연결되는 호스트와의 인터페이스를 위한 것이다. 플래쉬 메모리 인터페이스는 플래쉬 메모리와 외부의 롬 라이터 사이의 데이터 전송 경로를 선택적으로 제거하고, 상기 플래쉬 메모리와 마이크로 콘트롤러 유닛 사이의 데이터 전송 경로를 선택적으로 제어한다.The present invention relates to a one-chip microcontroller unit with a built-in flash memory, and implements the microcontroller unit and the flash memory on a single chip, and puts a register instead of a state machine in the flash memory so that erase and programming can be performed. have. One-chip microcontroller unit according to the present invention for this purpose, the microcontroller unit and the ROM, flash memory, peripheral circuit, flash memory interface is formed on one chip. The microcontroller unit performs control and arithmetic functions. The ROM stores the commands executed in the microcontroller unit and the commands and data required for system booting. The flash memory is programmed with the instructions and data of the microcontroller unit. Peripheral circuitry is for interfacing the microcontroller unit with an externally connected host. The flash memory interface selectively removes a data transfer path between the flash memory and an external ROM writer and selectively controls the data transfer path between the flash memory and the microcontroller unit.
Description
본 발명은 마이크로 콘트롤러 유닛(MCU, Micro Controller Unit)에 관한 것으로, 특히 필요한 마이크로 콘트롤러의 제어 동작에 필요한 구성 요소가 하나의 칩에 통합 형성되는 원칩 마이크로 콘트롤러에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a microcontroller unit (MCU), and more particularly to a one-chip microcontroller in which components necessary for a control operation of a microcontroller are integrally formed on one chip.
일반적으로 원칩 마이크로 콘트롤러는 중앙처리장치와 프로그램 메모리, 데이터 메모리, 입출력 포트 등이 데이터 버스와 어드레스 버스 등으로 상호 유기적으로 연결되어 이루어진다. 원칩 마이크로 콘트롤러 유닛은 별도의 데이터와 명령어 등을 저장하기 위하여 별도의 메모리 칩과 함께 인쇄회로기판 상에 탑재되는 경우가 많다. 도 1은 이와 같은 종래의 마이크로 콘트롤러 유닛과 플래쉬 메모리가 하나의 인쇄회로기판에 독립적으로 탑재되는 경우를 나타낸 블록 다이어그램이다.In general, the one-chip microcontroller is formed by organically connecting the central processing unit, program memory, data memory, and input / output ports with data buses and address buses. One-chip microcontroller units are often mounted on a printed circuit board together with a separate memory chip to store separate data and instructions. 1 is a block diagram illustrating a case where such a conventional microcontroller unit and a flash memory are independently mounted on a single printed circuit board.
도 1에 나타낸 바와 같이, 하나의 인쇄회로기판(102) 상에 각각 독립된 칩으로 형성된 마이크로 콘트롤러 유닛(104)과 플래쉬 메모리(106)가 탑재되고, 데이터 버스와 어드레스 버스 등으로 상호 연결되어 하나의 시스템을 구성한다.As shown in FIG. 1, a microcontroller unit 104 and a flash memory 106 formed of independent chips are mounted on a single printed circuit board 102 and connected to each other by a data bus and an address bus. Configure the system.
이 경우, 독립된 두 개의 칩을 인쇄회로기판 상에 탑재하기 위한 설계상의 어려움이 따르고, 인쇄회로기판에서 차지하는 면적이 커지는 문제가 있다.In this case, there is a problem in designing for mounting two independent chips on a printed circuit board, and the area occupied by the printed circuit board becomes large.
본 발명에 따른 원칩 마이크로 콘트롤러 유닛은, 마이크로 콘트롤러 유닛과 플래쉬 메모리를 하나의 칩 상에 구현하고, 플래쉬 메모리 내에 스테이트 머신 대신 레지스터를 두어 소거와 프로그래밍이 수행되도록 하는데 그 목적이 있다.One-chip microcontroller unit according to the present invention is to implement the microcontroller unit and the flash memory on one chip, and to place the register in the flash memory instead of the state machine to perform the erase and programming.
이와 같은 목적의 본 발명은 마이크로 콘트롤러 유닛과 롬, 플래쉬 메모리, 주변 회로, 플래쉬 메모리 인터페이스가 하나의 칩에 형성되어 이루어진다. 마이크로 콘트롤러 유닛은 제어와 연산 기능을 수행한다. 롬에는 마이크로 콘트롤러 유닛에서 수행되는 명령어와 시스템 부팅시 필요한 명령어 및 데이터가 저장된다. 플래쉬 메모리에는 마이크로 콘트롤러 유닛의 명령어와 데이터가 프로그래밍 된다. 주변 회로는 마이크로 콘트롤러 유닛과 외부에 연결되는 호스트와의 인터페이스를 위한 것이다. 플래쉬 메모리 인터페이스는 플래쉬 메모리와 외부의 롬 라이터 사이의 데이터 전송 경로를 선택적으로 제거하고, 상기 플래쉬 메모리와 마이크로 콘트롤러 유닛 사이의 데이터 전송 경로를 선택적으로 제어한다.According to the present invention, a microcontroller unit, a ROM, a flash memory, a peripheral circuit, and a flash memory interface are formed on a single chip. The microcontroller unit performs control and arithmetic functions. The ROM stores the commands executed in the microcontroller unit and the commands and data required for system booting. The flash memory is programmed with the instructions and data of the microcontroller unit. Peripheral circuitry is for interfacing the microcontroller unit with an externally connected host. The flash memory interface selectively removes a data transfer path between the flash memory and an external ROM writer and selectively controls the data transfer path between the flash memory and the microcontroller unit.
도 1은 종래의 마이크로 콘트롤러 유닛과 플래쉬 메모리가 하나의 인쇄회로기판에 독립적으로 탑재된 경우를 나타낸 블록 다이어그램.1 is a block diagram showing a case where a conventional microcontroller unit and a flash memory are independently mounted on a single printed circuit board.
도 2는 본 발명에 따른 플래쉬 메모리가 내장된 원칩 마이크로 콘트롤러 유닛의 블록 다이어그램.2 is a block diagram of a one-chip microcontroller unit incorporating a flash memory according to the present invention.
도 3은 본 발명에 따른 원칩 마이크로 콘트롤러 유닛에 내장되는 플래쉬 메모리의 구성을 나타낸 블록 다이어그램.Figure 3 is a block diagram showing the configuration of a flash memory embedded in the one-chip microcontroller unit according to the present invention.
도 4는 본 발명에 따른 원칩 마이크로 콘트롤러 유닛의 온-칩 모드(on-chip mode)를 설명하기 위한 블록 다이어그램.4 is a block diagram for explaining on-chip mode of a one-chip microcontroller unit according to the present invention;
도 5는 본 발명에 따른 원칩 마이크로 콘트롤러 유닛의 온-보드 모드(on-board mode)를 설명하기 위한 블록 다이어그램.5 is a block diagram illustrating an on-board mode of a one-chip microcontroller unit in accordance with the present invention.
* 도면의 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings
102 : 인쇄회로기판 104, 204 : 마이크로 콘트롤러 유닛102: printed circuit board 104, 204: microcontroller unit
106, 210 : 플래쉬 메모리 202 : 원칩 마이크로 콘트롤러 유닛106, 210: flash memory 202: one-chip microcontroller unit
206 : 롬 208 : 에스램206: Romans 208: Sram
212 : 주변 회로 214 : 플래쉬 메모리 인터페이스212: peripheral circuit 214: flash memory interface
302 : 플래쉬 메모리 셀 어레이 304 : X-디코더302: flash memory cell array 304: X-decoder
306 : Y-디코더 308 : 센스 앰프306: Y-decoder 308: sense amplifier
310 : 어드레스 천이 검출부 312 : 고전압 발생부310: address transition detector 312: high voltage generator
316 : 레지스터부 402 : 롬 라이터316: register 402: ROM writer
502 : 호스트502: host
본 발명에 따른 원칩 마이크로 콘트롤러 유닛을 도 2 내지 도 5를 참조하여 설명하면 다음과 같다. 먼저 도 2는 본 발명에 따른 플래쉬 메모리가 내장된 원칩 마이크로 콘트롤러 유닛의 블록 다이어그램이다.The one-chip microcontroller unit according to the present invention will be described with reference to FIGS. 2 to 5. 2 is a block diagram of a one-chip microcontroller unit incorporating a flash memory according to the present invention.
도 2에 나타낸 바와 같이, 원칩 마이크로 콘트롤러 유닛(202)은 마이크로 콘트롤러유닛(204)과 롬(ROM)(206), 에스램(SRAM)(208), 플래쉬 메모리(210), 주변 회로(peripheral circuit)(212), 플래쉬 메모리 인터페이스(214)가 데이터 버스를 통해 유기적으로 연결되어 이루어진다.As shown in FIG. 2, the one-chip microcontroller unit 202 includes a microcontroller unit 204, a ROM 206, an SRAM 208, a flash memory 210, and a peripheral circuit. 212, flash memory interface 214 is organically connected via a data bus.
마이크로 콘트롤러 유닛(204)은 제어와 연산 기능을 수행한다.The microcontroller unit 204 performs control and arithmetic functions.
롬(206)은 마이크로 콘트롤러 유닛(204)이 수행할 명령어를 저장한다. 플래쉬 메모리(210) 역시 마이크로 콘트롤러 유닛(204)이 수행할 명령어를 저장하는데, 롬(206)에는 시스템 부팅시에 외부의 호스트(host)와의 직렬/병렬 통신을 수행하는데 필요한 비교적 작은 크기의 명령어가 저장되는 점이 플래쉬 메모리(210)와 다른 점이다.The ROM 206 stores instructions for the microcontroller unit 204 to perform. The flash memory 210 also stores instructions for the microcontroller unit 204 to execute. The ROM 206 includes relatively small instructions necessary for performing serial / parallel communication with an external host at system boot. The stored point is different from the flash memory 210.
에스램(208)은 연산을 위한 임시 데이터를 저장하거나, 간단한 명령어를 외부로부터 직렬 입력받아 저장한다.The SRAM 208 stores temporary data for operation or receives a simple command serially from an external device.
플래쉬 메모리(210)는 EEPROM(Electrically Erasable and Programmable ROM)의 한 종류로서, 마이크로 콘트롤러 유닛(204)의 명령어나 파라메터 데이터(parameter data) 등을 저장한다.The flash memory 210 is a type of EEPROM (Electrically Erasable and Programmable ROM), and stores instructions, parameter data, and the like of the microcontroller unit 204.
주변 회로(212)는 마이크로 콘트롤러 유닛(204)과 외부 호스트와의 인터페이스를 위한 것인데, 와치-독 타이머(watch-dog timer)와 직렬 및 병렬 입출력 인터페이스(I/O interface), 아날로그-디지털 변환기(ADC), 위상동기루프 회로(PLL) 등이 포함된다.Peripheral circuitry 212 is for interfacing the microcontroller unit 204 with an external host, including a watch-dog timer, serial and parallel input / output interfaces, and analog-to-digital converters. ADC), phase locked loop circuit (PLL), and the like.
플래쉬 메모리 인터페이스(214)는 플래쉬 메모리(210)가 온-칩 모드(on-chip mode)에서 동작할 때 외부의 롬 라이터(ROM writer)와 플래쉬 메모리(210) 사이의 데이터 전송 경로나, 마이크로 콘트롤러 유닛(204)과 플래쉬 메모리(210) 사이의 데이터 전송 경로를 선택적으로 제어한다.The flash memory interface 214 may be a microcontroller or a data transfer path between an external ROM writer and the flash memory 210 when the flash memory 210 operates in an on-chip mode. The data transfer path between the unit 204 and the flash memory 210 is selectively controlled.
도 3은 본 발명에 따른 원칩 마이크로 콘트롤러 유닛에 내장되는 플래쉬 메모리의 구성을 나타낸 블록 다이어그램이다. 도 3에 나타낸 바와 같이, 본 발명에 따른 플래쉬 메모리는 플래쉬 메모리 셀 어레이(302)와 X-디코더(304) 및 Y-디코더(306), 센스 앰프(308), 어드레스 천이 검출부(310), 고전압 발생부(312), 레지스터(316)를 포함하여 이루어진다.3 is a block diagram showing the configuration of a flash memory embedded in a one-chip microcontroller unit according to the present invention. As shown in FIG. 3, the flash memory according to the present invention includes a flash memory cell array 302, an X-decoder 304 and a Y-decoder 306, a sense amplifier 308, an address transition detector 310, and a high voltage. It includes a generator 312, the register 316.
플래쉬 메모리 셀 어레이(302)에는 소정의 프로그래밍이 이루어진다. X-디코더(304)와 Y-디코더(306)는 로우 어드레스 및 컬럼 어드레스를 디코딩 하여 플래쉬 메모리 셀 어레이(302)에서 해당 메모리 셀이 선택되도록 한다. 센스 앰프(308)는 선택된 메모리 셀의 데이터를 센싱하여 증폭한다. 어드레스 천이 검출부(310)는 어드레스의 변화를 검출하고, 그때마다 센스 앰프(308)를 인에이블 시킨다. 고전압 발생부(312)는 플래쉬 메모리 셀 어레이(302)의 각각의 셀을 프로그래밍할 때 필요한 고전압을 발생시키는데, 전하 펌프 회로(charge pump circuit)와 전압 레귤레이터(voltage regulator) 등으로 구성된다.The flash memory cell array 302 is programmed. X-decoder 304 and Y-decoder 306 decode the row address and column address so that the corresponding memory cell is selected in flash memory cell array 302. The sense amplifier 308 senses and amplifies data of the selected memory cell. The address transition detection unit 310 detects a change in the address and enables the sense amplifier 308 at each time. The high voltage generator 312 generates a high voltage required when programming each cell of the flash memory cell array 302. The high voltage generator 312 includes a charge pump circuit and a voltage regulator.
레지스터부(316)는 다음과 같이 구성된다. 어드레스 레지스터(address register)는 프로그래밍하고자하는 셀들의 어드레스를 저장한다. 어드레스 레지스터에 저장된 데이터가 논리 0일 때 프로그래밍을 수행하고 논리 1일 때에는 프로그래밍을 수행하지 않는다. 데이터 레지스터(data register)는 프로그래밍하고자 하는 데이터를 저장한다. 콘트롤 레지스터(control register)는 프로그램 펄스(program pulse)와소거 펄스(erase pulse)의 제어 값과 고전압 발생부(312)의 전하 펌프 회로의 제어 값, 프로그래밍 및 소거 확인(programming and erase verify) 제어 값 등을 저장한다. 소거 블록 선택 레지스터(erase block selection register)는 플래쉬 메모리 셀 어레이(302)에 구분되어 있는 각각의 소거 블록을 선택하기 위한 제어 값들을 저장한다. 즉, 플래쉬 메모리 셀 어레이(302)의 데이터가 소거될 때 블록 단위로 소거되는데, 소거 블록 선택 레지스터의 값을 참조하여 특정 블록을 선택함으로써 해당 블록의 데이터를 소거할 수 있다. 파워 레지스터(power register)는 고전압 발생부(312)의 전압 레벨을 결정하는 값들을 저장한다. 테스트 레지스터(test register)는 플래쉬 메모리 셀 어레이(302)의 신뢰성 시험과 각 메모리 셀의 문턱전압 측정 및 리퍼런스 셀(reference cell)의 프로그래밍에 필요한 제어 값들을 저장한다. 플래쉬 메모리(210)의 입출력 신호는 어드레스 신호(ADD)와 칩 셀렉트바 신호(CEB), 라이트 인에이블바 신호(WEB), 리셋바 신호(RSTB), 레지스터 선택 신호(R_SEL), 입력 데이터 신호(DIN), 출력 데이터 신호(DOUT) 등이 있다.The register section 316 is configured as follows. An address register stores the address of cells to be programmed. Programming is performed when the data stored in the address register is logical zero. Programming is not performed when the logic one is logical. The data register stores the data to be programmed. The control register includes control values of program pulses and erase pulses, control values of the charge pump circuit of the high voltage generator 312, and programming and erase verify control values. And so on. An erase block selection register stores control values for selecting each erase block that is divided in the flash memory cell array 302. In other words, when data of the flash memory cell array 302 is erased, the data of the corresponding block may be erased by selecting a specific block by referring to the value of the erase block selection register. The power register stores values for determining the voltage level of the high voltage generator 312. The test register stores control values necessary for the reliability test of the flash memory cell array 302, the threshold voltage measurement of each memory cell, and the programming of the reference cell. The input / output signal of the flash memory 210 includes an address signal ADD, a chip select bar signal CEB, a write enable bar signal WEB, a reset bar signal RSTB, a register selection signal R_SEL, and an input data signal ( DIN), an output data signal DOUT, and the like.
본 발명에 따른 원칩 마이크로 콘트롤러 유닛은 온-칩 모드와 온-보드 모드의 두 가지 동작 모드를 갖는데, 이를 도 4와 도 5를 참조하여 설명하면 다음과 같다. 먼저 도 4는 본 발명에 따른 원칩 마이크로 콘트롤러 유닛의 온-칩 모드(on-chip mode)를 설명하기 위한 블록 다이어그램이다. 도 4에 나타낸 바와 같이, 온-칩 모드에서 모드 제어 신호(MODE)는 원칩 마이크로 콘트롤러 유닛(202)을 온-칩 모드로 전환시키면, 플래쉬 메모리 인터페이스(214)를 통해 외부의 롬 라이터(ROM writer)(402)로부터 직접 플래쉬 메모리(210)에 프로그래밍 된다.The one-chip microcontroller unit according to the present invention has two operation modes, an on-chip mode and an on-board mode, which will be described with reference to FIGS. 4 and 5. 4 is a block diagram illustrating an on-chip mode of a one-chip microcontroller unit according to the present invention. As shown in FIG. 4, in the on-chip mode, the mode control signal MODE is converted to an external ROM writer through the flash memory interface 214 when the one-chip microcontroller unit 202 is switched to the on-chip mode. 402 is programmed into the flash memory 210 directly.
도 5는 본 발명에 따른 원칩 마이크로 콘트롤러 유닛의 온-보드 모드(on-board mode)를 설명하기 위한 블록 다이어그램이다. 도 5에 나타낸 바와 같이, 온-보드 모드에서 모드 제어 신호(MODE)가 원칩 마이크로 콘트롤러 유닛(202)을 온-보드 모드로 전환시키면, 프로그래밍하고자 하는 데이터가 외부의 호스트(502)에서 주변 회로(212)의 입출력 인터페이스와 마이크로 콘트롤러 유닛(204)을 통해 전달되어 에스램(208)에 저장되고, 이때 프로그래밍 및 소거에 필요한 명령어도 함께 에스램(208)에 저장된다. 마이크로 콘트롤러 유닛(204)은 에스램(208)에 저장된 전달된 데이터와 명령어를 이용하여 플래쉬 메모리(210)에 데이터를 프로그래밍 한다.FIG. 5 is a block diagram illustrating an on-board mode of a one-chip microcontroller unit according to the present invention. As shown in FIG. 5, when the mode control signal MODE switches the one-chip microcontroller unit 202 to the on-board mode in the on-board mode, the data to be programmed is transferred from the external host 502 to the peripheral circuit ( The input / output interface of 212 and the microcontroller unit 204 are transmitted and stored in the SRAM 208, where the instructions for programming and erasing are also stored in the SRAM 208. The microcontroller unit 204 programs the data in the flash memory 210 using the transferred data and instructions stored in the SRAM 208.
외부의 호스트나 내부의 마이크로 콘트롤러 유닛(204)이 레지스터부(316)의 값들을 이용하여 플래쉬 메모리 셀 어레이(302)를 프로그래밍 하는 순서는 다음과 같다. 호스트나 마이크로 콘트롤러 유닛(204)은 프로그래밍하고자 하는 데이터와 관련 주소를 각각 데이터 레지스터와 어드레스 레지스터에 기록하고, 프로그래밍하고자 하는 전압 레벨을 파워 레지스터에 기록한다. 다음은 콘트롤 레지스터의 프로그래밍 인에이블 비트를 인에이블 시켜서 프로그래밍을 수행한다. 프로그래밍이 완료되면 프로그래밍 인에이블 비트를 디스에이블 시킨다. 다음은, 콘트롤 레지스터의 프로그램 확인 비트를 선택하여 프로그래밍된 데이터를 리드(read)함으로써 프로그래밍이 성공적으로 이루어졌는지를 검사한다. 만약 프로그래밍이 성공적으로 이루어지지 않은 경우에는 제한된 회수 내에서 프로그래밍이 성공할 때까지 프로그래밍을 반복하고, 제한된 회수의 프로그래밍 동안에 프로그래밍이 성공하지 못하면 프로그래밍 실패(fail) 신호를 발생시킨다.The order in which the external host or the internal microcontroller unit 204 programs the flash memory cell array 302 using the values of the register unit 316 is as follows. The host or microcontroller unit 204 writes the data and associated addresses to be programmed into the data register and the address register, respectively, and the voltage level to be programmed into the power register. Next, programming is done by enabling the programming enable bit in the control register. When programming is complete, disable the programming enable bit. Next, the program check bit in the control register is selected to read the programmed data to verify that the programming was successful. If the programming is not successful, the programming is repeated until the programming succeeds within a limited number of times. If the programming does not succeed during the limited number of programming, a programming fail signal is generated.
외부의 호스트나 내부의 마이크로 콘트롤러 유닛(204)이 레지스터부(316)의 값들을 이용하여 플래쉬 메모리 셀 어레이(302)를 소거하는 순서는 다음과 같다. 소거 블록 선택 레지스터에서 소거하고자 하는 블록을 선택한다. 파워 레지스터에 소거에 필요한 전압 레벨을 기록한다. 콘트롤 레지스터의 소거 인에이블 비트를 활성화시켜서 소거 펄스를 발생시킨다. 소거 펄스가 발생함에 따라 소거에 필요한 충분한 타이밍이 확보된다. 콘트롤 레지스터의 소거 인에이블 비트를 비활성화시켜서 소거 동작을 종료시킨다. 소거 확인 비트를 활성화시켜서 데이터가 확실하게 소거되었는지를 확인한다. 소거가 확실히 이루어지지 않은 경우에는 상술한 소거 과정을 제한된 회수 내에서 반복적으로 실시한다.The external host or the internal microcontroller unit 204 erases the flash memory cell array 302 using the values of the register unit 316 as follows. Select the block to be erased from the erase block select register. Write the voltage level required for erasing to the power register. Enable the erase enable bit in the control register to generate an erase pulse. As the erase pulse is generated, sufficient timing for erasing is ensured. The erase operation is terminated by disabling the erase enable bit of the control register. Enable the erase confirmation bit to verify that the data has been erased securely. If the erasure is not made surely, the above erasing process is repeatedly performed within a limited number of times.
상술한 프로그래밍 동작과 소거 동작이 온-칩 모드에서 수행되는 경우의 제어 알고리듬은 롬 라이터(402)의 제어 시스템의 기계어로 코딩되며, 온-보드 모드에서의 제어 알고리듬은 마이크로 콘트롤러 유닛(204)의 기계어로 코딩되어 에스램(208)에 저장된다.The control algorithm in the case where the programming operation and the erasing operation described above are performed in the on-chip mode is coded in the machine language of the control system of the ROM writer 402, and the control algorithm in the on-board mode is stored in the microcontroller unit 204. Coded in machine language and stored in SRAM 208.
본 발명에 따른 원칩 마이크로 콘트롤러 유닛은, 원칩 마이크로 콘트롤러 유닛과 플래쉬 메모리를 하나의 칩 상에 구현함으로써 제품의 설계와 제작이 용이하고, 플래쉬 메모리 내에 스테이트 머신 대신 레지스터를 두어 프로그래밍과 소거가 이루어지도록 함으로써 회로의 면적, 즉 칩 사이즈가 감소하는 효과를 제공한다.The one-chip microcontroller unit according to the present invention can be easily designed and manufactured by implementing the one-chip microcontroller unit and the flash memory on one chip, and by programming and erasing by placing a register in place of the state machine in the flash memory. The area of the circuit, i.e. the chip size, is reduced.
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2000-0050492A KR100388219B1 (en) | 2000-08-29 | 2000-08-29 | Flash memory embeded one-chip micro controller unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2000-0050492A KR100388219B1 (en) | 2000-08-29 | 2000-08-29 | Flash memory embeded one-chip micro controller unit |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20020017279A KR20020017279A (en) | 2002-03-07 |
KR100388219B1 true KR100388219B1 (en) | 2003-06-19 |
Family
ID=19685911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2000-0050492A Expired - Fee Related KR100388219B1 (en) | 2000-08-29 | 2000-08-29 | Flash memory embeded one-chip micro controller unit |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100388219B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103389963B (en) * | 2012-05-09 | 2016-08-31 | 北京兆易创新科技股份有限公司 | A kind of embedded system controller |
CN108399146B (en) * | 2018-02-26 | 2021-11-23 | 上海东软载波微电子有限公司 | Flash controller, instruction fetching method and computer readable storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05266219A (en) * | 1992-03-17 | 1993-10-15 | Hitachi Ltd | Microcomputer |
US5872994A (en) * | 1995-11-10 | 1999-02-16 | Nec Corporation | Flash memory incorporating microcomputer having on-board writing function |
KR20000009368A (en) * | 1998-07-23 | 2000-02-15 | 양 딩유안 | Microcomputer having built-in flash memory with on-chip programmability and method of programming data in flash memory |
JP2000181898A (en) * | 1998-12-14 | 2000-06-30 | Nec Corp | Flash memory mounted type single chip microcomputer |
-
2000
- 2000-08-29 KR KR10-2000-0050492A patent/KR100388219B1/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05266219A (en) * | 1992-03-17 | 1993-10-15 | Hitachi Ltd | Microcomputer |
US5872994A (en) * | 1995-11-10 | 1999-02-16 | Nec Corporation | Flash memory incorporating microcomputer having on-board writing function |
KR20000009368A (en) * | 1998-07-23 | 2000-02-15 | 양 딩유안 | Microcomputer having built-in flash memory with on-chip programmability and method of programming data in flash memory |
JP2000181898A (en) * | 1998-12-14 | 2000-06-30 | Nec Corp | Flash memory mounted type single chip microcomputer |
Also Published As
Publication number | Publication date |
---|---|
KR20020017279A (en) | 2002-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100375217B1 (en) | Microcontroller incorporating an electrically rewritable non-volatile memory | |
US7463520B2 (en) | Memory device with variable trim settings | |
US8799725B2 (en) | Macro and command execution from memory array | |
EP2301034B1 (en) | Fast, low-power reading of data in a flash memory | |
CN104051018B (en) | Nonvolatile memory device and method of operating the same | |
WO1998028745A1 (en) | Nonvolatile writeable memory with fast programming capability | |
US9772779B2 (en) | Methods for operating a distributed controller system in a memory device | |
CN114237122B (en) | Circuit and operation method for configuring, reading back and refreshing SRAM type FPGA | |
EP0808501B1 (en) | Filtered serial event controlled command port for flash memory | |
US5802268A (en) | Digital processor with embedded eeprom memory | |
EP0617377A2 (en) | Microcomputer with flash memory | |
KR100388219B1 (en) | Flash memory embeded one-chip micro controller unit | |
JP4327626B2 (en) | Nonvolatile semiconductor memory device | |
JPH07296599A (en) | Nonvolatile semiconductor memory | |
US20060236164A1 (en) | Automatic test entry termination in a memory device | |
US7310277B2 (en) | Non-volatile semiconductor storage device with specific command enable/disable control signal | |
EP0582991B1 (en) | Data processing apparatus having a flash memory built-in which is rewritable by use of external device | |
JP4873526B2 (en) | Semiconductor integrated circuit and microcomputer | |
US20030142570A1 (en) | Memory controller and serial memory | |
JPH11176174A (en) | Writing circuit of non-volatile memory and non-volatile memory | |
KR20110001581A (en) | How copyback works for nonvolatile memory devices | |
JP3135770B2 (en) | Nonvolatile semiconductor memory and storage device using the nonvolatile semiconductor memory | |
US7499321B2 (en) | Semiconductor integrated circuit | |
KR20060039251A (en) | Microcontroller Unit with Flash Memory | |
KR20040006109A (en) | Smart card system with nonvolatile memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20000829 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20020618 Patent event code: PE09021S01D |
|
AMND | Amendment | ||
E601 | Decision to refuse application | ||
PE0601 | Decision on rejection of patent |
Patent event date: 20021227 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20020618 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |
|
AMND | Amendment | ||
J201 | Request for trial against refusal decision | ||
PJ0201 | Trial against decision of rejection |
Patent event date: 20030127 Comment text: Request for Trial against Decision on Refusal Patent event code: PJ02012R01D Patent event date: 20021227 Comment text: Decision to Refuse Application Patent event code: PJ02011S01I Appeal kind category: Appeal against decision to decline refusal Decision date: 20030310 Appeal identifier: 2003101000267 Request date: 20030127 |
|
PB0901 | Examination by re-examination before a trial |
Comment text: Amendment to Specification, etc. Patent event date: 20030127 Patent event code: PB09011R02I Comment text: Request for Trial against Decision on Refusal Patent event date: 20030127 Patent event code: PB09011R01I Comment text: Amendment to Specification, etc. Patent event date: 20020816 Patent event code: PB09011R02I |
|
B701 | Decision to grant | ||
PB0701 | Decision of registration after re-examination before a trial |
Patent event date: 20030310 Comment text: Decision to Grant Registration Patent event code: PB07012S01D Patent event date: 20030228 Comment text: Transfer of Trial File for Re-examination before a Trial Patent event code: PB07011S01I |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20030605 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20030609 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |