Verilog数据类型(Data Types)
来源:互联网 发布:java获取泛型的class 编辑:程序博客网 时间:2024/06/05 19:52
Verilog数据类型(Data Types)
Verilog有两组主要的数据类型:网络数据类型(Net Data Type)和寄存器数据类型(Register Data Type)。其他的数据类型有:事件(Event)、参数(Parameter)和范围(Specparam)以及其他数据类型。
网络数据类型(Net Data Type)
网络数据用来将元件连接起来。
语法
net_type [ expansion ] [ size ] #( delay ) net_name, net_name, ...;net_type [ expansion ] [ ( strength ) ] [ size ] #( delay ) net_name = expression; // declaration with // continuous assignmentnet_type [ size ] memory_name [ array_size [ array_size] ...; // Multi-dimensional arrayexpansion = scalared | vectored
网络数据类型类型如下:
wire or tri
simple interconnecting wire
wor or trior
wired outputs OR together
wand or triand
wired outputs AND together
tri0
pulls down when tri-stated
tri1
pulls up when tri-stated
supply0
constant logic 0 (supply strength)
supply1
constant logic 1 (supply strength)
trireg
stores last value when tri-stated (capacitance strength)
例程
wire [7:0] Data;trireg (large) C1;wire Q = A || B; // continuous assignmentwire [7:0] Array [0:255][0:255][0:255]; // Verilog-2001 Multidimensional array
寄存器数据类型(Register Data Type)
寄存器数据类型用来存储值。
语法
register_type [ size ] variable_name, variable_name, ...;register_type [ size ] variable_name = initial_value;register_type [ size ] memory_name [ array_size ]; register_type [ size ] memory_name [ array_size ] [ array_size ] ...; // Multi-dimensional array
寄存器数据类型如下:
reg
unsigned variable of any bit size
integer
signed 32-bit variable
time
unsigned 64-bit variable
real or realtime
double-precision floating point variable
例程
reg [7:0] Data;integer Int;time Now;reg [15:0] Memory [0:1023]; reg [7:0] A = 8'h3C; // Verilog-2001reg [7:0] Array [0:255][0:255][0:255]; // Verilog-2001
事件(Event)
事件用来同步并发操作。
语法
event event_name, ...; // event declaration-> event_name; // trigger the event
例程
event EventName; // event declarationinitial begin #50; -> EventName; // example of event triggeringendalways @EventName // example of waiting for an event Q <= 0;
参数(Parameter)
参数为常量值。
语法
parameter parameter_name = constant_expression;
例程
parameter Size = 4;parameter Number = 3.82;parameter ClkCycle = Frequency / 2;
范围(Specparam)
范围表示值在一个范围内变话。其用法类似于参数常量值,但只能在特定块内使用。
语法
specparam parameter_name = constant_expression;
例程
specparam TRise = 1.2;specparam T1 = 2:3:4; // min:typ:max
- Verilog数据类型(Data Types)
- VHDL数据类型(Data Types)
- MFC 数据类型 (data types)
- MFC数据类型(data types)
- Rust - Data types | 数据类型
- spark 数据类型(Data Types)
- Windows Data Types(VC VS .NET windows数据类型)
- 1.2 C++变量和数据类型 (Variables and Data types )
- 三、集合数据类型Collection Data Types
- Java的Basic Data Types数据类型-笔记
- Spark MLlib学习(一)数据类型 Data Types
- Ethercat基本数据类型(Ethercat Base Data Types)
- Data Types and Data Structures (数据类型和数据结构)
- Entity Framework Code First (七)空间数据类型 Spatial Data Types
- MFC 資料型態(data types)
- pyspark-MLlib(Data Types)
- Data Types
- Data Types
- Mybatis实战之自定义TypeHandler处理枚举
- FilterDispatcher <<< is deprecated! Please use the new filters!
- c++第一次试验-1健康标准
- IntelliJ IDEA使用maven实现tomcat的热部署
- MLY翻译 -- 2.How to use this book to help your team?
- Verilog数据类型(Data Types)
- xposed 的编译
- eclipse调试java程序的九个技巧
- MLY翻译 -- 3.Prerequisites and Notation
- 非递归二叉树的序列打印练习
- xposed 框架创建以及初始化
- 接口中同一个方法不写public,为什么在实现类中一定要写public呢?
- Python(Pygame)事件处理
- UEFI+GPT分区 装win8 ubuntu双系统实战成功——实战机型索尼SVS15,适用所有UEFI启动的