OpenCores er verdens største åpen kildekode-maskinvarefellesskap som utvikler digital gratis maskinvare gjennom elektronisk designautomatisering, med en etos som ligner på fri programvarebevegelsen . OpenCores håper å eliminere overflødig designarbeid og redusere utviklingskostnadene. En rekke selskaper er kjent for å ta i bruk OpenCores IP på brikker, [ 1 ] [ 2 ] eller som vedlegg til EDA-verktøy. [ 3 ] [ 4 ]OpenCores er også sitert fra tid til annen i elektronisk presse som et eksempel på gratis kilde i det elektroniske maskinvaresamfunnet, for eksempel [ 5 ] rapporterte EE Times sent i 2008 at OpenCores hadde passert 20 000 abonnenter. [ 6 ] I oktober 2010 nådde den 95 000 registrerte brukere og har omtrent 800 prosjekter, i juli 2013 nådde den 150 000 registrerte brukere.
Damjan Lampret, en av grunnleggerne av OpenCores opplyser på sin nettside at han startet i 1999 [10] . Den første offentlige registreringen av det nye nettstedet og dets mål var på CNET News i 2001. [ 7 ] I løpet av de neste årene ble det støttet av reklame og sponsing, inkludert Flextronics. [ 1 ]
I midten av 2007 ble en anke nedlagt av en ny sponsor, [ 8 ] og i november samme år gikk det svenske designfirmaet ORSoC AB med på å overta vedlikeholdet av OpenCores-nettstedet. [ 9 ]
I mangel av en allment akseptert gratis maskinvarelisens, bruker komponentene produsert av OpenCores-initiativet forskjellige programvarelisenser . Det vanligste er GNU LGPL , som sier at enhver modifikasjon av en komponent må deles med fellesskapet, mens den fortsatt kan brukes med proprietære komponenter . Den mindre restriktive BSD-lisensen med tre klausuler brukes også til noen maskinvareprosjekter, mens GNU GPL ofte brukes til programvarekomponenter, for eksempel tegninger og fastvare.
Biblioteket vil bestå av designelementer for sentrale prosesseringsenheter , minnekontrollere , periferiutstyr , hovedkort og andre komponenter. Fremvoksende halvlederprodusenter kan bruke lisensinformasjonen og designene gratis.
Hovedvekten i dag er på digitale moduler kalt 'kjerner', ofte kjent som IP-kjerner. Komponenter brukes til å lage både tilpassede integrerte kretser ( ASIC- er ) og FPGA- er .
Kjernene er implementert i maskinvarebeskrivelsesspråkene Verilog , VHDL eller SystemC , som kan syntetiseres av enten silisium eller gate-array .
Formålet med prosjektet er bruk av en felles ikke-proprietær buss kalt Wishbone, og de fleste komponentene er i dag tilpasset denne bussen.
Komponenter laget av OpenCores-bidragsytere inkluderer:
I april 2011 åpnet OpenCores bevilgninger [ 12 ] for et nytt prosjekt for å utvikle et komplett system på en brikkedesign basert på OpenRISC -prosessoren og implementere den i en ASIC - komponent . OpenCores tilknyttet OpenCores, for eksempel OpenSPARC og LEON .