TWI650769B - Memory device and programming method for memory cell array - Google Patents

Memory device and programming method for memory cell array Download PDF

Info

Publication number
TWI650769B
TWI650769B TW107117433A TW107117433A TWI650769B TW I650769 B TWI650769 B TW I650769B TW 107117433 A TW107117433 A TW 107117433A TW 107117433 A TW107117433 A TW 107117433A TW I650769 B TWI650769 B TW I650769B
Authority
TW
Taiwan
Prior art keywords
memory cell
memory
input data
data
group
Prior art date
Application number
TW107117433A
Other languages
Chinese (zh)
Other versions
TW202004752A (en
Inventor
何文喬
Original Assignee
華邦電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 華邦電子股份有限公司 filed Critical 華邦電子股份有限公司
Priority to TW107117433A priority Critical patent/TWI650769B/en
Priority to JP2018195561A priority patent/JP2019204570A/en
Application granted granted Critical
Publication of TWI650769B publication Critical patent/TWI650769B/en
Publication of TW202004752A publication Critical patent/TW202004752A/en
Priority to JP2021063150A priority patent/JP7087153B2/en

Links

Abstract

一種記憶體裝置及記憶胞陣列的程式化方法。記憶體裝置包括記憶胞陣列、選擇開關、列解碼器、電壓產生器及記憶體控制器。記憶體控制器依據輸入資料控制列解碼器以調整位址控制信號的控制路徑順序,且記憶體控制器同時地控制所述電壓產生器以調整輸入資料信號的資料路徑順序,從而對記憶胞陣列中的記憶胞進行程式化操作。A memory device and a stylized method of a memory cell array. The memory device includes a memory cell array, a selection switch, a column decoder, a voltage generator, and a memory controller. The memory controller controls the column decoder according to the input data to adjust the control path sequence of the address control signal, and the memory controller simultaneously controls the voltage generator to adjust the data path sequence of the input data signal, thereby The memory cells in the program are programmed.

Description

記憶體裝置及記憶胞陣列的程式化方法Stylized method of memory device and memory cell array

本發明是有關於一種記憶體裝置的控制技術,尤其是有關於一種用於減少進行程式化操作所耗費的時間的記憶體裝置及記憶胞陣列的程式化方法。The present invention relates to a control technique for a memory device, and more particularly to a memory device and a memory cell array for reducing the time taken to perform a programmatic operation.

使用者在將輸入資料寫入快取記憶體的時候,會輸入指令、記憶胞位址以及想要存取的輸入資料給快取記憶體。然後,快取記憶體中的內部電路將會依據這些參數來對特定記憶胞進行程式化操作,藉以將輸入資料寫入到特定記憶胞當中。快取記憶體主要可分為兩種:NOR型快取記憶體以及NAND型快取記憶體。相較於NAND型快取記憶體,NOR型快取記憶體進行程式化/抹除操作需要較長的時間進行,但NOR型快取記憶體可提供完整的定址與資料匯流排,因此可允許存取NOR型快取記憶體上的任何記憶胞。When the user writes the input data to the cache memory, the command, the memory cell address, and the input data to be accessed are input to the cache memory. Then, the internal circuit in the cache memory will program the specific memory cell according to these parameters, so as to write the input data into the specific memory cell. There are two main types of cache memory: NOR type cache memory and NAND type cache memory. Compared to NAND-type cache memory, NOR-type cache memory requires a long time for program/erase operation, but NOR-type cache memory can provide complete address and data bus, so it can be allowed. Access any memory cell on the NOR type cache.

若希望能夠加速進行NOR型快取記憶體的程式化操作、縮短程式化操作所耗費的時間(通常稱為tPP)的話,似乎可從如何對NOR型快取記憶體進行程式化操作的細部流程中進行調整。上述的程式化操作通常可分為兩個部分,第一個部分為程式化脈衝(program pulse)操作以及程式化驗證(program verify;PV)操作。程式化脈衝操作會施予目標記憶胞高電壓,以便調整目標記憶胞的臨界電壓(Vt)(如,將目標記憶胞的臨界電壓上升)。程式化驗證操作則是驗證目標記憶胞是否已經達到預定的臨界電壓,從而確認目標記憶胞已確實儲存輸入資料。程式化脈衝操作通常占用大部分程式化操作的時間tPP。If you want to speed up the programming of the NOR-type cache and shorten the time it takes for the stylization (usually called tPP), it seems that you can get a detailed flow of how to program the NOR-type cache. Make adjustments. The above stylized operations can usually be divided into two parts, the first part is a program pulse operation and a program verify (PV) operation. The stylized pulse operation applies a high voltage to the target memory cell to adjust the threshold voltage (Vt) of the target memory cell (eg, to increase the threshold voltage of the target memory cell). The stylized verification operation verifies that the target memory cell has reached a predetermined threshold voltage, thereby confirming that the target memory cell has actually stored the input data. Stylized pulse operations typically take up the time tPP of most stylized operations.

由於NOR型快取記憶體中的程式化操作需要大量的電流且受到硬體電路中幫浦容量(Pumping Capability)的限制,程式化脈衝操作僅能驅動特定數量的資料路徑,導致需要多次地且依序地進行程式化脈衝操作才能完整地寫入輸入資料。然而,快取記憶體的資料寫入方式是先行對全部的記憶胞進行抹除操作後,然後在對每個記憶胞進行程式化操作,因此可能不需要對每個記憶胞都進行程式化操作。Since the stylized operation in the NOR type cache requires a large amount of current and is limited by the pumping Capability in the hardware circuit, the stylized pulse operation can only drive a certain number of data paths, resulting in multiple times. The stylized pulse operation is sequentially performed to completely write the input data. However, the data of the cache memory is written by first erasing all the memory cells, and then staging each memory cell, so it may not be necessary to program each memory cell. .

因此,如何降低減少對快取記憶體進行程式化操作的時間,便是重要的課題之一。Therefore, how to reduce the time to reduce the stylized operation of the cache memory is one of the important issues.

本發明提供一種記憶體裝置及記憶胞陣列的程式化方法,依據輸入資料的內容來重新編排輸入資料信號的資料路徑順序,且同時地重新編排位址控制信號的控制路徑順序,藉以略過不需要進行程式化操作的記憶胞,減少進行程式化操作所耗費的時間。The present invention provides a memory device and a memory cell array stylized method, which rearranges the data path sequence of the input data signal according to the content of the input data, and simultaneously rearranges the control path sequence of the address control signal, thereby skipping the The memory cells that need to be programmed to reduce the time it takes to perform stylized operations.

本發明的一種記憶體裝置包括記憶胞陣列、選擇開關、列解碼器、電壓產生器以及記憶體控制器。記憶胞陣列包括多個記憶胞。選擇開關耦接記憶胞陣列。列解碼器耦接選擇開關,列解碼器接收記憶胞位址以產生位址控制信號。電壓產生器耦接選擇開關。記憶體控制器耦接列解碼器及電壓產生器。記憶體控制器獲得輸入資料以控制電壓產生器而產生輸入資料信號。記憶體控制器依據所述輸入資料信號控制列解碼器以調整位址控制信號的控制路徑順序,且記憶體控制器同時地控制電壓產生器以調整輸入資料信號的資料路徑順序,從而對記憶胞進行程式化操作。A memory device of the present invention includes a memory cell array, a selection switch, a column decoder, a voltage generator, and a memory controller. The memory cell array includes a plurality of memory cells. The selection switch is coupled to the memory cell array. The column decoder is coupled to the selection switch, and the column decoder receives the memory cell address to generate an address control signal. The voltage generator is coupled to the selection switch. The memory controller is coupled to the column decoder and the voltage generator. The memory controller obtains input data to control the voltage generator to generate an input data signal. The memory controller controls the column decoder according to the input data signal to adjust the control path sequence of the address control signal, and the memory controller simultaneously controls the voltage generator to adjust the data path sequence of the input data signal, thereby Stylize.

本發明的記憶胞陣列的程式化方法包括下列步驟:獲得輸入資料以產生輸入資料信號;依據所述輸入資料調整位址控制信號的控制路徑順序,並同時地調整輸入資料信號的資料路徑順序;以及,依據所述位址控制信號與所述輸入資料信號以對所述記憶胞陣列中的記憶胞的一部分或全部進行程式化操作。The stylized method of the memory cell array of the present invention comprises the steps of: obtaining input data to generate an input data signal; adjusting a control path sequence of the address control signal according to the input data, and simultaneously adjusting a data path sequence of the input data signal; And performing program operation on a part or all of the memory cells in the memory cell array according to the address control signal and the input data signal.

基於上述,本發明實施例所述的記憶體裝置中的記憶體控制器依據在資料緩衝器中的輸入資料來重新編排選擇開關中控制路徑的導通順序(亦即,位址控制信號的控制路徑順序)以及同時地重新編排資料路徑的資料提供順序(亦即,輸入資料信號的資料路徑順序),從而整體地重新編排提供到記憶胞陣列的位元線。藉此,可將需要進行程式化操作的記憶胞進行程式化操作,且略過不需要進行程式化操作的記憶胞。如此一來,記憶體裝置中的程式化操作的處理次數將可能會降低,從而減少進行程式化操作所耗費的時間。Based on the above, the memory controller in the memory device according to the embodiment of the present invention rearranges the conduction sequence of the control path in the selection switch according to the input data in the data buffer (that is, the control path of the address control signal) The sequence) and the data providing sequence of the data paths are simultaneously re-arranged (ie, the data path order of the input data signals), thereby collectively rearranging the bit lines provided to the memory cell array. Thereby, the memory cells that need to be programmed can be programmed, and the memory cells that do not need to be programmed can be skipped. As a result, the number of processing operations of the stylized operation in the memory device may be reduced, thereby reducing the time taken for the stylized operation.

為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。The above described features and advantages of the invention will be apparent from the following description.

圖1是一種記憶體裝置100的方塊圖。本實施例的記憶體裝置100可以是反或(NOR)型快取記憶體。圖1中的各個元件主要用於對記憶胞進行程式化脈衝(program pulse;PGM-Pulse)操作。記憶體裝置100主要包括記憶胞陣列110、選擇開關120、列解碼器130、電壓產生器140以及控制邏輯電路160。記憶體裝置100還包括行解碼器135以及資料緩衝器150。FIG. 1 is a block diagram of a memory device 100. The memory device 100 of the present embodiment may be a reverse (NOR) type cache memory. The components in Figure 1 are primarily used for program pulse (PGM-Pulse) operations on memory cells. The memory device 100 mainly includes a memory cell array 110, a selection switch 120, a column decoder 130, a voltage generator 140, and a control logic circuit 160. The memory device 100 also includes a row decoder 135 and a data buffer 150.

