跳转至

实验 1:Verilog 语法

欢迎大家阅读我们的实验文档!

留下你的评论!

本次实验已开启评论系统。欢迎大家在相应的页面下方友好交流!

更新说明

Lab1 实验文档的改动情况如下:


1. 实验简介

在 Lab1 中,我们将要学习 Verilog 语言的基本知识,并进行简单的 Verilog 编程工作。

Verilog 的全称为 Verilog HDL,在不引起混淆的情况下,我们一般将其简称为 Verilog。Verilog 是目前在 FPGA 及数字 IC 设计中应用最为广泛的一种硬件描述语言

补充介绍:FPGA

FPGA(现场可编程门阵列,Field Programmable Gate Array)是专用集成电路(ASIC)领域中的一种半定制电路。FPGA 能够按照设计人员的需求配置指定的电路结构,让客户不必依赖由芯片制造商设计和制造的 ASIC 芯片就可以实现所需要的功能。它可以被重新编程以实现不同的逻辑功能,同时可以实现非常高效的逻辑运算,在某些应用中比传统的处理器更快,因而目前广泛应用在原型验证、通信、汽车电子、工业控制、航空航天、数据中心等领域中。

Image title

补充介绍:IC

IC(集成电路,Integrated Circuit)是一种微型电子器件或部件,采用一定的工艺,把一个电路中所需的晶体管、二极管、电阻、电容和电感等元件及布线互连一起,制作在一小块或几小块介质基片上并进行封装,成为具有所需电路功能的微型结构。

IC 按功能可分为:数字 IC、模拟 IC、微波 IC 及其他 IC。其中,数字 IC 就是传递、加工、处理数字信号的芯片,是当下应用最广、发展最快的芯片品种。

硬件描述语言(Hardware Description Language, HDL)是一种使用形式化方法描述逻辑电路和系统的语言。具体来说,用户借鉴层次化的设计思想完成自顶向下的基本单元电路设计,并进行功能仿真验证,随后使用自动综合工具将模块组合转换到门级电路网表,接下来再用专用布线工具把网表转换为要实现的具体电路结构。

HDL 语言借鉴和继承了一般高级语言的很多特点和语法结构,但二者存在如下的区别:

  1. 硬件描述语言具有时序(或时钟)的概念,而一般的高级程序语言则没有。在硬件电路中,信号通过物理器件实现电平的转换,这个过程存在一定的延迟,经过不同路径后的信号时序也会变得不同。为了准确、客观地表达电路的情况,HDL 语言必须引入时序的概念。

  2. 硬件描述语言具有并行处理的功能,即同一时刻并行执行多条代码。这和一般高级设计语言(如 C 语言等)串行执行的特征存在本质上的不同。

  3. 形式化表示电路的结构或行为。HDL 语言源于高级程序设计语言,其描述方法与高级语言相同,但更注重实现硬件电路具体连接结构的描述。HDL 语言与其说是在『写代码』,更像是在『画电路』。

目前主流的三大硬件描述语言为:Verilog、VHDL 以及 System Verilog。其中 Verilog 在电子信息集成化设计领域被广泛使用。在 Lab1 中,我们将对其语法特点及应用进行初步的介绍。

Image title

补充介绍:Verilog

如果你想了解更多 Verilog 相关的背景信息,可以点击这里

2. 实验目标

  1. 能够掌握基本的 Verilog 语法知识;
  2. 能够阅读并编写简易的 Verilog 代码;
  3. 能够将 Verilog 语言与硬件电路对应起来,理解硬件描述语言的内涵。

3. 实验内容

  1. 【必做】学习 Verilog 语言的基础语法知识(点击这里这里跳转)。

  2. 【选做】配置本地的 Verilog 开发环境(点击这里跳转)。

  3. 【必做】按要求完成 Lab1 的实验练习题(点击这里跳转)。

Tips:工作量有点大?

由于 Lab1 的主题是 Verilog 的语法知识,因此我们使用了大量的篇幅整理了其中关键的语法点。然而,这些知识并不会都在 Lab1 中使用到,而是在我们使用 Verilog 开发的这一年不断出现。因此,花费一定的时间,在一开始掌握较为系统、较为扎实的 Verilog 编程基础是很有必要的。

当然,如果你不想花费太多的时间,可以先阅读『实验练习』部分,根据题目内容有针对性地学习相应的知识点。

4. 提交说明

本次实验需要大家在 BB 平台上在线提交相关内容。你提交的文件结构应当满足下面的文件树格式:

labs/
└── lab1_[姓名]_[学号]_ver[尝试编号]
    ├── figs (图片文件夹,如果没有可以无此文件夹)
    ├── lab1_[姓名]_[学号].pdf      
    ├── src (涉及到的源文件,如果没有可以无此文件夹)               
    │   └── ......
    └── others (其他你打算提交的文件,如果没有可以无此文件夹)

请将全部文件按照上面的格式进行整理,压缩成一个压缩文件,最后提交到实验平台上。

关于实验报告

本学期《数字电路实验》的报告需要大家提交 PDF 格式。我们推荐大家使用 Markdown 或者 Latex 撰写实验报告,这样可以直接导出为 PDF。大家也可以使用 Word、WPS 等进行报告撰写,最后转换为 PDF 格式。我们不推荐也不拒绝大家手写实验报告,但请将其拍照扫描成 PDF 文件后再上传。我们不接受任何因为文件格式错误而导致成绩异常的申诉请求

在实验报告中,你需要给出每一次实验练习的答案,并附上必要的说明过程。

特别说明

实验报告的字数和排版与最终得分无关

实验文档中有一些我们为大家列出的思考点,这部分内容无需在实验报告上列出。除了要求的内容,我们也欢迎大家在实验报告中包含:

  • 对本次实验任务量的评价
  • 对本次实验的改进建议
  • 其他的吐槽 or 疑问
  • ......

注意

本次实验检查的 DDL 为 2023-10-12,报告提交的 DDL 为 2023-10-19。超出 DDL 的检查与报告提交将按照规定扣除部分分数。规则为:

  • 迟交两周以内的:得分 × 80%;
  • 迟交两周及以上的:得分 × 60%。

请保证个人实验的独立完成!


祝大家实验顺利!


最后更新: October 25, 2023

评论

Authors: wintermelon008