展开全部

主编推荐语

数字系统设计教程:以Intel平台、Verilog HDL为基础,全面探讨数字电路逻辑与实现。

内容简介

本书以Intel公司的Quartus Prime Standard 18.1集成开发环境作为复杂数字系统设计的平台,以基础的数字逻辑和数字电路知识为起点,以Intel公司的MAX 10系列可编程逻辑器件和Verilog HDL为载体,详细介绍了数字系统中基本逻辑单元的RTL描述方法。在此基础上,实现了复杂数字系统、处理器系统、片上嵌入式系统、视频图像采集和处理系统,以及数模混合系统。全书共12张,内容主要包括数字逻辑基础、数字逻辑电路、可编程逻辑器件原理、Quartus Prime Standard集成开发环境的原理图设计流程、Quartus Prime集成开发环境的HDL设计流程、Verilog HDL规范、基本数字逻辑单元的Verilog HDL描述、复杂数字系统的设计和实现、处理器核的原理及设计与进阶、片上嵌入式系统的构建与实现、视频图像采集和处理系统的原理与实现,以及数模混合系统的设计。

目录

  • 封面
  • 版权信息
  • 内容简介
  • 英特尔FPGA中国创新中心系列丛书组委会
  • 推荐序(一)
  • 张瑞 英特尔FPGA中国创新中心 总经理
  • 推荐序(二)
  • 前言
  • 学习说明
  • 第1章 数字逻辑基础
  • 1.1 数字逻辑的发展史
  • 1.2 SPICE仿真工具基础
  • 1.2.1 SPICE的分析功能
  • 1.2.2 SPICE的分析流程
  • 1.3 开关系统
  • 1.3.1 0和1的概念
  • 1.3.2 开关系统的优势
  • 1.3.3 晶体管作为开关
  • 1.3.4 半导体物理器件
  • 1.3.5 半导体逻辑电路
  • 1.3.6 逻辑电路符号
  • 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.6 逻辑代数理论
  • 1.6.1 逻辑代数中的运算关系
  • 1.6.2 逻辑函数表达式
  • 1.7 逻辑表达式的化简
  • 1.7.1 使用运算律化简逻辑表达式
  • 1.7.2 使用卡诺图化简逻辑表达式
  • 1.7.3 不完全指定逻辑功能的化简
  • 1.7.4 输入变量的卡诺图表示
  • 1.8 毛刺的产生及消除
  • 1.9 数字码制的表示和转换
  • 1.9.1 数字码制表示
  • 1.9.2 数字码制之间的转换
  • 第2章 数字逻辑电路
  • 2.1 组合逻辑电路
  • 2.1.1 编码器
  • 2.1.2 译码器
  • 2.1.3 码转换器
  • 2.1.4 多路选择器
  • 2.1.5 数字比较器
  • 2.1.6 加法器
  • 2.1.7 减法器
  • 2.1.8 加法器/减法器
  • 2.1.9 乘法器
  • 2.2 时序逻辑电路
  • 2.2.1 时序逻辑电路的类型
  • 2.2.2 时序逻辑电路的特点
  • 2.2.3 基本SR锁存器
  • 2.2.4 同步SR锁存器
  • 2.2.5 D锁存器
  • 2.2.6 D触发器
  • 2.2.7 其他触发器
  • 2.2.8 普通寄存器
  • 2.2.9 移位寄存器
  • 2.3 存储器
  • 2.3.1 存储器的分类
  • 2.3.2 存储器的工作原理
  • 2.3.3 易失性存储器
  • 2.3.4 非易失性存储器
  • 2.4 有限自动状态机
  • 2.4.1 有限自动状态机原理
  • 2.4.2 状态图的表示及实现
  • 2.4.3 三位计数器设计与实现
  • 第3章 可编程逻辑器件原理
  • 3.1 可编程逻辑器件的发展历史
  • 3.2 可编程逻辑器件的典型工艺
  • 3.3 简单可编程逻辑器件的结构
  • 3.3.1 PROM的内部结构
  • 3.3.2 PAL的内部结构
  • 3.3.3 PLA的内部结构
  • 3.4 复杂可编程逻辑器件的结构
  • 3.4.1 逻辑阵列块
  • 3.4.2 宏单元
  • 3.4.3 扩展器乘积项
  • 3.4.4 可编程互联阵列
  • 3.4.5 I/O控制块
  • 3.5 现场可编程门阵列的结构
  • 3.5.1 查找表结构原理
  • 3.5.2 MAX 10系列的器件的特性
  • 3.5.3 逻辑阵列模块
  • 3.5.4 嵌入式存储器
  • 3.5.5 嵌入式乘法器
  • 3.5.6 时钟和相位锁相环
  • 3.5.7 通用I/O
  • 3.5.8 高速LVDS I/O
  • 3.5.9 外部存储器接口
  • 3.5.10 模数转换器
  • 3.5.11 配置方案
  • 3.5.12 用户闪存
  • 3.5.13 电源管理
  • 第4章 Quartus Prime Standard集成开发环境的原理图设计流程
  • 4.1 Quartus Prime Standard集成开发环境的概述
  • 4.2 Quartus Prime Standard集成开发环境的下载和安装
  • 4.3 获取Quartus Prime Standard集成开发环境的许可文件
  • 4.4 设计原理
  • 4.5 建立新的设计工程
  • 4.6 添加原理图设计文件
  • 4.7 添加引脚约束文件
  • 4.8 生成编程文件并下载设计
  • 第5章 Quartus Prime集成开发环境的HDL设计流程
  • 5.1 Quartus Prime集成开发环境的设计流程
  • 5.2 设计原理
  • 5.3 建立新的设计工程
  • 5.4 创建Verilog HDL设计文件
  • 5.5 分析和综合
  • 5.5.1 执行分析和综合过程
  • 5.5.2 查看分析和综合报告
  • 5.5.3 查看分析和综合的网表结构
  • 5.6 行为仿真
  • 5.6.1 使用波形文件生成测试向量
  • 5.6.2 使用Verilog HDL生成测试向量
  • 5.7 添加约束条件
  • 5.8 设计的适配
  • 5.8.1 启动设计的适配过程
  • 5.8.2 查看适配后的报告
  • 5.8.3 查看适配后的网表结构
  • 5.9 时序分析
  • 5.10 设计的装配
  • 5.11 设计的下载
  • 5.12 编程器件内的存储器
  • 第6章 Verilog HDL规范
  • 6.1 Verilog HDL的发展
  • 6.2 Verilog HDL的程序结构
  • 6.2.1 模块的声明
  • 6.2.2 模块中端口的定义
  • 6.2.3 逻辑功能的定义
  • 6.3 Verilog HDL的描述方式
  • 6.3.1 行为级描述
  • 6.3.2 数据流描述
  • 6.3.3 结构级描述
  • 6.3.4 开关级描述
  • 6.4 Verilog HDL的要素
  • 6.4.1 注释
  • 6.4.2 间隔符
  • 6.4.3 标识符
  • 6.4.4 关键字
  • 6.4.5 系统任务和函数
  • 6.4.6 编译器指令
  • 6.4.7 运算符
  • 6.4.8 数字
  • 6.4.9 字符串
  • 6.4.10 属性
  • 6.5 Verilog HDL数据类型
  • 6.5.1 值的集合
  • 6.5.2 网络和变量
  • 6.5.3 向量
  • 6.5.4 强度
  • 6.5.5 隐含声明
  • 6.5.6 网络类型
  • 6.5.7 寄存器类型
  • 6.5.8 整型、实数型、时间型和实时时间型变量的声明
  • 6.5.9 数组
  • 6.5.10 参数
  • 6.5.11 Verilog HDL中的名字空间
  • 6.6 Verilog HDL中的表达式
  • 6.6.1 操作符
  • 6.6.2 操作数
  • 6.6.3 延迟表达式
  • 6.6.4 表达式的位宽
  • 6.6.5 有符号表达式
  • 6.6.6 分配和截断
  • 6.7 Verilog HDL中的分配
  • 6.7.1 连续分配
  • 6.7.2 过程分配
  • 6.8 Verilog HDL的门级和开关级描述
  • 6.8.1 门和开关声明
  • 6.8.2 逻辑门
  • 6.8.3 输出门
  • 6.8.4 三态门
  • 6.8.5 MOS开关
  • 6.8.6 双向传输开关
  • 6.8.7 CMOS开关
  • 6.8.8 pull门
  • 6.9 Verilog HDL用户自定义原语
  • 6.9.1 UDP的定义
  • 6.9.2 组合逻辑电路的UDP
  • 6.9.3 电平触发的时序UDP
  • 6.9.4 边沿触发的时序UDP
  • 6.9.5 边沿和电平触发的混合行为
  • 6.10 Verilog HDL行为级描述语句
  • 6.10.1 过程语句
  • 6.10.2 过程连续分配
  • 6.10.3 条件语句
  • 6.10.4 case语句
  • 6.10.5 循环语句
  • 6.10.6 过程时序控制
  • 6.10.7 语句块
  • 6.10.8 结构化的过程
  • 6.11 Verilog HDL中的任务和函数
  • 6.11.1 任务和函数的区别
  • 6.11.2 定义和使能任务
  • 6.11.3 禁止命名的块和任务
  • 6.11.4 函数的声明与调用
  • 6.12 Verilog HDL层次化结构
  • 6.12.1 模块和模块例化
  • 6.12.2 覆盖模块参数值
  • 6.12.3 端口
  • 6.12.4 生成结构
  • 6.12.5 层次化的名字
  • 6.12.6 向上名字引用
  • 6.12.7 范围规则
  • 6.13 Verilog HDL设计配置
  • 6.13.1 配置格式
  • 6.13.2 库
  • 6.13.3 配置例子
  • 6.14 Verilog HDL指定块
  • 6.14.1 路径的声明
  • 6.14.2 为路径分配延迟
  • 6.14.3 混合模块路径延迟和分布式延迟
  • 6.14.4 驱动布线逻辑
  • 6.14.5 脉冲过滤行为的控制
  • 6.15 Verilog HDL时序检查
  • 6.15.1 使用一个稳定窗口检查时序
  • 6.15.2 时钟和控制信号的时序检查
  • 6.15.3 边沿控制标识符
  • 6.15.4 提示符:用户定义对时序冲突的响应
  • 6.15.5 使能带有条件的时序检查
  • 6.15.6 时序检查中的矢量信号
  • 6.15.7 负时序检查
  • 6.16 Verilog HDL SDF逆向注解
  • 6.16.1 SDF注解器
  • 6.16.2 映射SDF结构到Verilog
  • 6.16.3 多个注解
  • 6.16.4 多个SDF文件
  • 6.16.5 脉冲限制注解
  • 6.16.6 SDF到Verilog延迟值映射
  • 6.17 Verilog HDL系统任务和函数
  • 6.17.1 显示任务
  • 6.17.2 文件I/O任务和函数
  • 6.17.3 时间标度任务
  • 6.17.4 仿真控制任务
  • 6.17.5 随机分析任务
  • 6.17.6 仿真时间函数
  • 6.17.7 转换函数
  • 6.17.8 概率分布函数
  • 6.17.9 命令行输入
  • 6.17.10 数学函数
  • 6.18 Verilog HDL的VCD文件
  • 6.18.1 Vivado创建四态VCD文件
  • 6.18.2 Verilog源创建四态VCD文件
  • 6.18.3 四态VCD文件格式
  • 6.19 Verilog HDL编译器指令
  • 6.19.1 `celldefine和`endcelldefine
  • 6.19.2 `default_nettype
  • 6.19.3 `define和`undef
  • 6.19.4 `ifdef、`else、`elsif、`endif、`ifndef
  • 6.19.5 `include
  • 6.19.6 `resetall
  • 6.19.7 `line
  • 6.19.8 `timescale
  • 6.19.9 `unconnected_drive和`nounconnected_drive
  • 6.19.10 `pragma
  • 6.19.11 `begin_keywords和`end_keyword
  • 6.20 Verilog HDL(IEEE 1364—2005)关键字列表
  • 第7章 基本数字逻辑单元的Verilog HDL描述
  • 7.1 组合逻辑电路的Verilog HDL描述
  • 7.1.1 逻辑门的Verilog HDL描述
  • 7.1.2 编码器的Verilog HDL描述
  • 7.1.3 译码器的Verilog HDL描述
  • 7.1.4 多路选择器的Verilog HDL描述
  • 7.1.5 数字比较器的Verilog HDL描述
  • 7.1.6 总线缓冲器的Verilog HDL描述
  • 7.2 数据运算操作的Verilog HDL描述
  • 7.2.1 加法操作的Verilog HDL描述
  • 7.2.2 减法操作的Verilog HDL描述
  • 7.2.3 乘法操作的Verilog HDL描述
  • 7.2.4 除法操作的Verilog HDL描述
  • 7.2.5 算术逻辑单元的Verilog HDL描述
  • 7.3 时序逻辑电路的Verilog HDL描述
  • 7.3.1 触发器和锁存器的Verilog HDL描述
  • 7.3.2 计数器的Verilog HDL描述
  • 7.3.3 移位寄存器的Verilog HDL描述
  • 7.3.4 脉冲宽度调制的Verilog HDL描述
  • 7.4 存储器的Verilog HDL描述
  • 7.4.1 ROM的Verilog HDL描述
  • 7.4.2 RAM的Verilog HDL描述
  • 7.5 有限自动状态机的Verilog HDL描述
  • 7.5.1 FSM的设计原理
  • 7.5.2 FSM的应用——序列检测器的实现
  • 7.5.3 FSM的应用——交通灯的实现
  • 7.6 算法状态机的Verilog HDL描述
  • 7.6.1 算法状态机的原理
  • 7.6.2 ASM到Verilog HDL的转换
  • 第8章 复杂数字系统的设计与实现
  • 8.1 设计所用外设的原理
  • 8.1.1 LED的驱动原理
  • 8.1.2 开关的驱动原理
  • 8.1.3 按键的驱动原理
  • 8.1.4 七段数码管的驱动原理
  • 8.1.5 VGA显示器的原理
  • 8.2 系统中各个模块的功能
  • 8.3 创建新的设计工程
  • 8.4 Verilog HDL复杂数字系统的设计流程
  • 8.4.1 创建分频管驱动模块1(divclk1.v)
  • 8.4.2 创建分频时钟模块2(divclk2.v)
  • 8.4.3 创建分频时钟模块3(divclk3.v)
  • 8.4.4 创建呼吸流水灯模块(pwm_led.v)
  • 8.4.5 创建七段数码管驱动模块(seg7display.v)
  • 8.4.6 创建VGA显示驱动模块
  • 8.4.7 创建顶层模块(top.v)
  • 8.5 添加引脚约束条件
  • 8.6 设计的处理与下载
  • 第9章 处理器核的原理、设计与进阶
  • 9.1 简单处理器核的设计原理
  • 9.2 简单处理器核的设计与实现
  • 9.2.1 处理器核的设计
  • 9.2.2 处理器核的行为级仿真
  • 9.2.3 为处理器核添加引脚约束条件
  • 9.2.4 简单处理器核设计的处理与验证
  • 9.3 由简单处理器核构成处理器系统
  • 9.4 扩展处理器核的设计原理
  • 9.5 扩展处理器核的设计与实现
  • 9.6 添加七段数码管控制器模块
  • 9.7 添加状态寄存器模块
  • 第10章 片上嵌入式系统的构建与实现
  • 10.1 片上嵌入式系统的概念
  • 10.1.1 Cortex-M的片上系统的优势
  • 10.1.2 不同类型的Arm处理器
  • 10.1.3 Arm的DesignStart计划
  • 10.2 AMBA
  • 10.2.1 AMBA的特性
  • 10.2.2 AMBA的历史
  • 10.3 AHB
  • 10.3.1 不同版本的AHB协议
  • 10.3.2 AHB信号
  • 10.3.3 基本操作
  • 10.3.4 最小的AHB系统
  • 10.3.5 多个总线主设备的管理
  • 10.3.6 地址阶段的信号
  • 10.3.7 数据阶段的信号
  • 10.3.8 传统的仲裁器握手信号
  • 10.3.9 独占访问操作
  • 10.3.10 AHB5 TrustZone支持
  • 10.4 APB
  • 10.4.1 APB系统的介绍
  • 10.4.2 APB信号和连接
  • 10.4.3 APB协议v2.0中的其他信号
  • 10.4.4 APB上的数据值
  • 10.4.5 不同版本APB元件的混合
  • 10.5 Cortex-M0处理器的功能和结构
  • 10.5.1 Cortex-M0处理器的功能
  • 10.5.2 Cortex-M0处理器的结构
  • 10.6 Cortex-M0处理器中的寄存器组
  • 10.6.1 通用寄存器
  • 10.6.2 堆栈指针
  • 10.6.3 程序计数器
  • 10.6.4 链接寄存器
  • 10.6.5 程序状态寄存器
  • 10.6.6 中断屏蔽特殊寄存器
  • 10.6.7 特殊寄存器
  • 10.7 Cortex-M0处理器中存储器的空间映射
  • 10.8 Cortex-M0处理器中程序的镜像原理及生成方法
  • 10.9 Cortex-M0处理器中的端及其分配
  • 10.10 Cortex-M0处理器中的异常及其处理
  • 10.10.1 异常的原理
  • 10.10.2 异常的优先级
  • 10.10.3 向量表
  • 10.10.4 异常的类型
  • 10.11 Cortex-M0处理器的指令系统
  • 10.11.1 Thumb指令集
  • 10.11.2 汇编语言的格式
  • 10.11.3 寄存器访问指令-MOVE
  • 10.11.4 寄存器访问指令-LOAD
  • 10.11.5 存储器访问指令-STORE
  • 10.11.6 多数据访问指令
  • 10.11.7 堆栈访问指令
  • 10.11.8 算术运算指令
  • 10.11.9 逻辑操作指令
  • 10.11.10 移位操作指令
  • 10.11.11 逆序操作指令
  • 10.11.12 扩展操作指令
  • 10.11.13 程序流控制指令
  • 10.11.14 存储器屏障指令
  • 10.11.15 异常相关指令
  • 10.11.16 休眠相关的指令
  • 10.11.17 其他指令
  • 10.12 Cortex-M0处理器的低功耗特性
  • 10.12.1 低功耗设计的基础
  • 10.12.2 Cortex-M0处理器低功耗特性的概述
  • 10.12.3 Cortex-M0处理器的低功耗结构
  • 10.12.4 Cortex-M0处理器的休眠模式
  • 10.12.5 唤醒中断控制器
  • 10.12.6 降低功耗的其他方法
  • 10.13 Cortex-M0 DesignStart架构
  • 10.13.1 获取Eval版本的Cortex-M0
  • 10.13.2 Eval版本的Cortex-M0处理器的顶层符号
  • 10.13.3 AHB-Lite接口
  • 10.13.4 将CORTEXM0DS集成到系统的方法
  • 10.14 Keil MDK开发套件的概述
  • 10.14.1 下载MDK开发套件
  • 10.14.2 安装MDK开发套件
  • 10.14.3 MDK程序的处理流程
  • 10.15 Keil μVision应用程序的开发
  • 10.15.1 建立新的软件设计工程
  • 10.15.2 工程的参数设置
  • 10.15.3 创建和编译汇编文件
  • 10.15.4 通过调试器对设计进行分析
  • 10.16 构建片上嵌入式系统
  • 10.16.1 片上嵌入式系统的软件和硬件设计目标
  • 10.16.2 建立新的嵌入式设计工程
  • 10.16.3 添加并分析设计文件
  • 10.16.4 添加引脚约束条件
  • 10.17 设计的处理与验证
  • 第11章 视频图像采集和处理系统的原理与实现
  • 11.1 图像传感器的原理与配置
  • 11.1.1 传感器的结构与功能
  • 11.1.2 SCCB功能概述
  • 11.1.3 SCCB数据传输
  • 11.1.4 图像传感器的引脚和硬件连接
  • 11.2 TFT彩色LCD屏的原理与驱动
  • 11.2.1 彩色LCD屏的接口
  • 11.2.2 FPGA提供给彩屏的写控制信号
  • 11.2.3 FPGA提供给彩屏的读控制信号
  • 11.2.4 ILI9341读写命令/数据格式
  • 11.3 捕获和显示视频的原理
  • 11.4 视频图像采集和处理系统的设计
  • 11.4.1 建立新的设计工程
  • 11.4.2 创建SCCB驱动时钟模块
  • 11.4.3 创建SCCB驱动模块
  • 11.4.4 创建摄像头配置命令模块
  • 11.4.5 创建摄像头视频图像捕获模块
  • 11.4.6 创建LCD屏配置时钟驱动模块
  • 11.4.7 创建LCD屏底层驱动模块
  • 11.4.8 创建LCD屏配置命令模块
  • 11.4.9 创建LCD屏配置和图像输出选择模块
  • 11.4.10 创建设计的顶层模块
  • 11.4.11 添加约束条件
  • 11.4.12 设计的下载与验证
  • 第12章 数模混合系统的设计
  • 12.1 信号采集和处理的实现
  • 12.1.1 ADC的概述
  • 12.1.2 ADC的架构
  • 12.1.3 ADC转换
  • 12.1.4 1602字符LCD模块的原理
  • 12.1.5 信号采集、处理和显示的实现
  • 12.2 信号发生器的实现
  • 12.2.1 DAC的工作原理
  • 12.2.2 系统的实现原理
  • 12.2.3 设计的实现
  • 反侵权盗版声明
  • 封底
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

电子工业出版社

电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。