Quiero comenzar la redacción sobre hardware libre porque se dió un caso muy curioso… una persona por MSN Messenger me hizo el siguiente comentario: -lo que tu haces no es hardware libre, es modding y overclocking-… me quede pensando en lo que me acababa de decir, en cierta forma si llego a hacer ambas cosas, sin embargo es una de las tantas alternativas y/o soluciones que puedes tener al interesarte en el hardware libre, pero hablar de hardware libre va más haya de esas dos técnicas.

El hardware libre es una propuesta casi tan antigua como la del software libre, su empleo no es tan directo; compartir diseños hardware es más complicado, ya que la mayoría de veces al no tener acceso a diagramas del fabricante, tienes que hacer ingeniería inversa para conocer el funcionamiento de la parte física de la computadora.

Si a esto le sumas que pocas personas se han interesado en compartir información referente a Laptops, Netbook y otros dispositivos móviles, las opciones de búsqueda -por lo menos en México-, se reduce considerablemente.

Tomando como referencia la filosofía de “software libre”, que es la divulgación del conocimiento en forma de programas que pueden ser modificados, usados y distribuidos sin fines comerciales y sin costo alguno para el usuario.

La finalidad del “hardware libre” se refiere a todos aquellos interesados en liberar la forma en la que realizan tal o cual microprocesador y/o tarjeta madre (por mencionar algunos ejemplos), apuntando más al tipo hágalo usted mismo.

El hardware reconfigurable es aquél que viene descrito mediante un lenguaje HDL (Hardware Description Language). Su naturaleza es completamente diferente a la del hardware estático (como los ROM-BIOS) que ya no se pueden volver a programar. Se desarrolla de una manera muy similar a como se hace con el software, por lo tanto, nuestros diseños son ficheros de texto, que contienen el “código fuente”, los cuales se les puede aplicar directamente una licencia libre, como la GPL.

Ejemplo de beneficios:  La mayoría de las “laptops” tienen problema de sobrecalentamiento, por lo general se nos aconseja actualizar el BIOS para corregir errores de control de hardware, en dada situación, los programadores de software libre pueden reprogramar y/o corregir errores de control (dependiendo el caso), algo que por lo general solo lo hace directamente el fabricante.

Cabe mencionar que cuando hay problemas de sobrecalentamiendo del hardware por mal diseño físico, se tiene que hacer ciertas adaptaciones -ahi es donde entra el modding y overclocking-. En otros casos, como cuando el sistema operativo de tu laptop falla y tienes que entregar un trabajo en tu escuela o empleo, se puede dar el conocimiento libre a las personas interesadas, independientemente del rol de vida que tengan para poder extraer vía USB su información, y transferir a otro equipo en ese momento la información que es prioridad; independientemente de que posteriormente restablesca el funcionamiento de su computadora.

Todo el hardware es liberable (tanto en procesos como en circuitos ), pero a diferencia de los programas esto adquiere relevancia cuando tenemos acceso a la tecnología para fabricarlos. En un principio, hace muchos años, el hagalo usted mismo estaba más difundido. La tecnología creció rápidamente dificultándolo, pero en la actualidad, con la disminución de los costos, el aumento de la capacidad y simpleza de los microcontroladores, sumados al gran aporte de Internet en la difusión del conocimiento y la posibilidad de interactuar con grupos afines, se está logrando que cualquier persona pueda fabricar este tipo hardware aprendiendo en el proceso.

Por desgracia, el principal desafío es lograr que más gente se interese en el hardware libre para crear grupos de trabajo y llegar a pasar del primer problema que es la iniciativa, posteriormente interesarse por la investigación y fabricación primaria de los componentes.

Otro problema hasta ahora es que no existen herramientas que nos permitan cerrar el ciclo de diseño de hardware reconfigurable bajo máquinas GNU/Linux.

Para finalizar, al hablar de hardware libre hay que hacer primero la distinción entre hardware estático y reconfigurable; para el hardware estático se ha propuesto una definición y se ha establecido una clasificación de los diseños en función de las restricciones impuestas por las aplicaciones de diseño. Es el autor el que decide si su diseño es o no abierto, y no la aplicación empleada.

En el caso del hardware reconfigurable, se ha conseguido cerrar el ciclo completo de diseño en una máquina GNU/Linux, realizándose la compilación, simulación, síntesis y descarga en una FPGA. Para la compilación y simulación hemos empleado el GHDL junto con el GTKWAVE, ambos programas libres y para la síntesis el entorno ISE de Xilinx, ejecutado a través deWine.

Se podrían realizar sintetizadores libres que generen un netlist en formato EDIF, pero actualmente no sería posible disponer de un entorno completamente libre puesto que los fabricantes no publican la información, considerada como secreto industrial. El primer paso para lograrlo sería la existencia de una “Open FPGA”.