资源预览内容
第1页 / 共95页
第2页 / 共95页
第3页 / 共95页
第4页 / 共95页
第5页 / 共95页
第6页 / 共95页
第7页 / 共95页
第8页 / 共95页
第9页 / 共95页
第10页 / 共95页
亲,该文档总共95页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
目目 录录u绪论绪论 (1 1学时)学时)u第第1 1章章 数字系统设计与数字系统设计与EDAEDA技术技术 (2 2学时)学时)u第第2 2章章 PLDPLD器件结构器件结构 (2 2学时)学时)u第第3 3章章 硬件描述语言硬件描述语言Verilog HDLVerilog HDL (3 3学时)学时)u第第4 4章章 EDAEDA设计工具软件设计工具软件 (5 5学时)学时)u第第5 5章章 数字电路与数字系统的设计实现数字电路与数字系统的设计实现 (2 2学时)学时)u第第6 6章章 SOPCSOPC开发过程开发过程 (1 1学时)学时)u第第7 7章章 Nios Nios 嵌入式处理器设计嵌入式处理器设计 (2 2学时)学时)理论课共理论课共1818学时学时2021/5/231问题的提出问题的提出传统的数字系统设计方法传统的数字系统设计方法现代的数字系统设计方法现代的数字系统设计方法什么是什么是EDAEDA技术?技术?实例实例演示演示:电子秒表电路的设计:电子秒表电路的设计关于课程关于课程共共共共1 1 1 1学时学时学时学时绪绪 论论2021/5/232问题的提出问题的提出设计一个设计一个电子秒表电路电子秒表电路,使之完成以下功能:,使之完成以下功能:按按0.01s0.01s的步长进行计时;的步长进行计时;具有异步清零和启动具有异步清零和启动/ /停止计数功能;停止计数功能;并并用用数数码码管管显显示示其其秒秒高高位位、秒秒低低位位,百百分分秒秒高高位位、百分秒低位。百分秒低位。为为便便于于显显示示,秒秒和和百百分分秒秒信信号号均均采采用用BCDBCD码码计计数数方方式。式。 2021/5/233问题的提出(续)问题的提出(续)输入输入信号:信号:clk:系统时钟信号,:系统时钟信号,f=50MHz;clr:异步清零信号,负脉冲有效;:异步清零信号,负脉冲有效;startstop:启:启/停信号,负脉冲有效。停信号,负脉冲有效。输出输出信号:信号:dsec6.0:驱动数码管,显示秒高位;:驱动数码管,显示秒高位;sec6.0:驱动数码管,显示秒低位;:驱动数码管,显示秒低位;cn:分:分钟钟的的进进位信号,接位信号,接发发光二极管,高光二极管,高有效;有效;secd6.0、secm6.0 分分别别显显示示百百分分秒秒高高位位和和百百分秒低位。分秒低位。2021/5/234解决方案解决方案1 1传统的数字系统设计方法传统的数字系统设计方法1. 1. 根据设计要求划分功能模块;根据设计要求划分功能模块;2. 2. 确定确定输输入和入和输输出的关系,画出出的关系,画出真真值值表表;3. 3. 由真由真值值表写出表写出逻辑逻辑表达式表达式;4. 4. 利用公式或卡利用公式或卡诺图进诺图进行行人工化人工化简简;5. 5. 根据根据化化简简后的后的逻辑逻辑表达式表达式画出画出电电路原理路原理图图;6. 6. 在面包板上在面包板上进进行行实验实验,验证验证电电路的正确性;路的正确性;7. 7. 若若无无错误错误,再在透明薄膜上用,再在透明薄膜上用贴图贴图符号符号贴贴PCBPCB图图;8. 8. 检查检查后送制板厂制板;后送制板厂制板;9. 9. 对对PCBPCB板板进进行行安安装装、调调试试,若若有有大大的的错错误误,修修改改设设计计,重复以上重复以上过过程,重新制板。程,重新制板。搭积木的方式!搭积木的方式!基基于于电电路路板板的的设设计计方方法法采采用用固固定定功功能能的的器器件件(通用型器件),通过设计(通用型器件),通过设计电路板电路板来实现系统功能来实现系统功能2021/5/235传统的数字系统设计方法的传统的数字系统设计方法的缺点缺点效率低下效率低下所有这一切,几乎都是手工所有这一切,几乎都是手工完成!完成!设计周期很长;设计周期很长;容易出错;容易出错;芯片种类多,数量大,受市场的限制;芯片种类多,数量大,受市场的限制;设计灵活性差;设计灵活性差;产品体积大。产品体积大。2021/5/236解决方案解决方案2 2现代的数字系统设计方法现代的数字系统设计方法首首先先在在计计算算机机上上安安装装EDAEDA软软件件,它它们们能能帮帮助助设设计计者者自自动动完完成成几几乎乎所所有有的的设设计计过过程程;再再选选择择合合适适的的PLDPLD芯芯片片,可可以以在在一片芯片中一片芯片中实现实现整个数字系整个数字系统统。基基于于芯芯片片的的设设计计方方法法采采用用PLDPLD(可可编编程程逻逻辑辑器器件件),利用利用EDAEDA开发工具,通过开发工具,通过芯片芯片设计来实现系统功能。设计来实现系统功能。EDA软件软件空白空白PLD+数字系统数字系统编程编程2021/5/237现代的数字系统设计方法(续现代的数字系统设计方法(续1 1)1. 1.根据设计要求划分功能模块根据设计要求划分功能模块2. PLD2. PLD开发(利用开发(利用EDAEDA工具)工具)(1 1)设设计计输输入入:采采用用硬硬件件描描述述语语言言(HDLHDL),用用条条件件语语句句或或赋赋值值语语句句表示表示输输入和入和输输出的出的逻辑逻辑关系,将整个程序关系,将整个程序输输入到入到计计算机中;算机中;(2 2)设设计计的的编编译译:EDAEDA工工具具可可自自动动进进行行逻逻辑辑综综合合,将将功功能能描描述述转转换换为为门门级级描描述述,或或转转换换成成具具体体PLDPLD的的网网表表文文件件,将将网网表表文文件件自自动动适适配到具体芯片中配到具体芯片中进进行行布局布布局布线线;(3 3)功能仿真功能仿真和和时时序仿真序仿真;(4 4)编编程下程下载载到到实际实际芯片中,在芯片中,在实验实验台上台上进进行行验证验证;(5 5)在在每每一一阶阶段段若若有有问问题题,可可在在计计算算机机上上直直接接修修改改设设计计,重重复复以以上上过过程。程。2021/5/238现代的数字系统设计方法(续现代的数字系统设计方法(续2 2)3. 3. 设计包含设计包含PLDPLD芯片的电路板芯片的电路板(1)在计算机上利用)在计算机上利用EDA软件画软件画电路原理图电路原理图;(2) 进行电气规则检查无误后,自动生成网表文件;进行电气规则检查无误后,自动生成网表文件;(3) 利用利用EDA软件画软件画PCB图图,自动布线;,自动布线;(4) 自动进行设计规则检查,无误后输出文件,制板。自动进行设计规则检查,无误后输出文件,制板。 优点优点:效效率率高高所所有有这这一一切切,几几乎乎都都是是借借助助计计算算机机利利用用EDAEDA软件软件自动自动完成!完成!容易检查错误,便于修改;容易检查错误,便于修改;设计周期短、成功率很高设计周期短、成功率很高 ;产品体积小。产品体积小。2021/5/239什么是什么是EDAEDA技术?技术?EDAEDA(Electronic Design AutomationElectronic Design Automation,电子设计自动化),电子设计自动化)是在计算机的辅助下完成电子产品设计的一种先进的是在计算机的辅助下完成电子产品设计的一种先进的硬件设计技术!硬件设计技术! 是立足于计算机工作平台开发出来的一整套先进的设是立足于计算机工作平台开发出来的一整套先进的设计电子系统的计电子系统的软件工具软件工具。计算机并口计算机并口器件编程接口器件编程接口PCB BoardPCB BoardPLD编程目编程目标文件标文件2021/5/2310EDAEDA技术的范畴技术的范畴模拟电路模拟电路数字电路数字电路混合电路混合电路设计输入设计输入逻辑综合逻辑综合仿真仿真编程下载编程下载本课程内容本课程内容!2021/5/2311学习学习EDA到到底有什么用呢底有什么用呢?真有趣,可以按自己的想法设计一个芯片!真有趣,可以按自己的想法设计一个芯片!我也要参加全国大学我也要参加全国大学生电子设计竞赛!生电子设计竞赛!呀,毕业设计和冯如杯正好能用得上哎!呀,毕业设计和冯如杯正好能用得上哎!原来在一个芯片里就可以设计原来在一个芯片里就可以设计一个完整的计算机系统呀!一个完整的计算机系统呀!找工作时也算得上一技之长哦!找工作时也算得上一技之长哦!2021/5/2312本课程要学习的本课程要学习的PLDPLD设计设计EDAEDA工具软件工具软件1. Quartus 1. Quartus 美国美国Altera公司公司自行设计的第四代自行设计的第四代PLD开发软件开发软件目前版本:目前版本:5.1可以完成可以完成PLD的设计输入、逻辑综合、布局与布线、仿真、的设计输入、逻辑综合、布局与布线、仿真、时序分析、器件编程的全过程时序分析、器件编程的全过程同时还支持同时还支持SOPC(可编程片上系统)设计开发(可编程片上系统)设计开发2. ModelSim2. ModelSim美国美国Mentor Graphics公司的子公司公司的子公司Model Technology开发开发的仿真工具的仿真工具目前版本:目前版本:6.0业界使用最广泛的业界使用最广泛的HDL语言仿真器之一语言仿真器之一支持支持VHDL、Verilog HDL或混合或混合HDL语言设计语言设计仿真仿真功能强大功能强大,仿真,仿真速度快速度快!2021/5/2313实例演示实例演示 :电子秒表电路的设计:电子秒表电路的设计假设系统时钟为假设系统时钟为50MHz50MHz, PLDPLD器件为器件为EP1S10F780C6EP1S10F780C6。设计思路设计思路采用自顶向下的设计方法:采用自顶向下的设计方法:需要两个分频器分频器,将50MHz分频为10KHz,将10KHz分频为100Hz;需要一个BCDBCD码计数器码计数器,可分别对秒和百分秒位循环计数;需要一个译码器译码器,将BCD计数器的输出译码为7段显示器的7段输入。2021/5/2314系统功能框图系统功能框图bdsec3.0clk_50MHzclk_10KHz分频器分频器1BCD计数器计数器译码器译码器译码器译码器bsec3.0dsec6.0sec6.0cnclrT触发器触发器startstop与门与门分频器分频器2clk_100Hzbsecd 3.0bsecm3.0译码器译码器译码器译码器secd6.0secm6.02021/5/2315采用采用Quatus Quatus 的的PLDPLD设计方法设计方法千万记住千万记住哦!哦!1 1. 首先在资源管理器下创建一个工作目录。2 2. 在Quatus 中创建一个工程。3 3. 子模块设计:每个模块可以用HDL语言描述,对每个模块进行编译、仿真,通过后然后生成模块符号。4 4.顶层设计:创建一个顶层图形文件,将各模块符号放到图中,添加输入、输出引脚,连线;编译,仿真。5 5. 给输入、输出引脚分配引脚号码,编程下载。工作目录和工程名工作目录和工程名不能有空格和汉字!不能有空格和汉字!2021/5/2316演演 示示第第1 1步步:在资源管理器下:在资源管理器下创建一个工作目录创建一个工作目录second。第第2 2步步:启动:启动Quatus II,执行菜单命令,执行菜单命令“ File New Project Wizard”,创建一个工程,工程名为,创建一个工程,工程名为second。 若要打开一个已有的工程,则执行若要打开一个已有的工程,则执行“ File Open Project ”命令。命令。第第3 3步步:设计子模块:设计子模块(1 1)执行菜单命令“ File NewFile New”,新建一个文本文件clkdiv100 .vclkdiv100 .v,采用Verilog HDL语言描述;(2 2)存盘;(3 3)指定该子模块为顶层实体,执行 “Processing Processing Start CompilationStart Compilation”命令,对其进行全编译。最好每个工程都有最好每个工程都有自己的工作目录!自己的工作目录!2021/5/2317module clkdiv100 (clr,clkin,clkout,count); input clr,clkin; / 输入端口声明输入端口声明 output clkout,count; / 输出端口声明输出端口声明 reg6:0 count; reg clkout; always (posedge clkin or negedge clr) begin if (!clr) count=0; / 异步清零!低有效异步清零!低有效 子模块设计子模块设计100100分频器分频器 模块模块1 1 10KHz 10KHz到到100Hz100Hz的分频电路(采用的分频电路(采用Verilog HDLVerilog HDL语言描述)语言描述)(2) I/O说明说明(1) 端口定义端口定义模块名模块名(同文件名同文件名)(3) 功能描述功能描述2021/5/2318子模块设计子模块设计100100分频器(续)分频器(续) else if (count6:0=99) begin clkout=1; / clkout只在计数值为只在计数值为99时为时为1 count6:0=0; end else begin clkout=0; / clkout在其他时候都为在其他时候都为0 count6:0=count6:0+1; end endendmodule续前页续前页2021/5/2319子模块设计子模块设计BCDBCD计数器计数器 模块模块2 2 BCD BCD计数器计数器module bcdcnt(dsec,sec,secd,secm,cn,clkin,clr); input clkin,clr; /Tclkin = 0.01s output3:0 dsec,sec,secd,secm; output cn; /秒高位向分钟的进位秒高位向分钟的进位 reg3:0 dsec,sec,secd,secm; reg cn; always (posedge clkin or negedge clr) begin if (!clr) /(1)异步清零!)异步清零! begin cn=0; /进位信号也必须清零!进位信号也必须清零! dsec3:0=0; sec3:0=0; secd3:0=0; secm3:0=0; end 2021/5/2320子模块设计子模块设计BCDBCD计数器(续计数器(续1 1)续前页续前页else /(2)计数,采用)计数,采用4个个if语句的嵌套语句的嵌套 begin if(secm3:0=9) /百分秒低位是否为百分秒低位是否为9? begin secm3:0=0; if(secd3:0=9) /百分秒高位是否为百分秒高位是否为9? begin secd3:0=0; if(sec3:0=9) /秒低位是否为秒低位是否为9? begin sec3:0=0; if(dsec3:0=5) /秒高位是否为秒高位是否为5? dsec3:0=0; else dsec3:0=dsec3:0+1; end else sec3:0=sec3:0+1; end else secd3:0=secd3:0+1; end else secm3:0=secm3:0+1;2021/5/2321子模块设计子模块设计BCDBCD计数器(续计数器(续2 2)续前页续前页/(3)产生向分钟的进位信号)产生向分钟的进位信号 if (dsec3:0=5)&(sec3:0=9)&(secd3:0=9)&(secm3:0=9) cn=1; else cn Simulation ToolTools Simulation Tool”命令,打开仿真器工具窗口; 单击StartStart按钮,开始仿真。bcdcnt.vwfbcdcnt.vwf2021/5/2323创建模块符号创建模块符号(5 5)创建模块符号 仿真通过后,仿真通过后,执行“File Create/Update Create Symbol File Create/Update Create Symbol Files for Current FileFiles for Current File”菜单命令,创建模块符号(文件后缀为.bsf.bsf)。2021/5/2324子模块设计子模块设计7 7段码译码器段码译码器 模块模块3 3 7 7段段LEDLED显示器显示器( (共阳极)译码器。共阳极)译码器。 module p7seg(out,data); input 3:0data ; /7段显示器输入段显示器输入 output 6:0 out; /7段显示器字段输出段显示器字段输出 out6:0相当于相当于a,b,c,d,e,f,g reg 6:0 out; always (data ) case (data) 4d0: out = 7b0000001 ; 4d1: out = 7b1001111 ; 4d2: out = 7b0010010 ; 4d3: out = 7b0000110 ; 4d4: out = 7b1001100 ; 4d5: out = 7b0100100 ; casecase语句适于对语句适于对同一个同一个控制信控制信号取不同的值号取不同的值时,输出取不时,输出取不同的值!同的值!2021/5/2325子模块设计子模块设计7 7段码译码器(续)段码译码器(续) 4d6: out = 7b0100000 ; 4d7: out = 7b0001111 ; 4d8: out = 7b0000000 ; 4d9: out = 7b0000100 ; default:out Assignment EditorAssignnments Assignment Editor”菜单命令Assignment Assignment EditorEditor2021/5/2329引脚锁定(续)引脚锁定(续)second_download.bdf2021/5/2330编程下载编程下载(2 2)将该图形文件设置为)将该图形文件设置为顶层实体顶层实体,编译,则生成编程目标,编译,则生成编程目标文件文件second.sofsecond.sof文件(文件(编程目标文件自动与其工程同名)编程目标文件自动与其工程同名);(3 3)编程下载;)编程下载; 执行“Tools ProgrammerTools Programmer”命令,在编程器窗口中 选中“Program/ConfigureProgram/Configure”复选框;单击StartStart按钮,开始编程下载。若完成编程,则在Message窗口中显示“Configuration Configuration succeededsucceeded”。(4 4)在线校验。)在线校验。 利用实验板上的按钮,模拟启动计数、暂停计数和继续计数,以及异步清零功能 ,然后观察数码管和LED的显示,看是否与预定的功能相符。PLDPLD器件和器件和EDAEDA技术的出现改变了技术的出现改变了传统的数字系统设计思想,使硬件传统的数字系统设计思想,使硬件设计变得简单、高效!设计变得简单、高效!2021/5/2331本本课课程程主主要要学学习习基基于于可可编编程程逻逻辑辑器器件件(Programmable Logic Device,PLD)的的EDA技技术术和和SOPC(System on Programmable Chip,可,可编编程片上系程片上系统统) 技技术术。本课程包括理论教学和实验教学两大部分。本课程包括理论教学和实验教学两大部分。理理论论教教学学共共包包括括7章章,以以应应用用为为主主,按按照照“技技术术器器件件设设计计语语言言设设计计软软件件实实例例”的的顺顺序序介介绍绍当当前前PLD设设计计的的主主导导思思想想及及设设计计方方法法,在在最最后后两两章章简简要要介介绍绍SOPC设计方法。设计方法。学分:学分:2.5学时学时:理论课:理论课18学时学时 + 实验课实验课28学时学时 先修课程先修课程:数字电子技术,计算机接口与通信技术:数字电子技术,计算机接口与通信技术课程简介课程简介2021/5/2332实验教学内容实验教学内容 自自 学学时钟时钟分分频电频电路路按按钮钮消抖消抖电电路路卡式卡式电话计费电话计费器器电电子子抢抢答器答器FIRFIR滤滤波器波器4 4位算位算术逻辑单术逻辑单元元键盘键盘控制器控制器鼠鼠标标控制器控制器RS232RS232的控制电路的控制电路 关关 于于 课课 程(续程(续1 1) 必必 做做电电子秒表子秒表电电路路乐乐曲演奏曲演奏电电路路数数码码管管扫扫描描显显示示电电路路交通交通红绿红绿灯控制器灯控制器电电子日子日历历与与电电子子时钟时钟电电梯控制器梯控制器VGAVGA显显示器的控制示器的控制电电路路基于基于SOPCSOPC的的电电子子钟设计钟设计 2021/5/2333教学目标教学目标 拓拓宽宽知知识识面面,深深化化对对数数字字电电子子技技术术和和计计算算机机接接口口与与通信技术等知识的理解;通信技术等知识的理解;熟练掌握熟练掌握Verilog HDLVerilog HDL硬件描述语言;硬件描述语言;能能够够采采用用各各种种输输入入方方法法,综综合合使使用用多多种种EDAEDA工工具具软软件件,进进行行PLDPLD的的设设计计、编编译译、仿仿真真及及下下载载,掌掌握握EDAEDA设设计计的基本原理和方法;的基本原理和方法;熟熟练练应应用用EDAEDA技技术术进进行行基基于于PLDPLD的的数数字字系系统统的的设设计计与与开发;开发;能能够够熟熟练进练进行行SOPCSOPC的的设计设计。关关 于于 课课 程(续程(续2 2)2021/5/23341.基于FPGA的嵌入式系统设计 任爱锋等编著,西安电子科技大学出版社,20042.EDA实验指导书,自编 教材教材 (1 1)数字系统设计与Verilog HDL 王金明、杨吉斌编著,电子工业出版社,2002(2 2) SOPC技术实用教程 潘松等编著,清华大学出版社,2005(3 3) 从算法设计到硬线逻辑的实现复杂数字逻辑系统的Verilog HDL设计技术和方法 夏宇闻编著,高等教育出版社,2001 (4 4)从算法设计到硬线逻辑的实现实验练习与Verilog 语法手册 夏宇闻编著,高等教育出版社,2001主要参考书主要参考书关关 于于 课课 程(续程(续3 3)2021/5/2335课程考核课程考核考核方式:大作业(独立完成) 实验理论课考试(闭卷)成 绩:大作业4545 实验成绩4040 理论课考试1515 关关 于于 课课 程(续程(续4 4)2021/5/23361.1 1.1 数字系统的设计数字系统的设计1.2 EDA1.2 EDA技术与技术与PLDPLD1.3 IP1.3 IP核复用技术与核复用技术与SOCSOC1.4 1.4 数字系统的实现方式数字系统的实现方式1.5 1.5 数字系统的设计描述方法数字系统的设计描述方法 共共共共2 2 2 2学时学时学时学时第第1 1章章 数字系统设计与数字系统设计与EDAEDA技术技术2021/5/23371.1 1.1 数字系统的设计数字系统的设计一、数字系统的概念一、数字系统的概念二、传统的数字系统设计方法二、传统的数字系统设计方法三、现代的数字系统设计方法三、现代的数字系统设计方法内容概要内容概要2021/5/23381.1 1.1 数字系统的设计数字系统的设计一、数字系统的概念一、数字系统的概念电子系统电子系统1. 1. 数字系统数字系统定义定义定义定义凡是可完成一个特定功能的完整的电子装置。特点特点特点特点由一组电子元件或基本电子单元电路相互连接、相互作用而形成的电路整体,能按特定的控制信号,去执行所设想的功能。分类分类分类分类模拟电子系统数字(电子)系统模拟-数字混合电子系统 2021/5/23391.1 1.1 数字系统的设计数字系统的设计模拟电子系统模拟电子系统定义定义定义定义由若干模拟集成电路、单元电路和分立元器件组成,对模拟信号进行检测、处理、变换和产生的电子系统。 数字(电子)系统数字(电子)系统特点特点特点特点由若干数字电路和逻辑部件组成,处理及传送数字信号。定义定义定义定义凡是利用数字技术对数字信息进行处理、传输的电子系统。优点优点优点优点工作稳定可靠,抗干扰能力强;精确度高;便于大规模集成,易于实现小型化;便于模块化;便于加密、解密。2021/5/23401.1 1.1 数字系统的设计数字系统的设计模拟模拟- -数字混合电子系统数字混合电子系统定义定义定义定义由模拟电子电路和数字电子电路组成的电子系统。 应用应用应用应用主要用于过程控制和各种仪器仪表中,完成对如温度、压力、流量、速度等物理量的测量、控制和显示等。温度温度电压电压大信号大信号数字数字信号信号控制控制信号信号模拟模拟信号信号图图1-1 1-1 水温自动控制系统水温自动控制系统 2021/5/23411.1 1.1 数字系统的设计数字系统的设计数字电路数字电路:对数字信号进行算术运算和逻辑运算的电路。数数字字集集成成电电路路:在一块半导体基片上,把众多的数字电路基本单元制作在一起形成的数字电路 。数字集成电路按集成度分数字集成电路按集成度分 每块包含基本元件数每块包含基本元件数小规模集成电路SSIC, 10 100个;中规模集成电路MSIC, 100 1000个;大规模集成电路LSIC, 1000 10000个;超大规模集成电路VLSIC, 10000个以上。 2. 2. 数字集成电路数字集成电路2021/5/23421.1 1.1 数字系统的设计数字系统的设计按逻辑功能的特点分按逻辑功能的特点分:(1 1)通通用用型型:具有很强的通用性,逻辑功能较简单,且固定不变。(2 2)专专用用型型:即专用集成电路ASIC(Application Specific Integrated Circuit),为某种专门用途而设计的集成电路。数字系统的发展得益于数字系统的发展得益于数字器件数字器件和和集成技术集成技术的发展。的发展。摩尔定律(摩尔定律(MooreMoores laws law):每每1818个月,个月,芯片集成度提高芯片集成度提高1 1倍,功耗下降一半。倍,功耗下降一半。2021/5/23431.1 1.1 数字系统的设计数字系统的设计 SSICMSIC LSIC VLSIC SOC(System On Chip片上系统)片上系统)SOPC(System On a Programmable Chip,可编程片上系统),可编程片上系统)3. 3. 数字器件的发展数字器件的发展4. 4. 集成(集成(ICIC,Integrated CircuitsIntegrated Circuits)技术的发展)技术的发展芯片的工艺线宽越来越小芯片的工艺线宽越来越小 从从19971997年的年的0.350.35 m m,发展到现在的,发展到现在的90nm90nm。设计周期越来越短设计周期越来越短 19971997年时需要年时需要12121818月,现在可能只需要半年甚至更短!月,现在可能只需要半年甚至更短!集成度越来越高集成度越来越高 从从19971997年的年的2020万万5050万门,发展到现在的几千万门。万门,发展到现在的几千万门。2021/5/23441.1 1.1 数字系统的设计数字系统的设计最具有代表性的最具有代表性的IC芯片:芯片:微控制芯片(MCU,Micro Control Unit)可编程逻辑器件(PLD,Programmable Logic Device) 数字信号处理器(DSP,Digital Signal Processor)大规模存储芯片(RAM/ROM,Random Access Memory/Read Only Memory)光电集成芯片(OEIC,Optical Electronic IC) 以上这些器件构成了现代以上这些器件构成了现代数字系统的基石。数字系统的基石。2021/5/23451.1 1.1 数字系统的设计数字系统的设计二、二、传统传统的数字系统设计方法的数字系统设计方法n基基于于电电路路板板采采用用固固定定功功能能器器件件(通通用用型型器器件件),通,通过设计过设计电路板电路板来来实现实现系系统统功能功能写出真值表或状态表推出逻辑表达式化简逻辑电路图用小规模逻辑器件来实现特点特点特点特点采用自下而上(Bottom Up)的设计方法采用通用型逻辑器件搭积木式的方式 在系统硬件设计的后期进行仿真和调试 主要设计文件是电路原理图 2021/5/23461.1 1.1 数字系统的设计数字系统的设计三、三、现代现代的数字系统设计方法的数字系统设计方法基基于于芯芯片片采采用用PLDPLD,利利用用EDAEDA开开发发工工具具,通通过过芯芯片片设设计计来来实现实现系系统统功能。功能。计算机计算机+EDA软件软件空白空白PLD+ 数字系统数字系统通常采用自上而下(Top Down)的设计方法采用可编程逻辑器件 在系统硬件设计的早期进行仿真主要设计文件是用硬件描述语言编写的源程序降低了硬件电路设计难度特点特点特点特点自行定义器件内部的逻辑和引脚写出真值表或状态表 EDA开发工具自动进行逻辑综合 模拟仿真编程下载到PLD中2021/5/23471.1 1.1 数字系统的设计数字系统的设计特特 点点传统方法传统方法现代方法现代方法采用器件采用器件通用型器件PLD设计对象设计对象电路板芯片设计方法设计方法自下而上自上而下仿真时期仿真时期系统硬件设计后期系统硬件设计早期主要设计文件主要设计文件电路原理图HDL语言编写的程序表表1-1 1-1 数字系统的两种设计方法比较数字系统的两种设计方法比较2021/5/23481.1 1.1 数字系统的设计数字系统的设计1. 1.自上而下的设计(自上而下的设计(Top DownTop Down)占据主导地位 辅助的设计手段 功能模块划分子模块设计系统级设计系统级设计功能级描述功能级描述功能仿真功能仿真门级描述门级描述时序仿真时序仿真若仿真未通若仿真未通过,则需修过,则需修改设计!改设计!2.2.自下而上的设计(自下而上的设计(Bottom UpBottom Up)设计基本单元设计基本单元构成子模块构成子模块子系统子系统系统系统2021/5/23491.2 EDA1.2 EDA技术与技术与PLDPLD一、一、EDAEDA技术技术二、什么是二、什么是PLDPLD?三、三、PLDPLD的发展演变的发展演变四、四、EDAEDA技术与技术与PLDPLD的关系的关系内容概要内容概要2021/5/23501.2 EDA1.2 EDA技术与技术与PLDPLD一、一、EDAEDA技术技术1 1什么是什么是EDAEDA技术?技术?EDAEDA:Electronic Design AutomationElectronic Design Automation(电子设计自动化)(电子设计自动化)是在是在电子产品电子产品的设计开发工作中使用的设计开发工作中使用计算机计算机和和计算机网络计算机网络作为辅助工具以提高工作效率的技术。作为辅助工具以提高工作效率的技术。特点特点特点特点是立足于计算机工作平台开发出来的一整套先进的设计电子系统的软件工具。是在计算机的辅助下完成电子产品设计方案的输入、处理、仿真和下载的一种硬件设计技术。是微电子技术中的核心技术之一,是现代集成系统设计的重要方法。2021/5/23511.2 EDA1.2 EDA技术与技术与PLDPLD2 2EDAEDA技术的历史技术的历史以计算机科学、微电子技术的发展为基础汇集了计算机图形学、拓扑学和计算数学等学科的最新成果(1 1)CADCAD(Computer-Aided DesignComputer-Aided Design)阶段()阶段(1964197819641978)“上帝时代”最早的EDA技术:电路模拟、逻辑模拟、MOS同步和模拟、PCB布局、线路布线和标准电池等技术 只能进行PCB板布局布线和简单版图绘制2021/5/23521.2 EDA1.2 EDA技术与技术与PLDPLD(2 2)CAECAE(Computer-Aided EngineeringComputer-Aided Engineering)阶段()阶段(1978199719781997)“英雄时代”电子CAD工具逐步完善,单点工具集成化并从技术上向CAE过渡:诞生了先进的布局和布线、逻辑综合、HDL语言、模拟加速器和仿真器以及高级综合等技术(3 3)EDAEDA阶段(阶段(19931993现在)现在)“人性时代” 微电子工艺飞速发展,工艺水平已达到深亚微米级;晶体管集成度提高到百万门甚至千万门级;因特网开始进入广泛应用阶段,工程师们开始设计系统级芯片(systems-on-chip)EDA技术发展到物理校验、布局、逻辑综合、模拟设计以及软件/硬件协同设计。 EDA技术已成为电子设计的重要工具EDAEDA技术受制造技术驱动而发展技术受制造技术驱动而发展随微电子技术、计算机技术而发展随微电子技术、计算机技术而发展2021/5/23531.2 EDA1.2 EDA技术与技术与PLDPLD3 3现代现代EDAEDA技术的特点技术的特点特征特征:采用高级语言描述,具有系统级仿真和综合能力:采用高级语言描述,具有系统级仿真和综合能力(1 1)采用硬件描述语言采用硬件描述语言HDLHDL(Hardware Description LanguageHardware Description Language)v 与原理图设计方法相比:与原理图设计方法相比:更适于描述大规模的系统在抽象的层次上描述系统的结构与功能v采用采用HDLHDL的的优点优点:语言的公开可利用性设计与工艺的无关性宽范围的描述能力系统级、算法级、RTL级、门级、开关级便于组织大规模系统的设计便于设计的复用、交流、保存与修改2021/5/23541.2 EDA1.2 EDA技术与技术与PLDPLD(2 2)高层综合和优化高层综合和优化支持系统级的综合与优化。综综合合:通过EDA工具把用HDL语言描述的模块自动转换为用门级电路网表表示的模块,即将电路映射到器件的专用基本结构。优优化化:采用优化算法,将设计简化,去除冗余项,提高系统运行速度。(3 3)并行工程并行工程定定义义:一种系统化的、集成化的、并行的产品及相关过程(指制造和维护)的开发模式。现代EDA工具建立了并行工程框架结构的开发环境,支持多人同时并行进行设计。一种软件平台结构(4 4)开放性和标准化开放性和标准化开开放放性性: EDA工具只要具有符合标准的开放式框架结构,就可以接纳其他厂商的EDA工具一起进行设计资源共享标标准准化化:随着设计数据格式标准化EDA框架标准化,即在同一个工作站上集成各具特色的多种EDA工具,它们能够协同工作。 2021/5/23551.2 EDA1.2 EDA技术与技术与PLDPLD4 4EDAEDA技术的范畴和应用技术的范畴和应用可分为可分为系统级系统级、门级门级和和物理实现级物理实现级三个层次的辅助设计过程三个层次的辅助设计过程涵涵盖盖了了从从系系统统级级设设计计到到版版图图设设计计的的全全过过程程,涉涉及及电电子子电电路路设设计的各个领域:计的各个领域:IC版版图设计图设计PLD开开发发电电路(原理)路(原理)设计设计模拟电路数字电路混合电路高速电路PCB板板设计设计本课程内容本课程内容2021/5/23561.2 EDA1.2 EDA技术与技术与PLDPLD5 5EDAEDA技术发展的现状技术发展的现状EDAEDA技技术术在在进进入入2121世世纪纪后后,得得到到了了更更大大的的发发展展,突突出出表表现现在在以以下下几几个个方面:方面:使使电电子子设设计计成成果果以以自自主主知知识识产产权权的的方方式式得得以以明明确确表表达达和和确确认认成成为为可能;可能;在在设设计计和和仿仿真真两两方方面面支支持持标标准准硬硬件件描描述述语语言言的的功功能能强强大大的的EDA软软件件不断推出。不断推出。电电子技子技术术全方位全方位纳纳入入EDA领领域;域;EDA使得使得电电子子领领域各学科的界限更加模糊,更加互域各学科的界限更加模糊,更加互为为包容;包容;更大更大规规模的模的FPGA和和CPLD器件不断推出;器件不断推出;基基于于EDA工工具具的的ASIC设设计计标标准准单单元元已已涵涵盖盖大大规规模模电电子子系系统统及及IP核模核模块块;软软硬硬件件IP核核在在电电子子行行业业的的产产业业领领域域、技技术术领领域域和和设设计计应应用用领领域域得得到到进进一步确一步确认认;SoC高效低成本高效低成本设计设计技技术术的成熟。的成熟。2021/5/23571.2 EDA1.2 EDA技术与技术与PLDPLD6 6EDAEDA技术的发展方向技术的发展方向(1 1)将沿着智能化、高性能、高层次综合方向发展将沿着智能化、高性能、高层次综合方向发展(2 2)支持软硬件协同设计支持软硬件协同设计芯片和芯片工作所需的应用软件同时设计,同时完成。采用协同设计,可以及早发现问题,保证一次设计成功,缩短开发周期,这在设计大系统时尤为重要。 (3 3)采用描述系统的新的设计语言采用描述系统的新的设计语言这种语言统一对硬件和软件进行描述和定义,从开始设计功能参数的提出直至最终的验证。能够使设计过程一体化;设计效率更高;而且必须从现存的方法学中深化出来。 (4 4) 推出更好的仿真和验证工具推出更好的仿真和验证工具随着单一芯片上逻辑门数量超过百万门,对设计的验证工作将变得比设计任务本身还要艰难。2021/5/23581.2 EDA1.2 EDA技术与技术与PLDPLD二、什么是二、什么是PLDPLD?1 1什么是什么是PLDPLD?PLDPLD:Programmable Logic DeviceProgrammable Logic Device,可,可编编程程逻辑逻辑器件器件定义定义定义定义是用户可自行定义其逻辑功能的一种专用集成电路(ASIC)。作作为为一一种种通通用用型型器器件件生生产产,但但其其逻逻辑辑功功能能由由用用户户通通过过器器件件编编程程自行自行设设定。定。PLDPLD是是一一种种数数字字集集成成电电路路的的半半成成品品,在在它它的的芯芯片片上上按按照照一一定定的的排排列列方方式式集集成成了了大大量量的的门门和和触触发发器器等等基基本本逻逻辑辑元元件件,使使用用者者可可以以利利用用某某种种开开发发工工具具对对它它进进行行加加工工,等等于于把把片片内内的的元元件件连连接接起起来来,使使它它完完成成某某个个逻逻辑辑电电路路或或系系统统功功能能,成成为为一一个个可可以以在在实实际际电电子子系系统统中使用的中使用的专专用集成用集成电电路。路。PLD集中了通用型集中了通用型器件和器件和ASIC的优的优点!点!2021/5/23591.2 EDA1.2 EDA技术与技术与PLDPLD2 2PLDPLD的特点的特点(1 1)编编程程方方便便:利用开发工具,用户可反复编程、擦除,修改设计方便 (2 2)集成度高集成度高:单片逻辑门数已达数十万门甚至上百万门(3 3)速度快速度快(4 4)价格低价格低(5 5)开开发发周周期期短短:EDA开发工具齐全,设计人员在很短时间内可完成电路设计的输入、编译、仿真和编程,大大缩短了开发周期。 2021/5/23601.2 EDA1.2 EDA技术与技术与PLDPLD三、三、PLDPLD的发展演变的发展演变发展于发展于20世纪世纪70年代初。年代初。主要有主要有FPLA、PAL、GAL、CPLD和和FPGA等。等。器件器件含义含义出现时期出现时期FPLA现场可编程逻辑阵列20世纪70年代初PAL可编程阵列逻辑20世纪70年代末期GAL通用阵列逻辑20世纪80年代初期CPLD复杂可编程逻辑器件20世纪80年代中期FPGA现场可编程门阵列20世纪80年代中期表表1-2 PLD1-2 PLD的发展演变的发展演变2021/5/23611.2 EDA1.2 EDA技术与技术与PLDPLD工艺线宽工艺线宽:由于生产工艺的发展,:由于生产工艺的发展,PLD集成电路的工艺集成电路的工艺线宽可达到线宽可达到0.35 m(1997年),年),0.15 m(2001年),年), 0.13 m(2002、2003年),年), 0.1 m(2004年);年); 90nm(2005年);目前年);目前半导体公司半导体公司正重点研发正重点研发60nm工工艺。艺。集成度集成度:在一块硅片上可集成上千万个以上逻辑门。:在一块硅片上可集成上千万个以上逻辑门。速度速度:器件的速度指标:器件的速度指标,FPGA的门延时的门延时 3ns,CPLD的系统速度的系统速度 180MHz。工艺手段工艺手段:CMOS工艺在速度上超过双极型工艺,成为工艺在速度上超过双极型工艺,成为PLD的主要工艺手段。的主要工艺手段。 2021/5/23621.2 EDA1.2 EDA技术与技术与PLDPLD四、四、EDAEDA技术与技术与PLDPLD的关系的关系PLDPLD的应用开发过程中贯穿着的应用开发过程中贯穿着EDAEDA技术的应用技术的应用原始设计输入原始设计输入EDAEDA开发软件开发软件器件配置信息器件配置信息PLDPLD硬件设备硬件设备PLDPLD在在编编程程灵灵活活性性、容容量量与与速速度度等等方方面面达达到到了了相相当当高高的的水水平平,可可在在一一个个器器件中实现具有相当规模的、完整、高速的数字系统。件中实现具有相当规模的、完整、高速的数字系统。EDAEDA开开发发工工具具也也十十分分成成熟熟高高效效,可可使使用用HDLHDL语语言言、电电路路图图、波波形形图图等等多多种种方法进行设计输入,并进行综合、仿真与编程。方法进行设计输入,并进行综合、仿真与编程。PLDPLD广广泛泛应应用用于于产产品品开开发发、原原型型设设计计、小小批批量量生产生产中。中。随随着着PLDPLD成成本本和和功功耗耗不不断断降降低低、性性能能大大幅幅度度提提高,高,PLDPLD开始取代开始取代高端高端 ASICASIC、DSPDSP和和微处理器微处理器。2021/5/23631.3 IP1.3 IP核复用技术与核复用技术与SOCSOC一、一、IPIP核复用技术核复用技术二、片上系统二、片上系统SOCSOC三、可编程片上系统三、可编程片上系统SOPCSOPC内容概要内容概要2021/5/23641.3 IP1.3 IP核复用技术与核复用技术与SOCSOC一、一、IPIP核复用技术核复用技术1 1IPIP与与IPIP核核IP IP IP IP (Intellectual PropertyIntellectual Property)原意为知识产权、著作权,在IC设计领域指实现某种功能的设计。完成某种功能的虚拟电路模块。又称为虚拟部件虚拟部件(VC,Virtual Component)。它是以HDL语言描述的构成VLSI中各种功能单元的软件群。IPIPIPIP核核核核(IPIP模块)模块)IPIP核分为:软核、硬核及固核核分为:软核、硬核及固核2021/5/23651.3 IP1.3 IP核复用技术与核复用技术与SOCSOC(1 1)软核()软核(Soft CoreSoft Core)定义:功能经过验证的、可综合的、实现后电路结构总门数在50005000门以上的HDL模型。指在寄存器级或门级对电路功能用HDL进行描述的设计模块;用户可修改,具有最大的灵活性用户可修改,具有最大的灵活性;主要用于接口、算法、编码、译码和加密模块的设计。(2 2)硬核()硬核(Hard CoreHard Core)指以版图版图形式描述的设计模块。基于一定的设计工艺,针对某一具体芯片,用户不能改动用户不能改动。常用硬核有存储器、模拟器件及接口。(3 3)固核()固核(Firm CoreFirm Core)介于硬核和软核之间;用户可重新定义关键的性能参数,内部连线可重新优化。2021/5/23661.3 IP1.3 IP核复用技术与核复用技术与SOCSOC典型的典型的IPIP核核微处理器核(MPU core)数字信号处理器核(DSP core)存储器核(Memory core)特定功能核(如MPEG)标准接口核(Ethernet、USB、PCI及IEEE1394核)处理器核处理器核(MCU)RAM/ROMDSP核核 A/D D/A PCI接口或接口或USB接口接口I/O单单元元图图1-11 1-11 由由IPIP核构成片上系统核构成片上系统SOCSOC2021/5/23671.3 IP1.3 IP核复用技术与核复用技术与SOCSOC2 2IPIP核复用(核复用(IP ReuseIP Reuse)越来越多的公司投入IP核的开发,IP核已作为一种商品广泛销售和使用。运用IP核技术可以缩短硬件开发时间,避免重复劳动,保证大规模器件的性能,提高其可靠性。电子系统的设计:自行设计IP或购买第三方的IP在功能上进行整合迅速形成产品2021/5/23681.3 IP1.3 IP核复用技术与核复用技术与SOCSOC3. 3. 虚拟插座接口虚拟插座接口VSIVSI(Virtual Socket InterfaceVirtual Socket Interface)标准)标准为便于IP的开发和复用,需要制定一个统一的标准。一些IC厂家、EDA公司、IP公司联合成立了虚拟插座接口协会( Virtual Socket Interface Association) ,制定了关于IP产品的标准与规范 VSI标准。4. IP4. IP产品产品(1 1)虚拟器件虚拟器件:只提供门级和寄存器传输级的HDL源代码,可综合,与器件结构有关(2 2)虚拟接口模型虚拟接口模型:提供系统级代码,与器件结构无关对应具体的PLD器件通用模型2021/5/23691.3 IP1.3 IP核复用技术与核复用技术与SOCSOCIPIP产品产品微处理器(如8031、80C51)数字信号处理器(DSP)RAM和ROM通用串行接口(如8251)并行输入输出接口(PIO)直接存储器存取(DMA)PCI总线控制器中断控制器(如8259)2021/5/23701.3 IP1.3 IP核复用技术与核复用技术与SOCSOC二、二、片上片上系统(系统(SOCSOC, System on a ChipSystem on a Chip)1 1定义定义把一个完整的系统集成在一个芯片上,或用一个芯片实现一个把一个完整的系统集成在一个芯片上,或用一个芯片实现一个功能完整的系统。功能完整的系统。包括包括CPUCPU、I/OI/O接口、存储器,以及一些重要的模拟集成电路。接口、存储器,以及一些重要的模拟集成电路。 2.2.实现方式实现方式(1 1)采用全定制方式)采用全定制方式将设计的网表文件提交给半导体厂家流片缺点缺点:风险高,费用大,周期长(2 2)采用)采用PLDPLDCPLD和FPGA集成度越来越高,速度越来越快用户通过编程完成设计优点优点:风险小,费用低,周期短2021/5/23711.3 IP1.3 IP核复用技术与核复用技术与SOCSOC微电子制造工艺的进步微电子制造工艺的进步为为SOCSOC提供硬件基础提供硬件基础EDAEDA软件技术的提高软件技术的提高 为为SOCSOC提供开发平台提供开发平台版图级(物理版图) 设计复杂程度设计复杂程度 设计效率设计效率图图1-12 EDA1-12 EDA工具向高层化发展工具向高层化发展晶体管级(原理图)逻辑门级(原理图)寄存器级(HDL描述) 系统级(IP模块)2021/5/23721.3 IP1.3 IP核复用技术与核复用技术与SOCSOC三、三、可可编编程片程片上上系系统统SOPC(System on Programmable SOPC(System on Programmable Chip)Chip) 1 1定义定义SOPCSOPC即是将计算机核心的即是将计算机核心的CPUCPU和操作系统结合在一和操作系统结合在一片单片的片单片的PLDPLD芯片中,允许设计人员直接开发具有自芯片中,允许设计人员直接开发具有自主产权的计算机系统。主产权的计算机系统。 2. 2. 基本特征基本特征至少包含一个嵌入式处理器内核;具有小容量片内高速RAM资源;丰富的IP 核资源可供选择;足够的片上可编程逻辑资源;处理器调试接口和FPGA编程接口;可能包含部分可编程模拟电路;单芯片、低功耗、微封装。 2021/5/23731.3 IP1.3 IP核复用技术与核复用技术与SOCSOC3. SOPC3. SOPC设计方案设计方案 目前国际上大多数目前国际上大多数SOPCSOPC设计开发都利用了设计开发都利用了EDAEDA工具、硬件工具、硬件描述语言(描述语言(HDLHDL)和)和IPIP核。核。首先把片内通用的硬件功能集成为一个硬宏格式,即IP软核,以获得最大的性能和最小的面积,可以加快整个设计流程,缩短开发周期;其次确定把这些IP模块和片内的其它功能连接在一起的体系和总线结构,以实现最大的系统级性能和效率;还需要几类设计工具:常规的硬件设计工具嵌入式软件设计工具新的系统级设计工具建模支持和调试工具 2021/5/23741.3 IP1.3 IP核复用技术与核复用技术与SOCSOC4. 4. 支持支持SOPCSOPC设计的器件设计的器件 AlteraAltera公司公司APEX 20K、 APEX II系列(较早期产品);Cyclone、 Cyclone 系列(支持Nios II 嵌入式处理器);Stratix、 Stratix 系列(支持Nios II 嵌入式处理器) ;XilinxXilinx公司公司Virtex-Pro 是Xilinx公司第一款集PowerPC和高速收发模块的FPGAVirtex-4 Xilinx公司最新一代高端FPGA产品,包含三个子系列:LX、SX、FX,将逐步取代VirtexII,VirtexII-Pro2021/5/23751.41.4 数字系统的实现方式数字系统的实现方式一、全定制方式一、全定制方式二、门阵列(二、门阵列(Gate ArrayGate Array)法)法三、标准单元方式三、标准单元方式四、四、PLDPLD实现方式实现方式内容概要内容概要2021/5/23761.4 1.4 数字系统的实现方式数字系统的实现方式数字系统的核心是器件,数字系统的实现方式即指数字系统的核心是器件,数字系统的实现方式即指采用何种采用何种器件器件来实现数字系统来实现数字系统在进行数字系统设计时需综合考虑:性能、周期、成本在进行数字系统设计时需综合考虑:性能、周期、成本数字器件的设计按其实现方式分为:数字器件的设计按其实现方式分为: (1 1)全定制()全定制(Full-customFull-custom)设计)设计:基于版图级的设计方法 (2 2)半定制()半定制(Semi-customSemi-custom)设计)设计:约束性设计方法,在厂家预先设计的基本单元基础上的二次设计性能要求很高、批量很大设计周期短、批量小2021/5/23771.4 1.4 数字系统的实现方式数字系统的实现方式数字数字IC设计设计全定制全定制半定制半定制通用通用ICASIC门阵列门阵列标准单元标准单元 PLD图图1-13 1-13 数字器件的设计方式数字器件的设计方式Application Specific IC2021/5/23781.4 1.4 数字系统的实现方式数字系统的实现方式一、全定制方式一、全定制方式在最底层,即物理版图级实现设计的方法使用版图编辑工具,从晶体管的版图尺寸、位置及连线开始设计优点:芯片面积利用率高、速度快、功耗低缺点:设计周期长、成本高适用场合:性能要求很高或批量很大的芯片由ICIC厂厂定制2021/5/23791.4 1.4 数字系统的实现方式数字系统的实现方式二、门阵列(二、门阵列(Gate ArrayGate Array)法)法由ICIC厂厂定制又称“母片”(Master Slice)法母片:IC厂按照一定规格事先生产的半成品芯片。硅片出厂时已有预先制造好的大量规则排列的晶体管,芯片四周已预制好I/O焊盘,芯片中只留下一层或两层金属铝连线的掩膜,需根据用户电路的不同而定制。设计人员只需完成电路一级的设计,将电路的连结网表文件以EDIF(Electronic Data Interchange Format)格式交由IC厂定制即可优点:设计过程简便,生产周期短、成本低缺点:门利用率不高、芯片面积大、性能不高适用场合:设计周期短、成本低、批量小、性能要求不高的芯片2021/5/23801.4 1.4 数字系统的实现方式数字系统的实现方式三、标准单元方式三、标准单元方式又称库单元法库单元法标准单元标准单元是由IC厂家预先设计好的一批具有一定功能的单元,以库的形式放在CAD工具中,其结构符合一定的电气和物理标准设计人员选择标准单元构成电路,调用标准单元的版图,利用自动布局布线软件可完成版图一级的最终设计优点:可设计出性能较高、面积较小的芯片缺点:与门阵列法比,周期长、成本高适用场合:性能要求较高、批量较大的芯片由ICIC厂厂定制2021/5/23811.4 1.4 数字系统的实现方式数字系统的实现方式四、四、PLDPLD实现方式实现方式PLD已完成全部工艺制造,可直接从市场上购得设计可在实验室由用户编程完成,功能、引脚都可由用户自行定义优点:便于修改,设计周期短、成本低缺点:与全定制方式相比,芯片速度较低,功耗、面积不是最小适用场合:电子系统开发阶段的硬件验证,原型设计、小批量生产2021/5/23821.4 1.4 数字系统的实现方式数字系统的实现方式全定制方式全定制方式门阵列法门阵列法标准单元法标准单元法PLD实现方式实现方式优优 点点可设计出高速度、低功耗、小面积的芯片设计过程简便,设计周期短、成本低可设计出性能较高、面积较小的芯片可反复修改、反复编程,设计周期短、成本低缺缺 点点设计周期长、成本高门的利用率不高,芯片面积大比门阵列法周期长、成本高芯片速度较低,功耗、面积不是最小适应适应范围范围性能要求很高、批量很大的芯片设计周期短、成本低、批量小、性能要求不高的芯片性能要求较高、批量较大的芯片电子系统开发阶段的硬件验证,原型设计、小批量生产表表1-5 1-5 数字系统的实现方式优缺点比较数字系统的实现方式优缺点比较2021/5/23831.4 1.4 数字系统的实现方式数字系统的实现方式设计效率设计效率功耗功耗/面积面积电路电路速度速度设计设计出错率出错率可测性可测性可重复可重复设计性设计性全定制全定制标准单元法标准单元法门阵列法门阵列法PLD 表表1-6 1-6 数字系统的实现方式综合比较数字系统的实现方式综合比较注注: :最高(最大),:最高(最大), :高(大),:高(大), :中等,:中等, :低(小),:低(小), :最低(最小):最低(最小)半半定定制制2021/5/23841.5 1.5 数字系统的设计描述方法数字系统的设计描述方法一、图形设计方式一、图形设计方式二、基于二、基于HDLHDL的设计的设计内容概要内容概要2021/5/23851.5 1.5 数字系统的设计描述方法数字系统的设计描述方法 一、图形设计方式一、图形设计方式常用于设计常用于设计规模较小规模较小的电路和系统的电路和系统适合描述适合描述电气连接电气连接关系和关系和接口接口关系关系EDAEDA工具必须提供元件库或宏单元库工具必须提供元件库或宏单元库优点优点:直观、形象对表现层次结构、模块化结构更为方便缺点缺点:不适于描述逻辑功能通用性、可移植性较弱2021/5/23861.5 1.5 数字系统的设计描述方法数字系统的设计描述方法 例例 电子秒表电路的顶层图形文件电子秒表电路的顶层图形文件2021/5/23871.5 1.5 数字系统的设计描述方法数字系统的设计描述方法二、基于二、基于HDLHDL的设计的设计硬件描述语言硬件描述语言(HDL,Hardware Description Language)是一种用形式化方法(即文本形式)来描述和设计数字电路和数字系统的语言。一种专门用于PLD设计的高级模块化语言。是电子系统硬件行为描述、结构描述、数据流描述的语言 。HDLHDL常用来设计常用来设计规模较大规模较大、复杂复杂的电子系统的电子系统用用HDLHDL描描述设计述设计编程下载编程下载EDAEDA工具工具综合、仿真综合、仿真目标文件目标文件图图1-14 1-14 高层设计高层设计(High Level Design)(High Level Design)方法方法2021/5/23881.5 1.5 数字系统的设计描述方法数字系统的设计描述方法优点优点:能形象化、抽象地表示电路的结构和行为适于描述逻辑功能借用高级语言简化电路的描述具有电路仿真与验证机制便于文档管理易于理解和移植重用缺点缺点:不如图形设计方式直观在我国广泛使用的有在我国广泛使用的有3种:种: VHDL、Verilog HDL和和AHDL2021/5/23891.5 1.5 数字系统的设计描述方法数字系统的设计描述方法1. Verilog HDL1. Verilog HDLQuartus Quartus 只支只支持其子集!持其子集!可用来进行逻辑设计、逻辑综合、仿真验证及时序分析等。适合系统级(System)、算法级(Algorithm)、寄存器传输级(RTL)、门级(Gate)和开关级(Switch)的设计和描述;便于将设计移植到不同厂家的不同芯片中;便于修改信号参数;具有工艺无关性。1983年,由GDA公司的Phil Moorby首创。1989年,Cadence公司收购了GDA公司,Verilog HDL语言成为Cadence公司的私有财产。1990年,Cadence公司公开发表Verilog HDL语言。1995年正式成为IEEE标准。历史历史历史历史特点特点特点特点2021/5/23901.5 1.5 数字系统的设计描述方法数字系统的设计描述方法2. VHDL2. VHDLVHSIC Hardware Description LanguageVHSIC Hardware Description Language(VHSICVery High Speed Integrated Circuits),甚高速集成电路的硬件描述语言。来源于美国军方。1987年成为IEEE标准。全方位HDL,包括从系统到电路的所有设计层次。支持结构、数据流和行为3种描述形式的混合描述。Quartus Quartus 只支只支持其子集!持其子集!2021/5/23911.5 1.5 数字系统的设计描述方法数字系统的设计描述方法v特点特点 (1 1)数据类型丰富)数据类型丰富标准数据类型:不仅有整数、布尔、字符、字符串等数据类型,还有位型(Bit)、位矢量型(Bit-Vector)、时间型(Time)等数据类型;允许自定义数据类型,如枚举、数组或记录等。 (2 2)层次结构性)层次结构性将一个数字系统划分为若干个模块来描述,每个模块包括实体Entity与构造体Architecture这两个设计单元;实体定义了与其他模块的接口(输入输出接口及参数),构造体描述了模块内部的结构和行为状态 (3 3)串行性与并行性)串行性与并行性语句分为两类:进程性语句(串行执行)和元件调用语句(并行执行); (4 4)支持结构描述和行为描述)支持结构描述和行为描述对同一电路,支持多种描述方法。用元件调用语句描述各子模块的相互连接,是结构描述;进程内的串行语句描述模块的逻辑功能,是行为描述。2021/5/23921.5 1.5 数字系统的设计描述方法数字系统的设计描述方法3. AHDL3. AHDLAHDLAHDL: Altera Hardware Description Language,Altera 硬件描述语言(美国Altera公司自行开发的HDL ) v特点特点:模块化的高级语言;完全集成于Quartus 系统中;特别适于描述复杂的组合逻辑、组运算、状态机和真值表;可用Quartus 提供的文本编辑器或其它文本编辑器来建立文本。但不适宜描述时序逻辑!NotepadQuartus Quartus 完完全支持!全支持!2021/5/23931.5 1.5 数字系统的设计描述方法数字系统的设计描述方法Verilog HDLVHDL成为成为IEEEIEEE标准标准1995年1987年语法结构语法结构比VHDL简单语法结构比较严格,模块风格比较清晰学习难易程度学习难易程度容易掌握较难掌握建模能力建模能力门级开关电路描述方面很强系统级抽象能力较强测试激励模块容易编写适合由多人合作完成的特大型项目(一百万门以上)。较多的第三方工具的支持仿真工具比较好用Verilog HDL Verilog HDL 与与VHDLVHDL的比较的比较返回返回“第第1章章”2021/5/2394部分资料从网络收集整理而来,供大家参考,感谢您的关注!
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号