硬件学习笔记
文章平均质量分 76
我的猫叫汤圆
什么都想搞一点
展开
-
芯动力——硬件加速设计方法 学习笔记 9.静态时序分析3
静态时序分析慢时钟到快时钟的时序检查为了简单起见,我们首先从同步时钟开始分析。即快慢时钟都是同一时钟分频得来的。上图就是一个包含快慢时钟的传输路径,UFF0使用CLKM,是CLKP的四分频,所以是一个慢时钟域到快时钟域的传输路径。静态时序分析工具的分析步骤是首先来分析这两个时钟的公共周期,对于上图的这两个时钟,公共周期是20ns。那么,我们要检查建立时间时候最为严苛的路径就是从CLKM的0时刻到CLKP的第一个周期,即5ns的时刻。这是这个路径的建立时间检查报告,前面我们都分析过报告中的原创 2021-09-05 17:59:28 · 1331 阅读 · 0 评论 -
芯动力——硬件加速设计方法 学习笔记 8.静态时序分析2
静态时序分析input2reg的建立时间的检查上图是一个input端口到寄存器的时序模型,他的时钟源头是输入端口,所以我们无法直接对这条时序路径进行分析,为了能够利用之前分析的结果,我们需要在input端口外面设定一个虚拟的触发器,这个触发器的输出经过input port到内部的寄存器,这样整个时序路径就和寄存器到寄存器的分析一样了。通过下面的约束。我们可以将input delay设置一个最大值(分析setup time),这个最大值就包含前面所说的发射端寄存器的所有延时。creat_clock原创 2021-09-05 17:58:43 · 479 阅读 · 0 评论 -
芯动力——硬件加速设计方法 学习笔记 7.静态时序分析1
静态时序分析为何要进行静态时序分析?在综合阶段,我们需要已经进行了时序约束,也会产生一个时序分析的报告,但是当时也提到,由于我们没有生成时钟树,也没有进行布局布线的操作,所以这个时序分析的结果是不精确的,所以在我们的后端的各个其他环节中,均需要进行静态时序分析来判断时序是否满足约束。那么静态时序分析的特点是什么呢?主要有以下几点:速度快。静态时序分析仅仅针对寄存器,检查寄存器的翻转时间满足时序约束的要求即可,不需要看到每个寄存器的行为和波形,所以速度很快。不需要测试向量。不用进行仿真。只针对同原创 2021-09-05 17:58:04 · 387 阅读 · 2 评论 -
芯动力——硬件加速设计方法 学习笔记 6.逻辑综合2
施加约束时序约束施加时序约束主要是为了保证电路中每一条时序路径都能够处于约束下。在约束后查看电路的setup time和hold time是否满足要求,如果不满足,那么就需要返回代码检查修改或是添加修改新的约束。DC中我们能够施加的时序约束一般有以下几种:指定时钟: create_clock period 20 [get_ports CLK]设置don’t touch属性:set_dont_touch_network [get_clocks Clk]加上这一句主要是为了DC在综合时不对CLK信号进原创 2021-09-05 17:57:04 · 521 阅读 · 0 评论 -
芯动力——硬件加速设计方法 学习笔记 5.逻辑综合1
逻辑综合为什么要进行逻辑综合 ?我们在设计时是将spec和逻辑转换成verilog代码描述电路,在芯片制作时,需要将代码再转换成更加低级的门级电路,供代工厂使用。逻辑综合的主要目的是:决定电路的门级结构、寻求时序与面积的平衡、需求功耗与时序的平衡、增强电路的测试性。逻辑综合的基本原理逻辑综合的三个阶段分别是转译,优化和映射。转译是指将HDL代码翻译为GTECH电路,这个数据库的电路是完全独立于晶圆厂工艺库的,是一个一般性的数据库文件。优化就是指我们在逻辑综合阶段通过施加约束来对电路的时序、面积原创 2021-09-05 17:53:03 · 405 阅读 · 0 评论 -
芯动力——硬件加速设计方法 学习笔记 4.同步电路与跨时钟域处理2
同步电路与跨时钟域处理2复位电路在电路中,除了时钟之外,复位信号是扇出最大的信号,所以针对复位的处理也很重要。复位有以下几种方式:同步复位always @ ( posedge clk) if (! rst_n) begin end else begin end优点:将系统综合为100%的时序电路,利于时序分析和仿真综合。缺点:复位信号的长度必须大于两个时钟周期(系统内最慢时钟),否则采样不到复位信号一般DFF的复位端口为异步复位,所以综合原创 2021-09-05 17:50:43 · 165 阅读 · 0 评论 -
芯动力——硬件加速设计方法 学习笔记 3.同步电路与跨时钟域处理
同步电路与跨时钟域处理亚稳态首先厘清两个概念,同步电路与异步电路。在设计中,由同一PLL分出来的时钟,由于他们之间的相位和倍数关系都是可控的,所以这种时钟网络控制的电路也是同步电路。相反,由两个PLL出来的时钟,即使他们的频率一致,也是异步电路,因为他们的相位关系是未知的。亚稳态概念亚稳态是指触发器无法在某个规定时间段内达到一个可确认的状态。当一个触发器进入亚稳态时,既无法预测该单元的输出电平,也无法预测何时输出才能稳定在某个正确的电平上。在这个期间,触发器输出一些中间级电平,或者可能处于振荡原创 2021-09-05 17:48:29 · 452 阅读 · 0 评论 -
芯动力——硬件加速设计方法 学习笔记 2.高质量的Verilog描述方法
文章目录前言高质量的Verilog描述方法Verilog可综合电路的常用写法RTL代码中的延时和面积延时面积功耗总结前言这门课程的定位偏向于对于Verilog语法有一定了解的同学(不了解的花两天应该也能了解了 ╮(╯▽╰)╭ ),所以对于语言介绍的都是coding syele相关的,不会细抠具体语法。高质量的Verilog描述方法Verilog可综合电路的常用写法If-else相关单if语句(即if…else if…的结构)会被综合为无优先级的电路,在多条件判断时尽量使用这种结构。原创 2021-05-22 18:40:15 · 568 阅读 · 0 评论 -
芯动力——硬件加速设计方法 学习笔记 序
半导体产业概述产业链主要分为以下6大类:FoundryFablessEDA主要是三大厂商 Cadence、Synopsys和Mentor Graphics。Design ServiceIP设计这个地方的图挂了,我找不到原图了テ_デ,后面如果有图挂的情况可以评论说下,我换下图床。数字前端设计流程功能验证逻辑综合相当于软件中的编译器,将RTL代码转化为另一种文本形式。STA一致性验证...原创 2021-05-22 18:16:52 · 556 阅读 · 0 评论