0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通过实例设计来加深Verilog描述语法理解

454398 ? 来源:Xilinx学术合作 ? 作者:小鱼 ? 2021-01-02 09:45 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

作者:小鱼,Xilinx学术合作

一.概述

在文章《Verilog HDL入门思路梳理》我们说过应该如何去学习Verilog HDL描述。然而第一步,我们需要知道Verilog有哪些语法,它是否可以综合,可以用这个语法来描述什么逻辑功能电路呢?

其实Xilinx已经贴心地准备好了答案,还给你准备了一堆参考实例。

二. Verilog行为级描述
资料名称“Vivado Design Suite User Guide - Synthesis - UG901 (v2018.2) June 6, 2018”。(注:大家可以在Xilinx官网,或者安装DocNav(Xilinx Documentation Navigator) 并在这里面找到这份资料。)

资料的第7章《Verilog Language Support》就是介绍在Vivado里,可综合的Verilog描述语法以及描述方式。重点就是Verilog行为级描述(Behavioral Verilog)。

在了解了Vivado支持的可综合的Verilog描述语法之后,我们就可以通过实例设计来加深理解。从哪里可以找到这些实例设计呢?在Vivado里面就有,下面告诉你们如何找到它们。

1.打开Vivado工具,先新建一个工程。然后进入下页面。

pIYBAF9uHp-AEi6kAAP19mDW48k676.png

2. 在界面最上面一行菜单栏找到 “Tools”,点击 Tools-> Language Templates

o4YBAF9uHqSAfstbAART5iHj0Qs162.png

3. 将下图中的Verilog栏展开,在Synthesis Constructs栏就是我们可综合的常见Verilog描述。可以看到 Always ,Conditional里的case,条件选择赋值语句,if-else等常见的语法模型他都列出来了。在Coding Example里面有一些基础的电路模块的Verilog描述示例。

pIYBAF9uHqmAY3eoAATahmrhtnE522.png

4. 展开Coding Example,可看到基础的电路,如累加器,基础算术电路,逻辑门,输入输出端口比较器,计数器,解码器,常见的数字信号处理电路,译码器,寄存器(flip flops),逻辑移位器,Misc(有七段式数码管驱动,同步电路,防抖电路, 开漏输出端口,脉冲调制电路),多路选择器,RAMROM,移位寄存器,状态机,三态缓冲器等等的Verilog描述示例。

pIYBAF9uHq2AVZj8AANlcYlZW_Y087.png

5.在Example Module里面有更多的设计示例,如一些算法电路的设计。有了一些基础之后,就可以把这里的设计示例都看看。

o4YBAF9uHrCAGjDPAAIw7ece2CU485.png

对于初学者可以好好利用这些资料。把上面这些示例模板和示例设计学习并仿真一遍。主要是将Verilog描述与电路对应起来,在Vivado里面可以使用Schematic,把Verilog描述的电路原理图显示出来。

