siirtyminen rekisteri - pitoaika rikkomisesta?

J

jerry2007

Guest
Tiedän, että kellon pitäisi ajaa reversely välttämiseksi pitoaika ongelmia siirtää rekistereistä.Mutta missä ja miten se pitäisi tehdä standardin suunnitteluun virtaus (Käytämme Cadence työkaluja täällä)?Paras arvaus on SDC-tiedoston, mutta minulla ei ole aavistustakaan siitä, miten kertoa työkalu siitä ...Kiitos!

 
Do u kohdata jokin pitoaika rikkomukset siirtyminen rekistereihin, kun P & R?

 
Quote:

Tiedän, että kellon pitäisi ajaa reversely välttämiseksi pitoaika ongelmia siirtää rekisterit
 
Olen melko varma, että se pitää ajan rikottu, koska kun manaully yhteyttä CLK yksi muutos reg (eli clk1 ja reg1, joka näyttää Racing ongelmia) ja sen naapurimaiden siirtää reg CLK (clk2 ja reg2, clk1 ja clk2 ovat lehtisolmut samassa CLK puu) voin todeta Racing klo reg2 myös, jota kai se johtuu siitä, että ylimääräistä kuormaa hidastuu clk2, jolloin Racing klo reg2.

Ilmaisulla "kääntäminen CLK" Tarkoitin aina varmistaa, että CLK siirtämään regs myöhemmissä vaiheissa aikaisintaan siirtyminen regs aikaisemmissa vaiheissa.Näin vältetään Racing.Kuitenkin kallistamalla puskureita on varmasti hyvä vaihtoehto.Mikä on kummallista, että backend työkalu Kohtaa ei lisätä mitään puskurin välillä muutos regs, vaikka annan erittäin tiukat CLK epävarmuutta rajoitteen SDC.Onko niin nimenomaan ohjata väline tehdä, vai onko se turvallista vain lisätä puskureita manuaalisesti netlist heti etuosa (joka ei kuulosta kovin houkuttelevalta ...) Kiitos vielä kerran!

 
Olen yllättynyt siitä, miksi työkalu ei ole lisätty puskureita.Asia on, olen Front End insinööri, ja olen verkkotunnuksen päättyy kun olen tiivistetään suunnittelun, ja tuottaa hyvän näköinen netlsit.Joten olen pahoillani tällä kertaa olen tapana voi auttaa sinua PNR-työkaluja.Ainoa asia, jonka tiedän, jos alue, jolla haluat tehdä sijoitus on vähemmän, työkalu ei välttämättä pysty ottamaan käyttöön pitää puskurit, olipa WOT teidän SDC rajoitukset ovat.
Kr,
Avi

 
Voit asettaa kaksi kelloa, joten synteesi työkalut mielestäni olemassa kaksi kelloa ei synkronoida kelloa.Sinun tulisi käyttää luoda kellon asettaa nämä kaksi kelloa, ja synteesi työkalut mielestäni näiden kahden kellon sync, synteesi välineitä lisätä solun auto.

 
to avimit: Olen tarkoituksella antanut melko suuri floorplan tehdä tiheys on vähemmän kuin 50%, mutta silti, ei ole puskureita lisätty.Olen itse lisätty joitakin puskureita jälkeisessä layout netlist ja simulointi toimi hienosti (mutta tämä ei auta asettelu / reititys) Näin ollen nyt en oikeastaan ajatellut manuaalisesti lisätään puskureita edeltävässä asettelun netlist ja sitten set_dont_touch estää ne on optimoitu pois.Mutta tämä on todella hankala, koska minun on päätettävä, kuinka monta puskurit ja millaisia puskureita lisätä itse.

to stormwolf: Voisitko selittää hieman?Minulla on kaksi kelloa suunnitteluun ja tein käyttää create_generate_clock, mutta miten tämä liittyy siirtyminen regs (jotka kaikki käyttävät samaa CLK)?

 
hmmm ...jos rajoitukset ovat oikeassa sitten noin puskurit olisi lisättävä automaattisesti.Rekisterit liitetty back-to-back on taipumus pitää rikkomuksia.

