US20040057299A1 - Memory card having a buffer memory for storing testing instruction - Google Patents

Memory card having a buffer memory for storing testing instruction Download PDF

Info

Publication number
US20040057299A1
US20040057299A1 US10/654,957 US65495703A US2004057299A1 US 20040057299 A1 US20040057299 A1 US 20040057299A1 US 65495703 A US65495703 A US 65495703A US 2004057299 A1 US2004057299 A1 US 2004057299A1
Authority
US
United States
Prior art keywords
memory
interrupt
vector
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.)
Abandoned
Application number
US10/654,957
Inventor
Kenji Kozakai
Yuusuke Jono
Motoki Kanamori
Kazunori Furusawa
Atsushi Shikata
Yosuke Yukawa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to US10/654,957 priority Critical patent/US20040057299A1/en
Publication of US20040057299A1 publication Critical patent/US20040057299A1/en
Priority to US10/874,381 priority patent/US7002853B2/en
Priority to US11/182,956 priority patent/US7292480B2/en
Priority to US11/907,422 priority patent/US7440337B2/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • G11C16/0416Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors comprising cells containing a single floating gate transistor and no select transistor, e.g. UV EPROM

Definitions

  • the present invention relates to memory cards such as file memories, and relates to a technique advantageously applied to, for example, a memory card in which functions of a file memory is included on a single chip.
  • a file memory is a memory card capable of storing file data utilizing a technique similar to management of file allocation by using an FAT (file allocation table) in a hard disk.
  • FAT file allocation table
  • an electrically rewritable flash memory is used as file data storage area in such a file memory.
  • the data are temporarily stored in a buffer memory.
  • file data to be written stored in the buffer memory are written in the flash memory after being assigned with an ECC code at an ECC circuit, and file data read from the flash memory and stored in the buffer memory are output to the outside after error check and correction using an ECC code.
  • a file memory frequently incorporates a data processor such as a microcomputer for purposes including file management and control of access to the buffer memory.
  • PCMCIA-ATA type flash memory cards which are one type of file memories are described on pages 78 and 79 of “Nikkei Electronics” published on Apr. 11, 1994.
  • a file memory requires a program for debugging or testing in addition to a program for normal file management.
  • the required programs are normally incorporated in a memory card even when the file memory incorporates a data processor such as a microprocessor because such a data processor does not need a function of accessing outside of the memory card.
  • the storage capacity of a ROM for storing programs is thus increased by the program for debugging and testing and the like, which results in a problem in that the scale of the circuit is increased.
  • a countermeasure muse be taken when limitations on a chip size and the like do not allow a random increase of the storage capacity of a ROM in implementing functions of a memory card such as a file memory in the form of a semiconductor integrated circuit by loading them on a single chip.
  • a memory card 1 comprising an electrically rewritable non-volatile memory 4 , a data processor 3 having a function of executing instructions capable of managing the allocation of file data in the non-volatile memory, an interface control circuit 2 having a function of establishing external interface, for controlling the execution of instructions by the data processor in response to external commands and for controlling access to the non-volatile memory and a buffer memory 7 for temporarily storing the file data, in which the buffer memory can be used also as a program memory.
  • command control means 24 , 26 for decoding a first command CMD 1 supplied from the outside and for instructing the data processor to fetch an instruction from the buffer memory and to operate. This makes it possible to cause the integrated data processor to execute new programs for purposes including testing or debugging without adding a separate program memory.
  • Interrupt may be used as a method of control for causing the data processor to execute a program PGM 1 stored in the buffer memory.
  • the command control means may employ a configuration in which an interrupt is requested to the data processor and a first cause of interrupt is notified to the same by decoding the first command.
  • the data processor includes a central processing unit 30 capable of responding to an interrupt by transferring the process to an instruction address indicated by a vector retrieved from a vector table 340 according to the cause of interrupt and a ROM 34 to be accessed by the central processing unit.
  • the ROM 34 includes the vector table 340 and a program area 341 , and the vector table includes a first vector VCT 1 associated with the first cause of interrupt.
  • the central processing unit can execute an instruction from the beginning of the program in the buffer memory indicated by the first vector.
  • the program PGM 1 may be transferred to the buffer memory from the outside or from the integrated flash memory.
  • the usability of the file memory is improved by allowing the file memory to transfer the program to the buffer memory by itself.
  • the command control means further requests the data processor an interrupt and notifies it of a second cause of interrupt by decoding a second command CMD 2 supplied from the outside.
  • the vector table in the ROM further includes a second vector VCT 2 that responds to the second cause of interrupt.
  • the program area of the ROM further includes a transfer control program PGM 2 for storing the externally supplied program in the buffer memory starting from a first address thereof.
  • the second vector is information indicating the leading address of the transfer control program
  • the first address is an address that coincides with the address indicated by the first vector VCT 1 .
  • the command control means further requests the data processor an interrupt and notifies the same of a third cause of interrupt by decoding a third command CMD 3 supplied from the outside.
  • the vector table in the ROM further includes a third vector VCT 3 that responds to the third cause of interrupt.
  • the program area of the ROM further includes a transfer control program PGM 3 for storing the program supplied from the non-volatile memory in the buffer memory starting from the first address thereof.
  • the third vector is information indicating the leading address of the transfer control program
  • the first address is an address that coincides with the address indicated by the first vector.
  • the memory card 1 constituted by a single chip, even when a random increase of the storage capacity of the ROM is inhibited by limitations on the chip size and the like, the programs for purposes including debugging or testing can be executed within the limitations.
  • FIG. 1 is a block diagram of a memory card LSI which is an example of a memory card according to the invention.
  • FIG. 2 is a block diagram of an example of a data processing system that utilizes a card select signal unique to each memory card LSI.
  • FIG. 3 is a block diagram of an example of a data processing system that utilizes card addresses transmitted along with commands.
  • FIG. 4 is a block diagram of an example of a host interface circuit.
  • FIG. 5 illustrates vectors maintained by a ROM and a programmable area of a buffer RAM along with a CPU address map.
  • FIG. 6 illustrates an example of a state of execution of an extended program.
  • FIG. 7 illustrates a state of execution of a first transfer control program for storing an external extended program in a buffer RAM.
  • FIG. 8 illustrates a state of execution of a second transfer control program for storing an extended program from a flash memory in a buffer RAM.
  • FIG. 9 illustrates a flow of data during a write of file data into a flash memory using a buffer RAM as a data buffer.
  • FIG. 10 illustrates a flow of data during a read of file data from a flash memory using a buffer RAM as a data buffer.
  • FIG. 11 illustrates a flow of data during input and output of work data to and from a CPU using a buffer RAM as a data buffer.
  • FIG. 12 illustrates a flow of data during input and output of work data between a CPU and a flash memory using a buffer RAM as a data buffer.
  • FIG. 13 illustrates a principle of information storage in a flash memory.
  • FIG. 14 is a circuit diagram of a memory cell array utilizing flash memory cell transistors showing a principle of the configuration thereof.
  • FIGS. 15A, 15B and 15 C illustrate examples of conditions for voltages for erase and write operations on flash memory cells.
  • FIG. 16 is a block diagram of an example of flash memory.
  • FIG. 17 is a circuit diagram of an example of a static memory cell.
  • FIG. 1 shows a semiconductor integrated circuit for a memory card according to an embodiment of the invention.
  • the illustrated semiconductor integrated circuit may be regarded as a system-on-chip type LSI (semiconductor integrated circuit) that constitutes a minimum unit of a file memory and is formed on a single semiconductor substrate (chip) such as single crystal silicon, although this is not limiting the invention.
  • LSI semiconductor integrated circuit
  • a semiconductor integrated circuit (also simply referred to as “memory card LSI”) 1 shown in FIG. 1 has an interface control circuit 2 , a microcomputer 3 which is an example of a data processor, a flash memory 4 which is an example of an electrically rewritable non-volatile memory, a reset circuit 5 , a clock oscillation circuit 6 utilizing an oscillator, a buffer RAM 7 and a work RAM 8 .
  • a power supply voltage Vcc and a ground voltage Vss are externally input to the memory card LSI 1 as operating power supplies.
  • the input power supply voltage Vcc and ground voltage Vss are supplied to each of the above-described circuits.
  • the interface control circuit 2 has a host interface circuit (Host I/F) 11 , a microcomputer interface (Micro I/F) 12 , a file control logic (FCL) 13 and a data transfer logic (DTL) 14 which are connected each other by a bus 10 .
  • Host I/F host interface circuit
  • Micro I/F microcomputer interface
  • FCL file control logic
  • DTL data transfer logic
  • a clock signal (Clock) 2 A and a card select signal (Card Select) 2 D are externally input to the host interface circuit 11 , and a command (Command) 2 B and data (Data) 2 C are input to and output from the same.
  • Each of the command 2 B and data 2 C is input and output on a bit serial basis, although this is not limiting the invention.
  • the host interface circuit 11 accepts the externally supplied command 2 B and decodes it to instruct operations of the microcomputer 3 and flash memory 4 and to control file data access to the flash memory 4 .
  • the instruction of an operation of the microcomputer 3 is performed by supplying an interrupt signal NMI and a cause of interrupt from the host interface circuit 11 to the microcomputer 3 through the microcomputer interface 12 .
  • the microcomputer interface 12 exchanges the interrupt signal NMI, a control signal Ctl and various data such as data information and control information with the microcomputer 3 .
  • the file control logic 13 controls file data access to the flash memory 4 according to the result of command decoding at the host interface circuit 11 under control of the microcomputer 3 .
  • the buffer RAM 7 is used as a file data buffer memory for temporarily storing file data externally supplied to the host interface circuit 11 or temporarily storing file data read from the flash memory 4 . It is also used as an extended program memory for the microcomputer 3 .
  • the control over access to the buffer RAM 7 is carried out through the data transfer logic 14 .
  • the data transfer logic 14 has an ECC circuit 14 A to check and correct errors during access to the buffer RAM 7 with the ECC circuit.
  • the buffer RAM 7 When the buffer RAM 7 is used as a file data buffer memory, in a file data writing operation, the file data are read by the data transfer logic 14 from the buffer RAM 7 on to the bus 10 , and the read file data are written in the flash memory 4 under control of the file control logic 13 . In a file data reading operation, the file data are read from the flash memory 4 on to the bus 10 under control of the file control logic 13 , and the read file data are written in the buffer RAM 7 under control of the file transfer logic 14 .
  • the state in which the buffer RAM 7 is used as a buffer memory for file data is achieved when a file access command is externally supplied to the interface control circuit 2 ; an interrupt according to the result of decoding of the command is accepted by the microcomputer; and the result of the decoding of the command is supplied to the file control logic 13 and file transfer logic 14 .
  • the buffer RAM 7 is mapped to an address space of the microcomputer 3 (more particularly, a CPU 30 to be described later).
  • the microcomputer 3 can access the buffer RAM 7 similarly to access to the work RAM 8 through the data transfer logic 14 .
  • this mode of access is enabled when the buffer RAM 7 is used as an extended program memory of the microcomputer 3 .
  • the state in which the microcomputer 3 utilizes the buffer RAM 7 as an extended program memory is realized when an external command for the execution of an extended program is supplied to the interface control circuit 2 and an interrupt according to the result of decoding of the command is accepted by the microcomputer 3 . This process will be detailed later.
  • the file memory LSI 1 has a file data access system which is compatible with a hard disk apparatus, although this is not limiting the invention.
  • one cluster which is a unit area for access management includes four sectors, and a management area is allocated to each of the clusters.
  • a management area has pointer information for determining the arrangement of clusters forming a file, information on the number of rewrites, information identifying good and defective sectors and the like.
  • the flash memory 4 has a directory area that identifies the file name of a file stored therein and the leading cluster of the same.
  • the microcomputer 3 In order to manage the arrangement of file data in clusters in the flash memory 4 , the microcomputer 3 generates a management table in the integrated SRAM 35 based on information of the management areas and directory area. The microcomputer 3 controls the generation and update of the management table and generates information specifying a management unit area to be accessed at access to file data using the management table. The information for controlling access to file data is supplied to the file control logic 13 through the microcomputer interface 12 .
  • the microcomputer 3 has a central processing unit (CPU) 30 , an integrated ROM (read only memory) 34 in which an operation program of the CPU 30 and the like are stored, an integrated SRAM (static random access memory) 35 used as a work area of the CPU 30 or an area for temporarily storing data, a bus controller (BSC) 33 for controlling the bus cycle of an external bus 37 when the CPU 30 accesses an external address space and a user break controller (UBC) 31 for supporting debugging such as breakpoint control, which are each connected to an internal bus 38 .
  • An interrupt signal NMI and a cause of interrupt are input to an interrupt control circuit (INTC) 32 which in turn requests the CPU 30 an interrupt by performing interrupt priority control.
  • An interrupt processing program is stored in the integrated ROM 34 , although this is not limiting the invention.
  • a watch dog timer (WDT) 36 for monitoring the run away of the CPU 30 and the like is connected to the external bus 37 of the microcomputer 3 in addition to the bus controller 33 . Further, the work RAM 8 and microcomputer interface 12 are connected through the bus.
  • the microcomputer 3 has one I/O port 39 A as another interface circuit. The I/O port 39 A is exclusively used for inputting the interrupt signal NMI and outputting control signals represented by the control signal Ctl. No general purpose I/O is provided, although this is not limiting the invention.
  • the microcomputer 3 has a sleep mode and a standby mode as low power consumption modes, although this is not limiting the invention.
  • the CPU 30 executes a sleep instruction when a standby control bit provided in a control register (not shown) has a first logical value to enter the sleep mode. In the sleep mode, the CPU 30 stops operating with the state of the register and the like kept unchanged. Peripheral circuits continue operating. The sleep mode is cancelled by an interrupt or reset.
  • the CPU 30 executes a sleep instruction when the standby control bit provided in the control register has a second logical value to enter the standby mode. In the standby mode, the CPU 30 stops operating with the state of the register and the like kept unchanged, and the peripheral circuits also stop operating. The standby mode is canceled by an interrupt or reset.
  • a clock signal CLK 2 is supplied from the oscillation circuit 6 to a clock pulse generator 39 B of the microcomputer 3 .
  • the oscillation circuit 6 stops outputting the clock signal CLK 2 according to a signal output by the microcomputer 3 in response.
  • the interrupt signal NMI is asserted from the microcomputer interface 12 to the port 39 A in this state
  • the clock control circuit 15 detects the same state. Accordingly, the clock control circuit 15 causes the oscillation circuit 6 to resume the supply of the clock signal CLK 2 . Therefore, when the CPU 30 responds to the interrupt, the microcomputer 3 can leave the standby mode because supply of the clock signal CLK 2 has already been resumed by then.
  • the reset circuit 5 resets the interface control circuit 2 with a reset signal RES 1 and resets the microcomputer 3 with a reset signal RES 2 .
  • the flash memory 4 is reset by a reset signal RES 3 which is controlled according to the value of a reset enable bit RSB provided in a control register in the file control logic (FCL) 13 .
  • FIGS. 2 and 3 show examples of a data processing system utilizing memory card LSIs 1 as described above.
  • the memory card LSIs 1 are packaged using a technique such as resin molding with connectors thereof exposed.
  • 100 represents a host system
  • 101 represents slots for mounting the memory cards.
  • FIGS. 2 and 3 illustrate configurations to allow a plurality of memory card LSIs 1 to be mounted at a time.
  • the clock signal line 2 A, command signal line 2 B and data signal line 2 C are shared by the memory card LSIs 1 in both of the configurations.
  • the selection of the plurality of memory card LSIs 1 mounted is carried out using the card select signal 2 D specific to each of the memory card LSIs 1 in the example in FIG. 2 and using card addresses transmitted along with commands in the example in FIG. 3.
  • a memory card LSI 1 recognizes that it has been selected upon the input of a card address allocated to it at an initializing operation.
  • FIG. 4 is a block diagram of the host interface circuit 11 .
  • the host interface circuit 11 has a command input register 20 to which the command 2 B is input, a response control circuit 21 for responding to the input of commands, a data input register 22 to which data 2 C are input and a data output register 23 for outputting the data 2 C.
  • An input command is decoded by a command decoder 24 and, in accordance with the result of the decoding, a control logic circuit 26 controls interrupts to the microcomputer 3 , data input and output, responses to a host apparatus and the like.
  • 27 represents a memory for temporary storage used by the control logic 26 .
  • an extended program is executed using vector type interrupt control performed by the microcomputer 3 .
  • the vector interrupt of the microcomputer 3 is performed as follows. Specifically, the microprocessor 3 is notified of an interrupt by an interrupt signal NMI from the interface control circuit 2 .
  • the interrupt control circuit 32 performs interrupt priority control and the like on the interrupt initiated by the interrupt signal NMI and asserts an interrupt request signal INT to the CPU 30 when the interrupt is accepted.
  • the interface control circuit 2 detects the acceptance of the interrupt, it supplies information specifying a cause of the interrupt to the external bus 37 through the microcomputer interface 12 .
  • the CPU 30 retrieves a vector associated with the cause of interrupt from the vector table.
  • the CPU 30 proceeds to an instruction address indicated by the retrieved vector and branches to a process of responding to the interrupt. In the case of an interrupt for which the process is to return to the state immediately preceding the interrupt after the process of responding to the interrupt, the state is obviously saved before the process of responding to the interrupt.
  • FIG. 5 shows mapping of the addresses of the integrated ROM 34 , work RAM 8 , buffer RAM 7 and integrated SRAM 35 to an address space which can be managed by the CPU 30 .
  • a part of the buffer RAM 7 is an area 70 which can be used also as an extended program memory (programmable area), although this is not limiting the invention.
  • a program stored in the programmable area 70 is referred to as “extended program PGM 1 ”.
  • the integrated ROM 34 has the vector table 340 and program area 341 .
  • the vector table 340 typically has a first vector VCT 1 , a second vector VCT 2 and a third vector VCT 3 .
  • the program area 341 has a first transfer control program PGM 2 and a second transfer program PGM 3 as subroutines. Programs for a reset process, file managing process and the like are also stored, although not shown.
  • the vector VCT 1 has information on the leading address of the programmable area 70 .
  • the extended program PGM 1 is stored starting from the leading address of programmable area 70 .
  • the vector VCT 2 has information on the leading address of the storage area of the first transfer control program PGM 2 .
  • the vector VCT 3 has information on the leading address of the storage area of the second transfer control program PGM 3 .
  • the first transfer control program PGM 2 is a transfer control program for storing an extended program PGM 1 externally supplied to the memory card LSI 1 in the programmable area 70 starting from the leading address of the same.
  • the second transfer control program PGM 3 is a transfer control program for reading an extended program PGM 1 which has been transferred to the flash memory 4 in the form of a file or which has been stored therein in advance at a manufacturing step and for storing the same in the programmable area 70 starting from the leading address thereof.
  • FIG. 6 schematically shows a process of executing an extended program PGM 1 stored in the programmable area 70 .
  • the execution of the extended program PGM 1 stored in the programmable area 70 is instructed by an extended program execution command CMD 1 externally supplied to the interface control circuit 2 .
  • the command decoder 24 decodes the same and, upon receipt of the result of the decoding, the control logic circuit 26 outputs an interrupt signal NMI and notifies the CPU 30 of a first cause associated with the extended program execution command.
  • the CPU 30 retrieves a first vector VCT 1 associated with the first cause from the vector table 340 and proceeds to the execution of the extended program PGM 1 in the programmable area 70 .
  • FIG. 7 schematically shows a process of executing the first transfer control program PGM 2 .
  • the execution of the first transfer control program PGM 2 is instructed by an external transfer control execution command CMD 2 for an extended program externally supplied to the interface control circuit 2 .
  • the command decoder 24 decodes the same and, upon receipt of the result of the decoding, the control logic circuit 26 outputs an interrupt signal NMI and notifies the CPU 30 of a second cause associated with the external transfer control execution command.
  • the CPU 30 retrieves a second vector VCT 2 associated with the second cause from the vector table 340 and proceeds to the execution of the first transfer control program PGM 2 .
  • FIG. 8 schematically shows a process of executing the second transfer control program PGM 3 .
  • the execution of the second transfer control program PGM 3 is instructed by an internal transfer control execution command CMD 3 for an extended program externally supplied to the interface control circuit 2 .
  • the command decoder 24 decodes the same and, upon receipt of the result of the decoding, the control logic circuit 26 outputs an interrupt signal NMI and notifies the CPU 30 of a third cause associated with the internal transfer control execution command.
  • the CPU 30 retrieves a third vector VCT 3 associated with the third cause from the vector table 340 and proceeds to the execution of the second transfer control program PGM 3 .
  • the CPU 30 it is possible to cause the CPU 30 to execute separate programs for purposes including testing or debugging using the buffer RAM 7 without any additional program memory.
  • the memory card LSI 1 constituted by a single chip, even when a random increase of the storage capacity of the ROM 34 is inhibited by limitations on the chip size and the like, the programs for purposes including debugging or testing can be executed within the limitations.
  • the file memory 1 since the transfer of an extended program PGM 1 externally supplied or stored in the integrated flash memory 4 can be controlled by the file memory 1 itself, the file memory 1 has preferable usability with respect to an extended program.
  • modes of data transfer using the buffer RAM 7 include modes of utilization inherent in a file memory in which it is used as a data buffer when file data are written in the flash memory 4 (FIG. 9) and in which it is used as a data buffer when file data held in the flash memory 4 are read out (FIG. 10).
  • modes of utilization of the buffer RAM 7 in which it is used as a data buffer when work data are input and output to and from the CPU 30 as shown in FIG. 11 and in which it is used as a data buffer when work data are exchanged between the CPU 30 and the flash memory 4 as shown in FIG. 12.
  • FIGS. 13A and 13B An example of the flash memory 4 will now be described for reference. First, a description will be made with reference to FIGS. 13A and 13B on a principle of the storage of information in the flash memory.
  • the memory cell shown in FIG. 13A as an example is constituted by an insulated gate type field effect transistor having a double layer gate structure.
  • 431 represents a p-type silicon substrate
  • 432 represents a p-type semiconductor region formed on said silicon substrate 431
  • 433 and 434 represent n-type semiconductor regions.
  • 435 represents a floating gate formed above the p-type silicon substrate 431 with a thin oxide film 436 (having a thickness of, for example, 10 nm) as a tunnel insulation film interposed therebetween
  • 437 represents a control gate formed above the floating gate 435 with an oxide film 438 interposed therebetween.
  • the source is constituted by the region 434
  • the drain is constituted by the regions 433 and 432 .
  • Information stored in this memory cell is held in the transistor substantially as a change in a threshold voltage.
  • a transistor of a memory cell for storing information (hereinafter also referred to as “memory cell transistor”) is of the n-channel type unless otherwise specified.
  • an operation of writing information in a memory cell is carried out by applying a high voltage to the control gate 437 and the drain and by injecting electrons into the floating gate 435 from the drain side using avalanche injection.
  • the threshold voltage of the storage transistor as viewed from the control gate 437 becomes higher than that of a storage transistor in an erase state which has not been subjected to a write operation.
  • an erase operation is carried out by applying a high voltage to the source and by extracting electrons from the floating gate 435 toward the source using the tunnel phenomenon.
  • the threshold voltage of the storage transistor as viewed from the control gate 437 becomes lower by erase operation.
  • the threshold voltage of a memory cell transistor is a positive voltage level in both of the write and erase states. Specifically, the threshold voltage in the write state is higher than a word line selection level supplied from a word line to the control gate 437 , and the threshold voltage in the erase state is lower than the same. Since such a relationship exists between the two threshold voltages and the word line selection level, the memory cell can be constituted by a single transistor without using a selection transistor.
  • the voltage applied to the drain and the control gate 437 is limited to a relatively small value. For example, a low voltage on the order of 1 V is applied to the drain, and a low voltage on the order of 5 V is applied to the control gate 437 .
  • the magnitude of the channel current flowing through the memory cell transistor is detected by applying those voltages to allow the information stored in the memory cell to be determined as “0” or “1”.
  • FIG. 14 shows a principle of the configuration of a memory cell array utilizing memory cell transistors as described above.
  • FIG. 14 shows four typical memory cell transistors Q 1 through Q 4 .
  • the control gates of the memory cell transistors Q 1 and Q 2 (Q 3 and Q 4 ) arranged on the same row (selection gates of the memory cells) are connected to a respective word lines WL 1 (WL 2 ), and the drain regions of the storage transistors Q 1 and Q 3 (Q 2 and Q 4 ) arranged on the same column (input/output nodes of the memory cells) are connected to a respective data line DL 1 (DL 2 ).
  • the source regions of the storage transistors Q 1 and Q 3 (Q 2 and Q 4 ) are coupled to a source line SL 1 (SL 2 ).
  • FIGS. 15A, 15B and 15 C show examples of conditions for voltages for the erase and write operations on the memory cells.
  • the memory elements are the memory cell transistors
  • the gates are the control gates as the selection gates of the memory cell transistors.
  • erasure based on a negative voltage method is carried out by applying a negative voltage, e.g., ⁇ 10 V to the control gate to generate a high electrical field required for erasure.
  • a negative voltage e.g., ⁇ 10 V
  • erasure based on a positive voltage method allows at least memory cells whose sources are commonly connected to be erased at a time. Therefore, when the source lines SL 1 and SL 2 are connected in the configuration in FIG.
  • data lines may serve as units (common source lines extend in the direction of data lines) as typically illustrated in FIG. 14 or word lines may alternatively serve as units (common source lines extend in the direction of source lines). Erasure based on the negative voltage method allows memory cells whose control gates are commonly connected to be erased at a time.
  • FIG. 16 shows an example of the flash memory 4 .
  • 403 represents a memory array which has memory mats and sense latch circuits.
  • the memory mat has a multiplicity of non-volatile memory cell transistors which can be electrically erased and written.
  • the memory cell transistors have a configuration including a source and a drain formed on a semiconductor substrate or in a memory well, a floating gate formed in a channel region with a tunnel oxide film interposed and a control gate overlaid on the floating gate with a layer insulation film interposed as described with reference to FIG. 13.
  • the control gates are connected to word lines 406 ; the drains are connected to bit lines 405 ; and the sources are connected to source lines which are not shown.
  • External input/output terminals I/O 0 through I/O 7 are also used as address input terminals, data input terminals, data output terminals and command input terminals.
  • X-address signals input through the external input/output terminals I/O 0 through I/O 7 are supplied to an X-address buffer 408 through a multiplexer 407 .
  • An X-address decoder 409 decodes internal complementary address signals output by the X-address buffer 408 to drive the word lines.
  • the memory mats included in the memory array 403 are configured on the left and right of the sense latch circuit array. Specifically, precharge circuits, bit lines and the like are provided at both of the input and output nodes of the sense latch circuits.
  • the bit lines 405 are selected based on a selection signal output by a Y-address decoder 411 by Y gate array circuit 413 .
  • Y-address signals input through the external input/output terminals I/00 through I/07 are preset in a Y-address counter 412 , and address signals which are sequential increments starting with the preset values are supplied to the Y-address decoder 411 .
  • a bit line selected by a Y gate array circuit 413 is conducted to an input terminal of an output buffer 415 during a data output operation and is conducted to an output terminal of an input buffer 417 through a data control circuit 416 during a data input operation.
  • the connection between the output buffer 415 , input buffer 417 and input/output terminals I/O 0 through I/O 7 is controlled by the multiplexer 407 .
  • Commands supplied through the input/output terminals I/O 0 through I/O 7 are supplied to a mode control circuit 418 through the multiplexer 407 and input buffer 417 .
  • the data control circuit 416 is capable of supplying the memory array 403 with not only data supplied through the input/output terminals I/O 0 through I/O 7 but also data having logical values in accordance with the control of the mode control circuit 418 .
  • a control signal buffer circuit 419 is supplied with a chip enable signal CEb, an output enable signal OEb, a write enable signal WEb, a serial clock signal SC, a reset signal RESb and a command enable signal CDEb as access control signals.
  • the mode control circuit 418 controls a function of interfacing external signals according to the states of those signals and controls internal operations according to command codes.
  • a command or data is input to the input/output terminals IO 0 through I/O 7 .
  • the signal CDEb is asserted; the signal WEb is asserted further if it is a command; and the signal WEb is negated if it is data.
  • the signal CDEb is negated and the signal WEb is asserted.
  • the mode control circuit 418 can externally indicate such a state by asserting a ready/busy signal R/Bb.
  • An internal power supply circuit 420 generates various operating power supplies 421 for purposes such as write, erase verify and read and supplies them to the X-address decoder 409 and memory cell array 403 .
  • the mode control circuit 418 controls the flash memory 4 as a whole according to commands.
  • the operation of the flash memory 4 is basically determined by the commands.
  • the commands allocated to the flash memory include, for example, read, erase and write commands.
  • the read command is constituted by a first command
  • the other commands are constituted by a first command and a second command.
  • the flash memory 4 has a status register 423 for indicating the internal status thereof, and the contents of the same can be read through the input/output terminals I/O 0 through I/O 7 when the signal OEb is asserted.
  • the sense latch circuits can latch write data supplied through the Y gate array circuit 413 .
  • the flash memory 4 has the input/output terminals I/O 0 through I/O 7 for eight bits, write data can be set in eight sense latch circuits at one cycle of input of write data.
  • a write voltage is applied to cause a write operation after write data are set in sense latch circuits associated with the bit lines of all memory cells whose selection terminals are coupled to one word line.
  • all bit lines are precharged to a predetermined level in advance; the bit lines of memory cells selected for writing are discharged down to a ground potential; and the bit lines of memory cells unselected for writing are maintained at the precharge level.
  • a high write voltage is applied to word lines selected for writing, a high voltage is applied between the control gates and drains of the memory cells selected for writing to increase the threshold voltage of the memory cells selected for writing, which realizes a write state.
  • the memory cells Prior to a write operation, the memory cells are in an erase state in which the threshold voltage is low.
  • the threshold voltages for write and erase may be defined reversely.
  • the reset signal RESb in FIG. 16 is a signal that corresponds to the reset signal RES 3 in FIG. 1.
  • the multiplexer 407 and control signal buffer circuit 419 in FIG. 16 exchange input/output signals with the FCL 13 in FIG. 1.
  • FIG. 17 one typical static memory cell 70 .
  • the static memory cell 70 has a pair of CMOS inverters formed by an n-channel type MOS transistor 71 and a p-channel type MOS transistor 72 , and an input terminal of one of the CMOS inverters is cross-coupled to an output terminal of the other CMOS inverter to form a static latch.
  • a pair of storage nodes of the static latch are coupled to complementary bit lines 78 t and 78 b through n-channel type selections MOS transistors 75 and 76 .
  • the gates of the selection MOS transistors 75 and 76 are coupled to a word line 77 .
  • the program stored in the buffer memory is not limited to a program for testing or debugging and may be a file data compression program or the like.
  • the term “memory card” in the context of the present specification is not meant to exclude other functions, and it is used on an assumption that a memory card at least has a function of storing file data and may include communication interface functions such as those of MODEMs and TAs (terminal adapters), networking functions such as that of LANs (local area networks), video capture functions, voice recognizing functions and the like. Therefore, programs used for such functions may be stored in the buffer memory.
  • the programmable area is not limited to a partial storage area of the buffer memory, and it may be the entire area of the same.
  • commands and data are not limited to serial signals and may be parallel signals.
  • the cluster size is not limited to four sectors and may be appropriately determined in accordance with the configuration of the memory mats of the flash memory, the storage capacity of the integrated SRAM that develops the management table and the like.
  • microcomputer implies logic circuit units having a function of fetching and executing instructions and does not limit the invention to configurations in which a single microcomputer uses verified design data of an LSI associated therewith.
  • the microcomputer may be a circuit having a new customized design.
  • the memory card LSI has been described as a single chip.
  • the single chip configuration is expected to provide a higher operating speed and lower power consumption in comparison to multi-chip configurations.
  • a buffer memory used for writing and reading file data can be also used as a program memory, separate programs for purposes such as testing or debugging can be executed using the buffer memory without any additional program memory.
  • programs for purposes including debugging or testing can be executed within the limitations.
  • the file memory has preferable usability with respect to an extended program.

