本书涵盖了用Verilog HDL语言进行CPLD/FPGA开发的所有必备知识,每部分知识都不仅仅停留在入门的深度,而是力求使读者实现从入门到精通。同时,本书安排了大量的工程实例,这是当前很多同类书籍所没有的,这些例子涉及了当前的一些前沿技术,具有很高的技术价值,给读者提供了一个很好的参考借鉴机会。适合电子、计算机、自动控制等专业的大学学生阅读,同时也适合广大从事数字系统设计的科研人员使用。
网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | 精通Verilog HDL语言编程(附光盘)/电子工程应用精讲系列 |
分类 | |
作者 | 刘波 |
出版社 | 电子工业出版社 |
下载 | |
简介 | 编辑推荐 本书涵盖了用Verilog HDL语言进行CPLD/FPGA开发的所有必备知识,每部分知识都不仅仅停留在入门的深度,而是力求使读者实现从入门到精通。同时,本书安排了大量的工程实例,这是当前很多同类书籍所没有的,这些例子涉及了当前的一些前沿技术,具有很高的技术价值,给读者提供了一个很好的参考借鉴机会。适合电子、计算机、自动控制等专业的大学学生阅读,同时也适合广大从事数字系统设计的科研人员使用。 内容推荐 本书是Verilog HDL语言编程设计的优秀实践指导书。全书通过基础知识和大量实例结合的形式,详细介绍了Verilog HDL语言程序设计的基础、Verilog语言的综合内幕、常用EDA工具的使用、CPLD/FPGA设计的指导原则,以及大量的工程应用实例。 全书共分为五篇23章:第一篇为Verilog HDL语言设计基础篇;第二篇为Verilog HDL语言综合原理篇;第三篇为常用EDA开发工具篇;第四篇为设计经验与技巧篇;第五篇是Verilog HDL实例应用篇。内容从零开始,由浅入深,循序渐进,符合读者学习过程。集基础知识、设计经验与技巧、综合应用实例于一体,是读者学习Verilog HDL语言编程的最佳参考资料。 本书适合电子、计算机、自动控制等专业的大学学生阅读,同时也适合广大从事数字系统设计的科研人员使用。 目录 第一篇 Verlog HDL语言设计基础篇 第1章Verlog HDL语言设计入门 1.1 VHDL发展概述 1.2与VHDL和C语言的比较 1.3 Vemog HGL语言开发流程 1.3.1 Vetilog HDL语言开发流程图介绍 1.3.2常用EDA开发工具介绍 1.4Verilog HDL程序的基本结构 1.4.1模块 1.4.2模块调用 第2章Ver¨og HDL语言要素与表达式 2.1程序格式 2.2注释 2.3间隔符 2.4数值 2.5字符串 2.6标识符 2.7系统任务和函数 2.8编译指令 2.9数据类型 2.9.1线网(Net)和变量(Variable) 2.9.2标量(Scalm)与矢量(Vecctor) 2.9.3线网(Net)数据类型 2.9.4变量(variable)数据类型 2.9.5数组(Array)类型 2.9.6参数 2.9.7名字空间 2.10表达式 2.10.1操作符 2.10.2操作数 2.10.3延迟表达式 2.10.4表达式的位宽 2.10.5有符号表达式 第3章行为级建模 3.1行为级建模的结构 3.1.1过程块结构 3.1.2 initial过程块 3.1.3 always过程块 3.2语句块 3.2.1顺序语句块(begin-end) 3.2.2并行语句块(fork-ioin) 3.2.3顺序块和并行块的混合使用 3.3时间控制 3.3.1延时控制 3.3.2边沿触发事件控制 3.3.3 电平敏感事件控制(wait语句) 3.4赋值语句 3.4.1过程赋值语句 3.4.2阻塞型赋值语句和非阻塞型赋值语句 3.4.3连续赋值语句和过程连续赋值语句 3.5分支语句 3.5.1 ifelse条件分支语句 3.5.2 case分支控制语句 3.6循环控制语句 3.6.1 forever循环语句 3.6.2 repeat循环语句 3.6.3 while循环语句 3.6.4 for循环语句 3.7任务(task)和函数(function) 3.7.1任务(task) 3.7.2函数(fuuction) 第4章结构级建模 4.1模块级建模 4.1.1模块的定义 4.1.2模块的端口 4.1.3模块的调用 4.1.4在模块调用时对参数值的更改 4.2门级建模 4.2.1内置基本门级元件 4.2.2用户自定义基本元件(UDP) 第5章时序状态机的设计入门与提高 5.1有限状态机(FsM)的分类一 5.1.1米利(Mealy)机 5.1.2摩尔(Moore)机 5.2有限状态机常用的描述、开发方法 5.3基于状态转移图(STG)的设计 5.3.1设计要点 5.3.2建模实例 5.4基于算法状态机(ASM)图的设计 5.4.1算法状态机图 5.4.2算法状态机和数据通道图 第二篇 Verlog HDL语言综合原理篇 第6章综合的基本知识 6.1综合的概念 6.2数值集合与数据类型 6.3储值单元的综合原则 第7章V酬log HDL语句的综合- 7.1连续赋值(Coneinuous Assignment)语句的综合 7.2过程赋值(PTocedural Assignment)语句的综合 7.2.1 阻塞赋值语句 7.2.1非阻塞赋值语句 7.3逻辑运算符的综合 7.4算术运算符的综合 7.4.1无符号运算 7.4.2有符号运算 7.4.3进位与位宽 7.5关系运算符(relational operator)的综合 7.6移位(shift)运算符综合 7.7位选择(bit—selects)综合 7.8条件表达式的综合 7.9 always语句的综合 7.1GI if语句的综合 7.11 case语句的综合 7.11.1从case语句综合出锁存器 7.11.2 casez和casex语句的综合 7.1l.3并行的case语句 7.11.4条件表达式使用常量的case语句 7.12关于锁存器的综合 7.13循环语句的综合 7.13.1静态循环的综合 7.13.2非静态循环的综合 7.14触发器的建模 7.14.1反相时钟 7.14.2异步复位、置位 7.14.3同步置位、复位 7.15阻塞和非阻塞赋值的深入讨论 7.16函数的综合 7.17任务的综合 7.18值x(任意值)、z(高阻)的综合 第8章常用模块的建模实例 8.1组合逻辑的建模 8.2时序逻辑的建模 8.3计数器建模 8.3.1二进制计数器 8.3.2 Gray 计数器 8.3.3 Johnson计数器 8.4多路开关建模 8.5译码器建模 8.6移位寄存器建模 8.6.1用移位寄存器 8.6.2桶形移位寄存器 8.7存储器建模 8.8 ALu单元建模 8.9加法器建模 第9章建模优化 9.1 资源共享 9.2公共子表达式 9.3代码调整 9.4公因子 9.5触发器和锁存器的优化 9.6代码大小 9.7算术表达式树高度优化 9.8运算符强度缩减 第10章设计验证 10.1后综合设计验证 10.1.1基于仿真的验证 10.1.2形式化验证 10.2面向验证的编码风格 10.2.1功能正确性 10.2.2时序正确性 10.3定时验证 10.4时序分析基础 10.4.1周期与最大时钟频率 10.4.2时钟建立时间 10.4.3时钟保持时间 10.4.4时钟输出延时 10.4.5 引脚到引脚延时 10.5定时验证的系统任务 第三篇 常用EDA开发工具 第11章Quartus Ⅱ使用指南 11.1 QuartusⅡ简介 11.2 QuattusⅡ设计流程 11.3 QuartusⅡ设计方法 11.3.1自上而下与自下而上的设计方法比较 11.3.2自上而下渐进式编译设计流程 11.3.3自下而上的渐进式编译流程 11.4 QuartusⅡ各功能详解 11.4.1使用模块编辑器 11.4.2项目设置 11.4.3时序分析报告 11.4.4仿真 11.4.5下载 11.5 时序约束与分析 11.5.1时序约束与分析基础 11.5.2设置时序约束的方法 11.5.3最小化时序分析 11.6设计优化 11.6.1优化流程 11.6.2使用DSE 11.6.3设计优化的初次编译 11.6.4资源利用优化 11.6.5 I/O时序优化 11.6.6最高时钟频率优化 11.7 SignalTap II 11.7.1设计中创建SignalTapⅡ 11.7.2通过SignalTapII察看数据 11.7.3 SignalTapII的高级配置 第12章ISE开发工具 12.1 ISE系统简介 12.2 ISE设计快速入门 12.2.1 ISE的安装 12.2.2 ISE应用入门 12.2.3 ISE的一般设计流程 12.3工程管理与设计输入 12.3.1 ISE工程管理器 12.3.2HDL语言的输入工具——HDL Editor 12.3.3原理图输入工具——ECS 12.3.4 IP核生成工具—-CORE Generator 12.3.5测试激励生成器——HDL Bencher 12.4 ISE中综合工具介绍 12.4.1 Synplify/Synplify Pro综合工具 12.4.2 Synopsys综合工具 12.4.3 Xilinx内嵌的综合工具——_XST 12.4.4全局时钟与g--全局时钟资源 12.5约束设置 12.5.1时序约束 12.5.2分组约束 12.5.3约束编辑器 12.5.4引脚与区域约束编辑器 12.5.5约束文件 12.6设计进阶 12.6.1时序分析 12.6.2布局规划 12.6.3 FPGA底层编辑 第13章ModelSim开发工具 13.1 ModelSim简介 13.2基本仿真步骤 13.2.1建立ModelSim库 13.2.2编译源代码 13.2.3启动仿真器 13.2.4执行仿真 13.3 ModelSim各界面介绍 13.3.1 Main窗口 13.3.2 Structure窗口 13.3.3 Source窗12 13.3.4 Signals窗口 13.3.5 Process窗口 13.3.6 Variables窗口 13.3.7 Dataflow窗口 13.3.8 Wave窗口 13.3.9 List窗口 13.4 ModelSim调试功能 13.4.1监视信号 13.4.2使用断点 第四篇 设计经验与技巧篇 第14章优秀设计的经验与技巧指导 14.1 vcdlog HDL语言的编码风格(Coding Style) 14.1.1命名习惯(Nanling Conventions) 14.1.2注释(comment) 14.1.3代码风格 14.1.4模块分割与复用 14.1.5 时钟与同步问题 14.1.6通用编码技巧 14.1.7面向综合的编程风格 14.2同步复位与异步复位 14.2.1触发器建模的通用原则 14.2.2同步复位 14.2.3异步复位 14.2.4异步复位问题 14.2.5复位同步电路 14.2.6复位分配树 14.2.7复位毛刺过滤 14.2.8多时钟复位讨论 14.2.9总结 14.3设计异步多时钟系统的 综合及描述技巧 14.3.1亚稳态 14.3.2多时钟系统同步 14.3.3静态定时分析 14.3.4时钟命名习惯 14.3.5设计分割 14.3.6综合脚本与时序分析 14.3.7高速时钟信号到低速时钟域的同步 14.3.8多控制信号的传递 14.3.9数据通道同步 第五篇 Verlog HDL实例应用篇 第15章各种加法器(减法器)设计 15.1行波进位(Ripple-CalTy)加法器 15.2进位链(CalTy-Chain)加法器 15.3跳跃进位(Carry-Skip)加法器 第16章常用乘法器设计 16.1基本乘法器 16.2时序乘法器 16.3阵列乘法器 16.3.1行波进位乘法器 16.3.2进位存储乘法器 第17章伽罗华域GF(q)乘法器设计 17.1应用背景 17.2理论算法 17.2.1有限域元素的弱对偶基表示 17.2.2有限域元素的乘法 17.2.3最优弱对偶基 17.3基于弱对偶基的有限域比特并行乘法器建模 17.3.1多项式基到弱对偶基坐标变换 17.3.2弱对偶基系数扩展 17.3.3乘法模块 17.3.4弱对偶基到多项式基坐标变换 17.4弱对偶基有限域乘法器程序说明 第18章常用除法器设计 18.1二进制恢复除法器 18.2时序除法器设计 第1 9章积分梳状滤波器(ClC)设计 19.1应用背景 19.2理论算法 19.3三级CIC抽取滤波器建模 19.4程序说明 第20章CORDIC数字计算机的设计 20.1应用背景 20.2理论算法 20.2.1计算正弦和余弦值 20.2.2极坐标到直角坐标的变换 20.2.3反正切函数与向量的模 20.2.4笛卡儿坐标到极坐标的变换 20.2.5反正弦和反余弦函数 20.2.6线性函数 20.2.7双曲线函数 20.3用CORDIC计算正、余弦值实例建模 20.4程序说明 第21章伪随机序列应用设计 21.1应用背景 21.2理论知识 21.2.1伪随机信号特性 21.2.2线性反馈移位寄存器 21.3 PN序列应用实例 21.4程序说明 第22章异步FIFO设计 22.1 FIFO“空”/“满”检测 22.1.1 Gray码计数器 22.1.2FIFO“空”,“满”状态 22.2 F1F0模块结构 22.3 FIFO源代码说明 22.3.1顶层模块 22.3.2双端口RAM模块 22.3.3异步比较器模块 22.3.4读指针与“空”逻辑模块 22.3.5写指针与“满”逻辑模块 22.4异步FIFO的相关问题 22.4.1 FIFO的复位 22.4.2 FIFO关键时序路径 第23章RS(204,188)译码器的设计 23.1应用背景 23.2理论算法 23.2.1 Reed—SoloInon码基本概念 23.2.2 RS译码与关键方程 23.2.3 BM及其改进算法求解关键方程 23.2.4 c11ien搜索和F0mey算法 23.3 Rs(204,188)译码器建模 23.3.1伴随式计算模块 23.3.2改进的BM算法模块 23.3.3 Chien搜索模块 23.3.4 Fomey算法模块 23.4程序说明 附录A Verilog关键字 附录B Verilog运算符 附录C Verilog系统任务与函数 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。