在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3333|回复: 12

[求助] 输入端口激励问题,跪求

[复制链接]
发表于 2016-5-10 10:46:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
是这样的。。。最近我在搞1553b总线协议代码漏洞检测,因为条件有限,就分成了发送和接收来搞,现在是这样:直接对分模块的.vhd源代码测试成功,可以跑通。但用Dc综合后,都成了串口,那么测试文件激励也要改一下,好嘛。。。跑不通了。真不明白为什么。。。哪位大神遇到过这种类似情况。求帮助
发表于 2016-5-10 10:49:42 | 显示全部楼层
代码,仿真波形放出了,你这样写,看不懂
 楼主| 发表于 2016-5-11 11:18:23 | 显示全部楼层
回复 2# yaya126


   哎。。。代码太大,而且我们不能把它放网上,门级网表也很大,3M,放了也没意义。其实我问的就是,为什么直接对代码测试能通过,对综合出的门级网表测试就通不过。。。
发表于 2016-5-11 13:04:42 | 显示全部楼层
是不是由于你的组合逻辑delay太长导致的,前仿真是仿不出问题的,门级仿真加了延时导致跑不过
发表于 2016-5-11 15:10:29 | 显示全部楼层
这应该由SDC保证,看看综合结果有没有timing violation
发表于 2016-5-11 15:37:58 | 显示全部楼层
在我看来,属于时序约束问题,不知道各位大神怎么看。
 楼主| 发表于 2016-5-11 17:31:24 | 显示全部楼层
回复 4# atomdust


   大神。我是初学者。dc脚本应该没加计算延时,因为没生成sdf。我们期望的是将代码加入一种逻辑,然后综合成网表。
综合后的文件夹里面只有.mr 和.syn文件,还有生成的_syn.v文件。
 楼主| 发表于 2016-5-12 14:58:02 | 显示全部楼层
回复 4# atomdust
以下是脚本。哪位大神帮我看看好吗。我是初学者,脚本是别人写的,我想知道是综合后确实发生了门级延时,但没生成sdf文件,还是这种综合只是不考虑延时的一种“理想网表”

   ###################################### Current Design: TOP1553


# Load up design files
# uncomment one of the following
#analyze -format verilog TOP1553.v
analyze -format vhdl {if1553.vhd sysreg.vhd fifo.vhd transmitter.vhd rt1553.vhd receiver.vhd  encode10m.vhd encode.vhd  dpram.vhd  decode10m.vhd decode.vhd  TOP1553.vhd}


# Tell dc_shell the name of the top level module
elaborate TOP1553


# set a clock
create_clock {ext_clk clk}


# Check for warnings/errorsa
check_design -multiple_designs


# ungroup everything
ungroup -flatten -all


# flatten it all, this forces all the hierarchy to be flattened out
set_flatten true -effort high
uniquify


# compile the design
compile_ultra -area_high_effort_script
#compile_ultra -timing_high_effort_script
#compile_ultra


# Now that the compile is complete report on the results
report_area
report_timing
report_power


############################### begin: renaming section
# remove the following renaming section when not needed
# define the name rules for rename
define_name_rules verilog -remove_port_bus
define_name_rules verilog -remove_internal_net_bus


# name rule for nets
define_name_rules verilog -type net -allowed "a-z A-Z 0-9 _" \
-first_restricted "_ 0-9 N" \
-replacement_char "_" \
-prefix "n"


# name rule for cells
define_name_rules verilog -type cell -allowed "a-z A-Z 0-9 _" \
-first_restricted "_ 0-9" \
-replacement_char "_" \
-prefix "u"


# name rule for ports
define_name_rules verilog -type port -allowed "a-z A-Z 0-9 _" \
-first_restricted "_ 0-9" \
-replacement_char "_" \
-prefix "p"


# change names of variables
change_names -rule verilog -hierarchy


################################ end: renaming section


# Write out the design
write -f verilog TOP1553 -output TOP1553_syn.v


remove_design -all


exit
发表于 2016-5-12 15:22:24 | 显示全部楼层
create_clock {ext_clk clk} //太简单了,我写个大体示例
create_clock -period 10 -name clk [get_port clk] //时钟频率一定要定义
set_clock_uncertainty xxxx [get_clk clk]
set_input_delay  1.7 -clock clk {input signal list}
set_output_delay 1.0 -clock clk {output signal list}
还有对reset 的约束, false-path, multi-cycle 等到。


# Now that the compile is complete report on the results
report_area
report_timing
report_power

write_sdf xxxx.sdf //把sdf 生成出来,在仿真的时候load进去
 楼主| 发表于 2016-5-13 09:35:32 | 显示全部楼层
回复 9# yaya126


   谢谢大神,我试试。对了,我们那个脚本看来是没有定义输入延时和输出延时,那么就是说我们的脚本出来的就是理想情况,零延时了?
那咋就仿真不通呢。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-29 05:30 , Processed in 0.033109 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表