微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 求助各位大神们这两种写法的区别

求助各位大神们这两种写法的区别

时间:10-02 整理:3721RD 点击:
假如一个testbench的层次如下,
                       tb
                        |
             --------------------
             |                      |
           top               sub_tb0
             |
           ip0
假如ip0中有一个信号是aaa,在sub_tb0中定义一个信号bbb,如下:
assign bbb = tb.top.ip0.aaa;

请问这种写法和把aaa output到top和tb,然后input到sub_tb0中有什么区别?功能上和综合上而言?

不懂小编写的是什么

若這是 design, 顯然是不行 synthesize 的.  
這樣的寫法, 無法模組化, 無法 reuse.
不好的寫法

这种写法只能用于仿真,不可综合。

既然是tb的写法为什么强调可综合?

同意4楼!这种写法应该是比较灵活和方便,要不想用一个内部的信号,都引到模块的端口上不是很麻烦吗!最近也在尝试用这种方式。
5楼所说,写tb时并没有强调可综合。

sub_tb0是做观察器的吗?
不建议兄弟层上互相访问,完全可以让tb来实现连接

sub_tb0是做观察器的吗?
不建议兄弟层上互相访问,完全可以让tb来实现连接

这个就像C++里面的全局变量,它是可以透过模块直接使用,但用多了会把结构搞的混乱。你这样写TB没有问题,但后人维护起来需要注意更多的地方,因为信号不都来自端口。


明白了,所以在design中不能这样引用tb中的信号,因为不可综合,在tb中虽然可以这样去引用design中的信号,不过也是不推荐的做法,因为不好模组化和移植,对吧



   是不是可以理解为tb中一种图方便的写法



   对,所以tb中可以这样去引用design的信号,不过这个信号是不会出现在design的端口上的,对的吧



   毕竟不是sub design之间互访,tb引用design的信号这样写倒是省事,不会影响design吧


对,tb中这样引用方便

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top