日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

一種一次性可編程存儲(chǔ)器控制器、集成電路及程序燒寫方法

文檔序號(hào):10625514閱讀:749來源:國(guó)知局
一種一次性可編程存儲(chǔ)器控制器、集成電路及程序燒寫方法
【專利摘要】本發(fā)明公開一種一次性可編程存儲(chǔ)器控制器,包括:一解鎖電路,該解鎖電路接收一電平信號(hào)以及一串行數(shù)據(jù)信號(hào),當(dāng)該電平信號(hào)以及該串行數(shù)據(jù)信號(hào)滿足一特定時(shí)序時(shí),發(fā)送一解鎖信號(hào);一指令譯碼電路,該指令譯碼電路與該解鎖電路連接,當(dāng)該指令譯碼電路接收到該解鎖信號(hào)時(shí),該指令譯碼電路接收該串行數(shù)據(jù)信號(hào)中的指令碼以及一串行時(shí)鐘信號(hào)并執(zhí)行譯碼操作;一編程電路,該編程電路與該指令譯碼電路連接,該編程電路根據(jù)該指令譯碼電路輸出的一開始編程信號(hào)接收該串行數(shù)據(jù)信號(hào)以及串行時(shí)鐘信號(hào),并將該串行數(shù)據(jù)信號(hào)中的數(shù)據(jù)寫入該一次性可編程存儲(chǔ)器。本發(fā)明還公開了一種集成電路以及一次性可編程存儲(chǔ)器程序燒寫的方法。
【專利說明】一種一次性可編程存儲(chǔ)器控制器、集成電路及程序燒寫方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及集成電路領(lǐng)域,特別涉及該領(lǐng)域中一種OTP型微控制器芯片的存儲(chǔ)器控制器及程序燒寫方法。
【背景技術(shù)】
[0002]OTP(One Time ProgramabIe) 一次性可編程存儲(chǔ)器,由于其價(jià)格便宜,面積小,存儲(chǔ)數(shù)據(jù)可靠,廣泛應(yīng)用于8位/16位/32位的微控制器芯片中,存儲(chǔ)用戶程序或數(shù)據(jù)。在芯片出廠時(shí),OTP存儲(chǔ)的內(nèi)容全為1,用戶可以根據(jù)需要將其中的某些單元寫入數(shù)據(jù)0,以實(shí)現(xiàn)對(duì)其“編程”的目的。OTP的典型產(chǎn)品是“雙極性熔絲結(jié)構(gòu)”,如果要改寫某些單元,則可以給這些單元通以足夠大的電流(高壓編程),并維持一定的時(shí)間,這些單元相關(guān)的熔絲即可熔斷,這樣就達(dá)到了將某些單元寫成I的效果。由于OTP的數(shù)據(jù)修改是通過物理永久性改變的方式實(shí)現(xiàn)的,所以O(shè)TP的數(shù)據(jù)只能進(jìn)行一次性燒寫,燒寫后的數(shù)據(jù)無(wú)法修改。常見的OTP存儲(chǔ)器的接口包括高壓燒寫端口、IP使能端口、讀使能端口、寫使能端口、讀寫地址端口、讀數(shù)據(jù)端口、寫數(shù)據(jù)端口。當(dāng)OTP存儲(chǔ)器的高壓燒寫端口的電壓達(dá)到燒寫值且IP使能端口有效時(shí),如果寫使能端口有效,則OTP存儲(chǔ)器將指定地址的數(shù)據(jù)按照燒寫時(shí)序?qū)懭胂鄳?yīng)的存儲(chǔ)單元,如果讀使能端口有效,則OTP存儲(chǔ)器將指定地址單元的數(shù)據(jù)按照讀時(shí)序讀出供CPU等其他模塊使用。通常CPU等模塊通過OTP控制器間接訪問OTP。OTP控制器與OTP連接的端口實(shí)現(xiàn)OTP的讀寫時(shí)序,OTP控制器與CPU的端口實(shí)現(xiàn)標(biāo)準(zhǔn)的存儲(chǔ)器接口。CPU通過OTP控制器讀寫OTP可以忽略O(shè)TP的時(shí)序要求,簡(jiǎn)化了 CPU編程要求。
[0003]要實(shí)現(xiàn)對(duì)OTP存儲(chǔ)器的正常燒寫及OTP存儲(chǔ)器與CPU等其他模塊的正常通信,OTP控制器必須嚴(yán)格按照OTP存儲(chǔ)器的讀寫時(shí)序要求進(jìn)行設(shè)計(jì)。如何實(shí)現(xiàn)OTP型微控制器芯片的程序燒寫及測(cè)試需求,基于OTP存儲(chǔ)器的讀寫時(shí)序規(guī)格,不同的芯片設(shè)計(jì)廠商有不同的實(shí)現(xiàn)方法,但最終其芯片在抗干擾性、用戶數(shù)據(jù)安全、測(cè)試成本及效率等方面均存在很大的差異。

【發(fā)明內(nèi)容】

[0004]本發(fā)明的目的在于提供一種在抗干擾性、用戶數(shù)據(jù)安全度方面均有優(yōu)勢(shì)的一次性可編程型微控制器芯片的存儲(chǔ)器控制器及程序燒寫方法。
[0005]為了實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明公開一種一次性可編程存儲(chǔ)器控制器,包括:一解鎖電路,該解鎖電路接收一電平信號(hào)以及一串行數(shù)據(jù)信號(hào),當(dāng)該電平信號(hào)以及該串行數(shù)據(jù)信號(hào)滿足一特定時(shí)序時(shí),發(fā)送一解鎖信號(hào);一指令譯碼電路,該指令譯碼電路與該解鎖電路連接,當(dāng)該指令譯碼電路接收到該解鎖信號(hào)時(shí),該指令譯碼電路接收該串行數(shù)據(jù)信號(hào)中的指令碼以及一串行時(shí)鐘信號(hào)并執(zhí)行譯碼操作;一編程電路,該編程電路與該指令譯碼電路連接,該編程電路根據(jù)該指令譯碼電路輸出的一開始編程信號(hào)接收該串行數(shù)據(jù)信號(hào)以及串行時(shí)鐘信號(hào),并將該串行數(shù)據(jù)信號(hào)中的數(shù)據(jù)寫入該一次性可編程存儲(chǔ)器。
[0006]更進(jìn)一步地,該特定時(shí)序指:在大于等于I毫秒的復(fù)位時(shí)間內(nèi),滿足:該電平信號(hào)為Vl時(shí),該解鎖電路連續(xù)接收X個(gè)脈沖的串行數(shù)據(jù)信號(hào);該電平信號(hào)為V2時(shí),該解鎖電路連續(xù)接收Y個(gè)脈沖的串行數(shù)據(jù)信號(hào);電平信號(hào)為Vl時(shí),該解鎖電路連續(xù)接收M個(gè)脈沖的串行數(shù)據(jù)信號(hào);該電平信號(hào)為V2時(shí),該解鎖電路連續(xù)接收N個(gè)脈沖的串行數(shù)據(jù)信號(hào);當(dāng)該V1、V2分別為高電平\低電平,或低電平\高電平,該X、Y、M、N均大于等于I。
[0007]更進(jìn)一步地,該串行數(shù)據(jù)信號(hào)中的指令碼包括:地址設(shè)置、數(shù)據(jù)輸入、數(shù)據(jù)讀出、地址加一、開始編程、數(shù)據(jù)讀取模式設(shè)置、功能測(cè)試模式。
[0008]更進(jìn)一步地,該編程電路讀出該一次性可編程存儲(chǔ)器內(nèi)的數(shù)據(jù)以檢驗(yàn)該數(shù)據(jù)是否正確。
[0009]更進(jìn)一步地,該編程電路接收的該串行數(shù)據(jù)信號(hào)包括:s位的二進(jìn)制的指令編碼以及g位的二進(jìn)制的數(shù)據(jù);其中s>l,g為8或16或32。
[0010]更進(jìn)一步地,將該串行數(shù)據(jù)信號(hào)中的數(shù)據(jù)寫入該一次性可編程存儲(chǔ)器具體包括:s位地址設(shè)置指令輸入+g位地址信號(hào)輸入;s位數(shù)據(jù)輸入指令輸入+g位數(shù)據(jù)輸入;s位一次性可編程存儲(chǔ)器工作模式設(shè)置指令輸入+g位數(shù)據(jù)讀取模式輸入(低z位有效,I ^ z g);s位開始編程指令輸入+g位無(wú)效數(shù)據(jù)輸入;s位數(shù)據(jù)讀出指令輸入+g位數(shù)據(jù)輸出;s位地址加一指令輸入,其中s>l,g為8或16或32。
[0011]本發(fā)明同時(shí)公開一種集成電路,用于實(shí)現(xiàn)向一次性可編程存儲(chǔ)器燒寫程序,包括:一高壓電平輸入端口,用于向該集成電路輸入一高壓電平信號(hào);一串行時(shí)鐘輸入端口,用于向該集成電路輸入一串行時(shí)鐘信號(hào);一串行數(shù)據(jù)輸入端口,用于向該集成電路輸入一串行數(shù)據(jù)信號(hào);一串行數(shù)據(jù)輸出端口,用于從該集成電路輸出一串行數(shù)據(jù)信號(hào);一高壓檢測(cè)電路與一控制器,該高壓檢測(cè)電路將該高壓電平信號(hào)轉(zhuǎn)換為一同相位的低壓電平信號(hào),該控制器接收該低壓電平信號(hào)、串行時(shí)鐘信號(hào)以及串行數(shù)據(jù)信號(hào)并根據(jù)該低壓電平信號(hào)、串行時(shí)鐘信號(hào)以及串行數(shù)據(jù)信號(hào)向該一次性可編程存儲(chǔ)器燒寫程序。
[0012]更進(jìn)一步地,該控制器包括:一解鎖電路,該解鎖電路接收該低壓電平信號(hào)以及一串行數(shù)據(jù)信號(hào),當(dāng)該低壓電平信號(hào)以及該串行數(shù)據(jù)信號(hào)滿足一特定時(shí)序時(shí),發(fā)送一解鎖信號(hào);一指令譯碼電路,該指令譯碼電路與該解鎖電路連接,當(dāng)該指令譯碼電路接收到該解鎖信號(hào)時(shí),該指令譯碼電路接收該串行數(shù)據(jù)信號(hào)中的指令碼以及一串行時(shí)鐘信號(hào)并執(zhí)行譯碼操作;一編程電路,該編程電路與該指令譯碼電路連接,該編程電路根據(jù)該指令譯碼電路輸出的一開始編程信號(hào)接收該串行數(shù)據(jù)信號(hào)以及串行時(shí)鐘信號(hào),并將該串行數(shù)據(jù)信號(hào)中的數(shù)據(jù)寫入該一次性可編程存儲(chǔ)器。
[0013]更進(jìn)一步地,該控制器的編程電路將該串行數(shù)據(jù)信號(hào)中的數(shù)據(jù)寫入該一次性可編程存儲(chǔ)器后生成一開關(guān)信號(hào),該高壓檢測(cè)電路接收該開關(guān)信號(hào)并生成一高壓信號(hào)VPPIN,該高壓信號(hào)VPPIN用于一次性可編程存儲(chǔ)器的輸入。
[0014]更進(jìn)一步地,該串行數(shù)據(jù)信號(hào)包括指令碼和/或數(shù)據(jù)。
[0015]更進(jìn)一步地,該指令碼包括:地址設(shè)置、數(shù)據(jù)輸入、數(shù)據(jù)讀出、地址加一、開始編程、數(shù)據(jù)讀取模式設(shè)置、功能測(cè)試模式。
[0016]更進(jìn)一步地,該指令碼為s位的二進(jìn)制數(shù)據(jù),該數(shù)據(jù)為g位的二進(jìn)制數(shù)據(jù);其中s>l, g 為 8 或 16 或 32。
[0017]更進(jìn)一步地,該特定時(shí)序指:在大于等于I毫秒的復(fù)位時(shí)間內(nèi),滿足:該低壓電平信號(hào)為Vl時(shí),該解鎖電路連續(xù)接收X個(gè)脈沖的串行數(shù)據(jù)信號(hào);該低壓電平信號(hào)為V2時(shí),該解鎖電路連續(xù)接收Y個(gè)脈沖的串行數(shù)據(jù)信號(hào);電平信號(hào)為Vl時(shí),該解鎖電路連續(xù)接收M個(gè)脈沖的串行數(shù)據(jù)信號(hào);該低壓電平信號(hào)為V2時(shí),該解鎖電路連續(xù)接收N個(gè)脈沖的串行數(shù)據(jù)信號(hào);當(dāng)該V1、V2分別為高電平\低電平,或低電平\高電平,該X、Y、M、N均大于等于I。
[0018]更進(jìn)一步地,該編程電路讀出該一次性可編程存儲(chǔ)器內(nèi)的數(shù)據(jù),并通過該串行數(shù)據(jù)輸出端口輸出以校驗(yàn)其是否編程正確。
[0019]本發(fā)明同時(shí)公開一種一次性可編程存儲(chǔ)器程序燒寫的方法,其特征在于,包括:步驟一、接收一電平信號(hào)以及一串行數(shù)據(jù)信號(hào),當(dāng)該電平信號(hào)以及該串行數(shù)據(jù)信號(hào)滿足一特定時(shí)序時(shí),發(fā)送一解鎖信號(hào);步驟二、接收該串行數(shù)據(jù)信號(hào)以及一串行時(shí)鐘信號(hào),并將該串行數(shù)據(jù)信號(hào)中的程序數(shù)據(jù)寫入一次性可編程存儲(chǔ)器。
[0020]更進(jìn)一步地,該步驟一中的特定時(shí)序指在大于等于I毫秒的復(fù)位時(shí)間內(nèi),滿足:該電平信號(hào)為Vl時(shí),該解鎖電路連續(xù)接收X個(gè)脈沖的串行數(shù)據(jù)信號(hào);該電平信號(hào)為V2時(shí),該解鎖電路連續(xù)接收Y個(gè)脈沖的串行數(shù)據(jù)信號(hào);電平信號(hào)為Vl時(shí),該解鎖電路連續(xù)接收M個(gè)脈沖的串行數(shù)據(jù)信號(hào);該電平信號(hào)為V2時(shí),該解鎖電路連續(xù)接收N個(gè)脈沖的串行數(shù)據(jù)信號(hào);當(dāng)該V1、V2分別為高電平\低電平,或低電平\高電平,該X、Y、M、N均大于等于I。
[0021]更進(jìn)一步地,該步驟二進(jìn)一步包括:2.1、s位地址設(shè)置指令輸入+g位地址信號(hào)輸入;2.2、s位數(shù)據(jù)輸入指令輸入+g位數(shù)據(jù)輸入;2.3、s位OTP工作模式設(shè)置指令輸入+g位數(shù)據(jù)讀取模式輸入(低z位有效,I ^g) ;2.4, s位開始編程指令輸入+g位無(wú)效數(shù)據(jù)輸入;2.5、s位數(shù)據(jù)讀出指令輸入+g位數(shù)據(jù)輸出;2.6、s位地址加一指令輸入。
[0022]更進(jìn)一步地,重復(fù)該步驟2.1至2.5以完成對(duì)該一次性可編程存儲(chǔ)器指定地址單元的程序的燒寫。
[0023]更進(jìn)一步地,完成該步驟2.1后重復(fù)該步驟2.2至2.6以完成對(duì)該一次性可編程存儲(chǔ)器特定地址單元開頭的連續(xù)地址單元的程序燒寫。
[0024]與現(xiàn)有技術(shù)相比較,本發(fā)明中采用PSCK、PSD1、PSDO、VPP四個(gè)引腳即可完成OTP型微控制器芯片的程序燒寫,該特征相對(duì)于采用JTAG接口、完整的SPI接口來說接口數(shù)量少,協(xié)議簡(jiǎn)單。相對(duì)于UART、I2C等接口,其優(yōu)勢(shì)在于電路實(shí)現(xiàn)簡(jiǎn)單、規(guī)模小,操作容易。
[0025]本發(fā)明采用了特定的芯片解鎖時(shí)序,使芯片的抗干擾性、用戶數(shù)據(jù)安全度增加。否貝1J,在應(yīng)用環(huán)境中,稍有干擾,就有可能使芯片解鎖,或者不法分子可非常容易的獲取用戶在OTP存儲(chǔ)器中存儲(chǔ)的程序。
[0026]本發(fā)明所提供的串行數(shù)據(jù)格式及命令碼,可非常容易的完成程序的燒寫和校驗(yàn)。
【附圖說明】
[0027]關(guān)于本發(fā)明的優(yōu)點(diǎn)與精神可以通過以下的發(fā)明詳述及所附圖式得到進(jìn)一步的了解。
[0028]圖1是本發(fā)明所述OTP型微控制器芯片的程序燒寫電路結(jié)構(gòu)圖;
[0029]圖2是本發(fā)明所述OTP型微控制器芯片的OTP控制器內(nèi)部結(jié)構(gòu)圖之一;
[0030]圖3是本發(fā)明所述OTP型微控制器芯片的OTP控制器內(nèi)部結(jié)構(gòu)圖之二 ;
[0031]圖4是本發(fā)明所述OTP型微控制器芯片的解鎖時(shí)序圖;
[0032]圖5是本發(fā)明所述OTP型微控制器芯片的串行數(shù)據(jù)格式及指令碼的定義時(shí)序圖;
[0033]圖6是本發(fā)明所述OTP型微控制器芯片的串行指令碼的編碼圖;
[0034]圖7是本發(fā)明所述OTP型微控制器芯片的數(shù)據(jù)讀取模式;
[0035]圖8是本發(fā)明所述OTP型微控制器芯片的OTP編程時(shí)序圖;
[0036]圖9是本發(fā)明所述OTP型微控制器芯片的數(shù)據(jù)輸入/讀出命令時(shí)序圖;
[0037]圖10是本發(fā)明所述OTP型微控制器芯片的測(cè)試模式時(shí)序圖;
[0038]圖11是本發(fā)明所述OTP型微控制器芯片的程序燒寫流程圖;
[0039]圖12是本發(fā)明所述OTP型微控制器芯片的測(cè)試流程圖。
【具體實(shí)施方式】
[0040]下面結(jié)合附圖詳細(xì)說明本發(fā)明的具體實(shí)施例。
[0041]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,并不用于限定本發(fā)明。
[0042]本發(fā)明的目的在于提供一種抗干擾性強(qiáng)、用戶數(shù)據(jù)安全,并能在有效降低測(cè)試成本的基礎(chǔ)上提升效率的基于OTP型微控制器芯片的程序燒寫電路及方法。
[0043]為了實(shí)現(xiàn)該上述發(fā)明目的,本發(fā)明公開一種OTP型微控制器芯片。如圖1所示,該OTP型微控制器芯片I包括:0ΤΡ控制器10、OTP存儲(chǔ)器40、高壓檢測(cè)電路50、時(shí)鐘發(fā)生器30以及CPU20。該燒寫電路還包括高壓燒寫引腳VPP、串行時(shí)鐘輸入引腳PSCK、串行數(shù)據(jù)輸入引腳PSD1、串行數(shù)據(jù)輸出引腳PSD0,其中VPP的低電平電壓等于芯片的工作電壓VDD,VPP的高電平電壓等于OTP存儲(chǔ)器的燒寫電壓值VH(VH>VDD),其他的PSCK、PSD1、PSD0引腳的邏輯電平值與通常的CMOS電路一致。
[0044]高壓檢測(cè)電路50用于檢測(cè)引腳VPP的輸入,并生成供OTP存儲(chǔ)器40用的高壓信號(hào)VPPIN及供OTP控制器10中的解鎖電路101用的VPP_ACT。VPPIN是受開關(guān)信號(hào)VPP_CTR控制的高低電平電壓值與VPP —致的高壓信號(hào),其中VPPCTR是由OTP控制器中的編程電路生成。VPP_ACT的相位關(guān)系與VPP —致。VPP_ACT是邏輯電平值與通常的CMOS電路一致的數(shù)字信號(hào),其時(shí)序關(guān)系與VPP —致。
[0045]如圖1至圖3所示,OTP控制器10包括:芯片解鎖電路101、指令譯碼電路102、OTP編程電路103。更進(jìn)一步地,OTP控制器10還包括芯片測(cè)試電路104、正常工作數(shù)據(jù)讀取電路105,其中電路之間的連接關(guān)系具體如圖2、3中所示,OTP編程電路103與OTP存儲(chǔ)器40連接,用于向OTP存儲(chǔ)器40輸出待燒寫的程序。正常工作數(shù)據(jù)讀取電路105與OTP存儲(chǔ)器40連接,用于按照OTP存儲(chǔ)器的讀取時(shí)序,接收來自O(shè)TP存儲(chǔ)器40中的相應(yīng)數(shù)據(jù)并送至CPU20。
[0046]首先,在芯片內(nèi)部復(fù)位期間(internal reset),該OTP型微控制器芯片的VPP與PSDI引腳按照特定的時(shí)序向OTP控制器中的解鎖電路輸入串行信號(hào),使芯片進(jìn)入解鎖狀態(tài)。特定時(shí)序?yàn)樾酒膹?fù)位時(shí)間大于Ims等于高電平期間,PSDI引腳連續(xù)輸入X個(gè)脈沖信號(hào);接著在VPP_ACT等于低電平期間,PSDI引腳連續(xù)輸入y個(gè)脈沖信號(hào);接著在VPP_ACT等于高電平期間,PSDI引腳連續(xù)輸入m個(gè)脈沖信號(hào);接著在VPP等于低電平期間PSDI引腳連續(xù)輸入η個(gè)脈沖信號(hào);其中X、y、m、n均大于等于I。
[0047]芯片在進(jìn)入解鎖狀態(tài)之后,內(nèi)部復(fù)位信號(hào)立刻變?yōu)闊o(wú)效狀態(tài),然后在VPP、PSCK、PSD1、PSDO四路信號(hào)的共同協(xié)作之下完成整個(gè)芯片程序的燒寫。
[0048]芯片在進(jìn)入解鎖狀態(tài)之后,PSCK、PSD1、PSD0引腳按照串行數(shù)據(jù)格式及命令碼的定義,向OTP控制器中的指令譯碼器輸入指令并輸入數(shù)據(jù)或輸入指令并讀出數(shù)據(jù)。所述的串行指令碼包括:地址設(shè)置、數(shù)據(jù)輸入、數(shù)據(jù)讀出、地址加一、開始編程、數(shù)據(jù)讀取模式設(shè)置、功能測(cè)試模式等指令。指令譯碼器將接收到的指令進(jìn)行譯碼,即可執(zhí)行相應(yīng)的操作。
[0049]串行數(shù)據(jù)格式及指令碼的定義特征包括:引腳PSDI的數(shù)據(jù)輸入與引腳PSDO的數(shù)據(jù)讀出均在串行時(shí)鐘PSCK的統(tǒng)一節(jié)拍下進(jìn)行;完整的通信幀結(jié)構(gòu)為,串行指令輸入+串行數(shù)據(jù)輸入/串行數(shù)據(jù)讀出;其中串行指令碼的長(zhǎng)度為s位二進(jìn)制數(shù)據(jù)編碼(s>l),輸入輸出數(shù)據(jù)的長(zhǎng)度g位(g為8位/16位/32位可選);
[0050]OTP控制器指令譯碼電路102的譯碼結(jié)果是開始編程,則在OTP編程電路103的控制下,將接收到的數(shù)據(jù)按照OTP存儲(chǔ)器40的燒寫時(shí)序,寫入指定的地址單元,同時(shí)將指定地址單元的數(shù)據(jù)讀出以校驗(yàn)是否編程正確。
[0051]所述OTP控制器指令譯碼電路的譯碼結(jié)果是功能測(cè)試,則在OTP控制器中的測(cè)試電路的控制下,按照串行數(shù)據(jù)格式輸入g位需要運(yùn)行的指令,然后輸入k個(gè)運(yùn)行時(shí)鐘(PSCK)(k大于等于2),然后在輸入下一條指令,再輸入k個(gè)運(yùn)行時(shí)鐘,依次類推。但需要注意的是,進(jìn)入功能測(cè)試模式后前三條指令是不運(yùn)行的;每條指令的運(yùn)行是在下一條指令時(shí)鐘輸入后運(yùn)行。
[0052]所述芯片在功能測(cè)試模式下,不需要在OTP存儲(chǔ)器中劃分特定的測(cè)試程序區(qū)以存儲(chǔ)測(cè)試程序。測(cè)試電路將輸入的測(cè)試指令暫存,然后在測(cè)試時(shí)鐘下供CPU讀取并執(zhí)行以達(dá)到測(cè)試芯片的目的。
[0053]在所述的測(cè)試模式下,芯片的時(shí)鐘發(fā)生器選擇測(cè)試時(shí)鐘作為芯片的工作主時(shí)鐘,其測(cè)試時(shí)鐘是以串行時(shí)鐘PSCK為時(shí)鐘源,由OTP控制器中的測(cè)試電路生成一個(gè)CL0CK_FT。
[0054]所述芯片在正常工作時(shí),由OTP控制器中的正常工作數(shù)據(jù)讀取電路控制,按照OTP存儲(chǔ)器的讀取時(shí)序,從OTP存儲(chǔ)器中讀取相應(yīng)的數(shù)據(jù)送向CPU。芯片的時(shí)鐘發(fā)生器選擇外部輸入時(shí)鐘CLK作為芯片的工作主時(shí)鐘。
[0055]為了解釋說明本發(fā)明,本實(shí)施例中定義芯片的內(nèi)部復(fù)位時(shí)間長(zhǎng)度為10ms,OTP存儲(chǔ)器的燒寫電壓值高電平等于7.5V,X等于4,y等于1,m等于2,η等于I。
[0056]如圖1所示,所述OTP型微控制器芯片的程序燒寫及測(cè)試電路包括:0ΤΡ控制器、OTP存儲(chǔ)器、高壓檢測(cè)電路、時(shí)鐘發(fā)生器、CPU0
[0057]如圖2所示,圖3是本發(fā)明所示出的OTP控制器的實(shí)施方式之一。
[0058]圖3是本發(fā)明所示出的OTP控制器的實(shí)施方式之二。所述OTP控制器包括:芯片解鎖電路、指令譯碼電路、OTP編程電路、芯片測(cè)試電路、正常工作數(shù)據(jù)讀取電路。
[0059]圖1所示的高壓檢測(cè)電路用于檢測(cè)引腳VPP的輸入,并生成供OTP存儲(chǔ)器用的高壓信號(hào)VPPIN及供OTP控制器中的解鎖電路用的VPP_ACT。VPPIN是受開關(guān)信號(hào)VPP_CTR控制的高低電平電壓值與VPP —致的高壓信號(hào),其中VPP_CTR是由OTP控制器中的編程電路生成;VPP_ACT是邏輯電平值與通常的CMOS電路一致的數(shù)字信號(hào),其時(shí)序關(guān)系與VPP —致。
[0060]如圖4所示,當(dāng)整個(gè)芯片處于內(nèi)部復(fù)位狀態(tài)時(shí),在VPP等于7.5V期間,PSDI引腳連續(xù)輸入4個(gè)脈沖信號(hào);接著在VPP等于低電平期間,PSDI引腳連續(xù)輸入I個(gè)脈沖信號(hào);接著在VPP等于高電平期間,PSDI引腳連續(xù)輸入2個(gè)脈沖信號(hào);接著在VPP等于低電平期間PSDI引腳連續(xù)輸入I個(gè)脈沖信號(hào)。芯片內(nèi)部的OTP控制器對(duì)該輸入信號(hào)序列進(jìn)行監(jiān)測(cè),如符合圖4所示的時(shí)序,則芯片進(jìn)入解鎖狀態(tài)并將解鎖標(biāo)志信號(hào)hv_deteCt信號(hào)置I。在進(jìn)入解鎖狀態(tài)之后,內(nèi)部復(fù)位信號(hào)立刻變?yōu)闊o(wú)效狀態(tài)。
[0061]如圖5所示,本實(shí)施例中定義指令碼的長(zhǎng)度s為6,輸入輸出數(shù)據(jù)的長(zhǎng)度g為16。在芯片進(jìn)入解鎖狀態(tài)之后,PSCK、PSD1、PSD0引腳按照?qǐng)D5所示串行數(shù)據(jù)格式及命令碼的定義,向OTP控制器中的指令譯碼電路輸入指令并輸入數(shù)據(jù)或輸入指令并讀出數(shù)據(jù)。
[0062]所述的串行指令碼包括:地址設(shè)置、數(shù)據(jù)輸入、數(shù)據(jù)讀出、地址加一、開始編程、OTP工作模式設(shè)置、功能測(cè)試模式等指令,如圖6所示。以某半導(dǎo)體公司提供的OTP IP為例,其共有四種數(shù)據(jù)讀取模式,如圖7所示。指令譯碼電路將接收到的指令進(jìn)行譯碼,即可執(zhí)行相應(yīng)的操作。圖8為本實(shí)施例中所采用的OTP存儲(chǔ)器所對(duì)應(yīng)的編程時(shí)序圖,不同廠商的OTP存儲(chǔ)器其時(shí)序圖會(huì)不同。其中PCE信號(hào)為OTP存儲(chǔ)器的使能信號(hào);PTM信號(hào)為OTP存儲(chǔ)器的數(shù)據(jù)讀取模式信號(hào);PEN信號(hào)為OTP存儲(chǔ)器的帶隙基準(zhǔn)使能信號(hào);PR0G信號(hào)為OTP存儲(chǔ)器的編程模式使能信號(hào);VPPCTR信號(hào)為OTP控制器送向高壓檢測(cè)電路的開關(guān)信號(hào);圖中的PWE編程周期定義信號(hào)。
[0063]OTP控制器指令譯碼電路的譯碼結(jié)果是開始編程并將program信號(hào)置1,則在OTP編程電路的控制下,將接收到的數(shù)據(jù)按照?qǐng)D8所示的編程時(shí)序,寫入指定的OTP存儲(chǔ)器地址單元并且生成開關(guān)信號(hào)VPP_CTR,同時(shí)將指定地址單元的數(shù)據(jù)讀出以校驗(yàn)是否編程正確。
[0064]如圖9所示,所述芯片進(jìn)行程序燒寫的具體過程為:(I) 6位地址設(shè)置指令輸入+16位地址信號(hào)輸入,(2) 6位數(shù)據(jù)輸入指令輸入+16位數(shù)據(jù)輸入,(3) 6位OTP工作模式設(shè)置指令輸入+16位工作模式數(shù)據(jù)輸入(低3位有效),(4)6位開始編程指令輸入+16位無(wú)效數(shù)據(jù)輸入,(5)6位數(shù)據(jù)讀出指令輸入+16位數(shù)據(jù)輸出,¢)6位地址加一指令輸入。重復(fù)步驟
(1)-(5)即可完成對(duì)OTP存儲(chǔ)器指定地址單元的程序的燒寫,完成步驟(I)后重復(fù)步驟
(2)-(6)即可完成對(duì)OTP存儲(chǔ)器以特定地址單元開頭的連續(xù)地址單元的程序燒寫。
[0065]所述OTP控制器指令譯碼電路的譯碼結(jié)果是功能測(cè)試并將mod_ft信號(hào)置1,則在OTP控制器中的測(cè)試電路的控制下,按照?qǐng)D10所示的時(shí)序關(guān)系輸入g位需要運(yùn)行的指令,然后輸入k個(gè)運(yùn)行時(shí)鐘(PSCK) (k大于等于2),然后在輸入下一條指令,再輸入k個(gè)運(yùn)行時(shí)鐘,依次類推。但需要注意的是,進(jìn)入功能測(cè)試模式后前三條指令是不運(yùn)行的;每條指令的運(yùn)行是在下一條指令時(shí)鐘輸入后運(yùn)行。
[0066]所述芯片在功能測(cè)試模式下,不需要在OTP存儲(chǔ)器中劃分特定的測(cè)試程序區(qū)以存儲(chǔ)測(cè)試程序。測(cè)試電路將輸入的測(cè)試指令暫存,然后供CPU讀取并執(zhí)行以達(dá)到測(cè)試芯片的目的。
[0067]在所述的測(cè)試模式下,芯片的時(shí)鐘發(fā)生器選擇測(cè)試時(shí)鐘clock_ft作為芯片的工作主時(shí)鐘,其測(cè)試時(shí)鐘是以串行時(shí)鐘PSCK為時(shí)鐘源,由OTP控制器中的測(cè)試電路生成。
[0068]所述芯片在正常工作時(shí),由OTP控制器中的正常工作數(shù)據(jù)讀取電路控制,按照OTP存儲(chǔ)器的讀取時(shí)序,從OTP存儲(chǔ)器中讀取相應(yīng)的數(shù)據(jù)送向CPU。芯片的時(shí)鐘發(fā)生器選擇外部輸入時(shí)鐘CLK作為芯片的工作主時(shí)鐘。
[0069]如圖11所示,圖11是OTP型微控制器芯片的程序燒寫流程圖。芯片進(jìn)行程序燒寫的具體過程為:S101、芯片解鎖S位地址設(shè)置指令輸入+g位地址信號(hào)輸入;S102、S位數(shù)據(jù)輸入指令輸入+g位數(shù)據(jù)輸入;S103、s位OTP工作模式設(shè)置指令輸入+g位數(shù)據(jù)讀取模式輸入(低Z位有效,I < Z < g) ;S104、s位開始編程指令輸入+g位無(wú)效數(shù)據(jù)輸入;S105、s位數(shù)據(jù)讀出指令輸入+g位數(shù)據(jù)輸出;S106、s位地址加一指令輸入。重復(fù)步驟SlOl至S105即可完成對(duì)OTP存儲(chǔ)器指定地址單元的程序的燒寫,完成步驟SlOl后重復(fù)步驟SlOl至S105即可完成對(duì)OTP存儲(chǔ)器以特定地址單元開頭的連續(xù)地址單元的程序燒寫。
[0070]如圖12所示,圖12是本發(fā)明所述OTP型微控制器芯片的測(cè)試流程圖。芯片進(jìn)行程序測(cè)試的具體過程為:S201、s位功能測(cè)試指令輸入;S202、串行數(shù)據(jù)格式輸入g位需要運(yùn)行的指令,然后輸入k個(gè)運(yùn)行時(shí)鐘(PSCK) (k大于等于2),然后在輸入下一條指令,再輸入k個(gè)運(yùn)行時(shí)鐘,依次類推。
[0071 ] 與現(xiàn)有技術(shù)相比較,本發(fā)明中采用PSCK、PSD1、PSDO、VPP四個(gè)引腳即可完成OTP型微控制器芯片的燒寫,該特征相對(duì)于采用JTAG接口、完整的SPI接口來說接口數(shù)量少,協(xié)議簡(jiǎn)單。相對(duì)于UART、I2C等接口,其優(yōu)勢(shì)在于電路實(shí)現(xiàn)簡(jiǎn)單、規(guī)模小,操作容易。
[0072]本發(fā)明采用了特定的芯片解鎖時(shí)序,使芯片的抗干擾性、用戶數(shù)據(jù)安全度增加。否貝1J,在應(yīng)用環(huán)境中,稍有干擾,就有可能使芯片解鎖,或者不法分子可非常容易的獲取用戶在OTP存儲(chǔ)器中存儲(chǔ)的程序。
[0073]本發(fā)明所提供的串行數(shù)據(jù)格式及命令碼,可非常容易的完成程序的燒寫和校驗(yàn)。
[0074]本說明書中所述的只是本發(fā)明的較佳具體實(shí)施例,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非對(duì)本發(fā)明的限制。凡本領(lǐng)域技術(shù)人員依本發(fā)明的構(gòu)思通過邏輯分析、推理或者有限的實(shí)驗(yàn)可以得到的技術(shù)方案,皆應(yīng)在本發(fā)明的范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種一次性可編程存儲(chǔ)器控制器,其特征在于,包括: 一解鎖電路,所述解鎖電路接收一電平信號(hào)以及一串行數(shù)據(jù)信號(hào),當(dāng)所述電平信號(hào)以及所述串行數(shù)據(jù)信號(hào)滿足一特定時(shí)序時(shí),發(fā)送一解鎖信號(hào); 一指令譯碼電路,所述指令譯碼電路與所述解鎖電路連接,當(dāng)所述指令譯碼電路接收到所述解鎖信號(hào)時(shí),所述指令譯碼電路接收所述串行數(shù)據(jù)信號(hào)中的指令碼以及一串行時(shí)鐘信號(hào)并執(zhí)行譯碼操作; 一編程電路,所述編程電路與所述指令譯碼電路連接,所述編程電路根據(jù)所述指令譯碼電路輸出的一開始編程信號(hào)接收所述串行數(shù)據(jù)信號(hào)以及串行時(shí)鐘信號(hào),并將所述串行數(shù)據(jù)信號(hào)中的數(shù)據(jù)寫入所述一次性可編程存儲(chǔ)器。2.如權(quán)利要求1所述的一次性可編程存儲(chǔ)器控制器,其特征在于,所述特定時(shí)序指:在大于等于I毫秒的復(fù)位時(shí)間內(nèi),滿足:所述電平信號(hào)為Vl時(shí),所述解鎖電路連續(xù)接收X個(gè)脈沖的串行數(shù)據(jù)信號(hào);所述電平信號(hào)為V2時(shí),所述解鎖電路連續(xù)接收Y個(gè)脈沖的串行數(shù)據(jù)信號(hào);電平信號(hào)為Vl時(shí),所述解鎖電路連續(xù)接收M個(gè)脈沖的串行數(shù)據(jù)信號(hào);所述電平信號(hào)為V2時(shí),所述解鎖電路連續(xù)接收N個(gè)脈沖的串行數(shù)據(jù)信號(hào);當(dāng)所述V1、V2分別為高電平\低電平,或低電平\高電平,所述X、Y、M、N均大于等于I。3.如權(quán)利要求1所述的一次性可編程存儲(chǔ)器控制器,其特征在于,所述串行數(shù)據(jù)信號(hào)中的指令碼包括:地址設(shè)置、數(shù)據(jù)輸入、數(shù)據(jù)讀出、地址加一、開始編程、數(shù)據(jù)讀取模式設(shè)置、功能測(cè)試模式。4.如權(quán)利要求1所述的一次性可編程存儲(chǔ)器控制器,其特征在于,所述編程電路讀出所述一次性可編程存儲(chǔ)器內(nèi)的數(shù)據(jù)以檢驗(yàn)所述數(shù)據(jù)是否正確。5.如權(quán)利要求1所述的一次性可編程存儲(chǔ)器控制器,其特征在于,所述編程電路接收的所述串行數(shù)據(jù)信號(hào)包括:s位的二進(jìn)制的指令編碼以及g位的二進(jìn)制的數(shù)據(jù);其中s>l,g為8或16或32。6.如權(quán)利要求4所述的一次性可編程存儲(chǔ)器控制器,其特征在于,將所述串行數(shù)據(jù)信號(hào)中的數(shù)據(jù)寫入所述一次性可編程存儲(chǔ)器具體包括:s位地址設(shè)置指令輸入+g位地址信號(hào)輸入;S位數(shù)據(jù)輸入指令輸入+g位數(shù)據(jù)輸入;s位一次性可編程存儲(chǔ)器工作模式設(shè)置指令輸入+g位數(shù)據(jù)讀取模式輸入(低Z位有效,I < z < g) ;s位開始編程指令輸入+g位無(wú)效數(shù)據(jù)輸入;S位數(shù)據(jù)讀出指令輸入+g位數(shù)據(jù)輸出;s位地址加一指令輸入,其中s>l, g為8或16或32。7.一種集成電路,用于實(shí)現(xiàn)向一次性可編程存儲(chǔ)器燒寫程序,其特征在于,包括: 一高壓電平輸入端口,用于向所述集成電路輸入一高壓電平信號(hào); 一串行時(shí)鐘輸入端口,用于向所述集成電路輸入一串行時(shí)鐘信號(hào); 一串行數(shù)據(jù)輸入端口,用于向所述集成電路輸入一串行數(shù)據(jù)信號(hào); 一串行數(shù)據(jù)輸出端口,用于從所述集成電路輸出一串行數(shù)據(jù)信號(hào); 一高壓檢測(cè)電路與一控制器,所述高壓檢測(cè)電路將所述高壓電平信號(hào)轉(zhuǎn)換為一同相位的低壓電平信號(hào),所述控制器接收所述低壓電平信號(hào)、串行時(shí)鐘信號(hào)以及串行數(shù)據(jù)信號(hào)并根據(jù)所述低壓電平信號(hào)、串行時(shí)鐘信號(hào)以及串行數(shù)據(jù)信號(hào)向所述一次性可編程存儲(chǔ)器燒寫程序。8.如權(quán)利要求7所述的集成電路,其特征在于,所述控制器包括: 一解鎖電路,所述解鎖電路接收所述低壓電平信號(hào)以及一串行數(shù)據(jù)信號(hào),當(dāng)所述低壓電平信號(hào)以及所述串行數(shù)據(jù)信號(hào)滿足一特定時(shí)序時(shí),發(fā)送一解鎖信號(hào); 一指令譯碼電路,所述指令譯碼電路與所述解鎖電路連接,當(dāng)所述指令譯碼電路接收到所述解鎖信號(hào)時(shí),所述指令譯碼電路接收所述串行數(shù)據(jù)信號(hào)中的指令碼以及一串行時(shí)鐘信號(hào)并執(zhí)行譯碼操作; 一編程電路,所述編程電路與所述指令譯碼電路連接,所述編程電路根據(jù)所述指令譯碼電路輸出的一開始編程信號(hào)接收所述串行數(shù)據(jù)信號(hào)以及串行時(shí)鐘信號(hào),并將所述串行數(shù)據(jù)信號(hào)中的數(shù)據(jù)寫入所述一次性可編程存儲(chǔ)器。9.如權(quán)利要求8所述的集成電路,其特征在于,所述控制器的編程電路生成一開關(guān)信號(hào),所述高壓檢測(cè)電路接收所述開關(guān)信號(hào)并生成一高壓信號(hào)VPPIN。10.如權(quán)利要求7所述的集成電路,其特征在于,所述串行數(shù)據(jù)信號(hào)包括指令碼和/或數(shù)據(jù)。11.如權(quán)利要求10所述的集成電路,其特征在于,所述指令碼包括:地址設(shè)置、數(shù)據(jù)輸入、數(shù)據(jù)讀出、地址加一、開始編程、數(shù)據(jù)讀取模式設(shè)置、功能測(cè)試模式。12.如權(quán)利要求10所述的集成電路,其特征在于,所述指令碼為s位的二進(jìn)制數(shù)據(jù),所述數(shù)據(jù)為g位的二進(jìn)制數(shù)據(jù);其中s>l,g為8或16或32。13.如權(quán)利要求8所述的集成電路,其特征在于,所述特定時(shí)序指:在大于等于I毫秒的復(fù)位時(shí)間內(nèi),滿足:所述低壓電平信號(hào)為Vl時(shí),所述解鎖電路連續(xù)接收X個(gè)脈沖的串行數(shù)據(jù)信號(hào);所述低壓電平信號(hào)為V2時(shí),所述解鎖電路連續(xù)接收Y個(gè)脈沖的串行數(shù)據(jù)信號(hào);電平信號(hào)為Vl時(shí),所述解鎖電路連續(xù)接收M個(gè)脈沖的串行數(shù)據(jù)信號(hào);所述低壓電平信號(hào)為V2時(shí),所述解鎖電路連續(xù)接收N個(gè)脈沖的串行數(shù)據(jù)信號(hào);當(dāng)所述V1、V2分別為高電平\低電平,或低電平\高電平,所述X、Y、M、N均大于等于I。14.如權(quán)利要求8所述的集成電路,其特征在于,所述編程電路讀出所述一次性可編程存儲(chǔ)器內(nèi)的數(shù)據(jù),并通過所述串行數(shù)據(jù)輸出端口輸出。15.一種一次性可編程存儲(chǔ)器程序燒寫的方法,其特征在于,包括: 步驟一、接收一電平信號(hào)以及一串行數(shù)據(jù)信號(hào),當(dāng)所述電平信號(hào)以及所述串行數(shù)據(jù)信號(hào)滿足一特定時(shí)序時(shí),發(fā)送一解鎖信號(hào); 步驟二、接收所述串行數(shù)據(jù)信號(hào)以及一串行時(shí)鐘信號(hào),并將所述串行數(shù)據(jù)信號(hào)中的程序數(shù)據(jù)寫入一次性可編程存儲(chǔ)器。16.如權(quán)利要求15所述的程序燒寫的方法,其特征在于,所述步驟一中的特定時(shí)序指在大于等于I毫秒的復(fù)位時(shí)間內(nèi),滿足:所述電平信號(hào)為Vl時(shí),所述解鎖電路連續(xù)接收X個(gè)脈沖的串行數(shù)據(jù)信號(hào);所述電平信號(hào)為V2時(shí),所述解鎖電路連續(xù)接收Y個(gè)脈沖的串行數(shù)據(jù)信號(hào);電平信號(hào)為Vl時(shí),所述解鎖電路連續(xù)接收M個(gè)脈沖的串行數(shù)據(jù)信號(hào);所述電平信號(hào)為V2時(shí),所述解鎖電路連續(xù)接收N個(gè)脈沖的串行數(shù)據(jù)信號(hào);當(dāng)所述V1、V2分別為高電平\低電平,或低電平\高電平,所述X、Y、M、N均大于等于I。17.如權(quán)利要求15所述的程序燒寫的方法,其特征在于,所述步驟二進(jìn)一步包括: 2.Us位地址設(shè)置指令輸入+g位地址信號(hào)輸入; 2.2、s位數(shù)據(jù)輸入指令輸入+g位數(shù)據(jù)輸入; 2.3、s位OTP工作模式設(shè)置指令輸入+g位數(shù)據(jù)讀取模式輸入(低z位有效,I ^ Z ^ g); 2.4、s位開始編程指令輸入+g位無(wú)效數(shù)據(jù)輸入; 2.5、s位數(shù)據(jù)讀出指令輸入+g位數(shù)據(jù)輸出; 2.6、s位地址加一指令輸入。18.如權(quán)利要求17所述的程序燒寫的方法,其特征在于,重復(fù)所述步驟2.1至2.5以完成對(duì)所述一次性可編程存儲(chǔ)器指定地址單元的程序的燒寫。19.如權(quán)利要求17所述的程序燒寫的方法,其特征在于,完成所述步驟2.1后重復(fù)所述步驟2.2至2.6以完成對(duì)所述一次性可編程存儲(chǔ)器特定地址單元開頭的連續(xù)地址單元的程序燒寫。
【文檔編號(hào)】G11C17/16GK105989894SQ201510075262
【公開日】2016年10月5日
【申請(qǐng)日】2015年2月12日
【發(fā)明人】楊維, 張文榮, 陸健, 王成, 王鵬, 徐學(xué)良
【申請(qǐng)人】上海晟矽微電子股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1