AVR x ARM

Software e Hardware para ATMEL

Moderadores: 51, guest2003, brasilma

AVR x ARM

Mensagempor brasilma » 10 Mai 2008 12:57

Povo,

Alguém se habilita a fazer algumas comparações entre a familia AVR e ARM?

Diferenças básicas em termos de arquitetura, custos, ferramentas, aplicação, nivel de utilização e aceitação no mercado, etc.

É apenas curiosidade, pois controlador é como time de futebol, religião, partido político, tudo faz mais ou menos para a mesma coisa, rs, rs.

Abraços.
" A Teoria orienta e a Prática decide" ;-)
Avatar do usuário
brasilma
Dword
 
Mensagens: 3621
Registrado em: 11 Out 2006 15:39
Localização: Planeta Terra

Mensagempor rubenprom » 10 Mai 2008 17:46

Olá pessoal!

Bom, vamos ver , se dá pra fazer uma comparação entre AVR xARM, mas, é que tipo, acho meio dificil fazer uma comparação, pois um AVR comun, é um microcontrolador de 8 bits,e ja o ARM é um processdor que trabalha a 32 bits, entao com certeza, alguem que trabalhe com ARM, vai achar muito mais vantagem, fora que o ARM possui portas exclusivas para USB, Ethernet, Filtros Digitais, e muitos perifericos embiutidos, roda até Linux.

Bom, agora, acho que a comparação teria de ser mesmo entre o AVR32 x ARM, ai sim, daria para ter uma comparação, e ja vou dizendo uma vantagem do AVR32 em relação ao ARM é que si voce ontem estudou o ATmega8 pode facilmente mudar seu codigo para um AVR32,sem menores problemas, mas tem que ter e mente que se está trabalhando com processadores de 32bits.

Mas agora, uma vantagem do ARM, é que tem um bom custo x Beneficio, e a Philips entrou para arrasar no mundo dos processadores. Eu ja trabalhei com ARM, e achei bem legal, por tudo que apresenta, mas parece que o ARM nao gostou de mim,e como eu nao gosto de obrigar, a gostar de mim deixei assim mesmo.
rubenprom
Byte
 
Mensagens: 222
Registrado em: 16 Out 2006 00:23
Localização: Porto Alegre - RS

Mensagempor brasilma » 10 Mai 2008 18:40

Legal Ruben,

Com relação a questão dos 32 bits, a famila AVR agora também tem uma linha assim, então não sei como fica.

O que já andei lendo, é que a Atmel paga Royalts pela estrutura do core ARM e já no caso da AVR, não, pois é sua, assim a tendencia natural seria investir mais na que dá maiores dividendos.

USB já tem dispositivos da linha 8 bits AVR com ele, e creio que isso seja natural ser incorporado em todos os dispositivos futuramente, pois serial já era, para Ethernet geralmente se usa um chip PHY externo.

Será que alguém consegue ir mais a fundo nessa análise?

Abraços.
" A Teoria orienta e a Prática decide" ;-)
Avatar do usuário
brasilma
Dword
 
Mensagens: 3621
Registrado em: 11 Out 2006 15:39
Localização: Planeta Terra

Mensagempor RobL » 11 Mai 2008 21:37

Em uma ALU de 32 bits, operações matemáticas ficam muito simples, fáceis e rápidas.
Por exemplo, suponha um programa com várias operações matemáticas. O micro de 32 bits faria isto com poucas linhas (poucos ciclos) enquanto o de 8 usaria um catatau de linhas e muito mais difícil de realizar o código, além de ficar bem mais lento.
Por exemplo, a grosso modo, somar dois 2bilhões+2bilhões, em 32 bits dá pra fazer em um ciclo já em 8 bits somar 255 + 1 é uma encrenca. Imagine uma equação integral (somatório, séries, etc) em 32 bits, é moleza.
Outro fator para quem trabalha com C, a eficiência de um compilador para trabalhar com 32 bits é incomparável com 8 bits, pois com 8 bits era praticamente irrealizável. Só é possível C para 8 bits, devido ao atual baixo custo dos micros de 8 bits.
Nota: Os AVR32 foram focados para uso em aplicações multimídia. Não lembro com segurança mas núcleo dele, está com hardware otimizado para isso. Já os ARMs são de uso geral.
Para concluir, os micros de 32 bits sempre estiveram disponíveis, mas não com o preço dos ARMs. Esse sim é o fato novo.

