Skip to content
Pepijn de Vos edited this page Nov 17, 2024 · 3 revisions

The Gowin I3C primitive supports an Improved Inter Integrated Circuit (I3C) protocol, which is a two-wire bus that combines features of I2C and SPI. It enables low power consumption and high data rates, reducing the physical ports required by integrated circuits. The port diagram and description indicate support for various pins such as clock enable (CE), reset input (RESET), and clock input (CLK).

This device is not yet supported in Apicula

Ports

Port Size Direction
AAC 1 input
AAO 1 output
AAS 1 input
ACC 1 input
ACKHS 1 input
ACKLS 1 input
ACO 1 output
ACS 1 input
ADDRS 1 input
CE 1 input
CLK 1 input
CMC 1 input
CMO 1 output
CMS 1 input
DI 8 input
DO 8 output
DOBUF 8 output
LGYC 1 input
LGYO 1 output
LGYS 1 input
PARITYERROR 1 output
RECVDHS 1 input
RECVDLS 1 input
RESET 1 input
SCLI 1 input
SCLO 1 output
SCLOEN 1 output
SCLPULLO 1 output
SCLPULLOEN 1 output
SDAI 1 input
SDAO 1 output
SDAOEN 1 output
SDAPULLO 1 output
SDAPULLOEN 1 output
SENDAHS 1 input
SENDALS 1 input
SENDDHS 1 input
SENDDLS 1 input
SIC 1 input
SIO 1 output
STATE 8 output
STOPC 1 input
STOPHDS 1 input
STOPO 1 output
STOPS 1 input
STOPSUS 1 input
STRTC 1 input
STRTHDS 1 input
STRTO 1 output
STRTS 1 input

Parameters

Parameter Default Value
ADDRESS 0 (0b0000000)

Verilog Instantiation

I3C #(
    .ADDRESS(ADDRESS)
) i3c_inst (
    .AAC(AAC),
    .AAO(AAO),
    .AAS(AAS),
    .ACC(ACC),
    .ACKHS(ACKHS),
    .ACKLS(ACKLS),
    .ACO(ACO),
    .ACS(ACS),
    .ADDRS(ADDRS),
    .CE(CE),
    .CLK(CLK),
    .CMC(CMC),
    .CMO(CMO),
    .CMS(CMS),
    .DI(DI),
    .DO(DO),
    .DOBUF(DOBUF),
    .LGYC(LGYC),
    .LGYO(LGYO),
    .LGYS(LGYS),
    .PARITYERROR(PARITYERROR),
    .RECVDHS(RECVDHS),
    .RECVDLS(RECVDLS),
    .RESET(RESET),
    .SCLI(SCLI),
    .SCLO(SCLO),
    .SCLOEN(SCLOEN),
    .SCLPULLO(SCLPULLO),
    .SCLPULLOEN(SCLPULLOEN),
    .SDAI(SDAI),
    .SDAO(SDAO),
    .SDAOEN(SDAOEN),
    .SDAPULLO(SDAPULLO),
    .SDAPULLOEN(SDAPULLOEN),
    .SENDAHS(SENDAHS),
    .SENDALS(SENDALS),
    .SENDDHS(SENDDHS),
    .SENDDLS(SENDDLS),
    .SIC(SIC),
    .SIO(SIO),
    .STATE(STATE),
    .STOPC(STOPC),
    .STOPHDS(STOPHDS),
    .STOPO(STOPO),
    .STOPS(STOPS),
    .STOPSUS(STOPSUS),
    .STRTC(STRTC),
    .STRTHDS(STRTHDS),
    .STRTO(STRTO),
    .STRTS(STRTS)
);
Clone this wiki locally