print之模块化

这里参考特权同学的模块化思想,将常用的print等任务模块化,便于直接调用,提高代码的效率和易读性。现转载之,以供日后的学习和工作参考。

print模块参考代码如下:

//=================================//

//useful print_task show
//include error,warning,fatal,terminate,etc

module print_task();

//Show Warning Report
task warning;
input [80*8:1] msg;
begin
    $write("WARNING at %t : %s",$time,msg);
end
endtask

//Show Error Report
task error;
input [80*8:1] msg;
begin
    $write("-ERROR- at %t : %s",$time,msg);
end
endtask

//Show Fatal Report
task fatal;
input [80*8:1] msg;
begin
    $write("*FATAL* at %t : %s",$time,msg);
    $write("Simulation false\n");
    $stop;
end
endtask

task terminate;
begin
    $write("Simulate completed\n");
    $stop;
end
endtask

endmodule

调用print模块参考:

//test print_task.v
module testcase();

.....

print_task print();    //instance

.....

initial 
begin
    print.error("Unexpected response\n");
    print.terminate;
end

endmodule

//================================//

对于常用的reset复位模块,也可以将其任务化:

//================================//

//reset module

module test();

.....

initial
begin
    reset_task(100);   //reset 100ns

end

.....

task reset_task;
input [15:0] reset_time;  //Difine reset time
begin
    reset = 0;
    # reset_time;
    reset = 1;
end
endtask

......

endmodule

//================================//

时间: 2024-10-29 19:12:04

print之模块化的相关文章

css模块化思想(一)--------命名是个技术活【转】

正篇: 什么是css模块化思想?(what) 为了理解css模块化思想,我们首先了解下,什么是模块化,在百度百科上的解释是,在系统的结构中,模块是可组合.分解和更换的单元.模块化是一种处理复杂系统分解成为更好的可管理模块的方式.它可以通过在不同组件设定不同的功能,把一个问题分解成多个小的独立.互相作用的组件,来处理复杂.大型的软件.看完模块化,是不是有种拼图的即视感,可以把大图分成各个小图,然后把小图拼成大图,分与合的艺术感.那么css模块化思想,也就是在css编写环境中,用上模块化的思想,把一

【Python】模块化函数定义及引用

Step 1: 新建一个模块化函数,命名为am.py def add(x,y): return x + y def minus(x,y): return x - y Step 2: 新建一个测试函数testam.py <pre name="code" class="python">import am print am.add(10,30) Step 3:运行,测试结果如下: >>> ===========================

谈 CSS 模块化

以前看过模块化的相关资料以及解释,对模块化有了一个表皮的了解,自己也做了一些相关的实践,由于接触到的项目交小,所以也没能更好的去体现和理解模块化,但总体还是有那么一些感悟,但是如果要说怎么才能算是好的模块化,自己内心还是一个疑问. 前几天接到一个电话面试,谈到了css模块化的问题,觉得自己的回答太模棱两可,自己回答过后对自己的答案也不满意,没有一个周全的思考和考虑. 下面总结一下自己对css模块化的理解,尽可能的表达完善自己的想法以及对所查找到的资料的一个总结. ————————————————

CSS模块化思想-----命名是个技术活

CSS模块化思想(一)--------命名是个技术活 引子: 女孩子都喜欢买衣服,而我也不例外,奈何钱包太瘦,买不起高大上的定制,只能买撞衫率极高的休闲衣,不过对于我来说,我还是开心的,毕竟买衣服买的不仅是衣服,更是一种心情.在web前端的世界里,css里也充满了生活的艺术,都说,艺术源于生活,却高于生活,是对生活的一种升华,那么在css里,是个性化的定制好,还是模块化的量产好呢?这就要看各个项目了,这是一种权衡,一切离不开一个度,这世上没有最好的,只有最适合自己的,在web前端的世界里亦是如此

css 模块化

什么是css模块化思想?(what) 为了理解css模块化思想,我们首先了解下,什么是模块化,在百度百科上的解释是,在系统的结构中,模块是可组合.分解和更换的单元.模块化是一种处理复杂系统分解成为更好的可管理模块的方式.它可以通过在不同组件设定不同的功能,把一个问题分解成多个小的独立.互相作用的组件,来处理复杂.大型的软件.看完模块化,是不是有种拼图的即视感,可以把大图分成各个小图,然后把小图拼成大图,分与合的艺术感.那么css模块化思想,也就是在css编写环境中,用上模块化的思想,把一个大的项

css模块化思想(一)

什么是css模块化思想?(what) 为了理解css模块化思想,我们首先了解下,什么是模块化,在百度百科上的解释是,在系统的结构中,模块是可组合.分解和更换的单元.模块化是一种 处理复杂系统分解成为更好的可管理模块的方式.它可以通过在不同组件设定不同的功能,把一个问题分解成多个小的独立.互相作用的组件,来处理复杂.大型的 软件.看完模块化,是不是有种拼图的即视感,可以把大图分成各个小图,然后把小图拼成大图,分与合的艺术感.那么css模块化思想,也就是在css编写环 境中,用上模块化的思想,把一个

Flask blueprint蓝图按功能模块化架构实例

使用flask作为开发框架,一定要按功能模块化,否则到了后面项目越大,开发速度就越慢. 1.Flask模块化结构规划 [[email protected] yangyun]# tree . ├── asset               #资产功能目录 │   ├── __init__.py │   ├── models.py        #资产数据库结构文件 │   └── views.py         #资产视图文件 ├── user                #用户功能目录 │ 

浅析 Nodejs 模块化

本文只讨论 CommonJS 规范,不涉及 ESM 我们知道 JavaScript 这门语言诞生之初主要是为了完成网页上表单的一些规则校验以及动画制作,所以布兰登.艾奇(Brendan Eich)只花了一周多就把 JavaScript 设计出来了.可以说 JavaScript 从出生开始就带着许多缺陷和缺点,这一点一直被其他语言的编程者所嘲笑.随着 BS 开发模式渐渐地火了起来,JavaScript 所要承担的责任也越来越大,ECMA 接手标准化之后也渐渐的开始完善了起来. 在 ES 6 之前,

Fixture:显式,模块化,可扩展

fixture: 夹具是指机械制造过程中用来固定加工对象,使之占有正确的位置,以接受施工或检测的装置,又称卡具(qiǎ jǜ).从广义上说,在工艺过程中的任何工序,用来迅速.方便.安全地安装工件的装置,都可称为夹具. 测试夹具是为了给测试脚本提供一个固定的基准. 可以理解为使测试脚本可以重复.可靠地调用这些夹具进行组装测试脚本.(如果有经典的xunit样式中的setup和teardown概念,可以看作是对这两个东西的进一步的封装,细化各个预置和清理步骤,方便更灵活的组装测试脚本构成) 通过从测试