記憶胞陣列110包括多個記憶胞。選擇開關120耦接記憶胞陣列110。本實施例的選擇開關120可以是列選擇開關,且其具備多個路徑開關(在圖1中以電晶體M1、M2的形式呈現),每個路徑開關分別對應每個資料路徑。行解碼器135接收記憶胞位址Adr以提供字元線WL給記憶體陣列110。列解碼器130耦接選擇開關120。列解碼器130接收記憶胞位址Adr以產生位址控制信號。本實施例以符號Y0~Y3作為位址控制信號的舉例。電壓產生器140耦接選擇開關120,以對每個路徑開關提供輸入資料信號。本實施例以符號HVDIN0~HVDIN7作為輸入資料信號的舉例。電壓產生器140可透過電壓幫浦電路來實現,其亦可被稱為是高壓(high voltage;HV)電路。The memory cell array 110 includes a plurality of memory cells. The selection switch 120 is coupled to the memory cell array 110. The selection switch 120 of the present embodiment may be a column selection switch, and it is provided with a plurality of path switches (presented in the form of transistors M1, M2 in FIG. 1), and each path switch corresponds to each data path. Row decoder 135 receives memory cell address Adr to provide word line WL to memory array 110. The column decoder 130 is coupled to the selection switch 120. Column decoder 130 receives memory cell address Adr to generate an address control signal. In this embodiment, the symbols Y0 to Y3 are taken as an example of the address control signal. The voltage generator 140 is coupled to the selection switch 120 to provide an input profile signal for each of the path switches. This embodiment uses the symbols HVDIN0~HVDIN7 as an example of an input data signal. The voltage generator 140 can be implemented by a voltage boost circuit, which can also be referred to as a high voltage (HV) circuit.

資料緩衝器150用以接收並暫存輸入資料Data。控制邏輯電路160依據外部提供的指令CMD來控制資料緩衝器150以及電壓產生器以產生輸入資料信號HVDIN0~HVDIN7。於本發明實施例中,資料緩衝器150亦可接收並暫存指令CMD。選擇開關120受控於位址控制信號Y0~Y3以及輸入資料信號HVDIN0~HVDIN7以提供位元線BL給記憶體陣列110。The data buffer 150 is configured to receive and temporarily store the input data Data. The control logic circuit 160 controls the data buffer 150 and the voltage generator to generate the input data signals HVDIN0~HVDIN7 according to the externally supplied command CMD. In the embodiment of the present invention, the data buffer 150 can also receive and temporarily store the command CMD. The select switch 120 is controlled by the address control signals Y0~Y3 and the input data signals HVDIN0~HVDIN7 to provide the bit line BL to the memory array 110.

為方便說明下述實施例,本實施例將『資料路徑(data path)DP』定義為由以下幾個流程所組成:(1)輸入資料Data輸入給記憶體裝置100並暫存於資料緩衝器150;(2)控制邏輯電路160依據指令CMD以依序地將資料緩衝器150中所暫存的輸入資料Data傳送給電壓產生器140;(3)電壓產生器140將位於邏輯域(logic domain)的輸入資料Data轉換為高壓域(high voltage domain)的輸入資料信號(如,HVDIN0~HVDIN7),並將輸入資料信號提供給選擇開關120的資料輸入端;(4)對欲進行程式化脈衝程序的記憶胞依據輸入資料信號所產生的位元線BL進行程式化偏壓。若欲對特定的記憶胞進行程式化脈衝程序的話,特定的記憶胞所對應的輸入資料信號將會是高壓信號,否則其所對應的輸入資料信號將為0伏特(V)。本實施例將『控制路徑(control path)CP』定義為由以下幾個流程所組成:(1)列解碼器130獲得記憶胞位址Adr;(2)列解碼器130對記憶胞位址Adr解碼以控制選擇開關120中部分的路徑開關導通,從而讓這些路徑開關所對應的輸入資料信號通過以抵達特定的記憶胞。For convenience of description of the following embodiments, the present embodiment defines a "data path DP" as consisting of the following processes: (1) The input data Data is input to the memory device 100 and temporarily stored in the data buffer. 150; (2) the control logic circuit 160 sequentially transfers the input data Data temporarily stored in the data buffer 150 to the voltage generator 140 according to the instruction CMD; (3) the voltage generator 140 will be located in the logical domain (logic domain The input data Data is converted into an input data signal of a high voltage domain (eg, HVDIN0~HVDIN7), and the input data signal is supplied to the data input terminal of the selection switch 120; (4) the programized pulse is to be performed. The memory cells of the program are programmed to be biased according to the bit line BL generated by the input data signal. If you want to program a specific memory cell, the input data signal corresponding to a particular memory cell will be a high voltage signal, otherwise the corresponding input data signal will be 0 volts (V). In this embodiment, the "control path CP" is defined as being composed of the following processes: (1) the column decoder 130 obtains the memory cell address Adr; (2) the column decoder 130 pairs the memory cell address Adr The decoding is performed to control a portion of the path switches of the selection switch 120 to be turned on, thereby allowing the input data signals corresponding to the path switches to pass to reach a particular memory cell.

在此解釋程式化脈衝程序實際上如何影響到程式化操作的整體時間。在NOR型快閃記憶體中,能夠同時進行程式化操作的記憶胞位元數量將取決於電壓產生器140對於電流的驅動能力。由於記憶胞的程式化操作將會需要大量的電流來推動記憶胞,但電壓產生器140由於其電流驅動能力有限,因而無法同時推動大量的記憶胞。因此,通常將利用控制邏輯電路160來依序地對輸入資料Data進行排列,以分次地、部分提供地完成記憶胞的程式化操作。換句話說,控制邏輯電路160將對資料路徑DP中的資料路徑順序依據資料路徑方案(data path scheme)進行編排,從而決定程式化操作所耗費的時間。本實施例所述的『幫浦容量』即為電壓產生器140同時對待程式化記憶胞進行程式化脈衝操作的位元數量。This explains how the stylized pulse program actually affects the overall time of the stylized operation. In a NOR type flash memory, the number of memory cells that can be simultaneously programmed can depend on the driving ability of the voltage generator 140 for current. Since the stylized operation of the memory cell will require a large amount of current to drive the memory cell, the voltage generator 140 cannot push a large number of memory cells at the same time due to its limited current driving capability. Therefore, the input logic Data is generally sequentially arranged by the control logic circuit 160 to perform the programmatic operation of the memory cells in a divided and partially provided manner. In other words, the control logic circuit 160 will arrange the data path sequence in the data path DP according to the data path scheme to determine the time taken for the stylization operation. The "pump capacity" described in this embodiment is the number of bits in which the voltage generator 140 simultaneously performs a programmatic pulse operation on the stylized memory cell.

圖2是圖1中記憶體裝置100的部分元件的詳細電路圖。請參見圖2,在此假設,記憶胞陣列110中具備32個待程式化記憶胞;選擇開關120具備多個資料路徑群組121~128(如,8個資料路徑群組),每個資料路徑群組由多個路徑開關(如,4個路徑開關)組成。位址控制信號Y0~Y3的位元數(亦即,4)等於單個資料路徑群組中的路徑開關的數量(亦即,4)。記憶胞陣列110中待程式化記憶胞的數量(亦即,32)等於單個資料路徑群組中的路徑開關的數量(亦即,4)乘以資料路徑群組的數量(亦即,8)的數值。資料路徑群組121~128的數量(亦即,8)大於幫浦容量(亦即,2)。2 is a detailed circuit diagram of some of the components of the memory device 100 of FIG. 1. Referring to FIG. 2, it is assumed that the memory cell array 110 has 32 memory cells to be programmed; the selection switch 120 has a plurality of data path groups 121-128 (eg, 8 data path groups), each data. A path group consists of multiple path switches (eg, 4 path switches). The number of bits of the address control signals Y0~Y3 (i.e., 4) is equal to the number of path switches in a single data path group (i.e., 4). The number of memory cells to be programmed in the memory cell array 110 (i.e., 32) is equal to the number of path switches in a single data path group (i.e., 4) multiplied by the number of data path groups (i.e., 8). The value. The number of data path groups 121-128 (i.e., 8) is greater than the pump capacity (i.e., 2).

本實施例中,可同時對待程式化記憶胞進行程式化脈衝操作的位元數量為2。亦即,電壓產生器140的幫浦容量為2。舉例而言,假設要對記憶胞cA以及記憶胞cB進行首次的程式化脈衝操作,則需對輸入資料信號HVDIN0及HVDIN1提供相對應的信號(如,若該記憶胞需程式化:輸入資料信號為高壓信號;若該記憶胞不需程式化:輸入資料信號為0V),並透過位址控制信號Y0來控制資料路徑群組121及122中的特定路徑開關導通,使得輸入資料信號HVDIN0及HVDIN1依據圖2中的箭頭210及220所示般地傳遞到記憶胞cA及cB以進行程式化脈衝操作。也就是說,若是要對32位元的記憶胞完成程式化脈衝操作,將需要16次的程式化脈衝。In this embodiment, the number of bits that can be used for the stylized pulse operation of the stylized memory cell is two. That is, the voltage generator 140 has a pump capacity of two. For example, if you want to perform the first stylized pulse operation on the memory cell cA and the memory cell cB, you need to provide corresponding signals to the input data signals HVDIN0 and HVDIN1 (eg, if the memory cell needs to be programmed: input data signal) It is a high voltage signal; if the memory cell does not need to be programmed: the input data signal is 0V), and the specific path switch in the data path groups 121 and 122 is controlled to be turned on by the address control signal Y0, so that the input data signals HVDIN0 and HVDIN1 are input. The memory cells cA and cB are transferred to the memory cells cA and cB as shown by arrows 210 and 220 in FIG. In other words, if you want to complete a stylized pulse operation on a 32-bit memory cell, you will need 16 programmed pulses.

