Nonvolatile semiconductor memory and driving method the same
View Patent ↗A nonvolatile semiconductor memory includes a memory cell array, a control circuit and an address control circuit. In the memory cell array, a plurality of memory cells are arranged in a matrix of rows and columns. The control circuit sets a write/erase mode in response to an erase instruction, and to count the erase instruction. The address control circuit generates a write address from an input address for a write operation based on a count value from the control circuit in the write/erase mode. A write order to the memory cells accessed based on a series of the write addresses in a current write operation is different from a write order to the memory cells accessed based on a series of write addresses in a previous write operation.
1. A nonvolatile semiconductor memory comprising:
a memory cell array in which a plurality of memory cells are arranged in a matrix of rows and columns;
a control circuit configured to set a write/erase mode in response to erase instructions; and
an address control circuit;
wherein:
said address control circuit is configured to produce write addresses to cause specific memory cells of the plurality of memory cells to be written in a certain write order when said write/erase mode is set by the control circuit in response to a first erase instruction; and
said address control circuit is configured to produce write addresses to cause the specific memory cells to be written in a particular write order different from said certain write order when said write/erase mode is set by the control circuit in response to another erase instruction issued after said first erase instruction.
2. The nonvolatile semiconductor memory according to claim 1 ,
wherein said particular write order is opposite to said certain write order in units of the rows of said memory cells.
3. The nonvolatile semiconductor memory according to claim 2 ,
wherein said control circuit is configured to provide a count value based on a number of times said write/erase mode has been set,
wherein said address control circuit is configured to produce write addresses from input addresses for write operations in said write/erase mode based on said count value,
wherein said address control circuit is connected with address lines on which an input address having a row address portion and a column address portion is supplied, and
wherein said address control circuit comprises:
inverters connected to said address lines corresponding to said row address portion;
a logic circuit configured to generate a switch control signal based on said count value in said write/erase mode; and
switches, each of which outputs an inverted output of said inverter connected with a corresponding one of said address lines corresponding to said row address portion in response to said switch control signal.
4. The nonvolatile semiconductor memory according to claim 3 ,
wherein said switches output said input address supplied on said address lines as an internal address when said write/erase mode is not set.
5. The nonvolatile semiconductor memory according to claim 1 ,
wherein said particular write order is opposite to said certain write order in units of the columns of said memory cells.
6. The nonvolatile semiconductor memory according to claim 5 ,
wherein said control circuit is configured to provide a count value based on a number of times said write/erase mode has been set,
wherein said address control circuit is configured to produce write addresses from input addresses for write operations in said write/erase mode based on said count value,
wherein said address control circuit is connected with address lines on which an input address having a row address portion and a column address portion is supplied, and
wherein said address control circuit comprises:
inverters connected to said address lines corresponding to said column address portion;
a logic circuit configured to generate a switch control signal based on said count value in said write/erase mode; and
switches, each of which outputs an inverted output of said inverter connected with a corresponding one of said address lines corresponding to said column address portion in response to said switch control signal.
7. The nonvolatile semiconductor memory according to claim 6 ,
wherein said switches output said input address supplied on said address lines as an internal address when said write/erase mode is not set.
8. The nonvolatile semiconductor memory according to claim 1 ,
wherein said particular write order is opposite to said certain write order.
9. The nonvolatile semiconductor memory according to claim 8 ,
wherein said control circuit is configured to provide a count value based on a number of times said write/erase mode has been set,
wherein said address control circuit is configured to produce write addresses from input addresses for write operations in said write/erase mode based on said count value,
wherein said address control circuit is connected with address lines on which an input address having a row address portion and a column address portion is supplied, and
wherein said address control circuit comprises:
inverters connected to said address lines;
a logic circuit configured to generate a switch control signal based on said count value in said write/erase mode; and
switches, each of which outputs inverted outputs of said inverters in response to said switch control signal.
10. The nonvolatile semiconductor memory according to claim 9 ,
wherein said switches output said input address supplied on said address lines as an internal address when said write/erase mode is not set.
11. A method of driving a nonvolatile semiconductor memory, comprising:
providing a memory cell array in which a plurality of memory cells are arranged in a matrix of rows and columns;
setting a write/erase mode in response to a first erase instruction;
generating write addresses to cause specific memory cells of the plurality of memory cells to be written in a certain write order when the write/erase mode is set in response to the first erase instruction;
setting the write/erase mode in response to another erase instruction issued after said first erase instruction; and
generating write addresses to cause the specific memory cells to be written in a particular write order different from said certain write order when said write/erase mode is set in response to said another erase instruction.
12. The method according to claim 11 ,
wherein said particular write order is opposite to said certain write order in units of the rows of said memory cells.
13. The method according to claim 12 , wherein said generating write addresses to cause the specific memory cells to be written in the particular write order, comprises:
inverting address bits of a row address portion of an input address; and
generating as a write address, the inverted address bits for said row address portion and non-inverted address bits for a column address portion in said write/erase mode.
14. The method according to claim 13 , further comprising:
generating said input address as an internal address when said write/erase mode is not set.
15. The method according to claim 11 ,
wherein said particular write order is opposite to said certain write order in units of the columns of said memory cells.
16. The method according to claim 15 , wherein said generating write addresses to cause the specific memory cells to be written in the particular write order, comprises:
inverting address bits of a column address portion of said input address; and
generating as a write address, non-inverted address bits for said row address portion and the inverted address bits for a column address portion in said write/erase mode.
17. The method according to claim 16 , further comprising:
generating said input address as an internal address when said write/erase mode is not set.
18. The method according to claim 11 ,
wherein said particular write order is opposite to said certain write order.
19. The method according to claim 18 , wherein said generating write addresses to cause the specific memory cells to be written in the particular write order, comprises:
inverting address bits of an input address; and
outputting as a write address the inverted address bits in said write/erase mode.