Det lykkedes ikke at anmærke SDF grund netlist og bibliotek kodning.

K

kelvin_sg

Guest
Jeg fandt SDF fra P & R ingeniør ikke passer sammen med beskrivelsen
i standard celle bibliotek, som forårsagede nogle annotation fiaskoer.

Det ser for mig, at både SDF og model kodning er korrekt, kun at de brugte
forskellige stilarter ...

Hvordan skal jeg nu til at håndtere en sådan situation?

Tak.

I SDF annotation af ncverilog: 05.10-s016 ...

----------------------------------------

ncelab: * W, SDFNEP: mislykket forsøg på at anmærke til ikke-eksisterende sti (IOPATH (posedge A1) X) af f.eks sim.chip.add_132.U4 af modul OR2X1000 </ home / worst.sdf, linje 48010>.
ncelab: * W, SDFNEP: mislykket forsøg på at anmærke til ikke-eksisterende sti (IOPATH (negedge A1) X) af f.eks sim.chip.add_132.U4 af modul OR2X1000 </ home / worst.sdf, linje 48011>.
ncelab: * W, SDFNEP: mislykket forsøg på at anmærke til ikke-eksisterende sti (IOPATH (posedge A2) X) af f.eks sim.chip.add_132.U4 af modul OR2X1000 </ home / worst.sdf, linje 48012>.
ncelab: * W, SDFNEP: mislykket forsøg på at anmærke til ikke-eksisterende sti (IOPATH (negedge A2) X) af f.eks sim.chip.add_132.U4 af modul OR2X1000 </ home / worst.sdf, linje 48013>.I standard celle bibliotek, segment med hensyn til timingen:

----------------------------------------
/ / PATH DELAY
if (A1 == 1'b0) (A1 => X) = (50:50:50, 50:50:50)
if (A1 == 1'b1) (A1 => X) = (50:50:50, 50:50:50)
if (A2 == 1'b0) (A2 => X) = (50:50:50, 50:50:50)
if (A2 == 1'b1) (A2 => X) = (50:50:50, 50:50:50)
«Ifdef no_ifnone
«Ellers
ifnone (A1 => X) = (50:50:50, 50:50:50)
ifnone (A2 => X) = (50:50:50, 50:50:50)
«EndifI SDF fil, segment ét:

----------------------------------------
(CELL
(CELLTYPE "OR2X1000")
(INSTANS add_132/U4)
(DELAY (absolut
(IOPATH (posedge A1) X (50:50:50) (50:50:50))
(IOPATH (negedge A1) X (50:50:50) (50:50:50))
(IOPATH (posedge A2) X (50:50:50) (50:50:50))
(IOPATH (negedge A2) X (50:50:50) (50:50:50))
))
)

 
Jeg tror, skyldes formentlig det faktum, at IOPATH udtalelser i
sdf fil stemmer ikke overens modulet sti forsinkelser i verilog biblioteket kode som biblioteket kode ikke har posedge og negedge information.

Prøv følgende kode:

specificere
/ / Modul sti forsinkelser
(Posedge A1 => X) = (50:50:50, 50:50:50)
(Negedge A2 => X) = (50:50:50, 50:50:50)
(Posedge A1 => X) = (50:50:50, 50:50:50)
(Negedge A2 => X) = (50:50:50, 50:50:50)
endspecify

Håber det kan fungere.

 
Hej,

Det er en fælles problem i SDF annotation.Det skyldes forskellige timing cirkelbuer defineret mellem syn.& P & R biblioteker.Jeg ved, at nogle biblioteket leverandører gør give nogle scripts (perl eller TCL) til at oversætte stillingen P & R SDF til det format, som verilog bibliotek kan anmærke timing korrekt.Forhør dig hos dit bibliotek dokumentation ^)

 
Jeg er en god skæbnesvangre fyr!P & R ingeniør formået at konvertere SDFs i
nogle mere venlige formater ...

Det kaldes Regex (Regular Expression) i Perl og Unix shell.Det er en meget
enkel instruktion i Perl.Når forstået, bliver det let ...

Tak til alle for jeres svar.

 
i PT, "write_sdf-noedge", ville det kombinere negedge og falledge.

 
Tror du det er okie først paafoere
netlist & problematisk SDF fil i PT, så brug write_sdf-noedge at få et bedre netlist?

Tak.

 

Welcome to EDABoard.com

Sponsor

Back
Top