摘要: 1. 开关大小写 [ :set ic ] 忽略大小写(ic = ignore case); [ :set noic ] 区分大小写 2. 显示行数 [ :set nu ] 3. 排序(从小到大)[ :sort ],反向排序(从大到小) [ :sort! ], 删除重复行 [ :sort u ] ,将 阅读全文
posted @ 2018-07-19 15:00 いつまでも 阅读(1661) 评论(0) 推荐(0) 编辑
摘要: standard cell timing model 主要包括两方面的信息: Cell Delay calculation Output Transition calculation 首先,cell delay 和 cell output transition这两者都是根据 input trans 阅读全文
posted @ 2018-07-12 11:19 いつまでも 阅读(5013) 评论(0) 推荐(2) 编辑
摘要: tcl 函数参数自动补全和 help 信息显示 在EDA tool 中使用命令时,命令的参数可以通过 tab 键自动补全,而且可以使用 -help 显示帮助信息,使用起来很方便; 那么我们自己编写的 TCL 过程函数能否也实现 参数自动补全和 help 显示帮助信息呢? 参数自动补全可以用 defi 阅读全文
posted @ 2018-06-06 13:59 いつまでも 阅读(3458) 评论(0) 推荐(0) 编辑
摘要: 文件内容处理: 获取文件中的某些行,并对其处理: 主要使用 " gets fileid line " 命令,其中 fileid 是文件ID号,这条命令获取文件中的行,并将其赋给变量 line ,第一次执行获取第一行,第二次获取第二行,以此类推…… 这个命令的返回值是该行的字符数,到达文件末尾则返回 阅读全文
posted @ 2018-05-30 16:20 いつまでも 阅读(1000) 评论(0) 推荐(0) 编辑
摘要: linux 下,经常会对用到文件操作,下面是一个用 tcl 写的文件操作示例脚本: 其中 set f01 [open "fix.tcl" w] 命令表示 打开或者新建一个文件“fix.tcl”,并将其 file ID 设置为 f01,后续就以这个 file ID 来操作这个文件; 然后 puts $ 阅读全文
posted @ 2018-05-17 15:58 いつまでも 阅读(2042) 评论(0) 推荐(0) 编辑
摘要: 最近在做微型光谱仪,用到了东芝的CCD芯片TCD1305DG,该芯片是单行3648像素,输出信号是时间上离散的模拟信号,典型输出速率为0.5M,即每2000ns输出一个像素值(模拟信号),芯片内部集成了相关双采样电路,直接输出稳定的像元电压值,而不是传统的三阶梯信号。TCD1305DG需要三路驱动信号,分别是主时钟CLK,移位输出信号SH,积分清除信号ICG,芯片手册上给出的时序波形如下: 图1... 阅读全文
posted @ 2015-07-06 10:43 いつまでも 阅读(7136) 评论(0) 推荐(0) 编辑
摘要: 锁存器(Latch)是数字逻辑电路中很重要的一种基本电路,常见的锁存器包括三个端口:数据输入口、数据输出口、使能端。当使能端为高电平时,输入口的数据直接送到输出口,此时输入输出口可以看成是直接连通的;当使能端为低电平时,输出口的数据保持之前的数据不变,无论输入口的数据怎么变化,输出都保持不变,就是把原来的状态锁存下来了(所以才叫锁存器)。锁存器与触发器的区别在于:锁存器是电平触发,而触发器是边沿触... 阅读全文
posted @ 2015-05-26 19:51 いつまでも 阅读(10808) 评论(0) 推荐(4) 编辑
摘要: 最近画的一块板子中用到了六路同相门芯片74HC07作为电平转换,将FPGA产生的3.3V信号转换为5V,但是没有注意到74HC07的输出是开漏结构(以为给74HC07一个5V电源就可以将输入的3.3V电平转换为5V电平输出……囧……,好吧我承认我是菜鸟),结果可想而知,板子拿回来完全不能用,只好用飞线给74HC07的几个输出口接了1K的上拉电阻,这样板子才正常工作了,但是板子上接了一堆的飞线,怎么... 阅读全文
posted @ 2015-01-06 20:26 いつまでも 阅读(5420) 评论(0) 推荐(0) 编辑
摘要: 所谓边沿检测(又叫沿提取),就是检测输入信号的上升沿和下降沿。在设计数字系统时,边沿检测是一种很重要的思想,实际编程时用的最多的时序电路应该就是边沿检测电路和分频电路了。 那么,边沿检测电路该如何实现呢? 我们知道,在always块的敏感信号列表中可以直接用posedge和negedge来提取上升沿和下降沿,但是如果要在always程序块的内部检测上升沿或者下降沿呢?还是用poesedge和neg... 阅读全文
posted @ 2014-12-11 16:09 いつまでも 阅读(13215) 评论(1) 推荐(3) 编辑
摘要: 本文转自http://www.cnblogs.com/linjie-swust/archive/2012/01/07/YWT.html 1. 应用背景 1.1 亚稳态发生原因 在FPGA系统中,如果数据传输中不满足触发器的Tsu和Th不满足,或者复位过程中复位信号的释放相对于有效时钟沿的恢复时间(recovery time)不满足,就可能产生亚稳态,此时触发器输出端Q在... 阅读全文
posted @ 2014-12-07 16:52 いつまでも 阅读(11659) 评论(0) 推荐(3) 编辑
摘要: 本文转自 http://www.cnblogs.com/inet2012/archive/2012/03/07/2384149.html launch edge和latch edge分别是指一条路径的起点和终点,只是一个参考时间,本身没有什么意义,latch_edge-launch_edge才有意义。 1. 背景 静态时序分析的前提就是设计者先提出要求,然后时序分析工具才会根据特定的时序模型进行分... 阅读全文
posted @ 2014-12-05 09:29 いつまでも 阅读(3246) 评论(0) 推荐(0) 编辑
摘要: 在FPGA的学习过程中,最简单最基本的实验应该就是分频器了。由于FPGA的晶振频率都是固定值,只能产生固定频率的时序信号,但是实际工程中我们需要各种各样不同频率的信号,这时候就需要对晶振产生的频率进行分频。比如如果FPGA芯片晶振的频率为50MHz,而我们希望得到1MHz的方波信号,那么就需要对晶振产生的信号进行50分频。 分频器的设计虽然是FPGA学习过程中最简单的实验,但是真正想要把分频器的... 阅读全文
posted @ 2014-12-01 15:00 いつまでも 阅读(21103) 评论(4) 推荐(3) 编辑