GB2215156A - Processor controlled command port architecfure for flash memory - Google Patents
Processor controlled command port architecfure for flash memory Download PDFInfo
- Publication number
- GB2215156A GB2215156A GB8819692A GB8819692A GB2215156A GB 2215156 A GB2215156 A GB 2215156A GB 8819692 A GB8819692 A GB 8819692A GB 8819692 A GB8819692 A GB 8819692A GB 2215156 A GB2215156 A GB 2215156A
- Authority
- GB
- United Kingdom
- Prior art keywords
- memory
- coupled
- command
- address
- data
- 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
Links
- 230000015654 memory Effects 0.000 title claims description 85
- 230000006870 function Effects 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 7
- 239000000758 substrate Substances 0.000 claims description 7
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 claims description 5
- 238000000034 method Methods 0.000 claims description 5
- 229910052710 silicon Inorganic materials 0.000 claims description 5
- 239000010703 silicon Substances 0.000 claims description 5
- 238000012795 verification Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 12
- 239000004065 semiconductor Substances 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000009849 deactivation Effects 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 3
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 238000009413 insulation Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 2
- 229920005591 polysilicon Polymers 0.000 description 2
- 230000008672 reprogramming Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 239000002784 hot electron Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
- G11C16/16—Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/32—Timing circuits
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Description
J, 4 PROCESSOR CONTROLLED COMMAND PORT ARCHITECTURE FOR FLASH MEMORY.
IRAC'Kr,RC)tMr) OF THR TWENTWN Field of the invention.
The present invention relates to the field of metal-oxide-semiconductor (MOS) electrically programmable and electrically erasable read-only memories (EEPROMs) and to electrically programmable read-only memories (EPROMs) having floating gates.
Prior art.
The most commonly used EPROM cell has an electrically floating gate which is completely surrounded by insulation and generally disposed between 10a pource and drain region formed in a silicon substrate. In earlier versions of these cellsg charge is injected thimugh the insulation by avalanche inj;ction such as the device described in U.S. Patent No. 3,660, 819. Later versions of EPROMs relied on channel injection for ? 2 15 15 6 t 1 charging the floating gate as described in U.S. Patent Nos. 4,142,926; 4,,114,,255 and 4,,412,310. These EPROMs are erased by exposing the array to ultraviolet radiation.
Electrically erasable EPROMs (EEPROMs) are also commercially available. In some cases, charge is placed into and removed from a floating gate by tunnelling the charge through a thin oxide region formed on the substrate (See U.S. Patent No. 4,203,158). In other instances, charge is removed through an upper electrode (See See U.S. Patent No. 4,099,196).
These EEPROM cells do not lend themselves to being reduced in substrate area as do the EPROM cells. Various techniques have been impiemented to reduce the size of the memory array by providing higher-density cells. One such technique is disclosed in U.S. Patent No. 4,432,075. Further, U.S. Patent No. 4,266,283 discloses the arrangement of an EEPROM into an array and selection of various functions to be performed on the memory array.
EPROM memories are most often removed from their printed circuit boards for botli erasing and programing. A special programming device is used for programming the cells. This device also verifies that the cells have been properly erased and programed. During programing, electrons are transferred to the floating gate making the cells less conductive. The operatign of these EPROM devices are well-known.
EEPROMs are different than EPROMs in that EEPROMs are typically programmed and erased while installed in Z the same circuit (e.g., printed circuit board) used for reading data from the memory. That is, a special programming device is not used. In some cases "on-zhip" circuits are used to verify that the programming has been properly performed. U.S. Patent No. 4,460,982 discloses an intelligent EEPROM which provides means for both programming and erasing.
More recently, a new category of electrically erasable EPROMs/EEPROMs has emerged and these devices are sometimes referred to as "Flash" EPROMs or EEPROMs. In these flash memories, the entire array is simultaneously erased, electrically. The cells themselves use only a single device per cell and such cell are described in the fore-mentioned copending application Serial No. 892,446. Another relevant art is an article entitled "A 256-kbit Flash E2pROM Using Triple-Polysilicon Technology", Masuoka et al., IEEE Journal of Solid-State Circuits, Vol. SC-22, No. 4, August, 1987. The present invention is directed towards the use of these cells.
Electrically erasing flash memory devices gives rise to another problem, specifically over-erasing. Too much charge can be removed, making the device "depletion-like. Cells may require testing after being erased to verify that the floating gate is erased, but not too positively charged.
Another problem is encountered when in circuit erasing is used on the flash memories. Additional signal/command lines are needed to provide for the erasing and programming of the flash memory. Typically 4 2 k -4additional lines, which require additional pins on a memory chip. are not a problem when designing new circuits, boards, systems. etc. However,, for the flash memories to be used in place of existing EPROMs/EEPROMs, pin-to-pin compatibility Is a must requirement. Because additional control lines for erasing and programming are needed. a direct pin-to-pin compatibility cannot be achieved unless certain architectural changes are made within the flash memory device which permits the erasing 10 and reprogramming.
z -5gtDMRY nr THE PRESENT TWENTTON The present invention provides for a command port architecture for programming and erasing flash memory devices through a data port. In order to provide in circuit erasing, programming and erase/program verification, circuit means is incorporated on the same semiconductor chip which contains the memory. A command port controller is coupled to accept instructions from a data line coupled to an associated processor. Instructions written into the command port controller provide the necessary command to generate control signals for erasing and programming the memory as well as verifying the contents after the erase and program operations have been performed.
The command port is comprised of a command port controller, data registers coupled to a data bus to accept programming data; and address registers coupled to the address bus to accept address information during program andverifY. The command port controller is comprised of command and state registers coupled to the data bus lo accept command instructions from a microprocessor; clock generators for generating A.
necessary timing; and a state decoder for decoding the instructions inputted to the command and state registers.
Further, the controller provides an erase algorithm and a programming algorithm to erase and program the memory. The erase algorithm provides the necessary voltages to erase the flash memory cells and then is verifies that the memory Is erased. The erase cycle is monitored and repeated with each erase pulse having a predetermined pulsewidth which Is Incremented until erase is achieved. However. an error is detected when a maxim= pulse count is reached and full erasing of the memory has not occurred.
Equivalently,, during the programming of the memory the algorithm provides for programming each location of the memory and verifying its contents after the programming. The programming cycle is monitored and repeated with each programming pulse having a predetermined pulsewidth until programming Is achieved. However if programming cannot be achieved after a predetermined maximum pulse count then a programming error is noted.
i IRRTF-P DESCIaTPTTC)N nP THE DRAWTNGS Figure 1 Is a block diagram schematic of a flash memory device of the present invention.
is Figure 2 is a block diagram schematic of a command port 5 controller of the present invention.
Figure 3 is a timing diagram.for a read cycle of the present invention.
Figure 4 Is a timing diagram for an erase cycle of the present invention.
Figure 5 is a timing diagram for a programming cycle of the present invention.
Figure 6 is a flowchart diagram for an erase cycle of the present Invention.
Figure 7 Is a flowchart diagram for a programming 20 algorithm of the present Invention.
Figures Ba, 8b, 8c, Bd and 8e is a schematic diagram of the command port controller shown In Figure 2.
-a- IDETATLED TWSrMPTTON nP THE PRESENT MVENTMN A command port architecture which provides for a microprocessor control of program, erase, program verify, erase verify.and read modes for use with a flash memory is described. In the following description, numerous specific details are set forth, such as specific circuit configuration, components, etc., in order to provide a thorough understanding of the present invention. It will be obvious, however, to one skilled -in the art that the present invention may be practiced without these specific details. In other instances, well-known processes, architecture and circuits have not been described in detail in ordep not to unnecessarily obscure the present invention.
The preferred embodiment of the present invention is used in conjunction with a particular double-poly, single-transistor, electrically erasable, programmable flash memory which is also referred to as a flash EPROM.
2.0 It is a high-density non-volatile flash memory optimized for microprocessor controlled reprogramming capability. This particular flash EPROM uses an advanced complementary metal oxide semiconductor (CMOSt 1.5 pm technology, providing a 32l768 x 8 bits having 6 gm by 6 gm cell fabricated on a 192-mil square die. Although a particular 256K- bit flash EPROM is described, it is to be appreciated that other memory sizes and other memory technology can use the invention descriLed herein.
The non-volatile flash EPROM of the present invention is based on the EPROM technology. The memory -gcell uses equivalent programming mechanism as an EPROM, but can be electrically erased. Electrical erasure of the flash memory is achieved using a high quality tunnel oxide under a single transistor# floating polysilicon gate cell. The flash cell requires a 12 volt power supply for erase and program. The erase mechanism utilizes Fowler-Nordheim. tunnelling to move electrons from the floating gate to the cell source junction. Programming Is achieved in the standard EPROM manner of hot electron injection from the cell drain junction to the floating gate. The flash EPROM cell used with the present Invention is described in the prior art references cited in the earlier background section of
Othe application.
Without the use of specialized circuit a direct pin-for-pin compatibility cannot be achieved between the flash EPROM and prior art memory devices. In order to maintain pin-;to-pin compatibility between the flash EPROM and th& prior art EPROM device, the present invention provides for a specialized command port architecture which permits in circuit erasing and programming. The command port architecture of the present invention allows microprocessor contAl of program, erase, programlerase verify, and read modes while still maintaining pin-to-pin compatibility 'With the prior art EPROMslEEPROMs. This specialized architecture is implemented in a circuit which Is built into a semiconductor chip incorporating the flash memory.
Referring to Figure 1j, a flash EPROM semiconductor device 10 of the present invention is shown. An address bus 12 couples address bits AO-A14 to address latch 13. Although 15 bits are used to provide an address on bus 5 12, the actual number of address bits is arbitrary. Address latch 13 is coupled to X-decoder 14 and Ydecoder 15. X-decoder 14 is coupled to memory array 11and Y-decoder 15 is coupled to Y-gating circuit 16. The memory 11 of the preferred embodiment is a 256K bit cell array structure wherein X-decoder 14 provides the decoding to access the X (row) addressing and Y-decoder 15 provides decoding for the Y (column) addressing of the X-Y matrix of memory array 11. The arrangement 6f the memory array 11 and the accessing of such an array by the use of X and Y-decoders 14 and 15 and column gating circuitry 16 are well-known in the prior art EPROMs.
Data is coupled to device 10 by an 8-bit bidirectional data bus 20, butagain the number of bits on data bus 20 is a design choice. Data bus 20 is coupled to an input/output (1/0) buffer 21, wherein data being inputted to memory 11 is coupled through data latch 22 V.
on bus 23a. Conversely data from memory 11 which is to be outputted on data bus 20 is coupled through sen7ing circuits 101, through bus 23b, to 1/0 buffer 21 for output onto data bus 20. Incoming data is also coupled to command port controller 30 on bus 23a. Command port I controller 30 also receives external signals r-li and FEE If 'k 1 -11and provides control signals to address latch 13, data latch 22f erase voltage generator 24, program voltage generator 25, and erase/program verify generator 26. External signals FE' and external OE are coupled to a chip/output enable logic circuit 27. These data, address and control signals originate from a microprocessor, which is typically used in conjunction with semiconductor memories.
Supply voltage VCC and its return VSS are coupled to device 10, as well as programing voltage VPP which voltage value determines if the command port controller 30 is enabled to select read, erase or program functions. VPP is coupled to command port controller 30, erase voltage generator 24, program voltage generator 25 and erase/program verify generator 26. The origination of these voltages is irrelevant to the practice of the present invention.
Chip/output enable logic circuit 27 is coupled to 1/0 buffer 21. Circuit 27 provides the control signals to buffer 21. Erase voltage generator 24 is coupled to memory 11 for providing the necessary voltage to simultaneously erase memory array 11. Output of program voltage generator 25 is coupled to decoders 14 and 15 to provide program voltage to memory 11 when the program function output of erase/program verify generator 26 is coupled to X decoder 14 to provide verify voltage to memory 11 when the erase/program verify function is selected.
In order to provide in circuit erasure and programing of memory 11, device 10 of the preferred embodiment is designed to accept such commands on data line 20 from the processor coupled to device 10.
Whenever device 10 is to be selected,, chip enable signal CE goes low and chip 10 is prepared to receive mode instructions on data bus 20. Instructions pass through 1/0 buffer 21 to command port controller 30. Command port controller 30 receives one of 2n instructions 10.(where n is the number of data bits) from data bus 20, including the following six instructions program, program verify, erase, erase yerify, read, and signature read (a specialized read function to match memory 11- to appropriate external equipment protocol). Depending on which instruction word is received, the command port controller 30 generates control signals for providing the appropriate corresponding operation. After a particular instruction is inputted to command port. controller 30, write enable signal'R, chip enable I signal EE- and output enable signal OE control the generatign of various signals from command port controller 30 and logic circuit 27 for proper operation of the various units of device 10.
In the preferred embodiment, command port controller 30 is activated when VPP is at an approximate voltage value of 12 volts DC. If however deactivation of command port controller 30 is desirea, then a shift of the value of VPP from 12 volts to approximately 5 volts will deactivate command port controller 30.
1 -13Whenever VPP transitions to 5 volts. controller 30 is deactivated, such that array Instruction on data bus 20 which is intended for controller 30, Is Ignored. Whenever VPP Is at 5 volts and controller 30 is deactivatedi device 10 will function only in a read mode. This controller 30 deactivation scheme was provided In chip 10 of the preferred embodiment, in the event device 10 is used as a direct replacement of a prior art EPROM (or EEPROM which is being utilized for read operation only) in which 12v is not present. In such prior art EPROMs VPP is typically at 5 volts wherein a direct replacement of device 10 for a prior art EPROM will cause device 10 to provide read mode only. This controller deactivation scheme also provides absolute protection against Inadvertent erase or program of the memory when VPP is at 5 volts.
Referring to Figure 2, it shows a block diagram schematic of the command port controller 30 of the preferred embodiment. Chip enable signal CE is coupled to control logic 31 and address clock generator 32. Write enable signal WE is coupled as an input to control logic 31. Control logic 31 permits signal WE to be coupled to address clock generator 32, state 61ock generator 33, and command/data clock generators 34 only when chip enable signal FEE activates chip 10. Output of state clock generator 33, as well as data on data bus 23a, are coupled to state register 35, which output Is coupled to state decoder 36 and command clock generator 34a. The output of command clock generator 34a Is L.
-14 coupled to command register 37. Command register 37 also receive data from data bus 23a and the output of command register 37 is coupled to at^te decoder 36. The output of address clock generator 32 provides the strobe to address latch 13 of Figure 1 and data clock generator 34b provides the strobe to data latch 22 of Figure 1. Outputs from state decoder 36 are coupled back to control address clock generator 32 and state register 35. Other outputs from state decoder 36 are provided to erase voltage generator 24, program voltage generator 25, and erase/program verify generator 26 shown in Figure 1. State register 35 provides a feedback signal to command clock generator 34a, but command register 37 has no such feedback.
Functions are selected via data bus 23a in a write cycle controlled by the signals Z and FEF. Contents of the address latch 13 are updated on the falling edge of WE. The rising edge of signal WE causes instructions to be loaded into the state register 35 and either command register 37 or data latch 22. State decoder 36 decodes new internal modes and initiates appropriite operations 0.
by providing corresponding control signals.i. Control lines from state decoder 36 to erase voltage, program voltage and erase/program verify generators 24,, 25,' 2,, respectively,.causes these generators to provide VPP voltages to X-Y decoders 14 and 15 or memory 11 as is shown in Figure 1. Verify voltages derived from VPP are applied to the word lines through the X-decoder during 1 -15.program verify and erase verify to guarantee program and erase margin.
Also referring to Figures 3, 4 and 5, these figures illustrate timing sequences of various signals associated with device 10. Figure 3 shows a read function wherein memory 11 is addressed and data is read from memory 11 when output enable signal 5E_ activates circuit 27, which then activate the output function of buffer 21.
Figure 4 illustrates the timing cycle for an erase operation. Erase is achieved by a two-write sequence with the erase code written to the command register 37 and state register 35 on a first write cycle 40, and the jerase confirm code written to the state register 35 on a second write cycle 41. The confirm code initiates erase upon the rising edge of the second cycle 41 of signal WE. The state decoder 36 initiates a command to erase voltage generator 24 which then triggers a high voltage switch connecting 12 volts (VPP) to the source of all array cells of memory 11. It also grounds all word lines. Fgwler-Nordheim tunnelling results.in the simultaneous erasure of all cells of memory array 11. Writing the erase verify code to the registert-35 and 37 at write cycle 42 terminates erase, latches the address of the byte to verify and sets up internal erase margin voltages. A microprocessor can then access the output of the memory from the address accessed-using standard read timing when signal OE goes low at time 43. The verify procedure is then repeated for all addresses.
-16Programming is executed in a manner shown in Figure S. The program command is entered into registers 35 and 37 on the first cycle 45 of write enable signal WE.
A second iii cycle 46 loads the address latch 13 and data latch 22. The rising edge of the second WE cycle 46 initiates programming by causing state decoder 36 to generate a qontrol signal to program voltage generator 25, which then applies high voltage VPP to the gate and drain of the addressed cell of memory 11. Writing the program verify command to registers 35 and 37 at iii cycle 47 terminates programming and sets internal margin voltages to verify the newly programed byte. Again the addressed byte can be accessed using standard t - microprocessor read timings and when OE goes low at time 48.
Referring to Figure 6,, it shows a flowchart diagram of the erase algorithm utilized by the command port controller 30. During the initialization phase VPP is applied, all bytes are programmed to a particular value, in this case OOH (preconditioning), and counters are preset tO'a predetermined initialization value. Then the set up erase command is written followed by the A.
writing of the erase command (see Figure 4 for the timing diagram). After a time-out period during which erase is achieved, the erase verify command is written and followed by another predetermined time out (6g sec in this instance).
Then, data is read from memory and checked to determine if the data has been erased. If the data has z -17not been erased, then the pulsewidth for erasing the data is incremented by a predetermined value and stored in the TEW counter and checked for a maximum limit value (CUMTEW and TEW calculations are shown in Figure 6). In the preferred embodiment pulsewidth is incremented to a maximum limit'value for a cumulative erase time of 10 seconds. After each increment, the sequence is repeated through the write erase set up command and the write erase command again. However if the data has not been erased after a predetermined pulse count (in this example the value of 64 has been set), then an error is noted, signifying that an erasure cannot be achieved for that memory cell. Whenever data is read and is found to e erased, the address is incremented and the erase verify sequence is repeated until the last address has been verified, in which case a read command is written to the command ahd state registers to reset the registers for a read operation, and the erase cycle is completed. If a byte fails to verify as erased, pulsewidth TEW is incremented and the erase sequence is repeated. Erase efficiency is also achieved by starting recycling of verification from the last byte erased and verified.
Referring to Figure 7; a flowchart for a programing algorithm is shown. The programming cycle is initialized by applying VPP and initializing the pulse counter. Then the set up program command is written to the command and state registers followed a second write cycle which latches the address and the data (see Figure 5 for the timing diagram). After a predetermined time- il _18out period in which programming Is achieved, the program verify command is written. Again after a predetermined time-out period (61L sec in this example) data is read from memory to verify the programmed data. If the written data does not correspond to the data read from the memory pulse count is incremented to increase the programming time and the write and read sequences are repeated. In the present embodiment, the programming time is increased by repeating 100p sec pulses to a maximum pulse count of 25. Each increment of the pulse count increases the duration of the programming period until the predetermined value, in this case 25, is reached at which point error Is detected. If the read data is verified to be correct then the address is Incremented and the sequence repeated to write and read data from each of the other address. When the last address has been reachedi an Instruction Is written to the state and command registers to reset the register for a read operation. The algorithm of Figure 7 Is also used to load 00 for preconditioning prior to erase of Figure 6.
Although various prior art circuits can be Imple;ented to perform the block shown in Figure 2,
IQ Figures 8a-e show a particular circuit as used in the preferred embodiment to provide the various blocks of Figure 2. Reference numerals to the various blocks of Figure 2 correspond to the references of Figures Ba-e.
In addition, reset circuit 50 and page register circuits 51 are shown. The reset is to reset the command and state registers, such as during power up or when VPP is A -19at 5v. The page register circuit 51 is to control the page mode addressing of the memory. Further, control circuit 31 is not shown in specificity because control circuit 31 basically ANDs the chip enable and the write enable signals. The resultant signal is represented as ME.
The preferred embodiment utilizes a series of inverters to provide the delay for generating the strobe to the address latch from address clock generator 32.
As used in the specific circuit of the preferred embodiment, command register 37 is comprised of four separate registers R3. RSO R6 and R7. Registers R5, R6 and R7 are utilized for mode selection and R3 register Is used to decode and latch invalid Inputs. There are two registers In the state register 35. Register R2 is used with feedback control to activate erase and program state register Rl is used to control data input flow to data latches or the command registers. The command and data clock generators 34a and 34b have the function of creating the non-overlapping clock phases needed by the registers and the data latches. These clocks control the latthing of input data during a write cycle into the program data latches, command registers and state registers.
The address clock generator Is responsible for controlling the flow of address information to the address latches. The state registers 35 and command registers 37 provide the heart of the command port architecture, receive input from the data input buffer and store the data to decode modes of operation for the 3Z k r chip. The command instructions are determined by three data bits to registers 5, 6 and 7 and the truth table for determining the mode of operation from these bits is shown on Figure 8e. The command registers have no feedback from their outputs and keep track of single write modes and select entry to multiple write modes. The state registers have a feedback path from their output to their inputs and keep track of the chip's sequential operation when it goes through the various stages of the multiple write modes.
In the event device 10 is to be made compatible with existing EPROM devices the write enable signal is multiplexed with the most significant address bit A14. When VPP is at 5 volts A14/-WE pin reads the most significant address bit (A14),, which in some instances is used to select page mode. However when VPP is at a programming voltage (12 volts in this instance) the signal on A14j-WE pin is read as a write enable signal. Therefore by multiplexing the most significant address bit with the write enable signal, the multiplexing scheme permits device 10 of the present invention to be A.
pin compatible with existing EPROM devices.
Thus,, a command port architecture for programming and erasing flash EPROMslEEPROMs is described.
k..
-21rLAMR 1. An electrically erasable and electrically programmable read-only memory device fabricated on a silicon substrate comprising:
- a memory.comprised of a plurality of memory-cells of which each has a floating gate and wherein said memory cells are arranged in a row and column matrix; an address bus coupled to said memory for accessing locations in said memory; a bi-directional data bus coupled to said memory for transferring data on said bus; a command controller coupled to said data bus for ac5ppting command instruction words inputted on said data bus and translating said command instruction words; circuit means coupled to said command controller and said memory for receiving control signals from said command controller and generating read erase, program, erase verify and program verify signals to operate on said memory.,
Claims (1)
- 2. The device of Claim 1 further Including an address latch coupled toaccept address signals.on said address bus; and a matrix decoder coupled to said address latch and said memory for decoding said address signals to access said matrixed memory cells.3. The device of Claim 1 further including a data buffer coupled to said data bus for latching data signals.4. The device of Claim 1 wherein a write enable signal for writing said command instruction words into said command controller is multiplexed with one line of said address signals such that when said command controller is activated, said write enable signal is ielected and when said command controller is deselected, said line is coupled as said address signal.5. The device of Claim 1. wherein when said command controller Is deselected. it defaults to a read mode for reading data from said memory.6. An electrically erasable and electrically. programmable read-only memory device fabricated on a silicon substrate comprising:a memory comprised of a plurality of memory cells of which each has a floating gate and wherein said memory cells are arranged in a row and column matrix; an address bus coupled to said memory for accessing locations in said memory; a bi-directional data bus coupled to said memory for transferring data on said bus; a command controller coupled to said daft bus for accepting command instruction words inputted on said data bus and translating said command instruction words; circuit means coupled to said command controller and said memory for receiving control signals from said command controller, said control signals being generated in accordance with said command instruction words; -1 f P 1 F' Al A.-23said circuit means including switching means for switching programming and erasing voltages to said memory according to said function selected and also for switching verification signals to read and verify data in said memory.7. The device of Claim 6 further including an address latch coupled to accept address signals on said address bus; a matrix decoder coupled to said address signals to access said matrixed memory cells; and a data buffer coupled to said data bus for latching data signals.B. The device of Claim 1, wherein a write enable signal for writing said command instruction words into said command controller is multiplexed with one line of said address signals such that when said command controller is activated, said write enable signal is selected and when said command controller is deselected, said line is coupled as said address signal.9. The device of Claim 8, wherein when said command controller Is deselected,, it defaults-to a read mode for reading data from said memory.10. An electrically erasable and electrically programmable read-only memory device fabricated on a silicon substrate comprising:1 z k -24a memory comprised of a plurality of memory cells of which each has a floating gate and wherein said memory cells are arranged in a row and column matrix; an address bus coupled to said memory for accessing locations In said memory; a bi-directional data bus coupled to said memory for transferring data on said bus; a command controller coupled to said data bus for accepting command Instruction words inputted on said data bus and translating said command Instruction words; circuit means coupled to said command controller and said memory for receiving control signals from said command controller, said control signals being generated in accordance with said command instruction words to provide erase and program of said memory; said circuit means including registers to latch said instruction words. a state decoder to translate said instruction words and a clock generator to provide clocking and timing signals.11. The device of Claim 10 further including an address latch coupled to accept address signals on said address bus; a matrix decoder coupled to said adress signals to access said matrixed memory.cells; and a data buffer coupled to said data bus for latching data signals.12. The device of Claim 11. wherein a write enable signal for writing said command instruction words into said command controller is multiplexed with one line of V,.-25said address signals such that when said command controller is activated, said write enable signal is selected and when said command controller is deselected, said line is coupled as said address signal._13. The device of Claim 12. wherein when said command controller is deselected, it defaults to a read rAode for reading data from said memory.14. An electrically erasable and electrically programmable read-onl, memory device fabricated on a silicon substrate substantially as hereinbefore described with reference to the accompanying drawings.Published 1989 atThePatent Office, State House, 66,71 High Holborn, London WCIR4TP. F'urther copies maybe obtainedfrom The Patent Office. Sales Branch, St Mary Cray, Orpington, Kent BR5 3RD. Printed by Multiplex techniques ltd, St Mary Cray, Kent, Con. 1/87
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US15736288A | 1988-02-17 | 1988-02-17 |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| GB8819692D0 GB8819692D0 (en) | 1988-09-21 |
| GB2215156A true GB2215156A (en) | 1989-09-13 |
| GB2215156B GB2215156B (en) | 1991-11-27 |
Family
ID=22563401
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| GB8819692A Expired - Lifetime GB2215156B (en) | 1988-02-17 | 1988-08-18 | Processor controlled command port architecture for flash memory |
Country Status (5)
| Country | Link |
|---|---|
| JP (1) | JP2817052B2 (en) |
| KR (1) | KR0138791B1 (en) |
| DE (1) | DE3900979C2 (en) |
| FR (1) | FR2627316B1 (en) |
| GB (1) | GB2215156B (en) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO1994015341A1 (en) * | 1992-12-21 | 1994-07-07 | National Semiconductor Corporation | Memory array with field oxide islands eliminated and method |
| EP0460648A3 (en) * | 1990-06-05 | 1994-07-20 | Toshiba Kk | Programming circuit for use in nonvolatile semiconductor memory device |
| WO1996024935A1 (en) * | 1995-02-10 | 1996-08-15 | Micron Quantum Devices, Inc. | Filtered serial event controlled command port for flash memory |
| US5650969A (en) * | 1994-04-22 | 1997-07-22 | International Business Machines Corporation | Disk array system and method for storing data |
| US5799140A (en) * | 1995-04-21 | 1998-08-25 | International Business Machines Corporation | Disk array system and method for storing data |
| EP0600151A3 (en) * | 1992-12-03 | 1998-11-11 | Fujitsu Limited | Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics |
| US6525967B1 (en) | 1995-02-10 | 2003-02-25 | Micron Technology, Inc. | Fast-sensing amplifier for flash memory |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR940006611B1 (en) * | 1990-08-20 | 1994-07-23 | 삼성전자 주식회사 | Automatic erase optimization circuit and method for eeprom |
| JPH05283708A (en) * | 1992-04-02 | 1993-10-29 | Mitsubishi Electric Corp | Nonvolatile semiconductor memory device, manufacturing method and testing method thereof |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4408306A (en) * | 1981-09-28 | 1983-10-04 | Motorola, Inc. | Column and row erasable EEPROM |
| US4412309A (en) * | 1981-09-28 | 1983-10-25 | Motorola, Inc. | EEPROM With bulk zero program capability |
| US4460982A (en) | 1982-05-20 | 1984-07-17 | Intel Corporation | Intelligent electrically programmable and electrically erasable ROM |
| JPH0816882B2 (en) * | 1985-06-17 | 1996-02-21 | 株式会社日立製作所 | Semiconductor memory device |
| JPH0713879B2 (en) * | 1985-06-21 | 1995-02-15 | 三菱電機株式会社 | Semiconductor memory device |
-
1988
- 1988-08-18 GB GB8819692A patent/GB2215156B/en not_active Expired - Lifetime
- 1988-11-30 FR FR8815692A patent/FR2627316B1/en not_active Expired - Lifetime
-
1989
- 1989-01-07 KR KR1019890000094A patent/KR0138791B1/en not_active Expired - Fee Related
- 1989-01-14 DE DE3900979A patent/DE3900979C2/en not_active Expired - Lifetime
- 1989-02-17 JP JP3639589A patent/JP2817052B2/en not_active Expired - Lifetime
Cited By (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0460648A3 (en) * | 1990-06-05 | 1994-07-20 | Toshiba Kk | Programming circuit for use in nonvolatile semiconductor memory device |
| EP1158535A3 (en) * | 1992-12-03 | 2002-08-14 | Fujitsu Limited | Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics |
| US6646920B2 (en) | 1992-12-03 | 2003-11-11 | Fujitsu Limited | Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics |
| US6618288B2 (en) | 1992-12-03 | 2003-09-09 | Fujitsu Limited | Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics |
| US6611464B2 (en) * | 1992-12-03 | 2003-08-26 | Fujitsu Limited | Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics |
| EP0600151A3 (en) * | 1992-12-03 | 1998-11-11 | Fujitsu Limited | Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics |
| US6563738B2 (en) | 1992-12-03 | 2003-05-13 | Fujitsu Limited | Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics |
| US6288945B1 (en) | 1992-12-03 | 2001-09-11 | Fujitsu Limited | Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics |
| US6414874B2 (en) | 1992-12-03 | 2002-07-02 | Fujitsu Limited | Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics |
| US5422844A (en) * | 1992-12-21 | 1995-06-06 | National Semiconductor Corporation | Memory array with field oxide islands eliminated and method |
| US5512504A (en) * | 1992-12-21 | 1996-04-30 | National Semiconductor Corporation | Method of making a memory array with field oxide islands eliminated |
| WO1994015341A1 (en) * | 1992-12-21 | 1994-07-07 | National Semiconductor Corporation | Memory array with field oxide islands eliminated and method |
| US5650969A (en) * | 1994-04-22 | 1997-07-22 | International Business Machines Corporation | Disk array system and method for storing data |
| US6525967B1 (en) | 1995-02-10 | 2003-02-25 | Micron Technology, Inc. | Fast-sensing amplifier for flash memory |
| US6578124B1 (en) | 1995-02-10 | 2003-06-10 | Micron Technology, Inc. | Serial command port method, circuit, and system including main and command clock generators to filter signals of less than a predetermined duration |
| US6581146B1 (en) | 1995-02-10 | 2003-06-17 | Micron Technology, Inc. | Serial command port method, circuit, and system including main and command clock generators to filter signals of less than a predetermined duration |
| US5682496A (en) * | 1995-02-10 | 1997-10-28 | Micron Quantum Devices, Inc. | Filtered serial event controlled command port for memory |
| WO1996024935A1 (en) * | 1995-02-10 | 1996-08-15 | Micron Quantum Devices, Inc. | Filtered serial event controlled command port for flash memory |
| US6744673B2 (en) | 1995-02-10 | 2004-06-01 | Micron Technology, Inc. | Feedback biasing integrated circuit |
| US6914822B2 (en) | 1995-02-10 | 2005-07-05 | Micron Technology Inc. | Read-biasing and amplifying system |
| US6996010B2 (en) | 1995-02-10 | 2006-02-07 | Micron Technology, Inc. | Fast-sensing amplifier for flash memory |
| US5889795A (en) * | 1995-04-21 | 1999-03-30 | International Business Machines Corporation | Disk array system and method for storing data |
| US5799140A (en) * | 1995-04-21 | 1998-08-25 | International Business Machines Corporation | Disk array system and method for storing data |
Also Published As
| Publication number | Publication date |
|---|---|
| GB2215156B (en) | 1991-11-27 |
| GB8819692D0 (en) | 1988-09-21 |
| DE3900979C2 (en) | 2003-03-27 |
| FR2627316A1 (en) | 1989-08-18 |
| KR890013651A (en) | 1989-09-25 |
| KR0138791B1 (en) | 1998-06-15 |
| JP2817052B2 (en) | 1998-10-27 |
| JPH0210598A (en) | 1990-01-16 |
| DE3900979A1 (en) | 1989-08-31 |
| FR2627316B1 (en) | 1993-11-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5222046A (en) | Processor controlled command port architecture for flash memory | |
| US5053990A (en) | Program/erase selection for flash memory | |
| KR0172441B1 (en) | Programming method of non-volatile semiconductor memory | |
| KR100332001B1 (en) | Semiconductor nonvolatile memory device | |
| US6735116B2 (en) | NAND-type flash memory device with multi-page program, multi-page read, multi-block erase operations | |
| JP3807744B2 (en) | Automatic programming algorithm for page mode flash memory with variable program pulse height and pulse width | |
| US7283399B2 (en) | Nonvolatile memory system, semiconductor memory, and writing method | |
| JP4170682B2 (en) | Nonvolatile semiconductor memory device | |
| US5841721A (en) | Multi-block erase and verification circuit in a nonvolatile semiconductor memory device and a method thereof | |
| US5778440A (en) | Floating gate memory device and method for terminating a program load cycle upon detecting a predetermined address/data pattern | |
| KR0172401B1 (en) | Multistate Nonvolatile Semiconductor Memory Devices | |
| EP0566306A2 (en) | Semiconductor memory device | |
| US5369609A (en) | Floating gate memory array with latches having improved immunity to write disturbance, and with storage latches | |
| US6266282B1 (en) | Write method of synchronous flash memory device sharing a system bus with a synchronous random access memory device | |
| US6778443B2 (en) | Non-volatile semiconductor memory device having memory blocks pre-programmed before erased | |
| US5818764A (en) | Block-level wordline enablement to reduce negative wordline stress | |
| US5265059A (en) | Circuitry and method for discharging a drain of a cell of a non-volatile semiconductor memory | |
| US6011720A (en) | Nonvolatile memory with reduced write time/write verify time and semiconductor device thereof | |
| US7072224B2 (en) | Nonvolatile memory and method of erasing for nonvolatile memory | |
| US6568510B2 (en) | Flash memory including means of checking memory cell threshold voltages | |
| US6064603A (en) | Non-volatile semiconductor storage device | |
| GB2215156A (en) | Processor controlled command port architecfure for flash memory | |
| JPH11353887A (en) | Nonvolatile semiconductor memory device | |
| US6208558B1 (en) | Acceleration circuit for fast programming and fast chip erase of non-volatile memory | |
| US6229735B1 (en) | Burst read mode word line boosting |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PE20 | Patent expired after termination of 20 years |
Expiry date: 20080817 |