Oma arvaus on tarkistaa contraints ensimmäinen asia mikä estää puskurit alkaen on lisätty.
Yritä asettaa manuaalisesti puskurit teidän netlist.

 
Luulen tarkoita muutos reg on SCAN-DFF.Kun teet synteesi,
1.Jos kahden vuorokauden verkkotunnuksen, se lisää salpaa vahvistaa tiedot viiveaika.
2.Ja siirtää scan-ketjun noin pitoaika rikkomisesta, synteesin välineitä ei voi käsitellä sitä, vahvistaa pitämällä ajoitus ei ole synteesi työtä, ja niitä on vahvistettava kotisivuilleen.Lisätään 17 minuuttia:Kun teemme hanke, skannaus ketju on oltava ajoitus rikkomisesta.Scan Cell toimivat samalla kellotaajuudella,
aiomme lisätä viive solun klo kotisivuilleen.Milloin Scan lisätä, synteesi työkalut liitä siirtymistä rekisteristä, se ei optimaize ajoitus siirtää ketjun.

 
Itse asiassa tämä muutos reg ei ei Scan.muitakin siirtyminen regs minun suunnittelussa, mutta ne eivät ole pitoaika ongelma (siitähän kummastuttaa minua).Nontheless, en vain tiedä, miten selkeästi ohjata työkalua (tässä tapauksessa kohtaavat) lisätä viive solua / puskurit sitä.niin miten pian solut designisi lisätään?se lisätään automaattisesti työkalun?Kiitos!

 
jos tämä on kriittinen kysymys, voit muuttaa mieltäsi: käytä käännettyä kellon ajaa ryhmään väliaikaisen dffs, joten sinun suunnittelu voi suorittaa korkea-asteen frequency.Use folloing rakenne
posreg (. d (DIN). q (q [0]);
negreg (. d (Q [0]. q (temp [0]);
posreg (. d (temp [0], Q [1]);
..........
negreg (. d (Q [n-1]. q (temp [n-1]);
posreg (. d [temp [n-1]. q (q [n]);

 
Kun suoritat synteesi työkaluja, yleensä synteesi työkaluja vain analyysin asennus ajoitus ja joitakin ryöstössä ajoitus, jos kohtaat ei ilmoita pidä ajoitus
rikkominen, niin kohtaaminen ei analysoida pidä ajoitus, jos välineet eivät tiedä rikkomisesta, se ei voi korjata.Jos synteesi työkalut raportin, sinun tarvitsee vain
resynthesis se vahvistaa.
Ja meillä on tapana käsitellä kysymys on:
1.synteesiä optimoida
2.lisätä käsin
3, backend korjata sen
Ja voit sitä käyttää joitakin komentoa lisätä viive solun välinen siirtyminen rekisteriin, mutta en löydä komentoa.

 
Olen siis vaihtanut set_clock_uncertainty-painiketta pitkään hyvin pieni arvo ja takaisin-annotation näyttää oikein, mutta vieläkään ei ole puskureita lisätään netlist.Luulen, mikä vähentää epävarmuutta "ei ollut tasapainossa kellon puu paremmin lisäämällä enemmän puskurit (korjaa, jos olen väärässä).Vielä ei näytä olevan ratkaisu.

Olen myös kaksinkertainen tarkistanut SDC ja ei löytänyt mahdollisesti poistamalla puskurin lisäys.Olen myös huomannut, pitoaika rajoitteen .lib / .v on negatiivinen (ja varoitus suunnittelun aikana laadittaessa: negatiivinen ajoitus tarkistaa rajaa ei sallita 1 raja ajoitus Check), joten ehkä siksi kohtaavat koskaan kiinni rikottu?

Olen myös yrittänyt asetat negreg tai puskureita jälkeen käyttöliittymään synteesiä, ja molemmat toimi, mutta mielestäni tämä on todella huono virtauksen automaatio ...

 

Welcome to EDABoard.com

Sponsor

Back
Top