Comment faire pour résoudre cette violation de configuration $ à la porte au niveau de simulation

V

valxiao

Guest
Salut, les gars,
je rencontre un problème avec la simulation au niveau porte, courir dans ModelSim, il apparaît le texte suivant:
-------------------------------------------------- ----------
R: ../../libs/modelsim_asic/fsc0g_d_sc.v (18445): $ setup (negedge D & & & ~ SEL: 2841 ps, CK posedge: 3 ns, 267 ps);
Durée: 3 ns itération: 5 instance: /../../../../../ reg_coeff_data_reg_210_
-------------------------------------------------- ----------

CLK banc d'essai: Forever # 3 <CLK CLK CLK = ~; (6ns)
CLK dans la synthèse: set clk_period 4.8ns * 0,9
ensemble clk_skew 0.4ns
...
et report_max_path est: 0.006ns
pourquoi encore violation avec $ d'installation pour reg_coeff_data_reg_210_?Merci!

sdf dans:
(CELL
(CELLTYPE "QDFZCGD")
(Instance ../../reg_coeff_data_reg_210_)
(DELAY
(Absolue
(Q CK IOPATH (0.381:0.381:0.381) (0.346:0.346:0.346))
)
)
(TIMINGCHECK
(LARGEUR (posedge CK) (0.258:0.258:0.258))
(LARGEUR (negedge CK) (0.620:0.620:0.620))
(SETUP (posedge D) (posedge CK) (0.276:0.282:0.282))
(SETUP (negedge D) (posedge CK) (0.261:0.267:0.267))
(HOLD (posedge D) (posedge CK) (-0,099: -0,103: -0,103))
(HOLD (negedge D) (posedge CK) (-0,037: -0,039: -0,039))
(SETUP (posedge TD) (posedge CK) (0.421:0.421:0.421))
(SETUP (negedge TD) (posedge CK) (0.817:0.817:0.817))
(HOLD (posedge TD) (posedge CK) (-0,192: -0,192: -0,192))
(HOLD (negedge TD) (posedge CK) (-0,155: -0,155: -0,155))
(SETUP (posedge SEL) (posedge CK) (0.783:0.783:0.783))
(SETUP (negedge SEL) (posedge CK) (0.353:0.353:0.353))
(HOLD (posedge SEL) (posedge CK) (-0,128: -0,128: -0,128))
(HOLD (negedge SEL) (posedge CK) (-0,034: -0,034: -0,034))
)
)en stand-cellulaire
module QDFZCGD (Q, D, TD, CK, SEL);
reg pavillon; / / Indicateur d'alerte
sortie Q;
D 'entrée, CK, TD, SEL;
supply1 VCC;

d_CK fil, d_D, d_TD, d_SEL;

/ Bloc Fonction /
«De protéger
buf G3 (Q, QT);
dffrsb_udp G2 (qt, D1, d_CK, VCC, VCC, drapeau);
mux2_udp G4 (D1, d_D, d_TD, d_SEL);

/ / Spécifiez Block
préciser

/ / Chemin Delay Module
(CK posedge *> (Q: 1'bx)) = (10.68:16.82:30.00, 11.19:17.49:31.13);

/ / Le programme d'installation et de Hold Time
setup_D_CK specparam = 9,30;
hold_D_CK specparam = 0,00;
setup_TD_CK specparam = 10.30;
hold_TD_CK specparam = 0,00;
setup_SEL_CK specparam = 8,60;
hold_SEL_CK specparam = 0,00;
$ Setuphold (CK posedge, posedge D & & & ~ SEL, 7.91:13.35:25.21, -2,94: -4,93: -8,41, drapeau,,, d_CK, d_D);
$ Setuphold (CK posedge, negedge D & & & ~ SEL, 6.55:11.99:24.10, -1,46: -2,09: -2,87, drapeau,,, d_CK, d_D);
$ Setuphold (CK posedge, posedge TD & & & SEL, 10.87:18.28:36.31, -4,92: -8,14: -14,82, drapeau,,, d_CK, d_TD);
$ Setuphold (CK posedge, negedge TD & & & SEL, 22.09:38.87:79.21, -7,51: -9,99: -14,21, drapeau,,, d_CK, d_TD);
$ Setuphold (CK posedge, posedge SEL, 22.58:38.87:78.10, -4,92: -7,64: -13,35, drapeau,,, d_CK, d_SEL);
$ Setuphold (CK posedge, negedge SEL, 11.61:19.14:35.81, -1,59: -2,59: -3,36, drapeau,,, d_CK, d_SEL);

/ / Largeur d'impulsion minimale
mpw_pos_CK specparam = 15,64;
mpw_neg_CK specparam = 17,40;
largeur $ (CK posedge, 6.87:12.53:25.83, 0, flag);
largeur $ (CK negedge, 17.95:30.51:62.04, 0, flag);
endspecify
»Endprotect
endmodule
»Endcelldefine

lorsque la synthèse, j'ai utilisé "CLK set_fix_hold"

 
Vous devez exécuter l'outil STA pour vérifier la violation.

 
Salut,
première fois, utilisez la référence pour vérifier si le calendrier est respecté.
s'ils ne sont pas et que vous voulez continuer, pls modifier manuellement le fichier sdf

 
La violation se passe à la première horloge front montant.On dirait que vous avez un problème dans la configuration du banc d'essai.Comment conduisez-vous des broches d'entrée à la conception?
Normalement, la meilleure façon de déboguer ce genre de problème est de vider forme d'onde et vérifier le point moment où la violation se produit.
La netlist GUI debug outil de GOF NanDigits est très utile dans de débogage au niveau netlist porte.Il peut isoler la cellule violation et d'oligo-les entrées de la cellule jusqu'à ce que la racine de violation.
Prenez un butin à schématique partielle à isoler la logique
http://www.nandigits.com/partial_schematic.htm
En outre, il possède une interface à gtkwave et nWave Novas.
http://www.nandigits.com/waveform_restore.htm

Hope this helps.

Nandy
www.nandigits.com
Netlist Debug / ECO en mode GUI

 
Salut,

L'installation signalé par l'outil dit que lorsque les données modifiées à 2.841ns, et la montée d'horloge à 3 ns.Comme le FF a 0.267ns obligation d'installation, il est un de 0.267 à 3) le programme d'installation violatoin 2.841 (.

Base sur vous la description, il semble que l'horloge devrait augmenter à 6ns, et non pas un 3ns.

Cordialement,
Eng Han

 

Welcome to EDABoard.com

Sponsor

Back
Top