Memory system in which extended function can easily be set
Abstract
According to one embodiment, a memory system, such as a SDIO card, includes a nonvolatile semiconductor memory device, a control section, a memory, an extended function section, and an extension register. The extended function section is controlled by the control section. A first command reads data from the extension register in units of given data lengths. A second command writes data to the extension register in units of given data lengths. A extension register includes a first area, and second area different from the first area, information configured to specify a type of the extended function and controllable driver, and address information indicating a place to which the extended function is assigned, the place being on the extension register, are recorded in the first area, and the second area includes the extended function.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A memory device comprising:
a nonvolatile semiconductor memory device; and
a control section configured to control the nonvolatile semiconductor memory device and an extension register space, the extension register space being capable of defining an interface controlling an extended function functions through an extended function section,
wherein the extension register space stores information, the information is configured to specify a type one of the extended function functions and a controllable driver, and to include address information indicating a place where a an extension register for controlling the one of the extended function functions is stored,
the control section is arranged to process a first command to read data from the extension register space in accordance with designations of the address information and data length, and a second command to write data to the extension register space in accordance with designations of the address information and data length.
2. The device according to claim 1 , wherein
each of the first and second commands comprises an address field and a length field in an argument of either of the first and second commands used to access data in one page of the extension register space constituted of a plurality of pages,
a value of a mode field in the argument of each of the first and second commands selects a first operation mode,
the first operation mode of the first command corresponds to a read operation of reading data including an effective data indicated by the length field from a position of the extension register indicated by the address field, and
the first operation mode of the second command corresponds to a write operation of writing data including an effective data indicated by the length field to a position of the extension register indicated by the address field.
3. The device according to claim 2 , wherein
in the first operation mode of the first command, data items placed a location in a designated page of the extension register, a top of the data items location is designated by the address field, are arranged to transfer the data items from a head of a read data block, the length field indicating an effective data length from head of read data block, and
in the first operation mode of the second command, data items transferred from the head of a write data block are written to a page of the extension register, the top of write position in a designated page of the extension register is specified by the address field and data length to be written is specified by the length filed.
4. The device according to claim 2 , wherein
the argument of the second command includes a bit used to select whether or not mask write is to be carried out, when mask write is not carried out, the length field indicates an effective write data length, and when mask write is carried out, the length field becomes a fixed value, the length field indicates mask information used to select whether write is to be carried out in units of one bit or original data is to be held, and the mask information and write data length are the same length as the fixed value.
5. The device according to claim 2 , further comprising a function which is controlled by multiple methods using an extension register set configured by multiple of extension registers, multiple of functions are controlled by singly extension register set, wherein
function identification information in the extension register space includes common information for all functions and multiple of information to identify a location of each extension register set in the extension register space.
6. The device according to claim 2 , further comprising a third command used as a read command supporting fixed-length block transfer and multi-block transfer, and a fourth command used as a write command supporting fixed-length block transfer and multi-block transfer, wherein
each of the third and fourth commands includes an address field as an argument thereof, data transfer is executed when the address field designates a data port of the extension register, and data length transfer is specified by a block count.
7. The device according to claim 2 , further comprising:
a fifth command which enables read/write supporting variable-length block transfer, and multi-block transfer;
a sixth command which enables read/write of 1-byte data by the argument and the response; and
a function register set which can be accessed by the fifth and sixth commands, wherein
the function register set which can be accessed by the fifth and sixth commands can also be accessed by the first and second commands.
8. The device according to claim 2 , wherein
each of the first and second commands comprises an address field and a length field in the argument of the first and second commands used to access data in one page of the extension register space constituted of a plurality of pages,
a value of the a mode field in the argument of each of the first and second commands selects a second operation mode,
in the second operation mode of each the first and second commands, a specific address indicated by the address field is interpreted as a data port of the extension register,
the first command reads data from the extended function section through the data port which is associated with the one of the extended function, functions and
the second command writes data to the extended function section through the data port which is associated with the one of the extended function functions.
9. The device according to claim 1 , wherein the information which is placed in the extension register space includes any one of a function identification codes configured to recognize a standard extended function, manufacturer identification information configured to recognize a manufacturer, and a function identification information for identifying classification for the standard extended function, wherein the information is used as an information for selecting a general-purpose driver or a dedicated driver.
10. A host system to use a memory device, the memory device including a nonvolatile semiconductor memory device, the host system is accessible to a memory space and an extension register space of the nonvolatile semiconductor memory device, and the host system can control an extended function section through extension register set which is placed in the extension register space,
wherein an information register in the extension register space indicates information which is configured to specify a type of the one extended function included to the extended function section and a controllable driver, and address information indicating a place where a an extension register for controlling the one extended function is stored,
the control section is arranged to process a first command to read data from the extension register space in accordance with designations of the address information and data length, and a second command to write data to the extension register space in accordance with designations of the address information and data length,
the host system comprising a host driver and a system memory,
wherein the host driver uses the first command to read a function identification code, a manufacturer identification information, and a function identification information from the information which is described in the information register in the extension register space, and specify a usable general-purpose function driver or a dedicated function driver and, when a driver exists, the host driver loads the driver into the system memory, and execution of the function driver initializes the one extended function in the memory device.
11. The host system according to claim 10 , wherein the host driver delivers position information about the extension register assigned to the one of the extended function functions to the loaded function driver from the information, thereby making the one of the extended function functions controllable even when the extension register is arranged at an arbitrary position.
12. The host system according to claim 10 , wherein
each of the first and second commands comprises an address field and a length field in an argument of either of the first and second commands used to access data in any one page of the extension register space constituted of a plurality of pages,
a first operation mode of the first command corresponds to a read operation of reading data including an effective data indicated by the length field from a position of the extension register indicated by the address field, and
the first operation mode of the second command corresponds to a write operation of writing data including an effective data indicated by the length field to a position of the extension register indicated by the address field.
13. The host system according to claim 12 , further comprising a third command used as a read command supporting multi-block transfer, and a fourth command used as a write command supporting multi-block transfer, wherein
each of the third and fourth commands includes an address field as an argument thereof, multi-block data transfer is executed when the address field designates a data port of at least one byte register in a second operation mode, in the second operation mode of each the first, second, third and fourth commands, a specific address indicated by the address field is interpreted as a data port of the extension register.
14. The host system according to claim 13 , wherein the host driver accesses the extension register of the memory device by the first and second commands or by the third and fourth commands in the first operation mode, and carries out data transfer between the host system and the extended function section of the memory device in the second operation mode.
15. The host system according to claim 10 , wherein the host driver recognizes a certain the one extended function from a plurality of multi-function devices by the information including function identification code, manufacturer identification information, and a function identification information which are singly assigned to each function, and location of the extension register is determined by address field of the information which is corresponded with the specified one extended function, and length of the extension register is specified in the extension register of the one extended function.
16. A method for processing data by a processor which controls a nonvolatile memory device and an extension register space capable of defining an interface controlling an extended function through an extended function circuit, the method comprising
receiving a first command; reading data from the extension register space in accordance with designations of address information and data length; receiving a second command; and writing data to the extension register space in accordance with designations of the address information and data length, wherein the address information is included in information stored in the extension register space.
17. The method according to claim 16, wherein the information is configured to specify an extended function and a controllable driver.
18. The method according to claim 16, wherein
each of the first and second commands comprises an address field and a length field in an argument of either of the first and second commands used to access data in one page of the extension register space constituted of a plurality of pages, a value of a mode field in the argument of each of the first and second commands selects a first operation mode, the first operation mode of the first command corresponds to a read operation of reading data including an effective data indicated by the length field from a position of an extension register indicated by the address field, and the first operation mode of the second command corresponds to a write operation of writing data including an effective data indicated by the length field to a position of the extension register indicated by the address field.
19. The method according to claim 18, wherein in the first operation mode of the first command, data items placed a location in a designated page of the extension register are arranged to transfer the data items from a head of a read data block, a top of the data items location is designated by the address field, and the length field indicated an effective data length from head of read data block, and
in the first operation mode of the second command, data items transferred from the head of a write data block are written to a page of the extension register, and the top of write position in a designated page of the extension register is specified by the address field and data length to be written is specified by the length filed.
20. The method according to claim 18, wherein the argument of the second command includes a bit used to select whether or not mask write is to be carried out,
when the mask write is not carried out, the length field indicates an effective write data length, and when the mask write is carried out, the length field becomes a fixed value, the length field indicates mask information used to select whether write is to be carried out in units of one bit or original data is to be held, and the mask information and write data length are the same length as the fixed value.
21. The method according to claim 18, wherein a function is prepared, which is controlled by multiple methods using an extension register set configured by multiple extension registers, multiple of functions are controlled by singly extension register set,
wherein function identification information in the extension register space includes common information for all functions and multiple of information to identify a location of each extension register set in the extension register space.
22. The method according to claim 18, wherein a third command is further used as a read command supporting fixed-length block transfer and multi-block transfer, and a fourth command is further used as a write command supporting fixed-length block transfer and multi-block transfer, wherein
each of the third and fourth commands includes an address field as an argument thereof, data transfer is executed when the address field designates a data port of the extension register, and data length transfer is specified by a block count.
23. The method according to claim 18, wherein
a fifth command is used to enable read/write supporting variable-length block transfer, and multi-block transfer; a sixth command is used to enable read/write of 1-byte data by the argument and the response; and the first, second, fifth, and sixth commands are capable of accessing to a function register set.
24. The method according to claim 18, wherein
each of the first and second commands comprises an address field and a length field in the argument of the first and second commands used to access data in one page of the extension register space constituted of a plurality of pages, a value of the mode field in the argument of each of the first and second commands selects a second operation mode, in the second operation mode of each the first and second commands, a specific address indicated by the address field is interpreted as a data port of the extension register, the first command reads data from the extended function section through the data port which is associated with the extended function, and the second command writes data to the extended function section through the data port which is associated with the extended function.
25. The method according to claim 16, wherein the information which is placed in the extension register space includes any one of function identification codes configured to recognize a standard extended function, manufacturer identification information configured to recognize a manufacturer, and a function identification information for identifying classification for the standard extended function, wherein the information is used as an information for selecting a general-purpose driver or a dedicated driver.Join the waitlist — get patent alerts
Track USRE47542E — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.