[OSHW] Licencia Open Source Hardware Version 1.0

En Julio del año pasado publique la novedad de que se habia llegado finalmente a un acuerdo sobre los estándar que debían cumplir los productos licenciados como Open Source Hardware.

open source hardware

En la pasada semana se actualizo la versión de la licencia llegando a V1.0, fue anunciado de la siguiente manera por Ayah:

Finalmente el día D ya está aquí! Nos complace anunciar la definición 1.0 de Open Source Hardware.


La definición ha sido objeto de varias rondas de consultas entre los principales protagonistas en la escena mundial, también se tuvieron en cuenta los comentarios realizados por toda la comunidad en foros, blogs, reuniones, mails, etc. Las opiniones fueron convergiendo mas y mas, asi como fue aumentado el apoyo a la definición.


Nos gustaría dar las gracias a todos los que participaron activamente en la redacción de la definición, y en las discuciones.


Ahora, para seguir adelante, por favor, necesitamos tu AYUDA:


1. Endorsar la definición actual,  dejar tus comentarios sobre la versión 1.0 en el foro y en la lista de distribución a medida que trabajamos hacia una actualización de 1.1 en las próximas semanas / meses.

2. Echa un vistazo a los logos que están siendo considerados para ser adoptado como logotipo oficial, deja tus comentarios o presenta tu propio diseño en el post “logo“.

3. Demostra tu apoyo a la definición OSHW adoptándola en tu trabajo/proyecto/pagina web.

La licencia sobre OSHW se encuentra legalizada gracias al apoyo brindado por Creative Commons.

Versión en Español de la Licencia Open Source Hardware (OSHW)

¿Que es VHDL?

VHDL es el acrónimo que representa la combinación de VHSIC y HDL, donde VHSIC es el acrónimo de Very High Speed Integrated Circuit y HDL es a su vez el acrónimo de Hardware Description Language.

Es un lenguaje definido por el IEEE (Institute of Electrical and Electronics Engineers) (ANSI/IEEE 1076-1993) usado por ingenieros para describir circuitos digitales

modelo VHDL

VHDL significa very-high-speed integrated circuits hardware description language o lenguaje de descripción de hardware de circuitos integrados de muy alta velocidad.

Como indica su denominación es un lenguaje similar a ADHL o Verilog usado para describir circuitos internos y la programación de FPGAs. Estos lenguajes presentan un mismo objetivo y se diferencia del clásico C (o cualquiera parecido a este) por ser un lenguaje paralelo no secuencial

Un FPGA no es como un microcontrolador, en realidad es un conjunto masivo de celdas o bloques lógicos programables. Estas celdas son programadas individualmente para convertirse en pequeños bloques de construcción. Pueden ser compuertas simples (AND, OR y NOT, etc) o flip-flops.
FPGA Xilinx
Xilinx FPGA (Spartan XC3S400). Posee 400000 compuertas y funciona a 50 MHz
Así que la diferencia entre una FPGA y un micro es que nosotros programamos cada celda para funcionar como un bloque de lógica. Esto significa que, debido a que cada bloque es tan independiente, todos están operando al mismo tiempo. A diferencia de un micro donde cada línea de código se procesa a su vez. Por lo tanto los programadores de FPGA pueden conseguir velocidades mucho más altas de procesamiento… en teoría.

Este punto anterior es muy importante a tener en cuenta. Un programa realizado en VHDL puede parecer como un programa de computadora clásico (secuencial) y puede procesar los datos en los cambios de flanco del clock, pero hay que recordar que todo está funcionando a la vez (paralelo).

El lenguaje se encuentra definido bloques también. Cada función que deseamos, es a nivel superior definida por una “entidad” donde se especifica las entradas y salidas del bloque. Por ej, una compuerta AND queda definida como:

entity ANDGATE is

Port( A, B : in bit;

X : out bit);

end ANDGATE;

Los bits del lenguaje se definen dentro de la entidad y se denomina “arquitectura”, la compuerta AND quedaría:

begin

X <= A and B;

end inst;

El lenguaje VHDL contiene otros comandos más complejos que pueden existir dentro de la arquitectura como Loops While, If y If-Else. Todos los tipo de cosas que se ven en la programación en C. Sin embargo, cuando se define un bucle en C el código da vueltas y vueltas, en VHDL que en realidad podríamos estar diciendo que genera múltiplos bloques idénticos de lógica y que todos ellos procesen los datos en un ciclo de clock – si así se requiere.

