WO2003071437A1 - Dispositif de connexion externe, dispositif hote et systeme de communication de donnees - Google Patents

Dispositif de connexion externe, dispositif hote et systeme de communication de donnees Download PDF

Info

Publication number
WO2003071437A1
WO2003071437A1 PCT/JP2003/001800 JP0301800W WO03071437A1 WO 2003071437 A1 WO2003071437 A1 WO 2003071437A1 JP 0301800 W JP0301800 W JP 0301800W WO 03071437 A1 WO03071437 A1 WO 03071437A1
Authority
WO
WIPO (PCT)
Prior art keywords
bit
data
host device
control command
invalid
Prior art date
Application number
PCT/JP2003/001800
Other languages
English (en)
French (fr)
Inventor
Hideaki Bando
Original Assignee
Sony Corporation
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 Sony Corporation filed Critical Sony Corporation
Priority to US10/474,915 priority Critical patent/US7051128B2/en
Priority to DE60317771T priority patent/DE60317771T2/de
Priority to EP03706966A priority patent/EP1477902B1/en
Priority to KR1020037013463A priority patent/KR100987205B1/ko
Publication of WO2003071437A1 publication Critical patent/WO2003071437A1/ja
Priority to US11/361,897 priority patent/US7318113B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings

Definitions

  • the present invention relates to an externally connected device such as an fC memory device connected to an information processing device such as a computer, and a host to which the externally connected device is connected.
  • the present invention also relates to a device, and further to a data communication system using these externally connected devices and a host device.
  • This type of memory device generally incorporates a nonvolatile semiconductor memory (IC memory) such as a flash memory, and stores various digital data such as still image data, moving image data, audio data, and music data in the semiconductor memory.
  • IC memory nonvolatile semiconductor memory
  • This IC memory device functions as an external storage medium of a host device such as an information portable terminal, a desktop computer, a notebook computer, a mobile phone, an audio device, a home appliance, and the like.
  • the operation is controlled from the host device side via a predetermined interface.
  • operation control is performed by transferring processing commands from the host device to the IC memory device.
  • Flash memory used in IC memory devices has a low access speed. That Therefore, in order to shorten the data transfer sequence between the host device and the IC memory device, it is effective to define an interrupt request for notifying the end of the processing or the like from the IC memory device.
  • An object of the present invention is to provide an externally connected device and a host device to which the externally connected device can solve the problems of the conventional Ic memory device.
  • Another object of the present invention is to provide a data communication system using a host device by efficiently giving an interrupt signal from an externally connected device to the host device, and providing the host device with the externally connected device.
  • Another object of the present invention is to provide an externally connected device and a host device capable of shortening a data transfer processing time between the externally connected device and the host device, and a data communication system using the externally connected device and the host device.
  • An external connection device proposed to achieve the above object is an external connection device connected to a host device, and transmitted to and from the host device via a data bus.
  • a data communication means for performing bidirectional data communication; a bus state signal receiving means for receiving a bus state signal indicating a data bus state from the host device; and an operation control command included in the transmission data.
  • a controller for controlling the operation of the device.
  • the data communication means is provided from the host device to the controller when the state of the bus state signal is a state for receiving an interrupt from the device to the host device.
  • the information indicating the content of the interrupt factor generated based on the operation control command is transmitted to the host device via the data bus.
  • the state of the bus state signal is a state in which an interrupt from the device to the host device is accepted
  • an operation control command given from the host device to the controller may be used.
  • the information indicating the content of the interrupt factor generated based on this is transmitted as an interrupt signal to the host device via the data bus.
  • a host device is a host device to which an externally connected device is connected, and which performs bidirectional communication of transmission data with the externally connected device via a data bus.
  • Communication means a bus state signal transmitting means for transmitting a bus state signal indicating the state of the data bus to the externally connected device, and a controller for issuing a control command for controlling the operation of the externally connected device in the transmission data.
  • the data communication means operates the operation control command given from the device to the external device.
  • Information indicating the content of the interrupt factor generated based on the data bus is received from the external device via the data bus.
  • the state of the bus state signal when the state of the bus state signal is set to a state of accepting an interrupt from the external device to the device, the operation given from the device to the external device.
  • Information indicating the content of the interrupt factor generated based on the control command is received as an interrupt signal from the external device via the data bus.
  • FIG. 1 is a perspective view showing a memory card to which the present invention is applied and a host device using the memory card.
  • FIG. 2 is a perspective view of the memory card viewed from the front side.
  • FIG. 3 is a perspective view of the memory card viewed from the back side.
  • FIG. 4 is a block diagram showing the internal block configuration of the memory card.
  • FIG. 5 is a configuration diagram of an interface function for transmitting data between the memory card and the host device.
  • FIG. 6 is a diagram for explaining signals transferred between the memory card and the host device.
  • FIG. 7 is a diagram for explaining the communication contents in each state.
  • FIG. 8 is a timing chart of the parallel data, the bus state, and the clock at the time of transferring a write packet.
  • FIG. 9 is a timing chart of the parallel data, the bus state, and the clock at the time of transfer of the read packet.
  • FIG. 10 is a timing chart of a busy signal and a ready signal at the time of transfer of a write bucket and a read bucket.
  • FIG. 11 is a diagram showing internal registers constituting a status register group.
  • FIG. 12 is a diagram showing bit contents in the INT register.
  • FIG. 13 is a diagram illustrating an operation state of the memory card corresponding to each bit value in the 1NT register.
  • FIG. 14 is a diagram showing internal registers constituting a parameter register group.
  • FIG. 15 is a diagram showing transfer data at the time of SET_CMD_TPC.
  • FIG. 16 is a diagram showing transfer data at the time of EX_SET_CMD_TPC.
  • Fig. 17 is a diagram showing an example of the control command.
  • BEST MODE FOR CARRYING OUT THE INVENTION the present invention will be described with reference to an example in which the present invention is applied to a removable small IC memory device and a data processing device using the small IC memory device as an external storage medium. .
  • the small IC memory device is referred to as a memory card
  • the data processing device to which the memory card is connected is referred to as a host device.
  • the memory card 1 has a nonvolatile semiconductor memory (1C memory) therein and stores various digital data such as still image data, moving image data, audio data, and music data. be able to.
  • the memory card 1 functions as an external storage medium of a host device 2 such as an information portable terminal, a desktop computer, a notebook computer, a mobile phone, an audio device, a home appliance, and the like.
  • the memory card 1 has a slot provided in the host device 2. Used with 3 inserted. The user can freely insert and remove the memory card 1 from the insertion slot 3. Therefore, the memory card 1 inserted in one host device can be extracted and inserted into another host device. That is, the memory card 1 can be used for exchanging data between different host devices.
  • the memory card 1 and the host device 2 transfer data using a parallel interface using a 6-wire half-duplex parallel protocol that transfers six signals of 4-bit parallel data, clock signals, and bus state signals. .
  • the memory card 1 is formed in a substantially rectangular thin plate shape, and has a length L! Is set to 50 ram, the width W 'is set to 21.45 mm, and the thickness Di is set to 2.8 mm.
  • the memory card 1 has one surface as a front surface la and the other surface as a back surface 1b.
  • a connection terminal group 4 as 10 plane electrodes is provided on the back surface lb side of one end side of the memory card 1 in the longitudinal direction.
  • the electrodes constituting the connection terminal group 4 are provided in parallel in the width direction of the memory card 1. Between each of the electrodes, a partition piece 5 rising vertically from the back surface 1b is provided.
  • Each partition piece 5 is designed to prevent a connection terminal connected to each electrode from contacting another electrode.
  • a slide switch 6 for preventing erroneous erasure is provided at the center of one end of the back surface 1 b of the memory card 1.
  • the host device 2 on which the memory card 1 is mounted is provided with a slot 3 for inserting and removing the memory card 1.
  • the insertion slot 3 is formed as an opening corresponding to the width and thickness of the memory card 1 on the front side of the host device 2 as shown in FIG.
  • the memory card 1 inserted into the host device 2 via the insertion / removal opening 3 has the connection terminals of the host device 2 connected to the electrodes constituting the connection terminal group 4, so that the host device 2 to prevent dropping.
  • the connection terminal on the host device 2 side has 10 contacts corresponding to the electrodes constituting the connection terminal group 4 provided on the memory card 1 to be mounted.
  • connection terminal group 4 the one end provided with the connection terminal group 4 is an insertion end, and the direction of the arrow X1 in FIG. Wearing Is done.
  • each electrode constituting the connection terminal group 4 is connected to each contact of the connection terminal on the host device 2 side, so that signals can be transmitted and received.
  • the memory card 1 according to the present invention includes a parallel interface circuit (I / F) 12, a register circuit 13, a data buffer circuit 14, an ECC circuit 15, a memory An F controller 16, a nonvolatile semiconductor memory 17, and an oscillation control circuit 18 are provided.
  • the normal I / F circuit 12 is a circuit that transfers data to and from the host device 2 by using a 6-wire half-duplex parallel data transfer protocol.
  • the register circuit 13 includes, for example, an operation control command for the memory I / F controller 16 transferred from the host device (hereinafter, this operation control command is referred to as a control command), a memory card, and the like. This is a circuit for storing the internal state in 1, the parameters of various processes required when executing control commands, the file management information in the nonvolatile semiconductor memory 17, and the like.
  • the register circuit 13 is accessed from both the host device 2 and the memory I / F controller 16.
  • the host device 2 registers the transfer protocol specified by the data transfer protocol of the memory card (referred to as “ ⁇ , PC” (Transfer Protocol Command)) in a register. Access circuit 13 That is, when the host device 2 writes or reads out the control command stored in the register circuit 13 and various parameters, the host computer 2 uses the TPC.
  • the data buffer circuit 14 is a memory circuit that temporarily stores data written to the nonvolatile semiconductor memory 17 and data read from the nonvolatile semiconductor memory 17. That is, when data is written from the host device 2 to the nonvolatile semiconductor memory 17, the data to be written is transferred from the host device 2 to the data buffer circuit 14 according to the data transfer protocol, and then the data The memory I / F controller 16 writes the write target data stored in the buffer circuit 14 to the nonvolatile semiconductor memory 17. When data is read from the nonvolatile semiconductor memory 17 to the host device 2, the memory 1 / F controller 16 The data to be read is read from the volatile semiconductor memory 17 and temporarily stored in the data buffer circuit 14, and then the read data is transferred from the data buffer circuit 14 to the host device 2 according to the data transfer protocol. .
  • the data buffer circuit 14 has a data capacity of a predetermined data write unit (for example, 512 bytes which is the same as the page size of the flash memory). Note that the host device 2 accesses the data buffer circuit 14 using the TPC. In other words, when the host device 2 writes or reads data stored in the data buffer circuit 14, the host device 2 uses the TPC.
  • a predetermined data write unit for example, 512 bytes which is the same as the page size of the flash memory.
  • the circuit 15 adds an error correction code (ECC) to the data written to the nonvolatile semiconductor memory 17.
  • ECC error correction code
  • the ECC circuit 15 reads data from the nonvolatile semiconductor memory 17. Performs error correction processing on the read data based on the error correction code added to the read data.For example, the error correction code adds 3 bytes to a 512-byte data unit. Is done.
  • the memory I / F controller 16 controls the data exchange between the data buffer circuit 14 and the nonvolatile semiconductor memory 17 according to the control command stored in the register circuit 13, It controls security management of data in the semiconductor memory 17, controls other functions of the memory card 1, and updates data stored in the register circuit 13.
  • the non-volatile semiconductor memory 17 is, for example, a non-volatile semiconductor memory such as a NAND flash memory.
  • the capacity of the nonvolatile semiconductor memory 17 is, for example, 16 Mbytes, 32 Mbytes, 64 Mbytes, and 128 Mbytes.
  • the nonvolatile semiconductor memory 17 has an erase block unit of, for example, 16 Kbytes.
  • the read / write unit is called a page, and is the same 512 bytes as the data buffer circuit 14.
  • the oscillation control circuit 18 generates an operation clock in the memory card 1.
  • connection terminals of the memory card 1 are provided with VSS terminal, VCC terminal, DATA 0 terminal, ATA 1 terminal, DATA 2 terminal, DATA 3 terminal, BS terminal, CLK terminal, and 1 NS terminal. Since two VSS terminals are provided, the memory card 1 has a total of 10 connection terminals. A similar connection terminal is provided on the host device 2 side.
  • the VSS pin is connected to VSS (reference 0 volt). This VSS terminal connects the ground of the host device and the ground of the memory power, and makes the 0 volt base potential of the host device and the memory card coincide.
  • the VCC pin is supplied with the power supply voltage (VCC) from the host device.
  • the DAT A O terminal inputs and outputs the data signal (DATA O) of the least significant bit of the 4-bit parallel data transferred between the memory card 1 and the host device 2.
  • the DATA 1 terminal inputs and outputs the data signal (DATA 1) of the second lower bit of the 4-bit parallel data transferred between the memory card 1 and the host device 2.
  • the DATA 2 terminal inputs / outputs the data signal (DATA 2) of the third bit from the lowest of the 4-bit parallel data transferred between the memory card 1 and the host device 2.
  • the DATA 3 terminal inputs / outputs the data signal (DATA 3) of the fourth bit from the lower order among the 4-bit parallel data transferred between the memory card 1 and the host device 2.
  • a bus state signal is input from the host device to the memory card at the BS terminal.
  • the clock signal is input from the host device 2 to the CLK terminal.
  • the INS terminal is used for insertion / removal detection for the host device 2 to determine whether the memory card is inserted into the slot or not.
  • the INS terminal of the memory card 1 is connected to the ground, and the INS terminal of the host device 2 is bull-up via a resistor.
  • the interface function of the host device 2 includes a file manager 31, a TPC interface 32, and a parallel interface 33.
  • the interface function of the memory card 1 includes a parallel interface 33, a register 35, a data buffer 36, a memory controller 37, and a memory 38.
  • the file manager 31 manages files stored in the memory card 1 and files stored on other media of the host device on the operation system of the host device.
  • File Manager 31 is a host device This function is realized by the controller and the like in 2.
  • the TPC interface 32 is a lower layer of the file manager 31.
  • the TPC interface 32 uses a data transfer protocol that defines commands specific to this interface (TPC: Trans- fer Protocol), and registers 35 and data buffers 3 in the memory module 1. Access to 6.
  • TPC interface 32 is a function realized by a controller or the like in the host device 2.
  • the normal interfaces 33 and 34 are lower layers of the TPC interface 32 and are the physical layer of the present interface system.
  • the parallel interface 33, 34 is based on a 6-wire half-duplex parallel protocol, which is a data transfer protocol for transferring six signals of 4-bit parallel data, clock, and bus state signals. I do.
  • the parallel interfaces 33 and 34 are functions realized by the parallel interface circuit 12.
  • Register 35 contains the control command transferred from the host, the internal state of the memory card, the address of the data that accesses memory 38, the parameters of various processing required when executing the control command, and the memory. Stores file management information etc.
  • the register 35 is a function realized on the register circuit 13 of the memory card 1.
  • the data buffer 36 is a buffer area for temporarily storing data written to the memory 38 and data read from the memory 38.
  • the data buffer 36 is a function realized on the data buffer circuit 14 of the memory card 1.
  • the memory controller 37 reads, writes, and deletes data between the data buffer 36 and the memory 38 according to commands and various information stored in the register 35, and performs various information in the register 35. Control such as updating of the data.
  • the memory controller 37 is a function realized by the memory I / F controller 16 on the host device 2.
  • the memory 38 is a memory area for data, and is virtualized as a unique model through the memory controller 37.
  • Memory 38 is non-volatile on memory card 1. This function is realized by the intrinsic semiconductor memory 17.
  • data stored in other media managed by the file manager 31 is transferred to the memory 38 via the parallel interfaces 33 and 34. Can be transferred. Further, the data stored in the memory 38 can be transferred to other media managed by the file manager via the parallel interfaces 33 and 34.
  • a data transfer protocol between the memory card 1 and the host device 2 according to the present invention will be described.
  • the features of the data transfer protocol of the memory card 1 and the host device 2 are that four bus states are defined to identify the transfer direction and attribute of the transmission data, and that the host device 2 transmits the memory card 1 Access to the register circuit 13 and the data buffer circuit 14 using TPC, the host device 2 controlling the operation of the memory card 1 using control commands, and CRC (Cyclic Redundanc y Check codes) to detect errors in the transfer data between memory card 1 and host device 2, and specify the interrupt signal (INT signal) from memory card 1 to host device 2. And so on.
  • CRC Cyclic Redundanc y Check codes
  • the memory card 1 and the host device 2 are connected by six signals of a bus state signal (B S), four parallel data signals, and a clock signal (S CLK).
  • B S bus state signal
  • S CLK clock signal
  • the parallel data signal is a data signal transferred between the memory card 1 and the host device 2.
  • the parallel data signal transmits 4-bit parallel data (DATA [3: 0]), and transfers the parallel data (DATA [3: 0]) according to the state specified by the bus state signal. Attributes change.
  • the bus state signal is a signal that defines the state of the parallel data signal and the transfer start timing of the parallel data signal in each state. This bus state signal is transferred from the host device 2 to the memory card 1.
  • the states are divided into four states: three states in which packet communication is not performed (BS0) and three states in packet communication (BS1 to BS3).
  • the bus state signal is transmitted from BS 0 to BS 3 at the timing of switching between High and Low. To switch the state in order.
  • the clock signal is a clock of the parallel data signal and the bus state signal.
  • the clock signal is transferred from the host device to the memory card.
  • the clock signal is always output in three states (BS1 to BS3) during packet communication. The communication contents in each state are as shown in Fig. 7.
  • BS 0 is a state in which an interrupt signal (INT signal) from the memory card 1 to the host device 2 can be transferred to the parallel data signal line.
  • the INT signal is transferred asynchronously with respect to the clock.
  • the signal level of the bus state signal indicating the c BS 0 to packet communication is not performed is expressed by L ow. Note that the operation state of the memory card 1 is reflected in the INT signal, and the contents thereof will be described later.
  • TPC is a state where the PC is transferred to the parallel data signal line.
  • the signal level of the bus state indicating B S 1 is represented by High.
  • the TPC is transferred from the host device 2 to the memory card 1.
  • TPC is a command for the host device 2 to access the register circuit 13 and the data buffer circuit 14 of the memory card 1.
  • the TPC has commands for writing or reading data to or from the data buffer circuit 14, commands for writing or reading data to or from the register circuit 13, and control commands to be given to the memory I / F controller 16. Command to write to the register circuit 13.
  • the specific contents of TPC and control commands will be described later.
  • a write-type packet that transfers data from the host device 2 to the memory card 1 and a read-type packet that transfers data from the memory card 1 to the host device 2 are used.
  • the transfer direction and attribute of the parallel data (DATA [3: 0]) transferred on the parallel data signal are different. Whether the type of the bucket is a write-type packet or a read-type bucket is determined by the contents of TPC transferred by BS1.
  • Fig. 8 shows the timing chart of a light bucket, and the contents of BS2 and BS3 in a light bucket will be described.
  • transfer data on the 3 is transferred from the host device 2 to the memory card 1.
  • the transfer data on the parallel data signal becomes a busy (BSY) signal and a ready (RDY) signal generated from the memory card 1.
  • the busy signal and ready signal of the parallel data signal J are transferred from the memory card 1 to the host device 2.
  • processing is performed on the TPC and the transfer data transferred from the host device 2 to the memory card 1 in BS1 and BS2.
  • the memory card 1 sends a busy signal to the host device 2 during the processing of the TPC and the transfer data (that is, when the processing is not completed yet). When the processing is completed, the memory card 1 sends a ready signal to the host device 2.
  • the busy signal and the ready signal are transferred only to the signal line of the least significant bit (DAT AO) among the four parallel data signals.
  • the busy signal is a signal for setting the signal line of the least significant bit (DATA O) to the high level state.
  • the ready signal is a signal that causes the signal line of the least significant bit (DAT A0) to alternately repeat a high level and a low level every clock. As described above, by transmitting the busy signal and the ready signal, it is possible to establish a handshake between the memory card 1 and the host device 2 at the timing of BS 3 at the time of a write bucket in which data is not transferred. Can be.
  • Fig. 9 shows the timing chart of the read bucket, and the contents of BS2 and BS3 during the read bucket will be described.
  • the transfer data on the parallel data signal becomes a busy signal and a ready signal generated from the memory card 1.
  • the memory card 1 prepares for data transfer according to the TPC transferred from the host device 2 to the memory card 1 in BS1.
  • the memory card 1 sends a busy signal to the host device 2 while data transfer to the TPC is being prepared (that is, when the transfer preparation is not yet completed).
  • the memory card 1 sends a ready signal to the host device 2.
  • the transfer data on the parallel data signal becomes the data to be read from the register circuit 13 and the data buffer circuit 14, and the CRC of the data to be read.
  • the transfer data on the parallel data signal is transferred from the memory card 1 to the host device 2.
  • FIG. 10 shows a detailed timing chart of the busy signal and the ready signal generated in BS2 and BS3.
  • the busy signal and the ready signal are transferred only to the signal line of the least significant bit (DAT AO) among the four parallel data signals.
  • the other bits (DATAs 1 to 3) are at the 1 ow level.
  • the host device 2 receives only the signal transmitted to DAT A0 and ignores the signals of other bits.
  • the least significant bit (DATAO) corresponds to the serial data transmission line of the memory card using the conventional three-wire half-duplex protocol. Therefore, the present memory card 1 is compatible with the conventional memory card.
  • the memory card 1 uses a flash memory as the nonvolatile semiconductor memory 17.
  • the access time to the flash memory is much longer than the data transfer time between the memory card 1 and the host device 2. Therefore, in order to shorten the data processing sequence on the host device 2 side, it is effective to specify an interrupt request for notifying the end of the processing or the like from the memory card 1 side on the data transfer protocol. In other words, by defining the interrupt request from the memory card 1, the CPU processing on the host device 2 side can be released to other processing during access to the flash memory.
  • BSO when an interrupt request is issued to the memory card 1, the memory card 1 transfers an interrupt signal (INT signal) to the host device 2.
  • the IN signal is output from the memory card 1 without being synchronized with the clock signal.
  • any bit of the signal line of the parallel data (DATA [3: 0]) is set to h
  • igh level is set, it indicates that the memory card 1 has generated an interrupt request.
  • any bit of the parallel data (DATA [3: 0]) is 1 ow level, it indicates that memory card 1 is executing processing and there is no interrupt request.
  • interrupt factors generated from the memory card 1. For example, an interrupt was transmitted to notify the host device 2 that the operation control for the control command given to the memory card 1 was completed, and the operation control was performed for the control command given to the memory card 1. To notify the host device 2 that an error has occurred, an interrupt requesting access to the host device 2, and the control command given from the memory card 1 cannot be executed. interrupt for transmitting that respect host device 2, is so power s.
  • Memory card 1 assigns each cause of each of the above interrupts to each bit of parallel data (DATA [3: 0]), and changes the high-level line according to the cause of the interrupt that occurred. Let me. In other words, the memory signal 1 generates an INT signal having a different bit position at the high level at BS0 according to the content of the interrupt generated in the memory command 1.
  • the host device 2 detects the interrupt request from the memory card 1 by monitoring the level of each bit of the parallel data (DATA [3: 0]), and determines the bit position. Is detected as high, and the interrupt factor of memory card 1 is detected at the same time.
  • DATA [3: 0] the level of each bit of the parallel data
  • the host cannot confirm the interrupt cause at the same time as the request, and always establishes packet communication to send the interrupt cause to the memory card. Had to read.
  • the fact that the data line is 4 bits is used and each factor of the interrupt is assigned to each bit.
  • the host device 2 can check the cause of the interrupt at the same time as the interrupt request. Therefore, in the present invention, when an interrupt request is generated from the memory card 1, the host device 2 does not need to perform packet communication for confirming the request content. That is, the execution time of the data transfer sequence between the memory card 1 and the host device 2 can be shortened.
  • the INT signal of the memory card 1 is each bit value stored in the INT register that reflects the operation state based on the control command.
  • the NT register is provided in a status register group in the register circuit 13.
  • the parallel interface circuit 12 of the memory card 1 refers to each bit value of this INT register, and the bit value becomes valid (1). If the bit value is invalid (0), the data line corresponding to that bit is driven to 1 ow level. I do.
  • the specific contents of this INT register and the relationship between each value of the INT register and the parallel data (DATA [3: 0]) will be explained in the next section of the register circuit. Next, the register circuit 13 will be described.
  • the register circuit 13 includes a plurality of internal registers.
  • the internal registers in the register circuit 13 are classified into the following 1 to 5 according to their uses.
  • Register address register that stores the address for specifying the access position to each of the above registers 1, 2, and 3
  • the status register group includes four internal registers: 1 NT register, status register, type register, category register, and class register.
  • Each internal register in the status register group is a memory interface The stored value is updated by the controller 16.
  • Each internal register in the status register group can be accessed from the host device 2 by using the READ_REG_TPC (READ_REG_TPC is one command in the PC, the details of which will be described later). Is read-only.
  • Each internal register in the status register group can store a bit value of 8 bits, and each address is set.
  • the 1 NT register is a register in which the operation state of the memory card 1 is set.
  • the value in the INT register is updated by the memory I / F controller 16 according to the operation result for the control command given from the host device 2 to the memory card 1.
  • the INT register is an 8-bit register as shown in FIG.
  • the operating state is set in the 1NT register at the least significant bit (DO) and the upper 3 bits (D5 to D7) of the 8 bits. The remaining bits are reserved.
  • Bit D7 of the INT register is a CED (Command End) bit.
  • the CED bit is a bit indicating that the execution of the control command set by EX_SET-CMD-TPC or SET_CMD_TPC (one of the TPC's will be described later in detail) has been completed. Note that the terminating execution here indicates that the execution has been completed regardless of whether the execution has been completed normally or with an error.
  • the CED bit indicates that the bit value is invalid (0) by the memory 1 / F controller 16 when the controller command is set by EX—SET—CMD—TPC or SET—CMD—TPC and in the initial state.
  • the bit value is made valid (1) by the memory I / F controller 16.
  • Bit D6 of the INT register is the ERR (Error) bit.
  • the ERR bit indicates an error in executing the memory access command (control command) and security command (control command) set by EX—SET—CMDJTPC or SET—CMD—TPC. This bit indicates that an error has occurred. If an error occurs, the bit value of the ERR bit is valid by the memory 1 / F controller 16 (1) The memory is set when a control command is set by a new EX_SET_CMD_TPC or SET—CMD_TPC or when the error state is released. ).
  • Bit D5 of the INT register is a BREQ / PRG (Buffer Request / Progres) bit.
  • the BREQ / PRG bit is executed as a result of executing the memory access command (control command) and security command (control command) set by EX_SET—CMD—TPC or SET—CMD—TPC.
  • This bit indicates a request to the host device 2 for access to the data buffer circuit 14 and a progress status of the internal erase process and the format process of the nonvolatile semiconductor memory 17 when the process is executed. For example, a data write request to the data buffer circuit 14 when a write command is issued to the nonvolatile semiconductor memory 17, and a data buffer circuit when a data read command is issued to the nonvolatile semiconductor memory 17.
  • This bit indicates that there is a data read request, security data reception request, etc. from 14.
  • the bit value of the BREQ / PRG bit is validated (1) by the memory I / F controller 16 when each request occurs, and the memory is used when the host device 2 accesses the request by TPC.
  • the bit value is invalidated (0) by the I / F controller 16.
  • the bit value of the BREQ / PRG bit is updated by the memory I / F controller 16 according to the progress of formatting and erasing.
  • Bit D0 of the INT register is a CMDNK (Command Nack) bit.
  • the CMDNK bit is a bit that indicates that the command set by EX-SET_CMD-TPC or SET-CMD-TPC cannot be executed.
  • the bit value is made valid (1) by the memory I / F controller port — 16 and
  • the following bits are set in the NT register.
  • the operation state of the memory card 1 for the immediately preceding control command is determined by the combination of the values of the bits in the INT register as shown in FIG. State can be expressed.
  • each bit (CED, ERR, BREQ / PRG, CMD NK) in the 1 NT register is reflected in the INT signal.
  • the parallel interface circuit 12 of the memory card 1 outputs the parallel data (CED, ERR, BREQ / PRG, CMDNK) according to the parallel data (CED, ERR, BREQ / PRG, CMDNK).
  • Each bit of the INT register, and The relation of each line of the parallel data is as follows. DATA 0: CED
  • the parallel interface circuit 12 always refers to the value in the INT register during the period when the state is BS0, and the value of the bit in the NT register is valid.
  • the host device 2 monitors the level of each data line of the parallel data (DATA [3: 0]) and issues an interrupt request from the memory card 1. It is determined whether or not.
  • the host device 2 receives an interrupt request from the memory card 1, that is, when it determines that any of the data lines has changed from the 1 ow level to the high level, the host device 2 determines which data line level is high. Is detected, and the operation state shown in FIG. 13 described above is detected. Then, the host device 2 performs a corresponding process according to the detected operation state.
  • each parameter register group has internal registers such as a system parameter register, data count / security parameter register, data address / revision number register, TPC parameter register, and command parameter register. Is provided.
  • the values stored in the internal registers in the parameter register group are updated by the host device 2, and the values are referred to when the memory I / F controller 16 executes the control command.
  • Each internal register in the parameter register group can be accessed from the host device 2 by WRITE_REG_TPC, EX_SET_CD_TPC (one of TPCs. Details will be described later).
  • Each internal register in the parameter register group has an address set for every 8 bits.
  • the data count / security parameter register stores the number of data required to execute the memory access command (control command) given to the memory card from the host device 2]. For example, nonvolatile semiconductor memory 1 ⁇ ⁇ ⁇ The data size of read data when reading data from the memory, the data size of write data when writing data to the nonvolatile semiconductor memory 17, and the like are set.
  • the data count / security parameter register stores various setting values required for executing security commands (control commands). The size of this data count / security parameter register is 16 bits, and two addresses are set in 8-bit units.
  • the data address / revision number register is an address on the non-volatile semiconductor memory 17 necessary for executing a memory access command (control command) given to the memory card 1 from the small host device 2. Is stored. For example, a start address of a read position when reading data from the nonvolatile semiconductor memory 17 and a start address of a write position when writing data to the nonvolatile semiconductor memory 17 are set.
  • the data count / security parameter register stores the revision number required to execute a security command (control command).
  • the size of the data entry / security parameter register is 32 bits, and four addresses are set in 8-bit units.
  • the data count / security parameter register and data address / revision number register are referred to during execution of READ_DATA, KEAD_INF0, WRITE_DATA, WR1TE_INF0, etc. of the memory access command (control command). Become. In the data count / security parameter register and data address / revision number register, data is written by WRITE-REG-TPC, EX-SET-CMD_TPC in TPC. The details of these control commands will be described later.
  • the register address register is a register in which when the host device 2 accesses the above status register group and parameter register group using the TPC, the leading address and data length of the register to be accessed are set in advance. is there.
  • WRITE-RE Data can be written with G_TPC (one of TPCs; details will be described later), and data can be read with READ_REG_TPC (one of TPCs; details will be described later).
  • G_TPC one of TPCs; details will be described later
  • READ_REG_TPC one of TPCs; details will be described later
  • these WRITE_REG_TP READ_REG_TPC do not include information specifying the register position as an argument. Therefore, when the host device 2 accesses the register using these WR ITE_REG_TPC and READ_REG_TPC, the host device 2 must first address the status register group and the parameter register group with respect to this register address register. Set the data length.
  • the memory I / F controller 16 responds to each command by referring to the information stored in this register address register. Perform the following processing.
  • the TPC that stores the register address and data length for this register address register is SET_R_W_REG_ADRS_TPC (details will be described later).
  • the command register is a register that stores a control command given from the host device 2.
  • the memory I / F controller 16 controls various operations according to the control commands stored in the command register.
  • the TPC that stores the control command in this command register is SET-CMD-TPEX_SET_CMD_TPC (details will be described later).
  • TPC Transfer Protocol Command
  • TPC is a command specified in the data transfer protocol of the memory card 1 and the host device 2.
  • the TPC is used when the host device 2 accesses the register circuit 13 and the data buffer circuit 14 in the memory card 1.
  • the bus state signal is transferred from the host device 2 to the memory card 1 at the timing of BS 1.
  • K EAD_LONG — DATA — TPC is an instruction to read 512 bytes of data from the data buffer circuit 14. That is, it is an instruction to transfer all data stored in the data buffer circuit 14 to the host device 2.
  • READ — L0NG_DATA — TPC is a read instruction. In other words, when KEAD_LONG_DATA_TPC is issued from the host device 2 to the memory card 1 in BS 1, the data of 512 bytes in the data buffer circuit 14 is transferred from the memory card 1 to the host device 2 in BS 3 in BS 3. Is done.
  • READ_SH0RT—DATA_TPC is an instruction to read data of the data length set in the TPC parameter register from the data buffer circuit 14. That is, it is an instruction to transfer a predetermined amount of data stored in the data buffer circuit 14 to the host device 2.
  • READ—SH0RT_DATA—TPC is a read instruction. That is, when BS 1 issues READ—SH0RT_DATA_TPC from the host device 2 to the memory card 1, BS 3 transfers data for a predetermined byte in the data buffer circuit 14 from the memory card 1 to the host device 2. Transferred to
  • READ — REG_TPC is an instruction to read the value of the register whose address is set.
  • the registers for which addresses are set are the internal registers of the status register group, parameter register group, and extra register group.
  • the address position (start address and data length) of the register to be read is the value stored in the register address register. In other words, when referring to the value in the register, it is necessary to write the target address position in the register address register in advance.
  • the TPC that writes the address position to this register address register is SET_R_W—REG—ADRS—TPC.
  • READ_REG — TPC is a read instruction.
  • GET — INT_TPC is an instruction to read the value (8-bit value) of the JNT register, which is an internal register of the status register group.
  • the GET-IN 'TPC reads the value of the INT register without storing the address position in the register address register as in the above READ-REG_TPC.
  • GET—INTJ C is a read instruction. That is, when GET_INT—TPC is issued from the host device 2 to the memory card 1 at BS 1, the 8-bit data in the IN register is transferred from the memory card 1 to the host device 2 at BS 3 when BS 3 issues Is done.
  • WRITE—LONG—DATA—TPC is an instruction to write 12-byte data to the data buffer circuit 14. That is, the instruction is to transfer all data in the data buffer circuit 14 from the host device 2 to the data buffer circuit 14.
  • WRITE—LONG—DATA—TPC is a write-related instruction. That is, when WRITE—LONG—DATA—TPC is issued from the host device 2 to the memory card 1 in BS 1, the data for the 12-byte data written to the data buffer circuit 14 is written to the host device in BS 2. Transferred from 2 to memory card 1.
  • WRITE_SHORT_DATA_TPC is an instruction to write data of the data length set in the TPC parameter register to the data buffer circuit 14. That is, it is an instruction to transfer a predetermined amount of data from the host device 2 to the data buffer circuit 14.
  • WRITE — SH0RT_DATA_JPC is a write instruction. That is, when WRITE_SH0RT—DATA—TPC is issued from the host device 2 to the memory card 1 in BS 1, the data for a predetermined byte to be written in the data buffer circuit 14 is transmitted from the host device 2 in BS 2 to the memory card 1 Transferred to
  • WRITEJ G — TPC is an instruction to read the value of the register where the address is set.
  • the registers to which addresses are set are the internal registers of the status register group, parameter register group, and extra register group, but the parameter register group and extra register group that can be written by the host device 2 .
  • the address position (start address and data length) of the register to be written is the value stored in the register address register. In other words, when writing a value to a register, the target address location must be written to the register address register in advance. Must be written.
  • the TPC that writes the address location to this register address register is SETJ and W—KEG_ADRS_TPC.
  • WR ITE_REG_TPC is a write-related instruction. That is, when WRITE REG_TPC is issued from the host device 2 to the memory card 1 in BS1, the data to be written in the target register is transferred from the host device 2 to the memory card 1 in BS2.
  • SET—R_W—REG—ADRS—TPC is an instruction to store the address position of the register accessed by READ—KEG—TPC, WRITE—REG—TPC in the register address register.
  • SET_R—W_REG—ADRS—TPC is a light instruction. In other words, when SET—R—W_REG—AD RS—TPC is issued from the host device 2 to the memory card 1 in BS1, the data to be written to the register address register is transmitted from the host device 2 to the memory card 1 in BS2. Is forwarded to
  • SET_CMD_TPC is a command for storing a control command, which is an operation command for the memory I / F controller 16, in the command register.
  • a control command is stored in the command register by SET—CMD—TPC
  • the memory I / F controller 16 performs operation control according to the control command.
  • the operation content includes, for example, an operation control for a memory, an operation for each function other than the memory, or an operation related to data security.
  • the operation may be performed by referring to the value stored in the parameter register.
  • SET_CMD_TPC is a write instruction.
  • the control command written in the command register is transferred from the host device 2 to the memory card 1 in BS 2.
  • EX—SET—CMD—TPC is an instruction that stores data in the data register / security parameter register and data address / revision number register, and at the same time stores control commands in the command register. .
  • EX— SET— CMD When the memory access command is transferred as a control command by TPC, the nonvolatile semiconductor memory is stored in the data count / security parameter register. The amount of data to access the memory 17 is stored, and the data address of the nonvolatile semiconductor memory 17 is stored in the data address / revision number register.
  • a security command is transferred as a control command by EX—SET—CMD—TPC, parameters for security management are stored in the data entry / security parameter register, and the data address / revision is performed.
  • the revision naming register for security management is stored in the naming register.
  • the control command is transferred by this EX_SET—CMDJTPC, before the memory I / F controller 16 executes the control command, the data transfer / security parameter register and the data address / revision number register are executed.
  • the transfer data is stored for.
  • EX_SET_CMD_TPC is a write instruction. That is, when EX_SET-CMD-TPC is issued from the host device 2 to the memory card 1 in BS1, the control command code and the like are transferred from the host device 2 to the memory card 1 in BS2.
  • the same data transfer operation as EX—SET_CMD_TPC can also be realized by using SET_CMD_TPC.
  • a control command that performs operation control by referring to the value stored in the internal register in the parameter register group, for example, READ-DATA, READ-INF0, WR ITE-DATA, WR ITE-INFO, etc.
  • the referenced data must be transferred to the parameter register in advance. That is, before executing SET-CMD-TPC, it is necessary to transfer SET-R-W-REG-ADRS and WRITE_REG-TPC.
  • EX_SET-CMD-TPC when EX_SET-CMD-TPC is used, it is not necessary to previously store data in the data entry / security parameter register and the data address / revision number register using WRITE_REG-TPC. In other words, a data transfer operation requiring three buckets can be realized by using EX_SET_CMD_TPC using only one packet using SET_CMD_TPC.
  • the bucket sequence for transferring SET-W_REG-ADRS and WRITE-REG_TPC does not need to be executed, and the processing speed is increased. be able to.
  • Figure 15 shows the transfer from host device 2 to memory card 1 when SET CMDJ'PC is executed.
  • a specific example of transfer data to be transmitted is shown.
  • Fig. 16 shows a specific example of transfer data transferred from the host device 2 to the memory card 1 when EX_SET_CD_TPC is executed.
  • the transfer data shown in FIGS. 1.5 and 16 is transferred at 13 S2.
  • the transfer data is one byte of command and two bytes of CRC.
  • the first command is a code for specifying a control command to be executed by the memory I / F controller 16.
  • the command code is stored in the command register.
  • the transfer data consists of a 1-byte command code, 2-byte count / security parameter data, 2-byte address / revision number data, and 2-byte CRC.
  • the count / security parameter data is data stored in the data entry / security parameter register.
  • the address / revision number data is data stored in the data address / revision number register.
  • the transfer data of SET-CMD-TPC has a longer data length than that of EX-SET_CMD-TPC. Therefore, when transferring the command code that can be executed without referring to the data count / security parameter register and the data address / revision number register, the host device 2 does not use EX-SET_CMD—TPC. However, using SET_CMD_TPC results in a shorter packet. Therefore, SET-CMD_TPC and EX-SET_CMD_TPC are set as the TPC command set, and the processing is further accelerated by adaptively selecting according to the control command to be transferred. be able to.
  • the control command is an operation control instruction given from the host device 2 to the memory I / F controller 16 of the memory card 1.
  • the control command f is stored in the command register in the memory card 1 by SET-CMD-TPC or EX-SET-CMD-TPC of the host device.
  • the memory I / F controller 16 executes an operation control corresponding to the control command. Then, along with the execution of the operation control, each value in the 1 NT register is appropriately updated.
  • Control commands are classified into three types: memory access commands, function commands, and security commands.
  • the memory access command is a command for accessing the nonvolatile semiconductor memory 17 on the memory card 1.
  • the function command is a command for accessing each function on the memory card 1.
  • the security command is a command for realizing the security function required for copyright protection.
  • the memory access commands include, for example, a command to read data from the nonvolatile semiconductor memory 17 to the data buffer circuit 14, a command to write data from the data buffer circuit 14 to the nonvolatile semiconductor memory 17, and a nonvolatile semiconductor memory. There is a command for erasing data on the memory 17 and the like.
  • the function command includes, for example, a format command for returning the memory card 1 to a factory default state, a sleep command for stopping the operation of the oscillator 18 of the memory card 1, and the like.
  • the security commands include, for example, a command for reading a unique ID of the memory card 1, a command for operating a key associated with a content key, and a command for generating a random number.
  • FIG. 1 An example of the memory access command is shown in FIG. 1
  • Memory access commands include READ-DATA, WRITE-DATA, READ-INF0, READ-ATRB, STOP, and ERASE, as shown in Fig.17.
  • READ_DATA is an instruction to continuously read data from a designated address in the user area of the nonvolatile semiconductor memory 17.
  • the memory I / F controller 16 refers to the address stored in the data address / revision naming register and refers to this address on the nonvolatile semiconductor memory 17. Access to the address and read data from this address.
  • the read data is once sent to the data buffer circuit 14.
  • the memory 1 / F controller 16 is full of the data buffer circuit 14, that is, when the data of 512 bytes is read, the BREQ / PRG bit of the INT register becomes valid (1), Issues a transfer request interrupt to the host device 2.
  • the subsequent data is stored in the nonvolatile memory. From the non-volatile semiconductor memory 17 to the data buffer circuit 14.
  • the memory 1 / F controller] 6 repeats the above processing until the data of the number of data stored in the data count / security parameter register is read.
  • the CMD bit of the INT register is enabled (1), and the processing ends. If an error occurs during the processing, the CMD bit of the INT register is enabled (1), and the ERR bit is enabled. (1) and the processing ends.
  • WRITE-DATA is an instruction for continuously recording data stored in the data buffer circuit 14 from a specified address of a user memory of the nonvolatile semiconductor memory 17.
  • the memory I / F controller 16 refers to the address stored in the data address / revision number register and refers to this address on the non-volatile semiconductor memory 17. Access is made and data is written from this address.
  • the data to be written is the data stored in the data buffer circuit 14.
  • the memory I / F controller 16 makes the BREQ / PRG bit of the INT register valid (1). Then, a transfer request interrupt is issued to the host device 2.
  • the memory I / F controller 16 repeats the above processing until writing data for the number of data stored in the data entry / security parameter register.
  • the CMD bit in the 1 NT register is made valid (1) and the processing ends. If an error occurs during processing, the CMD bit of the INT register is enabled (1) and the ERR bit is enabled (1), and the processing ends.
  • READ-INFO is an instruction for continuously reading data from a specified address of an information book area in the system area of the nonvolatile semiconductor memory 17.
  • the processing procedure of the memory I / F controller 16 is the same as that of READ_DATA.
  • WRITE INFO is an information system for the non-volatile semiconductor memory 1.7 system area. This is an instruction to write data continuously to the specified address of the Yonbook Area.
  • the processing procedure of the memory I / F controller 16 is the same as that of WRITE_DATA.
  • C READ_ATRB is an instruction to read attribute information from the nonvolatile semiconductor memory 17. When the READ-ATRB is given, the memory I / F controller 16 reads the attribute information in the nonvolatile semiconductor memory 17 and transfers it to the data buffer circuit 14.
  • STOP is an instruction to terminate the execution of KEAD_DATA, WRITE-DATA, READ_1NF0, WRITE-INF0, and READ-ATRB processing.
  • the memory I / F controller 16 stops execution processing of READ-DATA, WRITE-DATA, READ-INF0, WRITE-INF0, and READ-ATRB.
  • ERASE is an instruction to erase data from a specified address in the user area.
  • the memory I / F controller 16 refers to the address stored in the data address / revision number register, and starts counting the data count / security from the storage location indicated by this address.
  • the data in the nonvolatile semiconductor memory 17 is erased by the number of data stored in the security parameter register.
  • the removable memory card to which the present invention is applied and the host device using the memory card as an external storage medium have been described.
  • the present invention is not limited to application to such a memory card.
  • the present invention may be applied to a camera device as an external connection device of a host device.
  • the memory I / F controller 16 controls the operation of the camera device, and a camera control command is also set as the control command.
  • the state of the bus state signal is used. Indicates the contents of the cause of the interrupt that is generated based on the operation control command given from the host device to the controller of the externally connected device when the state is set to accept the interrupt from the externally connected device to the host device. Information is transferred via the data bus as an interrupt signal to be sent from the external device to the host device.
  • the interrupt factor generated by the external device can be used as a host. Device can determine. Therefore, the host device can immediately respond to the interrupt factor without receiving the interrupt signal and communicating with the externally connected device to check the interrupt factor. Therefore, in the externally connected device and the host device according to the present invention, the data transfer sequence can be shortened when an interrupt request is issued to the externally connected device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)
  • Table Equipment (AREA)

