编辑推荐
本书分3部分,第部分(第~6章)是语法部分,详细讲解verilogHDL语法知识和基本应用;第2部分(第7~9章)是实例部分,通过从已公布的成熟源代码中精选的50多个具代表性的建模实例,辅以框图和详细注释帮者理解程序,从而学习典型电路单元的建模方法;第3部分(第0章)是系统设计实战,为初学者展示了一个小型系统的详细设计流程。本书内容丰富、实用性强,适合高等院校相关专业高年级学生和研究生学习和阅读,对参加相关工作的工程技术人员也有很强的参考价值。
目录
- 第1章 初识Verilog HDL
- 1.1 什么是Verilog HDL
- 1.2 主要功能
- 1.3 设计流程
- 1.4 基本结构
- 1.4.1 模块的概念
- 1.4.2 模块调用
- 1.4.3 测试模块
- 1.5 程序设计基础
- 1.5.1 程序格式
- 1.5.2 注释语句
- 1.5.3 标识符和关键词
- 1.5.4 参数声明
- 1.5.5 预处理指令
- 第2章 数据类型与表达式
- 2.1 数据类型
- 2.1.1 常量
- 2.1.2 变量
- 2.2 表达式
- 2.2.1 操作数
- 2.2.2 操作符
- 第3章 行为建模方法
- 3.1 数据流行为建模
- 3.1.1 连续赋值语句
- 3.1.2 线网声明赋值
- 3.1.3 时延的概念
- 3.1.4 线网时延
- 3.1.5 用数据流建模方式实现1位全加器
- 3.2 顺序行为建模
- 3.2.1 过程结构语句
- 3.2.2 时序控制
- 3.2.3 语句块
- 3.2.4 过程性赋值
- 3.2.5 if语句
- 3.2.6 case语句
- 3.2.7 循环语句
- 3.2.8 握手协议实例
- 第4章 结构建模方法
- 4.1 Verilog HDL内置基元
- 4.1.1 内置基本门
- 4.1.2 上拉、下拉电阻
- 4.1.3 MOS开关
- 4.1.4 双向开关
- 4.1.5 给基元定义时延
- 4.1.6 描述实例数组
- 4.1.7 内置基元建模实例
- 4.2 用户定义基元
- 4.2.1 UDP的定义
- 4.2.2 组合电路UDP
- 4.2.3 时序电路LIDP
- 4.2.4 Verilog HDL速记符号
- 4.2.5 电平触发和边沿触发混合的LIDP
- 4.3 模块实例化
- 4.3.1 端口关联方式
- 4.3.2 悬空端口
- 4.3.3 端口匹配
- 4.3.4 模块参数值
- 4.3.5 建模实例
- 4.4 行为描述和结构描述的混合使用
- 第5章 任务、函数及其他
- 5.1 任务
- 5.1.1 任务定义
- 5.1.2 任务调用
- 5.2 函数
- 5.2.1 函数定义
- 5.2.2 函数调用
- 5.3 系统任务和函数
- 5.3.1 显示任务
- 5.3.2 文件输入/输出任务
- 5.3.3 时间标度任务
- 5.3.4 仿真控制任务
- 5.3.5 时序验证任务
- 5.3.6 仿真时间函数
- 5.3.7 实数变换函数
- 5.3.8 随机函数
- 5.4 其他重要概念
- 5.4.1 禁止语句
- 5.4.2 命名事件
- 5.4.3 层次路径名
- 5.4.4 共享任务和函数
- 5.4.5 VCD文件
- 5.4.6 指定块
- 5.4.7 强度
- 第6章 编写测试程序
- 6.1 测试模块
- 6.2 产生输入信号
- 6.2.1 特定值序列
- 6.2.2 重复模式
- 6.3 从文本文件中读取向量
- 6.4 向文本文件中写入向量
- 6.5 测试程序实例
- 6.5.1 半加器
- 6.5.2 5位计数器
- 6.5.3 2选1选择器
- 6.5.4 2.4解码器
- 6.5.5 D触发器
- 第7章 初级建模实例
- 7.1 触发器
- 7.1.1 上升沿触发器
- 7.1.2 带异步复位端的上升沿触发器
- 7.1.3 带异步置位端的上升沿触发器
- 7.1.4 带异步复位端和异步置位端的上升沿触发器
- 7.1.5 带同步复位端的上升沿触发器
- 7.1.6 带同步置位端的上升沿触发器
- 7.1.7 带异步复位端和输出使能端的上升沿触发器
- 7.2 锁存器
- 7.2.1 带使能端的锁存器
- 7.2.2 可异步选通数据的锁存器
- 7.2.3 可选通使能端的锁存器
- 7.2.4 带异步复位端的锁存器
- 7.3 编码器
- 7.4 解码器
- 7.5 多路数据选择器
- 7.5.1 用if.else构造的4选1选择器
- 7.5.2 用case构造的4选1选择器
- 7.5.3 用case构造的12选1选择器
- 7.5.4 带忽略位的多路选择器
- 7.6 计数器
- 7.6.1 带计数使能端和异步复位端的8位计数器
- 7.6.2 可设定计数输出并带异步复位端的8位计数器
- 7.6.3 可设定计数输出并带使能端、进位端和复位端的8位计数器
- 7.7 输入输出缓冲器
- 7.7.1 三态缓冲器
- 7.7.2 双向缓冲器
- 7.8 加法器
- 7.8.1 半加器
- 7.8.2 全加器
- 7.8.3 串行进位加法器
- 7.8.4 超前进位加法器
- 7.9 移位寄存器
- 7.10 频率转换器
- 7.11 模数转换器
- 第8章 高级建模实例
- 8.1 状态机建模
- 8.1.1 乘法器状态机
- 8.1.2 交互状态机
- 8.1.3 Moore型有限状态机
- 8.1.4 Mealy型有限状态机
- 8.2 序列检测器
- 8.3 FIFO(先入先出电路)
- 8.3.1 16×16FIFO
- 8.3.2 4×16FIFO
- 8.4 uART(通用异步收发器)
- 第9章 程序综合实例
- 9.1 可综合设计
- 9.1.1 综合的概念
- 9.1.2 可综合
- 9.1.3 可综合及不可综合的结构
- 9.2 综合实例
- 9.2.1 组合逻辑电路
- 9.2.2 时序逻辑电路
- 9.2.3 存储器
- 9.2.4 布尔方程
- 9.2.5 有限状态机
- 9.2.6 通用移位寄存器
- 9.2.7 算术逻辑单元(ALU)
- 9.2.8 二进制计数器
- 9.2.9 加法器
- 9.2.10 数值比较器
- 9.2.11 解码器
- 9.2.12 三态门
- 9.2.13 序列检测器
- 第10章 系统设计实战
- 10.1 系统功能分析
- 10.1.1 计算机的基本结构
- 10.1.2 典型微处理器系统结构及工作原理
- 10.1.3 普通计算器的基本结构
- 10.2 系统设计规划
- 10.2.1 系统功能模块划分
- 10.2.2 键盘输入模块
- 10.2.3 寄存器组
- 10.2.4 算术逻辑单元
- 10.2.5 显示部分
- 10.2.6 系统结构
- 10.3 程序设计与仿真
- 10.3.1 键盘输入模块程序与仿真
- 10.3.2 ALu模块程序与仿真
- 10.3.3 显示部分程序与仿真
- 10.3.4 顶层模块程序设计
- 10.4 逻辑综合