que es VHDL

Aprender VHDL para personas que se han escrito en C en micros por mucho tiempo puede consistir en un desafío bastante importante al tener que enfocarse a pensar sobre el hardware.

VHDL es un lenguaje muy sencillo pero también muy poderoso. No es tan flexible como un micro a los ojos de algunas personas, pero un buen programador se pueden generar cosas que no puedes comprar o replicar con un micro, diseñando el hardware según nuestros requisitos.

Para los que quieren comenzar a programar es recomenable la herramientas gratuitas Altera. Nos permite diseñar y simular sin necesidad de ningún hardware.

Para más detalles sobre VHDL, ejemplos y consejos los siguientes sitios son recomendados:

Licencia Open Source Hardware (OSHW) en Español

Traducción al español de la licencia para el Hardware de Código Abierto

Open Source Hardware. Declaración de Principios 1.0

Open Source Hardware es hardware cuyo diseño está a disposición del público para que cualquiera pueda estudiar, modificar, distribuir, hacer y vender el diseño o el hardware basado en el diseño. El diseño a partir del cual se realiza el hardware, está disponible en un formato preferente que permita realizar modificaciones al mismo. Idealmente, Open Source Hardware utiliza componentes y materiales fácilmente disponibles, procesos estándar, infraestructura abierta, contenido sin restricciones y herramientas de diseño de código abierto para maximizar la capacidad de las personas para hacer y usar el hardware. Open Source Hardware ofrece a las personas la libertad de controlar su tecnología, mientras fometna el intercambio de conocimientos y el comercio mediante el intercambio abierto de diseños.

Nt: Se entiende por Open Source Hardware a hardware de código abierto, pero se
     mantiene la palabra original en ingles para mayor uniformidad.

Introducción

Open Source Hardware (OSHW) es un término para artefactos tangibles – máquinas, dispositivos, u otras cosas físicas – cuyo diseño se ha lanzado al público de tal manera que cualquiera puede hacer, modificar, distribuir y usar estas cosas. Esta definición es destinada para ayudar a proporcionar directrices para la elaboración y evaluación de las licencias de Open Source Hardware.

Es importante señalar que el hardware es diferente de software debido a que los recursos físicos siempre deben estar comprometidos para la creación de bienes físicos. En consecuencia, las personas o compañías que produzcan artículos (“productos”) bajo una licencia de OSHW tienen la obligación de no implicar que dichos productos son fabricados, vendidos, garantizados, o de otra manera sanciónado por el diseñador original y también no hacer uso de cualquier marca registrada propiedad de el diseñador original.

Los términos de distribución de Open Source Hardware deben cumplir con los siguientes criterios:

1. Alcance

La documentación sobre el hardware debe especificar claramente qué parte del diseño, si no todo, se publica bajo la licencia.

2. Documentación

El hardware debe ser liberado con la documentación incluyendo los archivos de diseño, y debe permitir la modificación y distribución de los archivos de diseño. Cuando la documentación no se presente con el producto físico, tiene que existir un medio conocido para obtener dicha documentación con un  costo razonable de reproducción, preferentemente via descarga a través de Internet sin cargo. La documentación debe incluir los archivos de diseño en una forma que preferentemente permita a un desarrollador de hardware modificar el diseño. Archivos de diseño deliberadamente ofuscados  no están permitidos. Formas intermedias análogas a código informático compilado – tales como diseño de las pistas listo” para imprimir” desde un programa CAD – no se permiten como sustitutos.

3. Software Necesario

Si el hardware requiere de software, integrado o no, para funcionar adecuadamente y cumplir sus funciones esenciales, entonces la exigida documentación también debe incluir al menos uno de los siguientes: El software necesario, publicado bajo una licencia de código abierto aprobada por la OSI, o otra clase de documentación suficiente de tal modo que puede considerarse sencilla la escritura de un software de código abierto que permita a el dispositivo funcionar correctamente y cumplir con sus funciones esenciales.

4. Obras Derivadas

La licencia debe permitir modificaciones y trabajos derivados y debe permitir que estos se distribuyan bajo los mismos términos que la licencia del hardware original. La licencia debe permitir la fabricación, venta, distribución y uso de productos creados a partir de los archivos de diseño o derivados de los archivos de diseño.

5. Libre redistribución