Agora, minha dúvida é: por que lançar os XMegas em 8 bits com os ARM com 32 bits por aí?
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor rubenprom » 11 Mai 2008 22:27

Eu acredito que seria melhor antes, estudar a arquitectura de 32 bits, como funciona, para depois fazer a comparação,eu apenas li assuntos mais relacionados ao ARM(quadno trabalhava num projeto , mas acabei desisitindo, pela complexidade de entender o processador) e tambem ao AVR32 porque particularmente gosto muito do AVR, e pelo que vi, pareceu facilde trabalhar, fiz ate uns pedidos, mas nunca chegaram.

Att

Ruben
rubenprom
Byte
 
Mensagens: 222
Registrado em: 16 Out 2006 00:23
Localização: Porto Alegre - RS

Mensagempor RobL » 12 Mai 2008 09:25

Ih rapaz!!! Acho que o título ficou meio confuso. Deveria ser AVR32 x ARM.

Não havia entendido bem o tópico senão não teria entrado, pois o colocado não foi o perguntado. Para completar o porque da minha confusão com 8 bits, há certa semelhança no núcleo dos AVRs de 8 bits com os ARMs de 32bits a despeito dos 8 bits, por exemplo nos 32 registros works dos ARM e também na forma de tratar instruções. Mas a semelhança termina praticamente por aí.
Agora entre os AVR32 e os ARM a semelhança no núcleo está somente nos 32 bits. A Atmel partiu da filosofia dos AVRs.

Infelizmente tenho pouca leitura sobre os AVR32, mas sugiro que deve ser visto como ele trata instruções de 16bits, visto que o Thumb é patente da ARM. Verificar também como são tratadas as interrupções
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor brasilma » 12 Mai 2008 10:17

Qual seria a similaridade entre os AVRs de 8 bits e os de 32, para estarem na mesma familia???

Seria a mesma estrutura apenas com registradores e ULA de 32 bits???
" A Teoria orienta e a Prática decide" ;-)
Avatar do usuário
brasilma
Dword
 
Mensagens: 3621
Registrado em: 11 Out 2006 15:39
Localização: Planeta Terra

Mensagempor RobL » 12 Mai 2008 13:13

Será que estão na mesma família?
Pois são bem diferentes, em hardware, software e em possibilidades. Mesmo uma ULA com 32 bits coça o projetista a fazer malabarismos antes impossíveis.
Mas a grande diferença está no restante, inclusive no set de instrução, torna possível até divisão e vários tipos de multiplicação.
O sistema load/storage (carregar ram e ler ram) pode ser acessado em 8, 16, 32 e 64bits!!!
Eles tem um sistema similar ao Thumb2 usado no Cortex3 e diz a Atmel que a densidade de código é maior que o ARM.
Portanto há muita diferença entre AVR 8 e AVR32.
O tratamento das interrupções são muito diferentes, em hardware, muito rápidos.
Infelizmente conheço muito pouco sobre AVR32 para poder ser mais específico.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor Fábio Pereira » 12 Mai 2008 15:16

Até onde vi, os AVR32 foram desenhados para serem processadores de alto desempenho, em aplicações high-end. O núcleo é muito mais complexo que o dos AVRs de 8 bits.

