遵守iso15693協(xié)議的電子標(biāo)簽都有一個(gè)8字節(jié)共64bit的序列號(hào)(uid),這個(gè)uid一方面可以使范圍內(nèi)的標(biāo)簽互相區(qū)別,更重要的是可以在多標(biāo)簽同時(shí)讀寫時(shí)用于防沖突。8字節(jié)uid按權(quán)重從高到低標(biāo)記為uid7--uid0,其中uid7固定為16進(jìn)制的e0h,uid6是標(biāo)簽制造商的代碼,例如nxp的代碼為04h,ti的代碼為07h;uid5為產(chǎn)品類別代碼,比如icode sl2 ics20是01h,tag-it hf-i plus chip為80h,tag-it hf-i plus inlay為00h。剩下的uid4-uid0為制造商內(nèi)部分配的號(hào)碼。
電子標(biāo)簽數(shù)量眾多,應(yīng)用范圍極為廣泛。為了區(qū)分不同行業(yè)中的電子標(biāo)簽,iso用一個(gè)字節(jié)的afi (application family identifier)來區(qū)分不同行業(yè)中的電子標(biāo)簽。afi的高半字節(jié)表示主要行業(yè),低半字節(jié)表示主要行業(yè)中的細(xì)分行業(yè)。其中afi=00h表示所有行業(yè)。需要注意的是并不強(qiáng)制要求電子標(biāo)簽支持afi,電子標(biāo)簽是否支持afi是可選的,在收到inventory清點(diǎn)命令后,如果標(biāo)簽不支持afi,則標(biāo)簽必須立刻做出應(yīng)答;如果支持afi,則只有收到的afi與標(biāo)簽存儲(chǔ)的afi一致才做出應(yīng)答。
15693國(guó)際標(biāo)準(zhǔn)還規(guī)定了一個(gè)字節(jié)的可選的數(shù)據(jù)存儲(chǔ)格式識(shí)別符(dsfid),用來區(qū)分標(biāo)簽中不同的數(shù)據(jù)存儲(chǔ)格式。如果標(biāo)簽支持dsfid,在清點(diǎn)命令中標(biāo)簽將返回一個(gè)非零的dsfid,讀寫器可據(jù)此判斷射頻場(chǎng)中的標(biāo)簽是否具有期望的數(shù)據(jù)格式。
電子標(biāo)簽的內(nèi)存可達(dá)8k字節(jié),以數(shù)據(jù)塊(block)為單位進(jìn)行管理,標(biāo)簽內(nèi)最多可以有256個(gè)數(shù)據(jù)塊,每個(gè)數(shù)據(jù)塊可以有32字節(jié)。數(shù)據(jù)塊的內(nèi)容可以鎖定以防止修改。
讀寫器與標(biāo)簽之間的數(shù)據(jù)交流使用命令-應(yīng)答的方式,如下所示:
命令:標(biāo)志(flags)+命令碼(command code)+參數(shù)(parameters)+數(shù)據(jù)(application data)+校驗(yàn)(crc16)
應(yīng)答:標(biāo)志(flags)+參數(shù)(parameters)+數(shù)據(jù)(application data)+校驗(yàn)(crc16)
可見應(yīng)答除了沒有應(yīng)答碼之外,結(jié)構(gòu)與命令碼類似。每一條命令及其應(yīng)答都使用crc校驗(yàn)以保證數(shù)據(jù)的完整性。讀寫器可以發(fā)出一條請(qǐng)求后讓射頻場(chǎng)內(nèi)的所有電子標(biāo)簽同時(shí)應(yīng)答(addressed mode),也可以一個(gè)電子標(biāo)簽應(yīng)答(non-addressed mode)。在non-addressed模式下,可以使用兩種方法一個(gè)電子標(biāo)簽,一種是命令中給出電子標(biāo)簽的序列號(hào)uid,另一種是命令中不給出 uid,而是在之前的步驟中先選中一個(gè)標(biāo)簽,使其處于選中(select)狀態(tài),然后命令中指明僅要求處于選中狀態(tài)的標(biāo)簽做出應(yīng)答。
iso15693電子標(biāo)簽的防沖突與iso14443a中基于位的防沖突類似。其最根本的一點(diǎn)就是基于標(biāo)簽有一個(gè)的序列號(hào)。因?yàn)樾蛄刑?hào)的性,所以范圍內(nèi)的任意兩個(gè)標(biāo)簽,其64bit的序列號(hào)中總有一個(gè)bit的值是不一樣的,也就是說任意兩個(gè)標(biāo)簽的序列號(hào)總有一個(gè)bit上一個(gè)是“0”,另一個(gè)是“1”。防沖突的過程可以1位1位的進(jìn)行,也可以4位4位的進(jìn)行。具體的原理參見位和時(shí)隙相結(jié)合的防沖突機(jī)制。
電子標(biāo)簽支持的命令可以分為強(qiáng)制(mandatory)命令、可選(optional)命令和用戶(custom)命令三種。強(qiáng)制命令和可選命令的功能和格式在標(biāo)準(zhǔn)中都有明確而詳細(xì)的定義,用戶命令則由標(biāo)簽制造商制定。
強(qiáng)制命令有兩個(gè):清點(diǎn)(inventory)和保持靜默(stay quiet),標(biāo)簽必須支持。標(biāo)簽最基本的功能是可以通過防沖突送出一個(gè)標(biāo)簽識(shí)別號(hào),這兩個(gè)命令就是實(shí)現(xiàn)這個(gè)功能的。如果磁場(chǎng)中有多個(gè)標(biāo)簽,使用清點(diǎn)命令可以得到一個(gè)標(biāo)簽uid,然后使用保持靜默命令使其休眠;然后再使用清點(diǎn)命令可以得到下一個(gè)標(biāo)簽uid,依次類推,從而實(shí)現(xiàn)對(duì)射頻場(chǎng)中的所有標(biāo)簽實(shí)現(xiàn)清點(diǎn)輪詢。
可選命令是否支持由標(biāo)簽制造商決定,可以分為以下4類:
1.對(duì)整個(gè)標(biāo)簽操作:選擇(select)、復(fù)位(reset to ready)、讀取系統(tǒng)信息(get system information);
2.對(duì)標(biāo)簽數(shù)據(jù)塊操作:讀單塊(read single block)、寫單塊(write single block)、鎖數(shù)據(jù)塊(lock block)、讀多塊(read multiple blocks)、寫多塊(write multiple blocks)、讀多塊安全狀態(tài)(get multiple block security status);
3.對(duì)afi操作:寫afi(write afi)、鎖定afi(lock afi);
4.對(duì)dsfid操作:寫dsfid(write dsfid)、鎖定dsfid(lock dsfid)。