版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、12目目 录录u绪论绪论 (1 1学时)学时)u第第1 1章章 数字系统设计与数字系统设计与EDAEDA技术技术 (2 2学时)学时)u第第2 2章章 PLDPLD器件结构器件结构 (2 2学时)学时)u第第3 3章章 硬件描述语言硬件描述语言VerilogVerilog HDL 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 2学时)学时)理论课共理论课共1818学时学时3问题的提出问题的提出传统的数字系统设计方法传统的数字系统设计方法现代的数字系统设计方法现代的数字系统设计方法什么是什么是EDAEDA技术?技术?实例实例演示演示:电子秒表电路的设计:电子秒表电路的设计关于课程关于课程绪绪 论论4问题的提出问题的提出设计一个设计一个电子秒表电路电子秒表电路,使之完成以下功能:,使之完成以下功能:按按0.01s0.01s的步长进行计时;的步长进行计时;具有异步清零和启动具有异步清零和启动/ /停止计数功能;停止计数功能;并用数码管显示其秒高位、秒低位,百分秒高位、并用数码管显示其秒高位
3、、秒低位,百分秒高位、百分秒低位。百分秒低位。为便于显示,秒和百分秒信号均采用为便于显示,秒和百分秒信号均采用BCDBCD码计数方码计数方式。式。 5问题的提出(续)问题的提出(续) 输入输入信号:信号:clk:系统时钟信号,:系统时钟信号,f=50MHz;clr:异步清零信号,负脉冲有效:异步清零信号,负脉冲有效;startstop:启:启/停信号,负脉冲有效停信号,负脉冲有效。 输出输出信号:信号:dsec6.0:驱动数码管,显示秒高位:驱动数码管,显示秒高位;sec6.0:驱动数码管,显示秒低位:驱动数码管,显示秒低位;cn:分钟的进位信号,接发光二极管,高:分钟的进位信号,接发光二极管
4、,高有效;有效;secd6.0、secm6.0 分别显示百分秒高位和百分别显示百分秒高位和百分秒低位。分秒低位。6解决方案解决方案1 1传统的数字系统设计方法传统的数字系统设计方法1. 1. 根据设计要求划分功能模块;根据设计要求划分功能模块;2. 2. 确定输入和输出的关系,画出确定输入和输出的关系,画出真值表真值表;3. 3. 由真值表写出由真值表写出逻辑表达式逻辑表达式;4. 4. 利用公式或卡诺图进行利用公式或卡诺图进行人工化简人工化简;5. 5. 根据根据化简后的逻辑表达式化简后的逻辑表达式画出电路原理图画出电路原理图;6. 6. 在面包板上进行实验,在面包板上进行实验,验证验证电路
5、的正确性;电路的正确性;7. 7. 若若无无错误,再在透明薄膜上用贴图符号错误,再在透明薄膜上用贴图符号贴贴PCBPCB图图;8. 8. 检查后送制板厂制板;检查后送制板厂制板;9. 9. 对对PCBPCB板进行安装、调试,若有大的错误,修改设计,板进行安装、调试,若有大的错误,修改设计,重复以上过程,重新制板。重复以上过程,重新制板。搭积木的方式!搭积木的方式!基于基于电路板电路板的设计方法的设计方法采用固定功能的器件采用固定功能的器件(通用型器件),通过设计(通用型器件),通过设计电路板电路板来实现系统功能来实现系统功能7传统的数字系统设计方法的传统的数字系统设计方法的缺点缺点效率低下效率
6、低下所有这一切,几乎都是手工所有这一切,几乎都是手工完成!完成!设计周期很长;设计周期很长;容易出错;容易出错;芯片种类多,数量大,受市场的限制;芯片种类多,数量大,受市场的限制;设计灵活性差;设计灵活性差;产品体积大。产品体积大。8解决方案解决方案2 2现代的数字系统设计方法现代的数字系统设计方法 首先在计算机上安装首先在计算机上安装EDAEDA软件,它们能帮助设计者自动软件,它们能帮助设计者自动完成几乎所有的设计过程;再完成几乎所有的设计过程;再选择合适的选择合适的PLDPLD芯片,可芯片,可以在一片芯片中实现整个数字系统。以在一片芯片中实现整个数字系统。基于基于芯片芯片的设计方法的设计方
7、法采用采用PLDPLD(可编程逻辑器件),(可编程逻辑器件),利用利用EDAEDA开发工具,通过开发工具,通过芯片芯片设计来实现系统功能。设计来实现系统功能。EDA软件软件空白空白PLD+数字系统数字系统编程编程9现代的数字系统设计方法(续现代的数字系统设计方法(续1 1)1. 1.根据设计要求划分功能模块根据设计要求划分功能模块2. PLD2. PLD开发(利用开发(利用EDAEDA工具)工具)(1 1)设计输入设计输入:采用采用硬件描述语言硬件描述语言(HDLHDL),用条件语句用条件语句或赋值或赋值语句语句表示输入和输出的逻辑关系,将整个程序输入到计算机中;表示输入和输出的逻辑关系,将整
8、个程序输入到计算机中;(2 2)设计的编译设计的编译:EDAEDA工具可自动进行工具可自动进行逻辑综合逻辑综合,将功能描述转,将功能描述转换为门级描述,或转换成具体换为门级描述,或转换成具体PLDPLD的网表文件,将网表文件自动的网表文件,将网表文件自动适配到具体芯片中进行适配到具体芯片中进行布局布线布局布线;(3 3)功能仿真功能仿真和和时序仿真时序仿真;(4 4)编程下载编程下载到实际芯片中,在实验台上进行验证;到实际芯片中,在实验台上进行验证;(5 5)在每一阶段若)在每一阶段若有问题,有问题,可可在计算机上直接修改设计,重复以在计算机上直接修改设计,重复以上过程。上过程。10现代的数字
9、系统设计方法(续现代的数字系统设计方法(续2 2)3. 3. 设计包含设计包含PLDPLD芯片的电路板芯片的电路板(1)在计算机上利用)在计算机上利用EDA软件画软件画电路原理图电路原理图;(2) 进行电气规则检查无误后,自动生成网表文件;进行电气规则检查无误后,自动生成网表文件;(3) 利用利用EDA软件画软件画PCB图图,自动布线;,自动布线;(4) 自动进行设计规则检查,无误后输出文件,制板。自动进行设计规则检查,无误后输出文件,制板。 优点优点:效率高效率高所有这一切,几乎都是借助计算机利所有这一切,几乎都是借助计算机利用用EDAEDA软件软件自动自动完成!完成!容易检查错误,便于修改
10、;容易检查错误,便于修改;设计周期短、成功率很高设计周期短、成功率很高 ;产品体积小。产品体积小。11什么是什么是EDAEDA技术?技术? EDAEDA(Electronic Design AutomationElectronic Design Automation,电子设计自动化),电子设计自动化)是在计算机的辅助下完成电子产品设计的一种先进的是在计算机的辅助下完成电子产品设计的一种先进的硬件设计技术!硬件设计技术! 是立足于计算机工作平台开发出来的一整套先进的设是立足于计算机工作平台开发出来的一整套先进的设计电子系统的计电子系统的软件工具软件工具。计算机并口计算机并口器件编程接口器件编程接
11、口PCB BoardPCB BoardPLD编程目编程目标文件标文件12EDAEDA技术的范畴技术的范畴模拟电路模拟电路数字电路数字电路混合电路混合电路设计输入设计输入逻辑综合逻辑综合仿真仿真编程下载编程下载本课程内容本课程内容!13学习学习EDA到到底有什么用底有什么用呢?呢?真有趣,可以按自己的想法设计一个芯片!真有趣,可以按自己的想法设计一个芯片!我也要参加全国大学我也要参加全国大学生电子设计竞赛!生电子设计竞赛!呀,毕业设计和冯如杯正好能用得上哎!呀,毕业设计和冯如杯正好能用得上哎!原来在一个芯片里就可以设计原来在一个芯片里就可以设计一个完整的计算机系统呀!一个完整的计算机系统呀!找工
12、作时也算得上一技之长哦!找工作时也算得上一技之长哦!14本课程要学习的本课程要学习的PLDPLD设计设计EDAEDA工具软件工具软件1. Quartus1. Quartus 美国美国Altera公司公司自行设计的第四代自行设计的第四代PLD开发软件开发软件目前版本:目前版本:5.1可以完成可以完成PLD的设计输入、逻辑综合、布局与布线、仿真、的设计输入、逻辑综合、布局与布线、仿真、时序分析、器件编程的全过程时序分析、器件编程的全过程同时还支持同时还支持SOPC(可编程片上系统)设计开发(可编程片上系统)设计开发2. ModelSim2. ModelSim 美国美国Mentor Graphics
13、公司的子公司公司的子公司Model Technology开发开发的仿真工具的仿真工具 目前版本:目前版本:6.0 业界使用最广泛的业界使用最广泛的HDL语言仿真器之一语言仿真器之一 支持支持VHDL、Verilog HDL或混合或混合HDL语言设计语言设计 仿真仿真功能强大功能强大,仿真,仿真速度快速度快!15实例演示实例演示 :电子秒表电路的设计:电子秒表电路的设计 假设系统时钟为假设系统时钟为5050MHzMHz, PLDPLD器件为器件为EP1S10F780C6EP1S10F780C6。 设计思路设计思路采用自顶向下的设计方法:采用自顶向下的设计方法:需要两个分频器分频器,将50MHz分
14、频为10KHz,将10KHz分频为100Hz;需要一个BCDBCD码计数器码计数器,可分别对秒和百分秒位循环计数;需要一个译码器译码器,将BCD计数器的输出译码为7段显示器的7段输入。16系统功能框图系统功能框图bdsec3.0clk_50MHzclk_10KHz分频器分频器1BCD计数器计数器译码器译码器译码器译码器bsec3.0dsec6.0sec6.0cnclrT触发器触发器startstop与门与门分频器分频器2clk_100Hzbsecd 3.0bsecm3.0译码器译码器译码器译码器secd6.0secm6.017采用采用QuatusQuatus 的的PLDPLD设计方法设计方法千
15、万记住千万记住哦!哦!1 1. 首先在资源管理器下创建一个工作目录。2 2. 在Quatus 中创建一个工程。3 3. 子模块设计:每个模块可以用HDL语言描述,对每个模块进行编译、仿真,通过后然后生成模块符号。4 4.顶层设计:创建一个顶层图形文件,将各模块符号放到图中,添加输入、输出引脚,连线;编译,仿真。5 5. 给输入、输出引脚分配引脚号码,编程下载。工作目录和工程名工作目录和工程名不能有空格和汉字!不能有空格和汉字!18演演 示示 第第1 1步步:在资源管理器下:在资源管理器下创建一个工作目录创建一个工作目录second。 第第2 2步步:启动:启动Quatus II,执行菜单命令,
16、执行菜单命令“ 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 Com
17、pilation”命令,对其进行全编译。最好每个工程都有最好每个工程都有自己的工作目录!自己的工作目录!19module 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分频器分频器 模块模块
18、1 1 10KHz 10KHz到到100Hz100Hz的分频电路(采用的分频电路(采用Verilog Verilog HDLHDL语言描述)语言描述)(2) I/O说明说明(1) 端口定义端口定义模块名模块名(同文件名同文件名)(3) 功能描述功能描述20子模块设计子模块设计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:
19、0+1; end endendmodule续前页续前页21子模块设计子模块设计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 (!c
20、lr) /(1)异步清零!)异步清零! begin cn=0; /进位信号也必须清零!进位信号也必须清零! dsec3:0=0; sec3:0=0; secd3:0=0; secm3:0=0; end 22子模块设计子模块设计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) /秒低位
21、是否为秒低位是否为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;23子模块设计子模块设计BCDBCD计数器(续计数器(续2 2)续前页续前页/(3)产生向分钟的进位信号)产生向分钟的进位信号 if (dsec3:0=5)&(sec3:0=9)&(secd3:0=9)&(secm3:0=9)
22、cn=1; else cn Simulation ToolTools Simulation Tool”命令,打开仿真器工具窗口; 单击StartStart按钮,开始仿真。bcdcnt.vwfbcdcnt.vwf25创建模块符号创建模块符号(5 5)创建模块符号 仿真通过后,仿真通过后,执行“File Create/Update Create File Create/Update Create Symbol Files for Current FileSymbol Files for Current File”菜单命令,创建模块符号(文件后缀为. .bsfbsf)。26子模块设计子模块设计7 7
23、段码译码器段码译码器 模块模块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 = 7b000011
24、0 ; 4d4: out = 7b1001100 ; 4d5: out = 7b0100100 ; casecase语句适于语句适于对对同一个同一个控制控制信号取不同的信号取不同的值时,输出取值时,输出取不同的值!不同的值!27子模块设计子模块设计7 7段码译码器(续)段码译码器(续) 4d6: out = 7b0100000 ; 4d7: out = 7b0001111 ; 4d8: out = 7b0000000 ; 4d9: out = 7b0000100 ; default:out Assignment Editor Assignment Editor”菜单命令Assignment A
25、ssignment EditorEditor31引脚锁定(续)引脚锁定(续)second_download.bdf32编程下载编程下载(2 2)将该图形文件设置为)将该图形文件设置为顶层实体顶层实体,编译,则生成编程目标,编译,则生成编程目标文件文件second.sofsecond.sof文件(文件(编程目标文件自动与其工程同名)编程目标文件自动与其工程同名);(3 3)编程下载;)编程下载; 执行“Tools ProgrammerTools Programmer”命令,在编程器窗口中 选中“Program/ConfigureProgram/Configure”复选框;单击StartStart
26、按钮,开始编程下载。若完成编程,则在Message窗口中显示“Configuration Configuration succeededsucceeded”。(4 4)在线校验。)在线校验。 利用实验板上的按钮,模拟启动计数、暂停计数和继续计数,以及异步清零功能 ,然后观察数码管和LED的显示,看是否与预定的功能相符。PLDPLD器件和器件和EDAEDA技术的出现改变了技术的出现改变了传统的数字系统设计思想,使硬件传统的数字系统设计思想,使硬件设计变得简单、高效!设计变得简单、高效!33本课程主要学习本课程主要学习基于可编程逻辑器件基于可编程逻辑器件(Programmable Logic De
27、vice,PLD)的)的EDA技术技术和和SOPC(System on Programmable Chip,可编程片上系统,可编程片上系统) 技术。技术。本课程包括理论教学和实验教学两大部分。本课程包括理论教学和实验教学两大部分。理论教学共包括理论教学共包括7章章,以应用为主,按照,以应用为主,按照“技术技术器件器件设计语言设计语言设计软件设计软件实例实例”的顺序介绍当前的顺序介绍当前PLD设设计的主导思想及设计方法,在最后两章简要介绍计的主导思想及设计方法,在最后两章简要介绍SOPC设计方法。设计方法。学分:学分:2.5学时学时:理论课:理论课18学时学时 + 实验课实验课28学时学时 先修
28、课程先修课程:数字电子技术,计算机接口与通信技术:数字电子技术,计算机接口与通信技术课程简介课程简介34实验教学内容实验教学内容 自自 学学时钟分频电路时钟分频电路按钮消抖电路按钮消抖电路卡式电话计费器卡式电话计费器电子抢答器电子抢答器FIRFIR滤波器滤波器4 4位算术逻辑单元位算术逻辑单元键盘控制器键盘控制器鼠标控制器鼠标控制器RS232RS232的控制电路的控制电路 必必 做做电子秒表电路电子秒表电路乐曲演奏电路乐曲演奏电路数码管扫描显示电路数码管扫描显示电路交通红绿灯控制器交通红绿灯控制器电子日历与电子时钟电子日历与电子时钟电梯控制器电梯控制器VGAVGA显示器的控制电路显示器的控制电
29、路基于基于SOPCSOPC的的电子钟设计电子钟设计 35教学目标教学目标 拓宽知识面,深化对数字电子技术和计算机接口与拓宽知识面,深化对数字电子技术和计算机接口与通信技术等知识的理解;通信技术等知识的理解;熟练掌握熟练掌握VerilogVerilog HDL HDL硬件描述语言;硬件描述语言;能够采用各种输入方法,综合使用多种能够采用各种输入方法,综合使用多种EDAEDA工具软工具软件,进行件,进行PLDPLD的设计、编译、仿真及下载,掌握的设计、编译、仿真及下载,掌握EDAEDA设计的基本原理和方法;设计的基本原理和方法;熟练应用熟练应用EDAEDA技术进行基于技术进行基于PLDPLD的数字
30、系统的设计与的数字系统的设计与开发;开发;能够熟练进行能够熟练进行SOPCSOPC的设计的设计。361.基于FPGA的嵌入式系统设计 任爱锋等编著,西安电子科技大学出版社,20042.EDA实验指导书,自编 教材教材 (1 1)数字系统设计与Verilog HDL 王金明、杨吉斌编著,电子工业出版社,2002(2 2) SOPC技术实用教程 潘松等编著,清华大学出版社,2005(3 3) 从算法设计到硬线逻辑的实现复杂数字逻辑系统的Verilog HDL设计技术和方法 夏宇闻编著,高等教育出版社,2001 (4 4)从算法设计到硬线逻辑的实现实验练习与Verilog 语法手册 夏宇闻编著,高等
31、教育出版社,2001主要参考书主要参考书37课程考核课程考核考核方式:大作业(独立完成) 实验理论课考试(闭卷)成 绩:大作业4545 实验成绩4040 理论课考试1515 381.1 1.1 数字系统的设计数字系统的设计1.2 EDA1.2 EDA技术与技术与PLDPLD1.3 IP1.3 IP核复用技术与核复用技术与SOCSOC1.4 1.4 数字系统的实现方式数字系统的实现方式1.5 1.5 数字系统的设计描述方法数字系统的设计描述方法 第第1 1章章 数字系统设计与数字系统设计与EDAEDA技术技术391.1 1.1 数字系统的设计数字系统的设计一、数字系统的概念一、数字系统的概念二、
32、传统的数字系统设计方法二、传统的数字系统设计方法三、现代的数字系统设计方法三、现代的数字系统设计方法401.1 1.1 数字系统的设计数字系统的设计一、数字系统的概念一、数字系统的概念 电子系统电子系统1. 1. 数字系统数字系统凡是可完成一个特定功能的完整的电子装置。由一组电子元件或基本电子单元电路相互连接、相互作用而形成的电路整体,能按特定的控制信号,去执行所设想的功能。 模拟电子系统 数字(电子)系统 模拟-数字混合电子系统 411.1 1.1 数字系统的设计数字系统的设计 模拟电子系统模拟电子系统由若干模拟集成电路、单元电路和分立元器件组成,对模拟信号进行检测、处理、变换和产生的电子系
33、统。 数字(电子)系统数字(电子)系统由若干数字电路和逻辑部件组成,处理及传送数字信号。凡是利用数字技术对数字信息进行处理、传输的电子系统。工作稳定可靠,抗干扰能力强;精确度高;便于大规模集成,易于实现小型化;便于模块化;便于加密、解密。421.1 1.1 数字系统的设计数字系统的设计 模拟模拟- -数字混合电子系统数字混合电子系统由模拟电子电路和数字电子电路组成的电子系统。 主要用于过程控制和各种仪器仪表中,完成对如温度、压力、流量、速度等物理量的测量、控制和显示等。温度温度电压电压大信号大信号数字数字信号信号控制控制信号信号模拟模拟信号信号图图1-1 1-1 水温自动控制系统水温自动控制系
34、统 431.1 1.1 数字系统的设计数字系统的设计 数字电路数字电路:对数字信号进行算术运算和逻辑运算的电路。 数字集成电路数字集成电路:在一块半导体基片上,把众多的数字电路基本单元制作在一起形成的数字电路 。 数字集成电路按集成度分数字集成电路按集成度分 每块包含基本元件数每块包含基本元件数小规模集成电路SSIC, 10 100个;中规模集成电路MSIC, 100 1000个;大规模集成电路LSIC, 1000 10000个;超大规模集成电路VLSIC, 10000个以上。 2. 2. 数字集成电路数字集成电路441.1 1.1 数字系统的设计数字系统的设计 按逻辑功能的特点分按逻辑功能的
35、特点分:(1 1)通用型通用型:具有很强的通用性,逻辑功能较简单,且固定不变。(2 2)专用型专用型:即专用集成电路ASIC(Application Specific Integrated Circuit),为某种专门用途而设计的集成电路。 数字系统的发展得益于数字系统的发展得益于数字器件数字器件和和集成技术集成技术的发展。的发展。摩尔定律(摩尔定律(Moores lawMoores law):每每1818个个月,芯片集成度提高月,芯片集成度提高1 1倍,功耗下降一半倍,功耗下降一半。451.1 1.1 数字系统的设计数字系统的设计 SSICMSIC LSIC VLSIC SOC(System
36、 On Chip片上系统)片上系统)SOPC(System On a Programmable Chip,可编程片上系统),可编程片上系统)3. 3. 数字器件的发展数字器件的发展4. 4. 集成(集成(ICIC,Integrated CircuitsIntegrated Circuits)技术的发展)技术的发展 芯片的工艺线宽越来越小芯片的工艺线宽越来越小 从从19971997年的年的0.350.35 m m,发展到现在的,发展到现在的9090nmnm。 设计周期越来越短设计周期越来越短 19971997年时需要年时需要12121818月,现在可能只需要半年甚至更短!月,现在可能只需要半年甚
37、至更短! 集成度越来越高集成度越来越高 从从19971997年的年的2020万万5050万门,发展到现在的几千万门。万门,发展到现在的几千万门。461.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 El
38、ectronic IC) 以上这些器件构成了现代以上这些器件构成了现代数字系统的基石。数字系统的基石。471.1 1.1 数字系统的设计数字系统的设计二、二、传统传统的数字系统设计方法的数字系统设计方法n基于基于电路板电路板采用固定功能器件(通用型器采用固定功能器件(通用型器件),通过设计件),通过设计电路板电路板来实现系统功能来实现系统功能写出真值表或状态表推出逻辑表达式化简逻辑电路图用小规模逻辑器件来实现采用自下而上(Bottom Up)的设计方法采用通用型逻辑器件搭积木式的方式 在系统硬件设计的后期进行仿真和调试 主要设计文件是电路原理图 481.1 1.1 数字系统的设计数字系统的设计
39、三、三、现代现代的数字系统设计方法的数字系统设计方法 基于基于芯片芯片采用采用PLDPLD,利用,利用EDAEDA开发工具,开发工具,通过通过芯片芯片设计来设计来实现系统功能实现系统功能。计算机计算机+EDA软件软件空白空白PLD+ 数字系统数字系统通常采用自上而下(Top Down)的设计方法采用可编程逻辑器件 在系统硬件设计的早期进行仿真主要设计文件是用硬件描述语言编写的源程序降低了硬件电路设计难度自行定义器件内部的逻辑和引脚写出真值表或状态表 EDA开发工具自动进行逻辑综合 模拟仿真编程下载到PLD中491.1 1.1 数字系统的设计数字系统的设计特特 点点传统方法传统方法现代方法现代方
40、法采用器件采用器件通用型器件PLD设计对象设计对象电路板芯片设计方法设计方法自下而上自上而下仿真时期仿真时期系统硬件设计后期系统硬件设计早期主要设计文件主要设计文件电路原理图HDL语言编写的程序表表1-1 1-1 数字系统的两种设计方法比较数字系统的两种设计方法比较501.1 1.1 数字系统的设计数字系统的设计1. 1.自上而下的设计(自上而下的设计(Top DownTop Down)占据主导地位 辅助的设计手段 功能模块划分子模块设计系统级设计系统级设计功能级描述功能级描述功能仿真功能仿真门级描述门级描述时序仿真时序仿真若仿真未通若仿真未通过,则需修过,则需修改设计!改设计!2.2.自下而
41、上的设计(自下而上的设计(Bottom UpBottom Up)设计基本单元设计基本单元构成子模块构成子模块子系统子系统系统系统511.2 EDA1.2 EDA技术与技术与PLDPLD一、一、EDAEDA技术技术二、什么是二、什么是PLDPLD?三、三、PLDPLD的发展演变的发展演变四、四、EDAEDA技术与技术与PLDPLD的关的关系系521.2 EDA1.2 EDA技术与技术与PLDPLD一、一、EDAEDA技术技术1 1什么是什么是EDAEDA技术?技术? EDAEDA:Electronic Design AutomationElectronic Design Automation(电
42、子设计自动化)(电子设计自动化) 是在是在电子产品电子产品的设计开发工作中使用的设计开发工作中使用计算机计算机和和计算机网络计算机网络作为辅助工具以提高工作效率的技术。作为辅助工具以提高工作效率的技术。是立足于计算机工作平台开发出来的一整套先进的设计电子系统的软件工具。是在计算机的辅助下完成电子产品设计方案的输入、处理、仿真和下载的一种硬件设计技术。是微电子技术中的核心技术之一,是现代集成系统设计的重要方法。531.2 EDA1.2 EDA技术与技术与PLDPLD2 2EDAEDA技术的历史技术的历史 以计算机科学、微电子技术的发展为基础 汇集了计算机图形学、拓扑学和计算数学等学科的最新成果(
43、1 1)CADCAD(Computer-Aided DesignComputer-Aided Design)阶段()阶段(1964197819641978)“上帝时代”最早的EDA技术:电路模拟、逻辑模拟、MOS同步和模拟、PCB布局、线路布线和标准电池等技术 只能进行PCB板布局布线和简单版图绘制541.2 EDA1.2 EDA技术与技术与PLDPLD(2 2)CAECAE(Computer-Aided EngineeringComputer-Aided Engineering)阶段()阶段(1978199719781997)“英雄时代”电子CAD工具逐步完善,单点工具集成化并从技术上向CA
44、E过渡:诞生了先进的布局和布线、逻辑综合、HDL语言、模拟加速器和仿真器以及高级综合等技术(3 3)EDAEDA阶段(阶段(19931993现在)现在)“人性时代” 微电子工艺飞速发展,工艺水平已达到深亚微米级;晶体管集成度提高到百万门甚至千万门级;因特网开始进入广泛应用阶段,工程师们开始设计系统级芯片(systems-on-chip)EDA技术发展到物理校验、布局、逻辑综合、模拟设计以及软件/硬件协同设计。 EDA技术已成为电子设计的重要工具 EDAEDA技术受制造技术驱动而发展技术受制造技术驱动而发展 随微电子技术、计算机技术而发展随微电子技术、计算机技术而发展551.2 EDA1.2 E
45、DA技术与技术与PLDPLD3 3现代现代EDAEDA技术的特点技术的特点 特征特征:采用高级语言描述,具有系统级仿真和综合能力:采用高级语言描述,具有系统级仿真和综合能力(1 1)采用硬件描述语言采用硬件描述语言HDLHDL(Hardware Description LanguageHardware Description Language)v 与原理图设计方法相比:与原理图设计方法相比:更适于描述大规模的系统在抽象的层次上描述系统的结构与功能v 采用采用HDLHDL的的优点优点:语言的公开可利用性设计与工艺的无关性宽范围的描述能力系统级、算法级、RTL级、门级、开关级便于组织大规模系统的设
46、计便于设计的复用、交流、保存与修改561.2 EDA1.2 EDA技术与技术与PLDPLD(2 2)高层综合和优化高层综合和优化支持系统级的综合与优化。综合综合:通过EDA工具把用HDL语言描述的模块自动转换为用门级电路网表表示的模块,即将电路映射到器件的专用基本结构。优化优化:采用优化算法,将设计简化,去除冗余项,提高系统运行速度。(3 3)并行工程并行工程定义定义:一种系统化的、集成化的、并行的产品及相关过程(指制造和维护)的开发模式。现代EDA工具建立了并行工程框架结构的开发环境,支持多人同时并行进行设计。一种软件平台结构(4 4)开放性和标准化开放性和标准化开放性开放性: EDA工具只
47、要具有符合标准的开放式框架结构,就可以接纳其他厂商的EDA工具一起进行设计资源共享标准化标准化:随着设计数据格式标准化EDA框架标准化,即在同一个工作站上集成各具特色的多种EDA工具,它们能够协同工作。 571.2 EDA1.2 EDA技术与技术与PLDPLD4 4EDAEDA技术的范畴和应用技术的范畴和应用 可分为可分为系统级系统级、门级门级和和物理实现级物理实现级三个层次的辅助设计过程三个层次的辅助设计过程 涵盖了从系统级设计到版图设计的全过程涵盖了从系统级设计到版图设计的全过程,涉及电子电路设涉及电子电路设计的各个领域:计的各个领域:IC版图设计版图设计PLD开发开发电路(原理)设计电路
48、(原理)设计 模拟电路 数字电路 混合电路 高速电路PCB板设计板设计本课程内容本课程内容581.2 EDA1.2 EDA技术与技术与PLDPLD5 5EDAEDA技术发展的现状技术发展的现状EDAEDA技术在进入技术在进入2121世纪后,得到了更大的发展,突出表现在以下几世纪后,得到了更大的发展,突出表现在以下几个方面:个方面:使电子设计成果以自主知识产权的方式得以明确表达和确认成使电子设计成果以自主知识产权的方式得以明确表达和确认成为可能;为可能;在在设计设计和和仿真仿真两方面支持标准硬件描述语言的功能强大的两方面支持标准硬件描述语言的功能强大的EDA软件软件不断推出。不断推出。电子技术全
49、方位纳入电子技术全方位纳入EDA领域;领域;EDA使得电子领域各学科的界限更加模糊,更加互为包容;使得电子领域各学科的界限更加模糊,更加互为包容;更大规模的更大规模的FPGA和和CPLD器件不断推出;器件不断推出;基于基于EDA工具的工具的ASIC设计标准单元设计标准单元已涵盖大规模电子系统及已涵盖大规模电子系统及IP核模块;核模块;软硬件软硬件IP核核在电子行业的产业领域、技术领域和设计应用领域在电子行业的产业领域、技术领域和设计应用领域得到进一步确认;得到进一步确认;SoC高效低成本设计技术的成熟。高效低成本设计技术的成熟。591.2 EDA1.2 EDA技术与技术与PLDPLD6 6ED
50、AEDA技术的发展方向技术的发展方向(1 1)将沿着智能化、高性能、高层次综合方向发展将沿着智能化、高性能、高层次综合方向发展(2 2)支持软硬件协同设计支持软硬件协同设计芯片和芯片工作所需的应用软件同时设计,同时完成。采用协同设计,可以及早发现问题,保证一次设计成功,缩短开发周期,这在设计大系统时尤为重要。 (3 3)采用描述系统的新的设计语言采用描述系统的新的设计语言这种语言统一对硬件和软件进行描述和定义,从开始设计功能参数的提出直至最终的验证。能够使设计过程一体化;设计效率更高;而且必须从现存的方法学中深化出来。 (4 4) 推出更好的仿真和验证工具推出更好的仿真和验证工具随着单一芯片上
51、逻辑门数量超过百万门,对设计的验证工作将变得比设计任务本身还要艰难。601.2 EDA1.2 EDA技术与技术与PLDPLD二、什么是二、什么是PLDPLD?1 1什么是什么是PLDPLD? PLDPLD:Programmable Logic DeviceProgrammable Logic Device,可编程逻辑器件,可编程逻辑器件是用户可自行定义其逻辑功能的一种专用集成电路(ASIC)。 作为一种通用型器件生产,作为一种通用型器件生产,但但其逻辑功能由用户通过器件编程其逻辑功能由用户通过器件编程自行设定。自行设定。 PLDPLD是一种数字集成电路的是一种数字集成电路的半成品半成品,在它的
52、芯片上按照一定的,在它的芯片上按照一定的排列方式集成了大量的门和触发器等基本逻辑元件,使用者可排列方式集成了大量的门和触发器等基本逻辑元件,使用者可以利用某种开发工具对它进行加工,等于把片内的元件连接起以利用某种开发工具对它进行加工,等于把片内的元件连接起来,使它完成某个逻辑电路或系统功能,成为一个可以在实际来,使它完成某个逻辑电路或系统功能,成为一个可以在实际电子系统中使用的专用集成电路。电子系统中使用的专用集成电路。PLD集中了通用型集中了通用型器件和器件和ASIC的优的优点!点!611.2 EDA1.2 EDA技术与技术与PLDPLD2 2PLDPLD的特点的特点(1 1)编程方便编程方
53、便:利用开发工具,用户可反复编程、擦除,修改设计方便 (2 2)集成度高集成度高:单片逻辑门数已达数十万门甚至上百万门(3 3)速度快速度快(4 4)价格低价格低(5 5)开发周期短开发周期短:EDA开发工具齐全,设计人员在很短时间内可完成电路设计的输入、编译、仿真和编程,大大缩短了开发周期。 621.2 EDA1.2 EDA技术与技术与PLDPLD三、三、PLDPLD的发展演变的发展演变 发展于发展于20世纪世纪70年代初。年代初。 主要有主要有FPLA、PAL、GAL、CPLD和和FPGA等。等。器件器件含义含义出现时期出现时期FPLA现场可编程逻辑阵列20世纪70年代初PAL可编程阵列逻
54、辑20世纪70年代末期GAL通用阵列逻辑20世纪80年代初期CPLD复杂可编程逻辑器件20世纪80年代中期FPGA现场可编程门阵列20世纪80年代中期表表1-2 PLD1-2 PLD的发展演变的发展演变631.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年);目前年);目前半导体公司半导体公司正重点研发正重点研
55、发60nm工艺。工艺。 集成度集成度:在一块硅片上可集成上千万个以上逻辑门。:在一块硅片上可集成上千万个以上逻辑门。 速度速度:器件的速度指标:器件的速度指标,FPGA的门延时的门延时3ns,CPLD的系统速度的系统速度180MHz。 工艺手段工艺手段:CMOS工艺在速度上超过双极型工艺,成为工艺在速度上超过双极型工艺,成为PLD的主要工艺手段。的主要工艺手段。 641.2 EDA1.2 EDA技术与技术与PLDPLD四、四、EDAEDA技术与技术与PLDPLD的关系的关系 PLDPLD的应用开发过程中贯穿着的应用开发过程中贯穿着EDAEDA技术的应用技术的应用原始设计输入原始设计输入EDAE
56、DA开发软件开发软件器件配置信息器件配置信息PLDPLD硬件设备硬件设备PLDPLD在在编程灵活性编程灵活性、容量容量与与速度速度等方面达到了相当高的水平,可在一个器等方面达到了相当高的水平,可在一个器件中实现具有相当规模的、完整、高速的数字系统。件中实现具有相当规模的、完整、高速的数字系统。EDAEDA开发工具也十分成熟高效,可使用开发工具也十分成熟高效,可使用HDLHDL语言、电路图、波形图等多种语言、电路图、波形图等多种方法进行设计输入,并进行综合、仿真与编程。方法进行设计输入,并进行综合、仿真与编程。 PLDPLD广泛应用于广泛应用于产品开发产品开发、原型设计原型设计、小批量小批量生产
57、生产中。中。 随着随着PLDPLD成本和功耗不断降低、性能大幅度提成本和功耗不断降低、性能大幅度提高,高,PLDPLD开始取代开始取代高端高端 ASICASIC、DSPDSP和和微处理器微处理器。651.3 IP1.3 IP核复用技术与核复用技术与SOCSOC一、一、IPIP核复用技术核复用技术二、片上系统二、片上系统SOCSOC三、可编程片上系统三、可编程片上系统SOPCSOPC661.3 IP1.3 IP核复用技术与核复用技术与SOCSOC一、一、IPIP核复用技术核复用技术1 1IPIP与与IPIP核核(Intellectual PropertyIntellectual Property
58、)原意为知识产权、著作权,在IC设计领域指实现某种功能的设计。完成某种功能的虚拟电路模块。又称为虚拟部件虚拟部件(VC,Virtual Component)。它是以HDL语言描述的构成VLSI中各种功能单元的软件群。(IPIP模块)模块)IPIP核分为:软核、硬核及固核核分为:软核、硬核及固核671.3 IP1.3 IP核复用技术核复用技术与与SOCSOC(1 1)软核()软核(Soft CoreSoft Core)定义:功能经过验证的、可综合的、实现后电路结构总门数在50005000门以上的HDL模型。指在寄存器级或门级对电路功能用HDL进行描述的设计模块;用户可修改,具有最大的灵活性用户可
59、修改,具有最大的灵活性;主要用于接口、算法、编码、译码和加密模块的设计。(2 2)硬核)硬核(Hard CoreHard Core)指以版图版图形式描述的设计模块。基于一定的设计工艺,针对某一具体芯片,用户不能改动用户不能改动。常用硬核有存储器、模拟器件及接口。(3 3)固核()固核(Firm CoreFirm Core)介于硬核和软核之间;用户可重新定义关键的性能参数,内部连线可重新优化。681.3 IP1.3 IP核复用技术核复用技术与与SOCSOC 典型的典型的IPIP核核微处理器核(MPU core)数字信号处理器核(DSP core)存储器核(Memory core)特定功能核(如M
60、PEG)标准接口核(Ethernet、USB、PCI及IEEE1394核)处理器核处理器核(MCU)RAM/ROMDSP核核 A/D D/A PCI接口或接口或USB接口接口I/O单单元元图图1-11 1-11 由由IPIP核构成片上系统核构成片上系统SOCSOC691.3 IP1.3 IP核复用技术与核复用技术与SOCSOC2 2IPIP核复用(核复用(IP ReuseIP Reuse) 越来越多的公司投入IP核的开发,IP核已作为一种商品广泛销售和使用。 运用IP核技术可以缩短硬件开发时间,避免重复劳动,保证大规模器件的性能,提高其可靠性。 电子系统的设计:自行设计IP或购买第三方的IP在功能上进行整合迅速形成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024版网络安全产品研发与销售合同
- 模板人工费及二零二四年度施工合同
- 北京工业大学《国际经济学》2021-2022学年第一学期期末试卷
- 二零二四年度技术服务合同:某企业生产线智能化改造
- 二零二四年度机械设计委托开发合同
- 2024年度电器产品进出口贸易合同2篇
- 二零二四年度版权许可合同的许可使用期限
- 二零二四年旅游服务代理合同
- 2024年度电力工程设计质量控制合同
- 2024年度餐饮业雇佣服务员合同指南
- 施工劳务承包合同精简版2页
- 分管教学副校长在期中质量分析会上的发言教学文稿
- AI表面质量检测系统产品介绍PPT课件
- 预缴税款的申报表(doc 2页)
- 餐饮服务单位(食堂)餐厨废弃物(泔水)处理记录台账
- 青少年特发性脊柱侧弯症中医诊疗方案4
- 研发系统积分考核管理办法
- 食品安全自查表格模板
- 加热装配计算
- 北师大版四年级数学上册第七单元教材分析
- 房屋买卖合同(维文)
评论
0/150
提交评论