表1表示對於32位元的記憶胞進行16次程式化脈衝的控制路徑順序以及資料路徑順序。『控制路徑順序』用以表示位址控制信號對某些路徑開關的導通順序;『資料路徑順序』用以表示輸入資料信號的輸入順序。 表1 <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 程式化脈衝次數 </td><td> 控制路徑順序 </td><td> 資料路徑順序 </td></tr><tr><td> 1 </td><td> Y0 </td><td> HVDIN0/HDVIN1 </td></tr><tr><td> 2 </td><td> Y0 </td><td> HVDIN2/HDVIN3 </td></tr><tr><td> 3 </td><td> Y0 </td><td> HVDIN4/HDVIN5 </td></tr><tr><td> 4 </td><td> Y0 </td><td> HVDIN6/HDVIN7 </td></tr><tr><td> 5 </td><td> Y1 </td><td> HVDIN0/HDVIN1 </td></tr><tr><td> 6 </td><td> Y1 </td><td> HVDIN2/HDVIN3 </td></tr><tr><td> 7 </td><td> Y1 </td><td> HVDIN4/HDVIN5 </td></tr><tr><td> 8 </td><td> Y1 </td><td> HVDIN6/HDVIN7 </td></tr><tr><td> 9 </td><td> Y2 </td><td> HVDIN0/HDVIN1 </td></tr><tr><td> 10 </td><td> Y2 </td><td> HVDIN2/HDVIN3 </td></tr><tr><td> 11 </td><td> Y2 </td><td> HVDIN4/HDVIN5 </td></tr><tr><td> 12 </td><td> Y2 </td><td> HVDIN6/HDVIN7 </td></tr><tr><td> 13 </td><td> Y3 </td><td> HVDIN0/HDVIN1 </td></tr><tr><td> 14 </td><td> Y3 </td><td> HVDIN2/HDVIN3 </td></tr><tr><td> 15 </td><td> Y3 </td><td> HVDIN4/HDVIN5 </td></tr><tr><td> 16 </td><td> Y3 </td><td> HVDIN6/HDVIN7 </td></tr></TBODY></TABLE>Table 1 shows the control path sequence and data path sequence for 16 stylized pulses for a 32-bit memory cell. The "control path sequence" is used to indicate the turn-on sequence of the address control signals for certain path switches; the "data path order" is used to indicate the input order of the input data signals. Table 1  <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> Stylized pulse times</td><td> Control path order</td><td> Data path order</td></tr><tr><td> 1 </td><td> Y0 </td><td> HVDIN0/HDVIN1 </td></tr><tr><td> 2 </td><td> Y0 </td><td> HVDIN2/HDVIN3 </td></tr><tr><td> 3 </td><td> Y0 </td><td> HVDIN4 /HDVIN5 </td></tr><tr><td> 4 </td><td> Y0 </td><td> HVDIN6/HDVIN7 </td></tr><tr><td> 5 </td><td> Y1 </td><td> HVDIN0/HDVIN1 </td></tr><tr><td> 6 </td><td> Y1 </td><td> HVDIN2/ HDVIN3 </td></tr><tr><td> 7 </td><td> Y1 </td><td> HVDIN4/HDVIN5 </td></tr><tr><td> 8 < /td><td> Y1 </td><td> HVDIN6/HDVIN7 </td></tr><tr><td> 9 </td><td> Y2 </td><td> HVDIN0/HDVIN1 </td></tr><tr><td> 10 </td><td> Y2 </td><td> HVDIN2/HDVIN3 </td></tr><tr><td> 11 </ Td><td> Y2 </td><td> HVDIN4/HDVIN5 </td></tr><tr><td> 12 </td><td> Y2 </td><td> HVDIN6/HDVIN7 < /td></tr><tr><td> 13 </td><td> Y3 </td><td> HVDIN0/HDVIN1 </td></tr><tr><td> 14 </td ><td> Y3 </td><td> HVDIN2/HDVIN3 </td></tr><tr><td> 15 </td><td> Y3 </td><td> HVDIN4/HDVIN5 </td></tr><tr><td> 16 </td><td> Y3 </td><td> HVDIN6/HDVIN7 </td></tr ></TBODY></TABLE>

從表1中可得知,圖1中的記憶體裝置100將會逐一地對32位元的記憶胞皆進行一次程式化脈衝操作。在此資料路徑方案中,圖1的列解碼器130及控制邏輯電路160皆並不需要參考輸入資料Data來調整其控制路徑CP的控制路徑順序與資料路徑DP的資料路徑順序,只要依照接收到的記憶胞位址Adr以及輸入資料Data的順序來產生對應的控制路徑順序與資料路徑順序即可。As can be seen from Table 1, the memory device 100 of FIG. 1 will perform a programmed pulse operation on the 32-bit memory cells one by one. In this data path scheme, the column decoder 130 and the control logic circuit 160 of FIG. 1 do not need to refer to the input data Data to adjust the control path sequence of the control path CP and the data path sequence of the data path DP, as long as the received data path is received. The memory cell address Adr and the order of the input data Data may be generated to generate a corresponding control path sequence and data path order.

然而,上述的資料路徑方案實際上耗費了大量的時間,因有許多不需要進行程式化操作的記憶胞仍然進行了程式化操作,以下說明之。快閃記憶體在寫入資料的程序是,先以抹除操作將整個快閃記憶體裝置中的記憶胞重置為邏輯”1”,再對記憶胞進行程式化操作,以使部分記憶胞的位元修改為邏輯”0”。也就是說,不是每次都需要將32位元的記憶胞皆進行一次程式化操作。However, the above data path scheme actually takes a lot of time, because many memory cells that do not need to be programmed are still programmed, as explained below. In the flash memory, the program for writing data is to first reset the memory cells in the entire flash memory device to logic "1" by erasing, and then program the memory cells to make some memory cells. The bit is modified to a logical "0". In other words, not every time you need to program a 32-bit memory cell.

例如,當圖2的記憶胞cA需要進行程式化操作,但記憶胞cB不需要進行程式化操作時,電壓產生器140在首次進行程式化脈衝時(亦即,程式化脈衝次數為1)仍然要將高壓資料傳遞給輸入資料信號HVDIN0,且將0V傳遞給輸入資料信號HVDIN1。For example, when the memory cell cA of FIG. 2 needs to be programmed, but the memory cell cB does not need to be programmed, the voltage generator 140 still performs the stylized pulse for the first time (that is, the number of programmed pulses is 1). The high voltage data is to be passed to the input data signal HVDIN0 and 0V is passed to the input data signal HVDIN1.

此外,多樣化的輸入資料Data將會影響到電壓產生器140在運作時的效率。例如,在符合表1的資料路徑方案中,並未考量到輸入資料Data中的位元安排是否確實需要讓每個記憶胞皆需由電壓產生器140提供電流使其進行程式化脈衝操作。因記憶胞的實際位址跟邏輯位址有特定的對映關係,且此對映關係將會於下述實施例中描述,在此以實際上對應於記憶胞的實際位址B0及B1的邏輯位址D00及D08中的位元值作為舉例。當輸入資料Data中邏輯位址為D00及D08的兩個位元值皆為邏輯”1”時,電壓產生器140的使用率為零,因不需提供高壓信號。當輸入資料Data中邏輯位址為D00及D084的其中一個位元值為邏輯”0”,而另一個位元值為邏輯”1”時,電壓產生器140的使用率為50%。只有在輸入資料Data中邏輯位址為D00及D08的位元值皆為邏輯”0”時,電壓產生器140的使用率才是100%。換句話說,當電壓產生器140的使用率並非100%時,事實上都是在浪費程式化脈衝操作的時間。In addition, the diverse input data Data will affect the efficiency of the voltage generator 140 during operation. For example, in the data path scheme consistent with Table 1, it is not considered whether the bit arrangement in the input data Data really needs to be required for each memory cell to be supplied with current by the voltage generator 140 for a programmed pulse operation. Since the actual address of the memory cell has a specific mapping relationship with the logical address, and this mapping relationship will be described in the following embodiments, here actually corresponds to the actual address B0 and B1 of the memory cell. The bit values in the logical addresses D00 and D08 are taken as an example. When both bit values of the logical address of the input data Data D00 and D08 are logic "1", the usage rate of the voltage generator 140 is zero because no high voltage signal is required. When the logical address of the input data Data is that one of the bit values D00 and D084 is a logical "0" and the other bit value is a logical "1", the usage rate of the voltage generator 140 is 50%. The usage rate of the voltage generator 140 is 100% only when the bit values of the logical addresses D00 and D08 in the input data Data are all logic "0". In other words, when the usage rate of the voltage generator 140 is not 100%, it is actually a waste of time for the stylized pulse operation.

圖3是依照本發明一實施例說明一種記憶體裝置300的方塊圖。圖1與圖3之間的主要差異為,圖1中的控制邏輯電路160由圖3的記憶體控制器360所取代。圖3的記憶體控制器360除了耦接資料緩衝器150以及電壓產生器140以外,還耦接列解碼器130。本實施例的記憶體控制器360可直接讀取輸入資料Data和指令CMD,也可以從資料緩衝器150讀取所需的輸入資料Data。換句話說,記憶體控制器360與資料緩衝器150可雙向連接,以使記憶體控制器360可控制資料緩衝器150而進行輸入資料150的讀取與暫存。圖3的記憶體控制器360依據輸入資料Data控制列解碼器130以調整位址控制信號Y0~Y3的控制路徑順序,且記憶體控制器360同時地控制電壓產生器以依據輸入資料Data來調整輸入資料信號HDVIN0~HDVIN7的資料路徑順序,從而對記憶胞陣列110中的記憶胞進行程式化操作。記憶體控制器360可由邏輯電路、微處理器…等控制單元來實現。FIG. 3 is a block diagram showing a memory device 300 in accordance with an embodiment of the invention. The main difference between FIG. 1 and FIG. 3 is that the control logic circuit 160 of FIG. 1 is replaced by the memory controller 360 of FIG. The memory controller 360 of FIG. 3 is coupled to the column decoder 130 in addition to the data buffer 150 and the voltage generator 140. The memory controller 360 of this embodiment can directly read the input data Data and the command CMD, and can also read the required input data Data from the data buffer 150. In other words, the memory controller 360 and the data buffer 150 can be bidirectionally coupled to enable the memory controller 360 to control the data buffer 150 for reading and temporarily storing the input data 150. The memory controller 360 of FIG. 3 controls the column decoder 130 according to the input data Data to adjust the control path sequence of the address control signals Y0~Y3, and the memory controller 360 simultaneously controls the voltage generator to adjust according to the input data Data. The data path sequence of the data signals HDVIN0~HDVIN7 is input to program the memory cells in the memory cell array 110. The memory controller 360 can be implemented by a control unit such as a logic circuit, a microprocessor, or the like.

將圖1的記憶體裝置100與圖3的記憶體裝置300相比較,圖1中的控制邏輯電路160僅能控制資料路徑DP。相對而言,圖3的記憶體控制器360可依據輸入資料Data的位元資料來同時控制資料路徑DP以及控制路徑CP,以重新安排資料路徑順序以及控制路徑順序中的內容。藉此,可將需要進行程式化操作的記憶胞進行程式化操作,且略過不需要進行程式化操作的記憶胞。如此一來,記憶體裝置300中的程式化操作的處理次數將可能會降低,從而減少進行程式化操作所耗費的時間。以下將說明符合本發明之精神的相關實施例,應用本實施例者可依其需求來調整相關實施例中的應用。Comparing the memory device 100 of FIG. 1 with the memory device 300 of FIG. 3, the control logic circuit 160 of FIG. 1 can only control the data path DP. In contrast, the memory controller 360 of FIG. 3 can simultaneously control the data path DP and the control path CP according to the bit data of the input data Data to rearrange the data path sequence and control the content in the path sequence. Thereby, the memory cells that need to be programmed can be programmed, and the memory cells that do not need to be programmed can be skipped. As a result, the number of processing operations of the stylized operation in the memory device 300 may be reduced, thereby reducing the time taken for the stylized operation. The related embodiments in accordance with the spirit of the present invention will be described below, and the application in the related embodiments can be adjusted according to the needs of the embodiment.

在此說明記憶胞的實際位址跟邏輯位址之間的對映關係。圖4是記憶胞的實際位址Bit00~Bit32跟邏輯位址D00~D31之間的對映關係圖。如圖4所示,基於快取記憶體裝置的應用,記憶胞的實際位址不同於記憶胞的邏輯位址,因若要依序地對記憶胞進行存取操作的話,將會導致存取速度過於緩慢。因此,本實施例將待程式化記憶胞(以及,32位元的記憶胞)依據資料路徑群組121~128的數量(如,8)以及待程式化記憶胞的實體位址Bit00~Bit32而被區分為多個記憶胞群組(如,8個記憶體群組G1~G8)。各個記憶胞群組G1~G8分別對應到各個資料路徑群組121~128。待程式化記憶胞的實體位址與邏輯位址之間的對映關係為,第i個記憶胞群組中的第j個記憶胞的實體位址為[(i-1)×4+(j-1)],第i個記憶胞群組中的第j個記憶胞的邏輯位址為[(j-1)×8+(i-1)],其中i與j為正整數,i小於等於資料路徑群組121~128的數量(亦即,8),且j小於等於單個資料路徑群組中的路徑開關的數量(亦即,4)。例如,第1個記憶胞群組中的第1個記憶胞的實體位址為Bit00(”0×8+0”),而其邏輯位址為D00(”0×8+0”);第3個記憶胞群組中的第1個記憶胞的實體位址為Bit08(”2×4+0”),而其邏輯位址為D02(”0×8+2”);第5個記憶胞群組中的第3個記憶胞的實體位址為Bit18(”4×4+2”),而其邏輯位址為D20(”2×8+4”)。記憶胞群組G1~G8中記憶胞的邏輯位址D00~D31將與輸入資料DAata的邏輯位址相同。Here, the mapping relationship between the actual address of the memory cell and the logical address is described. 4 is an enantiomorphic relationship diagram between the actual address Bit00~Bit32 of the memory cell and the logical address D00~D31. As shown in FIG. 4, based on the application of the cache memory device, the actual address of the memory cell is different from the logical address of the memory cell, because access to the memory cell in order will result in access. The speed is too slow. Therefore, in this embodiment, the memory cells to be programmed (and the 32-bit memory cells) are based on the number of data path groups 121-128 (eg, 8) and the physical addresses of the memory cells to be programmed, Bit00~Bit32. It is divided into a plurality of memory cell groups (for example, 8 memory groups G1 to G8). Each of the memory cell groups G1 to G8 corresponds to each of the data path groups 121 to 128. The mapping between the physical address and the logical address of the stylized memory cell is that the physical address of the jth memory cell in the i-th memory cell group is [(i-1)×4+( J-1)], the logical address of the jth memory cell in the i-th memory cell group is [(j-1)×8+(i-1)], where i and j are positive integers, i It is less than or equal to the number of data path groups 121~128 (ie, 8), and j is less than or equal to the number of path switches in a single data path group (ie, 4). For example, the physical address of the first memory cell in the first memory cell group is Bit00 ("0x8+0"), and the logical address thereof is D00 ("0x8+0"); The physical address of the first memory cell in the three memory cell groups is Bit08 ("2×4+0"), and the logical address is D02 ("0×8+2"); the fifth memory The physical address of the third memory cell in the cell group is Bit18 ("4x4+2"), and its logical address is D20 ("2x8+4"). The logical addresses D00~D31 of the memory cells in the memory cell group G1~G8 will be the same as the logical address of the input data DAata.

在此利用圖5來說明圖3中記憶體控制器360所使用的資料路徑方案,從而實現本發明實施例所述的程式化脈衝操作。圖5是依照本發明一實施例說明記憶胞陣列的程式化方法的流程圖。在此以輸入資料Data[31:0]等於(1111-1110-1111-1100-1111-0010-1111-1100)作為舉例。例如,位元Data[0]、Data[8]、Data[16]、Data[24]、Data[1]、Data[17]、Data[10]與Data[11]的數值皆為邏輯”0”,輸入資料Data的其餘位元則為邏輯”1”。另,在此說明,Data[0]的邏輯位址為D00;位元Data[1]的邏輯位址為D01,並依此類推。Here, the data path scheme used by the memory controller 360 of FIG. 3 will be described with reference to FIG. 5 to implement the programd pulse operation described in the embodiment of the present invention. FIG. 5 is a flow chart illustrating a stylized method of a memory cell array in accordance with an embodiment of the invention. Here, the input data Data[31:0] is equal to (1111-1110-1111-1100-1111-0010-1111-1100) as an example. For example, the values of the bits Data[0], Data[8], Data[16], Data[24], Data[1], Data[17], Data[10], and Data[11] are all logical "0" ", the remaining bits of the input data Data are logical "1". In addition, it is explained here that the logical address of Data[0] is D00; the logical address of the bit Data[1] is D01, and so on.

請同時參考圖3及圖5,於步驟S510中,記憶體控制器360進行初始化,並設定第一個記憶胞群組G1為下述步驟中的待搜尋記憶胞群組。亦即,記憶體控制器360將i設定為1(i=1)以表示第1個記憶體群組G1。Referring to FIG. 3 and FIG. 5 simultaneously, in step S510, the memory controller 360 performs initialization, and sets the first memory cell group G1 to be the memory cell group to be searched in the following steps. That is, the memory controller 360 sets i to 1 (i = 1) to indicate the first memory group G1.

然後,記憶體控制器360依序地尋找輸入資料Data中由記憶胞群組的記憶胞的邏輯位址所對應的至少一個第一位元是否為需進行程式化操作的特定值。例如,於步驟S520中,由於步驟S510預先設定待搜尋記憶胞群組為第一個記憶胞群組G1,因此記憶體控制器360在輸入資料Data中由記憶胞群組G1的記憶胞的邏輯位址(亦即,邏輯位址D00、D08、D16及D24)所對應的位元(亦即,Data[0]、Data[8]、Data[16]及Data[24])是否是需要進行程式化操作的特定值(例如,邏輯”0”)。於步驟S530中,記憶體控制器360判斷此記憶胞群組G1中記憶胞的邏輯位址D00、D08、D16及D24所對應的輸入資料Data的位元Data[0]、Data[8]、Data[16]及Data[24]是否都不是特定值。如果記憶體控制器360在此記憶胞群組G1中記憶胞的邏輯位址D00、D08、D16及D24所對應的輸入資料Data的位元Data[0]、Data[8]、Data[16]及Data[24]皆為邏輯”1”非邏輯”0”時,則從步驟S530進入步驟S532,記憶體控制器360判斷此記憶胞群組是否為最後一個記憶體群組G8。亦即,記憶體控制器360判斷i是否為8。當記憶胞群組並不是最後一個記憶體群組時,便從步驟S532進入步驟S534,將表示記憶體群組的數值i加1(亦即,i++1)並再次進入步驟S520,以從下一個記憶體群組(如,第2個記憶體群組G2)中記憶胞的邏輯位址(亦即,邏輯位址D01、D09、D17及D25)所對映的輸入資料Data的位元來判斷是否需進行程式化操作的特定值(邏輯”0”)。Then, the memory controller 360 sequentially searches for whether the at least one first bit corresponding to the logical address of the memory cell of the memory cell group in the input data Data is a specific value to be programmed. For example, in step S520, since the memory cell group to be searched is set as the first memory cell group G1 in advance in step S510, the logic of the memory cell of the memory cell group G1 in the input data Data is calculated by the memory controller 360. Whether the bit corresponding to the address (ie, logical addresses D00, D08, D16, and D24) (ie, Data[0], Data[8], Data[16], and Data[24]) is required A specific value for a stylized operation (for example, a logical "0"). In step S530, the memory controller 360 determines the bits Data[0], Data[8] of the input data Data corresponding to the logical addresses D00, D08, D16 and D24 of the memory cells in the memory cell group G1, Whether Data[16] and Data[24] are not specific values. If the memory controller 360 stores the bit data Data[0], Data[8], Data[16] of the input data corresponding to the logical addresses D00, D08, D16 and D24 of the memory cell in the memory cell group G1. When Data[24] is logical "1" non-logic "0", then the process proceeds from step S530 to step S532, and the memory controller 360 determines whether the memory cell group is the last memory group G8. That is, the memory controller 360 determines whether i is 8. When the memory cell group is not the last memory group, the process proceeds from step S532 to step S534, the value i indicating the memory group is incremented by 1 (i.e., i++1) and proceeds to step S520 again to The bit of the input data Data mapped from the logical address of the memory cell (ie, logical addresses D01, D09, D17, and D25) from the next memory group (eg, the second memory group G2) Yuan to determine whether a specific value (logical "0") for stylized operations is required.

若記憶體控制器360已從特定記憶胞群組(如,第一記憶胞群組G1)的記憶胞的邏輯位址D00、D08、D16及D24所對應的至少一第一位元判斷出特定值(邏輯”0”)時,例如,位元Data[0]等於邏輯”0”,便從步驟S530進入步驟S540,記憶體控制器360計數所述第一位元的數量,並判斷輸入資料Data中的第一位元的數量是否達到電壓產生器的幫浦容量(亦即,2)。於本實施例中,由於邏輯位址D00及D08所對應的位元Data[0]及Data[8]皆為邏輯”0”,因此位元Data[0]及Data[8]皆屬於『第一位元』且使得『第一位元』的數量達到2。If the memory controller 360 has determined the specificity from at least one first bit corresponding to the logical addresses D00, D08, D16, and D24 of the memory cells of the specific memory cell group (eg, the first memory cell group G1) When the value (logic "0"), for example, the bit Data[0] is equal to the logic "0", the process proceeds from step S530 to step S540, the memory controller 360 counts the number of the first bit, and judges the input data. Whether the number of first bits in Data reaches the pump capacity of the voltage generator (ie, 2). In this embodiment, since the bits Data[0] and Data[8] corresponding to the logical addresses D00 and D08 are all logical "0", the bits Data[0] and Data[8] belong to the first One yuan and make the number of "first digits" reach 2.

當輸入資料Data中的第一位元的數量達到幫浦容量(2)時,便從步驟S540進入步驟S560,記憶體控制器360依據此特定記憶胞群組G1所對應的特定資料路徑群組121來設定輸入資料信號HVDIN0,同時地依據輸入資料Data中的第一位元(亦即,位元Data[0]及Data[8])所對應的邏輯位址D0及D8設定位址控制信號Y0、Y1。邏輯位址D00及D08分別對應到位址控制信號Y0及Y1。邏輯位址D00及D08分別對應到記憶胞的實際位址Bit00及Bit01。此時的程式化脈衝次數、控制路徑順序以及資料路徑順序如表2所示。 表2 <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 程式化 脈衝次數 </td><td> 控制路徑順序 </td><td> 資料路徑順序 </td><td> 待程式化記憶胞的實際位址 </td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td> HVDIN0 </td><td> Bit00/Bit01 </td></tr></TBODY></TABLE>When the number of the first bit in the input data Data reaches the pump capacity (2), the process proceeds from step S540 to step S560, and the memory controller 360 determines the specific data path group corresponding to the specific memory cell group G1. 121, the input data signal HVDIN0 is set, and the address control signal is set according to the logical addresses D0 and D8 corresponding to the first bit (that is, the bits Data[0] and Data[8]) of the input data Data. Y0, Y1. The logical addresses D00 and D08 correspond to the address control signals Y0 and Y1, respectively. The logical addresses D00 and D08 correspond to the actual addresses Bit00 and Bit01 of the memory cell, respectively. The number of stylized pulses, control path sequence, and data path sequence at this time are shown in Table 2. Table 2  <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> Stylized pulse times</td><td> Control path order</td><td> Data path order</td><td> Actual address of the memory cell to be programmed</td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td > HVDIN0 </td><td> Bit00/Bit01 </td></tr></TBODY></TABLE>