Abstract

A memory card (1) including an electrically rewritable non-volatile memory (4), a data processor (3) having a function of executing instructions, managing the allocation of file data in the non-volatile memory, an interface control circuit (2) having a function of establishing external interface, for controlling the execution of instructions by the data processor in response to external commands and for controlling access to the non-volatile memory and a buffer memory (7) for temporarily storing the file data, wherein the interface control circuit includes command control means for decoding a first command supplied externally and for instructing the data processor to fetch an instruction from the buffer memory and to operate.

Description

    BACKGROUND OF THE INVENTION
  • 1. Field of the Invention [0001]
  • The present invention relates to memory cards such as file memories, and relates to a technique advantageously applied to, for example, a memory card in which functions of a file memory is included on a single chip. [0002]
  • 2. Description of the Related Art [0003]
  • A file memory is a memory card capable of storing file data utilizing a technique similar to management of file allocation by using an FAT (file allocation table) in a hard disk. For example, an electrically rewritable flash memory is used as file data storage area in such a file memory. When file data are accessed, the data are temporarily stored in a buffer memory. For example, file data to be written stored in the buffer memory are written in the flash memory after being assigned with an ECC code at an ECC circuit, and file data read from the flash memory and stored in the buffer memory are output to the outside after error check and correction using an ECC code. [0004]
  • A file memory frequently incorporates a data processor such as a microcomputer for purposes including file management and control of access to the buffer memory. [0005]
  • PCMCIA-ATA type flash memory cards which are one type of file memories are described on pages 78 and 79 of “Nikkei Electronics” published on Apr. 11, 1994. [0006]
  • SUMMARY OF THE INVENTION
  • The inventor made a study on a control program area of a file memory having a data processor. A file memory requires a program for debugging or testing in addition to a program for normal file management. The required programs are normally incorporated in a memory card even when the file memory incorporates a data processor such as a microprocessor because such a data processor does not need a function of accessing outside of the memory card. The storage capacity of a ROM for storing programs is thus increased by the program for debugging and testing and the like, which results in a problem in that the scale of the circuit is increased. Especially, the inventor found that a countermeasure muse be taken when limitations on a chip size and the like do not allow a random increase of the storage capacity of a ROM in implementing functions of a memory card such as a file memory in the form of a semiconductor integrated circuit by loading them on a single chip. [0007]
  • It is an object of the invention to provide a memory card in which a data processor incorporated therein can be caused to execute new programs for purposes including testing or debugging without adding a separate program memory. [0008]
  • The above and other objects and novel features of the invention will become apparent from the description of this specification and the accompanying drawings. [0009]
  • Typical aspects of the invention disclosed in this application can be summarized as follows. [0010]
  • There is provided a [0011] memory card 1 comprising an electrically rewritable non-volatile memory 4, a data processor 3 having a function of executing instructions capable of managing the allocation of file data in the non-volatile memory, an interface control circuit 2 having a function of establishing external interface, for controlling the execution of instructions by the data processor in response to external commands and for controlling access to the non-volatile memory and a buffer memory 7 for temporarily storing the file data, in which the buffer memory can be used also as a program memory. Specifically, there is provided command control means 24, 26 for decoding a first command CMD1 supplied from the outside and for instructing the data processor to fetch an instruction from the buffer memory and to operate. This makes it possible to cause the integrated data processor to execute new programs for purposes including testing or debugging without adding a separate program memory.
  • Interrupt may be used as a method of control for causing the data processor to execute a program PGM[0012] 1 stored in the buffer memory. In this case, the command control means may employ a configuration in which an interrupt is requested to the data processor and a first cause of interrupt is notified to the same by decoding the first command.
  • When vector control is used as a method for controlling the interrupt, the data processor includes a [0013] central processing unit 30 capable of responding to an interrupt by transferring the process to an instruction address indicated by a vector retrieved from a vector table 340 according to the cause of interrupt and a ROM 34 to be accessed by the central processing unit. The ROM 34 includes the vector table 340 and a program area 341, and the vector table includes a first vector VCT1 associated with the first cause of interrupt. Thus, the central processing unit can execute an instruction from the beginning of the program in the buffer memory indicated by the first vector.
  • The program PGM[0014] 1 may be transferred to the buffer memory from the outside or from the integrated flash memory. The usability of the file memory is improved by allowing the file memory to transfer the program to the buffer memory by itself. For example, when the program PGM1 is allowed to be stored in the buffer memory from the outside of the file memory, the command control means further requests the data processor an interrupt and notifies it of a second cause of interrupt by decoding a second command CMD2 supplied from the outside. The vector table in the ROM further includes a second vector VCT2 that responds to the second cause of interrupt. The program area of the ROM further includes a transfer control program PGM2 for storing the externally supplied program in the buffer memory starting from a first address thereof. In this case, the second vector is information indicating the leading address of the transfer control program, and the first address is an address that coincides with the address indicated by the first vector VCT1.
  • When the program PGM[0015] 1 is allowed to be stored in the buffer memory from the non-volatile memory incorporated in the file memory, the command control means further requests the data processor an interrupt and notifies the same of a third cause of interrupt by decoding a third command CMD3 supplied from the outside. The vector table in the ROM further includes a third vector VCT3 that responds to the third cause of interrupt. The program area of the ROM further includes a transfer control program PGM3 for storing the program supplied from the non-volatile memory in the buffer memory starting from the first address thereof. In this case, the third vector is information indicating the leading address of the transfer control program, and the first address is an address that coincides with the address indicated by the first vector.
  • In the [0016] memory card 1 constituted by a single chip, even when a random increase of the storage capacity of the ROM is inhibited by limitations on the chip size and the like, the programs for purposes including debugging or testing can be executed within the limitations.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram of a memory card LSI which is an example of a memory card according to the invention. [0017]
  • FIG. 2 is a block diagram of an example of a data processing system that utilizes a card select signal unique to each memory card LSI. [0018]
  • FIG. 3 is a block diagram of an example of a data processing system that utilizes card addresses transmitted along with commands. [0019]
  • FIG. 4 is a block diagram of an example of a host interface circuit. [0020]
  • FIG. 5 illustrates vectors maintained by a ROM and a programmable area of a buffer RAM along with a CPU address map. [0021]
  • FIG. 6 illustrates an example of a state of execution of an extended program. [0022]
  • FIG. 7 illustrates a state of execution of a first transfer control program for storing an external extended program in a buffer RAM. [0023]
  • FIG. 8 illustrates a state of execution of a second transfer control program for storing an extended program from a flash memory in a buffer RAM. [0024]
  • FIG. 9 illustrates a flow of data during a write of file data into a flash memory using a buffer RAM as a data buffer. [0025]
  • FIG. 10 illustrates a flow of data during a read of file data from a flash memory using a buffer RAM as a data buffer. [0026]
  • FIG. 11 illustrates a flow of data during input and output of work data to and from a CPU using a buffer RAM as a data buffer. [0027]
  • FIG. 12 illustrates a flow of data during input and output of work data between a CPU and a flash memory using a buffer RAM as a data buffer. [0028]
  • FIG. 13 illustrates a principle of information storage in a flash memory. [0029]
  • FIG. 14 is a circuit diagram of a memory cell array utilizing flash memory cell transistors showing a principle of the configuration thereof. [0030]
  • FIGS. 15A, 15B and [0031] 15C illustrate examples of conditions for voltages for erase and write operations on flash memory cells.
  • FIG. 16 is a block diagram of an example of flash memory. [0032]
  • FIG. 17 is a circuit diagram of an example of a static memory cell.[0033]
  • DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • [Summary of Memory Card LSI][0034]
  • FIG. 1 shows a semiconductor integrated circuit for a memory card according to an embodiment of the invention. The illustrated semiconductor integrated circuit may be regarded as a system-on-chip type LSI (semiconductor integrated circuit) that constitutes a minimum unit of a file memory and is formed on a single semiconductor substrate (chip) such as single crystal silicon, although this is not limiting the invention. [0035]
  • A semiconductor integrated circuit (also simply referred to as “memory card LSI”) [0036] 1 shown in FIG. 1 has an interface control circuit 2, a microcomputer 3 which is an example of a data processor, a flash memory 4 which is an example of an electrically rewritable non-volatile memory, a reset circuit 5, a clock oscillation circuit 6 utilizing an oscillator, a buffer RAM 7 and a work RAM 8.
  • A power supply voltage Vcc and a ground voltage Vss are externally input to the [0037] memory card LSI 1 as operating power supplies. The input power supply voltage Vcc and ground voltage Vss are supplied to each of the above-described circuits.
  • The [0038] interface control circuit 2 has a host interface circuit (Host I/F) 11, a microcomputer interface (Micro I/F) 12, a file control logic (FCL) 13 and a data transfer logic (DTL) 14 which are connected each other by a bus 10.
  • A clock signal (Clock) [0039] 2A and a card select signal (Card Select) 2D are externally input to the host interface circuit 11, and a command (Command) 2B and data (Data) 2C are input to and output from the same. Each of the command 2B and data 2C is input and output on a bit serial basis, although this is not limiting the invention. The host interface circuit 11 accepts the externally supplied command 2B and decodes it to instruct operations of the microcomputer 3 and flash memory 4 and to control file data access to the flash memory 4.
  • The instruction of an operation of the [0040] microcomputer 3 is performed by supplying an interrupt signal NMI and a cause of interrupt from the host interface circuit 11 to the microcomputer 3 through the microcomputer interface 12. The microcomputer interface 12 exchanges the interrupt signal NMI, a control signal Ctl and various data such as data information and control information with the microcomputer 3.
  • The [0041] file control logic 13 controls file data access to the flash memory 4 according to the result of command decoding at the host interface circuit 11 under control of the microcomputer 3.
  • The [0042] buffer RAM 7 is used as a file data buffer memory for temporarily storing file data externally supplied to the host interface circuit 11 or temporarily storing file data read from the flash memory 4. It is also used as an extended program memory for the microcomputer 3.
  • The control over access to the [0043] buffer RAM 7 is carried out through the data transfer logic 14. The data transfer logic 14 has an ECC circuit 14A to check and correct errors during access to the buffer RAM 7 with the ECC circuit.
  • When the [0044] buffer RAM 7 is used as a file data buffer memory, in a file data writing operation, the file data are read by the data transfer logic 14 from the buffer RAM 7 on to the bus 10, and the read file data are written in the flash memory 4 under control of the file control logic 13. In a file data reading operation, the file data are read from the flash memory 4 on to the bus 10 under control of the file control logic 13, and the read file data are written in the buffer RAM 7 under control of the file transfer logic 14. The state in which the buffer RAM 7 is used as a buffer memory for file data is achieved when a file access command is externally supplied to the interface control circuit 2; an interrupt according to the result of decoding of the command is accepted by the microcomputer; and the result of the decoding of the command is supplied to the file control logic 13 and file transfer logic 14.
  • The [0045] buffer RAM 7 is mapped to an address space of the microcomputer 3 (more particularly, a CPU 30 to be described later). The microcomputer 3 can access the buffer RAM 7 similarly to access to the work RAM 8 through the data transfer logic 14. For example, this mode of access is enabled when the buffer RAM 7 is used as an extended program memory of the microcomputer 3. The state in which the microcomputer 3 utilizes the buffer RAM 7 as an extended program memory is realized when an external command for the execution of an extended program is supplied to the interface control circuit 2 and an interrupt according to the result of decoding of the command is accepted by the microcomputer 3. This process will be detailed later.
  • The [0046] file memory LSI 1 has a file data access system which is compatible with a hard disk apparatus, although this is not limiting the invention. For example, one cluster which is a unit area for access management includes four sectors, and a management area is allocated to each of the clusters. A management area has pointer information for determining the arrangement of clusters forming a file, information on the number of rewrites, information identifying good and defective sectors and the like. Further, the flash memory 4 has a directory area that identifies the file name of a file stored therein and the leading cluster of the same.
  • In order to manage the arrangement of file data in clusters in the [0047] flash memory 4, the microcomputer 3 generates a management table in the integrated SRAM 35 based on information of the management areas and directory area. The microcomputer 3 controls the generation and update of the management table and generates information specifying a management unit area to be accessed at access to file data using the management table. The information for controlling access to file data is supplied to the file control logic 13 through the microcomputer interface 12.
  • The [0048] microcomputer 3 has a central processing unit (CPU) 30, an integrated ROM (read only memory) 34 in which an operation program of the CPU 30 and the like are stored, an integrated SRAM (static random access memory) 35 used as a work area of the CPU 30 or an area for temporarily storing data, a bus controller (BSC) 33 for controlling the bus cycle of an external bus 37 when the CPU 30 accesses an external address space and a user break controller (UBC) 31 for supporting debugging such as breakpoint control, which are each connected to an internal bus 38. An interrupt signal NMI and a cause of interrupt are input to an interrupt control circuit (INTC) 32 which in turn requests the CPU 30 an interrupt by performing interrupt priority control. An interrupt processing program is stored in the integrated ROM 34, although this is not limiting the invention.
  • A watch dog timer (WDT) [0049] 36 for monitoring the run away of the CPU 30 and the like is connected to the external bus 37 of the microcomputer 3 in addition to the bus controller 33. Further, the work RAM 8 and microcomputer interface 12 are connected through the bus. The microcomputer 3 has one I/O port 39A as another interface circuit. The I/O port 39A is exclusively used for inputting the interrupt signal NMI and outputting control signals represented by the control signal Ctl. No general purpose I/O is provided, although this is not limiting the invention.
  • The [0050] microcomputer 3 has a sleep mode and a standby mode as low power consumption modes, although this is not limiting the invention. The CPU 30 executes a sleep instruction when a standby control bit provided in a control register (not shown) has a first logical value to enter the sleep mode. In the sleep mode, the CPU 30 stops operating with the state of the register and the like kept unchanged. Peripheral circuits continue operating. The sleep mode is cancelled by an interrupt or reset. The CPU 30 executes a sleep instruction when the standby control bit provided in the control register has a second logical value to enter the standby mode. In the standby mode, the CPU 30 stops operating with the state of the register and the like kept unchanged, and the peripheral circuits also stop operating. The standby mode is canceled by an interrupt or reset.
  • A clock signal CLK[0051] 2 is supplied from the oscillation circuit 6 to a clock pulse generator 39B of the microcomputer 3. For example, when the microcomputer 3 is set in the standby mode, the oscillation circuit 6 stops outputting the clock signal CLK2 according to a signal output by the microcomputer 3 in response. When the interrupt signal NMI is asserted from the microcomputer interface 12 to the port 39A in this state, the clock control circuit 15 detects the same state. Accordingly, the clock control circuit 15 causes the oscillation circuit 6 to resume the supply of the clock signal CLK2. Therefore, when the CPU 30 responds to the interrupt, the microcomputer 3 can leave the standby mode because supply of the clock signal CLK2 has already been resumed by then.
  • The [0052] reset circuit 5 resets the interface control circuit 2 with a reset signal RES1 and resets the microcomputer 3 with a reset signal RES2. The flash memory 4 is reset by a reset signal RES3 which is controlled according to the value of a reset enable bit RSB provided in a control register in the file control logic (FCL) 13.
  • FIGS. 2 and 3 show examples of a data processing system utilizing [0053] memory card LSIs 1 as described above. Although not shown, the memory card LSIs 1 are packaged using a technique such as resin molding with connectors thereof exposed. 100 represents a host system, and 101 represents slots for mounting the memory cards. FIGS. 2 and 3 illustrate configurations to allow a plurality of memory card LSIs 1 to be mounted at a time. The clock signal line 2A, command signal line 2B and data signal line 2C are shared by the memory card LSIs 1 in both of the configurations. The selection of the plurality of memory card LSIs 1 mounted is carried out using the card select signal 2D specific to each of the memory card LSIs 1 in the example in FIG. 2 and using card addresses transmitted along with commands in the example in FIG. 3. In the example in FIG. 3, a memory card LSI 1 recognizes that it has been selected upon the input of a card address allocated to it at an initializing operation.
  • FIG. 4 is a block diagram of the [0054] host interface circuit 11. Referring to FIG. 4, the host interface circuit 11 has a command input register 20 to which the command 2B is input, a response control circuit 21 for responding to the input of commands, a data input register 22 to which data 2C are input and a data output register 23 for outputting the data 2C. An input command is decoded by a command decoder 24 and, in accordance with the result of the decoding, a control logic circuit 26 controls interrupts to the microcomputer 3, data input and output, responses to a host apparatus and the like. 27 represents a memory for temporary storage used by the control logic 26.
  • [Execution of Extended Program][0055]
  • Next, said buffer RAM[0056] 7 will be described usable constraction as said extended program memory in detail.
  • For example, an extended program is executed using vector type interrupt control performed by the [0057] microcomputer 3. The vector interrupt of the microcomputer 3 is performed as follows. Specifically, the microprocessor 3 is notified of an interrupt by an interrupt signal NMI from the interface control circuit 2. The interrupt control circuit 32 performs interrupt priority control and the like on the interrupt initiated by the interrupt signal NMI and asserts an interrupt request signal INT to the CPU 30 when the interrupt is accepted. When the interface control circuit 2 detects the acceptance of the interrupt, it supplies information specifying a cause of the interrupt to the external bus 37 through the microcomputer interface 12. The CPU 30 retrieves a vector associated with the cause of interrupt from the vector table. The CPU 30 proceeds to an instruction address indicated by the retrieved vector and branches to a process of responding to the interrupt. In the case of an interrupt for which the process is to return to the state immediately preceding the interrupt after the process of responding to the interrupt, the state is obviously saved before the process of responding to the interrupt.
  • FIG. 5 shows mapping of the addresses of the [0058] integrated ROM 34, work RAM 8, buffer RAM 7 and integrated SRAM 35 to an address space which can be managed by the CPU 30.
  • A part of the [0059] buffer RAM 7 is an area 70 which can be used also as an extended program memory (programmable area), although this is not limiting the invention. A program stored in the programmable area 70 is referred to as “extended program PGM1”.
  • The integrated [0060] ROM 34 has the vector table 340 and program area 341. The vector table 340 typically has a first vector VCT1, a second vector VCT2 and a third vector VCT3. The program area 341 has a first transfer control program PGM2 and a second transfer program PGM3 as subroutines. Programs for a reset process, file managing process and the like are also stored, although not shown.
  • The vector VCT[0061] 1 has information on the leading address of the programmable area 70. The extended program PGM1 is stored starting from the leading address of programmable area 70. The vector VCT2 has information on the leading address of the storage area of the first transfer control program PGM2. The vector VCT3 has information on the leading address of the storage area of the second transfer control program PGM3.
  • The first transfer control program PGM[0062] 2 is a transfer control program for storing an extended program PGM1 externally supplied to the memory card LSI 1 in the programmable area 70 starting from the leading address of the same. The second transfer control program PGM3 is a transfer control program for reading an extended program PGM1 which has been transferred to the flash memory 4 in the form of a file or which has been stored therein in advance at a manufacturing step and for storing the same in the programmable area 70 starting from the leading address thereof.
  • FIG. 6 schematically shows a process of executing an extended program PGM[0063] 1 stored in the programmable area 70. The execution of the extended program PGM1 stored in the programmable area 70 is instructed by an extended program execution command CMD1 externally supplied to the interface control circuit 2. When the extended program execution command CMD1 is input to the command input register 24 of the interface control circuit 2, the command decoder 24 decodes the same and, upon receipt of the result of the decoding, the control logic circuit 26 outputs an interrupt signal NMI and notifies the CPU 30 of a first cause associated with the extended program execution command. After performing a required state saving process and the like, the CPU 30 retrieves a first vector VCT1 associated with the first cause from the vector table 340 and proceeds to the execution of the extended program PGM1 in the programmable area 70.
  • FIG. 7 schematically shows a process of executing the first transfer control program PGM[0064] 2. The execution of the first transfer control program PGM2 is instructed by an external transfer control execution command CMD2 for an extended program externally supplied to the interface control circuit 2. When the external transfer control execution command CMD2 for an extended program is input to the command input register 20 of the interface control circuit 2, the command decoder 24 decodes the same and, upon receipt of the result of the decoding, the control logic circuit 26 outputs an interrupt signal NMI and notifies the CPU 30 of a second cause associated with the external transfer control execution command. After performing a required state saving process and the like, the CPU 30 retrieves a second vector VCT2 associated with the second cause from the vector table 340 and proceeds to the execution of the first transfer control program PGM2.
  • FIG. 8 schematically shows a process of executing the second transfer control program PGM[0065] 3. The execution of the second transfer control program PGM3 is instructed by an internal transfer control execution command CMD3 for an extended program externally supplied to the interface control circuit 2. When the internal transfer control execution command CMD3 for an extended program is input to the command input register 24 of the interface control circuit 2, the command decoder 24 decodes the same and, upon receipt of the result of the decoding, the control logic circuit 26 outputs an interrupt signal NMI and notifies the CPU 30 of a third cause associated with the internal transfer control execution command. After performing a required state saving process and the like, the CPU 30 retrieves a third vector VCT3 associated with the third cause from the vector table 340 and proceeds to the execution of the second transfer control program PGM3.
  • As described above, it is possible to cause the [0066] CPU 30 to execute separate programs for purposes including testing or debugging using the buffer RAM 7 without any additional program memory. In the memory card LSI 1 constituted by a single chip, even when a random increase of the storage capacity of the ROM 34 is inhibited by limitations on the chip size and the like, the programs for purposes including debugging or testing can be executed within the limitations. Further, referring to control over the transfer of an extended program PGM1 to the buffer RAM 7, since the transfer of an extended program PGM1 externally supplied or stored in the integrated flash memory 4 can be controlled by the file memory 1 itself, the file memory 1 has preferable usability with respect to an extended program.
  • As described above, other modes of data transfer using the [0067] buffer RAM 7 include modes of utilization inherent in a file memory in which it is used as a data buffer when file data are written in the flash memory 4 (FIG. 9) and in which it is used as a data buffer when file data held in the flash memory 4 are read out (FIG. 10). There are other modes of utilization of the buffer RAM 7 in which it is used as a data buffer when work data are input and output to and from the CPU 30 as shown in FIG. 11 and in which it is used as a data buffer when work data are exchanged between the CPU 30 and the flash memory 4 as shown in FIG. 12.
  • [Memory][0068]
  • An example of the [0069] flash memory 4 will now be described for reference. First, a description will be made with reference to FIGS. 13A and 13B on a principle of the storage of information in the flash memory.
  • The memory cell shown in FIG. 13A as an example is constituted by an insulated gate type field effect transistor having a double layer gate structure. In FIG. 13A, 431 represents a p-type silicon substrate; [0070] 432 represents a p-type semiconductor region formed on said silicon substrate 431; and 433 and 434 represent n-type semiconductor regions. 435 represents a floating gate formed above the p-type silicon substrate 431 with a thin oxide film 436 (having a thickness of, for example, 10 nm) as a tunnel insulation film interposed therebetween, and 437 represents a control gate formed above the floating gate 435 with an oxide film 438 interposed therebetween. The source is constituted by the region 434, and the drain is constituted by the regions 433 and 432. Information stored in this memory cell is held in the transistor substantially as a change in a threshold voltage. In the following description, a transistor of a memory cell for storing information (hereinafter also referred to as “memory cell transistor”) is of the n-channel type unless otherwise specified.
  • For example, an operation of writing information in a memory cell is carried out by applying a high voltage to the [0071] control gate 437 and the drain and by injecting electrons into the floating gate 435 from the drain side using avalanche injection. As a result of the write operation, as shown in FIG. 13B, the threshold voltage of the storage transistor as viewed from the control gate 437 becomes higher than that of a storage transistor in an erase state which has not been subjected to a write operation.
  • For example, an erase operation is carried out by applying a high voltage to the source and by extracting electrons from the floating [0072] gate 435 toward the source using the tunnel phenomenon. Shown in FIG. 13B, the threshold voltage of the storage transistor as viewed from the control gate 437 becomes lower by erase operation. As shown in FIG. 13B, the threshold voltage of a memory cell transistor is a positive voltage level in both of the write and erase states. Specifically, the threshold voltage in the write state is higher than a word line selection level supplied from a word line to the control gate 437, and the threshold voltage in the erase state is lower than the same. Since such a relationship exists between the two threshold voltages and the word line selection level, the memory cell can be constituted by a single transistor without using a selection transistor. Since stored information is electrically erased by extracting electrons accumulated in the floating gate 435 toward the source electrode, a continuous erase operation for a relatively long time will extract electrons in a quantity larger than that of the electrons injected into the floating gate 435 at the write operation. Therefore, when an over-erase is performed in which an electrical erase is continued for a relatively long time, the threshold voltage of the memory cell transistor becomes, for example, a negative level, which results in a problem in that selection occurs in spite of the fact that the word line is at an unselect level. Writing may be carried out utilizing a tunnel current similarly to erasing.
  • During a read operation, in order to prevent a weak write in the memory cell or unwanted injection of the carrier into the floating [0073] gate 435, the voltage applied to the drain and the control gate 437 is limited to a relatively small value. For example, a low voltage on the order of 1 V is applied to the drain, and a low voltage on the order of 5 V is applied to the control gate 437. The magnitude of the channel current flowing through the memory cell transistor is detected by applying those voltages to allow the information stored in the memory cell to be determined as “0” or “1”.
  • FIG. 14 shows a principle of the configuration of a memory cell array utilizing memory cell transistors as described above. FIG. 14 shows four typical memory cell transistors Q[0074] 1 through Q4. In the memory cells arranged in X- and Y-directions in the form of a matrix, the control gates of the memory cell transistors Q1 and Q2 (Q3 and Q4) arranged on the same row (selection gates of the memory cells) are connected to a respective word lines WL1 (WL2), and the drain regions of the storage transistors Q1 and Q3 (Q2 and Q4) arranged on the same column (input/output nodes of the memory cells) are connected to a respective data line DL1 (DL2). The source regions of the storage transistors Q1 and Q3 (Q2 and Q4) are coupled to a source line SL1 (SL2).
  • FIGS. 15A, 15B and [0075] 15C show examples of conditions for voltages for the erase and write operations on the memory cells. In those figures, the memory elements are the memory cell transistors, and the gates are the control gates as the selection gates of the memory cell transistors. In those figures, erasure based on a negative voltage method is carried out by applying a negative voltage, e.g., −10 V to the control gate to generate a high electrical field required for erasure. As apparent from voltage conditions shown in the figures, erasure based on a positive voltage method allows at least memory cells whose sources are commonly connected to be erased at a time. Therefore, when the source lines SL1 and SL2 are connected in the configuration in FIG. 14, the four memory cells Q1 through Q4 can be erased at a time. According to a source line division method, data lines may serve as units (common source lines extend in the direction of data lines) as typically illustrated in FIG. 14 or word lines may alternatively serve as units (common source lines extend in the direction of source lines). Erasure based on the negative voltage method allows memory cells whose control gates are commonly connected to be erased at a time.
  • FIG. 16 shows an example of the [0076] flash memory 4. In FIG. 16, 403 represents a memory array which has memory mats and sense latch circuits. The memory mat has a multiplicity of non-volatile memory cell transistors which can be electrically erased and written. For example, the memory cell transistors have a configuration including a source and a drain formed on a semiconductor substrate or in a memory well, a floating gate formed in a channel region with a tunnel oxide film interposed and a control gate overlaid on the floating gate with a layer insulation film interposed as described with reference to FIG. 13. The control gates are connected to word lines 406; the drains are connected to bit lines 405; and the sources are connected to source lines which are not shown.
  • External input/output terminals I/O[0077] 0 through I/O7 are also used as address input terminals, data input terminals, data output terminals and command input terminals. X-address signals input through the external input/output terminals I/O0 through I/O7 are supplied to an X-address buffer 408 through a multiplexer 407. An X-address decoder 409 decodes internal complementary address signals output by the X-address buffer 408 to drive the word lines.
  • Although not shown, the memory mats included in the [0078] memory array 403 are configured on the left and right of the sense latch circuit array. Specifically, precharge circuits, bit lines and the like are provided at both of the input and output nodes of the sense latch circuits. The bit lines 405 are selected based on a selection signal output by a Y-address decoder 411 by Y gate array circuit 413. Y-address signals input through the external input/output terminals I/00 through I/07 are preset in a Y-address counter 412, and address signals which are sequential increments starting with the preset values are supplied to the Y-address decoder 411.
  • A bit line selected by a Y [0079] gate array circuit 413 is conducted to an input terminal of an output buffer 415 during a data output operation and is conducted to an output terminal of an input buffer 417 through a data control circuit 416 during a data input operation. The connection between the output buffer 415, input buffer 417 and input/output terminals I/O0 through I/O7 is controlled by the multiplexer 407. Commands supplied through the input/output terminals I/O0 through I/O7 are supplied to a mode control circuit 418 through the multiplexer 407 and input buffer 417. The data control circuit 416 is capable of supplying the memory array 403 with not only data supplied through the input/output terminals I/O0 through I/O7 but also data having logical values in accordance with the control of the mode control circuit 418.
  • A control [0080] signal buffer circuit 419 is supplied with a chip enable signal CEb, an output enable signal OEb, a write enable signal WEb, a serial clock signal SC, a reset signal RESb and a command enable signal CDEb as access control signals.
  • The [0081] mode control circuit 418 controls a function of interfacing external signals according to the states of those signals and controls internal operations according to command codes. When a command or data is input to the input/output terminals IO0 through I/O7, the signal CDEb is asserted; the signal WEb is asserted further if it is a command; and the signal WEb is negated if it is data. When an address is input, the signal CDEb is negated and the signal WEb is asserted. This allows the mode control circuit 418 to discriminate between commands, data and addresses input through the external input/output terminals I/O0 through I/O7 on a multiplex basis. During an erase or write operation, the mode control circuit 418 can externally indicate such a state by asserting a ready/busy signal R/Bb.
  • An internal [0082] power supply circuit 420 generates various operating power supplies 421 for purposes such as write, erase verify and read and supplies them to the X-address decoder 409 and memory cell array 403.
  • The [0083] mode control circuit 418 controls the flash memory 4 as a whole according to commands. The operation of the flash memory 4 is basically determined by the commands.
  • The commands allocated to the flash memory include, for example, read, erase and write commands. The read command is constituted by a first command, and the other commands are constituted by a first command and a second command. [0084]
  • The [0085] flash memory 4 has a status register 423 for indicating the internal status thereof, and the contents of the same can be read through the input/output terminals I/O0 through I/O7 when the signal OEb is asserted.
  • When a write operation is instructed by the write command, the sense latch circuits can latch write data supplied through the Y [0086] gate array circuit 413. In this example, since the flash memory 4 has the input/output terminals I/O0 through I/O7 for eight bits, write data can be set in eight sense latch circuits at one cycle of input of write data. In the context of this description, since writing is performed on a word line basis, a write voltage is applied to cause a write operation after write data are set in sense latch circuits associated with the bit lines of all memory cells whose selection terminals are coupled to one word line. At a write operation, for example, all bit lines are precharged to a predetermined level in advance; the bit lines of memory cells selected for writing are discharged down to a ground potential; and the bit lines of memory cells unselected for writing are maintained at the precharge level. When a high write voltage is applied to word lines selected for writing, a high voltage is applied between the control gates and drains of the memory cells selected for writing to increase the threshold voltage of the memory cells selected for writing, which realizes a write state. Prior to a write operation, the memory cells are in an erase state in which the threshold voltage is low. The threshold voltages for write and erase may be defined reversely.
  • The reset signal RESb in FIG. 16 is a signal that corresponds to the reset signal RES[0087] 3 in FIG. 1. The multiplexer 407 and control signal buffer circuit 419 in FIG. 16 exchange input/output signals with the FCL 13 in FIG. 1.
  • A description will now be made on an example of static memory cells that constitute the [0088] integrated SRAM 35, work RAM 8 and buffer RAM 7. FIG. 17 one typical static memory cell 70. The static memory cell 70 has a pair of CMOS inverters formed by an n-channel type MOS transistor 71 and a p-channel type MOS transistor 72, and an input terminal of one of the CMOS inverters is cross-coupled to an output terminal of the other CMOS inverter to form a static latch. A pair of storage nodes of the static latch are coupled to complementary bit lines 78 t and 78 b through n-channel type selections MOS transistors 75 and 76. The gates of the selection MOS transistors 75 and 76 are coupled to a word line 77.
  • While the invention conceived by the inventor has been specifically described based on preferred embodiments thereof, the invention is not limited to the embodiments and may obviously modified in various ways without departing from the principle of the invention. [0089]
  • For example, the program stored in the buffer memory is not limited to a program for testing or debugging and may be a file data compression program or the like. The term “memory card” in the context of the present specification is not meant to exclude other functions, and it is used on an assumption that a memory card at least has a function of storing file data and may include communication interface functions such as those of MODEMs and TAs (terminal adapters), networking functions such as that of LANs (local area networks), video capture functions, voice recognizing functions and the like. Therefore, programs used for such functions may be stored in the buffer memory. [0090]
  • The programmable area is not limited to a partial storage area of the buffer memory, and it may be the entire area of the same. [0091]
  • The above-described commands and data are not limited to serial signals and may be parallel signals. [0092]
  • The cluster size is not limited to four sectors and may be appropriately determined in accordance with the configuration of the memory mats of the flash memory, the storage capacity of the integrated SRAM that develops the management table and the like. [0093]
  • The term “microcomputer” implies logic circuit units having a function of fetching and executing instructions and does not limit the invention to configurations in which a single microcomputer uses verified design data of an LSI associated therewith. The microcomputer may be a circuit having a new customized design. [0094]
  • The memory card LSI has been described as a single chip. The single chip configuration is expected to provide a higher operating speed and lower power consumption in comparison to multi-chip configurations. [0095]
  • Effects that can be achieved by typical aspects of the invention disclosed in this application can be summarized as follows. [0096]
  • Since a buffer memory used for writing and reading file data can be also used as a program memory, separate programs for purposes such as testing or debugging can be executed using the buffer memory without any additional program memory. In a memory card constituted by a single chip, even when a random increase of the storage capacity of the ROM is inhibited by limitations on the chip size and the like, programs for purposes including debugging or testing can be executed within the limitations. Further, referring to control over the transfer of an extended program to the buffer memory, since the transfer of an extended program externally supplied or stored in an integrated flash memory can be controlled by the file memory itself, the file memory has preferable usability with respect to an extended program. [0097]

