1.逻辑综合的概述 synthesis = translation + logic optimization + gate mapping . DC工作流程主要分为这三步 Translation : 翻译,主要把描述RTL级的HDL语言,在约束下转换成DC内部的统一用门级描述的电路(Generic Boolean Gates)(DC自己的库表现),以GTECH或者没有映射的ddc形式展现. Logic optimization :逻辑优化, 就是把统一用门级描述的电路进行优化,就是把路径调整一下…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 对进行时序路径.工作环境.设计规则等进行约束完成之后,DC就可以进行综合.优化时序了,DC的优化步骤将在下面进行讲解.然而,当普通模式下不能进行优化的,就需要我们进行编写脚本来改进DC的优化来达到时序要求.理论部分以逻辑综合为主,不涉及物理库信息.在实战部分,我们将在DC的拓扑模式下进行.(本文主要参考虞希清的<专用集成…
已经学习DC的使用有一段时间了,在学习期间,参考了一些书,写了一些总结.我也不把总结藏着掖着了,记录在博客园里面,一方面是记录自己的学习记录,另一方面是分享给大家,希望大家能够得到帮助.参考的书籍有很多,大概如下: 虞希清老师的<专用集成电路设计实用教程> 西电出版社的<数字IC系统设计> 好像还有<SoC设计方法与实现> <数字集成电路设计与技术> 当然,还有synopsys公司的Design Compiler 1 workshop 基本上是参考上面几本书…
本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 概述 前面也讲了一些综合后的需要进行的一些工作,这里就集中讲一下DC完成综合了,产生了一些文件,我们就要查看它生成的网表和信息,下面就来介绍DC综合完成之后要进行哪些工作: 也就是说,DC一般完成综合后,主要生成.ddc..def..v和.sdc格式的文件(当然还有各种报告和log) .sdc文件:标准延时约束文件: 里面都是一些约束,用来给后端的…
本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 前面一直说到综合库/工艺库这些东西,现在就来讲讲讲综合库里面有什么东西,同时也讲讲synopsys的Design Ware库.主要内容分为三个部分:标准单元库.DC的设计对象.Design Ware库. (1)标准单元库 绝大多数的数字设计流程都是基于标准单元的半定制设计流程.标准单元库包含了反相器.缓冲.与非.或非.与或非.锁存器.触发器等等逻辑…
本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 前面介绍的设计都不算很复杂,都是使用时钟的默认行为作为电路的约束,都存在有路径给你约束,即信号的变化要在一个时钟周期内完成,并达到稳定值,以满足寄存器的建立和保持的要求.此外进行可测性设计(design for test)时,为了提高测试的覆盖率,我们经常使用多路(multiplex,简称mux)传输电路的控制时钟,使电路的时钟信号可以由输入端直接…
本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 本文将描述在Design Compliler中常用到的命令,这些命令按照流程的顺序进行嵌套讲解,主要是列举例子:大概的讲解布局如下所示: 大概有11个部分,下面我们逐个部分进行(简单的)介绍的举例. 1.tcl的命令和结构 tcl的命令和结构请参照第二节的内容: http://www.cnblogs.com/IClearner/p/6617207.…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 本文的主要内容是讲解(约束针对的是逻辑综合下的约束,而实战部分则是在DC的拓扑模式下进行): ·环境属性的约束 ·设计规则的约束 ·面积的约束 ·实战(部分)环境属性的约束 1.工作环境属性约束 输入/输出端口及其驱动属性是设计规格的一部分,工作环境的约束,是对这个规格约束的一部分. 工作环境约束一方面是设置DC的工作环…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 1.基本流程概述 首先给三个图,一个图是高层次设计的流程图: 下面是我对这张图的理解: ① 设计之前,准备好库.HDL代码的思想.约束生成:然后根据设计思想用 RTL 源码详细地.完整地为设计建立模型.定义设计中寄存器结构和数目.定义设计中的组合电路功能.定义设计中寄存器时钟等等的设计规格和实现. ② 完成 RTL 源码…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 这里来讲一下formality的使用,貌似跟tcl和DC没有很强的联系:然而说没有联系,也是不正确的.在综合完成之后,可以进行形式验证.此外这里不是专门讲解formality的使用的,因此只会简单地实践一下它的用法. formality是Synopsys公司的形式验证工具,上一节我们得到了综合后的设计,这里我们就要验证综…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 之前讲了基本的时序路径约束,现在我们来看一下其他的约束,然后通过实战来讲解一些其他的约束.实战中也没有前面的"理论"中的约束类型,但是可以通过实战来了解其他的约束.本文的具体内容是: ·多时钟同步约束 ·门控时钟的约束 (实战:) ·正负边沿触发器的约束 ·输入输出延时的非默认约束 ·输入输出有多个路径驱动(类…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 主要内容有: ·启动环境的概述 ·路径变量的定义与解释 ·库的指定与解释 (1)启动环境配置简述 我们按照前面的基本流程使用DC进行设置,但是这里主要使用的是脚本,因此不能一条一条命令进行演示其效果.在启动DC之前,首先要配置DC的启动环境,也就是那些库的设定.配置DC的启动环境主要是.synopsys_dc.setup…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 时序约束可以很复杂,这里我们先介绍基本的时序路径约束,复杂的时序约束我们将在后面进行介绍. 在本节的主要内容如下所示: ·时序路径和关键路径的介绍 ·建立时间.保持时间简述 ·时钟的约束(寄存器-寄存器之间的路径约束) ·输入延时的约束 ·输出延时的约束 ·组合逻辑的约束 ·结合设计规格进行实战 RTL代码描述了电路的时…
综合(synthesis) = 转换(translation) + 优化(logic optimization) + 映射(gate mapping): 转换阶段将HDL语言描述的电路用门级逻辑实现.对于DC使用gtech.db库中的门级单元来实现HDL语言描述的电路,得到初始的未优化的电路.优化与映射时综合工具对初始电路进行分析,去掉冗余单元.并根据约束条件(环境约束和设计约束)对路径进行优化,将优化后的电路映射到由制造商提供的工艺库上. 综合的特点 1. 综合是限制条件驱动的,限制条件就是综…
Android群英传笔记--第十二章:Android5.X 新特性详解,Material Design UI的新体验 第十一章为什么不写,因为我很早之前就已经写过了,有需要的可以去看 Android高效率编码-第三方SDK详解系列(二)--Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能 这一章很多,但是很有趣,也是这书的最后一章知识点了,我现在还在考虑要不要写这个拼图和2048的案例,在此之前,我们先来玩玩Android5.X的新特性吧!…
kali渗透综合靶机(十二)--SickOs1.2靶机 靶机下载地址:https://www.vulnhub.com/entry/sickos-12,144/ 一.主机发现 1.netdiscover -i eth0 -r 192.168.10.0/24 二.端口扫描 1. masscan --rate=10000 -p0-65535 192.168.10.170 三.端口服务识别 1. nmap -sV -T4 -O -p 22,80 192.168.10.170 四.漏洞查找与利用 1.浏览…
二十.综合案例 题目一: **1. ** 数组随机 描述,写randomArray函数,传递一个数组,传递一个数值,返回一个指定个数的随机的新数组,不允许有重复数据 用例: randomArray([ '小明', '小红', '小绿', '小白', '小黄', '小蓝', '小黑', '小青' ], 3) 结果: ['小红', '小白', '小明'] **思路 ** **:获取数组的随机值: ** Math.floor(Math.random()*arr.length); 利用循环多次随机,然后…
转自 麽洋TinyOcean:http://www.douban.com/people/Tinyocean/notes?start=50&type=note 因为看了陈惟十二讲视频没有课件,边看边敲笔记的话 就不能专心听了,所以就在网上找了找果然找到了"麽洋TinyOcean"笔记,感谢 麽洋TinyOcean. 本来想都放在一篇里的,没想到第一讲就99分钟……好多内容……还是一讲一篇吧~(后发现太多,整合一下) CG基础教程-陈惟老师十二讲笔记(上) 猛戳我,我是教程地址 第…
前端行业发展飞速,新技术如雨后春笋般快速出现,尤其是各种小程序陆续推出,相关的信息.文章也铺天盖地的遍布在各处,我们有时候会困惑,不知道哪些信息对于自己是有价值的,那么TNFE-腾讯新闻前端团队启动了这个周刊项目,为所有的前端开发人员整理出小程序相关以及其它web前端技术领域的精品内容. 我们坚持每周为你提供高质量的关于小程序.h5 等前端领域的文章和项目. 项目地址: https://github.com/Tnfe/TNFE-Weekly Weekly[第七十二周] <awesome-made…
第十一章 搭建云端服务器 该章主要介绍了移动后端服务的概念以及Bmob的使用,比较简单,所以略过不总结. 第十三章 Android实例提高 该章主要介绍了拼图游戏和2048的小项目实例,主要是代码,所以略过不总结. 第十二章 Android 5.X新特性详解 1.Material Design(1)MD主题:“拟物扁平化” @android:style/Theme.Material@android:style/Theme.Material.Light@android:style/Theme.Ma…
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/25560901 作者:毛星云(浅墨)    微博:http://weibo.com/u/1723155442 知乎:http://www.zhihu.com/people/mao-xing-yun 邮箱: happylifemxy@163.com 写作当前博文时配套使用的OpenCV版本号: 2.4.9 本篇文章中,我们将一起学习Ope…
第十二章 1.本章是综合前面章节的所有东西的,一个综合实例 2.流程:①项目简介:a.获取原始资料(包括文本.图片.音视频等) b.站点结构(文件目录结构) c.页面(文件)结构 ②设计(切图) ③css -  base.css用于引入使用的css文件 color.css  - 用于设置样式 layout.css - 用于设置布局 Typography.css - 用于设置版式 3.题外话:①在实际开发中,即使是一个空白项目也往往不会从一无所有做起,而借助的平台一般会提供目录结构,所以需要把自己…
Heroku是业内知名的云应用平台,从对外提供服务以来,他们已经有上百万应用的托管和运营经验.前不久,创始人Adam Wiggins根据这些经验,发布了一个“十二要素应用宣言(The Twelve-Factor App)”,该宣言由国内工作于安居客的程序员梁山将其翻译为中文,InfoQ中文站摘录如下. 十二要素应用宣言 简介: 如今,软件通常会作为一种服务来交付,它们被称为网络应用程序,或“软件即服务”(SaaS).“十二要素应用程序”(12-Factor App)为构建如下的SaaS应用提供了…
持续关注MongoDB博客(https://www.mongodb.com/blog)的同学一定会留意到,技术大牛Daniel Coupal 和 Ken W. Alger ,从 今年 2月17 号开始,在博客上持续发表了 如何在MongoDB中设计数据库模式的方法.截止到今日(4月20号),12种模式设计的方法已全部与读者见面.本人认为,此系列文章,总结的非常全面,很多地方有首创性,涵盖的场景也很多,并且有理论总结,也有案例分析.文中分享的很多知识使人"如听仙乐耳暂明",开卷受益,常读…
二十二. Python基础(22)--继承 ● 知识框架   ● 继承关系中self的指向 当一个对象调用一个方法时,这个方法的self形参会指向这个对象 class A:     def get(self):         self.say()       def say(self):         print('AAAAA')   class B(A):     def say(self):         print('BBBBB')   b = B() b.get() # BBBBB…
任务四十二:UI组件之日历组件(三) 面向人群: 有一定基础的同学 难度: 困难 重要说明 百度前端技术学院的课程任务是由百度前端工程师专为对前端不同掌握程度的同学设计.我们尽力保证课程内容的质量以及学习难度的合理性,但即使如此,真正决定课程效果的,还是你的每一次思考和实践. 课程多数题目的解决方案都不是唯一的,这和我们在实际工作中的情况也是一致的.因此,我们的要求不仅仅是实现设计稿的效果,更是要多去思考不同的解决方案,评估不同方案的优劣,然后使用在该场景下最优雅的方式去实现.那些最终没有被我们…
福大软工 · 第十二次作业 - Beta答辩总结 写第十二次的时候操作失误直接在Beta版本的博客里改了...第七次冲刺的作业链接补在这里 Beta(7/7) 组长本次博客作业链接 项目宣传视频链接 本组成员 1 . 队长:白晨曦 031602101 2 . 队员:蔡子阳 031602102 3 . 队员:陈德斌 031602104 4 . 队员:乐忠豪 031602121 5 . 队员:李 麒 031602123 6 . 队员:林志华 031602128 7 . 队员:何裕捷 03160221…
http://blog.csdn.net/poem_qianmo/article/details/25560901 本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/25560901 作者:毛星云(浅墨)    微博:http://weibo.com/u/1723155442 知乎:http://www.zhihu.com/people/mao-xing-yun 邮箱: happylif…
阅读目录 一.时间组件 1.效果展示 2.源码说明 3.代码示例 二.自增器组件 1.效果展示 2.源码说明 3.代码示例 三.加载效果 一.实用型 二.炫酷型 四.流程图小插件 1.效果展示 2.源码说明 3.代码示例 五.按钮提示组件bootstrap-confirmation 1.效果展示 2.源码说明 3.代码示例 六.图片分类.过滤组件MuxitUp 1.效果展示 2.源码说明 3.代码示例 七.多值输入组件manifest 1.效果展示 2.源码说明 3.代码示例 八.文本框搜索组件…
十二.数字密码锁设计 本文由山东大学研友袁卓贡献,特此感谢 实验目的 实现数字密码锁设计,要求矩阵按键输出且数码管显示输入密码,密码输入正确与否均会有相应标志信号产生. 实验平台 芯航线FPGA核心板.数码管_VGA_PS2模块.矩阵按键模块 实验原理 随着生活质量的提高,当代人们也认识到了安全的重要性,已经不再满足于老式的机械钥匙.近年来越来越多的技术开始在安全领域应用,例如普通的按键输入.指纹输入或者虹膜输入等. 本节设计一款按键输入式密码锁,用矩阵键盘输入密码,输入完成后进行密码比对,如密…