O ultimo ano foi bastante dinâmico não só para a comunidade MSX mas também para a comunidade de desenvolvimento de software e hardware em geral.
Vale ressaltar na comunidade MSX sobre o desenvolvimento, no Brasil, de tecnologias que já estão disponíveis há um certo tem em outros países como por exemplo a placa de rede para MSX, baseada na Obsonet, construída por Ricardo Oazem da Tecnobytes. Outra novidade original do Brasil é a placa IDE, também da Tecnobytes, com 512 Kbytes de Memory Mapper e como senão bastasse essa quantidade a mais de memória mapeada, essa Mapper é reconhecida em qualquer MSX, inclusive os de primeira geração.
Isso tudo é para exemplificar que o mercado MSX está repleto de coisas novas e no meio dessas coisas novas de MSX muitas outras existem em paralelo, principalmente no desenvolvimento de hardware e software embarcados, que é um mercado emergente no Brasil, principalmente através de tecnologias de hardware open source para hobbystas, como a Arduino e também através de tecnologias mais profissionais para desenvolvimento de hardware reprogramáveis, como a FPGA.
Em um futuro próximo escreverei um post sobre a tecnologia Arduino, no momento o meu interesse é sobre a FPGA, tecnologia essa que tive contato pela primeira vez em 2004, quando naquela época eu arquitetava e desenvolvia o software que controlava toda a inteligência de um veículo aéreo autônomo, ou UAV, para um grande cliente.
Foi um contato rápido mas que me deixou bem interessado nessa tecnologia, pois na mesma época o One Chip MSX (OCM) começava a despontar no cenário da comunidade MSX mundial. assim como em diversos outros projetos que começavam a ser desenvolvidos em torno dessa tecnologia. Foi o suficiente para saber que existem 2 grandes players nesse mercado de FPGA, sendo a líder a Xilinx, seguida de perto pela Altera.
Acompanhando o autor do projeto MSX ARM, Rogério Machado, até um revendedor de placas baseadas em FPGA, na ultima semana, fiquei bastante empolgado em começar a desenvolver coisas baseadas em FPGA e terminei adquirindo um kit de aprendizado, o BASYS 2 da Digilent Inc., nada parecido com a DE0-Nano, da terasIC, baseada em Altera e utilizada para auxiliar o desenvolvimento do protótipo do MSX ARM e que possui uma grande quantidade de I/O, 1 conversor A/D de 8 canais e 1 acelerõmetro, 32MB de memória entre outras características interessantes, mas para mim a BASYS 2 já é um excelente começo.
Abaixo segue as imagens do unboxing…..

……e o detalhe da plaquinha.

Características técnicas do Kit.
- Xilinx Spartan-3 E FPGA, 100K ou 250K;
- Possui 18 bits multiplicadores, 72Kbits de RAM, e 500MHz;
- 2 Portas USB de velocidade total para configuração e transferência de dados;
- Adept 2.0 software disponível como um download gratuito;
- XCF02 Plataforma Flash ROM que armazena as configurações FPGA indefinidamente;
- Freqüência de oscilação configurável pelo usuário (25, 50 e 100 MHz);
- Reguladores de voltagem (1.2V, 2.5V e 3.3V), que permite o uso de 3.5V-5.5V;
- 8 LEDs, 4 displays de sete segmentos, quatro botões, 8 comutadores, porta PS / 2 e uma porta de 8-bit VGA;
- Quatro conectores de 6 pinos para o usuário;
.

Ou seja, é uma placa básica mas que de imediato dá para perceber que tem um potencial para desenvolver até coisas não triviais, como por exemplo implementar uma placa de vídeo VGA e testar o resultado através do conector VGA presente no kit. Sem contar os 4 displays que podem, entre outras coisas, ser utilizados para interação com o usuário ou até mesmo para mostrar informações de debug.
As 8 chaves comutadoras e os 4 botões são mais do que suficientes para possibilitar a entrada de dados por parte do usuário, sem contar a porta PS/2 que possibilita a implementação de entrada de dados via teclado.
O FPGA utilizado na placa é o Xilinx Spartan-3 E, com capacidade suficiente para as minhas necessidades de iniciante :), onde já até penso em criar algum projeto, quem sabe um Atari 2600.
É claro que não poderia faltar um material impresso ou até mesmo em formato eletrônico para o aprendizado de alguma linguagem para desenho e especificação de hardware e a mais conhecida é a HDL, que, é claro, tem suas variações e forks.
Abaixo a imagem dos 2 livros que aquiri juntamente com o kit…….

