都是一些细节性问题,放在一块儿记忆,一问一答的形式,有任何问题欢迎文章上方微博讨论,多思多想。app
一、What makes the difference between Run time and CPU time?electron
Run time is the time it takes for the task to run from start to finish, equal to wall-clock time.
CPU time is the time that the CPU is actually working on the task. There are whole minutes that there's memory swapping taking place, in which the CPU isn't used. Or in the case of the GPU, where the CPU is only used to translate and transfer data, not to actually do any calculations as these happen on the GPU.工具
二、时序设计实质oop
知足每个触发器的创建时间和保持时间的要求布局
三、锁存器、触发器、缓冲器、寄存器区别ui
数据有效迟后于时钟信号的到来,问题在于在时钟信号有效期内一直处于触发状态,就较容易产生毛刺,锁存器在ASIC设计中应该说比ff要简单,但
是在FPGA的资源中,大部分器件没有锁存器这个东西,因此须要用一个逻辑门和ff来组成锁存器, 这样就浪费了资源。
spa
面积小。锁存器比FF快,因此用在地址锁存是很合适的,不过必定要保证全部的latch信号源
的质量,锁存器在CPU设计中很常见,正是因为它的应用使得CPU的速度比外部IO部件逻辑快许
多。latch完成同一个功能所须要的门较触发器要少,因此在asic中用的较多。设计
时钟有效迟后于数据有效。这意味着数据信号先创建,时钟信号后创建。在CP上升沿时
刻打入到寄存器。blog
其实寄存器就是一种经常使用的时序逻辑电路,但这种
时序逻辑电路只包含存储电路。寄存器的存储电路是由锁存器或触发器构成的,由于一个锁存器或
触发器能存储1位二进制数,因此由N个锁存器或触发器能够构成N位寄存器。 工程中的寄存器通常
按计算机中字节的位数设计,因此通常有8位寄存器、16位寄存器等。
对寄存器中的触发器只要求它们具备置一、置0的功能便可,于是不管是用同步RS结构触发器,仍是
用主从结构或边沿触发结构的触发器,均可以组成寄存器。通常由D触发器组成,有公共输入/输出
使能控制端和时钟,通常把使能控制端做为寄存器电路的选择信号,把时钟控制端做为数据输入控
制信号。接口
缓冲寄存器:又称缓冲器缓冲器(buffer):多用在总线上,提升驱动能力、隔离先后级,缓冲器多半
有三态输出功能。当负载不具备非选通输出为高阻特性时,将起到隔离做用;当总线的驱动能力不
够驱动负载时,将起到驱动做用。因为缓冲器接在数据总线上,故必须具备三态输出功能。它分输入缓冲器和输出缓冲器两种。前者的做用是将外设送来的数据暂时存放,以便处理器将它取
走;后者的做用是用来暂时存放处理器送往外设的数据。有了数控缓冲器,就可使高速工做的CPU与慢速工做的外设起协调和缓冲做用,实现数据传送的同步。
四、时序约束的概念和基本策略
包括周期约束,偏移约束、静态时序路径约束。经过附加时序约束可使综合布线工具调整映射和布局布线,使设计达到时序要求。
通常策略是先附加全局约束,而后对快速和慢速例外路径附加专门约束。附加全局约束时。首先是定义设计的全部时钟,对各时钟域内的同步元件进行分组,对分组附加周期约束,而后对FPGA输入输出附加偏移约束,对全组合逻辑的PAD to PAD路径附加约束。附加专门约束时,首先约束分组之间的路径,而后约束快速慢速例外路径和多周期路径,以及其余特殊路径。
五、附加约束的做用
六、FPGA芯片内的存储器资源
一种是block RAM,有必定数量固定大小的存储块构成,使用block RAM 不占用额外的逻辑资源,而且速度快。消耗的也必定是块大小的整数倍。另外一种是由LUT配制成的内部存储器。
七、What is the difference between DCM and PLL in e.g. Xilinx FPGA?
八、时钟抖动与时钟偏斜区别
时钟抖动是指时钟周期之间存在差值,产生于时钟发生器内部,和晶振或PLL内部电路有关,与布局布线关系不大,还有一种因为周期内信号的占空比发生变化而引发的抖动,称之为半周期抖动。
时钟偏斜是一样的的时钟产生的多个自时钟 信号的延时差别,包含了时钟驱动器的多个输出之间的偏移,也包含了因为PCB走线偏差形成的接收端和驱动端时钟信号之间的偏移。
Clock skew 和Clock jitter 是影响时钟信号稳定性的主要因素。
skew一般是时钟相位上的不肯定,而jitter是指时钟频率上的不肯定(uncertainty)。形成skew和jitter的缘由不少。因为时钟源到达不一样寄存器所经历路径的驱动和负载的不一样,时钟边沿的位置有所差别,所以就带来了skew。而因为晶振自己稳定性,电源以及温度变化等缘由形成了时钟频率的变化,就是jitter。
九、SERDES的高速串行接口
SERDES是英文SERializer(串行器)/DESerializer(解串器)的简称。它是一种时分多路复用(TDM)、点对点的通讯技术,即在发送端多路低速并行信号被转换成高速串行信号,通过传输媒体(光缆或铜线),最后在接收端高速串行信号从新转换成低速并行信号。这种点对点的串行通讯技术充分利用传输媒体的信道容量,减小所需的传输信道和器件引脚数目,从而大大下降通讯成本。
传统并行总线技术——PCI却跟不上处理器和存储器的进步而成为提升数据传输速率的瓶颈。新一代PCI标准PCI Express正是为解决计算机IO瓶颈而提出的(见表1)。PCI Express是一种基于SERDES的串行双向通讯技术,数据传输速率为2.5G/通道,可多达32通道,支持芯片与芯片和背板与背板之间的通讯。
基于SERDES的高速串行接口采用如下措施突破了传统并行I/O接口的数据传输瓶颈:一是采用差分信号传输代替单端信号传输,从而加强了抗噪声、抗干扰能力;二是采用时钟和数据恢复技术代替同时传输数据和时钟,从而解决了限制数据传输速率的信号时钟偏移问题。