library verilog;
use verilog.vl_types.all;
entity BFMA1l1OII is
    generic(
        TPD             : integer := 1;
        BFMA1OOIII      : vl_logic_vector(1 downto 0) := (Hi0, Hi0);
        BFMA1IOIII      : vl_logic_vector(1 downto 0) := (Hi0, Hi1);
        BFMA1lOIII      : vl_logic_vector(1 downto 0) := (Hi1, Hi0);
        BFMA1OIIII      : vl_logic_vector(1 downto 0) := (Hi1, Hi1)
    );
    port(
        HCLK            : in     vl_logic;
        HRESETN         : in     vl_logic;
        HSEL            : in     vl_logic;
        HWRITE          : in     vl_logic;
        HADDR           : in     vl_logic_vector(31 downto 0);
        HWDATA          : in     vl_logic_vector(31 downto 0);
        HRDATA          : out    vl_logic_vector(31 downto 0);
        HREADYIN        : in     vl_logic;
        HREADYOUT       : out    vl_logic;
        HTRANS          : in     vl_logic_vector(1 downto 0);
        HSIZE           : in     vl_logic_vector(2 downto 0);
        HBURST          : in     vl_logic_vector(2 downto 0);
        HMASTLOCK       : in     vl_logic;
        HPROT           : in     vl_logic_vector(3 downto 0);
        HRESP           : out    vl_logic;
        PSEL            : out    vl_logic_vector(15 downto 0);
        PADDR           : out    vl_logic_vector(31 downto 0);
        PWRITE          : out    vl_logic;
        PENABLE         : out    vl_logic;
        PWDATA          : out    vl_logic_vector(31 downto 0);
        PRDATA          : in     vl_logic_vector(31 downto 0);
        PREADY          : in     vl_logic;
        PSLVERR         : in     vl_logic
    );
    attribute mti_svvh_generic_type : integer;
    attribute mti_svvh_generic_type of TPD : constant is 1;
    attribute mti_svvh_generic_type of BFMA1OOIII : constant is 2;
    attribute mti_svvh_generic_type of BFMA1IOIII : constant is 2;
    attribute mti_svvh_generic_type of BFMA1lOIII : constant is 2;
    attribute mti_svvh_generic_type of BFMA1OIIII : constant is 2;
end BFMA1l1OII;