於步驟S570中,記憶體控制器360便依據上述表2中脈衝次數1對應的一列資料中已設定的輸入資料信號HVDIN0以及已設定的位址控制信號Y0/Y1來控制列解碼器130以調整位址控制信號的控制路徑順序,且記憶體控制器360同時地控制電壓產生器140以調整輸入資料信號的資料路徑順序,從而對所對應的記憶胞進行程式化操作。在執行完步驟S570後,便回到步驟S520以續行後續記憶胞的程式化操作。In step S570, the memory controller 360 controls the column decoder 130 to adjust according to the input data signal HVDIN0 set in the data corresponding to the pulse number 1 in Table 2 and the set address control signal Y0/Y1. The control path sequence of the address control signals, and the memory controller 360 simultaneously controls the voltage generator 140 to adjust the data path sequence of the input data signals to program the corresponding memory cells. After step S570 is executed, the process returns to step S520 to continue the stylization operation of the subsequent memory cells.

在本實施例中,由於位於相同記憶胞群組G1中輸入資料Data的位元Data[16]及Data[24]也是為邏輯”0”,因此同樣如上述步驟S520、S530、S540、S560至S570的步驟流程所述,依據已設定的輸入資料信號以及已設定的位址控制信號對特定資料路徑群組G1以及邏輯位址D16、D24所對應的記憶胞進行程式化操作。邏輯位址D16及D24分別對應到記憶胞的實際位址Bit02及Bit03。上述表2亦增加在脈衝次數2對應的一列資料,呈現如下表3: 表3 <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 程式化 脈衝次數 </td><td> 控制路徑順序 </td><td> 資料路徑順序 </td><td> 待程式化記憶胞的實際位址 </td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td> HVDIN0 </td><td> Bit00/Bit01 </td></tr><tr><td> 2 </td><td> Y2/Y3 </td><td> HVDIN0 </td><td> Bit02/Bit03 </td></tr></TBODY></TABLE>In this embodiment, since the bits Data[16] and Data[24] of the input data Data located in the same memory cell group G1 are also logical "0", the same as steps S520, S530, S540, and S560 described above. In the step flow of S570, the memory cells corresponding to the specific data path group G1 and the logical addresses D16 and D24 are programmed according to the set input data signal and the set address control signal. The logical addresses D16 and D24 correspond to the actual addresses Bit02 and Bit03 of the memory cell, respectively. Table 2 above also adds a column of data corresponding to pulse number 2, which is presented in Table 3 below: Table 3  <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> Stylized pulse times</td><td> Control path order</td><td> Data path order</td><td> Actual address of the memory cell to be programmed</td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td > HVDIN0 </td><td> Bit00/Bit01 </td></tr><tr><td> 2 </td><td> Y2/Y3 </td><td> HVDIN0 </td>< Td> Bit02/Bit03 </td></tr></TBODY></TABLE>

從步驟S570回到步驟S520,由於記憶胞群組G1中的各個記憶胞皆已完成程式化脈衝操作,記憶體控制器360便在輸入資料Data中由下一個記憶胞群組(即,第二個記憶胞群組G2)的記憶胞的邏輯位址(亦即,邏輯位址D01、D09、D17及D25)所對應的位元(亦即,Data[1]、Data[9]、Data[17]及Data[25])是否是需要進行程式化操作的特定值(例如,邏輯”0”)。Returning from step S570 to step S520, since each of the memory cells in the memory cell group G1 has completed the stylized pulse operation, the memory controller 360 is in the input data Data by the next memory cell group (ie, the second Bits corresponding to the logical addresses of the memory cells of the memory cell group G2) (ie, logical addresses D01, D09, D17, and D25) (ie, Data[1], Data[9], Data[ 17] and Data[25]) are specific values that need to be stylized (for example, logic "0").

由於記憶體控制器360在記憶胞群組G2中記憶胞的邏輯位址D01及D17所對應的輸入資料Data的位元Data[1]、Data[17]皆為邏輯”0”,因此從步驟S520經由步驟S530進入步驟S540,記憶體控制器360計數第一位元(位元Data[1]及Data[17])的數量達到2 。然後,從步驟S540經由步驟S560進入步驟S570,記憶體控制器360依據此特定記憶胞群組G2所對應的特定資料路徑群組122來設定輸入資料信號HVDIN1,同時地依據輸入資料Data中的第一位元(亦即,位元Data[1]及Data[17])所對應的邏輯位址D01及D17設定位址控制信號Y0、Y3。邏輯位址D01及D17分別對應到位址控制信號Y0及Y3。然後,記憶體控制器360依據下述表4中脈衝次數3對應的一列資料對特定資料路徑群組G2以及邏輯位址D01、D17所對應的記憶胞進行程式化操作。邏輯位址D01及D17分別對應到記憶胞的實際位址Bit04及Bit06。 表4 <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 程式化 脈衝次數 </td><td> 控制路徑順序 </td><td> 資料路徑順序 </td><td> 待程式化記憶胞的實際位址 </td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td> HVDIN0 </td><td> Bit00/Bit01 </td></tr><tr><td> 2 </td><td> Y2/Y3 </td><td> HVDIN0 </td><td> Bit02/Bit03 </td></tr><tr><td> 3 </td><td> Y0/Y2 </td><td> HVDIN1 </td><td> Bit04/Bit06 </td></tr></TBODY></TABLE>Since the memory controller 360 in the memory cell group G2, the logical data addresses D01 and D17 of the memory cell correspond to the input data Data bits Data[1], Data[17] are all logical "0", so the step is S520 proceeds to step S540 via step S530, and the memory controller 360 counts the number of first bits (bits Data[1] and Data[17]) to 2 . Then, from step S540 to step S570 via step S560, the memory controller 360 sets the input data signal HVDIN1 according to the specific data path group 122 corresponding to the specific memory cell group G2, and simultaneously according to the input data Data. The address addresses control signals Y0, Y3 are set by the logical addresses D01 and D17 corresponding to one bit (i.e., the bits Data[1] and Data[17]). The logical addresses D01 and D17 correspond to the address control signals Y0 and Y3, respectively. Then, the memory controller 360 performs a program operation on the memory cells corresponding to the specific data path group G2 and the logical addresses D01 and D17 according to a column of data corresponding to the pulse number 3 in Table 4 below. The logical addresses D01 and D17 correspond to the actual addresses Bit04 and Bit06 of the memory cell, respectively. Table 4  <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> Stylized pulse times</td><td> Control path order</td><td> Data path order</td><td> Actual address of the memory cell to be programmed</td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td > HVDIN0 </td><td> Bit00/Bit01 </td></tr><tr><td> 2 </td><td> Y2/Y3 </td><td> HVDIN0 </td>< Td> Bit02/Bit03 </td></tr><tr><td> 3 </td><td> Y0/Y2 </td><td> HVDIN1 </td><td> Bit04/Bit06 </ Td></tr></TBODY></TABLE>

回到步驟S520,記憶體控制器360在輸入資料Data中由記憶胞群組G2的記憶胞的邏輯位址(亦即,邏輯位址D25)所對應的位元(亦即,Data[25])是否是需要進行程式化操作的特定值(例如,邏輯”0”)。由於位元Data[25]並非邏輯”0”且記憶胞群組G2中所對應的輸入資料Data的位元皆已尋找完畢,便從步驟S530經過步驟S532以進入S534,記憶體控制器360將表示記憶體群組的數值i加1(亦即,i=3)並回到步驟S520。Returning to step S520, the memory controller 360 is in the input data Data by the logical address of the memory cell of the memory cell group G2 (ie, the logical address D25) (ie, Data[25] Whether it is a specific value that needs to be stylized (for example, logic "0"). Since the bit Data[25] is not logical "0" and the bit of the input data Data corresponding to the memory cell group G2 has been searched, the process proceeds from step S530 to step S532 to proceed to S534, and the memory controller 360 will The value i indicating the group of memories is incremented by 1 (i.e., i = 3) and returns to step S520.

記憶體控制器360在輸入資料Data中由記憶胞群組G3的記憶胞的邏輯位址(亦即,邏輯位址D2、D10、D18及D26)所對應的位元(亦即,Data[2]、Data[10]、Data[18]及Data[26])是否是特定值(邏輯”0”)。由於位元Data[2]、Data[10]、Data[18]及Data[26]中僅位元Data[10]為邏輯”0”,便從步驟S530進入步驟S540,記憶體控制器360計數第一位元的數量,並判斷輸入資料Data中的第一位元的數量是否達到電壓產生器的幫浦容量(亦即,2)。本實施例於此時僅記憶胞群組G3中的邏輯位址對應的位元Data[10]為『第一位元』。因此,當輸入資料Data中的第一位元的數量並未達到幫浦容量(2)時,便從步驟S540進入步驟S550,記憶體控制器360從後續的其他記憶胞群組(如,記憶胞群組G4~G8)中尋找是否有與特定記憶胞群組(亦即,記憶胞群組G3)中的第一位元(亦即,Data[10])具備相同的位址控制信號Y1的第二位元。於本實施例中,位元Data[10]所對應的位址控制信號為Y1,因此記憶體控制器360便會在記憶胞群組G4~G8中尋找與具備相同位址控制信號Y1的位元、且此位元需是特定值(邏輯”0”),從而找到了記憶胞群組G4中的位元Data[11]。The memory controller 360 is in the input data Data by the logical address of the memory cell of the memory cell group G3 (ie, logical addresses D2, D10, D18, and D26) (ie, Data[2] ], Data[10], Data[18], and Data[26]) are specific values (logical "0"). Since only the bit Data[10] in the bits Data[2], Data[10], Data[18], and Data[26] is logic "0", the process proceeds from step S530 to step S540, and the memory controller 360 counts The number of the first bit is determined, and it is judged whether the number of the first bit in the input data Data reaches the pump capacity of the voltage generator (that is, 2). In this embodiment, only the bit Data[10] corresponding to the logical address in the cell group G3 is "first bit". Therefore, when the number of the first bit in the input data Data does not reach the pump capacity (2), the process proceeds from step S540 to step S550, and the memory controller 360 proceeds from the subsequent other memory cell groups (eg, memory). Whether the cell group G4~G8) has the same address control signal Y1 as the first bit (ie, Data[10]) in the specific memory cell group (ie, the memory cell group G3) The second bit. In this embodiment, the address control signal corresponding to the bit Data[10] is Y1, so the memory controller 360 searches for the bit with the same address control signal Y1 in the memory cell group G4~G8. The element, and this bit needs to be a specific value (logical "0"), thereby finding the bit Data[11] in the memory cell group G4.