Description

明細書 外部接続機器、 ホス ト機器及びデータ通信システム 技術分野 本発明は、 コンピュータ等の情報処理装置に接続される f Cメモリ装置等の外 部接続機器及びこの外部接続機器が接続されるホス ト機器に関し、 更には、 これ ら外部接続機器及びホス ト機器を用いたデータ通信システムに関する。
本出願は、 日本国において 2 0 0 2年 2月 2 1 日に出願された日本特許出願番 号 2 0 0 2— 0 4 5 2 5 2を基礎と して優先権を主張するものであり、 この出願 は参照することにより、 本出願に援用される。 背景技術 従来、 情報携帯端末、 デスク ト ップ型コンピュータ、 ノート型コンピュータ、 携帯電話機、 オーディオ装置、 家電装置等のホス ト機器の外部記憶媒体として、 これら機器に対し装脱可能とされ、 半導体メモリを内蔵したカード型のリムーバ ルな小型 I Cメモリ装置が用いられている。
この種のメモリ装置は、 一般にフラッシュメモリ等の不揮発性の半導体メモリ ( I Cメモリ) を内蔵し、 この半導体メモリに静止画像データ、 動画像データ、 音声データ、 音楽データ等の各種デジタルデータを格納する。 この I Cメモリ装 置は、 例えば、 情報携帯端末、 デスク トップ型コンピュータ、 ノート型コンビュ ータ、 携帯電話機、 オーディオ装置、 家電装置等々のホス ト機器の外部記憶メデ ィァと して機能する。
このような I Cメモリ装置では、 所定のインタフェースを介して、 ホス ト機器 側から動作が制御されている。 一般的には、 ホス ト機器側から I Cメモリ装置に 対して処理コマンドを転送して、 動作制御が行われている。
I Cメモリ装置に用いられるフラ ッシュメモリは、 アクセス速度が遅い。 その ため、 ホス ト機器と I Cメモリ装置との問のデータ転送シーケンスを短縮するに は、 I Cメモリ装置側から処理の終了等を通知する割り込み耍求を規定すること が有効となる。 発明の開示 本発明の目的は、 従来の I cメモリ装置が有する問題点を解消することができ る外部接続機器及びこの外部接続機器が接続されるホス ト機器、 更には、 これら 外部接続機器及びホス ト機器を用いたデータ通信システムを提供することにある < 本発明の他の目的は、 外部接続機器からホス ト機器に対して効率的に割り込み 信号を与えて、 ホス ト機器と外部接続機器とのデータ転送処理時間を短縮するこ とができる外部接続機器及びホス ト機器、 更には、 これら外部接続機器及びホス ト機器を用いたデータ通信システムを提供することにある。
上述したような目的を達成するために提案される本発明に係る外部接続機器は、 ホス ト機器に接続される外部接続機器であって、 ホス ト機器との間でデ一タバス を介して伝送データの双方向通信を行うデータ通信手段と、 データバスのステー トを示すバスステート信号を上記ホス ト機器から受信するバスステート信号受信 手段と、 伝送データに含まれる動作制御コマン ドに応じて本機器の動作制御をす るコントローラとを備え、 データ通信手段は、 バスステート信号のステートが本 機器からホス ト機器への割り込みを受け付けるステートとされているときに、 ホ ス ト機器からコントローラへ与えられた動作制御コマン ドに基づき発生する割り 込み要因の内容を示す情報を、 データバスを介して上記ホス ト機器へ送信する。 本発明に係る外部接続機器では、 バスステート信号のステートが本機器からホ ス ト機器への割り込みを受け付けるステートとされているときに、 ホス ト機器か らコン トローラへ与えられた動作制御コマンドに基づき発生する割り込み要因の 内容を示す情報を割り込み信号と して、 データバスを介してホス ト機器へ送信す る。
本発明に係るホス ト機器は、 外部接続機器が接続されるホス ト機器であって、 外部接続機器との間でデ一タバスを介して伝送データの双方向通信を行うデ一タ 通信手段と、 データバスのステートを示すバスステート信号を外部接続機器へ送 信するバスステート信号送信手段と、 外部接続機器の動作制御をする制御コマン ドを伝送データに含めて発行するコントローラとを備え、 データ通信手段は、 バ スステ一ト信号のステートが外部接続機器から本機器への割り込みを受け付ける ステー トとされているときに、 本機器から上記外部接続機器へ与えられた動作制 御コマンドに基づき発生する割り込み要因の内容を示す情報を、 データバスを介 して外部接続機器から受信する。
本発朋に係るホス ト機器では、 バスステート信号のステートが外部接続機器か ら本機器への割り込みを受け付けるステ一トとされているときに、 本機器から外 部接続機器へ与えられた動作制御コマンドに基づき発生する割り込み要因の内容 を示す情報を割り込み信号として、 データバスを介して外部接続機器から受信す る。
本発明の更に他の目的、 本発明によって得られる具体的な利点は、 以下におい て図面を参照して説明される実施の形態の説明から一層明らかにされるであろう。 図面の簡単な説明 図 1は、 本発明が適用されたメモリカード及びこのメモリカー ドを用いるホス ト機器を示す斜視図である。
図 2は、 メモリカードを表面側から見た斜視図である。
図 3は、 メモリカードを裏面側から見た斜視図である。
図 4は、 メモリ力一ドの内部ブロック構成を示すプロック図である。
図 5は、 メモリカードとホス ト機器との問のデータ伝送をするためのインタフ ェ一ス機能の構成図である。
図 6は、 メモリカードとホス ト機器との間に転送される信号について説明をす るための図である。
図 7は、 各ステートでの通信内容を説明するための図である。
図 8は、 ライ ト系パケッ トの転送時のパラレルデータ、 バスステート及びクロ ックのタイ ミングチャートである。 図 9は、 リード系パケッ トの転送時のパラレルデータ、 バスステー ト及びクロ ックのタイ ミングチャートである。
図 1 0は、 ライ ト系バケツ ト及びリード系バケツ トの転送時のビジー信号及び レディー信号のタイ ミングチヤ一トである。
図 1 1は、 ステータスレジスタ群を構成する内部レジスタを示す図である。 図 1 2は、 I N Tレジスタ内のビッ ト内容を示す図である。
図 1 3は、 1 N Tレジスタ内の各ビッ ト値に対応するメモリカードの動作状態 を示す図である。
図 1 4は、 パラメータレジスタ群を構成する内部レジスタを示す図である。 図 1 5は、 SET_CMD_TPC時の転送データを示す図である。
図 1 6は、 EX_SET_CMD_TPC時の転送データを示す図である。
図 1 7は、 ■コン ト ローノレコマン ドの一例を示す図である。 発明を実施するための最良の形態 以下、 本発明をリムーバルな小型 I Cメモリ装置、 並びに、 この小型 I Cメモ リ装置を外部記憶メディアと して用いるデータ処理装置に適用した例を挙げて説 明する。
なお、 以下の説明で、 小型 I Cメモリ装置をメモリカードと称し、 このメモリ カードが接続されるデータ処理装置をホス ト機器と称する。
まず、 本発明を適用したホス ト機器及びこのホス ト機器に接続されるメモリ力 一ドの概略を図 1を参照して説明する。
本発明に係るメモリカー ド 1は、 内部に不揮発性の半導体メモリ ( 1 Cメモ リ) を有しており、 静止画像データ、 動画像データ、 音声データ、 音楽データ等 の各種デジタルデータを格納することができる。 このメモリカード 1は、 例えば、 情報携帯端末、 デスク トップ型コンピュータ、 ノート型コンピュータ、 携帯電話 機、 オーディオ装置、 家電装置等々のホス ト機器 2の外部記憶メディアと して機 能する。
メモリカード 1は、 図 1に示すように、 ホス ト機器 2に設けられている挿脱口 3に挿入された状態で使用される。 メモリカード 1の挿脱口 3に対する挿入及び 抜き取りは、 ユーザが自在に行うことができる。 そのため、 あるホス ト機器に挿 入されていたメモリカード 1を抜き出して、 他のホス ト機器に挿入すること もで きる。 すなわち、 本メモリカード 1は、 異なるホス ト機器間のデータのやり取り に用いることが可能である。
メモリカード 1及びホス ト機器 2は、 4 ビッ トパラ レルデータ、 クロ ック信号、 バスステート信号の 6つの信号を転送する 6線式半 2重パラレルプロ トコルを用 いたパラレルインタフェースでデータの転送を行う。
本発明に係るメモリ力一ド 1は、 図 2に示すよ うに、 略長方形状の薄板状に形 成され、 長手方向の長さ L!を 5 0 ra mと し、 幅 W 'を 2 1 . 4 5 m mと し、 厚さ D iを 2 . 8 m mと して形成されている。 メモリカード 1は、 一方の面を表面 l a と し、 他方の面を裏面 1 b と している。 メモリカード 1長手方向の一端側の裏面 l b側には、 図 3に示すように、 1 0個の平面電極である接続端子群 4が設けら れている。 接続端子群 4を構成する各電極は、 メモリカー ド 1の幅方向に並列し て設けられている。 電極と電極との各間には、 裏面 1 bから垂直に立ち上がった 仕切片 5が設けられている。 各仕切片 5は、 各電極に接続される接続端子が他の 電極に接触することを防止するようにしたものである。 メモリカード 1の裏面 1 bの一端部側の中央部には、 図 3に示すように、 誤消去禁止用のスライ ドスイ ツ チ 6が設けられている。
上述したメモリカード 1が装着されるホスト機器 2には、 メモリカード 1 を挿 脱するための揷脱ロ 3が設けられている。 挿脱口 3は、 図 1に示すよ うに、 ホス ト機器 2の前面側にメモリカード 1 の幅 及び厚さ に対応する開口と して形 成されている。 挿脱口 3を介してホス ト機器 2に挿入されたメモリカー ド 1は、 接続端子群 4を構成する各電極にホス ト機器 2側の接続端子が接続されることに よ り、 ホス ト機器 2への保持が図られて脱落が防止される。 なお、 ホス ト機器 2 側の接続端子は、 装着されるメモリカード 1に設けられる接続端子群 4を構成す る電極に対応して 1 0個の接点を有する。
本発明に係るメモリカード 1は、 接続端子群 4が設けられた一端側を挿入端と し、 図 2中矢印 X 1方向を挿入方向と して揷脱ロ 3を介してホス ト機器 2に装着 される。 ホス ト機器 2に装着されたメモリカー ド 1は、 接続端子群 4を構成する 各電極とホス ト機器 2側の接続端子の各接点とが接続され、 信号の授受が可能な 状態となる。
次に、 本発明に係るメモリカー ド 1 の内部構成を、 図 4を参照して説明する。 本発明に係るメモリカード 1は、 図 4に示すよ うに、 パラレルインタフェース 回路 ( I /F) 1 2と、 レジスタ回路 1 3と、 データバッファ回路 1 4 と、 E C C 回路 1 5 と、 メモリ 】 / Fコントローラ 1 6 と、 不揮発性半導体メモリ 1 7 と、 発 振制御回路 1 8 とを備えている。
ノ ラ レル I /F回路 1 2は、 6線式半 2重パラレル方式のデータ転送プロ トコル を用いて、 ホス ト機器 2との間でデータの転送を行う回路である。
レジスタ回路 1 3は、 例えば、 ホス ト機器から転送されるメモリ I /F コン ト口 ーラ 1 6に対する動作制御コマンド (以下、 この動作制御コマンドのことをコン トロールコマンドと称する。 ) 、 メモリカード 1内の内部状態、 コントロールコ マン ドを実行する際に必要な諸処のパラメータ、 不揮発性半導体メモリ 1 7内の ファイル管理情報等を記憶する回路である。 このレジスタ回路 1 3は、 ホス ト機 器 2及びメモリ I /Fコン トローラ 1 6の両者からアクセスされる。 なお、 ホス ト 機器 2は、 本メモリカードのデータ転送プロ トコル上で規定される転送プロ トコ ノレ iマン Κ (ζλΎ, 丁 P C (Transfer Protocol Command)とレヽう。 ) を j¾レヽて、 レ ジスタ回路 1 3に対してアクセスを行う。 すなわち、 レジスタ回路 1 3に格納さ れるコントロールコマンドゃ各種パラメータに対してホス ト機器 2が書き込みや 読み出しをする場合には、 T P Cを用いて行う。
データバッファ回路 1 4は、 不揮発性半導体メモリ 1 7へ書き込まれるデータ、 並びに、 不揮発性半導体メモリ 1 7から読み出されたデータを、 一時的に保存す るメモリ回路である。 すなわち、 ホス ト機器 2から不揮発性半導体メモリ 1 7へ データが書き込まれる場合には、 書き込み対象データがホス ト機器 2からデータ バッファ回路 1 4へデータ転送プロ トコルに従って転送され、 その後、 デ一タバ ッファ回路 1 4に格納されている書き込み対象データをメモリ I /Fコントローラ 1 6が不揮発性半導体メモリ 1 7に書き込む。 不揮発性半導体メモリ 1 7からホ ス ト機器 2へデータが読み出される場合には、 メモリ 1 /Fコントローラ 1 6が不 揮発性半導体メモリ 1 7から読み出し対象データを読み出して一旦データバッフ ァ回路 1 4に格納し、 その後、 その読み出し対象データがデータ転送プロ トコル に従ってデータバッファ回路 1 4からホス ト機器 2へ転送される。
なお、 データバッファ回路 1 4は、 所定のデータ書き込み単位 (例えば、 フラ ッシュメモリのページサイズと同一の 5 1 2バイ ト) 分のデータ容量を有してい る。 なお、 ホス ト機器 2は、 T P Cを用いて、 データバッファ回路 1 4に対して アクセスを行う。 すなわち、 データバッファ回路 1 4に格納されるデータに対し て、 ホス ト機器 2が書き込みや読み出しをする場合には、 T P Cを用いて行う。
£じ( 回路 1 5は、 不揮発性半導体メモリ 1 7へ書き込まれるデータに対して 誤り訂正コード (E CC) を付加する。 また、 E C C回路 1 5は、 不揮発性半導 体メモリ 1 7から読み出したデータに付加されている誤り訂正コードに基づき、 この読み出したデータに対する誤り訂正処理を行う。 例えば、 誤り訂正コードは、 5 1 2バイ トのデ^"タ単位に対して 3バイ ト分付加される。
メモリ I /Fコン トローラ 1 6は、 レジスタ回路 1 3内に格納されているコン ト ロールコマンドに従い、 データバッファ回路 1 4と不揮発性半導体メモリ 1 7 と の間のデータのやり取りの制御、 不揮発性半導体メモリ 1 7のデータのセキユリ ティ管理の制御、 メモリカード 1のその他のファンクショ ンの制御、 並びに、 レ ジスタ回路 1 3内に格納されているデータの更新処理等を行う。
不揮発性半導体メモリ 1 7は、 例えば、 NAND型のフラッシュメモリ等の不 揮発性の半導体メモリである。 不揮発性半導体メモリ 1 7の容量は、 例えば 1 6 Mバイ ト、 3 2 Mバイ ト、 64 Mバイ ト、 1 2 8 Mバイ トである。 不揮発性半導 体メモリ 1 7は、 消去ブロック単位が、 例えば 1 6 Kバイ トである。 読み書き単 位はページと称され、 データバッファ回路 1 4 と同一の 5 1 2バイ トである。 発 振制御回路 1 8は、 本メモリカード 1内の動作クロックを発生する。
メモリカード 1の接続端子には、 V S S端子、 VC C端子、 DATA 0端子、 ひ AT A 1端子、 DATA 2端子、 DATA 3端子、 B S端子、 C LK端子、 1 NS端子が設けられている。 なお、 V S S端子は 2つ設けられているので、 メモ リカード 1には、 合計 1 0個の接続端子が設けられていることとなる。 ホス ト機 器 2側にも同様の接続端子が設けられている。 V S S端子は、 V S S (基準 0ボルト電圧) が接続される。 この V S S端子は、 ホス ト機器側のグランドとメモリ力一ド侧のグランドとを接続し、 ホス ト機器と メモリカー ドとの 0ボルト基 電位を一致させる。 VC C端子は、 電源電圧 (V C C) がホス ト機器から供給される。
DAT A O端子は、 メモリカード 1 とホス ト機器 2 との間に転送される 4 ビッ トパラレルデータのうちの最下位ビッ トのデータ信号 (DATA O) が入出力さ れる。 DATA 1端子は、 メモリカード 1 とホス ト機器 2 との間に転送される 4 ビッ トパラ レルデータのうちの下位から 2 ビッ ト目のデータ信号 ( D A T A 1 ) が入出力される。 DATA 2端子は、 メモリカード 1 とホス ト機器 2 との間に転 送される 4 ビッ トパラレルデ一タのうちの下位から 3 ビッ ト目のデータ信号 ( D AT A 2 ) が入出力される。 DATA 3端子は、 メモリカード 1 とホス ト機器 2 との間に転送される 4 ビッ トパラレルデータのうちの下位から 4 ビッ ト目のデー タ信号 (DATA 3 ) が入出力される。
B S端子は、 バスステート信号がホス ト機器からメモリカードへ入力される。 C LK端子は、 クロック信号がホス ト機器 2から入力される。 I N S端子は、 メ モリカードがスロ ッ トに挿入されているか、 或いは、 挿入されていないかを、 ホ ス ト機器 2が判断するための挿入/抜出検出に用いられる。 メモリカード 1の I N S端子はグランドに接続されており、 ホス ト機器 2の I N S端子は抵抗を介して ブルアップされている。
次に、 メモリカード 1 とホス ト機器 2との間のデータ伝送をするためのィンタ フェースの機能構成を図 5を参照して説明する。
ホス ト機器 2のインタフェース機能は、 図 5に示すように、 ファイルマネージ ャ 3 1 と、 T P Cインタフェース 3 2と、 パラレルインタフェース 3 3と力 ら構 成される。 また、 メモリカード 1のインタフェース機能は、 パラレルインタフエ ース 3 3 と、 レジスタ 3 5と、 データバッファ 3 6 と、 メモリ コントローラ 3 7 と、 メモリ 3 8 とから構成される。
ファイルマネージャ 3 1は、 ホス ト機器のオペレーショ ンシステム上で、 メモ リカード 1内に格納されているファイル、 並びに、 ホス ト機器の他のメディアに 格納されているファイルの管理を行う。 ファイルマネージャ 3 1は、 ホス ト機器 2内のコントローラ等により実現される機能である。
T P Cインタフェース 3 2は、 ファイルマネージャ 3 1 の下位レイヤとなる。 T P Cインタフェース 3 2は、 本インタフェースの特有のコマン ド (T P C : Tra n sfer Protocol Co隨 and) が規定されたデータ転送プロ トコルによ り、 メモリ力 一ド 1内のレジスタ 3 5及びデータバッファ 3 6へアクセスを行う。 この T P C インタフェース 3 2は、 ホス ト機器 2内のコントローラ等により実現される機能 である。
ノ ラ レルインタフェース 3 3、 3 4は、 T P Cインタフェース 3 2の下位レイ ャとなり、 本インタフェースシステムの物理階層である。 パラレルイ ンタフエ一 ス 3 3、 3 4は、 4 ビッ トパラレルデータ、 ク ロック、 バスステー ト信号の 6つ の信号を転送するデータ転送プロ トコルである 6線式半 2重パラレルプロ トコル に従い、 データ転送を行う。 パラ レルインタフェース 3 3、 3 4は、 パラレルィ ンタフエース回路 1 2により実現される機能である。
レジスタ 3 5は、 ホス トから転送されたコン トロールコマン ド、 メモリカー ド の内部状態、 メモリ 3 8にアクセスするデータのア ドレス、 コン トロールコマン ドを実行する際に必要な諸処のパラメータ、 メモリ内のファイル管理情報等を格 納する。 レジスタ 3 5は、 メモリカー ド 1のレジスタ回路 1 3上に実現される機 能である。
デ一タバッファ 3 6は、 メモリ 3 8へ書き込まれるデータ、 並びに、 メモリ 3 8から読み出されたデータを、 一時的に保存するバッファ領域である。 データバ ッファ 3 6は、 メモリカード 1のデータバッファ回路 1 4上に実現される機能で ある。
メモリコントローラ 3 7は、 レジスタ 3 5内に格納されているコマンド並びに 各種情報に従い、 データバッファ 3 6とメモリ 3 8 との間のデータの読み出し、 書き込み、 消去、 並びに、 レジスタ 3 5内の各種情報の更新等の制御を行う。 メ モリ コントローラ 3 7は、 ホス ト機器 2上のメモリ I / Fコン トローラ 1 6によ り 実現される機能である。
メモリ 3 8は、 データのメモリ領域であり、 メモリ コントローラ 3 7を通して 独自のモデルとして仮想化されている。 メモリ 3 8は、 メモリカード 1上の不揮 発性半導体メモリ 1 7により実現される機能である。
以上のような構成のホス ト機器及びメモリカードでは、 ファイルマネージャ 3 1に管理されている他のメディァに格納されているデータを、 上記パラレルイン タフエース 3 3、 3 4を介してメモリ 3 8に転送することができる。 また、 メモ リ 3 8に格納されているデータを、 上記パラレルインタフェース 3 3、 3 4を介 してファイルマネージャに管理されている他のメディァに転送することができる。 次に、 本発明に係るメモリカード 1 とホス ト機器 2 との間のデータ転送プロ ト コルについて説明する。
メモリカード 1及びホス ト機器 2のデータ転送プロ トコルの特徴と しては、 4 つのバスステートを定義して伝送データの転送方向及び属性を識別すること、 ホ ス ト機器 2からメモリ カー ド 1のレジスタ回路 1 3及びデータバッファ回路 1 4 に対して T PCを用いてアクセスを行うこと、 コントロールコマンドを用いてホ ス ト機器 2がメモリカー ド 1の動作制御をすること、 C R C (Cyclic Redundanc y Check codes) を用いてメモリカード 1 とホス ト機器 2 との間の転送データのェ ラ一検出を行うこと、 メモリカード 1からホス ト機器 2への割り込み信号 ( I N T信号) を規定していること等がある。
メモリカード 1 とホス ト機器 2とは、 図 6に示すように、 バスステート信号 (B S ) 、 4本のパラレルデータ信号、 クロック信号 (S C LK) の 6本の信号 で接続されている。
パラレルデータ信号は、 メモリカード 1 とホス ト機器 2との間を転送されるデ ータ信号である。 パラレルデータ信号は、 4ビッ ト幅のパラレルデータ (DAT A [3 : 0] ) を伝送し、 バスステート信号により規定されるステートに従い、 そのパラレルデータ (DATA [3 : 0] ) の転送方向及び属性が変化する。 バスステート信号は、 パラレルデータ信号のステー ト、 並びに、 各ステー トに おけるパラレルデータ信号の転送開始タイ ミングを規定する信号である。 このバ スステー ト信号は、 ホス ト機器 2からメモリカー ド 1へ転送される。 ステー トは、 パケッ ト通信が行われない ] つのステート (B S 0) と、 パケッ ト通信中の 3つ のステー ト (B S 1〜B S 3) との合計 4つのステー トに区分される。 バスステ 一ト信号は、 H i g h と L o wとの切り換えタイ ミングで、 B S 0から B S 3ま で順番にステートを切り換えていく。
ク口 ック信号は、 パラレルデータ信号及びバスステート信号のク 口 ックである, クロック信号は、 ホス ト機器からメモリカードへ転送される。 クロ ック信号は、 パケッ ト通信中の 3つのステート (B S 1〜B S 3) 時には必ず出力される。 各ステートでの通信内容は、 図 7に示すようになる。
B S 0は、 パラレルデータ信号のラインに、 メモリカード 1からホス ト機器 2 への割り込み信号 ( I NT信号) が転送可能なステートである。 I NT信号は、 クロックに対して非同期に転送される。 B S 0では、 パケッ ト通信は行われない c B S 0を示すバスステート信号の信号レベルは L o wで表される。 なお、 この I NT信号には、 メモリカード 1の動作状態が反映されるが、 その内容については 後述する。
B S 1は、 パラレルデータ信号のラインに、 丁 P Cが転送されるステ一トであ る。 B S 1 を示すバスステートの信号レベルは H i g hで表される。 T P Cは、 ホス ト機器 2からメモリカード 1へ転送される。 T P Cは、 ホス ト機器 2がメモ リカー ド 1のレジスタ回路 1 3及びデ一タバシファ回路 1 4にアクセスするため のコマンドである。 T P Cには、 データバッファ回路 1 4に対するデータの書き 込み処理又は読み出し処理を行うコマンド、 レジスタ回路 1 3に対するデータの 書き込み処理又は読み出し処理を行うコマンド、 メモリ I /Fコン トローラ 1 6に 与えるコントロールコマンドをレジスタ回路 1 3に書き込む処理を行うコマンド 等がある。 T P C及びコン トロールコマン ドの具体的な内容については後述する。
B S 2及び B S 3では、 ホス ト機器 2カゝらメモリカード 1へデータを転送する ライ ト系バケツ トと、 メモリカード 1からホス ト機器 2へデータを転送するリ一 ド系パケッ トとで、 パラレルデ一タ信号上に転送されるパラレルデータ (DAT A [ 3 : 0] ) の転送方向及び属性が異なる。 そのバケツ トの種類がライ ト系パ ケッ トかリード系バケツ トかは、 B S 1で転送される T P Cの内容によって決定 される。
図 8にライ ト系バケツ トのタイ ミングチャー トを示し、 ライ ト系パケッ ト時の B S 2、 B S 3の内容について説明をする。
ライ ト系パケッ ト時の B S 2では、 ノ、"ラレルデータ信号上の転送データが、 レ ジスタ回路 ]. 3やデータバッファ回路 1 4への書き込み対象データ及びこの書き 込み対象データの C R Cとなる。 B S 2では、 パラ レルデータ信号上の転送デ一 タが、 ホス ト機器 2からメモリカード 1へ転送される。
ライ ト系パケッ ト時の B S 3では、 パラレルデータ信号上の転送データが、 メ モリカー ド 1から発生されるビジー (B S Y) 信号及びレディ (RDY) 信号と なる。 ライ ト系パケッ ト時の B S 3では、 パラ レルデータ信号 J のビジー信号及 びレディ信号が、 メモリカード 1からホス ト機器 2へ転送される。 ライ ト系パケ ッ ト時の B S 3では、 B S 1及び B S 2でホス ト機器 2からメモリカー ド 1へ転 送された T P C及び転送データに対する処理が行われる。 メモリカード 1は、 そ の T P C及び転送データに対する処理を行っている最中 (つまり、 まだ処理が完 了しない場合) には、 ホス ト機器 2に対してビジー信号を送出する。 そして、 メ モリカード 1は、 その処理が完了するとホス ト機器 2に対してレディ信号を送出 する。 ビジー信号及びレディ信号は、 4本のパラレルデータ信号のうち、 最下位 ビッ ト (DAT AO) の信号ラインのみに転送される。 ビジー信号は、 最下位ビ ッ ト (DATA O) の信号ラインを h i g h レベルの状態にする信号である。 レ ディ信号は、 最下位ビッ ト (DAT A 0 ) の信号ラインを、 h i g h レベルと 1 o wレベルとを 1 クロックごとに交互に繰り返す状態とする信号である。 このよ うに、 ビジー信号及びレディ信号を伝送することによって、 データが転送されて いないライ ト系バケツ ト時の B S 3のタイミングでのメモリカード 1 とホス ト機 器 2 とのハンドシヱイクを確立することができる。
図 9にリード系バケツ トのタイミングチヤ一トを示し、 リード系バケツ ト時の B S 2、 B S 3の内容について説明をする。
リード系パケッ ト時の B S 2では、 パラレルデータ信号上の転送データが、 メ モリカード 1から発生されるビジー信号及びレディ信号となる。 リ一ド系パケッ ト時の B Sでは、 B S 1 でホス ト機器 2からメモリカード 1へ転送された T P C に応じて、 メモリカード 1がデータの転送準備を行う。 メモリカード 1は、 T P Cに対するデータの転送準備中 (つまり、 まだ転送準備が完了していない場合) には、 ホス ト機器 2に対してビジー信号を送出する。 そして、 メモリカード 1は、 その転送準備が完了すると、 ホス ト機器 2に対してレディ信号を送出する。 この ように、 ビジー信号とレディ信号とを伝送することによって、. データが転送され ていないリード系バケツ トの B S 2におけるメモリカード 1 とホス ト機器 2 との ハンドシェィクを確立することができる。
リード系パケッ ト時の B S 3では、 パラ レルデータ信号上の転送データが、 レ ジスタ回路 1 3やデータバッファ回路 1 4からの読み出し対象データ及びこの読 み出し対象データの C R Cとなる。 B S 3は、 パラレルデータ信号上の転送デー タが、 メモリカード 1からホス ト機器 2へ転送される。
図 1 0に B S 2、 B S 3で発生されるビジー信号及びレディ信号の詳細なタイ ミングチャートを示す。 この図 1 0に示すように、 ビジ一信号及びレディ信号は、 4本のパラ レルデータ信号のうち、 最下位ビッ ト (DAT AO) の信号ラインの みに転送される。 他のビッ ト (DAT A 1〜 3 ) は、 1 o wレベルとされている。 ホス ト機器 2は、 DAT A 0に伝送された信号のみを受信じ、 他のビッ トの信号 は無視する。 最下位ビッ ト (DATAO) は、 従来の 3線式半 2重プロ トコルを 用いたメモリカードのシリアルデータの伝送ラインに対応している。 従って、 本 メモリカード 1は、 従来のメモリカードと互換性を有している。
次に、 バスステートが B S 0の際にメモリカー ド 1からホス ト機器 2へ転送さ れる 1 NT信号について説明をする。
メモリカード 1には不揮発性半導体メモリ 1 7 と してフラッシュメモリが用い られている。 フラッシュメモリに対するアクセス時間は、 メモリカー ド 1 とホス ト機器 2との間のデータの転送時間と比較して非常に長くなる。 そのため、 ホス ト機器 2側のデータ処理シーケンスを短縮するには、 データ転送プロ トコル上、 メモリカード 1側から処理の終了等を通知する割り込み要求を規定することが有 効となる。 つまり、 メモリカード 1からの割り込み要求を規定することによって、 フラッシュメモリに対するアクセス中、 ホス ト機器 2側の C P Uの処理を他の処 理に開放することができる。
B S Oでは、 メモリカード 1に何らかの割り込み要求が発生すると、 メモリ力 —ド 1が、 割り込み信号 ( I NT信号) をホス ト機器 2に転送する。 I N丁信号 は、 クロック信号には同期せずに、 メモリカード 1から出力される。 B S 0時に、 パラレルデータ (DATA [3 : 0] ) の信号ラインのいずれかのビッ トが、 h i g h レべノレとされたときには、 メモリカード 1側から割り込み要求が発生した ことを示す。 また、 パラレルデータ (DATA [ 3 : 0] ) のいずれのビッ トも 1 o wレベルのときには、 メモリカー ド 1は処理の実行中で、 割り込み要求がな いことを示す。
ここで、 メモリ カード 1から発生する割り込みの要因には、 複数のものが存在 する。 例えば、 メモリカード 1に与えられたコン ト ロールコマン ドに対する動作 制御が終了したことをホス ト機器 2に伝達するための割り込み、 メモリカード 1 に与えられたコントロールコマンドに対して動作制御を行った際にエラーが発生 したことをホス ト機器 2に伝達するための割り込み、 ホス ト機器 2に対してァク セスを要求する割り込み、 メモリカー ド 1から与えられたコントロールコマン ド が実行不可能であることをホス ト機器 2に対して伝達するための割り込み、 等々 力 sある。
メモリカード 1では、 以上のような各割り込みの各要因を、 パラレルデータ (DATA [3 : 0] ) の各ビッ トに対して割り当て、 発生した割り込みの要因 に応じて h i g h レベルとするラインを変化させている。 すなわち、 メモリ力一 ド 1で発生した割り込みの内容に応じて、 B S 0時に h i g h レベルとなるビッ ト位置が異なる I NT信号が、 メモリ力一ド 1から発生される。
ホス ト機器 2は、 B S O時には、 パラレルデータ (DATA [ 3 : 0] ) の各 ビッ トのレベルを監視することによって、 メモリカード 1から割り込み要求があ つたことを検出するとともに、 どのビッ ト位置のレベルが h i g hとなっている かを検出し、 メモリカード 1の割り込みの要因も同時に検出する。
これに対して、 従来のメモリカードシステムでは、 メモリカード侧からホス ト 側へ、 単に割り込み要求があるかないかのみを通知している。 そのため、 メモリ カードから割り込み要求があつたと しても、 ホス ト側がその要求と同時に割り込 み要因を確認することはできず、 必ず、 パケッ ト通信を確立してメモリカー ド側 に割り込み要因を読み出さなければならなかった。 これに対して、 本発明の実施 の形態のメモリカード 1及びホス ト機器 2では、 データラインが 4 ビッ トである ことを利用し、 各ビッ トに対して割り込みの各要因を割り当てているので、 割り 込み要求と同時にその要因もホス ト機器 2が確認することができる。 従って本発明では、 メモリカー ド 1からの割り込み要求が発生した場合、 ホス ト機器 2がその要求内容を確認するためのパケッ ト通信を行わなくてもよく なる。 つまり、 メモリカー ド 1 とホス ト機器 2 との問のデータ転送シーケンスの実行時 間を短くすることができる。
なお、 本例では、 メモリ カード 1の I NT信号は、 コン トロールコマン ドに基 づく動作状態が反映する I N Tレジスタに格納されている各ビッ ト値となってい る。 】 NTレジスタは、 レジスタ回路 1 3内のステータスレジスタ群内に設けら れている。 メモリカー ド 1のパラ レルインタフェース回路 1 2は、 バスステー ト 信号が B S 0を示しているときに、 この I NTレジスタの各ビッ ト値を参照し、 そのビッ ト値が有効 ( 1 ) となっていれば、 そのビッ トに対応するデータライン を h i g h レベルに ドライブし、 そのビッ ト値が無効 (0 ) となっていれば、 そ のビッ ト値に対応するデータラインを 1 o wレベルに ドライブする。 この I NT レジスタの具体的な内容、 並びに、 I NTレジスタの各値とパラ レルデータ (D AT A [3 : 0] ) との関係については、 次のレジスタ回路の项で説明をする。 次に、 レジスタ回路 1 3について説明をする。
レジスタ回路 1 3は、 複数の内部レジスタによ り構成されている。 レジスタ回 路 1 3内の内部レジスタは、 その用途に応じて、 以下の 1〜 5に分類される。
1. メモリカード 1のステータス等が格納されるステータスレジスタ群
2. コマンドの実行等のために用いられるパラメータが、 格納されるパラメ一 タレジスタ群
3. フラッシュメモリの各ページ毎に設けられ、 各ページの管理データ等が可 能されるエキス トラデータレジスタ群
4. 上記 1、 2、 3の各レジスタに対するアクセス位置を特定するためのア ド レスが格納されるレジスタア ドレスレジスタ
5. ホス ト機器 2から与えられたコントロールコマンドが格納されるコマン ド レジスタ
ステータスレジスタ群には、 図 1 1に示すよ うに、 1 NTレジスタ、 ステータ ス レジスタ、 タイプレジスタ、 カテゴリ レジスタ、 ク ラスレジスタの 4つの内部 レジスタがある。 ステータスレジスタ群内の各内部レジスタは、 メモリ I /Fコン トローラ 1 6により格納している値が更新される。 ステータスレジスタ群内の各 内部レジスタは、 ホス ト機器 2からは READ_REG_TPC ( READ_REG_TPCは、 丁 P Cの 中の一つのコマンドであり、 その詳細は後述する。 ) でアクセスが可能であり、 ホス ト機器 2からは読み出し専用となっている。 また、 ステータスレジスタ群内 の各内部レジスタは、 8 ビッ ト分のビッ ト値が格納可能であり、 それぞれにア ド レスが設定されている。
• I N Tレジスタ
1 N Tレジスタは、 メモリカード 1の動作状態が設定されるレジスタである。 この I N Tレジスタ内の値は、 ホス ト機器 2からメモリカード 1に与えられたコ ン トロールコマンドに対する動作結果に応じて、 メモリ I / Fコン トローラ 1 6 に よって更新される。 I N Tレジスタは、 図 1 2に示すように、 8 ビッ トのレジス タである。 1 N Tレジスタには、 8 ビッ トのうち、 最下位ビッ ト (D O ) と上位 3 ビッ ト (D 5〜D 7 ) とに、 動作状態が設定されている。 なお、 残りのビッ ト は、 リザーブとなっている。
I N Tレジスタのビッ ト D 7は、 C E D (Command End) ビッ トである。 C E D ビッ トは、 EX_SET— CMD— TPC又は SET_CMD_TPC ( T P Cの中の一つのコマンドである' 詳細は後述する。 ) によりセッ トされたコントロールコマンドの実行が終了した ことを示すビッ トである。 なお、 ここでいう実行の終了とは、 その実行が正常に 終了したかエラー終了したかに関わらず、 実行が終了したことを示すものである。 C E Dビッ トは、 EX— SET— CMD— TPC又は SET— CMD— TPCによるコントローノレコマン ドの セッ ト時及び初期状態の時に、 メモリ 1 / Fコントローラ 1 6によってビッ ト値が 無効 (0 ) とされ、 EX— SET— CMD—TPC又は SET_CMD—TPCによるコン トロールコマン ド の実行が終了したときにメモリ I / Fコントローラ 1 6によってビッ ト値が有効 ( 1 ) とされる。
I N Tレジスタのビッ ト D 6は、 E R R (Error)ビッ トである。 E R Rビッ トは、 EX— SET— CMDJTPC又は SET— CMD— TPCによりセッ トされたメモリアクセスコマンド (コ ン トローノレコマンド) 及びセキュリティコマン ド (コントロールコマン ド) を実 行した結果、 その実行にエラーが発生したことを示すビッ トである。 E R Rビッ トは、 エラーが発生するとメモリ 1 / Fコン ト口一ラ 1 6によってビッ ト値が有効 ( 1 ) とされ、 新たな EX_SET_CMD_TPC又は SET— CMD_TPCによ り コン トロールコマン ドがセッ トされるかあるいはエラー状態が解除されるとメモリ 】 /Fコン トローラ 1 6によってビッ ト値が無効 (0) とされる。
I N Tレジスタのビッ ト D 5は、 B R E Q/P R G (Buffer Request /Progres s) ビッ トである。 B R E Q/P R Gビッ トは、 EX_SET— CMD— TPC又は SET— CMD— TPCに よ りセッ トされたメモリアクセスコマン ド (コン トロールコマン ド) 及びセキュ リティコマンド (コントロールコマンド) を実行した結果、 その実行によって発 生するホスト機器 2に対するデータバッファ回路 1 4へのアクセス要求、 並びに、 不揮発性半導体メモリ 1 7の内部消去処理やフォーマツ ト処理を実行した場合に おけるその進行状況を示すビッ トである。 例えば、 不揮発性半導体メモリ 1 7に 対する書き込み命令があった場合におけるデータバッファ回路 1 4に対するデー タの書き込み要求、 不揮発性 導体メモリ 1 7からのデータの読み出し命令があ つた場合におけるデ一タバッファ回路 1 4からのデータの読み出し要求、 セキュ リティデータの受信要求等があることを示すビッ トである。 B R E Q / P R Gビッ トは、 各要求が発生したときメモリ I /Fコントローラ 1 6によってビッ ト値が有 効 ( 1 ) とされ、 ホス ト機器 2によりその要求に対する T P Cによるアクセスが 発生した場合にメモリ I / Fコントローラ 1 6により ビッ ト値が無効 ( 0 ) とされ る。 また、 BREQ/P R Gビッ トは、 フォーマッ トや消去の進行状況に応じて、 メモリ I /Fコントローラ 1 6によってビッ ト値が更新される。
I N Tレジスタのビッ ト D 0は、 CMDNK (Command Nack) ビッ トである。 CMDNKビッ トは、 EX— SET_CMD— TPC又は SET— CMD— TPCによりセッ トされたコマン ドが実行できないことを示すビッ トである。 EX— SET_CMD_TPC又は SET— CMD— TPCによ りセッ トされたコン トロールコマン ドが実行できないときにメモリ I /Fコン ト口 —ラ 1 6により ビッ ト値が有効 ( 1 ) とされ、 EX— SET— CMD— TPC又は SE CMD_TPCに よ りセッ トされたコントロールコマンドが実行できるときにビッ ト値が無効 ( 0) とされる。
】 NTレジスタには、 以上のようなビッ トが設定されている。 このことによつ て、 I NTレジスタ内の各ビッ トの値の組み合わせによ り、 直前のコントロール コマンドに対するメモリ力一ド 1の動作状態と して、 図 1 3に示すよ うな動作状 態を表すことができる。
すなわち、 C E D = 1.、 E R R = 0、 B R E Q/P R G = 0、 CMD NK = 0で ある場合には、 与えられたコントロールコマンドの実行が正常終了したという動 作状態を示すこととなる。 C E D = 1、 E R R = 1、 B R E Q/P R G = 0、 CM D NK = 0である場合には、 与えられたコントロールコマン ドの実行がエラー終 了したとレ、う動作状態を示すこととなる。 C E D = 0、 E R R = 0、 B R E Q/P R G= 1、 CMD N K = 0である場合には、 与えられたコントロールコマン ドの 実行が正常に行われており、 ホス ト機器 2に対してアクセス要求をしているとい う動作状態を示すこととなる。 C E D = 0、 E R R = 1、 B R E Q/P R G = 1 、 CMD NK = 0である場合には、 与えられたコントロールコマン ドの実行にエラ —が発生しており、 ホス ト機器 2に対してアクセス要求をしているという動作状 態を示すこととなる。 C E D = 0、 E R R = 0、 B R E Q/P R G = 0、 CMD N K= 0である場合には、 与えられたコント口一ルコマン ドの実行中であるとレヽぅ 動作状態を示すこととなる。 C E D = 0、 E R R = 1 、 B R E Q/P R G = 0、 C MD NK= 0である場合には、 不揮発性半導体メモリ 1 7の消去実行中又はフォ 一マッ ト中であるという動作状態を示すこととなる。 C E D= 1、 E R R = 0、 B R E Q/P R G = 0、 C M D N K = 1である場合には、 与えられたコン トロール コマンドの実行が不可能であるという動作状態を示すこととなる。
なお、 I NTレジスタ内の各ビッ トは、 EX— SET— CMD_TPC又は SET— CMD— TPCにより 新たなコントロールコマンドがセッ トされたときには、 その値は、 メモリ 1 /Fコ ントローラ 1 6によって初期状態 (全てのビッ ト値が 0の状態) とされる。
. I NTレジスタと 】 NT信号との関係
ここで、 上述したようにこの 1 NTレジスタ内の各ビッ ト (C E D、 E R R、 B R E Q/P R G、 CMD NK) は、 その値が I N T信号に反映される。 メモリ力 ード 1 のパラレルインタフェース回路 1 2は、 ステー トが B S 0のときに、 この I NTレジスタの各ビッ トの値 (C E D、 E R R、 B R E Q/P R G、 C M D N K) に応じて、 パラ レルデータ (DATA [ 3 : 0 ] ) の各データラインを h i g h レベル又は 1 o wレベルに ドライブする。 I NTレジスタの各ビッ トと、 ノ、。 ラレルデータの各ラインの関係は以下の通りである。 D A T A 0 : C E D
DATA 1 : E R R
DATA 2 : B R E Q/P R G
D AT A 3 : CMD NK
パラレルインタフェース回路 1 2は、 ステ一トが B S 0である期問中に常に I N Tレジスタ内の値を参照しており、 ] NTレジスタ内のビッ トの値が有効
( 1 ) であれば対応するデータラインを h i g h レベル ( 1 ) に ドライブし、 無 効であれば対応するデータラインを 1 o w (0) に ドライブする。 ホス ト機器 2 では、 ステートが B S 0である期問中には、 パラレルデータ (DATA [ 3 : 0] ) の各データラインのレベルを監視して、 メモリカー ド 1からの割り込み要 求があるか否かを判断する。 ホス ト機器 2は、 メモリカード 1から割り込み要求 があった場合には、 すなわち、 いずれかのデータラインが 1 o wレベルから h i g h レベルへ変化したと判断した場合には、 どのデータラインのレベルが h i g h となっているかを検出し、 上述の図 1 3に示した動作状態を検出する。 そして、 ホス ト機器 2は、 検出した動作状態に応じて、 対応する処理を行う。
パラメータレジスタ群内には、 図 1 4に示すよ うに、 システムパラメータ レジ スタ、 データカウント/セキュリティパラメ一タレジスタ、 データア ドレス/レビ ジョ ンナンパレジスタ、 T P Cパラメータ レジスタ、 コマンドパラメータレジス タの各内部レジスタが設けられている。 パラメータレジスタ群内の各内部レジス タは、 ホス ト機器 2により格納している値が更新され、 メモリ I /Fコン トローラ 1 6がコントロールコマンドを実行する際に、 その値が参照される。 パラメータ レジスタ群内の各内部レジスタは、 ホス ト機器 2からは WRITE_REG_TPC、 EX_SET_ C D_TPC (T P Cの一つ。 詳細については後述する。 ) でアクセスが可能である。 また、 パラメータレジスタ群内の各内部レジスタは、 8 ビッ ト分ごとにア ドレス が設定されている。
' データカウント/セキュリティパラメータレジスタ
データカウント/セキュリティパラメータレジスタは、 ホス ト機器 2からメモリ カー ド ]. に与えられたメモリアクセスコマン ド (コントロールコマン ド) を実行 する際に必要となるデ一タ数が格納される。 例えば、 不揮発性半導体メモリ 1 Ί からデータを読み出す際における読み出しデータのデータサイズ、 不揮発性半導 体メモリ 1 7に対してデータを書き込む際における書き込みデータのデータサイ ズ等が設定される。 また、 データカウント /セキュリティパラメータレジスタは、 セキュリティコマン ド (コントロールコマンド) を実行する際に必要となる各種 設定値が格納される。 このデータカウント/セキュリティパラメータレジスタのサ ィズは、 1 6 ビッ トであり、 8 ビッ ト単位で 2つのア ドレスが設定されている。
. データァ ドレス/レビジョ ンナンパレジスタ
データァ ドレス/レビジョ ンナンパレジスタは、 ホス小機器 2からメモリカー ド 1に与えられたメモリアクセスコマン ド (コン トロールコマン ド) を実行する際 に必要となる不揮発性半導体メモリ 1 7上のア ドレスが格納される。 例えば、 不 揮発性半導体メモリ 1 7からデータを読み出す際における読み出し位置の先頭ァ ドレス、 不揮発性半導体メモリ 1 7に対してデータを書き込む際における書き込 み位置の先頭ア ドレス等が設定される。 また、 データカウント/セキュリティパラ メータレジスタは、 セキュ リティ コマン ド (コントロールコマン ド) を実行する 際に必要となるレビジョン番号が格納される。 このデータ力ゥント /セキュリティ パラメータレジスタのサイズは、 3 2 ビッ トであり、 8 ビッ ト単位で 4つのア ド レスが設定されている。
なお、 データカウント/セキュ リティパラメータ レジスタ及びデータァ ドレス/ レビジョ ンナンパレジスタは、 メモリ アクセスコマン ド (コン トロ ーノレコマン ド) のうちの、 READ_DATA、 KEAD_INF0、 WRITE_DATA、 WR1TE_INF0等の実行時に参 照されることとなる。 また、 上記データカウント/セキュリティパラメータレジス タ及びデータァ ドレス/レビジョンナンパレジスタは、 T P Cの中の WRITE— REG— T PC, EX— SET— CMD_TPCによりデータが書き込まれることとなる。 なお、 これらのコ ン トロ一ルコマン ドの内容については、 詳細を後述する。
レジスタア ドレスレジスタは、 ホス ト機器 2が、 上記のステータスレジスタ群 及びパラメータレジスタ群に対して T P Cを用いてアクセスする際に、 アクセス するレジスタの先頭ァドレス並びにデータ長を予め設定をしておく レジスタであ る。
上述のステータスレジスタ群及びパラメータレジスタ群に対しては、 WRITE— RE G_TPC ( T P Cのう ちの一つ。 詳細は後述する。 ) でデータの書き込みが可能であ り、 READ_REG_TPC ( T P Cのうちの一つ。 詳細は後述する。 ) でデータの読み出 しが可能である。 しかしながら、 これら WRITE_REG_TP READ_REG_TPCには、 レジ スタ位置を特定する情報が引数と して含まれていない。 従って、 ホス ト機器 2は、 これらの WR ITE_REG_TPC、 READ_REG_TPCを用いてレジスタに対してアクセスを行う 場合には、 予め、 このレジスタア ドレスレジスタに対して、 ステータスレジスタ 群及びパラメ一タレジスタ群のア ドレス及びデータ長を設定する。 そして、 WRI T E— REG— TPC、 READ— REG_TPCが与えられた場合、 メモリ I / Fコン ト口一ラ 1 6は、 このレジスタァドレスレジスタに格納されている情報を参照して、 各コマンドに 対応する処理を行う。 なお、 このレジスタアドレスレジスタに対してレジスタァ ドレス及びデータ長を格納する T P Cは、 SET_R_W_REG_ADRS_TPC (詳細後述) で ある。
コマンドレジスタは、 ホス ト機器 2から与えられるコントロールコマンドを格 納するレジスタである。 メモリ I / Fコントローラ 1 6は、 このコマンドレジスタ に格納されたコン トロールコマン ドに応じて、 各種の動作制御を行う。 このコマ ンドレジスタに対してコントロールコマンドを格納する T P Cは、 SET— CMD— TP EX_SET_CMD_TPC (詳細後述) である。
次に、 T P C ( Tran sfer Protocol Command ) について説明をする。
T P Cは、 本メモリカード 1及びホス ト機器 2のデータ転送プロ トコル上で規 定されているコマンドである。 T P Cは、 ホス ト機器 2が、 メモリカード 1内の レジスタ回路 1 3及びデータバッファ回路 1 4に対してアクセスをする際に用い られる。 T P Cは、 バスステート信号が、 B S 1のタイ ミングでホス ト機器 2力 らメモリカード 1へ転送される。 以下、 この T P Cのコード内容と、 その具体的 な動作内容について説明する。
以下に、 T P Cの一例を示す。
READ— LONG一 DATA— TPC
READ— S瞧 T— DATA— TPC
READ_REG_TPC
GET INT TPC WR ITE_LONG_DATA_TPC
WR】.TE— SHORT— DATA一 TPC
WR I TE— REG— TPC
SET—R一 W— REG— ADRS— TPC
SET_CMD— TPC
EX_SET_CMD_TPC
K EAD_LONG— DATA— TPCは、 データバッファ回路 1 4力 ら 5 1 2バイ トのデータを 読み出す命令である。 すなわち、 デ タバッファ回路 1 4内に格納されている全 デ一タをホス ト機器 2 へ転送する命令である。 READ— L0NG_DATA— TPCは、 リード系 の命令である。 すなわち、 B S 1で KEAD_LONG_DATA_TPCがホス ト機器 2からメモ リカード 1. へ発行されると、 B S 3でデータバッファ回路 1 4内の 5 1 2バイ ト 分データがメモリカード 1からホス ト機器 2 へ転送される。
. R EAD_SH0RT— DATA_TPCは、 T P Cパラメータレジスタで設定されているデータ長 のデータを、 データバッファ回路 1 4から読み出す命令である。 すなわち、 デー タバッファ回路 1 4内に格納されている所定量のデータをホス ト機器 2 へ転送す る命令である。 READ— SH0RT_DATA— TPCは、 リード系の命令である。 すなわち、 B S 1で READ— SH0RT_DATA_TPCがホス ト機器 2からメモリカー ド 1 へ発行されると、 B S 3でデータバッファ回路 1 4内の所定バイ ト分データがメモリカー ド 1からホ ス ト機器 2 へ転送される。
READ— REG_TPCは、 ァ ドレスが設定されているレジスタの値を読み出す命令であ る。 ア ドレスが設定されているレジスタは、 ステータスレジスタ群、 パラメータ レジスタ群及びエキス トラレジスタ群の各内部レジスタである。 読み出されるレ ジスタのア ドレス位置 (先頭ア ドレス及びデータ長) は、 レジスタア ドレスレジ スタに格納されている値である。 つまり、 レジスタ内の値を参照する場合には、 予めレジスタァ ドレスレジスタに対して目的のァ ドレス位置を書き込んでおく必 要がある。 このレジスタア ドレスレジスタにァ ドレス位置を書き込む T P Cは、 SET_R_W— REG— ADRS—TPCである。 READ_REG— TPCは、 リード系の命令である。 すなわ ち、 B S 1で READ_REG— TPCがホス ト機器 2からメモリカード 1 へ発行されると、 目的のレジスタ内の所定ビッ ト分データが B S 3でメモリカード 1からホス ト機 器 2 へ転送される。
GET— INT_TPCは、 ステータスレジスタ群の内部レジスタである J N Tレジスタの 値 ( 8 ビッ ト分の値) を読み出す命令である。 この GET— IN'し TPCは、 上記の READ— REG_TPCのようにレジスタァ ドレスレジスタに対してァ ドレス位置を格納すること なく I N Tレジスタの値を読み出す。 GET— INTJ Cは、 リード系の命令である。 す なわち、 B S 1で GET_INT— TPCがホス ト機器 2からメモリカー ド 1 へ発行されると、 B S 3で I N丁レジスタ内の 8 ビッ ト分データがメモリカード 1からホス ト機器 2 へ転送される。
WRITE— LONG— DATA— TPCは、 データバッファ回路 1 4に対して 1 2バイ トのデ一タ を書き込む命令である。 すなわち、 データバッファ回路 1 4の全データを、 ホス ト機器 2からデータバッファ回路 1 4へ転送する命令である。 WRITE— LONG— DATA— TPCは、 ライ ト系の命令である。 すなわち、 B S 1で WRITE— LONG— DATA— TPCがホス ト機器 2からメモリカード 1へ発行されると、 データバッファ回路 1 4に書き込 む 5 1 2バイ ト分データが B S 2でホス ト機器 2からメモリカー ド 1へ転送され る。
WRITE_SHORT_DATA_TPCは、 T P Cパラメータレジスタで設定されているデータ 長のデータを、 データバッファ回路 1 4に対して書き込む命令である。 すなわち、 所定量のデータを、 ホス ト機器 2からデータバッファ回路 1 4内に転送する命令 である。 WRITE— SH0RT_DATA_JPCは、 ライ ト系の命令である。 すなわち、 B S 1で WRITE_SH0RT— DATA— TPCがホス ト機器 2からメモリカー ド 1へ発行されると、 デー タバッファ回路 1 4に書き込む所定バイ ト分データが B S 2でホス ト機器 2から メモリカード 1へ転送される。
WRITEJ G— TPCは、 ァドレスが設定されているレジスタの値を読み出す命令であ る。 アドレスが設定されているレジスタは、 ステータスレジスタ群、 パラメ一タ レジスタ群及びエキス トラレジスタ群の各内部レジスタであるが、 ホス ト機器 2 により書き込み可能なのはパラメータレジスタ群及びエキス トラレジスタ群であ る。 書き込むレジスタのア ドレス位置 (先頭ア ドレス及びデータ長) は、 レジス タア ドレスレジスタに格納されている値である。 つまり、 レジスタ内に対して値 を書き込む場合には、 予めレジスタァ ドレスレジスタに対して目的のァ ドレス位 置を書き込んでおく必要がある。 このレジスタァ ドレスレジスタにァ ドレス位置 を書き込む T P Cは、 SETJし W— KEG_ADRS_TPCである。 WR ITE_REG_TPCは、 ライ ト系 の命令である。 すなわち、 B S 1で WRI T REG_TPCがホス ト機器 2からメモリカー ド 1へ発行されると、 目的のレジスタ内に書き込むデータが B S 2でホス ト機器 2からメモリカー ド 1へ転送される。
SET— R_W— REG— ADRS— TPCは、 READ— KEG— TPC、 WR I TE— REG— TPCでアクセスするレジス タのア ドレス位置を、 レジスタア ドレスレジスタの格納する命令である。 SET_R— W_REG— ADRS— TPCは、 ライ ト系の命令である。 すなわち、 B S 1で SET— R— W_REG— AD RS— TPCがホス ト機器 2力 らメモリカー ド 1へ発行されると、 レジスタア ドレスレ ジスタに書き込むデータが B S 2でホス ト機器 2からメモリカード 1へ転送され る。
SET_CMD_TPCは、 メモリ I / Fコントローラ 1 6に対する動作命令であるコント 口一ルコマンドを、 コマンドレジスタに格納する命令である。 SET— CMD— TPCにより コマン ドレジスタ内にコントロールコマン ドが格納されると、 メモリ I / Fコント ローラ 1 6は、 このコン トロールコマン ドに従った動作制御を行う。 動作内容と しては、 例えば、 メモリに対する動作制御、 メモリ以外の各ファンクションに対 する動作又はデータのセキュリティに関する動作などである。 また、 コン トロー ノレコマンドの動作内容によっては、 パラメータ レジスタ内に格納されている値を 参照して、 動作が行われる場合がある。 この場合には、 SET— CMD— TPCを発行する前 のバケツ トで予め上記の WR ITE— REG_TPCを用いて、 パラメータレジスタ内の所定の 内部レジスタに対して値を書き込んでおく必要がある。 SET_CMD_TPCは、 ライ ト系 の命令である。 すなわち、 B S 1で SET— CMD_TPCがホス ト機器 2からメモリ カード 1へ発行されると、 コマンドレジスタに書き込まれるコントロールコマン ドのコ 一ドが B S 2でホス ト機器 2からメモリカード 1へ転送される。
EX— SET— CMD— TPCは、 データ力ゥント /セキュ リティパラメータレジスタ及びデー タア ドレス/レビジョンナンパレジスタに対してデ一タを格納すると同時に、 コマ ンドレジスタに対してコントロールコマンドを格納する命令である。 EX— SET— CMD —TPCにより コン トロールコマン ドと してメモリ アクセスコマンドが転送される場 合には、 データカウント/セキュリティパラメータレジスタには、 不揮 性半導体 メモリ 1 7に対してアクセスするデータのデータ量が格納され、 データア ドレス /レビジョ ンナンパレジスタには、 不揮発性半導体メモリ 1 7のデータア ドレスが 格納されることとなる。 また、 EX— SET— CMD— TPCにより コン トロールコマンドと し てセキュリティコマンドが転送される場合には、 データ力ゥント /セキュ リティパ ラメータレジスタには、 セキュリティ管理用のパラメータが格納され、 データァ ドレス/レビジョ ンナンパレジスタには、 セキュ リティ管理用のレビジョ ンナンパ が格納されることとなる。 この EX_SET— CMDJTPCによってコントロールコマン ドを 転送した場合には、 メモリ I / Fコントローラ 1 6がそのコントロールコマンドを 実行する前に、 データ力ゥント /セキュリティパラメータレジスタ及びデ一タァ ド レス/レビジョ ンナンパレジスタに対して転送データが格納される。
EX_SET_CMD_TPCは、 ライ ト系の命令である。 すなわち、 B S 1で EX_SET— CMD— T PCがホス ト機器 2からメモリカード 1へ発行されると、 コントロールコマンドの コー ド等が B S 2でホス ト機器 2からメモリカード 1へ転送される。
ここで、 EX— SET_CMD_TPCと同一のデータ転送動作は、 SET_CMD_TPCを用いても実 現できる。 しかしながら、 パラメータレジスタ群内の内部レジスタに格納されて いる値を参照して動作制御をするコントロールコマンドを転送する場合、 例えば、 READ— DATA、 READ— INF0、 WR ITE— DATA、 WR ITE— INFO等のコン ト ローノレコマン ドを転 送する場合、 その参照されるデータを予めパラメータレジスタに転送しておかな ければならない。 すなわち、 SET— CMD— TPCを実行する前に、 SET— R— W— REG— ADRS及び WRITE_REG—TPCを転送しておかなければならない。
これに対して、 EX_SET— CMD— TPCを用いた場合には、 予め WRITE_REG一 TPCを用いて データ力ゥント /セキュリティパラメータレジスタ及びデータァ ドレス/レビジョ ンナンパレジスタにデータを格納しなくてもよい。 つまり、 SET_CMD_TPCを用いれ ば 3バケツ ト必要となるデータ転送動作を、 EX— SET—CMD_TPCであれば 1パケッ ト のみで実現することができる。
従って、 EX— SET— CMDJTPCを用いてコン トロールコマン ドを転送すれば、 SET— W_REG— ADRS及び WRITE— REG_TPCを転送するバケツ トシ一ケンスを実行しなくてもよ く、 処理の高速化を図ることができる。
図 1 5に、 SET CMDJ'PCを実行した場合のホス ト機器 2からメモリ力一ド 1 へ転 送する具体的な転送データ例を示す。 図 1 6に、 EX_S ET_C D_TPCを実行した場合 のホス ト機器 2からメモリ力一 ド 1へ転送する具体的な転送データ例を示す。 こ の図 1. 5及び図 1 6に示す転送データは、 13 S 2時に転送されることとなる。
SET_C D_TPCを実行した場合の転送データは、 1バイ トのコマンド ドと、 2 トの C R Cとなる。 1 トのコマンド は、 メモリ I / Fコントローラ 1 6に対して実行させるコン トロールコマンドを特定するコー ドである。 コマン ドコー ドは、 コマン ドレジスタに格納される。
EX_SET_CMD_TPCを実行した場合の転送データは、 1バイ トのコマンドコ^ ~ ドと、 2バイ トのカウント/セキュリティパラメータデータと、 2バイ トのア ドレス/レ ビジョンナンパデータと、 2バイ トの C R Cとなる。 カウント/セキュリティパラ メータデータは、 データ力ゥント /セキュリティパラメータ レジスタに格納される データである。 ア ドレス/レビジョンナンパデータは、 データア ドレス/レビジョ ンナンパレジスタに格納されるデータである。
図 1 5及び図 1 6に示すように、 SET— CMD— TPCの転送データは、 EX— SET_CMD— TP Cの転送データの方がデータ長が長くなる。 従って、 ホス ト機器 2は、 データカウ ン ト /セキュ リティパラメータ レジスタ及びデータァ ドレス/レビジョ ンナンバレ ジスタを参照せずに実行することができるコマンドコー ドを転送する場合には、 EX一 SET_CMD— TPCではなく、 SET_CMD_TPCを用いた方がより短いパケッ トとなる。 従 つて、 T P Cのコマンドセッ トと して、 SET— CMD_TPCと EX— SET_CMD_TPCとを設定 しておき、 転送するコントロールコマンドに応じて適応的に選択することによつ て、 より処理を高速化することができる。
次に、 コントロールコマンドについて説明をする。
コントロールコマン ドは、 ホス ト機器 2から、 メモリ カー ド 1のメモリ I / Fコ ン トローラ 1 6に対して与えられる動作制御命令である。 コン トロールコマン ド fま、 ホス ト機器 2力 ら丁 P Cの SET— CMD— TPC或レヽ ίま EX— SET— CMD— TPCによりメモリ力 ード 1内のコマンドレジスタに格納される。 メモリ I / Fコントローラ 1 6は、 コ マン ドレジスタ内にコン トロールコマン ドが格納されると、 そのコン ト口一ルコ マンドに対応した動作制御を実行する。 そして、 その動作制御の実行とともに 1 N Tレジスタ内の各値を適宜更新する。 コントロールコマン ドは、 メモリアクセスコマン ド、 ファンクショ ンコマン ド 及びセキュリティコマンドの 3つの種類に分類される。 メモリアクセスコマンド は、 メモリカード 1上の不揮発性半導体メモリ 1 7に対してアクセスを行う コマ ン ドである。 ファンクショ ンコマン ドは、 メモリカー ド 1上の各ファンクショ ン に対してアクセスを行うコマン ドである。 セキュリティコマンドは、 著作権保護 に必要なセキュリティ機能を実現するためのコマンドである。
メモリアクセスコマン ドには、 例えば、 不揮発性半導体メモリ 1 7からデータ バッファ回路 1 4へデータを読み出すコマンド、 データバッファ回路 1 4から不 揮発性半導体メモリ 1 7へデータを書き込むコマン ド、 不揮発性半導体メモリ 1 7上のデータを消去するコマンド等がある。
ファンクショ ンコマン ドには、 例えば、 本メモリカード 1を工場出荷状態に戻 すフォーマツ トコマンドゃメモリカード 1 の発振器 1 8の動作を停止させるスリ ープコマンド等がある。
セキュリティコマンドには、 例えば、 本メモリカー ド 1の固有の I Dを読み出 すコマンド、 コンテンツ鍵にかかっている鍵に対する操作を行う コマン ド、 乱数 を発生するコマン ド等がある。
ここでは、 メモリアクセスコマンドの一例を図 1 7に示す。
メモリアクセスコマンドには、 図: 1 7に示すように、 READ— DATA、 WRITE— DATA、 READ— INF0、 READ— ATRB、 STOP, ERASE等力 ある。
READ_DATAは、 不揮発性半導体メモリ 1 7のユーザエリアの指定ア ドレスからデ ータを連続的に、 読み出していく命令である。 メモリ I / Fコン トローラ 1 6は、 この READ_DATAが与えられると、 デ一タァ ドレス/レビジョ ンナンパレジスタに格 納されているア ドレスを参照し、 不揮発性半導体メモリ 1 7上のこのア ドレスに 対してアクセスを行い、 このア ドレスからデータを読み出していく。 読み出した データは、 一旦デ一タバッファ回路 1 4へ 云送する。 メモリ 1 / Fコントローラ 1 6は、 データバッファ回路 1 4の一杯となると、 すなわち、 5 1 2バイ ト分デ一 タを読み出すと、 I N Tレジスタの B R E Q / P R Gビッ トを有効 ( 1 ) と し、 ホ ス ト機器 2に対して転送要求の割り込みを発行する。 そして、 ホス ト機器 2によ つてデータバッファ回路 1 4内のデータが読み出されると、 続くデータを不揮発 性半導体メモリ 1 7からデータバッファ回路 1 4へ転送していく。 メモリ 1 /Fコ ントローラ ] 6は、 データカウント/セキュリティパラメータレジスタに格納され ているデータ数分データを読み出すまで、 以上の処理を繰り返す。 そして、 エラ —が発生せずに最後までデータを読み出すと、 I NTレジスタの CMDビッ トを 有効 ( 1 ) と し、 処理を終了する。 また、 処理の途中でエラ一が発生した場合に は、 I N Tレジスタの C M Dビッ トを有効 ( 1 ) とするとともに、 E R Rビッ ト を有効 .( 1 ) と して処理を終了する。
WRITE— DATAは、 データバッファ回路 1 4に格納されているデータを、 不揮発性 半導体メモリ 1 7のュ一ザェリァの指定ァ ドレスからデータを連続的に記録して いく命令である。 メモリ I /Fコン トローラ 1 6は、 WRITE— DATAが与えられると、 データァ ドレス/レビジョ ンナンパレジスタに格納されているァ ドレスを参照し、 不揮発性半導体メモリ 1 7上のこのア ドレスに対してアクセスを行い、 このア ド レスからデータを書き込んでいく。 書き込むデータは、 データバッファ回路 1 4 に格納されているデータである。 メモリ I /Fコントローラ 1 6は、 データバッフ ァ回路 1 4内が空となると、 すなわち、 5 1 2バイ ト分データを書き込むと、 I NTレジスタの B R E Q/P R Gビッ トを有効 ( 1 ) と し、 ホス ト機器 2に対して 転送要求の割り込みを発行する。 そして、 ホス ト機器 2によってデータバッファ 回路 1 4内にデータが書き込まれると、 続くデータをデータバッファ回路 1 4力、 ら不揮発性半導体メモリ 1 7へ書き込んでいく。 メモリ I /Fコントローラ 1 6は、 データ力ゥント /セキュリティパラメータレジスタに格納されているデータ数分デ ータを書き込むまで、 以上の処理を繰り返す。 そして、 エラーが発生せずにデー タを最後まで書き込むと、 1 NTレジスタの CMDビッ トを有効 ( 1 ) と し、 処 理を終了する。 また、 処理の途中でエラーが発生した場合には、 I NTレジスタ の CMDビッ トを有効 ( 1 ) とするとともに、 E R Rビッ トを有効 ( 1 ) と して 処理を終了する。
READ— INFOは、 不揮発性半導体メモリ 1 7のシステムエリアのインフォメーショ ンブックエリァの指定ァ ドレスからデータを連続的に、 読み出していく命令であ る。 メモリ I /Fコントローラ 1 6の処理手順は、 READ_DATAと同一である。
WRITE INFOは、 不揮発性半導体メモリ 1. 7のシステムエリアのインフォメーシ ヨ ンブックエリァの指定ァ ドレスに対してデータを連続的に、 書き込んでいく命 令である。 メモリ I / Fコントローラ 1 6の処理手順は、 WRITE_DATAと同一である c READ_ATRBは、 不揮発性半導体メモリ 1 7からァ トリ ビュート情報を読み出す命 令である。 メモリ I / Fコントローラ 1 6は、 この READ— ATRBが与えられると、 不 揮発性半導体メモリ 1 7内のァ ト リ ビュート情報を読み出して、 データバッファ 回路 1 4に転送する。
STOPは、 KEAD_DATA, WRITE一 DATA、 READ_1NF0、 WRITE— INF0、 READ— ATRBの処理の 実行を途中で終了する命令である。 メモリ I / Fコントローラ 1 6は、 STOPが与え られると、 READ— DATA、 WRITE— DATA、 READ— INF0、 WRITE— INF0、 READ— ATRBの実行処 理を停止する。
ERASEは、 ユーザエリアの指定ア ドレスからデータを消去する命令である。 メモ リ I / Fコントローラ 1 6は、 ERASEが与えられると、 データア ドレス/レビジョ ン ナンパレジスタに格納されているァ ドレスを参照して、 このァ ドレスに示された 格納位置から、 データカウント/セキュ リティパラメータレジスタに格納されてい るデータ数分、 不揮発性半導体メモリ 1 7上のデータを消去する。
以上本発明を適用したリムーバルなメモリカード、 並びに、 このメモリカー ド を外部記憶メディアと して用いるホス ト機器について説明をした。 本発明は、 こ のようなメモリカードに適用することに限定されるものではない。 例えば、 本発 明を、 ホス ト機器の外部接続装置と して、 カメラ装置を適用してもよい。 この場 合、 メモリ I / Fコントローラ 1 6は、 カメラ装置の動作制御を行うこと となり、 また、 コント口ールコマンドにも、 カメラ制御用のコマンドがセッ トされること となる。
なお、 本発明は、 図面を参照して説明した上述の実施例に限定されるものでは なく、 添付の請求の範囲及びその主旨を逸脱することなく、 様々な変更、 置換又 はその同等のものを行うことができることは当業者にとって明らかである。 産業上の利用可能性 本 ¾明に係る外部接続機器及びホス ト機器では、 バスステート信号のステー ト が外部接続機器からホス ト機器への割り込みを受け付けるステー トとされている ときに、 ホス ト機器から外部接続機器のコントローラへ与えられた動作制御コマ ンドに Sづき発生する割り込み要因の内容を示す情報を、 外部接続機器からホス ト機器へ与える割り込み信号と して、 データバスを介して転送するので、 割り込 み信号を参照することによって、 外部接続機器の発生している割り込み要因をホ ス ト機器が判断することができる。 そのため、 ホス ト機器は、 割り込み信号を受 信したのちに外部接続機器と通信して割り込み要因を確認することなく 、 すぐに その割り込み要因に応じた対応を行うことが可能となる。 従って、 本発明に係る 外部接続機器及びホス ト機器では、 外部接続機器側に割り込み要求があった場合 にデータ転送シーケンスを短縮することができる。

