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

📄 tech_atc35.vhd

📁 宇航级微处理器LEON2 2.2 VHDL源代码,很难找的.
💻 VHD
📖 第 1 页 / 共 2 页
字号:
------------------------------------------------------------------------------  This file is a part of the LEON VHDL model--  Copyright (C) 1999  European Space Agency (ESA)----  This library is free software; you can redistribute it and/or--  modify it under the terms of the GNU Lesser General Public--  License as published by the Free Software Foundation; either--  version 2 of the License, or (at your option) any later version.----  See the file COPYING.LGPL for the full details of the license.------------------------------------------------------------------------------- Entity: 	tech_atc35-- File:	tech_atc35.vhd-- Author:	Jiri Gaisler - ESA/ESTEC-- Description:	Contains Atmel ATC35 specific pads and ram generators------------------------------------------------------------------------------LIBRARY ieee;use IEEE.std_logic_1164.all;package tech_atc35 is-- sync ram generator  component atc35_syncram  generic ( abits : integer := 10; dbits : integer := 8 );  port (    address  : in std_logic_vector(abits -1 downto 0);    clk      : in std_logic;    datain   : in std_logic_vector(dbits -1 downto 0);    dataout  : out std_logic_vector(dbits -1 downto 0);    enable   : in std_logic;    write    : in std_logic);  end component;-- regfile generatorcomponent atc35_regfile_ss_dn  generic (     abits : integer := 8; dbits : integer := 32; words : integer := 128  );  port (    clk      : in std_logic;    datain   : in std_logic_vector (dbits -1 downto 0);    raddr1   : in std_logic_vector (abits -1 downto 0);    raddr2   : in std_logic_vector (abits -1 downto 0);    waddr    : in std_logic_vector (abits -1 downto 0);    enable   : in std_logic;    write    : in std_logic;    dataout1 : out std_logic_vector (dbits -1 downto 0);    dataout2 : out std_logic_vector (dbits -1 downto 0));  end component;component atc35_regfile_ss  generic (     abits : integer := 8; dbits : integer := 32; words : integer := 128  );  port (    clk      : in std_logic;    datain   : in std_logic_vector (dbits -1 downto 0);    raddr1   : in std_logic_vector (abits -1 downto 0);    raddr2   : in std_logic_vector (abits -1 downto 0);    waddr    : in std_logic_vector (abits -1 downto 0);    enable   : in std_logic;    write    : in std_logic;    dataout1 : out std_logic_vector (dbits -1 downto 0);    dataout2 : out std_logic_vector (dbits -1 downto 0));  end component;-- pads  component     pc3d01 port (pad : in std_logic; cin : out std_logic);   end component;   component    pc3d21 port (pad : in std_logic; cin : out std_logic);  end component;   component    pt3o01 port (i : in std_logic; pad : out std_logic);  end component;   component    pt3o02 port (i : in std_logic; pad : out std_logic);  end component;   component    pt3o03 port (i : in std_logic; pad : out std_logic);  end component;   component    pc3t01u port (i, oen : in std_logic; pad : out std_logic);  end component;   component    pc3t02u port (i, oen : in std_logic; pad : out std_logic);  end component;   component    pc3t03u port (i, oen : in std_logic; pad : out std_logic); end component;   component pt3b01    port ( i, oen : in std_logic; cin : out std_logic; pad : inout std_logic);  end component;   component pt3b02    port ( i, oen : in std_logic; cin : out std_logic; pad : inout std_logic);  end component;   component pt3b03    port ( i, oen : in std_logic; cin : out std_logic; pad : inout std_logic);  end component; end;-------------------------------------------------------------------- behavioural ram models ------------------------------------------------------------------------------------------------------------ Only needed for simulation, not synthesis.-- Address, control and data signals latched on rising ME. -- Write enable (WEN) active low.-- pragma translate_offlibrary ieee;use IEEE.std_logic_1164.all;use work.tech_generic.all;entity RAM_256x26 is  port (    add   : in std_logic_vector(7 downto 0);    di    : in std_logic_vector(25 downto 0);    do    : out std_logic_vector(25 downto 0);    me    : in std_logic;    wen   : in std_logic  );end;architecture behavioral of RAM_256x26 issignal we, vcc : std_logic;begin  vcc <= '1'; we <= not wen;  syncram0 : generic_syncram    generic map ( abits => 8, dbits => 26)    port map ( add, me, di, do, vcc, we);end behavioral;library ieee;use IEEE.std_logic_1164.all;use work.tech_generic.all;entity RAM_1024x32 is  port (    add   : in std_logic_vector(9 downto 0);    di    : in std_logic_vector(31 downto 0);    do    : out std_logic_vector(31 downto 0);    me    : in std_logic;    wen   : in std_logic  );end;architecture behavioral of RAM_1024x32 issignal we, vcc : std_logic;begin  vcc <= '1'; we <= not wen;  syncram0 : generic_syncram    generic map ( abits => 10, dbits => 32)    port map ( add, me, di, do, vcc, we);end behavioral;library ieee;use IEEE.std_logic_1164.all;use work.tech_generic.all;entity RAM_2048x32 is  port (    add   : in std_logic_vector(10 downto 0);    di    : in std_logic_vector(31 downto 0);    do    : out std_logic_vector(31 downto 0);    me    : in std_logic;    wen   : in std_logic  );end;architecture behavioral of RAM_2048x32 issignal we, vcc : std_logic;begin  vcc <= '1'; we <= not wen;  syncram0 : generic_syncram    generic map ( abits => 11, dbits => 32)    port map ( add, me, di, do, vcc, we);end behavioral;library ieee;use IEEE.std_logic_1164.all;use work.tech_generic.all;entity RAM_256x28 is  port (    add   : in std_logic_vector(7 downto 0);    di    : in std_logic_vector(27 downto 0);    do    : out std_logic_vector(27 downto 0);    me    : in std_logic;    wen   : in std_logic  );end;architecture behavioral of RAM_256x28 issignal we, vcc : std_logic;begin  vcc <= '1'; we <= not wen;  syncram0 : generic_syncram    generic map ( abits => 8, dbits => 28)    port map ( add, me, di, do, vcc, we);end behavioral;library ieee;use IEEE.std_logic_1164.all;use work.tech_generic.all;entity RAM_1024x34 is  port (    add   : in std_logic_vector(9 downto 0);    di    : in std_logic_vector(33 downto 0);    do    : out std_logic_vector(33 downto 0);    me    : in std_logic;    wen   : in std_logic  );end;architecture behavioral of RAM_1024x34 issignal we, vcc : std_logic;begin  vcc <= '1'; we <= not wen;  syncram0 : generic_syncram    generic map ( abits => 10, dbits => 34)    port map ( add, me, di, do, vcc, we);end behavioral;library ieee;use IEEE.std_logic_1164.all;use work.tech_generic.all;entity RAM_2048x34 is  port (    add   : in std_logic_vector(10 downto 0);    di    : in std_logic_vector(33 downto 0);    do    : out std_logic_vector(33 downto 0);    me    : in std_logic;    wen   : in std_logic  );end;architecture behavioral of RAM_2048x34 issignal we, vcc : std_logic;begin  vcc <= '1'; we <= not wen;  syncram0 : generic_syncram    generic map ( abits => 11, dbits => 34)    port map ( add, me, di, do, vcc, we);end behavioral;LIBRARY ieee;use IEEE.std_logic_1164.all;use work.tech_generic.all;entity DPRAMRWRW_16X32 is port (    ADDA : in  std_logic_vector(3 downto 0);    ADDB : in  std_logic_vector(3 downto 0);    DIA  : in  std_logic_vector(31 downto 0);    DIB  : in  std_logic_vector(31 downto 0);    DOA  : out std_logic_vector(31 downto 0);    DOB  : out std_logic_vector(31 downto 0);    MEA  : in  std_logic;    MEB  : in  std_logic;    WENA : in  std_logic;    WENB : in  std_logic     );end;architecture behav of DPRAMRWRW_16X32 issignal wen : std_logic;begin    wen <= not wenb;    dp0 : generic_dpram_ss_dn generic map (abits => 4, dbits => 32, words => 16)	              port map ( dib, adda, addb, wen, mea, meb, doa);end;LIBRARY ieee;use IEEE.std_logic_1164.all;use work.tech_generic.all;entity DPRAMRWRW_136X32 is port (    ADDA : in  std_logic_vector(7 downto 0);    ADDB : in  std_logic_vector(7 downto 0);    DIA  : in  std_logic_vector(31 downto 0);    DIB  : in  std_logic_vector(31 downto 0);    DOA  : out std_logic_vector(31 downto 0);    DOB  : out std_logic_vector(31 downto 0);    MEA  : in  std_logic;    MEB  : in  std_logic;    WENA : in  std_logic;    WENB : in  std_logic     );end;architecture behav of DPRAMRWRW_136X32 issignal wen : std_logic;begin    wen <= not wenb;    dp0 : generic_dpram_ss_dn generic map (abits => 8, dbits => 32, words => 136)	              port map ( dib, adda, addb, wen, mea, meb, doa);end;LIBRARY ieee;use IEEE.std_logic_1164.all;use work.tech_generic.all;entity DPRAMRWRW_168X32 is port (    ADDA : in  std_logic_vector(7 downto 0);    ADDB : in  std_logic_vector(7 downto 0);    DIA  : in  std_logic_vector(31 downto 0);    DIB  : in  std_logic_vector(31 downto 0);    DOA  : out std_logic_vector(31 downto 0);    DOB  : out std_logic_vector(31 downto 0);    MEA  : in  std_logic;    MEB  : in  std_logic;    WENA : in  std_logic;    WENB : in  std_logic     );

⌨️ 快捷键说明

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