TWI758117B - Flash memory and writing method thereof - Google Patents
Flash memory and writing method thereof Download PDFInfo
- Publication number
- TWI758117B TWI758117B TW110107671A TW110107671A TWI758117B TW I758117 B TWI758117 B TW I758117B TW 110107671 A TW110107671 A TW 110107671A TW 110107671 A TW110107671 A TW 110107671A TW I758117 B TWI758117 B TW I758117B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- voltage
- programming
- action
- erase
- Prior art date
Links
Images
Landscapes
- Read Only Memory (AREA)
Abstract
Description
本發明是有關於一種快閃記憶體及其寫入方法,且特別是有關於一種可執行抹除時程式化動作的快閃記憶體及其寫入方法。The present invention relates to a flash memory and a writing method thereof, and more particularly, to a flash memory and a writing method thereof capable of performing programming actions during erasing.
在反或式快閃記憶體中,執行抹除動作的速度,遠低於執行程式化動作的速度。而在於物聯網的應用上,針對快閃記憶體以進行所謂的空中韌體的更新(on-the-air firmware update),是一個很重要的功能。因此,如果可以有效降低快閃記憶體所進行的資料更新所需的時間,將可有效的降低快閃記憶體的內容因電源的喪失或有缺陷的軟體版本而產生的風險。In reverse-OR flash memory, the speed of executing the erase action is much lower than the speed of executing the program action. In the application of the Internet of Things, the so-called on-the-air firmware update (on-the-air firmware update) for the flash memory is a very important function. Therefore, if the time required for data updating by the flash memory can be effectively reduced, the risk of the content of the flash memory caused by power loss or defective software version can be effectively reduced.
本發明提供一種快閃記憶體及其寫入方法,透過執行抹除時程式化動作以加速記憶體的資料寫入速度,並可節省功率消耗。The present invention provides a flash memory and a writing method thereof, which can accelerate the data writing speed of the memory and save power consumption by executing the programmed action during erasing.
本發明的快閃記憶體包括多個記憶區塊以及多個多工電路。記憶區塊區分為多個記憶庫。多工電路分別耦接至記憶庫。各多工電路用以傳送多個抹除電壓或多個程式化電壓以使對應的各記憶庫執行抹除動作或程式化動作。其中,依據抹除時程式化指令,當記憶庫的其中之一執行抹除動作時,記憶庫的其中之另一執行程式化動作。The flash memory of the present invention includes a plurality of memory blocks and a plurality of multiplexing circuits. The memory block is divided into multiple memory banks. The multiplexing circuits are respectively coupled to the memory banks. Each multiplexer circuit is used for transmitting a plurality of erase voltages or a plurality of programming voltages so that the corresponding memory banks perform the erase operation or the programming operation. Wherein, according to the programming command during erasing, when one of the memory banks executes the erasing action, the other one of the memory banks executes the programming action.
本發明的快閃記憶體的寫入方法包括:區分多個記憶區塊為多個記憶庫;提供多個多工電路以分別對應至記憶庫,使各多工電路傳送多個抹除電壓或多個程式化電壓以使對應的各記憶庫執行抹除動作或程式化動作;以及,依據抹除時程式化指令,使些記憶庫的其中之一執行抹除動作時,並使記憶庫的其中之另一執行該程式化動作。The flash memory writing method of the present invention includes: distinguishing a plurality of memory blocks into a plurality of memory banks; providing a plurality of multiplexing circuits to correspond to the memory banks respectively, so that each multiplexing circuit transmits a plurality of erase voltages or A plurality of programming voltages are used to cause the corresponding memory banks to perform the erasing action or programming action; The other of them performs the programmed action.
基於上述,本發明透過使記憶區塊被區分為多個記憶庫。並透過多工電路提供不同的電壓供應管道,依據抹除時程式化指令提供其中之一的記憶庫多個抹除電壓以執行抹除動作,並提供多個程式化電壓以使其中之另一的記憶庫以執行程式化動作。在本發明實施例中,不同的記憶庫間,可分別同步執行程式化動作以及抹除動作,有效降低記憶體寫入所需的時間。Based on the above, the present invention divides the memory block into a plurality of memory banks. And provide different voltage supply channels through the multiplexing circuit, according to the programming command during erasing, provide a plurality of erasing voltages for one of the memory banks to execute the erasing action, and provide a plurality of programming voltages to make the other one memory to perform programmed actions. In the embodiment of the present invention, the programming action and the erasing action can be performed synchronously between different memory banks, which effectively reduces the time required for memory writing.
請參照圖1A,圖1A繪示本發明一實施例的快閃記憶體的示意圖。快閃記憶體100包括多個記憶區塊111~11A、121~12A以及多個多工電路130、140。其中,記憶區塊111~11A被區分為記憶庫BK1,記憶區塊121~12A則被區分為記憶庫BKN。多工電路130、140分別耦接至記憶庫BK1、BKN。各多工電路130、140用以傳送多個抹除電壓ERSV或多個程式化電壓PGV以使對應的各該記憶庫執行一抹除動作或一程式化動作。Please refer to FIG. 1A . FIG. 1A is a schematic diagram of a flash memory according to an embodiment of the present invention. The
在本實施例中,多工電路130、140可依據程式化指令PGMCMD或抹除指令ERSCMD以傳導合適的操作電壓。多工電路130、140的其中之一可依據抹除指令ERSCMD來使對應的記憶庫(記憶庫BK1及BKN的其中之一)執行抹除動作,並且,多工電路130、140的另一可同時依據程式化指令PGMCMD來使對應的記憶庫(記憶庫BK1及BKN的其中之另一)執行程式化動作。In this embodiment, the
舉例來說明,以下請同步參照圖1A以及圖1B,其中圖1B繪示本發明一實施例的快閃記憶體晶片的方塊圖。快閃記憶體晶片102包括位址產生器1021、資料暫存器1022、模式邏輯電路1023、時脈產生器1024、靜態記憶體緩衝器1025、狀態機1026、高電壓(HV)產生器1027、感測放大器1028、輸出緩衝器1029、記憶體陣列1030、X解碼器1031以及Y解碼器1032。輸出緩衝器1029透過輸入輸出介面電路1033來輸出信號SO或信號SIO0~SIO3。資料暫存器1022以及模式邏輯電路1023可透過輸入輸出介面電路1033來接收信號SI、SIO0~SIO3、WP#、HOLD#、RESET#以及CS#。在此,圖1A中的多工電路130、140可以為高電壓產生器1027、X解碼器1031以及Y解碼器1032的部分電路。模式邏輯電路1023可決定透過輸入輸出介面電路1033所接收的命令並將命令傳送至狀態機1026以產生指令來據以操作快閃記憶體晶片102。For example, please refer to FIG. 1A and FIG. 1B simultaneously, wherein FIG. 1B shows a block diagram of a flash memory chip according to an embodiment of the present invention. The
當快閃記憶體晶片102接收到抹除指令ERSCMD,多工電路130可提供抹除電壓ERSV至記憶庫BK1,並使記憶庫BK1可執行抹除動作。在此同時,如果程式化指令PGMCMD伴隨著非記憶庫BK1(被抹除的記憶庫)的位址(例如對應記憶庫BKN)被接收,多工電路140可提供程式化電壓PGV至記憶庫BKN,以使記憶庫BKN可執行程式化動作。在此請注意,在本範例中,對應記憶庫BK1以及BKN可分別設置多個狀態旗標以記錄多個記行中的位元。以記憶庫BK1為範例,一個狀態旗標記錄對應的記憶庫BK1的進行中的一抹除狀態,另一個狀態旗標記錄對應的記憶庫BK1的進行中的一程式化狀態。多工電路130、140可依據狀態旗標的數值,來使對應的記憶庫BK1、BKN執行抹除動作或程式化動作。When the
特別值得注意的,在本發明實施例中,承繼上述的範例,由於記憶庫BKN的程式化動作,是與記憶庫BK1的抹除動作同步被執行的。在抹除動作需要相對長的操作時間的前提下,記憶庫BKN的程式化動作並不需要額外的操作時間。也因此,記憶庫BKN的程式化動作不需要急於完成,而可以透過降級式程式化(degraded program)動作來進行。在此,所謂降級式程式化動作,是透過使被程式化的記憶胞的位元數減少,及/或減低(相對於一般式的程式化動作)產生熱載子注入效應的程式化電壓的電壓值,並藉以減低程式化動作中所需的程式化電流,並使程式化電流可以小於一期望值(期望值可等於一般式的程式化動作所需的程式化電流的電流值),可有較減低功率耗損。It is particularly worth noting that, in the embodiment of the present invention, following the above-mentioned example, the programming action of the memory bank BKN is executed synchronously with the erasing action of the memory bank BK1. On the premise that the erasing action requires a relatively long operation time, the programmed action of the memory bank BKN does not require additional operation time. Therefore, the programming action of the memory bank BKN does not need to be completed in a hurry, but can be performed through a degraded program action. Here, the so-called degraded programming operation is performed by reducing the number of bits of the programmed memory cells and/or reducing the programming voltage (relative to the general programming operation) that produces the hot carrier injection effect. The voltage value, and thereby reducing the programming current required in the programming action, and making the programming current less than a desired value (the expected value can be equal to the current value of the programming current required for the general programming action), it can be more Reduce power consumption.
關於本發明實施例中,記憶區塊的區分方式,可參照圖2A至圖2C的本發明實施例的記憶區塊區分方式的示意圖。在圖2A中,快閃記憶體中具有實體位址連續的記憶區塊2101~2116。記憶區塊2101~2116可區分為記憶庫BK1以及BK2。其中,在圖2A的實施方式中,記憶庫BK1可以包括實體位址連續的記憶區塊2101~2108,記憶庫BK2則可以包括實體位址連續的記憶區塊2109~2116。Regarding the way of distinguishing the memory blocks in the embodiment of the present invention, reference may be made to the schematic diagrams of the way of distinguishing the memory blocks in the embodiment of the present invention in FIGS. 2A to 2C . In FIG. 2A , the flash memory has
在圖2B中,記憶庫BK1與記憶庫BK2分別包括的多個記憶區塊中,彼此間的實體位址可以是相互交錯的。例如,依據記憶區塊2101~2116的實體位址的排列順序,記憶庫BK1中可包括第奇數個的記憶區塊2101、2103…、2015;記憶庫BK1中則可包括第偶數個的記憶區塊2102、2104…、2016。記憶庫BK1、BK2可以交錯配置方式進行安排,如果連續位址的記憶區塊透過抹除以及後程式化動作進行更新,上述的交錯配置在應用程式化中抹除操作是有幫助的。也就是說,在快閃記憶體中,在進程中(in progress),個別的分別執行程式化操作以及抹除操作是可以達到的。In FIG. 2B , in the plurality of memory blocks respectively included in the memory bank BK1 and the memory bank BK2 , the physical addresses of each other may be interleaved. For example, according to the arrangement order of the physical addresses of the memory blocks 2101-2116, the memory bank BK1 may include the odd-numbered
此外,在圖2C中,對應圖2A的實施方式,記憶庫BK1中所包括的各記憶區塊2101~2108,可區分為多個子區塊2101-L、2101-R~2108-L、2108-R;記憶庫BK2中所包括的各記憶區塊2109~2116,可區分為多個子區塊2109-L、2109-R~2116-L、2116-R。在積體電路的實體佈局上,以記憶庫BK1為範例,子區塊2101-L~2108-L可以設置在對應的多工電路的第一側邊,子區塊2101-R~2108-R則可以設置在對應的多工電路的第二側邊,第一側邊與第二側邊是相對的。In addition, in FIG. 2C, corresponding to the embodiment of FIG. 2A, each memory block 2101-2108 included in the memory bank BK1 can be divided into a plurality of sub-blocks 2101-L, 2101-R-2108-L, 2108- R; the
以下請參照圖3,圖3繪示本發明另一實施例的快閃記憶體的示意圖。快閃記憶體300一反或式(NOR)快閃記憶體。快閃記憶體300的多個記憶區塊可區分為記憶庫BK1以及記憶庫BK2。快閃記憶體300包括分別對應記憶庫BK1、BK2的多工電路321以及322。記憶庫BK1中另包括位元線選擇開關驅動器331、字元線驅動器341以及用以分別驅動N型深井中的P型井區(P-type well Inside deep N-type well, PWI區)以及N型深井區(deep N-type well, NWD區)的驅動器351及361。記憶庫BK2中則另包括位元線選擇開關驅動器332、字元線驅動器342以及用以分別驅動PWI區以及NWD區的驅動器352及362。Please refer to FIG. 3 below. FIG. 3 is a schematic diagram of a flash memory according to another embodiment of the present invention. The
另外,多工電路321用以提供抹除電壓ERSV或程式化電壓PGV至位元線選擇開關驅動器331、字元線驅動器341以及驅動器351及361,以使記憶庫BK1中的多個記憶區塊執行抹除動作或程式化動作。多工電路322用以提供抹除電壓ERSV或程式化電壓PGV至位元線選擇開關驅動器332、字元線驅動器342以及驅動器352及362,以使記憶庫BK2中的多個記憶區塊執行抹除動作或程式化動作。其中,位元線選擇開關驅動器331、332用以控制多個位元線開關的開啟或關閉;字元線驅動器341、342分別提供多個字元線電壓至多條字元線;驅動器351、352用以提供偏壓至多個PWI區,驅動器361、362用以提供多個偏壓至多個NWD區。In addition, the
關於多工電路321、322的實施細節,可參照圖4A、圖4B繪示的本發明實施例的快閃記憶體中的多工電路的多個實施方式的示意圖。在圖4A、圖4B中,多工電路400包括多個電壓選擇器MX11~MX56。多工電路400接收電源電壓VDD、參考接地電壓VSS、正向升壓電壓VPCP、負向升壓電壓VNCP、正向遮罩電壓VPCP_INH、負向遮罩電壓VNCP_INH以及讀取電壓RDP。For the implementation details of the multiplexing
在圖4A中,多工電路400執行程式化動作。在此時,多工電路400透過電壓選擇器MX11~MX56來針對電源電壓VDD、參考接地電壓VSS、正向升壓電壓VPCP、負向升壓電壓VNCP、正向遮罩電壓VPCP_INH、負向遮罩電壓VNCP_INH以及讀取電壓RDP進行選擇,並輸出電源電壓VDD、正向升壓電壓VPCP、負向遮罩電壓VNCP_INH以及參考接地電壓VSS以作為多個程式化電壓。In FIG. 4A, multiplexing
細節上來說明,在多工電路400對應的記憶區塊中,具有選中PWI區SPWI以及多個未選中PWI區DSPWI。在對應選中PWI區SPWI的部分,透過電壓選擇器MX41、MX31、MX21、MX11形成的第一路徑,多工電路400藉由電壓選擇器MX11的輸出,來提供正向升壓電壓VPCP至選中PWI區SPWI中的選中記憶胞的字元線。對應圖3的實施例,電壓選擇器MX11輸出的正向升壓電壓VPCP可先被提供至字元線驅動器341,並藉以驅動選中記憶胞的字元線。另外,透過電壓選擇器MX42、MX32、MX12形成的第二路徑;透過電壓選擇器MX42、MX32、MX22、MX13形成的第三路徑;以及電壓選擇器MX42、MX32、MX22、MX14形成的第四路徑,多工電路400可分別提供負向遮罩電壓VNCP_INH至選中PWI區SPWI中的未選中記憶胞的字元線。其中上述的四個路徑可以透過解碼記憶胞的字元線對應的全區字元線旗標GWL以及區域字元線旗標LWL來對應,並透過對應的路徑以接收正向升壓電壓VPCP或負向遮罩電壓VNCP_INH對應關係如下表所示:
其中,上述第一路徑所連接的記憶胞為選中記憶胞,第二路徑至第四路徑所連接的記憶胞,皆為未被選中記憶胞。The memory cells connected by the first path are selected memory cells, and the memory cells connected by the second path to the fourth path are all unselected memory cells.
另外,在對應未選中PWI區DSPWI的部分,透過電壓選擇器MX34、MX15形成的第五路徑;透過電壓選擇器MX34、MX16形成的第六路徑;透過電壓選擇器MX34、MX17形成的第七路徑;透過電壓選擇器MX34、MX18形成的第八路徑以輸出參考接地電壓VSS。基於未選中PWI區DSPWI中的記憶胞皆為未選中記憶胞,因此,可透過上述的第七路徑至第八路徑以提供參考接地電壓VSS至未選中PWI區DSPWI中的所有的未選中記憶胞的字元線。In addition, in the part corresponding to the unselected PWI area DSPWI, the fifth path formed by the voltage selectors MX34 and MX15; the sixth path formed by the voltage selectors MX34 and MX16; the seventh path formed by the voltage selectors MX34 and MX17 Path; the eighth path formed by the voltage selectors MX34 and MX18 is used to output the reference ground voltage VSS. Because the memory cells in the unselected PWI area DSPWI are all unselected memory cells, the reference ground voltage VSS can be provided to all the unselected memory cells in the unselected PWI area DSPWI through the above-mentioned seventh to eighth paths. Select the character line of the memory cell.
在另一方面,電壓選擇器MX51選擇正向升壓電壓VPCP來進行輸出,並透過傳送至對應的位元線選擇開關驅動器以導通選中位元線選擇開關。電壓選擇器MX52選擇參考接地電壓VSS以進行輸出,並藉以切斷未選中位元線選擇開關。電壓選擇器MX53選擇電源電壓VDD進行輸出,並透過對應的驅動器,以驅動選中NWD區。電壓選擇器MX54選擇參考接地電壓VSS以進行輸出,並透過對應的驅動器,以驅動選中PWI區。電壓選擇器MX55、MX56分別選擇電源電壓VDD、參考接地電壓VSS以進行輸出。其中電壓選擇器MX55、MX56的輸出用以分別驅動未選中NWD區以及未選中PWI區。On the other hand, the voltage selector MX51 selects the forward boost voltage VPCP for output, and transmits it to the corresponding bit line selection switch driver to turn on the selected bit line selection switch. The voltage selector MX52 selects the reference ground voltage VSS for output, and thereby cuts off the unselected bit line selection switch. The voltage selector MX53 selects the power supply voltage VDD for output, and drives the selected NWD area through the corresponding driver. The voltage selector MX54 selects the reference ground voltage VSS for output, and drives the selected PWI area through the corresponding driver. The voltage selectors MX55 and MX56 respectively select the power supply voltage VDD and the reference ground voltage VSS for output. The outputs of the voltage selectors MX55 and MX56 are used to drive the unselected NWD area and the unselected PWI area, respectively.
以下,在圖4B中,多工電路400用以執行抹除動作。在此時,多工電路400透過電壓選擇器MX11~MX56來針對電源電壓VDD、參考接地電壓VSS、正向升壓電壓VPCP、負向升壓電壓VNCP、正向遮罩電壓VPCP_INH、負向遮罩電壓VNCP_INH以及讀取電壓RDP進行選擇,並輸出電源電壓VDD、正向升壓電壓VPCP、負向升壓電壓VNCP、正向遮罩電壓VPCP_INH以及參考接地電壓VSS以作為多個抹除電壓。Hereinafter, in FIG. 4B , the
細節上來說明,在多工電路400對應的記憶區塊中,具有選中PWI區SPWI以及多個未選中PWI區DSPWI。在對應選中PWI區SPWI的部分,透過電壓選擇器MX42、MX32、MX11形成的第一路徑,多工電路400藉由電壓選擇器MX11的輸出,來提供負向升壓電壓VNCP至選中PWI區SPWI中的選中記憶胞的字元線。電壓選擇器MX11輸出的負向升壓電壓VNCP可先被提供至字元線驅動器,並藉以驅動選中記憶胞的字元線。透過電壓選擇器MX42、MX32、MX12形成的第二路徑,藉由電壓選擇器MX12的輸出,來提供負向升壓電壓VNCP至選中PWI區SPWI中的選中記憶胞的字元線。另外,透過電壓選擇器MX41、MX31、MX22、MX13形成的第三路徑;以及電壓選擇器MX41、MX31、MX22、MX14形成的第四路徑,多工電路400可分別提供正向遮罩電壓VPCP_INH至選中PWI區SPWI中的未選中記憶胞的字元線。其中上述的四個路徑可以透過解碼記憶胞的字元線對應的全區字元線旗標GWL以及區域字元線旗標LWL來對應,並透過對應的路徑以接收負向升壓電壓VNCP或正向遮罩電壓VPCP_INH對應關係如下表所示:
其中,上述第一路徑、第二路徑所連接的記憶胞為選中記憶胞,第三路徑、第四路徑所連接的記憶胞,皆為未被選中記憶胞。The memory cells connected to the first path and the second path are selected memory cells, and the memory cells connected to the third path and the fourth path are all unselected memory cells.
另外,在對應未選中PWI區DSPWI的部分,透過電壓選擇器MX34、MX15形成的第五路徑;透過電壓選擇器MX34、MX16形成的第六路徑;透過電壓選擇器MX34、MX17形成的第七路徑;透過電壓選擇器MX34、MX18形成的第八路徑以輸出參考接地電壓VSS。基於未選中PWI區DSPWI中的記憶胞皆為未選中記憶胞,因此,可透過上述的第七路徑至第八路徑以提供參考接地電壓VSS至未選中PWI區DSPWI中的所有的未選中記憶胞的字元線。In addition, in the part corresponding to the unselected PWI area DSPWI, the fifth path formed by the voltage selectors MX34 and MX15; the sixth path formed by the voltage selectors MX34 and MX16; the seventh path formed by the voltage selectors MX34 and MX17 Path; the eighth path formed by the voltage selectors MX34 and MX18 is used to output the reference ground voltage VSS. Because the memory cells in the unselected PWI area DSPWI are all unselected memory cells, the reference ground voltage VSS can be provided to all the unselected memory cells in the unselected PWI area DSPWI through the above-mentioned seventh to eighth paths. Select the character line of the memory cell.
在另一方面,電壓選擇器MX51選擇參考接地電壓VSS來進行輸出,並透過傳送至對應的位元線選擇開關驅動器以切斷選中位元線選擇開關。電壓選擇器MX52選擇參考接地電壓VSS以進行輸出,並藉以切斷未選中位元線選擇開關。電壓選擇器MX53選擇正向升壓電壓VPCP進行輸出,並透過對應的驅動器,以驅動選中NWD區。電壓選擇器MX54選擇正向升壓電壓VPCP以進行輸出,並透過對應的驅動器,以驅動選中PWI區。電壓選擇器MX55、MX56分別選擇電源電壓VDD、參考接地電壓VSS以進行輸出。其中電壓選擇器MX55、MX56的輸出用以分別驅動未選中NWD區以及未選中PWI區。On the other hand, the voltage selector MX51 selects the reference ground voltage VSS for output, and transmits to the corresponding bit line selection switch driver to turn off the selected bit line selection switch. The voltage selector MX52 selects the reference ground voltage VSS for output, and thereby cuts off the unselected bit line selection switch. The voltage selector MX53 selects the forward boost voltage VPCP for output, and drives the selected NWD area through the corresponding driver. The voltage selector MX54 selects the forward boost voltage VPCP for output, and drives the selected PWI region through the corresponding driver. The voltage selectors MX55 and MX56 respectively select the power supply voltage VDD and the reference ground voltage VSS for output. The outputs of the voltage selectors MX55 and MX56 are used to drive the unselected NWD area and the unselected PWI area, respectively.
以下請參照圖5,圖5繪示本發明實施例的快閃記憶體中,對應不同記憶庫的多個多工電路的實施方式的示意圖。圖5中具有多工電路510以及520,其中多工電路510包括電壓選擇器MX11a~MX56a,多工電路520則包括電壓選擇器MX11b~MX56b。在本實施方式中,多工電路510可執行如圖4A所繪示的程式化動作,而多工電路520則可同步執行如圖4B所繪示的抹除動作。如此一來,可順利完成在一記憶庫執行抹除動作(透過多工電路520提供抹除電壓)的同時,對另一記憶庫執行程式化動作(透過多工電路510提供程式化電壓)。可有效減低快閃記憶體的資料寫入所需的時間。Please refer to FIG. 5 below. FIG. 5 is a schematic diagram illustrating an implementation manner of multiple multiplexing circuits corresponding to different memory banks in a flash memory according to an embodiment of the present invention. 5 has multiplexing
附帶一提的,本實施方式中,電壓選擇器MX41a輸出的正向升壓電壓VPCP_BK1用以提供給對應多工電路510的記憶庫;電壓選擇器MX41b輸出的正向升壓電壓VPCP_BK2用以提供給對應多工電路520的記憶庫;電壓選擇器MX42a輸出的負向升壓電壓VNCP_BK1用以提供給對應多工電路510的記憶庫;電壓選擇器MX42b輸出的負向升壓電壓VNCP_BK2用以提供給對應多工電路520的記憶庫。Incidentally, in this embodiment, the forward boost voltage VPCP_BK1 output by the voltage selector MX41a is used to provide the memory bank corresponding to the
另外,在圖4A至圖5的實施方式中,所謂的正向升壓電壓VPCP是基於一基準電壓,透過一升壓機制(例如電荷泵(charge pump))的方式來產生的一大於0伏特的電壓。負向升壓電壓VNCP同樣是基於一基準電壓,透過負向的一升壓機制(例如電荷泵(charge pump))的方式來產生的一小於0伏特的電壓。而正向遮罩電壓VPCP_INH以及負向遮罩電壓VNCP_INH則是依據快閃記憶體中,適於針對未選中記憶胞進行遮罩的電壓值來設計。在本發明中,皆可應用本領域具通常知識者所熟知的方式來設定並實施,沒有特定的限制。In addition, in the embodiments of FIGS. 4A to 5 , the so-called forward boost voltage VPCP is based on a reference voltage and is generated by a boost mechanism (eg, a charge pump) to a voltage greater than 0 volts voltage. The negative boost voltage VNCP is also based on a reference voltage, and generates a voltage less than 0 volts through a negative boost mechanism (eg, a charge pump). The positive mask voltage VPCP_INH and the negative mask voltage VNCP_INH are designed according to the voltage values in the flash memory suitable for masking the unselected memory cells. In the present invention, it can be set and implemented in a manner well known to those skilled in the art, and there is no specific limitation.
另外,電壓選擇器MX11a~MX56a以及MX11b~MX56b所接收的控制信號,可透過對應快閃記憶體所設置的控制器來產生。而關於電壓選擇器MX11a~MX56a以及MX11b~MX56b的實施細節,則可應用本領域具通常知識者所熟知的任意的電壓選擇電路來實施,沒有特定的限制。In addition, the control signals received by the voltage selectors MX11a ~ MX56a and MX11b ~ MX56b can be generated by a controller provided in the corresponding flash memory. As for the implementation details of the voltage selectors MX11a~MX56a and MX11b~MX56b, any voltage selection circuit known to those skilled in the art can be used for implementation, and there is no specific limitation.
接著請參照圖6,圖6繪示本發明實施例的快閃記憶體執行抹除時的寫入動作的動作流程圖。在圖6中,步驟S610~S6130用以執行抹除動作,步驟S601~S605則執行程式化動作。其中,抹除動作以及程式化動作分別應用於不同的記憶庫。Next, please refer to FIG. 6 . FIG. 6 illustrates a flow chart of a write operation when the flash memory is erased according to an embodiment of the present invention. In FIG. 6 , steps S610 to S6130 are used to perform an erasing operation, and steps S601 to S605 are used to perform a programming operation. Among them, the erase action and the programmed action are applied to different memory banks respectively.
在細節上,在步驟S610中,針對第一記憶庫的抹除動作被啟動,步驟S620中則先執行預程式化動作,然後,在步驟S630中設定階段i=0以及槍數j=0。在此請注意,本實施例的抹除動作是透過多階段以及多槍的方式來執行的。在此,所謂的一個槍,指的是針對執行抹除動作的記憶胞施加一個抹除電壓脈衝。而所謂的多階段多槍的方式,則是針對各個抹除階段均設置一個目標電壓,並在各個抹除階段中,透過施加一個或多個抹除電壓脈衝(槍),來使被抹除的記憶胞的臨界電壓可以小於所設定的目標電壓。並在多個抹除階段後,可使記憶胞的臨界電壓小於最終設定的抹除目標電壓。In detail, in step S610, the erasing action for the first memory bank is activated, in step S620, the preprogrammed action is performed first, and then in step S630, the stage i=0 and the number of shots j=0 are set. Please note here that the erasing action of this embodiment is performed in a multi-stage and multi-shot manner. Here, the so-called one gun refers to applying one erasing voltage pulse to the memory cell performing the erasing operation. In the so-called multi-stage multi-gun method, a target voltage is set for each erasing stage, and in each erasing stage, one or more erasing voltage pulses (guns) are applied to make the erased stage The threshold voltage of the memory cells can be less than the set target voltage. And after a plurality of erasing stages, the threshold voltage of the memory cell can be made smaller than the final set erasing target voltage.
接著,在步驟S640中,針對抹除電壓的電壓值進行設定,並且,在步驟S650以依據步驟S640設定的電壓值來對記憶胞施加抹除電壓脈衝。在此請注意,抹除電壓脈衝可以維持一個的時間區間。在這個時間區間中,可同步針對第二記憶庫執行步驟S601~S605的程式化動作。Next, in step S640, the voltage value of the erase voltage is set, and in step S650, an erase voltage pulse is applied to the memory cells according to the voltage value set in step S640. Note here that the erase voltage pulse can be maintained for a time interval. In this time interval, the programmed actions of steps S601 to S605 can be performed synchronously for the second memory bank.
首先,步驟S601可依據先前有無發生程式化動作的行為,來判斷使否再次的啟動程式化動作。若判斷結果為是,則可直接執行步驟S603以啟動程式化流程。相對的,若判斷結果為非,則在步驟S602中判斷是否須執行新的程式化動作。在此,若步驟S602的判斷結果為是,則執行步驟S603;相對的,若步驟S602的判斷結果為否,則執行步驟S670。First, step S601 may determine whether to activate the programmed action again according to whether the programmed action has occurred before. If the determination result is yes, step S603 can be directly executed to start the programming process. On the other hand, if the determination result is negative, it is determined in step S602 whether a new programmed action needs to be executed. Here, if the determination result of step S602 is yes, then step S603 is performed; on the contrary, if the determination result of step S602 is no, step S670 is performed.
在此請注意,步驟S603可針對被程式化的記憶胞施加一次或多次的程式化電壓脈衝,接著,透過步驟S604以判斷被程式化的記憶胞的臨界電壓Vt是否已大於程式化目標電壓。若記憶胞的臨界電壓Vt已大於程式化目標電壓,表示程式化動作已完成,可執行步驟S670。相對的,若記憶胞的臨界電壓Vt在時間區間中未大於程式化目標電壓,表示程式化動作未完成,並透過步驟S605以透過旗標的方式來進行重試的標示動作。Please note that in step S603, one or more programming voltage pulses can be applied to the programmed memory cells, and then step S604 is used to determine whether the threshold voltage Vt of the programmed memory cells is greater than the programming target voltage . If the threshold voltage Vt of the memory cell is greater than the programming target voltage, it indicates that the programming operation has been completed, and step S670 can be executed. On the contrary, if the threshold voltage Vt of the memory cell is not greater than the programming target voltage in the time interval, it indicates that the programming operation is not completed, and the retry marking operation is performed through a flag in step S605.
在此請注意,基於步驟S650中,施加抹除電壓脈衝的時間區間是有限的,所以,若發生抹除電壓脈衝的時間區間不夠長以足以完成記憶胞的程式化動作時,可透過步驟S605的重試的標示動作,以在下一次的抹除電壓脈衝被施加的另一時間區間中,來執行未完成的記憶胞的程式化動作。Please note that the time interval for applying the erase voltage pulse in step S650 is limited. Therefore, if the time interval for the erase voltage pulse is not long enough to complete the programming of the memory cells, step S605 The marked action of retry is to perform the programming action of the unfinished memory cell in another time interval when the next erase voltage pulse is applied.
更值得一提的,當抹除電壓脈衝被穩定提供時,快閃記憶體對於抹除動作所耗去的電能是相對低的,也因此,在此時同步執行另一記憶庫的程式化動作,不會造成功率過度消耗的問題。It is worth mentioning that when the erase voltage pulse is supplied stably, the power consumption of the flash memory for the erase operation is relatively low, and therefore, the programming operation of another memory bank is simultaneously executed at this time. , will not cause the problem of excessive power consumption.
而由上述的說明可以得知,本發明實施例中,抹除時程式化動作中的程式化動作,由於是透過嵌入在抹除動作中執行的,並不需要額外的時間區間。也因此,並不需要非常快速的完成程式化動作,而可以透過降級式程式化(degraded program)動作來進行,並藉以減低程式化動作中所需的程式化電流,並使程式化電流可以小於一期望值,可有較減低功率耗損。It can be known from the above description that, in the embodiment of the present invention, since the programmed action in the programmed action during erasing is executed by being embedded in the erase action, no additional time interval is required. Therefore, it is not necessary to complete the programming action very quickly, but can be performed through a degraded program action, thereby reducing the programming current required in the programming action, and making the programming current less than A desired value can reduce power consumption.
步驟S670承繼在步驟S650之後,並用以執行抹除驗證。在步驟S680中,判斷被抹除記憶胞的臨界電壓Vt是否小於此階段的目標電壓V1,或判斷j是否大於一預設的最大值。若上述兩者判斷有一者為是時,則執行步驟S6100,若判斷結果皆為否,則執行步驟S690。Step S670 is succeeded after step S650 and is used to perform erasure verification. In step S680, it is determined whether the threshold voltage Vt of the erased memory cell is lower than the target voltage V1 at this stage, or whether j is greater than a preset maximum value. If one of the above two judgments is yes, step S6100 is executed, and if both judgment results are negative, step S690 is executed.
步驟S690中使j遞增1(j++),並執行步驟S650以施加下一次的抹除電壓脈衝。In step S690, j is incremented by 1 (j++), and step S650 is executed to apply the next erasing voltage pulse.
步驟S6100則判斷被抹除記憶胞的臨界電壓Vt是否小於抹除不小於抹除目標電壓,或判斷j是否大於最大值。若上述兩者判斷有一者為是時,則完成抹除動作(步驟S6130),若判斷結果皆為否,則執行步驟S6120,以使i遞增1(i++);使j歸零;並執行抹除動作的下一個階段。In step S6100, it is determined whether the threshold voltage Vt of the erased memory cell is less than the erasing target voltage and not less than the erasing target voltage, or whether j is greater than the maximum value. If one of the above two judgments is yes, then the erase operation is completed (step S6130 ). If the judgment results are both negative, step S6120 is executed to increment i by 1 (i++); set j to zero; and execute the erase Except for the next phase of the action.
接著請參照圖7,圖7繪示本發明一實施例的快閃記憶體的寫入方法的流程圖。其中,步驟S710中區分多個記憶區塊為多個記憶庫。並且,在步驟S720中,提供多個多工電路以分別對應至記憶庫,使各多工電路傳送多個抹除電壓或多個程式化電壓以使對應的各該記憶庫執行抹除動作或程式化動作。並且,在步驟S730中,依據抹除時程式化指令,使記憶庫的其中之一執行抹除動作時,並使記憶庫的其中之另一執行程式化動作。Next, please refer to FIG. 7 , which is a flowchart illustrating a method for writing a flash memory according to an embodiment of the present invention. Wherein, in step S710, a plurality of memory blocks are distinguished into a plurality of memory banks. In addition, in step S720, a plurality of multiplexing circuits are provided to correspond to the memory banks respectively, so that each multiplexing circuit transmits a plurality of erase voltages or a plurality of programming voltages so that the corresponding memory banks perform an erase operation or Programmatic actions. And, in step S730 , according to the programming instruction during erasing, when one of the memory banks performs the erasing action, the other one of the memory banks performs the programming action.
請參照圖8,圖8繪示本發明另一實施例的快閃記憶體的寫入方法的流程圖。其中,步驟S810中,主機啟動程式化中美除操作(PwE)。主機可以為快閃記憶體外的電子裝置。在步驟S820中,主機詢問快閃記憶體是否有任一抹除動作被執行。如果步驟S820中的詢問結果為是,PwE操作結束。如果步驟S820中的詢問結果為否,執行步驟S830。Please refer to FIG. 8 , which is a flowchart illustrating a method for writing a flash memory according to another embodiment of the present invention. Wherein, in step S810, the host starts the programmed Sino-US elimination operation (PwE). The host may be an electronic device outside the flash memory. In step S820, the host inquires whether any erase operation is performed on the flash memory. If the query result in step S820 is YES, the PwE operation ends. If the query result in step S820 is no, step S830 is executed.
在步驟S830中,主機發送出伴隨著目標記憶體區塊位址的區塊抹除命令,快閃記憶體在步驟S840中啟動以抹除目標位址的區塊。然後,在步驟S850中,主機詢問快閃記憶體是否有任一程式化動作被執行。如過步驟S850的詢問結果為是,PwE操作結束。如果步驟S850中的詢問結果為否,步驟S860可以被執行。步驟S860中,快閃記憶體發出伴隨目標區塊位址的程式化命令,並在步驟S870中檢查被程式化的位址是否被抹除。In step S830, the host sends a block erase command along with the block address of the target memory, and the flash memory is activated in step S840 to erase the block of the target address. Then, in step S850, the host inquires the flash memory whether any programmed actions are performed. If the query result in step S850 is yes, the PwE operation ends. If the query result in step S850 is negative, step S860 may be executed. In step S860, the flash memory issues a programming command accompanied by the address of the target block, and in step S870 it is checked whether the programmed address is erased.
如果步驟S870的檢查結果為是,PwE操作可以被結束,若如果步驟S870的檢查結果為否,快閃記憶體在步驟S880中啟動以程式化目標位址的區塊。If the check result of step S870 is YES, the PwE operation can be ended, and if the check result of step S870 is NO, the flash memory starts to program the block at the target address in step S880.
請參照圖9,圖9繪示本發明一實施例的快閃記憶體以及主機晶片的方塊圖。快閃記憶體910具有與圖1B的快閃記憶體102相同的硬體架構。主機晶片920耦接至快閃記憶體910。快閃記憶體910具有包括快閃陣列庫0以及快閃陣列庫1。快閃陣列庫0以及快閃陣列庫1的每一具有多個區塊(區塊0~區塊N+2)。主機晶片920具有至串列周邊(SPI)介面921,串列周邊介面921耦接至快閃記憶體910的串列周邊(SPI)介面912以傳輸一個或多個命令。主機晶片920以及快閃記憶體910可用以執行圖8的多個步驟,在此,快閃記憶體910可以為一快閃記憶體晶片。Please refer to FIG. 9 , which is a block diagram of a flash memory and a host chip according to an embodiment of the present invention. The
綜上所述,本發明提供抹除時程式化指令,以使一記憶庫執行抹除動作時,對另一記憶庫進行程式化動作。在大量數據更新的條件下,透過將可相對快完成的程式化動作,插入至具有相對慢速度的抹除動作中,有效降低快閃記憶體的寫入動作所需的時間。進一步的,本發明實施例可在抹除時程式化動作,透過提供降級式程式化動作來降低所需要的功率消耗,進一步提升快閃記憶體的工作效能。To sum up, the present invention provides a programming command during erasing, so that when one memory bank performs the erasing operation, another memory bank performs the programming operation. Under the condition of a large amount of data update, by inserting a programming operation that can be completed relatively quickly into an erasing operation having a relatively slow speed, the time required for the writing operation of the flash memory can be effectively reduced. Furthermore, the embodiments of the present invention can program the action during erasing, reduce the required power consumption by providing a degraded programming action, and further improve the working performance of the flash memory.
100、300:快閃記憶體
111~11A、121~12A、2101~2116:記憶區塊
2101-L~2108-L、2101-R~2108-R:子區塊
130、140、321、322、400、510、520:多工電路
331、332:位元線選擇開關驅動器
341、342:字元線驅動器
351、361、352、362:驅動器
BK1、BK2、BKN:記憶庫
ERSV:抹除電壓
MX11~MX56、MX11a~MX56a、MX11b~MX56b:電壓選擇器
PGV:程式化電壓
PGMCMD:程式化指令
ERSCMD:抹除指令
VDD:電源電壓
VSS:參考接地電壓
VPCP、VPCP_BK1、VPCP_BK2:正向升壓電壓
VNCP、VNCP_BK1、VNCP_BK2:負向升壓電壓
VPCP_INH:正向遮罩電壓
VNCP_INH:負向遮罩電壓
RDP:讀取電壓
SPWI:選中PWI區
DSPWI:未選中PWI區
GWL:全區字元線旗標
LWL:區域字元線旗標
S601~S6130、S710~S730:步驟
100, 300:
圖1A繪示本發明一實施例的快閃記憶體的示意圖。 圖1B繪示本發明一實施例的快閃記憶體晶片的方塊圖。 圖2A至圖2C的本發明實施例的記憶區塊區分方式的示意圖。 圖3繪示本發明另一實施例的快閃記憶體的示意圖。 圖4A、圖4B繪示的本發明實施例的快閃記憶體中的多工電路的多個實施方式的示意圖。 圖5繪示本發明實施例的快閃記憶體中,對應不同記憶庫的多個多工電路的實施方式的示意圖。 圖6繪示本發明實施例的快閃記憶體執行抹除時的寫入動作的動作流程圖。 圖7繪示本發明一實施例的快閃記憶體的寫入方法的流程圖。 圖8繪示本發明另一實施例的快閃記憶體的寫入方法的流程圖。 圖9繪示本發明一實施例的快閃記憶體以及主機晶片的方塊圖。 FIG. 1A is a schematic diagram of a flash memory according to an embodiment of the present invention. FIG. 1B is a block diagram of a flash memory chip according to an embodiment of the present invention. FIG. 2A to FIG. 2C are schematic diagrams illustrating a way of distinguishing memory blocks according to an embodiment of the present invention. FIG. 3 is a schematic diagram of a flash memory according to another embodiment of the present invention. 4A and 4B are schematic diagrams illustrating multiple implementations of multiplexing circuits in a flash memory according to an embodiment of the present invention. 5 is a schematic diagram illustrating an implementation of multiple multiplexing circuits corresponding to different memory banks in a flash memory according to an embodiment of the present invention. FIG. 6 is a flow chart of a write operation when the flash memory is erased according to an embodiment of the present invention. FIG. 7 is a flowchart illustrating a method for writing a flash memory according to an embodiment of the present invention. FIG. 8 is a flowchart illustrating a method for writing a flash memory according to another embodiment of the present invention. FIG. 9 is a block diagram of a flash memory and a host chip according to an embodiment of the present invention.
100:快閃記憶體 100: flash memory
111~11A、121~12A:記憶區塊 111~11A, 121~12A: Memory block
130、140:多工電路 130, 140: Multiplexing circuit
BK1、BKN:記憶庫 BK1, BKN: memory bank
ERSV:抹除電壓 ERSV: Erase Voltage
PGV:程式化電壓 PGV: Programmable Voltage
PGMCMD:程式化指令 PGMCMD: stylized command
ERSCMD:抹除指令 ERSCMD: Erase command
Claims (13)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW110107671A TWI758117B (en) | 2021-03-04 | 2021-03-04 | Flash memory and writing method thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW110107671A TWI758117B (en) | 2021-03-04 | 2021-03-04 | Flash memory and writing method thereof |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TWI758117B true TWI758117B (en) | 2022-03-11 |
| TW202236284A TW202236284A (en) | 2022-09-16 |
Family
ID=81710686
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW110107671A TWI758117B (en) | 2021-03-04 | 2021-03-04 | Flash memory and writing method thereof |
Country Status (1)
| Country | Link |
|---|---|
| TW (1) | TWI758117B (en) |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6377487B1 (en) * | 1999-12-28 | 2002-04-23 | Hyundai Electronics Industries Co., Ltd. | Flash memory device |
| US20030026130A1 (en) * | 2001-08-02 | 2003-02-06 | Fasoli Luca Giovanni | Dual bank flash memory device and method |
| US6570809B1 (en) * | 2002-04-17 | 2003-05-27 | Ememory Technology Inc. | Real-time multitasking flash memory with quick data duplication |
| US6850438B2 (en) * | 2002-07-05 | 2005-02-01 | Aplus Flash Technology, Inc. | Combination nonvolatile memory using unified technology with byte, page and block write and simultaneous read and write operations |
| EP1788575B1 (en) * | 2005-11-18 | 2010-01-20 | STMicroelectronics S.r.l. | Method for accessing in reading, writing and programming to a NAND non-volatile memory electronic device monolithically integrated on semiconductor |
| US20100211833A1 (en) * | 2007-10-22 | 2010-08-19 | Hanan Weingarten | Systems and methods for averaging error rates in non-volatile devices and storage systems |
| US8775719B2 (en) * | 2009-09-21 | 2014-07-08 | Aplus Flash Technology, Inc. | NAND-based hybrid NVM design that integrates NAND and NOR in 1-die with parallel interface |
-
2021
- 2021-03-04 TW TW110107671A patent/TWI758117B/en active
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6377487B1 (en) * | 1999-12-28 | 2002-04-23 | Hyundai Electronics Industries Co., Ltd. | Flash memory device |
| US20030026130A1 (en) * | 2001-08-02 | 2003-02-06 | Fasoli Luca Giovanni | Dual bank flash memory device and method |
| US6570809B1 (en) * | 2002-04-17 | 2003-05-27 | Ememory Technology Inc. | Real-time multitasking flash memory with quick data duplication |
| US6850438B2 (en) * | 2002-07-05 | 2005-02-01 | Aplus Flash Technology, Inc. | Combination nonvolatile memory using unified technology with byte, page and block write and simultaneous read and write operations |
| EP1788575B1 (en) * | 2005-11-18 | 2010-01-20 | STMicroelectronics S.r.l. | Method for accessing in reading, writing and programming to a NAND non-volatile memory electronic device monolithically integrated on semiconductor |
| US20100211833A1 (en) * | 2007-10-22 | 2010-08-19 | Hanan Weingarten | Systems and methods for averaging error rates in non-volatile devices and storage systems |
| US8775719B2 (en) * | 2009-09-21 | 2014-07-08 | Aplus Flash Technology, Inc. | NAND-based hybrid NVM design that integrates NAND and NOR in 1-die with parallel interface |
Also Published As
| Publication number | Publication date |
|---|---|
| TW202236284A (en) | 2022-09-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2838993B2 (en) | Nonvolatile semiconductor memory device | |
| CN100530430C (en) | Flash memory architecture with page mode erase using NMOS and PMOS row decoding scheme | |
| JP2008140488A (en) | Semiconductor memory device | |
| JP4965106B2 (en) | Nonvolatile memory device and high-speed programming method thereof | |
| JP2010009141A (en) | Data transfer method | |
| JPH05128878A (en) | Nonvolatile semiconductor memory device | |
| JP2018045741A (en) | Semiconductor memory device and memory system | |
| JP2013200932A (en) | Non-volatile semiconductor memory device | |
| JP2007128644A (en) | Nonvolatile semiconductor memory device having program and erase verification function | |
| JP2005092963A (en) | Nonvolatile memory | |
| JP3623756B2 (en) | Nonvolatile semiconductor memory device | |
| JP2021149986A (en) | Semiconductor memory device | |
| US6256702B1 (en) | Nonvolatile memory device with extended storage and high reliability through writing the same data into two memory cells | |
| TWI713034B (en) | Flash memory and method for controlling the same | |
| JP6770140B1 (en) | Semiconductor devices and their operating methods | |
| JP5017480B1 (en) | Semiconductor memory device | |
| JP2017147011A (en) | Semiconductor memory device | |
| JP4846814B2 (en) | Nonvolatile semiconductor memory device | |
| US8296499B2 (en) | Flash memory device and program method thereof | |
| TWI758117B (en) | Flash memory and writing method thereof | |
| JP2012203947A (en) | Nonvolatile semiconductor storage device | |
| US20220283738A1 (en) | Flash memory and writing method thereof | |
| JP5116337B2 (en) | Semiconductor memory device | |
| JP2003157679A (en) | Nonvolatile semiconductor memory device | |
| JP2009176372A (en) | Semiconductor memory device |