本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種芯片配置信息處理方法及裝置。
背景技術(shù):
芯片的配置信息常用于區(qū)分芯片方向、芯片特性等等,以便于芯片能適用于不同應(yīng)用場(chǎng)景,一般來(lái)說(shuō),配置信息會(huì)存儲(chǔ)在芯片的非易失存儲(chǔ)器(non-volatilememory,nvm)中,當(dāng)芯片上電工作時(shí),系統(tǒng)會(huì)自動(dòng)從nvm中讀取相關(guān)的配置信息。
然而,nvm作為存儲(chǔ)邏輯單元,供電電壓、工作溫度、數(shù)據(jù)保持時(shí)間等等因素都可能影響到從nvm中讀取配置信息的穩(wěn)定性,例如,若供電電壓未達(dá)到設(shè)定最低工作電壓,則很可能因?yàn)楣╇婋妷翰蛔悖鴮?dǎo)致從nvm中讀取到的配置信息仍為初始值,進(jìn)而影響到芯片的正常工作。
顯然,現(xiàn)有技術(shù)中,當(dāng)芯片遭遇異常環(huán)境(如,低溫、高溫或低壓等等)或惡意攻擊(如,激光照射或電壓攻擊等等)時(shí),從nvm中讀取配置信息會(huì)極其不穩(wěn)定,從而讀取到錯(cuò)誤的配置信息,并使用錯(cuò)誤的配置信息進(jìn)行配置,進(jìn)而導(dǎo)致芯片工作異常。
有鑒于此,需重新設(shè)計(jì)一種芯片配置信息處理方法,以克服上述缺陷。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種芯片配置信息處理方法及裝置,用以解決現(xiàn)有的芯片配置信息讀取易受異常環(huán)境影響而導(dǎo)致讀取到錯(cuò)誤配置信息影響芯片正常工作,以及遭受惡意破壞而使芯片進(jìn)入非安全狀態(tài)的問(wèn)題。
本發(fā)明實(shí)施例提供的具體技術(shù)方案如下:
一種芯片配置信息處理方法,包括:
從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息;
分別針對(duì)讀取到的至少一組所述配置信息中的每一組配置信息,執(zhí)行以下操作:
基于預(yù)設(shè)校驗(yàn)算法,計(jì)算一組配置信息對(duì)應(yīng)的校驗(yàn)值;
從第二指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的,與所述一組配置信息對(duì)應(yīng)的參考校驗(yàn)值;
判斷所述校驗(yàn)值與所述參考校驗(yàn)值是否一致,確定不一致時(shí),基于所述一組配置信息對(duì)應(yīng)的預(yù)設(shè)處理方式,確定所述一組配置信息對(duì)應(yīng)的輸出結(jié)果。
可選的,從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息之前,進(jìn)一步包括:
基于預(yù)設(shè)規(guī)則,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,獲得若干組配置信息,并確定每一組配置信息對(duì)應(yīng)的處理方式;
基于預(yù)設(shè)校驗(yàn)算法,分別計(jì)算至少一組配置信息各自對(duì)應(yīng)的參考校驗(yàn)值,獲得若干參考校驗(yàn)值,其中,一組配置信息對(duì)應(yīng)一個(gè)參考校驗(yàn)值;
將獲得的所述若干組配置信息保存在第一指定存儲(chǔ)區(qū)域,以及將獲得的所述若干參考校驗(yàn)值保存在第二指定存儲(chǔ)區(qū)域。
可選的,基于預(yù)設(shè)規(guī)則,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,獲得若干組配置信息,包括:
基于配置信息的功能,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,獲得若干組配置信息,其中,所述若干組配置信息至少包括以下任意一組或任意組合:模擬配置信息、數(shù)字配置信息和安全配置信息。
可選的,從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息,包括:
從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息,并將讀取到的所述各組配置信息鎖存在第一指定寄存器組中;
從所述第一指定寄存器組中讀取已鎖存的所述各組配置信息。
可選的,基于所述一組配置信息對(duì)應(yīng)的處理方式,確定所述一組配置信息對(duì)應(yīng)的輸出結(jié)果,包括:
確定所述一組配置信息為模擬配置信息時(shí),輸出一組預(yù)設(shè)的與所述一組配置信息對(duì)應(yīng)的模擬參數(shù);
確定所述一組配置信息為數(shù)字配置信息時(shí),直接輸出所述一組配置信息;
確定所述一組配置信息為安全配置信息時(shí),啟動(dòng)安全模式,并關(guān)閉調(diào)試口。
可選的,進(jìn)一步包括:
確定一致時(shí),直接輸出所述一組配置信息。
一種芯片配置信息處理裝置,包括:
讀取單元,用于從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息;
校驗(yàn)單元,用于分別針對(duì)讀取到的至少一組所述配置信息中的每一組配置信息,執(zhí)行以下操作:
基于預(yù)設(shè)校驗(yàn)算法,計(jì)算一組配置信息對(duì)應(yīng)的校驗(yàn)值;
從第二指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的,與所述一組配置信息對(duì)應(yīng)的參考校驗(yàn)值;
判斷所述校驗(yàn)值與所述參考校驗(yàn)值是否一致,確定不一致時(shí),基于所述一組配置信息對(duì)應(yīng)的預(yù)設(shè)處理方式,確定所述一組配置信息對(duì)應(yīng)的輸出結(jié)果。
可選的,所述裝置還包括預(yù)處理單元,所述預(yù)處理單元用于:
從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息之前,執(zhí)行以下操作:
基于預(yù)設(shè)規(guī)則,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,獲得若干組配置信息,并確定每一組配置信息對(duì)應(yīng)的處理方式;
基于預(yù)設(shè)校驗(yàn)算法,分別計(jì)算至少一組配置信息各自對(duì)應(yīng)的參考校驗(yàn)值,獲得若干參考校驗(yàn)值,其中,一組配置信息對(duì)應(yīng)一個(gè)參考校驗(yàn)值;
將獲得的所述若干組配置信息保存在第一指定存儲(chǔ)區(qū)域,以及將獲得的所述若干參考校驗(yàn)值保存在第二指定存儲(chǔ)區(qū)域。
可選的,基于預(yù)設(shè)規(guī)則,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,獲得若干組配置信息時(shí),所述預(yù)處理單元用于:
基于配置信息的功能,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,獲得若干組配置信息,其中,所述若干組配置信息至少包括以下任意一組或任意組合:模擬配置信息、數(shù)字配置信息和安全配置信息。
可選的,從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息時(shí),所述讀取單元用于:
從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息,并將讀取到的所述各組配置信息鎖存在第一指定寄存器組中;
從所述第一指定寄存器組中讀取已鎖存的所述各組配置信息。
可選的,基于所述一組配置信息對(duì)應(yīng)的預(yù)設(shè)處理方式,確定所述一組配置信息對(duì)應(yīng)的輸出結(jié)果,所述校驗(yàn)單元用于:
確定所述一組配置信息為模擬配置信息時(shí),輸出一組預(yù)設(shè)的與所述一組配置信息對(duì)應(yīng)的模擬參數(shù);
確定所述一組配置信息為數(shù)字配置信息時(shí),直接輸出所述一組配置信息;
確定所述一組配置信息為安全配置信息時(shí),啟動(dòng)安全模式,并關(guān)閉調(diào)試口。
可選的,所述校驗(yàn)單元還用于:
確定一致時(shí),直接輸出所述一組配置信息。
一種電子設(shè)備,包含如權(quán)利要求6至12中任一項(xiàng)所述的裝置。
本發(fā)明實(shí)施例中,通過(guò)從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息,針對(duì)讀取到的至少一組配置信息中的每一組配置信息,均計(jì)算相應(yīng)的校驗(yàn)值,并判斷計(jì)算所得的校驗(yàn)值與保存在第二指定存儲(chǔ)區(qū)域的參考校驗(yàn)值是否一致,確定不一致時(shí),基于各組配置信息各自的預(yù)設(shè)處理方式,確定輸出結(jié)果,這樣,芯片上電后讀取到的配置信息,即便受到了異常環(huán)境的干擾或惡意破壞,都能基于自身對(duì)應(yīng)的預(yù)設(shè)處理方式進(jìn)行相應(yīng)處理,使得最后輸出結(jié)果不會(huì)影響芯片的正常工作,大大提高了芯片系統(tǒng)的穩(wěn)定性和安全性,而且,邏輯結(jié)構(gòu)簡(jiǎn)單,占用資源少,適用范圍廣。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例中待錄入的最新配置信息預(yù)處理流程圖;
圖2為本發(fā)明實(shí)施例中配置信息處理方法流程圖;
圖3為本發(fā)明實(shí)施例中配置信息處理過(guò)程示意圖;
圖4為本發(fā)明實(shí)施例中配置信息處理裝置結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了解決現(xiàn)有的芯片配置信息讀取易受異常環(huán)境影響而導(dǎo)致讀取到的錯(cuò)誤配置信息影響芯片正常工作,以及遭受惡意破壞而使芯片進(jìn)入非安全狀態(tài)的問(wèn)題,本發(fā)明實(shí)施例中,重新設(shè)計(jì)了一種芯片配置信息處理方法,該方法為,從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息,并分別針對(duì)讀取到的至少一組上述配置信息的每組配置信息,執(zhí)行以下操作:基于預(yù)設(shè)校驗(yàn)算法,計(jì)算一組配置信息對(duì)應(yīng)的校驗(yàn)值,然后,從第二指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的,與所述一組配置信息對(duì)應(yīng)的參考校驗(yàn)值,并判斷計(jì)算所得的校驗(yàn)值與對(duì)應(yīng)的參考校驗(yàn)值是否一致,確定不一致時(shí),基于上述一組配置信息對(duì)應(yīng)的預(yù)設(shè)處理方式,確定上述一組配置信息對(duì)應(yīng)的輸出結(jié)果。
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,并不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
下面將通過(guò)具體實(shí)施例對(duì)本發(fā)明的方案進(jìn)行詳細(xì)描述,當(dāng)然,本發(fā)明并不限于以下實(shí)施例。
現(xiàn)有技術(shù)下,芯片在上電工作前,會(huì)提前將芯片最新配置信息燒錄在非易失存儲(chǔ)器(non-volatilememory,nvm),這樣,當(dāng)芯片上電后,數(shù)字電路會(huì)從nvm中讀取已存儲(chǔ)的最新配置信息,然而,由于從nvm中讀取配置信息時(shí)容易受異常工作環(huán)境的影響,因此,導(dǎo)致讀取到的配置信息可能出現(xiàn)錯(cuò)誤,或者,讀取到的配置信息并不是當(dāng)前最新配置信息,而是上一次讀取的配置信息。
本發(fā)明實(shí)施例中,預(yù)先對(duì)芯片最新配置信息分組保存在第一指定存儲(chǔ)區(qū)域,并計(jì)算至少一組配置信息的參考校驗(yàn)值,且將上述至少一組配置信息的參考校驗(yàn)值保存在第二指定存儲(chǔ)區(qū)域,當(dāng)芯片上電后,數(shù)字電路從第一指定存儲(chǔ)區(qū)域讀取到各組配置信息時(shí),計(jì)算讀取到的至少一組上述配置信息各自對(duì)應(yīng)的校驗(yàn)值,若存在一組配置信息的校驗(yàn)值與保存在第二指定存儲(chǔ)區(qū)域的參考校驗(yàn)值不一致,那么,數(shù)字電路在讀取該組配置信息時(shí),可能受到了干擾,或者,可能遭受了惡意攻擊,導(dǎo)致讀取到的該組配置信息,與原存入第一指定存儲(chǔ)區(qū)域的該組配置信息不一致,因此,需要對(duì)受到影響的該組配置信息進(jìn)行相應(yīng)處理,以使得芯片不受該組配置信息的影響而能正常工作。
為了實(shí)現(xiàn)上述方案,參閱圖1所示,本發(fā)明實(shí)施例中,在芯片上電之前,預(yù)先對(duì)芯片最新配置信息進(jìn)行燒錄,即對(duì)芯片最新配置信息進(jìn)行預(yù)處理,以便芯片上電后,能基于最新配置信息進(jìn)行工作,預(yù)處理方法流程如下:
步驟100:基于預(yù)設(shè)規(guī)則,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,獲得若干組配置信息,并確定每一組配置信息對(duì)應(yīng)的預(yù)設(shè)處理方式。
具體的,本發(fā)明實(shí)施例中,基于待錄入芯片的最新配置信息集包含的各配置信息的功能,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,本發(fā)明實(shí)施例中,可基于配置信息的模擬性、數(shù)字性和安全性,將待錄入芯片的最新配置信息集劃分為模擬配置信息、數(shù)字配置信息和安全配置信息,共三組配置信息。
例如,待錄入芯片的最新配置信息集為“內(nèi)核電壓為3.3v、內(nèi)部時(shí)鐘方式為鎖相環(huán)pll、看門(mén)狗使能、系統(tǒng)安全使能”,若按照模擬性、數(shù)字性和安全性,對(duì)上述最新配置信息集進(jìn)行分組,則可獲得模擬配置信息“內(nèi)核電壓為3.3v、內(nèi)部時(shí)鐘方式為鎖相環(huán)pll”,數(shù)字配置信息“看門(mén)狗使能”和安全配置信息“系統(tǒng)安全使能”。
進(jìn)一步地,確定待錄入芯片的最新配置信息集的分組后,可為每一組配置信息,確定對(duì)應(yīng)的預(yù)設(shè)處理方式。
具體的,以模擬配置信息、數(shù)字配置信息和安全配置信息進(jìn)行說(shuō)明,本發(fā)明實(shí)施例中,若讀取到的一組配置信息為模擬配置信息,則輸出一組預(yù)設(shè)的與上述一組配置信息對(duì)應(yīng)的模擬參數(shù);若讀取到的一組配置信息為數(shù)字配置信息,則直接輸出上述一組配置信息;若讀取到的一組配置信息為安全配置信息,則啟動(dòng)安全模式,并關(guān)閉調(diào)試口。
當(dāng)然,本發(fā)明實(shí)施例中,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,并不限定于以上一種分組方式,即,并不限定于模擬配置信息、數(shù)字配置信息和安全配置信息這三組,還可以基于實(shí)際需求進(jìn)行調(diào)整,進(jìn)一步地,若分組方式基于實(shí)際需求進(jìn)行調(diào)整,那么,針對(duì)新分組方式獲得的每一組配置信息,各自對(duì)應(yīng)的處理方式,也可基于實(shí)際需求進(jìn)行相應(yīng)調(diào)整。
步驟110:基于預(yù)設(shè)校驗(yàn)算法,分別計(jì)算至少一組上述配置信息各自對(duì)應(yīng)的參考校驗(yàn)值,獲得若干參考校驗(yàn)值,其中,一組配置信息對(duì)應(yīng)一個(gè)參考校驗(yàn)值。
具體的,本發(fā)明實(shí)施例中,可以預(yù)先基于預(yù)設(shè)校驗(yàn)算法,分別計(jì)算已分組的各組配置信息中至少上述一組配置信息各自對(duì)應(yīng)的參考校驗(yàn)值,獲得若干參考校驗(yàn)值,其中,一組配置信息對(duì)應(yīng)一個(gè)參考校驗(yàn)值。
較佳的,本發(fā)明實(shí)施例中,采用的校驗(yàn)算法為循環(huán)冗余校驗(yàn)算法(cyclicredundancycheck,crc),進(jìn)而,基于crc算法計(jì)算至少一組配置信息各自對(duì)應(yīng)的參考校驗(yàn)值為crc值,當(dāng)然,本實(shí)施例中,并不限于crc算法,還可以采用其它校驗(yàn)算法。
例如,繼續(xù)以上述示例進(jìn)行說(shuō)明,經(jīng)計(jì)算,模擬配置信息對(duì)應(yīng)的參考校驗(yàn)值為crc1,數(shù)字配置信息對(duì)應(yīng)的參考校驗(yàn)值為crc2,安全配置信息對(duì)應(yīng)的參考校驗(yàn)值為crc3。
步驟120:將獲得的若干組配置信息保存在第一指定存儲(chǔ)區(qū)域,以及將獲得的若干參考校驗(yàn)值保存在第二指定存儲(chǔ)區(qū)域。
具體的,確定待錄入芯片的最新配置信息的分組,以及各組配置信息各自對(duì)應(yīng)的參考校驗(yàn)值之后,可將獲得若干組配置信息保存在第一指定存儲(chǔ)區(qū)域,以及將獲得的若干參考校驗(yàn)值保存在第二指定區(qū)域,較佳的,本發(fā)明實(shí)施例中,第一指定存儲(chǔ)區(qū)域和第二指定存儲(chǔ)區(qū)域均為nvm的部分存儲(chǔ)區(qū)域。
至此,完成待錄入芯片的最新配置信息集的預(yù)處理操作后,芯片nvm中就已保存了最新配置信息集,進(jìn)一步地,參閱圖2所示,基于已保存在第一指定存儲(chǔ)區(qū)域的各組配置信息和已保存在第二指定存儲(chǔ)區(qū)域的各個(gè)參考校驗(yàn)值,本發(fā)明實(shí)施例中,對(duì)于可校驗(yàn)的各組配置信息執(zhí)行以下處理流程,以對(duì)讀取到的錯(cuò)誤的配置信息及時(shí)進(jìn)行調(diào)整:
步驟200:從第一指定存儲(chǔ)區(qū)域讀取預(yù)先保存的一組配置信息,以及從第二指定存儲(chǔ)區(qū)域讀取與上述一組配置信息對(duì)應(yīng)的參考校驗(yàn)值。
具體的,先從第一指定存儲(chǔ)區(qū)域讀取預(yù)先保存的至少一組配置信息,并將讀取到的上述至少一組配置信息鎖存在第一指定寄存器組中,以及從第二指定存儲(chǔ)區(qū)域讀取與上述至少一組配置信息各自對(duì)應(yīng)的參考校驗(yàn)值,并將讀取到的各個(gè)參考校驗(yàn)值鎖存在第二指定寄存器組中。
進(jìn)一步地,從第一指定寄存器組中讀取一組配置信息,以及從第二指定寄存器組中讀取與上述一組配置信息對(duì)應(yīng)的參考校驗(yàn)值。
步驟210:計(jì)算一組配置信息對(duì)應(yīng)的校驗(yàn)值,并判斷計(jì)算所得的校驗(yàn)值與讀取的參考校驗(yàn)值是否一致,若是,則執(zhí)行步驟220,否則,執(zhí)行步驟230。
具體的,基于預(yù)設(shè)校驗(yàn)算法,計(jì)算上述一組配置信息對(duì)應(yīng)的校驗(yàn)值,其中,本步驟采用的校驗(yàn)算法,應(yīng)與預(yù)處理階段,計(jì)算各組配置信息的參考校驗(yàn)值采用的校驗(yàn)算法相同。
進(jìn)一步地,確定上述一組配置信息對(duì)應(yīng)的校驗(yàn)值之后,判斷計(jì)算所得的校驗(yàn)值是否與讀取到的參考校驗(yàn)值一致,若是,則執(zhí)行步驟220,否則,執(zhí)行步驟230。
例如,假設(shè)保存在第一指定存儲(chǔ)區(qū)域的一組配置信息為配置信息a,從第一指定存儲(chǔ)區(qū)域讀取到的上述一組配置信息為配置信息a’,且配置信息a保存在第二指定存儲(chǔ)區(qū)域的參考校驗(yàn)值為crc1,若基于配置信息a’計(jì)算所得的校驗(yàn)值為crc1,則執(zhí)行步驟220,否則,執(zhí)行步驟230。
步驟220:直接輸出上述一組配置信息。
具體的,確定基于讀取到的一組配置信息計(jì)算所得的校驗(yàn)值,與保存在第二指定存儲(chǔ)區(qū)域?qū)?yīng)的參考校驗(yàn)值一致時(shí),直接輸出上述一組配置信息。
例如,仍以上述示例進(jìn)行說(shuō)明,若配置信息a’計(jì)算所得的校驗(yàn)值為crc1,證明配置信息a’與配置信息a是相同的,可直接輸出配置信息a’。
步驟230:基于上述一組配置信息對(duì)應(yīng)的預(yù)設(shè)處理方式,確定上述一組配置信息對(duì)應(yīng)的輸出結(jié)果。
具體的,確定基于讀取到的一組配置信息計(jì)算所得的校驗(yàn)值,與保存在第二指定存儲(chǔ)區(qū)域?qū)?yīng)的參考校驗(yàn)值不一致時(shí),基于讀取到的一組配置信息對(duì)應(yīng)的預(yù)設(shè)處理方式,確定讀取到的上述一組配置信息對(duì)應(yīng)的輸出結(jié)果。
進(jìn)一步地,若讀取到的一組配置信息為模擬配置信息,則輸出一組預(yù)設(shè)的與上述一組配置信息對(duì)應(yīng)的模擬參數(shù);若讀取到的一組配置信息為數(shù)字配置信息,則直接輸出上述一組配置信息;若讀取到的一組配置信息為安全配置信息,則啟動(dòng)安全模式,并關(guān)閉調(diào)試口。
例如,仍以上述示例進(jìn)行說(shuō)明,若配置信息a’計(jì)算所得的校驗(yàn)值為crc2,證明配置信息a’與配置信息a是不相同的,若配置信息a’為模擬配置信息,那么,可以基于預(yù)設(shè)的各個(gè)模擬參數(shù),輸出一組可以替代配置信息a的模擬參數(shù),以便芯片的模擬電路能正常工作。
步驟240:判斷第一指定存儲(chǔ)區(qū)域是否存在未讀取的配置信息,若是,執(zhí)行步驟200,否則,執(zhí)行步驟250。
具體的,判斷第一指定存儲(chǔ)區(qū)域是否存在未讀取的配置信息,若仍存在未讀取的配置信息,則繼續(xù)讀取剩余的各組配置信息,并對(duì)讀取到的配置信息執(zhí)行上述處理操作,否則,執(zhí)行步驟250。
步驟250:結(jié)束配置信息的讀取操作,進(jìn)入下一工作狀態(tài)。
具體的,確定第一指定存儲(chǔ)區(qū)域燒錄的所有配置信息都已讀取完畢后,可以進(jìn)入芯片的下一工作狀態(tài)。
當(dāng)然,上述實(shí)施例中,是對(duì)可校驗(yàn)的各組配置信息執(zhí)行的處理流程,在實(shí)際應(yīng)用時(shí),若實(shí)際分組并不限于模擬配置信息、數(shù)字配置信息和安全配置信息三個(gè)組別,而是存在其他組別,對(duì)于其他組別可以是不經(jīng)過(guò)校驗(yàn)而直接輸出的。
下面結(jié)合具體的實(shí)施場(chǎng)景,對(duì)本發(fā)明上述實(shí)施例作進(jìn)一步詳細(xì)說(shuō)明,具體參閱圖3所示。
首先,當(dāng)芯片上電后,數(shù)字電路會(huì)從第一指定存儲(chǔ)區(qū)域(crcregion)中讀取各組配置信息,并將讀取到的各組配置信息鎖存在第一指定寄存器組m1中,以及從第二指定存儲(chǔ)區(qū)域(systemconfiguration)中讀取各個(gè)參考校驗(yàn)值,并將讀取到的各個(gè)參考校驗(yàn)值鎖存在第二指定寄存器組m2中。
然后,校驗(yàn)?zāi)Km3對(duì)m1中鎖存的各組配置信息進(jìn)行crc校驗(yàn),將上述各組配置信息的校驗(yàn)值與m1中存儲(chǔ)的各個(gè)對(duì)應(yīng)的參考校驗(yàn)值進(jìn)行比較,若某組配置信息的校驗(yàn)值與對(duì)應(yīng)的參考校驗(yàn)值相同,則表示校驗(yàn)通過(guò),輸出邏輯值“1”,若某組配置信息的校驗(yàn)值與對(duì)應(yīng)的參考校驗(yàn)值不同,則表示校驗(yàn)不通過(guò),輸出邏輯值“0”,最后,將各組配置信息的邏輯值輸出至處理模塊m4中。
最后,m4基于m3輸出的各個(gè)邏輯值,對(duì)數(shù)字電路讀取的各組配置信息進(jìn)行相應(yīng)調(diào)整,若某組配置信息的校驗(yàn)通過(guò),則直接輸出該組配置信息;若某組配置信息校驗(yàn)失敗,且確認(rèn)該組配置信息為模擬配置信息時(shí),輸出一組預(yù)設(shè)的模擬參數(shù),以便模擬電路能正常工作;若某組配置信息校驗(yàn)失敗,且確認(rèn)該組配置信息為數(shù)字配置信息時(shí),在不影響芯片工作的情況下,直接輸出讀取到的數(shù)字配置信息;若某組配置信息校驗(yàn)失敗,且確認(rèn)該組配置信息為安全配置信息時(shí),啟動(dòng)安全模式,關(guān)閉調(diào)試口,以防止源代碼被讀出或篡改。
基于上述實(shí)施例,參閱圖4所示,本發(fā)明實(shí)施例中,配置信息處理裝置,至少包括讀取單元40和校驗(yàn)單元41,其中,
讀取單元40,用于從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息;
校驗(yàn)單元41,用于分別針對(duì)讀取到的至少一組所述配置信息中的每一組配置信息,執(zhí)行以下操作:
基于預(yù)設(shè)校驗(yàn)算法,計(jì)算一組配置信息對(duì)應(yīng)的校驗(yàn)值;
從第二指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的,與所述一組配置信息對(duì)應(yīng)的參考校驗(yàn)值;
判斷所述校驗(yàn)值與所述參考校驗(yàn)值是否一致,確定不一致時(shí),基于所述一組配置信息對(duì)應(yīng)的預(yù)設(shè)處理方式,確定所述一組配置信息對(duì)應(yīng)的輸出結(jié)果。
可選的,所述裝置還包括預(yù)處理單元42,所述預(yù)處理單元42用于:
從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息之前,執(zhí)行以下操作:
基于預(yù)設(shè)規(guī)則,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,獲得若干組配置信息,并確定每一組配置信息對(duì)應(yīng)的處理方式;
基于預(yù)設(shè)校驗(yàn)算法,分別計(jì)算至少一組配置信息各自對(duì)應(yīng)的參考校驗(yàn)值,獲得若干參考校驗(yàn)值,其中,一組配置信息對(duì)應(yīng)一個(gè)參考校驗(yàn)值;
將獲得的所述若干組配置信息保存在第一指定存儲(chǔ)區(qū)域,以及將獲得的所述若干參考校驗(yàn)值保存在第二指定存儲(chǔ)區(qū)域。
可選的,基于預(yù)設(shè)規(guī)則,對(duì)待錄入芯片的最新配置信息集進(jìn)行分組,獲得若干組配置信息時(shí),所述預(yù)處理單元42用于:
基于配置信息的功能性,對(duì)芯片待錄入的最新配置信息集進(jìn)行分組,獲得若干組配置信息,其中,所述若干組配置信息至少包括以下任意一組或任意組合:模擬配置信息、數(shù)字配置信息和安全配置信息。
可選的,從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息時(shí),所述讀取單元40用于:
從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息,并將讀取到的所述各組配置信息鎖存在第一指定寄存器組中;
從所述第一指定寄存器組中讀取已鎖存的所述各組配置信息。
可選的,基于所述一組配置信息對(duì)應(yīng)的預(yù)設(shè)處理方式,確定所述一組配置信息對(duì)應(yīng)的輸出結(jié)果,所述校驗(yàn)單元41用于:
確定所述一組配置信息為模擬配置信息時(shí),輸出一組預(yù)設(shè)的與所述一組配置信息對(duì)應(yīng)的模擬參數(shù);
確定所述一組配置信息為數(shù)字配置信息時(shí),直接輸出所述一組配置信息;
確定所述一組配置信息為安全配置信息時(shí),啟動(dòng)安全模式,并關(guān)閉調(diào)試口。
可選的,所述校驗(yàn)單元41還用于:
確定一致時(shí),直接輸出所述一組配置信息。
綜上所述,本發(fā)明實(shí)施例中,通過(guò)從第一指定存儲(chǔ)區(qū)域中讀取預(yù)先保存的各組配置信息針對(duì)讀取到的至少一組配置信息中的每一組配置信息,均計(jì)算相應(yīng)的校驗(yàn)值,并判斷計(jì)算所得的校驗(yàn)值與保存在第二指定存儲(chǔ)區(qū)域的參考校驗(yàn)值是否一致,確定不一致時(shí),基于各組配置信息各自的預(yù)設(shè)處理方式,確定輸出結(jié)果,這樣,芯片上電后讀取到的配置信息,即便受到了異常環(huán)境的干擾或惡意破壞,都能基于自身對(duì)應(yīng)的預(yù)設(shè)處理方式進(jìn)行相應(yīng)處理,使得最后輸出結(jié)果不會(huì)影響芯片的正常工作,大大提高了芯片系統(tǒng)的穩(wěn)定性和安全性,而且,邏輯結(jié)構(gòu)簡(jiǎn)單,占用資源少,適用范圍廣。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤(pán)存儲(chǔ)器、cd-rom、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專(zhuān)用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對(duì)這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明實(shí)施例進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明實(shí)施例的精神和范圍。這樣,倘若本發(fā)明實(shí)施例的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。