專利名稱:半導(dǎo)體集成電路裝置及存儲器的管理方法
技術(shù)領(lǐng)域:
實施方式涉及半導(dǎo)體集成電路裝置及存儲器的管理方法。
背景技術(shù):
SIM (Subscriber Identity Module,用戶識別模塊)卡是用于便攜式電話機等的IC(集成電路)的一種。在SIM卡上,例如搭載了 EEPROM(Electrically Erasable Programmable ROM)禾口 OTP (One Time Programmable ROM)。 EEPROM 用作能夠進行數(shù)據(jù)的寫入和擦除的非易失性存儲器。此外,OTP能夠用作只能進行一次寫入的非易失性存儲器。 若這樣搭載兩種非易失性存儲器,則除了兩種非易失性存儲器之外,需要各個控制電路,IC 的制造成本增大,并且存在有面積大型化的問題。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種能夠抑制制造成本、并進行小型化的半導(dǎo)體集成電路裝置和存儲器的管理方法。實施方式的半導(dǎo)體集成電路裝置,具備非易失性存儲器,具有第一及第二區(qū)域;存儲部,用于存儲第二程序,該第二程序用于從外部向上述第一區(qū)域下載第一程序;以及運算部,執(zhí)行上述第一及上述第二程序,對上述第一區(qū)域,能通過上述第一程序來寫入和擦除,對上述第二區(qū)域,不能通過上述第一程序來擦除。其他實施方式的存儲器的管理方法,是具有第一區(qū)域和第二區(qū)域的存儲器的管理方法,該第一區(qū)域中下載了第一程序,根據(jù)擦除控制信號來擦除第二區(qū)域,該存儲器的管理方法具備將上述擦除控制信號設(shè)定為上述第二區(qū)域不被擦除的步驟;以及在設(shè)定上述擦除控制信號之后,執(zhí)行已經(jīng)下載到上述第一區(qū)域的上述第一程序的步驟。根據(jù)上述結(jié)構(gòu)的半導(dǎo)體集成電路裝置和存儲器的管理方法,能夠抑制制造成本、 進行小型化。
圖1是一實施方式的半導(dǎo)體集成電路裝置100的概略框圖。圖2是示出控制電路31的一例的電路框圖。
圖3是用于說明圖2中的各信號的圖。圖4是示出標準(normal,正常)區(qū)域21的寫入例程的流程圖。圖5是式出標準區(qū)域21的擦除例程的流程圖。圖6是示出OTP區(qū)域22的寫入例程的流程圖。圖7是OTP區(qū)域22的擦除例程。圖8是示出圖1的半導(dǎo)體集成電路裝置100的各部分的處理動作的一例的流程圖。圖9是示出各程序可否改寫標準區(qū)域21和OTP區(qū)域22的圖。
具體實施例方式根據(jù)一實施方式,半導(dǎo)體集成電路裝置具備非易失性存儲器,存儲部,以及運算部。非易失性存儲器具有第一及第二區(qū)域。存儲部存儲第二程序,該第二程序用于從外部向上述第一區(qū)域下載第一程序。運算部執(zhí)行上述第一及上述第二程序。對上述第一區(qū)域, 能通過上述第一程序來寫入和擦除,對上述第二區(qū)域,不能通過上述第一程序來擦除。下面,參照附圖,對半導(dǎo)體集成電路裝置和存儲器的管理方法的實施方式進行具體說明。圖1是一實施方式的半導(dǎo)體集成電路裝置100的概略框圖。該圖的半導(dǎo)體集成電路裝置100例如為搭載在便攜式電話機上的IC。半導(dǎo)體集成電路裝置100具備電源端子VDD,接地端子GND,時鐘端子CLK,重置端子RST,輸入輸出端子I/O。向電源端子VDD和接地端子GND之間提供電源電壓。從外部分別向時鐘端子CLK和重置端子RST輸入時鐘信號和重置信號。輸入輸出端子I/O例如從外部輸入程序。除此之外,半導(dǎo)體集成電路裝置100也可以還具備各種端子,例如為了高速進行數(shù)據(jù)通信而具備用于輸入輸出模擬信號的SWP端子(未圖示)。此外,半導(dǎo)體集成電路裝置100具備R0M(Read Only Memory,存儲部)1, EEPR0M2,邏輯電路3,以及CPU(中央處理單元,運算部)4。半導(dǎo)體集成電路裝置100也可以具備模擬電路和RAM(未圖示),該模擬電路在與邏輯電路3之間收發(fā)數(shù)據(jù),該RAM暫時存儲數(shù)據(jù)。此外,也可以不是EEPR0M2,而是其他非易失性存儲器。ROMl存儲3個程序,即,引導(dǎo)程序11、下載器(第二程序)12以及EEPROM控制例程(第三程序)13。引導(dǎo)程序11是在利用重置信號解除了重置之后最先執(zhí)行的程序。下載器12是從外部向EEPR0M2下載程序的程序。EEPROM控制例程13是對EEPR0M2進行寫入和擦除的程序,由下載器12或下載到EEPR0M2的程序(下面稱作EEPR0M2的程序(第一程序))調(diào)用來使用。由CPU4執(zhí)行這些程序。EEPR0M2是能夠以字節(jié)為單位進行寫入和擦除的非易失性存儲器。在初始狀態(tài)下, 存儲到EEPR0M2的數(shù)據(jù)是“高”,通過寫入設(shè)定為“低”,通過擦除設(shè)定為“高”。下面,在本說明書中,所謂“寫入”表示將初始狀態(tài)的區(qū)域設(shè)定為“高”和“低”中的某一個,所謂“擦除” 表示將所寫入的區(qū)域設(shè)定為初始狀態(tài)的“高”。此外,所謂“改寫”表示“寫入和擦除”。EEPR0M2 具有標準區(qū)域(第一區(qū)域)21 和 OTP (One Time Programmable ( 一次性可編程))區(qū)域(第二區(qū)域)22。標準區(qū)域21和OTP區(qū)域22上被分配了不同的地址。標準區(qū)域21存儲從外部下載的程序以及各種數(shù)據(jù)。下載到標準區(qū)域21的程序被CPU4執(zhí)行。在本實施方式中,不由EEPR0M2的程序直接向OTP區(qū)域22進行改寫,而是通過調(diào)用存儲在ROMl中的EEPR0M2控制例程13,向OTP區(qū)域22只進行寫入。這一點將在后面進行詳細說明。OTP區(qū)域22具有數(shù)據(jù)區(qū)域221和管理區(qū)域222。數(shù)據(jù)區(qū)域221存儲數(shù)據(jù)OTPA OTPC, OTPO 0TP127,管理區(qū)域222存儲分別與數(shù)據(jù)OTPA OTPC、OTPO 0TP127對應(yīng)的履歷信息CONA COMC、CONO C0N127。數(shù)據(jù)和履歷信息分別是1字節(jié)。所謂履歷信息是對應(yīng)的數(shù)據(jù)的寫入履歷。更具體而言,在對應(yīng)的數(shù)據(jù)OTPA OTPC, OTPO 0TP127處于初始狀態(tài)的情況下,履歷信息CONA COMC、CONO C0N127為 FFh (末尾的h表示16進制數(shù)),當進行寫入時成為00h。使用該履歷信息,能夠許可或禁止對應(yīng)的數(shù)據(jù)區(qū)域221的寫入。數(shù)據(jù)區(qū)域221的數(shù)據(jù)OTPA OTPC對許可和禁止向EEPR0M2下載程序進行控制。 此外,在數(shù)據(jù)0ΤΡ0 0TP127中,通過禁止由管理區(qū)域222的履歷信息C0N0 C0N127進行寫入,由此存儲不想被改寫的數(shù)據(jù),例如搭載了該半導(dǎo)體集成電路裝置100的便攜式電話機的電話號碼或制造號碼等。邏輯電路3具有控制電路31??刂齐娐?1根據(jù)從EEPR0M2提供的忙信號BUSY和從 CPU4提供的控制信號,生成寫入信號WR、擦除信號ER以及讀取信號RD,并提供給EEPR0M2。 利用寫入信號WR、擦除信號ER以及讀取信號RD的高脈沖,分別進行寫入、擦除和讀取。此外,在忙信號BUSY為高時,表示處于寫入動作中或擦除動作中。并且,邏輯電路3具有寄存器(REG) 32,該寄存器32用于存儲信號0TP_ERDIS (擦除控制信號)的值,該信號0TP_ERDIS表示禁止擦除OTP區(qū)域22。在控制信號0TP_ERDIS 為低的情況下,許可EEPR0M2的OTP區(qū)域22的擦除,在控制信號0TP_ERDIS為高的情況下, 禁止EEPR0M2的OTP區(qū)域22的擦除。圖2是示出控制電路31的一例的電路框圖,該圖2(a)示出用于生成寫入信號WR 的電路31a,該圖2 (b)示出用于生成擦除信號ER的電路31b。此外,圖3是用于說明圖2 中的各信號的圖。被輸入到控制電路31中的信號之中的信號N0RM_ADDR、N0RM_WREN、0TP_ ADDR、0TP_WREN、N0RM_EREN、0TP_EREN是由邏輯電路3內(nèi)的信號生成電路(未圖示)來生成,信號CPU_UD則從CPU4輸入,信號0TP_ERDIS被存儲到寄存器32中。圖2(a)所示的用于生成寫入信號WR的電路31a具有邏輯積電路(“與電路” )311、 312、314和邏輯和電路(“或電路”)313。在邏輯積電路311中輸入信號N0RM_ADDR、N0RM_ WREN。在這些輸入均為高的情況下,邏輯積電路311將輸出信號設(shè)定為高。同樣,向邏輯積電路312輸入信號0TP_ADDR、0TP_WREN。在這些輸入均為高的情況下,邏輯積電路312將輸出信號設(shè)定為高。在邏輯積電路311、312的輸出信號的一個為高的情況下,邏輯和電路 313將輸出信號設(shè)定為高。并且,在信號CPU_UD為高的情況下,邏輯積電路314將寫入信號 WR設(shè)定為高。與此同時,從CPU4將進行寫入的EEPR0M2上的地址設(shè)定到EEPR0M2,向所設(shè)定的地址寫入數(shù)據(jù)。 通過CPU4執(zhí)行EEPROM控制例程13,控制輸入到圖2的控制電路31中的各信號。 在分配給EEPR0M2的標準區(qū)域21的地址被從CPU4輸入到邏輯電路3中的情況下,信號 N0RM_ADDR被設(shè)定為高。此外,在接收到從CPU4向標準區(qū)域21的寫入許可命令、且忙信號 BUSY為低的情況下,信號N0RM_WREN被設(shè)定為高。之后,在寫入期間中,EEPR0M2將忙信號BUSY設(shè)定為高,而當寫入結(jié)束時,將忙信號設(shè)定為低。與此同步地,信號N0RM_WREN被設(shè)定為低。信號CPU_UD與CPU4的改寫命令同步地被設(shè)定為高。圖2 (b)所示的用于生成擦除信號ER的控制電路31b的結(jié)構(gòu)也幾乎與圖2 (a)的電路31a相同。不同點在于,存儲在寄存器32中的信號0TP_ERDIS的反轉(zhuǎn)信號被輸入到邏輯積電路316。當信號0TP_ERDIS為高時,邏輯積電路316的輸出信號與信號0TP_ADDR、0TP_ EREN的值無關(guān)地被設(shè)定為低,不能擦除OTP區(qū)域22。在此,當CPU 4不執(zhí)行存儲在ROMl中的程序以外的程序即EEPR0M2的程序的情況下,信號 N0RM_WREN、0TP_WREN、N0RM_EREN、0TP_EREN 被設(shè)定為低。由此,不能由 EEI3ROiC 的程序直接進行EEPR0M2的改寫。此外,能夠由EEPR0M2的程序調(diào)用EEPROM控制例程13,來對EEPR0M2的標準區(qū)域 21和OTP區(qū)域22進行寫入。此外,從圖2(b)的電路31b可知,信號0TP_ERDIS僅用于禁止OTP區(qū)域22的擦除,不能對標準區(qū)域21進行擦除。因此,能夠由EEPR0M2的程序調(diào)用 EEPROM控制例程13來擦除EEPR0M2的標準區(qū)域21。接著,分別對使用了圖2的控制電路31的標準區(qū)域21的寫入例程和擦除例程、 OTP區(qū)域22的寫入例程和擦除例程進行說明。這些例程包含在圖1的EEPROM控制例程13中。圖4是表示標準區(qū)域21的寫入例程的流程圖。首先,邏輯電路3讀取寫入目的地的數(shù)據(jù),并確認該數(shù)據(jù)是否為FFh (步驟Si)。在寫入目的地的數(shù)據(jù)不是Fi^h情況下(步驟Sl的“否”),結(jié)束異常。這是因為,若EEPR0M2的性質(zhì)為正常,則在寫入之前為初始狀態(tài),即數(shù)據(jù)成為Fi^h。若寫入目的地的數(shù)據(jù)為FFh (步驟Sl的“是”),則CPU4向邏輯電路3發(fā)送標準區(qū)域21的寫入許可信號,信號N0RM_WREN被設(shè)定為高。此外,CPU4向邏輯電路3發(fā)送標準區(qū)域21的進行寫入的地址,信號N0RM_ADDR被設(shè)定為高(步驟S2)。其結(jié)果,圖2(a)的邏輯積電路311將輸出信號設(shè)定為高,邏輯和電路313也將輸出信號設(shè)定為高。并且,CPU4向邏輯電路3發(fā)送改寫命令,信號CPU_UD被設(shè)定為高(步驟S3)。其結(jié)果,圖2 (a)的邏輯積電路314將寫入信號WR設(shè)定為高,進行寫入。在進行寫入的期間,EEPR0M2將忙信號設(shè)定為高。之后,當寫入結(jié)束時,EEPR0M2將忙信號設(shè)定為低。邏輯電路3直到忙信號成為低為止進行待機(步驟S4),然后,進行已經(jīng)寫入到EEPR0M2中的數(shù)據(jù)的驗證。假如驗證的結(jié)果有異常(步驟S5的“否”),則設(shè)定為異常結(jié)束,若沒有異常(步驟S5的“是”),則認為寫入結(jié)束,并正常結(jié)束。圖5是示出標準區(qū)域21的擦除例程的流程圖。圖5的擦除例程用于擦除已經(jīng)寫入了任意的數(shù)據(jù)的區(qū)域,所以在不預(yù)先確認擦除目的地的數(shù)據(jù)的這一點不同于圖4的寫入例程。其他處理與圖4的寫入例程類似,所以省略說明。如以上所示,能夠?qū)EPR0M2的標準區(qū)域21用作不特別限制改寫的、能夠改寫的區(qū)域。圖6是示出OTP區(qū)域22的寫入例程的流程圖。如上所述,OTP區(qū)域22上存在數(shù)據(jù)區(qū)域221和與之對應(yīng)地存儲履歷信息的管理區(qū)域222。因此,在對數(shù)據(jù)區(qū)域221進行了寫入之后,還需要向管理區(qū)域222寫入履歷信息。下面,關(guān)于與圖4的標準區(qū)域21的寫入例程相同的一點,省略說明。
首先,邏輯電路3讀取寫入目的地的數(shù)據(jù)區(qū)域221的數(shù)據(jù),確認該數(shù)據(jù)是否為 FFh (步驟S21)。并且,邏輯電路3讀取與寫入目的地的數(shù)據(jù)區(qū)域221對應(yīng)的管理區(qū)域222 的履歷信息,并確認其履歷信息是否為FFh (步驟S22)。假如所對應(yīng)的管理區(qū)域222的履歷信息不是FFh,則認為已經(jīng)進行寫入,并異常結(jié)束(步驟S22的“否”)。不僅確認數(shù)據(jù)區(qū)域 221還確認管理區(qū)域222的履歷信息的理由在于,有時在數(shù)據(jù)區(qū)域221中偶然寫入Fi^h。若寫入目的地的數(shù)據(jù)區(qū)域221的數(shù)據(jù)和與之對應(yīng)的管理區(qū)域222的履歷信息均為 FFh (步驟S21、S22的“是”),則CPU4向邏輯電路3發(fā)送OTP區(qū)域22的寫入許可信號,并將 OTP WREN設(shè)定為高。并且,CPU4向邏輯電路3發(fā)送進行寫入的數(shù)據(jù)區(qū)域221的地址,并將信號0TP_ADDR設(shè)定為高(步驟S23)。其結(jié)果,圖2 (a)的邏輯積電路312將輸出信號設(shè)定為高,邏輯和電路313也將輸出信號設(shè)定為高。并且,CPU4向邏輯電路3發(fā)送改寫命令,信號CPU_UD被設(shè)定為高(步驟S24)。由此,圖2 (a)的邏輯積電路314將寫入信號WR設(shè)定為高,進行寫入。并且,當忙信號成為低時,邏輯電路3進行所寫入的數(shù)據(jù)的驗證(步驟S25、S26)。通過以上過程,向數(shù)據(jù)區(qū)域221 寫入數(shù)據(jù)。接著,為了將表示已經(jīng)寫入到數(shù)據(jù)區(qū)域221的履歷信息寫入到管理區(qū)域222,CPU4 向邏輯電路3發(fā)送OTP區(qū)域22的寫入許可信號,并將信號0TP_WREN設(shè)定為高。并且,CPU4 向邏輯電路3發(fā)送與所寫入的數(shù)據(jù)區(qū)域221對應(yīng)的管理區(qū)域222的地址,將信號0TP_ADDR 設(shè)定為高(步驟S27)。例如,在對數(shù)據(jù)區(qū)域221的數(shù)據(jù)0TP64進行了寫入的情況下,CPU4 向邏輯電路3發(fā)送與管理區(qū)域222的履歷信息C0N64對應(yīng)的地址。下面,通過同樣的過程, 管理區(qū)域222的履歷信息C0N64被設(shè)定為00h,存儲著對應(yīng)的數(shù)據(jù)區(qū)域221的數(shù)據(jù)0TP64已寫入完畢這樣的履歷信息(步驟S28 S30)。圖7是示出OTP區(qū)域22的擦除例程的流程圖。圖7的擦除例程擦除已經(jīng)寫入了任意的數(shù)據(jù)的區(qū)域,所以在不預(yù)先確認擦除目的地的數(shù)據(jù)這一點不同于圖6的寫入例程。其他處理與圖6的寫入例程類似,所以省略說明。圖8是示出圖1的半導(dǎo)體集成電路裝置100的各部分的處理動作的一例的流程圖。利用該圖,說明半導(dǎo)體集成電路裝置100整體的處理動作。此外,圖1的半導(dǎo)體集成電路裝置100在出廠時,設(shè)定為OTPA(第一數(shù)據(jù))=OTPB(第二數(shù)據(jù))=OTPC(第三數(shù)據(jù)) =FFh0若從重置端子RST輸入用于解除重置的信號(步驟S51),則CPU4執(zhí)行引導(dǎo)程序 11 (步驟S52)。弓丨導(dǎo)程序11根據(jù)存儲在OTP區(qū)域22的數(shù)據(jù)區(qū)域221中的數(shù)據(jù)OTPA OTPC 的值,按照以下的過程來使CPU4執(zhí)行下載器12或EEPR0M2的程序。在出廠之后最初使半導(dǎo)體集成電路裝置100動作時,OTPA = FFh(第一值)(步驟 S53的“是”),所以CPU4執(zhí)行下載器12(步驟S54)。當執(zhí)行下載器12時,按照圖4的標準區(qū)域21的寫入例程,從外部經(jīng)由輸入輸出端子1/0而輸入的程序被下載到EEPR0M2的標準區(qū)域21 (步驟S55)。并且,按照圖6的OTP區(qū)域22寫入例程,將數(shù)據(jù)區(qū)域221的數(shù)據(jù)OTPA 設(shè)定為OOh (步驟S56)。數(shù)據(jù)區(qū)域221的數(shù)據(jù)OTPA在出廠之后一旦被寫入,則不會再次被改寫。接著,使半導(dǎo)體集成電路裝置100動作,解除重置來執(zhí)行引導(dǎo)程序11(步驟S51、 S52),則由于 OTPA = OOh (第二值)(步驟 S53 的“否” ),OTPB = FFh (步驟 S57 的“否”),所以CPU4將信號0TP_ERDIS設(shè)定為高(步驟S58)之后,執(zhí)行EEPR0M2的程序(步驟S59)。 若信號0TP_ERDIS —旦被設(shè)定為高,則除了重置之外,不會被設(shè)定為低。如上所述,在執(zhí)行 EEPR0M2的程序之前,信號0TP_ERDIS被設(shè)定為高,所以在EEPR0M2的程序被執(zhí)行的情況下, 圖2(b)的邏輯積電路316的輸出信號始終被設(shè)定為低,不能擦除OTP區(qū)域22。結(jié)果,能夠禁止OTP區(qū)域22的改寫。在此,在想改寫EEPR0M2的程序的情況下(步驟S60的“是”),按照圖6的OTP區(qū)域22的寫入例程,將數(shù)據(jù)區(qū)域221的數(shù)據(jù)OTPB設(shè)定為OOh (第三值)(步驟S61)。通過由 EEPR0M2的程序調(diào)用EEPROM控制例程12,來進行該寫入。若在該狀態(tài)下解除重置來執(zhí)行引導(dǎo)程序11(步驟S51、S52),則由于OTPA = OOh (步驟S53的“否” ),OTPB = 00h, OTPC = FFh (步驟S57的“是”),所以CPU4執(zhí)行下載器12(步驟S54)。由此,程序再次從外部下載到EEPR0M2(步驟S5Q。并且,CPU4按照圖7 的OTP區(qū)域的擦除例程來擦除數(shù)據(jù)區(qū)域221的數(shù)據(jù)0ΤΡΒ,設(shè)定為FFh (第四值)(步驟S56)。只要不禁止改寫,通過步驟S60、S61的處理,可以進行多次的EEPR0M2的程序的改寫。另一方面,在向EEPR0M2下載程序之后,在想要禁止該程序的改寫的情況下(步驟 S62的“是”),將數(shù)據(jù)區(qū)域221的數(shù)據(jù)OTPB、OTPC設(shè)定為OOh (第五值)(步驟S6!3)。通過由EEPR0M2的程序調(diào)用EEPROM控制例程13,進行將上述數(shù)據(jù)設(shè)定為OOh的寫入。此外,也可以通過下載區(qū)12的功能來進行。在該狀態(tài)下,若解除重置來執(zhí)行引導(dǎo)程序11(步驟S51、S52),則由于OTPA = OOh (步驟 S53 的“否”),OTPB = OTPC = OOh (步驟 S57 的“否”),所以 CPU4 將信號 0ΤΡ_ ERDIS設(shè)定為高(步驟S58)之后,執(zhí)行EEPR0M2的程序(步驟S59),由此能夠禁止EEPR0M2 的程序的改寫。為了改寫EEPR0M2的程序,為了在步驟S57進入“是”的分支,需要擦除數(shù)據(jù)區(qū)域 221的數(shù)據(jù)OTPC來設(shè)定為Fi^h。但是,在執(zhí)行EEPR0M2的程序之前,信號0TP_ERDIS必定設(shè)定為高(步驟S58)。因此,圖2(b)的控制電路31的邏輯積電路316的輸出信號始終設(shè)定為低,不能夠由EEPR0M2的程序來擦除OTP區(qū)域2212的數(shù)據(jù)區(qū)域221的數(shù)據(jù)0TPC。因此,圖8的步驟 S57必定成為“否”,不能改寫EEPR0M2的程序。此外,即使EEPR0M2的程序調(diào)用了下載器12, 由于在程序被執(zhí)行(步驟S59)之前,信號0TP_ERDIS被設(shè)定為高(步驟S58),所以不能夠擦除數(shù)據(jù)區(qū)域221的數(shù)據(jù)0TPC。由此,程序的改寫被禁止,能夠防止程序的非法改寫等。并且,由于信號0TP_ERDIS為高,所以也不能擦除數(shù)據(jù)區(qū)域221的數(shù)據(jù)0ΤΡ0 OTP 127和管理區(qū)域222的管理信息C0N0 C0N127的數(shù)據(jù)。若不能擦除,則圖6的步驟S22 成為“否”,所以暫時進行寫入,不能對相對應(yīng)的履歷信息被設(shè)定為OOh的數(shù)據(jù)區(qū)域221內(nèi)的數(shù)據(jù)寫入新的數(shù)據(jù)。如以上所示,執(zhí)行一次圖8的步驟S63,設(shè)定為OTPC = 00h,則不僅不能改寫 EEPR0M2,還不能改寫OTP區(qū)域22的數(shù)據(jù)區(qū)域221的數(shù)據(jù)0ΤΡ0 0TP127。由此,能夠?qū)?EEPR0M2內(nèi)的OTP區(qū)域22用作能夠禁止改寫的區(qū)域。例如,通過在對數(shù)據(jù)區(qū)域221進行一次寫入之后,設(shè)定為OTPB = OTPC = 00h,能夠?qū)TP區(qū)域22用作只能進行一次寫入的區(qū)域。
圖9是表示是否能夠由ROMl的程序(S卩,引導(dǎo)程序11、下載器12及EEPROM控制例程13)、EEPR0M2的程序以及被EEPR0M2的程序調(diào)用的EEPROM控制例程13來改寫標準區(qū)域21和OTP區(qū)域22的圖,是集中了以上說明的圖。如該圖所示,不能由EEPR0M2的程序直接改寫區(qū)域21和OTP區(qū)域22。這是由于如圖3所示,在EEI3ROiC的程序被執(zhí)行的情況下,信號N0RM_WREN、0TP_WREN、N0RM_EREN、0TP_ EREN分別被設(shè)定為低。另一方面,若由EEPR0M2的程序調(diào)用EEPROM控制例程13,則能夠進行標準區(qū)域21 的改寫和OTP區(qū)域22的寫入。但是,不能擦除OTP區(qū)域22。這是由于如圖8所示,在執(zhí)行 EEPR0M2的程序(步驟S59)之前,禁止擦除OTP區(qū)域22的信號0TP_ERDIS必定被設(shè)定為高 (步驟S58)。與此相對,除了由EEPR0M2的程序調(diào)用的情況之外,能夠由ROMl的程序進行標準區(qū)域21和OTP區(qū)域22的改寫。如上所述,在被EEPR0M2的程序調(diào)用的情況下,信號0ΤΡ_ ERDIS被設(shè)定為高,不能擦除OTP區(qū)域22。如上所述,在本實施方式中,在EEPR0M2內(nèi)設(shè)置標準區(qū)域21和OTP區(qū)域22。并且, 在執(zhí)行EEPR0M2的程序之前,將用于禁止OTP區(qū)域22的擦除的信號0PT_ERDIS設(shè)定為高。 因此,不能由EEPR0M2的程序來擦除OTP區(qū)域22。因此,將能夠?qū)EPR0M2的標準區(qū)域21 用作不限制改寫的非易失性存儲器,將OTP區(qū)域22用作能夠禁止改寫的區(qū)域。結(jié)果,不需要在半導(dǎo)體集成電路裝置100上搭載兩種非易失性存儲器,即不能改寫的非易失性存儲器和能夠禁止改寫的非易失性存儲器的雙方,能夠抑制制造成本,并且能夠?qū)⒚娣e小型化。并且,為了切換由數(shù)據(jù)區(qū)域221的數(shù)據(jù)OTP OTPC執(zhí)行的程序,能夠簡單地控制許可或禁止向EEPR0M2下載程序。雖然對特定的實施方式進行了說明,但是這些實施方式僅僅是作為例子來說明的,并沒有一體限定本發(fā)明的范圍。事實上,在不脫離本發(fā)明的精神的情況下,在此說明的新的方法和系統(tǒng)能夠通過各種其他方式,進一步通過對在此說明的新的方法的系統(tǒng)進行各種省略、追加以及改變來實施。所附的權(quán)利要求及其等同的方案試圖覆蓋所有這種方式或變形例,它們落入本發(fā)明的范圍和宗旨內(nèi)。
權(quán)利要求
1.一種半導(dǎo)體集成電路裝置,具備 非易失性存儲器,具有第一及第二區(qū)域;存儲部,用于存儲第二程序,該第二程序用于從外部向上述第一區(qū)域下載第一程序;以及運算部,執(zhí)行上述第一及上述第二程序,對上述第一區(qū)域,能通過上述第一程序來寫入和擦除,對上述第二區(qū)域,不能通過上述第一程序來擦除。
2.根據(jù)權(quán)利要求1所述的半導(dǎo)體集成電路裝置,其中,上述存儲部存儲用于進行上述非易失性存儲器的改寫的第三程序, 對上述第一區(qū)域,能通過上述第一程序調(diào)用上述第三程序進行寫入和擦除。
3.根據(jù)權(quán)利要求1所述的半導(dǎo)體集成電路裝置,其中, 對上述第二區(qū)域,根據(jù)擦除控制信號來擦除,上述運算部在執(zhí)行上述第一程序之前,將上述擦除控制信號設(shè)定為上述第二區(qū)域不被擦除。
4.根據(jù)權(quán)利要求1所述的半導(dǎo)體集成電路裝置,其中,上述運算部根據(jù)存儲在上述第二區(qū)域中的數(shù)據(jù),判斷是否在上述第一區(qū)域下載上述第一程序。
5.根據(jù)權(quán)利要求4所述的半導(dǎo)體集成電路裝置,其中, 對上述第二區(qū)域,根據(jù)擦除控制信號來擦除,上述運算部在判斷為不向上述第一區(qū)域下載上述第一程序的情況下,在執(zhí)行上述第一程序之前,將上述擦除控制信號設(shè)定為上述第二區(qū)域不被擦除。
6.根據(jù)權(quán)利要求4所述的半導(dǎo)體集成電路裝置,其中, 上述第二區(qū)域存儲第一數(shù)據(jù),用于在初次起動時向上述第一區(qū)域下載上述第一程序; 第二數(shù)據(jù),用于控制是否改寫已經(jīng)下載到上述第一區(qū)域中的上述第一程序;以及第三數(shù)據(jù),用于禁止改寫已經(jīng)下載到上述第一區(qū)域中的上述第一程序。
7.根據(jù)權(quán)利要求6所述的半導(dǎo)體集成電路裝置,其中,在上述第一數(shù)據(jù)為表示下載上述第一程序的第一值的情況下,上述運算部下載上述第一程序,并且將上述第一數(shù)據(jù)改寫為表示不下載上述第一程序的第二值。
8.根據(jù)權(quán)利要求6所述的半導(dǎo)體集成電路裝置,其中,在改寫上述第一程序的情況下,上述運算部將上述第二數(shù)據(jù)改寫為表示改寫上述第一程序的第三值。
9.根據(jù)權(quán)利要求8所述的半導(dǎo)體集成電路裝置,其中,在上述第二數(shù)據(jù)為上述第三值的情況下,上述運算部下載上述第一程序,并且將上述第二數(shù)據(jù)改寫為表示不改寫上述第一程序的第四值。
10.根據(jù)權(quán)利要求6所述的半導(dǎo)體集成電路裝置,其中,在禁止上述第一程序的改寫的情況下,上述運算部將上述第三數(shù)據(jù)改寫為表示禁止上述第一程序的改寫的第五值。
11.根據(jù)權(quán)利要求5所述的半導(dǎo)體集成電路裝置,其中,上述第二區(qū)域具有數(shù)據(jù)區(qū)域,存儲第一至第三數(shù)據(jù);以及管理區(qū)域,存儲上述第一至第三數(shù)據(jù)的各自的履歷信息。
12.根據(jù)權(quán)利要求1所述的半導(dǎo)體集成電路裝置,其中, 上述第二區(qū)域具有數(shù)據(jù)區(qū)域,存儲多個數(shù)據(jù);以及管理區(qū)域,存儲上述多個數(shù)據(jù)的各自的履歷信息。
13.根據(jù)權(quán)利要求12所述的半導(dǎo)體集成電路裝置,其中,當改寫上述多個數(shù)據(jù)中的1個時,上述運算部將對應(yīng)的履歷信息改寫為表示上述多個數(shù)據(jù)中的一個被改寫的值。
14.一種存儲器的管理方法,該存儲器具有被下載了第一程序的第一區(qū)域和根據(jù)擦除控制信號被擦除的第二區(qū)域,包括將上述擦除控制信號設(shè)定為上述第二區(qū)域不被擦除的步驟;以及在設(shè)定上述擦除控制信號之后,執(zhí)行被下載到上述第一區(qū)域中的上述第一程序的步馬聚ο
15.根據(jù)權(quán)利要求14所述的存儲器的管理方法,具備如下步驟 根據(jù)存儲在上述第二區(qū)域中的數(shù)據(jù),判斷是否改寫上述第一程序。
16.根據(jù)權(quán)利要求15所述的存儲器的管理方法,具備如下步驟在執(zhí)行上述第一程序的步驟中,在改寫上述第一程序的情況下,將存儲在上述第二區(qū)域中的第二數(shù)據(jù)改寫為第三值,該第三值表示改寫上述第一程序,在判斷是否改寫上述第一程序的步驟中,根據(jù)上述第二數(shù)據(jù)進行判斷。
17.根據(jù)權(quán)利要求16所述的存儲器的管理方法,具備如下步驟 根據(jù)是否改寫上述第一程序的判斷結(jié)果,改寫上述第一程序的步驟;以及將上述第二數(shù)據(jù)改寫為第四值的步驟,該第四值表示不改寫上述第一程序。
18.根據(jù)權(quán)利要求17所述的存儲器的管理方法,具備如下步驟在改寫上述第二數(shù)據(jù)的步驟中,由上述第一程序調(diào)用用于進行上述存儲器的改寫的第三程序,來改寫上述第二數(shù)據(jù)。
19.根據(jù)權(quán)利要求17所述的存儲器的管理方法,具備如下步驟在改寫上述第二數(shù)據(jù)的步驟中,改寫上述第二數(shù)據(jù),并且還改寫上述第二數(shù)據(jù)的履歷 fn息ο
20.根據(jù)權(quán)利要求15所述的存儲器的管理方法,具備如下步驟在執(zhí)行上述第一程序的步驟中,在禁止改寫上述第一程序的情況下,將存儲在上述第二區(qū)域中的第三數(shù)據(jù)改寫為第五值,該第五值表示禁止改寫上述第一程序, 在判斷是否改寫上述第一程序的步驟中,根據(jù)上述第三數(shù)據(jù)來進行判斷。
全文摘要
本發(fā)明提供半導(dǎo)體集成電路裝置及存儲器的管理方法。半導(dǎo)體集成電路裝置具備非易失性存儲器,存儲部及運算部。非易失性存儲器具有第一及第二區(qū)域。存儲部存儲第二程序,該第二程序用于從外部向上述第一區(qū)域下載第一程序。運算部執(zhí)行上述第一程序及上述第二程序。對上述第一區(qū)域,能通過上述第一程序來寫入和擦除,對上述第二區(qū)域,不能通過上述第一程序來擦除。
文檔編號G11C16/06GK102411989SQ201110066579
公開日2012年4月11日 申請日期2011年3月18日 優(yōu)先權(quán)日2010年9月22日
發(fā)明者中野寬生 申請人:株式會社東芝