Return to search

Suporte a simulação distribuída em SystemC

Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2007. / Submitted by Larissa Ferreira dos Angelos (ferreirangelos@gmail.com) on 2010-01-12T13:35:53Z
No. of bitstreams: 1
2007_RobertoSilvaCatanhede.pdf: 904030 bytes, checksum: 50f929f665821f0d1a60f501a490e944 (MD5) / Approved for entry into archive by Joanita Pereira(joanita) on 2010-01-12T19:04:10Z (GMT) No. of bitstreams: 1
2007_RobertoSilvaCatanhede.pdf: 904030 bytes, checksum: 50f929f665821f0d1a60f501a490e944 (MD5) / Made available in DSpace on 2010-01-12T19:04:10Z (GMT). No. of bitstreams: 1
2007_RobertoSilvaCatanhede.pdf: 904030 bytes, checksum: 50f929f665821f0d1a60f501a490e944 (MD5)
Previous issue date: 2007 / A contínua evolução tecnológica da microeletrônica viabiliza a integração de sistemas cada vez mais complexos em dispositivos semicondutores. Os sistemas integrados monolí- ticos (SoC - Systems on Chip) atuais permitem a integração de processadores, memórias e módulos dedicados analógicos, digitais e de radio-freqüência em uma única pastilha de silício. A simulação de tais sistemas é uma etapa fundamental no desenvolvimento de um SoC, pois permite a verificação de sua funcionalidade antes do detalhamento de sua im- plementação. A disponibilização de modelos simuláveis dos elementos de processamento de um SoC já nas primeiras etapas do projeto é igualmente fundamental para acelerar o processo de desenvolvimento do software embarcado, permitindo que o código produzido possa ser executado e testado de forma concorrente ao projeto do hardware. A redução do tempo de simulação afeta diretamente o ciclo de projeto do SoC, visto que impacta tanto no desenvolvimento do hardware quanto no do software embarcado. Um dos fatores limitantes na aceleração da simulação é a utilização de sistemas monoproces- sados. Tipicamente, uma descrição de um SoC é compilada e executa em um computador monoprocessado que simula por software o paralelismo do hardware. Uma forma de se atingir o objetivo de acelerar a simulação de sistemas em silício é a executação concorrente dos módulos do sistema. Assim, em vez dos módulos serem simulados em um único pro- cessador, eles podem ser distribuídos entre nodos de um cluster de computadores, sendo simulados com paralelismo real. O objetivo deste trabalho é o estudo da introdução de processamento concorrente em sistemas integrados descritos em SystemC. Essa linguagem atingiu, ao longo dos últimos anos, o status de padrão para descrições em nível de sistema. Baseia-se em C++, in- troduzindo conceitos de orientação a objetos na descrição do hardware. Neste trabalho é proposta a paralelização da simulação de sistemas descritos em SystemC pela distribuição de módulos entre processos de um sistema multiprocessado. A comunicação entre módu- los SystemC se realiza através de filas não bloqueantes, sendo a troca de mensagens entre processos implementada através do protocolo TCP/IP. Como estudo de caso para simulação concorrente foi estudado e descrito em SystemC um algoritmo de segmentação de imagens, que serve como base para métodos para deteção de movimento em seqüências de imagens a ser implementado em um SoC para redes de sensores em desenvolvimento no contexto do projeto NAMITEC. Apresenta-se o algoritmo de segmentação e os resultados de sua simulação em SystemC. _______________________________________________________________________________________ ABSTRACT / The ever increasing evolution of microelectronics allows the integration of more and more complex systems in semiconductor devices. Present day System on Chip (SoC) may integrate processors, memories, analog, mixed-signals, digital and RF modules in a single chip. The simulation of a SoC is a fundamental step in system design, since it permits the verification of its funcionality before dwelling on the details of the hardware design. The availability of simulation models for the processing elements early in the design process is also important for the embedded software development, which may then occur concurrently to hardware design. The reduction of simulation time have a direct impact on the design cycle time, affecting both the hardware and the software development. The use of monoprocessor platforms for simulation is a limiting factor in the searchof simulation speed up. Tipically, the SoC description is compiled and executed in a single process, where the hardware paralelism is simulated by software. One possible way to reduce simulation time is the parallel execution of the hardware models. Instead of being simulated in a single process, the modules may be distributed among nodes of a cluster which execute them in parallel. The goal of this work is to study the introduction of concurrent processing in the simulation of SoC described in SystemC. This languagem attained the status of a standard for system level modeling last years. It is based on C++, introducing object oriented concepts in the hardware modeling. The poposal of this work is to paralelize the simulation by distributing SystemC modules among different processes in a multiprocessor system. The communication among those modules is performmed through non-blocking fifos and is implemented over the TCP/IP protocol. A case study was developed for verification purposes. It consists in the implementation of a image segmentation algorithm to be used as support for image detection in video sequences, as part of the research project NAMITEC which targets the development of a SoC for sensor networks. The image segmentation algorithm and the simulation results in SystemC are presented.

Identiferoai:union.ndltd.org:IBICT/oai:repositorio.unb.br:10482/3135
Date January 2007
CreatorsCantanhede, Roberto Silva
ContributorsJacobi, Ricardo Pezzuol
Source SetsIBICT Brazilian ETDs
LanguagePortuguese
Detected LanguagePortuguese
Typeinfo:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis
Sourcereponame:Repositório Institucional da UnB, instname:Universidade de Brasília, instacron:UNB
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0029 seconds