1300562 九、發明說明: 【發明所屬之技術領域】 本發明係有關一種磁性隨機存取記憶體,特別是關於利用磁性隨 機存取記憶體的特性去適應每個獨立記憶胞的列與行編程電流,而使 磁性隨機存取記憶體可以當作靜態隨機存取記憶體、一次編程隨機存 取記憶體(one-time-programmableRAM)、和電子式可變或快閃隨機存 取記憶體(electrically alterable or flash RAM)使用,進而使磁性隨機存 取記憶體的總產量達到最大化的演算法。 【先前技術】 n 一典型包含一個獨立電晶體之磁性隨機存取記憶胞如第一圖所 示,一位元線110、位元線110之電流120及其所形成的磁場13〇如第 一圖所示。另外,一字元線140、字元線140之電流170及其所形成之 磁場160如第一圖所示。組成記憶胞的三層如第一圖所示,自由層(free layer) 180與固定層(pinned layer) 195這兩層為磁性材料,分別設置 於絕緣層(insulationlayer)之上下兩側,絕緣層可為氧化物19〇。一獨 立之電晶體亦如第一圖所示,而磁性穿遂接面(Magnetic Tunnel 隹 Junction,MTJ)所表現出磁滯現象的特性如第二圖。記憶胞之兩個明 顯狀態係基於其阻抗率,無論自由層與固定層的磁場是平行或反平行 (anti-parallel) ’當磁場為反平行時,阻抗的增加比例最高可達5〇%。 記憶胞需要兩個電流元件的交會點以將兩種不同的狀態寫入記憶胞 中。在第二圖中,字元線的電流相當於列電流(IR)而位元線的電流 相當於行電流(1C)。第二圖展示了單一磁性穿遂接面之兩個磁滯迴 圈,當字元線的電流為〇毫安培,位元線的電流必須為±75毫安培以 1300562 切換自由層的磁場方向,而當字元線的電流為4毫安培時,切換自由 層磁場方向所需的位元線紐在±25毫安培左右,磁性料接面的阻 抗由7.6千歐姆増加了 38%,變為ι〇·5千歐姆。第二圖也顯示了磁滞 見象的t微不對稱,將磁性穿遂接面由低阻抗轉成高阻抗需要比反向 的操作更多的位元線電流。改變單—磁性穿遂接面自由層磁場方向所 的最低子元線電與位元線電流如第三圖所示,任何在星狀區域 31〇内的偏壓點(bias p()int)(字元線/列電流IR與位元線/行電流ic之 組合)都不會改變自由層的磁場方向。任何在星狀區域3ig外的偏壓 點都會改變磁場方向,或是無意地對共賴—條字元線錄元線之磁 性穿遂接面造賴動。當—個記麵_係由大量_性穿遂接面組 成時每個磁性穿遂接面的特性可能會因為隨機程序的變化而有明顯 的文化。第二圖的星狀輪廓將會是陣列巾所有磁性穿遂接面的混合 物。要找出-個固定的偏迦(IRmc)使所有的磁性穿遂接面可以 在兩個方向上切換,且不干擾同一列或同一行上之磁性穿遂接面,是 一件困難的工作。 組成記憶齡_雖_存取記㈣(囊⑷記憶胞被排列 成列與行,透過職频行電絲進行編程,其中铜錢與行電流 交叉點上的記憶胞會被編程;分享同—列和同—行的記憶胞會發現到 其各自之舰錢行電流,這些電流射之—Μ無意地對記憶胞編 程或是干擾。由於製作過程科_,因此欲對目標元件進行編程且 不干擾同歹或同仃上的凡件,其所需要的電流標準在整個記憶體 1300562 不θ相同’非常大的時候,關題賴變得更加嚴重。 將陣列切割祕域字元線’如第四騎示,只有在記憶胞與將被 編程的位元組制相同位元_,可能發生干擾狀況,而透過調整每1300562 IX. Description of the Invention: [Technical Field] The present invention relates to a magnetic random access memory, and more particularly to utilizing the characteristics of a magnetic random access memory to adapt the column and row programming current of each individual memory cell The magnetic random access memory can be used as a static random access memory, a one-time-programmable RAM, and an electronically variable or flash random access memory (electrically alterable memory). Or flash RAM) algorithm that is used to maximize the total output of the magnetic random access memory. [Prior Art] n A magnetic random access memory cell typically including an independent transistor, as shown in the first figure, a bit line 110, a current 120 of the bit line 110, and a magnetic field 13 formed by it, such as the first The figure shows. In addition, the current 170 of the word line 140, the word line 140, and the magnetic field 160 formed therein are as shown in the first figure. The three layers constituting the memory cell are as shown in the first figure. The free layer 180 and the pinned layer 195 are magnetic materials respectively disposed on the upper and lower sides of the insulating layer, and the insulating layer. It can be an oxide of 19 〇. A separate transistor is also shown in the first figure, and the characteristics of the hysteresis phenomenon exhibited by the Magnetic Tunnel 隹 Junction (MTJ) are shown in the second figure. The two apparent states of the memory cell are based on their impedance ratio, whether the magnetic field of the free layer and the fixed layer is parallel or anti-parallel. When the magnetic field is anti-parallel, the impedance increases by up to 5〇%. The memory cell requires the intersection of two current elements to write two different states into the memory cell. In the second figure, the current of the word line corresponds to the column current (IR) and the current of the bit line corresponds to the line current (1C). The second figure shows the two hysteresis loops of a single magnetic through-junction. When the current of the word line is 〇 milliamperes, the current of the bit line must be ±75 milliamps to 1300562 to switch the magnetic field direction of the free layer. When the current of the word line is 4 mA, the bit line required to switch the direction of the free layer magnetic field is about ±25 mA, and the impedance of the magnetic material junction is increased by 38% from 7.6 k ohms to ι. 〇·5 thousand ohms. The second figure also shows the t-micro-symmetry of the hysteresis image. Converting the magnetic through-junction from low impedance to high impedance requires more bit line current than the reverse operation. Change the minimum sub-line power and bit line current of the magnetic field in the direction of the free-layer magnetic field. As shown in the third figure, any bias point (bias p() int) in the star-shaped region 31〇 (The combination of the word line/column current IR and the bit line/row current ic) does not change the direction of the magnetic field of the free layer. Any bias point outside the 3ig of the star-shaped region will change the direction of the magnetic field, or unintentionally oscillate the magnetic cross-section of the shared line of the word line. When a face _ is composed of a large number of _ straits, the characteristics of each magnetic piercing interface may be clearly cultured due to changes in random procedures. The star-shaped profile of the second image will be a mixture of all magnetic piercing faces of the array towel. It is difficult to find a fixed bias (IRmc) so that all magnetic piercing joints can be switched in both directions without interfering with the magnetic piercing joints in the same column or on the same row. . Composition memory age _ Although _ access record (four) (sac (4) memory cells are arranged in columns and rows, programmed through the frequency line, in which the memory cells at the intersection of copper and current will be programmed; share the same - Columns and the same-line memory cells will find their own ship money currents, which are unintentionally programmed or interfered with the memory cells. Because of the production process, it is necessary to program the target components and not Interfering with the same thing on the same or the same, the current standard required is not the same when the whole memory 1300562 is not the same ‘very large, the problem becomes more serious. The array cuts the secret word line as the first Four rides show that only in the memory cell and the same bit that will be programmed _, the interference situation may occur, and by adjusting each
'的、扁㈣w ’可使編程每—個記憶叙不干擾記憶體陣列中 其他記憶胞的機率大幅提升。第四圖顯示出第則個區段與第N', flat (four) w ' can greatly increase the probability that each memory will not interfere with other memory cells in the memory array. The fourth picture shows the first segment and the Nth
品奴8〇 N由1開始遞增,第則個區段中之記憶胞與分段字 το線選擇電晶體491 一同顯示於圖中,分段字元線選擇電晶體例上 有-返回線接附在-全域字元線回報(Globalwordlin㈣㈣彻上, 沿者全域字70線42G的分段字元線選擇電晶體係用以包入或排除受到 記憶胞編程影響的-個區段、—條元組或—組位元組。如第四圖中 全域字元線420與區域字元線49〇皆為第一圖中所提及的列,而第四 圖中之位元線460則是第一圖中所提及的行。 第六圖所不為一以磁性穿遂接面實現之非揮發性閂(n〇n %iatiie latch),而第五圖所顯示者為一能透過此非揮發性閂來編程進而調整電 流層級之可調適電流源,此二圖顯示了一種改變編程電流的方法,任 何熟悉此技術的人能以許多不同之方法實作可調適電流源。第五圖中 使用閂單元510,其係詳述於第六圖中,三個電流源52〇透過電晶體 530的選擇性活化而被選擇性地結合在一起;一組合電流可產生可調適 電流,此組合電流即為總電流ItQtal 550 ; — Vdd電源供應器540係用以 供應電力給電流源II、12與13。 第六圖中之非揮發性閃疋利用兩p通道金氧半場效電晶體(PM〇s 1300562 FET) 610、630、兩η通道金氧半場效電晶體(NpM〇s FET) 62〇、64〇、 兩可變電阻(較適合的MJT) 670、680,以及兩反向器65〇、_實作 而成;Vdd電源供應器69〇與接地端695如圖所示。另外,閂之輸出 端為655及665,輸入端為675及685。 根據以上描述,由於製造過程的不可測性,編程特定記憶胞並且 不干擾到同一列線或位元線上其他記憶胞所需要的電流層級在整個記 憶體陣列巾都不同。當今技術能賊立絲愈大的記憶體陣列,使得 瞻上關題愈來愈嚴重。即使透過前述的方法對_作分段,因為無法 找到符合第二®巾星狀區域31〇的列電流和行電流組合,還是有許多 磁性晶片必須被捨棄。 因此’本發明即針對上述先前技術之數項缺失,提出—種用於磁 性隨機存取記憶體架構的可適性演算法,以有效克服上述之 【發明内容】 本發明之主要目的在提供一種演算法與測試流程,能夠把無法符 合快速寫人需求的雜隨機存取記憶體晶片,分成_符合—次編程 • (〇ne-time-programmable > OTP) (electrically programmable read only memory,EPR〇M )應用類型的晶片。 本毛月之另-目的在提供—種用於磁性隨機存取記憶體架構的可 適性演算法,其係提出—個於晶片上之演算法控制騎描述的磁性隨 機存取記憶體晶粒(die)區塊圖。 上述本發明之目的,係藉由—個對磁性隨機存取記憶體進行可適 性編程與測試的方法所達成,該方法包含以下步驟:設定一候選列電 1300562 流;設定一候選行電流, ·寫入輸入資料到一完整陣列中;從完整陣列 中讀出資料;比較讀取出的資料以及寫入的輸入資料;若讀取出的資 料以及寫入的輸入資料比較結果為負面的即發出一不匹配錯誤訊號。 額外的步驟係包括··當不匹配錯誤訊號發生時,則改變列電流或行電 流以嘗試一有限清單中列電流與行電流之組合;判斷是否已經試過所 有列電流與行電流之組合;若有不匹配錯誤訊號發生且所有列電流與 行電流之組合尚未全部試驗過時,重複前述之寫、讀、比較的步驟; 若發生不匹配錯誤訊號,且已經試驗過全部的電流組合,則發出一不 良晶粒訊號;若沒有發生不匹配錯誤訊號,卿定候騎電流與候選 列電流;若沒有不匹配錯誤訊號發生,則發出一良好晶粒訊號。 底下藉由具體實施例詳加說明,t更容腾解本發明之 術内容、特點及其所達成之功效。 又 【實施方式】 、在先別技射說明了,如第三圖所示透過將_以區域字元線的 ▲方式分割,可能的干擾只會發生在與職編程之位元組共用位元線的 思胞(memory cell)上,透過調整每個位元組的編程電流,對每個 敕隐胞進仃杨而不干制其他靖朗機率被大幅地提升。用於調 整一陣列中任意位元組之編程電流的演算法可增加寫入的時間,然 而’對於-次編程電子式可編程唯讀記憶體(〇TpEpR〇⑷類型的應 用而言,當編㈣透過程式設計㈣科部難單元制試器由外部 =制時’花費長時間的寫入是可以接受的。同樣地,對於電子式可抹 示可編程唯軌« (EEPRGM) _錢对可猶可編程唯讀 1300562 記憶體(FLASHEEPROM)這類可以容許數百微秒(百萬分之一秒) 至數十毫秒編程時間的應用而言,其可由晶片上之電路控制編程行 為。本發明提供-套方法、設計、測試演算法與製造流程,使磁性隨 機存取記賴在靜_齡取記賴、電子式可抹除可編程唯讀記憶 體、快閃式電子式可抹除可編㈣讀記紐及—次編程電子式可編程 唯讀記憶體的應用上,總產能可達到最大化。 第七圖所示為本發明之第—實施例,其為適合的列與行編程 • t流對磁性隨機存取記憶體陣列進行編程與測試之方法。第一步驟71〇 係設定-初始的候選(nGminal)列編程電流IR,以及-初始的候選行 編程電流1C ;在步驟72G中,糊這些初始的編程電流寫人全部的磁 性記憶體陣列單元;接著如步驟73〇,讀取全部的磁性記憶體陣列單 元,並與先前寫入的值做比較;步驟765如果從記憶胞讀出的資料與 先前寫入的資料之比較全部通過,則如步驟74〇所述鎖定或固定汛與 1C ;然後在步驟75〇中發出一良好晶粒訊號以作為結束。若有任何從 • 記憶胞中讀出之資料與先前寫入之資料比較失敗,如步驟760,則跳到 改變適合的行編程電流或列編程電流之步驟Μ,若尚未嘗試過所有可 能的IR+IC組合,則改變行或列編程電流,並跳回步驟no中對所有 記憶胞的寫人動作,接著,重複讀取全部的記親並與寫人的資料做 比較之動作,·若有任何比較失敗了如步驟’則再次進行步驟別改 變行編程電流或列編程電流,直到嘗試過所有可能的IR+Ic之組合。 若所有的IR+IC、组合皆已嘗試過,仍然如步驟76〇比較失敗,則進行 11 1300562 步驟780,發出-不良晶粒(die)訊號並終止。磁性隨機存取記憶體 陣列所進行之編程與測試到此結束,其使用上就如同一靜態隨機存取 記憶體(Static Random Access Memory,SRAM)。 第八圖所示為本發日狀第二實_,其為適合的列與行編程 電流之任何組合對記憶體P車列中任意位元組進行編程與測試的方法。 第-個步驟⑽,係設定-初始之候選(麵inal)列編程電流IR及一 初始之候選行編程電流1C,再如步驟82〇齡將被編程之位驗;接 φ 著如步驟830所述,讀取並儲存所有與將被編程之位元組(byte being programmed,BBP)位在同一行上之已編程位元組;接著如步驟84〇 所述,對將被編程之位元組進行編程;然後,將在步驟_中將被編 程之位元組讀回,並與原本儲存的將編程位元組(BBp)資料做比較, 如步驟850;若比較成功如步驟866,則讀取所有之將編程位元組(BBp) 在同-行上之已編程位it組,如步驟_所述,並與先前儲存之已編 程位元組資料作比較。若如步驟895所述比較成功,則如步驟奶所 • 述,#成功地縣被編綠元組進行編程,且沒有干翻其他位在同 一列上之位元組(BBP)時,發出一個訊號並結束。 如果讀取紐編程位元組(BBP),且其與之_存的將被編程位 元組(BBP)資料比較失敗,如步驟_,則接下來之步驟轉為改變適 合的行電流或列電流,如步驟87〇,在嘗試過所有可能的IR+IC組合之 刖,持續改變行編程電流或列編程電流;如果嘗試過所有ir+ic組合 且發生失敗如步驟854,則如步驟865所述,發出一不良晶粒(die) 12 1300562 的訊號以停止流程。 若是讀取同一行上已被編程的位元組,且此位元組與先前儲存之 已編程位元組資料味失敗,如步_,顺下來之步轉為改變適 。之灯電肌或適合之列電流。先如步驟875所述改變行編程電流或列 編程電流,除非已經嘗試過所有可能的則c組合;若在嘗試過所有 IR+IC組合後發生失敗訊號如步驟m,則如步驟祕所述,發出一不 良曰曰粒(die)魏以分止流权,若還有未嘗試的組合而通過如步驟845, •貝變對將編程位元組⑽P)進行編程之步驟840,流程繼續進行。 上述方法亦可用於回復或更正因先前嘗試對陣列進行編程與測試 時所干擾到之位元組;同樣地,上述方法亦可用於同一列或同一字元 線上之位元組。在此延伸的應財,前述所提及行之處均要改成列。 第九騎7F為本發明之第二實補,其為彻適合之列與行編程 電流的任意組合對整個記憶體陣列進行編程之方法。第一步驟910係 將陣列的起始紐奴㈣觀程德元組(BBP);接魏此將編程 籲之位元、,且(BBP)進行先如於第八圖中所定義之方法或流程。第八圖中 是對記憶體陣列中任意單-位元組進行編程與測試之方法,當成功完 成將編程位元組(BBP)的寫入後,接著進行第九圖之步驟930,檢查 將編程位元組(BBP)是否為記憶體陣列中要被編成的最後位址,若步 驟930之判斷結果為「是」,則如步驟94〇所述,發出一個良好記憶 體陣列或子陣列之訊號’並結束流程;若步驟93〇之判斷結果為「否」, 則遞增將編程位元組(BBP) ’並回到步驟92〇,以新的將編程位元組 13 1300562 (BBP)重複弟八圖所不之弟》一測试流程。在這個方法中,整個記惊體 陣列都會使用第八圖所示之第二測試流程來進行編程與測試,若有晶 粒發生失敗,其與第八圖所示之第二測試流程所描述的失敗有關。 第十圖為一使用晶片上之適當列與行編程電流產生器與演算法控 制器的磁性隨機存取記憶體電路之方塊圖,磁性隨機存取記憶體的主 要輸入端包括:一位址匯流排1060、一雙向資料匯流排1〇7〇與複數控 制線,而這些控制線包括:一晶片致能1071、一輸出致能1〇72及一寫 入(編程)訊號1073 ;位址匯流排1060驅動位址緩衝區1〇8〇,這些 位址緩衝區輸出至-位址多。位址多;在外部位址匯流排 與内部位址暫存器輸出之間做選擇,其中内部位址暫存器係由演算法 控制器1075驅動,此演算法控制器實作出如第七圖、第八圖與第九圖 所述之方核程,這些方法要能預先將位址暫存器設定成必須的值。 雙向資料匯流排麵與輸入輸出緩衝區聰相接,此輸入輸出緩衝 區依次與資料暫存器和感應放大器娜相接,且與演算法控制器簡 中之貝料暫存器1〇55相接。記憶體子單元丨麵是由一記憶體子陣列 ^列驅^觸、—行轉11 1G4G或雙向位元線電流之複數驅 動器及-適當電流產生器卿組成,其中記憶體子單元圆可透過 " 式寫入一個位元組的資料,例如將位元組的值‘10110011,放入 驅動器中,並透過字元驅動器來選擇要將被編程之位元组 (BBP)〇 # ®所不為本發明之第四實施例,其為一不使用晶片上適當 rs、 14 1300562 列與行編㈣流與演算法控繼,㈣對雜_存取記憶體進行編 程、測試及排細產生-:欠編料子切祕唯讀純體(〇τρ EPROM)之方法。這意味著在第十圖所描述之以巾,演算法控制器 浙5是在位於晶片外部之-外部測試器巾。而第十—圖所描述之方法 係由在心體_上完整的第—測試流程開始,該第—職流程如第 七圖所述’其係嘗試對整個磁性隨機存取記憶體編程及測試,包括了 寫入與讀出整個陣列,並找出可接受之適合行編程電流與列編程電 _ 流;若如步驟1160所述,如果對整個陣列的讀取或測試成功,則此方 法完成,並發出訊號表示此記憶體陣列適合當作標準靜態隨機存取記 憶體(staticRAM,SRAM)使用,亦即可多次讀寫;若對整個陣列的 讀取或測試失敗如步驟1140,則進行第九圖所示之第三測試流程 112〇。第三測試流程係嘗試一次對整個磁性記憶體中之一位元組進行編 程之方式,如果第三測試流程如步驟117〇所述成功,則此方法完成, 並發出訊號表示此記憶體陣列適合作為一次編程電子式可編程唯讀記 Φ 憶體(0TPEPR0M)使用;若第三測試流程失敗如步驟1150,則如步 驟1130所述發出一必須被捨棄之不良晶粒(die)訊號。 第十二圖所示為本發明之第五實施例,其為一種使用晶片上適當 列、行編程電流與演算法控制器,對磁性隨機存取記憶體進行編程、 測試與排序,以產生電子式可抹除可編程唯讀記憶體(electrically erasable pn)gmmmable read only memory,EEPROM)或快閃式電子式 可抹除可編程唯讀記憶體(FlashEEPROM)之方法。這意味著在如第 15 ⑧ 1300562 十圖所描述之晶>i巾,演算法是在第十騎示之晶片内部。 第十二_描述之方法,其—開雜在記《_上完整實施第 七圖所述之第-測試流程’其係嘗試對整個磁性隨機存取記憶體進行 編程及測試,這包括了寫入與讀出整個陣列,並找出可接受之適合的 行與列編程電流;若對整個陣列之讀取_試成功,如步驟丨細則 此方法完成,並發出訊號表示此記憶體陣列適合當作標準靜態隨機存 取記憶體(staticRAM,SRAM)使用,亦即可多次讀寫;如果對整個 # 陣列之讀取或測試失敗’如步驟測,則進行第九圖所示之第三測試 流程122G。此第三測試流程係嘗試以—次—個位元組的方式對整個磁 性記憶體跡’如果第三測試流程成功,航方法完成,並發出訊號 表示此記憶體陣列適合當作電子式可抹除可編程唯讀記憶體晶粒 (EEPROM die)(如步驟1270)錄閃式電子式可抹除可編程唯讀記 憶體晶粒(FLASHEEPROMdie)(如步驟1280)使用;若第三測試流 程失敗如步驟125G,則如步驟123G所述,發出必須被捨棄之一不良晶 • 粒訊號。 本發明之優點係透過調整每個位元組之編程電流,大幅提升對每 一個記憶胞進行編程又不干擾記憶體陣列中其他記憶胞之機率。本發 明提供一套方法、設計、測試演算法與製造流程,使磁性隨機存取記 憶體在靜態隨機存取記憶體、電子式可抹除可編程唯讀記憶體 (EEPROM)、快閃式電子式可抹除可編程唯讀記憶體(Flash eeprom)及一次編程可抹除記憶體(0TPEPR0M)應用上的總產能 16 1300562 達到最大化。 唯以上所述者,僅為本發明之較佳實施例而已,並非用 發明實施之範圍。故即凡依本發明巾請範_述之特徵 =本 均等變化或修飾,均應包括於本發明之申請專利範圍内。 _之 【圖式簡單說明】 第一圖為先前技術中包含磁性通道接合、隔離電晶體、字元線及位一 線之一磁性隨機存取記憶胞之示意圖。 第二圖為一磁性穿遂接面(MTJ)之磁滯迴圈示意圖。 •第二圖為單一磁性穿遂接面磁性隨機存取記憶胞之可程式化能力之星 狀不意圖。 第四圖為先前技術中將字元線分段之磁性隨機存取記憶胞陣列示意 圖。 第五圖為一典型之可程式化之可調適電流源示意圖。 第六圖為一典型之用於設定可調適電流源之非揮發性閂示意圖。 第七圖為本發明巾第-實酬之示意圖,其係為—種適合的列與 • 行編程電流對磁性隨機存取記憶體陣列進行編程與測試之方法。 第八圖為本發Θ种第二實施例之示意圖,其係為_種利用適合的列與 行編程電流之任意組合對記憶體_巾任—位元組進行編程與測試之 方法。 第九圖為本《巾第三實補之示細,其係為—種_適合的列與 行編知電流之任意組合對整個記憶體陣列進行編程之方法。 第十圖為-使用晶上適當電流產生II與演算法控制器之磁性隨機存 取記憶體電路之方塊圖。 17 ⑧ 1300562 弟十一圖為本發明中第四實施例之示意圖,其係為—種不使用晶片上 之適田列與仃編程電流及演算法控㈣’即可對磁性隨機存取記憶體 進灯、’綠、剛試與解,以姓—次編程電?式可編程唯讀記憶體(OTP EPROM)之方法。 第!1 一圖為本發明中第五實施例之示意圖,其係為一種使用晶片上之 ,田列^與行編程電流與演算法控制器,對磁性隨機存取記憶體進行編 耘測试與排序’以產生電子式可抹除可編程唯讀記憶體(EEPROM)、 快閃式電子式可抹除可編程唯讀記憶體(FLASHEEPROM)之方法。 【主要元件符號說明】 110位元線 120位元線電流 130位元線磁場 140字元線 150絕緣電晶體 160子元線磁場 170字元線電流 180自由層 190絕緣層 195固定層 310星狀區域 410磁性隨機存取記憶胞 420全域字元線 430選擇線N-1 1300562The product slave 8〇N is incremented by 1, the memory cell in the first segment is shown together with the segmentation word το line selection transistor 491, and the segmented word line selection transistor has a return-return line. Attached to the - global word line return (Globalwordlin (four) (four) thoroughly, along the global word 70 line 42G segmentation word line selection of the crystal system used to enclose or exclude the segment affected by memory cell programming, - strip Group or group of bytes. As shown in the fourth figure, the global character line 420 and the area word line 49 are both the columns mentioned in the first figure, and the bit line 460 in the fourth figure is the first The line mentioned in the figure. The sixth figure is not a non-volatile latch (n〇n %iatiie latch) realized by magnetic piercing joints, and the fifth figure shows that one can pass this non- The volatile latch is programmed to adjust the current level of the adjustable current source. The two figures show a way to change the programming current. Anyone familiar with this technology can implement an adjustable current source in many different ways. A latch unit 510 is used, which is detailed in the sixth figure, and three current sources 52 are transmitted through the transistor 53. The selective activation of 0 is selectively combined; a combined current produces an adjustable current, which is the total current ItQtal 550; - Vdd power supply 540 is used to supply power to current sources II, 12 And 13. The non-volatile flash in the sixth figure utilizes two p-channel MOS field-effect transistors (PM〇s 1300562 FET) 610, 630, two n-channel MOSFETs (NpM〇s FET) 62 〇, 64〇, two variable resistors (suitable MJT) 670, 680, and two inverters 65〇, _ are made; Vdd power supply 69〇 and ground 695 are shown in the figure. The outputs of the latches are 655 and 665, and the inputs are 675 and 685. According to the above description, due to the unmeasurability of the manufacturing process, the specific memory cells are programmed and do not interfere with the current required by other memory cells on the same column line or bit line. The level is different in the entire memory array towel. Today's technology can thieves the larger the memory array, making the problem more and more serious. Even if the above method is used to segment the _ because it can not find the second ® towel star-shaped area 31 〇 column current In the combination of row currents, there are still many magnetic wafers that must be discarded. Therefore, the present invention proposes an adaptability algorithm for a magnetic random access memory architecture for the above-mentioned prior art missing, to effectively overcome the above-mentioned problems. SUMMARY OF THE INVENTION The main object of the present invention is to provide an algorithm and a test flow, which can divide a random random access memory chip that cannot meet the needs of fast writing into _ compliant-time programming. (〇ne-time-programmable > ; OTP) (electrically programmable read only memory, EPR 〇 M ) application type of wafer. Another purpose of this month is to provide an adaptive algorithm for magnetic random access memory architecture, which proposes a on-wafer algorithm to control the magnetic random access memory die of the ride description ( Die) block diagram. The above object of the present invention is achieved by a method for adaptive programming and testing a magnetic random access memory, the method comprising the steps of: setting a candidate column 1300562 stream; setting a candidate row current, Write input data to a complete array; read data from the complete array; compare the read data with the written input data; if the read data and the written input data are negative, the result is sent One does not match the error signal. The additional steps include: when the mismatch error signal occurs, the column current or the row current is changed to try a combination of column current and row current in a limited list; to determine whether all combinations of column current and row current have been tried; If there is a mismatch error signal and all combinations of column current and line current have not been tested, repeat the steps of writing, reading and comparing; if a mismatch error signal occurs and all current combinations have been tested, then A bad grain signal; if no mismatch error signal occurs, the current is waiting for the current and the candidate column current; if no mismatch error signal occurs, a good grain signal is sent. The details of the invention, the features and the effects achieved by the present invention will be further explained by the detailed description of the specific embodiments. [Embodiment], in the first shot, as shown in the third figure, by dividing _ by the ▲ way of the area word line, the possible interference will only occur in the bit of the job programming. On the line of the memory cell, by adjusting the programming current of each byte, the probability of entering each of the sinister cells without causing other Jinglang is greatly improved. The algorithm used to adjust the programming current of any byte in an array can increase the write time, whereas 'for-time programming electronically programmable read-only memory (〇TpEpR〇(4) type of application, when (4) Through programming (4) Department of the difficult unit tester from the external = system time 'will take a long time to write is acceptable. Similarly, for the electronic can be programmed programmable tracked « (EEPRGM) _ money pair In the case of applications such as FLASHEEPROM, which can tolerate hundreds of microseconds (millionths of a second) to tens of milliseconds of programming time, it can be controlled by circuitry on the wafer. Provides a set of methods, designs, test algorithms and manufacturing processes to enable magnetic random access to be recorded in static aging, electronically erasable programmable read-only memory, and flash electronically erasable The total capacity can be maximized in the application of (4) reading and reading-time electronic programmable read-only memory. The seventh figure shows the first embodiment of the invention, which is suitable for column and row programming. • t stream is magnetically stored The memory array is programmed and tested. The first step 71 sets the initial candidate (nGminal) column programming current IR, and - the initial candidate row programming current 1C; in step 72G, the initial programming current is pasted. Write all of the magnetic memory array cells; then, as in step 73, read all of the magnetic memory array cells and compare them with previously written values; step 765 if the data read from the memory cells is previously written If the comparison of the data is all passed, then lock or fix 汛 and 1C as described in step 74; then send a good grain signal in step 75 to end. If there is any data read from the memory cell and The previously written data fails to compare. If step 760, skip to the step of changing the appropriate row programming current or column programming current. If all possible IR+IC combinations have not been tried, change the row or column programming current, and Jump back to the write action of all the memory cells in step no, and then repeat the action of reading all the recorded relatives and comparing with the data of the writer. If any comparison fails, such as step 'Steps again to change the line programming current or column programming current until all possible combinations of IR+Ic have been tried. If all IR+ICs, combinations have been tried, still fail as in step 76, then proceed 11 1300562 Step 780, issuing a bad die signal and terminating. The programming and testing of the magnetic random access memory array ends here, and the use is like the same static random access memory (Static Random Access) Memory, SRAM) The eighth figure shows the method of programming and testing any byte in the memory P train in any combination of suitable column and row programming currents. The first step (10) is to set the initial candidate (plane inal) column programming current IR and an initial candidate row programming current 1C, and then, as in step 82, the program will be programmed; Read, store and store all programmed bytes on the same line as the byte being programmed (BBP); then, as described in step 84, the pair of bytes to be programmed Programming; then The byte to be programmed will be read back in step_ and compared with the originally stored programming byte (BBp) data, as in step 850; if the comparison is successful as step 866, then all will be programmed. The byte (BBp) is programmed bit group on the same-line as described in step_ and compared to the previously stored programmed byte data. If the comparison is successful as described in step 895, then, as described in the step milk, the successful county is programmed by the green group, and when the other bits (BBP) in the same column are not turned over, a The signal ends. If the new programming byte (BBP) is read and it fails to compare with the programmed byte (BBP) data, as in step _, the next step is to change the appropriate row current or column. The current, as in step 87, continues to change the row programming current or column programming current after all possible IR+IC combinations have been attempted; if all ir+ic combinations have been tried and a failure occurs as in step 854, then as in step 865 Said, send a bad die 12 1300562 signal to stop the process. If the byte that has been programmed on the same line is read, and the byte and the previously stored programmed byte data fail, such as step _, the step is changed to change. The light of the electric muscle or the suitable current. First change the row programming current or column programming current as described in step 875, unless all possible combinations of c have been tried; if a failure signal such as step m occurs after all IR+IC combinations have been tried, as described in the step, A bad die is issued to terminate the flow, and if there are still untried combinations, the process proceeds to step 840 by programming the programming byte (10) P) as in step 845, and the flow continues. The above method can also be used to reply or correct the byte that was disturbed by the previous attempt to program and test the array; as such, the above method can also be used for the same column or a byte on the same word line. In this case, the extensions mentioned above must be changed to columns. The ninth rider 7F is the second complement of the present invention, which is a method of programming the entire memory array in any combination of suitable column and row programming currents. The first step 910 is to start the array of the new Nunu (four) Guancheng Deyuan group (BBP); the Wei will program the bit, and (BBP) the method or process as defined in the eighth figure. The eighth figure is a method for programming and testing any single-byte group in the memory array. After successfully writing the programming byte (BBP), step 930 of the ninth figure is performed, and the check will be performed. Whether the programming byte (BBP) is the last address to be programmed in the memory array. If the result of the determination in step 930 is "YES", then a good memory array or sub-array is issued as described in step 94. The signal 'ends the process; if the result of the determination in step 93 is "No", then the programming byte (BBP) is incremented and returns to step 92, to repeat the new programming byte 13 1300562 (BBP) A test procedure for the younger brother of the Eight Diagrams. In this method, the entire array of shots will be programmed and tested using the second test flow shown in Figure 8. If a die fails, it is described in the second test flow shown in Figure 8. Related to failure. Figure 10 is a block diagram of a magnetic random access memory circuit using an appropriate column and row programming current generator and algorithm controller on the wafer. The main input of the magnetic random access memory includes: an address convergence. Row 1060, a bidirectional data bus 1 〇 7 〇 and a plurality of control lines, and these control lines include: a wafer enable 1071, an output enable 1 〇 72 and a write (program) signal 1073; address bus The 1060 drives the address buffer 1〇8〇, and these address buffers output to - many addresses. There are many addresses; a choice is made between the external address bus and the internal address register output, wherein the internal address register is driven by the algorithm controller 1075, and the algorithm controller is implemented as shown in the seventh figure. For the square nucleus described in the eighth and ninth diagrams, these methods are capable of setting the address register to a necessary value in advance. The two-way data bus surface is connected with the input and output buffers. The input and output buffers are connected to the data register and the sense amplifier, and are connected with the data processor of the algorithm controller. Pick up. The memory subunit is composed of a memory sub-array, a turn-to-turn 11 1G4G or a bidirectional bit line current multi-function driver and a suitable current generator, wherein the memory sub-unit is permeable. " write data of a byte, for example, put the value of the byte '10110011 into the drive, and select the byte to be programmed (BBP) 〇# ® through the character driver For the fourth embodiment of the present invention, it is to use a suitable rs, 14 1300562 column and row (four) stream and algorithm control on the wafer, and (4) to program, test and fine-produce the impurity_access memory. : The method of arranging the secrets to read the pure body (〇τρ EPROM). This means that in the tenth figure, the algorithm controller Zhejiang 5 is an external tester wiper located outside the wafer. The method described in the tenth-graph is started by the complete first test flow on the mind body, and the first job process is as described in the seventh figure, and the system attempts to program and test the entire magnetic random access memory. Include writing and reading the entire array and finding acceptable line programming current and column programming power_flow; if, as described in step 1160, if the reading or testing of the entire array is successful, then the method is completed, And the signal indicates that the memory array is suitable for use as a standard static random access memory (SRAM), and can be read and written multiple times; if the reading or testing of the entire array fails as in step 1140, then the first The third test flow 112 shown in Figure IX. The third test procedure is a method of programming one byte in the entire magnetic memory. If the third test flow is successful as described in step 117, the method is completed, and a signal indicates that the memory array is suitable. As a one-time programming electronic programmable read-only Φ memory (0TPEPR0M); if the third test flow fails as step 1150, then a bad die signal that must be discarded is issued as described in step 1130. Figure 12 is a fifth embodiment of the present invention, which is a method for programming, testing and sorting magnetic random access memory using an appropriate column, row programming current and algorithm controller on a wafer to generate electrons. A method of erasable programmable read only memory (EEPROM) or flash electronically erasable programmable read only memory (FlashEEPROM). This means that in the crystal >i towel as described in Fig. 15 8 1300562, the algorithm is inside the wafer of the tenth riding. The twelfth-description method, which is described in the "Completely implementing the first-test flow described in the seventh figure", attempts to program and test the entire magnetic random access memory, which includes writing Enter and read the entire array and find acceptable row and column programming currents; if the entire array is read, the test is successful, as in the step, the method is completed, and a signal indicates that the memory array is suitable for Used as standard static random access memory (SRAM), it can be read and written multiple times; if the entire # array is read or tested failed 'step test, then the third test shown in the ninth figure Flow 122G. This third test procedure attempts to treat the entire magnetic memory trace in a time-by-byte manner. If the third test process is successful, the navigation method is completed, and a signal is sent indicating that the memory array is suitable for electronic wiping. In addition to the programmable read-only memory die (EEPROM die) (step 1270), flash-type electronic erasable programmable read-only memory die (FLASHEEPROM die) (as in step 1280); if the third test process fails In step 125G, as described in step 123G, a bad crystal grain signal must be discarded. The advantage of the present invention is that by programming the programming current for each byte, the probability of programming each memory cell without interfering with other memory cells in the memory array is greatly increased. The present invention provides a method, design, test algorithm and manufacturing flow for magnetic random access memory in static random access memory, electronic erasable programmable read only memory (EEPROM), flash electronic Maximize the total capacity of the programmable eraser memory (Flash eeprom) and the one-time programmable erasable memory (0TPEPR0M) application of 16 1300562. The above is only the preferred embodiment of the present invention and is not intended to be in the scope of the invention. Therefore, the features of the present invention are all included in the scope of the patent application of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS The first figure is a schematic diagram of a magnetic random access memory cell including a magnetic channel junction, an isolation transistor, a word line, and a bit line in the prior art. The second figure is a schematic diagram of the hysteresis loop of a magnetic piercing joint (MTJ). • The second figure is a star-shaped intent of the stylized ability of a single magnetic piercing interface magnetic random access memory cell. The fourth figure is a schematic diagram of a magnetic random access memory cell array in which the word lines are segmented in the prior art. The fifth picture shows a typical programmable current source. The sixth figure is a typical non-volatile latch diagram for setting an adjustable current source. The seventh figure is a schematic diagram of the first embodiment of the invention, which is a method for programming and testing a magnetic random access memory array by a suitable column and row programming current. The eighth figure is a schematic diagram of a second embodiment of the present invention, which is a method for programming and testing a memory_cloth any-bit group using any combination of suitable column and row programming currents. The ninth figure is the third embodiment of the towel, which is a method for programming the entire memory array by any combination of suitable column and row programming currents. The tenth figure is a block diagram of a magnetic random access memory circuit using an appropriate current generation II on the crystal and an algorithm controller. 17 8 1300562 The eleventh figure is a schematic diagram of the fourth embodiment of the present invention, which is a kind of magnetic random access memory which can be used without using the field array and the 仃 programming current on the wafer and the algorithm control (4) Into the light, 'green, just try and solve, with the last name - programming power? A method of programmable read only memory (OTP EPROM). The first! 1 is a schematic view of a fifth embodiment of the present invention, which is a method for compiling and sorting magnetic random access memory using a matrix and row programming current and algorithm controller on a wafer. 'To create an electronically erasable programmable read only memory (EEPROM), flash electronically erasable programmable read only memory (FLASHEEPROM) method. [Main component symbol description] 110 bit line 120 bit line current 130 bit line magnetic field 140 word line 150 insulated transistor 160 sub-line magnetic field 170 word line current 180 free layer 190 insulation layer 195 fixed layer 310 star shape Region 410 magnetic random access memory cell 420 global word line 430 select line N-1 1300562
440選擇線N 450 全域字元線回報(Global Word line return) 460位元線 470第N_1個區段 480第N個區段 490區域字元線 491分段字元線選擇電晶體 510閃單元 520電流源 530電晶體 540電源供應器 550總電流 610、630P通道金氧半場效電晶體 620、640 N通道金氧半場效電晶體440 select line N 450 Global Word line return 460 bit line 470 N_1th section 480 Nth section 490 area word line 491 Segment word line select transistor 510 flash unit 520 Current source 530 transistor 540 power supply 550 total current 610, 630P channel gold oxygen half field effect transistor 620, 640 N channel gold oxygen half field effect transistor
650、660反向器 655、665閂之輸出端 670、680可變電阻 675、685閃之輸入端 690電源供應器 695接地端 1010記憶體子單元 19 1300562 1020記憶體子陣列 1030適當電流產生器 1040行驅動器 1050列驅動器 1055資料暫存器 1060位址匯流排 1065位址暫存器 1070雙向資料匯流排 1071晶片致能 1072輸出致能 1073寫入(編程)訊號 1075演算法控制器 1080位址緩衝區 1085資料暫存器和感應放大器 1090位址多工器 1095輸入輸出緩衝區650, 660 inverter 655, 665 latch output 670, 680 variable resistor 675, 685 flash input 690 power supply 695 ground terminal 1010 memory subunit 19 1300562 1020 memory sub-array 1030 appropriate current generator 1040 row driver 1050 column driver 1055 data register 1060 address bus row 1065 address register 1070 bidirectional data bus row 1071 chip enable 1072 output enable 1073 write (program) signal 1075 algorithm controller 1080 address Buffer 1085 data register and sense amplifier 1090 address multiplexer 1095 input and output buffer