Página 1 de 2

Linux em um MCU de 8-bits emulando ARM

MensagemEnviado: 04 Abr 2012 17:07
por ivan braga

MensagemEnviado: 04 Abr 2012 17:59
por tcpipchip
O Russo nao podia sair de casa...por causa da neve, nao tinha mulher...estao resolveu estudar a maquina de estados do ARM...

Caramba....!!!!! Muito bom!!!!

Vou sair desta area!

TCPIPCHIP

PS: boot de 2 horas :)

MensagemEnviado: 04 Abr 2012 21:12
por turuna
Me sinto pequeno ao ver essas coisas............

Turuna

MensagemEnviado: 05 Abr 2012 08:07
por proex
A parte que eu mais gostei foi essa:

" It takes about 2 hours to boot to bash prompt ("init=/bin/bash" kernel command line). Then 4 more hours to boot up the entire Ubuntu ("exec init" and then login). "

Ou seja, somando tudo, o bicho demora 6 horas pra dar o boot no Linux.

:D :D :D :D :D :D :D :D


.

MensagemEnviado: 05 Abr 2012 08:51
por xultz
Provavelmente muta gente perguntou "Por que fazer isso".
A resposta é uma só: "Porque eu consigo."

MensagemEnviado: 05 Abr 2012 10:43
por Rodrigo_P_A
realmente o cara é bom, e eu acredito que é possível sim.

mas que o cara teve que estudar muito e ter muita paciência, isso ele teve!

MensagemEnviado: 05 Abr 2012 11:21
por tcpipchip
Nao é dificil não...mas tem que ter um bom PARSER...e muita paciencia como o RODRIGO falou...

Nos chegamos a fazer um emulador da maquina M+, o qual chamamos de M++...só tinhamos apenas 16 instruções para criar a maquina de estados...(microinstruções)

O cara é bom mesmo!!!! E novo!

veja os exemplos do PARSER dele...
cp.c e outros que começam com cp...c

Lá o cara mostra a troca do modo system para user :) e como ele preserva os registradores :)

É hora de clonar o ARM :)

Dá até um TCC, passando para um FPGA...

TCPIPCHIP

MensagemEnviado: 05 Abr 2012 11:42
por msamsoniuk
se ele fosse realmente bom, teria feito algo melhor. botar um emulador de processador 32 bits em um processador de 8 bits soh p/ dizer que roda linux eh supra-sumo do "eu sou um idiota e preciso chamar a atencao".

Rodrigo_P_A escreveu:realmente o cara é bom, e eu acredito que é possível sim.

mas que o cara teve que estudar muito e ter muita paciência, isso ele teve!

MensagemEnviado: 05 Abr 2012 12:06
por msamsoniuk
antes de tentar, dah uma olhada nisso:

http://opencores.org/articles,1004822682

bom, fora a questoes legais, tem uma importante questao funcional: performance!

tem tempo, eu achei alguns posts em foruns sobre o assunto e o povo comentava que a performance do blackARM era decepcionante, coisa da ordem de apenas 15 MHz, o q eh baixo comparado com os tipicos 30MHz que se consegue com um clone de 68000. recentemente eu portei um design nosso de um bus de 8 bits p/ 16 bits, houve uma piora de performance e comecei a entender como a coisa funciona.

e o motivo eh bem simples: em uma FPGA, quando maior a largura do barramento, maior eh o requerimento de tempo extra de setup/hold. se vc tiver uma unica linha, vc consegue fechar o tempo de setup/hold em algo da ordem de 500MHz em uma FPGA barata. se vc tem duas linhas, os tempos de setup/hold delas vao ser diferentes e o tempo total sera a soma dos tempos de setup/hold. com 16 linhas vc chega em algo como 30MHz e com 32 linhas fica nos 15MHz.

a maior parte das FPGAs tem otimizacoes p/ larguras de 16 bits, mas o uso requer uma certe simetria de construcao. quando a logica eh muito complexa (como eh um ARM ou 68000), existe um quebra de simetria e a logica passa a ser descrita de forma assimetrica. o resultado eh aquele espalhamento da temporizacao de setup/hold.

designs simples, como o J1, conseguem manter uma certa simetria, nao apenas melhorando a performance, como tambem ocupando muito menos espaco:

http://excamera.com/sphinx/fpga-j1.html

nao sei quanto o BlackARM ocupava (nos foruns falaram algo da ordem de uma virtex com 1 milhao de gates!), mas p/ ter ideia, um 68000 em verilog consome espaco equivalente a oito cores J1 (uns 500 mil gates). e o J1 roda 3x mais rapido que o 68000.

tcpipchip escreveu:Nao é dificil não...mas tem que ter um bom PARSER...e muita paciencia como o RODRIGO falou...

Nos chegamos a fazer um emulador da maquina M+, o qual chamamos de M++...só tinhamos apenas 16 instruções para criar a maquina de estados...(microinstruções)

O cara é bom mesmo!!!! E novo!

veja os exemplos do PARSER dele...
cp.c e outros que começam com cp...c

Lá o cara mostra a troca do modo system para user :) e como ele preserva os registradores :)

É hora de clonar o ARM :)

Dá até um TCC, passando para um FPGA...

TCPIPCHIP

MensagemEnviado: 05 Abr 2012 12:57
por xultz
se ele fosse realmente bom, teria feito algo melhor. botar um emulador de processador 32 bits em um processador de 8 bits soh p/ dizer que roda linux eh supra-sumo do "eu sou um idiota e preciso chamar a atencao".

Imagem

MensagemEnviado: 05 Abr 2012 13:04
por Rodrigo_P_A
xultz escreveu:
se ele fosse realmente bom, teria feito algo melhor. botar um emulador de processador 32 bits em um processador de 8 bits soh p/ dizer que roda linux eh supra-sumo do "eu sou um idiota e preciso chamar a atencao".

Imagem



kkkk, eita, agora vai começar a treta!

MensagemEnviado: 05 Abr 2012 13:46
por EvandrPic
O cara é bom mesmo...

O outro projeto dele também é bem interessante.
PIC-based audio player 2
http://www.youtube.com/watch?v=UtMgx4yMETw&hd=1

Imagem

MensagemEnviado: 05 Abr 2012 16:02
por proex
EvandrPic escreveu:O cara é bom mesmo...

O outro projeto dele também é bem interessante.
PIC-based audio player 2
http://www.youtube.com/watch?v=UtMgx4yMETw&hd=1

Imagem


Até ai, nada de mais. Eu também já fiz isso a dois anos atras: http://www.proex.eng.br/gravadordigital.htm

.

MensagemEnviado: 05 Abr 2012 17:42
por B-EAGLE
po meu, forever alone no ultimo o cara deve ser! hauaha

to até vendo, vai começar o pipoco por causa do cotovelo! hauahuaha

MensagemEnviado: 05 Abr 2012 17:50
por EvandrPic
Mas não com um PIC 12F né? :roll:


proex escreveu:
EvandrPic escreveu:O cara é bom mesmo...

O outro projeto dele também é bem interessante.
PIC-based audio player 2
http://www.youtube.com/watch?v=UtMgx4yMETw&hd=1

Imagem


Até nada de mais, eu também já fiz isso, a dois anos atras: http://www.proex.eng.br/gravadordigital.htm

.