⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xilinx_mem.vhd

📁 free hardware ip core about sparcv8,a soc cpu in vhdl
💻 VHD
📖 第 1 页 / 共 2 页
字号:
------------------------------------------------------------------------------ Simple simulation models for Xilinx block rams-- Author: Jiri Gaisler------------------------------------------------------------------------------ pragma translate_off-- simulation models for block-ramslibrary ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S16 is  port (    do   : out std_logic_vector (15 downto 0);    addr : in  std_logic_vector (7 downto 0);    clk  : in  std_ulogic;    di   : in  std_logic_vector (15 downto 0);    en, rst, we : in std_ulogic);end;architecture behav of RAMB4_S16 isbegin x : ramb4_generic generic map (8,16)          port map (di, en, we, rst, clk, addr, do); end;library ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S8 is  port (do   : out std_logic_vector (7 downto 0);        addr : in  std_logic_vector (8 downto 0);        clk  : in  std_ulogic;        di   : in  std_logic_vector (7 downto 0);        en, rst, we : in std_ulogic);end;architecture behav of RAMB4_S8 isbegin x : ramb4_generic generic map (9,8)          port map (di, en, we, rst, clk, addr, do); end;library ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S4 is  port (do   : out std_logic_vector (3 downto 0);        addr : in  std_logic_vector (9 downto 0);        clk  : in  std_ulogic;        di   : in  std_logic_vector (3 downto 0);        en, rst, we : in std_ulogic);end;architecture behav of RAMB4_S4 isbegin x : ramb4_generic generic map (10,4)          port map (di, en, we, rst, clk, addr, do); end;library ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S2 is  port (do   : out std_logic_vector (1 downto 0);        addr : in  std_logic_vector (10 downto 0);        clk  : in  std_ulogic;        di   : in  std_logic_vector (1 downto 0);        en, rst, we : in std_ulogic);end;architecture behav of RAMB4_S2 isbegin x : ramb4_generic generic map (11,2)          port map (di, en, we, rst, clk, addr, do); end;library ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S1 is  port (do   : out std_logic_vector (0 downto 0);        addr : in  std_logic_vector (11 downto 0);        clk  : in  std_ulogic;        di   : in  std_logic_vector (0 downto 0);        en, rst, we : in std_ulogic);end;architecture behav of RAMB4_S1 isbegin x : ramb4_generic generic map (12,1)          port map (di, en, we, rst, clk, addr, do); end;library ieee;use ieee.std_logic_1164.all;use ieee.numeric_std.all;entity RAMB4_SX_SX is  generic (abits : integer := 10; dbits : integer := 8 );  port (DIA    : in std_logic_vector (dbits-1 downto 0);        DIB    : in std_logic_vector (dbits-1 downto 0);        ENA    : in std_ulogic;        ENB    : in std_ulogic;        WEA    : in std_ulogic;        WEB    : in std_ulogic;        RSTA   : in std_ulogic;        RSTB   : in std_ulogic;        CLKA   : in std_ulogic;        CLKB   : in std_ulogic;        ADDRA  : in std_logic_vector (abits-1 downto 0);        ADDRB  : in std_logic_vector (abits-1 downto 0);        DOA    : out std_logic_vector (dbits-1 downto 0);        DOB    : out std_logic_vector (dbits-1 downto 0)       );end;architecture behav of RAMB4_SX_SX isbegin  rp : process(clka, clkb)  subtype dword is std_logic_vector(dbits-1 downto 0);  type dregtype is array (0 to 2**abits-1) of DWord;  variable rfd : dregtype;  begin    if rising_edge(clka) and not is_x (addra) then       if ena = '1' then        doa <= rfd(to_integer(unsigned(addra)));        if wea = '1' then rfd(to_integer(unsigned(addra))) := dia; end if;      end if;    end if;    if rising_edge(clkb) and not is_x (addrb) then       if enb = '1' then        dob <= rfd(to_integer(unsigned(addrb)));        if web = '1' then rfd(to_integer(unsigned(addrb))) := dib; end if;      end if;    end if;  end process;end;library ieee;use ieee.std_logic_1164.all;use ieee.numeric_std.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S1_S1 is  port (        doa    : out std_logic_vector (0 downto 0);        dob    : out std_logic_vector (0 downto 0);	addra  : in  std_logic_vector (11 downto 0);	addrb  : in  std_logic_vector (11 downto 0);	clka   : in  std_ulogic;	clkb   : in  std_ulogic;	dia    : in  std_logic_vector (0 downto 0);	dib    : in  std_logic_vector (0 downto 0);	ena    : in  std_ulogic;	enb    : in  std_ulogic;	rsta   : in  std_ulogic;	rstb   : in  std_ulogic;	wea    : in  std_ulogic;	web    : in  std_ulogic       );end;architecture behav of RAMB4_S1_S1 isbegin  u0 : RAMB4_Sx_Sx generic map (12, 1)       port map (DIA, DIB, ENA, ENB, WEA, WEB, RSTA, RSTB, CLKA, CLKB, ADDRA,       ADDRB, DOA, DOB);end;library ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S2_S2 is  port (        doa    : out std_logic_vector (1 downto 0);        dob    : out std_logic_vector (1 downto 0);	addra  : in  std_logic_vector (10 downto 0);	addrb  : in  std_logic_vector (10 downto 0);	clka   : in  std_ulogic;	clkb   : in  std_ulogic;	dia    : in  std_logic_vector (1 downto 0);	dib    : in  std_logic_vector (1 downto 0);	ena    : in  std_ulogic;	enb    : in  std_ulogic;	rsta   : in  std_ulogic;	rstb   : in  std_ulogic;	wea    : in  std_ulogic;	web    : in  std_ulogic       );end;architecture behav of RAMB4_S2_S2 isbegin  u0 : RAMB4_Sx_Sx generic map (11, 2)       port map (DIA, DIB, ENA, ENB, WEA, WEB, RSTA, RSTB, CLKA, CLKB, ADDRA,       ADDRB, DOA, DOB);end;library ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S8_S8 is  port (        doa    : out std_logic_vector (7 downto 0);        dob    : out std_logic_vector (7 downto 0);	addra  : in  std_logic_vector (8 downto 0);	addrb  : in  std_logic_vector (8 downto 0);	clka   : in  std_ulogic;	clkb   : in  std_ulogic;	dia    : in  std_logic_vector (7 downto 0);	dib    : in  std_logic_vector (7 downto 0);	ena    : in  std_ulogic;	enb    : in  std_ulogic;	rsta   : in  std_ulogic;	rstb   : in  std_ulogic;	wea    : in  std_ulogic;	web    : in  std_ulogic       );end;architecture behav of RAMB4_S8_S8 isbegin  u0 : RAMB4_Sx_Sx generic map (9, 8)       port map (DIA, DIB, ENA, ENB, WEA, WEB, RSTA, RSTB, CLKA, CLKB, ADDRA,       ADDRB, DOA, DOB);end;library ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S4_S4 is  port (        doa    : out std_logic_vector (3 downto 0);        dob    : out std_logic_vector (3 downto 0);	addra  : in  std_logic_vector (9 downto 0);	addrb  : in  std_logic_vector (9 downto 0);	clka   : in  std_ulogic;	clkb   : in  std_ulogic;	dia    : in  std_logic_vector (3 downto 0);	dib    : in  std_logic_vector (3 downto 0);	ena    : in  std_ulogic;	enb    : in  std_ulogic;	rsta   : in  std_ulogic;	rstb   : in  std_ulogic;	wea    : in  std_ulogic;	web    : in  std_ulogic       );end;architecture behav of RAMB4_S4_S4 isbegin  u0 : RAMB4_Sx_Sx generic map (4, 10)       port map (DIA, DIB, ENA, ENB, WEA, WEB, RSTA, RSTB, CLKA, CLKB, ADDRA,       ADDRB, DOA, DOB);end;library ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB4_S16_S16 is  port (        doa    : out std_logic_vector (15 downto 0);        dob    : out std_logic_vector (15 downto 0);	addra  : in  std_logic_vector (7 downto 0);	addrb  : in  std_logic_vector (7 downto 0);	clka   : in  std_ulogic;	clkb   : in  std_ulogic;	dia    : in  std_logic_vector (15 downto 0);	dib    : in  std_logic_vector (15 downto 0);	ena    : in  std_ulogic;	enb    : in  std_ulogic;	rsta   : in  std_ulogic;	rstb   : in  std_ulogic;	wea    : in  std_ulogic;	web    : in  std_ulogic       );end;architecture behav of RAMB4_S16_S16 isbegin  u0 : RAMB4_Sx_Sx generic map (8, 16)       port map (DIA, DIB, ENA, ENB, WEA, WEB, RSTA, RSTB, CLKA, CLKB, ADDRA,       ADDRB, DOA, DOB);end;library ieee;use ieee.std_logic_1164.all;library unisim;use unisim.simple_simprim.all;entity RAMB16_S1 is port (   DO : out std_logic_vector (0 downto 0);   ADDR : in std_logic_vector (13 downto 0);   CLK : in std_ulogic;   DI : in std_logic_vector (0 downto 0);   EN : in std_ulogic;   SSR : in std_ulogic;   WE : in std_ulogic );end;architecture behav of RAMB16_S1 isbegin x : ramb16_sx generic map (14,1)          port map (do, addr, di, en, clk, we, ssr); end;library ieee;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -