当前位置:首页 > 工业技术
基于Verilog的FPGA设计基础
基于Verilog的FPGA设计基础

基于Verilog的FPGA设计基础PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:杜慧敏,李宥谋,赵全良编著(西安邮电学院)
  • 出 版 社:西安:西安电子科技大学出版社
  • 出版年份:2006
  • ISBN:7560616267
  • 页数:380 页
图书介绍:本书简要介绍了FPGA的编程技术。
《基于Verilog的FPGA设计基础》目录

第1章 绪论 1

1.1 FPGA概述 1

1.1.1 FPGA发展的简要回顾 1

目录 1

1.1.2 FPGA与ASIC 4

1.2 可编程逻辑器件的基本概念 5

1.3 简单可编程器件(SPLD)的结构 9

1.4 高密度可编程逻辑器件 12

1.4.1 复杂可编程逻辑器件CPLD 12

1.4.2 现场可编程门阵列FPGA 14

1.4.3 CPLD和FPGA的区别 16

1.4.4 FPGA/CPLD厂家简介 17

1.5.1 基于FPGA的设计流程 18

1.5 基于FPGA的设计流程与设计方法 18

1.5.2 自顶向下和自底向上的设计方法学 20

1.5.3 基于IP核的设计 20

1.6 EDA技术简介 21

第2章 可编程逻辑器件 24

2.1 Altera器件概述 24

2.1.1 FPGA系列简介 24

2.1.2 EPLD系列简介 25

2.1.3 结构化ASIC器件 26

2.1.4 FPGA器件的配置芯片 26

2.2 Altera的EPLD器件系列 27

2.2.1 EPLD器件的特性 27

2.2.2 MAX9000器件的结构 30

2.2.3 MAX Ⅱ器件的结构 34

2.3.1 简单FPGA器件 36

2.3 Altera的FPGA器件 36

2.3.2 复杂FPGA器件 49

2.3.3 新型FPGA器件 52

2.4 Xilinx公司产品简介 65

2.4.1 Xilinx CPLD器件 65

2.4.2 Xilinx FPGA器件的特性 67

2.4.3 Xilinx FPGA器件的结构 71

2.5 Lattice公司产品简介 75

2.5.1 Lattice CPLD器件系列 75

2.5.2 Lattice FPGA产品系列 76

2.5.3 FPSC产品系列 77

2.6 Actel公司产品简介 78

2.6.1 Flash FPGA器件 78

2.5.5 其他产品 78

2.5.4 低密度PLD产品系列 78

2.6.2 反熔丝FPGA器件 81

2.6.3 航空航天和军用器件 83

第3章 FPGA设计入门 84

3.1 系统的抽象层次与高级硬件描述语言Verilog 84

3.2 用Verilog语言建立数字电路模型 87

3.2.1 代码的书写风格 87

3.2.2 可综合代码的编码风格 91

3.2.3 时序电路的设计 111

3.3 模块设计 127

3.4 系统规范 130

3.4.1 系统规范的内容 130

3.4.2 选择FPGA 131

第4章 设计验证 132

4.1 验证综述 132

4.1.1 验证的概念 132

4.1.2 验证和测试 133

4.1.3 自顶向下和自底向上的验证方法 133

4.1.4 主要验证技术 134

4.1.5 验证工具的介绍 136

4.1.6 验证计划和流程 138

4.2 功能验证 140

4.2.1 验证程序(Testbench)的组成 140

4.2.2 实用构造Testbench技术 145

4.3 基于断言的验证 165

4.4.1 静态时序分析概述 168

4.4 时序验证 168

4.4.2 静态时序分析中的基本概念 171

4.4.3 假路径和多周期路径 176

4.4.4 时序验证中的系统任务 178

第5章 ModelSim工具介绍 179

5.1 ModelSim概述 179

5.1.1 基本仿真流程 179

5.1.2 工程仿真流程 180

5.1.3 多数据库仿真流程 180

5.1.4 调试工具 181

5.2 ModelSim工程 181

5.2.1 创建一个新工程 181

5.2.2 编译和加载设计 183

5.2.3 利用文件夹组织工程 183

5.2.4 在工程中进行仿真配置 184

5.2.6 Project标签页及菜单简介 186

5.2.5 关于工程的其他基本操作 186

5.2.7 指定文件属性和工程设置 187

5.3 设计库 188

5.3.1 设计库简介 188

5.3.2 使用设计库工作 189

5.3.3 导入FPGA设计库 192

5.4 Verilog基本仿真 192

5.4.1 创建工作的设计数据库 192

5.4.2 编译设计 194

5.4.3 运行仿真 194

5.4.4 设置断点与源代码单步执行 195

5.5 在Verilog仿真中连接第三方资源库 196

5.5.1 仿真连接资源库 196

5.4.6 增量编译 196

5.4.5 结束仿真 196

5.5.2 永久性映射资源库 198

5.6 使用波形窗口 198

5.6.1 向波形窗口添加项目 198

5.6.2 波形显示的图像缩放 199

5.6.3 在波形窗口中使用游标 200

5.6.4 存储波形窗口格式 200

5.6.5 WLF文件(Datasets) 200

5.7 使用数据流(dataflow)窗口进行调试 202

5.7.1 编译并加载一个例子 202

5.7.2 观察设计的连接性 202

5.7.3 跟踪事件 204

5.7.4 追踪未知态 205

5.7.5 在dataflow窗口中显示层次结构 206

