




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、大规模集成电路设计及应用第一章概论1、系统:硬件开发、软件开发、软硬件协同设计2、集成电路发展史:(1) 1904年,英国电气工程师fleming发明真空二极管,标志着世界从此进入 了电子时代(2) 1906年,美国lee de forest发明真空三极管,为电子计算机的发展奠定 了基础(3) 1946年,美国宾夕法尼亚大学诞生了第一台电子计算机(4) 1940年,贝尔实验室russel发明pn结(5) 1947年,贝尔实验室john bardeen和walter brattain发明点接触晶体 管(point contact transistor)(6) 1951年,贝尔实验室william
2、 shockley发明了结型晶体管(junction transistor)(7) 1958年,发明集成电路(采用一定的制造工艺,把整个电路的元器件制作 在同一块半导体基片上,构成特定功能的电子电路)(8) 1958年,t1公司jack kilby用5个集成原件做出了简单振荡器(9) 1959年,发明平面工艺技术(10) 1957 年,fairchild 公司 robert noyce 及同事 jean hoerni 发明了 刻蚀 氧化硅工艺,使复杂集成电路成为可能(11) 1960 年,bell 实验室 kahng 和 atalla 造出第一个 mosfet(12) 1967年,bell实验
3、室的kahng和sze发明浮栅(floating gate)工艺(13) 1970年,intel公司ik dram芯片(硅栅pm0s工艺)(14) 1971 年,intel4004 (硅栅 pm0s 工艺)j. fleming lee de forest w. shockley jack s. kilby gordon moore3、我国集成电路发展史(1) 1956年,研制出第一个锗晶体管(2) 1965年,研制出第一片集成电路4、集成电路的分类 按集成电路规模(1) 小规模(small scale tc) 10 门(2) 中规模(medium scale ic) 10100 门(3) 大规
4、模(large scale ic) 1001000 门(4) 超大规模(very large scale ic) 100001m(5) 特大规模(ultra large scale ic) lnfloom(6) 巨大规模(gigantic scale ic) >100m 按制造工艺(1) 双极ic(2) cmos ic(3) bi-cmos ic 按处理信号的类型(1) 模拟集成电路(2) 数字集成电路(3) 数模混合集成电路 按设计方法(1) 全定制设计(2) 半定制设计(3) 可编程设计 按生产目的(1) 通用集成电路(2) 专用集成电路(asic)5、集成电路设计方法(1) 设计要
5、求 开发时限尽可能短 计算设计费用,制造费用,人工费等设计成本 设计正确性 设计工程集成化要求更好的eda工具 可测试性(2) 一般的设计流程 系统描述一行为级仿真及优化一前端设计(寄存器传输级设计综合一门级综合 仿真一测试生成) 后端设计(电路设计及分析一物理设计及优化一版图设计验证)一芯片制造(3) 集成电路设计能力的发展趋势:芯片复杂度的增长速度超过了设计能力的 增长速度解决方案: 采用更有效的设计方法和设计流程 采用更有效、更适合的eda设计工具 采用更高层次的设计综合方法和最强有力的验证手段,保证设计的一次成功 采用低功耗设计方法解决功耗问题 在前端设计时充分考虑后端设计的要求,减少
6、迭代次数 采用可测试设计方法,保证芯片的可测试性(4) 层次化设计:自顶向下、自底向上行为域i结构域 几何域抽象层次(5)结构化设计第二章vlsi制造工艺与版图设计1、集成电路是由一些单个的器件组成的,每种器件基于版图设计由若干工艺步 骤制造完成。器件和电路的性能与版、工艺等有密切关系。2、集成电路平面工艺基础:热氧化工艺、扩散工艺、淀积工艺、光刻工艺3、cmos集成电路基本制造工艺:将nmos器件和pmos器件同时制作在同一硅衬 底上分为三类:p阱cmos工艺、n阱cmos工艺、双阱cmos工艺(使用双阱工艺不但 可以提高器件密度,还可以有效的控制寄生晶体管的影响,抑制闩锁现象)4、双阱cm
7、os工艺主要步骤:(i)衬底准备:衬底氧化,生长si3n4 (2)光刻p阱,形成阱版,在p阱区腐 蚀si3n4, p阱注入(3)去光刻胶,p阱扩散并生长si02 (4)腐蚀si3n4, n 阱注入并扩散(5)有源区衬底氧化,生长s13n4,有源区光刻和腐蚀,形成有 源区版(6) n管场注入光刻,n管场注入(7)场区氧化,有源区si3n4和si02 腐蚀,栅氧化,沟道掺杂(8)多晶硅淀积、掺杂、光刻和腐蚀,形成多晶硅版(9) nmos管光刻和注入硼,形成n+版(10) pmos管光刻和注入磷,形成p+版(ii)硅片表面生长si02薄膜(12)接触孔光刻,接触孔腐蚀(13)淀积铝, 反刻铝,形成铝
8、连线5、集成电路中的元件:双极型晶体管(pnp、npn)、mos晶体管(酮os、pmos、 cmos)、二极管、电阻、电容、电感6、版图设计基础:(1) 设计方法:手工设计,优点:有利于充分利用芯片面积,并能满足多种 电路性能要求。缺点:效率低、周期长、容易出错计算机辅助设计(cad).可 以降低设计费用和缩短设计周期自动化设计(eda):可以进行自动布局设计、 自动布线设计并根据设计要求进行设计优化,最终输出版图(2) 版图设计的输入是用工业标准def描述的电路网表,输出是用工业标准 cif/gdsii描述的版图。整个版图设计可分为:划分(partition)、布图规划(floor-plan
9、ning)、布局(placement)、布线(routing)、压缩(compaction)第三章器件设计技术1. m0sfet: metal oxide semi-conductor field effect transistor 是构成 vlsi 的基本原件2. cmos: complementary metal oxide semiconductor 互补金属氧化物半导体(1) nmos: n-type metal oxide semiconductor 门电压为高时导通,为低时关 闭(2) pmos: p-type metal oxide semiconductor 门电压为低时导通,
10、为高时关 闭3. 基本逻辑电路:(1) 组合逻辑电路:电路中没有存储单元,逻辑电路的输出完全由当前的输入 决定(2) 时序逻辑电路:电路中有存储单元,逻辑电路的输出由原来状态和当前的 输入决定第四章vehlog hdl建模与仿真1. 常见的英文缩写:pla: programmable logic array 可编程逻辑阵列pal: programmable array logic 可编程阵列逻辑pld: programmable logic device 可编程逻辑器件cpld: complex programmable logic device 复杂可编程逻辑器件fpga: field pr
11、ogrammable gate array 现场可编程门阵列asic: application specific integrated circuit 专用集成电路2. verilog hdl是硬件描述语言的一种,是目前应用最广泛的硬件描述语言之一, 用于数字系统的设计。设计者用它进行数字逻辑系统的b真模拟、时序分析、逻 辑综合|。vhdl与verilog hdl的比较:vhdl发展的较早,语法严格,而verilog hdl是 在c语言的基础上发展起来的一种硬件描述语言,语法较自由3. verilog hdl能够描述电路的5中抽象级别:系统级、算法级、rtl级、门级、 开关级(1) 系统级:用
12、高级结构实线外部性能的模型(2) 算法级:用高级结构实线算法运行的模型(3) rtl级(register transfer level):描述数据在寄存器之间的流动和如 何处理、控制这些数据流动的模型(4) 门级:描述逻辑门及其互相之间连接的模型(5) 开关级:描述器件中三极管和存储节点以及互相之间连接的模型 通过综合,行为描模t可能转1为门g描j的模块4. verilog的基本设计单元:verilog hdl模块。一个完整的verilog 1idl模型 由若干个verilog hdl模块构成,每个模块又由若干个子模块构成5. (1) verilog hdl程序是由模块构成的。每个模块的内容都
13、是嵌在module和 endnukidle两个语句之间的,每个模块实现特定的功能,模块是可以进行层次嵌 套的(2) 每个模块要进行端口定义,并说明输入输出口,然后对模块的功能进行行 为逻辑描述(3) verilog hdl程序的书写格式自由,一行可以写几个语句,一个语句也可 以分写多行(4) 除了 endmoudle语句外,每个语句和数据定义的最后必须有分号(5) 可以用/*/和/注释(6) vhdl 和 verilog hdl 的共同点: 能形式化的抽象表示电路的结构和行为 支持逻辑设计中层次与领域的描述 可借用高级语言的精巧结构来简化电路的描述 具有电路仿真与验证机制以保证设计的正确性 支
14、持电路描述由高层到底层的综合转化 硬件描述与实现工艺无关(有关工艺可以通过语言提供的属性包括进去) 便于文档管理 易于理解和设计重用 不同点: verilog hdl资源比vhdl丰富 verilog hdl在系统级抽象方面比vhdl略差一些,而在门级开关电路描述 方面比vhdl强得多 verilog hdl更易于掌握6. (1)模块的结构:模块由两部分组成:端口定义(接口描述),模块内容(逻 辑功能描述)(2) 模块的端口定义格式:module模块名(口 1,口 2);(3) 模块的内容:i/o说明内部信号说明7. 功能定义(有3种方法实现逻辑功能):(1) 用assign声明语句,例如:a
15、ssign a = b + c (2)用实例元件,例如: and #2 ul (1,a,b) (3)用 always 块8. (1)所有过程块(initial, always)、连续赋值语句assign和实例应用都是 并行的(2) always过程块内的语句是顺序执行的(3) 连续赋值语句assign和实例应用都可以独立于过程块存在于模块的功能 定义部分9. verilog hdl基本语法(1) 数据类型及其常量和变量verilog共有19种数据类型,最重要的四种:reg型、wire型、integer型、 parameter 型(2) verilog中有常量、变量之分,分属于19种数据类型 参
16、数型(parameter)定义常量,例如:parameter data_width = 8,counter=8 * 1024;模块应用时,可通过参数传递改变已经规定的值,隹一个模块中改变另一个模块的参数时,要用defparam命令。 变量:a.网络数据类型(wire, tir):表示实体之间的物理连接,该类型的 变量不能存储值,必须受到驱动器(门或assign语句)驱动,wire受单个驱动源的驱动,tir受多个驱动源的驱动wire型变量可以是任何方程式的输入信号,也可以是assign语句或实例元件的 输出。例如:wire a, b, c wire 4:0 dbb. reg型(寄存器数据类型):
17、通过赋值语句可以改变reg型变量的值,always 块中的每一个信号都必须定义为reg型。reg型通常是寄存器或触发器的输出, 但不一定总是。例如:reg 7:0 datareg q0, qlc. reg型的扩展:memory型,通过扩展reg型变量的地址实现例如:reg 7:0 memp 1023:0reg 7:0 memd 255:0.memory型不能综合。10. 运算符和表达式一*/11. 阻塞赋值和非阻塞赋值阻塞赋值与非阻塞赋值相比,就是阻塞赋值输出不延迟,而且是顺序执行;而 非阻塞赋值延迟一个时钟周期,并且是并发执行的非阻塞赋值(=):块结束后才完成赋值(例:f<=a, f不
18、是立即被赋值),在 always块描述的时序电路中应使用非阻塞赋值阻塞赋值( = ):赋值完成后块才结束(例:f=a, f立即被赋值),在always块 描述的时序电路中使用阻塞赋值可能产生错误,一般用在组合逻辑电路中12. 块语句(1) 顺序块:begin:块名块内语句 end 块内语句顺序执行每条语句的延迟时间是相对于前一条语句的仿真时间而 言的直到最后一条语句执行完,程序流程控制才跳出该语句块(2) 并行块:fork:块名块内语句join块内语句同时执行,块内语句的顺序是任意的块内每条语句的延迟时间是相 对于程序流程控制进入到块内的仿真时间延迟时间是用来给赋值语句提供执 行时序的当按时间
19、时序排列的最后的语句执行完后,或一个disable语句执行 时,程序流程控制跳出该程序块(3) 块名:为块取一个名字可以在块内定义局部变量,可以被其它语句调用(4) 起始时间和结束时间:对于顺序块:起始时间就是第一条语句开始被执行的时间,结束时间就是最后一 条语句执行结束的时间对于并行块:起始时间是程序流程控制进入该块的时间,结束时间是按时间排序 在最后的语句执行结束的时间13. case 语句:(1) 分支表迗式的值必须互不相同(2) 只允许有一个default语句(3) 陝有表迗式要有位宽,且必须相等(4) 要有default分支语句,否则产生逻辑锁存14. 循环语句(1) forever
20、 语句:格式:forever语句(或语句组);用于产生周期性的波形,作为仿真测试 的信号它与always语句的不同之处在于它不能独立写在程序中,必须用在initial块中(2) repeat语句(重复执行,次数由表迗式决定)格式:repeat (常量)语句(或语句组)(3) while 语句:格式:while (表达式)语句(或语句组);若表达式为真或非0则执行(4) for语句格式:for (循环变量初值;循环条件;增量)语句(或语句组)15. 结构说明语句四种:initial、always、task、function。任何过程块都从属于这4种结构说 明语句(1) initial 一个程序模
21、块中可以有多个initial块 每个initial块只在仿真开始时执行一次,多个initial块是并行的运行 的 作用:变量的初始化、产生激励波形,用于测试文件(2) always时序控制语句 always语句在仿真时不断重复执行,而后面的语句是否执行取决于“时序 控制”条件是否满足,缺少“时序控制”,程序将会出现死锁 时序控制条件即触发条件,包括边沿触发(posedgeaiegedge)、电平触发, 单个或多个 一个模块中可以有多个always块(3) function说明语句调用函数时返回一个用于表迗式的值。函数中必须对与函数名相同的寄存器赋值。范围缺省时,返回值为1位的reg型。函数的使
22、用规则:函数的定义中不能包含任何时间控制语句,即任何的 或wait来标识的语句 函数不能启动任务 函数至少有一个输入参量 函数中必须对与函数名相同的寄存器赋值(4) initial和always说明语句在仿真的一开始就立即开始执行。initial语 句只执行一次,always语句则不断地重复执行,直到仿真结束,在一个模块中, 使用initial和always语句的次数是不受限制的。task和function语句可以 在程序模块中一处或多处调用16. task 和 function 的区别(1) 函数只能和主模块共用一个仿真时间单位,任务可以有自己的仿真时间单位(2) 任务可以调用函数,函数不能
23、调用任务(3) 函数必须要有输入变量,任务可以有可以没有(4) 函数有返回值,任务没有返回值17. 宏定义define宏名宏内容(1) 建议宏名用大写字母(2) 宏定义只做置换,不作语法检查,编译时才报错(3) 先定义,后使用(4) 引用宏时在宏名前加上18. 文件包含处理 'include “文件名”(1) 一个include只能指定一个文件名(2) 文件包含可以嵌套19. 时间尺度'timescale时间单位/时间精度用来说明该命令后模块的仿真时间单位和时间精度,时间单位和时间精度的 参数值必须是整数,有效数字是1, 10, 100,单位是s, ms, us, ps, fs20. 条件编译 'ifdef宏名程序段1 else程序段2 end if21. 有限状态机由状态寄存器(触发器)作为状态记忆部件(常用正跳边沿触发的d触发器), 仅当触发信号到迗时刻才可能发生状态改变,n个触发器最多有2°个状态两种有限状态机:(1) mealy 型下一个输出是当前状态的输入的函数 下一个状态是当前状态和输入的函数(2) moore 型下一个输出是当前状态的函数 下一个状态是当前状态和输入的函数22. top-down设计和down-top设计比较top-down设计的设计过程是理想化的设计
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 仓库货物入库流程分析计划
- 第11课《送东阳马生序》教学设计-2023-2024学年统编版语文九年级下册
- 《瓮福(集团)有限责任公司对门坡磷矿(变更)矿产资源绿色开发利用方案(三合一)》评审意见
- 《贵州省安龙县戈塘金矿(整合)(变更)矿产资源绿色开发利用方案(三合一)》专家组评审意见
- 银行信贷知识培训课件
- 酒吧卫生知识培训课件
- 老年护理皮肿
- 供应链金融管理科学与工程
- 统编版小学语文二年级下册《语文园地七》精美课件
- 2025年海南货运资格考试答案
- PCB电路板的手工焊接技术培训
- 左肺占位术后护理查房
- RCA根本原因分析法在护理不良事件中的应用课件
- 港口物流 第3版 课件全套 第1-13章 港口物流发展历史-保税物流
- 免疫工程与炎症疾病
- YMO青少年数学思维26届二年级全国总决赛试卷
- 考勤补卡申请
- 多功能厅施工方案
- 电力拖动(课件)
- DB32/T 4441-2023 建设用地土壤污染风险管控技术规范
- 山东省济宁市2023年中考数学试卷(附答案)
评论
0/150
提交评论