Claims (6)

What is claimed is:
1. A memory card comprising:
an electrically rewritable non-volatile memory;
a data processor having a function of executing instructions and managing the allocation of file data in said non-volatile memory;
an interface control circuit, having a function of establishing external interface, controlling the execution of instructions by said data processor in response to external commands and controlling access to said non-volatile memory; and
a buffer memory temporarily storing said file data, wherein said interface control circuit includes command control circuit decoding a first command supplied from an outside and instructing said data processor to fetch an instruction from said buffer memory and to operate.
2. A memory card according to claim 1, wherein said command control circuit requests said data processor an interrupt and notifies it of a first cause of interrupt by decoding said first command.
3. A memory card according to claim 2, wherein
said data processor includes a central processing unit capable of responding to an interrupt by transferring the process to an instruction address indicated by a vector retrieved from a vector table according to a cause of interrupt and a ROM to be accessed by said central processing unit;
said ROM includes said vector table and a program area; and
said vector table includes a first vector associated with said first cause of interrupt.
4. A memory card according to claim 3, wherein
said command control circuit further requests said data processor an interrupt and notifies it of a second cause of interrupt by decoding a second command supplied from the outside;
the vector table in said ROM further includes a second vector that responds to said second cause of interrupt;
the program area of said ROM further includes a transfer control program for storing said program supplied from the outside in said buffer memory starting from a first address thereof;
said second vector is information indicating the leading address of said transfer control program; and
said first address is an address that coincides with the address indicated by said first vector.
5. A memory card according to claim 3, wherein
said command control circuit further requests said data processor an interrupt and notifies it of a third cause of interrupt by decoding a third command supplied from the outside;
the vector table in said ROM further includes a third vector that responds to said third cause of interrupt;
the program area of said ROM further includes a transfer control program for storing the program supplied from said non-volatile memory in said buffer memory starting from a first address thereof;
said third vector is information indicating the leading address of said transfer control program; and
said first address is an address that coincides with the address indicated by said first vector.
6. A memory card according to any one of claims 1 through 5 formed on a single semiconductor chip.
US10/654,957 1999-02-26 2003-09-05 Memory card having a buffer memory for storing testing instruction Abandoned US20040057299A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US10/654,957 US20040057299A1 (en) 1999-02-26 2003-09-05 Memory card having a buffer memory for storing testing instruction
US10/874,381 US7002853B2 (en) 1999-02-26 2004-06-24 Memory card having a buffer memory for storing testing instruction
US11/182,956 US7292480B2 (en) 1999-02-26 2005-07-18 Memory card having buffer memory for storing testing instruction
US11/907,422 US7440337B2 (en) 1999-02-26 2007-10-12 Nonvolatile semiconductor memory apparatus having buffer memory for storing a program and buffering work data

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP11-49369 1999-02-26
JP11049369A JP2000251035A (en) 1999-02-26 1999-02-26 Memory card
US09/495,955 US6643725B1 (en) 1999-02-26 2000-02-02 Memory card having a buffer memory for storing testing instruction
US10/654,957 US20040057299A1 (en) 1999-02-26 2003-09-05 Memory card having a buffer memory for storing testing instruction

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/495,955 Continuation US6643725B1 (en) 1999-02-26 2000-02-02 Memory card having a buffer memory for storing testing instruction

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US10/874,381 Continuation US7002853B2 (en) 1999-02-26 2004-06-24 Memory card having a buffer memory for storing testing instruction

