![pYYBAGPkmCCAXeWzAATM_c-YpNI014.png](https://file.elecfans.com/web2/M00/90/04/pYYBAGPkmCCAXeWzAATM_c-YpNI014.png)
除了前面幾篇文章討論的內置數據類型之外,SystemVerilog還為工程師定義新的數據類型提供了一種機制。用戶定義的數據類型允許從現有數據類型創建新的類型定義。
用戶自定義類型是使用typedef關鍵字創建的。例如:
![poYBAGPkmCyAG53wAACHpmtB0Yo192.png](https://file.elecfans.com/web2/M00/8F/80/poYBAGPkmCyAG53wAACHpmtB0Yo192.png)
一旦定義了新的數據類型,就可以用來定義新數據類型的變量和網絡:
![poYBAGPkmDeAQ5-5AACRAKyV8DQ177.png](https://file.elecfans.com/web2/M00/8F/80/poYBAGPkmDeAQ5-5AACRAKyV8DQ177.png)
用戶自定義類型的命名約定
用戶自定義類型名可以是任何合法標識符。在大型設計中,定義用戶自定義類型的源代碼和使用該類型的源代碼可以由多行代碼分隔,并且可以位于不同的文件中。如果用戶自定義類型的名稱與用于模塊、網絡或變量的名稱相似,那么typedef定義和類型用法的這種分離可能會使代碼難以讀取和維護。
為了使源代碼更易于閱讀和維護,typedef名稱應該使用一種命名約定,使名稱明顯代表用戶自定義類型。兩種常見的命名約定是在用戶自定義類型名稱中添加“_t”后綴或“t_”前綴。本文系列文章慣例使用“_t”后綴慣例。
局部typedef聲明
用戶自定義類型可以在模塊或接口中局部定義。局部typedef聲明類型只能在定義它的模塊或接口中使用。構成總體設計的其他模塊或接口不能引用該類型的用戶自定義類型。
共享typedef定義-Shared typedef definitions
當用戶自定義類型要在許多不同的模型中使用時,可以在包中聲明typedef定義以供其他模塊使用。
-
Verilog
+關注
關注
28文章
1351瀏覽量
110397 -
System
+關注
關注
0文章
165瀏覽量
37078 -
數據類型
+關注
關注
0文章
236瀏覽量
13663
發布評論請先 登錄
相關推薦
![](https://file1.elecfans.com/web2/M00/89/0C/wKgaomR3RaeADfYmAAAunOjKKLw719.png)
![](https://file1.elecfans.com/web2/M00/89/0C/wKgaomR3RaqAA51MAADwcqiACoE363.png)
第34章 窗口管理器實例(一)
【emWin實戰教程V2.0】第37章 窗口管理器實例(含自定義消息)
SV Structure作為module的input/output
C語言入門教程-指向結構體的指針
ProDAQ6150-LXI絕緣熱電偶測試單元的性能特點分析
SystemVerilog為工程師定義新的數據類型提供了一種機制
博途PLC1200/1500PLC用戶自定義數據類型(UDT)
![博途PLC1200/1500PLC<b class='flag-5'>用戶</b><b class='flag-5'>自定義</b>數據<b class='flag-5'>類型</b>(UDT)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論