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

📄 dpram_altera.vhd

📁 为提高8051系列单片机I2C总线的工作效率
💻 VHD
字号:
--------------------------------------------------------------------------                                                              -------- WISHBONE SPDIF IP Core                                       --------                                                              -------- This file is part of the SPDIF project                       -------- http://www.opencores.org/cores/spdif_interface/              --------                                                              -------- Description                                                  -------- Dual port ram. This version is specific for Altera FPGA's,   -------- and uses Altera library to instantiate block ram.            --------                                                              --------                                                              -------- To Do:                                                       -------- -                                                            --------                                                              -------- Author(s):                                                   -------- - Geir Drange, gedra@opencores.org                           --------                                                              ------------------------------------------------------------------------------                                                              -------- Copyright (C) 2004 Authors and OPENCORES.ORG                 --------                                                              -------- This source file may be used and distributed without         -------- restriction provided that this copyright statement is not    -------- removed from the file and that any derivative work contains  -------- the original copyright notice and the associated disclaimer. --------                                                              -------- This source file 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.1 of the License, or (at your option) any   -------- later version.                                               --------                                                              -------- This source is distributed in the hope that it will be       -------- useful, but WITHOUT ANY WARRANTY; without even the implied   -------- warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR      -------- PURPOSE. See the GNU Lesser General Public License for more  -------- details.                                                     --------                                                              -------- You should have received a copy of the GNU Lesser General    -------- Public License along with this source; if not, download it   -------- from http://www.opencores.org/lgpl.shtml                     --------                                                              ------------------------------------------------------------------------------ CVS Revision History---- $Log: dpram_altera.vhd,v $-- Revision 1.4  2007/10/11 19:14:43  gedra-- Code beautification---- Revision 1.3  2004/06/26 14:14:46  gedra-- Converted to numeric_std and fixed a few bugs.---- Revision 1.2  2004/06/19 09:55:19  gedra-- Delint'ed and changed name of architecture.---- Revision 1.1  2004/06/18 18:40:04  gedra-- Alternate dual port memory implementation for Altera FPGA's.-- --library ieee;use ieee.std_logic_1164.all;library lpm;use lpm.lpm_components.all;entity dpram is   generic (DATA_WIDTH : positive;            RAM_WIDTH  : positive);   port (      clk     : in  std_logic;      rst     : in  std_logic;          -- reset is optional, not used here      din     : in  std_logic_vector(DATA_WIDTH - 1 downto 0);      wr_en   : in  std_logic;      rd_en   : in  std_logic;      wr_addr : in  std_logic_vector(RAM_WIDTH - 1 downto 0);      rd_addr : in  std_logic_vector(RAM_WIDTH - 1 downto 0);      dout    : out std_logic_vector(DATA_WIDTH - 1 downto 0));end dpram;architecture altera of dpram is      component lpm_ram_dp      generic (LPM_WIDTH              : positive;                LPM_WIDTHAD           : positive;                LPM_NUMWORDS          : natural := 0;                LPM_INDATA            : string  := "REGISTERED";                LPM_OUTDATA           : string  := "REGISTERED";                LPM_RDADDRESS_CONTROL : string  := "REGISTERED";                LPM_WRADDRESS_CONTROL : string  := "REGISTERED";                LPM_FILE              : string  := "UNUSED";                LPM_TYPE              : string  := "LPM_RAM_DP";                LPM_HINT              : string  := "UNUSED");      port (data                    : in  std_logic_vector(LPM_WIDTH-1 downto 0);             rdaddress, wraddress   : in  std_logic_vector(LPM_WIDTHAD-1 downto 0);             rdclock, wrclock       : in  std_logic := '0';             rden, rdclken, wrclken : in  std_logic := '1';             wren                   : in  std_logic;             q                      : out std_logic_vector(LPM_WIDTH-1 downto 0));   end component;   signal one : std_logic;begin   one <= '1';   ram : lpm_ram_dp      generic map(LPM_WIDTH    => DATA_WIDTH,                  LPM_WIDTHAD  => RAM_WIDTH,                  LPM_NUMWORDS => 2**RAM_WIDTH)      port map (data      => din,                rdaddress => rd_addr,                wraddress => wr_addr,                rdclock   => clk,                wrclock   => clk,                rden      => rd_en,                rdclken   => one,                wrclken   => one,                wren      => wr_en,                q         => dout);    end altera;

⌨️ 快捷键说明

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