📄 mem_ec_gen.vhd
字号:
initval_0e : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_0f : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_10 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_11 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_12 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_13 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_14 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_15 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_16 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_17 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_18 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_19 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1a : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1b : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1c : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1d : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1e : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1f : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000" ); PORT( dia0, dia1, dia2, dia3, dia4, dia5, dia6, dia7, dia8 : in std_logic := 'X'; dia9, dia10, dia11, dia12, dia13, dia14, dia15, dia16, dia17 : in std_logic := 'X'; ada0, ada1, ada2, ada3, ada4, ada5, ada6, ada7, ada8 : in std_logic := 'X'; ada9, ada10, ada11, ada12 : in std_logic := 'X'; cea, clka, wea, csa0, csa1, csa2, rsta : in std_logic := 'X'; dib0, dib1, dib2, dib3, dib4, dib5, dib6, dib7, dib8 : in std_logic := 'X'; dib9, dib10, dib11, dib12, dib13, dib14, dib15, dib16, dib17 : in std_logic := 'X'; adb0, adb1, adb2, adb3, adb4, adb5, adb6, adb7, adb8 : in std_logic := 'X'; adb9, adb10, adb11, adb12 : in std_logic := 'X'; ceb, clkb, web, csb0, csb1, csb2, rstb : in std_logic := 'X'; doa0, doa1, doa2, doa3, doa4, doa5, doa6, doa7, doa8 : out std_logic := 'X'; doa9, doa10, doa11, doa12, doa13, doa14, doa15, doa16, doa17 : out std_logic := 'X'; dob0, dob1, dob2, dob3, dob4, dob5, dob6, dob7, dob8 : out std_logic := 'X'; dob9, dob10, dob11, dob12, dob13, dob14, dob15, dob16, dob17 : out std_logic := 'X' ); END COMPONENT;signal vcc, gnd : std_ulogic;begin vcc <= '1'; gnd <= '0'; u0: DP8KA generic map (CSDECODE_B=>"000", CSDECODE_A=>"000", WRITEMODE_B=>"NORMAL", WRITEMODE_A=>"NORMAL", GSR=>"DISABLED", RESETMODE=>"ASYNC", REGMODE_B=>"NOREG", REGMODE_A=>"NOREG", DATA_WIDTH_B=> 18, DATA_WIDTH_A=> 18) port map (CEA=>ClockEnA, CLKA=>ClockA, WEA=>WrA, CSA0=>gnd, CSA1=>gnd, CSA2=>gnd, RSTA=>gnd, CEB=>ClockEnB, CLKB=>ClockB, WEB=>WrB, CSB0=>gnd, CSB1=>gnd, CSB2=>gnd, RSTB=>gnd, DIA0=>DataInA(0), DIA1=>DataInA(1), DIA2=>DataInA(2), DIA3=>DataInA(3), DIA4=>DataInA(4), DIA5=>DataInA(5), DIA6=>DataInA(6), DIA7=>DataInA(7), DIA8=>DataInA(8), DIA9=>DataInA(9), DIA10=>DataInA(10), DIA11=>DataInA(11), DIA12=>DataInA(12), DIA13=>DataInA(13), DIA14=>DataInA(14), DIA15=>DataInA(15), DIA16=>DataInA(16), DIA17=>DataInA(17), ADA0=>vcc, ADA1=>vcc, ADA2=>gnd, ADA3=>gnd, ADA4=>AddressA(0), ADA5=>AddressA(1), ADA6=>AddressA(2), ADA7=>AddressA(3), ADA8=>AddressA(4), ADA9=>AddressA(5), ADA10=>AddressA(6), ADA11=>AddressA(7), ADA12=>AddressA(8), DIB0=>DataInB(0), DIB1=>DataInB(1), DIB2=>DataInB(2), DIB3=>DataInB(3), DIB4=>DataInB(4), DIB5=>DataInB(5), DIB6=>DataInB(6), DIB7=>DataInB(7), DIB8=>DataInB(8), DIB9=>DataInB(9), DIB10=>DataInB(10), DIB11=>DataInB(11), DIB12=>DataInB(12), DIB13=>DataInB(13), DIB14=>DataInB(14), DIB15=>DataInB(15), DIB16=>DataInB(16), DIB17=>DataInB(17), ADB0=>vcc, ADB1=>vcc, ADB2=>gnd, ADB3=>gnd, ADB4=>AddressB(0), ADB5=>AddressB(1), ADB6=>AddressB(2), ADB7=>AddressB(3), ADB8=>AddressB(4), ADB9=>AddressB(5), ADB10=>AddressB(6), ADB11=>AddressB(7), ADB12=>AddressB(8), DOA0=>QA(0), DOA1=>QA(1), DOA2=>QA(2), DOA3=>QA(3), DOA4=>QA(4), DOA5=>QA(5), DOA6=>QA(6), DOA7=>QA(7), DOA8=>QA(8), DOA9=>QA(9), DOA10=>QA(10), DOA11=>QA(11), DOA12=>QA(12), DOA13=>QA(13), DOA14=>QA(14), DOA15=>QA(15), DOA16=>QA(16), DOA17=>QA(17), DOB0=>QB(0), DOB1=>QB(1), DOB2=>QB(2), DOB3=>QB(3), DOB4=>QB(4), DOB5=>QB(5), DOB6=>QB(6), DOB7=>QB(7), DOB8=>QB(8), DOB9=>QB(9), DOB10=>QB(10), DOB11=>QB(11), DOB12=>QB(12), DOB13=>QB(13), DOB14=>QB(14), DOB15=>QB(15), DOB16=>QB(16), DOB17=>QB(17));end;library ieee;use ieee.std_logic_1164.all;-- pragma translate_offlibrary ec;use ec.sp8ka;-- pragma translate_onentity EC_RAMB8_S1 is port ( clk, en, we : in std_ulogic; address : in std_logic_vector (12 downto 0); data : in std_logic_vector (0 downto 0); q : out std_logic_vector (0 downto 0));end;architecture behav of EC_RAMB8_S1 is COMPONENT sp8ka GENERIC( DATA_WIDTH : in Integer := 18; REGMODE : String := "NOREG"; RESETMODE : String := "ASYNC"; CSDECODE : String := "000"; WRITEMODE : String := "NORMAL"; GSR : String := "ENABLED"; initval_00 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_01 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_02 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_03 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_04 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_05 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_06 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_07 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_08 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_09 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_0a : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_0b : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_0c : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_0d : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_0e : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_0f : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_10 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_11 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_12 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_13 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_14 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_15 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_16 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_17 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_18 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_19 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1a : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1b : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1c : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1d : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1e : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_1f : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000" ); PORT( di0, di1, di2, di3, di4, di5, di6, di7, di8 : in std_logic := 'X'; di9, di10, di11, di12, di13, di14, di15, di16, di17 : in std_logic := 'X'; ad0, ad1, ad2, ad3, ad4, ad5, ad6, ad7, ad8 : in std_logic := 'X'; ad9, ad10, ad11, ad12 : in std_logic := 'X'; ce, clk, we, cs0, cs1, cs2, rst : in std_logic := 'X'; do0, do1, do2, do3, do4, do5, do6, do7, do8 : out std_logic := 'X'; do9, do10, do11, do12, do13, do14, do15, do16, do17 : out std_logic := 'X' ); END COMPONENT;signal vcc, gnd : std_ulogic;begin vcc <= '1'; gnd <= '0'; u0: SP8KA generic map (CSDECODE=>"000", GSR=>"DISABLED", WRITEMODE=>"WRITETHROUGH", RESETMODE=>"ASYNC", REGMODE=>"NOREG", DATA_WIDTH=> 1) port map (CE=>En, CLK=>Clk, WE=>WE, CS0=>gnd, CS1=>gnd, CS2=>gnd, RST=>gnd, DI0=>gnd, DI1=>gnd, DI2=>gnd, DI3=>gnd, DI4=>gnd, DI5=>gnd, DI6=>gnd, DI7=>gnd, DI8=>gnd, DI9=>gnd, DI10=>gnd, DI11=>Data(0), DI12=>gnd, DI13=>gnd, DI14=>gnd, DI15=>gnd, DI16=>gnd, DI17=>gnd, AD0=>Address(0), AD1=>Address(1), AD2=>Address(2), AD3=>Address(3), AD4=>Address(4), AD5=>Address(5), AD6=>Address(6), AD7=>Address(7), AD8=>Address(8), AD9=>Address(9), AD10=>Address(10), AD11=>Address(11), AD12=>Address(12), DO0=>Q(0), DO1=>open, DO2=>open, DO3=>open, DO4=>open, DO5=>open, DO6=>open, DO7=>open, DO8=>open, DO9=>open, DO10=>open, DO11=>open, DO12=>open, DO13=>open, DO14=>open, DO15=>open, DO16=>open, DO17=>open);end;library ieee;use ieee.std_logic_1164.all;-- pragma translate_offlibrary ec;use ec.sp8ka;-- pragma translate_onentity EC_RAMB8_S2 is port ( clk, en, we : in std_ulogic; address : in std_logic_vector (11 downto 0); data : in std_logic_vector (1 downto 0); q : out std_logic_vector (1 downto 0));end;architecture behav of EC_RAMB8_S2 is COMPONENT sp8ka GENERIC( DATA_WIDTH : in Integer := 18; REGMODE : String := "NOREG"; RESETMODE : String := "ASYNC"; CSDECODE : String := "000"; WRITEMODE : String := "NORMAL"; GSR : String := "ENABLED"; initval_00 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_01 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_02 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000"; initval_03 : string := "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -