def __init__(self, cd, async_reset): rst1 = Signal() self.specials += [ Instance("SB_DFFS", i_D=0, i_S=async_reset, i_C=cd.clk, o_Q=rst1), Instance("SB_DFFS", i_D=rst1, i_S=async_reset, i_C=cd.clk, o_Q=cd.rst) ]
def __init__(self, cd, async_reset): rst1 = Signal() self.specials += [ Instance("FD1S3BX", i_D=0, i_PD=async_reset, i_CK=cd.clk, o_Q=rst1), Instance("FD1S3BX", i_D=rst1, i_PD=async_reset, i_CK=cd.clk, o_Q=cd.rst) ]
def __init__(self, i, o_p, o_n): self.specials += Instance("SB_IO", p_PIN_TYPE=C(0b011000, 6), p_IO_STANDARD="SB_LVCMOS", io_PACKAGE_PIN=o_p, i_D_OUT_0=i) self.specials += Instance("SB_IO", p_PIN_TYPE=C(0b011000, 6), p_IO_STANDARD="SB_LVCMOS", io_PACKAGE_PIN=o_n, i_D_OUT_0=~i)
def __init__(self, i1, i2, o, clk): self.specials += Instance( "ODDRXD1", synthesis_directive="ODDRAPPS=\"SCLK_ALIGNED\"", i_SCLK=clk, i_DA=i1, i_DB=i2, o_Q=o)
def __init__(self, cd, async_reset): rst1 = Signal() self.specials += [ Instance("FDPE", p_INIT=1, i_D=0, i_PRE=async_reset, i_CE=1, i_C=cd.clk, o_Q=rst1), Instance("FDPE", p_INIT=1, i_D=rst1, i_PRE=async_reset, i_CE=1, i_C=cd.clk, o_Q=cd.rst) ]
def __init__(self, i1, i2, o, clk): self.specials += Instance( "ODDR", p_DDR_CLK_EDGE="SAME_EDGE", i_C=clk, i_CE=1, i_S=0, i_R=0, i_D1=i1, i_D2=i2, o_Q=o, )
def __init__(self, i1, i2, o, clk): self.specials += Instance( "ODDR2", p_DDR_ALIGNMENT="NONE", p_INIT=0, p_SRTYPE="SYNC", i_C0=clk, i_C1=~clk, i_CE=1, i_S=0, i_R=0, i_D0=i1, i_D1=i2, o_Q=o, )
def __init__(self, cd, async_reset): if not hasattr(async_reset, "attr"): i, async_reset = async_reset, Signal() self.comb += async_reset.eq(i) rst_meta = Signal() self.specials += [ Instance("FDPE", p_INIT=1, i_D=0, i_PRE=async_reset, i_CE=1, i_C=cd.clk, o_Q=rst_meta, attr={"async_reg", "ars_ff"}), Instance("FDPE", p_INIT=1, i_D=rst_meta, i_PRE=async_reset, i_CE=1, i_C=cd.clk, o_Q=cd.rst, attr={"async_reg", "ars_ff"}) ] async_reset.attr.add("ars_false_path")
def __init__(self, i, o_p, o_n): self.specials += Instance("OBUFDS", i_I=i, o_O=o_p, o_OB=o_n)
def __init__(self, i_p, i_n, o): self.specials += Instance("IBUFDS", i_I=i_p, i_IB=i_n, o_O=o)
def __init__(self, i_p, i_n, o): self.specials += Instance("ALT_INBUF_DIFF", name="ibuf_diff", i_i=i_p, i_ibar=i_n, o_o=o)
def __init__(self, i, o_p, o_n): self.specials += Instance("ALT_OUTBUF_DIFF", name="obuf_diff", i_i=i, o_o=o_p, o_obar=o_n)