![]() |
|
|
|||||||
![]() |
VHDL - Glitchs at the output of a latch |
|
|
Thread Tools | Search this Thread |
|
|
#1 |
|
hello,
I synthesis a simple latch of 18 bits on a altera stratix fpga with quartus II 4.0. I use two sort of implementation : 1 - Latch_18 : process (clock_smp,reset) begin if (clock_smp'event and clock_smp='1') then if reset = '1' then out_filter <= "000000000000000000"; else out_filter <= resul; end if; end if; end process Latch_18; 2 - With the Megafunction Latch LPM of Altera The simulation after synthesis show that the data on the 18 bit bus arrive 7 ns after the rising edge of clock_smp AND they arrived within à 1 ns time, so that generate glitchs of 1 ns large.. What's happen ? I put with latche_18 on the output of a RIF filter for cancelling glitches but it doesn't work correctly... Thanks for subjection Patrick |
|
|
|
|
#2 |
|
Posts: n/a
|
Patrick a écrit:
> The simulation after synthesis show that the data on the 18 bit bus > arrive 7 ns after the rising edge of clock_smp AND they arrived within > à 1 ns time, so that generate glitchs of 1 ns large.. Maybe a stupid question but what is your simulation resolution? Make sure you don't simulate with a 1ns reslution. -- ____ _ __ ___ | _ \_)/ _|/ _ \ Adresse de retour invalide: retirez le - | | | | | (_| |_| | Invalid return address: remove the - |_| |_|_|\__|\___/ Nicolas Matringe |
|
|
|
#3 |
|
Posts: n/a
|
"Patrick" <> escribió en el mensaje news: m... > hello, > > I synthesis a simple latch of 18 bits on a altera stratix fpga with > quartus II 4.0. > > I use two sort of implementation : > > 1 - Latch_18 : process (clock_smp,reset) > begin > if (clock_smp'event and clock_smp='1') then > if reset = '1' then out_filter <= "000000000000000000"; > else out_filter <= resul; > end if; > end if; > end process Latch_18; > > 2 - With the Megafunction Latch LPM of Altera > > The simulation after synthesis show that the data on the 18 bit bus > arrive 7 ns after the rising edge of clock_smp AND they arrived within > à 1 ns time, so that generate glitchs of 1 ns large.. > im not sure if i understood your problem, but is it that the different bits that form the 18bit bus are not arriving at the same time, but within a std deviation of 1ns around 7ns, is that right? if it is, then it's due to routing delay and as long as your design is synchronous, you shouldnt have any trouble as the data should be already stabilised when the next clock edge arrives and latches the data for the next stage. also i believe that modelsim has an option to turn off glitch generation, but i've never used. > What's happen ? I put with latche_18 on the output of a RIF filter for > cancelling glitches but it doesn't work correctly... > > Thanks for subjection paris |
|
|
|
#4 |
|
Posts: n/a
|
Nicolas Matringe <> wrote in message news:<>...
> Patrick a écrit: > > > The simulation after synthesis show that the data on the 18 bit bus > > arrive 7 ns after the rising edge of clock_smp AND they arrived within > > à 1 ns time, so that generate glitchs of 1 ns large.. > > Maybe a stupid question but what is your simulation resolution? Make > sure you don't simulate with a 1ns reslution. Of course the simulator have a time step of 1 ps !!! Sorry... Patrick |
|
|
|
#5 |
|
Posts: n/a
|
Hello,
In fact, the problem is due to the I/O Pads, because the signal before the latch and after the latch comes out the fpga that result in a propagation time of 7 ns with delta time 400 ps and in an internal latche (without pads) the propagation delay becomes 3 ns with a delta time of 40 ps.... that looks better... Patrick |
|
|
|
#6 |
|
Posts: n/a
|
Hello,
"paris" <> wrote: > "Patrick" <> > > The simulation after synthesis show that the data on the 18 bit bus > > arrive 7 ns after the rising edge of clock_smp AND they arrived within > > à 1 ns time, so that generate glitchs of 1 ns large.. > > > > im not sure if i understood your problem, but is it that the different bits > that form the 18bit bus are not arriving at the same time, but within a std > deviation of 1ns around 7ns, is that right? if it is, then it's due to > routing delay and as long as your design is synchronous, you shouldnt have > any trouble as the data should be already stabilised when the next clock > edge arrives and latches the data for the next stage. > > also i believe that modelsim has an option to turn off glitch generation, > but i've never used. It has, but that is no glitch problem, this is a problem of routing delays. Glitch means a signal going high and back low (or vice versa) within a very short period due to differnent signal routing delays for the same signal. (eg. the output of a nand with both inputs changing its value with a very small delay). If you have a problem with 1ns deviation, you should place by hand to optimize the timing. The reachable value depends strongly on the technic of your device (and your patience, this job might be very nasty). bye Thomas Thomas Stanka |
|
![]() |
| Thread Tools | Search this Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| CISCO 1801 DNS problem | marsav | Hardware | 2 | 07-05-2009 11:41 PM |
| Different types of video output - I'm confused | robotiser@googlemail.com | DVD Video | 2 | 07-29-2007 04:25 PM |
| Post-Route Simulation does not give output for the first clock cycle Options | velocityreviews | Software | 0 | 04-17-2007 05:47 PM |
| Sony Precision Cinema Progressive Output vs Component 480p Output | Otto Pylot | DVD Video | 1 | 04-18-2004 10:49 PM |
| Panasonic S25 DVD player w/o S-video output - will its replacement have S-video? | Mark | DVD Video | 1 | 02-11-2004 04:19 PM |