UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
10,723 Views
Registered: ‎02-01-2009

how the 32 bit output can be synchronized.?

Jump to solution

i am implementing algorithm in vhdl using ise webpack 10.1 aqnd simulating on Modelsim , which requires 32 bit input and 32 bit output
but output varies for 132 ps and then stables down. as all 32 bits at a time do not changes state so the glitches come in output .

so i am attaching image please do suggest me how to overcome this problem. i am using vertex II pro device. also tested same in spartan3e device gives glitched output for 1.8ns

or it is a device limitation? or anything else?

 

output_register: register32 port map(
clk => clk,
rstn => rstn,
Input => ctOutReg,
output => ctOut
);

-- register port map

entity register32 is
port(clk,rstn : in std_logic;
input : in std_logic_vector(31 downto 0);
output : out std_logic_vector(31 downto 0)
);
end register32;

architecture Behavioral of register32 is
begin
process(clk,rstn)
begin
if (rstn='1') then
output <= x"00000000";
elsif (clk'event and clk='1') then
output <= input;
end if;
end process;
end Behavioral;

 

 

as shown i used the register of 32 bit.

 

 

0 Kudos
1 Solution

Accepted Solutions
Xilinx Employee
Xilinx Employee
12,857 Views
Registered: ‎08-13-2007

Re: how the 32 bit output can be synchronized.?

Jump to solution

You still didn't mention if this is a functional or back-annotated timing simulation and if this is the entire design.

 

Different routing delays from the register stages to the output pads could explain this. If you've implemented the design, you should also check the map report (mrp) to see if the input and output register stages are packed into the IOBs. But if this is the entire design, they can't be and the peripheral timing will change from implementation run to run.

 

bt

0 Kudos
7 Replies
Observer johndap
Observer
10,707 Views
Registered: ‎03-31-2009

Re: how the 32 bit output can be synchronized.?

Jump to solution

Check your timing report.  It will probably show the 132pS of timing variation you are experiencing.  Maybe you can put timing constraints on your signals so they all come out at 140pS or something like that.  I haven't done any asynchronous design but it looks interesting!  I may have an application coming soon so please post your fix when you get this figured out. 

 

John D

 

0 Kudos
Xilinx Employee
Xilinx Employee
10,694 Views
Registered: ‎08-13-2007

Re: how the 32 bit output can be synchronized.?

Jump to solution

Your picture didn't come through so it isn't clear from you mean by "glitches come in output"

Are you doing a functional or back-annotated timing simulation?

If this is your entire design, consider that an ideal FPGA design would register all of the inputs and all of the outputs in the IOB registers. Otherwise routing delays to the fabric will effect your peripheral timing.

 

bt

0 Kudos
10,688 Views
Registered: ‎02-01-2009

Re: how the 32 bit output can be synchronized.?

Jump to solution

 Please can any body help me and tell how to uplaod image which is on your local drive

as per options available it asks for url of image location so please do help me

?

?

 

0 Kudos
Xilinx Employee
Xilinx Employee
10,692 Views
Registered: ‎08-13-2007

Re: how the 32 bit output can be synchronized.?

Jump to solution
 
temp.JPG
0 Kudos
Highlighted
10,676 Views
Registered: ‎02-01-2009

Re: how the 32 bit output can be synchronized.?

Jump to solution
0 Kudos
Xilinx Employee
Xilinx Employee
12,858 Views
Registered: ‎08-13-2007

Re: how the 32 bit output can be synchronized.?

Jump to solution

You still didn't mention if this is a functional or back-annotated timing simulation and if this is the entire design.

 

Different routing delays from the register stages to the output pads could explain this. If you've implemented the design, you should also check the map report (mrp) to see if the input and output register stages are packed into the IOBs. But if this is the entire design, they can't be and the peripheral timing will change from implementation run to run.

 

bt

0 Kudos
10,632 Views
Registered: ‎02-01-2009

Re: how the 32 bit output can be synchronized.?

Jump to solution

yes this is complete design output and simualtion is back-annotated timing simulation.

and also i tried to place the ctout<0:31> in IOB using PACE it has given me improvement in the glitch part for device spartan 3e 1600 fg320 -4 as from 1.8 ns to 1.0 ns so improvement of 800 ps.

so plase do suggest how to minimze the same further with some techniques.

 

0 Kudos