230 likes | 385 Views
EPC Radio Frequency Identify Protocols Class1 Generation-2 UHF RFID 860 MHZ – 960 MHZ. Tag selection, inventory, access. EPCglobal. ◈ Tag memory. 메모리 구조 kill password Access password CRC-16 Protocol-control (PC) bits EPC. ◈ Tag memory. ◈ Tag memory. Reserved memory
E N D
EPC Radio Frequency Identify ProtocolsClass1 Generation-2 UHF RFID860 MHZ – 960 MHZ Tag selection, inventory, access EPCglobal
◈ Tag memory • 메모리 구조 • kill password • Access password • CRC-16 • Protocol-control (PC) bits • EPC
◈ Tag memory • Reserved memory • Kill password • Access password • EPC memory • 00h ~ 0Fh : CRC-16 • 10h ~ 1Fh : Protocol-control (PC) • 20h ~ : 태그가 부착된 물체를 식별하기 위한 EPC 코드 • TID memory • 00h ~ 07h : 8-bit ISO/IEC 15963 할당 클래스 식별자, EPCglobal은 1111000122 • 07h ~ 1Fh : 태그의 추가 정보나 사용자 명령의 식별을 위한 정보 • 1Fh ~ : 태그와 공급업체의 특정 정보를 저장 • User memory • 사용자에 의해 정의된 사용자의 특정 데이터 저장.
◈ Tag memory • 모든 메모리 공간은 논리적으로 0에서 시작 • 물리적인 메모리구조는 제조업체에 따른다. • 메모리 접근 명령 • Membank parameter - 저장공간 선택 • Address parameter - EBV format을 저장공간내의 특정 메모리 위치를 선택
◈ Tag memory • kill password • 32-bit • Reserved 메모리 00h ~ 1Fh • Default 0 • Zero • kill 동작을 하지 않는다. • Non zero • 리더기는 kill password의 한번 사용으로, 태그를 kill 함. • Read/write 를 영구히 잠근다.
◈ Tag memory • Access password • 32-bit • Reserved 메모리 20h ~ 3Fh • Default 0 • Zero • access password 동작을 하지 않는다. • Non zero • 리더기가 secured 상태로 변하기 전에 access password를 리더기로 요청한다.
◈ Tag memory • CRC-16 • Cyclic redundancy check(순환잉여검사) • 리더기의 R=>T 명령, 태그의 T=>R 응답결과를 보호. • CRC-16생성하기 위해 CRC-16 precursor를 생성. • Inventory 동작 동안 backscatter 하는 PC bits와 EPC를 보호. • EPC메모리 00h ~ 0Fh로 계산된 CRC-16 매핑. • 오류가 없을 경우 나머지는 1D0Fh.
◈ Tag memory • Protocol-control (PC) bits • Inventory 동작 동안 응답(backscatter) 하는 태그의 Physical-layer 정보를 포함. • 16 PC bits - EPC 메모리의 10h 부터 1Fh 에 저장 • Bits 10h ~ 14h : 태그가 응답(backscatter)하는 PC+EPC 의 길이 • Bits 15h ~ 16h : RFU(Class-1 태그를 위해 002에 설정) • Bits 17h ~ 1Fh : NSI(numbering system identifier) • Default 0000h • 응답이 잘리게 되면 Pc bits 을 대신하여 태그는 000002을 사용
◈ Tag memory • EPC • 부착된 태그로 물체를 식별하는 전자 제품 코드 • EPC 메모리 20h부터 저장 • 리더기는 마스크에 EPC의 전체나 일부분을 포함하는 Select 명령을 발생한다. • 리더기는 PC,EPC,CRC-16를 응답(backscatter)하는 태그에 ACK 발생 • 리더기는 EPC의 부분이나 전체를 읽도록 Read 명령을 발생.
◈ Sessions and inventrory flags • 4개의 세션(S0,S1,S2,S3) • Inventory 단계 동안에는 하나의 세션에만 참여 가능. • 태그들은 각 세션 동안 독립적인 inventoried flag를 유지. • 4개의 inventory flag들은 A와 B의 값을 가진다. • Inventory 단계의 시작 시 리더기는 4개의 세션중 하나의 세션에서 • 두 개 이상의 리더기는 하나의 공통적인 태그군에 대해 독립적인 목록을 만들기 위해 세션들을 사용한다. • 하나의 세션에서 inventory
◈ Selected flag • 태그들은 selected flag, SL, Select command 를 수행. • 쿼리명령의 SEL 파라미터 • 호출기기가 태그의 목록을 기술하는 것을 허용,플래그 무시,SL값에 상관없이 태그를 목록화 • SL 은 특정 세션에 상관없이, 모든 태그에 적용 • 태그는 저장된 값에 따라 SL 플래그와 함께 power on. • 태그가 SL의 지속 시간보다 더 큰 시간 동안 전원을 잃게 되지 않는다면, 태그는 (~SL을 설정한)와 함께 전원을 켠다. • 태그는 전원이 들어올 때 그것의 SL 플래그를 재설정하여 전력을 잃을 때 마다 그것의 SL플래그는 지속 시간을 가지게 한다.
◈ Tag states and slot counter • Ready state • Arbitrate state • Reply state • Acknowledged state • Open state • Secured state • Killed state • Slot counter
◈ Tag states and slot counter • Ready state • 죽지 않거나 Inventory round에 참여하지 않는 태그들에게 전압을 주기 위한 "holding state“ • RF 필드 태그로 전원이 들어가면 죽지 죽지 않은 태그는 ready 상태로 들어간다. • 목록화된 파라미터와(쿼리에서 특별한 세션을 위하여) 현재의 플래그 값에 맞는 sel 파라미터를 갖는 쿼리 명령을 받을 때까지 태그는 ready 상태로 남는다. • 태그의 매칭은 그들의 RNG로 부터의 Q-bit 넘버를 작성하여 슬롯 카운터로 저장, 만약 넘버가 0이 아니면 arbitrate 상태, 0이면 reply 상태로 변한다. • Killed 상태를 제외한 상태의 태그가 전원을 잃는다면 전원을 되찾을 때 ready로 돌아온다.
◈ Tag states and slot counter • Arbitrate state • 현재 inventory round 에 있는 태그, slot counter>0 • QueryRep 명령을 받을 때마다 슬롯의 카운터 감소 • 0000h 에 reply 상태로 변함. • Reply state • Backscatter RN16 • 태그가 유효한 ACK를 받을때, - backscattering PC, EPC, CRC-16 - acknowledged 상태로 변함. • ACK를 무효한 ACK나 응답실패시 - Arbitrate로 변함.
◈ Tag states and slot counter • Acknowledged state • 받는 명령에 따라 killed를 제외한 어떤 상태로도 변함. • Open state • Acknowledged state의 access password <>0 태그 - 수신되는 Req-RN 명령에 의해 open 상태로 변함 - 새로운 RN16 을 backscattering. • Lock를 제외한 모든 access 명령을 실행 • 수신되는 명령에 따라 Acknowledged state를 제외한 어떤 상태로도 변환. • 태그 응답과 리더기 전송사이의 최대 딜레이 제한 없음.
◈ Tag states and slot counter • Secured state • Acknowledged state의 access password = 0 태그 - 수신되는 Req-RN 명령에 의해 secured 상태로 변함 - 새로운 RN16 을 backscattering • Open state에서 access password <>0 - 유효한 Access 명령을 수신하여 secured 로 변환 • 모든 access 명령을 실행. • 수신되는 명령에 따라 open 이나 acknowledged 상태를 제회한 모든 상태로 변환.
◈ Tag states and slot counter • Killed state • Kill password<>0 인 kill command, valid handle • 영구히 태그를 disable. • Killed state의 태그는 리더기에게 알리고, 이후 리더리로 응답 하지 않음. • Slot counter • 15 bits • QueryAdjust - 앞선 쿼리로부터 Q를 수정 • QueryRep - 태그는 슬롯 카운트를 감소 • 0000h로 감소한 후에 7FFFFh로 롤오버
◈ Tag random or pseudo-random number generator • 태그들은 랜덤이나 의사 난수 생성(RNG)를 실행 • Probability of a single RN16 • j에 대하여 RN16=j 을 갖는 RNG로부터의 RN16의 확률은 0.8/216 < P(RN16=j) < 1.25/216의 범위 • Probability of simultaneously identical sequences • 10,000 개의 태그들에 달하는 태그군에서, 두 개 이상의 태그가 동시에 같은 RN16을 생성하는 확률은 0.1%보다 작다, • Probability of predicting and RN16 • 표6.3에서 Tr의 끝 이후로 태그들의 RNG 10ms 부터의 RN16은 0.025%보다 확률이 크진 않다. 만약 이전의 결과들이 RNG와 같다면, 알려진 대로 동일한 상태대로 수행한다.
◈ Managing Tag populations • Select • inventory 와 access 를 위하여 하나의 태그군을 리더기가 선택하는 과정 • 특정 태그군을 선택하기 위하여 하나 이상의 Select 명령을 사용 • Inventory • 리더기가 태그를 식별하는 과정 • 리더기는 4개의 세션 중에 하나에서 쿼리 명령을 전함으로써 inventory round를 시작 • inventory 단계는 동시에 하나의 오직 한 세션에서만 동작 • Access • 개별적인 태그들과 통신하는 과정(read/write) • Access는 여러 명령을 포함 • R=>T연결의 cover-coding 을 기반인 one-time-pad를 사용