當記憶體控制器360從其他記憶胞群組G4中尋找到第二位元(亦即,位元Data[11])時,便從步驟S550進入步驟S562,記憶體控制器360會將此第二位元進行記錄,以避免後續的程式化脈衝操作將此第二位元再次進行重複的操作。然後,從步驟S652進入步驟S565,記憶體控制器360依據特定記憶胞群組G3所對應的特定資料路徑群組123以及其他記憶胞群組G4所對應的其他資料路徑群組124設定輸入資料信號HVDIN2及HVDIN3,並依據輸入資料Data中的第一位元(亦即,位元Data[10])所對應的邏輯位址D10來設定位址控制信號Y1。僅設定單個位址控制信號Y1的理由在於,位元Data[10]與位元Data[11]所對應的位址控制信號皆為Y1。換句話說,位元Data[10]與位元Data[11]共享位址控制信號Y1。When the memory controller 360 finds the second bit (ie, the bit Data[11]) from the other memory cell group G4, the process proceeds from step S550 to step S562, and the memory controller 360 will The two bits are recorded to prevent subsequent stylized pulse operations from repeating the second bit again. Then, proceeding from step S652 to step S565, the memory controller 360 sets the input data signal according to the specific data path group 123 corresponding to the specific memory cell group G3 and other data path groups 124 corresponding to the other memory cell group G4. HVDIN2 and HVDIN3, and the address control signal Y1 is set according to the logical address D10 corresponding to the first bit (that is, the bit Data[10]) in the input data Data. The reason why only a single address control signal Y1 is set is that the address control signals corresponding to the bit Data[10] and the bit Data[11] are both Y1. In other words, the bit Data[10] shares the address control signal Y1 with the bit Data[11].

此時的程式化脈衝次數、控制路徑順序以及資料路徑順序如表5所示。 表5 <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 程式化 脈衝次數 </td><td> 控制路徑順序 </td><td> 資料路徑順序 </td><td> 待程式化記憶胞的實際位址 </td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td> HVDIN0 </td><td> Bit00/Bit01 </td></tr><tr><td> 2 </td><td> Y2/Y3 </td><td> HVDIN0 </td><td> Bit02/Bit03 </td></tr><tr><td> 3 </td><td> Y0/Y2 </td><td> HVDIN1 </td><td> Bit04/Bit06 </td></tr><tr><td> 4 </td><td> Y1 </td><td> HVDIN2/3 </td><td> Bit09/Bit13 </td></tr></TBODY></TABLE>The number of programmed pulses, control path sequence, and data path sequence at this time are shown in Table 5. table 5  <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> Stylized pulse times</td><td> Control path order</td><td> Data path order</td><td> Actual address of the memory cell to be programmed</td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td > HVDIN0 </td><td> Bit00/Bit01 </td></tr><tr><td> 2 </td><td> Y2/Y3 </td><td> HVDIN0 </td>< Td> Bit02/Bit03 </td></tr><tr><td> 3 </td><td> Y0/Y2 </td><td> HVDIN1 </td><td> Bit04/Bit06 </ Td></tr><tr><td> 4 </td><td> Y1 </td><td> HVDIN2/3 </td><td> Bit09/Bit13 </td></tr>< /TBODY></TABLE>

於步驟S570中,記憶體控制器360將依據表5中脈衝次數4對應的一列資料中已設定的輸入資料信號HVDIN2/HVDIN3以及已設定的位址控制信號Y1對所對應的記憶胞(實際位址Bit09/Bit13)進行程式化脈衝操作。In step S570, the memory controller 360 pairs the corresponding input data signal HVDIN2/HVDIN3 and the set address control signal Y1 according to the pulse number 4 corresponding to the pulse number 4 in Table 5 to the corresponding memory cell (actual bit). Stylized pulse operation at Bit09/Bit13).

回到步驟S520,由於記憶體群組G5~G8中的邏輯位址所對應的輸入資料Data的位元皆是邏輯”1”,因此這些位元相對應的記憶胞皆不需進行程式化脈衝操作,因此將會經由步驟S530、步驟S532到步驟S590,以結束記憶胞陣列110的程式化操作。Returning to step S520, since the bits of the input data Data corresponding to the logical addresses in the memory groups G5 to G8 are all logic "1", the corresponding memory cells of the bits do not need to be programmed. Operation, therefore, will proceed to step S530, step S532 to step S590 to end the stylized operation of the memory cell array 110.

上述實施例並未說明到當步驟S550並未找尋到第二位元的情況,以下說明之。在此假設位元Data[11]的數值為邏輯”1”而非前述實施例所述的邏輯”0”。當已尋找到記憶胞群組G3所對應的輸入資料Data的位元Data[10]且已進入步驟S550時,記憶體控制器360從後續的其他記憶胞群組(如,記憶胞群組G4~G8)中尋找是否有與特定記憶胞群組(亦即,記憶胞群組G3)中的第一位元(亦即,Data[10])具備相同的位址控制信號Y1的第二位元。然而,由於記憶胞群組G4~G8中邏輯位址相對應的輸入資料Data的位元皆為邏輯”1”,因而並未找到第二位元。因此,便從步驟S550進入步驟S560,記憶體控制器360依據特定記憶胞群組G3所對應的特定資料路徑群組123設定輸入資料信號HVDIN2,並依據輸入資料Data中的第一位元(亦即,位元Data[10])所對應的邏輯位址D10設定位址控制信號Y1。The above embodiment does not explain the case where the second bit is not found in step S550, which will be described below. It is assumed here that the value of the bit Data[11] is a logical "1" instead of the logical "0" described in the previous embodiment. When the bit Data[10] of the input data Data corresponding to the memory cell group G3 has been found and has proceeded to step S550, the memory controller 360 proceeds from the subsequent other memory cell groups (eg, the memory cell group G4). ~G8) looking for the second bit of the same address control signal Y1 as the first bit (ie, Data[10]) in the specific memory cell group (ie, the memory cell group G3) yuan. However, since the bits of the input data Data corresponding to the logical addresses in the memory cell groups G4 to G8 are all logic "1", the second bit is not found. Therefore, proceeding from step S550 to step S560, the memory controller 360 sets the input data signal HVDIN2 according to the specific data path group 123 corresponding to the specific memory cell group G3, and according to the first bit in the input data Data (also That is, the logical address D10 corresponding to the bit Data[10]) sets the address control signal Y1.

此時的程式化脈衝次數、控制路徑順序以及資料路徑順序如表6所示。 表6 <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 程式化 脈衝次數 </td><td> 控制路徑順序 </td><td> 資料路徑順序 </td><td> 待程式化記憶胞的實際位址 </td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td> HVDIN0 </td><td> Bit00/Bit01 </td></tr><tr><td> 2 </td><td> Y2/Y3 </td><td> HVDIN0 </td><td> Bit02/Bit03 </td></tr><tr><td> 3 </td><td> Y0/Y2 </td><td> HVDIN1 </td><td> Bit04/Bit06 </td></tr><tr><td> 4 </td><td> Y1 </td><td> HVDIN2 </td><td> Bit09 </td></tr></TBODY></TABLE>The number of stylized pulses, control path sequence, and data path sequence at this time are shown in Table 6. Table 6  <TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> Stylized pulse times</td><td> Control path order</td><td> Data path order</td><td> Actual address of the memory cell to be programmed</td></tr><tr><td> 1 </td><td> Y0/Y1 </td><td > HVDIN0 </td><td> Bit00/Bit01 </td></tr><tr><td> 2 </td><td> Y2/Y3 </td><td> HVDIN0 </td>< Td> Bit02/Bit03 </td></tr><tr><td> 3 </td><td> Y0/Y2 </td><td> HVDIN1 </td><td> Bit04/Bit06 </ Td></tr><tr><td> 4 </td><td> Y1 </td><td> HVDIN2 </td><td> Bit09 </td></tr></TBODY>< /TABLE>

於步驟S570中,記憶體控制器360將依據表6中脈衝次數4對應的一列資料對特定資料路徑群組G3以及邏輯位址D10(對應到第一位元Data[10])所對應的記憶胞(實際位址Bit09)進行程式化脈衝操作。In step S570, the memory controller 360 compares the data corresponding to the specific data path group G3 and the logical address D10 (corresponding to the first bit Data[10]) according to the data corresponding to the pulse number 4 in Table 6. The cell (actual address Bit09) performs a programmatic pulse operation.

由上述實施例可看出,本發明實施例可透過較少次數的程式化脈衝來實現對記憶胞陣列110中待程式化記憶體的程式化脈衝操作,例如從圖1的記憶體裝置100所需的16次程式化脈衝減少到如表5或表6中圖3的記憶體裝置300所需的4次程式化脈衝,進而最大化圖3中電壓產生器140的使用率。As can be seen from the above embodiments, the embodiment of the present invention can implement a stylized pulse operation on the memory to be programmed in the memory cell array 110 by a small number of stylized pulses, for example, from the memory device 100 of FIG. The required 16 programmed pulses are reduced to the four programmed pulses required by the memory device 300 of Figure 3 in Table 5 or Table 6, thereby maximizing the usage of the voltage generator 140 of Figure 3.

綜上所述,本發明實施例所述的記憶體裝置中的記憶體控制器依據在資料緩衝器中的輸入資料來重新編排資料路徑的導通順序(亦即,位址控制信號的控制路徑順序)以及同時地重新編排資料路徑的資料提供順序(亦即,輸入資料信號的資料路徑順序)。藉此,可將需要進行程式化操作的記憶胞進行程式化操作,且略過不需要進行程式化操作的記憶胞。如此一來,記憶體裝置中的程式化操作的處理次數將可能會降低,從而減少進行程式化操作所耗費的時間。In summary, the memory controller in the memory device according to the embodiment of the present invention re-arranges the turn-on sequence of the data path according to the input data in the data buffer (that is, the control path sequence of the address control signal) And the order in which the data of the data path is re-arranged at the same time (ie, the order of the data paths of the input data signals). Thereby, the memory cells that need to be programmed can be programmed, and the memory cells that do not need to be programmed can be skipped. As a result, the number of processing operations of the stylized operation in the memory device may be reduced, thereby reducing the time taken for the stylized operation.

雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。Although the present invention has been disclosed in the above embodiments, it is not intended to limit the present invention, and any one of ordinary skill in the art can make some changes and refinements without departing from the spirit and scope of the present invention. The scope of the invention is defined by the scope of the appended claims.

100、300‧‧‧記憶體裝置100, 300‧‧‧ memory devices

110‧‧‧記憶胞陣列110‧‧‧ memory cell array

120‧‧‧選擇開關120‧‧‧Selection switch

121~128‧‧‧資料路徑群組121~128‧‧‧data path group

130‧‧‧列解碼器130‧‧‧ column decoder

135‧‧‧行解碼器135‧‧ ‧ row decoder

140‧‧‧電壓產生器140‧‧‧Voltage generator

150‧‧‧資料緩衝器150‧‧‧ data buffer

160‧‧‧控制邏輯電路160‧‧‧Control logic

210、220‧‧‧箭頭210, 220‧‧‧ arrows

360‧‧‧記憶體控制器360‧‧‧ memory controller

S510~S590‧‧‧步驟S510~S590‧‧‧Steps

Adr‧‧‧記憶胞位址Adr‧‧‧ memory cell address

