亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

芯片及其驗(yàn)證方法和系統(tǒng)、處理器端的制作方法

文檔序號:2264849閱讀:256來源:國知局
專利名稱:芯片及其驗(yàn)證方法和系統(tǒng)、處理器端的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及芯片驗(yàn)證技術(shù)領(lǐng)域,尤其是一種帶有硬件加速器的芯片及其驗(yàn)證方法和系統(tǒng)以及處理器端。
背景技術(shù)
隨著半導(dǎo)體技術(shù)的飛速發(fā)展,單個(gè)硅片上的集成度越來越高,如何更快、更有效的完成基于SoC (System on Chip,片上系統(tǒng),也稱為系統(tǒng)級芯片)的檢驗(yàn)逐漸成為人們關(guān)注的隹占。
ν 、、/、、人 °芯片的驗(yàn)證(也稱為芯片的檢驗(yàn))一直是芯片制造的重要步驟,芯片的檢驗(yàn)占據(jù)了芯片制造的大半過程。尤其是對集成有硬件加速器的芯片,例如集成有音頻加速器的芯片、集成有視頻加速器的芯片等的檢驗(yàn),其檢驗(yàn)效率和檢驗(yàn)質(zhì)量一直不高。這是由于芯片本身的性能有限,集成硬件加速器后,檢驗(yàn)程序和硬件加速器同時(shí)在芯片上工作,加重了芯片的負(fù)擔(dān),致使芯片的檢驗(yàn)時(shí)間和檢驗(yàn)質(zhì)量愈發(fā)下降。下面以視頻算法加速器的軟硬件協(xié)同驗(yàn)證為例,具體說明。多媒體設(shè)備中,通常會將視頻編解碼算法集成在其主控芯片(即SoC芯片)上。但是一方面由于多媒體設(shè)備的主控芯片計(jì)算能力較弱,另一方面由于視頻編解碼算法的計(jì)算復(fù)雜度非常高,因此很容易降低多媒體設(shè)備的工作效率,影響視頻的播放效果。為了解決這一矛盾,在主控芯片設(shè)計(jì)時(shí),通常會增加一個(gè)視頻算法加速器硬件模塊(Video Signal ftOcessor,簡稱VSP), VSP 實(shí)際包括 ASIC(Application Specific Integrated Circuit,專用集成電路)以及 Firmware(也稱固件,設(shè)備內(nèi)部保存的設(shè)備的驅(qū)動程序)兩個(gè)部分。具體的加速視頻編碼的技術(shù)可以參考公開號為US2007204318A1的美國專利申請。為了保證主控芯片的工作效率及工作質(zhì)量,需要確保VSP能正確的編解碼,因此對VSP的一致性驗(yàn)證是必要的。所述一致性驗(yàn)證是指驗(yàn)證經(jīng)過VSP處理后的視頻碼流與原始的視頻碼流是否一致。由于VSP所支持的視頻標(biāo)準(zhǔn)的種類眾多,每個(gè)視頻標(biāo)準(zhǔn)需要驗(yàn)證的視頻碼流也數(shù)量龐大。在驗(yàn)證主控芯片時(shí),主控芯片上需要執(zhí)行兩套程序,一個(gè)是Firmware,另一個(gè)是驗(yàn)證VSP的驗(yàn)證程序。由于主控芯片上的存儲空間有限,并且主控芯片的性能也不高,因此在驗(yàn)證環(huán)境下,主控芯片執(zhí)行兩套程序,再加上視頻碼流需要一幀編碼/解碼完后再比對,導(dǎo)致檢驗(yàn)主控芯片的過程復(fù)雜而且漫長,對主控芯片的VSP的一致性驗(yàn)證效率很低,并且龐大的視頻碼流的運(yùn)行,還會降低對主控芯片的驗(yàn)證質(zhì)量。鑒于上述情況如何提高對集成有硬件加速器的芯片的驗(yàn)證效率和質(zhì)量,成為目前亟待解決的問題之一。

發(fā)明內(nèi)容
本發(fā)明解決的問題是如何提高對集成有硬件加速器的芯片的驗(yàn)證效率和質(zhì)量。為解決上述問題,本發(fā)明的技術(shù)方案提供了一種芯片的驗(yàn)證方法,包括
所述芯片向處理器端發(fā)送驗(yàn)證開始請求;所述處理器端接收到所述驗(yàn)證開始請求,將驗(yàn)證碼流發(fā)送至所述芯片;所述芯片與所述處理器端處理所述驗(yàn)證碼流,所述處理所述驗(yàn)證碼流包括編碼或解碼所述驗(yàn)證碼流;所述芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端;所述處理器端匹配其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)。本發(fā)明的技術(shù)方案還提供了一種芯片,包括硬件加速器;消息發(fā)送單元,用以向處理器端發(fā)送驗(yàn)證開始請求;芯片驗(yàn)證碼流處理單元,用以在所述消息發(fā)送單元向所述處理器端發(fā)送驗(yàn)證開始請求后,接收并處理所述處理器端發(fā)送的驗(yàn)證碼流;所述處理所述處理器端發(fā)送的驗(yàn)證碼流包括解碼或編碼所述驗(yàn)證碼流;數(shù)據(jù)發(fā)送單元,用以將所述芯片驗(yàn)證碼流處理單元處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。本發(fā)明的技術(shù)方案還提供了一種處理器端,包括消息接收單元,用于接收如上所述的芯片發(fā)送的驗(yàn)證開始請求;驗(yàn)證碼流發(fā)送單元,用以在所述消息接收單元接收所述驗(yàn)證開始請求后,將驗(yàn)證碼流發(fā)送至所述芯片;處理器驗(yàn)證碼流處理單元,用以處理所述驗(yàn)證碼流,所述處理所述驗(yàn)證碼流包括解碼或編碼所述驗(yàn)證碼流;數(shù)據(jù)接收單元,用以接收所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù);匹配單元,用以匹配所述處理器驗(yàn)證碼流處理單元處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述數(shù)據(jù)接收單元接收的所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)。本發(fā)明的技術(shù)方案還提供了一種芯片檢驗(yàn)系統(tǒng),包括如上所述的芯片;如上所述的處理器端。與現(xiàn)有技術(shù)相比,本發(fā)明的技術(shù)方案具有以下優(yōu)點(diǎn)在進(jìn)行芯片的驗(yàn)證時(shí),在處理器端模擬芯片上執(zhí)行的硬件加速器的工作過程并將其處理驗(yàn)證碼流的結(jié)果數(shù)據(jù)作為匹配標(biāo)準(zhǔn),芯片僅運(yùn)行硬件加速器。利用處理器端較強(qiáng)的運(yùn)算能力模擬硬件加速器的工作過程并進(jìn)行兩者的結(jié)果數(shù)據(jù)的匹配,這不僅減輕了芯片的負(fù)擔(dān),而且處理器端較強(qiáng)的運(yùn)算能力還可以提高編解碼的速度,提高驗(yàn)證的工作效率。驗(yàn)證碼流存儲在處理器端,當(dāng)處理器端獲取芯片發(fā)送的驗(yàn)證開始請求后,將驗(yàn)證碼流發(fā)送至芯片,并在接收到芯片反饋的幀處理開始請求時(shí),進(jìn)行后續(xù)的驗(yàn)證。這不僅降低了對芯片的存儲空間的要求,而且保證處理器端和芯片驗(yàn)證的是同一驗(yàn)證碼流,提高了驗(yàn)證質(zhì)量。芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至處理器端,由處理器端匹配兩者的結(jié)果數(shù)據(jù)。由于處理器端的運(yùn)算能力強(qiáng),這不僅可以提高驗(yàn)證速度,提高驗(yàn)證質(zhì)量,而且減少結(jié)果數(shù)據(jù)對芯片的存儲空間的占用,進(jìn)一步的提高芯片的處理速度。
結(jié)果數(shù)據(jù)的比對是一幀一幀進(jìn)行的,這可以保證驗(yàn)證的質(zhì)量。在整個(gè)驗(yàn)證過程中, 處理器端與芯片通過消息或指令通信確定對方的進(jìn)度,不僅可以有效的平衡雙方處理速度的差異,而且確認(rèn)一幀處理完成之后進(jìn)行下一幀的處理,提高了驗(yàn)證精度。由于龐大的數(shù)據(jù)傳輸不僅會影響驗(yàn)證速度,而且在傳輸過程中容易丟失數(shù)據(jù),因此芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)壓縮后發(fā)送至處理器端。這不僅可以縮短傳輸時(shí)間,減少對傳輸資源的利用,而且減少數(shù)據(jù)丟失,增強(qiáng)了整個(gè)系統(tǒng)的魯棒性。


圖1是本發(fā)明實(shí)施例提供的芯片的驗(yàn)證方法的流程圖;圖2為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)的傳輸格式示意圖;圖3為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)的傳輸格式示意圖;圖4是本發(fā)明實(shí)施例提供的芯片的結(jié)構(gòu)示意圖;圖5是本發(fā)明實(shí)施例提供的處理器端的結(jié)構(gòu)示意圖;圖6是本發(fā)明實(shí)施例提供的芯片檢驗(yàn)系統(tǒng)的工作流程圖。
具體實(shí)施例方式為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更為明顯易懂,下面結(jié)合附圖對本發(fā)明的具體實(shí)施方式
做詳細(xì)的說明。在以下描述中闡述了具體細(xì)節(jié)以便于充分理解本發(fā)明。但是本發(fā)明能夠以多種不同于在此描述的其它方式來實(shí)施,本領(lǐng)域技術(shù)人員可以在不違背本發(fā)明內(nèi)涵的情況下做類似推廣。因此本發(fā)明不受下面公開的具體實(shí)施方式
的限制。圖1是本發(fā)明實(shí)施例提供的芯片的驗(yàn)證方法的流程圖,下面結(jié)合圖1詳細(xì)說明。所述芯片帶有硬件加速器,所述芯片的驗(yàn)證方法包括步驟Si,芯片向處理器端發(fā)送驗(yàn)證開始請求;步驟S2,所述處理器端接收到所述驗(yàn)證開始請求,將驗(yàn)證碼流發(fā)送至所述芯片;步驟S3,所述芯片與所述處理器端處理所述驗(yàn)證碼流,所述處理所述驗(yàn)證碼流包括編碼或解碼所述驗(yàn)證碼流;步驟S4,所述芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端;步驟S5,所述處理器端匹配其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)。所述步驟Sl中,帶有硬件加速器的芯片(以下簡稱芯片)和處理器端雙方上電初始化后,由芯片向處理器端發(fā)送驗(yàn)證開始請求,處理器端接收到所述驗(yàn)證開始請求后,進(jìn)行后續(xù)的工作,若未收到則等待直至收到。在其他實(shí)施例中,也可以由處理器端向芯片發(fā)送開始請求,并在接收到芯片的反饋之后進(jìn)行后續(xù)的工作。所述步驟S2中,所述處理器端接收到所述驗(yàn)證開始請求,將驗(yàn)證碼流發(fā)送至所述芯片。由于處理器端的性能較強(qiáng),因此可以將驗(yàn)證碼流儲存在處理器端,在驗(yàn)證所述驗(yàn)證碼流時(shí),再由處理器端將所述驗(yàn)證碼流發(fā)送至芯片。這可以節(jié)省芯片的存儲空間,提高芯片的運(yùn)行速度。另外,也可以將所述驗(yàn)證碼流儲存在第三方介質(zhì)中,在進(jìn)行驗(yàn)證時(shí),處理器端和芯片分別去第三方介質(zhì)中讀取或者由第三方介質(zhì)分別向處理器端和芯片發(fā)送。
具體實(shí)施中,所述處理器端將未檢驗(yàn)的驗(yàn)證碼流發(fā)送至所述芯片,處理器端在將驗(yàn)證碼流發(fā)送至芯片之前,檢驗(yàn)所有的驗(yàn)證碼流是否都已經(jīng)過驗(yàn)證,僅將未檢驗(yàn)的驗(yàn)證碼流發(fā)送至芯片,若全部都已驗(yàn)證,則結(jié)束對芯片的檢驗(yàn)。具體地,所述處理器端將驗(yàn)證碼流發(fā)送至所述芯片前,所述處理器端建立驗(yàn)證碼流列表;所述處理器端檢驗(yàn)所述驗(yàn)證碼流列表中的驗(yàn)證碼流是否都已檢驗(yàn)完成,若是則結(jié)束對芯片的驗(yàn)證,否則所述處理器端依次發(fā)送所述驗(yàn)證碼流列表中的未檢驗(yàn)的驗(yàn)證碼流至所述芯片。所述步驟S3中,所述芯片與所述處理器端處理所述驗(yàn)證碼流指的是所述芯片與所述處理器端同步處理所述驗(yàn)證碼流。進(jìn)一步講,所述芯片與所述處理器端同步處理同一個(gè)驗(yàn)證碼流。所述處理驗(yàn)證碼流包括編碼或解碼所述驗(yàn)證碼流,所述處理器端和所述芯片以幀為單位處理所述驗(yàn)證碼流,具體來講是一幀一幀處理所述驗(yàn)證碼流的,處理完一幀之后再處理下一幀。所述硬件加速器包括視頻加速器或者音頻加速器,或者兩者都有,所述驗(yàn)證碼流為視頻驗(yàn)證碼流或者音頻驗(yàn)證碼流。對帶有硬件加速器的芯片進(jìn)行驗(yàn)證時(shí),在芯片上既要執(zhí)行硬件加速器的驗(yàn)證程序(模擬芯片上執(zhí)行的硬件加速器的工作過程),還要運(yùn)行硬件加速器,對于性能較低的芯片來講,效率是十分低下的。以帶有視頻加速器的芯片為例說明,帶有音頻加速器的芯片原理與其相同,此處不再贅述。傳統(tǒng)的驗(yàn)證帶有視頻加速器的芯片(簡稱視頻加速芯片)的方法是在視頻加速芯片上運(yùn)行兩套程序,一個(gè)是Firmware,另一個(gè)是驗(yàn)證VSP的驗(yàn)證程序。由于視頻加速芯片上的存儲空間有限,并且視頻加速芯片的性能也不高,而在驗(yàn)證環(huán)境下,視頻加速芯片需要同步執(zhí)行兩套程序,再加上視頻驗(yàn)證碼流需要一幀一幀的處理,因此導(dǎo)致檢驗(yàn)視頻加速芯片的過程復(fù)雜且漫長,對視頻加速芯片的VSP的一致性驗(yàn)證效率很低,并且龐大的視頻碼流的運(yùn)行,還會降低對視頻加速芯片的驗(yàn)證質(zhì)量。本實(shí)施例中,在處理器端模擬芯片上執(zhí)行的硬件加速器的工作過程并將其處理驗(yàn)證碼流的結(jié)果數(shù)據(jù)作為匹配標(biāo)準(zhǔn),芯片僅運(yùn)行硬件加速器,借助處理器端的高性能提高驗(yàn)證效率,減輕視頻加速芯片的負(fù)擔(dān)。為保證驗(yàn)證質(zhì)量,在驗(yàn)證過程中,要求視頻加速芯片和處理器端同步處理同一個(gè)視頻驗(yàn)證碼流,這才能夠保證雙方處理的視頻驗(yàn)證碼流一致,所得的結(jié)果數(shù)據(jù)是同一個(gè)視頻驗(yàn)證碼流的結(jié)果數(shù)據(jù),處理器端才能正確的協(xié)助檢驗(yàn)所述視頻加速芯片的一致性。也就是說,在處理器端模擬視頻加速芯片的工作過程,相當(dāng)于執(zhí)行驗(yàn)證VSP的驗(yàn)證程序,并得到處理所述視頻驗(yàn)證碼流的結(jié)果數(shù)據(jù)。視頻加速芯片和處理器端同步檢驗(yàn)同一個(gè)視頻驗(yàn)證碼流,然后由處理器端以其處理視頻驗(yàn)證碼流的結(jié)果數(shù)據(jù)作為標(biāo)準(zhǔn)比對雙方的結(jié)果數(shù)據(jù),判斷視頻加速芯片是否合格。為保證比對結(jié)果數(shù)據(jù)的準(zhǔn)確性,處理器端進(jìn)行的驗(yàn)證VSP的驗(yàn)證程序是經(jīng)過反復(fù)試驗(yàn)和調(diào)試的,保證其準(zhǔn)確無誤,這才能將其處理視頻驗(yàn)證碼流的結(jié)果數(shù)據(jù)作為檢驗(yàn)視頻加速芯片一致性的標(biāo)準(zhǔn)。在具體實(shí)施中,為保證芯片與處理器端處理的是同一驗(yàn)證碼流,需要對雙方的工作進(jìn)行同步控制,主要是依靠雙方進(jìn)行指令交互來確保同步,具體的同步方式如下所述芯片獲取到所述驗(yàn)證碼流后,向所述處理器端發(fā)送幀處理開始請求;驗(yàn)證碼流由處理器端發(fā)送至芯片,為保證雙方同步開始處理所述發(fā)送的驗(yàn)證碼流,芯片在接收到所述驗(yàn)證碼流后,向所述處理器端發(fā)送幀處理開始請求,請求所述處理器端開始處理所述驗(yàn)證碼流;所述處理器端接收到所述幀處理開始請求后,檢驗(yàn)當(dāng)前幀是否為當(dāng)前的驗(yàn)證碼流的最后一幀;處理器端和芯片都是以幀為單位,一幀一幀處理所述驗(yàn)證碼流的,處理器端檢驗(yàn)當(dāng)前幀是否為當(dāng)前的驗(yàn)證碼流的最后一幀,開始進(jìn)行驗(yàn)證碼流的處理;若所述當(dāng)前幀不是所述當(dāng)前的驗(yàn)證碼流的最后一幀,則所述處理器端向所述芯片發(fā)送幀處理開始指令,并處理所述當(dāng)前的驗(yàn)證碼流的當(dāng)前幀;處理器端向所述芯片發(fā)送幀處理開始指令,通知芯片開始處理當(dāng)前的驗(yàn)證碼流的當(dāng)前幀,且所述處理器端也開始處理所述當(dāng)前的驗(yàn)證碼流的當(dāng)前幀;所述芯片接收到所述幀處理開始指令后,處理所述當(dāng)前的驗(yàn)證碼流的當(dāng)前幀。本實(shí)施例中,若所述當(dāng)前幀為所述當(dāng)前的驗(yàn)證碼流的最后一幀,則所述處理器端向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令;所述芯片接收到所述下一個(gè)驗(yàn)證碼流處理指令后,重新向處理器端發(fā)送驗(yàn)證開始請求;此時(shí)當(dāng)前的驗(yàn)證碼流的檢驗(yàn)結(jié)束,進(jìn)入下一驗(yàn)證碼流的檢驗(yàn)。在其他實(shí)施例中,若所述當(dāng)前幀為所述當(dāng)前的驗(yàn)證碼流的最后一幀,則所述處理器端在向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令前還發(fā)送幀處理停止指令;所述芯片接收到所述幀處理停止指令后,停止對所述當(dāng)前幀的處理;此時(shí)無論當(dāng)前幀是否已經(jīng)進(jìn)行了編碼或解碼的處理,都會停止,芯片停止對所述當(dāng)前幀的處理后,等待處理器端后續(xù)發(fā)送的下一個(gè)驗(yàn)證碼流處理指令,進(jìn)入下一驗(yàn)證碼流的處理。另外,若當(dāng)前幀為當(dāng)前的驗(yàn)證碼流的最后一幀,所述處理器端向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令之前,還會檢驗(yàn)是否所有的驗(yàn)證碼流都已進(jìn)行檢驗(yàn),若還存在沒有檢驗(yàn)的驗(yàn)證碼流,則向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令;若所有的驗(yàn)證碼流都已完成檢驗(yàn),則結(jié)束對芯片的檢驗(yàn)。所述步驟S4中,所述芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端,具體實(shí)施過程為所述處理器端處理完所述當(dāng)前幀后,向所述芯片發(fā)出當(dāng)前幀結(jié)束指令,所述芯片在處理完所述當(dāng)前幀且接收到所述當(dāng)前幀結(jié)束指令后,將其處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。若所述芯片還未處理完所述當(dāng)前幀,則延遲發(fā)送當(dāng)前幀的結(jié)果數(shù)據(jù),直至處理完所述當(dāng)前幀,再發(fā)送當(dāng)前幀的結(jié)果數(shù)據(jù)。本實(shí)施例中,若所述芯片未接收到所述當(dāng)前幀結(jié)束指令,則即使完成了當(dāng)前幀的處理,也不會將當(dāng)前幀的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端,只有接收到所述當(dāng)前幀結(jié)束指令后,才將當(dāng)前幀的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。在其他實(shí)施例中,若所述芯片未接收到所述當(dāng)前幀結(jié)束指令,在完成了當(dāng)前幀的處理后,所述芯片可以向所述處理器端發(fā)送結(jié)果數(shù)據(jù)發(fā)送請求,在得到處理器端的反饋后,將結(jié)果數(shù)據(jù)發(fā)送至處理器端。所述芯片每處理完一幀,將該幀的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端,因此所述芯片以幀為單位將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。所述步驟S5中,所述芯片以幀為單位將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端,所述處理器端以幀為單位匹配每一幀的結(jié)果數(shù)據(jù)。所述處理器端匹配其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)包括匹配雙方對當(dāng)前幀處理的結(jié)果數(shù)據(jù),若一致,則記錄正確,表示驗(yàn)證無誤,若不一致,則記錄錯(cuò)誤及錯(cuò)誤原因,表示芯片有誤。將上述匹配結(jié)果記錄或保存在所述處理器端,完成對芯片的檢驗(yàn)之后可以查詢匹配結(jié)果。當(dāng)前幀的結(jié)果數(shù)據(jù)匹配完成之后,所述處理器端將下一幀設(shè)置為當(dāng)前幀,并繼續(xù)檢驗(yàn)新的當(dāng)前幀是否為當(dāng)前的驗(yàn)證碼流的最后一幀,進(jìn)入新的當(dāng)前幀的處理。在上述步驟Sl至S5中,為縮短發(fā)送請求或指令所需的時(shí)間,可以將所述請求或指令以固定的傳輸格式發(fā)送。這一方面縮短傳輸時(shí)間,提高傳輸速率,另一方面減少傳輸?shù)臄?shù)據(jù)量,防止數(shù)據(jù)在傳輸過程中的遺失。為節(jié)省數(shù)據(jù)的傳輸時(shí)間,所述芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)壓縮后發(fā)送至所述處理器端。所述芯片采用 MD5、DES、IDEA、AES、RSA、ECC、Elgamal、DSS、SHA, RC4 中的至少一種算法壓縮其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)。請求,指令可以采用固定長度的通信包格式。但對于編碼或解碼之后的結(jié)果數(shù)據(jù)的傳輸,都是經(jīng)過壓縮的,這是為了提高傳輸速度,節(jié)省傳輸時(shí)間。具體的操作方式如下圖2為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)的傳輸格式示意圖,請求、指令類型的數(shù)據(jù)以圖2所示的格式傳輸,即十六字節(jié)的格式,包括四字節(jié)起始碼+四字節(jié)數(shù)據(jù)長度+四字節(jié)消息內(nèi)容+四字節(jié)結(jié)束碼。其中起始碼表示指令或請求的起始標(biāo)記,數(shù)據(jù)長度表示整條指令或請求的長度,消息內(nèi)容表示指令或請求的內(nèi)容,結(jié)束碼表示指令或請求的結(jié)束標(biāo)記。以驗(yàn)證開始請求為例說明0xFF00FF00+0x00000004+0xAAAAAAAA+0xFE01FE01上述示例表示驗(yàn)證開始請求,該請求從“OxFFOOFFOO”開始,長度為4,消息內(nèi)容” OxAAAAAAAA”為驗(yàn)證開始,以“OxFEOlFEOl ”結(jié)束。圖3為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)的傳輸格式示意圖,圖3為處理驗(yàn)證碼流的結(jié)果數(shù)據(jù)的壓縮后傳輸格式示意圖,顯示了處理驗(yàn)證碼流的結(jié)果數(shù)據(jù)的壓縮格式和傳輸格式。處理驗(yàn)證碼流的結(jié)果數(shù)據(jù)的壓縮可以采用等價(jià)但不可逆的算法。作為一個(gè)示例,可以采用MD5算法。該壓縮格式為MD5算法的格式,即十六字節(jié)的格式壓縮,壓縮之后以圖3 所述的格式傳輸,包括四字節(jié)起始碼+四字節(jié)數(shù)據(jù)長度+十六字節(jié)數(shù)據(jù)內(nèi)容+四字節(jié)結(jié)束碼。其中起始碼表示驗(yàn)證碼流(用以表示當(dāng)前的結(jié)果數(shù)據(jù)是處理哪個(gè)驗(yàn)證碼流的結(jié)果數(shù)據(jù))及處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)的起始標(biāo)記,數(shù)據(jù)長度表示壓縮之后的驗(yàn)證碼流的結(jié)果數(shù)據(jù)的長度,數(shù)據(jù)內(nèi)容表示驗(yàn)證碼流的結(jié)果數(shù)據(jù)的內(nèi)容,結(jié)束碼表示驗(yàn)證碼流及處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)的結(jié)束標(biāo)記。對于驗(yàn)證碼流的傳輸,也可以采取先壓縮再傳輸?shù)姆绞揭蕴岣邆鬏斔俣群蛡鬏斮|(zhì)量。驗(yàn)證碼流的壓縮可以采用可逆并等價(jià)的壓縮算法進(jìn)行壓縮后傳輸。作為一個(gè)示例,可以采用7zip算法。壓縮之后也采取圖3所示的格式傳輸。驗(yàn)證碼流及處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)經(jīng)過壓縮后傳輸?shù)母袷脚c指令或請求的傳輸格式相同,僅是指令或請求的數(shù)據(jù)長度固定為4,驗(yàn)證碼流及處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)的數(shù)據(jù)長度為經(jīng)過壓縮后的數(shù)據(jù)的長度。目前常用的壓縮算法還有DES、IDEA、AES、 RSA、ECC、Elgamal、DSS、SHA、RC4等,此處僅是以MD5和7zip為例說明,在具體實(shí)施過程中,也可以采用其他算法或壓縮格式。根據(jù)實(shí)際實(shí)驗(yàn)的數(shù)據(jù)所得,對于解碼分辨率為720X576的視頻驗(yàn)證碼流來說,解碼后需要傳輸和比對的數(shù)據(jù)量是720X576X 1. 5 = 622080字節(jié)的結(jié)果數(shù)據(jù),經(jīng)過壓縮之后,變換成數(shù)據(jù)長度只有16字節(jié)長的MD5數(shù)據(jù),壓縮后的數(shù)據(jù)為原始數(shù)據(jù)的1/38880。由于數(shù)據(jù)傳輸過程中,數(shù)據(jù)量越大,出錯(cuò)的可能性越大,因此高效的數(shù)據(jù)壓縮,不僅可以縮短傳輸時(shí)間,而且極大的縮小了通信傳輸?shù)臄?shù)據(jù)量,提高了驗(yàn)證系統(tǒng)的魯棒性。圖4是本發(fā)明實(shí)施例提供的芯片的結(jié)構(gòu)示意圖,下面結(jié)合圖4詳細(xì)說明。所述芯片帶有硬件加速器(圖中未顯示),所述芯片包括消息發(fā)送單元1,用以向處理器端發(fā)送驗(yàn)證開始請求;芯片驗(yàn)證碼流處理單元3,用以在所述消息發(fā)送單元向所述處理器端發(fā)送驗(yàn)證開始請求后,接收并處理所述處理器端發(fā)送的驗(yàn)證碼流;所述處理所述處理器端發(fā)送的驗(yàn)證碼流包括解碼或編碼所述驗(yàn)證碼流;芯片驗(yàn)證碼流處理單元3與消息發(fā)送單元1相連,從消息發(fā)送單元1獲知消息發(fā)送單元1向處理器端發(fā)送驗(yàn)證開始請求的時(shí)間;數(shù)據(jù)發(fā)送單元5,用以將所述芯片驗(yàn)證碼流處理單元處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端;數(shù)據(jù)發(fā)送單元5與芯片驗(yàn)證碼流處理單元3相連,從芯片驗(yàn)證碼流處理單元3獲取芯片驗(yàn)證碼流處理單元3處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù);壓縮單元7,用以壓縮芯片驗(yàn)證碼流處理單元3處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù);數(shù)據(jù)發(fā)送單元5將壓縮后的芯片驗(yàn)證碼流處理單元3處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端;壓縮單元7與數(shù)據(jù)發(fā)送單元5相連,從數(shù)據(jù)發(fā)送單元5獲取處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù),壓縮后發(fā)送至數(shù)據(jù)發(fā)送單元5,由數(shù)據(jù)發(fā)送單元5發(fā)送至所述處理器端;壓縮單元7與數(shù)據(jù)發(fā)送單元5可以集成在一起;在其他實(shí)施例中,壓縮單元與芯片驗(yàn)證碼流處理單元相連,從芯片驗(yàn)證碼流處理單元獲取處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)并壓縮;數(shù)據(jù)發(fā)送單元僅與壓縮單元相連,壓縮單元將壓縮后的結(jié)果數(shù)據(jù)發(fā)送至數(shù)據(jù)發(fā)送單元,由數(shù)據(jù)發(fā)送單元發(fā)送至所述處理器端。芯片驗(yàn)證碼流處理單元3以幀為單位處理所述驗(yàn)證碼流,數(shù)據(jù)發(fā)送單元5以幀為單位將所述芯片驗(yàn)證碼流處理單元3處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。具體的,芯片驗(yàn)證碼流處理單元3包括驗(yàn)證碼流接收單元(圖中未顯示),用以接收所述處理器端發(fā)送的驗(yàn)證碼流;指令接收單元(圖中未顯示),用以接收所述處理器端發(fā)送的指令;操作單元(圖中未顯示),用以在所述驗(yàn)證碼流接收單元接收到所述處理器端發(fā)送的驗(yàn)證碼流后向所述處理器端發(fā)送幀處理開始請求,在所述指令接收單元接收到的指令為幀處理開始指令時(shí),處理當(dāng)前的驗(yàn)證碼流的當(dāng)前幀;在所述指令接收單元接收到的指令為下一個(gè)驗(yàn)證碼流處理指令時(shí),控制所述消息發(fā)送單元向所述處理器端發(fā)送驗(yàn)證開始請求。所述操作單元還在所述指令接收單元接收到的指令為幀處理停止指令時(shí),停止對所述當(dāng)前幀的處理。數(shù)據(jù)發(fā)送單元5在所述操作單元處理完所述當(dāng)前幀且所述指令接收單元接收到的指令為當(dāng)前幀結(jié)束指令時(shí),將處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。圖5是本發(fā)明實(shí)施例提供的處理器端的結(jié)構(gòu)示意圖,下面結(jié)合圖5詳細(xì)說明。
所述處理器端包括消息接收單元2,用于接收如上所述的芯片發(fā)送的驗(yàn)證開始請求;驗(yàn)證碼流發(fā)送單元4,用以在消息接收單元2接收所述驗(yàn)證開始請求后,將驗(yàn)證碼流發(fā)送至所述芯片;驗(yàn)證碼流發(fā)送單元4與消息接收單元2相連,監(jiān)控消息接收單元2接收所述驗(yàn)證開始請求的時(shí)間,在消息接收單元2接收所述驗(yàn)證開始請求后,將驗(yàn)證碼流發(fā)送至所述芯片;驗(yàn)證碼流發(fā)送單元4可以集成壓縮單元,將驗(yàn)證碼流壓縮后發(fā)送至所述芯片;處理器驗(yàn)證碼流處理單元6,用以處理所述驗(yàn)證碼流,所述處理所述驗(yàn)證碼流包括解碼或編碼所述驗(yàn)證碼流;處理器驗(yàn)證碼流處理單元6與驗(yàn)證碼流發(fā)送單元4相連,從驗(yàn)證碼流發(fā)送單元4獲取需要進(jìn)行處理的驗(yàn)證碼流;數(shù)據(jù)接收單元8,用以接收所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù);匹配單元10,用以匹配處理器驗(yàn)證碼流處理單元6處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與數(shù)據(jù)接收單元8接收的所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù);匹配單元10與處理器驗(yàn)證碼流處理單元6和數(shù)據(jù)接收單元8相連,從處理器驗(yàn)證碼流處理單元6獲取其處理驗(yàn)證碼流的結(jié)果數(shù)據(jù),從數(shù)據(jù)接收單元8獲取所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)。處理器驗(yàn)證碼流處理單元6以幀為單位處理所述驗(yàn)證碼流,數(shù)據(jù)接收單元8以幀為單位接收所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù);匹配單元10以幀為單位匹配每一幀的結(jié)果數(shù)據(jù)。匹配單元10還在匹配處理器驗(yàn)證碼流處理單元6處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)與所述芯片處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)后,將下一幀設(shè)置為當(dāng)前幀。所述處理器端還可以包括存儲單元(圖中未顯示),與匹配單元10相連,用以記錄匹配單元10匹配所述處理器驗(yàn)證碼流處理單元6處理的所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)的匹配結(jié)果。具體實(shí)施中,驗(yàn)證碼流發(fā)送單元4包括檢驗(yàn)單元(圖中未顯示),用以檢驗(yàn)所有的驗(yàn)證碼流是否都已檢驗(yàn)完成;發(fā)送單元(圖中未顯示),用以在所述檢驗(yàn)單元檢驗(yàn)到存在未檢驗(yàn)的驗(yàn)證碼流時(shí), 將所述未檢驗(yàn)的驗(yàn)證碼流發(fā)送至所述芯片。所述處理器端還可以包括列表建立單元(圖中未顯示),用以在驗(yàn)證碼流發(fā)送單元4將所述驗(yàn)證碼流發(fā)送至所述芯片前,建立所述驗(yàn)證碼流的列表。驗(yàn)證碼流發(fā)送單元4與所述列表建立單元相連,所述檢驗(yàn)單元檢驗(yàn)所述驗(yàn)證碼流列表中的驗(yàn)證碼流是否都已檢驗(yàn)完成,若是則結(jié)束芯片的驗(yàn)證,否則所述發(fā)送單元依次發(fā)送所述驗(yàn)證碼流列表中的未檢驗(yàn)的驗(yàn)證碼流至所述芯片。具體實(shí)施中,處理器驗(yàn)證碼流處理單元6包括驗(yàn)證單元(圖中未顯示),用以在接收到所述芯片的操作單元發(fā)送的幀處理開始請求后,檢驗(yàn)當(dāng)前幀是否為當(dāng)前的驗(yàn)證碼流的最后一幀;指令發(fā)送單元(圖中未顯示),用以在所述驗(yàn)證單元檢驗(yàn)到所述當(dāng)前幀不是所述當(dāng)前的驗(yàn)證碼流的最后一幀時(shí),向所述芯片發(fā)送幀處理開始指令;在所述驗(yàn)證單元檢驗(yàn)到所述當(dāng)前幀為所述當(dāng)前的驗(yàn)證碼流的最后一幀時(shí),向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令;
13
處理單元(圖中未顯示),用以在所述驗(yàn)證單元檢驗(yàn)到所述當(dāng)前幀不是所述當(dāng)前的驗(yàn)證碼流的最后一幀時(shí),處理所述當(dāng)前的驗(yàn)證碼流的當(dāng)前幀。在所述驗(yàn)證單元檢驗(yàn)到所述當(dāng)前幀為所述當(dāng)前的驗(yàn)證碼流的最后一幀時(shí),所述指令發(fā)送單元在發(fā)送下一個(gè)驗(yàn)證碼流處理指令前還向所述芯片發(fā)送幀處理停止指令。所述指令發(fā)送單元在所述驗(yàn)證單元在檢驗(yàn)到所有的驗(yàn)證碼流都未完成檢驗(yàn)時(shí),向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令。所述處理單元處理完所述當(dāng)前幀后,所述指令發(fā)送單元向所述芯片發(fā)出當(dāng)前幀結(jié)束指令。所述處理器端可以為計(jì)算機(jī)或計(jì)算機(jī)群,也可以是處理器或處理器群。本發(fā)明實(shí)施例還提供了一種芯片驗(yàn)證系統(tǒng),包括如上所述的芯片和如上所述的處理器端,所述芯片帶有硬件加速器。具體的,所述芯片驗(yàn)證系統(tǒng)可以是視頻加速芯片檢驗(yàn)系統(tǒng)或者音頻加速芯片檢驗(yàn)系統(tǒng)。圖4所示的芯片和圖5所示的處理器端可以組成所述芯片驗(yàn)證系統(tǒng),實(shí)現(xiàn)圖1所示的芯片的驗(yàn)證方法。圖6是本發(fā)明實(shí)施例提供的芯片檢驗(yàn)系統(tǒng)的工作流程圖,具體的是一種視頻加速芯片檢驗(yàn)系統(tǒng)的工作流程圖,下面結(jié)合圖4至圖6詳細(xì)說明。圖6中所示的視頻加速芯片100是一種帶有視頻加速器的芯片,該芯片一般為SoC 芯片,處理器端200為圖5所示的處理器端。視頻加速芯片100與處理器端200同步處理視頻驗(yàn)證碼流,并通過處理器端200匹配雙方的結(jié)果數(shù)據(jù)。雙方上電初始化之后,處于圖6中所示的開始狀態(tài),視頻加速芯片100進(jìn)行步驟 S101,消息發(fā)送單元1向處理器端200發(fā)送驗(yàn)證開始請求;處理器端200在上電初始化之后,等待視頻加速芯片100發(fā)送驗(yàn)證開始請求的過程中建立視頻驗(yàn)證碼流列表,并進(jìn)行步驟S102判斷是否獲得驗(yàn)證開始請求,在消息接收單元2接收到所述驗(yàn)證開始請求后,進(jìn)行步驟S103,驗(yàn)證碼流發(fā)送單元4檢驗(yàn)視頻驗(yàn)證碼流列表中的視頻驗(yàn)證碼流是否都已完成檢驗(yàn),若都已完成檢驗(yàn),則結(jié)束芯片100的檢驗(yàn),若還存在未檢驗(yàn)的視頻驗(yàn)證碼流,進(jìn)行步驟S104,驗(yàn)證碼流發(fā)送單元4將未檢驗(yàn)的視頻驗(yàn)證碼流壓縮后,發(fā)送至視頻加速芯片100 ;視頻加速芯片100在完成步驟SlOl后,進(jìn)行步驟S105,檢驗(yàn)是否獲得視頻驗(yàn)證碼流,若芯片驗(yàn)證碼流處理單元3接收到視頻驗(yàn)證碼流,在接收到視頻驗(yàn)證碼流后,進(jìn)行解壓縮,然后進(jìn)行步驟S106向處理器端200發(fā)送消息包,也就是芯片驗(yàn)證碼流處理單元3向處理器端200發(fā)送幀處理開始請求;若視頻加速芯片100未接收到視頻驗(yàn)證碼流,則持續(xù)等待至接收到視頻驗(yàn)證碼流后,芯片驗(yàn)證碼流處理單元3向處理器端200發(fā)送幀處理開始請求;處理器端200完成步驟S104后,進(jìn)入步驟S107檢驗(yàn)是否獲得幀處理請求,若接收到幀處理開始請求后,進(jìn)入步驟S108,處理器驗(yàn)證碼流處理單元6檢驗(yàn)當(dāng)前幀是否為當(dāng)前的視頻驗(yàn)證碼流的最后一幀,并進(jìn)行步驟S110,處理器驗(yàn)證碼流處理單元6向視頻加速芯片100發(fā)送消息包,所述消息包的內(nèi)容包括幀處理開始指令或幀處理停止指令;若所述當(dāng)前幀不是所述當(dāng)前的視頻驗(yàn)證碼流的最后一幀,則處理器端200的處理器驗(yàn)證碼流處理單元6向視頻加速芯片100發(fā)送幀處理開始指令,并進(jìn)行步驟Slll編碼或解碼當(dāng)前幀,即處理所述當(dāng)前的視頻驗(yàn)證碼流的當(dāng)前幀,若所述當(dāng)前幀為所述當(dāng)前的視頻驗(yàn)證碼流的最后一幀,則向視頻加速芯片100發(fā)送幀處理停止指令,并進(jìn)行步驟S117,驗(yàn)證碼流發(fā)送單元4再次檢驗(yàn)視頻驗(yàn)證碼流列表中的視頻驗(yàn)證碼流是否都已完成檢驗(yàn),若都已完成檢驗(yàn),則結(jié)束對芯片100的檢驗(yàn),若還存在未檢驗(yàn)的視頻驗(yàn)證碼流,則進(jìn)行步驟S118, 處理器驗(yàn)證碼流處理單元6向視頻加速芯片100發(fā)送下一個(gè)視頻驗(yàn)證碼流處理指令;視頻加速芯片100在完成步驟S106后,進(jìn)入步驟S120,判斷是否接收到處理器端 200的指令,若接收到處理器端200的指令,根據(jù)指令,進(jìn)行下一步操作,若未接收到,則持續(xù)等待;視頻加速芯片100的芯片驗(yàn)證碼流處理單元3接收到處理器端200發(fā)送的指令后,進(jìn)行步驟S109判斷是何種消息(指令)若是幀處理開始指令,則芯片驗(yàn)證碼流處理單元3同步處理所述當(dāng)前幀,進(jìn)行步驟Slll'編碼或解碼當(dāng)前幀,即處理所述當(dāng)前的視頻驗(yàn)證碼流的當(dāng)前幀;若是幀處理停止指令,則芯片驗(yàn)證碼流處理單元3停止對所述當(dāng)前幀的處理,進(jìn)入步驟Sl 19判斷是否接收到獲得下一個(gè)視頻驗(yàn)證碼流處理指令,若未接收到則持續(xù)等待處理器端200發(fā)送下一個(gè)視頻驗(yàn)證碼流處理指令;視頻加速芯片100接收到處理器端200發(fā)送的下一個(gè)視頻驗(yàn)證碼流處理指令后, 返回步驟SlOl,消息發(fā)送單元1重新向處理器端200發(fā)送檢驗(yàn)開始請求,進(jìn)入下一視頻驗(yàn)證碼流的檢驗(yàn);處理器端200處理完所述當(dāng)前幀后,進(jìn)行步驟Sl 12,處理器驗(yàn)證碼流處理單元6向視頻加速芯片100發(fā)送消息包,也就是向視頻加速芯片100發(fā)出當(dāng)前幀結(jié)束指令;視頻加速芯片100在完成步驟Slll'之后,或者在進(jìn)行步驟Sill'的過程中,進(jìn)行步驟S113,判斷是否接收到當(dāng)前幀結(jié)束指令;視頻加速芯片100在處理完所述當(dāng)前幀接收到所述當(dāng)前幀結(jié)束指令后,壓縮單元 7將處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)壓縮為MD5格式的數(shù)據(jù),由數(shù)據(jù)發(fā)送單元5發(fā)送至處理器端200,若未處理完所述當(dāng)前幀,則在完成當(dāng)前幀的處理之后,壓縮單元7將處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)壓縮為MD5格式的數(shù)據(jù),由數(shù)據(jù)發(fā)送單元5發(fā)送處理所述當(dāng)前幀的結(jié)果數(shù)據(jù), 若未接收到所述當(dāng)前幀結(jié)束指令,則接收到所述當(dāng)前幀結(jié)束指令且處理完所述當(dāng)前幀后, 壓縮單元7將處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)壓縮為MD5格式的數(shù)據(jù),由數(shù)據(jù)發(fā)送單元5發(fā)送至處理器端200 ;視頻加速芯片100將處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)壓縮為MD5格式的數(shù)據(jù),發(fā)送至處理器端200后(步驟S114),芯片驗(yàn)證碼流處理單元3將下一幀設(shè)置為新的當(dāng)前幀,返回步驟S106,進(jìn)入新的當(dāng)前幀的處理;處理器端200進(jìn)行步驟S115接收視頻加速芯片100發(fā)送的處理當(dāng)前幀的結(jié)果數(shù)據(jù),數(shù)據(jù)接收單元8接收到所述當(dāng)前幀的結(jié)果數(shù)據(jù)后,進(jìn)行步驟S116,匹配單元10將其與處理器驗(yàn)證碼流處理單元6處理視頻驗(yàn)證碼流的結(jié)果數(shù)據(jù)進(jìn)行匹配和比對,并記錄匹配結(jié)果;若一致,則記錄正確,表示驗(yàn)證無誤,若不一致,則記錄錯(cuò)誤及錯(cuò)誤原因,表示視頻加速芯片有誤;處理器端200匹配其處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)與視頻加速芯片100處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)之后,匹配單元10將下一幀設(shè)置為當(dāng)前幀,重新進(jìn)入步驟S107,處理器驗(yàn)證碼流處理單元6繼續(xù)檢驗(yàn)當(dāng)前幀是否為當(dāng)前的視頻驗(yàn)證碼流的最后一幀,直至該視頻驗(yàn)證碼流檢驗(yàn)結(jié)束,進(jìn)行下一視頻驗(yàn)證碼流的檢驗(yàn)至視頻驗(yàn)證碼流列表中所有的視頻驗(yàn)證碼流驗(yàn)證結(jié)束。
本實(shí)施例中,處理器端的工作過程相當(dāng)于對視頻加速芯片的視頻加速器(VSP)的驗(yàn)證過程,處理器端模擬視頻加速芯片上執(zhí)行的視頻加速器的工作過程,并將其處理視頻驗(yàn)證碼流的結(jié)果數(shù)據(jù)作為匹配標(biāo)準(zhǔn)。視頻加速芯片僅運(yùn)行視頻加速器,將處理所述視頻驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至處理器端,由處理器端進(jìn)行兩者結(jié)果數(shù)據(jù)的匹配,以匹配的結(jié)果來驗(yàn)證視頻加速芯片的質(zhì)量。在其他實(shí)施例中,若視頻加速芯片100或處理器端200持續(xù)未接收到對方發(fā)送的請求、指令或數(shù)據(jù),可以在經(jīng)過預(yù)定時(shí)間之后向?qū)Ψ桨l(fā)送取指請求,例如,若視頻加速芯片 100和處理器端200上電初始化后,經(jīng)過預(yù)定時(shí)間五分鐘之后,處理器端200未接收到視頻加速芯片100發(fā)送的驗(yàn)證開始請求,則處理器端200可以向視頻加速芯片100發(fā)送取指請求,詢問是否可以開始驗(yàn)證視頻驗(yàn)證碼流。本發(fā)明的技術(shù)方案還適用于集成有音頻加速器的芯片的驗(yàn)證,其驗(yàn)證方法與集成有視頻加速器的芯片的方法相同,此處不再贅述。在具體實(shí)施中,所述芯片還可以集成有圖像處理加速器、Flash播放加速器等硬件加速器,上述芯片的檢驗(yàn)都可以采取本發(fā)明的技術(shù)方案。本發(fā)明的技術(shù)方案至少具有以下優(yōu)勢在進(jìn)行芯片的驗(yàn)證時(shí),在處理器端模擬芯片上執(zhí)行的硬件加速器的工作過程并將其處理驗(yàn)證碼流的結(jié)果數(shù)據(jù)作為匹配標(biāo)準(zhǔn),芯片僅運(yùn)行硬件加速器。利用處理器端較強(qiáng)的運(yùn)算能力模擬硬件加速器的工作過程并進(jìn)行兩者的結(jié)果數(shù)據(jù)的匹配,這不僅減輕了芯片的負(fù)擔(dān),而且處理器端較強(qiáng)的運(yùn)算能力還可以提高編解碼的速度,提高驗(yàn)證的工作效率。驗(yàn)證碼流存儲在處理器端,當(dāng)處理器端獲取芯片發(fā)送的驗(yàn)證開始請求后,將驗(yàn)證碼流發(fā)送至芯片,并在接收到芯片反饋的幀處理開始請求時(shí),進(jìn)行后續(xù)的驗(yàn)證。這不僅降低了對芯片的存儲空間的要求,而且保證處理器端和芯片驗(yàn)證的是同一驗(yàn)證碼流,提高了驗(yàn)證質(zhì)量。芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至處理器端,由處理器端匹配兩者的結(jié)果數(shù)據(jù)。由于處理器端的運(yùn)算能力強(qiáng),這不僅可以提高驗(yàn)證速度,提高驗(yàn)證質(zhì)量,而且減少結(jié)果數(shù)據(jù)對芯片的存儲空間的占用,進(jìn)一步的提高芯片的處理速度。結(jié)果數(shù)據(jù)的比對是一幀一幀進(jìn)行的,這可以保證驗(yàn)證的質(zhì)量。在整個(gè)驗(yàn)證過程中, 處理器端與芯片通過消息或指令通信確定對方的進(jìn)度,不僅可以有效的平衡雙方處理速度的差異,而且確認(rèn)一幀處理完成之后進(jìn)行下一幀的處理,提高了驗(yàn)證精度。由于龐大的數(shù)據(jù)傳輸不僅會影響驗(yàn)證速度,而且在傳輸過程中容易丟失數(shù)據(jù),因此芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)壓縮后發(fā)送至處理器端。這不僅可以縮短傳輸時(shí)間,減少對傳輸資源的利用,而且減少數(shù)據(jù)丟失,增強(qiáng)了整個(gè)系統(tǒng)的魯棒性。本發(fā)明雖然已以較佳實(shí)施例公開如上,但其并不是用來限定本發(fā)明,任何本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍內(nèi),都可以利用上述揭示的方法和技術(shù)內(nèi)容對本發(fā)明技術(shù)方案做出可能的變動和修改,因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對以上實(shí)施例所作的任何簡單修改、等同變化及修飾,均屬于本發(fā)明技術(shù)方案的保護(hù)范圍。
權(quán)利要求
1.一種芯片的驗(yàn)證方法,所述芯片帶有硬件加速器,其特征在于,包括 所述芯片向處理器端發(fā)送驗(yàn)證開始請求;所述處理器端接收到所述驗(yàn)證開始請求,將驗(yàn)證碼流發(fā)送至所述芯片; 所述芯片與所述處理器端處理所述驗(yàn)證碼流,所述處理所述驗(yàn)證碼流包括編碼或解碼所述驗(yàn)證碼流;所述芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端; 所述處理器端匹配其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)。
2.如權(quán)利要求1所述的芯片的驗(yàn)證方法,其特征在于,所述芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)壓縮后發(fā)送至所述處理器端。
3.如權(quán)利要求2所述的芯片的驗(yàn)證方法,其特征在于,所述芯片采用MD5、DES、IDEA、 AES、RSA、ECC、Elgamal, DSS, SHA, RC4中的至少一種算法壓縮其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)。
4.如權(quán)利要求1所述的芯片的驗(yàn)證方法,其特征在于,所述處理器端和所述芯片以幀為單位處理所述驗(yàn)證碼流。
5.如權(quán)利要求4所述的芯片的驗(yàn)證方法,其特征在于,所述芯片以幀為單位將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端;所述處理器端以幀為單位匹配每一幀的結(jié)果數(shù)據(jù)。
6.如權(quán)利要求4所述的芯片的驗(yàn)證方法,其特征在于,所述芯片與所述處理器端處理所述驗(yàn)證碼流包括所述芯片獲取到所述驗(yàn)證碼流后,向所述處理器端發(fā)送幀處理開始請求; 所述處理器端接收到所述幀處理開始請求后,檢驗(yàn)當(dāng)前幀是否為當(dāng)前的驗(yàn)證碼流的最后一幀;若所述當(dāng)前幀不是所述當(dāng)前的驗(yàn)證碼流的最后一幀,則所述處理器端向所述芯片發(fā)送幀處理開始指令,并處理所述當(dāng)前的驗(yàn)證碼流的當(dāng)前幀;所述芯片接收到所述幀處理開始指令后,處理所述當(dāng)前的驗(yàn)證碼流的當(dāng)前幀; 若所述當(dāng)前幀為所述當(dāng)前的驗(yàn)證碼流的最后一幀,則所述處理器端向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令;所述芯片接收到所述下一個(gè)驗(yàn)證碼流處理指令后,向處理器端發(fā)送驗(yàn)證開始請求。
7.如權(quán)利要求6所述的芯片的驗(yàn)證方法,其特征在于,所述芯片與所述處理器端處理所述驗(yàn)證碼流還包括若所述當(dāng)前幀為所述當(dāng)前的驗(yàn)證碼流的最后一幀,則所述處理器端在向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令前還發(fā)送幀處理停止指令;所述芯片接收到所述幀處理停止指令后,停止對所述當(dāng)前幀的處理。
8.如權(quán)利要求6所述的芯片的驗(yàn)證方法,其特征在于,所述處理器端在檢驗(yàn)到所有的驗(yàn)證碼流都未完成檢驗(yàn),向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令。
9.如權(quán)利要求6所述的芯片的驗(yàn)證方法,其特征在于,所述芯片與所述處理器端處理所述驗(yàn)證碼流還包括所述處理器端處理完所述當(dāng)前幀后,向所述芯片發(fā)出當(dāng)前幀結(jié)束指令;所述芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端包括所述芯片在處理完所述當(dāng)前幀且接收到所述當(dāng)前幀結(jié)束指令后,將處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。
10.如權(quán)利要求1所述的芯片的驗(yàn)證方法,其特征在于,所述處理器端將驗(yàn)證碼流發(fā)送至所述芯片包括所述處理器端將未檢驗(yàn)的驗(yàn)證碼流發(fā)送至所述芯片。
11.如權(quán)利要求10所述的芯片的驗(yàn)證方法,其特征在于,還包括所述處理器端建立驗(yàn)證碼流列表;所述處理器端將未檢驗(yàn)的驗(yàn)證碼流發(fā)送至所述芯片包括所述處理器端檢驗(yàn)所述驗(yàn)證碼流列表中的驗(yàn)證碼流是否都已檢驗(yàn)完成,若是則結(jié)束驗(yàn)證,否則所述處理器端依次發(fā)送所述驗(yàn)證碼流列表中的未檢驗(yàn)的驗(yàn)證碼流至所述芯片。
12.如權(quán)利要求6所述的芯片的驗(yàn)證方法,其特征在于,還包括所述處理器端匹配其處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)與所述芯片處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)之后,將下一幀設(shè)置為當(dāng)前幀。
13.如權(quán)利要求1所述的芯片的驗(yàn)證方法,其特征在于,還包括所述處理器端記錄匹配所述處理器端的處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)的匹配結(jié)果。
14.如權(quán)利要求1所述的芯片的驗(yàn)證方法,其特征在于,所述硬件加速器包括視頻加速器和/或音頻加速器,所述驗(yàn)證碼流為視頻驗(yàn)證碼流或音頻驗(yàn)證碼流。
15.一種芯片,包括硬件加速器,其特征在于,還包括消息發(fā)送單元,用以向處理器端發(fā)送驗(yàn)證開始請求;芯片驗(yàn)證碼流處理單元,用以在所述消息發(fā)送單元向所述處理器端發(fā)送驗(yàn)證開始請求后,接收并處理所述處理器端發(fā)送的驗(yàn)證碼流;所述處理所述處理器端發(fā)送的驗(yàn)證碼流包括解碼或編碼所述驗(yàn)證碼流;數(shù)據(jù)發(fā)送單元,用以將所述芯片驗(yàn)證碼流處理單元處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。
16.如權(quán)利要求15所述的芯片,其特征在于,還包括壓縮單元,用以壓縮所述芯片驗(yàn)證碼流處理單元處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù);所述數(shù)據(jù)發(fā)送單元將壓縮后的所述芯片驗(yàn)證碼流處理單元處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。
17.如權(quán)利要求15所述的芯片,其特征在于,所述芯片驗(yàn)證碼流處理單元以幀為單位處理所述驗(yàn)證碼流。
18.如權(quán)利要求17所述的芯片,其特征在于,所述數(shù)據(jù)發(fā)送單元以幀為單位將所述芯片驗(yàn)證碼流處理單元處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。
19.如權(quán)利要求17所述的芯片,其特征在于,所述芯片驗(yàn)證碼流處理單元包括驗(yàn)證碼流接收單元,用以接收所述處理器端發(fā)送的驗(yàn)證碼流;指令接收單元,用以接收所述處理器端發(fā)送的指令;操作單元,用以在所述驗(yàn)證碼流接收單元接收到所述處理器端發(fā)送的驗(yàn)證碼流后向所述處理器端發(fā)送幀處理開始請求,在所述指令接收單元接收到的指令為幀處理開始指令時(shí),處理當(dāng)前的驗(yàn)證碼流的當(dāng)前幀;在所述指令接收單元接收到的指令為下一個(gè)驗(yàn)證碼流處理指令時(shí),控制所述消息發(fā)送單元向所述處理器端發(fā)送驗(yàn)證開始請求。
20.如權(quán)利要求19所述的芯片,其特征在于,所述操作單元還在所述指令接收單元接收到的指令為幀處理停止指令時(shí),停止對所述當(dāng)前幀的處理。
21.如權(quán)利要求19所述的芯片,其特征在于,所述數(shù)據(jù)發(fā)送單元在所述操作單元處理完所述當(dāng)前幀且所述指令接收單元接收到的指令為當(dāng)前幀結(jié)束指令時(shí),將處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端。
22.如權(quán)利要求15所述的芯片,其特征在于,所述硬件加速器包括視頻加速器和/或音頻加速器,所述驗(yàn)證碼流為視頻驗(yàn)證碼流或音頻驗(yàn)證碼流。
23.一種處理器端,其特征在于,包括消息接收單元,用于接收如權(quán)利要求15至22任一項(xiàng)所述的芯片發(fā)送的驗(yàn)證開始請求;驗(yàn)證碼流發(fā)送單元,用以在所述消息接收單元接收到所述驗(yàn)證開始請求后,將驗(yàn)證碼流發(fā)送至所述芯片;處理器驗(yàn)證碼流處理單元,用以處理所述驗(yàn)證碼流,所述處理所述驗(yàn)證碼流包括解碼或編碼所述驗(yàn)證碼流;數(shù)據(jù)接收單元,用以接收所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù); 匹配單元,用以匹配所述處理器驗(yàn)證碼流處理單元處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述數(shù)據(jù)接收單元接收的所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)。
24.如權(quán)利要求23所述的處理器端,其特征在于,所述處理器驗(yàn)證碼流處理單元以幀為單位處理所述驗(yàn)證碼流。
25.如權(quán)利要求M所述的處理器端,其特征在于,所述數(shù)據(jù)接收單元以幀為單位接收所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù);所述匹配單元以幀為單位匹配每一幀的結(jié)果數(shù)據(jù)。
26.如權(quán)利要求23所述的處理器端,其特征在于,所述處理器驗(yàn)證碼流處理單元包括 驗(yàn)證單元,用以在接收到所述芯片的操作單元發(fā)送的幀處理開始請求后,檢驗(yàn)當(dāng)前幀是否為當(dāng)前的驗(yàn)證碼流的最后一幀;指令發(fā)送單元,用以在所述驗(yàn)證單元檢驗(yàn)到所述當(dāng)前幀不是所述當(dāng)前的驗(yàn)證碼流的最后一幀時(shí),向所述芯片發(fā)送幀處理開始指令;在所述驗(yàn)證單元檢驗(yàn)到所述當(dāng)前幀為所述當(dāng)前的驗(yàn)證碼流的最后一幀時(shí),向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令;處理單元,用以在所述驗(yàn)證單元檢驗(yàn)到所述當(dāng)前幀不是所述當(dāng)前的驗(yàn)證碼流的最后一幀時(shí),處理所述當(dāng)前的驗(yàn)證碼流的當(dāng)前幀。
27.如權(quán)利要求沈所述的處理器端,其特征在于,在所述驗(yàn)證單元檢驗(yàn)到所述當(dāng)前幀為所述當(dāng)前的驗(yàn)證碼流的最后一幀時(shí),所述指令發(fā)送單元在發(fā)送下一個(gè)驗(yàn)證碼流處理指令前還向所述芯片發(fā)送幀處理停止指令。
28.如權(quán)利要求沈所述的處理器端,其特征在于,所述指令發(fā)送單元在所述驗(yàn)證單元在檢驗(yàn)到所有的驗(yàn)證碼流都未完成檢驗(yàn)時(shí),向所述芯片發(fā)送下一個(gè)驗(yàn)證碼流處理指令。
29.如權(quán)利要求沈所述的處理器端,其特征在于,所述處理單元處理完所述當(dāng)前幀后, 所述指令發(fā)送單元向所述芯片發(fā)出當(dāng)前幀結(jié)束指令。
30.如權(quán)利要求23所述的處理器端,其特征在于,所述驗(yàn)證碼流發(fā)送單元包括檢驗(yàn)單元,用以檢驗(yàn)所有的驗(yàn)證碼流是否都已檢驗(yàn)完成;發(fā)送單元,用以在所述檢驗(yàn)單元檢驗(yàn)到存在未檢驗(yàn)的驗(yàn)證碼流時(shí),將所述未檢驗(yàn)的驗(yàn)證碼流發(fā)送至所述芯片。
31.如權(quán)利要求30所述的處理器端,其特征在于,還包括,列表建立單元,用以建立所述驗(yàn)證碼流的列表;所述檢驗(yàn)單元檢驗(yàn)所述驗(yàn)證碼流列表中的驗(yàn)證碼流是否都已檢驗(yàn)完成,若是則所述處理器端結(jié)束對所述驗(yàn)證碼流的驗(yàn)證,否則所述發(fā)送單元依次發(fā)送所述驗(yàn)證碼流列表中的未檢驗(yàn)的驗(yàn)證碼流至所述芯片。
32.如權(quán)利要求沈所述的處理器端,其特征在于,所述匹配單元還在匹配所述處理器驗(yàn)證碼流處理單元處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)與所述芯片處理所述當(dāng)前幀的結(jié)果數(shù)據(jù)后, 將下一幀設(shè)置為當(dāng)前幀。
33.如權(quán)利要求23所述的處理器端,其特征在于,還包括存儲單元,用以記錄所述匹配單元匹配所述處理器驗(yàn)證碼流處理單元處理的所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)的匹配結(jié)果。
34.一種芯片驗(yàn)證系統(tǒng),其特征在于,包括如權(quán)利要求15-22任一項(xiàng)所述的芯片;如權(quán)利要求23-33任一項(xiàng)所述的處理器端。
全文摘要
一種芯片的驗(yàn)證方法,芯片、處理器端和芯片檢驗(yàn)系統(tǒng),所述芯片的驗(yàn)證方法包括所述芯片向處理器端發(fā)送驗(yàn)證開始請求;所述處理器端接收到所述驗(yàn)證開始請求,將驗(yàn)證碼流發(fā)送至所述芯片;所述芯片與所述處理器端處理所述驗(yàn)證碼流;所述芯片將其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)發(fā)送至所述處理器端;所述處理器端匹配其處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)與所述芯片處理所述驗(yàn)證碼流的結(jié)果數(shù)據(jù)。本發(fā)明的技術(shù)方案提高了對集成有硬件加速器的芯片的一致性驗(yàn)證的效率和質(zhì)量。
文檔編號H04N7/26GK102420982SQ201110338800
公開日2012年4月18日 申請日期2011年10月31日 優(yōu)先權(quán)日2011年10月31日
發(fā)明者林福輝, 羅小偉 申請人:展訊通信(上海)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1