1、 模块设计完成之后,我们需要检验功能的正确性,通过设计激励块来完成测试。(可以把激励块理解成一个新的设计块,但是又和原来的设计块存在联系)
将激励块和测试块分开设计是一种良好的设计风格。激励块一般称为测试台。可以使用不同的测试台对设计块进行全面测试。
2、激励块的设计有两种模式。
一种是将激励块作为顶层模块,调用(实例引用)并直接驱动设计块,如图1。顶层为激励块,由它控制clk和reset信号,检查并显示输出信号q。
另一种是在一个虚拟的顶层模块中调用(实例引用)激励块和设计块,激励块和设计块之间通过接口进行交互,如图2。激励块驱动信号d_clk和d-reset,这两个信号则连接到设计块的clk和reset输入端口,激励模块同时检查和显示信号c_q,这个信号连接到输出端口q,顶层模块的作用只是调用(实例引用)设计块和激励块。
3、设计举例
☆设计块:我们使用自顶向下的方法设计。
①顶层模块:脉动进位计数器
module ripplp_carry_counter(q,clk,reset); output [3:0] q; input clk, reset;