Utilize este identificador para referenciar este registo: https://hdl.handle.net/1822/91652

TítuloDiversity-driven hardware task: a microcode approach
Outro(s) título(s)Tarefa de hardware orientada para a diversidade: uma abordagem em microcódigo
Autor(es)Carvalho, Hugo Daniel Vieira de
Orientador(es)Tavares, Adriano
Silva, Vítor Alberto Teixeira
Palavras-chaveAceleração em hardware
Elasticidade evolutiva
Microcódigo
Tarefa de hardware
Evolutive elasticity
Hardware acceleration
Hardware task
Microcode
Data6-Abr-2023
Resumo(s)Atualmente, a tecnologia escala a um ritmo muito elevado, proporcionando um crescimento de várias ordens de grandeza no desempenho de sistemas VLSI em áreas cada vez mais pequenas. Contudo, o aumento de desempenho eventualmente atingiu o limite, e multicores heterogéneos foram introduzidos, dificultando o co-design por falta de mecanismos de adaptação e semelhanças entre, por exemplo, CPUs e FPGAs. A direção principal da investigação começou então a mudar para uma que fundamental mente permitia: (i) sistemas fiáveis e seguros, com preocupações relacionadas com adaptação baseada em reconfiguração, (ii) sistemas de baixa latência e determinísticos, baseados na aceleração em hard ware, e (iii) sistemas eficientes energeticamente, focados na centralidade de dados. Com isto em mente, começaram a surgir modelos de co-design que visam abranger estas considerações como, por exemplo, o modelo de acelerador HAL-ASOS. Apesar de todos os modelos de programação híbridos para CPU-FPGA disponíveis na literatura, tanto quanto se sabe, exclusivamente o HAL-ASOS aplica microcódigo para al cançar um sistema com elasticidade by design e regularidade. Para expandir a investigação de HAL-ASOS a cerca de microcódigo e explorar as suas limitações, a dissertação propõe uma nova e específica arquite tura de acelerador baseada em dois esquemas de microinstrução, para fornecer abstrações ao nível do kernel e do utilizador. A arquitetura descreve um microkernel baseado nas premissas HAL-ASOS, com serviços de gestão de eventos, gestão de memória e memória temporária, gestão de recursos (tanto no kernel como na tarefa), bem como mecanismos de sincronização, e uma tarefa de hardware capaz de re alizar syscalls estendidas, comunicando com o sistema operativo do host através de memória partilhada. Para fazer face à adaptabilidade do acelerador, a arquitetura foi migrada para permitir atualizações de microcódigo, e testada com um esquema de injeção de falhas. As restantes funcionalidades do modelo do acelerador foram verificadas sob um ambiente de simulação utilizando ferramentas Xilinx, e também sob um ambiente de simulação completa com ferramentas HAL-ASOS. A implementação do modelo de acelerador num SoC Zynq-7010 ARM/FPGA foi avaliada. Os resultados mostraram que, no que respeita à escalabilidade, os procedimentos kernel-bounded na tarefa de hardware, conseguem sempre reduzir um tipo de célula lógica combinacional da plataforma ZYBO Z7-10 (até 73%), considerando um ligeiro aumento na utilização de LUT (até 32%), ambas dependentes da versão. Além disso, os resultados tam bém demonstraram que, por consequência, a execução kernel-bounded conseguiu reduzir a dispersão de células lógicas até 29%, e o número de slices incompletas da FPGA .
Nowadays, technology is scaling at a very high rate, coming along with a growth of several orders of magnitude in VLSI performance within increasingly smaller areas. However, performance increase even tually hit a pitfall, and heterogeneous multi-cores were introduced, making the co-design harder due to the lack of adapting mechanisms and commonalities regarding, for example, CPUs and FPGAs. The key direction of research then started to shift into a direction that fundamentally allowed: (i) reliable and secure systems, with concerns of adaptation through reconfiguration, (ii) low-latency and deterministic systems, relying on hardware acceleration, and (iii) energy-efficient systems, focused on being data-centric. With this in mind, co-design models that encompassed these considerations started appearing, e.g., the HAL-ASOS accelerator model. Despite all the hybrid programming models for CPU-FPGA available in the literature, to the best of one’s knowledge, only HAL-ASOS employs microcode to achieve system elasticity by design and regularity. To expand upon HAL-ASOS research on microcode and explore its limitations, the disser tation proposes a new and specific accelerator architecture based on two microinstruction schemes, to provide kernel- and user-level abstractions. The architecture describes a microkernel based on HAL-ASOS’ premises, with services for event management, memory and buffer management, resource management (in both kernel and task), as well as synchronization mechanisms, and a hardware task capable of per forming extended syscalls, communicating with the host’s operating system through shared memory. To tackle the adaptability of the accelerator, the architecture was migrated to allow for microcode updates, and tested with a fault injection scheme. All the remaining functionalities of the accelerator model were verified under a simulation environment using Xilinx’s tools, and also under a full simulation environment with HAL-ASOS tools. The deployment of the accelerator model on a Zynq-7010 ARM/FPGA SoC was eval uated. The results showed that, regarding scalability, kernel-bounded procedures in the hardware task, could always reduce one type of combinational logic cell of the ZYBO Z7-10 platform (up to 73%), con sidering a slight increase in LUT usage (up to 32%), both version-dependent. Moreover, the results also exhibited that, as a by product, kernel-bounded execution was able to reduce the dispersion of logic cells up to 29%, and the number of incomplete FPGA slices.
TipoDissertação de mestrado
DescriçãoDissertação de mestrado em Engenharia Eletrónica Industrial e Computadores Sistemas Embebidos e Computadores
URIhttps://hdl.handle.net/1822/91652
AcessoAcesso aberto
Aparece nas coleções:BUM - Dissertações de Mestrado
DEI - Dissertações de mestrado

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
Hugo Daniel Vieira de Carvalho.pdfDissertação de mestrado11,44 MBAdobe PDFVer/Abrir

Este trabalho está licenciado sob uma Licença Creative Commons Creative Commons

Partilhe no FacebookPartilhe no TwitterPartilhe no DeliciousPartilhe no LinkedInPartilhe no DiggAdicionar ao Google BookmarksPartilhe no MySpacePartilhe no Orkut
Exporte no formato BibTex mendeley Exporte no formato Endnote Adicione ao seu ORCID