Data‧‧‧輸入資料Data‧‧‧ Input data

Y0~Y3‧‧‧位址控制信號Y0~Y3‧‧‧ address control signal

HVDIN0~HVDIN7‧‧‧輸入資料信號HVDIN0~HVDIN7‧‧‧ input data signal

M1、M2‧‧‧電晶體M1, M2‧‧‧ transistor

CP‧‧‧控制路徑CP‧‧‧ control path

DP‧‧‧資料路徑DP‧‧‧ data path

cA、cB‧‧‧記憶胞cA, cB‧‧‧ memory cells

Bit00~Bit31‧‧‧記憶胞的實際位址Bit00~Bit31‧‧‧The actual address of the memory cell

D00~D31‧‧‧記憶胞的邏輯位址D00~D31‧‧‧ logical address of memory cell

CMD‧‧‧指令CMD‧‧ directive

WL‧‧‧字元線WL‧‧‧ character line

BL‧‧‧位元線BL‧‧‧ bit line

圖1是一種記憶體裝置的方塊圖。 圖2是圖1中記憶體裝置的部分元件的詳細電路圖。 圖3是依照本發明一實施例說明一種記憶體裝置的方塊圖。 圖4是記憶胞的實際位址Bit00~Bit32跟邏輯位址D00~D31之間的對映關係圖。 圖5是依照本發明一實施例說明記憶胞陣列的程式化方法的流程圖。1 is a block diagram of a memory device. Figure 2 is a detailed circuit diagram of some of the components of the memory device of Figure 1. 3 is a block diagram showing a memory device in accordance with an embodiment of the invention. 4 is an enantiomorphic relationship diagram between the actual address Bit00~Bit32 of the memory cell and the logical address D00~D31. FIG. 5 is a flow chart illustrating a stylized method of a memory cell array in accordance with an embodiment of the invention.

Claims (14)

