Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware
Ano de defesa: | 2018 |
---|---|
Autor(a) principal: | |
Orientador(a): | |
Banca de defesa: | |
Tipo de documento: | Tese |
Tipo de acesso: | Acesso aberto |
Idioma: | por |
Instituição de defesa: |
Universidade Federal de Pernambuco
UFPE Brasil Programa de Pos Graduacao em Ciencia da Computacao |
Programa de Pós-Graduação: |
Não Informado pela instituição
|
Departamento: |
Não Informado pela instituição
|
País: |
Não Informado pela instituição
|
Palavras-chave em Português: | |
Link de acesso: | https://repositorio.ufpe.br/handle/123456789/30976 |
Resumo: | O uso de sistemas eletrônicos embarcados em um amplo espectro de aplicações aumentou substancialmente. Telefones celulares, computadores de bordo, dispositivos IoT e sistemas ciber-físicos são alguns exemplos em que sistemas embarcados exigem mais flexibilidade para o processamento de diferentes tipos de aplicações e protocolos de comunicação. A necessidade desta flexibilidade elevada requer o uso de processadores de propósito geral como uma solução para configurar e controlar uma quantidade crescente de periféricos. No entanto, isso também implica uma necessidade crescente do uso de software dependente de hardware (HdS). Uma vez que HdS é um componente altamente crítico e propenso a erros devido à natureza do ambiente no qual está inserido e a sua difícil codificação, é importante que as fases de desenvolvimento e de operação destes componentes sejam suportadas por metodologias que tornem mais explícitas violações de acessos a dispositivos através do acompanhamento de de garantias e suposições especificadas em contratos definidos com base na especificação dos protocolos de comunicação de alto nível entre processadores e estes dispositivos. Assim, esta abordagem propõe uma técnica Built-in Self Test(BIST) fundamentada na formalização destes contratos e da validação em tempo de execução de propriedades temporais de protocolos de comunicação de alto nível entre os dispositivos e seus device drivers, as quais compões tais contratos e são comumente especificadas com base em uma documentação informal (datasheets), durante a simulação de plataformas virtuais ou execução de plataformas de hardware real. Para tornar essa técnica viável juntamente com metodologias consolidadas, uma linguagem específica foi desenvolvida para suportar a sua utilização como uma melhoria de modelos baseados na plataforma, permitindo um refinamento incremental do protocolo de comunicação e das especificações das propriedades temporais juntamente com o refinamento da plataforma. Alguns experimentos usando um dispositivo DM9000A Ethernet mostraram que esta abordagem é eficaz na detecção de erros que provocam falhas críticas indesejada em HdS, consumindo pouco tempo de projeto e impactando pouco ou, para plataformas de hardware real, sem impacto algum no tempo de execução. |