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

审核编辑 :李倩

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

    关注

    94

    文章

    2923

    浏览量

    66047
  • 数据类型
    +关注

    关注

    0

    文章

    227

    浏览量

    13485

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

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

收藏 人收藏

    评论

    相关推荐

    plc数据类型怎么理解和应用

    PLC(可编程逻辑控制器)是一种工业自动化设备,用于控制机械和工业过程。在PLC编程中,数据类型是非常重要的概念,因为它决定了程序中数据的存储和处理方式。正确理解和应用PLC数据类型
    的头像 发表于 12-19 11:39 1280次阅读

    oracle的数据类型有哪些

    。 一、数值类型 NUMBER:数值类型是Oracle中最常用的数据类型之一。它用于存储整数或带有小数点的数字。NUMBER类型可以指定精度(precision)和标度(scale),
    的头像 发表于 12-05 16:45 593次阅读

    javascript的基本数据类型有哪些

    JavaScript 是一种动态的、面向对象的编程语言,广泛应用于 Web 开发中。在 JavaScript 中,有七种基本数据类型(Primitive Types),它们分别是 Undefined
    的头像 发表于 12-03 11:17 349次阅读

    数据的位是什么?C语言中常见的数据类型有哪些?

    本文介绍关于C语言中数据类型的相关知识,比如常见的数据类型有哪些,怎么定义和使用数据类型等。 1 、数据的位是什么? 计算机系统的存储最小单
    的头像 发表于 11-08 15:55 522次阅读
    <b class='flag-5'>数据</b>的位是什么?C语言中常见的<b class='flag-5'>数据类型</b>有哪些?

    Redis的数据类型有哪些

    用的一种数据类型,普通的key- value 存储都可以归为此类。其中Value既可以是数字也可以是字符串。使用场景:常规key-value缓存应用。常规计数: 微博数, 粉丝数。 2、Hash:Hash 是一个键值(
    的头像 发表于 10-09 10:51 388次阅读

    FreeRTOS使用的数据类型有哪些

    数据类型 FreeRTOS 使用的数据类型主要分为 stdint.h 文件中定义的和自己定义的。其中 char 和 char * 定义的变量
    的头像 发表于 09-28 11:49 403次阅读

    PLC 数据类型 (UDT) 的基本知识

    说明 PLC 数据类型 (UDT) 是一种复杂的用户自定义数据类型,用于声明一个变量。这种数据类型是一个由多个不同
    的头像 发表于 09-10 09:46 2127次阅读
    PLC <b class='flag-5'>数据类型</b> (UDT) 的基本知识

    F型PLC数据类型与标准PLC数据类型(UDT)之间的差别在哪?

    可以像使用标准 PLC 数据类型 (UDT) 那样,声明和使用 F 型 PLC 数据类型 (UDT) 。可以在安全程序中以及标准用户程序中使用 F 型 PLC 数据类型 (UDT) 。
    的头像 发表于 08-27 09:54 747次阅读
    F型PLC<b class='flag-5'>数据类型</b>与标准PLC<b class='flag-5'>数据类型</b>(UDT)之间的差别在哪?

    浅谈PLC定义数据类型的应用

    PLC定义数据类型以下用一个例子介绍PLC定义数据类型的应用,以便进一步理解PLC定义数据类型
    的头像 发表于 07-24 16:07 797次阅读
    浅谈PLC<b class='flag-5'>定义</b><b class='flag-5'>数据类型</b>的应用

    西门子PLC UDT数据类型的使用方法

    西门子PLC(Programmable Logic Controller)的自定义数据类型(User Defined Type,简称UDT)是一种定义
    的头像 发表于 07-19 15:01 1626次阅读
    西门子PLC UDT<b class='flag-5'>数据类型</b>的使用方法

    西门子博途:使用PLC数据类型 (UDT)

    PLC 数据类型 (UDT) 是可自行定义且在程序中可以多次使用的数据结构。 此结构可包含不同数据类型的多个元素。 声明 PLC 数据类型
    的头像 发表于 07-12 17:36 4957次阅读
    西门子博途:使用PLC<b class='flag-5'>数据类型</b> (UDT)

    ARRAY 数据类型的变量

    中,系统将提供自动完成功能。 将打开“数组”对话框。 在“数据类型”文本框中,指定数组元素的数据类型。 在“ARRAY 限值”(ARRAY limits) 输入字段中,指定各维度的上限和下限
    的头像 发表于 07-06 11:08 642次阅读

    基本数据类型分享

    基本数据类型 基本数据类型:包括位、位序列、整数、浮点数、日期时间。此外字符也属于基本数据类型,请参见文档String与WString。 1.位和位序列 2.整数数据类型 3.浮点型实
    的头像 发表于 06-13 14:14 5796次阅读
    基本<b class='flag-5'>数据类型</b>分享

    GaussDB 数据类型介绍

    进行数据类型转换,以满足不同的需求。本文将以示例的形式罗列并介绍一些常见的数据类型转换方法等。  数据类型概念及特点 数据类型是一组值的集合以及定义
    的头像 发表于 06-05 16:40 1262次阅读
    GaussDB <b class='flag-5'>数据类型</b>介绍

    博途PLC1200/1500PLC用户自定义数据类型(UDT)

    用户自定义数据类型可以包含基本数据类型(例如,INT bool string),以及 数组 ,结构体,以及PLC的专有数据类型等,而且用户自定义
    发表于 04-20 09:46 2次下载
    博途PLC1200/1500PLC用户自<b class='flag-5'>定义</b><b class='flag-5'>数据类型</b>(UDT)