Marco Túlio Chella
25/05/2017

[1]
De uma forma ou outra somos usuários de uma ampla gama de sistemas de software que adotam a filosofia de software aberto, quer seja utilizando diretamente, ao optar por um navegador como o Firefox, o sistema operacional Linux, suíte de aplicativos como o Libreoffice, ou, indiretamente, ao utilizar um serviço web que emprega ferramentas de desenvolvimento de código aberto.

Contudo, para que um sistema possa ser considerado aberto é preciso que também o sistema de hardware o seja. Um sistema de hardware aberto pode ser tanto um objeto físico, como o Arduino [2], um das mais populares placas de prototipagem, ou algo mais intangível, como uma UCP (Unidade Central de processamento) baseada em software, sendo, nesse caso, denominado softcore.

Tomando, como exemplo, o Arduino, um sistema constituído por uma placa de circuito impresso, componentes eletrônicos e um conjunto de software embarcado no microcontrolador e nas ferramentas para desenvolvimento, toda a documentação desse sistema é atualizada e distribuída livremente permitindo que toda a comunidade possa reproduzir, criar clones, alterar, incluindo e retirando recursos, criando bibliotecas e aplicações.

Atualmente existem duas licenças aplicadas ao hardware aberto: copyleft [3] e permissive [4]. A proposta inicial dessas licenças era atingir os dispositivos eletrônicos e projetos mecânicos, mas expandiu conforme proposta da Open Source Hardware Association [5].

À medida que o movimento de hardware de código aberto cresce novas questões são levantadas: muitas das ferramentas para documentação e projeto são fechadas e utilizam tecnologias proprietárias, placas utilizam componentes como microcontroladores produzidos por empresas e protegidos por licenças e patentes.

Para tratar dessas questões a comunidade de software tem desenvolvido aplicações de apoio a projeto como o Kicad [6] e os envolvidos com hardware têm projetado sistemas de hardware utilizando software que sintetiza hardware para dispositivos de lógica reprogramável como FPGA (Field Programmable Gate Array). O resultado desse modelo de projeto gera o que ficou conhecido como softcore. Um exemplo é o processador RISC-V [7] uma especificação aberta com código fonte disponível para que qualquer um possa estudar e alterar.  O RISC-V foi utilizado na recente implementação da placa HIFive1 [8], a primeira variante do Arduino que utiliza somente software e hardware  com licença de código aberto.

Em tempos que muito se fala em inovação, o hardware de código aberto pode beneficiar empresas e comunidades, já que não se restringe a um único meio, praticamente qualquer objeto criado ou projetado pode adotar uma das licenças, de forma que as pessoas possam estudar, entender como funcionam, ter a liberdade de adaptar de acordo com a sua necessidade, sem o esforço do exercício da engenharia reversa que pode levar inclusive a questões legais e éticas.

[1] Crédito da imagem: Geralt (Pixabay) / Creative Commons CC0. URL: https://pixabay.com/pt/ci%C3%AAncia-da-computa%C3%A7%C3%A3o-inteligente-503599/.

[2] Arduino. URL: https://www.arduino.cc/. Acesso: 20 de Maio (2017).

[3] Copyleft. URL: https://copyleft.org/. Acesso: 20 de Maio (2017).

[4] Wikipedia. Permissive software licence. URL: https://en.wikipedia.org/wiki/Permissive_software_licence. Acesso: 20 de Maio (2017).

[5] Open Source Hardware Association. URL: https://www.oshwa.org/faq/. Acesso: 20 de Maio (2017).

[6] Kicad EDA. URL: http://kicad-pcb.org/. Acesso: 20 de Maio (2017).

[7] RISC-V Fondation. URL: https://riscv.org/. Acesso: 20 de Maio (2017).

[8] HiFive1. URL: https://www.sifive.com/products/hifive1/. Acesso: 20 de Maio (2017).

Como citar este artigo: Marco Túlio Chella. A revolução do hardware de código aberto. Saense. URL: http://www.saense.com.br/2017/05/a-revolucao-do-hardware-de-codigo-aberto/. Publicado em 25 de maio (2017).

Artigos de Marco Túlio Chella     Home