Patent Publication Number: US-8995214-B2

Title: Nonvolatile semiconductor memory

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application claims the benefit of U.S. Provisional Application No. 61/738,948, filed Dec. 18, 2012, the entire contents of which are incorporated herein by reference. 
    
    
     FIELD 
     Embodiments described herein relate generally to a nonvolatile semiconductor memory. 
     BACKGROUND 
     In a nonvolatile semiconductor memory, for example, a NAND flash memory, data transfer between a sense amplifier and a cache memory is performed while reading/writing. The data transfer is performed by, for example, the bus precharge method by which charging/discharging of a data bus commonly connected to the sense amplifier and the cache memory is used. This method is excellent in that the circuit area needed for data transfer can be reduced. 
     However, the bus precharge method is inefficient from the viewpoint of reducing power consumption because charging/discharging of the data bus is repeated. 
     In a multi-valued memory in which 2 bits or more are made to be stored in a memory cell, it is necessary to commonly connect data latches, in addition to the sense amplifier and the cache memory, to the data bus to perform data transfer therebetween. In this case, the data bus becomes longer, increasing the parasitic capacitance of the data bus. Moreover, all the parasitic capacitance of the data bus needs to be charged regardless of the position of the output side/input side of data. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIGS. 1 and 2  are each diagrams showing a nonvolatile semiconductor memory; 
         FIG. 3  is a diagram showing an S/A &amp; Latch area and a Buffer area; 
         FIG. 4  is a diagram showing an example of a memory connected to Data bus&lt;0&gt;; 
         FIG. 5  is a diagram showing an example of a sense amplifier; 
         FIGS. 6 and 7  are diagrams showing an example of a data latch; 
         FIG. 8  is a diagram showing an example of a cache memory; 
         FIG. 9  is a diagram showing an example of a Storage area; 
         FIG. 10  is a timing chart showing a data transfer as a comparative example; 
         FIG. 11  is a diagram showing an example of the S/A &amp; Latch area to which a data transfer according to a first embodiment is applied; 
         FIGS. 12 and 13  are diagrams showing an example of the S/A &amp; Latch area to which a data transfer according to a modification of the first embodiment is applied; 
         FIG. 14  is a flow chart showing the data transfers according to the first embodiment and the modification thereof; 
         FIG. 15  is a diagram showing the S/A &amp; Latch area and the Buffer area; 
         FIG. 16  is a diagram showing an example of the memory connected to Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b; 
         FIGS. 17 to 20  are timing charts showing the data transfers according to the first embodiment and the modification thereof; 
         FIG. 21  is a diagram showing an example of the S/A &amp; Latch area to which a data transfer according to a second embodiment is applied; 
         FIGS. 22 and 23  are diagrams showing an example of the S/A &amp; Latch area to which a data transfer according to a modification of the second embodiment is applied; 
         FIG. 24  is a flow chart showing the data transfers according to the second embodiment and the modification thereof; 
         FIG. 25  is a diagram showing the S/A &amp; Latch area and the Buffer area; 
         FIG. 26  is a diagram showing an example of the S/A &amp; Latch area; 
         FIGS. 27 to 30  are timing charts showing the data transfers according to the second embodiment and the modification thereof; 
         FIG. 31  is a diagram showing an example of the S/A &amp; Latch area to which a data transfer according to a third embodiment is applied; 
         FIG. 32  is a diagram showing a modification of the sense amplifier; 
         FIGS. 33 and 34  are diagrams each showing modifications of the data latch; 
         FIG. 35  is a diagram showing a modification of the cache memory; 
         FIG. 36  is a diagram showing a modification of the sense amplifier; 
         FIGS. 37 and 38  are diagrams each showing modifications of the data latch; and 
         FIG. 39  is a diagram showing a modification of the cache memory. 
     
    
    
     DETAILED DESCRIPTION 
     In general, according to one embodiment, a nonvolatile semiconductor memory comprises: a memory cell array; a temporary storage area which temporary stores data in a read/write operation to the memory cell array; and a control circuit which controls a transfer of the data in the temporary storage area. The temporary storage area comprises: a first data bus; a second data bus; a clamp FET connected between the first data bus and the second data bus; a first precharge FET connected between the first data bus and first potential; a second precharge FET connected between the second data bus and the first potential; a first storage area connected to the first data bus; and a second storage area connected to the second data bus. The control circuit is configured to: generate a first precharge state in which the first data bus is precharged to the first potential and the second data bus is precharged to a second potential lower than the first potential, by turning the clamp FET and the first precharge FET on and turning the second precharge FET off, when the data is transferred from the second storage area to the first storage area; change the first data bus and the second data bus from the first precharge state to a first floating state by turning the first precharge FET off; output the data from the second storage area to the second data bus with the first floating state; and input the data from the first data bus with the first floating state to the first storage area. 
     1. COMPARATIVE EXAMPLE 
       FIGS. 1 and 2  show a nonvolatile semiconductor memory. 
     Memory cell array  11  contains memory cells capable of storing 1 bit (binary) or 2 or more bits (multi-valued). Memory cell array  11  includes, for example, (x+1) (x is a natural number equal to or more than 2) blocks Block- 0 , . . . Block-x. Each of these blocks Block- 0 , . . . Block-x includes, for example, memory cells (NAND string) connected in series. 
     S/A &amp; Latch area  12  is arranged at one end of memory cell array  11  in a first direction. S/A &amp; Latch area  12  includes, for example, g (g is a natural number equal to or more than 2) S/A &amp; Latch areas ( 1 ), ( 2 ), . . . arrayed in a second direction. These S/A &amp; Latch areas ( 1 ), ( 2 ), . . . are commonly connected to Internal I/O bus &lt;m:0&gt;. 
     Buffer area(s)  13  is (are) arranged at both ends or at one end of S/A &amp; Latch area  12  in the second direction. In the example shown in  FIG. 1 , Buffer areas  13  are arranged at both ends of S/A &amp; Latch area  12  in the second direction and in the example shown in  FIG. 2  Buffer area  13  is arranged at one end of S/A &amp; Latch area  12  in the second direction. 
     Control circuit  14  generates a control signal needed for data transfer by the bus precharge method. The control signal is supplied to S/A &amp; Latch areas ( 1 ), ( 2 ), . . . via Buffer area(s)  13 . In the present example, the control signal contains PRE, S/A&lt;n:0&gt;, DLB&lt;n:0&gt;, DLA&lt;n:0&gt;, and CHE&lt;n:0&gt;. 
     Interface area  15  is an interface between an inside and an outside of a nonvolatile semiconductor memory. For example, data I/O&lt;n:0&gt; is input/output via Interface area  15 . The data I/O&lt;n:0&gt; also moves between S/A &amp; Latch areas ( 1 ), ( 2 ), . . . and Interface area  15  via Internal I/O bus &lt;m:0&gt;. 
     When an address enable signal Add-en is, for example, “H(High)” (=ON), I/O&lt;n:0&gt; is regarded as an address and the address is input into the nonvolatile semiconductor memory. When a command enable signal Com-en is “H” (=ON), I/O&lt;n:0&gt; is regarded as a command and the command is input into the nonvolatile semiconductor memory. 
     &lt;n:0&gt; and &lt;m:0&gt; mean (n+1)-bit and (m+1)-bit data respectively n and m are each natural numbers. 
       FIG. 3  is a diagram showing S/A &amp; Latch areas ( 1 ), . . . (g) and a Buffer area. 
     S/A &amp; Latch areas ( 1 ), . . . (g) have mutually the same circuit configuration. 
     The following description will be provided by taking, for example, S/A &amp; Latch area (g) as an example. 
     S/A &amp; Latch area (g) includes a Sense amplifier area, Data latch B area, Data latch A area, and Cache memory area. The number of these areas changes depending on the number of bits made to be stored in one memory cell. When, for example, 2 bits are made to be stored in one memory cell, as shown in FIG. four areas, that is, the Sense amplifier area, Data latch B area, Data latch A area, and Cache memory area are provided in S/A &amp; Latch area (g). 
     S/A &amp; Latch area (g) includes Data buses&lt;m:0&gt; connected to respective Internal I/O buses&lt;m:0&gt;. Precharge switch PSW is connected to each of Data buses&lt;m:0&gt;. Precharge switch PSW is, for example, a P channel type PET (Field Effect Transistor) and supplies power supply potential Vdd to Data buses&lt;m:0&gt; as a precharge potential based on control signal PRE. 
     An example of the Sense amplifier area, Data latch B area, Data latch A area, and Cache memory area connected to each of Data buses&lt;m:0&gt; will be described. 
     For example, Data bus&lt;0&gt; is taken as an example. 
     (n+1) sense amplifiers S/A- 0 , . . . S/A-n in the Sense amplifier area are commonly connected to Data bus&lt;0&gt;. Sense amplifiers S/A- 0 , . . . S/A-n only need to have functions to temporarily hold and amplify data and the circuit configuration thereof is not specifically limited. Electrical connection of amplifiers S/A- 0 , . . . S/A-n to Data bus&lt;0&gt; is controlled by respective control signals S/A&lt;n:0&gt; from the Buffer area. 
     (n+1) data latches DLB- 0 , . . . DLB-n in the Data latch B area are commonly connected to Data bus&lt;0&gt;. Data latches DLB- 0 , . . . DLB-n only need to have a function to temporarily hold data and the circuit configuration thereof is not specifically limited. Electrical connection of data latches DLB- 0 , . . . DLB-n to Data bus&lt;0&gt; is controlled by respective control signals DLB&lt;n:0&gt; from the Buffer area. 
     (n+1) data latches DLA- 0 , . . . DLA-n in the Data latch A area are commonly connected to Data bus&lt;0&gt;. Data latches DLA- 0 , . . . DLA-n only need to have a function to temporarily hold data and the circuit configuration thereof is not specifically limited. Electrical connection of data latches DLA- 0 , . . . DLA-n to Data bus&lt;0&gt; is controlled by respective control signals DLA&lt;n:0&gt; from the Buffer area. 
     (n+1) cache memories CHE- 0 , . . . CHE-n in the Cache memory area are commonly connected to Data bus&lt;0&gt;. Cache memories CHE- 0 , . . . CHE-n only need to have a function to temporarily hold data and the circuit configuration thereof is not specifically limited. Electrical connection of cache memories CHE- 0 , . . . CHE-n to Data bus&lt;0&gt; is controlled by respective control signals CHE&lt;n:0&gt; from the Buffer area. 
       FIG. 4  shows an example of a memory connected to Data bus&lt;0&gt;. 
     The present example corresponds to n=3 in  FIG. 3 . 
     Sense amplifiers S/A- 0 , . . . S/A- 3  are connected to memory cells in the memory cell array via bit lines BL 0 , . . . BL 3  respectively. 
     When control signal PRE is “L(low)”, P channel type precharge switch PSW is turned on and Data bus&lt;0&gt; is precharged to power supply potential Vdd. When control signal PRE changes from “L (low)” to “H(high)”, P channel type precharge switch PSW is turned off and Data bus&lt;0&gt; is changed to a floating state at the precharge potential (power supply potential Vdd). 
       FIG. 5  shows an example of the sense amplifier. 
     For example, sense amplifier S/A- 0  in  FIG. 4  is taken as an example for the description that follows. 
     Sense amplifier S/A- 0  includes, for example, Storage area  21 , transfer transistor (for example, an N channel type FET) TG-a between Data bus&lt;0&gt; and Storage area  21 , and transfer transistor (for example, an N channel type FET) TG-b between bit line BL 0  and Storage area  21 . 
     On/Off of transfer transistor TG-a is controlled by control signal S/A&lt;0&gt; and On/Off of transfer transistor TG-b is controlled by control signal φ 0 . 
     Storage area  21  may be a static latch circuit like a flip-flop or a dynamic latch circuit like a capacitor. 
       FIG. 6  shows an example of Data latch B. 
     For example, data latch DLB- 0  in  FIG. 4  is taken as an example for the description that follows. 
     Data latch DLB- 0  includes, for example, Storage area  21  and transfer transistor (for example, an N channel type FET) TG-a between Data bus&lt;0&gt; and Storage area  21 . On/Off of transfer transistor TG-a is controlled by control signal DLB&lt;0&gt;. 
     Storage area  21  may be a static latch circuit like a flip-flop or a dynamic latch circuit like a capacitor. 
       FIG. 7  shows an example of Data latch A. 
     For example, data latch DLA- 0  in  FIG. 4  is taken as an example for the description that follows. 
     Data latch DLA- 0  includes, for example, Storage area  21  and transfer transistor (for example, an N channel type FET) TG-a between Data bus&lt;0&gt; and Storage area  21 . On/Off of transfer transistor TG-a is controlled by control signal DLA&lt;0&gt;. 
     Storage area  21  may be a static latch circuit like a flip-flop or a dynamic latch circuit like a capacitor. 
       FIG. 8  shows an example of the cache memory. 
     For example, cache memory CHE- 0  in  FIG. 4  is taken as an example for the description that follows. 
     Cache memory CHE- 0  includes, for example, Storage area  21  and transfer transistor (for example, an N channel type FET) TG-a between Data bus&lt;0&gt; and Storage area  21 . On/Off of transfer transistor TG-a is controlled by control signal CHE&lt;0&gt;. 
     Storage area  21  may be a static latch circuit like a flip-flop or a dynamic latch circuit like a capacitor. 
       FIG. 9  shows an example of the Storage area. 
     In the present example, Storage area  21  is a static latch circuit including two flip-flop connected inverters. 
       FIG. 10  shows a comparative example of the data transfer by the bus precharge method. 
     An example of transferring data from cache memory CHE- 0  to data latch DLA- 0  in S/A &amp; Latch area (g) will be described. 
     First, the precharge transistor is turned on by setting control signal PRE to “L” to precharge Data buses&lt;m:0&gt; to power supply potential Vdd (“H”). 
     Next, the transfer transistor in cache memory CHE- 0  as an output side (sending side) of data is turned on by setting control signal CHE&lt;0&gt; to “H” to electrically connect cache memory CHE- 0  to Data buses&lt;m:0&gt;. As a result, data in cache memory CHE- 0  is transferred to Data buses&lt;m:0&gt;. 
     When, for example, data latched in cache memory CHE- 0  is “H” (corresponding to, for example, “1”), Data buses&lt;m:0&gt; maintain power supply potential Vdd (“H”). When data latched in cache memory CHE- 0  is “L” (corresponding to, for example, “0”), by contrast, Data buses&lt;m:0&gt; are discharged and change from power supply potential Vdd (“H”) to ground potential Vss (“L”). 
     Next, the transfer transistor in data latch DLA- 0  as an input side (receiving side) of data is turned on by setting control signal DLA&lt;0&gt; to “H” to electrically connect data latch DLA- 0  to Data buses&lt;m:0&gt;. As a result, the data transferred from cache memory CHE- 0  to Data buses&lt;m:0&gt; is further transferred to data latch DLA- 0 . 
     When, for example, Data buses&lt;m:0&gt; maintain power supply potential Vdd (“H”), “H” (corresponding to, for example, “1”) is transferred to data latch DLA- 0 . When Data buses&lt;m:0&gt; change to ground potential Vss (“L”), “L” (corresponding to, for example, “0”) is transferred to data latch DLA- 0 . 
     In the above operation, cache memories, data latches, and sense amplifiers excluding cache memory CHE- 0  as the output side (sending side) of data and data latch DLA- 0  as the input side (receiving side) of data are not electrically connected to Data buses&lt;m:0&gt;. That is, control signals CHE&lt;n:1&gt;, DLA&lt;n:1&gt;, DLB&lt;n:0&gt;, S/A&lt;n:0&gt; always maintain “L”. 
     The same operation as the above operation is also performed by changing the cache memory as the output side of data and the data latch as the input side of data. 
     When, for example, as shown in  FIG. 3 , the Cache memory area includes (n+1) cache memories and Data latch A area includes (n+1) data latches, the same operation as the above operation is performed n times by successively setting one of control signals CHE&lt;n:0&gt; and one of control signals DLA&lt;n:0&gt; to “H” to perform the data transfer from cache memories CHE- 0 , . . . CHE-n to data latches DLA- 0 , . . . DLA-n. 
     While control signal DLA&lt;0&gt; is set to “H” after control signal CHE&lt;0&gt; being set to “H” in the above operation, as shown in a waveform chart in  FIG. 10 , both may be set to “H” in the same timing. However, the state of data latch DLA- 0  on the input side of data is undefined and thus, it is desirable to connect data latch DLA- 0  on the input side of data to Data buses&lt;m:0&gt; after cache memory CHE- 0  on the output side of data being connected to Data buses&lt;m:0&gt;. 
     In the data transfer as a comparative example described above, even if data is transferred from the Cache memory area to the Data latch A area adjacent to each other, parasitic capacitances arising in all Data buses&lt;m:0&gt; extending to the Data latch B area and Sense amplifier area by precharge switch PSW need to be charged. 
     2. Embodiment 
     In an embodiment described below, for example, one data bus is divided into two data buses in a nonvolatile semiconductor memory adopting the data transfer of the bus precharge method and a clamp transistor is connected between these two data buses. Accordingly, the parasitic capacitance arising in each data bus is reduced and the time needed for a precharge is shortened and also power consumption during data transfer is reduced. 
     However, power consumption cannot be reduced by simply connecting a clamp transistor between two data buses because if the clamp transistor is present between the output side (sending side) of data and the input side (receiving side) of data, two data buses need to be charged to precharge potential Vpre (for example, power supply potential Vdd) after all. 
     Thus, in an embodiment described below, control technology to change the precharge method of the data bus depending on the positions of the output side and the input side of data is proposed. 
     When, for example, no clamp transistor is present between the output side and the input side of data, lower power consumption is attempted to achieve by charging only one short data bus as a data transfer path. When a clamp transistor is present between the output side and the input side of data, the data bus on the input side of data is charged up to precharge potential Vpre and the data bus on the output side is charged up to (Vpre-Vth). That is, lower power consumption is attempted to achieve by reducing the amount of charge of the data bus on the output side of data. Vth is the threshold of the clamp transistor. 
     In the latter case, the data bus on the input side of data is in a waiting state (floating state) for quite a long time and thus, there is a possibility that erroneous data is transferred to the input side of data due to a leak arising in the data bus when charged up to (Vpre-Vth). Thus, as described above, the data bus on the input side of data is charged up to Vpre. In contrast, the data bus on the output side of data may be charged, as described above, up to (Vpre-Vth) because the data bus is immediately determined to be “H” or “L” by a sense amplifier or data latch outputting data. 
     Incidentally, the division number may be any number equal to or more than 2 and is not limited to 2. 
     (1) First Embodiment 
       FIG. 11  shows a first embodiment. The present example relates to movement of data between a cache memory CHE and a sense amplifier S/A. 
     Clamp transistor T is connected between Data bus&lt;k&gt;-a and Data bus&lt;k&gt;-b. Clamp transistor T is, for example, an N channel type FET and controls connection/disconnection between Data bus&lt;k&gt;-a and Data bus&lt;k&gt;-b. When, for example, control signal φc is “H(High)”, clamp transistor T is turned on and Data bus&lt;k&gt;-a and Data bus&lt;k&gt;-b are electrically connected. When control signal φc is “L (Low)”, clamp transistor T is turned off and Data bus&lt;k&gt;-a and Data bus&lt;k&gt;-b are electrically disconnected. 
     Cache memory CHE is connected to Data bus&lt;k&gt;-a and sense amplifier S/A is connected to Data bus&lt;k&gt;-b. 
     Precharge switch PSW 0  is connected to Data bus&lt;k&gt;-a to supply power supply potential Vdd to Data bus&lt;k&gt;-a during precharging. If, for example, precharge switch PSW 0  is a P channel type FET, precharge switch PSW 0  is turned on by control signal PRE 0  being changed to “L”. Therefore, power supply potential Vdd is transferred to Data bus&lt;k&gt;-a via precharge switch PSW 0 . 
     Also, precharge switch PSW 1  is connected to Data bus&lt;k&gt;-b to supply power supply potential Vdd to Data bus&lt;k&gt;-b during precharging. If, for example, precharge switch PSW 1  is a P channel type FET, precharge switch PSW 1  is turned on by control signal PRE 1  being changed to “L”. Therefore, power supply potential Vdd is transferred to Data bus&lt;k&gt;-b via precharge switch PSW 1 . 
     Features of operation in the first embodiment are as described below. 
     When data is transferred from cache memory CHE to sense amplifier S/A, Data bus&lt;k&gt;-b as the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 1  is set to “L” to turn precharge switch PSW 1  on. 
     Also, control signal φc is set to “H” to turn clamp transistor T on. 
     Further, control signal PRE 0  is set to “H” to turn precharge switch PSW 0  connected to Data bus&lt;k&gt;-a as the output side (sending side) of data off. That is, Data bus&lt;k&gt;-a as the output side of data is precharged via precharge switch PSW 1  and clamp transistor T. 
     In this case, Data bus&lt;k&gt;-a as the output side of data is precharged up to a value lower than power supply potential Vdd, that is, up to (Vdd-Vth). Vth is the threshold of clamp transistor T. However, as described above, Data bus&lt;k&gt;-a as the output side of data is immediately determined to be “H” or “L” by data output from cache memory CHE, causing no problem in data transfer. 
     Therefore, when data is transferred from cache memory CHE to sense amplifier S/A, lower power consumption can be attempted to achieve by reducing the amount of charge of Data bus&lt;k&gt;-a as the output side of data. 
     Similarly, when data is transferred from sense amplifier S/A to cache memory CHE, Data bus&lt;k&gt;-a as the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 0  is set to “L” to turn precharge switch PSW 0  on. 
     Also, control signal (φc is set to “H” to turn clamp transistor T on. 
     Further, control signal PRE 1  is set to “H” to turn precharge switch PSW 1  connected to Data bus&lt;k&gt;-b as the output side (sending side) of data off. That is, Data bus&lt;k&gt;-b as the output side of data is precharged via precharge switch PSW 0  and clamp transistor T. 
     In this case, Data bus&lt;k&gt;-b as the output side of data is precharged up to a value lower than power supply potential Vdd, that is, up to (Vdd-Vth). Vth is the threshold of clamp transistor T. However, as described above, Data bus&lt;k&gt;-b as the output side of data is immediately determined to be “H” or “L” by data output from sense amplifier S/A, causing no problem in data transfer. 
     Therefore, when data is transferred from sense amplifier S/A to cache memory CHE, lower power consumption can be attempted to achieve by reducing the amount of charge of Data bus&lt;k&gt;-b as the output side of data. 
       FIG. 12  shows a modification of the first embodiment. 
     When compared with the first embodiment, the modification is characterized in that data latch DLA is connected to Data bus&lt;k&gt;-a and data latch DLB is connected to Data bus&lt;k&gt;-b. Otherwise, the modification is the same as the first embodiment. Therefore, the same reference numerals are attached to the same elements in  FIG. 12  as those in  FIG. 11  to omit a detailed description thereof. 
     In the present example, cache memory CHE and data latch DLA are connected to Data bus&lt;k&gt;-a and data latch DLB and sense amplifier S/A are connected to Data bus&lt;k&gt;-b. Therefore, 12 combinations can be formed by selecting two memories from four memories via Data bus&lt;k&gt;-a/Data bus&lt;k&gt;-b. 
     Data Transfer Between Cache Memory CHF and Data Latch DLA (Two Combinations) 
     In this case, Data bus&lt;k&gt;-a as the output side (sending side) or the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 0  is set to “L” to turn precharge switch PSW 0  on. 
     Also, control signal (φc is set to “L” to turn clamp transistor T off. 
     Further, control signal PRE 1  is set to “H” to turn precharge switch PSW 1  connected to Data bus&lt;k&gt;-b independent of data transfer off. 
     Thus, when data transfer is performed between cache memory CHE and data latch DLA, that is, clamp transistor T is not present between the output side and the input side of data, lower power consumption can be achieved by charging only one short Data bus&lt;k&gt;-a used for data transfer. 
     Data Transfer Between Data Latch DLB and Sense Amplifier S/A (Two Combinations) 
     In this case, Data bus&lt;k&gt;-b as the output side (sending side) or the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 1  is set to “L” to turn precharge switch PSW 1  on. 
     Also, control signal (φc is set to “L” to turn clamp transistor T off. 
     Further, control signal PRE 0  is set to “H” to turn precharge switch PSW 0  connected to Data bus&lt;k&gt;-a independent of data transfer off. 
     Thus, when data transfer is performed between data latch DLB and sense amplifier S/A, that is, clamp transistor T is not present between the output side and the input side of data, lower power consumption can be achieved by charging only one short Data bus&lt;k&gt;-b used for data transfer. 
     Data Transfer (Two Combinations) from Cache Memory CHE to Data Latch DLB or Sense Amplifier S/A and Data Transfer (Two Combinations) from Data Latch DLA to Data Latch DLB or Sense Amplifier S/A 
     In these data transfers, Data bus&lt;k&gt;-b as the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 1  is set to “L” to turn precharge switch PSW 1  on. 
     Also, control signal φc is set to “H” to turn clamp transistor T on. 
     Further, control signal PRE 0  is set to “H” to turn precharge switch PSW 0  connected to Data bus&lt;k&gt;-a as the output side (sending side) of data off. That is, Data bus&lt;k&gt;-a as the output side of data is precharged via precharge switch PSW 1  and clamp transistor T. 
     In this case, Data bus&lt;k&gt;-a as the output side of data is precharged up to a value lower than power supply potential Vdd, that is, up to (Vdd-Vth). Vth is the threshold of clamp transistor T. However, Data bus&lt;k&gt;-a as the output side of data is immediately determined to be “H” or “L” by data output from cache memory CHE or data latch DLA, causing no problem in data transfer. 
     Therefore, when data is transferred from cache memory CHE or data latch DLA to data latch DLB or sense amplifier S/A, lower power consumption can be attempted to achieve by reducing the amount of charge of Data bus&lt;k&gt;-a as the output side of data. 
     Data Transfer (Two Combinations) from Sense Amplifier S/A to Data Latch DLA or Cache Memory CHE and Data Transfer (Two Combinations) from Data Latch DLB to Data Latch DLA or Cache Memory CHE. 
     In these data transfers, Data bus&lt;k&gt;-a as the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 0  is set to “L” to turn precharge switch PSW 0  on. 
     Also, control signal φc is set to “H” to turn clamp transistor T on. 
     Further, control signal PRE 1  is set to “H” to turn precharge switch PSW 1  connected to Data bus&lt;k&gt;-b as the output side (sending side) of data off. That is, Data bus&lt;k&gt;-b as the output side of data is precharged via precharge switch PSW 0  and clamp transistor T. 
     In this case, Data bus&lt;k&gt;-b as the output side of data is precharged up to a value lower than power supply potential Vdd, that is, up to (Vdd-Vth). Vth is the threshold of clamp transistor T. However, Data bus&lt;k&gt;-b as the output side of data is immediately determined to be “H” or “L” by data output from sense amplifier S/A or data latch DLB, causing no problem in data transfer. 
     Therefore, when data is transferred from sense amplifier S/A or data latch DLB to data latch DLA or cache memory CHE, lower power consumption can be attempted to achieve by reducing the amount of charge of Data bus&lt;k&gt;-b as the output side of data. 
     In the present example, the number of memories connected to Data bus&lt;k&gt;-a is two (cache memory CHE and data latch DLA) and the number of memories connected to Data bus&lt;k&gt;-b is also two (data latch DLB and sense amplifier S/A), but the present example is not limited to such an example. 
     For example, as shown in  FIG. 13 , (t+1) data latches DLA- 0 , . . . DLA-t may be connected to Data bus&lt;k&gt;-a by increasing the number of data latches connected to Data bus&lt;k&gt;-a or (s+1) data latches DLA- 0 , . . . DLA-s may be connected to Data bus&lt;k&gt;-b by increasing the number of data latches connected to Data bus&lt;k&gt;-b. t and s are both natural numbers. 
     In  FIGS. 11 to 13 , each of cache memory CHE, data latches DLA (DLA- 0 , . . . DLA-t), data latches DLB (DLB- 0 , . . . DLB-s), and sense amplifier S/A needs to contain one memory or more, but in general, more than one memory is contained. 
       FIG. 14  is a flow chart of a data transfer operation. 
     The flow chart is a generalization of the data transfer operation of the first embodiment and the modification thereof described above and is executed by, for example, control circuit  14  in  FIG. 1  or  FIG. 2 . 
     First, the output side (sending side) and the input side (receiving side) of data are checked (step ST 1 ). Also, whether a clamp switch (clamp transistor) locates between the output side and the input side of data is checked (step ST 2 ). 
     If the clamp switch locates between the output side and the input side of data, the clamp switch is turned on and the precharge switch on the input side of data is turned on (step ST 3 ). Then, data is transferred from a Storage area on the output side of data to a Storage area on the input side of data (step ST 4 ). 
     If the clamp switch does not locate between the output side and the input side of data, the clamp switch is turned off and the precharge switch as the output side or the input side of data is turned on (step ST 5 ). 
     Then, data is transferred from a Storage area on the output side of data to a Storage area on the input side of data (step ST 4 ). 
     Next, an application example of the first embodiment and the modification thereof will be described. 
     Here, a case when the data transfer operation in the first embodiment and the modification thereof is applied to the nonvolatile semiconductor memory shown in  FIGS. 1 and 2  will be described. 
       FIG. 15  shows S/A &amp; Latch areas ( 1 ), . . . (g) and a Buffer area. 
     S/A &amp; Latch areas ( 1 ), . . . (g) have mutually the same circuit configuration. 
     The following description will be provided by taking, for example, S/A &amp; Latch area (g) as an example. 
     S/A &amp; Latch area (g) includes a Sense amplifier area, Data latch B area, Data latch A area, and Cache memory area. The number of these areas changes depending on the number of bits made to be stored in one memory cell. When, for example, 2 bits are made to be stored in 1 memory cell, as shown in  FIG. 4  areas, that is, the Sense amplifier area, Data latch B area, Data latch A area, and Cache memory area are provided in S/A &amp; Latch area (g). 
     S/A &amp; Latch area (g) includes Data buses&lt;m:0&gt; connected to respective Internal I/O buses&lt;m:0&gt;. Precharge switch PSW 0  is connected to each of Data buses&lt;m:0&gt;-a and precharge switch PSW 1  is connected to each of Data buses&lt;m:0&gt;-b. 
     Clamp transistor T is connected between Data buses&lt;m:0&gt;-a and Data buses&lt;m:0&gt;-b. Clamp transistor T is, for example, an N channel type FET and controls connection/disconnection between Data buses&lt;m:0&gt;-a and Data buses&lt;m:0&gt;-b based on control signal φc. 
     Precharge switches PSW 0 , PSW 1  are each, for example, P channel types FETs. Precharge switch PSW 0  supplies power supply potential Vdd to Data buses&lt;m:0&gt;-a as a precharge potential based on control signal PRE 0  and precharge switch PSW 1  supplies power supply potential Vdd to Data buses&lt;m:0&gt;-b as a precharge potential based on control signal PRE 1 . 
     An example of the Cache memory area and Data latch A area connected to Data buses&lt;m:0&gt;-a and the Sense amplifier area and Data latch B area connected to Data buses&lt;m:0&gt;-b will be described. 
     For example, Data bus&lt;0&gt; is taken as an example. 
     (n+1) sense amplifiers S/A- 0 , . . . S/A-n in the Sense amplifier area are commonly connected to Data bus&lt;0&gt;-b. Sense amplifiers S/A- 0 , . . . S/A-n only need to have functions to temporarily hold and amplify data and the circuit configuration thereof is not specifically limited. Electrical connection of amplifiers S/A- 0 , . . . S/A-n to Data bus&lt;0&gt;-b is controlled by respective control signals S/A&lt;n:0&gt; from the Buffer area. 
     (n+1) data latches DLB- 0 , . . . DLB-n in the Data latch B area are commonly connected to Data bus&lt;0&gt;-b. Data latches DLB- 0 , . . . DLB-n only need to have a function to temporarily hold data and the circuit configuration thereof is not specifically limited. Electrical connection of data latches DLB- 0 , . . . DLB-n to Data bus&lt;0&gt;-b is controlled by respective control signals DLB&lt;n:0&gt; from the Buffer area. 
     (n+1) data latches DLA- 0 , . . . DLA-n in the Data latch A area are commonly connected to Data bus&lt;0&gt;-a. Data latches DLA- 0 , . . . DLA-n only need to have a function to temporarily hold data and the circuit configuration thereof is not specifically limited. Electrical connection of data latches DLA- 0 , . . . DLA-n to Data bus&lt;0&gt;-a is controlled by respective control signals DLA&lt;n:0&gt; from the Buffer area. 
     (n+1) cache memories CHE- 0 , . . . CHE-n in the Cache memory area are commonly connected to Data bus&lt;0&gt;-a. Cache memories CHE- 0 , . . . CHE-n only need to have a function to temporarily hold data and the circuit configuration thereof is not specifically limited. Electrical connection of cache memories CHE- 0 , . . . CHE-n to Data bus&lt;0&gt;-a is controlled by respective control signals CHE&lt;n:0&gt; from the Buffer area. 
       FIG. 16  shows an example of the memory connected to Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b. 
     The present example corresponds to n=3 in  FIG. 15 . 
     Sense amplifiers S/A- 0 , . . . S/A- 3  are connected to memory cells in the memory cell array via bit lines BL 0 , . . . BL 3  respectively. 
     When control signal PRE 0  is “L(low)”, P channel type precharge switch PSW 0  is turned on and Data bus&lt;0&gt;-a is precharged to power supply potential Vdd. When clamp transistor T is turned on and precharge switch PSW 1  is turned off, Data bus&lt;0&gt;-b is precharged to (Vdd-Vth). 
     When control signal PRE 0  changes from “L (low)” to “H(high)”, P channel type precharge switch PSW 0  is turned off. Thus, Data bus&lt;0&gt;-a changes to a floating state at the precharge potential (power supply potential Vdd) and Data bus&lt;0&gt;-b changes to a floating state at (Vdd-Vth). 
     When control signal PRE 1  is “L(low)”, P channel type precharge switch PSW 1  is turned on and Data bus&lt;0&gt;-b is precharged to power supply potential Vdd. When clamp transistor T is turned on and precharge switch PSW 0  is turned off, Data bus&lt;0&gt;-a is precharged to (Vdd-Vth). 
     When control signal PRE 1  changes from “L (low)” to “H(high)”, P channel type precharge switch PSW 1  is turned off. Thus, Data bus&lt;0&gt;-b changes to a floating state at the precharge potential (power supply potential Vdd) and Data bus&lt;0&gt;-a changes to a floating state at (Vdd-Vth). 
     As an example of the sense amplifier, Data latch A, Data latch B, and cache memory, circuits shown in  FIGS. 5 to 8  can be cited. As Storage area  21  shown in  FIGS. 5 to 8 , for example, a static latch circuit shown in  FIG. 9  can be shown. 
       FIGS. 17 to 20  show a data transfer example of the nonvolatile semiconductor memory in  FIG. 15 . 
     Data Transfer from Cache Memory CHE- 0  to Sense Amplifier S/A- 0  ( FIG. 17 ) 
     First, control signal PRE 1  is set to “L” and control signal φc is set to “H”. Control signal PRE 0  is always “H”. Accordingly, Data bus&lt;0&gt;-b is precharged to power supply potential Vdd (“H”) and Data bus&lt;0&gt;-a is precharged to (Vdd-Vth). Then, control signal PRE 1  is set to “H” to change Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b to a floating state. 
     Next, the transfer transistor in cache memory CHE- 0  as the output side (sending side) of data is turned on by setting control signal CHE&lt;0&gt; to “H” to output data in cache memory CHE- 0  to Data bus&lt;0&gt;-a. 
     When, for example, data latched in cache memory CHE- 0  is “H” (corresponding to, for example, “1”), Data bus&lt;0&gt;-a maintains (Vdd-Vth), that is, “H”. At this point, Data bus&lt;0&gt;-b maintains power supply potential Vdd, that is, “H”. 
     When data latched in cache memory CHE- 0  is “L” (corresponding to, for example, “0”), by contrast, Data bus&lt;0&gt;-a is discharged to change from (Vdd-Vth) to ground potential Vss, that is, “L”. At this point, Data bus&lt;0&gt;-b also changes from power supply potential Vdd to ground potential Vss. 
     Next, the transfer transistor in sense amplifier S/A- 0  as the input side (receiving side) of data is turned on by setting control signal S/A&lt;0&gt; to “H” to electrically connect sense amplifier S/A- 0  to Data bus&lt;0&gt;-b. As a result, data output from cache memory CHE- 0  to Data bus&lt;0&gt;-a is further input into sense amplifier S/A- 0  via Data bus&lt;0&gt;-b. 
     When, for example, Data bus&lt;0&gt;-b maintains power supply potential Vdd (“H”), “H” (corresponding to, for example, “1”) is transferred to sense amplifier S/A- 0 . When Data bus&lt;0&gt;-b change to ground potential Vss (“L”), “L” (corresponding to, for example, “0”) is transferred to sense amplifier S/A- 0 . 
     Then, control signals (φc, CHE&lt;0&gt;, S/A&lt;0&gt; are set to “L”. 
     In the above operation, memories other than cache memory CHE- 0  as the output side (sending side) of data and sense amplifier S/A- 0  as the input side (receiving side) of data are not electrically connected to Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b. That is, control signals CHE&lt;n:1&gt;, S/A&lt;n:1&gt;, DLA&lt;n:0&gt;, DLB&lt;n:0&gt; always maintain “L”. 
     The same operation as the above operation is also performed by changing the cache memory as the output side of data and the sense amplifier as the input side of data. 
     When, for example, as shown in  FIG. 15 , the Cache memory area includes (n+1) cache memories and the Sense amplifier area includes (n+1) sense amplifiers, the same operation as the above operation is performed (n+1) times by successively setting one of control signals CHE&lt;n:0&gt; and one of control signals S/A&lt;n:0&gt; to “H” to perform the data transfer from cache memories CHE- 0 , . . . CHE-n to sense amplifiers S/A- 0 , . . . S/A-n. 
     While control signal S/A&lt;0&gt; is set to “H” after control signal CHE&lt;0&gt; being set to “H” in the above operation, as shown in a waveform chart in  FIG. 17 , both may be set to “H” in the same timing. However, the state of sense amplifier S/A- 0  on the input side of data is undefined and thus, it is desirable to connect sense amplifier S/A- 0  on the input side of data to Data bus&lt;0&gt;-b after cache memory CHE- 0  on the output side of data being connected to Data bus&lt;0&gt;-a. 
     Data Transfer from Cache Memory CHE- 0  to Data Latch DLA- 0  ( FIG. 18 ) 
     First, control signal PRE 0  is set to “L” to precharge Data bus&lt;0&gt;-a to power supply potential Vdd (“H”). Control signal PRE 1  is always “H” and control signal (φc is always “L”. That is, Data bus&lt;0&gt;-b is not used for this data transfer. Then, control signal PRE 0  is set to “H” to change Data bus&lt;0&gt;-a to a floating state. 
     Next, the transfer transistor in cache memory CHE- 0  as the output side (sending side) of data is turned on by setting control signal CHE&lt;0&gt; to “H” to output data in cache memory CHE- 0  to Data bus&lt;0&gt;-a. 
     When, for example, data latched in cache memory CHE- 0  is “H” (corresponding to, for example, “1”), Data bus&lt;0&gt;-a maintains power supply potential Vdd, that is, “H”. When data latched in cache memory CHE- 0  is “L” (corresponding to, for example, “0”), by contrast, Data bus&lt;0&gt;-a is discharged to change from power supply potential Vdd to ground potential Vss, that is, “L”. 
     Next, the transfer transistor in data latch DLA- 0  as the input side (receiving side) of data is turned on by setting control signal DLA&lt;0&gt; to “H” to electrically connect data latch DLA- 0  to Data bus&lt;0&gt;-a. As a result, data is transferred from cache memory CHE- 0  to data latch DLA- 0  via Data bus&lt;0&gt;-a. 
     When, for example, Data bus&lt;0&gt;-a maintains power supply potential Vdd (“H”), “H” (corresponding to, for example, “1”) is transferred to data latch DLA- 0 . When Data bus&lt;0&gt;-a changes to ground potential Vss (“L”), “L” (corresponding to, for example, “0”) is transferred to data latch DLA- 0 . 
     Then, control signals CHE&lt;0&gt;, DLA&lt;0&gt; are set to “L”. 
     In the above operation, memories other than cache memory CHE- 0  as the output side (sending side) of data and data latch DLA- 0  as the input side (receiving side) of data are not electrically connected to Data bus&lt;0&gt;-a. That is, control signals CHE&lt;n:1&gt;, DLA&lt;n:1&gt;, DLB&lt;n:0&gt;, S/A&lt;n:0&gt; always maintain “L”. 
     The same operation as the above operation is also performed by changing the cache memory as the output side of data and the data latch as the input side of data. 
     When, for example, as shown in  FIG. 15 , the Cache memory area includes (n+1) cache memories and Data latch A area includes (n+1) data latches, the same operation as the above operation is performed (n+1) times by successively setting one of control signals CHE&lt;n:0&gt; and one of control signals DLA&lt;n:0&gt; to “H” to perform the data transfer from cache memories CHE- 0 , . . . CHE-n to data latches DLA- 0 , . . . DLA-n. 
     While control signal DLA&lt;0&gt; is set to “H” after control signal CHE&lt;0&gt; being set to “H” in the above operation, as shown in a waveform chart in  FIG. 18 , both may be set to “H” in the same timing. However, the state of data latch DLA- 0  on the input side of data is undefined and thus, it is desirable to connect data latch DLA- 0  on the input side of data to Data bus&lt;0&gt;-a after cache memory CHE- 0  on the output side of data being connected to Data bus&lt;0&gt;-a. 
     Data Transfer from Sense Amplifier S/A- 0  to Cache Memory CHE- 0  ( FIG. 19 ) 
     First, control signal PRE 0  is set to “L” and control signal φc is set to “H”. Control signal PRE 1  is always “H”. Accordingly, Data bus&lt;0&gt;-a is precharged to power supply potential Vdd (“H”) and Data bus&lt;0&gt;-b is precharged to (Vdd-Vth). Then, control signal PRE 0  is set to “H” to change Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b to a floating state. 
     Next, the transfer transistor in sense amplifier S/A- 0  as the output side (sending side) of data is turned on by setting control signal S/A&lt;0&gt; to “H” to output data of sense amplifier S/A- 0  to Data bus&lt;0&gt;-b. 
     When, for example, data latched in sense amplifier S/A- 0  is “H” (corresponding to, for example, “1”), Data bus&lt;0&gt;-b maintains (Vdd-Vth), that is, “H”. At this point, Data bus&lt;0&gt;-a maintains power supply potential Vdd, that is, “H”. 
     When data latched in sense amplifier S/A- 0  is “L” (corresponding to, for example, “0”), by contrast, Data bus&lt;0&gt;-b is discharged to change from (Vdd-Vth) to ground potential Vss, that is, “L”. At this point, Data bus&lt;0&gt;-a also changes from power supply potential Vdd to ground potential Vss. 
     Next, the transfer transistor in cache memory CHE- 0  as the input side (receiving side) of data is turned on by setting control signal CHE&lt;0&gt; to “H” to electrically connect cache memory CHE- 0  to Data bus&lt;0&gt;-a. As a result, the data output from sense amplifier S/A- 0  to Data bus&lt;0&gt;-b is further input into cache memory CHE- 0  via Data bus&lt;0&gt;-a. 
     When, for example, Data bus&lt;0&gt;-a maintains power supply potential Vdd (“H”), “H” (corresponding to, for example, “1”) is transferred to cache memory CHE- 0 . When Data bus&lt;0&gt;-a changes to ground potential Vss (“L”), “L” (corresponding to, for example, “0”) is transferred to cache memory CHE- 0 . 
     Then, control signals φc, S/A&lt;O&gt;, CHE&lt;O&gt; are set to “L”. 
     In the above operation, memories other than sense amplifier S/A- 0  as the output side (sending side) of data and cache memory CHE- 0  as the input side (receiving side) of data are not electrically connected to Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b. That is, control signals S/A&lt;n:1&gt;, CHE&lt;n:1&gt;, DLA&lt;n:0&gt;, DLB&lt;n:0&gt; always maintain “L”. 
     The same operation as the above operation is also performed by changing the sense amplifier as the output side of data and the cache memory as the input side of data. 
     When, for example, as shown in  FIG. 15 , the Sense amplifier area includes (n+1) sense amplifiers and the Cache memory area includes (n+1) cache memories, the same operation as the above operation is performed (n+1) times by successively setting one of control signals S/A&lt;n:0&gt; and one of control signals CHE&lt;n:0&gt; to “H” to perform the data transfer from sense amplifiers S/A- 0 , . . . S/A-n to cache memories CHE- 0 , . . . CHE-n. 
     While control signal CHE&lt;0&gt; is set to “H” after control signal S/A&lt;0&gt; being set to “H” in the above operation, as shown in a waveform chart in  FIG. 19 , both may be set to “H” in the same timing. However, the state of cache memory CHE- 0  on the input side of data is undefined and thus, it is desirable to connect cache memory CHE- 0  on the input side of data to Data bus&lt;0&gt;-a after sense amplifier S/A- 0  on the output side of data being connected to Data bus&lt;0&gt;-b. 
     Data Transfer from Sense Amplifier S/A- 0  to Data Latch DLB- 0  ( FIG. 20 ) 
     First, control signal PRE 1  is set to “L” to precharge Data bus&lt;0&gt;-b to power supply potential Vdd (“H”). Control signal PRE 0  is always “H” and control signal φc is always “L”. That is, Data bus&lt;0&gt;-a is not used for this data transfer. Then, control signal PRE 1  is set to “H” to change Data bus&lt;0&gt;-b to a floating state. 
     Next, the transfer transistor in sense amplifier S/A- 0  as the output side (sending side) of data is turned on by setting control signal S/A&lt;0&gt; to “H” to output data of sense amplifier S/A- 0  to Data bus&lt;0&gt;-b. 
     When, for example, data latched in sense amplifier S/A- 0  is “H” (corresponding to, for example, “1”), Data bus&lt;0&gt;-b maintains power supply potential Vdd, that is, “H”. When data latched in sense amplifier S/A- 0  is “L” (corresponding to, for example, “0”), by contrast, Data bus&lt;0&gt;-b is discharged to change from power supply potential Vdd to ground potential Vss, that is, “L”. 
     Next, the transfer transistor in data latch DLB- 0  as the input side (receiving side) of data is turned on by setting control signal DLB&lt;0&gt; to “H” to electrically connect data latch DLB- 0  to Data bus&lt;0&gt;-b. As a result, data is transferred from sense amplifier S/A- 0  to data latch DLB- 0  via Data bus&lt;0&gt;-b. 
     When, for example, Data bus&lt;0&gt;-b maintains power supply potential Vdd (“H”), “H” (corresponding to, for example, “1”) is transferred to data latch DLB- 0 . When Data bus&lt;0&gt;-b changes to ground potential Vss (“L”), “L” (corresponding to, for example, “0”) is transferred to data latch DLB- 0 . 
     Then, control signals S/A&lt;0&gt;, DLB&lt;0&gt; are set to “L”. 
     In the above operation, memories other than sense amplifier S/A- 0  as the output side (sending side) of data and data latch DLB- 0  as the input side (receiving side) of data are not electrically connected to Data bus&lt;0&gt;-b. That is, control signals S/A&lt;n:1&gt;, DLB&lt;n:1&gt;, DLA&lt;n:0&gt;, CHE&lt;n:0&gt; always maintain “L”. 
     The same operation as the above operation is also performed by changing the sense amplifier as the output side of data and the data latch as the input side of data. 
     When, for example, as shown in  FIG. 15 , the Sense amplifier area includes (n+1) sense amplifiers and the Data latch B area includes (n+1) data latches, the same operation as the above operation is performed (n+1) times by successively setting one of control signals S/A&lt;n:0&gt; and one of control signals DLB&lt;n:0&gt; to “H” to perform the data transfer from sense amplifiers S/A- 0 , . . . S/A-n to data latches DLB- 0 , . . . DLB-n. 
     While control signal DLB&lt;0&gt; is set to “H” after control signal S/A&lt;0&gt; being set to “H” in the above operation, as shown in a waveform chart in  FIG. 20 , both may be set to “H” in the same timing. However, the state of data latch DLB- 0  on the input side of data is undefined and thus, it is desirable to connect data latch DLB- 0  on the input side of data to Data bus&lt;0&gt;-b after sense amplifier S/A- 0  on the output side of data being connected to Data bus&lt;0&gt;-b. 
     According to the first embodiment and the modification thereof, as described above, a nonvolatile semiconductor memory performing the data transfer by the bus precharge method can realize a robust system consuming less power by dividing the data bus into two buses and charging the data bus on the output side of data up to (Vdd-Vth) and the data bus on the input side of data up to Vdd. 
     Because the data bus on the output side of data is charged from the data bus on the input side of data via a clamp transistor, a control signal to control charging of the data bus on the output side of data can be omitted. As a result, the number of control signals to control the data transfer can be reduced. 
     When no clamp transistor is present between the output side and the input side of data, power consumption can further be reduced because only one of two data buses needs to be charged. In addition, the data bus on the output side of data is charged only up to (Vdd-Vth) and thus, for example, the discharge rate (data transfer rate) when the data bus is discharged (when “L” is transferred) can be increased. 
     (2) Second Embodiment 
     In the first embodiment described above, the data bus on the output side of data is immediately determined to be “H” or “L” by a storage area (such as a sense amplifier, data latch, or cache memory) and so precharged only up to (Vpre-Vth). This is desirable in terms of power consumption, but is not desirable in terms of a fast precharge, because a relatively long time is needed for charging via a precharge switch and a clamp switch. 
     Thus, the second embodiment proposes a technology to precharge the data bus on the output side of data up to (Vpre-Vth) at high speed. 
       FIG. 21  shows a second embodiment. 
     The present example relates to movement of data between a cache memory CHE and a sense amplifier S/A. 
     Clamp transistor T is connected between Data bus&lt;k&gt;-a and Data bus&lt;k&gt;-b. Clamp transistor T is, for example, an N channel type FET and controls connection/disconnection between Data bus&lt;k&gt;-a and Data bus&lt;k&gt;-b. When, for example, control signal φc is “H(High)”, clamp transistor T is turned on and Data bus&lt;k&gt;-a and Data bus&lt;k&gt;-b are electrically connected. When control signal φc is “L (Low)”, clamp transistor T is turned off and Data bus&lt;k&gt;-a and Data bus&lt;k&gt;-b are electrically disconnected. 
     Cache memory CHE is connected to Data bus&lt;k&gt;-a and sense amplifier S/A is connected to Data bus&lt;k&gt;-b. 
     Precharge switches PSW 0   a , PSW 0   b  are connected to Data bus&lt;k&gt;-a. 
     Precharge switch PSW 0   a  supplies power supply potential Vdd to Data bus&lt;k&gt;-a during precharging. If, for example, precharge switch PSW 0   a  is a P channel type FET, precharge switch PSW 0   a  is turned on by control signal PRE 0   a  being changed to “L”. Therefore, power supply potential Vdd is transferred to Data bus&lt;k&gt;-a via precharge switch PSW 0   a.    
     Precharge switch PSW 0   b  supplies (Vdd-Vth) to Data bus&lt;k&gt;-a during precharging. If, for example, precharge switch PSW 0   b  is an N channel type FET, precharge switch PSW 0   b  is turned on by control signal PRE 0   b  being changed to “H”. Therefore, (Vdd-Vth) is transferred to Data bus&lt;k&gt;-a via precharge switch PSW 0   b.    
     Vth is the threshold of precharge switch PSW 0   b . The threshold of precharge switch PSW 0   b  is desirably equal to the threshold of clamp transistor T (common threshold). 
     Precharge switches PSW 1   a , PSW 1   b  are connected to Data bus&lt;k&gt;-b. 
     Precharge switch PSW 1   a  supplies power supply potential Vdd to Data bus&lt;k&gt;-b during precharging. If, for example, precharge switch PSW 1   a  is a P channel type FET, precharge switch PSW 1   a  is turned on by control signal PRE 1   a  being changed to “L”. Therefore, power supply potential Vdd is transferred to Data bus&lt;k&gt;-b via precharge switch PSW 1   a.    
     Precharge switch PSW 1   b  supplies (Vdd-Vth) to Data bus&lt;k&gt;-b during precharging. If, for example, precharge switch PSW 1   b  is an N channel type FET, precharge switch PSW 1   b  is turned on by control signal PRE 1   b  being changed to “H”. Therefore, (Vdd-Vth) is transferred to Data bus&lt;k&gt;-b via precharge switch PSW 1   b.    
     Vth is the threshold of precharge switch PSW 1   b . The threshold of precharge switch PSW 1   b  is desirably equal to the threshold of clamp transistor T (common threshold). Also, the threshold of precharge switch PSW 0   b  is desirably equal to the threshold of precharge switch PSW 1   b.    
     Features of operation in the second embodiment are as described below. 
     When data is transferred from cache memory CHE to sense amplifier S/A, Data bus&lt;k&gt;-b as the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 1   a  is set to “L” to turn precharge switch PSW 1   a  on. At this point, precharge switch PSW 1   b  may be On or Off. 
     Also, control signal (φc is set to “H” to turn clamp transistor T on. 
     Further, control signal PRE 0   a  is set to “H” to turn precharge switch PSW 0   a  connected to Data bus&lt;k&gt;-a as the output side (sending side) of data off. In parallel therewith, precharge switch PSW 0   b  is turned on. That is, Data bus&lt;k&gt;-a as the output side of data is precharged via a first path passing through precharge switch PSW 1   a  and clamp transistor T and a second path passing through precharge switch PSW 0   b.    
     Therefore, Data bus&lt;k&gt;-a as the output side of data is precharged equally as fast as Data bus&lt;k&gt;-b as the input side of data is precharged. 
     Data bus&lt;k&gt;-a as the output side of data is precharged up to a value lower than power supply potential Vdd, that is, up to (Vdd-Vth). Vth is the threshold of clamp transistor T and also the threshold of precharge switch PSW 0   b.    
     However, as described above, Data bus&lt;k&gt;-a as the output side of data is immediately determined to be “H” or “L” by data output from cache memory CHE, causing no problem in data transfer. 
     Therefore, when data is transferred from cache memory CHE to sense amplifier S/A, lower power consumption can be attempted to achieve by reducing the amount of charge of Data bus&lt;k&gt;-a as the output side of data. Also, faster precharging can be achieved by precharging Data bus&lt;k&gt;-a through precharge switch PSW 0   b.    
     Similarly, when data is transferred from sense amplifier S/A to cache memory CHE, Data bus&lt;k&gt;-a as the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 0  is set to “L” to turn precharge switch PSW 0   a  on. At this point, precharge switch PSW 0   b  may be On or Off. 
     Also, control signal φc is set to “H” to turn clamp transistor T on. 
     Further, control signal PRE 1   a  is set to “H” to turn precharge switch PSW 1   a  connected to Data bus&lt;k&gt;-b as the output side (sending side) of data off. In parallel therewith, precharge switch PSW 1   b  is turned on. That is, Data bus&lt;k&gt;-b as the output side of data is precharged via a first path passing through precharge switch PSW 0   a  and clamp transistor T and a second path passing through precharge switch PSW 1   b.    
     Therefore, Data bus&lt;k&gt;-b as the output side of data is precharged equally as fast as Data bus&lt;k&gt;-a as the input side of data is precharged. 
     Data bus&lt;k&gt;-b as the output side of data is precharged up to a value lower than power supply potential Vdd, that is, up to (Vdd-Vth). Vth is the threshold of clamp transistor T and also the threshold of precharge switch PSW 1   b.    
     However, as described above, Data bus&lt;k&gt;-b as the output side of data is immediately determined to be “H” or “L” by data output from sense amplifier S/A, causing no problem in data transfer. 
     Therefore, when data is transferred from sense amplifier S/A to cache memory CHE, lower power consumption can be attempted to achieve by reducing the amount of charge of Data bus&lt;k&gt;-b as the output side of data. Also, faster precharging can be achieved by precharging Data bus&lt;k&gt;-b through precharge switch PSW 1   b.    
       FIG. 22  shows a modification of the second embodiment. 
     When compared with the second embodiment, the modification is characterized in that data latch DLA is connected to Data bus&lt;k&gt;-a and data latch DLB is connected to Data bus&lt;k&gt;-b. Otherwise, the modification is the same as the second embodiment. Therefore, the same reference numerals are attached to the same elements in  FIG. 22  as those in  FIG. 21  to omit a detailed description thereof. 
     In the present example, cache memory CHE and data latch DLA are connected to Data bus&lt;k&gt;-a and data latch DLB and sense amplifier S/A are connected to Data bus&lt;k&gt;-b. Therefore, 12 combinations can be formed by selecting two memories from four memories via Data bus&lt;k&gt;-a/Data bus&lt;k&gt;-b. 
     Data Transfer Between Cache Memory CHE and Data Latch DLA (Two Combinations) 
     In this case, Data bus&lt;k&gt;-a as the output side (sending side) or the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 0   a  is set to “L” to turn precharge switch PSW 0   a  on. 
     Also, control signal φc is set to “L” to turn clamp transistor T off. 
     Further, control signal PRE 1   a  is set to “H” and control signals PRE 0   b , PRE 1   b  are set to “L” to turn precharge switches PSW 1   a , PSW 0   b , PSW 1   b  independent of data transfer off. 
     Thus, when data transfer is performed between cache memory CHE and data latch DLA, that is, clamp transistor T is not present between the output side of data and the input side of data, lower power consumption can be achieved by charging only one short Data bus&lt;k&gt;-a used for data transfer. 
     Data Transfer Between Data Latch DLB and Sense Amplifier S/A (Two Combinations) 
     In this case, Data bus&lt;k&gt;-b as the output side (sending side) or the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 1   a  is set to “L” to turn precharge switch PSW 1   a  on. 
     Also, control signal φc is set to “L” to turn clamp transistor T off. 
     Further, control signal PRE 0   a  is set to “H” and control signals PRE 0   b , PRE 1   b  are set to “L” to turn precharge switches PSW 0   a , PSW 0   b , PSW 1   b  independent of data transfer off. 
     Thus, when data transfer is performed between data latch DLB and sense amplifier S/A, that is, clamp transistor T is not present between the output side and the input side of data, lower power consumption can be achieved by charging only one short Data bus&lt;k&gt;-b used for data transfer. 
     Data Transfer (Two Combinations) from Cache Memory CHE to Data Latch DLB or Sense Amplifier S/A and Data Transfer (Two Combinations) from Data Latch DLA to Data Latch DLB or Sense Amplifier S/A 
     In these data transfers, Data bus&lt;k&gt;-b as the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 1   a  is set to “L” to turn precharge switch PSW 1   a  on. At this point, precharge switch PSW 1   b  may be On or Off. 
     Also, control signal φc is set to “H” to turn clamp transistor T on. 
     Further, control signal PRE 0   a  is set to “H” to turn precharge switch PSW 0   a  connected to Data bus&lt;k&gt;-a as the output side (sending side) of data off. That is, control signal PRE 0   b  is set to “H” to turn precharge switch PSW 0   b  on. 
     That is, Data bus&lt;k&gt;-a as the output side of data is precharged via a first path passing through precharge switch PSW 1   a  and clamp transistor T and a second path passing through precharge switch PSW 0   b.    
     Therefore, Data bus&lt;k&gt;-a as the output side of data is precharged equally as fast as Data bus&lt;k&gt;-b as the input side of data is precharged. 
     Data bus&lt;k&gt;-a as the output side of data is precharged up to a value lower than power supply potential Vdd, that is, up to (Vdd-Vth). Vth is the threshold of clamp transistor T and also the threshold of precharge switch PSW 0   b.    
     However, Data bus&lt;k&gt;-a as the output side of data is immediately determined to be “H” or “L” by data output from cache memory CHE or data latch DLA, causing no problem in data transfer. 
     Therefore, when data is transferred from cache memory CHE or data latch DLA to data latch DLB or sense amplifier S/A, lower power consumption can be attempted to achieve by reducing the amount of charge of Data bus&lt;k&gt;-a as the output side of data. Also, faster precharging can be achieved by precharging Data bus&lt;k&gt;-a through precharge switch PSW 0   b.    
     Data Transfer (Two Combinations) from Sense Amplifier S/A to Data Latch DLA or Cache Memory CHE and Data Transfer (Two Combinations) from Data Latch DLB to Data Latch DLA or Cache Memory CHE 
     In these data transfers, Data bus&lt;k&gt;-a as the input side (receiving side) of data is precharged up to power supply potential Vdd. That is, control signal PRE 0   a  is set to “L” to turn precharge switch PSW 0   a  on. At this point, precharge switch PSW 0   b  may be On or Off. 
     Also, control signal φc is set to “H” to turn clamp transistor T on. 
     Further, control signal PRE 1   a  is set to “H” to turn precharge switch PSW 1   a  connected to Data bus&lt;k&gt;-b as the output side (sending side) of data off. That is, control signal PRE 1   b  is set to “H” to turn precharge switch PSW 1   b  on. 
     That is, Data bus&lt;k&gt;-b as the output side of data is precharged via a first path passing through precharge switch PSW 0   a  and clamp transistor T and a second path passing through precharge switch PSW 1   b.    
     Therefore, Data bus&lt;k&gt;-b as the output side of data is precharged equally as fast as Data bus&lt;k&gt;-a as the input side of data is precharged. 
     Data bus&lt;k&gt;-b as the output side of data is precharged up to a value lower than power supply potential Vdd, that is, up to (Vdd-Vth). Vth is the threshold of clamp transistor T and also the threshold of precharge switch PSW 1   b.    
     However, Data bus&lt;k&gt;-b as the output side of data is immediately determined to be “H” or “L” by data output from sense amplifier S/A or data latch DLB, causing no problem in data transfer. 
     Therefore, when data is transferred from sense amplifier S/A or data latch DLB to data latch DLA or cache memory CHE, lower power consumption can be attempted to achieve by reducing the amount of charge of Data bus&lt;k&gt;-b as the output side of data. Also, faster precharging can be achieved by precharging Data bus&lt;k&gt;-b through precharge switch PSW 1   b.    
     In the present example, the number of memories connected to Data bus&lt;k&gt;-a is two (cache memory CHE and data latch DLA) and the number of memories connected to Data bus&lt;k&gt;-b is also two (data latch DLB and sense amplifier S/A), but the present example is not limited to such an example. 
     For example, as shown in  FIG. 23 , (t+1) data latches DLA- 0 , . . . DLA-t may be connected to Data bus&lt;k&gt;-a by increasing the number of data latches connected to Data bus&lt;k&gt;-a or (s+1) data latches DLA- 0 , . . . DLA-s may be connected to Data bus&lt;k&gt;-b by increasing the number of data latches connected to Data bus&lt;k&gt;-b. t and s are both natural numbers. 
     In  FIGS. 21 to 23 , each of cache memory CHE, data latches DLA (DLA- 0 , . . . DLA-t), data latches DLB (DLB- 0 , . . . DLB-s), and sense amplifier S/A needs to contain one memory or more, but in general, more than one memory is contained. 
       FIG. 24  is a flow chart of a data transfer operation. 
     The flow chart is a generalization of the data transfer operation of the second embodiment and the modification thereof described above and is executed by, for example, control circuit  14  in  FIG. 1  or  FIG. 2 . 
     First, the output side (sending side) and the input side (receiving side) of data are checked (step ST 1 ). Also, whether a clamp switch (clamp transistor) locates between the output side and the input side of data is checked (step ST 2 ). 
     If the clamp switch locates between the output side and the input side of data, the clamp switch is turned on and the P-channel precharge switch (FET) on the input side of data and the N-channel precharge switch (FET) on the output side of data are each turned on (step ST 3 ). Then, data is transferred from a Storage area on the output side of data to a Storage area on the input side of data (step ST 4 ). 
     If the clamp switch does not locate between the output side and the input side of data, the clamp switch is turned off and the P-channel precharge switch as the output side or the input side of data is turned on (step ST 5 ). 
     Then, data is transferred from a Storage area on the output side of data to a Storage area on the input side of data (step ST 4 ). 
     Next, an application example of the second embodiment and the modification thereof will be described. 
     Here, a case when the data transfer operation in the second embodiment and the modification thereof is applied to the nonvolatile semiconductor memory shown in  FIGS. 1 and 2  will be described. 
       FIG. 25  shows S/A &amp; Latch areas ( 1 ), . . . (g) and a Buffer area. 
     S/A &amp; Latch areas ( 1 ), . . . (g) have mutually the same circuit configuration. 
     The following description will be provided by taking, for example, S/A &amp; Latch area (g) as an example. 
     S/A &amp; Latch area (g) includes a Sense amplifier area, Data latch B area, Data latch A area, and Cache memory area. The number of these areas changes depending on the number of bits made to be stored in one memory cell. When, for example, 2 bits are made to be stored in one memory cell, as shown in FIG. four areas, that is, the Sense amplifier area, Data latch B area, Data latch A area, and Cache memory area are provided in S/A &amp; Latch area (g). 
     S/A &amp; Latch area (g) includes Data buses&lt;m:0&gt; connected to respective Internal I/O buses&lt;m:0&gt;. Precharge switch (P channel type FET) PSW 0   a  and precharge switch (N channel type FET) PSW 0   b  are connected to each of Data buses&lt;m:0&gt;-a and precharge switch (P channel type FET) PSW 1   a  and precharge switch (N channel type FET) PSW 1   b  are connected to each of Data buses&lt;m:0&gt;-b. 
     Clamp transistor T is connected between Data buses&lt;m:0&gt;-a and Data buses&lt;m:0&gt;-b. Clamp transistor T is, for example, an N channel type FET and controls connection/disconnection between Data buses&lt;m:0&gt;-a and Data buses&lt;m:0&gt;-b based on control signal φc. 
     Precharge switch (P channel type FET) PSW 0   a  supplies power supply potential Vdd to Data buses&lt;m:0&gt;-a as a precharge potential based on control signal PRE 0   a  and precharge switch (N channel type FET) PSW 0   b  supplies (Vdd-Vth) to Data buses&lt;m:0&gt;-a as a precharge potential based on control signal PRE 0   b.    
     Also, precharge switch (P channel type FET) PSW 1   a  supplies power supply potential Vdd to Data buses&lt;m:0&gt;-b as a precharge potential based on control signal PRE 1   a  and precharge switch (N channel type FET) PSW 1   b  supplies (Vdd-Vth) to Data buses&lt;m:0&gt;-b as a precharge potential based on control signal PRE 1   b.    
     An example of the Cache memory area and Data latch A area connected to Data buses&lt;m:0&gt;-a and the Sense amplifier area and Data latch B area connected to Data buses&lt;m:0&gt;-b will be described. 
     For example, Data bus&lt;0&gt; is taken as an example. 
     (n+1) sense amplifiers S/A- 0 , . . . S/A-n in the Sense amplifier area are commonly connected to Data bus&lt;0&gt;-b. Sense amplifiers S/A- 0 , . . . S/A-n only need to have functions to temporarily hold and amplify data and the circuit configuration thereof is not specifically limited. Electrical connection of amplifiers S/A- 0 , . . . S/A-n to Data bus&lt;0&gt;-b is controlled by respective control signals S/A&lt;n:0&gt; from the Buffer area. 
     (n+1) data latches DLB- 0 , . . . DLB-n in the Data latch B area are commonly connected to Data bus&lt;0&gt;-b. Data latches DLB- 0 , . . . DLB-n only need to have a function to temporarily hold data and the circuit configuration thereof is not specifically limited. Electrical connection of data latches DLB- 0 , . . . DLB-n to Data bus&lt;0&gt;-b is controlled by respective control signals DLB&lt;n:0&gt; from the Buffer area. 
     (n+1) data latches DLA- 0 , . . . DLA-n in the Data latch A area are commonly connected to Data bus&lt;0&gt;-a. Data latches DLA- 0 , . . . DLA-n only need to have a function to temporarily hold data and the circuit configuration thereof is not specifically limited. Electrical connection of data latches DLA- 0 , . . . DLA-n to Data bus&lt;0&gt;-a is controlled by respective control signals DLA&lt;n:0&gt; from the Buffer area. 
     (n+1) cache memories CHE- 0 , . . . CHE-n in the Cache memory area are commonly connected to Data bus&lt;0&gt;-a. Cache memories CHE- 0 , . . . CHE-n only need to have a function to temporarily hold data and the circuit configuration thereof is not specifically limited. 
     Electrical connection of cache memories CHE- 0 , . . . CHE-n to Data bus&lt;0&gt;-a is controlled by respective control signals CHE&lt;n:0&gt; from the Buffer area. 
       FIG. 26  shows an example of the memory connected to Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b. 
     The present example corresponds to n=3 in  FIG. 25 . 
     Sense amplifiers S/A- 0 , . . . S/A- 3  are connected to memory cells in the memory cell array via bit lines BL 0 , . . . BL 3  respectively. 
     When control signal PRE 0   a  is “L(low)”, P channel type precharge switch PSW 0   a  is turned on and Data bus&lt;0&gt;-a is precharged to power supply potential Vdd. When clamp transistor T and precharge switch PSW 1   b  are turned on and precharge switches PSW 1   a , PSW 0   b  are turned off, Data bus&lt;0&gt;-b is precharged to (Vdd-Vth). 
     When control signal PRE 0   a  changes from “L (low)” to “H(high)”, P channel type precharge switch PSW 0   a  is turned off. Thus, Data bus&lt;0&gt;-a changes to a floating state at the precharge potential (power supply potential Vdd) and Data bus&lt;0&gt;-b changes to a floating state at (Vdd-Vth). 
     When control signal PRE 1   a  is “L(low)”, P channel type precharge switch PSW 1   a  is turned on and Data bus&lt;0&gt;-b is precharged to power supply potential Vdd. When clamp transistor T and precharge switch PSW 0   b  are turned on and precharge switches PSW 0   a , PSW 1   b  are turned off, Data bus&lt;0&gt;-a is precharged to (Vdd-Vth). 
     When control signal PRE 1   a  changes from “L (low)” to “H(high)”, P channel type precharge switch PSW 1   a  is turned off. Thus, Data bus&lt;0&gt;-b changes to a floating state at the precharge potential (power supply potential Vdd) and Data bus&lt;0&gt;-a changes to a floating state at (Vdd-Vth). 
     As an example of the sense amplifier, Data latch A, Data latch B, and cache memory, circuits shown in  FIGS. 5 to 8  can be cited. As Storage area  21  shown in  FIGS. 5 to 8 , for example, a static latch circuit shown in  FIG. 9  can be shown. 
       FIGS. 27 to 30  show a data transfer example of the nonvolatile semiconductor memory in  FIG. 25 . 
     Data Transfer from Cache Memory CHE- 0  to Sense Amplifier S/A- 0  ( FIG. 27 ) 
     First, control signal PRE 1   a  is set to “L” and control signals PRE 0   b , φc are set to “H”. Control signal PRE 0   a  is always “H” and control signal PRE 1   b  is always “L”. Accordingly, Data bus&lt;0&gt;-b is precharged to power supply potential Vdd (“H”) and Data bus&lt;0&gt;-a is precharged to (Vdd-Vth). Then, control signal PRE 1   a  is set to “H” and control signal PRE 0   b  is set to “L” to change Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b to a floating state. 
     Next, the transfer transistor in cache memory CHE- 0  as the output side (sending side) of data is turned on by setting control signal CHE&lt;O&gt; to “H” to output data in cache memory CHE- 0  to Data bus&lt;0&gt;-a. 
     When, for example, data latched in cache memory CHE- 0  is “H” (corresponding to, for example, “1”), Data bus&lt;0&gt;-a maintains (Vdd-Vth), that is, “H”. At this point, Data bus&lt;0&gt;-b maintains power supply potential Vdd, that is, “H”. 
     When data latched in cache memory CHE- 0  is “L” (corresponding to, for example, “0”), by contrast, Data bus&lt;0&gt;-a is discharged to change from (Vdd-Vth) to ground potential Vss, that is, “L”. At this point, Data bus&lt;0&gt;-b also changes from power supply potential Vdd to ground potential Vss. 
     Next, the transfer transistor in sense amplifier S/A- 0  as the input side (receiving side) of data is turned on by setting control signal S/A&lt;0&gt; to “H” to electrically connect sense amplifier S/A- 0  to Data bus&lt;0&gt;-b. As a result, data output from cache memory CHE- 0  to Data bus&lt;0&gt;-a is further input into sense amplifier S/A- 0  via Data bus&lt;0&gt;-b. 
     When, for example, Data bus&lt;0&gt;-b maintains power supply potential Vdd (“H”), “H” (corresponding to, for example, “1”) is transferred to sense amplifier S/A- 0 . When Data bus&lt;0&gt;-b change to ground potential Vss (“L”), “L” (corresponding to, for example, “0”) is transferred to sense amplifier S/A- 0 . 
     Then, control signals φc, CHE&lt;0&gt;, S/A&lt;0&gt; are set to “L”. 
     In the above operation, memories other than cache memory CHE- 0  as the output side (sending side) of data and sense amplifier S/A- 0  as the input side (receiving side) of data are not electrically connected to Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b. That is, control signals CHE&lt;n:1&gt;, S/A&lt;n:1&gt;, DLA&lt;n:0&gt;, DLB&lt;n:0&gt; always maintain “L”. 
     The same operation as the above operation is also performed by changing the cache memory as the output side of data and the sense amplifier as the input side of data. 
     When, for example, as shown in  FIG. 25 , the Cache memory area includes (n+1) cache memories and the Sense amplifier area includes (n+1) sense amplifiers, the same operation as the above operation is performed (n+1) times by successively setting one of control signals CHE&lt;n:0&gt; and one of control signals S/A&lt;n:0&gt; to “H” to perform the data transfer from cache memories CHE- 0 , . . . CHE-n to sense amplifiers S/A- 0 , . . . S/A-n. 
     While control signal S/A&lt;0&gt; is set to “H” after control signal CHE&lt;0&gt; being set to “H” in the above operation, as shown in a waveform chart in  FIG. 27 , both may be set to “H” in the same timing. However, the state of sense amplifier S/A- 0  on the input side of data is undefined and thus, it is desirable to connect sense amplifier S/A- 0  on the input side of data to Data bus&lt;0&gt;-b after cache memory CHE- 0  on the output side of data being connected to Data bus&lt;0&gt;-a. 
     Data Transfer from Cache Memory CHE- 0  to Data Latch DLA- 0  ( FIG. 28 ) 
     First, control signal PRE 0   a  is set to “L” to precharge Data bus&lt;0&gt;-a to power supply potential Vdd (“H”). Control signal PRE 1   a  is always “H” and control signals φc, PRE 0   b , PRE 1   b  are always “L”. That is, Data bus&lt;0&gt;-b is not used for this data transfer. Then, control signal PRE 0   a  is set to “H” to change Data bus&lt;0&gt;-a to a floating state. 
     Next, the transfer transistor in cache memory CHE- 0  as the output side (sending side) of data is turned on by setting control signal CHE&lt;O&gt; to “H” to output data in cache memory CHE- 0  to Data bus&lt;0&gt;-a. 
     When, for example, data latched in cache memory CHE- 0  is “H” (corresponding to, for example, “1”), Data bus&lt;0&gt;-a maintains power supply potential Vdd, that is, “H”. When data latched in cache memory CHE- 0  is “L” (corresponding to, for example, “0”), by contrast, Data bus&lt;0&gt;-a is discharged to change from power supply potential Vdd to ground potential Vss, that is, “L”. 
     Next, the transfer transistor in data latch DLA- 0  as the input side (receiving side) of data is turned on by setting control signal DLA&lt;0&gt; to “H” to electrically connect data latch DLA- 0  to Data bus&lt;0&gt;-a. As a result, data is transferred from cache memory CHE- 0  to data latch DLA- 0  via Data bus&lt;0&gt;-a. 
     When, for example, Data bus&lt;0&gt;-a maintains power supply potential Vdd (“H”), “H” (corresponding to, for example, “1”) is transferred to data latch DLA- 0 . When Data bus&lt;0&gt;-a changes to ground potential Vss (“L”), “L” (corresponding to, for example, “0”) is transferred to data latch DLA- 0 . 
     Then, control signals CHE&lt;0&gt;, DLA&lt;O&gt; are set to “L”. 
     In the above operation, memories other than cache memory CHE- 0  as the output side (sending side) of data and data latch DLA- 0  as the input side (receiving side) of data are not electrically connected to Data bus&lt;0&gt;-a. That is, control signals CHE&lt;n:1&gt;, DLA&lt;n:1&gt;, DLB&lt;n:0&gt;, S/A&lt;n:0&gt; always maintain “L”. 
     The same operation as the above operation is also performed by changing the cache memory as the output side of data and the data latch as the input side of data. 
     When, for example, as shown in  FIG. 25 , the Cache memory area includes (n+1) cache memories and the Data latch A area includes (n+1) data latches, the same operation as the above operation is performed (n+1) times by successively setting one of control signals CHE&lt;n:0&gt; and one of control signals DLA&lt;n:0&gt; to “H” to perform the data transfer from cache memories CHE- 0 , . . . CHE-n to data latches DLA- 0 , . . . DLA-n. 
     While control signal DLA&lt;0&gt; is set to “H” after control signal CHE&lt;0&gt; being set to “H” in the above operation, as shown in a waveform chart in  FIG. 28 , both may beset to “H” in the same timing. However, the state of data latch DLA- 0  on the input side of data is undefined and thus, it is desirable to connect data latch DLA- 0  on the input side of data to Data bus&lt;0&gt;-a after cache memory CHE- 0  on the output side of data being connected to Data bus&lt;0&gt;-a. 
     Data Transfer from Sense Amplifier S/A- 0  to Cache Memory CHE- 0  ( FIG. 29 ) 
     First, control signal PRE 0   a  is set to “L” and control signals φc, PRE 1   b  are set to “H”. Control signal PRE 1   a  is always “H” and control signal PRE 0   b  is always “L”. Accordingly, Data bus&lt;0&gt;-a is precharged to power supply potential Vdd (“H”) and Data bus&lt;0&gt;-b is precharged to (Vdd-Vth). Then, control signal PRE 0   a  is set to “H” and control signal PRE 1   b  is set to “L” to change Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b to a floating state. 
     Next, the transfer transistor in sense amplifier S/A- 0  as the output side (sending side) of data is turned on by setting control signal S/A&lt;0&gt; to “H” to output data of sense amplifier S/A- 0  to Data bus&lt;0&gt;-b. 
     When, for example, data latched in sense amplifier S/A- 0  is “H” (corresponding to, for example, “1”), Data bus&lt;0&gt;-b maintains (Vdd-Vth), that is, “H”. At this point, Data bus&lt;0&gt;-a maintains power supply potential Vdd, that is, “H”. 
     When data latched in sense amplifier S/A- 0  is “L” (corresponding to, for example, “0”), by contrast, Data bus&lt;0&gt;-b is discharged to change from (Vdd-Vth) to ground potential Vss, that is, “L”. At this point, Data bus&lt;0&gt;-a also changes from power supply potential Vdd to ground potential Vss. 
     Next, the transfer transistor in cache memory CHE- 0  as the input side (receiving side) of data is turned on by setting control signal CHE&lt;0&gt; to “H” to electrically connect cache memory CHE- 0  to Data bus&lt;0&gt;-a. As a result, the data output from sense amplifier S/A- 0  to Data bus&lt;0&gt;-b is further input into cache memory CHE- 0  via Data bus&lt;0&gt;-a. 
     When, for example, Data bus&lt;0&gt;-a maintains power supply potential Vdd (“H”), “H” (corresponding to, for example, “1”) is transferred to cache memory CHE- 0 . When Data bus&lt;0&gt;-a changes to ground potential Vss (“L”), “L” (corresponding to, for example, “0”) is transferred to cache memory CHE- 0 . 
     Then, control signals (φc, S/A&lt;0&gt;, CHE&lt;0&gt; are set to “L”. 
     In the above operation, memories other than sense amplifier S/A- 0  as the output side (sending side) of data and cache memory CHE- 0  as the input side (receiving side) of data are not electrically connected to Data bus&lt;0&gt;-a and Data bus&lt;0&gt;-b. That is, control signals S/A&lt;n:1&gt;, CHE&lt;n:1&gt;, DLA&lt;n:0&gt;, DLB&lt;n:0&gt; always maintain “L”. 
     The same operation as the above operation is also performed by changing the sense amplifier as the output side of data and the cache memory as the input side of data. 
     When, for example, as shown in  FIG. 25 , the Sense amplifier area includes (n+1) sense amplifiers and the Cache memory area includes (n+1) cache memories, the same operation as the above operation is performed (n+1) times by successively setting one of control signals S/A&lt;n:0&gt; and one of control signals CHE&lt;n:0&gt; to “H” to perform the data transfer from sense amplifiers S/A- 0 , . . . S/A-n to cache memories CHE- 0 , . . . CHE-n. 
     While control signal CHE&lt;O&gt; is set to “H” after control signal S/A&lt;0&gt; being set to “H” in the above operation, as shown in a waveform chart in  FIG. 29 , both may be set to “H” in the same timing. However, the state of cache memory CHE- 0  on the input side of data is undefined and thus, it is desirable to connect cache memory CHE- 0  on the input side of data to Data bus&lt;0&gt;-a after sense amplifier S/A- 0  on the output side of data being connected to Data bus&lt;0&gt;-b. 
     Data Transfer from Sense Amplifier S/A- 0  to Data Latch DLB- 0  ( FIG. 30 ) 
     First, control signal PRE 1   a  is set to “L” to precharge Data bus&lt;0&gt;-b to power supply potential Vdd (“H”). Control signal PRE 0   a  is always “H” and control signals φc, PRE 0   b , PRE 1   b  are always “L”. That is, Data bus&lt;0&gt;-a is not used for this data transfer. Then, control signal PRE 1   a  is set to “H” to change Data bus&lt;0&gt;-b to a floating state. 
     Next, the transfer transistor in sense amplifier S/A- 0  as the output side (sending side) of data is turned on by setting control signal S/A&lt;0&gt; to “H” to output data of sense amplifier S/A- 0  to Data bus&lt;0&gt;-b. 
     When, for example, data latched in sense amplifier S/A- 0  is “H” (corresponding to, for example, “1”), Data bus&lt;0&gt;-b maintains power supply potential Vdd, that is, “H”. When data latched in sense amplifier S/A- 0  is “L” (corresponding to, for example, “0”), by contrast, Data bus&lt;0&gt;-b is discharged to change from power supply potential Vdd to ground potential Vss, that is, “L”. 
     Next, the transfer transistor in data latch DLB- 0  as the input side (receiving side) of data is turned on by setting control signal DLB&lt;0&gt; to “H” to electrically connect data latch DLB- 0  to Data bus&lt;0&gt;-b. As a result, data is transferred from sense amplifier S/A- 0  to data latch DLB- 0  via Data bus&lt;0&gt;-b. 
     When, for example, Data bus&lt;0&gt;-b maintains power supply potential Vdd (“H”), “H” (corresponding to, for example, “1”) is transferred to data latch DLB- 0 . When Data bus&lt;0&gt;-b changes to ground potential Vss (“L”), “L” (corresponding to, for example, “0”) is transferred to data latch DLB- 0 . 
     Then, control signals S/A&lt;0&gt;, DLB&lt;0&gt; are set to “L”. 
     In the above operation, memories other than sense amplifier S/A- 0  as the output side (sending side) of data and data latch DLB- 0  as the input side (receiving side) of data are not electrically connected to Data bus&lt;0&gt;-b. That is, control signals S/A&lt;n:1&gt;, DLB&lt;n:1&gt;, DLA&lt;n:0&gt;, CHE&lt;n:0&gt; always maintain “L”. 
     The same operation as the above operation is also performed by changing the sense amplifier as the output side of data and the data latch as the input side of data. 
     When, for example, as shown in  FIG. 25 , the Sense amplifier area includes (n+1) sense amplifiers and the Data latch B area includes (n+1) data latches, the same operation as the above operation is performed (n+1) times by successively setting one of control signals S/A&lt;n:0&gt; and one of control signals DLB&lt;n:0&gt; to “H” to perform the data transfer from sense amplifiers S/A- 0 , . . . S/A-n to data latches DLB- 0 , . . . DLB-n. 
     While control signal DLB&lt;0&gt; is set to “H” after control signal S/A&lt;0&gt; being set to “H” in the above operation, as shown in a waveform chart in  FIG. 30 , both may be set to “H” in the same timing. However, the state of data latch DLB- 0  on the input side of data is undefined and thus, it is desirable to connect data latch DLB- 0  on the input side of data to Data bus&lt;0&gt;-b after sense amplifier S/A- 0  on the output side of data being connected to Data bus&lt;0&gt;-b. 
     According to the second embodiment and the modification thereof, as described above, a nonvolatile semiconductor memory performing the data transfer by the bus precharge method can realize a robust system consuming less power by dividing the data bus into two buses and charging the data bus on the output side of data up to (Vdd-Vth) and the data bus on the input side of data up to Vdd. 
     The data bus on the output side of data is charged via a first path from the precharge switch (P channel type FET) on the input side of data via a clamp transistor and a second path passing through the precharge switch (N channel type FET) on the output side of data and thus, the data bus on the output side of data can be charged at high speed. 
     When no clamp transistor is present between the output side and the input side of data, power consumption can further be reduced because only one of two data buses needs to be charged. In addition, the data bus on the output side of data is charged only up to (Vdd-Vth) and thus, for example, the discharge rate (data transfer rate) when the data bus is discharged (when “L” is transferred) can be increased. 
     (3) Third Embodiment 
     In the first and second embodiments described above, the division number of the data bus in the S/A &amp; Latch area (temporary storage area) is assumed to be 2. However, as described above, the division is not limited to 2. 
       FIG. 31  shows a third embodiment. 
     Data bus-a, Data bus-b, Data bus-c, and Data bus-d are connected in series by N channel type clamp transistors (FET) T 0 , T 1 , T 2 . On/Off of N channel type clamp transistors (FET) T 0 , T 1 , T 2  is controlled by control signals φc 0 , φc 1 , φc 2  respectively. 
     Precharge circuits P 0 , P 1 , P 2 , P 3  are connected to Data bus-a, Data bus-b, Data bus-c, and Data bus-d respectively. Each of precharge circuits P 0 , P 1 , P 2 , P 3  may contain a precharge switch (P channel type FET) shown in the first embodiment or two precharge switches (P channel type and N channel type FETs) shown in the second embodiment. 
     Cache memory CHE is connected to Data bus-a, data latch DLA is connected to Data bus-b, data latch DLB is connected to Data bus-c, and sense amplifier S/A is connected to Data bus-d. 
     Data buses among Data bus-a, Data bus-b, Data bus-c, and Data bus-d as the input side of data are precharged to a first potential (for example, Vdd). Data buses among Data bus-a, Data bus-b, Data bus-c, and Data bus-d as the output side of data are precharged to a second potential (for example, Vdd−(Vth×m)) lower than the first potential. 
     Vdd is the power supply potential, Vth is the threshold of N channel type clamp transistors, T 0 , T 1 , T 2 , and m is one of 1, 2, and 3. 
     What is described above can be generalized as shown below. 
     First to (n−1)-th N channel type clamp FETs connect first to n-th data buses in series. First to n-th precharge circuits are connected to the respective first to n-th data buses to precharge the first to n-th data buses. Further, first to n-th storage areas are connected to the respective first to n-th data buses. n is a natural number equal to or more than 2. 
     Then, data buses among the first to n-th data buses as the input side of data are precharged to a first potential. Also, data buses among the first to n-th data buses as the output side of data are precharged to a second potential lower than the first potential. 
     The data transfer operation is the same as in the first and second embodiment described above excluding the following point and thus, a detailed description thereof is omitted. 
     In the present example, when another data bus is arranged between a data bus as the input side of data and a data bus as the output side of data, the other data bus is precharged to one of the first and second potentials. 
     If, for example,  FIG. 31  is taken as an example, when data is transferred from cache memory CHE to sense amplifier S/A, Data bus-a is precharged to (Vdd-Vth) and the remaining Data bus-b, Data bus-c, and Data bus-d are precharged to Vdd. 
     In place of the above operation, Data bus-a may be precharged to (Vdd-Vth×3), Data bus-b to (Vdd-Vth×2), Data bus-c to (Vdd-Vth), and Data bus-d to Vdd. 
     (4) Others 
     In the first to third embodiments described above, storage areas (cache memories, data latches, and sense amplifiers) may be connected to Data bus&lt;0&gt; via, as shown in  FIGS. 32 to 39 , an N channel type FET as a transfer gate or a P channel type FET and an N channel FET as transfer gates. 
     For example,  FIG. 32  shows an example in which sense amplifier S/A- 0  is connected to Data bus&lt;0&gt; via transfer gate (N channel type FET) TG-a.  FIGS. 33 and 34  show examples in which data latches DLA- 0 , DLB- 0  are connected to Data bus&lt;0&gt; via transfer gate (N channel type FET) TG-a.  FIG. 35  shows an example in which cache memory CHE- 0  is connected to Data bus&lt;0&gt; via transfer gate (N channel type FET) TG-a. 
     Transfer gate TG-a is an N channel type FET in these examples and thus, a data bus leak (precharge potential drop) on the input side of data profoundly affects an erroneous transfer of data. Thus, it is desirable to charge the data bus on the input side of data up to, for example, power supply potential Vdd. 
     For example,  FIG. 36  shows an example in which sense amplifier S/A- 0  is connected to Data bus&lt;0&gt; via transfer gate (P channel type and N channel type FETs) TG-a.  FIGS. 37 and 38  show examples in which data latches DLA- 0 , DLB- 0  are connected to Data bus&lt;0&gt; via transfer gate (P channel type and N channel type FETs) TG-a.  FIG. 39  shows an example in which cache memory CHE- 0  is connected to Data bus&lt;0&gt; via transfer gate (P channel type and N channel type FETs) TG-a. 
     Transfer gate TG-a is P channel type and N channel type FETs in these examples and thus, a data bus leak (precharge potential drop) on the input side of data does not affect an erroneous transfer of data significantly. However, even in such a case, it is desirable to charge the data bus on the input side of data up to power supply potential Vdd. 
     3. Conclusion 
     According to the embodiments described above, when data transfer when reading/writing is performed by the bus precharge method, lower power consumption can be attempted to achieve and also the number of control signals used to control the data transfer can be reduced. 
     While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.