关于DC综合纯组合电路,求教。
先谢谢大家。
每次都秒沉。
max min delay
设计可以使用工艺库的门来完成,相当于手写的门级网标,然后将这些库射程dout_touch属性,在端口可以考虑使用set_max_delay set_min_delay这样的约束,
还真要手写网表啊?,其实规模挺大的。另外dc的translate命令可以用吗。好像可以直接映射到工艺库。 像我这种无需优化的情况还需要设置delay吗?可不可以直接report结果呢?
我觉得如果对延时和面积没有特别要求的话,就直接使用+,-,*,/。
根据你的约束条件,dc会自己选择合适的乘法器,加法器的。
感谢回复,我的老师是做这些运算电路研究的。也就是提出一些新的算法,或者电路结构等等。是专门搞这个的,所以加法,乘法,开方等等运算电路的结构都是自己手工搭建的。使用DC这些工具是想得到数据方便比较。
直接结构级描述吧
直接结构级描述吧
约束该怎么加呢 能有啥约束呢
RTL都是用&,|,~之类的逻辑运算搭建起来的,和手写网表的工作量应该差别不大吧,
如果不手写网表的话还有一个办法,就是把库里面的器件好好研究一下,然后把不希望用到的器件设成dout_use属性。
translate这个命令没用过不熟悉。
我同学说直接拿标准库里的单元来写。我觉得那样工作量太大了。因为涉及到大量的实例化。请问你有尝试过代码只用基本逻辑运算写,而且没有always if什么的语法。最多就是assign赋值,比如assign a = b & c 之类的。然后综合时,要求dc不要改变代码所描述的电路结构而只是做一个映射到逻辑库。 我这样该如何做到呢。
感谢回复,我也想过translate这条命令。手写网表写一些不太大基本模块是可以的。那设计的顶层只是做个实例化行不行呢。(因为规模太大了。)还没研究过网表,不知道网表的顶层是实例化还是各种and,or,xor呢?
哦,我说的&,|,~这些都是用运算符的,而不像网表那样用库中的and ,or ,xor等等搞起来的
You can used the create the virtual clock to constraint the critical path with the combination circuit.
这个加那些时钟的约束意义不大