Free & Open IP Cores

Real RTL. Real test benches. Free.

We were the first company to provide free IP cores — full source, documentation and test benches under a modified BSD license, so you can use them in commercial products. Full technical support is available for most cores featured on OpenCores.

Networking, Communications & Connectivity

10 CORES
CoreDescriptionFPGAASICWISHBONEHDL
USB 1.1 PHYAll functions essential to interface to the USB 1.1 bus (USB/UTMI). 111 LUTs, >50 MHz on Spartan-2.Verilog
USB 1.1 DeviceVery easy-to-use FIFO interface; UTMI hookup for a USB 1.1 compatible PHY. 885 LUTs, 80 MHz.Verilog
USB 2.0 DeviceUSB 2.0 compliant device controller with transfer speeds over 480 Mbps via UTMI.Verilog
Asynchronous Serial IOSimple RS-232 serial core with RTS/CTS hardware handshake. 83 LUTs, 100 MHz.Verilog
Single-Slot PCM ControllerSlave interface to a single-slot PCM stream; captures and transmits 16-bit samples. 38 LUTs.Verilog
AC97 ControllerEasy interface to AC97 audio codecs: variable/fixed sample rates, 16–20-bit samples, full 6-channel audio.Verilog
I2C Master ControllerMaster interface to the Philips I2C bus; implementations across Actel, Altera and Xilinx.Verilog + VHDL
ATA/ATAPI Host ControllerDirect interface to ATA devices — hard drives, CD-ROMs, PC-Cards, Compact Flash. Three versions (OCIDEC-1/2/3).Verilog + VHDL
DragonBall/68K–Wishbone Bridge16-bit Motorola DragonBall/68K interface to a full-featured Wishbone Classic master.Verilog
Enhanced MC68HC11 SPIMotorola MC68HC11-style SPI port with 4-entry read and write FIFOs.Verilog

CPU, DSP & Microcontrollers

2 CORES
CoreDescriptionFPGAASICWISHBONEHDL
Mini-RISC MCU (PIC clone)Small microcontroller core compatible with the popular Microchip PIC16C57; 3 × 8-bit I/O ports. 80 MHz.Verilog
Open 54x DSP CloneTI 54x DSP-compatible IP core project built around a 5-stage pipeline.Verilog

Encryption / Decryption

3 CORES
CoreDescriptionFPGAASICWISHBONEHDL
DESTraditional DES engine in two versions: area-optimized (16 cycles per operation) and a pipelined version that completes an encryption/decryption every cycle.Verilog
Triple DES3DES in area-optimized (48 cycles) and pipelined performance versions.Verilog
AES (Rijndael)Compact AES core designed to fit a low-cost FPGA. Free version includes a 128-bit key-expansion module.Verilog

Math & Arithmetic

7 CORES
CoreDescriptionFPGAASICWISHBONEHDL
Single-Precision FPUIEEE-754 compliant floating-point unit with a 4-stage pipeline: add, subtract, multiply and divide.Verilog
CORDIC CoreIterative CORDIC algorithm for evaluating many mathematical functions. 869 LUTs, 102 MHz.VHDL
Hardware DividersCollection of fully synthesizable, parameterized, pipelined dividers — one operation per clock cycle.Verilog
8×8 DCT, fully pipelinedParallel 8×8 DCT producing a result every clock — 4096 MAC operations per cycle (7 GMAC/s on Virtex-II).Verilog
QNR QuantizationQuantization & rounding unit as described in the JPEG/MPEG specs; fully pipelined. 433 LUTs, 120 MHz.Verilog
Huffman EncoderHuffman-based entropy encoder per the JPEG/MPEG specs, with JPEG's default tables included.Verilog
Huffman DecoderMatching entropy decoder, also including JPEG's default Huffman tables. 568 LUTs, 81 MHz.Verilog

Misc. Building Blocks

6 CORES
CoreDescriptionFPGAASICWISHBONEHDL
Generic FIFOsFully parameterized, multi-purpose FIFO implementations shared across our projects.Verilog
DMA / BridgeDual-Wishbone DMA engine — up to 31 channels and 8 priority levels — that can also act as a passive bridge.Verilog
Wishbone Interconnect MatrixEasy SoC integration: up to 8 masters and 16 slaves with up to 4 priority levels.Verilog
Simple GPIOUp to 8 GPIO pins, each individually programmable as input or output. 11 LUTs.Verilog
Simple Interrupt ControllerUp to 8 interrupt sources with edge/level sensitivity programmable per source. 48 LUTs.Verilog
Wishbone ⇄ OPB WrappersDirect-mapped, transparent access between Wishbone and OPB peripherals. Xilinx EDK plugin (netlist).Netlist

Memory Controllers & Interfaces

2 CORES
CoreDescriptionFPGAASICWISHBONEHDL
Advanced Memory ControllerSupports SDRAM, SSRAM, FLASH, ROM and other sync/async devices; 8 chip selects, fully programmable.Verilog
SSRAM InterfaceAdvanced interface to ZBT SSRAMs.Verilog

Video Controllers & Interfaces

2 CORES
CoreDescriptionFPGAASICWISHBONEHDL
VGA/LCD ControllerCRT and LCD interface with fully programmable video timing; 32/24/16-bit color plus 8-bit grayscale and pseudo-color modes.Verilog
Video Compression SystemA family of cores for building MPEG-1/2/4, JPEG and Motion-JPEG compression systems.Verilog

License

All free IP cores are distributed under a modified BSD license — free to use in commercial and non-commercial products. Redistributions must retain the copyright notice and disclaimer; the software is provided “as is” without warranty.

Copyright © 2000–2026, ASICs World Services, LTD., AUTHORS. All rights reserved.

Downloads & support

All cores link to their OpenCores project pages for full documentation and downloads. We provide full technical support for most IP cores featured on the OpenCores web site — and commercial-grade versions of many of them.