Full protocol & timing compliant I2C IP Cores, in Controller/Target, Controller-only, and Target-only releases, with AMBA APB, AHB, AXI, and Altera Avalon interfaces.
Overview
Core Family & Datasheets
Three functional releases, each available on four bus interfaces.
| Release | AMBA APB | AMBA AHB | AMBA AXI | Altera Avalon |
|---|---|---|---|---|
| Controller / Target Full four-mode core |
DB-I2C-MS-APB | DB-I2C-MS-AHB | DB-I2C-MS-AXI | DB-I2C-MS-AVLN |
| Controller-only Smaller VLSI footprint |
DB-I2C-M-APB | DB-I2C-M-AHB | DB-I2C-M-AXI | DB-I2C-M-AVLN |
| Target-only Smaller VLSI footprint |
DB-I2C-S-APB | DB-I2C-S-AHB | DB-I2C-S-AXI | DB-I2C-S-AVLN |
| Target-to-Bus Bridge No host CPU required |
DB-I2C-S-APB-BRIDGE | DB-I2C-S-AHB-BRIDGE | DB-I2C-S-AXI-BRIDGE | — |
| Hs-Mode Option Licensable on any interface |
DB-I2C-MS-Hs-Mode · DB-I2C-M-Hs-Mode · DB-I2C-S-Hs-Mode | |||
| SCL-Clocked Target No free-running clock |
DB-I2C-S-SCL-CLK · DB-I2C-S-SCL-CLK-APB | |||
Release Detail
The full core: Controller-Transmitter, Controller-Receiver, Target-Transmitter, and Target-Receiver modes with a parameterized FIFO, FSM Control Unit, and Interrupt Controller that fully off-load the I2C transfer from the processor. Targets applications with higher performance algorithm requirements or minimal software development plans.
- I2C compliant: clock synchronization, arbitration, SCL held low by the target, repeated start, 7/10-bit addressing, general call
- Enhanced SCL / SDA spike filtering and enhanced repeated start
- 13 sources of internal interrupts with masking control
- Optional DMA transfer between the I2C bus and SDRAM / SRAM / FLASH; direct interface to user registers; remote configuration of a Digital Blocks I2C target by an I2C controller
- Optional SMBus support: SMBCLK clock low timeout, SMBDAT minimum data hold time
- Advanced features support queued I2C transactions for higher I2C throughput
- Programmable RX_Sample_Delay to shift-adjust the data read window for enhanced timing closure
The Controller function taken from the Controller/Target releases — parameterized FIFO, I2C Controller Control Unit, and Interrupt Controller — fully off-loading I2C transfers from the processor, at a smaller VLSI footprint.
The Target function taken from the Controller/Target releases — parameterized FIFO, I2C Target Control Unit, and Interrupt Controller — fully off-loading I2C transfers from the processor, at a smaller VLSI footprint.
An I2C Target with an integrated APB, AHB, or AXI manager interface that bridges straight to the AMBA interconnect. For low-footprint ASIC / ASSP designs with no internal configuration registers and no local host CPU — connect it to the interconnect and it transmits and receives I2C payload data to user registers, SRAM, or FIFO.
- Autonomous operation: no local CPU host, no control/status register configuration
- Runs off the bus manager external clock input for a fully synchronous design
- 7- or 10-bit target ID addressing, SCL low wait states, digital SDA/SCL filtering
Target-only cores that use the external SCL as the clock source for the I2C logic, for ICs with low power or low noise requirements and no free-running clock.
- DB-I2C-S-SCL-CLK — configures registers and memory directly, for low noise or low power ICs
- DB-I2C-S-SCL-CLK-APB — interfaces to the CPU in ICs with low power requirements
- 7- or 10-bit addressing, general call, SCL low wait states
Contact Digital Blocks with any additional unique low power I2C Target Controller requirements.
Hs-Mode can be licensed into the Controller/Target, Controller-only, and Target-only cores on any AMBA interface, with full Hs-mode protocol, timing, and electrical compliance to the Hs-mode I2C specification — the highest system-level I2C performance capability on the market.
- 3.4 Mbit/s Hs-Mode transfer on the I2C bus
- Controller FIFO holds blocks of data, with an off-load finite state machine managing the transfers
- Optional DMA controller moves data between the I2C Controller and system memory or registers, in addition to processor access to the FIFO
Compliance, Verification & Deliverables
- Philips / NXP I2C-Bus Specification Version 2.1 and UM10204 Rev 7, 1 Oct 2021
- AMBA AXI / AHB / APB protocol specifications; Avalon protocol specifications
- Fully-synchronous synthesizable Verilog with rising-edge clocking, no gated clocks, no internal tri-states
- Test suite with bus functional models that program the registers, generate I2C data, monitor bus protocol and timing, and check expected results
- Verified in FPGA under ARM processor control against merchant I2C controller and target devices, including NXP parts, and against ASICs with I2C bus interfaces
- Synthesizable RTL or technology-specific FPGA netlist
- Synopsys Design Constraints, simulation test bench with expected results, datasheet, and user manual
- Bare-metal C driver and Linux driver available
