华信教育资源网
SoC设计方法与实现(第3版)
丛   书   名: 普通高等教育“十一五”国家级规划教材  微电子与集成电路设计系列规划教材  普通高等教育精品教材
作   译   者:郭炜等 出 版 日 期:2017-08-01
出   版   社:电子工业出版社 维   护   人:王羽佳 
书   代   号:G0322540 I S B N:9787121322549

图书简介:

本书是普通高等教育"十一五”国家级规划教材、普通高等教育精品教材。本书结合SoC设计的整体流程,对SoC设计方法学及如何实现进行了全面介绍。全书共15章,主要内容包括:SoC设计绪论、SoC设计流程、SoC设计与EDA工具、SoC系统结构设计、IP复用的设计方法、RTL代码编写指南、同步电路设计及其与异步信号交互的问题、综合策略与静态时序分析方法、SoC功能验证、可测性设计、低功耗设计、后端设计、SoC中数模混合信号IP的设计与集成、I/O环的设计和芯片封装、课程设计与实验。书中不仅融入了很多来自于工业界的实践经验,还介绍了SoC设计领域的最新成果,可以帮助读者掌握工业化的解决方案,使读者能够及时了解SoC设计方法的最新进展。本书提供中英文电子课件。
定价 49.9
您的专属联系人更多
关注 评论(0) 分享
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源

    本书资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书是普通高等教育"十一五”国家级规划教材、普通高等教育精品教材。本书结合SoC设计的整体流程,对SoC设计方法学及如何实现进行了全面介绍。全书共15章,主要内容包括:SoC设计绪论、SoC设计流程、SoC设计与EDA工具、SoC系统结构设计、IP复用的设计方法、RTL代码编写指南、同步电路设计及其与异步信号交互的问题、综合策略与静态时序分析方法、SoC功能验证、可测性设计、低功耗设计、后端设计、SoC中数模混合信号IP的设计与集成、I/O环的设计和芯片封装、课程设计与实验。书中不仅融入了很多来自于工业界的实践经验,还介绍了SoC设计领域的最新成果,可以帮助读者掌握工业化的解决方案,使读者能够及时了解SoC设计方法的最新进展。本书提供中英文电子课件。

    图书详情

    ISBN:9787121322549
    开 本:16开
    页 数:328
    字 数:600.0

    本书目录

    目    录
     
    第1章  SoC设计绪论	1
    1.1  微电子技术概述	1
    1.1.1  集成电路的发展	1
    1.1.2  集成电路产业分工	2
    1.2  SoC概述	3
    1.2.1  什么是SoC	3
    1.2.2  SoC的优势	4
    1.3  SoC设计的发展趋势及面临的
         挑战	5
    1.3.1  SoC设计技术的发展与挑战	5
    1.3.2  SoC设计方法的发展与挑战	10
    1.3.3  未来的SoC	12
    本章参考文献	12
    第2章  SoC设计流程	13
    2.1  软硬件协同设计	13
    2.1.1  软硬件协同设计方法	13
    2.2  基于标准单元的SoC设计流程	15
    2.3  基于FPGA的SoC设计流程	19
    2.3.1  FPGA的结构	20
    2.3.2  基于FPGA的设计流程	23
    本章参考文献	27
    第3章  SoC设计与EDA工具	28
    3.1  电子系统级设计与工具	28
    3.2  验证的分类及相关工具	28
    3.2.1  验证方法的分类	29
    3.2.2  动态验证及相关工具	29
    3.2.3  静态验证及相关工具	30
    3.3  逻辑综合及综合工具	31
    3.3.1  EDA工具的综合流程	32
    3.3.2  EDA工具的综合策略	32
    3.3.3  优化策略	32
    3.3.4  常用的逻辑综合工具	33
    3.4  可测性设计与工具	33
    3.4.1  测试和验证的区别	33
    3.4.2  常用的可测性设计	33
    3.5  布局布线与工具	36
    3.5.1  EDA工具的布局布线流程	36
    3.5.2  布局布线工具的发展趋势	36
    3.6  物理验证及参数提取与相关的
         工具	36
    3.6.1  物理验证的分类	37
    3.6.2  参数提取	37
    3.7  著名EDA公司与工具介绍	39
    3.8  EDA工具的发展趋势	40
    本章参考文献	41
    第4章  SoC系统结构设计	42
    4.1  SoC系统结构设计的总体目标
         与各个阶段	42
    4.1.1  功能设计阶段	43
    4.1.2  应用驱动的系统结构设计
          阶段	43
    4.1.3  平台导向的系统结构设计
          阶段	43
    4.2  SoC中常用的处理器	43
    4.2.1  通用处理器	44
    4.2.2  处理器的选择	45
    4.3  SoC中常用的总线	45
    4.3.1  AMBA总线	46
    4.3.2  CoreConnect总线	47
    4.3.3  Wishbone总线	48
    4.3.4  开放核协议	48
    4.3.5  复杂的片上总线结构	49
    4.4  SoC中典型的存储器	50
    4.4.1  存储器分类	50
    4.4.2  静态随机存储器SRAM	51
    4.4.3  动态随机存储器DRAM	52
    4.4.4  闪存Flash	54
    4.4.5  新型存储器	54
    4.5  多核SoC的系统结构设计	57
    4.5.1  可用的并发性	57
    4.5.2  多核SoC设计中的系统
          结构选择	57
    4.5.3  多核SoC的性能评价	59
    4.5.4  几种典型的多核SoC系统
          结构	60
    4.6  SoC中的软件结构	62
    4.7  电子系统级(ESL)设计	64
    4.7.1  ESL发展的背景	64
    4.7.2  ESL设计基本概念	65
    4.7.3  ESL设计的流程	66
    4.7.4  ESL设计的特点	67
    4.7.5  ESL设计的核心——事务级
          建模	69
    4.7.6  事务级建模语言简介及设计
          实例	78
    4.7.7  ESL设计的挑战	91
    本章参考文献	91
    第5章  IP复用的设计方法	92
    5.1  IP的基本概念和IP分类	92
    5.2  IP设计流程	94
    5.2.1  设计目标	94
    5.2.2  设计流程	94
    5.3  IP的验证	99
    5.4  IP核的选择	100
    5.5  IP市场	101
    5.6  IP复用技术面临的挑战	103
    5.7  IP标准组织	104
    5.8  基于平台的SoC设计方法	105
    5.8.1  平台的组成与分类	106
    5.8.2  基于平台的SoC设计方法
          流程与特点	106
    5.8.3  基于平台的设计实例	107
    本章参考文献	108
    第6章  RTL代码编写指南	109
    6.1  编写RTL代码之前的准备	109
    6.1.1  与团队共同讨论设计中
          的问题	109
    6.1.2  根据芯片架构准备设计
          说明书	109
    6.1.3  总线设计的考虑	110
    6.1.4  模块的划分	110
    6.1.5  对时钟的处理	113
    6.1.6  IP的选择及设计复用的
          考虑	113
    6.1.7  对可测性的考虑	114
    6.1.8  对芯片速度的考虑	115
    6.1.9  对布线的考虑	115
    6.2  可综合RTL代码编写指南	115
    6.2.1  可综合RTL代码的编写
          准则	115
    6.2.2  利用综合进行代码质量
          检查	118
    6.3  调用Synopsys DesignWare来
         优化设计	119
    本章参考文献	120
    第7章  同步电路设计及其与异步信号
              交互的问题	121
    7.1  同步电路设计	121
    7.1.1  同步电路的定义	121
    7.1.2  同步电路的时序收敛问题	121
    7.1.3  同步电路设计的优点与
          缺陷	122
    7.2  全异步电路设计	123
    7.2.1  异步电路设计的基本原理	123
    7.2.2  异步电路设计的优点与缺点	125
    7.3  异步信号与同步电路交互的
          问题及其解决方法	125
    7.3.1  亚稳态	126
    7.3.2  异步控制信号的同步及其
          RTL实现	129
    7.3.3  异步时钟域的数据同步
          及其RTL实现	133
    7.4  SoC设计中的时钟规划策略	137
    本章参考文献	138
    第8章  综合策略与静态时序分析
              方法	139
    8.1  逻辑综合	139
    8.1.1  流程介绍	139
    8.1.2  SoC设计中常用的综合
          策略	141
    8.2  物理综合的概念	142
    8.2.1  物理综合的产生背景	142
    8.2.2  操作模式	143
    8.3  实例——用Synopsys的工具
         Design Compiler (DC)进行逻
         辑综合	144
    8.3.1  指定库文件	144
    8.3.2  读入设计	145
    8.3.3  定义工作环境	145
    8.3.4  设置约束条件	146
    8.3.5  设定综合优化策略	148
    8.3.6  设计脚本举例	148
    8.4  静态时序分析	150
    8.4.1  基本概念	150
    8.4.2  实例——用Synopsys的工具
          PrimeTime进行时序分析	153
    8.5  统计静态时序分析	159
    8.5.1  传统的时序分析的局限	160
    8.5.2  统计静态时序分析的概念	160
    8.5.3  统计静态时序分析的步骤	161
    本章参考文献	161
    第9章  SoC功能验证	162
    9.1  功能验证概述	162
    9.1.1  功能验证的概念	162
    9.1.2  SoC功能验证的问题	163
    9.1.3  SoC功能验证的发展趋势	163
    9.2  功能验证方法与验证规划	163
    9.3  系统级功能验证	165
    9.3.1  系统级的功能验证	165
    9.3.2  软硬件协同验证	167
    9.4  仿真验证自动化	168
    9.4.1  激励的生成	169
    9.4.2  响应的检查	170
    9.4.3  覆盖率的检测	170
    9.5  基于断言的验证	171
    9.5.1  断言语言	173
    9.5.2  基于断言的验证	174
    9.5.3  断言的其他用途	175
    9.6  UVM验证方法学	176
    本章参考文献	179
    第10章  可测性设计	180
    10.1  集成电路测试概述	180
    10.1.1  测试的概念和原理	180
    10.1.2  测试及测试矢量的分类	180
    10.1.3  自动测试设备	181
    10.2  故障建模及ATPG原理	182
    10.2.1  故障建模的基本概念	182
    10.2.2  常见故障模型	182
    10.2.3  ATPG基本原理	185
    10.2.4  ATPG的工作原理	185
    10.2.5  ATPG工具的使用步骤	186
    10.3  可测性设计基础	186
    10.3.1  可测性的概念	186
    10.3.2  可测性设计的优势和
           不足	188
    10.4  扫描测试(SCAN)	188
    10.4.1  基于故障模型的可测性	188
    10.4.2  扫描测试的基本概念	189
    10.4.3  扫描测试原理	190
    10.4.4  扫描设计规则	192
    10.4.5  扫描测试的可测性设计
           流程及相关EDA工具	193
    10.5  存储器的内建自测	194
    10.5.1  存储器测试的必要性	194
    10.5.2  存储器测试方法	195
    10.5.3  BIST的基本概念	196
    10.5.4  存储器的测试算法	197
    10.5.5  BIST模块在设计中的
           集成	199
    10.6  边界扫描测试	201
    10.6.1  边界扫描测试原理	201
    10.6.2  IEEE 1149.1标准	201
    10.6.3  边界扫描测试策略和
           相关工具	205
    10.7  其他DFT技术	205
    10.7.1  微处理器核的可测性
           设计	205
    10.7.2  Logic BIST	207
    10.8  DFT技术在SoC中的应用	208
    10.8.1  模块级的DFT技术	208
    10.8.2  SoC中的DFT应用	209
    本章参考文献	210
    第11章  低功耗设计	211
    11.1  为什么需要低功耗设计	211
    11.2  功耗的类型	212
    11.3  低功耗设计方法	216
    11.4  低功耗技术	217
    11.4.1  静态低功耗技术	217
    11.4.2  动态低功耗技术	219
    11.4.3  门级优化技术	222
    11.4.4  低功耗SoC系统的
           动态管理	225
    11.4.5  低功耗SoC设计技术的
           综合考虑	226
    11.5  低功耗分析和工具	226
    11.6  UPF及低功耗设计实现	227
    11.6.1  基于UPF的设计流程	228
    11.6.2  UPF功耗描述文件举例	228
    11.7  低功耗设计趋势	229
    本章参考文献	230
    第12章  后端设计	231
    12.1  时钟树综合	231
    12.2  布局规划	235
    12.3  布线	237
    12.4  ECO技术	239
    12.5  功耗分析	240
    12.6  信号完整性的考虑	241
    12.6.1  信号完整性的挑战	241
    12.6.2  压降和电迁移	243
    12.6.3  信号完整性问题的预防、
           分析和修正	244
    12.7  物理验证	245
    12.8  可制造性设计/面向良品率
          的设计	246
    12.8.1  DFM/DFY的基本概念	246
    12.8.2  DFM/DFY方法	247
    12.8.3  典型的DFM/DFY问题
           及解决方法	247
    12.8.4  DFM/DFY技术的发展
           趋势	250
    12.9  后端设计技术的发展趋势	250
    本章参考文献	251
    第13章  SoC中数模混合信号IP的
               设计与集成	252
    13.1  SoC中的数模混合信号IP	252
    13.2  数模混合信号 IP的设计
          流程	252
    13.3  基于SoC复用的数模混合
          信号(AMS)IP包	254
    13.4  数模混合信号(AMS)IP
          的设计及集成要点	254
    13.4.1  接口信号	254
    13.4.2  模拟与数字部分的整体
           布局	255
    13.4.3  电平转换器的设计	255
    13.4.4  电源的布局与规划	256
    13.4.5  电源/地线上跳动噪声
           的消除	257
    13.4.6  其他方面的考虑	257
    13.5  数模混合IP在SoC设计中
           存在的问题和挑战	258
    13.6  SoC混合集成的新趋势	258
    本章参考文献	261
    第14章  I/O环的设计和芯片封装	262
    14.1  I/O单元介绍	262
    14.2  高速I/O的噪声影响	262
    14.3  静电保护	263
    14.3.1  ESD的模型及相应的
           测试方法	264
    14.3.2  ESD保护电路的设计	266
    14.4  I/O环的设计	269
    14.4.1  考虑对芯片的尺寸的
            影响	269
    14.4.2  考虑对芯片封装的影响	270
    14.4.3  考虑对噪声的影响	271
    14.4.4  考虑对芯片ESD的影响	271
    14.5  SoC芯片封装	271
    14.5.1  微电子封装的功能	271
    14.5.2  微电子封装的发展趋势	272
    14.5.3  当前的封装技术	272
    14.5.4  封装技术发展的驱动力	274
    本章参考文献	275
    第15章  课程设计	276
    15.1  基于ESL设计方法的Motion-
           JPEG视频解码器设计	276
    15.1.1  实验内容	276
    15.1.2  实验准备工作	277
    15.1.3  SoCLib ESL仿真平台及
           MJPEG解码流程的介绍	279
    15.1.4  实验1 构建基于SoCLib
           的单核SoC	280
    15.1.5  实验2 构建基于SoCLib
           的MPSoC	287
    15.1.6  实验3 系统软件开发——
           嵌入式操作系统及设备驱
           动设计	293
    15.1.7  实验4 面向MJPEG解码
           的MPSoC系统优化	294
    15.2  实验——基于ARM7TDMI
          处理器的SoC设计	296
    15.2.1  任务目标	296
    15.2.2  设计参考	296
    15.2.3  建议使用的EDA工具	297
    15.2.4  基本SoC设计方案	297
    15.2.5  实验要求	299
    15.3  项目进度管理	299
    15.3.1  项目任务与进度阶段	299
    15.3.2  进度的管理	300
    本章参考文献	306
    附录A  Pthread多线程编程接口	307
    附录B  SoCLib系统支持包	310
    展开

    前     言

    序    一
    2007年是晶体管发明60周年,2008年是集成电路发明50周年。也许连晶体管的发明人威廉?肖克利(William Shockley)和集成电路的发明人杰克?基尔比(Jack Kilby)当初也没有意识到,他们的发明能够对后世产生如此重大和深远的影响,以至于今天我们的生活中晶体管和集成电路无处不在。1965年戈登?摩尔(Gordon Moore)提出了著名的摩尔定律(Moore’s Law),准确地预言了其后40多年集成电路技术的发展。尽管今天在面临功耗等诸多挑战的时候,人们对摩尔定律还能持续多久产生了一些疑问,但也没有人怀疑它在未来20年中还会一直有效。
    即使对集成电路技术一无所知的人,也很容易计算出226是一个多么巨大的数字。回顾集成电路在过去的40多年中以集成度每18个月翻一番的速度成长的过程,我们今天无论如何也不该再简单地使用芯片这个单词了,因为它已经无法准确地描述今天集成电路的复杂度和功能。在绞尽脑汁用小规模、中规模、大规模、甚大规模、超大规模和特大规模等形容词来描述集成电路复杂度的过程中,人们发现已经找不到更合适的形容词了,似乎语言的能力在高速发展的集成电路技术面前也有些黔驴技穷。上世纪末逐渐被人们所采用的系统级芯片(SoC,System on Chip)预示着这个行业在快速发展40年后,正在出现一个量变到质变的突破。
    2003年也许注定就是一个不平凡的年份,在亚洲国家遭受“非典”影响的同时,全球集成电路产业也悄悄地经历了一个痛苦、但是意义深远的变革。这次变革虽然没有惊天动地,但足以让集成电路产业来重新审视我们过去研究和预言过无数次的未来。我们曾经非常熟悉、且深信不移集成电路产业发展的动力,如以工艺能力为中心的工艺技术进步驱动产业发展,等比例缩小驱动性能提升和成本下降,提高性能是芯片追求的主要目标和动态功耗主导芯片功耗等,除了等比例缩小仍然是成本下降的主要手段之外,其他的都发生了深刻的变化。例如,以设计能力为核心的系统设计技术成为驱动产业发展的主要力量,创新驱动性能提升,芯片的功耗不再取决于动态功耗,而取决于静态功耗等。面对这些变化,我们一方面不得不感叹技术进步的迅猛和知识更新换代的频繁,另外一方面也惊讶地发现,我们要面对的不再是传统芯片的设计问题,包括软件、通信、应用等诸多系统层面的问题也成为我们必须面对和克服的挑战。不少有识之士在不断地提醒着我们SoC中的S(System)比C(Chip)更重要,这是因为了解S是设计C的先决条件。显然,SoC的设计者不仅要掌握芯片的设计技术,更要了解和掌握系统的知识。
    中国是信息产业大国,也是集成电路产业大国。经过数十年的精心组织和发展,中国已经成为全球集成电路产业的重要基地之一。可以预见的是,在未来若干年中,全球集成电路产业向中国转移的大趋势将不会改变,这不仅仅是因为中国经济的发展造就了庞大的市场需求,更是中国本土集成电路产业的进步营造了一个全球不可多得的,优秀的集成电路产业发展环境。以设计为龙头的产业发展策略在造就了一个生机勃勃的集成电路设计行业的同时,也极大地提升了我国在集成电路领域的创新能力。以移动通信为例,我们在第一代模拟移动通信中只是一个站在圈外的买家,在第二代移动通信的发展中期,我们就参与了关键芯片产品的竞争,而在第三代移动通信发展的初期,我们已经成为一个全球不能忽视的重要伙伴。这些有目共睹的变化昭示着中国集成电路产业发展的希望和强劲力量。进入新世纪以来,我们见证了集成电路产业在中国的飞速发展,更感受到产业发展对人才培养的迫切需求。与发达国家相比,我国集成电路设计人才的数量和质量都相差甚远,根本无法满足产业发展的需求。因此,我们完全有理由相信今后10年中对于集成电路人才的需求,特别是对高层次集成电路人才的需求将持续升温。
    人才的培养离不开一流的师资和教材。目前,国内高校在集成电路设计教学方面更多的是采用国外引进的专业基础教材,虽然其中不乏经典之作,但总体来看,这些教材缺乏从系统看芯片的介绍,缺乏对SoC概念的讲解,缺乏从工程的角度教会学生做SoC设计的内容,学生也很难将底层器件和上层系统联系在一起。这造成了国内培养的工程师往往能够设计一个小的功能模块,却很难胜任一个复杂SoC的设计。
    本书围绕SoC设计,全面深入地介绍了有关SoC的知识,着重阐述了SoC设计中广受关注的系统架构设计,低功耗设计,可测性设计,先进验证方法和后端设计。内容既包括SoC的概念介绍,常用的微处理器、总线和存储器,还包括SoC设计的完整流程和工具介绍,以及RTL代码编写指南等十分实用的内容,是一本内容全面并具有一定前瞻性的教材及参考书。
    本书的主要作者郭炜教授具有在Motorola长期参与芯片设计与项目管理的丰富经历,以及多年从事科研与教学的经验,书中不仅介绍了SoC设计领域的最新成果,还融入了很多来自工业界的实践经验和案例,可以帮助读者通过了解工业界实用的解决方案,快速提升对SoC设计的理解,掌握SoC设计的关键技术。书中不仅涉及芯片的设计,也包含了封装等一般集成电路设计教材中大多忽略的内容,使得实用化成为本书的第二个重要特点。
    本书没有遵循一般专著或教材的编写特点,而是以教会学生实用的设计技术为主线,按照SoC设计流程来组织和安排各个章节的内容,能够让初次涉足此领域的学生顺着书阅读,自然地学习和掌握SoC的设计过程,书中给出的实验大纲和项目进度管理等,不仅进一步充实了本书作为教材的内容,对于学生今后的就业也是不错的基础培训。
    过去几年中,我国越来越多的高等院校扩大了集成电路设计专业的人才培养,因此建设更多、更优秀、实践性更强的教材迫在眉睫。希望今后能够看到更多富有工程及教学经验的人士编写出更多、更好的教材,为我国集成电路设计人才的培养作出我们应有的贡献。
    
     
    (魏少军)
    2007年4月于北京清华大学
     
    序    二
    2007年初,我读了郭炜研究员编写的《SoC设计方法与实现》一书的手稿,并为之写序,我当时主要看到的是一个成功的SoC设计者的丰富实践经验。今天,我再次先于读者拜读《SoC设计方法和实现(第2版)》,明显看到了作者根据技术的革新与进步,对第1版的技术内容做了大幅度增删,也明显看到了沉淀在书稿中的作者在这4年多的时间里积累的教学经验。
    4年多来,传统的硅基CMOS主流工艺技术仍在不断改进,应用于不同领域的处理器的集成度还在不断增加。在晶体管集成度,单位功率性能和功能集成等关键指标方面,在新的记录不断产生的同时又不断被打破。高性能数字单元的实现工艺覆盖了不同的工艺技术,包括65nm、45 nm、40nm、32 nm及SOI CMOS技术。
    4年多来,SoC设计中所涉及的新器件、新结构迅速出现,模拟SoC的设计需求越来越多。数字技术的迅速发展和壮大,曾使人们一度忘记了真正的世界其实是模拟的世界!今天,为了满足模拟SoC信号处理的精度需求,大量使用了将数字信号处理模块嵌入到模拟电路模块的设计方法,利用这类技术研发的电路的性能已经可以与传统方式设计的高性能模拟集成电路相比拟,甚至有的已经超越了后者。
    4年多来,得益于先进的纳米尺度CMOS工艺技术及电路结构和实现技术的不断创新,无线通信电路模块的数据传输速率在不断提高。采用CMOS工艺的射频单元技术和电路技术发展迅速,利用载波频率为120GHz的频带,近距离无线通信的收发器可以实现10Gb/s的收发速率,这种无线链接的数据速率已经与传统的有线解决方案的速率十分接近。随着无线多媒体通信对数据通信速率的要求越来越高,SoC设计越来越多地要包含射频单元。
    4年多来,无论是面向高性能计算的SoC,还是面向低功耗消费电子产品的SoC,都发展迅速,系统中越来越多地要嵌入不同类型的存储单元。随着工艺的特征尺寸发展到32nm或28nm以下,SoC中包含的存储容量越来越大,性能越来越强,但是工艺尺寸缩小也使得包含嵌入式存储器的SoC设计面临越来越多的技术难题和挑战。
    4年多来,随着工艺水平的发展,处理器的系统集成度越来越高,从而在SoC设计时对系统级的功耗优化和有效的电源管理提出了更加苛刻的要求。由于低功耗的需要,SoC设计者有时不得不放弃对高工作频率的追求,转而通过集成多个工作频率较低的处理器核来并行执行任务。利用这种计算模式,在不需要运算时可以关掉某些处理器核或使之进入休眠模式,以降低系统功耗。
    经过4年多的技术演变,SoC设计者面临的设计问题、应用对象、可用设计元素及SoC设计方法与实现技术本身都已发生了很大变化。我很高兴地看到,郭炜研究员的及时修订体现了这种技术演变。
    《SoC设计方法与实现》第1版付梓时,郭炜研究员刚刚离开工业界,到大学执教,甚至可以说,她是SoC设计的专家,却是SoC设计人才培养(教学工作)的“新手”。我很高兴地看到,本书的修订在实验环节上做了大幅度的补充,充分反映了郭炜研究员的教学经验。
    
    《SoC设计方法与实现(第2版)》能更好地适应复杂SoC设计工作的需求,能够帮助读者掌握有关集成电路设计SoC技术工业化的解决方案,使读者能够及时了解SoC设计方法的最新进展,是一本内容全面、将理论与实践有机结合的教材及技术参考书,相信不论是高校的在校学生,还是SoC设计的入门者和有经验的工程师都可以从本书中获取有益的知识!
    
     
    (王志华)
    2011年5月于清华大学
    
     
    第3版前言
    随着对产品快速市场化和多样性需求的增加,半导体产业已经由技术驱动进入应用驱动阶段。创新周期越来越短,技术开发和产业化的边界日趋模糊,技术更新和成果转化更加快捷,产业更新换代不断加快。面向系统应用的新型SoC,融合计算、通信和多媒体等多种应用,由CPU+DSP+FPGA+硬件加速器+I/O等组成的混合架构,在能够满足多种功能的需求的同时,对成本和能效提出了更高的要求。在新的挑战面前,SoC设计方法也在不断地发展。基于FPGA的SoC设计,由于它的可重构性和设计周期短,更容易适合系统设计的变化,正在被越来越广泛地应用在汽车电子、网络通讯、超级计算及人工智能等领域。SoC中的IP和可复用的设计方案,加快了产品的快速实现,使得IP(包括验证IP)、验证环境不断标准化。统一的验证方法学(UVM)的出现,大大缩短研发时间。在对性能要求与日俱增的同时,能耗或者能效已成为与性能同等重要的设计约束。由此而发展的统一功耗格式标准(UPF标准),使得低功耗SoC设计更加高效。
    为了跟上工业界发展的步伐,本书第3版主要更新如下章节。
    1.在第2章SoC设计流程中,添加了基于FPGA的SoC设计流程。在FPGA上集成CPU软核或硬核,或将FPGA和CPU集成在同一芯片上,极大地扩充了FPGA的功能和应用领域,这种FPGA称为SOPC或“SoC FPGA”。但从功能上看,可以归类为基于FPGA的SoC。
    2.在第4章SoC系统架构设计中,添加了各类存储器在SoC中的使用及近年来基于新存储机制新型非易失存储器的介绍。在SoC中,存储器是决定性能的另一个重要因素。
    3.在第9章SoC功能验证中,添加了UVM验证方法学介绍。UVM提供了可重用的验证组件,减少验证的费用,目前已被工业界采纳。
    4.在第11章低功耗设计中,添加了UPF标准介绍,并通过具体例子,进一步掌握低功耗设计的实现方法。
    5.在第15章课程设计中,补充了ESL实验环境的搭建,减少学员在软件安装和配置上所花费的时间。
    在本书第3版的编写过程中,得到了很多来自工业界和学术界专家的修订建议及宝贵资料。这也促成第3版的完成。在此表示深深的谢意!
    
    
    作 者
    2017年6月
     
    第2版前言
    从本书的第1版出版(2007年)至今,SoC设计方法与实现技术已发生了很大变化。随着摩尔定律的延伸(More than Moore),SoC及SiP在各类消费电子、汽车电子、医疗电子等嵌入式应用中已成为主流,其系统结构也从简单的单核结构发展为复杂的多核甚至众核结构。
    本书在第1版的基础上,紧跟复杂SoC设计的发展潮流,强调和阐述SoC设计在系统结构、设计方法学、设计技术、验证方法上的最新进展和发展趋势。此外,本书与第1版相比的另一个显著特点是更加注重实验环节。新增加的实验采用了先进的电子系统级(ESL)设计方法,从单核SoC系统结构逐步优化到多核SoC(MPSoC ,Multi-processor SoC)系统结构,从串行程序设计到多线程并行程序开发,从嵌入式操作系统的移植到驱动程序的开发,内容覆盖SoC软硬件协同设计的完整过程,使读者能够将所学到的SoC设计的最新理论与具体设计实现技术相结合,增加感性认识,强化动手能力,从而能够更好地适应复杂SoC设计工作的需求。
    第2版主要做了如下修订:
    1.在第1章SoC设计绪论中,强调了SoC设计理论和实现技术的最新进展。在当前摩尔定律及其延伸(More than Moore)的背景下,阐述SoC设计方法与设计技术的发展与挑战。
    2.第4章SoC系统结构设计是第2版的重点内容。针对复杂SoC的发展趋势,增加了多核SoC的系统结构设计的内容。根据多核SoC系统结构设计的考虑,介绍可用的并发性、多核SoC设计中的系统结构选择、多核SoC的性能评价、典型的多核SoC系统结构,如片上网络(NoC)、可重构SoC等。此外,第4章在第1版的电子系统级设计基础之上,增加了对OSCI TLM 2.0最新事务级标准协议及建模方法的介绍。
    3.随着可复用技术的发展,一种比IP规模更大的可重用、可扩展复用单元应运而生,即平台。基于平台的设计方法可以使IP更容易集成到整个系统当中,可以更好地复用平台,进而可以更快地开发产品。在第5章IP复用的设计方法中,强调了平台的概念和基于平台的SoC设计方法。
    4.由于复杂的软硬件结构及众多的模块,验证已经成为复杂SoC设计中最关键也是最花时间的环节,它贯穿了整个设计流程。在第9章SoC功能验证中,增加了功能验证方法与验证规划的介绍,通过多个以SystemVerilog语言写的实例,强调验证的自动化。
    5.在第12章后端设计中,修改了时钟树综合部分,结合低功耗的应用需求,给出了相应的时钟树设计策略。同时,新加入了时钟网格的概念,并介绍时钟网格和时钟树融合的全局时钟结构。
    6.随着人与环境交互功能需求的增加,集成电路的类型从数字电路到模拟电路、射频电路、无源器件、高压电路、传感器、生物芯片等不断增加,这些电路的制造已超出了单一的CMOS工艺(Beyond CMOS)。系统集成和新的混合集成技术成为发展趋势。在第13章SoC数模混合信号IP的设计与集成中,增加了对SoC混合集成的新趋势的介绍,重点介绍了3D集成电路。与传统的SiP封装集成不同,3D集成电路是在芯片设计阶段依托EDA工具和特定的半导体生产工艺,直接在多层晶圆上完成晶体管集成,是一种单片集成技术。
    7.在第14章I/O环的设计和芯片封装中,增加了近几年更为成熟的倒置(FLIP-CHIP)封装方式对芯片I/O设计的影响。主要内容包括:倒置封装的原理、与普通IO的区别和基于倒置封装的芯片后端设计方法。
    8.增加了基于ESL设计方法的Motion-JPEG视频解码器设计实验。通过该实验,可了解并掌握从单核SoC到多核SoC的系统结构设计及软件开发的全部流程。
    本书提供电子课件,请登录华信教育资源网(http://www.hxedu.com.cn)注册下载。本书可作为高等学校电子信息、微电子、计算机等专业的高年级本科生和研究生的“SoC设计”或“高级VLSI设计”课程的教材及教学参考书,也可供IC设计工程师、嵌入式系统工程师学习、参考。
    第2版修订大纲由天津大学郭炜老师制定。第1、9章由郭炜老师编写,第4、5和15章由天津大学魏继增老师编写,第12、14章由上海交通大学郭筝老师编写,第13章由上海交通大学谢憬老师编写。全书由郭炜老师统稿。
    本书自第1版出版以来,收到了很多读者反馈。清华大学的魏少军教授、王志华教授等多位专家提出很多建设性的意见。法国国家TIMA实验室(TIMA Laboratory)系统级综合研究组的Frédéric Pétrot教授及沈浩研究员把他们多年来在ESL设计及多核SoC方面的研究成果无私的与我们分享,使第2版的实验得到了进一步充实。来自工业界的Synopsys 、ARM、IBM、苏州国芯等公司也提供了近几年他们关注的实际问题及解决方案,使本书的内容更贴近工业界的发展前沿。电子工业出版社为本书的顺利出版给予了很大帮助。由于篇幅的原因,对于书中提及和引用的参考文献的作者不能一一列出,他们的工作为本书提供了强有力的理论和实践的支持。在此,我们一并表示由衷的感谢!
    由于时间仓促,不足或错误之处,希望读者批评指正。
    
    作 者
    2011年7月
     
    前    言
    本书是普通高等教育“十一五”国家级规划教材,并被评为2008年度普通高等教育精品教材。
    由于我国集成电路设计发展迅速,人才的培养迫在眉睫,大部分IC设计工程师缺乏SoC整体设计的概念。2003年秋,上海交通大学为工程硕士开设了SoC设计课程,由于缺少相关的教材及参考书,学生所能阅读的内容非常有限,于是就开始着手编写本书。在近两年的编写过程中,前后修改过多次,其间分别试用于研究生的教学及对业界工程师的培训中。书中不仅融入了编者多年的工程经验,还尽可能地将近几年集成电路设计领域国内外最新的进展收入其中。
    本书适用于电子科学与技术和电子信息工程类专业高年级本科生及研究生集成电路领域相关课程的教学,也可以作为IC设计工程师的技术参考书。书中列举了大量工程实例来直接告诉读者“如何做SoC设计”。希望这本书不仅能使刚刚涉足集成电路设计领域的读者建立完整的SoC设计理念,而且能够给IC设计工程师提供一些帮助。
    本书结合SoC设计的整体流程,对SoC设计方法学及如何实现进行了全面的介绍。全书共分14章。
    第1章阐述SoC设计技术发展的趋势及所面临的挑战,这些挑战使读者专注于SoC设计的难点。
    第2章阐述软硬件协同设计的流程,以及基于标准单元的设计流程,希望读者对SoC设计的完整过程有一定的了解。本书其余几章是按照SoC设计流程,一步一步深入下去的。
    第3章介绍与SoC设计密切相关的EDA工具。SoC设计从系统架构设计开始,到硬件实现的每个步骤都与EDA工具紧密相连。通过这章的介绍,希望读者对SoC的设计流程有更深的认识。
    第4章阐述SoC的架构设计。重点介绍了新兴的、用于复杂SoC架构设计的电子系统级(ESL)设计方法。
    第5章介绍IP复用的设计方法及基于平台的SoC设计方法。SoC以IP复用为基础,而基于平台的SoC设计方法是在IP复用的基础上拓展开来的,此类方法更能满足快速的市场变化,目前被工业界广泛使用。
    第6章和第7章就RTL代码编写中常犯的错误,如缺少整体规划、同步电路与异步电路的处理等问题给出指导性的建议。
    第8章就综合的策略、静态时序分析(STA)及基于统计的时序分析(SSTA)方法加以详细介绍。这些方法对于前端和后端IC设计工程师都应该熟练掌握。其中SSTA方法是在45 nm以下工艺进行设计时最受关注的新方法。本章还结合Synopsys的工具给出设计实例。
    第9章提出了SoC验证所面临的问题和挑战,主要介绍系统级的验证策略和基于断言的验证(Assertion Based Verification)方法。
    第10章对SoC的可测试设计(DFT)进行介绍,包括逻辑和存储器的内建自测(BIST)、边界扫描和扫描链插入等。
    第11章介绍业界关注的低功耗设计问题和不同层次上的低功耗设计技术。
    第12章和第13章主要涵盖了后端设计的关键知识及数模混合电路在SoC设计集成时的考虑,包括布局布线、时钟分配和时钟树的生成,以及信号完整性问题和可制造性设计(DFM/DFY)等。
    第14章讨论了I/O环的设计及封装问题。包括噪声消除技术、ESD保护方案及如何选择SoC的封装形式等。
    此外,为了让读者更好地掌握本书的内容,掌握一定的SoC设计实际经验,在本书附录中,还引入了一个需要一个团队共同来完成的SoC设计实验,并就如何进行项目管理、如何控制进度加以介绍。对于一个完整的集成电路设计项目,团队合作、团队沟通至关重要,这也是本书希望有志于日后投身集成电路设计事业的人员所需要掌握的重要内容之一。
    本书为使用本书作为教材的读者提供免费多媒体电子课件,请登录华信教育资源网(http://www.huaxin.edu.cn或http://www.hxedu.com.cn)下载。
    本书由郭炜、郭筝和谢憬执笔完成。在编写期间,受到了来自多方面的支持和帮助。上海交通大学微电子学院的领导和师生一直对本书的编写给予了大力支持。学院付宇卓教授、汪辉副教授等同仁对本书的编写提出了很重要的建议并花费了大量时间为本书进行审稿。2003级、2004级和2005级的部分研究生参与了文献整理,修订了本书中的许多纰漏和差错。另外,清华大学的魏少军教授和王志华教授也对本书的撰写做了前瞻性的指导。电子工业出版社对本书的出版给予了热情的帮助。Synopsys公司为本书提供了许多实例。在此谨向所有在本书的编写和出版工作中曾给予鼓励和帮助的各界人士表示衷心的感谢!此外,在写作过程中,作者参阅了国内外作者的有关论文和著作,特别是本书参考书目中列出的论著,在此一并表示谢意!
    鉴于SoC技术发展迅速,且涉及众多技术领域,作者虽已尽力,但书中难免存在遗漏和错误之处,敬请读者批评指正。
    
    
    郭  炜
    2007年3月于上海
    展开

    作者简介

    本书暂无作者简介
  • 样 章 试 读
  • 图 书 评 价 我要评论
华信教育资源网