Publications (1)

Publication Number Publication Date
US20040057299A1 true US20040057299A1 (en) 2004-03-25

Family

ID=12829122

Family Applications (5)

Application Number Title Priority Date Filing Date
US09/495,955 Expired - Lifetime US6643725B1 (en) 1999-02-26 2000-02-02 Memory card having a buffer memory for storing testing instruction
US10/654,957 Abandoned US20040057299A1 (en) 1999-02-26 2003-09-05 Memory card having a buffer memory for storing testing instruction
US10/874,381 Expired - Fee Related US7002853B2 (en) 1999-02-26 2004-06-24 Memory card having a buffer memory for storing testing instruction
US11/182,956 Expired - Fee Related US7292480B2 (en) 1999-02-26 2005-07-18 Memory card having buffer memory for storing testing instruction
US11/907,422 Expired - Fee Related US7440337B2 (en) 1999-02-26 2007-10-12 Nonvolatile semiconductor memory apparatus having buffer memory for storing a program and buffering work data

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/495,955 Expired - Lifetime US6643725B1 (en) 1999-02-26 2000-02-02 Memory card having a buffer memory for storing testing instruction

Family Applications After (3)

Application Number Title Priority Date Filing Date
US10/874,381 Expired - Fee Related US7002853B2 (en) 1999-02-26 2004-06-24 Memory card having a buffer memory for storing testing instruction
US11/182,956 Expired - Fee Related US7292480B2 (en) 1999-02-26 2005-07-18 Memory card having buffer memory for storing testing instruction
US11/907,422 Expired - Fee Related US7440337B2 (en) 1999-02-26 2007-10-12 Nonvolatile semiconductor memory apparatus having buffer memory for storing a program and buffering work data

Country Status (2)

Country Link
US (5) US6643725B1 (en)
JP (1) JP2000251035A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7992643B2 (en) 2003-05-31 2011-08-09 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8066076B2 (en) 2004-02-26 2011-11-29 Cameron Systems (Ireland) Limited Connection system for subsea flow interface equipment
US8066063B2 (en) 2006-09-13 2011-11-29 Cameron International Corporation Capillary injector
US8104541B2 (en) 2006-12-18 2012-01-31 Cameron International Corporation Apparatus and method for processing fluids from a well
US8297360B2 (en) 2006-12-18 2012-10-30 Cameron International Corporation Apparatus and method for processing fluids from a well
CN103218308A (en) * 2012-01-20 2013-07-24 群联电子股份有限公司 Buffer memory management method, memory controller and memory storage device
US9037781B2 (en) 2012-01-09 2015-05-19 Phison Electronics Corp. Method for managing buffer memory, memory controllor, and memory storage device
TWI502598B (en) * 2012-02-22 2015-10-01 Silicon Motion Inc Method for accessing a flash memory and flash memory controller
US9223648B2 (en) 2012-08-08 2015-12-29 Phison Electronics Corp. Memory storage device, memory controller thereof, and method for processing data thereof

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100478172B1 (en) * 1995-01-31 2005-03-23 가부시끼가이샤 히다치 세이사꾸쇼 Semiconductor memory device
JP2000251035A (en) 1999-02-26 2000-09-14 Hitachi Ltd Memory card
JP2002032274A (en) * 2000-07-19 2002-01-31 Hitachi Ltd Remote diagnostic system of equipment and remote diagnostic method
JP2002259207A (en) * 2001-03-02 2002-09-13 Fujitsu Ltd Information processor, signal processor and interface device
US7024532B2 (en) * 2001-08-09 2006-04-04 Matsushita Electric Industrial Co., Ltd. File management method, and memory card and terminal apparatus that make use of the method
ITRM20010529A1 (en) * 2001-08-31 2003-02-28 Micron Technology Inc COMMAND USER INTERFACE FOR MULTIPLE BREAKDOWN MEMORY.
US7191464B2 (en) * 2001-10-16 2007-03-13 Lenovo Pte. Ltd. Method and system for tracking a secure boot in a trusted computing environment
US7127550B1 (en) * 2001-10-31 2006-10-24 Sandisk Corporation Multi-module simultaneous program, erase test, and performance method for flash memory
US7246268B2 (en) * 2002-01-16 2007-07-17 Sandisk Corporation Method and apparatus for dynamic degradation detection
US7246273B2 (en) * 2003-02-28 2007-07-17 Sony Corporation Method of, apparatus and graphical user interface for automatic diagnostics
US7137037B2 (en) * 2003-03-27 2006-11-14 Silicon Motion, Inc. Data storage system and method for testing the same
JP2004348791A (en) * 2003-05-20 2004-12-09 Sharp Corp Semiconductor memory device and portable electronic equipment
US7184916B2 (en) * 2003-05-20 2007-02-27 Cray Inc. Apparatus and method for testing memory cards
KR100648243B1 (en) * 2004-03-19 2006-11-24 삼성전자주식회사 Memory card using nand flash memory
US8234421B2 (en) * 2004-04-21 2012-07-31 Stmicroelectronics, Inc. Smart card with selectively allocatable data buffers and associated methods
US7228472B2 (en) * 2005-01-11 2007-06-05 Hewlett-Packard Development Company, L.P. System and method to control data capture
US7809991B2 (en) * 2005-01-11 2010-10-05 Hewlett-Packard Development Company, L.P. System and method to qualify data capture
US7752016B2 (en) * 2005-01-11 2010-07-06 Hewlett-Packard Development Company, L.P. System and method for data analysis
US20060282626A1 (en) * 2005-06-08 2006-12-14 Alessandro Fin Memory device and method of controlling operation of the memory device
KR20070074232A (en) * 2006-01-09 2007-07-12 삼성전자주식회사 Semiconductor memory device having both ram portion and rom portion
KR20070076071A (en) * 2006-01-17 2007-07-24 삼성전자주식회사 Contactless card and contactless card system
US20070189084A1 (en) * 2006-02-15 2007-08-16 Broadcom Corporation Reduced pin count synchronous dynamic random access memory interface
JP5022434B2 (en) * 2006-03-16 2012-09-12 ケーティーフリーテル・カンパニー・リミテッド IC chip supporting large capacity memory and supporting method
KR100791838B1 (en) * 2006-10-18 2008-01-07 삼성전자주식회사 Smart card and method for testing of smart card
TWI374666B (en) * 2008-10-29 2012-10-11 Myson Century Inc On-screen display circuit and method for controlling the same
WO2011024022A1 (en) * 2009-08-31 2011-03-03 Sandisk Il Ltd. Preloading data into a flash storage device
WO2011106055A1 (en) 2010-02-23 2011-09-01 Rambus Inc. Coordinating memory operations using memory-device generated reference signals
CN102402464A (en) * 2010-09-17 2012-04-04 中国移动通信有限公司 Method for erasing data of storage in smart card and smart card
US9129674B2 (en) 2013-06-27 2015-09-08 Intel Corporation Hybrid memory device
TWI650639B (en) * 2016-11-07 2019-02-11 群聯電子股份有限公司 Memory management method, memory control circuit unit and mempry storage device
JP2023084421A (en) * 2021-12-07 2023-06-19 キオクシア株式会社 Semiconductor device and testing method thereof

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4126896A (en) * 1976-04-01 1978-11-21 Tokyo Shibaura Electric Co., Ltd. Microprogrammed large-scale integration (LSI) microprocessor
US4504915A (en) * 1982-06-30 1985-03-12 Pitney Bowes Inc. Method and apparatus for individualized postage value computing
US4760518A (en) * 1986-02-28 1988-07-26 Scientific Computer Systems Corporation Bi-directional databus system for supporting superposition of vector and scalar operations in a computer
US5138619A (en) * 1990-02-15 1992-08-11 National Semiconductor Corporation Built-in self test for integrated circuit memory
US5291603A (en) * 1991-03-14 1994-03-01 Westinghouse Electric Corp. Microprocessor system with multiple interrupts masked for use in electronic control or monitoring of various solid-state products
US5473573A (en) * 1994-05-09 1995-12-05 Cirrus Logic, Inc. Single chip controller-memory device and a memory architecture and methods suitable for implementing the same
US5535165A (en) * 1995-06-30 1996-07-09 Cirrus Logic, Inc. Circuits, systems and methods for testing integrated circuit devices including logic and memory circuitry
US5584044A (en) * 1990-09-28 1996-12-10 Fuji Photo Film Co., Ltd. Integrated circuit memory card for write in/read out capability having plurality of latching means for expandable addressing using counting means for enabling latches thereof
US5598368A (en) * 1994-05-19 1997-01-28 Hitachi, Ltd. Batch erasable nonvolatile memory device and erasing method
US5606660A (en) * 1994-10-21 1997-02-25 Lexar Microsystems, Inc. Method and apparatus for combining controller firmware storage and controller logic in a mass storage system
US5704058A (en) * 1995-04-21 1997-12-30 Derrick; John E. Cache bus snoop protocol for optimized multiprocessor computer system
US5802551A (en) * 1993-10-01 1998-09-01 Fujitsu Limited Method and apparatus for controlling the writing and erasing of information in a memory device
US5887187A (en) * 1993-10-20 1999-03-23 Lsi Logic Corporation Single chip network adapter apparatus
US6000048A (en) * 1996-08-14 1999-12-07 Cirrus Logic, Inc. Combined logic and memory circuit with built-in memory test
US6272042B1 (en) * 1992-07-06 2001-08-07 Hitachi, Ltd Nonvolatile semiconductor memory
US6438029B2 (en) * 1998-11-11 2002-08-20 Mitsuru Hiraki Semiconductor integrated circuit device, memory module, storage device and the method for repairing semiconductor integrated circuit device
US6459621B1 (en) * 1996-09-30 2002-10-01 Hitachi, Ltd. Semiconductor integrated circuit and data processing system
US6643725B1 (en) * 1999-02-26 2003-11-04 Hitachi, Ltd. Memory card having a buffer memory for storing testing instruction

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE34445E (en) * 1985-01-18 1993-11-16 University Of Michigan Self-testing dynamic RAM
JPS63311436A (en) 1987-06-12 1988-12-20 Nec Corp Program patch system
JPH0264756A (en) 1988-08-30 1990-03-05 Nec Corp System rising system
JPH03265030A (en) 1990-03-15 1991-11-26 Oki Farm Wear Syst:Kk Computer loading device
DE4137431A1 (en) * 1991-11-14 1993-05-19 Huels Chemische Werke Ag MULTILAYER PLASTIC PIPE
TW231343B (en) * 1992-03-17 1994-10-01 Hitachi Seisakusyo Kk
US6333871B1 (en) * 1998-02-16 2001-12-25 Hitachi, Ltd. Nonvolatile semiconductor memory including a controller for providing an improved reprogram operation
JPH11265283A (en) 1998-03-18 1999-09-28 Hitachi Ltd Correction method for firmware in storage device, and storage device
JP2002025287A (en) * 2000-07-12 2002-01-25 Hitachi Ltd Semiconductor storage device
JP4043703B2 (en) * 2000-09-04 2008-02-06 株式会社ルネサステクノロジ Semiconductor device, microcomputer, and flash memory
JP2002197878A (en) * 2000-12-26 2002-07-12 Hitachi Ltd Semiconductor device and data processing system

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4126896A (en) * 1976-04-01 1978-11-21 Tokyo Shibaura Electric Co., Ltd. Microprogrammed large-scale integration (LSI) microprocessor
US4504915A (en) * 1982-06-30 1985-03-12 Pitney Bowes Inc. Method and apparatus for individualized postage value computing
US4760518A (en) * 1986-02-28 1988-07-26 Scientific Computer Systems Corporation Bi-directional databus system for supporting superposition of vector and scalar operations in a computer
US5138619A (en) * 1990-02-15 1992-08-11 National Semiconductor Corporation Built-in self test for integrated circuit memory
US5584044A (en) * 1990-09-28 1996-12-10 Fuji Photo Film Co., Ltd. Integrated circuit memory card for write in/read out capability having plurality of latching means for expandable addressing using counting means for enabling latches thereof
US5291603A (en) * 1991-03-14 1994-03-01 Westinghouse Electric Corp. Microprocessor system with multiple interrupts masked for use in electronic control or monitoring of various solid-state products
US6272042B1 (en) * 1992-07-06 2001-08-07 Hitachi, Ltd Nonvolatile semiconductor memory
US5802551A (en) * 1993-10-01 1998-09-01 Fujitsu Limited Method and apparatus for controlling the writing and erasing of information in a memory device
US5887187A (en) * 1993-10-20 1999-03-23 Lsi Logic Corporation Single chip network adapter apparatus
US5473573A (en) * 1994-05-09 1995-12-05 Cirrus Logic, Inc. Single chip controller-memory device and a memory architecture and methods suitable for implementing the same
US5598368A (en) * 1994-05-19 1997-01-28 Hitachi, Ltd. Batch erasable nonvolatile memory device and erasing method
US5606660A (en) * 1994-10-21 1997-02-25 Lexar Microsystems, Inc. Method and apparatus for combining controller firmware storage and controller logic in a mass storage system
US5704058A (en) * 1995-04-21 1997-12-30 Derrick; John E. Cache bus snoop protocol for optimized multiprocessor computer system
US5535165A (en) * 1995-06-30 1996-07-09 Cirrus Logic, Inc. Circuits, systems and methods for testing integrated circuit devices including logic and memory circuitry
US6000048A (en) * 1996-08-14 1999-12-07 Cirrus Logic, Inc. Combined logic and memory circuit with built-in memory test
US6459621B1 (en) * 1996-09-30 2002-10-01 Hitachi, Ltd. Semiconductor integrated circuit and data processing system
US6438029B2 (en) * 1998-11-11 2002-08-20 Mitsuru Hiraki Semiconductor integrated circuit device, memory module, storage device and the method for repairing semiconductor integrated circuit device
US6643725B1 (en) * 1999-02-26 2003-11-04 Hitachi, Ltd. Memory card having a buffer memory for storing testing instruction

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10107069B2 (en) 2002-07-16 2018-10-23 Onesubsea Ip Uk Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8746332B2 (en) 2002-07-16 2014-06-10 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8733436B2 (en) 2002-07-16 2014-05-27 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8469086B2 (en) 2002-07-16 2013-06-25 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US9556710B2 (en) 2002-07-16 2017-01-31 Onesubsea Ip Uk Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8167049B2 (en) 2002-07-16 2012-05-01 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8272435B2 (en) 2003-05-31 2012-09-25 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8573306B2 (en) 2003-05-31 2013-11-05 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8091630B2 (en) 2003-05-31 2012-01-10 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8220535B2 (en) 2003-05-31 2012-07-17 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US7992643B2 (en) 2003-05-31 2011-08-09 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8281864B2 (en) 2003-05-31 2012-10-09 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8066067B2 (en) 2003-05-31 2011-11-29 Cameron International Corporation Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US7992633B2 (en) 2003-05-31 2011-08-09 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8622138B2 (en) 2003-05-31 2014-01-07 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8540018B2 (en) 2003-05-31 2013-09-24 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US8122948B2 (en) 2003-05-31 2012-02-28 Cameron Systems (Ireland) Limited Apparatus and method for recovering fluids from a well and/or injecting fluids into a well
US9260944B2 (en) 2004-02-26 2016-02-16 Onesubsea Ip Uk Limited Connection system for subsea flow interface equipment
US8066076B2 (en) 2004-02-26 2011-11-29 Cameron Systems (Ireland) Limited Connection system for subsea flow interface equipment
US8776891B2 (en) 2004-02-26 2014-07-15 Cameron Systems (Ireland) Limited Connection system for subsea flow interface equipment
US8066063B2 (en) 2006-09-13 2011-11-29 Cameron International Corporation Capillary injector
US8776893B2 (en) 2006-12-18 2014-07-15 Cameron International Corporation Apparatus and method for processing fluids from a well
US9291021B2 (en) 2006-12-18 2016-03-22 Onesubsea Ip Uk Limited Apparatus and method for processing fluids from a well
US8297360B2 (en) 2006-12-18 2012-10-30 Cameron International Corporation Apparatus and method for processing fluids from a well
US8104541B2 (en) 2006-12-18 2012-01-31 Cameron International Corporation Apparatus and method for processing fluids from a well
US9037781B2 (en) 2012-01-09 2015-05-19 Phison Electronics Corp. Method for managing buffer memory, memory controllor, and memory storage device
CN103218308A (en) * 2012-01-20 2013-07-24 群联电子股份有限公司 Buffer memory management method, memory controller and memory storage device
TWI502598B (en) * 2012-02-22 2015-10-01 Silicon Motion Inc Method for accessing a flash memory and flash memory controller
US9223648B2 (en) 2012-08-08 2015-12-29 Phison Electronics Corp. Memory storage device, memory controller thereof, and method for processing data thereof