….depois de comprar esses 2 livros, descobri que a própria Digilent disponibiliza um preview desses, e outros, livros gratuitamente em PDF, então você pode consultar o conteúdo do livro antes de adquiri-lo, inclusive você pode fazer a compra diretamente no site da própria Digilent.
- Digital Design – Using Digilent FPGA Boards (VHDL/ActiveHDL Edition) – 75+VHDL Examples – Richard E. Haskell, Darin M. Hanna – LBE Books;
- Digital Design – Using Digilent FPGA Boards (VHDL/ActiveHDL Edition) – 30 VHDL/Active-HDL Examples – Richard E. Haskell, Darin M. Hanna – LBE Books;
Segue abaixo os links para download e compra:
http://www.digilent.cc/Products/Catalog.cfm?NavPath=2,729&Cat=14
Pesquisando na internet é possível encontrar diversos projetos que utilizam a FPGA Spartan 3 da Xilinx e que com alguma ou nenhuma alteração poderão ser utilizados no BASYS 2 da Digilent, entretanto o objetivo desse post é apenas fazer uma apresentação do kit para que no decorrer do ano que se inicia eu possa mostrar seu funcionamento e exemplos de utilização.
[]’s
PopolonY2k
Referência na internet
Obsonet (MSX.Org)
http://www.msx.org/articles/obsonet
Obsonet
http://obsonet.blogspot.com/
Tecnobytes
http://www.tecnobytes.msxall.com/
Arduino (Wikipedia)
http://en.wikipedia.org/wiki/Arduino
FPGA (Wikipedia)
http://en.wikipedia.org/wiki/Fpga
UAV (Wikipedia)
http://en.wikipedia.org/wiki/Unmanned_aerial_vehicle
One Chip MSX (Wikipedia)
http://en.wikipedia.org/wiki/1chipMSX
XILINX (Wikipedia)
http://en.wikipedia.org/wiki/Xilinx
Altera (Wikipedia)
http://en.wikipedia.org/wiki/Altera
Digilent Inc.
http://www.digilentinc.com/
BASYS 2 (Digilent)
http://www.digilentinc.com/Products/Detail.cfm?Prod=BASYS2
terasIC
http://www.terasic.com.tw/en/
DE0-Nano (terasIC)
http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&No=593
VGA (Wikipedia)
http://en.wikipedia.org/wiki/Video_Graphics_Array
Atari 2600 (Wikipedia)
http://en.wikipedia.org/wiki/Atari_2600
Hardware description language – HDL (Wikipedia)
http://en.wikipedia.org/wiki/Hardware_description_language
vc pode encontrar muitos projetos interessantes de FPGAs, tanto Xilinx quanto Altera, no opencores.
Vale a visita.
http://opencores.org/
Opa….
….boa lembrança. Um dia desses eu vi um projeto de um Z80 senão me engano no opencores.
[]’s
PopolonY2k
Sou iniciante em VHDL e tenho o Digilent Nexys 2, bem parecido com esse teu kit.
Já conseguiu desenvolver alguma coisa na VGA? E de onde que você comprou estes livros? Tenho interesse em adquiri-los.
[ ]’s
Olá Lucas como vai ?
Bom, na verdade ainda estou estudando o que vou fazer com esse kit e não o utilizei ainda mas vou utilizá-lo em breve assim que eu terminar alguns projetos de software para MSX.
Recentemente adquiri a TeraSic Nano, http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&No=593, que citei no post, estou aguardando chegar.
Quanto aos livros e o kit da Digilent eu comprei aqui no Brasil na Microgenios, http://www.microgenios.com.br. Mas para o kit eu sugiro que vc compre na Digikey, http://www.digikey.com/, pois mesmo com impostos de importação, sai bem mais em conta.
[]’s e continue a visitar o blog.
PopolonY2k