![]()
内容推荐 Verilog HDL是一种广泛应用的硬件描述语言,无论是专用集成电路设计,还是嵌入式FPGA开发,都会使用Verilog HDL语言进行编程。 本书力求让读者快速掌握关键语法,能够在短时间内结合核心语法完成设计,同时注意梯度设置,引导读者从简单模块到复杂设计,逐渐掌握Verilog HDL。全书语法简洁,重点突出,语句凝练,具有工程设计的风格。 为了更好地配合学习,书中设有习题和相应解答,并配备了多个实验,所有代码均经过仿真,完整的实例均可供下载,方便读者调试和使用。对于重点和难点,辅以视频教学,能更好地帮助读者理解和掌握。 本书可作为电子、通信、计算机、自动化及集成电路设计相关专业的本科生教材,同时也适合对Verilog HDL感兴趣的爱好者或专业人士阅读。 目录 原理篇 第1章 入门简介及环境准备 1.1 Verilog简介 1.1.1 Verilog的作用 1.1.2 Verilog的发展 1.1.3 Verilog的使用 1.1.4 Verilog的结构 1.2 准备好工作环境 1.2.1 仿真软件的准备 1.2.2 代码编辑软件的准备 1.2.3 其他工具介绍 1.3 如何使用本书 第2章 模块结构与门级建模 2.1 Verilog模块的基本结构 2.2 语法介绍及示例 2.2.1 模块定义 2.2.2 端口声明 2.2.3 内部资源声明 2.2.4 功能描述 2.3 门级补充说明 练习题 第3章 模块的实例化与层次化建模 3.1 模块的实例化 3.1.1 实例化示例及语法 3.1.2 按顺序连接方式 3.1.3 按名称连接方式 3.2 层次化建模 3.2.1 自顶向下的设计 3.2.2 层次化名称 3.2.3 层次化建模实例 练习题 第4章 使用仿真软件验证设计 4.1 仿真前的准备 4.2 完整的仿真流程 4.2.1 建立工程 4.2.2 添加文件 4.2.3 编译与调试 4.2.4 启动仿真 4.2.5 观察结果 练习题 第5章 RTL建模语法——assign 5.1 assign语句 5.2 操作数 5.2.1 数值 5.2.2 参数 5.3 按位操作符 练习题 第6章 操作符与优先级 6.1 操作符 6.1.1 算术操作符 6.1.2 逻辑操作符 6.1.3 关系操作符 6.1.4 等式操作符 6.1.5 移位操作符 6.1.6 拼接操作符 6.1.7 缩减操作符 6.1.8 条件操作符 6.2 操作符优先级 练习题 第7章 RTL建模语法——always 7.1 always语句 7.1.1 使用示例 7.1.2 always语法介绍 7.2 顺序块与并行块 7.3 if语句 7.4 case语句 练习题 第8章 赋值语句与循环语句 8.1 赋值语句 8.1.1 阻塞赋值语句 8.1.2 非阻塞赋值语句 8.1.3 两种赋值语句对比 8.2 initial结构 8.3 循环语句 8.3.1 while循环 8.3.2 for循环 8.3.3 repeat循环 8.3.4 forever循环 练习题 第9章 任务与函数的使用 9.1 任务 9.2 函数 9.3 常见的系统任务和系统函数 9.3.1 显示输出任务 9.3.2 仿真控制任务$stop和$finish 9.3.3 随机函数 9.3.4 文件控制任务 9.3.5 存储器读取任务 练习题 第10章 测试模块的编写 10.1 测试模块的结构 10.2 编译指令 10.2.1 `define 10.2.2 `include 10.2.3 `timescale 10.2.4 `ifdef、`else和`endif 10.3 激励信号的设计 10.3.1 时钟与复位 10.3.2 测试向量 10.4 信号的控制 10.5 响应监控 10.6 任务的使用 第11章 综合的概念及相关 11.1 逻辑综合过程 11.2 时序信息的声明 11.3 代码风格的推荐 11.3.1 多重驱动问题 11.3.2 敏感列表不完整 11.3.3 if和case不完整 11.3.4 组合和时序混合设计 11.4 可综合模型的结构 第12章 摩尔型状态机 12.1 摩尔型电路与状态转换图 12.2 编写摩尔型状态机 第13章 米利型状态机 13.1 米利型电路与状态转换图 13.2 编写米利型状态机 第14章 时序相关问题 14.1 流水线 14.2 乒乓操作 14.3 同步操作与异步操作 第15章 代码范例——基础篇 15.1 触发器与存储器 15.2 编解码器 15.3 计数器 15.4 分频器 15.5 乘法器 第16章 代码范例——提高篇 16.1 同步FIFO 16.2 堆栈 16.3 模乘运算 16.4 浮点加法器 第17章 代码范例——高级篇 17.1 霍夫曼编码器设计 17.1.1 基本原理 17.1.2 设计说明 17.1.3 代码实现 17.1.4 仿真验证 17.2 霍夫曼解码器设计 17.2.1 基本原理 17.2.2 设计说明 17.2.3 代码实现 17.2.4 仿真验证 17.3 简易CPU设计 17.3.1 基本要求 17.3.2 指令格式 17.3.3 划分子模块 17.3.4 控制模块设计 17.3.5 其余子模块设计 17.3.6 功能仿真与时序仿真 实验篇 实验1 门级建模及仿真 实验2 使用assign语句建模 实验3 使用always结构建模 实验4 任务与函数的使用 实验5 测试模块的设计 实验6 有限状态机的设计 实验7 流水线乘法器 实验8 汉明码模块设计 实验9 计时器设计 实验10 二进制转BCD码 习题答案 |