Microcontrolador sem bug

Software e Hardware para linha ARM

Moderadores: 51, guest2003, Renie, gpenga

Microcontrolador sem bug

Mensagempor Witt » 19 Abr 2008 14:56

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
Witt
Bit
 
Mensagens: 18
Registrado em: 22 Nov 2006 13:11

Mensagempor tcpipchip » 19 Abr 2008 19:00

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
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Mensagempor msamsoniuk » 20 Abr 2008 01:34

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.
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor proex » 20 Abr 2008 09:48

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.
proex
Dword
 
Mensagens: 2101
Registrado em: 11 Out 2006 14:05
Localização: São Paulo

Mensagempor xultz » 20 Abr 2008 17:38

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.
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor tcpipchip » 21 Abr 2008 12:51

Proex
Nao eh sacanagem nao.
Estou falando serio mesmo, o core Z80 esta bem testado!
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Mensagempor pbernardi » 21 Abr 2008 17:48

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.
But to us there is but one God, plus or minus one - Corinthians 8:6±2. (xkcd.com)
pbernardi
Word
 
Mensagens: 707
Registrado em: 12 Out 2006 19:01
Localização: Curitiba-PR

Mensagempor phophollety » 21 Abr 2008 17:56

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...
"3 minutes of boring code review means 3 hours less fixing LSD (Little Stupid Detail)" Dr. Mike Smith
"Dê-me um ponto de apoio e uma alavanca e moverei o mundo" Arquimedes
"Quando vejo um Alfa Romeo passar eu tiro o meu chapéu" Henry FORD.
Avatar do usuário
phophollety
Dword
 
Mensagens: 1511
Registrado em: 15 Out 2006 13:00
Localização: Santo André São Paulo, Brasil

Mensagempor proex » 21 Abr 2008 18:31

Concordo. Que tal então trocar seu Pentium por um 286? :lol:
proex
Dword
 
Mensagens: 2101
Registrado em: 11 Out 2006 14:05
Localização: São Paulo

Mensagempor Witt » 21 Abr 2008 18:33

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 -
Witt
Bit
 
Mensagens: 18
Registrado em: 22 Nov 2006 13:11

Mensagempor proex » 21 Abr 2008 19:06

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.
proex
Dword
 
Mensagens: 2101
Registrado em: 11 Out 2006 14:05
Localização: São Paulo

Mensagempor Viktor » 21 Abr 2008 19:16

Trabalhei com os LPC23xxx, STM32 e LM3S. Destes o mais confiável para mim é o LM3sxxxx da Luminary
Viktor
Byte
 
Mensagens: 281
Registrado em: 12 Out 2006 11:33

Mensagempor phophollety » 21 Abr 2008 23:07

proex escreveu:Concordo. Que tal então trocar seu Pentium por um 286? :lol:


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...
"3 minutes of boring code review means 3 hours less fixing LSD (Little Stupid Detail)" Dr. Mike Smith
"Dê-me um ponto de apoio e uma alavanca e moverei o mundo" Arquimedes
"Quando vejo um Alfa Romeo passar eu tiro o meu chapéu" Henry FORD.
Avatar do usuário
phophollety
Dword
 
Mensagens: 1511
Registrado em: 15 Out 2006 13:00
Localização: Santo André São Paulo, Brasil

Mensagempor Witt » 23 Abr 2008 10:58

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
Witt
Bit
 
Mensagens: 18
Registrado em: 22 Nov 2006 13:11

Mensagempor Viktor » 23 Abr 2008 11:15

O suporte deles é bom e rápido.
Viktor
Byte
 
Mensagens: 281
Registrado em: 12 Out 2006 11:33

Próximo

Voltar para ARM

Quem está online

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

x