Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração
Autor(a) principal: | |
---|---|
Data de Publicação: | 2011 |
Tipo de documento: | Tese |
Idioma: | por |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) |
Texto Completo: | https://hdl.handle.net/20.500.12733/1617843 |
Resumo: | Orientadores: Sandro Rigo, Guido Costa Souza de Araújo |
id |
UNICAMP-30_c437660d8375a41917b1b177d5e43ab1 |
---|---|
oai_identifier_str |
oai::862508 |
network_acronym_str |
UNICAMP-30 |
network_name_str |
Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) |
repository_id_str |
|
spelling |
Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstraçãoAnalysis and verification support methodologies for high abstractions level platformsDepuração na computaçãoReflexão (Computação)Arquitetura de computadorHardware - Engenharia de sistemasDebugging in computer scienceReflection (Computer science)Computer architectureHardware - Systems engineeringOrientadores: Sandro Rigo, Guido Costa Souza de AraújoTese (doutorado) - Universidade Estadual de Campinas, Instituto de ComputaçãoResumo: A crescente complexidade das descrições de hardware em alto nível tem motivado a criação de metodologias de desenvolvimento por vários anos, sendo o mais recente nível de abstração representado pelo que é chamado de projeto Electronic System Level (ESL) e os projetos baseados em plataformas. Neste cenário, a exploração simultânea de diversos modelos arquiteturais, como os Systems-on-Chip (SoC), é a chave para se obter um bom balanceamento no particionamento hardware-software e melhorar o desempenho tanto do hardware quanto do software. Isto demanda uma infraestrutura de simulação de plataformas capaz de simular com rapidez, em um alto nível de abstração, tanto o software quanto o hardware. SystemC despontou como uma das linguagens de descrição mais adotadas e, juntamente com a modelagem em nível de transação (TLM, do inglês Transaction Level Modeling), vem sendo amplamente reconhecido como a técnica mais propícia para desenvolvimento em ESL. Uma das características mais marcantes de TLM é a possibilidade de reutilizar toda a infraestrutura da plataforma para a simulação de hardware e software [12]. A integração da verificação no fluxo de projeto é muito importante em uma metodologia baseada em TLM. Uma das técnicas de verificação mais conhecidas é a injeção de estímulos, usada para guiar a simulação para casos limite. Este tipo de funcionalidade é útil para aumentar a cobertura da verificação. As ferramentas disponíveis para descrições SystemC não permitem injeção de estímulos sem que o modelo seja alterado ou sem a utilização de um núcleo de simulação modificado para tal tarefa. Para a depuração, não temos notícia de nenhuma ferramenta de código aberto disponível, porém existem boas ferramentas comerciais preparadas especificamente para a depuração de modelos em SystemC. Nesta tese são propostas três metodologias para melhorar a capacidade de introspecção, depuração e análise de modelos de hardware descritos em alto nível de abstração. A primeira delas é composta por uma metodologia de reflexão computacional aplicável a módulos SystemC através da inserção de módulos de inspeção, que chamamos de ReFlexBox. A segunda técnica desenvolvida foi chamada de SignalReplay, e representa uma evolução da primeira técnica voltada para a captura, análise e injeção dos dados coletados pela reflexão. A última metodologia proposta, chamada de PDFA (do inglês, Platform Dataflow Analysis) visa extrair metadados através da reflexão de tipos sobrecarregados, permitindo que o projetista aplique técnicas de compiladores para a análise de hardware. Os resultados obtidos são apresentados como experimentos, implementados na forma de estudos de caso. Estes experimentos permitiram avaliar a eficácia das técnicas propostas que, ao contrário de trabalhos correlatos, aderem a seis princípios que consideramos fundamentais: (1) não são intrusivas em relação as modificações no modelo que podem ser necessárias para implementar a introspecção; (2) não necessitam de modificações no ambiente de simulação, compiladores ou bibliotecas, incluindo nossa linguagem alvo: SystemC; (3) geram uma sobrecarga pequena no tempo de simulação; (4) proveem observabilidade e controlabilidade; (5) são extensíveis, permitindo a adaptação para utilização em trabalhos similares, com pouca ou nenhuma modificação nas metodologias; e (6) protegem a propriedade intelectual do módulo sob verificaçãoAbstract: The increasing complexity of high level hardware descriptions has motivated the creation of development methodologies for several years, being the most recent level of abstraction represented by projects based on platforms and on the so called Electronic System Level design (ESL). In this scenario, simultaneously exploring different architectural models, like Systems-on-Chip (SoC), is the key to achieve a good balance on hardware-software partitioning and improve performance of both hardware and software. This requires a platform simulation infrastructure able to simulate at high speeds and high level of abstraction, both software and hardware. SystemC emerged as one of the most widely adopted description languages and, when used with the Transaction Level Modeling (TLM), has been widely recognized as the most suitable for ESL development. One of the most striking features of TLM is the possibility to reuse all the infrastructure platform for the simulation of hardware and software [12]. Integration of the verification into design flow is a key point in a TLM-based methodology. One well-known verification technique is the injection stimuli, used to guide the simulation to borderline states. This kind of functionality is useful to increase the coverage of the verification. The tools currently available for SystemC descriptions do not allow stimuli injection without model modifications, or without the use of a modified SystemC simulation core specially crafted for this task. We could not find any open source tool for debugging, but there are good commercial tools specifically prepared to SystemC model debugging. This thesis proposes three methodologies focused on improving the support for introspection, debug, and analysis of hardware models described in high abstraction level. First one is a methodology using computational reflection, applicable to SystemC descriptions by inserting inspection modules, that we call ReflexBoxes. The second technique is called SignalReplay, an evolution of the first technique focused on the capture, injection, and analysis of data collected by reflection. The last proposed methodology, called Platform Dataflow Analysis (PDFA), aims on the metadata extraction through overloaded type reflection, allowing the designer to use compiler techniques for hardware analysis. The results are presented as experiments, implemented as case studies. These experiments allowed us to evaluate the effectiveness of the proposed techniques that, unlike related work, adhere to what we consider six fundamental principles: (1) are not intrusive regarding any model modifications that may be necessary to implement introspection; (2) do not require any change in simulation environment, compilers, or libraries, including our target language: SystemC; (3) generate minimal overhead in simulation time; (4) provide observability and controllability; (5) are extensible, allowing the adaptation for use in similar work with little or no change in the methodology; and (6) protect the intellectual property of the module under verificationDoutoradoCiência da ComputaçãoDoutor em Ciência da Computação[s.n.]Rigo, Sandro, 1975-Araújo, Guido Costa Souza de, 1962-Azevedo, Rodolfo Jardim deCentoducatte, Paulo CesarSantos, Luiz Claudio Villar dosCalazans, Ney Laert VilarUniversidade Estadual de Campinas (UNICAMP). Instituto de ComputaçãoPrograma de Pós-Graduação em Ciência da ComputaçãoUNIVERSIDADE ESTADUAL DE CAMPINASAlbertini, Bruno de Carvalho, 1980-20112011-06-10T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdf68 f. : il.https://hdl.handle.net/20.500.12733/1617843ALBERTINI, Bruno de Carvalho. Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração. 2011. 68 f. Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1617843. Acesso em: 3 set. 2024.https://repositorio.unicamp.br/acervo/detalhe/862508porreponame:Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)instname:Universidade Estadual de Campinas (UNICAMP)instacron:UNICAMPinfo:eu-repo/semantics/openAccess2017-08-29T11:07:16Zoai::862508Biblioteca Digital de Teses e DissertaçõesPUBhttp://repositorio.unicamp.br/oai/tese/oai.aspsbubd@unicamp.bropendoar:2017-08-29T11:07:16Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) - Universidade Estadual de Campinas (UNICAMP)false |
dc.title.none.fl_str_mv |
Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração Analysis and verification support methodologies for high abstractions level platforms |
title |
Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração |
spellingShingle |
Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração Albertini, Bruno de Carvalho, 1980- Depuração na computação Reflexão (Computação) Arquitetura de computador Hardware - Engenharia de sistemas Debugging in computer science Reflection (Computer science) Computer architecture Hardware - Systems engineering |
title_short |
Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração |
title_full |
Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração |
title_fullStr |
Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração |
title_full_unstemmed |
Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração |
title_sort |
Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração |
author |
Albertini, Bruno de Carvalho, 1980- |
author_facet |
Albertini, Bruno de Carvalho, 1980- |
author_role |
author |
dc.contributor.none.fl_str_mv |
Rigo, Sandro, 1975- Araújo, Guido Costa Souza de, 1962- Azevedo, Rodolfo Jardim de Centoducatte, Paulo Cesar Santos, Luiz Claudio Villar dos Calazans, Ney Laert Vilar Universidade Estadual de Campinas (UNICAMP). Instituto de Computação Programa de Pós-Graduação em Ciência da Computação UNIVERSIDADE ESTADUAL DE CAMPINAS |
dc.contributor.author.fl_str_mv |
Albertini, Bruno de Carvalho, 1980- |
dc.subject.por.fl_str_mv |
Depuração na computação Reflexão (Computação) Arquitetura de computador Hardware - Engenharia de sistemas Debugging in computer science Reflection (Computer science) Computer architecture Hardware - Systems engineering |
topic |
Depuração na computação Reflexão (Computação) Arquitetura de computador Hardware - Engenharia de sistemas Debugging in computer science Reflection (Computer science) Computer architecture Hardware - Systems engineering |
description |
Orientadores: Sandro Rigo, Guido Costa Souza de Araújo |
publishDate |
2011 |
dc.date.none.fl_str_mv |
2011 2011-06-10T00:00:00Z |
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://hdl.handle.net/20.500.12733/1617843 ALBERTINI, Bruno de Carvalho. Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração. 2011. 68 f. Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1617843. Acesso em: 3 set. 2024. |
url |
https://hdl.handle.net/20.500.12733/1617843 |
identifier_str_mv |
ALBERTINI, Bruno de Carvalho. Metodologias de suporte a verificação e análise de modelos de plataformas em alto nível de abstração. 2011. 68 f. Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1617843. Acesso em: 3 set. 2024. |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.relation.none.fl_str_mv |
https://repositorio.unicamp.br/acervo/detalhe/862508 |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf 68 f. : il. |
dc.publisher.none.fl_str_mv |
[s.n.] |
publisher.none.fl_str_mv |
[s.n.] |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) instname:Universidade Estadual de Campinas (UNICAMP) instacron:UNICAMP |
instname_str |
Universidade Estadual de Campinas (UNICAMP) |
instacron_str |
UNICAMP |
institution |
UNICAMP |
reponame_str |
Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) |
collection |
Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) - Universidade Estadual de Campinas (UNICAMP) |
repository.mail.fl_str_mv |
sbubd@unicamp.br |
_version_ |
1809189077603319808 |