Also Published As

Publication number Publication date
US7002853B2 (en) 2006-02-21
US20080046643A1 (en) 2008-02-21
US7292480B2 (en) 2007-11-06
US7440337B2 (en) 2008-10-21
US6643725B1 (en) 2003-11-04
US20040236910A1 (en) 2004-11-25
US20050262292A1 (en) 2005-11-24
JP2000251035A (en) 2000-09-14

Similar Documents

Publication Publication Date Title
US7440337B2 (en) Nonvolatile semiconductor memory apparatus having buffer memory for storing a program and buffering work data
US9754643B2 (en) Asynchronous/synchronous interface
US5438549A (en) Nonvolatile memory with volatile memory buffer and a backup power supply system
US7093064B2 (en) Programming suspend status indicator for flash memory
JP2004247026A (en) Semiconductor integrated circuit and ic card
JPH07334999A (en) Non-volatile semiconductor storage device and data processor
US6795346B2 (en) Non volatile memory and data processor
KR20100032504A (en) Multi processor system having multi port semiconductor memory device and non-volatile memory with shared bus
JP2000030475A (en) Semiconductor memory device
US6938117B2 (en) Tri-stating output buffer during initialization of synchronous memory
US6178129B1 (en) Separate output power supply to reduce output noise for a simultaneous operation
JPH113594A (en) Non-volatile memory, data writing and read method
JP3193810B2 (en) Nonvolatile semiconductor memory device and test method therefor
US6115293A (en) Non-volatile semiconductor memory device
JP2000250665A (en) Semiconductor integrated circuit and memory card
US20060268625A1 (en) Semiconductor integrated circuit and microcomputer
JP2000250661A (en) Semiconductor integrated circuit and memory card
JP2006221677A (en) Memory card
JP2000173275A (en) Nonvolatile memory and memory system
JP4082513B2 (en) Semiconductor processing equipment
JPH09213913A (en) Semiconductor memory device and data processor
JP2002032996A (en) Microcomputer system
KR0180117B1 (en) Non-volatile semiconductor memory
JPH11185485A (en) Semiconductor storage and data processor
JP2008112568A (en) Data processor

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE