FPGA Unboxing: entendendo a arquitetura e as ferramentas de projeto para FPGAs

Authors

DOI:

https://doi.org/10.5753/ijcae.2025.6542

Keywords:

FPGA, Verilog, Unboxing, LLMs, Ensino de hardware

Abstract

Dispositivos reconfiguráveis, como os FPGAs, oferecem grande flexibilidade no desenvolvimento de soluções de hardware, porém seu ensino apresenta desafios devido à complexidade das ferramentas tradicionais e das linguagens de descrição de hardware (HDLs). Este trabalho propõe uma abordagem didática para introduzir as principais etapas do processo de síntese em FPGAs: mapeamento tecnológico, posicionamento, roteamento e geração do bitstream. Para alcançar esse objetivo, adotou-se uma metodologia. A metodologia adota com exemplos interativos, recursos visuais e analogias acessíveis para explicar cada fase, permitindo que o estudante compreenda a ocupação do arranjo de Lookup Tables (LUTs) e os processos internos do fluxo de compilação. Explorou-se o uso de modelos de linguagem de larga escala (LLMs) para apoiar a criação de ferramentas visuais em JavaScript, potencializando a aprendizagem ativa e interativa.  A principal contribuição deste trabalho é o unboxing das ferramentas de FPGA, complementando materiais existentes e oferecendo aos iniciantes um caminho estruturado e intuitivo para compreender o funcionamento interno desses dispositivos e suas ferramentas.

Downloads

Não há dados estatísticos.

Referências

Alsaqer, S., Alajmi, S., Ahmad, I., and Alfailakawi, M. (2024). The potential of llms in hardware design. Journal of Engineering Research. DOI: 10.1016/j.jer.2024.08.001.

Boutros, A. and Betz, V. (2021). Fpga architecture: Principles and progression. IEEE Circuits and Systems Magazine, 21(2):4-29. DOI: 10.1109/mcas.2021.3071607.

Brayton, R. and Mishchenko, A. (2010). Abc: An academic industrial-strength verification tool. In International Conference on Computer Aided Verification, pages 24-40. Springer. DOI: 10.1007/978-3-642-14295-6_5.

Canesche, M., Bragança, L., Neto, O. P. V., Nacif, J. A., and Ferreira, R. (2021). Google colab cad4u: Hands-on cloud laboratories for digital design. In 2021 IEEE International Symposium on Circuits and Systems (ISCAS), pages 1-5. IEEE. DOI: 10.1109/iscas51556.2021.9401151.

Castro, L. and Azevedo, R. (2020). Circuitly: A visual and constructive framework for teaching digital circuits. International Journal of Computer Architecture Education, 9(1):10-15. DOI: 10.5753/ijcae.2020.4839.

Chen, S.-C. and Chang, Y.-W. (2017). Fpga placement and routing. In 2017 IEEE/ACM International Conference on Computer-Aided Design (ICCAD), pages 914-921. IEEE. DOI: 10.1109/iccad.2017.8203878.

Chu, Z., Wang, S., Xie, J., Zhu, T., Yan, Y., Ye, J., Zhong, A., Hu, X., Liang, J., Yu, P. S., et al. (2025). Llm agents for education: Advances and applications. arXiv preprint arXiv:2503.11733. DOI: 10.18653/v1/2025.findings-emnlp.743.

da Fonseca, M. H. K., da Silva Miranda, R., dos Santos Lima, T. H., and Pires, R. (2021). Controle de placa didática com simultaneidade de processos utilizando fpga. REGRASP-Revista para Graduandos/IFSP-Câmpus São Paulo, 6(2):117-137. Available at: [link].

Du, Y., Liew, S., Chen, K., and Shao, Y. (2023). The power of large language models for wireless communication system development: A case study on fpga platforms. arxiv. arXiv preprint arXiv:2307.07319. DOI: 10.48550/arXiv.2307.07319.

Ferreira, R., Canesche, M., Jamieson, P., Neto, O. P. V., and Nacif, J. A. (2024a). Examples and tutorials on using google colab and gradio to create online interactive student-learning modules. Computer Applications in Engineering Education, 32(4):e22729. DOI: 10.1002/cae.22729.

Ferreira, R., Sabino, C., Canesche, M., Neto, O. P. V., and Nacif, J. A. (2024b). Aiot tool integration for enriching teaching resources and monitoring student engagement. Internet of Things, 26:101045. DOI: 10.1016/j.iot.2023.101045.

Materzok, M. (2019). Digitaljs: A visual verilog simulator for teaching. In Proceedings of the 8th Computer Science Education Research Conference, pages 110-115. DOI: 10.1145/3375258.3375272.

Moreno-Villalón, A., Guerra-Martin, A., and Boemo, E. (2014). Minifpga: An educational app for teaching partitioning, placemnent and routing on andriod devices. In 2014 IX Southern Conference on Programmable Logic (SPL), pages 1-4. IEEE. DOI: 10.1109/SPL.2014.7002217.

Navas-González, R., Oballe-Peinado, Ó., Castellanos-Ramos, J., Rosas-Cervantes, D., and Sánchez-Durán, J. A. (2023). Practice projects for an fpga-based remote laboratory to teach and learn digital electronics. Information, 14(10):558. DOI: 10.3390/info14100558.

Rama, K. and Truong, P. (2024). Designing embedded systems with large language models. Available at: [link].

Thakur, S., Ahmad, B., Pearce, H., Tan, B., Dolan-Gavitt, B., Karri, R., and Garg, S. (2024). Verigen: A large language model for verilog code generation. ACM Transactions on Design Automation of Electronic Systems, 29(3):1-31. DOI: 10.1145/3643681.

VPR (2025). Graphics: Vpr (verilog-to-routing) documentation. Available at: [link] Acessado em: 26 de agosto de 2025.

Downloads

Published

2025-12-30

Como Citar

Oliveira, D. C. R., Silva, J., Nacif, J. A. M., Ferreira, R. dos S., & Pacífico, R. D. G. (2025). FPGA Unboxing: entendendo a arquitetura e as ferramentas de projeto para FPGAs. International Journal of Computer Architecture Education, 14(1), 01–11. https://doi.org/10.5753/ijcae.2025.6542

Issue

Section

Artigos Completos