- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Attached is a prototype of a DCFIFO copied from altera_mf.vhdentity DCFIFO is
-- GENERIC DECLARATION
generic (
lpm_width : natural;
lpm_widthu : natural;
lpm_numwords : natural;
delay_rdusedw : natural := 1;
delay_wrusedw : natural := 1;
rdsync_delaypipe : natural := 0;
wrsync_delaypipe : natural := 0;
intended_device_family : string := "Stratix";
lpm_showahead : string := "OFF";
underflow_checking : string := "ON";
overflow_checking : string := "ON";
clocks_are_synchronized : string := "FALSE";
use_eab : string := "ON";
add_ram_output_register : string := "OFF";
add_width : natural := 1;
ram_block_type : string := "AUTO";
add_usedw_msb_bit : string := "OFF";
read_aclr_synch : string := "OFF";
write_aclr_synch : string := "OFF";
lpm_hint : string := "USE_EAB=ON";
enable_ecc : string := "FALSE";
lpm_type : string := "dcfifo");
-- PORT DECLARATION
port (
-- INPUT PORT DECLARATION
data : in std_logic_vector(lpm_width-1 downto 0);
rdclk : in std_logic;
wrclk : in std_logic;
aclr : in std_logic := '0';
rdreq : in std_logic;
wrreq : in std_logic;
-- OUTPUT PORT DECLARATION
rdfull : out std_logic;
wrfull : out std_logic;
rdempty : out std_logic;
wrempty : out std_logic;
rdusedw : out std_logic_vector(lpm_widthu-1 downto 0);
wrusedw : out std_logic_vector(lpm_widthu-1 downto 0);
q : out std_logic_vector(lpm_width-1 downto 0);
eccstatus : out std_logic_vector(1 downto 0));
end DCFIFO;
What's the purpose of the "add_width" (marked in red) generic ? I couldn't find any documentation about it online...
Link Copied
7 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
According to dcfifo_inf.xml the parameter is sim_only.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What about "lpm_hint" generic ?
Have you seen any good documentation about it ? For example - the XML mentions only "UNUSED" as a possible entry. But I've seen it accept also other values...- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
google would have found you this about lpm_hint:
https://alteraforum.com/forum/showthread.php?t=33551- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Contrary to what's written in this 6 year old post - I see LPM_HINT assigned different values by the tool (when I change some parameters in the GUI) , so I assume these ARE necessary for proper instantiation of the IP...
What I'm looking for is good documentation of this generic.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The only thing I ever used lpm_hint for in the past was for passing ALTSYNCRAM generics through a SC/DCFIFO. But they added those generics to the top of the FIFOs. I havent needed LPM_HINT since.
What are you seeing passed through LPM_HINT?- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- The only thing I ever used lpm_hint for in the past was for passing ALTSYNCRAM generics through a SC/DCFIFO --- Quote End --- But does this mean that you can now ignore "lpm_hint" altogether? Shouldn't the string entered into "lpm_hint" coexist (and match) with all the new generics you mentioned ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Raise a my_support ticket if you want a better explination.
Or just dont use it. Ive lived without it for years.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page