Claims

請求の範囲
1 . ホス ト機器に接続される外部接続機器において、
上記ホス ト機器との間でデータバスを介して伝送データの双方向通信を行うデ ータ通信手段と、
上記データバスのステートを示すバスステ一 卜信号を上記ホス ト機器から受信 するバスステー ト信号受信手段と、
上記伝送データに含まれる動作制御コマンドに応じて本機器の動作制御をする コントローラとを備え、
上記データ通信手段は、 上記バスステー ト信号のステートが本機器からホス ト 機器への割り込みを受け付けるステートとされているときに、 ホス ト機器から上 記コントローラへ与えられた動作制御コマンドに基づき発生する割り込み要因の 内容を示す情報を、 上記データバスを介して上記ホス ト機器へ送信すること を特徴とする外部接続機器。
2 . 上記データ通信手段は、 割り込み要因の内容を示す情報と して、 ホス ト機器 から上記コントローラへ与えられた動作制御コマンドに基づき動作制御したとき の本機器の動作状態を示す動作状態情報を、 上記データバスを介して上記ホス ト 機器へ送信することを特徴とする請求の範囲第 1項記載の外部接続機器。
3 . 上記動作状態情報が格納されるレジスタを備え、
上記コン トローラは、 ホス ト機器から与えられた上記動作制御コマンドを実行 し、 その実行による本機器の動作状態に基づき上記レジスタ内の動作状態情報を 更新し、
上記データ通信手段は、 上記バスステ一ト信号のステートが本機器からホス ト 機器への割り込みを受け付けるステートとされているときに、 上記レジスタに格 納されている上記動作状態情報を、 上記データバスを介して上記ホス ト機器へ送 信することを特徴とする請求の範囲第 1項記載の外部接続機器。
4 . 上記動作状態情報には、 上記動作制御コマン ドの実行が終了した動作状態を 示す 1 ビッ トの情報 ( C E Dビッ ト) と、 上記動作制御コマン ドの実行がェラ一 となつた動作状態を示す 1 ビッ トの情報 ( E R Rビッ ト) と、 上記動作制御コマ ンドを実行した結果ホス ト機器から本機器へのアクセスを受け付ける動作状態を 示す 1 ビッ トの情報 (B R EQ/P RGビッ ト) と、 上記動作制御コマン ドの実行 が不可能である動作状態を示す 1 ビッ トの情報 (CMDNKビッ ト) とを含んで いることを特徴とする請求の範囲第 3項記載の外部接続機器。
5. 上記データバスは、 少なく とも 4 ビッ トのパラレルデータを伝送し、
上記データ通信手段は、 上記 C E Dビッ ト、 上記 E RRビッ ト、 上記 B R E Q /P R Gビッ ト及び上記 CMDNKビッ トを、 4 ビッ トのパラレルデータと して上 記データ.バスを介して上記ホス ト機器へ送信することを特徴とする請求の範囲第 4項記載の外部接続機器。
6. 上記データ通信手段は、 上記ホス ト機器から与えられる上記データバスの伝 送クロックと非同期に、 上記 C E Dビッ ト、 上記 E R Rビッ ト、 上記 B R E Q / P R Gビッ ト及び上記 CMD NKビッ トを伝送することを特徴とする請求の範囲第 5項記載の外部接続機器。
7. 上記コントローラは、 上記動作制御コマン ドの実行が正常に終了したときに は、 C E Dビッ トを有効、 E R Rビッ トを無効、 B R EQ/P R Gビッ トを無効、 CMD NKビッ トを無効とすることを特徴とする請求の範囲第 5項記載の外部接 続機器。
8. 上記コントローラは、 上記動作制御コマンドの実行にエラーが発生したとき には、 C EDビッ トを有効、 E R Rビッ トを有効、 B R E Q/P R Gビッ トを無効、 CMDNKビッ トを無効とすることを特徴とする請求の範囲第 5項記載の外部接 続機器。
9. 上記コントローラは、 上記動作制御コマンドの実行が正常に行われ、 且つ、 ホス ト機器から本機器へのアクセスを受け付けるときには、 C E Dビッ トを無効、 E R Rビッ トを無効、 B R E Q/P R Gビッ トを有効、 CMDNKビッ トを無効と することを特徴とする請求の範囲第 5項記載の外部接続機器。
1 0. 上記コントローラは、 上記動作制御コマンドの実行にエラーが生じており、 且つ、 ホス ト機器から本機器へのアクセスを受け付けるときには、 C EDビッ ト を無効、 E RRビッ トを有効、 B R E Q/P R Gビッ トを有効、 CMDNKビッ ト を無効とすることを特徴とする請求の範囲第 5项記載の外部接続機器。
1 1 . 上記コン トローラは、 上記動作制御コマンドの実行中であるときには、 C E Dビッ トを無効、 E R R ビッ トを無効、 B R E Q / P R Gビッ トを無効、 C M D N Kビッ トを無効とすることを特徴とする請求の範西第 5項記載の外部接続機器。
1 2 . 上記コン トローラは、 上記動作制御コマン ドの実行が不可能であるときに は、 C E Dビッ トを有効、 E R Rビッ トを無効、 B R E Q / P R Gビッ トを無効、 C M D N Kビッ トを有効とすることを特徴とする請求の範囲第 5项記載の外部接 続機器。
1 3 . 外観形状がカー ド型であることを特徴とする請求の範囲第 1項記載の外部 接続装置。
1 4 . 外部接続機器が接続されるホス ト機器において、
上記外部接続機器との間でデータバスを介して伝送データの双方向通信を行う データ通信手段と、
上記データバスのステートを示すバスステート信号を上記外部接続機器へ送信 するバスステート信号送信手段と、
外部接続機器の動作制御をする制御コマンドを上記伝送データに含めて発行す るコントローラとを備え、
上記データ通信手段は、 上記バスステート信号のステートが外部接続機器から 本機器への割り込みを受け付けるステ一トとされているときに、 本機器から上記 外部接続機器へ与えられた動作制御コマンドに基づき発生する割り込み要因の内 容を示す情報を、 上記データバスを介して上記外部接続機器から受信することを 特徴とするホス ト機器。
1 5 . 上記データ通信手段は、 割り込み要因の内容を示す情報と して、 ホス ト機 器から上記コントローラへ与えられた動作制御コマンドに基づき動作制御したと きの本機器の動作状態を示す動作状態情報を、 上記データバスを介して上記外部 接続機器から受信することを特徴とする請求の範囲第 1 4項記載のホス ト機器。
1 6 . 上記動作状態情報には、 上記動作制御コマン ドの実行が終了した動作状態 を示す 1 ビッ トの情報 ( C E Dビッ ト) と、 上記動作制御コマン ドの実行がエラ 一となつた動作状態を示す 1 ビッ トの情報 ( E R R ビッ ト) と、 上記動作制御コ マンドを実行した結果ホス ト機器から本機器へのアクセスを受け付ける動作状態 を示す 1. ビッ トの情報 ( B R E Q/ P R Gビッ ト) と、 上記動作制御コマン ドの実 行が不可能である動作状態を示す 1 ビッ トの情報 (CMDNKビッ ト) とが含ま れていることを特徴とする請求の範囲第 1 5項記載のホス ト機器。
1 7. 上記データバスは、 少なく とも 4 ビッ トのパラ レルデータを伝送し、 上記データ通信手段は、 上記 C EDビッ ト、 上記 E R Rビッ ト、 上記 B R E Q
/P RGビッ ト及び上記 CMDNKビッ トを、 4 ビッ トのノ ラレルデータと して上 記データバスを介して上記外部接続機器から受信することを特徴とする請求の範 囲第 1. 6项記載のホス ト機器。
1 8. 上記データ通信手段は、 本機器から上記外部接続機器へ与える上記データ バスの伝送クロックと非同期に、 上記 C EDビッ ト、 上記 ER Rビッ ト、 上記 B R E Q/P R Gビッ ト及び上記 CMDNKビッ トを受信することを特徴とする請求 の範囲第 1 7項記載のホス ト機器。
1 9. 上記コン トローラは、 C EDビッ トが有効、 E RRビッ トが無効、 B R E Q/P RGビッ トが無効、 CMDNKビッ トが無効であるときには、 上記動作制御 コマンドの実行が正常に終了したと判断することを特徴とする請求の範囲第 1 7 項記載のホス ト機器。
2 0. 上記コンドローラは、 C EDビッ トが有効、 E RRビッ トが有効、 B R E Q/PRGビッ トが無効、 CMDNKビッ トが無効であるときには、 上記動作制御 コマンドの実行にエラーが発生したとき判断することを特徴とする請求の範囲第 1 7項記載のホス ト機器。
2 1. 上記コン トローラは、 C EDビッ トが無効、 E R Rビッ トが無効、 B R E Q/PR Gビッ トが有効、 CMDNKビッ トが無効であるときには、 上記動作制御 コマンドの実行が正常に行われ、 且つ、 本機器から外部接続機器へのアクセスを 受け付けていると判断することを特徴とする請求の範 I 第 1 7項記載のホス ト機 器。
2 2. 上記コントローラは、 C EDビッ トが無効、 E R Rビッ トが有効、 B R E Q/ P R Gビッ トが有効、 C MD N Kビッ トが無効であるときには、 上記動作制御 コマン ドの実行にエラーが生じており、 且つ、 本機器から外部接続機器へのァク セスを受け付けていると判断することを特徴とする請求の範囲第 1 7項記載のホ ス ト機器。
2 3 . 上記コン トローラは、 C E Dビッ トが無効、 E R Rビッ トが無効、 B R E Q / P R Gビッ トが無効、 C M D N Kビッ 卜が無効であるときには、 上記動作制御 コマン ドの実行中であるときと判断することを特徴とする請求の範囲第 1 7項記 載のホス ト機器。
2 4 . 上記コン ト ローラは、 C E Dビッ トが有効、 E R Rビッ トが無効、 B R E Q / P R Gビッ トが無効、 C M D N Kビッ トが有効であるときには、 上記動作制御 コマンドの実行が不可能であると判断することを特徴とする請求の範囲第 1 7項 記載のホス ト機器。
2 5 . 上記外部接続機器は、 外観形状がカード型であることを特徴とする請求の 範囲第 1 4項記載のホス ト機器。
2 6 . ホス ト機器と、 当該ホス ト機器に接続される外部接続機器とを備えるデー タ通信システムにおいて、
上記ホス ト機器は、 上記外部接続機器との問でデータバスを介して伝送データ の双方向通信を行うデータ通信手段と、 上記データバスのステー トを示すバスス テート信号を上記外部接続機器へ送信するバスステート信号送信手段と、 外部接 続機器の動作制御をする制御コマンドを上記伝送データに含めて発行するコント ローラとを有し、
上記外部接続機器は、 上記ホス ト機器との間でデータバスを介して伝送データ の双方向通信を行うデータ通信手段と、 上記データバスのステー トを示すバスス テート信号を上記ホス ト機器から受信するバスステート信号受信手段と、 上記伝 送データに含まれる動作制御コマンドに応じて本機器の動作制御をするコントロ ーラとを有し、
上記ホス ト機器及び上記外部接続機器のデータ通信手段は、 上記バスステート 信号のステ一トが外部接続機器からホス ト機器への割り込みを受け付けるステー トとされているときに、 ホス ト機器から外部接続機器へ与えられた動作制御コマ ンドに基づき発生する割り込み要因の内容を示す情報を、 上記データバスを介し て外部接続機器からホス ト機器へ送信することを特徴とするデータ通信システム。
2 7 . 上記ホス ト機器及び上記外部接続機器のデータ通信手段は、 割り込み要因 の内容を示す情報と して、 ホス ト機器から外部接続機器へ与えられた動作制御コ マン ドに基づき動作制御したときの外部接続機器の動作状態を示す動作状態情報 を、 上記データバスを介して外部接続機器からホス ト機器へ送信することを特徴 とする請求の範囲第 2 6項記載のデータ通信システム。
2 8 . 上記外部接続機器は、 外観形状が力一ド型であることを特徴とする請求の 範囲第 2 6項記載のデータ通信
PCT/JP2003/001800 2002-02-21 2003-02-19 Dispositif de connexion externe, dispositif hote et systeme de communication de donnees WO2003071437A1 (fr)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US10/474,915 US7051128B2 (en) 2002-02-21 2003-02-19 System and method for data bus communication system between external card connection device and host device
DE60317771T DE60317771T2 (de) 2002-02-21 2003-02-19 Externe verbindungseinrichtung, host-einrichtung und datenkommunikationssystem
EP03706966A EP1477902B1 (en) 2002-02-21 2003-02-19 External connection device, host device, and data communication system
KR1020037013463A KR100987205B1 (ko) 2002-02-21 2003-02-19 외부 접속 기기, 호스트 기기 및 데이터 통신 시스템
US11/361,897 US7318113B2 (en) 2002-02-21 2006-02-24 System and method communication system for reading or writing data to register between external card connection device and host device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002045252A JP4178809B2 (ja) 2002-02-21 2002-02-21 外部接続機器及びホスト機器
JP2002/45252 2002-02-21

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US10/474,915 A-371-Of-International US7051128B2 (en) 2002-02-21 2003-02-19 System and method for data bus communication system between external card connection device and host device
US11/361,897 Continuation US7318113B2 (en) 2002-02-21 2006-02-24 System and method communication system for reading or writing data to register between external card connection device and host device

