A synthesizable 7-bit I2C slave soft-IP — the counterpart to ip/i2cmaster. It is delivered as a licensable soft-IP block engineered as an ASIL-B Safety Element out of Context — not just RTL, but the complete functional-safety work package needed to carry it into an ISO 26262 program:
A synthesizable 7-bit I2C slave soft-IP — the counterpart to ip/i2c_master. It detects START/STOP, matches its programmed address, ACKs, and exchanges bytes with an external I2C master (host write → RXDATA, host read ← TXDATA) over an open-drain SDA/SCL pair.
NXP I²C-bus Specification UM10204 Rev. 7 (slave/target mode); ISO 26262 ASIL-B SEooC (SPFM 91.50%, LFM 89.62%, PMHF 9.54×10⁻¹⁰/h)
ASIL-B (SEooC) · SPFM 91.50% · LFM 89.62% · PASS
ISO 26262:2018 · FMEDA available · Safety Manual included
| Offset | Register | Description |
|---|---|---|
0x00 | CTRL | [0]=EN 0x04 ADDR [6:0]=7-bit slave address |
0x08 | STATUS | [0]=RX_READY [1]=ADDRESSED [2]=OVERRUN(W1C) [3]=RW_DIR |
0x0C | TXDATA | 0x10 RXDATA (read clears RX_READY) 0x14 IER [0]=RX_IE |
// Minimal instantiation
i2c_slave #(
.ADDR_W(6)
) u_i2c_slave (
.clk (clk),
.rst_n (rst_n),
// APB4
.p_paddr (paddr),
.p_psel (psel),
.p_penable (penable),
.p_pwrite (pwrite),
.p_pwdata (pwdata),
.p_prdata (prdata),
.p_pready (pready),
// Safety
.err_clear (1'b0),
.err_valid (err_valid),
.err_code (err_code)
);Configure via the CTRL register after reset to enable the IP and set operating parameters. Monitor err_valid / err_code for any safety faults reported by the built-in safety monitor.
Typically deployed in in-vehicle networks, industrial gateways, and sensor/actuator links where a bus controller has to carry its own safety argument.
Pricing, the per-IP FMEDA, safety manual, and RTL data room are shared under a mutual NDA.
Figures are pre-silicon engineering-grade estimates for a Safety Element out of Context (SEooC); final ASIL sign-off is the integrator’s, supported under NDA. FMEDA and Safety Manual available under NDA.
circuit-design.space · +1-971-357-1400 · sales@circuit-design.space