Dissertação
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
Registro en:
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.
Autor
Passe, Fernando Ferreira
Institución
Resumen
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 Fundação de Amparo à Pesquisa do Estado de Minas Gerais