Publications (1)

Publication Number Publication Date
WO2003071437A1 true WO2003071437A1 (fr) 2003-08-28

Family

ID=27750574

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2003/001800 WO2003071437A1 (fr) 2002-02-21 2003-02-19 Dispositif de connexion externe, dispositif hote et systeme de communication de donnees

Country Status (7)

Country Link
US (2) US7051128B2 (ja)
EP (1) EP1477902B1 (ja)
JP (1) JP4178809B2 (ja)
KR (1) KR100987205B1 (ja)
CN (1) CN1297915C (ja)
DE (1) DE60317771T2 (ja)
WO (1) WO2003071437A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222201A (ja) * 2004-02-04 2005-08-18 Matsushita Electric Ind Co Ltd メモリアクセス装置、及び半導体メモリカード
EP2506486A1 (en) 2004-02-23 2012-10-03 Lexar Media, Inc. Secure compact flash
US7664902B1 (en) * 2004-03-16 2010-02-16 Super Talent Electronics, Inc. Extended SD and microSD hosts and devices with USB-like high performance packetized interface and protocol
KR100909364B1 (ko) 2007-02-06 2009-07-24 삼성전자주식회사 시스템 클록의 노출을 차단하는 메모리 컨트롤러와 그 방법
US7870305B2 (en) * 2007-03-09 2011-01-11 Microsoft Corporation Proxy association for devices
US8064205B2 (en) * 2008-05-19 2011-11-22 Dell Products, Lp Storage devices including different sets of contacts
US20100030962A1 (en) * 2008-08-04 2010-02-04 Sherif Sirageldin Storage facility for data handling devices
TW201145034A (en) * 2010-06-01 2011-12-16 Etron Technology Inc System of realizing multi-port storages based on a UASP protocol of a USB specification version 3.0 and method thereof
JP5673949B2 (ja) * 2011-03-18 2015-02-18 大日本印刷株式会社 内部状態に応じたフォーマット処理を実行できる半導体記憶装置及び半導体記憶装置のフォーマット処理方法
JP5694101B2 (ja) * 2011-09-20 2015-04-01 株式会社東芝 メモリ・デバイス、ホスト・デバイス
USD729808S1 (en) * 2013-03-13 2015-05-19 Nagrastar Llc Smart card interface
USD758372S1 (en) * 2013-03-13 2016-06-07 Nagrastar Llc Smart card interface
US9888283B2 (en) 2013-03-13 2018-02-06 Nagrastar Llc Systems and methods for performing transport I/O
US9647997B2 (en) 2013-03-13 2017-05-09 Nagrastar, Llc USB interface for performing transport I/O
USD759022S1 (en) * 2013-03-13 2016-06-14 Nagrastar Llc Smart card interface
USD780763S1 (en) 2015-03-20 2017-03-07 Nagrastar Llc Smart card interface
USD864968S1 (en) 2015-04-30 2019-10-29 Echostar Technologies L.L.C. Smart card interface

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5416945A (en) * 1977-07-08 1979-02-07 Nippon Telegr & Teleph Corp <Ntt> Signal transmission system
JPS5614329A (en) * 1979-07-16 1981-02-12 Nec Corp Data processing system
JP2001202254A (ja) * 2000-01-21 2001-07-27 Yaskawa Electric Corp マイクロプロセッサシステム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805844A (en) * 1996-10-07 1998-09-08 Gustin; Jay W. Control circuit for an interface between a PCI bus and a module bus
JPH117505A (ja) * 1997-06-17 1999-01-12 Fujitsu Ltd カード型記憶媒体
IT1308343B1 (it) * 1999-02-03 2001-12-11 St Microelectronics Srl Procedimento per arbitrare priorita' di interruzione tra periferichein un sistema basato su microprocessore
US6618789B1 (en) * 1999-04-07 2003-09-09 Sony Corporation Security memory card compatible with secure and non-secure data processing systems
JP2001265714A (ja) * 2000-01-13 2001-09-28 Sony Computer Entertainment Inc インターフェイス装置及びそれを備えた情報処理システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5416945A (en) * 1977-07-08 1979-02-07 Nippon Telegr & Teleph Corp <Ntt> Signal transmission system
JPS5614329A (en) * 1979-07-16 1981-02-12 Nec Corp Data processing system
JP2001202254A (ja) * 2000-01-21 2001-07-27 Yaskawa Electric Corp マイクロプロセッサシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1477902A4 *

