Паритет або будь-яке виявлення помилок блоку призначені для виявлення помилок у самій передачі даних. Паритет не призначений для визначення того, відбувається чи ні передача даних.
Зважаючи на лінію електропередачі, існує декілька різних проблем. Тут важливими є дві: 1) відмова прямої лінії самої лінії та 2) блокування помилок даних у певній передачі. Іншими менш актуальними є, наприклад, неправильні напруги лінії, помилки протоколу або помилки безпеки. Паритет допомагає 2, але не 1. Для підсистеми на будь-якому кінці лінії електропередачі, щоб впоратися з 1 (відверта несправність з'єднання), потрібна інша функція протоколу.
Частота виявлення помилок у одному біті паритету часто перевищує 50%. Саме ця швидкість залежить від евристики сегмента даних у протоколі. Скажімо, у вас є пакет (MSB) 1011010111011110, і в останньому переданому біті є одна помилка біту, перевірка парності виявиться невдалою і правильно відхилить його пакет. Аналогічно, якби у вас був помилка даних у першому біті (біт парності), пакет буде відхилений.
Виконання цієї перевірки апаратних засобів надзвичайно просте і не вимагає складної обробки. Це корисно в додатках із відносно низькими коефіцієнтами помилок бітів, щоб відмивати такі речі, як перекос годинника або тактові сигнали, що генеруються процесорами, що працюють зі збиранням сміття.
SPI - це фізичний протокол зв'язку, який розроблений для коротких електрично з'єднаних ліній, де частота помилок однорозрядних не сильно залежить від втрати лінії. Якщо ви щось запускаєте через програш, вам знадобиться щось більш надійне, ніж паритет. Це насправді не те, що робить SPI.
Щоб перевірити, чи пристрій все ще підключено, спробуйте щось вище у стеці. Для порівняння, TCP / IP (зокрема, IP) не вказує біти парності, тоді як багато специфікацій 802.x Ethernet роблять. З іншого боку, IP має складне "ви там?" протокол. Що ти працюєш на вершині SPI? Відповідь на управління зв’язком даних, можливо, є.