Verilog

CityHash分析和Verilog实现(二)

前面介绍了CityHash32中前3种场景下的算法实现,这里继续介绍最后一种,也是最复杂的一种

CityHash分析及Verilog实现(一)

Hash是FPGA设计中非常常见的一个功能。它是将一个Mbyte长度的数据通过hash计算变成一个Nbyte长度的数据

如何做好Verilog的代码检视(code review)

无论是FPGA还是ASIC的开发者,都或多或少地做过代码检视(code review)。

FPGA Base 循环、条件生成语句

在FPGA编码的时候,如果多使用生成块语句,敲代码的时间大大减少。但是,代码的可读性会更高。

别乱用 FULL_CASE 和 PARALLEL_CASE

case语句可以说是我们在FPGA开发中使用频率非常高的一条语句。同时,Verilog还提供了语句 casex 和 casez供我们使用。

在设计文件中,如何确定信号是reg型还是wire型?

当我们使用Verilog时,对于信号定义为reg型还是wire型比较混乱,那么今天我们就来讲一讲如何快速的进行信号定义。

Verilog设计中如何匹配变量的位宽?($clog2系统函数)

在FPGA设计中,我们经常需要用寄存器来寄存某些“数量类”的变量,比如FIFO的深度啦、或者计数器的最大值啦;又或者输入输出信号也需要将位宽用parameter参数化以便更好的调用等。

【ZYNQ Ultrascale+ MPSOC FPGA教程】第三章 Verilog基础模块介绍

本文主要介绍verilog基础模块,夯实基础,对深入学习FPGA会有很大帮助。

Verilog中Wire 和 Reg 的区别

wire 和reg是Verilog程序里的常见的两种变量类型,他们都是构成verilog程序逻辑最基本的元素。正确掌握两者的使用方法是写好verilog程序的前提。但同时,因为他们在大多数编程语言中不存在,很多新接触verilog语言的人并不能很清楚的区别两种变量的不同之处。这里简单对他们做一个比较,方便在编程时区别使用。

Verilog的基础语法

虽然Verilog硬件描述语言有很完整的语法结构和系统,这些语法结构的应用给设计描述带来很多方便。但是Verilog是描述硬件电路的,它是建立在硬件电路的基础上。有些语法结构是不能与实际硬件电弧对应起来的,比如for循环,它是不能映射实际的硬件电路的,因此,Verilog硬件描述语言分为可综合和不可综合语言。