Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/51319
Título: | Real-time linux and hardware accelerated systems on QEMU |
Autor(es): | Naia, Nelson Pinheiro Duarte |
Orientador(es): | Tavares, Adriano |
Data: | 2015 |
Resumo(s): | Software application acceleration, using parallelization techniques and dedicated
hardware components, is often an optimization compromise in a cost-benefit relationship
during the migration of software processes to hardware Intellectual
Property (IP) dedicated cores or accelerators. In real-time applications extra care
is needed when dealing with these issues, so that the real-time requirements of
the application are not compromised. An isolated validation, as far as application
domains are concerned, does not guarantee integral system functionality. Using an
integrated co-simulation environment, chances of early system problem detection
before moving to the physical implementation phase are improved. By adopting a
design flow aided by co-simulation, not only is the development process sped up,
but also resource independent, since the system can be developed in its entirety in
a host platform without being bound to a physical target platform.
This dissertation aims to adopt a methodology of hardware-software co-design
aided by co-simulation and extend embedded system simulation techniques to
hardware IP co-simulation and integral validation, improving the design process
of hardware accelerated embedded systems in their various development phases.
Using Quick EMUlator (QEMU) as a tool for emulating embedded software platforms
in a Linux-based environment, modifications were idealized and developed
to enable QEMU to extend its embedded software platform emulating capabilities
for custom hardware co-processor development purposes. Two QEMU extensions
were developed, enabling easy integration of behavioral devices and co-simulation
with external Register-Transfer Level (RTL) models in QEMU’s target platforms.
A Verilog PLI library was also developed to allow Verilog simulators that support
PLI to perform co-simulation with QEMU. To demonstrate the capabilities of following
a hardware-software embedded co-design using the developed simulation
environment, a demonstration application scenario was developed following a design
flow that takes advantage of said simulation environment possibilities. A aceleração de aplicações de software, utilizando técnicas de paralelização e componentes de hardware dedicados, é frequentemente um compromisso de optimização numa relação de custo-benefício durante a migração de processos de software para aceleradores ou cores hardware IP dedicados. Em aplicações real-time, cuidados extra são necessários ao lidar com estas problemáticas, de forma a que os requisitos real-time da aplicação não sejam comprometidos. Uma validação isolada, no que respeitam os vários domínios de aplicação, não garante uma funcionalidade integral do sistema. Utilizando um ambiente de co-simulação integrado, falhas no sistema podem ser detectadas numa fase inicial do projecto, antes de ser atingida uma fase de implementação física. Ao adoptar um design flow auxiliado por cosimulação, não só é o processo de desenvolvimento agilizado, mas também isento de dependências a nível da plataforma target, uma vez que o sistema pode ser desenvolvido inteiramente na plataforma host sem estar dependente dos recursos físicos associados uma plataforma target. Esta dissertação surge no âmbito da validação de uma metodologia de hardware-software co-design auxiliada por co-simulação, no extender de técnicas de simulação de sistemas embebidos, com ou sem aceleração de processos em hardware RTL, e na validação integral, aperfeiçoando o processo de design dos mesmos ao longo das várias fases de desenvolvimento. Utilizando o QEMU como ferramenta para emulação de ambientes baseados em Linux para plataformas de CPU+FPGA, alterações foram idealizadas e desenvolvidas para permitir extender as capacidades de emulação das mesmas no QEMU, para propósitos de desenvolvimento de aceleradores em hardware customizados, possibilitando a integração de devices comportamentais e co-simulação com modelos RTL externos nas plataformas target do QEMU. Para demonstrar as capacidades de seguir um co-design de hardware-software embebido utilizando o ambiente de simulação desenvolvido, um cenário de aplicação demonstrador foi desenvolvido seguindo um design flow que toma partido das possibilidades do referido ambiente de simulação. |
Tipo: | Dissertação de mestrado |
Descrição: | Dissertação de mestrado integrado em Industrial Electronics Engineering and Computers |
URI: | https://hdl.handle.net/1822/51319 |
Acesso: | Acesso aberto |
Aparece nas coleções: | BUM - Dissertações de Mestrado DEI - Dissertações de mestrado |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
Nelson Pinheiro Duarte Naia.pdf | 22,29 MB | Adobe PDF | Ver/Abrir |