成人打一炮免费视频,亚洲天堂视频在线观看,97视频久久久,日本japanese护士色高清,五月婷婷丁香,日韩精品一级无码毛片免费,国产欧美日韩精品网红剧情演绎

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

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

【發(fā)明內容】

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