Fui encarregado de construir um dispositivo de alarme simples. Ele só precisa medir algumas entradas e as saídas responderão de acordo (para simplificar!). Para mim, parecia que o uso de alguns portões lógicos discretos faria o trabalho, mas um colega (que estava trabalhando nisso comigo) decidiu que deveríamos usar a lógica programável. Seu caso venceu, porque, em primeiro lugar, ele é mais experiente do que eu e, em segundo lugar, seu principal argumento era que os dispositivos programáveis são o futuro e queremos criar produtos à prova de futuro.
Minha pergunta é: se você tem um projeto que pode ser facilmente implementado por algumas portas lógicas discretas, vale a pena projetar com lógica discreta? Existe alguma vantagem em usá-los sobre os programáveis? Ou será lentamente eliminado completamente pela lógica programável? Para ser claro, não quero respostas de 'Acredito que seja esse o caso' ou 'Pessoalmente acho que sim, mas ...' Gostaria de saber se há alguma vantagem real em projetar com discreto sobre programável e vale a pena projetar com eles hoje em dia em produtos eletrônicos?
fonte
Respostas:
O design lógico discreto não será totalmente eliminado. Sempre haverá aplicações em que é preferível usar um CI lógico discreto. Como foi apontado, a velocidade é uma grande vantagem, embora em muitas aplicações a diferença de velocidade não seja tão importante.
Quando se trata da fase de projeto, se você projetar um circuito que só precisa executar 2 ou 3 funções lógicas simples em pontos diferentes do circuito, será melhor usar portas discretas, apenas para economizar tempo de projeto e também escrever o programa também.
Para sistemas que precisam executar funções lógicas mais complexas, seria tolo passar o tempo todo trabalhando em uma tabela de verdade e depois descobrir quais portas lógicas vão para onde etc., quando você pode escrever um pequeno programa. Normalmente, quanto mais entradas significam, mais portas são necessárias e mais tempo é necessário para projetar discretamente.
O lugar onde a lógica discreta realmente tem a vantagem está no aprendizado. Quando você está aprendendo pela primeira vez sobre o design lógico e como os portões funcionam, etc., é aí que é ótimo começar com os portões lógicos reais e projetar diferentes funções com partes discretas. Sempre uma boa idéia para entender os fundamentos. Então, por causa disso, a lógica discreta sempre terá um lugar neste mundo. Quanto aos eletrônicos de consumo? O futuro é definitivamente programável.
fonte
Eu não sou um engenheiro eletrônico profissional (na verdade, apenas um iniciante), mas meus poucos centavos são que CIs lógicos discretos dedicados devem ser usados apenas se o tempo for importante ou se for um requisito para não usar a lógica programável.
Com um microcontrolador, você pode implementar uma lógica muito mais complicada e é mais flexível. Também pode ser reprogramado sem precisar alterar o hardware.
Além disso, quando são necessários tempos muito rápidos que o software não consegue acompanhar, ICs lógicos dedicados podem ser usados. Mas para um sistema de alarme isso parece desnecessário (não precisa de um tempo de resposta de nanossegundos).
Abaixo está minha interpretação das vantagens / desvantagens:
fonte
Se você deseja criar um produto comercial, não deve escolher um design porque "é programável" ou porque um colega mais experiente o propôs. Em vez disso, você deve estimar riscos e custos associados a cada projeto e escolher aquele com o menor custo e o nível de risco aceitável. Para começar:
Se o fornecimento de ICs de lógica discreta para seu projeto em particular for mais barato, sua equipe terá experiência com esse design e você considerará que a falta de flexibilidade não é crítica, não há razão para não usar lógica discreta.
fonte
Um aspecto que as outras respostas estão esquecendo é a segurança. Os circuitos lógicos discretos são muito mais confiáveis do que os projetos de microcontroladores muito mais complexos. Ajudei a construir um protótipo de hidrogênio, todos os circuitos de segurança foram projetados usando lógica discreta. Segurança e confiabilidade é um aspecto que você pode considerar projetar um sistema de alarmes.
fonte
Devo admitir que, sempre que tenho que fazer uma lógica combinatória complexa mais alguns timers, não me incomodo com lógica discreta, mas sempre codifico um programa assembler mínimo para um ATtiny (use um PIC se você preferir).
A lógica combinatória é de no máximo 20 linhas de assembler (várias tabelas de pesquisa). Cada timer de software adiciona outras 10 linhas. Temporizadores de hardware ainda menos. Você ainda ganha a vantagem de ter um conversor A / D, comparador, geração PWM a bordo, caso precise deles.
A única desvantagem é que você teve que exibir esta parte. Às vezes, isso é um estrago, mas raramente é o caso. A grande vantagem é que você precisa de muito menos espaço na placa, o roteamento é muito mais simples e pode alterar facilmente as funções lógicas, se necessário.
O caso de uso restante para ICs lógicos separados é quando as coisas precisam funcionar mais rápido que 1µs.
fonte
No produto final - provavelmente não há muitas vantagens para a lógica discreta se estivermos falando de um dispositivo de consumidor. Exceções seria algo que precisa ser muito resistente a condições adversas ou muito fácil de caracterizar completamente (a complexidade e o potencial reais de erros ocultos são muito maiores com algo baseado em firmware) ou que você deseja poder construir novamente a partir de muito peças semelhantes nas próximas décadas (as pegadas 74xx mudam muito lentamente, mesmo que as letras da tecnologia mudem :)).
Algo que você pode realmente fazer melhor com os discretos é a lógica assíncrona e de sincronismo automático (a conclusão de uma coisa desencadeia outra imediatamente). A legitimidade de tais projetos é um tópico da guerra santa. Não se preocupe, as pessoas síncronas vão querer vencê-lo, mas você só precisa levar o relógio delas, pois elas ficarão sem sentido esperando para sempre.
No que diz respeito à metodologia de design, eu diria que depende do estilo preferido do designer - um dispositivo de CPLD que você pode literalmente religar ao vivo ("vamos tocar esse fio nos pinos até que algo se encaixe"), em uma exibição de ratos, e sob o poder de um PC host (com faíscas simuladas quando você toca um fio em um pino, de preferência, apenas por ambiente) certamente seria apreciado por pessoas que preferem lógica discreta :)
fonte