
硬件开源
文章平均质量分 86
renzao_ai
这个作者很懒,什么都没留下…
展开
-
redhat6+centos6.yum找不到163mirror
redhat6+centos6.yum找不到163mirror测试通过时间位置替换的内容测试通过时间2021.8.22位置/etc/yum.repos.d/CentOS6-Base-163.repo替换的内容[base]name=CentOS-6 - Base - centos.orgbaseurl=https://vault.centos.org/6.10/os/$basearch/gpgcheck=1gpgkey=https://vault.centos.org/6.10/os/x8原创 2021-08-22 12:02:03 · 186 阅读 · 0 评论 -
wavedrom脚本画波形进阶中文版教程2
wavedrom editor 详细教程第四步,填充符和间隔符第五步,分组第六步 周期与相位DDR 读取事务第七步 config {} 属性hscale = 1 (default)hscale = 2hscale = 3皮肤头/脚ticktock文本第八步 箭头Splines直角线第九步,嵌入代码块第四步,填充符和间隔符(1)|竖线表示间隔符,显示为两条曲线。(2)=为填充符,在下图中填充在...原创 2020-03-04 13:43:41 · 8142 阅读 · 0 评论 -
wavedrom脚本画出电路波形入门中文版教程1
数字电路设计波形绘制工具快速入门-waveDrom Editor一、安装:二、界面三、快速入门第一步,从一个快速示例开始。第二步,数字时钟。第三步,合在一起一、安装:用迅雷下载此链接:https://github.com/wavedrom/wavedrom.github.io/releases/download/v2.3.2/wavedrom-editor-v2.3.2-win-x64.zi...原创 2020-03-04 12:55:45 · 5269 阅读 · 2 评论 -
PT Report_timing –path_type的区别
(1) report_timing –path_type summary-delay type max-path_type summaryStartpointendpointslackCore/spi/spi_tfifo/rp_reg_0_/CPPAD_SPIMISO (inout)-1.12(2) report_timing –path_type en...原创 2019-04-10 10:30:05 · 4900 阅读 · 0 评论 -
提高门级仿真效率
@TOC为什么需要门级模拟GLS可以捕获静态时序分析(STA)或逻辑等价工具无法报告的问题,包括:1.克服STA的限制,例如:STA无法识别异步接口;静态时间约束要求,例如对假路径和多周期路径的要求。2.验证系统初始化和重置序列是否正确。3.DFT验证,因为扫描链是在RTL合成之后插入的。4.时钟树综合。5.用于估计功耗的开关系数。6.在RTL或GLS中分析X态的悲观或乐观...原创 2019-03-27 13:57:58 · 659 阅读 · 0 评论 -
transitive fanout与set_dont_touch_network
传递性扇出(transitive fanout)(1)简单地说,单元的一个输出端,在被时序电路(如寄存器)阻隔之前经过的组合逻辑电源,都可以称为传递性扇出。(2)如果有一条从源到该引脚的组合逻辑的时序路径,则该引脚被视为在源的传递性扇出中。当使用report_transitive_fanout时,扇出报告在寄存器的输入(时序单元)处停止。如果设置了CURRENT_INSTANCE,则报告将集...原创 2019-03-27 13:53:04 · 3243 阅读 · 1 评论 -
DC常见预定义变量
set_app_var变量xxx_is_xxx类enable类timing_enable_multiple_clocks_per_regallow类dc_allow_rtl_pgxxx_is_xxx类enable类timing_enable_multiple_clocks_per_reg支持对到达单个寄存器的多个时钟进行分析。默认true。此变量可分析到达寄存器时钟引脚的多个时钟。当设...原创 2019-02-20 11:12:54 · 2503 阅读 · 0 评论 -
Maximum Transition Time
最大转换时间转换时间多阈值和比例缩放在阈值和降级率之间转换单浮点数指定最大转换时间约束在本文中,首先在阈值和比例缩放(或称降级率)的背景下讨论摆率SLEW,然后将讨论扩展到最大过渡时间。为了综合、时序检查,将SPICE波形表示为浮点数字。转换时间SPICE波形测量为10%-90%。SPICE波形显示为蓝线。SPICE测量的转换时间为10ps,转换阈值为10-90。转换阈值为0-100...原创 2019-02-20 11:11:19 · 2382 阅读 · 0 评论 -
dc max_fanout capacitance load
DC优先级最高的设计规则set_max_transitionset_max_capacitanceset_max_fanoutset_loadSet_max_fanout input_ports ; set_load output_portsset_max_transition这条命令是用来给指定的时钟组(clock group)、端口(input/output ports)或者设计(desi...原创 2019-02-28 16:55:57 · 2714 阅读 · 0 评论 -
pba mode ( path based analysis for sta )
基于路径的分析PBA提高了静态时序分析精度。时序图对路径。时序图是PrimeTime使用的整个设计的时序数据库的术语。此数据库是在首次读取netlist并链接设计时创建的。在定时更新期间,此数据库将填充来自延迟计算的时序值。更新时序后,将在REPORT_TIMING、REPORT_CONTRAINT和REPORT_MIN_PULSE_WIDTH命令期间使用图中的时序信息。由于图表示整个设...原创 2019-04-10 18:21:28 · 6786 阅读 · 0 评论 -
non-unate clock即非单调时钟
理论上来说,时钟电路只能经过寄存器时钟端、buffer(正相关、inverter(负相关),clock 经过or ,xor等除了与门和非门外的其他逻辑,就会被叫做non_unate。(1)一种可能是,作为时钟使用时,并不会走导致non-unate的路径。这时候,可以设置clock source 到 non-unate,数据路径的false path;或者对此warning不处理。(2)第二种可...原创 2019-04-17 14:48:02 · 10826 阅读 · 1 评论 -
define_current_design
DEFINE_CURRENT_DESIGHT命令仅适用于Synplify Pro和Synplify Premier工具,用于指定该命令后面的约束适用于的模块。它必须是块级约束文件或编译点约束文件中的第一个命令。指定的模块将成为此层次结构中定义的对象以及在相应的块级约束文件或汇编点约束文件中应用的约束的顶级。以下是语法:DEFINE_CURRENT_DESIGN {Region Name|Lib...原创 2019-05-22 16:23:15 · 1401 阅读 · 0 评论 -
pt primetime PTE-070
报告:检测到时钟网络中的non-unate路径。引脚“UOR/Z”中的“CLK”同时传播时钟的反相和非反相sense。(PTE-070)此处的或门是unate 门。为什么还有这个消息?Answer:此警告通常被误解。PTE-070警告涉及non-unate逻辑,而不是non-unate单元。non-unate时钟逻辑是指在传播过程中时钟的两个感知器(非反转和反转)一起到达同一引脚的情况...原创 2019-06-20 17:28:27 · 2055 阅读 · 0 评论 -
CTS实践
CTS实践第一、CTS时钟树优化(CTO)第二、CTS时钟树实践(一)应对大的插入性延迟insertion delay。(二)不合理的skew偏差(三) CTS不正常(1) Stop/sync pin停止(同步)引脚:(2) Exclude/ignore pin排除(忽略)引脚:(3) Floating pin 浮点(隐式停止或宏模型)引脚:(4) Explicit stop/sync pin 显...原创 2019-06-25 10:47:44 · 5843 阅读 · 0 评论 -
pt分布式多场景分析(DMSA)中从时序路径获取点属性
可以在DMSA主机上使用remote_execulte命令从工作进程上分析的路径中获取点属性。默认情况下,使用get_timing_path命令时,worker集合仅返回full_name、scenario_name和object_class属性。 通过使用-attributes选项,get_timing_path命令还可以从工作进程中获取指定的属性。get_distributed...原创 2019-06-25 11:16:40 · 3527 阅读 · 0 评论 -
SDF反标为什么没有数值或者与mtm值不一致
SDF文件描述延迟的内容由一系列用逗号分隔的三元组triplets组成。这些三元组表示最小延迟、典型延迟和最大延迟。如果未在VCS命令行中指定默认值,则为“Typical”。由于一些提取工具只产生两个延迟,比如“0.002:0.005”,如果将此三元组提取到的验证中,并且不在编译时指定+mindelays或+maxdelays,那么将不会有SDF注释到的设计中,因为没有数据来表示典型值。VCS...原创 2019-06-26 09:22:08 · 3643 阅读 · 0 评论 -
pt cover_design和pba_mode
选项说明用法-cover_design关键词是violating pin,每个pin只有一条最差的路径。而且不能遗漏一个violating pin。单独使用,与下面的互斥。-start_end_pair关键词是起始点、结束点。每一对形成的路径都不能遗漏。-nworst N关键词是endpoint,每个point显示N条最差-max_paths M...原创 2019-06-26 17:37:05 · 926 阅读 · 0 评论 -
MyHDL中文手册(十二完结)——MyHDL编程参考
python导出包语法参考仿真仿真类simulation class仿真支持函数now()MyHDL是作为一个名为myhdl的Python包实现的。本章介绍此程序包导出的对象。仿真仿真类simulation classclass Simulation(arg[, arg ...])类,构造新的仿真。每个参数都应该是MyHDL实例。在MyHDL中,一个实例被递归地定义为一个实例序列、一...翻译 2019-01-02 15:22:48 · 3802 阅读 · 0 评论 -
芯片PM该知道的IC术语(二)封装的一些细节
封装的细节PAD衬垫间距DIPs封装IC芯片是制造过程中必不可少的一步,因为IC芯片体积小,易碎,易受环境破坏。此外,封装作为一种机制,可以“分散”来自裸片紧密间距的连接。(两个平行导体的中心到中心间距)在IC模具上到相对较宽的间距。PAD衬垫间距IC芯片上的垫片间距通常为0.006英寸(6英里或152μm)。此间距比IC上布线(金属化)的2至8微米(0.08至0.31mils)间距大得多。...原创 2018-12-19 09:54:10 · 21451 阅读 · 1 评论 -
MyHDL中文手册(一)——概述
硬件开源编程利器MyHDL简介建模仿真与验证转换为Verilog语言与VHDL语言(本系列基于MyHDL 0.10.0 版 on Python3)MyHDL项目的目标是通过python语言的优雅和简洁性来增强硬件设计者的能力。MyHDL是一种免费、开源的软件包,用于使用python作为硬件描述和验证语言。python是一种非常高级的语言,硬件设计者可以利用它的全部力量来建模和仿真他们的设计。...翻译 2018-10-30 14:24:33 · 7915 阅读 · 1 评论 -
MyHDL中文手册(三)—— 第一组示例
MyHDL示例入门。一个基本的MyHDL仿真。信号与并发参数、端口和层次结构关于MyHDL和Python的几点注意一个基本的MyHDL仿真。我们将用一个经典的HelloWorld样式示例来介绍MyHDL。所有示例代码都可以在github【示例/手册/】下的分发目录中找到。下面是名为hello1.py的MyHDL仿真脚本的内容:from myhdl import block, delay, a...翻译 2018-11-01 17:09:49 · 2902 阅读 · 0 评论 -
Python处理verilog文件(一)拆分多module文件
Verilog文件拆分Verilog文件拆分的原因拆分方法Verilog文件拆分的原因(1) 有的工具需要文件名和module名称一致,比如emacs的verilog插件。(2) 有的工具在识别同一个文件中的多个module时认不全,比如verdi。拆分方法(1) 删除有内容的//注释行。这是为了防止识别出无用的代码。(2) 删除有内容的/* */注释行。这是为了防止识别出无用的代码。...原创 2018-11-07 18:51:12 · 3779 阅读 · 0 评论 -
MyHDL中文手册(四)——面向硬件的类型
intbv和modbvintbv类按位索引位的切片modvb类有符号和无符号的表示法intbv类硬件设计涉及到处理位和面向位的操作。标准Python类型int具有所需的大部分特性,但缺乏对索引(比如data[3])和切片(比如head[7:4])的支持。因此,MyHDL提供了intbv类。选择该名称是为了表示具有位向量风格的整数(Integer Bit Vector)。intbv可以透明地与...翻译 2018-11-08 18:28:06 · 1557 阅读 · 0 评论 -
Verilog-2001 generate高级用法举例:用于生成参数化多路选择器
verilog-2001 generate use case: multiplexer generatorclumsy level 1clumsy level 2clumsy level 1Verilog的语法灵活性差,2001版增强了generate功能,反而凸显出其弊端。generate的一大用途是根据parameter自动判断生成的代码行数,可以支持assign、always、case...原创 2018-11-21 10:20:14 · 5186 阅读 · 3 评论 -
MyHDL中文手册(五)——结构化建模
结构化建模介绍有条件例化实例和信号的列表信号列表和位向量之间的转换推断实例列表介绍硬件描述需要支持模块实例化和层次结构的概念。在MyHDL中,实例被递归地定义为一系列的实例或生成器。层次结构是通过在更高级别的函数中定义实例并返回它们来建模的。递归体现于,在本级block内部定义函数(always)、生成器(instance)并返回,在上一级block中调用本级block并再次返回。下面是基本...翻译 2018-11-16 19:38:17 · 1280 阅读 · 0 评论 -
如何处理Systemverilog 错误:Class data could not used in non-procedure dynamic context
class使用错误systemverilog dynamic contextSystemverilog编写test bench时,定义了class之后,如果在assign语句或者例化中使用对象(比如class_a class_a_object ; class_a_object = new();)的信号,编译时会报告class data not used in non-procedure dyna...原创 2018-11-20 08:32:38 · 3114 阅读 · 0 评论 -
MyHDL中文手册(六)—— RTL建模
RTL建模介绍组合逻辑模板示例时序逻辑模板示例可替换的模板有限状态机建模介绍RTL(寄存器传输层)是一种抽象建模层,通常用于编写可综合的模型。综合是指将HDL描述自动编译到ASIC或FPGA实现的过程。本章描述MyHDL如何支持它。组合逻辑模板组合逻辑用代码模式描述如下:from myhdl import block, always_comb@blockdef top(<p...翻译 2018-11-20 11:08:51 · 1822 阅读 · 0 评论 -
MyHDL中文手册(七)—— 高层次建模
高层次建模介绍总线函数过程建模使用内置类型对内存进行建模使用异常建模错误面向对象建模。介绍要用MyHDL编写可综合的模型,您应该坚持使用RTL建模中展示的RTL模板。然而,MyHDL中的建模功能要强大得多。从概念上讲,MyHDL是一个用于硬件系统的通用事件驱动建模和仿真的库。为什么要在比RTL更高的抽象级别上建模?原因有很多。例如,您可以使用MyHDL来验证体系结构特性,例如系统吞吐量、延迟...翻译 2018-11-27 17:10:52 · 1424 阅读 · 0 评论 -
MyHDL中文手册(八)—— 单元测试
单元测试 unit test介绍单元测试的重要性单元测试开发定义需求首先写测试测试驱动的实现额外要求介绍现代数字硬件设计流程中的许多方面都可以看作是一种特殊的软件开发。从这个角度来看,软件设计技术的进步很自然也能应用于硬件设计。一种值得注意的软件设计方法是极限编程(XP)。这是一套引人入胜的技术和指导方针,似乎常常与传统智慧背道而驰。在其他情况下,XP似乎只是强调常识,它并不总是符合通常的做...翻译 2018-12-03 09:18:31 · 834 阅读 · 0 评论 -
MyHDL中文手册(九)—— MyHDL与Verilog协同仿真
MyHDL与Verilog协同仿真介绍hdl insideMyHDL侧限制只有被动的hdl可以协同仿真竞争敏感性问题实施说明Icarus Verilogdelta增量循环实现被动Verilog检查cver其他Verilog仿真器中断的系统调用那VHDL呢?介绍MyHDL最令人兴奋的一个方面是将其用作硬件验证语言(HVL)。HVL是一种用于编写测试台和验证环境以及控制仿真的语言。目前,人们普遍...翻译 2018-12-06 09:46:52 · 3559 阅读 · 3 评论 -
芯片PM该知道的IC术语(三)设计用库
库的基本概念设计中使用的库文件逻辑单元库时序模型NLDM 非线性延迟模型CCS 复合电流源模型ECSM 有效电流源模型NLDM vs CCS vs ECSMCCS vs ECSM设计中使用的库文件库类型流程位置格式内容设计中用途说明logic lib逻辑单元库target_library,在elaborate时使用.db描述单元名,端口名,面积,时延弧,端口负...原创 2018-12-20 14:59:49 · 11275 阅读 · 0 评论 -
MyHDL中文手册(十一)——转换示例
myhdl转换代码示例小的时序电路设计小的组合电路设计分层设计有限状态机的优化RAM推断ROM推断用户定义代码小的时序电路设计考虑下面的增量程序块的MyHDL代码from myhdl import block, always_seq@blockdef inc(count, enable, clock, reset): """ Incrementer with enable....翻译 2018-12-21 14:32:02 · 1221 阅读 · 0 评论 -
MyHDL中文手册(十)——转换成Verilog和VHDL
转换成Verilog和VHDL代码导言解决方案说明特征精细化后转换从信号使用情况推断模块端口接口可转换if-Then-Else结构可以映射到case语句内存ROM存储器有符号算法用户定义代码可转换子集导言编码方式支持的类型支持的语句支持的内置函数文件串信号列表的转换接口转换赋值问题信号赋值intbv对象从转换中排除代码用户定义代码模板变换转换输出的联合仿真验证试验平台的改装方法学说明第一步仿真处理...翻译 2018-12-17 11:31:25 · 3892 阅读 · 0 评论 -
芯片PM该知道的IC术语(一)封装外观
芯片的封装封装术语图示SIP 单排引脚封装DIP 双排引脚封装TSOP薄小外形轮廓封装QFP四方扁平封装PLCC 塑料无引线芯片载体LCCC陶瓷无引线封装芯片载体PTH pin through hole 通孔式SMT 表面贴合式CSP Chip Scale Package 芯片尺寸级封装Lead Frame引线框架wire bonding 引线焊接封装与管脚数量封装术语图示SIP 单排引脚封...原创 2018-12-18 10:44:39 · 5036 阅读 · 0 评论 -
MyHDL中文手册(二)——背景
生成器与装饰器技术先决条件装饰器先决条件您需要对python有基本理解,以便使用MyHDL。如果您不了解python,请不要担心:它是学习最容易编程语言之一。学习python是工程专业人员能够做的最好的时间投资之一。对于初学者来说,http:/docs.python.org/教程可能是在线教程最好的选择。备选办法见http:/wiki.python.org/moin/BeginnersGui...翻译 2018-10-31 10:44:30 · 1997 阅读 · 0 评论