编辑:hfy


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

    关注

    30

    文章

    1368

    浏览量

    112568
  • Vivado
    +关注

    关注

    19

    文章

    835

    浏览量

    69180
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    verilog模块的调用、任务和函数

    在做模块划分时,通常会出现这种情形,某个大的模块中包含了一个或多个功能子模块,verilog通过模块调用或称为模块实例化的方式实现这些子模块与高层模块的连接的.
    的头像 发表于 05-03 10:29 ?809次阅读
    <b class='flag-5'>verilog</b>模块的调用、任务和函数

    FPGA Verilog HDL语法之编译预处理

    Verilog HDL语言和C语言一样也提供了编译预处理的功能。“编译预处理”是Verilog HDL编译系统的一个组成部分。Verilog HDL语言允许在程序中使用几种特殊的命令(它们不是一般
    的头像 发表于 03-27 13:30 ?719次阅读
    FPGA <b class='flag-5'>Verilog</b> HDL<b class='flag-5'>语法</b>之编译预处理

    一文详解Verilog HDL

    Verilog HDL(Hardware Description Language)是一种硬件描述语言,用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模。现实生活中多用于专用集成电路
    的头像 发表于 03-17 15:17 ?2733次阅读
    一文详解<b class='flag-5'>Verilog</b> HDL

    千兆网络PHY芯片RTL8211E的实践应用

    以太网MAC模块负责实现以太网MAC子层的功能,完成802.3ab的数据封装与解封。其同时负责适配硬件PHY的物理接口,组成物理层的通讯接口; 硬件系统的功能可以通过 Verilog HDL硬件描述语言在FPGA控制器内部
    的头像 发表于 03-17 13:56 ?5861次阅读
    千兆网络PHY芯片RTL8211E的实践应用

    浅谈Verilog和VHDL的区别

    Verilog和VHDL是两种广泛使用的硬件描述语言(HDL),它们用于描述和模拟数字电路系统的行为和结构。这两种语言的主要作用是帮助工程师设计、仿真和验证集成电路(IC)和系统级芯片(SoC)中的硬件模块。
    的头像 发表于 02-17 14:20 ?1722次阅读
    浅谈<b class='flag-5'>Verilog</b>和VHDL的区别

    如何理解芯片设计中的IP

    描述语言(如Verilog、VHDL)编写的电路设计,也可以是完成的电路板或者甚至是一些特定算法和技术。IP的使用大大提高了芯片设计的效率,避免了从头开始设计所有功能模块。下面详细解释芯片IP的几个关键点: 1. 芯片IP的定义与作用: 芯片IP类似于建筑中的标准化模块或
    的头像 发表于 02-08 10:43 ?1226次阅读

    Verilog 电路仿真常见问题 Verilog 在芯片设计中的应用

    在现代电子设计自动化(EDA)领域,Verilog作为一种硬件描述语言,已经成为数字电路设计和验证的标准工具。它允许设计师以高级抽象的方式定义电路的行为和结构,从而简化了从概念到硅片的整个设计流程
    的头像 发表于 12-17 09:53 ?1295次阅读

    Verilog 与 ASIC 设计的关系 Verilog 代码优化技巧

    Verilog与ASIC设计的关系 Verilog作为一种硬件描述语言(HDL),在ASIC设计中扮演着至关重要的角色。ASIC(Application Specific Integrated
    的头像 发表于 12-17 09:52 ?1144次阅读

    如何使用 Verilog 进行数字电路设计

    使用Verilog进行数字电路设计是一个复杂但有序的过程,它涉及从概念设计到实现、验证和优化的多个阶段。以下是一个基本的步骤指南,帮助你理解如何使用Verilog设计数字电路: 1.
    的头像 发表于 12-17 09:47 ?1424次阅读

    Verilog与VHDL的比较 Verilog HDL编程技巧

    理解。 VHDL :VHDL 的语法更接近于 Ada 语言,它是一种更正式的语言,具有丰富的数据类型和结构。VHDL 支持数据流、行为和结构化三种描述方式。 2. 可读性和可维护性 Veril
    的头像 发表于 12-17 09:44 ?1937次阅读

    Verilog硬件描述语言参考手册

    一. 关于 IEEE 1364 标准二. Verilog简介三. 语法总结四. 编写Verilog HDL源代码的标准五. 设计流程
    发表于 11-04 10:12 ?4次下载

    Verilog语法中运算符的用法

    verilog语法中使用以下两个运算符可以简化我们的位选择代码。
    的头像 发表于 10-25 15:17 ?2772次阅读
    <b class='flag-5'>Verilog</b><b class='flag-5'>语法</b>中运算符的用法

    Verilog HDL的基础知识

    本文继续介绍Verilog HDL基础知识,重点介绍赋值语句、阻塞与非阻塞、循环语句、同步与异步、函数与任务语法知识。
    的头像 发表于 10-24 15:00 ?1307次阅读
    <b class='flag-5'>Verilog</b> HDL的基础知识

    Verilog 如何做到心中有电路?

    :要在写 Verilog 代码时做到心中有电路,可以尝试以下方法: 深入学习数字电路基础知识:包括各种逻辑门、组合逻辑电路、时序逻辑电路的原理和结构,理解它们的工作方式和功能。 分解复杂电路:对于像乘法器
    发表于 09-26 20:30

    【「数字IC设计入门」阅读体验】+ 概观

    讲解了Verilog语言语法,没有写过Verilog代码,只知道它是一种描述语言,使用Verilog
    发表于 09-24 10:58