專(zhuān)利名稱(chēng):用于初始化半導(dǎo)體存貯器的方法和裝置的制作方法
背景本發(fā)明一般涉及一種用于編程半導(dǎo)體存貯器件的方法和裝置,更具體地,本發(fā)明涉及一種用于交錯(cuò)E2ROM存貯器與閃速存貯器的編程以便減少整個(gè)編程時(shí)間的方法和裝置。
蜂窩電話一般含有一種或多種非易失性存貯器。例如,一種已知的配置采用閃速存貯器存貯由該蜂窩電話使用的處理程序(即代碼),采用EEPROM存儲(chǔ)各種配置參數(shù)等信息(即非易失性數(shù)據(jù)段)。Aota等人的U.S.Patent No.5,564,032舉例說(shuō)明了一種采用閃速存貯器和EEPROM的蜂窩電話。在由Aota教導(dǎo)的技術(shù)中,閃速存貯器被采用存貯在EEPROM中的程序代碼編程。
通常,EEPROM(此后簡(jiǎn)稱(chēng)為E2ROM)和閃速存貯器在工廠里被采用二進(jìn)制數(shù)據(jù)編程。對(duì)于閃速存貯器,該二進(jìn)制數(shù)據(jù)可以表示在執(zhí)行蜂窩電話具備的各種功能時(shí)由其使用的可執(zhí)行代碼。對(duì)于E2ROM,該二進(jìn)制可以表示非易失性變量(例如序號(hào))。另一方面,E2ROM可以被簡(jiǎn)單地初始化為全零。由于閃速存貯器和E2ROM的編程需要,編程過(guò)程非常費(fèi)時(shí),因而產(chǎn)生了增加制造蜂窩電話的成本的嚴(yán)重瓶頸。
特別地,典型的閃速存貯器的編程需要兩個(gè)階段的處理。在第一階段,計(jì)算機(jī)處理器加載一字節(jié)或一頁(yè)數(shù)據(jù)到其閃速存貯器的內(nèi)部緩沖器中。在該數(shù)據(jù)加載完成后,閃速存貯器進(jìn)入一編程階段,在該階段中,閃速存貯器從其內(nèi)部數(shù)據(jù)緩沖器寫(xiě)信息至其閃速存貯器陣列。在編程的第二階段中,該計(jì)算機(jī)處理器周期性地查詢閃速存貯器以確定該閃速存貯器是否完成了編程。否則,該計(jì)算機(jī)處理器在編程的第二階段中擔(dān)當(dāng)不活動(dòng)的角色。該第二階段通常比第一階段長(zhǎng)很多。因此,在編程周期中,計(jì)算機(jī)處理器在相當(dāng)多的時(shí)間內(nèi)基本上保持空閑。E2ROM采用類(lèi)似的兩階段方法編程。
有些實(shí)踐者建議了很多方法以減少在編程期間的處理器空閑時(shí)間量。例如,Hewitt等人的U.S.Patent No.5,488,711公開(kāi)了從一計(jì)算機(jī)處理器中下載一串?dāng)?shù)據(jù)至存貯設(shè)備的靜態(tài)隨機(jī)存取存貯器(SRAM),其中該信息被分成多頁(yè)。然后,該SRAM順序地將這些頁(yè)送至內(nèi)部EEPROM存貯陣列的一些行中,直到該SRAM被耗盡為止。在這種順序饋送操作期間,該處理器是空閑的以執(zhí)行其它的任務(wù)。
Kaki等人的U.S.Patent No.5,530,828教導(dǎo)了另一種用于減少處理器的空閑時(shí)間的方法。在該技術(shù)中,一處理器接收用于寫(xiě)數(shù)據(jù)至一相關(guān)的盤(pán)組件中的請(qǐng)求,其中的盤(pán)組件包括由一寫(xiě)緩沖存貯器服務(wù)的多個(gè)閃速存貯設(shè)備。該處理器通過(guò)將在一請(qǐng)求中的邏輯扇區(qū)號(hào)轉(zhuǎn)換至與數(shù)據(jù)被寫(xiě)入其中的該閃速存貯器的區(qū)域相關(guān)的物理扇區(qū)號(hào)來(lái)響應(yīng)該請(qǐng)求。更特別地,這些扇區(qū)號(hào)被確定,使得數(shù)據(jù)被分配在多個(gè)閃速存貯器之間。在這些閃速存貯器之間的具體數(shù)據(jù)分配被寄存在一寫(xiě)管理表中。
在形成該寫(xiě)管理表后,該處理器下載這些數(shù)據(jù)至該寫(xiě)緩沖存貯器中。然后,信息從該寫(xiě)緩沖存貯器中被傳送至各閃速存貯器中。更具體地,第一數(shù)據(jù)塊被傳送至第一相應(yīng)芯片,然后開(kāi)始將該數(shù)據(jù)編程至其內(nèi)部存貯陣列中。在該芯片被編程的同時(shí),第二數(shù)據(jù)塊被傳送到第二芯片,然后開(kāi)始將該數(shù)據(jù)編程至其存貯陣列中。這樣,該技術(shù)重疊了兩個(gè)或多個(gè)閃速存貯器的編程時(shí)間。
雖然有用,但上述系統(tǒng)不專(zhuān)門(mén)從事在蜂窩電話(或模擬)環(huán)境中編程閃速存貯器和E2ROM所面臨的獨(dú)特問(wèn)題。例如,E2ROM和閃速存貯器存儲(chǔ)兩個(gè)各自離散的數(shù)據(jù)文件集。E2ROM存儲(chǔ)各種用戶定義的參數(shù),而閃速存貯器存儲(chǔ)由蜂窩電話使用的操作代碼。因此,與Kaki不同,在該環(huán)境中的處理器不能隨意將來(lái)自單個(gè)二進(jìn)制文件的數(shù)據(jù)分配到多個(gè)閃速存貯器中。相反,每個(gè)設(shè)備被加載唯一而特定的二進(jìn)制文件。該限制呈現(xiàn)出一些難題。例如,與閃速存貯設(shè)備相比,E2ROM可能具有不同(例如較小)的存貯容量,并且可能以不同大小的數(shù)據(jù)塊接收信息。例如,E2ROM可能以頁(yè)為單位最有效地接收信息,而閃速存貯器可能以字節(jié)或頁(yè)為單位最有效地接收信息。上述的文獻(xiàn)沒(méi)有公開(kāi)或建議如何在兩個(gè)不同類(lèi)型的半導(dǎo)體存貯設(shè)備之間交錯(cuò)兩個(gè)分離的數(shù)據(jù)流。并且上述的文獻(xiàn)也沒(méi)有公開(kāi)或建議當(dāng)存儲(chǔ)設(shè)備在存貯容量和/或存儲(chǔ)協(xié)議方面變化時(shí),這種交錯(cuò)如何被執(zhí)行。
因此,本發(fā)明的典型目的是提供一種用于初始化半導(dǎo)體存貯設(shè)備的技術(shù),該技術(shù)不會(huì)因上述的缺點(diǎn)而遭受損害。
簡(jiǎn)述這些及其它的典型特征通過(guò)一種用于交錯(cuò)閃速存貯器編程與E2ROM存貯器編程的方法和裝置來(lái)實(shí)現(xiàn)。在一些示范性實(shí)施例中,E2ROM以頁(yè)為單位接收數(shù)據(jù),而閃速存貯器以頁(yè)或單個(gè)字節(jié)為單位接收數(shù)據(jù)。因此,第一示范性技術(shù)交錯(cuò)頁(yè)寫(xiě)E2ROM編程與頁(yè)寫(xiě)閃速存貯器編程。第二示范性技術(shù)交錯(cuò)頁(yè)寫(xiě)E2ROM編程與字節(jié)寫(xiě)閃速存貯器編程。E2ROM編程部分與閃速存貯器編程部分并行執(zhí)行,因此加速了整個(gè)編程時(shí)間(與以串行方式執(zhí)行E2ROM和閃速存貯器編程相比)。
在第一示范性技術(shù)中,處理器將第一數(shù)據(jù)流的一頁(yè)寫(xiě)閃速存貯設(shè)備的內(nèi)部緩沖器。在該閃速存貯設(shè)備正忙于傳送其內(nèi)部緩沖器中的數(shù)據(jù)至其存貯陣列中的同時(shí),該處理器將第二數(shù)據(jù)流的第一頁(yè)寫(xiě)E2ROM設(shè)備的內(nèi)部緩沖器。因此,該閃速存貯器和E2ROM存貯器并行地執(zhí)行其編程。
在第二示范性技術(shù)中,處理器從第一數(shù)據(jù)流中寫(xiě)一串字節(jié)至閃速存貯器中,這些字節(jié)共同構(gòu)成閃速存貯器的一個(gè)“偽頁(yè)”。在閃速存貯器的該偽頁(yè)下載到閃速存貯器后,處理器從第二數(shù)據(jù)流寫(xiě)一頁(yè)至E2ROM的內(nèi)部緩沖器。然后該E2ROM傳送存儲(chǔ)在其緩沖器中的信息至其存貯陣列。在該E2ROM正忙于編程其存貯陣列的同時(shí),處理器同時(shí)從該第一數(shù)據(jù)流中下載共同構(gòu)成第二偽頁(yè)的下一串字節(jié)。偽頁(yè)的編程與E2ROM的編程并行地執(zhí)行。
附圖簡(jiǎn)述在結(jié)合附圖閱讀下面的詳細(xì)描述的基礎(chǔ)上,本發(fā)明的上述及其它的目的、性能和優(yōu)點(diǎn)將更加易于理解,其中
圖1示出了根據(jù)本發(fā)明的用于初始化半導(dǎo)體存貯器的示范性系統(tǒng)的概觀;圖2示出了交錯(cuò)頁(yè)寫(xiě)E2ROM編程與頁(yè)寫(xiě)閃速存貯器編程的示范性流程圖;圖3示出了與圖2的流程圖相對(duì)應(yīng)的示范性時(shí)序圖;圖4示出了交錯(cuò)頁(yè)寫(xiě)E2ROM編程與字節(jié)寫(xiě)閃速存貯器編程的示范性流程圖;圖5示出了與圖4的流程圖相對(duì)應(yīng)的示范性時(shí)序圖。
詳細(xì)描述在下面的描述中,為了解釋和非限制的目的,具體的細(xì)節(jié)被描述以便提供對(duì)本發(fā)明的全面的理解。但是應(yīng)該明白的是,對(duì)一本領(lǐng)域的技術(shù)人員來(lái)說(shuō),本發(fā)明可以以與這些具體細(xì)節(jié)不同的其它實(shí)施例的形式實(shí)現(xiàn)。在其它情況下,公知方法、設(shè)備和電路的詳細(xì)描述被省略,以便不會(huì)因不必要的細(xì)節(jié)而使本發(fā)明的說(shuō)明變得模糊。
圖1描述了用于編程一蜂窩電話10的示范性系統(tǒng)。蜂窩電話10包括用于存儲(chǔ)各種參數(shù)和用戶定義的信息的E2ROM存貯器12(例如由ATMEL制造的E2ROM存貯器AT28HC256),以及用于存儲(chǔ)由蜂窩電話在執(zhí)行其各種具備的功能中使用的代碼的閃速存貯器14(例如由Advanced Micro Devices制造的閃速存貯器AM29F040)。該蜂窩電話還包括CPU24(此后稱(chēng)作“處理器”)和靜態(tài)RAM22(例如SRAM)。雖然為了簡(jiǎn)明起見(jiàn)只示出一個(gè)蜂窩電話10,但是多個(gè)蜂窩電話能夠被同時(shí)編程。
電話10的SRAM22存儲(chǔ)了由蜂窩電話在編程E2ROM存貯器12和閃速存貯器14中使用的二進(jìn)制程序代碼。該二進(jìn)制文件此后被稱(chēng)作“交錯(cuò)程序”。該交錯(cuò)程序還實(shí)現(xiàn)一提供狀態(tài)信息至編程器站2的串行通信協(xié)議,響應(yīng)來(lái)自編程站2的命令,并且還請(qǐng)求和接收來(lái)自編程站2的數(shù)據(jù)包。
編程站2本身包括與I/O電路4和內(nèi)部存貯器8通信的CPU6。該I/O電路4通過(guò)鏈路21依次與輸入設(shè)備18(例如鍵盤(pán)或鼠標(biāo))、調(diào)制解調(diào)器20、海量存貯器16、和蜂窩電話10的CPU24對(duì)接。海量存貯器16存儲(chǔ)包含用于下載到E2ROM存貯器12的二進(jìn)制數(shù)據(jù)的文件26和包含用于下載到閃速存貯器14的二進(jìn)制數(shù)據(jù)的文件28。
該編程站執(zhí)行一補(bǔ)充該交錯(cuò)程序的程序(此后稱(chēng)作“加載程序”)。該加載程序監(jiān)視來(lái)自電話10的狀態(tài)消息,并且發(fā)出命令至電話10。該加載程序還響應(yīng)關(guān)于數(shù)據(jù)包的來(lái)自電話10的請(qǐng)求。在執(zhí)行該功能時(shí),該加載程序分析二進(jìn)制文件26和28到一些包,這些包的大小符合該交錯(cuò)程序所期望的尺寸。這些包的尺寸能夠?yàn)榱瞬煌膽?yīng)用而被調(diào)整。在一個(gè)實(shí)施例中,最大尺寸被設(shè)置為為了來(lái)自數(shù)據(jù)文件26和代碼文件28的信息的臨時(shí)緩存而分配的可得到的SRAM。
在操作中,存貯器12、14和22最初不包含信息。因此,編程器站2由下載該交錯(cuò)程序至電話的SRAM22開(kāi)始。當(dāng)該下載處理成功時(shí),電話10經(jīng)由串行數(shù)據(jù)鏈路21發(fā)送一應(yīng)答至編程器站2。此后,電話10執(zhí)行存儲(chǔ)在其SRAM22中的交錯(cuò)程序。
該交錯(cuò)程序由從該編程器站請(qǐng)求一個(gè)數(shù)據(jù)包開(kāi)始。該請(qǐng)求確定數(shù)據(jù)是否應(yīng)從E2ROM數(shù)據(jù)文件26和閃速存儲(chǔ)器代碼文件28中提取。響應(yīng)接收該請(qǐng)求,編程器站2分析適當(dāng)?shù)亩M(jìn)制文件(26或28)并且傳送所請(qǐng)求的數(shù)據(jù)至電話10。然后電話存儲(chǔ)該數(shù)據(jù)至一建立在SRAM22中的臨時(shí)緩沖器。然后,電話10能夠從編程器站2請(qǐng)求另外的數(shù)據(jù)包。
可以采用各種用于從編程器站2下載數(shù)據(jù)包的協(xié)議。電話10交錯(cuò)其用于來(lái)自閃速代碼流的數(shù)據(jù)包的請(qǐng)求與用于來(lái)自E2ROM數(shù)據(jù)流的數(shù)據(jù)包的請(qǐng)求。例如,來(lái)自閃速代碼流的一數(shù)據(jù)包或一串?dāng)?shù)據(jù)包能夠被下載,隨后是來(lái)自E2ROM數(shù)據(jù)流的一個(gè)數(shù)據(jù)包或一串?dāng)?shù)據(jù)包。在另一實(shí)施例中,編程器站2能夠以各種間隔周期性地下載來(lái)自這兩個(gè)信息流的包,而不需要被電話10提示做這些。無(wú)論如何,從編程器站2至電話10的數(shù)據(jù)下載快于實(shí)際的閃速和E2ROM編程。因此,在不耽擱編程的情況下,在閃速和/或E2ROM編程的空閑期間能夠執(zhí)行下載。
根據(jù)接收在SRAM22中的部分閃速代碼和E2ROM數(shù)據(jù)流,在CPU24執(zhí)行存儲(chǔ)在SRAM22中的交錯(cuò)程序的管理下,電話10開(kāi)始編程E2ROM12和閃速存貯器14。更具體地,處理器24交錯(cuò)存貯器12的編程與存貯器14的編程。具體的交錯(cuò)算法將依賴于存貯器12和14的性能。第一交錯(cuò)算法(圖2和圖3中所述)通過(guò)頁(yè)寫(xiě)E2ROM與頁(yè)寫(xiě)閃速存貯器交錯(cuò)接收信息。第二交錯(cuò)算法(圖4和圖5中所述)通過(guò)頁(yè)寫(xiě)E2ROM與字節(jié)寫(xiě)閃速存貯器交錯(cuò)接收信息。
從圖2開(kāi)始,為了討論的目的,假定閃速存貯器編程周期長(zhǎng)于E2ROM編程周期。還假定閃速存貯器通常具有大于E2ROM的存儲(chǔ)容量。基于這些理由,在該示范性實(shí)施例中,算法需要在閃速存貯器編程其存貯陣列期間執(zhí)行E2ROM編程周期。
更具體地,該算法開(kāi)始于將閃速頁(yè)指針(F)、E2ROM頁(yè)指針(E)和E2ROM尾標(biāo)志(E-TERM)初始化為零的步驟(在步驟S2)。這些頁(yè)指針指向在各自的半導(dǎo)體存貯設(shè)備內(nèi)存儲(chǔ)數(shù)據(jù)的存貯單元。在E2ROM的最后存貯單元已經(jīng)被編程時(shí),該E2ROM尾標(biāo)志被認(rèn)定。如后所述,E-TERM標(biāo)志是必須的,因?yàn)樵谠摼唧w實(shí)施例中,閃速頁(yè)多于E2ROM頁(yè)。在所有的E2ROM頁(yè)被編程后,交錯(cuò)結(jié)束并且閃速編程以常規(guī)方法繼續(xù)進(jìn)行。
在步驟S3中,處理器24查詢閃速存貯器14。如果閃速存貯器14不忙(當(dāng)在步驟S4中被確定時(shí)),處理器在由閃速指針(F)指示的位置寫(xiě)一頁(yè)數(shù)據(jù)至閃速存貯器14,并且遞增該閃速指針(在步驟S5中)。如果閃速存貯器14忙,表示它目前正在編程先前加載的數(shù)據(jù),則該算法再查詢閃速存貯器14,直到閃速存貯器指示準(zhǔn)備好接收另外的數(shù)據(jù)為止。
在下載信息到閃速存貯器14的內(nèi)部緩沖器之后,處理器24嘗試下載信息至E2ROM12。更具體地,處理器24首先確定E-TERM標(biāo)志是否被設(shè)置為1,該標(biāo)志為1表示E2ROM已經(jīng)全部被編程(在步驟S6)。如果否,處理器24將詢問(wèn)E2ROM以確定其是否忙(表示其目前正編程前一下載周期接收的在其內(nèi)部緩沖器中的信息)(在步驟S8)。如果E2ROM 12不忙,則處理器24下載一頁(yè)數(shù)據(jù)至E2ROM12的由E指針指示的存儲(chǔ)位置,并且然后遞增E指針(在步驟S9)。在寫(xiě)步驟S9后,如果E2ROM12的最后一頁(yè)已經(jīng)被編程(當(dāng)在步驟S10中被確定時(shí)),處理器24設(shè)置E-TERM標(biāo)志為1(在步驟S11)。
當(dāng)E-TERM標(biāo)志被設(shè)置為1時(shí),處理器隨后跳過(guò)步驟S7-S11,并且在該處理中,編程閃速存貯器14的剩余部分。更具體地,處理器將循環(huán)步驟S3-S6,直到F指針指示閃速存貯器14已經(jīng)被完全編程為止(當(dāng)在步驟S12中被確定時(shí))。如上所述,閃速存貯器14通常包括大于E2ROM 12的存貯容量,因此,閃速存貯器14的編程將不太可能在E2ROM的編程之前完成。如果E2ROM具有比該閃速存貯器多的頁(yè),則E和F指針的角色被顛倒;其它方面的算法是等同的。
圖3是一個(gè)時(shí)序圖,示出了一頁(yè)閃速編程如何與一頁(yè)E2ROM編程交錯(cuò)。在時(shí)刻30,處理器查詢閃速存貯器12以確定其是否忙。如果不忙,則處理器在時(shí)間間隔36中下載數(shù)據(jù)至閃速緩沖器。該閃速緩沖器在重疊時(shí)間間隔40中存儲(chǔ)該信息。此后,閃速存貯器12在時(shí)間間隔42中從其內(nèi)部緩沖器至其存貯陣列編程該信息。與此同時(shí),處理器在點(diǎn)32開(kāi)始查詢E2ROM以確定E2ROM是否忙。如果不忙,則處理器在間隔38中下載數(shù)據(jù)至E2ROM12。該信息在重疊的時(shí)間間隔44中由E2ROM12的內(nèi)部緩沖器接收。然后E2ROM在時(shí)間間隔46中從其緩沖器至其內(nèi)部存貯陣列編程該信息。注意,時(shí)間間隔44和46整個(gè)被包含在閃速編程周期的編程間隔42內(nèi)。按此方式,本發(fā)明利用了另外的空閑處理時(shí)間。
與并行的閃速和E2ROM編程同時(shí)地(在間隔42和46),處理器在間隔50中查詢閃速存貯器。該查詢開(kāi)始于時(shí)刻34并且繼續(xù)下去直到處理器檢測(cè)到閃速存貯器在間隔42中已經(jīng)完成其編程,并且已經(jīng)進(jìn)入空閑狀態(tài)(在間隔52)為止。在該具體實(shí)施例中,由于閃速編程的時(shí)間長(zhǎng)于E2ROM編程,因此E2ROM將同樣完成編程并且進(jìn)入其空閑狀態(tài)(在間隔48)。此時(shí),處理器重復(fù)上述的步驟序列,從而下載第二頁(yè)閃速和E2ROM數(shù)據(jù)。
圖3所示,可以采用一512K×8閃速存貯器(例如Atmel AT29C040A閃速存貯器),并且可以采用一32K×8E2ROM(例如AtmelAT28HC256)。在該具體例子中,閃速存貯器有2048頁(yè),而E2ROM只有512頁(yè)。由于這一容量的差別,圖2的算法可以被修改,使得對(duì)于每一頁(yè)E2ROM,編程2頁(yè)閃速存貯器,或者對(duì)于每一頁(yè)E2ROM,編程4頁(yè)閃速存貯器,并且將同樣地節(jié)省總的編程時(shí)間。
如上所述,閃速存貯器可能要求字節(jié)寫(xiě)存儲(chǔ),而不是頁(yè)寫(xiě)存儲(chǔ)。在這種情況下,采用第二種算法。如圖4所示,該處理通過(guò)將閃速字節(jié)指針(F)、E2ROM頁(yè)指針(E)和字節(jié)計(jì)數(shù)(BYTCNT)指針都初始化為零而開(kāi)始于步驟S18。該閃速字節(jié)指針指向存儲(chǔ)數(shù)據(jù)的閃速存貯器12的當(dāng)前字節(jié)位置,該E2ROM頁(yè)指針指向存儲(chǔ)數(shù)據(jù)的E2ROM14的當(dāng)前頁(yè)位置。處理器將一串連續(xù)的1024字節(jié)數(shù)據(jù)下載至閃速存貯器12,所述連續(xù)的1024字節(jié)構(gòu)成一個(gè)偽頁(yè)。字節(jié)計(jì)數(shù)器提供在偽頁(yè)范圍內(nèi)的字節(jié)計(jì)數(shù)索引。
跟隨在指針初始化之后,處理器寫(xiě)一數(shù)據(jù)字節(jié)至閃速存貯器14中,并且然后遞增閃速字節(jié)指針(F)和字節(jié)計(jì)數(shù)器(BYTCNT)(在步驟S22)。然后,處理器檢測(cè)是否已經(jīng)串行下載1024個(gè)連續(xù)字節(jié)至閃速存貯器14中(在步驟S22)。如果否,則處理器將查詢閃速存貯器14(在步驟30)以確定編程先前下載到閃速緩沖器中的數(shù)據(jù)是否已經(jīng)完成(當(dāng)在步驟S32中被確定時(shí))。如果閃速存貯器指示其不忙,則處理器將繼續(xù)下載另外的數(shù)據(jù)字節(jié)至閃速緩沖器,直到1024字節(jié)的位置已經(jīng)下載到閃速存貯器14為止。
當(dāng)已經(jīng)下載1024字節(jié)時(shí),處理器寫(xiě)一頁(yè)數(shù)據(jù)至E2ROM(在步驟S24)。然后處理器檢測(cè)該被寫(xiě)的頁(yè)是否為E2ROM存貯器的最后頁(yè)(在步驟S28)。如果是,則該算法結(jié)束(在步驟S34)。如果它不是最后頁(yè),則字節(jié)計(jì)數(shù)被復(fù)位為零(在步驟S28)并且該算法進(jìn)行下去,以便繼續(xù)寫(xiě)另一串1024字節(jié)至閃速存貯器。
顯然,1024字節(jié)閃速數(shù)據(jù)對(duì)一頁(yè)E2ROM數(shù)據(jù)的分配是示范性的,并且根據(jù)半導(dǎo)體存貯設(shè)備的具體存貯容量被采用。在前述的具體實(shí)施例中,寫(xiě)入閃速存貯器的連續(xù)字節(jié)組(在該例中為1024)構(gòu)成一個(gè)偽頁(yè)的數(shù)據(jù)。字節(jié)寫(xiě)的周期數(shù)可以被選擇,以使得在E2ROM中的頁(yè)數(shù)匹配偽頁(yè)數(shù)。這樣就使得,在步驟S26中,如果遇到E2ROM的最后頁(yè),則閃速存貯器14的編程將同樣地已經(jīng)完成,并且該處理能夠在步驟S34中結(jié)束。
圖5示出了與在圖4中所述的算法對(duì)應(yīng)的時(shí)序圖。在時(shí)間間隔70中,處理器下載第一字節(jié)(字節(jié)0)至閃速存貯器14。閃速存貯器14在時(shí)間間隔74中接收該信息到其內(nèi)部緩沖器中,然后繼續(xù)進(jìn)行以便在時(shí)間間隔76中傳送該信息至其存貯陣列。在傳送該第一字節(jié)(字節(jié)0)至閃速存貯器14后,處理器立即開(kāi)始(在位置60)查詢閃速存貯器以確定其是否已經(jīng)完成編程,該查詢?cè)谡麄€(gè)時(shí)間間隔72中繼續(xù)直到閃速存貯器14指示其已經(jīng)完成編程為止。此后,處理器立即重復(fù)上述周期。實(shí)際上,該周期被重復(fù)與完成閃速存貯器的一個(gè)偽頁(yè)所需的一樣多的次數(shù)。在示于圖5的具體實(shí)施例中,一個(gè)偽頁(yè)對(duì)應(yīng)1024字節(jié)。
在閃速偽頁(yè)的最后字節(jié)已經(jīng)被傳送到閃速存貯器的緩沖器后,處理器在間隔78中下載一頁(yè)數(shù)據(jù)(例如由64字節(jié)構(gòu)成)至E2ROM存貯器12。E2ROM12在時(shí)間間隔82接收該頁(yè)數(shù)據(jù),并且然后在時(shí)間間隔84從其內(nèi)部緩沖器傳送該信息至其存貯陣列。在處理器已經(jīng)在間隔78中下載一頁(yè)數(shù)據(jù)至E2ROM12后,處理器在時(shí)間間隔86從字節(jié)1024開(kāi)始,立即下載另一偽頁(yè)(即1024字節(jié)串)至閃速存貯器14。注意,在間隔84中,第二偽頁(yè)閃速存貯器的編程與第一頁(yè)E2ROM存貯器的編程并行執(zhí)行。上述處理被重復(fù)直到遇到閃速存貯器的最后偽頁(yè)和E2ROM的最后頁(yè)為止。
上述的示范性的實(shí)施例被認(rèn)為是對(duì)本發(fā)明的各個(gè)方面的說(shuō)明而不是限制。因此,根據(jù)這里的描述,本領(lǐng)域的技術(shù)人員能夠?qū)Ρ景l(fā)明在具體的實(shí)現(xiàn)中進(jìn)行各種變化。所有的這種修改和變形被認(rèn)為在由后面的權(quán)利要求所定義的本發(fā)明的范圍和精神內(nèi)。
例如,說(shuō)明書(shū)中討論了用于蜂窩電話的E2ROM和閃速存貯器的應(yīng)用。所公開(kāi)的原理并不限于這一具體應(yīng)用。而且,上述的討論限于交錯(cuò)具有一定的示范性操作特性和存儲(chǔ)容量的E2ROM和閃速存貯器的環(huán)境中。還應(yīng)明白的是,對(duì)于本領(lǐng)城的技術(shù)人員來(lái)說(shuō),所公開(kāi)的原理能夠適用于任意一對(duì)(或多個(gè))半導(dǎo)體存貯器,而不管其操作特性或存儲(chǔ)容量。最后,上面所公開(kāi)的原理可以用于其中一個(gè)或多個(gè)半導(dǎo)體存貯器被初始化為零(OOH)的埸合。
權(quán)利要求
1.一種用于寫(xiě)第一信息流至第一半導(dǎo)體存貯設(shè)備和寫(xiě)第二信息流至第二半導(dǎo)體存貯設(shè)備的方法,包括步驟寫(xiě)所述第一信息流的一部分至所述第一存貯設(shè)備;存儲(chǔ)所述第一信息流的所述部分至所述第一存貯設(shè)備的一緩沖器中;在第一傳送步驟中,從所述緩沖器傳送所述第一信息流的所述部分至所述第一存貯設(shè)備的存貯陣列;與所述第一傳送步驟同時(shí)地寫(xiě)所述第二信息流的一部分至所述第二存貯設(shè)備;存儲(chǔ)所述第二信息流的所述部分至所述第二存貯設(shè)備的一緩沖器中;以及在第二傳送步驟中,從所述第二存貯設(shè)備的所述緩沖器傳送所述第二信息流的所述部分至所述第二存貯設(shè)備的存貯陣列。
2.權(quán)利要求1的方法,其中所述第一半導(dǎo)體存貯設(shè)備由閃速存貯設(shè)備構(gòu)成。
3.權(quán)利要求2的方法,其中所述第二半導(dǎo)體存貯設(shè)備由EEPROM存貯設(shè)備構(gòu)成。
4.權(quán)利要求3的方法,其中所述閃速存貯設(shè)備以部分頁(yè)的方式接收所述第一數(shù)據(jù)流,并且所述EEPROM存貯設(shè)備以部分頁(yè)的方式接收所述第二數(shù)據(jù)流。
5.一種用于寫(xiě)第一信息流至第一半導(dǎo)體存貯設(shè)備和寫(xiě)第二信息流至第二半導(dǎo)體存貯設(shè)備的方法,包括步驟在第一寫(xiě)步驟中,寫(xiě)所述第一信息流的一部分至所述第一存貯設(shè)備;在第一存儲(chǔ)步驟中,存儲(chǔ)所述第一信息流的所述部分至所述第一存貯設(shè)備的一緩沖器中;在第一傳送步驟中,從所述緩沖器傳送所述第一信息流的所述部分至所述第一存貯設(shè)備的存貯陣列;與所述第一傳送步驟同時(shí)地在第二寫(xiě)步驟中,寫(xiě)所述第二信息流的一部分至所述第二存貯設(shè)備;在第二存儲(chǔ)步驟中,存儲(chǔ)所述第二信息流的所述部分至所述第二存貯設(shè)備的一緩沖器中;以及在第二傳送步驟中,從所述第二存貯設(shè)備的所述緩沖器傳送所述第二信息流的所述部分至所述第二存貯設(shè)備的存貯陣列。多次重復(fù)所述第二寫(xiě)、存儲(chǔ)和傳送步驟以下載總的所述第二信息流的部分至所述第二存貯設(shè)備。
6.權(quán)利要求5的方法,其中所述第一半導(dǎo)體存貯設(shè)備由EEPROM存貯設(shè)備構(gòu)成。
7.權(quán)利要求6的方法,其中所述第二半導(dǎo)體存貯設(shè)備由閃速存貯設(shè)備構(gòu)成。
8.權(quán)利要求7的方法,其中所述閃速存貯設(shè)備以部分字節(jié)的方式接收所述第二數(shù)據(jù)流,并且其中所述總的部分構(gòu)成一個(gè)偽頁(yè),并且所述EEPROM存貯設(shè)備以部分頁(yè)的方式接收所述第一數(shù)據(jù)流。
9.一種用于寫(xiě)第一信息流至第一半導(dǎo)體存貯設(shè)備和寫(xiě)第二信息流至第二半導(dǎo)體存貯設(shè)備的系統(tǒng),包括一處理器,用于寫(xiě)所述第一數(shù)據(jù)流的一部分至所述第一存貯設(shè)備,并且用于寫(xiě)所述第二數(shù)據(jù)流的一部分至所述第二存貯設(shè)備;在所述第一存貯設(shè)備中的第一緩沖器,用于存儲(chǔ)所述第一流的所述部分;在所述第二存貯設(shè)備中的第二緩沖器,用于存儲(chǔ)所述第二數(shù)據(jù)流的所述部分;第一邏輯,用于從所述第一緩沖器傳送所述第一流的所述部分至所述第一存貯設(shè)備的存貯陣列;第二邏輯,用于從所述第二存貯設(shè)備的所述第二緩沖器傳送所述第二流的所述部分至所述第二存貯設(shè)備的存貯陣列;其中所述第一邏輯執(zhí)行其傳送與所述第二邏輯執(zhí)行其傳送并行。
10.權(quán)利要求9的系統(tǒng),其中所述第一半導(dǎo)體存貯設(shè)備由閃速存貯設(shè)備構(gòu)成。
11.權(quán)利要求10的系統(tǒng),其中所述第二半導(dǎo)體存貯設(shè)備由EEPROM存貯設(shè)備構(gòu)成。
12.權(quán)利要求11的系統(tǒng),其中所述閃速存貯設(shè)備以部分頁(yè)的方式接收所述第一數(shù)據(jù)流,并且所述EEPROM存貯設(shè)備以部分頁(yè)的方式接收所述第二數(shù)據(jù)流。
13.一種用于寫(xiě)第一信息流至第一半導(dǎo)體存貯設(shè)備和寫(xiě)第二信息流至第二半導(dǎo)體存貯設(shè)備的系統(tǒng),包括一處理器,用于寫(xiě)所述第一數(shù)據(jù)流的一部分至所述第一存貯設(shè)備,并且用于寫(xiě)所述第二數(shù)據(jù)流的一部分至所述第二存貯設(shè)備;在所述第一存貯設(shè)備中的第一緩沖器,用于存儲(chǔ)所述第一流的所述部分;在所述第二存貯設(shè)備中的第二緩沖器,用于存儲(chǔ)所述第二數(shù)據(jù)流的所述部分;第一邏輯,用于從所述第一緩沖器傳送所述第一流的所述部分至所述第一存貯設(shè)備的存貯陣列;第二邏輯,用于從所述第二存貯設(shè)備的所述第二緩沖器傳送所述第二流的所述部分至所述第二存貯設(shè)備的存貯陣列;其中所述處理器包括交錯(cuò)邏輯,用于在所述第一邏輯從所述第一緩沖器傳送所述第一流的所述部分至所述第一存貯設(shè)備的所述存貯陣列的同時(shí),寫(xiě)所述第二數(shù)據(jù)流的多個(gè)所述部分至所述第二存貯設(shè)備,其中所述多個(gè)部分構(gòu)成一個(gè)總的部分。
14.權(quán)利要求13的系統(tǒng),其中所述第一半導(dǎo)體存貯設(shè)備由EEPROM存貯設(shè)備構(gòu)成。
15.權(quán)利要求14的系統(tǒng),其中所述第二半導(dǎo)體存貯設(shè)備由閃速存貯設(shè)備構(gòu)成。
16.權(quán)利要求15的系統(tǒng),其中所述閃速存貯設(shè)備以部分字節(jié)的方式接收所述第二數(shù)據(jù)流,并且其中所述總部分構(gòu)成一個(gè)偽頁(yè),并且所述EEPROM存貯設(shè)備以部分頁(yè)的方式接收所述第一流。
全文摘要
一種交錯(cuò)閃速存貯器編程與E
文檔編號(hào)G11C16/10GK1245580SQ97181684
公開(kāi)日2000年2月23日 申請(qǐng)日期1997年12月4日 優(yōu)先權(quán)日1996年12月12日
發(fā)明者J·J·瓦魯卡斯 申請(qǐng)人:艾利森公司