Also Published As

Publication number Publication date
KR20040086502A (ko) 2004-10-11
DE60317771T2 (de) 2008-12-04
EP1477902B1 (en) 2007-11-28
JP4178809B2 (ja) 2008-11-12
KR100987205B1 (ko) 2010-10-12
EP1477902A1 (en) 2004-11-17
US20040172488A1 (en) 2004-09-02
EP1477902A4 (en) 2006-09-06
US20060143312A1 (en) 2006-06-29
DE60317771D1 (de) 2008-01-10
CN1507590A (zh) 2004-06-23
US7318113B2 (en) 2008-01-08
CN1297915C (zh) 2007-01-31
US7051128B2 (en) 2006-05-23
JP2003241908A (ja) 2003-08-29

Similar Documents

Publication Publication Date Title
US7318113B2 (en) System and method communication system for reading or writing data to register between external card connection device and host device
US7360001B2 (en) External card connection device having parameter and command registers wherein device is connectable to a host device
US5812814A (en) Alternative flash EEPROM semiconductor memory system
US7177975B2 (en) Card system with erase tagging hierarchy and group based write protection
CN101449248B (zh) 数据存储装置以及数据存储方法
US7039754B2 (en) Detachably mounted removable data storage device
US7277973B2 (en) Interface apparatus
KR101395778B1 (ko) 메모리 카드 및 그것을 포함하는 메모리 시스템 그리고그것의 동작 방법
US20030009607A1 (en) Method and system for programming a peripheral flash memory via an ide bus
US20080046608A1 (en) Low-Power Extended USB Flash Device Without Polling
WO2001013214A1 (fr) Dispositif de stockage externe avec memoire a semi-conducteur non volatile
EP0602997A2 (en) Information transmission system
CN101443739B (zh) 数据存储装置及其初始化方法
JPH0714392A (ja) 不揮発性半導体メモリおよびそれを使用した半導体ディスク装置
JP4793798B2 (ja) マイクロコンピュータ
JPH07141479A (ja) Icメモリカードおよびそのicメモリカードを使用したファイル管理システム
KR20010000941A (ko) 스마트미디어 카드 독출/기입 장치 및 그 방법
EP4220374A1 (en) Storage device and operating method of storage device
JP2006350881A (ja) メモリーカード制御装置およびメモリーカード制御システム
US20110125481A1 (en) Apparatus and method for simulating function of multimedia device
JP2005100446A (ja) 情報伝送システム及び情報伝送方法
JPH03194644A (ja) 携帯可能電子装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CN KR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT SE SI SK TR

WWE Wipo information: entry into national phase

Ref document number: 2003706966

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020037013463

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 10474915

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 038001640

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 2003706966

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 2003706966

Country of ref document: EP