欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

改善一次性可編程存儲(chǔ)器使用性能的方法及裝置的制作方法

文檔序號(hào):6436413閱讀:251來源:國(guó)知局
專利名稱:改善一次性可編程存儲(chǔ)器使用性能的方法及裝置的制作方法
改善一次性可編程存儲(chǔ)器使用性能的方法及裝置技術(shù)領(lǐng)域
本發(fā)明主要涉及半導(dǎo)體技術(shù),尤其涉及改善一次性可編程存儲(chǔ)器使用性能的方法及裝置。
背景技術(shù)
一次性可編程(OTP,One Time Programmable)存儲(chǔ)器可以是用于在各種計(jì)算機(jī)相關(guān)應(yīng)用中(例如在蜂窩式電話、個(gè)人數(shù)字助理等小型手持式數(shù)字裝置中)提供非易失性存儲(chǔ)器的有效且低成本機(jī)構(gòu)。
在現(xiàn)有技術(shù)中,OTP存儲(chǔ)器大量應(yīng)用在嵌入式控制芯片中,作為控制芯片的數(shù)據(jù)的存儲(chǔ)介質(zhì),其中,數(shù)據(jù)是指芯片的設(shè)置參數(shù)數(shù)據(jù)及用戶程序。
研究人員在研究中發(fā)現(xiàn),現(xiàn)有技術(shù)中的OTP存儲(chǔ)器在數(shù)據(jù)燒錄至的過程中,并不能驗(yàn)證燒錄至的數(shù)據(jù)是否出現(xiàn)錯(cuò)誤,必需等到所有的數(shù)據(jù)都燒錄至后,再將燒錄至的數(shù)據(jù)讀取出來與原來的數(shù)據(jù)進(jìn)行對(duì)比分析,若出現(xiàn)數(shù)據(jù)內(nèi)容不一致,即存在壞塊時(shí),則將該OTP 存儲(chǔ)器作為不良品,不能正常使用,導(dǎo)致OTP存儲(chǔ)器良品率低,且由于OTP芯片在多次使用后,其中存儲(chǔ)的數(shù)據(jù)也有可能發(fā)生變化,生成壞塊,嵌入式芯片運(yùn)行錯(cuò)誤的用戶程序?qū)?dǎo)致芯片運(yùn)行不正常甚至使得使用該芯片的產(chǎn)品產(chǎn)生誤操作,因此,現(xiàn)有技術(shù)中OTP存儲(chǔ)器的良品率低,且難以確保OTP存儲(chǔ)器中的用戶程序穩(wěn)定可靠的運(yùn)行。發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種改善一次性可編程存儲(chǔ)器使用性能的方法及裝置,用于 OTP存儲(chǔ)器的數(shù)據(jù)燒錄及確保OTP存儲(chǔ)器中的用戶程序能夠穩(wěn)定可靠的運(yùn)行。
本發(fā)明實(shí)施例中的方法包括確定OTP存儲(chǔ)器中空片OTP區(qū)塊及OTP區(qū)塊存儲(chǔ)空間的大??;將待燒錄數(shù)據(jù)按照OTP區(qū)塊的存儲(chǔ)空間的大小劃分?jǐn)?shù)據(jù)塊;確定起始數(shù)據(jù)塊及起始空片OTP區(qū)塊;將數(shù)據(jù)塊燒錄到OTP區(qū)塊中,啟動(dòng)循環(huán)冗余校驗(yàn)碼CRC電路生成數(shù)據(jù)塊對(duì)應(yīng)的CRC碼;根據(jù)CRC碼,啟動(dòng)CRC電路對(duì)OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn);若OTP區(qū)塊中的數(shù)據(jù)未通過CRC校驗(yàn),則確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行將數(shù)據(jù)塊燒錄到OTP區(qū)塊中,啟動(dòng)CRC電路生成數(shù)據(jù)塊對(duì)應(yīng)的CRC碼的步驟;若OTP區(qū)塊中的數(shù)據(jù)通過 CRC校驗(yàn),則將OTP區(qū)塊的偏移地址、有效標(biāo)記位及數(shù)據(jù)塊的CRC碼寫入OTP存儲(chǔ)器對(duì)應(yīng)的配置表中;判斷數(shù)據(jù)塊是否為待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊;若數(shù)據(jù)塊不是待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,確定下一個(gè)待燒錄的數(shù)據(jù)塊及下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行將數(shù)據(jù)塊燒錄到OTP區(qū)塊中,啟動(dòng)CRC電路生成數(shù)據(jù)塊對(duì)應(yīng)的CRC碼的步驟;若數(shù)據(jù)塊為待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,則停止數(shù)據(jù)燒錄;確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,將配置表燒錄到OTP區(qū)塊中。
本發(fā)明實(shí)施例中的方法包括0ΤΡ存儲(chǔ)器所在的芯片上電后,芯片中的中央處理器CPU獲取OTP存儲(chǔ)器中校驗(yàn)正確的配置表;根據(jù)配置表,獲取OTP存儲(chǔ)器中保存的有效 OTP區(qū)塊;依次對(duì)有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),將校驗(yàn)正確的OTP區(qū)塊的偏移地址保存在CPU的寄存器中。
本發(fā)明實(shí)施例中的裝置包括
獲取單元,用于確定OTP存儲(chǔ)器中將要燒錄數(shù)據(jù)的OTP區(qū)塊及OTP區(qū)塊存儲(chǔ)空間的大小,及將待燒錄數(shù)據(jù)按照OTP區(qū)塊的存儲(chǔ)空間的大小劃分?jǐn)?shù)據(jù)塊,確定起始數(shù)據(jù)塊及起始空片OTP區(qū)塊;
數(shù)據(jù)燒錄處理單元,用于將數(shù)據(jù)塊燒錄到OTP區(qū)塊中,啟動(dòng)循環(huán)冗余校驗(yàn)碼CRC電路生成數(shù)據(jù)塊對(duì)應(yīng)的CRC碼;對(duì)OTP區(qū)塊中的數(shù)據(jù)進(jìn)行兩次CRC校驗(yàn),根據(jù)CRC碼,啟動(dòng)CRC 電路對(duì)OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn);若OTP區(qū)塊中的數(shù)據(jù)未通過CRC校驗(yàn),則確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行將數(shù)據(jù)塊燒錄到OTP區(qū)塊中,啟動(dòng)CRC電路生成數(shù)據(jù)塊對(duì)應(yīng)的CRC碼的步驟;若OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則將OTP區(qū)塊的偏移地址、 有效標(biāo)記位及數(shù)據(jù)塊的CRC碼寫入OTP存儲(chǔ)器對(duì)應(yīng)的配置表中;判斷數(shù)據(jù)塊是否為待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊;若數(shù)據(jù)塊不是待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,確定下一個(gè)待燒錄的數(shù)據(jù)塊及下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行將數(shù)據(jù)塊燒錄到OTP區(qū)塊中,啟動(dòng) CRC電路生成數(shù)據(jù)塊對(duì)應(yīng)的CRC碼的步驟;若數(shù)據(jù)塊為待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,則停止數(shù)據(jù)燒錄;
配置表燒錄單元,用于確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,將配置表燒錄到 OTP區(qū)塊中。
本發(fā)明實(shí)施例中的裝置包括
配置表獲取單元,OTP存儲(chǔ)器所在的芯片上電后,獲取OTP存儲(chǔ)器中校驗(yàn)正確的配置表;
區(qū)塊獲取單元,用于根據(jù)配置表,獲取OTP存儲(chǔ)器中保存的有效OTP區(qū)塊;
校驗(yàn)保存單元,用于依次對(duì)有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),將校驗(yàn)正確的OTP區(qū)塊的偏移地址保存在CPU的寄存器中。
從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn)
數(shù)據(jù)塊依次燒錄空片OTP區(qū)塊中,且每次在將數(shù)據(jù)塊燒錄到OTP區(qū)塊中時(shí),啟動(dòng)循環(huán)冗余校驗(yàn)碼(CRC,Cyclic Redundancy Check)電路生成該數(shù)據(jù)塊對(duì)應(yīng)的CRC碼,并根據(jù)該CRC碼對(duì)OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn),若通過校驗(yàn),則將OTP區(qū)塊的偏移地址、有效標(biāo)記位及數(shù)據(jù)塊的CRC碼寫入OTP存儲(chǔ)器對(duì)應(yīng)的配置表中,若未通過校驗(yàn),則重新進(jìn)行燒錄,直至所有的待燒錄的數(shù)據(jù)塊均已完成有效燒錄,使得數(shù)據(jù)塊在燒錄的過程中,即使出現(xiàn)壞塊,也不會(huì)影響數(shù)據(jù)塊的燒錄及OTP存儲(chǔ)器的使用,提高了 OTP存儲(chǔ)器的良品率,同時(shí),通過在燒錄過程中,保存有效OTP區(qū)塊的偏移地址、有效標(biāo)記位及數(shù)據(jù)庫塊的CRC碼,使得該 OTP存儲(chǔ)器在上電運(yùn)行時(shí),能夠根據(jù)配置表中保存的有效OTP區(qū)塊的CRC碼再次進(jìn)行CRC校驗(yàn),并能夠?qū)⑿r?yàn)成功的OTP區(qū)塊的偏移地址保存到CPU的寄存器中,使得CPU能夠高效訪問OTP存儲(chǔ)器中的數(shù)據(jù),同時(shí)能夠有效的提高OTP存儲(chǔ)器中的用戶程序運(yùn)行的可靠性,整體上改善了 OTP存儲(chǔ)器的使用性能。


