Use este identificador para citar ou linkar para este item: https://locus.ufv.br//handle/123456789/31010
Tipo: Dissertação
Título: Ferramentas de ensino com grafos de fluxo de fados em três níveis de abstração
Teaching tools with data flow graphs at three levels of abstraction
Autor(es): Passe, Fernando Ferreira
Abstract: O processamento de aplicações com grande volume de dados e alto consumo de re- cursos computacionais é uma realidade. Aplicações de stream de áudio, vídeo e jogos vêm exigindo uma mudança de paradigma, onde estruturas não bloqueantes com processamento paralelo são essenciais. Neste contexto, o uso de grafo de fluxos de dados na modelagem dos algoritmos vem como uma forma de tornar as aplicações escaláveis, já que é possível especificar o paralelismo de forma explícita. Além disso, os dados são processados à medida em que chegam e combinados para aproveitar o máximo de recursos do hardware. O uso de softwares como Node-RED e Digital JS auxiliam no aprendizado e na modelagem com grafos de fluxos de dados por meio interfaces gráficas amigáveis. Ademais, o uso de aceleradores de hardware por meio de FPGAs permite o desenvolvimento de implementações em hardware com estrutu- ras paralelas. Esta dissertação tem contribuições em três eixos. Primeiro, no ensino de Internet das Coisas através da modelagem com grafos de fluxo de dados usando a ferramenta Node-Red. Segundo, no ensino de projeto de processadores com a visualização do grafo estrutural da especificação com a ferramenta Digital-JS e a linguagem de descrição de hardware Verilog, que resultou em uma nova ferramenta denominada RISCVerilog. Terceiro, na modelagem de aplicações com grafo de fluxo de dados para implementação em FPGA na nuvem com a ferramenta READY, resultando na ferra- menta PLAIN. Palavras-chave: IoT. Internet das coisas. FPGA. Grafo de fluxo de dados. CGRA. RiscV
Processing applications with high computational resources usage and with high data volume is common nowadays. Audio, video and games streaming platforms demand a paradigm change where non blocking structures with parallel processing are essen- tial. In this context, to use data flow graphs while modelling algorithms is a way to make applications scalable because it explicit allows parallelism. In addition, data is processed on the fly and they are combined to take maximum advantage of hardware resources. Applications such as Node-RED and DigitalJS help to understand data flow and its modelling via friendly interfaces. Furthermore, using hardware acce- lerators via FPGAs allows to develop hardware with parallel structures. This work contributes in three lines. First, it contributes with the teaching of Internet of Things combined with modelling data flow using the Node-Red tool. Second, it contributes with teaching processor design with the visualization of the structural graph of the specification with the Digital-JS tool and the hardware description language Verilog, which resulted in a new tool called RISC Verilog. Third, it contributes with modelling data flow applications to be used with FPGAs in the cloud with the READY tool, which resulted in the PLAIN tool. Keywords: IoT. Internet of things. FPGA. Dataflow. CGRA. RiscV
Palavras-chave: Fluxo de dados (Computadores)
Matrizes de portas programáveis em campo
Unidade de processamento gráfico
Internet das coisas
CNPq: Ciência da Computação
Editor: Universidade Federal de Viçosa
Titulação: Mestre em Ciência da Computação
Citação: PASSE, Fernando Ferreira. Ferramentas de Ensino com Grafos de Fluxo de Dados em Três Níveis de Abstração. 2020. 67 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Viçosa, Viçosa. 2020.
Tipo de Acesso: Acesso Aberto
URI: https://locus.ufv.br//handle/123456789/31010
Data do documento: 23-Jul-2020
Aparece nas coleções:Ciência da Computação

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
texto completo.pdftexto completo2,49 MBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.