Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
bb130:lvs [2018/10/02 14:10] bb130 |
bb130:lvs [2020/11/12 11:41] (Version actuelle) bb130 |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | Joinable nets (Echange de mails entre L.Leterrier-R.Vandaele, oct.8) | + | LVS errors with digital cells (N.Pillet, oct.18) |
+ | |||
+ | LVS mismatch sur diodenhvt, diodenlvt, dioden, pmos1vhvt, nmos1vhvt, ... | ||
+ | |||
+ | KIT : tsmc_cern_013_1.4c_3_b3 | ||
+ | Pour certaines cellules standards utilisant les diodenhvt, diodenlvt, dioden (ex : CKNHVTD3) | ||
+ | Mismatch sur l'area de la diode (cf image). Il ya 5% de différence entre la schématique et le layout dû aux valeurs de width et length incorrectes dans les paramètres de la schematique. | ||
+ | |||
+ | {{ :bb130:diode_bug.png?300 |}} | ||
+ | |||
+ | Il est impossible de mettre les valeurs correctes pour ces paramètres : la largeur de la diode sur le layout est de 300nm alors que la valeur minimale acceptée dans la schématique est de 350nm. | ||
+ | |||
+ | Le problème a été remonté, réponse du CERN ci-dessous | ||
+ | |||
+ | From: Nicolas Pillet <nicolas.pillet@clermont.in2p3.fr> | ||
+ | Subject: Re: Update of CERN TSMC 65nm kit, what about the 130nm ? | ||
+ | Date: 18 September 2018 at 17:09:08 CEST | ||
+ | To: Kostas Kloukinas <Kostas.Kloukinas@cern.ch> | ||
+ | |||
+ | Dear Kostas, | ||
+ | |||
+ | We have some issues on the latest tsmc PDK : tsmc_cern_013_1.4c_3_b3. | ||
+ | In the digital cells library, the cells CKNHVTD3+, CKNXHVTD3+, CKBHVT3+ (maybe more?) have parameters mismatchs. | ||
+ | The diode "diodenhvt" area in the layout doesn't fit the area parameter in the schematic. | ||
+ | |||
+ | This issue only appears in the last version of the kit (in the beta3 not in the beta2). | ||
+ | It seems that the area parameter in the schematic has been changed from 1.65E-13 to 1.75E-13 but the modification has not been done in the layout. | ||
+ | |||
+ | Do you know how this can be fixed ? | ||
+ | Right now we are changing the standards cells layout to fit the schematic parameters but maybe there is a better option. | ||
+ | |||
+ | Cheers, | ||
+ | |||
+ | Nicolas | ||
+ | |||
+ | De: "Alessandro Caratelli" <alessandro.caratelli@cern.ch> | ||
+ | À: "Nicolas Pillet" <nicolas.pillet@clermont.in2p3.fr> | ||
+ | Envoyé: Mardi 23 Octobre 2018 15:03:12 | ||
+ | Objet: RE: Update of CERN TSMC 65nm kit, what about the 130nm ? | ||
+ | |||
+ | Dear Nicolas, | ||
+ | |||
+ | ... | ||
+ | Regarding the LVS mismatch in the cells CKNHVTD3+, CKNXHVTD3+, CKBHVT3+, **a possible approach could be to slightly increase the tolerance value to match the LVS**, | ||
+ | The problem is that this cell library and the lvs rule file comes from TSMC, so we can not in any case directly modify it. | ||
+ | |||
+ | If you notice any other bug or issue with the PDKs, please let me know, | ||
+ | |||
+ | Thank you, | ||
+ | |||
+ | Best regards, | ||
+ | Alessandro | ||
+ | |||
+ | <note tip>L'approche recommandée est donc d'augmenter la tolérance lorsqu'on passe le LVS. Le problème n'est pas pas réglé, juste caché. | ||
+ | </note> | ||
+ | Cela peut tout de même d'enlever ces erreurs qui peuvent en cacher d'autre. | ||
+ | |||
+ | Pour cela, rajouter les lignes suivantes dans les avCompareRules lors du LVS (pour Assura) afin d'ajouter une tolérance de 6% sur le paramètre area des diodes. | ||
+ | |||
+ | :gen: compareParameter("diodenhvt" percent("area" 6)) | ||
+ | |||
+ | :gen: compareParameter("diodenlvt" percent("area" 6)) | ||
+ | |||
+ | :gen: compareParameter("dioden" percent("area" 6)) | ||
+ | |||
+ | Des problèmes similaires sont également présent sur les pmos1vhvt et nmos1vhvt sur le paramètre width. Le mismatch ici est très faible (<0.3%) | ||
+ | Lignes à ajouter pour mettre une tolérance de 0.3% : | ||
+ | |||
+ | :gen: compareParameter("pmos1vhvt" percent("w" 0.3)) | ||
+ | |||
+ | :gen: compareParameter("nmos1vhvt" percent("w" 0.3)) | ||
+ | |||
+ | Il est possible que d'autres cellules soit impactées. Pour les valeurs de tolérance il se peut qu'elles soient revues à la hausse étant donné que toutes les cellules standards n'ont pas été verifiées. | ||
+ | |||
+ | |||
+ | Joinable nets (Echange de mails entre L.Leterrier-R.Vandaele, oct.18) | ||
Bonjour Laurent, | Bonjour Laurent, | ||
Ligne 72: | Ligne 147: | ||
>>>Assura : Set Switches : compare_parasitic_diodes extract_parasitic_diodes -> [MATCH] !! | >>>Assura : Set Switches : compare_parasitic_diodes extract_parasitic_diodes -> [MATCH] !! | ||
>>> Merci Damien : | >>> Merci Damien : | ||
+ | |||
+ | MAJ : /!\ quand on mets les switch *_diodes, ensuite l'extract ne marche pas. Il faut repasser un LVS sans les switch pour pouvoir passer QRC. (E.Bechetoille, nov.18) | ||
PADs de la librairie tpa013nv3: erreurs LVS (R.Vandaele, D.Thiepont, dec.17) | PADs de la librairie tpa013nv3: erreurs LVS (R.Vandaele, D.Thiepont, dec.17) | ||
Ligne 78: | Ligne 155: | ||
Configuration Assura pour DRC, LVS et QRC (M.Dahoumane, dec.17) | Configuration Assura pour DRC, LVS et QRC (M.Dahoumane, dec.17) | ||
[[https://atrium.in2p3.fr/00320cfd-670d-434e-841e-dc74a6eec253|note sous Atrium]] | [[https://atrium.in2p3.fr/00320cfd-670d-434e-841e-dc74a6eec253|note sous Atrium]] | ||
+ | |||
+ | Supprimer short LVS avec symbole CDS_Thru (R. Vandaele, nov.2020) | ||
+ | Sur une vue top, l’utilisation de cds_thru avec 2 pins (1ère en entrée et la 2ème en sortie) peut générer une erreur de short lors du LVS. | ||
+ | En effet le le symbole cds_thru permet sur une schématique de réaliser un changement de nom de net. | ||
+ | |||
+ | {{ :bb130:schema_cds_thru.png?500 |}} | ||
+ | |||
+ | Par exemple InT<2 :0> deviens dst<2 :0>. | ||
+ | |||
+ | Toutefois au niveau layout cette cellule n’existe pas (elle n’a pas de correspondance physique) et layout XL nous oblige à placer les pins InT<1> et dst<1> sur la même piste. | ||
+ | |||
+ | {{ :bb130:layout_cds_thru_li.jpg?500 |}} | ||
+ | |||
+ | En faisant cela, le LVS nous indique un short entre ces 2 pins. | ||
+ | Pour éviter cette erreur lors du LVS, il est nécessaire de renommer virtuellement les dst<i> en InT<i>. | ||
+ | Pour cela il est nécessaire de créer un usr.pvl rule file dans lequel je renomme les nets incriminées : | ||
+ | layout_rename_text "/dst<2>/InT<2>/" -database | ||
+ | layout_rename_text "/dst<1>/InT<1>/" -database | ||
+ | layout_rename_text "/dst<0>/InT<0>/" –database | ||
+ | |||
+ | Ce fichier usr.pvl est ensuite renseigné dans la fenetre Rules | ||
+ | 1 – Bouton Add à Browser | ||
+ | 2 – user.pvl | ||
+ | |||
+ | {{:bb130:config_pvs_cds_thru.png?500|}} | ||
+ | |||
+ | A la suite de cela, les erreurs de short liées au cds_thru disparaissent. | ||
+ | |||
+ | | ||
+ | |||