Resumo |
Utilizando-se de FPGAs (Field-Programmable Gate Arrays), o projeto de iniciação propõe o desenvolvimento de equipamentos para a comunicação digital baseando-se em softwares de terceiros. Para tal foi necessário adquirir conhecimento básico sobre a linguagem do programação descritiva de hardware VHDL (Very High Speed Integrated Circuits), bem como a sua implementação em softwares das fabricantes. Foi utilizado um software alternativo para geração dos blocos e códigos complexos em VHDL, no projeto foi escolhido o software MATLAB da desenvolvedora Mathworks, os testes dos códigos práticos foram executados em FPGAs de modelo EP2C5T144CN da família Cyclone II e EP4CE6E22C8N da família Cyclone IV. Foi escolhida tal abordagem para contornar possíveis problemas gerados pela falta de conhecimento avançado a respeito das técnicas de programação em linguagem descritiva, pois propicia a programação de forma intuitiva a partir de representações gráficas presente nos softwares escolhidos .A metodologia se resume em gerar os diagramas de blocos e as lógicas necessárias para a implementação de um gerador BPSK no software MATAB, tais como geração de dados, geração de onda portadora, filtros e etc, realizar a conversão dos blocos presentes no diagrama para a linguagem VHDL utilizando da toolbox HDL Code. Para a real e efetiva configuração do FPGA escolhido, é necessário a importação dos códigos gerados pelo software das fabricantes, no caso em questão o software escolhido foi o QUARTUS II da empresa Altera, os próximos passos no software são a escolha e configuração dos pinos de entrada e saída de dados, testes de compilação lógica, e gravação no dispositivo. Ao final do projeto foram obtidos alguns protótipos de FPGAs programados para diferentes padrões de dados e frequências tentando contornar diversos empecilhos e limitações que a metodologia acabou acarretando, como por exemplo limitação de frequência máxima em simulações. É possível verificar o resultado realizando uma análise utilizando-se de um osciloscópio nas portas e pinos escolhidos, verificando se os parâmetros configurados durante a codificação foram atendidos ou não. |