Un nucleo IP (proprietà intellettuale) è un blocco di logica o di dati che viene utilizzato per creare un FPGA (field programmable gate array) o un circuito integrato specifico dell'applicazione (ASIC) per un prodotto. In quanto elementi essenziali del riutilizzo del progetto, i core IP fanno parte della crescente tendenza del settore dell'automazione elettronica della progettazione (EDA) verso l'uso ripetuto di componenti progettati in precedenza. Idealmente, un core IP dovrebbe essere completamente portabile, ovvero in grado di essere facilmente inserito in qualsiasi tecnologia o metodologia di progettazione del fornitore. Il ricevitore / trasmettitore asincrono universale (UART), le unità di elaborazione centrale (CPU), i controller Ethernet e le interfacce PCI sono tutti esempi di core IP.
I core IP rientrano in una delle tre categorie: nuclei duri , nuclei solidi , o colori tenui . Gli hard core sono manifestazioni fisiche del design IP. Questi sono i migliori per le applicazioni plug-and-play e sono meno portatili e flessibili degli altri due tipi di core. Come i nuclei duri, solidi (a volte chiamati semi-duro ) trasportano anche i dati di posizionamento, ma sono configurabili per varie applicazioni. Il più flessibile dei tre, i soft core esistono come file netlist (un elenco delle porte logiche e delle relative interconnessioni che compongono un circuito integrato) o codice HDL (Hardware Description Language).
Diverse organizzazioni, come il Free IP Project e Open Cores, si sono formate per promuovere la condivisione aperta dei core IP.