lcytms
发表于 2017-7-16 10:48:01
1116
我们说这100天之后,就修行在个人,全靠你自己了。
马上我会建议我们的同学增加我们的阅读量。
看什么呢?
由于现在还是西方技术领先嘛,所以说我们还是要看西文。
什么时候中国国力增强,让老外来看中文。
然后呢,我们再来复习一下同步电路,同步电路基础理论部分呢,我们同步电路也是介绍比较多的。
这点呢,我们是比较引以为豪的。
就是我们至芯的课程里面,关于状态机的基础理论,关于同步电路的基础理论,我们自我感觉还是可以的。
lcytms
发表于 2017-7-16 10:50:00
1117
我们比北大清华,甚至研究生的课程还讲得多。
同步电路里面,我们会介绍三个方面的知识。
同步电路,很宽广的一个范畴。包括像数字逻辑通信,LIP也属于这个范畴,但是我们现在的经典的介绍同步电路的三个领域,就是潜伏期分析。
站在同步电路,它的前级和末级,都是用一个时钟来驱动的。
站在节拍的角度上,就是离散时间轴的角度上,来分析信号的规律,称之为潜伏期分析、节拍分析。
这是第一。
然后呢,站在整个时间轴上,观测信号的传输延迟,把信号的传输延迟、惯性延迟考虑进去,并且考虑信号的寄存器的有效的反转,亚稳态的问题。
这个呢,称之为时序分析。
lcytms
发表于 2017-7-16 10:50:50
1118
然后呢,我们业界听到的词约束嘛,时序分析,时序约束。
约束,它是建立在时序分析的基础上。
时序分析,是基础,是本嘛。
约束是根据时序分析来调整FPGA里面布局路由的那些策略。
不同的布局,不同的路由会得到不同的时序分析的结果。
而向着这个目标努力,就称之为约束。
时序约束。
基础理论方面,广义的,我们就称之为时序分析,timing analysis。
lcytms
发表于 2017-7-16 11:03:55
1119
然后呢,最重要的就是流水线。
一个高速数字电路,能不能把它设计成一个流水线作业?
这体现了一个EDA工程师的能力。
一个EDA工程师,如果他不够前沿,不够专业,他很可能就做不出流水线,因为流水线是真正的难,真正地动脑筋,真正地需要一些工具来做流水线作业。
然后呢,除了流水线作业,我们当然还有算法,算法讲得少一点。
我们看下午能不能讲一个比较简单的补充一点。
我们之前有一个同学嘛,把我们的流水线做上去了,把我们的时序约束做上去了,然后呢,再把算法做上去,让他的老板吃惊。
让他们以前公司的项目,做图像嘛,速度快了7倍。
我们知道,数字电路里面,一个同类的设备有5%的优势,就足够领先了。
lcytms
发表于 2017-7-16 11:05:14
1120
他快了7倍,让他的老板和同事都吃惊了。
这是我们至芯去年毕业的同学。
很厉害。
我们看了也很振奋。
所以说这些基础知识是必需的。
就是同步电路,一个是潜伏期分析,就是节拍分析。
一个是时序分析,一个是流水线设计。
当然还有其它一些内容。关于潜伏期分析,节拍分析,我们给出两个工具,第一个工具是时序图。
时序图是最经典的,时序图的横轴给的是时间,纵轴给的是信号。
lcytms
发表于 2017-7-16 11:08:44
1121
并且在时序图上,最重要的特征要有时钟。
同步电路,是一定要有时钟的。
同步电路,它的前级节点和末级节点。
节点的概念,NODE,我们在EDA建模的时候,闭节点,信号敏感表里面always语句,有且有一个沿敏感信号未被引用,会形成一个节点。
但是对同步电路,它说的是这样一件事,组成电路里面的,前级的FA,你可以形成RTL,加上一个寄存器,这个会形成一个节点,称之为NODE。
lcytms
发表于 2017-7-16 11:11:26
1122
之所以我们不把它写成组合逻辑,combinational logic,而写成FA,有限自动机,就是因为我们用FA既可以描述组合逻辑的布尔表达式,又可以描述它的传输延迟和惯性延迟。
加上了传输延迟和惯性延迟,组合逻辑,这些模型加在一起,称之为FA。
因为组合逻辑没有延迟的概念,所以说这边加上了延迟的概念。
这个节点,这个寄存器当然是用对应的时钟来驱动的。
如果它的前级节点和末级节点都是用相同的时钟,我们认为是相同时钟域。
当然同步电路它也支持相关时钟域。
所有两个时钟之间,有有限多个相位差。
lcytms
发表于 2017-7-16 11:13:37
1123
当有无限多个相位差的时候,是无关时钟域,是异步时钟域。
时序图,节拍分析的第一个工具。
这个复习也很重要,以至于在国外的课程里面,他们都还没有完全做到同步。
仍然是有看左边、看右边的问题。
我们还是结合剑桥的教材。
前级节点是N0,N1是末级节点。
节点都用的是相同的时钟驱动的。
当我们在表述这个信号的时候,所有的信号,无论是N0的信号,还是N1的信号,还是N0之前的用同一时钟驱动的signal,都应该在时钟沿的右侧,称之为tco,就是clock output。
lcytms
发表于 2017-7-16 11:14:55
1124
因为从一个稳态翻转到另外一个稳态,是需要时间的,上升沿到达之后,信号才稳定。
所以说这个信号无论是什么样的信号,无论是N0的信号,N1的信号,还是N0前面的信号,只要是同步信号,就一定满足这样一个特征,就是一定是在右侧逼近的。
一定是上升沿到达之后,这个信号才会变成有效点。
传统的方法是这样绘制的,如果in这个信号是这样变化的,in信号一定也是在上升沿,因为它是N0来驱动的嘛。
时钟上升沿到了以后,它就会翻转过来,一定会有一段延迟,称为tco的延迟。
lcytms
发表于 2017-7-16 11:16:36
1125
然后out信号呢,N0翻转了以后,上升沿已经过去了,out信号一定在下一个上升沿,才采样得到in这个信号的高电平。
所以说out信号必须在下一拍。
这是T0,T1。
T0的时候输入变了,T1,N1才发生变化。
它也是在右侧逼近。
也是有tco,右侧逼近。
这样的话呢,在经典的时序图上,就要描述同步电路的信号,就要标注出右侧逼近的这么一个间隔来。
所以说,我们现在来看LIP Altera,就一定要把这个间隔标注出来。