📄 sdr_sdram.vhd
字号:
-- locked : out std_logic-- );-- end component;-- attribute syn_black_box of pll1: component is true; -- signal declarations signal ISA : std_logic_vector(11 downto 0); --???11SDRAM address output signal IBA : std_logic_vector(1 downto 0); --SDRAM bank address--luo signal ICS_N : std_logic_vector(1 downto 0); --SDRAM Chip Selects signal ICS_N : std_logic; --SDRAM Chip Selects signal ICKE : std_logic; --SDRAM clock enable signal IRAS_N : std_logic; --SDRAM Row address Strobe signal ICAS_N : std_logic; --SDRAM Column address Strobe signal IWE_N : std_logic; signal DQIN : std_logic_vector(DSIZE-1 downto 0); signal IDATAOUT : std_logic_vector(DSIZE-1 downto 0); signal DQOUT : std_logic_vector(DSIZE-1 downto 0); --SDRAM write enable signal saddr : std_logic_vector(ASIZE-1 downto 0); signal sc_cl : std_logic_vector(1 downto 0); signal sc_rc : std_logic_vector(1 downto 0); signal sc_rrd : std_logic_vector(3 downto 0); signal sc_pm : std_logic; signal sc_bl : std_logic_vector(3 downto 0); signal load_mode : std_logic; signal nop : std_logic; signal reada : std_logic; signal writea : std_logic; signal refresh : std_logic; signal precharge : std_logic; signal oe : std_logic; -- signal ref_req : std_logic; -- signal ref_ack : std_logic; signal cm_ack : std_logic; signal CLK133 : std_logic; signal CLK133B : std_logic; signal clklocked : std_logic; begin -- instantiate the control interface module control1 : control_interface generic map ( ASIZE => ASIZE ) port map ( CLK => CLK133, RESET_N => RESET_N, CMD => CMD, ADDR => ADDR, --REF_ACK => ref_ack, CM_ACK => cm_ack, NOP => nop, READA => reada, WRITEA => writea, REFRESH => refresh, PRECHARGE => precharge, LOAD_MODE => load_mode, SADDR => saddr, SC_CL => sc_cl, SC_RC => sc_rc, SC_RRD => sc_rrd, SC_PM => sc_pm, SC_BL => sc_bl, --REF_REQ => ref_req, CMD_ACK => CMDACK ); -- instantiate the command module command1 : command generic map( ASIZE => ASIZE, DSIZE => DSIZE, ROWSIZE => ROWSIZE, COLSIZE => COLSIZE, BANKSIZE => BANKSIZE, ROWSTART => ROWSTART, COLSTART => COLSTART, BANKSTART => BANKSTART ) port map ( CLK => CLK133, RESET_N => RESET_N, SADDR => saddr, NOP => nop, READA => reada, WRITEA => writea, REFRESH => refresh, PRECHARGE => precharge, LOAD_MODE => load_mode, SC_CL => sc_cl, SC_RC => sc_rc, SC_RRD => sc_rrd, SC_PM => sc_pm, SC_BL => sc_bl, --REF_REQ => ref_req, --REF_ACK => ref_ack, CM_ACK => cm_ack, OE => oe, SA => ISA, BA => IBA, CS_N => ICS_N, CKE => ICKE, RAS_N => IRAS_N, CAS_N => ICAS_N, WE_N => IWE_N ); -- instantiate the data path module data_path1 : sdr_data_path generic map ( DSIZE => DSIZE ) port map ( CLK => CLK133, RESET_N => RESET_N, OE => oe, DATAIN => DATAIN, DM => DM, DATAOUT => IDATAOUT, DQM => DQM, DQIN => DQIN, DQOUT => DQOUT ); -- pll : pll1-- port map (-- inclock => CLK,-- locked => clklocked,-- clock1 => CLK133-- ); CLK133<=CLK; -- Add a level flops to the sdram i/o that can be place -- by the router into the I/O cells process(CLK133) begin if rising_edge(CLK133) then SA <= ISA; BA <= IBA; CS_N <= ICS_N; CKE <= ICKE; RAS_N <= IRAS_N; CAS_N <= ICAS_N; WE_N <= IWE_N; DQIN <= DQ; DATAOUT <= IDATAOUT; end if; end process; -- tri-state the data bus using the OE signal from the main controller. DQ <= DQOUT when OE = '1' else (others => 'Z');end RTL;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -