本發(fā)明涉及一種身份認(rèn)證芯片,具體是一種基于OTP器件的身份認(rèn)證芯片。
背景技術(shù):
OTP為一種一次可編程、非易失性存儲(chǔ)器,可以芯片在斷電的時(shí)情況下,保持存儲(chǔ)器中的內(nèi)容不丟失。OTP中的存儲(chǔ)中的一部分用來(lái)保存各命令的回復(fù)數(shù)據(jù)。另一部分即用來(lái)存儲(chǔ)身份認(rèn)證芯片的配置信息。這些配置信息包括:接收解碼時(shí)使用的多個(gè)命令對(duì)應(yīng)的ID碼、以及各個(gè)ID碼對(duì)應(yīng)長(zhǎng)度,和各個(gè)ID碼相應(yīng)的回復(fù)內(nèi)容的存儲(chǔ)首地址。本發(fā)明提供一種可以使用在與身份認(rèn)證相關(guān)的應(yīng)用系統(tǒng)中的身份認(rèn)證芯片。用戶(hù)可以根據(jù)自己的需求,自定義其通信碼,在芯片應(yīng)用之前燒錄至芯片內(nèi)的OTP器件中。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種基于OTP器件的身份認(rèn)證芯片,以解決上述背景技術(shù)中提出的問(wèn)題。
為實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
一種基于OTP器件的身份認(rèn)證芯片,包括可編程非易失存儲(chǔ)器、配置信息管理模塊、IO管理模塊、控制模塊、發(fā)送模塊、接收模塊、接收計(jì)數(shù)器、接收緩存器和接收校驗(yàn)?zāi)K,所述控制模塊分別連接可編程非易失存儲(chǔ)器、配置信息管理模塊、接收模塊、發(fā)送模塊、接收計(jì)數(shù)器、接收緩存器和接收校驗(yàn)?zāi)K,所述接收模塊還分別連接IO管理模塊、接收計(jì)數(shù)器、接收緩存器和接收校驗(yàn)?zāi)K,IO管理模塊還連接發(fā)送模塊,可編程非易失存儲(chǔ)器還連接配置信息管理模塊。
作為本發(fā)明的進(jìn)一步方案:所述控制模塊包括命令解碼模塊和觸發(fā)計(jì)數(shù)器。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:本發(fā)明具有適成本低、適用性廣的優(yōu)點(diǎn)。本方案基于低成本的OTP器件,用戶(hù)可以根據(jù)自己的需求,自定義其通信碼,在芯片應(yīng)用之前燒錄至芯片內(nèi)的OTP器件中。本發(fā)明還具有結(jié)構(gòu)簡(jiǎn)潔和低功耗的優(yōu)點(diǎn)。
附圖說(shuō)明:
圖1為本發(fā)明的整體框圖;
圖2為控制模塊的方框圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請(qǐng)參閱圖1-2,本發(fā)明描述一種基于OTP器件的身份認(rèn)證芯片。此芯片可以使用在與身份認(rèn)證相關(guān)的應(yīng)用系統(tǒng)中。身份認(rèn)證芯片內(nèi)部包括OTP存儲(chǔ)器、配置信息管理模塊(CONFIG)、IO管理模塊(IO_MUX)、控制模塊(CTRL)、發(fā)送模塊(TX)、接收模塊(RX)、接收計(jì)數(shù)器(COUNTER)、接收緩存器(BUFFER)、接收校驗(yàn)?zāi)K(VERIFY)等組成部分。
其中,OTP(One-Time-Programmable)為一種一次可編程、非易失性存儲(chǔ)器,可以芯片在斷電的時(shí)情況下,保持存儲(chǔ)器中的內(nèi)容不丟失。OTP中的存儲(chǔ)中的一部分用來(lái)保存各命令的回復(fù)數(shù)據(jù)。另一部分即用來(lái)存儲(chǔ)身份認(rèn)證芯片的配置信息。這些配置信息包括:接收解碼時(shí)使用的多個(gè)命令對(duì)應(yīng)的ID碼、以及各個(gè)ID碼對(duì)應(yīng)長(zhǎng)度,和各個(gè)ID碼相應(yīng)的回復(fù)內(nèi)容的存儲(chǔ)首地址。身份認(rèn)證芯片是在芯片上電復(fù)位釋放而開(kāi)始工作后,配置信息管理模塊(CONFIG),發(fā)送讀請(qǐng)求至OTP中,請(qǐng)求讀取保存在OTP的芯片的配置信息。OTP將芯片的配置信息按順序送至配置信息管理模塊(CONFIG)進(jìn)行保存。此后,配置信息管理模塊(CONFIG)將芯片配置信息進(jìn)行譯碼,并且將各項(xiàng)配置信息(dec_cfg)輸出至控制模塊(CTRL)。
本方案的工作原理如圖 1所示。身份認(rèn)證芯片工作時(shí),IO管理模塊(IO_MUX)將從芯片外部接收到的串行通信數(shù)據(jù)(rx_di)輸入到接收模塊(RX)中。接收模塊(RX)將通過(guò)對(duì)串行通信數(shù)據(jù)(rx_di)進(jìn)行解碼,得到解碼后的比特流(rx_bit),將其輸送至接收緩存器(BUFFER)中按順序進(jìn)行存儲(chǔ),同時(shí)對(duì)解碼后的比特流(rx_bit)輸送至接收校驗(yàn)?zāi)K(VERIFY)進(jìn)行校驗(yàn)。當(dāng)接收模塊(RX)接收到1個(gè)完整的字節(jié)時(shí),將會(huì)通過(guò)觸發(fā)接收計(jì)數(shù)器(COUNTER)進(jìn)行累加計(jì)數(shù)。當(dāng)接收模塊(RX)從串行通信數(shù)據(jù)(rx_di)解碼得到通信結(jié)束位時(shí),接收模塊停止工作,同時(shí),接收校驗(yàn)?zāi)K(VERIFY)亦已經(jīng)完成校驗(yàn)過(guò)程,將校驗(yàn)結(jié)果信號(hào)(vrf_result)通知控制模塊(CTRL)。當(dāng)校驗(yàn)結(jié)果信號(hào)(vrf_result)為低電平無(wú)效狀態(tài)時(shí),控制模塊(CTRL)將不啟動(dòng)發(fā)送模塊(TX),而是通知接收模塊(RX)準(zhǔn)備進(jìn)行下一次接收。當(dāng)校驗(yàn)結(jié)果信號(hào)(vrf_result)為高電平有效狀態(tài)時(shí),控制模塊(CTRL)將進(jìn)行進(jìn)一步的校對(duì)工作。當(dāng)控制模塊(CTRL)對(duì)接收通信碼進(jìn)行校對(duì)成功后,將請(qǐng)求OTP讀回相應(yīng)于此通信碼的回復(fù)內(nèi)容,同時(shí)將從OTP讀回的數(shù)據(jù)輸送至發(fā)送模塊(TX),并啟動(dòng)發(fā)送流程。綜上所述,身份認(rèn)證芯片接收外部的通信碼,通過(guò)在芯片內(nèi)部進(jìn)行解碼并且校對(duì),當(dāng)校對(duì)成功時(shí),將相應(yīng)要回復(fù)的數(shù)據(jù)通過(guò)芯片的IO管理模塊輸出至芯片外部,從而完成與芯片外部的加密身份認(rèn)證過(guò)程。
控制模塊(CTRL)的工作原理如圖 2所示。接收通信碼的首個(gè)字節(jié)用來(lái)標(biāo)識(shí)通信碼的類(lèi)型編碼,我們將之稱(chēng)為接收通信碼的ID。在控制模塊(CTRL)中的命令解碼模塊(CMD_DECODE)中,將從接收緩存器(BUFFER)中取出接收通信碼的首個(gè)字節(jié)與芯片的各項(xiàng)配置信息(dec_cfg)中各ID碼一一進(jìn)行校對(duì),如果通信碼的首個(gè)字節(jié)與某一ID碼相等,即進(jìn)一步與各項(xiàng)配置信息(dec_cfg)中各ID碼對(duì)應(yīng)的長(zhǎng)度與收計(jì)數(shù)器(COUNTER)的計(jì)數(shù)值進(jìn)行校對(duì),如果兩者相等,控制模塊(CTRL)將通過(guò)從選擇相應(yīng)的首地址(ADDR_BASE),并從首地址開(kāi)始,請(qǐng)求從OTP中讀回相應(yīng)于此ID要回復(fù)的內(nèi)容。當(dāng)控制模塊(CTRL)從OTP中每讀回1個(gè)字節(jié)時(shí),將觸發(fā)計(jì)數(shù)器(TX_COUNTER)進(jìn)行累加計(jì)數(shù)。累加計(jì)數(shù)器的值與首地址(ADDR_BASE)進(jìn)行加法運(yùn)算后,得到下一個(gè)讀OTP相應(yīng)的地址值,直至相應(yīng)的數(shù)據(jù)被完整讀出為止。從OTP中讀回的數(shù)據(jù)將通過(guò)發(fā)送緩存器(TX_BUFFER)進(jìn)行緩存,并且輸送至發(fā)送模塊(TX),同時(shí)并啟動(dòng)發(fā)送流程。