SV的接口(interface)
33. SV在Verilog语言的基础上扩展了interface
34. interface提供了新的对抽象级建模的方式;
35. 接口的使用可以简化建模和验证的大型复炸设计;
36. Verilog是通过模块之间的进行端口链接来实现完成模块的通信的;
37. 对于大型的设计,通过端口进行链接将会让硬件集成变得非常乏味且容易出错。
概述
38. 对于总线链接,按照Verilog的方式: 对每个子模块的端口进行声明;在顶层生成很多线网,将每个模块链接起来。
39. 这种方式使得常用的总线端口反复的在各个模块反复出现;而且很容易出错,
40. 一些通信协议也不得不在多个模块中重复定义;
41. 在不同的模块之间的链接可能会出现不匹配的信号声明和链接;
42. 一个设计的变化,可能会影响多个模块的端口声明和连接。
接口的优势
43. SV添加了新的抽象端口类型 interface
44. interface允许多个信号被整合到一起来表示一个单一的抽象端口;
45. 多个模块因此可以使用同一个interface,继而避免分散的多个端口信号连接。
接口的内容
46. 接口里面除了包含变量、线网外,还可以封装模块之间的通信(处理信号–驱动信号和采样信号)。接口用起来语法规则和module—endmodule几乎一样
47. 接口还可以嵌入与协议有关的断言检查,功能覆盖收集等模块;
48. 接口与模块不同的是,接口不允许包含设计层次,即接口无法例化module,但是接口可以例化接口。(module可以例化接口)
接口的声明
49. 接口定义同模块的定义类型;
50. 接口也可以有端口(即可以定义信号的输入,输出),例如外部接入的始终或者复位信号;
51. 接口的内部可以声明所有的变量或者线网类型,

接口的例化
52. 例化的方式和module方式一样;
53. 模块的端口如果声明为 input output inout那么在例化的时候可以不连接;、
54. 模块的端口如果是interface 类型,那么在梨花的时候必须连接到一个接口实例,或者另外一个接口端口;
55. 如果一个模块拥有一个接口类型端口,那么要索引该接口的信号,需要通过以下的方式:
<port_name>.<internal_interface_signal_name>
Always @(posedge bus.clock, negedge bus,resetN)…
modport-----将之前声明的部分信号且接下来需要用于连接,来进行规定这些信号的方向。
56. 接口中的变量或者线网的信号,对于连接到端口的不同的模块则可能具备着不同的连接方向。
57. 接口引入了(modport)来作为module port 的缩写,表示不同的模块看到了同一组信号时视角(连接方向)
58. 在接口声明modport,需要指明modport中各个信号的方向。
59. 当一个模块在例化时,可以选择连接到interface端口中具体的某一个modport。
60. 这种情况可以降低方向的连接错误的可能,进而避免信号多驱动的情况。
modport多用于design 验证用modport的实际不多。更多的是clocking block 时钟块。
接口在验证中的应用:(不会接口连testbench都搭建不起来)
-------------利用接口可以将测试平台的DUT 连接在一起。
大总结
61. 接口对于设计复用非常有利;
62. 接口减少了模块之间错误连接的可能性;
63. 如果要添加新的信号,只需要在接口中声明,不需要在模块中声明;
64. 由于接口将有关信号集成在一起,因此在使用这些信号的时候多添加一个层次(接口实例名);
65. 接口经常会有关信号集成在一起,这意味着对于拥有多组不相关的设计而言,它可能需要多个接口实例才能完成与其他模块的连接。

SV——接口(interface)相关推荐

  1. SV学习(3)——接口interface、modport、时钟块clocking

    SV学习(3)--接口interface.modport.时钟块clocking 1. 接口interface 2. modport 3. 时钟块clocking 3.1. 驱动和采用的竞争问题 3. ...

  2. go struct 静态函数_Go语言学习笔记(四)结构体struct 接口Interface 反射reflect...

    加 Golang学习 QQ群共同学习进步成家立业工作 ^-^ 群号:96933959 结构体struct struct 用来自定义复杂数据结构,可以包含多个字段(属性),可以嵌套: go中的struc ...

  3. System Verilog学习笔记—接口interface

    目录 0.interface的直观理解 1.使用端口的TB与DUT通信 2.使用接口的TB与DUT通信 3.使用modport将interface中的信号分组 4.接口中的clocking block ...

  4. Go 学习笔记(35)— Go 接口 interface (接口声明、接口初始化、接口方法调用、接口运算、类型断言、类型查询、空接口)

    1. 接口概念 接口是双方约定的一种合作协议.接口实现者不需要关心接口会被怎样使用,调用者也不需要关心接口的实现细节.接口是一种类型,也是一种抽象结构,不会暴露所含数据的格式.类型及结构. 接口内部存 ...

  5. php中的抽象类(abstract class)和接口(interface)

    一. 抽象类abstract class 1 .抽象类是指在 class 前加了 abstract 关键字且存在抽象方法(在类方法 function 关键字前加了 abstract 关键字)的类. 2 ...

  6. 接口(Interface)的深入理解

    接口(Interface)的深入理解 一:接口是规范(不展开) 二:接口可以看成是一个特殊的类 1: 接口可以定义"接口类型变量",就好像类可以定义类类型的变量(或者说是引用类型变 ...

  7. Java接口interface

    Java接口interface 1.多个无关的类可以实现同一个接口. 2.一个类可以实现多个无关的接口. 3.与继承关系类似,接口与实现类之间存在多态性. 接口(interface)是抽象方法和常量值 ...

  8. Java的类(class)、包(package)和接口(interface)

    在Java中,类(class)是用来代表对象的基本单元.对象(object)可以是现实世界中的任何一个实体,它具有若干区别于其它对象的属性和操作.而类则通过为对象定义属性和操作来概括一类实体.它封装了 ...

  9. Java接口(interface)的概念及使用

    在抽象类中,可以包含一个或多个抽象方法:但在接口(interface)中,所有的方法必须都是抽象的,不能有方法体,它比抽象类更加"抽象". 接口使用 interface 关键字来声 ...

  10. java 抽象接口类,Java接口(interface)和Java抽象类(abstract class)的区别(详诉版)

    1.概述 一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是你对整个宏观商业业务的抽象框架, 当代表业务逻辑的高层抽象层结构合理时,你底层的具体实现需要考虑的就仅仅是一些算法 ...

最新文章

  1. Spring和shiro整合 logout 配置方式
  2. 使用localStorage实现历史记录搜索功能也就是天猫app历史记录存储方便浏览
  3. 丁丁打折网卷能用吗_跳槽频繁的人能用吗?
  4. android动画帧率_Android动画进阶—使用开源动画库nineoldandroids
  5. [转]权限树中Checkbox的操作[Asp.Net2.0]
  6. 无法在计算机上创建文件夹iscsi,ISCSI连接后磁盘无法读写问题求解决
  7. Node.js: 如何退出node命令或者node server
  8. php 打印 trace,php xdebug trace 调试的问题
  9. 毕设题目:Matlab优化覆盖
  10. Eclipse语言包及ADT安装教程
  11. [随笔]_ELVE_git命令复习
  12. light动名词_英语里有些动词有名词形式,那还用不用它的动名词?怎么区分?...
  13. StataIC——线性回归计算个股的β值
  14. STM32填坑:时钟使能必须在外设初始化之前
  15. java 与或非_JAVA 或与非运算符 与()、或(|)、异或(^)
  16. Android 培训课程V1.0
  17. py socket5 代理
  18. Adobe application manager丢失或损坏解决方法
  19. 基于扩展卡尔曼滤波的自适应智能无人车辆行驶matlab仿真,输出三维动态行驶动画
  20. 欧美市场独立站选品技巧

热门文章

  1. C 语言进阶:造一个简单的浏览器
  2. 速卖通如何增加访客量?
  3. Vue基础 - 自我总结
  4. 如何验签名真伪?法大大手写签名识别功能来了!
  5. SqlServer双机热备模式下单节点数据库重装后的配置
  6. 第四章计算机基础,大学计算机基础第四章.ppt
  7. go语言中的iota详解
  8. 90后的你,Q龄几年了?
  9. 海鲜商城小程序开发,解决海鲜市场供需难题
  10. MySQL5.7免安装版图文教程