Vai al contenuto
Lingua: IT

Perché il lettore e il tag non parlano mai nello stesso momento?

Il lettore fornisce il campo che tiene vivo il tag, e il tag risponde modulando quello stesso campo. Esiste un solo canale e una sola fonte di energia, quindi le due parti devono alternarsi. Ogni scambio è rigorosamente domanda e risposta, mai le due cose insieme.

Perché il canale può portare una sola voce

Il lettore non è solo un interlocutore, è la fonte di alimentazione. Il suo campo deve mantenersi senza interruzione, altrimenti il tag smette di esistere elettricamente. Il tag non può impadronirsi del canale, perché sarebbe segare il ramo su cui è seduto.

Così il tag risponde nell'unico modo che gli resta: cambiando quanto preleva da quel campo. Il lettore parla, alimenta e ascolta nello stesso momento, e il tag può rispondere solo negli spazi che il lettore gli lascia.

Quanto costa un'andata e ritorno

Ogni scambio consta di una domanda, una pausa, una risposta e un'altra pausa prima della domanda successiva. Quelle pause sono brevi, ma si pagano per andata e ritorno, non per byte.

La conseguenza contraddice quello che ci si aspetta: duecento byte in un solo scambio vanno più veloci di duecento byte distribuiti su cinque. Nell'NFC il bene scarso non è la larghezza di banda, è il cambio di turno.

Perché molti record piccoli si leggono lentamente

Un tag con un solo record che contiene un indirizzo web si legge in una manciata di scambi. Lo stesso contenuto distribuito su sei record corti porta più byte di intestazione, richiede quindi qualche scambio in più e passa un po' più tempo ad aspettare tra uno e l'altro.

Vale la pena saperlo prima di progettare il contenuto di un tag. Se un avvicinamento viene percepito lento, la domanda utile è per quante cose diverse il telefono ha dovuto chiedere, e non quanti byte sono tornati.

Cosa succede se un turno si interrompe

Se muovi il telefono a metà dello scambio, il tag perde l'alimentazione tra una domanda e la sua risposta. Non c'è memoria intermedia né ripresa: la sequenza semplicemente si interrompe.

In una lettura è innocuo: non ottieni nulla e riprovi. In una scrittura non lo è. Il tag può restare allora con l'inizio di un messaggio e nient'altro, in uno stato che si legge come danneggiato e non come vuoto. È questa la ragione meccanica del consiglio di verificare una scrittura invece di fidarsi che sia andata bene, e la ragione per cui un lotto di tag scritto in fretta va controllato prima di spedirlo.

Domande frequenti

Un tag potrebbe interrompere il lettore se ne avesse bisogno?

No. Non ha modo di segnalare nulla fuori dal campo che lo alimenta, né alcuna autorità sul canale. Un tag può solo rispondere, e solo quando il lettore gli ha lasciato posto per una risposta.

È per questo che l'NFC è più lento di quanto suggerisca la sua velocità?

In sostanza, sì. Le velocità specificate descrivono il canale mentre trasporta dati, e uno scambio reale passa buona parte del suo tempo nelle pause tra i turni. La portata effettiva di una lettura resta parecchio sotto il valore nominale.

Lo stesso limite vale per l'emulazione di scheda?

Sì. Quando un telefono emula una scheda assume il ruolo che avrebbe il tag e risponde a un terminale esterno che fornisce il campo. Il cambio di turno è lo stesso, si invertono soltanto i ruoli.

Devo verificare ogni scrittura?

Per tutto ciò che va in produzione, sì. Una scrittura interrotta a metà sequenza lascia un tag che sembra scritto e non lo è, e la verifica costa un secondo per tag contro il costo di mille inservibili.