O USB tem uma garantia de qualidade de serviço para os dados enviados entre o meu dispositivo USB-CDC e o host USB?
Eu sei que com o RS232 tradicional em uma situação barulhenta (por exemplo, porta de diagnóstico automotivo) os bits ruins acontecem com frequência suficiente para que as somas de verificação sejam importantes para o protocolo. Se eu fosse adaptar esse protocolo a um aplicativo USB puro, posso omitir com segurança a soma de verificação e as rotinas de tratamento de erros relacionadas?
Para referência, estou usando um AT91SAM7S256 com a estrutura USB-CDC fornecida pela Atmel.
Atualizar:
Eu exercitei meu Google-Fu um pouco mais sobre esse problema e encontrei este artigo que descreve uma subclasse CDC para emulação Ethernet e declara:
Pelo cabo USB, os quadros Ethernet encapsulados fluem começando com o endereço MAC de destino e terminando imediatamente antes da soma de verificação do quadro. (A soma de verificação do quadro não é necessária, pois o USB é um transporte confiável.)
Eles podem significar que o USB-CDC é um transporte confiável, e não o USB em geral, uma vez que algumas classes de dispositivos destinadas a dados intermitentes de alta produtividade (webcam?) Podem não querer preencher buffers se um programa não puder pesquisar dados com rapidez suficiente.
Eu ainda gostaria de uma confirmação adicional sobre isso.