Mesmo a nova série UC3 da Atmel ( http://www.atmel.com/products/avr32/uc3 ... ily_id=682 ) ainda parece bem mais complexa do que os low-end ARM.

Ainda não tive a oportunidade de estudar a arquitetura e o conjunto de instruções dos AVR32, mas acredito que eles sejam bastante diferentes daqueles dos AVRs de 8 bits.

Além disso, não acredito que a migração de AVR8 para AVR32 seja assim tão simples quanto foi comentado acima.

Por fim, vale um comentário: se AVR32 fosse tão bom assim, porquê o último grande lançamento da Atmel foi a série AT91CAP de SOCs baseados em ARM???? Claro que eles focaram no mercado...

T+
Fábio Pereira
embeddedsystems.io
Avatar do usuário
Fábio Pereira
Word
 
Mensagens: 674
Registrado em: 16 Out 2006 09:07
Localização: Kitchener, ON

Mensagempor RobL » 12 Mai 2008 15:44

Fábio, mesmo que os AVR32 fossem melhores que os ARM9 e outros, a questão é iqual a automóvel, na hora de comprar o melhor, temos que olhar para a rede de atendimento, etc. É incomparável a facilidade de ferramentas disponíveis para ARM comparado com AVR32, literatura, códigos, etc.
Acredito que a estrategia a Atmel até o momento é iniciar uma opção, muito atraente do ponto de vista de recursos do micro e marcar território mas ainda pouco difundida.
Obviamente para projetos específicos, feito por grande empresa, essa limitação não existe e os AVR32 podem ser a opção, sem problemas.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor brasilma » 12 Mai 2008 15:48

Se não existem tantos vinculos entre os AVR8 e a AVR32, porque a Atmel os manteve na mesma familia???
" A Teoria orienta e a Prática decide" ;-)
Avatar do usuário
brasilma
Dword
 
Mensagens: 3621
Registrado em: 11 Out 2006 15:39
Localização: Planeta Terra

Mensagempor Fábio Pereira » 12 Mai 2008 18:07

Brasilma,

Provavelmente pelo mesmo motivo que a Microchip batizou os seus microcontroladores de 32 bits como PIC32, mesmo considerando que eles não têm nada a ver com os PICs (pelo menos não em termos de CPU).

RobL,

Nem estou discutindo se AVR32 é melhor ou pior que ARM. Segundo a matéria que li na Circuit Cellar (há vários meses atrás) a linha AVR32 (de microprocessadores, não microcontroladores) possui um desempenho superior aos ARM9.

A questão não é desempenho, eu estava me referindo ao lançamento da linha CAP. Oras, cabe a Atmel, mais que ninguém, difundir a sua tecnologia. E isto se faz aumentando a linha de componentes, fomentando a criação de ferramentas, etc. Neste sentido, é de se estranhar que eles ofereçam a solução CAP baseada em ARM e não em AVR32.
Fábio Pereira
embeddedsystems.io
Avatar do usuário
Fábio Pereira
Word
 
Mensagens: 674
Registrado em: 16 Out 2006 09:07
Localização: Kitchener, ON

Mensagempor RobL » 14 Mai 2008 08:56

A linha AT91CAP é destinada a usuários que desejam customizar o microcontrolador. É como uma MCU+FPGA. Inclusive pode ser pedido desenhos especiais para fábrica.
Já a linha AVR32 tem outras especificidades diferentes do AT91CAP.
Se a pergunta for, por que não usar o núcleo AVR32 no AT91CAP a questão poderá estar no custo final e sem dúvida uma forma da Atmel marcar sua presença com os ARM no mercado, pois é maioria no mercado no momento.

Brasilma
Há muita similaridade entre AVR8 e AVR32 (já na base da filosofia da cpu) e certamente não poderá haver nenhuma similaridade entre PIC8 e PIC32, ou melhor, espero que não haja nenhuma, pois, se houver, seria um blefe!!!
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor RobL » 14 Mai 2008 09:25

Para ficar claro AVR32 x AVR8: praticamente o mesmo grupo que projetou o AVR8 fez o AVR32, mas na prática, nos finalmentes, não temos "similaridade" alguma. Exceto a ferramenta de debug que poderá ser aproveitada com o JTAG.

Suponho que os XMegas vieram para permitir ao usuário de 8 bits manter todo seu aparato (ferramentas e códigos) e conseguir perseguir determinadas tarefas que hoje só seriam possível com os 32bits, em termos de custo e velocidade.
Tanto que para tal, os XMegas contam com características antes vistas somente em caras e sofisticadas cpus. Mas que é estranho é.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56


Voltar para AVR

Quem está online

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

x