Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware

Detalhes bibliográficos
Ano de defesa: 2018
Autor(a) principal: MACIEIRA, Rafael Melo
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
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.
id UFPE_e23b72c16229c471c843571cdecdc07b
oai_identifier_str oai:repositorio.ufpe.br:123456789/30976
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str
spelling Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardwareEngenharia da computaçãoSistemas embarcadosO 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.FACEPEThe use of electronic embedded system for general or multi-purpose applications has increased substantially. Mobile phones, vehicles computers and IoT and cyber-physical systems are some examples in which embedded systems require more flexibility for processing different types of applications and communication protocols. The need for this high flexibility requires the use of general purpose processors as a solution for configuring and controlling a considerable amount of peripherals. However, this also implies an increasing need for hardware-dependent software (HdS). Since HdS is a highly critical component and error prone due to the nature of the environment in which it is inserted and its hard coding, it is important that its development and runtime phases are supported by methodologies that make more explicit devices’ accesses violations, through the monitoring of contracts defined based on the communication protocol specification. Thus, this approach proposes a Built-in Self Test(BIST) technique base on the formalization and runtime validation of temporal properties in high-level communication protocols between devices and drivers, commonly specified in informal documentation (datasheets), during the simulation of virtual platforms or execution of hardware platforms. To make this technique feasible together with consolidated methodologies, a domain-specific language was designed to support its use as an improvement of platform-based designs, allowing an iterative refinement of the communication protocol and temporal properties specifications along with the refinement of the platform. Some experiments using an DM9000A Ethernet device and an Altera UART showed that this approach is effective in detecting errors that provoke undesired critical failures in HdS, consuming little design time and little or, for real hardware platforms, no execution time increasing.Universidade Federal de PernambucoUFPEBrasilPrograma de Pos Graduacao em Ciencia da ComputacaoBARROS, Edna Natividade da Silvahttp://lattes.cnpq.br/0687987855270877http://lattes.cnpq.br/6291354144339437MACIEIRA, Rafael Melo2019-06-07T21:34:01Z2019-06-07T21:34:01Z2018-03-05info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfhttps://repositorio.ufpe.br/handle/123456789/30976porAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPE2019-10-26T02:53:56Zoai:repositorio.ufpe.br:123456789/30976Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212019-10-26T02:53:56Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.none.fl_str_mv Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware
title Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware
spellingShingle Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware
MACIEIRA, Rafael Melo
Engenharia da computação
Sistemas embarcados
title_short Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware
title_full Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware
title_fullStr Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware
title_full_unstemmed Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware
title_sort Técnica baseada em contratos para a validação da comunicação de alto nível entre software e hardware
author MACIEIRA, Rafael Melo
author_facet MACIEIRA, Rafael Melo
author_role author
dc.contributor.none.fl_str_mv BARROS, Edna Natividade da Silva
http://lattes.cnpq.br/0687987855270877
http://lattes.cnpq.br/6291354144339437
dc.contributor.author.fl_str_mv MACIEIRA, Rafael Melo
dc.subject.por.fl_str_mv Engenharia da computação
Sistemas embarcados
topic Engenharia da computação
Sistemas embarcados
description 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.
publishDate 2018
dc.date.none.fl_str_mv 2018-03-05
2019-06-07T21:34:01Z
2019-06-07T21:34:01Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://repositorio.ufpe.br/handle/123456789/30976
url https://repositorio.ufpe.br/handle/123456789/30976
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
publisher.none.fl_str_mv Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPE
instname:Universidade Federal de Pernambuco (UFPE)
instacron:UFPE
instname_str Universidade Federal de Pernambuco (UFPE)
instacron_str UFPE
institution UFPE
reponame_str Repositório Institucional da UFPE
collection Repositório Institucional da UFPE
repository.name.fl_str_mv Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)
repository.mail.fl_str_mv attena@ufpe.br
_version_ 1856041848946032640