Página 1 de 3
Microcontrolador sem bug

Enviado:
19 Abr 2008 14:56
por Witt
Olá pessoal,
Estou aqui para trocar uma idéia com vocês sobre bugs em microcontroladores.
Estou começando um projeto onde o sistema não pode travar ou resetar em momento algum e, como sempre, o Time-to-Market é curto.
Já utilizei o LPC23xx e ele não me passa confiança para um sistema que exige alto grau de estabilidade.
O STM32 me parece o processador ideal para a aplicação, porém é um processador recente e, na errata dele, tem muitos bug e condições que podem atrapalhar muito o desenvolvimento, principalmente pq utilizarei quase todos os periféricos e ele tem conflito entre I2C, UART e CAN.
Já o STR7 não encontrei o erratasheet, será que ele não tem bug? Ele é mais caro que o LPC23xx, mas se ele for mais estável, já vale a pena.
Vocês conhecem algum processador com boa performace que seja mais estável? Será que essas instabilidades dos processadores não são nada comparadas as instabilidades geradas pelo meu código? hehhehe
Já perdi muito tempo com bugs nos chips, quero evitar isso ao máximo, até pq o projeto não tem um volume tão grande que valha a pena investir 3 meses de projeto para reduzir 3$.
Então é isso,
Abraço
Witt

Enviado:
19 Abr 2008 19:00
por tcpipchip
Que tal o velho e bão Z80 ? Ele tah bem testado, concorda ?
Tem muita empresa, de telefonia, por exemplo, que nao se desfaz dele...
TCPIPCHIP

Enviado:
20 Abr 2008 01:34
por msamsoniuk
eu acho o coldfire eh interessante p/ essa faixa de mercado do arm.
por ex, eu usei um 5207 em um projeto de telefonia agora fim do ano (Z80 eh coisa da decada de 70!) e o resultado foi excelente! o interessante eh q o projeto soh nao saiu antes do prazo pq um outro chip na mesma placa, de outro fabricante, tinha varios bugs e o fabricante *nao* publicou uma errata...
por coincidencia esse outro fabricante produz mcus com core arm, entao por ae jah dah para ter nocao do naipe dos caras q mexem com arm hehehe
jah freescale nao tem nem o q comentar, os caras sao referencia na industria.

Enviado:
20 Abr 2008 09:48
por proex
tcpipchip escreveu:Que tal o velho e bão Z80 ? Ele tah bem testado, concorda ?
Tem muita empresa, de telefonia, por exemplo, que nao se desfaz dele...
TCPIPCHIP
Eheheh, sugerir Z80 co a tecnologia disponivel atualmente é sacanagem. Essas empresas que ainda insistem em usar isso, com certeza estao ficando para tras.
Achar um chip que nao tenha algum bug vai ser dificil, mas não é isso que inviabilizará o projeto senão, os fabricantes de ARM, DSPs e outros ja estariam quebrados.

Enviado:
20 Abr 2008 17:38
por xultz
A questão nem é de core. Core por core, o mais usado e debugado é o 8051. Mas se pegar as erratas da NXP, por exemplo, dos ARM, vai ver que não tem bug na parte do core, mas na implementação dos periféricos e destes com o vetor de interrupção. Core ARM acho que é tão debugado quanto 8051.

Enviado:
21 Abr 2008 12:51
por tcpipchip
Proex
Nao eh sacanagem nao.
Estou falando serio mesmo, o core Z80 esta bem testado!

Enviado:
21 Abr 2008 17:48
por pbernardi
Bom, acho que pra ter um produto confiável conta muito mais o software que se faz do que o uC ou uP.
Qualquer uP tem bugs, basta escolher um e procurar errata. x86, por exemplo, tem muitos BUGs, assim como PICs, AVRs, Coldfires e até 68k. Mas quase todos, também, são conhecidos e contornáveis por SW.
Pessoalmente, acho muitíssimo maior a chance ter existir um bug de SW escondido do que um bug de HW.
Quer um produto confiável? minha sugestão é também usar um componente de uma marca confiável, mas principalmente ter um teste de integração/teste de campo/teste de sistemas, demorado e detalhado - e quanto mais testes você achar que for necessário.

Enviado:
21 Abr 2008 17:56
por phophollety
tcpipchip escreveu:Proex
Nao eh sacanagem nao.
Estou falando serio mesmo, o core Z80 esta bem testado!
Esse negócio de ter que ficar sempre no topo da tecnologia parece moda e informática, tem que se usar o uC que você sabe e dê conta do seu recado, concordo com o tcpipchip está mais do que testado e sabe-se onde tem ou não pau...
Viajando um pouco, os caras da Nasa não se desfazem das tecnologias de 20 anos atrás, eles testam as coisas por um tempão antes de mandarem para o espaço...
Fora que, mudar a tecnologia toda de uma empresa é um custo de ferramental, treinamento e aprendizado fora do normal...
A zilog relançou o Z80 Aclaim há uns anos, que mal tem usar um core antigo?! Se a tem muito i4004 e 8008 rodando por ai em GLCD...

Enviado:
21 Abr 2008 18:31
por proex
Concordo. Que tal então trocar seu Pentium por um 286?


Enviado:
21 Abr 2008 18:33
por Witt
Legais as dicas pessoal, mas sinceramente, nem me passa pela cabeça utilizar um Z80. Uma pelo desempenho e outra pelo custo. Não que não vá funcionar, mas há outras maneiras mais práticas para fazer o negócio rodar 100%.
Sobre o custo de mudar a tecnologia, no meu caso não é crítico, já que toda a programação é realizada em C e há uma grande gama de exemplos de quase todos os fornecedores.
Falando em exemplos, achei muito interessantes os exemplos de firmware da ST. Já os datasheets da TI, ao meu ver, não tem igual, os caras são feras mesmo, isso sem falar no suporte técnico.
Os PICs já tem bastante fama de ter bugs e de ter um compilador ruim pra C. Mas esse é um comentário de quem vê de fora, nunca programei um PIC, apenas estudei eles pra outros projetos. <espero não colocar lenha na fogueira com esse comentário>
PBernardi, concordo contigo que há muito mais chance de ter bug de fw do que de hw, o receio é passar por bugs de hw e a gente fica quebrando a cabeça com o fw. As vezes leva dias onde o rendimento vai praticamente a 0 até se dar conta do que está acontecendo. Com a experiência a gente vai diminuindo esse período, mas é impossível eliminá-lo. Nesse momento, ter a confiança de um µC já me dá muito mais chão.
Falo isso pq passei alguns transtornos com o µPSD que tem o core do 8051 e o LPC23xx que é um baita processador, mas deixou a desejar. Parece que agora já está estabilizado.
Devido a essa experiência com o LPC é que estou com receio de utilizar o STM32. Acredito que vou ficar com o STR7 mesmo.
Valeu as dicas pessoal.
- Witt -

Enviado:
21 Abr 2008 19:06
por proex
Em quais bugs vc ralou pra fazer funcionar, no 23xx?
Além da Errata da NPX sobre o chip, achou mais algum?
O próprio documento de errata explica como contornar o problema até a nova revisão da pastilha ficar pronta. Mas o problema é que o pessoal costuma lêr a Errata e achar que aquilo tudo tem no chip que esta usando, nem sequer olha a revisão do chip.
Conflitos entre periféricos de comunicação são fáceis de contornar.

Enviado:
21 Abr 2008 19:16
por Viktor
Trabalhei com os LPC23xxx, STM32 e LM3S. Destes o mais confiável para mim é o LM3sxxxx da Luminary

Enviado:
21 Abr 2008 23:07
por phophollety
proex escreveu:Concordo. Que tal então trocar seu Pentium por um 286?

Meu pc não precisa ser intrínseco, se ele travar eu carco o dedo no reset hehehehee
Não sei se são os mais seguros, mas se eu fosse desenvolver algo intrínseco eu acho que iria de Analog, a série ADUC70xx não é a mais barata, mas é muito completa, veja se vale a pena..
Temos trabalhado bastante com a família PIC24HJ em C30, até agora nenhum bug de core foi encontrado e o compilador é muito bom e gratúito.
Se quiser segurança, acho que é uma boa opção, começando pelo supervisor de clock incluso no bichinho e o preço também é bom...

Enviado:
23 Abr 2008 10:58
por Witt
Oi Proex, no LPC só as errratas mesmo. Mas que atrapalharam bastante o desenvolvimento. No caso µPSD foi uma falha não encontrada em Errata.
O STM32 já foi descartado pq apresenta conflito entre alguns periféricos que serão utilizados (UART e CAN) e infelizmente, nesse caso em específico, não há como contornar.
Viktor, vou dar uma olhada com mais cuidado na linha da Luminary. O que você achou do suporte deles? Chegou a precisar?
phophollety, no caso o ADUC70xx não atende aos requisitos de hardware.
Obrigado a todos pelas dicas, estão sendo de muito valia.
Att.
Witt

Enviado:
23 Abr 2008 11:15
por Viktor
O suporte deles é bom e rápido.