a_dpfifo_83p.tdf
来自「基于Nios II的汽车智能防盗导航系统核心作为嵌入式系统发展趋势」· TDF 代码 · 共 87 行
TDF
87 行
--a_dpfifo ALLOW_RWCYCLE_WHEN_FULL="OFF" DEVICE_FAMILY="Cyclone" LPM_NUMWORDS=64 LPM_SHOWAHEAD="OFF" lpm_width=8 lpm_widthu=6 OVERFLOW_CHECKING="OFF" UNDERFLOW_CHECKING="OFF" clock data empty full q rreq sclr usedw wreq lpm_hint="RAM_BLOCK_TYPE=AUTO" RAM_BLOCK_TYPE="AUTO"
--VERSION_BEGIN 4.2 cbx_altdpram 2004:08:15:21:15:28:SJ cbx_altsyncram 2004:11:16:15:31:02:SJ cbx_cycloneii 2004:08:25:19:39:42:SJ cbx_fifo_common 2003:08:19:18:07:00:SJ cbx_lpm_add_sub 2004:10:25:10:56:48:SJ cbx_lpm_compare 2004:10:18:11:29:46:SJ cbx_lpm_counter 2004:10:25:23:03:40:SJ cbx_lpm_decode 2004:08:15:21:16:20:SJ cbx_lpm_mux 2004:08:15:21:16:24:SJ cbx_mgl 2004:10:26:10:32:18:SJ cbx_scfifo 2004:08:15:21:16:30:SJ cbx_stratix 2004:09:23:18:28:34:SJ cbx_stratixii 2004:08:10:15:01:36:SJ cbx_util_mgl 2004:09:29:16:04:00:SJ VERSION_END
-- Copyright (C) 1988-2002 Altera Corporation
-- Any megafunction design, and related netlist (encrypted or decrypted),
-- support information, device programming or simulation file, and any other
-- associated documentation or information provided by Altera or a partner
-- under Altera's Megafunction Partnership Program may be used only
-- to program PLD devices (but not masked PLD devices) from Altera. Any
-- other use of such megafunction design, netlist, support information,
-- device programming or simulation file, or any other related documentation
-- or information is prohibited for any other purpose, including, but not
-- limited to modification, reverse engineering, de-compiling, or use with
-- any other silicon devices, unless such use is explicitly licensed under
-- a separate agreement with Altera or a megafunction partner. Title to the
-- intellectual property, including patents, copyrights, trademarks, trade
-- secrets, or maskworks, embodied in any such megafunction design, netlist,
-- support information, device programming or simulation file, or any other
-- related documentation or information provided by Altera or a megafunction
-- partner, remains with Altera, the megafunction partner, or their respective
-- licensors. No other licenses, including any licenses needed under any third
-- party's intellectual property, are provided herein.
FUNCTION a_fefifo_7cf (aclr, clock, rreq, sclr, wreq)
RETURNS ( empty, full, usedw_out[5..0]);
FUNCTION dpram_1cm (data[7..0], inclock, outclock, outclocken, rdaddress[5..0], wraddress[5..0], wren)
RETURNS ( q[7..0]);
FUNCTION cntr_rd8 (aclr, clock, cnt_en, sclr)
RETURNS ( cout, q[5..0]);
--synthesis_resources = lut 14 M4K 1
SUBDESIGN a_dpfifo_83p
(
clock : input;
data[7..0] : input;
empty : output;
full : output;
q[7..0] : output;
rreq : input;
sclr : input;
usedw[5..0] : output;
wreq : input;
)
VARIABLE
fifo_state : a_fefifo_7cf;
FIFOram : dpram_1cm;
rd_ptr_count : cntr_rd8;
wr_ptr : cntr_rd8;
aclr : NODE;
rd_ptr[5..0] : WIRE;
valid_rreq : WIRE;
valid_wreq : WIRE;
BEGIN
fifo_state.aclr = aclr;
fifo_state.clock = clock;
fifo_state.rreq = rreq;
fifo_state.sclr = sclr;
fifo_state.wreq = wreq;
FIFOram.data[] = data[];
FIFOram.inclock = clock;
FIFOram.outclock = clock;
FIFOram.outclocken = (valid_rreq # sclr);
FIFOram.rdaddress[] = ((! sclr) & rd_ptr[]);
FIFOram.wraddress[] = wr_ptr.q[];
FIFOram.wren = valid_wreq;
rd_ptr_count.aclr = aclr;
rd_ptr_count.clock = clock;
rd_ptr_count.cnt_en = valid_rreq;
rd_ptr_count.sclr = sclr;
wr_ptr.aclr = aclr;
wr_ptr.clock = clock;
wr_ptr.cnt_en = valid_wreq;
wr_ptr.sclr = sclr;
aclr = GND;
empty = fifo_state.empty;
full = fifo_state.full;
q[] = FIFOram.q[];
rd_ptr[] = rd_ptr_count.q[];
usedw[] = fifo_state.usedw_out[];
valid_rreq = rreq;
valid_wreq = wreq;
END;
--VALID FILE
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?