你的位置:调教av > 恶女教师 >

经典三级电影 CTS script <一> 分析CTS的成就

经典三级电影 CTS script <一> 分析CTS的成就

       之前为了盘考了解CCOPT经典三级电影,我方花几天本事写了一个剧本,底下是该著作的流畅。

       

    CTS debug<一>

    

       效果好多东谈主齐思参考参考。作家这里就讲讲代码里的一些细节。仅仅列出了一些删减版的代码,不一定能平直用,如果要使用的话还需要我方润色。也惟有我方亲手敲敲,改改才调确切的学会。这个剧本自从写好后,作家齐没用过几次,分享出来让它发达更大的作用。 

        本剧本使用perl写的。当今machine-learning这样火,我思以后应该越来越少用perl写了吧。齐改用python吧。

        在学习本例之前,至少应该掌捏以下几点:

 老到使用正则抒发式

 老到使用hash表,以及多级hash表,

 通过tag,正确的插足和退出多级while轮回,

 了解学习HTML讲话。

      

AV天堂

图片经典三级电影

界说输入输出文献

图片

        剧本的输入是logv,输出是一个html文献。这样咱们就不错通过浏览器绽开。本次代码比拟大要,应该加入 -w 或者use strict一类的语句。

图片

图片

查找ccopt_design高歌

图片

        

        本段代码查找logv中ccopt_design高歌,并从这个高歌之后进行分析。ccopt_design第一步会敷陈、查验CTS的成就,之后才进行作念tree的操作。本文的剧本即是在分析查验CTS的成就,分析CTS-tree的操作下一章再讲。

        在第16行中加入tag_1_0,这个在本段代码中莫得太大作用,因为就一层while轮回。

        在第17行中查找ccopt_design高歌。  这里需要老成的是,如果在运行剧本的时候经受source -verbose高歌,,那么本行的正则抒发式就会不一样。

        第21行中纪录了ccopt_design这个高歌场地的位置。

        第24行找到运转作念CTS-tree的位置,咱们只分析CTS的成就,是以以此为分界点退出轮回,并纪录该分界点位置

         第29行,没什么用,仅仅平凡的查找有无ideal net ,透澈不错放到后头代码中。作家仅仅唾手写在这里。

图片

    

图片

查找property

图片

        底下的代码中,作家拓荒了两个hash表,一个储存默许值,一个存储成就的值。

        本段代码中使用了多层的while轮回,这里的tag,不错很松弛的指定退出的档次

        第39行,通过seek高歌,平直定位到ccopt_design这个高歌运转。

        第40行,tag_2_1用来退出段代码,因为咱们只侧重于cluster之前,是以在碰到clustering,就退出本次代码。

        第44行,查找到trim的信息后,插足第二次轮回,该轮回亦然每轮回一次读入一转

        第47行中,如果遭逢AAE要津字则退出。作家这里取AAE莫得别的原因,仅仅看到trim之后有AAE这个要津字,歪邪抓的,固然你也不错通过检察log来决定相宜的要津字而不是AAE。

        第50行中,找到了trim的信息,并将其存储起来        

图片

        不异咱们不错查找library-timing的信息,不异经受hash表来保存数据。

其实这段和上头的一段是不错合在一个while轮回里的。为什么作家这样作念呢。因为不同的版块中可能library-timing和route-type-trim等先后规定或者说一些要津字不一样,是以分开写,一方面模块化,修改更方面,另一方面也更容易些。毕竟这段log不是很长,多几个轮且归查找无所谓。

图片

   

图片

查找configuration

图片

      本次轮回主若是查找clock-tree-configuration中的本色,不异经受了两层while轮回。

      第89行,当找到某些tree的成就后,插足第二层轮回。

      第91行,暗示该clock用一转就不错刻画完,平直摒弃就好了。如果还有好多clock,那么插足第二层第一次轮回,此次轮回用来查找统统的clock。当碰到冒号的时候住抄本次轮回。就像底下的例子一样,如果一转就刻画完统统clock,平直摒弃就好了。如果碰到多行,就需要再一层while轮回来找到统统的clock.

图片

图片

      第107行的时候,插足第二层第二次轮回,在第108行的时候,暗示找到了下一个clock-tree的成就,退出第二层轮回,重新插足第一层轮回。这里纪录了这个位置。下次平直运转从这走运转读。

        例子中的hash表键值齐加入了数字,这是由于哈希表莫得规定,这里东谈主为加入了数字以后便捷排序。

        第113-116行,这里经受多级哈希,举例底下的例子,property包括lef/trunk/top,是以需要多一级hash表。 

图片

        第120-146行,经受的哈希级数比上头少两级。如果为了肤浅,不错经受和113-116中不同的hash名字,在本例子中经受了疏通的名字,是以也稍许加大了剧本的难度。

图片

图片

 

图片

查找warn/error

图片

        固然咱们还不错查找这段log中的Warn/error等信息

图片

 

图片

写出html文献

图片

        到此为止,查找责任齐也曾作念已矣。接下来只需要写出HTML文献就不错了。对于HTML,仅仅肤浅的标志讲话,花点本事就不错掌捏了。作家为什么不写成EXCEL,而是写出HTML,莫得别的原因,仅仅合计HTML裸露更丰富,绽开更便捷。固然你也不错吐出EXCEL要领。

图片

    

        本段经受了HTML的表格。tr,td这些要津字即是行和列。

图片

        第206行,对第一级hash表的键值进行排序

        第212行,对第二级hash表的键值进行排序

        第214行,暗示如果第三级的值是一个标量,而不是另一个哈希表,就写出其本色。

        第231行,对第三季hash表的键值进行排序

图片

        终末关闭文献,就不错用浏览器检察了。

图片

图片

本站仅提供存储奇迹,统统本色均由用户发布,如发现存害或侵权本色,请点击举报。