Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

UART warning messages

Status
Not open for further replies.

pfaisalbe

Junior Member level 2
Joined
Jul 22, 2009
Messages
20
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
United Kingdom
Activity points
1,446
Hi

I am using SPARTAN 3 . I have done UART design. Post route simulation gives warning message as


Simulator:29 - at 205.128 ns: Warning: Timing violation in
/TESTFIXTURE4/uut/Modcount_reg_1/ $setuphold<setup>( SRST:204.756 ns,
CLK:205.128 ns,990.000 ps,0 ns)
WARNING:Simulator:29 - at 205.128 ns: Warning: Timing violation in
/TESTFIXTURE4/uut/Modcount_reg_0/ $setuphold<setup>( SRST:204.756 ns,
CLK:205.128 ns,990.000 ps,0 ns)
WARNING:Simulator:29 - at 205.128 ns: Warning: Timing violation in
/TESTFIXTURE4/uut/Modcount_reg_2/ $setuphold<setup>( SRST:204.756 ns,
CLK:205.128 ns,990.000 ps,0 ns)
WARNING:Simulator:29 - at 205.128 ns: Warning: Timing violation in
/TESTFIXTURE4/uut/Modcount_reg_3/ $setuphold<setup>( SRST:204.756 ns,
CLK:205.128 ns,990.000 ps,0 ns)
WARNING:Simulator:29 - at 209.128 ns: Warning: Timing violation in
/TESTFIXTURE4/uut/Modcount_reg_1/ $setuphold<setup>( SRST:208.593 ns,
CLK:209.128 ns,990.000 ps,0 ns)
WARNING:Simulator:29 - at 209.128 ns: Warning: Timing violation in
/TESTFIXTURE4/uut/Modcount_reg_0/ $setuphold<setup>( SRST:208.593 ns,
CLK:209.128 ns,990.000 ps,0 ns)





I have used period constraint. What should be done to get rid of this message or Can I ignore this warning message ?

Regards

Faisal
 

mrflibble

Advanced Member level 5
Joined
Apr 19, 2010
Messages
2,724
Helped
679
Reputation
1,360
Reaction score
651
Trophy points
1,393
Activity points
19,551
Well, the warning mean precisely what it says. You are violating the setup time of those flipflops.

If you don't know why that is, chances are this is going to be a problem in real hardware. This was post PAR you say? What does the timing report say after place & route? No violations?

During simulation the register that have the setup violation will be set to X. Usually this is what you want, since you want to know that the value is unknown due to possible metastability.

If you really really want to then you can set the offending registers to async.

Code:
(* ASYNC_REG="TRUE" *) reg my_flipflop_used_in_asynchronous_logic;

This will prevent the simulator from assigning X's to timing violated registers. So that way you can simulate asynchronous logic. But usually that is NOT what you want.

So if this is a low speed uart, then probably this is due to something being async. Like atulaxc already asked.... I would also guess that SRST is async, given the above messages. If SRST is async it might be a good idea to use a reset synchronizer, so that you have asynchronous reset assertion and synchronous de-assertion.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top