北大Verilog课件17Verilog任务与函数.pptxVIP

  • 5
  • 0
  • 约7.01千字
  • 约 21页
  • 2017-05-27 发布于重庆
  • 举报
北大Verilog课件17Verilog任务与函数

第17章 Verilog中的高级结构 学习内容: 任务和函数的定义和调用 怎样使用命名块 怎样禁止命名块和任务 有限状态机(FSM)及建模 Verilog的任务及函数 结构化设计是将任务分解为较小的,更易管理的单元,并将可重用代码进行封装。这通过将设计分成模块,或任务和函数实现。 任务(task) 通常用于调试,或对硬件进行行为描述 可以包含时序控制(#延迟,@, wait) 可以有 input,output,和inout参数 可以调用其他任务或函数 函数(function) 通常用于计算,或描述组合逻辑 不能包含任何延迟;函数仿真时间为0 只含有input参数并由函数名返回一个结果 可以调用其他函数,但不能调用任务 Verilog的任务及函数 任务和函数必须在module内调用 在任务和函数中不能声明wire 所有输入/输出都是局部寄存器 任务/函数执行完成后才返回结果。 例如,若任务/函数中有forever语句,则永远不会返回结果 任务 下面的任务中含有时序控制和一个输入,并引用了一个module变量,但没有输出、输入输出和内部变量,也不显示任何结果。 时序控制中使用的信号(例如ck)一定不能作为任务的输入,因为输入值只向该任务传送一次。 module top; reg clk, a, b;

文档评论(0)

1亿VIP精品文档

相关文档