当前位置: 首页 > news >正文

task与function

task和function主要是有助于代码的可重用性,都可以在module-endmodule之外声明

1.function

        1.1.function逻辑的综合

                function:一个只有1个wire型输出值、全是组合逻辑的函数,且函数名即输出信号名,小括号中按顺序例化输入信号。

                由于function中没有任何时序结构,function只能综合出组合逻辑。

        1.2.function的使用

                ①因function全为组合逻辑,即if-else、case等分支应定义完全,避免生成latch。

                ②fucntion只用于综合成组合逻辑。但是,fucntion的最终结果可以用作D触发器的输入。

                ③fucntion不应包括延迟(#)或事件控制(@,wait)语句。

                ④fucntion可以调用其他fucntion,但不能调用task。

                ⑤fucntion在调用时会返回一个值。

                ⑥fucntion内声明的parameters,作用范围仅在本地,并且不能在fucntion之外使用。

2.task

        2.1.task逻辑的综合

                虽然在task中可以有@等时序控制结构中,它仅适用于仿真。综合工具会忽略所有task中的时序结构。因此,如果task中存在时序控制结构,可能会存在仿真和综合不匹配的现象。

                因此,在可综合verilog中一般只会使用task综合基本的组合逻辑,在testbench中调用带有时序控制结构的task具有较好的通用性。

                以下是组合逻辑task的示例,即comb_task,执行输入in1的位或(OR)。 注意int_out1和int_out2的声明是reg型,因为task的输出只能通过reg而不是wire接收:

        2.2.task和module的区别

                ①不能在task中例化module,可以在module中调用task。

                ②Task中的逻辑不能够在floorplan中定义为block进行pre_place布局,只是sea-of-gates;而Module可以在floorplan中定义为block,进行pre_place。

http://www.lryc.cn/news/17997.html

相关文章:

  • Android 基础知识4-3.1 TextView(文本框)详解
  • 点击化学 PEG 试剂1858242-47-3,Propargyl丙炔基-PEG1-乙酸活性酯
  • 正则表达式是如何运作的?
  • JVM参数GC线程数ParallelGCThreads设置
  • java 线程的那些事
  • 如何利用 Python 进行客户分群分析(附源码)
  • D1s RDC2022纪念版开发板开箱评测及点屏教程
  • 了解一下TCP/IP协议族
  • 【第十九部分】存储过程与存储函数
  • 字节序
  • PDF文件怎么转图片格式?转换有技巧
  • 筑基七层 —— 数据在内存中的存储?拿来吧你
  • Typecho COS插件实现网站静态资源存储到COS,降低本地存储负载
  • 2月23号作业
  • 因果推断方法(一)合成控制
  • 数据结构第12周 :( 有向无环图的拓扑排序 + 拓扑排序和关键路径 + 确定比赛名次 + 割点 )
  • Linux安装docker(无网)
  • 解决JNI操作内核节点出现写操作失败的问题
  • 纵然是在产业互联网的时代业已来临的大背景下,人们对于它的认识依然是短浅的
  • 干翻 nio ,王炸 io_uring 来了 !!(图解+史上最全)
  • ur3+robotiq ft sensor+robotiq 2f 140+realsense d435i配置rviz,gazebo仿真环境
  • ASP.NET Core MVC 项目 AOP之Authorization
  • 智能新冠疫苗接种助手管理系统
  • Python+Selenium4元素交互1_web自动化(5)
  • 2023双非计算机硕士应战秋招算法岗之深度学习基础知识
  • Python opencv进行矩形识别
  • 网安入门必备的12个kali Linux工具
  • 【测试面试】头条大厂,测试开发岗真实一面。你能抵得住吗?
  • 分享app的测试技巧
  • HTML 基础【快速掌握知识点】