一種記憶體裝置,包括:記憶胞陣列,包括多個記憶胞;選擇開關,耦接所述記憶胞陣列,提供位元線至該記憶體陣列;第一解碼器,耦接所述選擇開關,接收記憶胞位址以產生位址控制信號;第二解碼器,耦接所述記憶胞陣列,接收該記憶胞位址以提供字元線至該記憶體陣列;電壓產生器,耦接所述選擇開關;以及記憶體控制器,耦接所述第一解碼器及所述電壓產生器,所述記憶體控制器獲得輸入資料以控制所述電壓產生器而產生輸入資料信號,其中,所述記憶體控制器依據所述輸入資料控制所述第一解碼器以調整所述位址控制信號的控制路徑順序,且所述記憶體控制器同時地控制所述電壓產生器以調整所述輸入資料信號的資料路徑順序,從而對所述記憶胞進行程式化操作。 A memory device includes: a memory cell array including a plurality of memory cells; a selection switch coupled to the memory cell array to provide a bit line to the memory array; and a first decoder coupled to the selection switch, Receiving a memory cell address to generate an address control signal; a second decoder coupled to the memory cell array, receiving the memory cell address to provide a word line to the memory array; and a voltage generator coupled to the a selection switch; and a memory controller coupled to the first decoder and the voltage generator, the memory controller obtaining input data to control the voltage generator to generate an input data signal, wherein The memory controller controls the first decoder to adjust a control path sequence of the address control signal according to the input data, and the memory controller simultaneously controls the voltage generator to adjust the input data The data path sequence of the signals to program the memory cells. 如申請專利範圍第1項所述的記憶體裝置,其中所述選擇開關包括多個資料路徑群組,每個資料路徑群組由多個路徑開關所組成,所述位址控制信號的位元數等於單個資料路徑群組中的所述路徑開關的數量,所述記憶胞陣列中待程式化記憶胞的數 量等於單個資料路徑群組中的所述路徑開關的數量乘以所述資料路徑群組的數量的數值。 The memory device of claim 1, wherein the selection switch comprises a plurality of data path groups, each data path group being composed of a plurality of path switches, the bit of the address control signal The number is equal to the number of the path switches in a single data path group, and the number of memory cells to be programmed in the memory cell array The amount is equal to the number of the path switches in a single data path group multiplied by the number of the data path groups. 如申請專利範圍第2項所述的記憶體裝置,其中所述待程式化記憶胞依據所述資料路徑群組的數量以及所述待程式化記憶胞的實體位址而被區分為多個記憶胞群組,所述記憶胞群組分別對應所述資料路徑群組,其中,待程式化記憶胞的實體位址與邏輯位址之間的對映關係為,第i個記憶胞群組中的第j個記憶胞的實體位址為[(i-1)×4+(j-1)],第i個記憶胞群組中的第j個記憶胞的邏輯位址為[(j-1)×8+(i-1)],其中i與j為正整數,i小於等於所述資料路徑群組的數量,且j小於等於單個資料路徑群組中的所述路徑開關的數量,其中,所述記憶胞群組中所述記憶胞的邏輯位址與所述輸入資料的邏輯位址相同。 The memory device of claim 2, wherein the to-be-programmed memory cell is divided into a plurality of memories according to the number of the data path groups and the physical address of the to-be-programmed memory cell. a group of cells corresponding to the data path group, wherein an mapping relationship between a physical address and a logical address of the memory cell to be programmed is, in the i-th memory cell group The physical address of the jth memory cell is [(i-1)×4+(j-1)], and the logical address of the jth memory cell in the i-th memory cell group is [(j- 1) × 8+(i-1)], where i and j are positive integers, i is less than or equal to the number of data path groups, and j is less than or equal to the number of the path switches in a single data path group, The logical address of the memory cell in the memory cell group is the same as the logical address of the input data. 如申請專利範圍第2項所述的記憶體裝置,其中所述記憶體控制器依序地尋找所述輸入資料中由所述記憶胞群組的所述記憶胞的所述邏輯位址所對應的至少一第一位元是否為需進行程式化操作的特定值,當由特定記憶胞群組的所述記憶胞的所述邏輯位址所對應的至少一第一位元為所述特定值時,所述記憶體控制器計數所述至少一第一位元的數量,當所述輸入資料中的所述至少一第一位元的數量達到所述電壓產生器的幫浦容量時,所述記憶體控制器依據所述特定記憶胞 群組所對應的特定資料路徑群組設定所述輸入資料信號,依據所述輸入資料中的所述至少一第一位元所對應的邏輯位址設定所述位址控制信號,從而對所述特定資料路徑群組以及所述邏輯位址所對應的所述記憶胞進行程式化操作。 The memory device of claim 2, wherein the memory controller sequentially searches for the logical address corresponding to the memory cell of the memory cell group in the input data. Whether at least a first bit is a specific value to be programmed, and at least one first bit corresponding to the logical address of the memory cell of the specific memory cell group is the specific value The memory controller counts the number of the at least one first bit, when the number of the at least one first bit in the input data reaches the pump capacity of the voltage generator, The memory controller is based on the specific memory cell Setting the input data signal according to the specific data path group corresponding to the group, and setting the address control signal according to the logical address corresponding to the at least one first bit in the input data, thereby The specific data path group and the memory cell corresponding to the logical address are programmed. 如申請專利範圍第4項所述的記憶體裝置,當所述輸入資料中的所述至少一第一位元的數量並未達到所述電壓產生器的所述幫浦容量時,所述記憶體控制器從其他記憶胞群組中尋找是否有與所述特定記憶胞群組中的至少一第一位元具備相同的所述位址控制信號的第二位元,當所述記憶體控制器從所述其他記憶胞群組中尋找到所述第二位元時,所述記憶體控制器依據所述特定記憶胞群組所對應的所述特定資料路徑群組以及所述其他記憶胞群組所對應的其他資料路徑群組設定所述輸入資料信號,並依據所述輸入資料中的所述至少一第一位元所對應的邏輯位址來設定所述位址控制信號,從而對所述特定資料路徑群組、所述其他資料路徑群組以及所述邏輯位址所對應的所述記憶胞進行程式化操作。 The memory device of claim 4, wherein when the number of the at least one first bit in the input data does not reach the pump capacity of the voltage generator, the memory The body controller searches for a second bit from the other memory cell group having the same address control signal as the at least one first bit in the specific memory cell group, when the memory control When the device finds the second bit from the other memory cell group, the memory controller is configured according to the specific data path group corresponding to the specific memory cell group and the other memory cells The other data path group corresponding to the group sets the input data signal, and sets the address control signal according to the logical address corresponding to the at least one first bit in the input data, thereby The specific data path group, the other data path group, and the memory cell corresponding to the logical address are programmed. 如申請專利範圍第4項所述的記憶體裝置,當並未從所述其他記憶胞群組中尋找到所述第二位元時,所述記憶體控制器依據所述特定記憶胞群組所對應的特定資料路徑群組設定所述輸入資料信號,並依據所述輸入資料中的所述至少一第一位元所對應的所述邏輯位址設定所述位址控制信號,從而對所述特定資料 路徑群組以及所述邏輯位址所對應的所述記憶胞進行程式化操作。 The memory device of claim 4, wherein when the second bit is not found from the other memory cell group, the memory controller is configured according to the specific memory cell group Corresponding specific data path group setting the input data signal, and setting the address control signal according to the logical address corresponding to the at least one first bit in the input data, thereby Specific information The path group and the memory cell corresponding to the logical address are programmed. 如申請專利範圍第4項所述的記憶體裝置,當所述輸入資料中由所述記憶胞群組的所述記憶胞的所述邏輯位址所對應的所述至少一第一位元皆不是所述特定值時,所述記憶體控制器結束對所述記憶胞陣列的程式化操作。 The memory device of claim 4, wherein the at least one first bit corresponding to the logical address of the memory cell of the memory cell group in the input data is When not the particular value, the memory controller ends the stylized operation of the memory cell array. 一種記憶胞陣列的程式化方法,包括:獲得輸入資料;依據所述輸入資料調整位址控制信號的控制路徑順序,並同時地調整輸入資料信號的資料路徑順序,以提供位元線至該記憶胞陣列;以及依據所述位址控制信號與所述輸入資料信號以對所述記憶胞陣列中的多個記憶胞的一部分或全部進行程式化操作。 A stylized method for a memory cell array, comprising: obtaining input data; adjusting a control path sequence of an address control signal according to the input data, and simultaneously adjusting a data path sequence of the input data signal to provide a bit line to the memory And arranging a portion or all of the plurality of memory cells in the array of memory cells according to the address control signal and the input data signal. 如申請專利範圍第8項所述的程式化方法,其中所述位址控制信號用以控制多個資料路徑群組,每個資料路徑群組由多個路徑開關所組成,所述位址控制信號的位元數等於單個資料路徑群組中的所述路徑開關的數量,所述記憶胞陣列中待程式化記憶胞的數量等於單個資料路徑群組中的所述路徑開關的數量乘以所述資料路徑群組的數量的數值。 The program method of claim 8, wherein the address control signal is used to control a plurality of data path groups, each data path group being composed of a plurality of path switches, the address control The number of bits of the signal is equal to the number of the path switches in the group of individual data paths, the number of cells to be programmed in the array of memory cells being equal to the number of the path switches in the group of individual data paths multiplied by The value of the number of data path groups. 如申請專利範圍第9項所述的程式化方法,更包括:將所述待程式化記憶胞依據所述資料路徑群組的數量以及所述待程式化記憶胞的實體位址而被區分為多個記憶胞群組,所述 記憶胞群組分別對應所述資料路徑群組,其中,待程式化記憶胞的實體位址與邏輯位址之間的關係為,第i個記憶胞群組中的第j個記憶胞的實體位址為[(i-1)×4+(j-1)],第i個記憶胞群組中的第j個記憶胞的邏輯位址為[(j-1)×8+(i-1)],其中i與j為正整數,i小於等於所述資料路徑群組的數量,且j小於等於單個資料路徑群組中的所述路徑開關的數量,其中,所述記憶胞群組中所述記憶胞的邏輯位址與所述輸入資料的邏輯位址相同。 The stylized method of claim 9, further comprising: dividing the to-be-programmed memory cell into two according to the number of the data path groups and the physical address of the to-be-programmed memory cell a plurality of memory cell groups, said The memory cell group respectively corresponds to the data path group, wherein the relationship between the physical address and the logical address of the programized memory cell is the entity of the jth memory cell in the i-th memory cell group The address is [(i-1)×4+(j-1)], and the logical address of the jth memory cell in the i-th memory cell group is [(j-1)×8+(i- 1)], wherein i and j are positive integers, i is less than or equal to the number of the data path groups, and j is less than or equal to the number of the path switches in a single data path group, wherein the memory cell group The logical address of the memory cell is the same as the logical address of the input data. 如申請專利範圍第10項所述的程式化方法,依據所述輸入資料調整所述位址控制信號的控制路徑順序,並同時地調整所述輸入資料信號的資料路徑順序包括下列步驟:依序地尋找所述輸入資料中由所述記憶胞群組的所述記憶胞的所述邏輯位址所對應的至少一第一位元是否為需進行程式化操作的特定值;當由特定記憶胞群組的所述記憶胞的所述邏輯位址所對應的至少一第一位元為所述特定值時,計數所述至少一第一位元的數量;以及當所述輸入資料中的所述至少一第一位元的數量達到用於產生所述輸入資料信號的電壓產生器的幫浦容量時,依據所述特定記憶胞群組所對應的特定資料路徑群組設定所述輸入資料信號,依據所述輸入資料中的所述至少一第一位元所對應的邏輯位址設定所述位址控制信號。 For example, in the stylized method of claim 10, adjusting the control path sequence of the address control signal according to the input data, and simultaneously adjusting the data path sequence of the input data signal includes the following steps: Searching for whether the at least one first bit corresponding to the logical address of the memory cell of the memory cell group in the input data is a specific value to be programmed; when by a specific memory cell Counting the number of the at least one first bit when at least one first bit corresponding to the logical address of the memory cell of the group is the specific value; and when the input data is in the When the number of the at least one first bit reaches the pump capacity of the voltage generator for generating the input data signal, the input data signal is set according to the specific data path group corresponding to the specific memory cell group. And setting the address control signal according to a logical address corresponding to the at least one first bit in the input data. 如申請專利範圍第11項所述的程式化方法,依據所述輸入資料調整所述位址控制信號的控制路徑順序,並同時地調整所述輸入資料信號的資料路徑順序還包括下列步驟:當所述輸入資料中的所述至少一第一位元的數量並未達到所述電壓產生器的所述幫浦容量時,所述記憶體控制器從其他記憶胞群組中尋找是否有與所述特定記憶胞群組中的至少一第一位元具備相同的所述位址控制信號的第二位元;以及當所述記憶體控制器從所述其他記憶胞群組中尋找到所述第二位元時,依據所述特定記憶胞群組所對應的所述特定資料路徑群組以及所述其他記憶胞群組所對應的其他資料路徑群組設定所述輸入資料信號,並且依據所述輸入資料中的所述至少一第一位元所對應的邏輯位址來設定所述位址控制信號。 For example, in the stylized method of claim 11, adjusting the control path sequence of the address control signal according to the input data, and simultaneously adjusting the data path sequence of the input data signal further includes the following steps: When the number of the at least one first bit in the input data does not reach the pump capacity of the voltage generator, the memory controller searches for other memory cells to find out whether there is any At least one first bit in the particular group of memory cells having the same second bit of the address control signal; and when the memory controller finds the same from the other group of memory cells In the second bit, the input data signal is set according to the specific data path group corresponding to the specific memory cell group and other data path groups corresponding to the other memory cell group, and The address control signal is set by a logical address corresponding to the at least one first bit in the input data. 如申請專利範圍第12項所述的程式化方法,依據所述輸入資料調整所述位址控制信號的控制路徑順序,並同時地調整所述輸入資料信號的資料路徑順序還包括下列步驟:當並未所述其他記憶胞群組中尋找到所述第二位元時,依據所述特定記憶胞群組所對應的特定資料路徑群組設定所述輸入資料信號,並依據所述輸入資料中的所述至少一第一位元所對應的所述邏輯位址設定所述位址控制信號。 According to the stylized method of claim 12, adjusting the control path sequence of the address control signal according to the input data, and simultaneously adjusting the data path sequence of the input data signal further includes the following steps: When the second bit is not found in the other memory cell group, the input data signal is set according to the specific data path group corresponding to the specific memory cell group, and according to the input data. The logical address corresponding to the at least one first bit sets the address control signal. 如申請專利範圍第12項所述的程式化方法,依據所述輸入資料調整所述位址控制信號的控制路徑順序,並同時地調整所述輸入資料信號的資料路徑順序還包括下列步驟: 當所述輸入資料中由所述記憶胞群組的所述記憶胞的所述邏輯位址所對應的所述至少一第一位元皆不是所述特定值時,結束對所述記憶胞陣列的程式化操作。 According to the stylized method of claim 12, adjusting the control path sequence of the address control signal according to the input data, and simultaneously adjusting the data path sequence of the input data signal further includes the following steps: Ending the memory cell array when the at least one first bit corresponding to the logical address of the memory cell of the memory cell group is not the specific value in the input data Stylized operation.
TW107117433A 2018-05-22 2018-05-22 Memory device and programming method for memory cell array TWI650769B (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW107117433A TWI650769B (en) 2018-05-22 2018-05-22 Memory device and programming method for memory cell array
JP2018195561A JP2019204570A (en) 2018-05-22 2018-10-17 Programming method for memory device and memory cell array
JP2021063150A JP7087153B2 (en) 2018-05-22 2021-04-01 How to program memory devices and memory cell array

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW107117433A TWI650769B (en) 2018-05-22 2018-05-22 Memory device and programming method for memory cell array

Publications (2)

Publication Number Publication Date
TWI650769B true TWI650769B (en) 2019-02-11
TW202004752A TW202004752A (en) 2020-01-16

Family

ID=66214013

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107117433A TWI650769B (en) 2018-05-22 2018-05-22 Memory device and programming method for memory cell array

Country Status (2)

Country Link
JP (2) JP2019204570A (en)
TW (1) TWI650769B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI785819B (en) * 2021-08-05 2022-12-01 旺宏電子股份有限公司 Memory device and memory control method thereof

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7089622B1 (en) * 2021-06-18 2022-06-22 ウィンボンド エレクトロニクス コーポレーション Semiconductor storage device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060146636A1 (en) * 2004-06-04 2006-07-06 Jen-Shou Hsu Internal power management scheme for a memory chip in deep power down mode
TW201239887A (en) * 2011-02-28 2012-10-01 Samsung Electronics Co Ltd Nonvolatile memory device, memory system including the same, and method of operating nonvolatile memory device
TW201440071A (en) * 2013-01-16 2014-10-16 Macronix Int Co Ltd Operating method of memory
TW201714091A (en) * 2015-10-08 2017-04-16 上海兆芯集成電路有限公司 Neural network unit that performs concurrent LSTM cell calculations

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100423894B1 (en) * 2002-05-09 2004-03-22 삼성전자주식회사 Low-voltage semiconductor memory device
KR100645047B1 (en) * 2004-10-12 2006-11-10 삼성전자주식회사 Non-volatile memory device and high speed program method thereof
KR100706245B1 (en) * 2005-04-13 2007-04-11 삼성전자주식회사 Nor flash memory device using bit scan method and program method thereof
US7512032B2 (en) * 2006-03-28 2009-03-31 Andrea Martinelli Electronic device comprising non volatile memory cells with optimized programming and corresponding programming method
JP5702573B2 (en) * 2010-10-20 2015-04-15 スパンション エルエルシー Nonvolatile semiconductor memory device and data writing method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060146636A1 (en) * 2004-06-04 2006-07-06 Jen-Shou Hsu Internal power management scheme for a memory chip in deep power down mode
TW201239887A (en) * 2011-02-28 2012-10-01 Samsung Electronics Co Ltd Nonvolatile memory device, memory system including the same, and method of operating nonvolatile memory device
TW201440071A (en) * 2013-01-16 2014-10-16 Macronix Int Co Ltd Operating method of memory
TW201714091A (en) * 2015-10-08 2017-04-16 上海兆芯集成電路有限公司 Neural network unit that performs concurrent LSTM cell calculations

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI785819B (en) * 2021-08-05 2022-12-01 旺宏電子股份有限公司 Memory device and memory control method thereof

Also Published As

Publication number Publication date
TW202004752A (en) 2020-01-16
JP2019204570A (en) 2019-11-28
JP2021101403A (en) 2021-07-08
JP7087153B2 (en) 2022-06-20

Similar Documents

Publication Publication Date Title
US11955204B2 (en) Apparatuses and methods for concurrently accessing different memory planes of a memory
US11768603B2 (en) Apparatuses and methods for concurrently accessing multiple partitions of a non-volatile memory
TWI624838B (en) Apparatuses and methods for concurrently accessing multiple memory planes of a memory during a memory access operation
US6781877B2 (en) Techniques for reducing effects of coupling between storage elements of adjacent rows of memory cells
US7580322B2 (en) High speed programming for nonvolatile memory
US9007841B1 (en) Programming scheme for improved voltage distribution in solid-state memory
JP7087153B2 (en) How to program memory devices and memory cell array
TW202044258A (en) Semiconductor apparatus and continuous read method
KR100967026B1 (en) Non volatile memory device and cache reading method thereof
TWI699766B (en) Semiconductor memory device
US20140281678A1 (en) Memory controller and memory system
US5784318A (en) Method of preprogramming before verifying in non-volatile memory device and apparatus for the same
TWI740780B (en) Semiconductor memory device and reading method
CN110570891B (en) Memory device and programming method of memory cell array
US10418109B1 (en) Memory device and programming method of memory cell array
JP2002133899A (en) Non-volatile semiconductor memory and execution method for its auto-program
JP2001035173A (en) Flash memory device and its program method
KR20100040426A (en) Operating method of non volatile memory device
KR20100006660A (en) Dual plane copyback method for non volatile memory device
KR20110078745A (en) Semiconductor memory device and method of operating the same