Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
Análise técnica da utilização de matriz de circuitos lógicos reprogramável
aplicado à educação
Technical analysis of the use of reprogrammable logic circuit matrix applied to
education
DOI:10.34117/bjdv6n9-579
Recebimento dos originais: 08/08/2020 Aceitação para publicação: 24/09/2020
Amanda Bomfim Moitinho
Graduanda em Engenharia Elétrica Universidade Federal de Viçosa
Departamento de Engenharia Elétrica/UFV - Peter Henry Rolfs s/n campus universitário, 36570-900, Viçosa/MG
E-mail: [email protected]
Lucas Braga Cardoso
Graduando em Engenharia Elétrica Universidade Federal de Viçosa
Departamento de Engenharia Elétrica/UFV - Peter Henry Rolfs s/n campus universitário, 36570-900, Viçosa/MG
E-mail: [email protected]
Kétia Soares Moreira
Dr em Engenharia Elétrica pela Universidade Federal de Minas Gerais Universidade Federal de Viçosa
Departamento de Engenharia Elétrica/UFV - Peter Henry Rolfs s/n campus universitário, 36570-900, Viçosa/MG
E-mail: [email protected]
André Gomes Tôrres
Dr em Engenharia Elétrica pela Universidade Federal de Minas Gerais Universidade Federal de Viçosa
Departamento de Engenharia Elétrica/UFV - Peter Henry Rolfs s/n campus universitário, 36570-900, Viçosa/MG
E-mail: [email protected]
RESUMO
Projetos, técnicos ou didáticos, feitos no FPGA (Field Programmable Gate Array), onde valores discretos precedentes e procedentes de sistemas digitais resultam em decisões tomadas rapidamente com a finalidade de executar funções especificas, vêm corroborando com seu emprego na indústria e no meio acadêmico. O presente projeto apresenta o desenvolvimento de sistemas digitais por meio de uma matriz com circuitos programados em campo, resultando em uma tecnologia de baixo custo aplicada à educação.
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
ABSTRACT
Projects, technical or didactic, made in the FPGA (Field Programmable Gate Array), where previous discrete values from digital systems result in decisions taken quickly in order to perform specific functions, have been corroborating their employment in industry and academia. This project presents the development of digital systems through a matrix with field programmed circuits, resulting in a low cost technology applied to education.
Keywords: Programmable Matrix, Digital Systems, FPGA.
1 INTRODUÇÃO
Na educação, os circuitos integrados (CIs) são utilizados com o objetivo didático de representar fundamentos básicos dos sistemas digitais, que são imprescindíveis à formação do Engenheiro Eletricista. As portas lógicas, disponíveis nos CIs, tomam decisões dependendo das configurações resultantes desses circuitos. Entretanto, a manipulação física tem como desvantagem a deficiência de disponibilidade dos mesmos no mercado atual. E também, o grande número de CIs necessários em cada aplicação, relacionada à função executada (Floyd, 2007).
Circuitos Integrados consistem em encapsulamentos de componentes eletrônicos capazes de formar portas lógicas (Shepherd, 1996). O uso de Circuitos Integrados SSI e MSI para o estudo de circuitos digitais representa uma técnica didática e de grande valor pedagógico (Tocci et al., 2011). Contudo, esses componentes, também denominados CIs, equivalem a uma tecnologia mais antiga e ultrapassada quando comparada aos avanços da eletrônica (Tocci et al., 2011).
Na indústria, comandos são executados através de acionamento de botões dado por operadores e/ou por decisões de dispositivos que apresentam algum tipo de programação. Considerando que equipamentos em escala industrial são programáveis em pastilhas dedicadas, a matriz de portas programáveis, FPGA (Field Programmable Gate Array), é uma adaptação à tecnologia moderna.
A escolha da matriz programável como ferramenta educacional, confirma a necessidade de se transformar circuitos digitais na indústria. O FPGA é um circuito integrado que tem como principal propriedade a possibilidade de alteração de hardware, por meio de programação, para criar um novo circuito que pode ser usado para teste, desenvolvimento de projeto e produto. Composto em sua construção por pinos de entradas e saídas selecionáveis e internamente por portas lógicas, flip-flop + memória e fios. Mesmo não sendo um processador, o FPGA é vantajoso no uso para construção e manipulação de circuitos lógicos (Pang e Membrey, 2017). Neste dispositivo as conexões internas são moldadas em tempo real de acordo com a necessidade do usuário, conferindo a um único dispositivo a função de praticamente qualquer circuito lógico (Kuon et al., 2007).
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
Dessa forma, nota-se a importância de propiciar o contato dos alunos de engenharia elétrica com ferramentas modernas de sistemas digitais. Assim, o objetivo desse artigo é demonstrar um projeto didático, onde há o estudo de circuitos digitais utilizando uma placa FPGA. O artigo apresenta o desenvolvimento de uma tecnologia de sistemas digitais voltada à educação, implementada por meio de modelos de circuitos lógicos programados em campo, para ser utilizado por alunos de engenharia elétrica na área de sistema digitais.
2 MATERIAL E MÉTODOS
Para conectar diferentes tipos de dispositivos, serão necessários alguns circuitos de interface, visto que a tensão de operação padrão dos pinos de entrada/ saída é 3,3 V com a capacidade de corrente máxima de 4,8 mA. Assim, com algumas adaptações de hardware, o sinal será adequado para valores especificados no datasheet do FPGA. Dessa maneira, a matriz de contato controlará diversos sistemas com arquiteturas e complexidades distintas.
Desenvolvimento do hardware do Kit Didático
O modelo de FPGA escolhido para o desenvolvimento do Kit didático foi o EP4CE10E22C8N da família Cyclone IV da Altera. Ele foi adquirido em uma placa composta por chaves seletoras, memória, LEDs, FPGA, etc., conforme apresentado na Figura 1. Na Tabela 1 encontram-se informações mais detalhadas sobre as partes mais importantes dessa placa. Entretanto, com finalidade de aplicação em laboratórios didáticos, foram feitas adequações nos componentes usados e layout da placa, disponibilizando fácil acesso e robustez.
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
Tabela 1. Placa do FPGA utilizado no Kit didático. Número * Partes da placa
1 FPGA - EP4CE10E22C8N
2 Pino de comunicação com USB
Blaster - JTAG
3 Saída VGA
4 Pino de alimentação
5 Displays de 7 segmentos
6 Chave seletoras internas
7 Memória EPROM
8 LEDs internos
9 Entradas e saídas digitais
configuráveis *Número correspondente a Figura 1.
Para compreender o funcionamento das conexões da placa do FPGA, foi estudado o mapeamento das conexões, como mostra a Figura 2. Tal procedimento demanda grande atenção e bom conhecimento de circuitos eletrônicos, para identificar qual o estado lógico de cada componente quando a entrada é alimentada ou aterrada.
Figura 2. Mapeamento impresso das conexões do EP4CE10E22C8N.
Fonte: Cyclone IV Device Handbook, 2018.
Por sua vez, um módulo didático foi desenvolvido no Departamento de Engenharia Elétrica da Universidade Federal de Viçosa, sendo constituída por uma placa de FPGA análoga a apresentada na Figura 1. Visto que seu fim é apenas didático, foram realizadas conexões internas, relacionando LEDs do LCD interno com LEDs externos, pinos de entrada da placa com chaves seletoras externas que definem o estado do sinal de entrada, entre outras.
As chaves seletoras externas foram desenvolvidas, conforme o circuito Figura 3. Através da seleção mecânica da mesma, há a conexão com a tensão retirada da alimentação do FPGA. Disponibilizando, de forma complementar, nível lógico alto para as entradas A ou A̅.
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
Figura 3. Chaves seletoras externas.
A Figura 4 representa o circuito de saída para os LEDs externos. Quando o pino de saída está em nível lógico alto, o transistor é saturado e o LED acende.
Figura 4. Circuitos de saída para os LEDs externos.
Para a configuração do circuito, foi utilizado o software de sistema de desenvolvimento da Altera: Quartus II 13.0.
Desenvolvimento do Material didático
Após a construção do módulo, foi elaborado um material didático a ser utilizado em aulas práticas. Afinal, a finalidade é desenvolver uma tecnologia aplicada à educação utilizando-se o FPGA. Optou-se pela criação do projeto por meio de diagramas de bloco, que possui mais fácil compreensão e utilização em comparação com a programação em linguagem VHDL (VHSIC
Hardware Description Language), pois a utilização do material acontece no ciclo básico da
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
códigos de linguagem VHDL de grande complexidade. Todavia, os usuários são estimulados a verificar e estudar a linguagem VHDL para possíveis identificações de erro e melhor compreensão do funcionamento da configuração.
O material didático é composto por um breve enunciado com explicação teórica e uma atividade prática com estudo de casos. O intuito da parte teórica do material didático é fazer com o que o aluno possua uma breve descrição e adquira conhecimento suficiente para compreender o que será feito durante o projeto prático.
A parte prática do material possui o propósito de fixar o conteúdo apresentado anteriormente e introduzir experimentos com a ferramenta de projeto moderna. Para tal, foram elaboradas práticas mais simples para iniciar, aumentando seu grau de dificuldade gradativamente, até que o estudante tivesse que elaborar um projeto semelhante a problemas reais. Com tal metodologia espera-se relacionar o conteúdo teórico com atividades cotidianas e assim refinar a percepção do aprendiz perante o assunto.
A estrutura da prática do material, inicialmente apresenta o título com uma breve explicação sobre o assunto. Há também, na explicação teórica a representação do assunto em diagrama de blocos, expressão booleana e tabela verdade, como mostra o esboço que pode ser visto na Figura 5.
Figura 5. Estrutura da prática do material – Introdução.
Após a introdução, são propostos os exercícios práticos básicos com a implementação da solução, o esboço desta parte do material pode ser visto na Figura 6.
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
Figura 6. Estrutura da prática do material – Exercícios Práticos.
Em sequência, são propostas as seguintes atividades: simulação dos circuitos lógicos, gravação no FPGA e verificação da tabela verdade, Figura 7.
Figura 7. Estrutura da prática do material – Simulação.
Em sequência, para finalização, um problema com maior complexidade é colocado para realização de um projeto. A estrutura básica pode ser vista na Figura 8.
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761 Desenvolvimento de uma chave sem trepidação.
Durante os testes iniciais do projeto, kit didático, verificou-se a presença significante de trepidações das chaves mecânicas externas, implicando ruídos nos sinais de transição de estados das entradas. Estas trepidações atrapalham de forma mais significativa as práticas envolvendo contadores, pois onde deveria existir apenas uma transição completa da chave, ocorrem aleatórias transições de estado. Principalmente, nas entradas de sincronismo “clocks” dos flip-flops nos circuitos contadores, estas flutuações são prejudiciais.
A fim de corrigir este problema, ponderando a simplicidade, foi desenvolvido um circuito capaz de atenuar esta trepidação. A solução utiliza a propriedade do módulo didático de possuir dois sinais complementares para cada entrada X e X’. Estes sinais são conectados às entradas J e K de um flip-flop JK, Figura 9. Deste modo torna-se necessário que as entradas estejam em oposição para conduzir a saída Q para o nível desejado.
Figura 9. Circuito adaptado para leitura da chave mecânica sem trepidação.
Na Figura 9 é possível visualizar um bloco VHDL denominado de LEDA, este bloco reduz a frequência do clock interno existente na placa do FPGA de 50 MHz para 10 Hz deixando o flip-flop com atualizações mais lentas. A necessidade da construção deste bloco utilizando a linguagem VHDL foi devido à alta redução da frequência, onde a utilização de circuitos lógicos para tal fim ficaria extremamente extenso.
3 RESULTADOS E DISCUSSÃO
O módulo didático desenvolvido teve sua estrutura montada de forma a facilitar a compreensão de seu funcionamento pelo usuário, apresentando uma tabela de pinos de entradas e saídas do módulo relacionadas com as portas I/O correspondentes no FPGA, além das portas relacionadas ao LED, conforme pode ser visualizado na Figura 10.
Com o intuito de verificar o funcionamento do módulo construído e averiguar se este poderia ser utilizado para substituir a tecnologia tradicional do laboratório, foram realizados diversos testes. Com o auxílio do computador e do software Quartus II, foram implementados no módulo os projetos do material didático, tomando o cuidado de verificar o funcionamento de todos os LEDs, como
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
saída, e todas as chaves seletoras, como entrada. Ademais, cada prática elaborada no caderno didático foi executada no módulo de FPGA construído.
Figura 10. Módulo didático do laboratório de sistemas digitais.
Além disso, com a finalidade de atestar a capacidade do aluno em investigar um problema e de propor soluções, são realizados alguns estudos de casos, conforme pode ser verificado no exemplo a seguir:
Estudo de caso
Projeto de alarme de carro.
Dentro de um laboratório, o estudante é mais motivado, quando há relação do estudo prático com problemas reais. Assim, este estudo de caso utiliza de conceitos básicos para executar um pequeno projeto.
Construa um projeto no Quartus II 13.0 de um alarme de carro que seja acionado nos seguintes casos:
Motor ligado e uma das portas abertas; Motor ligado e um dos cintos soltos; Motor desligado e faróis acesos. Procedimentos:
O alarme deve ser disparado em todos esses casos, logo, a tabela-verdade, como mostra Tabela 2, torna-se:
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
Tabela 2. Tabela-verdade.
Entradas Saídas
Motor Porta Cinto Farol Alarme
0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 1 0 0 0 0 1 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 0
Nesse caso foi considerado que as entradas, motor e farol, são ativas em alta. As entradas, porta e cinto, são ativas em baixa. E a entrada, alarme, é ativa em alta. Contudo, fica a cargo do aluno definir suas condições iniciais e determinar a tabela-verdade que se deve encontrar. A expressão encontrada é na equação (1):
Alarme=Motor•Porta’+Motor•Cinto’+Motor’•Farol (1)
Para a execução, primeiramente siga o procedimento padrão para a criação de um novo projeto, nomeado, se atentando ao FPGA utilizado na prática.
Selecione as portas and2, or3 e not. Monte o circuito, nomeando as entradas e a saída e definindo os pinos de acordo com o esquema abaixo:
Entrada Motor: PIN_89 Entrada Porta: PIN_54 Entrada Cinto: PIN_52 Entrada Farol: PIN_49
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761 Saída Alarme: PIN_112
Figura 11. Diagrama que representa a Equação 1.
Ligue o módulo do FPGA à alimentação e transfira os dados do programa através do USB-Blaster. Verifique o funcionamento do programa e complete a Tabela 3:
Tabela 3. Tabela-verdade obtida.
Entradas Saídas
Motor Porta Cinto Farol Alarme
0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1
Como complementação é proposto ao aluno também obter o resultado do mesmo trabalho em linguagem de programação em VHDL, o programa criado pode ser visto na Figura 12.
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
Figura 12. Programa em VHDL que representa a Equação 1.
4 CONCLUSÃO
A metodologia utilizada neste trabalho demonstra passo a passo como o FPGA pode ser utilizado na formação acadêmica. Para o material didático desenvolvido, a criação, execução e utilização foram passos seguidos, para disponibilizar ao aluno uma tecnologia, com baixíssimo custo financeiro, como ferramenta de laboratório.
Alguns pontos concluintes do trabalho devem ser enfatizados:
É muito importante uma precisa conferição do mapeamento das conexões do EP4CE10E22C8N, que por vezes mostraram-se de difícil compreensão.
Além disso, o desenvolvimento de um material didático deve considerar que os alunos estão cursando o ciclo básico da engenharia elétrica. Assim, este trabalhou resultou em um caderno para fins didático que contém além das práticas para o kit, conceitos básicos, principais circuitos digitais e introdução à ferramenta FPGA. Tendo como cuidado relacioná-los a estudos de casos encontrados no mercado profissional.
Ademais, foram necessárias propostas para soluções simplistas e sem custos adicionais, como a criação de um bloco com o objetivo de criar chaves sem trepidação.
Braz. J. of Develop.,Curitiba, v. 6, n. 9, p. 71853-71865, sep. 2020. ISSN 2525-8761
REFERÊNCIAS
Cyclone IV Device Handbook -
https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/cyclone-iv/cyclone4-handbook.pdf. Acesso em: 29 fev. 2020.
FLOYD, T. L. Sistemas digitais [recurso eletrônico] : fundamentos e aplicações / Thomas L. Floyd ; tradução José Lucimar do Nascimento. – Dados eletrônicos. – 9. ed. – Porto Alegre: Bookman, 2007.
FRÉ, Paulo; MARCELINO, Márcio Abud; ADAMI, José Feliciano. Sensor Kelvin para detecção de Tensão. Revista Sodebras [on line]. v. 10, n.117, set./2015, p. 147-152. ISSN 1809-3957. Disponível em: <http://www.sodebras.com.br/edicoes/N117.pdf>. Acesso em: 29 fev. 2020.
KUON, I., TESSIER, R., & ROSE, J. (2007). FPGA Architecture: Survey and Challenges. Foundations and Trends® in Electronic Design Automation, 2(2), 135–253. doi:10.1561/1000000005.
PANG, Aiken and MEMBREY, Peter, Beginning FPGA: Programming Metal TECHNOLOGY IN ACTION™ Your brain on hardware. Massachusetts Lai Chi Kok, Kowloon, Hong Kong USA China ISBN-13 (pbk): 978-1-4302-6247-3 ISBN-13 (electronic): 978-1-4302-6248-0 DOI 10.1007/978-1-4302-6248-0.
SHEPHERD, Peter. Integrated Circuit Design, Fabrication and Test. New York: Macmillan International Higher Education, 1996. DOI: 10.1007/978-1-349-13656-8.
TOCCI, R. J., WIDMER, Neal S. e MOSS, Gregory L. Sistemas Digitais: Princípios e aplicações / Ronald J. Tocci, Neal S. Widmer, Gregory L. Moss; revisão técnica Renato Giacomini; tradução Jorge Ritter. – 11. ed. – São Paulo: Pearson Prentice Hall, 2011.