La licencia no debe restringir a ninguna parte vender o regalar la documentación del proyecto como un componente de una distribución mayor que contiene diseños de diferentes fuentes. La licencia no debe requerir regalías o canon por su venta. La licencia no obligará a ninguna regalía o canon relacionada con la venta de obras derivadas.

6. Atribución

La licencia puede requerir que los trabajos derivados proporcionen la atribución al autor original cuando distribuyan los archivos de diseño, productos manufacturados, y / o sus derivados. La licencia también podrá exigir las obras derivadas lleven un diferente nombre  o número de versión que el diseño original.

7. Sin Discriminación de Personas o Grupos

La licencia no debe discriminar a ninguna persona o grupo de personas.

8. No Discriminación en función del Campo de Actividad

La licencia no debe restringir a nadie hacer uso del hardware en un campo específico de la actividad. Por ejemplo, no puede restringir el hardware a ser utilizado en un negocio, o que se utilice en la investigación nuclear.

9. Distribución de la Licencia

Los derechos asociados con el hardware deben aplicarse a todo el producto o documentación redistribuida sin la necesidad de ejecución de una licencia adicional para estas partes.

10. La Licencia No Debe Ser Específica a un Producto

Los derechos asociados con el hardware no deben depender de si el hardware es parte de un producto particular más grande. Si el hardware se extrae de ese producto y es usado o distribuido dentro de los términos de la licencia de hardware, todas las partes que compongan el hardware redistribuidas deben tener los mismos derechos que los que se conceden en relación con la distribución original.

11. La Licencia No Debe Restringir Otro Hardware o Software

La licencia no debe imponer restricciones sobre otro hardware o software que puede ser distribuido o utilizado con hardware licenciado. Por ejemplo, la licencia no debe insistir en que todo el hardware que se venda al mismo tiempo ser de código abierto, ni que sólo software de código abierto deba ser utiliza junto con el hardware.

12. La licencia debe ser Tecnologicamente Neutral

Ninguna disposición de la licencia puede basarse en cualquier tecnología individual o estilo de interfaz.

Epílogo

Los firmantes de esta definición de Open Source Hardware reconocen que el movimiento de código abierto representa sólo una manera de compartir información. Alentamos y apoyamos todas las formas de apertura y colaboración, se ajusten o no a esta definición.

Versión V 1.0 original de la licencia Aqui, traducción al español por Ayuda Electronica ®

Licencia Open-Source Hardware OSHW

Por primera vez se creo una licencia en la cual se especifican los estandares que debe cumplir cualquier diseño de Hardware abierto conocido en ingles como Open-Source Hardware

Ayer, Martes 13 de Julio del 2010 en la reunión Open Hardware Summit 2010 realizada en Nueva York  se anuncio formalmente los estandares de la licencia V 0.3 para Hardware Open Source, OSHW por sus siglas en ingles.

Actualmente existen en el mundo 13 millones de compañías dedicadas a fabricar hardware open source, pero no existían normas que determinen el comportamiento de este campo incipiente, hasta ahora…

A diferencia del software de código abierto,debido a que no existían definiciones formales, muchas personas ni son conscientes de ésta creciente industria. Sin embargo algunos de los que practican sus principios generales se han convertido en nombres muy conocidos en el ambiente de la electrónica:

  • Arduino, el microcontrolador programable y una suite de software
  • Chumby, un popular dispositivo Wi-Fi
  • MakerBot, una impresora 3D de bajo precio
  • Adafruit, un fabricante de equipos de hardware “hágalo usted mismo” con mucha presencia en la red

El pasado Martes, un grupo de los firmantes incluyendo al editor de la revista Wired y DIY Drones  Chris Anderson, Phil Turrón de Make magazine, David Mellis del MIT Media Lab y Arduino, Limor Fried de Adafruit y Ayah Bdeir New York’s Eyebeam, emitieron públicamente una definición formal de hardware de código abierto. Version en español.

Los elementos básicos del estandar son los siguientes: documentación, software necesario, obras derivadas, redistribución libre; atribución, la no discriminación contra personas o grupos; no discriminación frente a los diferentes campos de la actividad, distribución de la licencia; licencia no específica a un producto; la licencia no debe restringir otro hardware o software y por la licencia debe ser tecnológicamente neutral.

En el siguiente enlace pueden ver los videos grabados en la reunion: Opening-hardware