OpenCores es una comunidad que desarrolla hardware digital de código abierto a través de la automatización del diseño electrónico (EDA), con un espíritu similar al del movimiento del software libre . OpenCores espera eliminar el trabajo de diseño redundante y reducir significativamente los costos de desarrollo. Se ha informado que varias empresas han adoptado la propiedad intelectual de OpenCores en chips, [1] [2] o como complemento de las herramientas EDA. [3] [4] OpenCores también se cita a veces como un ejemplo de código abierto en la comunidad de hardware electrónico. [5]
OpenCores siempre ha sido una organización de propiedad comercial. En 2015, sus principales usuarios activos establecieron la Free and Open Source Silicon Foundation (FOSSi Foundation), una organización independiente, y crearon otro directorio en el sitio web librecores.org [6] como base para todo desarrollo futuro, independiente del control comercial. Siete años después, se cerró para redirigir a una publicación en el sitio web de la FOSSi Foundation a favor de una simple búsqueda en la web, argumentando que "el silicio libre y de código abierto ya no es un sueño". [7]
Damjan Lampret, uno de los fundadores de OpenCores, declaró en su sitio web que comenzó en 1999. [8] El nuevo sitio web y sus objetivos fueron informados públicamente por EE Times en 2000 [9] y CNET News en 2001. [10] Durante los años siguientes fue apoyado por publicidad y patrocinio, incluso por Flextronics . [1]
A mediados de 2007 se hizo un llamamiento para conseguir un nuevo patrocinador. [11] Ese noviembre, la casa de diseño sueca ORSoC AB [12] aceptó hacerse cargo del mantenimiento del sitio web de OpenCores. [13]
A finales de 2008, EE Times informó que OpenCores había superado la marca de los 20.000 suscriptores. [14] En octubre de 2010, alcanzó los 95.000 usuarios registrados y tenía aproximadamente 800 proyectos. En julio de 2012, alcanzó los 150.000 usuarios registrados.
Durante 2015, ORSoC AB formó una empresa conjunta con KNCMiner AB para desarrollar máquinas de minería de bitcoins . Como esto se convirtió en el foco principal de la empresa, pudieron dedicar menos tiempo al proyecto opencores.org. En respuesta a la creciente falta de compromiso, el equipo de desarrollo principal de OpenRISC creó la Free and Open Source Silicon Foundation (FOSSi) y registró el sitio web librecores.org como base para todo el desarrollo futuro, independientemente del control comercial. [15]
En ausencia de una licencia de hardware de código abierto ampliamente aceptada, los componentes producidos por la iniciativa OpenCores utilizan varias licencias de software diferentes . La más común es la GNU LGPL , que establece que cualquier modificación de un componente debe compartirse con la comunidad, aunque se puede seguir utilizando junto con componentes propietarios . La licencia BSD de 3 cláusulas, menos restrictiva , también se utiliza en algunos proyectos de hardware, mientras que la GNU GPL se utiliza a menudo para componentes de software, como modelos y firmware.
La biblioteca estará compuesta por elementos de diseño de unidades centrales de procesamiento , controladores de memoria , periféricos , placas base y otros componentes. Los fabricantes emergentes de semiconductores podrían utilizar la información y obtener licencias de los diseños de forma gratuita.
El énfasis está puesto en los módulos digitales llamados "núcleos", comúnmente conocidos como IP Cores . Los componentes se utilizan para crear circuitos integrados personalizados ( ASIC ) y FPGA .
Los núcleos se implementan en los lenguajes de descripción de hardware Verilog , VHDL o SystemC , que pueden sintetizarse en matrices de silicio o de puertas .
El proyecto tiene como objetivo utilizar un bus de sistema común no propietario llamado Wishbone , y actualmente la mayoría de los componentes están adaptados a este bus.
Entre los componentes creados por los colaboradores de OpenCores se encuentran:
En abril de 2011, OpenCores abrió el plazo de donaciones [18] para un nuevo proyecto destinado a desarrollar un sistema completo en un diseño de chip basado en el procesador OpenRISC e implementarlo en un componente ASIC . OpenCores está afiliado a OpenCores, [ aclaración necesaria ] por ejemplo OpenSPARC y LEON .