Last active
December 19, 2015 01:29
-
-
Save tonussi/5876674 to your computer and use it in GitHub Desktop.
memram01
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
LIBRARY ieee; | |
USE ieee.std_logic_1164.all; | |
ENTITY contnb IS | |
PORT ( R : IN INTEGER RANGE 0 TO 7; | |
clk, limpa , carga : IN STD_LOGIC; | |
Q : BUFFER INTEGER RANGE 0 TO 7 ); | |
END contnb ; | |
ARCHITECTURE comportamento OF contnb IS | |
BEGIN | |
PROCESS (clk, limpa) | |
BEGIN | |
IF limpa = '0' THEN | |
Q <= 0; | |
ELSIF ( clk'EVENT AND clk = '1' ) THEN | |
IF carga = '1' THEN | |
Q <= R; | |
ELSE | |
Q <= Q + 1; | |
END IF; | |
END IF; | |
END PROCESS; | |
END comportamento; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
LIBRARY ieee; | |
USE ieee.std_logic_1164.all; | |
USE ieee.std_logic_arith.all; | |
ENTITY memram01 IS | |
PORT( | |
reset, clock, mem_en, wr_en, carga_reg : IN STD_LOGIC ; | |
data_out : OUT STD_LOGIC_VECTOR (7 DOWNTO 0); | |
dbg_cont : OUT STD_LOGIC_VECTOR (2 DOWNTO 0)); | |
END memram01; | |
ARCHITECTURE structural OF memram01 IS | |
COMPONENT contnb IS | |
PORT ( R : IN INTEGER RANGE 0 TO 7; | |
clk, limpa , carga : IN STD_LOGIC; | |
Q : BUFFER INTEGER RANGE 0 TO 7 ); | |
END COMPONENT; | |
COMPONENT ram1port | |
PORT | |
( | |
aclr : IN STD_LOGIC := '0'; | |
address : IN STD_LOGIC_VECTOR (2 DOWNTO 0); | |
clken : IN STD_LOGIC := '1'; | |
clock : IN STD_LOGIC := '1'; | |
data : IN STD_LOGIC_VECTOR (7 DOWNTO 0); | |
wren : IN STD_LOGIC ; | |
q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) | |
); | |
END COMPONENT; | |
SIGNAL address : INTEGER RANGE 0 TO 7; | |
SIGNAL cont_out : STD_LOGIC_VECTOR (2 DOWNTO 0); | |
--SIGNAL data_input: STD_LOGIC_VECTOR (7 DOWNTO 0); | |
BEGIN | |
cont_inst : contnb PORT MAP ( | |
R => 0, | |
clk => clock, | |
limpa => reset, | |
carga => carga_reg, | |
Q => address | |
); | |
PROCESS (address) | |
BEGIN | |
cont_out <= conv_std_logic_vector(address, 3); | |
-- DBG | |
dbg_cont <= conv_std_logic_vector(address, 3); | |
END PROCESS; | |
ram1port_inst : ram1port PORT MAP ( | |
address => cont_out, | |
clken => mem_en, | |
clock => clock, | |
data => (OTHERS => '0'), | |
wren => wr_en, | |
q => data_out | |
); | |
END structural; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
set_global_assignment -name IP_TOOL_NAME "RAM: 1-PORT" | |
set_global_assignment -name IP_TOOL_VERSION "9.1" | |
set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) "ram1port.vhd"] | |
set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "ram1port_inst.vhd"] | |
set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "ram1port.cmp"] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- megafunction wizard: %RAM: 1-PORT% | |
-- GENERATION: STANDARD | |
-- VERSION: WM1.0 | |
-- MODULE: altsyncram | |
-- ============================================================ | |
-- File Name: ram1port.vhd | |
-- Megafunction Name(s): | |
-- altsyncram | |
-- | |
-- Simulation Library Files(s): | |
-- altera_mf | |
-- ============================================================ | |
-- ************************************************************ | |
-- THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! | |
-- | |
-- 9.1 Build 304 01/25/2010 SP 1 SJ Web Edition | |
-- ************************************************************ | |
--Copyright (C) 1991-2010 Altera Corporation | |
--Your use of Altera Corporation's design tools, logic functions | |
--and other software and tools, and its AMPP partner logic | |
--functions, and any output files from any of the foregoing | |
--(including device programming or simulation files), and any | |
--associated documentation or information are expressly subject | |
--to the terms and conditions of the Altera Program License | |
--Subscription Agreement, Altera MegaCore Function License | |
--Agreement, or other applicable license agreement, including, | |
--without limitation, that your use is for the sole purpose of | |
--programming logic devices manufactured by Altera and sold by | |
--Altera or its authorized distributors. Please refer to the | |
--applicable agreement for further details. | |
LIBRARY ieee; | |
USE ieee.std_logic_1164.all; | |
LIBRARY altera_mf; | |
USE altera_mf.all; | |
ENTITY ram1port IS | |
PORT | |
( | |
aclr : IN STD_LOGIC := '0'; | |
address : IN STD_LOGIC_VECTOR (2 DOWNTO 0); | |
clken : IN STD_LOGIC := '1'; | |
clock : IN STD_LOGIC := '1'; | |
data : IN STD_LOGIC_VECTOR (7 DOWNTO 0); | |
wren : IN STD_LOGIC ; | |
q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) | |
); | |
END ram1port; | |
ARCHITECTURE SYN OF ram1port IS | |
SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0); | |
COMPONENT altsyncram | |
GENERIC ( | |
clock_enable_input_a : STRING; | |
clock_enable_output_a : STRING; | |
init_file : STRING; | |
intended_device_family : STRING; | |
lpm_hint : STRING; | |
lpm_type : STRING; | |
numwords_a : NATURAL; | |
operation_mode : STRING; | |
outdata_aclr_a : STRING; | |
outdata_reg_a : STRING; | |
power_up_uninitialized : STRING; | |
widthad_a : NATURAL; | |
width_a : NATURAL; | |
width_byteena_a : NATURAL | |
); | |
PORT ( | |
clocken0 : IN STD_LOGIC ; | |
wren_a : IN STD_LOGIC ; | |
aclr0 : IN STD_LOGIC ; | |
clock0 : IN STD_LOGIC ; | |
address_a : IN STD_LOGIC_VECTOR (2 DOWNTO 0); | |
q_a : OUT STD_LOGIC_VECTOR (7 DOWNTO 0); | |
data_a : IN STD_LOGIC_VECTOR (7 DOWNTO 0) | |
); | |
END COMPONENT; | |
BEGIN | |
q <= sub_wire0(7 DOWNTO 0); | |
altsyncram_component : altsyncram | |
GENERIC MAP ( | |
clock_enable_input_a => "NORMAL", | |
clock_enable_output_a => "NORMAL", | |
init_file => "ram1port.mif", | |
intended_device_family => "Cyclone II", | |
lpm_hint => "ENABLE_RUNTIME_MOD=NO", | |
lpm_type => "altsyncram", | |
numwords_a => 8, | |
operation_mode => "SINGLE_PORT", | |
outdata_aclr_a => "CLEAR0", | |
outdata_reg_a => "CLOCK0", | |
power_up_uninitialized => "FALSE", | |
widthad_a => 3, | |
width_a => 8, | |
width_byteena_a => 1 | |
) | |
PORT MAP ( | |
clocken0 => clken, | |
wren_a => wren, | |
aclr0 => aclr, | |
clock0 => clock, | |
address_a => address, | |
data_a => data, | |
q_a => sub_wire0 | |
); | |
END SYN; | |
-- ============================================================ | |
-- CNX file retrieval info | |
-- ============================================================ | |
-- Retrieval info: PRIVATE: ADDRESSSTALL_A NUMERIC "0" | |
-- Retrieval info: PRIVATE: AclrAddr NUMERIC "0" | |
-- Retrieval info: PRIVATE: AclrByte NUMERIC "0" | |
-- Retrieval info: PRIVATE: AclrData NUMERIC "0" | |
-- Retrieval info: PRIVATE: AclrOutput NUMERIC "1" | |
-- Retrieval info: PRIVATE: BYTE_ENABLE NUMERIC "0" | |
-- Retrieval info: PRIVATE: BYTE_SIZE NUMERIC "8" | |
-- Retrieval info: PRIVATE: BlankMemory NUMERIC "0" | |
-- Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_A NUMERIC "1" | |
-- Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_A NUMERIC "1" | |
-- Retrieval info: PRIVATE: Clken NUMERIC "1" | |
-- Retrieval info: PRIVATE: DataBusSeparated NUMERIC "1" | |
-- Retrieval info: PRIVATE: IMPLEMENT_IN_LES NUMERIC "0" | |
-- Retrieval info: PRIVATE: INIT_FILE_LAYOUT STRING "PORT_A" | |
-- Retrieval info: PRIVATE: INIT_TO_SIM_X NUMERIC "0" | |
-- Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone II" | |
-- Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0" | |
-- Retrieval info: PRIVATE: JTAG_ID STRING "NONE" | |
-- Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0" | |
-- Retrieval info: PRIVATE: MIFfilename STRING "ram1port.mif" | |
-- Retrieval info: PRIVATE: NUMWORDS_A NUMERIC "8" | |
-- Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "0" | |
-- Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_PORT_A NUMERIC "3" | |
-- Retrieval info: PRIVATE: RegAddr NUMERIC "1" | |
-- Retrieval info: PRIVATE: RegData NUMERIC "1" | |
-- Retrieval info: PRIVATE: RegOutput NUMERIC "1" | |
-- Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" | |
-- Retrieval info: PRIVATE: SingleClock NUMERIC "1" | |
-- Retrieval info: PRIVATE: UseDQRAM NUMERIC "1" | |
-- Retrieval info: PRIVATE: WRCONTROL_ACLR_A NUMERIC "0" | |
-- Retrieval info: PRIVATE: WidthAddr NUMERIC "3" | |
-- Retrieval info: PRIVATE: WidthData NUMERIC "8" | |
-- Retrieval info: PRIVATE: rden NUMERIC "0" | |
-- Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "NORMAL" | |
-- Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_A STRING "NORMAL" | |
-- Retrieval info: CONSTANT: INIT_FILE STRING "ram1port.mif" | |
-- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone II" | |
-- Retrieval info: CONSTANT: LPM_HINT STRING "ENABLE_RUNTIME_MOD=NO" | |
-- Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram" | |
-- Retrieval info: CONSTANT: NUMWORDS_A NUMERIC "8" | |
-- Retrieval info: CONSTANT: OPERATION_MODE STRING "SINGLE_PORT" | |
-- Retrieval info: CONSTANT: OUTDATA_ACLR_A STRING "CLEAR0" | |
-- Retrieval info: CONSTANT: OUTDATA_REG_A STRING "CLOCK0" | |
-- Retrieval info: CONSTANT: POWER_UP_UNINITIALIZED STRING "FALSE" | |
-- Retrieval info: CONSTANT: WIDTHAD_A NUMERIC "3" | |
-- Retrieval info: CONSTANT: WIDTH_A NUMERIC "8" | |
-- Retrieval info: CONSTANT: WIDTH_BYTEENA_A NUMERIC "1" | |
-- Retrieval info: USED_PORT: aclr 0 0 0 0 INPUT GND aclr | |
-- Retrieval info: USED_PORT: address 0 0 3 0 INPUT NODEFVAL address[2..0] | |
-- Retrieval info: USED_PORT: clken 0 0 0 0 INPUT VCC clken | |
-- Retrieval info: USED_PORT: clock 0 0 0 0 INPUT VCC clock | |
-- Retrieval info: USED_PORT: data 0 0 8 0 INPUT NODEFVAL data[7..0] | |
-- Retrieval info: USED_PORT: q 0 0 8 0 OUTPUT NODEFVAL q[7..0] | |
-- Retrieval info: USED_PORT: wren 0 0 0 0 INPUT NODEFVAL wren | |
-- Retrieval info: CONNECT: @address_a 0 0 3 0 address 0 0 3 0 | |
-- Retrieval info: CONNECT: q 0 0 8 0 @q_a 0 0 8 0 | |
-- Retrieval info: CONNECT: @clock0 0 0 0 0 clock 0 0 0 0 | |
-- Retrieval info: CONNECT: @clocken0 0 0 0 0 clken 0 0 0 0 | |
-- Retrieval info: CONNECT: @aclr0 0 0 0 0 aclr 0 0 0 0 | |
-- Retrieval info: CONNECT: @data_a 0 0 8 0 data 0 0 8 0 | |
-- Retrieval info: CONNECT: @wren_a 0 0 0 0 wren 0 0 0 0 | |
-- Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all | |
-- Retrieval info: GEN_FILE: TYPE_NORMAL ram1port.vhd TRUE | |
-- Retrieval info: GEN_FILE: TYPE_NORMAL ram1port.inc FALSE | |
-- Retrieval info: GEN_FILE: TYPE_NORMAL ram1port.cmp TRUE | |
-- Retrieval info: GEN_FILE: TYPE_NORMAL ram1port.bsf FALSE | |
-- Retrieval info: GEN_FILE: TYPE_NORMAL ram1port_inst.vhd TRUE | |
-- Retrieval info: GEN_FILE: TYPE_NORMAL ram1port_waveforms.html TRUE | |
-- Retrieval info: GEN_FILE: TYPE_NORMAL ram1port_wave*.jpg FALSE | |
-- Retrieval info: LIB_FILE: altera_mf |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
force /clock 0 0 ns, 1 10 ns -r 20 ns | |
force /reset 0 0 ns, 1 20 ns | |
force /mem_en 0 0 ns, 1 20 ns | |
force /wr_en 0 0 ns, 1 160 ns | |
force /carga_reg 0 0ns |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment