Fallos del tipo CWE-1298
3 resultadosCondições de corrida em lógica de hardware
Ocorre quando múltiplos sinais ou operações chegam simultaneamente em circuitos lógicos, causando estados inconsistentes ou impredizíveis. O hardware não consegue garantir a ordem ou o timing correto das operações, levando a comportamentos inesperados, corrupção de dados ou bypass de controles de segurança.
Um processador que verifica permissões e carrega dados em paralelo pode carregar dados antes de validar as permissões completamente, se os sinais não forem sincronizados. Ou dois componentes escrevem no mesmo registro simultaneamente, deixando o estado final indeterminado.
Implementar sincronização adequada entre sinais (handshaking, sincronizadores de clock), usar mecanismos de exclusão mútua em lógica (mutex de hardware), validar ordem de operações em testes e simulação, e revisar a arquitetura para eliminar dependências de timing crítico.