您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 电子设计/PCB > Verilog入门教程
通信IC设计样稿,仅供参考作者:李庆华版权所有,转载请标明出处11第1章集成电路设计与HDL1.1本章概要本章将简单论述集成电路(IC)的概念与设计原理,并从IC的本质——“集成”出发,讲述IC的三个核心议题:“集成什么”、“如何集成”、“如何处理集成带来的利弊”。学习本章后应当建立起IC设计是一个系统工程的概念,知道VerilogHDL是一种硬件描述语言而不是设计语言,硬件电路本质上是并行运行的而且是有时序关系的。本章的内容安排如下:第1节从总体上论述什么是IC设计,IC设计的流程以及整体规划的重要性,并强调面向验证和软硬件结合的设计原则。第2节简要介绍Verilog语法,并通过10个例子讲述如何通过简单的HDL语句描述复杂的硬件电路。本节主要强调HDL给出的描述需要有具体对应的基础电路原型,并明确时序的概念。此外给出了各种常用的验证小技巧,帮助读者快速进行验证设计。第3节则是对第2节设计方法的一个总结和提炼。本节主要强调必须按照结构化方式设计电路,并需要遵循常规思维模式对复杂模块进行解耦,按照控制与数据分离的原则简化设计。此外,还讲述了芯片中控制流与数据流的设计方法。第4节则给出逻辑电路的各种设计技巧,引入吞吐率、电路时序等关键性概念,详细介绍了逻辑电路设计常用的优化方法:重定时、折叠、展开与脉动阵列,并给出背后隐藏的设计思想。第5节则针对IC中的定点化进行论述,强调定点化实质是人与机器的理解如何达到一致。第6节给出了HDL语言描述规范,并强调遵循规范实质是一种设计模式,能够有效增加设计成功率。通信IC设计样稿节选作者:李庆华版权所有,转载请标明出处21.2集成电路设计基础1.2.1集成电路的概念集成电路(IntegratedCircuit,缩写为IC)又称芯片,是现代信息社会的基石;就像石油是工业的血液一样,集成电路承载了信息时代的灵魂,是现代技术发展的精华结晶,所有现代的电子设备都必须依赖于芯片才能发挥出完全功效。集成电路在最开始时,只是完成多个基本元器件的集成,但经过数十年的演化,已经演变为一个完整独立的设备形态,单个芯片就可以完成一个传统的设备系统功能,达到真正的SystemonChip(SoC)。例如现在任何一台智能手机的处理器芯片,其处理能力就远超上世纪80年代的大型计算机。同时芯片也朝各个应用领域和各种应用场景演进,例如可穿戴式芯片,微机械(MEMS)芯片等。无论集成电路如何发展,但其最核心的部分,仍然没有改变,那就是“集成”,其所衍生出来的各种学科,大都是围绕着“集成什么”、“如何集成”、“如何处理集成带来的利弊”这三个问题来开展的。所以读者在学习和思考如何进行芯片设计时,必须站在芯片整体解决方案的竞争力、芯片设计生产的复杂度、整体芯片团队设计能力的角度进行思考。最典型的例子就是MTK的终端芯片解决方案,正是由于该芯片整体解决方案的竞争力超强,所以横扫了具备很强通信终端芯片设计能力的TI与Broadcom等公司的对应产品。1.2.1.1集成电路的定义集成电路的正式定义是指,把一定数量的常用电子元件,如电阻、电容、晶体管等,以及这些元件之间的连线,通过半导体工艺集成在一起的具有特定功能的电路。图1-1就是一个典型的集成电路芯片,集成了大量的功能部件,包括模拟电路、数字电路以及CPU。图1-1典型集成电路芯片通信IC设计样稿节选作者:李庆华版权所有,转载请标明出处3集成电路可以分为模拟芯片、数字芯片和数/模混合芯片三大类。数字集成电路是基于数字逻辑(布尔代数)设计和运行的,用于处理数字信号的集成电路。根据集成电路的定义,也可以将数字集成电路定义为:将元器件和连线集成于同一半导体芯片上而制成的数字逻辑电路或系统。根据数字集成电路中包含的门电路或元、器件数量,可将数字集成电路分为小规模集成(SSI)电路、中规模集成(MSI)电路、大规模集成(LSI)电路、超大规模集成VLSI电路、特大规模集成(ULSI)电路等。模拟集成电路主要是指由电容、电阻、晶体管等组成的模拟电路集成在一起用来处理模拟信号的集成电路。与通信信号处理相关的模拟集成电路,主要包括:射频电路(RF)、功率放大器(PA与LNA)、锁相环(PLL)、模拟滤波器、电源管理芯片等。通常模拟芯片与数字芯片需要密切配合才能实现一个完善的功能电路。因此,每个从事算法和通信芯片设计的读者,都应当熟悉上述几类模拟芯片的工作特性,并能根据模拟器件做出有针对性的设计。模拟集成电路的主要构成单片包括:放大器、滤波器、反馈电路、基准源电路、开关电容电路等。数模混合芯片则是同一芯片中既包含数字电路又包含模拟电路,当前消费电子和无线通信的主芯片通常都是此类芯片。图1-2例子为无线通信芯片(CMMB)的版图框架,该芯片架构有一定的代表性。通信IC设计样稿节选作者:李庆华版权所有,转载请标明出处4数字基带流水ADC锁相环锁相环数模转换基准源低噪放模拟滤波器混频器芯片管脚图1-2典型数模混合通信芯片内部版图1.2.1.2SoC的概念对于单一功能电路而言,采用纯粹的硬件逻辑设计方案(ASIC),基本能够满足应用需求。但对于通信系统或者移动互联网应用而言,芯片功能需求时刻变化,应对客户群体形形色色,如果采用纯硬件逻辑,必然导致应用市场极为狭窄,所以复杂的系统级芯片必须SoC化或者软件化。SoC化意味着:同样的芯片,通过加载不同的应用软件,实现不同的功能定义,实现单一芯片的通用化,从而达到单片成本最小化。因此,读者在后续设计中还需要熟悉如何将一个单纯的逻辑电路改造为能够支持各种软件定义的功能器件,实现芯片功能覆盖的软件化。在芯片中软件化的同时,我们需要了解硬件与软件各自的优缺点:硬件优点吞吐率高、全并行化处理、可以相对软件实现10倍~100倍的性能提升;相对CPU/DSP设计而言,复杂度较低,整体规划简单;软件设计相对简单,而且代码精简缺点成本较高:需要额外的硬件资源,芯片面积相对较大,此外还可能存在大量IP使用费用;通信IC设计样稿节选作者:李庆华版权所有,转载请标明出处5研发走起很长,从概念原型到RTL编码验证只是6个月;一次成品率很低,通常需要多次迭代验证才能正常工作;各类IC开发工具开销成本很高;软件优点成本较低,随时添加功能,而且不会随着芯片量产而发生变化;调试简单,无需考虑时序收敛,整机功耗控制相对容易。缺点相对硬件实现而言,性能较差;同时算法实现对CPU/DSP的处理速度、存储容量有较高要求。而且由于软件开发不确定性因素很多,通常在芯片上市后,依然需要发布大量补丁版本与大家接触最多的SoC芯片,就是当前的智能终端芯片,例如高通的骁龙801处理器或者联发科的MTK6592等。这些芯片都具备多核CPU与GPU,集成多种制式的无线通信模块,支持运行Android(linux的分支之一),能够安装各类应用软件,完成各类轻量计算。图1-3是此类芯片的技术分解图,通过该图可以发现终端芯片设计与设计一套完整的PC系统实际区别不大,核心在于软硬件的集成:图1-3终端芯片开发的基础与条件1.2.1.3集成电路设计的分工与合作当前主流的IC芯片,常常包含上千万个晶体管或者上亿个晶体管,非常的复杂。而芯片作为一次成形的产品,如果出现Bug,将造成极大的损失,因此IC设计必然要求专业化分工与合作,所以复杂IC设计的核心重点在于专业化的组织与管理。只有通过高效的组织与通信IC设计样稿节选作者:李庆华版权所有,转载请标明出处6管理,才能保证整个芯片的成功。个人英雄主义在芯片庞大的规模面前就像大海里面的浪花一样,没有太多的涟漪。这是任何一个准备从事IC设计的读者,必须要有的心理准备。IC设计通常包含多个方向,包括算法设计、系统构架、数字电路设计(数字前端)、模拟电路设计、版图设计、测试验证、数字后端与DFT(DesignforTest)、芯片生产测试设计(DFM设计)、芯片固件与软件设计、电路板与应用原型开发等。上述IC设计方向只有完整的组合在一起,并形成均衡,才能设计出一个完善的、具有一定竞争力且能被市场接受的芯片。图1-4为芯片分工层次图。图1-4芯片设计中的分工层次对于系统架构设计工程师而言,其设计的重点是保证IC芯片的整体架构合理,各个基本单元模块功能均衡、不存在设计短板,而且芯片在可控性、可验证性、可测性以及前后芯片产品的可维护性和延续性上具备卓越的性能。系统构架是整个IC设计中最基础的工作,产品是否满足市场和客户需求、上市时间是否领先竞争对手、功能是否具有竞争力、解决方案成本和芯片良率是否可控,都取决于系统构架。对于算法设计工程师而言,其设计的重点是保证IC芯片能够完成特定功能,且设计的算法具备可实施性。算法工程师能够决定芯片的性能和大部分成本,同时也是系统构架与电路设计的中间桥梁。对于电路设计工程师而言,其设计的重点在于将算法精确的用电路实现,同时兼顾功耗、成本和电路可测试性。此外还需要独立设计模块控制电路、各种电路胶粘逻辑(gluelogic)、时钟系统、复位系统以及全局控制逻辑。对于测试验证工程师而言,其工作的重点在于根据设计规范(Spec)和设计需求,对电路通信IC设计样稿节选作者:李庆华版权所有,转载请标明出处7进行测试验证。验证工作通常包含白盒测试与黑盒测试,往往需要引入很多的测试方法学(VMM)和测试手段,例如OVM/Assertion等。此外还需要对代码进行多种覆盖测试和可靠性、DFT/DFM测试。由于芯片验证的复杂性,往往会引入多个团队对同一款芯片做全方位验证。对于固件与软件工程师而言,其工作的重点在于配合电路工程师将整个IC芯片运行起来,充分挖掘出芯片的功能潜力,并提供各种扩展创意。当前的IC设计领域,固件与软件的开发工作量已经占据整个芯片开发的60%以上,而且还在持续增加。出现这种情况的原因在于,单纯的电路逻辑是无法应对灵活多变的市场需求,必须通过随时可变的软件进行应对。例如,现在的LTE终端芯片,除射频信号处理外,所有的基带(Baseband)都是可控和编程的,而协议处理则基本上交给多核CPU或者DSP进行处理。例如很多领先的无线通信芯片设计公司,软件设计划分的更加详细,包括软件平台(操作系统、设备驱动)、物理层协议软件、MAC协议处理、高层协议栈以及应用软件等。所以,对于芯片设计而言,软件就是整个芯片的灵魂,任何一款智能芯片开发首先应当想到如何灵活配置,并引入适当的软件支持。图1-5是IC设计中常见的软硬件协同开发流程图,读者可以发现软件开发实际上已经在IC设计中占据了很重要的位置:通信IC设计样稿节选作者:李庆华版权所有,转载请标明出处8图1-5芯片的软硬件协同开发流程讲述IC设计复杂性和分工的主要目的,是为了让读者充分了解到IC设计并不是一个单纯的画电路图或者写代码的过程,而是一个综合的实现过程,多个专业方向配合的过程。因此,读者除了掌握传统的设计方法外,还需要掌握系统设计、算法、验证、软件等基础知识。1.2.2IC设计的本质接触过电子产品的人都知道“摩尔定律”,即:集成电路上所集成元器件数量,每隔18个月就翻一倍;或者微处理器的性能每隔18个月提高一倍,或价格下降一半。这一定律揭示了信息技术进步的速度。图1-6摩尔定律的典型例子通信IC设计样稿节选作者:李庆华版权所有,转载请标明出处9该定律的起源最初来自于对Intel微处理器的性能与生成工艺的观察。最早的微处理器是Intel的4004,采用10us工艺,只有2300个晶体管,主频为0.74MHz;而在2015年,基于Haswell构架的酷睿i7笔记本计算机CPU,则采用22nm工艺和3D晶体管技术,包含超过10亿个晶体管,工作主频最高可达3.5GHz。从4004到SandyBridge,晶体管的速度提升了5000倍,功耗只有当初的5000分之一,价格则降低到了50000分之一。对于其他类似的芯片产品,同样遵循摩尔定律。例如大家正在使用的智能手机,正是由于摩尔定律的神奇作用,使大家很快用上了越来越强大,堪比桌面计算机的应用处理器和高速移动网络。图1-7Intel处理器的摩尔定律之路此外,物联
本文标题:Verilog入门教程
链接地址:https://www.777doc.com/doc-4359303 .html