Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20687 Discussions

need help in changing the deay in SYSRESET block in Igloo-2 device implementation

Altera_Forum
Honored Contributor II
1,834 Views

Hi, 

 

in one of our project we are using igloo2 device in which we are using "SYSRESET" block for reset deglitching.by default the out put delay is set to 10ps in the library,by chaning the verilog and recompile the file,able to see the changed delay in simulation.issue is we want to get that delay parameter in implementation.we are using libero to implement the design,automatically libero is mapped to "C:\Microsemi\Libero_v11.4\Synopsys\synplify_I201309MSP1-1\lib\generic\smartfusion2.vhd". 

 

but that mapped vhdl file is in encrypted format.please suggest us how to get that delay changed in implementation
0 Kudos
5 Replies
Altera_Forum
Honored Contributor II
971 Views

Delays are not synthesizable in Verilog/VHDL. Typically when you need some sort of delay you either pipeline the signal or use counters to create functional (synthesizable) delays in hardware. I google searched "Replacing delay in synthesizable RTL" and quite a few hits looked like they would be good examples for you to take a look at. 

 

Also you could probably ditch that SYSRESET block if all it does is deglitch a reset signal, there has to be thousands of examples on the web using filters/counters that you could replace it with and not need to deal with encrypted RTL.
0 Kudos
Altera_Forum
Honored Contributor II
971 Views

Hi, 

 

thanks for ur reply. 

in Igloo2 device it is recommended to use SYSRESET block to deglitch the reset signal. 

 

SYSRESET block is generating reset output if and only if input reset is active for minimum 10ps.In my board v want to consider the reset as valid only if it is active for 500ps.so finding out ways to change the deglitch parameter
0 Kudos
Altera_Forum
Honored Contributor II
971 Views

I haven't used VHDL in a long time but if that delay is stored as a generic (I think that's what VHDL calls parameters) then when you instantiate their block you should be able to set the generic to whatever you want. If that value is actually a delay and not synthesizeable it won't matter what you set it to, and given the IP is encrypted the only way to find out what it implements is through trial and error I guess. If you are stuck for more than 30 minutes I recommend just looking around for a reset deglitch block from somewhere, there has to be thousands of them only a google search away that are plain text and not encrypted. 

 

A deglitch block is literally a counter so worst comes to worst it only takes a minute to type one up in HDL.
0 Kudos
Altera_Forum
Honored Contributor II
971 Views

In simulation whr i need to give compiled libraries,v are compiling verilog file which is in installed directory inwhich code is as below for SYSRESET block.Its not generic to pass whr it is being instantiated.If i change delay here and compile able to see effect in simulation. 

 

`timescale 1 ps/1 ps 

module SYSRESET(input DEVRST_N, 

output POWER_ON_RESET_N); 

 

reg reset_n_int; 

 

initial begin 

reset_n_int = 1'b1; 

# 1; 

reset_n_int = 1'b0; 

# 1000; 

reset_n_int = 1'b1; 

end 

 

and U0 ( POWER_ON_RESET_N, DEVRST_N, reset_n_int ); 

 

specify 

specparam tpdLH_A_to_Y = (10:10:10); 

specparam tpdHL_A_to_Y = (10:10:10); 

 

(DEVRST_N => POWER_ON_RESET_N ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y ); 

endspecify 

endmodule 

 

 

doubt is how to tell this changed delay to implementation 

 

Thanks in advance
0 Kudos
Altera_Forum
Honored Contributor II
971 Views

I don't know VHDL very well anymore but I doubt this can be synthesized: 

 

initial begin 

reset_n_int = 1'b1; 

# 1; 

reset_n_int = 1'b0; 

# 1000; 

reset_n_int = 1'b1; 

end 

 

Just because HDL simulates does not necessarily mean that it is synthesizable. If you are targeting the FPGA then you need HDL that can be synthesized if you want to see the functionality you intend.
0 Kudos
Reply