5.8 存储器的查看与初始化 207

5.8.1 编译和装入设计举例 207

5.8.2 查看存储器 208

5.8.3 保存存储器数据到一个文件 210

5.8.4 初始化一个存储区 211

5.8.5 交互式调试命令 212

5.9 使用性能分析器仿真 214

5.9.1 性能分析器简介及本节的设计文件 214

5.9.2 编译、加载例子的设计 214

5.9.3 运行仿真 215

5.9.4 使用数据改进性能 216

5.9.5 过滤并保存数据 216

5.10.1 编译、加载例子的设计 217

5.10 仿真代码覆盖情况 217

5.10.2 在主窗口中查看统计 218

5.10.3 在源代码窗口中查看统计 218

5.10.4 在信号窗口中查看状态翻转统计 220

5.10.5 指定不进行覆盖率统计的行或文件 220

5.10.6 创建代码覆盖率报告 221

5.11 波形比较过程 221

5.11.1 波形比较器简介及本节的设计文件 221

5.11.2 创建参考数据文件和测试数据文件 222

5.11.3 比较仿真运行 222

5.11.4 查看比较数据 223

5.11.5 保存和重装比较数据 225

5.12 ModelSim自动运行 225

5.12.1 创建简单的DO文件 226

5.12.2 使用“启动DO文件”运行ModelSim 227

5.12.3 命令行方式运行ModelSim 227

5.12.4 与ModelSim一起使用Tcl 228

5.13 使用ModelSim进行后仿真 229

第6章 Quartus集成环境 233

6.1 QuartusⅡ软件概述 234

6.1.1 QuartusⅡ软件的安装 234

6.1.2 QuartusⅡ软件工具授权 236

6.2 QuartusⅡ设计流程简介 237

6.3 设计输入 240

6.3.1 创建一个工程 240

6.3.2 创建一个设计 241

6.3.3 Quartus使用举例 242

6.4 配置设计工程的编译约束 247

6.4.1 使用Assignment Editor 248

6.4.2 使用引脚规划器(Pin Planner) 249

6.4.3 使用Settings对话框 250

6.5 综合设计 250

6.5.1 使用Quartus Ⅱ Verilog HDL及VHDL集成综合工具 251

6.5.2 使用其他EDA综合工具 253

6.5.3 “Analysis Synthesis”的控制 254

6.6 布局布线 256

6.6.1 执行一个完整的增量编译 258

6.6.2 分析布局布线结果 258

6.6.3 布局布线的优化 260

6.7 基于模块的设计 265

6.7.2 使用逻辑锁区域(LogicLock Regins) 266

6.7.1 QuartusⅡ基于模块化的设计流程 266

6.7.4 在自底向上逻辑锁流程中保存中间综合结果 268

6.7.3 在自顶向下增量编译流程中使用区域逻辑锁 268

6.7.5 在EDA工具中集中使用逻辑锁 270

6.8 Quartus Ⅱ的时序分析(Timing Analysis) 271

6.8.1 在Quartus Ⅱ软件中执行时序分析 271

6.8.2 进行前期的时序评估 274

6.8.3 查看时序分析结果 274

6.8.4 使用第三方EDA工具进行时序分析 276

6.9 时序逼近(Timing Closure) 277

6.9.1 使用时序逼近底层图(Timing Closure Floorplan) 277

6.9.2 使用时序优化顾问 278

6.9.3 使用网表优化实现时序逼近 279

6.10 功率分析(Power Analysis) 280

6.9.4 使用LogicLock Regins实现时序逼近 280

6.9.5 使用增量编译达到时序逼近 280

6.11 对器件的编程与配置 283

6.12 调试 286

6.12.1 使用SignalTapⅡ逻辑分析仪 287

6.12.2 使用SignalProbe信号探针 289

6.12.3 使用In-System Memory Content Editor 289

6.12.4 使用寄存器传输级查看器(RTL Viewer) 290

6.12.5 使用芯片编辑器 290

第7章 FPGA设计实例 291

7.1 74181ALU运算器设计 291

7.1.1 74181ALU的功能说明 291

7.1.3 Verilog程序设计 292

7.1.2 逻辑电路 292

7.1.4 ALU运算器的功能验证 298

7.2 伪随机序列设计 300

7.2.1 m序列 300

7.2.2 9位的LFSR计数器 302

7.2.3 数字序列的扰码 305

7.2.4 循环冗余校验 310

7.3 SDH解帧器设计 321

7.4 8b/10b编码设计 329

7.4.1 8b/10b编码技术 330

7.4.2 8b/10b编码器的设计 333

7.4.3 程序代码简介 334

7.4.4 Testbench程序设计 339

8.1 Altera IP的使用 342

第8章 Altera系统级的SOPC开发 342

8.2 SOPC开发流程概述 343

8.2.1 应用系统需求分析 344

8.2.2 使用SOPC Builder建立SOPC系统设计 345

8.2.3 Nios Ⅱ监控软件的开发 346

8.2.4 灵活运用SOPC开发流程 348

8.3 Altera Nios CPU简介 348

8.4 Altera Nios外设组件简介 349

8.5 Altera 1C20 Demo板介绍 350

8.6 Altera 1C20试验板上的SOPC系统开发实例 353

8.6.1 开发实例功能介绍 353

8.6.2 开发设计步骤 354

附录 频率计系统的设计 370

参考文献 380

相关图书
作者其它书籍
返回顶部