设计的仿真与测试
一个设计一旦完成就应当对它进行测试。通过编写激励块,输入激励信号然后检测结果可以检测一个设计功能的正确性。将激励块和设计块分离开来是设计者应该养成的一个好习惯。通常测试块也被称为测试凳(Test Bench),应用不同的测试凳可以对一个设计块进行全方位的测试。激励信号的应用方式大致被分为两种。
第一种,在激励块内调用设计块,并且直接驱动设计块的信号。在图中,激励块成为顶层模块,对输入信号clk 和reset 进行操作,检测并显示输出信号q。
第二种,在顶层的假模块内同时调用激励块和设计块,激励块和设计块仅通过接口相互作用,如下图所示。激励模块驱动信号d_clk 和d_reset,这两个信号与设计块的两个端口clk 和 reset分别相连。它也检测并显示输出信号c_q,该信号与设计块的输出端口q相连。顶层假模块的功能仅仅是为了调用设计块和激励块。
下面对昨天学习的行波计数器进行仿真测试。
昨天行为级描述的代码为
module cnt_4bit (q,clear,clock)