课程概述
数字芯片设计流程
数字芯片的设计,主要是按照以下的顺序来进行的
定义功能和指标、架构设计,代码设计使用代码描述(verilog 、HDL)、功能验证,这些统称为RTL设计
RTL设计后,下一步就是把抽象的代码映射成一个跟工艺相关的实际的文件。 这一步就是逻辑综合
逻辑综合之后,抽象代码就变成了一个由标准单元连接的一个网表,有标准逻辑单元,有连接关系,但是没有确定每一个cell在芯片上的位置坐标。
逻辑综合之后就是芯片的后端
在满足功能时序面积约束条件下,把单元放到芯片位置上,这就是full plan 和placement
根据逻辑单元的连接关系,通过引脚把单元连接起来,也就是布线(Place)
如果是一个立体图,可以看到线是分很多层的
我们可以注意到在芯片设计中,memory一般都摆在两边,逻辑单元都在中间
FPGA设计流程
第一步也是综合,第二步是实现,和芯片设计流程很相似,也是有布局布线等流程。FPGA设计也需要加入约束来进行设计。
静态时序分析概述
大部分Soc电路都是很复杂的,大部分可以理解为局部同步,全局异步
静态时序分析相比于功能验证的区别
simulation的测试机理是不停的生成测试向量。静态时序分析不需要生成测试向量,因此静态时序分析的整个时间相对来说就比较短了
静态时序分析其实是对于simulation的一个非常好的补充。