Utilizando GPIO como interrupçao FPGA Altera

Linguagem descritiva de hardware

Moderadores: 51, guest2003

Utilizando GPIO como interrupçao FPGA Altera

Mensagempor mrgadotti » 11 Mai 2021 16:36

Olá pessoal,

Meu conhecimento ainda é pequeno no mundo dos FPGA e ainda tenho um bom caminho.
Estou fazendo uma aplicação que preciso de um tempo de resposta relativamente alto para detectar alteração de estado em 8 portas e enviar o byte na UART.
Existe alguma maneira de implementar algo similar a interrupção de um MCU ou serei obrigado a ter um loop verificando se teve alteração na porta?
Avatar do usuário
mrgadotti
Byte
 
Mensagens: 421
Registrado em: 02 Jun 2010 21:14
Localização: Timbó - SC

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor tcpipchip » 12 Mai 2021 12:07

Se não tens tempo para estudar FPGA,
Sugiro os NXP de 600Mhz
Ou
alguns chips FTDI
ou
COG da propeller
ou
FF 74F
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor andre_luis » 12 Mai 2021 14:06

Você está programando no ambiente NIOS2 ?
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor mrgadotti » 12 Mai 2021 14:44

Ainda não cheguei a testar o NIOS2, estou programando diretamente em VHDL.

A projeto que estou trabalhando chega a ser simples, terei de verificar 56 pinos simultaneamente, se ocorrer alteração de estado em algum dos pinos, envio o valor em hexa na UART, porém preciso de um tempo de resposta inferior a 500 ns. Utilizando apenas uma GPIO como interrupção no STM32, consigo esse tempo de resposta, porém se fosse nessa mesma linha de pensamento, precisaria de 56 interrupções.

Uma solução que estou verificando até o momento, é descrever uma porta AND em cada pino que preciso verificar e ao ocorrer alguma alteração de estado lógico, armazenar os pinos no buffer e disparar o envio na UART.
Avatar do usuário
mrgadotti
Byte
 
Mensagens: 421
Registrado em: 02 Jun 2010 21:14
Localização: Timbó - SC

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor andre_luis » 12 Mai 2021 17:17

Uma solução que estou verificando até o momento, é descrever uma porta AND em cada pino que preciso verificar e ao ocorrer alguma alteração de estado lógico, armazenar os pinos no buffer e disparar o envio na UART


Não parece ser apenas resolvido com logica combinacional; um registrador[0..55] poderia armazenar o valor das entradas da porta, e comparar com a proxima leitura atravez de um array de XOR um a um, de modo que o n-esimo pino diferente, iria passar o nésimo bit desse array de zero para um; qualquer valor diferente de zero nesse registrador poderia ser o disparo da UART. E claro, considerando que o estado desse n-ésimo pino persistisse, na proxima passada, a comparação iria dar zero, pois o valor anterior seria carregado para o atual. Se eu fosse voce, faria um rabisco da ideia antes de codificar, parece simples realmente como voce disse.
Você não está autorizado a ver ou baixar esse anexo.
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor tcpipchip » 12 Mai 2021 17:40

ufa, adotaram uma das minhas ideias :)
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor tcpipchip » 12 Mai 2021 17:46

Podes falar com o Marcelo S.
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor mrgadotti » 13 Mai 2021 09:06

tcpipchip escreveu:Se não tens tempo para estudar FPGA,
Sugiro os NXP de 600Mhz
Ou
alguns chips FTDI
ou
COG da propeller
ou
FF 74F


Dei uma pesquisada, mas colocaram o FPGA como requisito no projeto :?
Avatar do usuário
mrgadotti
Byte
 
Mensagens: 421
Registrado em: 02 Jun 2010 21:14
Localização: Timbó - SC

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor mrgadotti » 13 Mai 2021 09:22

aluis-rcastro escreveu:
Uma solução que estou verificando até o momento, é descrever uma porta AND em cada pino que preciso verificar e ao ocorrer alguma alteração de estado lógico, armazenar os pinos no buffer e disparar o envio na UART


Não parece ser apenas resolvido com logica combinacional; um registrador[0..55] poderia armazenar o valor das entradas da porta, e comparar com a proxima leitura atravez de um array de XOR um a um, de modo que o n-esimo pino diferente, iria passar o nésimo bit desse array de zero para um; qualquer valor diferente de zero nesse registrador poderia ser o disparo da UART. E claro, considerando que o estado desse n-ésimo pino persistisse, na proxima passada, a comparação iria dar zero, pois o valor anterior seria carregado para o atual. Se eu fosse voce, faria um rabisco da ideia antes de codificar, parece simples realmente como voce disse.


Vou seguir o conselho de fazer antes um rabisco, pois vai ser um efeito capturado em intervalo de segundos. Os pinos do FPGA estarão conectados em uma matriz que vou capturar a posição XY.
Avatar do usuário
mrgadotti
Byte
 
Mensagens: 421
Registrado em: 02 Jun 2010 21:14
Localização: Timbó - SC

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor tcpipchip » 30 Mai 2021 10:47

Marcelo G

Se quiseres, podemos fazer junto a tua aplicação no ALTERA...

Eu já trabalhei com PALASM, ABEL (coisa de velho) e com ALTERA (HDL) em 1995...sintetizei no passado nosso processador M+ (junto com GALS, PALS)

Tenho umas ideias para facilitar tua vida...tens algum kit da ALTERA por ai ?
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor mrgadotti » 30 Mai 2021 15:09

tcpipchip escreveu:Marcelo G

Se quiseres, podemos fazer junto a tua aplicação no ALTERA...

Eu já trabalhei com PALASM, ABEL (coisa de velho) e com ALTERA (HDL) em 1995...sintetizei no passado nosso processador M+ (junto com GALS, PALS)

Tenho umas ideias para facilitar tua vida...tens algum kit da ALTERA por ai ?


Tenho um kit Alterar em mãos, consegui evoluir um pouco no projeto, mas como a demanda foi redirecionada, por enquanto no standby... Vou te manda uma PM
Avatar do usuário
mrgadotti
Byte
 
Mensagens: 421
Registrado em: 02 Jun 2010 21:14
Localização: Timbó - SC

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor tcpipchip » 31 Mai 2021 11:16

QUAL KIT TENS AI ?
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor mrgadotti » 01 Jun 2021 08:06

tcpipchip escreveu:QUAL KIT TENS AI ?


Tenho em mãos um kit genérico igual a esse:

https://produto.mercadolivre.com.br/MLB ... laster-_JM
Avatar do usuário
mrgadotti
Byte
 
Mensagens: 421
Registrado em: 02 Jun 2010 21:14
Localização: Timbó - SC

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor tcpipchip » 01 Jun 2021 10:55

legal! Pena que está muito caro!
Estou aqui na briga portando a M+++ para ele...

Não estou conseguindo fazer os saltos (CALL) com pilha...alguma microinstrução que estou errando...
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: Utilizando GPIO como interrupçao FPGA Altera

Mensagempor sync » 01 Jun 2021 13:26

tcpipchip escreveu:legal! Pena que está muito caro!
Estou aqui na briga portando a M+++ para ele...

Não estou conseguindo fazer os saltos (CALL) com pilha...alguma microinstrução que estou errando...

Caro

Se puder esperar um mês, está placa da Waveshare sai bem mais em conta, eu tive uma e ela é muito bem construída

https://pt.aliexpress.com/item/10050016 ... web201603_
sync
Byte
 
Mensagens: 195
Registrado em: 04 Mai 2020 16:11

Próximo

Voltar para Verilog, VHDL, SystemC ( PLAs, CPLDs, FPGAs, etc... )

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x