圖1為本發(fā)明實(shí)施例中改善OTP存儲(chǔ)器使用性能的方法的一個(gè)示意圖2為本發(fā)明實(shí)施例中配置表燒錄方法的一個(gè)示意圖3為本發(fā)明實(shí)施例中OTP存儲(chǔ)器燒錄之后數(shù)據(jù)結(jié)構(gòu)圖4為本發(fā)明實(shí)施例中改善OTP存儲(chǔ)器使用性能的方法的另一示意圖5為本發(fā)明實(shí)施例中配置表的校驗(yàn)方法的一個(gè)示意圖6為本發(fā)明實(shí)施例中改善OTP存儲(chǔ)器使用性能的裝置的另一示意圖7為本發(fā)明實(shí)施例中改善OTP存儲(chǔ)器使用性能的裝置的另一示意圖8為本發(fā)明實(shí)施例中改善OTP存儲(chǔ)器使用性能的裝置的另一示意圖9為本發(fā)明實(shí)施例中改善OTP存儲(chǔ)器使用性能的裝置的另一示意圖。
具體實(shí)施方式
本發(fā)明實(shí)施例提供了一種改善OTP存儲(chǔ)器使用性能的方法及裝置,用于在對(duì)OTP 存儲(chǔ)器進(jìn)行數(shù)據(jù)燒錄的過程中,提高OTP存儲(chǔ)器的良品率,及在OTP所在的芯片上電運(yùn)行時(shí),使得CPU能夠高效訪問OTP存儲(chǔ)器中的數(shù)據(jù),及提高OTP存儲(chǔ)器中用戶程序運(yùn)行的可靠性。
在本發(fā)明實(shí)施例中,可通過改善OTP存儲(chǔ)器的數(shù)據(jù)燒錄的過程來改善OTP存儲(chǔ)器的使用性能,請(qǐng)參閱圖1,為本發(fā)明實(shí)施例中改善OTP存儲(chǔ)器使用性能的方法的實(shí)施例,包括
101、確定OTP存儲(chǔ)器中空片OTP區(qū)塊及OTP區(qū)塊存儲(chǔ)空間的大小;
在本發(fā)明實(shí)施例中,若OTP存儲(chǔ)器為第一次進(jìn)行數(shù)據(jù)燒錄,燒錄控制器將根據(jù)待燒錄數(shù)據(jù)的數(shù)據(jù)量的大小,將OTP存儲(chǔ)器的存儲(chǔ)空間劃分為至少兩個(gè)OTP區(qū)塊,并將OTP區(qū)塊的存儲(chǔ)空間的大小寫入OTP存儲(chǔ)器的配置表中;或者,若OTP存儲(chǔ)器為非第一次進(jìn)行數(shù)據(jù)燒錄,燒錄控制器則從該OTP存儲(chǔ)器的配置表中獲取空片OTP區(qū)塊的偏移地址及OTP區(qū)塊的大小,其中,可用于燒錄數(shù)據(jù)的OTP區(qū)塊為空片OTP區(qū)塊,即未燒錄過數(shù)據(jù)的OTP區(qū)塊。
在本發(fā)明實(shí)施例中,燒錄控制器將確定OTP存儲(chǔ)器中將要燒錄數(shù)據(jù)的OTP區(qū)塊及 OTP區(qū)塊存儲(chǔ)空間的大小。
102、將待燒錄數(shù)據(jù)按照OTP區(qū)塊的存儲(chǔ)空間的大小劃分?jǐn)?shù)據(jù)塊,確定起始數(shù)據(jù)塊及起始空片OTP區(qū)塊;
在本發(fā)明實(shí)施例中,數(shù)據(jù)是以數(shù)據(jù)塊為單位燒錄到OTP存儲(chǔ)器中空片OTP區(qū)塊中的,因此,燒錄控制器將待燒錄數(shù)據(jù)按照OTP區(qū)塊的存儲(chǔ)空間的大小劃分?jǐn)?shù)據(jù)塊,例如,待燒錄數(shù)據(jù)的大小為2KB,OTP區(qū)塊的存儲(chǔ)空間的大小為512bit,則可將待燒錄數(shù)據(jù)劃分為4 個(gè)大小均為512bit的數(shù)據(jù)塊。
在本發(fā)明實(shí)施例中,燒錄控制器將確定起始數(shù)據(jù)塊及起始空片OTP區(qū)塊。
在本發(fā)明實(shí)施例中,數(shù)據(jù)塊的燒錄是順序燒錄,即從起始數(shù)據(jù)塊開始燒錄,一個(gè)數(shù)據(jù)塊燒錄成功之后,再燒錄下一個(gè)數(shù)據(jù)塊。
103、將數(shù)據(jù)塊燒錄到OTP區(qū)塊中,啟動(dòng)CRC電路生成數(shù)據(jù)塊對(duì)應(yīng)的CRC碼;
在本發(fā)明實(shí)施例中,CRC能夠生成數(shù)據(jù)的CRC碼及實(shí)現(xiàn)對(duì)數(shù)據(jù)的CRC校驗(yàn)。
在本發(fā)明實(shí)施例中,燒錄控制器將起始數(shù)據(jù)塊燒錄到OTP區(qū)塊中,同時(shí)啟動(dòng)CRC電路生成該數(shù)據(jù)塊對(duì)應(yīng)的CRC碼,需要說明的是,燒錄控制器將數(shù)據(jù)發(fā)送給CRC電路,由該CRC 電路根據(jù)數(shù)據(jù)塊中的數(shù)據(jù)生成CRC碼。
104、根據(jù)CRC碼,啟動(dòng)CRC電路對(duì)OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn);
在本發(fā)明實(shí)施例中,數(shù)據(jù)塊在燒錄到OTP區(qū)塊中之后,燒錄控制器將根據(jù)數(shù)據(jù)塊的CRC碼,啟動(dòng)CRC電路對(duì)OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn),具體為CRC電路啟動(dòng)之后,CRC 電路讀取該OTP區(qū)塊中已燒錄的數(shù)據(jù)和之前產(chǎn)生的CRC碼校驗(yàn),如果校驗(yàn)成功,則說明數(shù)據(jù)塊在燒錄到OTP區(qū)塊的過程中時(shí)未出現(xiàn)錯(cuò)誤,通過CRC校驗(yàn),若不成功,則說明數(shù)據(jù)塊在燒錄到OTP區(qū)塊的過程中出現(xiàn)錯(cuò)誤,未通過CRC校驗(yàn)。
105、若OTP區(qū)塊中的數(shù)據(jù)未通過CRC校驗(yàn),則確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP 區(qū)塊,返回執(zhí)行步驟103;
在本發(fā)明實(shí)施中,若OTP區(qū)塊中的數(shù)據(jù)未通過CRC校驗(yàn),燒錄控制器將確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行步驟103,即將數(shù)據(jù)塊燒錄到OTP區(qū)塊中,啟動(dòng)CRC電路生成數(shù)據(jù)塊對(duì)應(yīng)的CRC碼,對(duì)未有效燒錄的數(shù)據(jù)再次進(jìn)行燒錄及CRC校驗(yàn)過程,直至該數(shù)據(jù)塊完成有效燒錄。
106、若OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則將OTP區(qū)塊的偏移地址、有效標(biāo)記位及數(shù)據(jù)塊的CRC碼寫入OTP存儲(chǔ)器對(duì)應(yīng)的配置表中;
在本發(fā)明實(shí)施例中,若OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),燒錄控制器將該OTP區(qū)塊的偏移地址,有效標(biāo)記位及數(shù)據(jù)塊的CRC碼寫入OTP存儲(chǔ)器對(duì)應(yīng)的配置表中。
需要說明的是,若需要對(duì)待燒錄數(shù)據(jù)進(jìn)行備份,則在對(duì)一個(gè)數(shù)據(jù)塊成功完成一次燒錄之后,再對(duì)該數(shù)據(jù)塊繼續(xù)執(zhí)行燒錄過程,直至完成兩次有效的數(shù)據(jù)燒錄,以達(dá)到對(duì)數(shù)據(jù)備份的目的,在本發(fā)明實(shí)施例中,備份數(shù)據(jù)塊的具體操作為在步驟106之后,判斷該數(shù)據(jù)塊是否已經(jīng)完成兩次有效的燒錄到OTP區(qū)塊的過程,若否,則確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行步驟103。
107、判斷數(shù)據(jù)塊是否為待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,若否,則執(zhí)行步驟108,若是,則執(zhí)行步驟109;
燒錄控制器在對(duì)一個(gè)數(shù)據(jù)塊完成有效的數(shù)據(jù)燒錄之后,將判斷該數(shù)據(jù)塊是否為待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,并根據(jù)判斷結(jié)果,確定是否繼續(xù)執(zhí)行數(shù)據(jù)燒錄的過程。
108、確定下一個(gè)待燒錄的數(shù)據(jù)塊及下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行步驟103 ;
在本發(fā)明實(shí)施例中,當(dāng)數(shù)據(jù)塊不是待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊時(shí),燒錄控制器將確定下一個(gè)待燒錄的數(shù)據(jù)塊及下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊。并返回執(zhí)行步驟103, 即將該數(shù)據(jù)塊燒錄到OTP區(qū)塊中,啟動(dòng)CRC電路生成數(shù)據(jù)塊對(duì)應(yīng)的CRC碼,并完成根據(jù)該 CRC碼進(jìn)行CRC校驗(yàn)的過程。
109、停止數(shù)據(jù)燒錄;
在本發(fā)明實(shí)施例中,當(dāng)數(shù)據(jù)塊是待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊時(shí),燒錄控制器將停止數(shù)據(jù)燒錄。
110、確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,將配置表燒錄到OTP區(qū)塊中。
待燒錄數(shù)據(jù)完成燒錄過程之后,燒錄控制器將進(jìn)行配置表的燒錄,即確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,將配置表燒錄到OTP區(qū)塊中。
在本發(fā)明實(shí)施例中,通過將OTP存儲(chǔ)器的存儲(chǔ)空間劃分為OTP區(qū)塊,且將待燒錄的數(shù)據(jù)按照OTP區(qū)塊的存儲(chǔ)空間的大小依次燒錄到OTP區(qū)塊中,每次在將數(shù)據(jù)塊燒錄到OTP 區(qū)塊時(shí),將啟動(dòng)CRC電路生產(chǎn)該數(shù)據(jù)塊的CRC碼,該數(shù)據(jù)塊燒錄完之后,對(duì)該OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn),若未通過校驗(yàn),則說明出現(xiàn)壞塊,則將未燒錄成功的數(shù)據(jù)塊再次進(jìn)行燒錄,直至成功為止,使得OTP存儲(chǔ)器中即使出現(xiàn)壞塊,也不會(huì)導(dǎo)致OTP存儲(chǔ)器不能使用的情況,提高了 OTP存儲(chǔ)器的良品率,且還可以通過將待燒錄數(shù)據(jù)進(jìn)行備份的方式,進(jìn)一步提高 OTP存儲(chǔ)器中的用戶程序運(yùn)行的可靠性,改善了 OTP存儲(chǔ)器的性能。
需要說明的是,在本發(fā)明實(shí)施例中,為了確保OTP存儲(chǔ)器中配置表燒錄的正確性, 可通過對(duì)燒錄配置表的OTP區(qū)塊進(jìn)行校驗(yàn)確定燒錄是否成功,請(qǐng)參閱圖2,為本發(fā)明實(shí)施例中一種配置表燒錄方法的實(shí)施例,包括
201、將配置表燒錄到OTP區(qū)塊中,啟動(dòng)CRC電路生成所述配置表對(duì)應(yīng)的CRC碼;
202、根據(jù)CRC碼,啟動(dòng)CRC電路對(duì)OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn);
在本發(fā)明實(shí)施例中,燒錄控制器將配置表燒錄到OTP區(qū)塊中,啟動(dòng)CRC電路生成所述配置表對(duì)應(yīng)的CRC碼,并根據(jù)該CRC碼,啟動(dòng)CRC電路對(duì)OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn)。
203、若OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則將配置表的CRC碼保存到配置表中,設(shè)置配置表的標(biāo)識(shí)碼,當(dāng)配置表已完成兩次有效的燒錄之后,停止配置表的燒錄;
在本發(fā)明實(shí)施例中,若OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則說明此次配置表的燒錄有效,燒錄控制器將配置表的CRC碼保存到配置表中,并設(shè)置該配置表的標(biāo)識(shí)碼,該標(biāo)識(shí)碼用于芯片上電運(yùn)行后,芯片CPU查找標(biāo)識(shí)碼確定配置表。且為了提高配置表燒錄的正確性, 可對(duì)配置表完成兩次有效的燒錄,進(jìn)行配置表的備份,當(dāng)配置表完成兩次有效的燒錄之后, 再停止配置表的燒錄。具體為在對(duì)配置表進(jìn)行一次有效燒錄之后,再確定一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,按照本發(fā)明實(shí)施例中的步驟201至204的過程在執(zhí)行一次配置表的有效燒錄過程,實(shí)現(xiàn)配置表的備份。
204、確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行步驟201。
在本發(fā)明實(shí)施例中,若OTP區(qū)塊中的數(shù)據(jù)未通過校驗(yàn),則說明配置表的燒錄失敗, 燒錄工具將確定下一個(gè)待燒錄數(shù)據(jù)的恐怕OTP區(qū)塊,返回執(zhí)行步驟201中,即再次對(duì)未有效燒錄的配置表進(jìn)行燒錄及校驗(yàn)過程,直至完成配置表的有效燒錄。
需要說明的是,燒錄控制器可以是一種數(shù)據(jù)燒錄工具,或者是具有控制能力的芯片,能夠按照本發(fā)明實(shí)施例中圖1及圖2所示的實(shí)施例實(shí)現(xiàn)數(shù)據(jù)的燒錄,在實(shí)際應(yīng)用中,可根據(jù)具體的情況確定燒錄控制器,此處不做限定。
為了更好的理解,請(qǐng)參考圖3,為本發(fā)明實(shí)施例中采用圖1及圖2所示實(shí)施例的方法對(duì)OTP存儲(chǔ)器進(jìn)行燒錄之后,可能得到的OTP存儲(chǔ)器的數(shù)據(jù)結(jié)構(gòu)圖。
在本發(fā)明實(shí)施例中,圖1及圖2所示的實(shí)施例為通過優(yōu)化OTP區(qū)塊的數(shù)據(jù)燒錄過程,利用CRC校驗(yàn)的方法,有效的提高OTP存儲(chǔ)器的良品率。下面將從使用OTP存儲(chǔ)器的角度描述有效提高OTP存儲(chǔ)器的用戶程序運(yùn)行的可靠性的方法,請(qǐng)參閱圖4,為本發(fā)明實(shí)施例中一種改善OTP存儲(chǔ)器的使用性能的方法的實(shí)施例,包括
401、OTP存儲(chǔ)器所在的芯片上電后,芯片中的CPU獲取OTP存儲(chǔ)器中校驗(yàn)正確的配置表;
在本發(fā)明實(shí)施例中,OTP存儲(chǔ)器所在的芯片上電后,芯片中的CPU將獲取該OTP存儲(chǔ)器中校驗(yàn)正確的配置表。
需要說明的是,CPU可通過配置表的標(biāo)識(shí)碼在OTP存儲(chǔ)器中查找到配置表,并通過對(duì)配置表進(jìn)行CRC校驗(yàn)獲得校驗(yàn)正確的配置表,例如,可設(shè)置配置表的標(biāo)識(shí)碼為“DW”,通過搜索標(biāo)識(shí)“DW”找到配置表。
402、根據(jù)配置表,獲取OTP存儲(chǔ)器中保存的有效OTP區(qū)塊;
在本發(fā)明實(shí)施例中,配置表中保存了有效數(shù)據(jù)塊的偏移地址,OTP區(qū)塊的存儲(chǔ)空間的大小,有效OTP區(qū)塊的有效標(biāo)記位及CRC校驗(yàn)值,對(duì)于壞塊,即未成功燒錄數(shù)據(jù)的OTP區(qū)塊,則保存了該區(qū)塊的無效標(biāo)記位,因此,CPU可根據(jù)配置表中有效標(biāo)記位獲取保存的有效 OTP區(qū)塊。
403、依次對(duì)有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),將校驗(yàn)正確的OTP區(qū)塊的偏移地址保存在CPU的寄存器中。
在本發(fā)明實(shí)施例中,CPU將依次對(duì)有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),將校驗(yàn)正確的OTP 區(qū)塊的偏移地址保存在CPU的寄存器中。
在本發(fā)明實(shí)施例中,通過對(duì)有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),能夠有效的避免運(yùn)行錯(cuò)誤的用戶程序?qū)е滦酒\(yùn)行不正?;蛘哒`操作,且通過將校驗(yàn)正確的OTP區(qū)塊的偏移地址保存到CPU寄存器中,使得CPU能夠正確高效訪問到用戶程序,改善了 OTP存儲(chǔ)器的使用性能。
為了更好的理解本發(fā)明中的技術(shù)方案,請(qǐng)參閱圖5,為本發(fā)明實(shí)施例中一種配置表的校驗(yàn)方法的實(shí)施例,包括
501、根據(jù)主配置表的標(biāo)識(shí)碼,確定主配置表所在的OTP區(qū)塊;
502、對(duì)OTP區(qū)塊中的主配置表進(jìn)行CRC校驗(yàn);
在本發(fā)明實(shí)施例中,配置表為主配置表或者備份配置表,即燒錄控制器在進(jìn)行燒錄時(shí),OTP存儲(chǔ)器的配置表進(jìn)行了兩次有效的燒錄,芯片的CPU將根據(jù)主配置表的標(biāo)識(shí)碼, 確定主配置表所在的OTP區(qū)塊。
CPU通過配置表的標(biāo)識(shí)碼查找到主配置表之后,將對(duì)該主配置表進(jìn)行CRC校驗(yàn),并根據(jù)校驗(yàn)結(jié)果,確定OTP區(qū)塊中的數(shù)據(jù)是否通過CRC校驗(yàn)。
503、若OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則確定OTP區(qū)塊中的主配置表為校驗(yàn)正確的配置表;
504、若主配置表未通過CRC校驗(yàn),則根據(jù)備份配置表的標(biāo)識(shí)碼確定備份配置表所在的OTP區(qū)塊,對(duì)OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn),若OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則確定OTP區(qū)塊中的備份配置表為校驗(yàn)正確的配置表。
在本發(fā)明實(shí)施例中,若OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則可確定該OTP區(qū)塊中的主配置表為校驗(yàn)正確的配置表,若OTP區(qū)塊中的數(shù)據(jù)未通過CRC校驗(yàn),則需要對(duì)備份配置表進(jìn)行校驗(yàn),具體為根據(jù)備份配置表的標(biāo)識(shí)碼確定備份配置表所在的OTP區(qū)塊,對(duì)該OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn),若該OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則確定該OTP區(qū)塊中的備份配置表為校驗(yàn)正確的配置表。
需要說明的是,在本發(fā)明實(shí)施例中,若未查找到配置表,或者主配置表及備份配置表均未通過驗(yàn)證,或者兩個(gè)已燒錄相同數(shù)據(jù)塊的OTP區(qū)塊的數(shù)據(jù)驗(yàn)證均未通過,則生成指示信息,指示該OTP存儲(chǔ)器中的數(shù)據(jù)出現(xiàn)錯(cuò)位,不能正確運(yùn)行。
在本發(fā)明實(shí)施例中,通過利用備份配置表及備份數(shù)據(jù),能夠有效的提高OTP存儲(chǔ)器的利用率;通過對(duì)配置表及OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn),能夠有效的提高用戶程序運(yùn)行的可靠性及穩(wěn)定性;通過將通過驗(yàn)證的OTP區(qū)塊的偏移地址保存在CPU的寄存器中,能夠1有效的提高CPU訪問OTP存儲(chǔ)器中的數(shù)據(jù)的效率,改善了 OTP存儲(chǔ)器的使用性能。
下面將描述執(zhí)行圖1及圖2所示實(shí)施例的裝置,需要說明的是,該裝置可以是數(shù)據(jù)燒錄工具,或者是具有控制能力的芯片,請(qǐng)參閱圖6,為本發(fā)明實(shí)施例中改善OTP存儲(chǔ)器使用性能的裝置的實(shí)施例,包括
獲取單元601,用于確定OTP存儲(chǔ)器中將要燒錄數(shù)據(jù)的OTP區(qū)塊及OTP區(qū)塊存儲(chǔ)空間的大小,及將待燒錄數(shù)據(jù)按照OTP區(qū)塊的存儲(chǔ)空間的大小劃分?jǐn)?shù)據(jù)塊,確定起始數(shù)據(jù)塊及起始空片OTP區(qū)塊;
數(shù)據(jù)燒錄處理單元602,用于用于將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中,啟動(dòng)循環(huán)冗余校驗(yàn)碼CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的CRC碼;,根據(jù)所述CRC碼,啟動(dòng)CRC電路對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn);若所述OTP區(qū)塊中的數(shù)據(jù)未通過CRC校驗(yàn),則確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行所述將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中,啟動(dòng) CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的CRC碼的步驟;若所述OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則將所述OTP區(qū)塊的偏移地址、有效標(biāo)記位及所述數(shù)據(jù)塊的CRC碼寫入所述OTP存儲(chǔ)器對(duì)應(yīng)的配置表中;判斷所述數(shù)據(jù)塊是否為所述待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊;若所述數(shù)據(jù)塊不是所述待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,所述確定下一個(gè)待燒錄的數(shù)據(jù)塊及下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行所述將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中,啟動(dòng)CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的CRC碼的步驟;若所述數(shù)據(jù)塊為所述待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,則停止數(shù)據(jù)燒錄;
配置表燒錄單元603,用于確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,將所述配置表燒錄到所述OTP區(qū)塊中。
為了更好的理解本發(fā)明實(shí)施例中的裝置,請(qǐng)參閱圖7,為本發(fā)明實(shí)施例中改善OTP 存儲(chǔ)器使用性能的另一個(gè)實(shí)施例,包括
圖6所示實(shí)施例中描述的獲取單元601,數(shù)據(jù)燒錄處理單元602,配置表燒錄單元 603,且與圖6所示實(shí)施例描述的內(nèi)容相似,此處不再贅述。
其中,獲取單元601包括
劃分單元701,用于若OTP存儲(chǔ)器為第一次進(jìn)行數(shù)據(jù)燒錄,則根據(jù)待燒錄數(shù)據(jù)的數(shù)據(jù)量的大小,將OTP存儲(chǔ)器的存儲(chǔ)空間劃分為至少兩個(gè)OTP區(qū)塊;
寫入單元702,用于將OTP區(qū)塊的存儲(chǔ)空間的大小寫入OTP區(qū)塊的配置表中;
區(qū)塊大小獲取單元703,用于若OTP存儲(chǔ)器為非第一次進(jìn)行數(shù)據(jù)燒錄,則從OTP存儲(chǔ)器的配置表中獲取OTP區(qū)塊的大小。
在本發(fā)明實(shí)施例中,通過將OTP存儲(chǔ)器的存儲(chǔ)空間劃分為OTP區(qū)塊,且將待燒錄的數(shù)據(jù)按照OTP區(qū)塊的存儲(chǔ)空間的大小依次燒錄到OTP區(qū)塊中,每次在將數(shù)據(jù)塊燒錄到OTP 區(qū)塊時(shí),將啟動(dòng)CRC電路生產(chǎn)該數(shù)據(jù)塊的CRC碼,該數(shù)據(jù)塊燒錄完之后,對(duì)該OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn),若未通過校驗(yàn),則說明出現(xiàn)壞塊,則將未燒錄成功的數(shù)據(jù)塊再次進(jìn)行燒錄,直至成功為止,使得OTP存儲(chǔ)器中即使出現(xiàn)壞塊,也不會(huì)導(dǎo)致OTP存儲(chǔ)器不能使用的情況,提高了 OTP存儲(chǔ)器的良品率,且還可以通過將待燒錄數(shù)據(jù)進(jìn)行備份的方式,進(jìn)一步提高 OTP存儲(chǔ)器中的用戶程序運(yùn)行的可靠性,改善了 OTP存儲(chǔ)器的性能。
下面將描述執(zhí)行圖4及圖5所示實(shí)施例的裝置,該裝置可以是芯片中的CPU,請(qǐng)參閱圖8,為本發(fā)明實(shí)施例中改善OTP存儲(chǔ)器使用性能的裝置的實(shí)施例包括
配置表獲取單元801,OTP存儲(chǔ)器所在的芯片上電后,獲取OTP存儲(chǔ)器中校驗(yàn)正確的配置表;區(qū)塊獲取單元802,用于根據(jù)配置表,獲取OTP存儲(chǔ)器中保存的有效OTP區(qū)塊;校驗(yàn)保存單元803,用于依次對(duì)有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),將校驗(yàn)正確的OTP區(qū)塊的偏移地址保存在CPU的寄存器中。在本發(fā)明實(shí)施例中,通過對(duì)有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),能夠有效的避免運(yùn)行錯(cuò)誤的用戶程序?qū)е滦酒\(yùn)行不正?;蛘哒`操作,且通過將校驗(yàn)正確的OTP區(qū)塊的偏移地址保存到CPU寄存器中,使得CPU能夠正確高效訪問到用戶程序,改善了 OTP存儲(chǔ)器的使用性能。為了更好的理解本發(fā)明實(shí)施例中的裝置,請(qǐng)參閱圖9,為本發(fā)明實(shí)施例中改善OTP 存儲(chǔ)器使用性能的裝置的實(shí)施例,包括圖8所示實(shí)施例中描述的配置表獲取單元801,區(qū)塊獲取單元802,校驗(yàn)保存單元 803,且與圖8所示實(shí)施例中描述的內(nèi)容相似,此處不再贅述。其中,配置表獲取單元801包括主配置表校驗(yàn)單元901,用于根據(jù)主配置表的標(biāo)識(shí)碼,確定所述主配置表所在的 OTP區(qū)塊;對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn);若所述OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn), 則確定所述OTP區(qū)塊中的主配置表為所述校驗(yàn)正確的配置表;備份配置表校驗(yàn)單元902,用于若所述主配置表未通過CRC校驗(yàn),則根據(jù)備份配置表的標(biāo)識(shí)碼確定所述備份配置表所在的OTP區(qū)塊,對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn), 當(dāng)所述OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則確定所述OTP區(qū)塊中的備份配置表為所述校驗(yàn)正確的配置表。需要說明的是,在本發(fā)明實(shí)施例中,若未查找到配置表,或者主配置表及備份配置表均未通過驗(yàn)證,或者兩個(gè)已燒錄相同數(shù)據(jù)塊的OTP區(qū)塊的數(shù)據(jù)驗(yàn)證均未通過,則生成指示信息,指示該OTP存儲(chǔ)器中的數(shù)據(jù)出現(xiàn)錯(cuò)位,不能正確運(yùn)行。在本發(fā)明實(shí)施例中,通過利用備份配置表及備份數(shù)據(jù),能夠有效的提高OTP存儲(chǔ)器的利用率;通過對(duì)配置表及OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn),能夠有效的提高用戶程序運(yùn)行的可靠性及穩(wěn)定性;通過將通過驗(yàn)證的OTP區(qū)塊的偏移地址保存在CPU的寄存器中,能夠有效的提高CPU訪問OTP存儲(chǔ)器中的數(shù)據(jù)的效率,改善了 OTP存儲(chǔ)器的使用性能。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。以上對(duì)本發(fā)明所提供的一種改善OTP存儲(chǔ)器的使用性能的方法及裝置進(jìn)行了詳細(xì)介紹,對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明實(shí)施例的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
權(quán)利要求
1.一種改善一次性編程OTP存儲(chǔ)器使用性能的方法,其特征在于,包括 確定OTP存儲(chǔ)器中空片OTP區(qū)塊及所述OTP區(qū)塊存儲(chǔ)空間的大小;將待燒錄數(shù)據(jù)按照所述OTP區(qū)塊的存儲(chǔ)空間的大小劃分?jǐn)?shù)據(jù)塊; 確定起始數(shù)據(jù)塊及起始空片OTP區(qū)塊;將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中,啟動(dòng)循環(huán)冗余校驗(yàn)碼CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的CRC碼;根據(jù)所述CRC碼,啟動(dòng)CRC電路對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn); 若所述OTP區(qū)塊中的數(shù)據(jù)未通過CRC校驗(yàn),則確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊, 返回執(zhí)行所述將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中,啟動(dòng)CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的 CRC碼的步驟;若所述OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則將所述OTP區(qū)塊的偏移地址、有效標(biāo)記位及所述數(shù)據(jù)塊的CRC碼寫入所述OTP存儲(chǔ)器對(duì)應(yīng)的配置表中; 判斷所述數(shù)據(jù)塊是否為所述待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊;若所述數(shù)據(jù)塊不是所述待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,所述確定下一個(gè)待燒錄的數(shù)據(jù)塊及下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行所述將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中,啟動(dòng)CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的CRC碼的步驟;若所述數(shù)據(jù)塊為所述待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,則停止數(shù)據(jù)燒錄; 確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,將所述配置表燒錄到所述OTP區(qū)塊中。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述確定OTP存儲(chǔ)器中空片OTP區(qū)塊及所述OTP區(qū)塊存儲(chǔ)空間的大小具體包括若所述OTP存儲(chǔ)器為第一次進(jìn)行數(shù)據(jù)燒錄,則根據(jù)待燒錄數(shù)據(jù)的數(shù)據(jù)量的大小,將所述OTP存儲(chǔ)器的存儲(chǔ)空間劃分為至少兩個(gè)OTP區(qū)塊;將所述OTP區(qū)塊的存儲(chǔ)空間的大小寫入所述OTP存儲(chǔ)器對(duì)應(yīng)的配置表中; 或者,若所述OTP存儲(chǔ)器為非第一次進(jìn)行數(shù)據(jù)燒錄,則從所述OTP存儲(chǔ)器的配置表中獲取空片OTP區(qū)塊的偏移位置及OTP區(qū)塊的大小。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述則將所述OTP區(qū)塊的偏移地址、有效標(biāo)記位及所述數(shù)據(jù)塊的CRC碼寫入所述配置表中之后還包括判斷所述數(shù)據(jù)塊是否已經(jīng)完成兩次有效的燒錄到OTP區(qū)塊的過程,若否,則確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行所述啟動(dòng)CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的CRC碼, 將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中的步驟。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將所述配置表燒錄到所述OTP區(qū)塊中包括將所述配置表燒錄到所述OTP區(qū)塊中,啟動(dòng)CRC電路生成所述配置表對(duì)應(yīng)的CRC碼; 根據(jù)所述CRC碼,啟動(dòng)所述CRC電路對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn); 若所述OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則將所述配置表的CRC碼保存到所述配置表中,設(shè)置所述配置表的標(biāo)識(shí)碼,當(dāng)所述配置表已完成兩次有效的燒錄之后,停止所述配置表的燒錄;若所述OTP區(qū)塊中的數(shù)據(jù)未通過CRC校驗(yàn),則所述確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行所述啟動(dòng)CRC電路生成所述配置表對(duì)應(yīng)的CRC碼,將所述配置表燒錄到所述 OTP區(qū)塊中的步驟。
5.一種改善一次性編程OTP存儲(chǔ)器使用性能的方法,其特征在于,包括OTP存儲(chǔ)器所在的芯片上電后,所述芯片中的中央處理器CPU獲取所述OTP存儲(chǔ)器中校驗(yàn)正確的配置表;根據(jù)所述配置表,獲取所述OTP存儲(chǔ)器中保存的有效OTP區(qū)塊;依次對(duì)所述有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),將校驗(yàn)正確的OTP區(qū)塊的偏移地址保存在所述CPU的寄存器中。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述依次對(duì)所述有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),將校驗(yàn)正確的OTP區(qū)塊的偏移地址保存在所述CPU的寄存器中具體包括獲取起始有效OTP區(qū)塊;對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn);當(dāng)所述OTP區(qū)塊中的數(shù)據(jù)通過校驗(yàn)時(shí),將所述OTP區(qū)塊的偏移地址保存到所述CPU的寄存器中,確定下下一個(gè)有效OTP區(qū)塊的位置,返回執(zhí)行所述對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行 CRC校驗(yàn)的步驟;當(dāng)所述OTP區(qū)塊中的數(shù)據(jù)未通過校驗(yàn)時(shí),確定下一個(gè)有效OTP區(qū)塊的位置,返回執(zhí)行所述對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn)的步驟。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述配置表為主配置表或者備份配置表;則所述芯片中的中央處理器CPU獲取所述OTP存儲(chǔ)器中校驗(yàn)正確的配置表包括根據(jù)主配置表的標(biāo)識(shí)碼,確定所述主配置表所在的OTP區(qū)塊;對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn);若所述OTP區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則確定所述OTP區(qū)塊中的主配置表為所述校驗(yàn)正確的配置表;若所述主配置表未通過CRC校驗(yàn),則根據(jù)備份配置表的標(biāo)識(shí)碼確定所述備份配置表所在的OTP區(qū)塊,對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn),若所述OTP區(qū)塊中的數(shù)據(jù)通過CRC 校驗(yàn),則確定所述OTP區(qū)塊中的備份配置表為所述校驗(yàn)正確的配置表。
8.一種改善一次性編程OTP存儲(chǔ)器使用性能的裝置,其特征在于,包括獲取單元,用于確定OTP存儲(chǔ)器中將要燒錄數(shù)據(jù)的OTP區(qū)塊及所述OTP區(qū)塊存儲(chǔ)空間的大小,及將待燒錄數(shù)據(jù)按照所述OTP區(qū)塊的存儲(chǔ)空間的大小劃分?jǐn)?shù)據(jù)塊,確定起始數(shù)據(jù)塊及起始空片OTP區(qū)塊;數(shù)據(jù)燒錄處理單元,用于將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中,啟動(dòng)循環(huán)冗余校驗(yàn)碼 CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的CRC碼;對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行兩次CRC校驗(yàn),根據(jù)所述CRC碼,啟動(dòng)CRC電路對(duì)所述OTP區(qū)塊中的數(shù)據(jù)進(jìn)行CRC校驗(yàn);若所述OTP區(qū)塊中的數(shù)據(jù)未通過CRC校驗(yàn),則確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行所述將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中,啟動(dòng)CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的CRC碼的步驟;若所述OTP 區(qū)塊中的數(shù)據(jù)通過CRC校驗(yàn),則將所述OTP區(qū)塊的偏移地址、有效標(biāo)記位及所述數(shù)據(jù)塊的 CRC碼寫入所述OTP存儲(chǔ)器對(duì)應(yīng)的配置表中;判斷所述數(shù)據(jù)塊是否為所述待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊;若所述數(shù)據(jù)塊不是所述待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,所述確定下一個(gè)待燒錄的數(shù)據(jù)塊及下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,返回執(zhí)行所述將所述數(shù)據(jù)塊燒錄到所述OTP區(qū)塊中,啟動(dòng)CRC電路生成所述數(shù)據(jù)塊對(duì)應(yīng)的CRC碼的步驟;若所述數(shù)據(jù)塊為所述待燒錄數(shù)據(jù)的最后一個(gè)數(shù)據(jù)塊,則停止數(shù)據(jù)燒錄;配置表燒錄單元,用于確定下一個(gè)待燒錄數(shù)據(jù)的空片OTP區(qū)塊,將所述配置表燒錄到所述OTP區(qū)塊中。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述獲取單元包括劃分單元,用于若所述OTP存儲(chǔ)器為第一次進(jìn)行數(shù)據(jù)燒錄,則根據(jù)待燒錄數(shù)據(jù)的數(shù)據(jù)量的大小,將所述OTP存儲(chǔ)器的存儲(chǔ)空間劃分為至少兩個(gè)OTP區(qū)塊;寫入單元,用于將所述OTP區(qū)塊的存儲(chǔ)空間的大小寫入所述OTP區(qū)塊的配置表中; 或者,區(qū)塊大小獲取單元,用于若所述OTP存儲(chǔ)器為非第一次進(jìn)行數(shù)據(jù)燒錄,則從所述OTP存儲(chǔ)器的配置表中獲取OTP區(qū)塊的大小。
10.一種改善一次性編程OTP存儲(chǔ)器使用性能的裝置,其特征在于,包括配置表獲取單元,OTP存儲(chǔ)器所在的芯片上電后,獲取所述OTP存儲(chǔ)器中校驗(yàn)正確的配置表;區(qū)塊獲取單元,用于根據(jù)所述配置表,獲取所述OTP存儲(chǔ)器中保存的有效OTP區(qū)塊; 校驗(yàn)保存單元,用于依次對(duì)所述有效OTP區(qū)塊進(jìn)行CRC校驗(yàn),將校驗(yàn)正確的OTP區(qū)塊的偏移地址保存在所述CPU的寄存器中。
全文摘要
本發(fā)明實(shí)施例公開了一種改善一次性可編程存儲(chǔ)器使用性能的方法及裝置,用于數(shù)據(jù)的燒錄及啟動(dòng)程序的運(yùn)行。本發(fā)明實(shí)施例方法包括確定OTP存儲(chǔ)器中空片OTP區(qū)塊及OTP區(qū)塊存儲(chǔ)空間的大?。粚⒋裏洈?shù)據(jù)按照OTP區(qū)塊的大小劃分?jǐn)?shù)據(jù)塊,確定起始數(shù)據(jù)塊及起始OTP區(qū)塊,依次將數(shù)據(jù)塊燒錄OTP區(qū)塊中,且完成數(shù)據(jù)塊燒錄之后,對(duì)燒入該數(shù)據(jù)塊的OTP區(qū)塊進(jìn)行CRC校驗(yàn),若通過CRC校驗(yàn),則對(duì)下個(gè)待燒錄數(shù)據(jù)塊進(jìn)行燒錄及校驗(yàn)的過程,若未通過CRC校驗(yàn),則將未燒錄成功的數(shù)據(jù)塊再次進(jìn)行燒錄及校驗(yàn)的過程,直至燒錄成功,再對(duì)下一個(gè)數(shù)據(jù)塊進(jìn)行燒錄校驗(yàn),提高了OTP存儲(chǔ)器的良品率。
文檔編號(hào)G06F11/10GK102508732SQ20111032775
公開日2012年6月20日 申請(qǐng)日期2011年10月25日 優(yōu)先權(quán)日2011年10月25日
發(fā)明者胡家安, 韋明 申請(qǐng)人:深圳芯邦科技股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
嫩江县| 淳化县| 沙坪坝区| 连江县| 林甸县| 宁城县| 桂林市| 太保市| 弥勒县| 孝感市| 澄迈县| 平乡县| 三都| 清河县| 瑞丽市| 图木舒克市| 金华市| 石家庄市| 盖州市| 塔河县| 沐川县| 金塔县| 大兴区| 白河县| 潜山县| 鄂托克旗| 云南省| 兴隆县| 利辛县| 论坛| 拉萨市| 齐河县| 乌拉特中旗| 健康| 登封市| 咸宁市| 汤原县| 定陶县| 思茅市| 泰兴市| 炎陵县|