亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> Verilog

Verilog基础:设计你的第一个与门

Verilog是硬件描述语言(HDL),赋能工程师为FPGA与ASIC建模、仿真、综合数字逻辑。与孪生兄弟VHDL并列,Verilog是学术课程与商业产品开发的行业标准语言。

若您初涉可编程逻辑或硅设计,本指南带您走过Verilog基础,构建简单与门——每个数字系统基石元件。

不同于Java或C等高级软件语言,Verilog在门级描述硬件。结果代码可直接映射到硅,赋予设计师对时序、功耗、面积的精细控制。

下图为我们将用Verilog建模的经典双输入与门。

Verilog基础:设计你的第一个与门

让我们深入Verilog实现。

Verilog中构建块是wire。本例将wire视为仅能为0或1的二进制信号。

 wire and_temp; assign and_temp = input_1 & input_2; 

第一行声明名为and_temp的wire。第二行将其赋为input_1与input_2逻辑与结果。Verilog中&为布尔与算子。

模块暴露的所有信号列于module头部。module关键字引入含定义输入输出的自包含代码块。

 module example_and_gate ( input_1, input_2, and_result ); input input_1; input input_2; output and_result; 

最后将内部and_temp信号连接到外部and_result输出并闭合模块。

 /////////////////////////////////////////////////////////////////////////////// // File Downloaded from https://www.nandland.com /////////////////////////////////////////////////////////////////////////////// module example_and_gate ( input_1, input_2, and_result ); input input_1; input input_2; output and_result; wire and_temp; assign and_temp = input_1 & input_2; assign and_result = and_temp; endmodule // example_and_gate 

恭喜——您写下第一个Verilog模块!HDL语法虽较常规软件显冗长,却为硬件设计提供无与伦比精度。练习后您将实现从简单逻辑门到完整图形管线的一切。

Verilog

  1. Verilog 入门:数字电路设计完整教程
  2. 掌握 Verilog 拼接操作:实用指南
  3. 深入理解 Verilog 赋值语句:类型、语法与最佳实践
  4. Verilog阻塞与非阻塞赋值:关键区别详解
  5. 掌握Verilog函数:高效RTL设计的复用利器
  6. 理解Verilog任务:函数vs任务、语法与用法全解析
  7. Verilog 时钟发生器设计与实现指南
  8. 掌握 Verilog 数学函数:高效硬件设计的利器
  9. 掌握 Verilog $timeformat:精度控制与显示格式化
  10. 理解与打印 Verilog 任意作用域下的 Timescale
  11. 掌握 Verilog 文件 I/O:打开、读取、写入和关闭
  12. Verilog 入门指南:Hello World 示例