![]()
编辑推荐 本书内容涵盖了数字集成电路设计全流程,系统介绍了数字集成电路设计与验证的思想、原理、方法和技术。涵盖数字集成电路设计概述、数字集成电路设计流程、Verilog硬件描述语言、基于Verilog HDL的逻辑设计方法、数字集成电路设计的验证方法、EDA工具的原理及使用方法、基于FPGA的集成电路设计方法、低功耗设计技术、可测性设计方法、SOC设计方法、设计实例等内容。本书具有以下特点:(1)内容新颖,紧跟学科和产业发展,将新的研究成果和优选的实用技术纳入其中。 (2)知识结构系统完备,内容涵盖了数字集成电路设计流程中的各个知识点。 (3)设计实例丰富,每个实例都来自作者的科研项目,具有一定的设计复杂度和创新性,并经过严格的测试验证;所有实例都提供全部的Verilog RTL设计代码和验证代码及测试向量,供读者参考;通过对设计实例的详细讲解和读者亲自动手实践,培养读者的工程思维和动手能力。 (4)注重总结和提炼具有普遍指导意义的设计思想和方法,引导读者举一反三,提高分析问题和解决问题的能力。 (5)在内容的组织与编排方面突出逻辑性和条理性,遵循循序渐进的原则,符合读者的学习习惯。 内容推荐 本书系统介绍了数字集成电路的设计思想、原理、方法和技术,主要内容包括数字集成电路设计流程、Verilog硬件描述语言、基于Verilog HDL的逻辑设计方法、数字集成电路设计的验证方法、EDA 工具的原理及使用方法、基于FPGA的集成电路设计方法、低功耗设计技术、可测性设计方法、SoC设计方法以及多个复杂度较高的设计实例等。 本书根据数字集成电路设计与验证的工程需要确定知识结构,内容涵盖了数字集成电路设计流程中的各个知识点;设计实例丰富且介绍详尽,使读者能够深入了解各个设计环节,加深对设计方法的理解,提高工程实践能力;在内容的组织编排方面,突出逻辑性和条理性,遵循循序渐进的原则,利于读者学习和掌握。 本书可以作为高等学校电子信息类专业本科生和研究生的教材,也可供相关的工程技术人员参考。 目录 第1章数字集成电路设计概述001 1.1数字集成电路的发展历史与现状002 1.1.1机械式计算机的启蒙时代002 1.1.2电子技术和半导体技术的诞生和发展002 1.2现代数字IC设计方法的发展005 1.2.1自底向上的设计方法005 1.2.2自顶向下的设计方法005 1.2.3自顶向下与自底向上相结合的设计方法006 1.3数字IC前端设计语言及后端设计软件(EDA)006 1.3.1Verilog硬件描述语言007 1.3.2VHDL007 1.3.3验证和验证语言007 1.3.4数字IC设计后端EDA工具008 1.4数字IC的设计模式008 1.4.1全定制设计模式008 1.4.2标准单元设计模式009 1.4.3门阵列设计模式009 1.4.4宏模块设计模式009 1.4.5FPGA设计模式009 1.4.6不同设计模式的比较009 1.5数字IC设计面临的挑战010 1.5.1工艺极限的挑战010 1.5.2投资风险的挑战010 1.5.3IC工程师面临的挑战011 1.5.4项目管理上的挑战011 1.6集成电路的分类011 1.6.1按用途分类011 1.6.2按集成度分类011 1.6.3按设计与制造过程分类012 1.7与集成电路设计与制造相关的常用术语和基本概念012 1.8集成电路设计质量评价014
第2章数字集成电路设计流程016 2.1数字集成电路设计流程简介017 2.2系统体系结构设计017 2.2.1系统体系结构设计的内容及方法017 2.2.2系统体系结构设计实例018 2.3RTL代码编写045 2.4RTL代码功能仿真046 2.5综合优化048 2.6可测性设计051 2.7后端布局布线051 2.8时序仿真052 2.9静态时序分析与时序收敛053 2.9.1静态时序分析053 2.9.2时序收敛053 2.10CMOS工艺选择053 2.11IC产业的变革及对设计方法的影响054
第3章Verilog硬件描述语言056 3.1引言057 3.2VerilogHDL基本结构057 3.2.1简单的VerilogHDL例子057 3.2.2VerilogHDL的基本结构059 3.2.3逻辑功能定义059 3.2.4关键字060 3.2.5标识符060 3.2.6编写VerilogHDL源代码的标准061 3.3数据类型及常量、变量062 3.4运算符及表达式066 3.5语句069 3.6赋值语句和块语句070 3.7条件语句073 3.8循环语句075 3.9结构说明语句078 3.10编译预处理语句083 3.11语句的顺序执行与并行执行085 3.12不同抽象级别的VerilogHDL模型086 3.13设计技巧088
第4章基于VerilogHDL的逻辑设计方法091 4.1基本组合电路的设计方法092 4.2基本时序电路设计097 4.3同步状态机的设计方法099 4.4存储模块设计117 4.5复杂数字系统的逻辑设计121 4.5.1算法状态机图121 4.5.2数据通道/控制器划分122 4.5.3复杂数字系统的设计方法123 4.6复杂数字系统设计举例——多周期处理机设计123 4.6.1多周期处理机VerilogRTL代码123 4.6.2多周期处理机测试代码128 4.6.3多周期处理机功能仿真129 4.7可综合的VerilogRTL设计129 4.7.1可综合的组合电路设计130 4.7.2可综合的时序电路设计131 4.8代码书写风格132
第5章数字集成电路设计的验证方法133 5.1数字集成电路设计验证的原理与方法134 5.2软件仿真举例1:RSA加密处理器仿真135 5.3软件仿真举例2:基于USB的RSA加密处理器的功能仿真139 5.4软件仿真举例3:AES加密处理器的时序仿真143 5.5硬件仿真举例:基于USB的AES/RSA加密处理器的硬件仿真146 5.6验证平台编码风格150 5.7验证平台模块设计150 5.8验证平台结构设计154 5.9断言155 5.10验证质量评估156
第6章EDA工具的原理及使用方法158 6.1ModelSim的使用方法159 6.1.1ModelSim概览159 6.1.2基本仿真流程160 6.1.3ModelSim工程165 6.1.4基于多库的仿真171 6.1.5在波形窗口中查看仿真结果174 6.1.6利用ModelSim进行时序仿真178 6.2QuartusⅡ的使用方法180 6.2.1可编程逻辑设计流程180 6.2.2设计输入190 6.2.3综合198 6.2.4仿真202 6.2.5布局布线205 6.2.6基于块的设计211 6.2.7时序分析215 6.2.8时序逼近220 6.2.9编程与配置224 6.2.10调试228 6.2.11工程更改管理231 6.2.12系统级设计234 6.2.13软件开发238
第7章基于FPGA的集成电路设计方法241 7.1FPGA基础知识242 7.2FPGA的基本结构242 7.2.1CycloneⅣ系列FPGA器件概述242 7.2.2CycloneⅣ器件的逻辑单元和逻辑阵列模块246 7.2.3CycloneⅣ器件中的存储器模块250 7.2.4CycloneⅣ器件中的嵌入式乘法器253 7.3FPGA的设计流程256 7.4基于FPGA设计与实现集成电路的EDA工具259 7.4.1基于QuartusPrime的FPGA设计流程259 7.4.2启动QuartusPrime软件259 7.4.3创建一个新的工程260 7.4.4输入用Verilog代码描述的设计模型263 7.4.5编译设计电路266 7.4.6引脚分配267 7.4.7FPGA芯片的编程与配置268 7.4.8对所设计的电路进行测试270
第8章低功耗设计技术271 8.1低功耗设计的背景和意义272 8.2低功耗设计技术的发展趋势273 8.3常用的低功耗设计技术介绍275
第9章可测性设计方法278 9.1可测性设计的背景及意义279 9.2可测性设计的基本概念与方法279 9.2.1常用缩略语解释279 9.2.2DFT的常用方法280 9.3基于ATPG的扫描测试284 9.3.1扫描测试的基本原理284 9.3.2扫描测试的主要阶段285 9.3.3扫描测试的基本时序286 9.3.4扫描设计的注意事项287 9.4边界扫描电路设计288 9.4.1边界扫描简介288 9.4.2边界扫描电路结构289 9.4.3TAP控制器及指令集289 9.4.4基于BSDCompiler的边界扫描电路设计方法292
第10章SoC设计方法297 10.1SoC概述297 10.2SoC设计流程300 10.2.1软硬件协同设计300 10.2.2基于标准单元的SoC芯片设计流程302 10.3SoC系统结构设计305 10.4IP复用的设计方法314 10.5SoC验证方法318
第11章AES密码处理器设计与验证(方案1)320 11.1AES算法描述321 11.1.1数学预备知识321 11.1.2符号和习惯用语322 11.1.3AES加密算法323 11.1.4AES解密算法326 11.1.5密钥扩展329 11.2AES密码处理器的体系结构设计330 11.2.1AES密码处理器框图及外部信号说明330 11.2.2AES密码处理器模块结构图331 11.2.3AES密码处理器各子模块设计方案331 11.3AES密码处理器的Verilog模型设计342 11.4AES密码处理器的功能仿真355 11.4.1密钥扩展仿真结果355 11.4.2加密仿真结果356 11.4.3解密仿真结果357 11.5基于FPGA的AES密码处理器的实现与测试358 11.5.1基于FPGA的AES密码处理器的综合与时序仿真358 11.5.2基于FPGA的AES密码处理器的实现与测试361
第12章AES密码处理器设计与验证(方案2)365 12.1AES密码处理器体系结构设计366 12.1.1AES密钥扩展模块电路结构设计367 12.1.2AES加/解密模块电路结构设计368 12.1.3提高性能和降低成本采用的技术368 12.2AES密码处理器VerilogRTL模型设计369 12.3AES密码处理器功能仿真382 12.4AES密码处理器综合及性能、规模分析384 12.5AES密码处理器综合后时序仿真385 12.6AES密码处理器布局布线385 12.7AES密码处理器版图后物理检查(DRC、LVS)386 12.8AES密码处理器版图后性能、规模、功耗分析387 12.9AES密码处理器版图后时序仿真387 12.10AES密码处理器基于FPGA的综合、布局布线及分析388 12.11AES密码处理器基于FPGA的实现与测试389 12.12AES密码处理器使用说明390
第13章SM4密码处理器设计与验证391 13.1SM4密码算法简介392 13.1.1说明与定义392 13.1.2SM4加/解密算法393 13.1.3SM4密钥扩展算法393 13.1.4SM4加密实例394 13.2SM4密码处理器体系结构设计395 13.3SM4密码处理器VerilogRTL模型设计397 13.4SM4密码处理器功能仿真408 13.5SM4密码处理器综合及性能、规模、功耗分析410 13.6SM4密码处理器综合后时序仿真412 13.7SM4密码处理器布局布线413 13.8SM4密码处理器物理验证(DRC、LVS)414 13.9SM4密码处理器布局布线后性能、规模、功耗分析414 13.10SM4密码处理器版图后时序仿真415 13.11SM4密码处理器FPGA验证415
第14章RSA密码处理器设计与验证419 14.1RSA算法描述420 14.2RSA算法硬件实现原理421 14.3RSA密码处理器体系结构设计422 14.3.1RSA控制模块设计423 14.3.2参数寄存器模块设计428 14.3.3数据选择器模块设计429 14.3.4模乘模块设计429 14.4RSA密码处理器主要RTL代码设计433 14.5RSA密码处理器功能仿真440 14.5.1模乘模块功能仿真440 14.5.2RSA密码处理器功能仿真441 14.6RSA密码处理器基于FPGA的综合、布局布线与性能、规模、功耗分析442 14.7RSA密码处理器基于FPGA的实现与测试444 14.8基于ASIC标准单元工艺库对RSA密码处理器进行综合及分析445 14.9对综合后的RSA密码处理器进行布局布线及分析447 14.10附录(表14-17)448
第15章基于RISC-Ⅴ处理器和密码协处理器的SoC设计453 15.1密码算法简介454 15.1.1AES算法454 15.1.2RSA算法455 15.2SoC体系结构设计456 15.2.1领域专用体系结构456 15.2.2SoC系统结构457 15.2.3扩展指令编码457 15.3协处理器设计与功能仿真459 15.3.1AES算法核设计459 15.3.2RSA算法核设计461 15.3.3EAI接口控制逻辑的设计462 15.3.4功能仿真465 15.4FPGA实现与测试467 15.4.1FPGA测试方案467 15.4.2测试程序开发468 15.4.3SoC测试结果469 15.5后端设计470 15.5.1综合470 15.5.2综合后的静态时序分析471 15.5.3形式验证472 15.5.4布局布线474 15.5.5布局布线后的静态时序分析478 15.5.6时序仿真479 15.5.7物理验证480 15.6设计结果分析481
参考文献484 |