数字系统设计笔记(一)数字IC实现途径 庄弈琪
参考书
- Neil H.E.Weste and David Harris著,汪东等译,CMOS超大规模集 成电路设计(第三版),中国电力出版社,2006.4。本书第四版由周 润德译,电子工业出版社,2012.7。
- Jan M.Rabaey等著,周润德等译,数字集成电路-电路、系统与设计 (第二版),电子工业出版社,2017.1。
- Michael Keationg、Pierre Bricaud著,沈戈等译,片上系统-可重用 设计方法学,,电子工业出版社,2001.5
1.1 概述
微处理器的历史演变规律是从不规则到规则,手工到自动,全定制到半定制.
1.2 全定制
- 人工设计为主 ◼ 手工完成电路设计和物理设计
- 计算机辅助(常用工具软件) ◼ 电路功能设计(Composer/S-Edit) ◼ 电路性能设计(HSpice, Spectre) ◼ 版图编辑(Virtuoso/L-edit) ◼ 版图验证(Diva, Dracula) ◼ 寄生参数提取(Star-RC) ◼ 电路后仿真( Dracula) ◼ 制板数据生成(Type out)
1980年代前的小规模(SSI)和中规模(MSI)数字集成电路,也就是早期的集成电路会采用这种方式.
优点:底层最优化
- 元器件:最佳尺寸→最优性能
- 拓扑结构:最佳布局→最小面积
- 连线:最短路径→最快速度
缺点
- 设计成本高:周期长,人力投入大,一次成功率低(人工难免出错),设计复用性差
- 自动化程度低:电路与版图规则性差,逻辑综合难以实现
适用
- 模拟电路:结构复杂而无规则
- 可复用模块:标准单元、库单元、具有重复性结构之单元(ROM、RAM等)
- 对性能要求极高的单元:加速器、乘法器、高速物理接口等
- 产量极大的标准电路:存储器、通用逻辑电路等,成本~投片成本
- 不计开发成本与时间的设计:如超级计算机、巨型计算机
- 反向设计的芯片
不适用
- 大规模数字IC:人工设计需数年
- 规模大、批量不大的IC:成本~设计成本
- 要求设计周期短、设计成本低的电路
1.3 门阵列/门海
门阵列(Gate Array):基于预制晶体管阵列的母片,设计者只需根据每种电路功能要求,设计管间的金属化互连和必要的通孔及接触孔即可
编程目标
- 尽量减少所用单元的数量(减少面积及连线长度)
- 尽量共栅、共源/共漏(并联器件)、共源漏(串联器件)
场氧隔离:用纵向厚氧和横向距离进行隔离,所占面积较大
栅隔离:用截止CMOS单元(N管G→GND,P管G→VDD)进行隔离,所占面积较小
门阵列/门海相对于全定制的利与弊
优点
设计周期短,投片成本低,易于自动化
缺点
芯片面积大,晶体管必然有冗余,管脚数选择受限制,底层优化程度低
1.4 标准单元/宏单元
基于标准单元将常用逻辑单元设计成等高但不等宽,1:3~3:1,单元行和布线通道间隔排布.
标准单元的描述方式
标准单元内部为全定制设计,绑定特定的工艺;不同工艺有不同的标准单元库,版图必须满足特定工艺的设计规则.
目前发展的趋势是逐渐干掉布线通道,以前的标准的单元是三层互连线设计,现代标准是七层互连线,也有无布线通道的标准单元.
标准单元库中有数百个逻辑单元,每种类型的单元会包含多种尺寸.
标准单元的优缺点
优点
面积利用率高于门阵列,按需选用标准单元,可以基本无冗余.标准单元内部采用全定制,底层性能优化程度高.优化程度和经济性介于全定制和门阵列之间
缺点
相对于门阵列而言,需要全套掩膜设计,生产周期较长.依赖于单元库,单元类型有限.依赖于EDA工具,能实现逻辑综合,但难度相比于门阵列大.对寄生参数(互连寄生参数、负载系数、串扰等)的估计不如门阵列准确.
宏单元(macro block)
特点是对单元的形状无限制
优点
- 面积利用率较标准单元法高(~25%)
- 性能优化程度高
缺点
- 专用性强,通用性差
- 对单元库、EDA综合、布线工具要求更高
适用范围
- 嵌入式存储器(最常见)
- 模拟电路单元(运放、ADC/DAC、PLL、振荡器等)
- I/O单元
- SOC中的IP
- 标准单元难以甚至无法实现的其它电路单元
一般来说处理器的L1都是SRAM,上图中的三管单元使用的比较少.
I/O单元示例
1.5 可编程器件
可编程逻辑阵列 (PLA,Programmable Logic Array)
任何组合逻辑都能用积之和的形式表示,而积之和的功能可以用“与”阵列和“或”阵列的组合,或者“或非”阵列和“或非”的组合来实现。
CMOS组合逻辑实现方案
伪nMOS或非实现
这个部分目前不是很懂,先标记一下,以后解决.1.5可编程器件,有些名词还不是很理解,这部分显然是本章节的重点
1.6 微处理器
微处理器的类型
- 中央处理器(CPU):兼具控制与处理
- 数字信号处理器(DSP) :擅长媒体(声音、图像、视频)处理
- 微控制器(MCU):主要用于控制
- 专用处理器(ASSP):针对特定用途开发,如GPU、NPU等
- 嵌入式处理器:与其他IP一起构成SoC
- 微处理器用做数字控制与处理的特点
- 基于软件,具有最高的自由度,可自由定义、修改和扩充功能
- 具有相对最差的速度、功耗、面积和成本指标
软硬件实现功能的对比
1.7 选择策略
CMOS IC实现方法的比较,基于单元的设计是指以标准单元/宏单元为主的设计,基于平台的设计是指带微处理器的SoC设计
ASIC和FPGA是很有意思的一对,目前市场规模ASIC应该多一些,现在还有一个新兴的RISC-V,不过这个和前两者不是相对的,这个是一种架构,这个也可以写一篇.
1.8 SoC
SoC(System on Chip)是将相对独立的系统功能集成在单一芯片上
SoC类型
- 数字SoC和数模混合SoC
- 定制SoC和可编程SoC(SoPC)
数字SoC的基本特征
- 多个IP模块由片上总线(Bus on Chip)或者片上网络(NoC,Network on Chip)连接二次
- 具有处理器和存储器
- 硬件、软件、固件协同实现功能
与基于电路板(PCB)的电子产品相比,基于SoC的电子产品体积小、重量轻,工作速度快(芯片内部总线速度>>PCB总线速度),系统功耗低,可靠性高(焊点数↓,无触点,屏蔽效果好,干扰小)
IP(Intellectual Property)是指事先定义、可重复使用、经过验证、能完成特定功能、可交易的集成电路模块.这部分的介绍我在Zynq-Book有个章节也有涉及.这里简单介绍:
- 软核(softcore):用RTL级的HDL代码方式表征
- 硬核(hardcore):以物理版图形式(GDS II)表征,针对特定工艺,具有固定的布局、尺寸和完全明确的时序参量.
- 固核(firmcore):以门级网表形式表征,用于描述实现逻辑的每个门和寄存器,功能上可以面向多个工艺,性能上与工艺有关,比软核的可靠性高,比硬核的灵活性强
全球IP提供商Top10
嵌入式处理器多采用简化指令集(RISC,Reduced Instruction Set Computer)而非复杂指令集(CISC)、多级(3-8)流水线结构、专用高速乘法器单元等,位数从4位到64位都有.
NOC
- 当集成的IP核很多特别是嵌入式处理器众多时,片上总线就成为限制SoC性能的瓶颈,片上网 络 ( NoC , Network on Chip)应运而生
- 与片上总线相比,NoC可连接的IP多得多,可实现并行通信以及全局异步局部同步传输,支路互连线短(互连的延迟与功耗低、信号完整性好),但面积开销大,拓扑结构复杂,数据健壮性难以保证
SoPC
可编程系统芯片SoPC(System on Programmable Chip)是将FPGA与其他IP集成在同一芯片上,试图兼具高集成度和高灵活性。
感觉比Zynq更进一步,只是展示的这个芯片性能比较弱.
SIP
系统封装SIP(System in Package)将多个芯片封装于同一管壳内,实现特定系统的功能
- 与SoC相比:可集成非矽CMOS基的元器件(高性能无源元件、MEMS、光元件、传感器、生物元件等),实现异质集成(HI,Heterogeneous Integration),设计周期↓,研发成本↓,技术难度↓,但速度、功耗和集成密度不如SoC
- 与PCB相比:速度、功耗、集成密度明显改善
说白了就是把芯片焊在一起.
Chiplet
以准三维(2.5D)的方式将多个裸芯粒(Chiplet,裸芯片的集合)集成在一个矽基衬底之上,形成具有相对独立的系统功能的SoID(System on Integrated Dies)
- 与SoC相比:裸芯粒可用不同工艺和材料制备,可涵盖CPU/GPU/NPU、存储器堆栈、RF收发芯片、GaN/SiC 宽带隙功率器件、微纳机电系统(MEMS/NEMS)等,可只购买裸芯粒而非IP,从而降低了研发成本
- 与SIP相比:制作在矽基衬底而非PCB衬底上,采用矽通孔和铜通孔而非封装键合线互连,从而提高了集成密度
这个工艺明显比上面那个靠谱一点.
3D SoC
- 将多个矽芯片层叠在一起,用晶圆键合(Wafer-on-Wafer bonding)实现层间键合,用矽通孔(TSV,through-silicon-vias)技术实现层间电互连
- 实现难度极大,目前仅用于高密度存储器
似乎AMD用的这个技术?,又是一个可以 探索的点.
系统芯片实现方式的比较
本章小结
◼ 数字集成电路有全定制、门阵列、标准单元、可编程器件、微处理器和SoC等多种实现方式,需根据性能要求、研发周期、经济性、灵活性等要求权衡选择 ◼ 对于大规模数字集成电路,除单元内部采用全定制之外,目前以标准单元和宏单元为主要实现方式 ◼ 如果重点考虑使用灵活性和研发周期而非性能与功耗的话,可以采用可编程器件甚至微处理器 ◼ 基于IP的SoC较之PCB来实现电子系统功能,可大幅度改善体积、重量、功耗、速度等指标,但实现结构复杂,技术难度高。由SoC衍生出的SoPC、SIP、Chiplet等为集成电路提供了更多的实现方式
可以看到,SoC是行业关心的领域,新技术层出不穷,前面1.5FPGA的部分只能等到国庆之后再见了,大家中秋节快乐,国庆快乐.