0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SystemVerilog为工程师定义新的数据类型提供了一种机制

OpenFPGA 来源:OpenFPGA 作者:OpenFPGA 2022-06-09 09:45 次阅读

除了前面几篇文章讨论的内置数据类型之外,SystemVerilog还为工程师定义新的数据类型提供了一种机制。用户定义的数据类型允许从现有数据类型创建新的类型定义。

用户自定义类型是使用typedef关键字创建的。例如:

e7e8feaa-e78c-11ec-ba43-dac502259ad0.png

一旦定义了新的数据类型,就可以用来定义新数据类型的变量和网络

e80ffcda-e78c-11ec-ba43-dac502259ad0.png

用户自定义类型的命名约定

用户自定义类型名可以是任何合法标识符。在大型设计中,定义用户自定义类型的源代码和使用该类型的源代码可以由多行代码分隔,并且可以位于不同的文件中。如果用户自定义类型的名称与用于模块、网络或变量的名称相似,那么typedef定义和类型用法的这种分离可能会使代码难以读取和维护。

为了使源代码更易于阅读和维护,typedef名称应该使用一种命名约定,使名称明显代表用户自定义类型。两种常见的命名约定是在用户自定义类型名称中添加“_t”后缀或“t_”前缀。本文系列文章惯例使用“_t”后缀惯例。

局部typedef声明

用户自定义类型可以在模块或接口中局部定义。局部typedef声明类型只能在定义它的模块或接口中使用。构成总体设计的其他模块或接口不能引用该类型的用户自定义类型。

共享typedef定义-Shared typedef definitions

当用户自定义类型要在许多不同的模型中使用时,可以在包中声明typedef定义以供其他模块使用。

e83b33dc-e78c-11ec-ba43-dac502259ad0.jpg

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 源代码
    +关注

    关注

    96

    文章

    2945

    浏览量

    66733
  • 数据类型
    +关注

    关注

    0

    文章

    236

    浏览量

    13618

原文标题:SystemVerilog(十)-用户自定义类型

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    笑死,掌握眼识别资深硬件工程师的诀窍!# #电路知识 #电工 #硬核拆解

    硬件工程师
    MDD辰达半导体
    发布于 :2024年12月20日 17:48:17

    FPGA算法工程师、逻辑工程师、原型验证工程师有什么区别?

    ,共同进步。 欢迎加入FPGA技术微信交流群14群! 交流问题() Q:FPGA中的FPGA算法工程师、FPGA逻辑工程师、FPGA原型验证工程师三者有什么区别? A:FPGA 算法
    发表于 09-23 18:26

    labview数据类型的取值范围是多少

    LabVIEW的数据类型丰富多样,涵盖了整数、小数(浮点数)、复数等多种类型,每种类型都有其特定的取值范围。以下是对LabVIEW中常见数据类型取值范围的说明: 整数
    的头像 发表于 09-04 17:33 1001次阅读

    常见的遥感数据类型有哪些

    遥感技术是一种通过遥感器在远离目标的位置获取目标地物的电磁波信息,并进行分析的技术。遥感数据类型繁多,涵盖了从可见光到红外、微波等多个波段,以及不同的数据格式和分辨率。 光学遥感数据
    的头像 发表于 09-04 14:30 1491次阅读

    技术干货驿站 ▏深入理解C语言:基本数据类型和变量

    语言的知识,后续的编程学习打下坚实的基础。1基本数据类型在C语言中,数据类型指的是用于声明不同类型的变量或函数的个广泛的系统,用于
    的头像 发表于 07-26 17:53 2098次阅读
    技术干货驿站 ▏深入理解C语言:基本<b class='flag-5'>数据类型</b>和变量

    正是拼的年纪|65岁电子工程师上班VLOG #65岁退休 #电子工程师 #搞笑 #上班vlog

    电子工程师
    安泰小课堂
    发布于 :2024年07月25日 11:31:02

    ESP32-S3是否支持修改控制端点数据类型

    ESP32-S3是否支持修改控制端点数据类型(如标准类型,自定义类型); 我需要在控制传输数据阶段的DATA0包改为我的USB设备规定的8个
    发表于 06-07 06:00

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件工程师是软件开发领域中的一种专业工程师
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    C语言数据类型有哪些

    在 C 语言中,数据类型指的是用于声明不同类型的变量或函数的个广泛的系统。变量的类型决定变量存储占用的空间,以及如何解释存储的位模式。
    发表于 03-20 10:56 469次阅读
    C语言<b class='flag-5'>数据类型</b>有哪些

    如何搞崩个硬件工程师心态?试试对ta说这几句

    硬件工程师
    扬兴科技
    发布于 :2024年02月20日 18:05:49