电路计算机辅助设计.ppt
《电路计算机辅助设计.ppt》由会员分享,可在线阅读,更多相关《电路计算机辅助设计.ppt(101页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 电路计算机辅助设计电路计算机辅助设计 吉林大学通信工程学院吉林大学通信工程学院 高燕梅高燕梅教学内容与要求教学内容与要求第第1 1章章 EDA EDA技术简介技术简介第第2 2章章 Verilog HDLVerilog HDL语言编程语言编程 (10学时)第第3 3章章 VHDL VHDL语言编程语言编程(8学时)第第4 4章章 MATLABMATLAB程序入门程序入门(12学时)第第5 5章章 MATLAB MATLAB在电路中的应用在电路中的应用(4学时)每章有实验室上机实验每章有实验室上机实验 实验教学 第第1章章 EDA技术简介技术简介1.1 EDA技术的主要内容技术的主要内容1.2
2、 EDA软件系统的构成软件系统的构成1.3 EDA的工程设计流程的工程设计流程1.4 数字系统的设计方法数字系统的设计方法第第2 2章章 Verilog HDL Verilog HDL语言编程语言编程2.1 Verilog HDL2.1 Verilog HDL设计模块的基本结构设计模块的基本结构2.2 Verilog HDL2.2 Verilog HDL词法构成词法构成2.3 Verilog HDL2.3 Verilog HDL的语句的语句2.4 Verilog HDL2.4 Verilog HDL模型模型2.5 Verilog HDL2.5 Verilog HDL设计电路流程设计电路流程2.
3、6 2.6 用用Verilog HDLVerilog HDL描述逻辑电路的实例描述逻辑电路的实例第第3章章 VHDL 语言编程基础语言编程基础3.1 概述概述 3.2 VHDL程序基本结构程序基本结构 3.3 VHDL语言要素语言要素 3.4 VHDL顺序语句顺序语句 3.5 VHDL并行语句并行语句 3.6 子程序子程序(SUBPROGRAM)3.7 库、程序包及其他库、程序包及其他 3.8 VHDL描述风格描述风格 3.9 基本逻辑电路设计基本逻辑电路设计 3.10 状态机的状态机的VHDL设计设计 第第4章章 MATLAB程序入门程序入门基本语法基本语法4.1.1 变量及其赋值变量及其赋
4、值4.4.2 矩阵的初等运算矩阵的初等运算4.1.3 元素群运算元素群运算4.1.4 逻辑判断及流程控制逻辑判断及流程控制4.2 基本绘图方法基本绘图方法4.2.1 M文件及程序调试文件及程序调试4.2.2 MATLAB的开发环境和工具的开发环境和工具第第5章章 MATLAB在电路中的应用在电路中的应用5.1 电阻电路和动态电路电阻电路和动态电路5.2 正弦稳态电路和频率响应正弦稳态电路和频率响应5.3 二端口电路二端口电路5.4 滤波器滤波器第第1章章 EDA技术简介技术简介 1.1 EDA技术的主要内容技术的主要内容EDA是电子设计自动化(是电子设计自动化(Electronic Desig
5、n Automation)的)的缩写。缩写。EDA技术就是以计算机为工具,设计者在技术就是以计算机为工具,设计者在EDA软件平台上,用软件平台上,用硬件描述语言硬件描述语言HDL完成设计完成设计文件,然后由计算机自动地完成逻文件,然后由计算机自动地完成逻辑辑编译编译、化简、分割、综合、优化、布局、布线和、化简、分割、综合、优化、布局、布线和仿真仿真,直至,直至对于特定目标芯片的对于特定目标芯片的适配编译适配编译、逻辑映射和、逻辑映射和编程下载编程下载等工作。等工作。EDA技术的出现,极大地提高了电路设计的效率和可靠性,减技术的出现,极大地提高了电路设计的效率和可靠性,减轻了设计者的劳动强度。轻
6、了设计者的劳动强度。在电子技术设计领域,在电子技术设计领域,可编程逻辑器件可编程逻辑器件(如(如CPLD、FPGA)的)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。极大的灵活性。CPLD、FPGA器件可以通过器件可以通过软件编程软件编程而对硬件结构和工作方式而对硬件结构和工作方式进行进行重构重构,从而使得硬件的设计可以如同软件设计那样方便快,从而使得硬件的设计可以如同软件设计那样方便快捷。促进了捷。促进了EDA技术的迅速发展。技术的迅速发展。EDA技术涉及面广,内容丰富,主要应掌握如下四个方面的技术涉及面广,内容丰
7、富,主要应掌握如下四个方面的内容:内容:大规模可编程逻辑器件,大规模可编程逻辑器件是利用大规模可编程逻辑器件,大规模可编程逻辑器件是利用EDA技术进行电子系统设计的载体。技术进行电子系统设计的载体。FPGA和和CPLD 硬件描述语言,硬件描述语言是利用硬件描述语言,硬件描述语言是利用EDA技术进行电子系技术进行电子系统设计的主要表达手段。统设计的主要表达手段。VHDL、Verilog、ABEL 软件开发工具,软件开发工具是利用软件开发工具,软件开发工具是利用EDA技术进行电子系技术进行电子系统设计的智能化的自动化设计工具。统设计的智能化的自动化设计工具。Altera的的MAX+plus II、
8、Lattice的的ispEXPERT、Xilinx的的Foundation Series。实验开发系统,实验开发系统则是利用实验开发系统,实验开发系统则是利用EDA技术进行电子技术进行电子系统设计的下载工具及硬件验证工具。系统设计的下载工具及硬件验证工具。1 大规模可编程逻辑器件大规模可编程逻辑器件 可编程逻辑器件可编程逻辑器件(简称简称PLD)是一种由用户编程以实是一种由用户编程以实现某种逻辑功能的新型逻辑器件。现某种逻辑功能的新型逻辑器件。FPGA是现场可编程门阵列的简称,是现场可编程门阵列的简称,CPLD是复杂可编程逻辑器件的简称。是复杂可编程逻辑器件的简称。高集成度、高速度和高可靠性是
9、高集成度、高速度和高可靠性是FPGA/CPLD最明显最明显的特点,其时钟延时可小至的特点,其时钟延时可小至ns级,结合其并行工作方级,结合其并行工作方式,在超高速应用领域和实时测控方面有着非常广阔式,在超高速应用领域和实时测控方面有着非常广阔的应用前景。的应用前景。FPGA/CPLD的高可靠性还表现在几乎可将整个系统的高可靠性还表现在几乎可将整个系统下载于同一芯片中,实现所谓片上系统,从而大大缩下载于同一芯片中,实现所谓片上系统,从而大大缩小了体积,易于管理和屏蔽。小了体积,易于管理和屏蔽。2 硬件描述语言硬件描述语言(HDL)常用的硬件描述语言有常用的硬件描述语言有VHDL、Verilog、
10、ABEL。VHDL:作为:作为IEEE的工业标准硬件描述语言,在的工业标准硬件描述语言,在电子工程领域,已成为事实上的通用硬件描述语言。电子工程领域,已成为事实上的通用硬件描述语言。Verilog:支持的:支持的EDA工具较多,适用于工具较多,适用于RTL级级(寄存器转换级)寄存器转换级)和门电路级的描述,其综合过程和门电路级的描述,其综合过程较较VHDL稍简单,但其在高级描述方面不如稍简单,但其在高级描述方面不如VHDL。有专家认为,在新世纪中,有专家认为,在新世纪中,VHDL与与Verilog语言将语言将承担几乎全部的数字系统设计任务。承担几乎全部的数字系统设计任务。3 软件开发工具软件开
11、发工具 目前比较流行的、主流厂家的目前比较流行的、主流厂家的EDA的软件工具有:的软件工具有:Altera的的MAX+plus II、升级版、升级版Quartus II;Lattice的的ispEXPERT;Xilinx的的Foundation Series。MAX+plus II是是Altera公司开发的公司开发的EDA工具软件。工具软件。Altera公司是世界上最大的可编程逻辑器件供应商之一。公司是世界上最大的可编程逻辑器件供应商之一。MAX+plus II软件是一个集成化的可编程逻辑器件开发软件是一个集成化的可编程逻辑器件开发环境,设计者能在这个环境下进行逻辑设计,完成设计环境,设计者能
12、在这个环境下进行逻辑设计,完成设计文件的输入编辑、编译、仿真、综合、布局布线和编程文件的输入编辑、编译、仿真、综合、布局布线和编程下载等设计工作。软件界面友好、方便易学、功能全面,下载等设计工作。软件界面友好、方便易学、功能全面,是非常流行的大众化是非常流行的大众化EDA平台。平台。MAX+plus II:支持原理图、:支持原理图、VHDL和和Verilog语语言文本文件,以及以波形与言文本文件,以及以波形与EDIF等格式的文件作等格式的文件作为设计输入,并支持这些文件的任意混合设计。为设计输入,并支持这些文件的任意混合设计。它具有门级仿真器,可以进行功能仿真和时序仿它具有门级仿真器,可以进行
13、功能仿真和时序仿真,能够产生精确的仿真结果。真,能够产生精确的仿真结果。在适配之后,在适配之后,MAX+plus II生成供时序仿真用的生成供时序仿真用的EDIF、VHDL和和Verilog这三种不同格式的网表文这三种不同格式的网表文件。件。它界面友好,使用便捷,被誉为业界最易学易用它界面友好,使用便捷,被誉为业界最易学易用的的EDA的软件的软件,并支持主流的第三方,并支持主流的第三方EDA工具,工具,支持所有支持所有Altera公司的公司的FPGA/CPLD大规模逻辑器大规模逻辑器件。件。4 实验开发系统实验开发系统 提供芯片下载电路及EDA实验/开发的外围资源(类似于用于单片机开发的仿真器
14、),供硬件验证用。一般包括:实验或开发所需的各类基本信号发生模块,包括时钟、脉冲、高低电平等;FPGA/CPLD输出信息显示模块,包括数码显示、发光管显示、声响指示等;监控程序模块,提供“电路重构软配置”;目标芯片适配座以及上面的FPGA/CPLD目标芯片和编程下载电路。自己阅读 1.2 EDA软件系统的构成软件系统的构成EDA技术研究的对象是电子设计的全过程,有系统级、技术研究的对象是电子设计的全过程,有系统级、电路级和物理级电路级和物理级3个层次的设计。个层次的设计。涉及的电子系统从低频、高频到微波,从线性到非线性,涉及的电子系统从低频、高频到微波,从线性到非线性,从模拟到数字,从通用集成
15、电路到专用集成电路构造的从模拟到数字,从通用集成电路到专用集成电路构造的电子系统,因此电子系统,因此EDA技术研究的范畴相当广泛。技术研究的范畴相当广泛。EDA软件系统应当包含以下子模块:软件系统应当包含以下子模块:设计输入子模块、设计输入子模块、设计数据库子模块、设计数据库子模块、分析验证子模块、分析验证子模块、综合仿真子模块、综合仿真子模块、布局布线子模块等。布局布线子模块等。自己阅读 (1)设计输入子模块;用户编辑输入模块的设计描设计输入子模块;用户编辑输入模块的设计描述,并进行语义正确性、语法规则的检查,检查通述,并进行语义正确性、语法规则的检查,检查通过后,将用户的设计描述数据转换为
16、过后,将用户的设计描述数据转换为EDA软件系统软件系统的内部数据格式,存入设计数据库被其他子模块调的内部数据格式,存入设计数据库被其他子模块调用。用。设计输入子模块不仅能接受图形描述输入、硬件描设计输入子模块不仅能接受图形描述输入、硬件描述语言述语言(HDL)描述输入,还能接受图文混合描述输入。描述输入,还能接受图文混合描述输入。该子模块一般包含针对不同描述方式的编辑器,如该子模块一般包含针对不同描述方式的编辑器,如图形编辑器、文本编辑器等,同时包含对应的分析图形编辑器、文本编辑器等,同时包含对应的分析器。器。自己阅读 (2)设计数据库子模块:该模块存放系统提供的库单设计数据库子模块:该模块存
17、放系统提供的库单元以及用户的设计描述和中间设计结果。元以及用户的设计描述和中间设计结果。(3)分析验证子模块:该模块包括各个层次的模拟验分析验证子模块:该模块包括各个层次的模拟验证、设计规则的检查、故障诊断等。证、设计规则的检查、故障诊断等。(4)综合仿真子模块:该模块包括各个层次的综合工综合仿真子模块:该模块包括各个层次的综合工具,理想的情况是:从高层次到低层次的综合仿真具,理想的情况是:从高层次到低层次的综合仿真全部由全部由EDA工具自动实现。工具自动实现。(5)布局布线子模块:该模块实现由逻辑设计到物理布局布线子模块:该模块实现由逻辑设计到物理实现的映射,因此与物理实现的方式密切相关。例
18、实现的映射,因此与物理实现的方式密切相关。例如,最终的物理实现可以是门阵列、可编程逻辑器如,最终的物理实现可以是门阵列、可编程逻辑器件等,由于对应的器件不同,因此各自的布局布线件等,由于对应的器件不同,因此各自的布局布线工具会有很大的差异。工具会有很大的差异。自己阅读1.3 EDA的工程设计流程的工程设计流程1 源程序的编辑和编译源程序的编辑和编译 利用利用EDA技术进行一项工程设计,首先需利用技术进行一项工程设计,首先需利用EDA工工具的文本编辑器或图形编辑器将它用文本方式或图形方式具的文本编辑器或图形编辑器将它用文本方式或图形方式表达出来,进行排错编译,变成表达出来,进行排错编译,变成Ve
19、rilog、VHDL文件格式,文件格式,为进一步的逻辑综合作准备。为进一步的逻辑综合作准备。常用的源程序输入方式有三种。常用的源程序输入方式有三种。(1)原理图输入方式:利用原理图输入方式:利用EDA工具提供的图形编辑器以工具提供的图形编辑器以原理图的方式进行输入。原理图输入方式比较容易掌握,原理图的方式进行输入。原理图输入方式比较容易掌握,直观且方便,所画的电路原理图与传统的器件连接方式完直观且方便,所画的电路原理图与传统的器件连接方式完全一样,很容易被人接受,而且编辑器中有许多现成的单全一样,很容易被人接受,而且编辑器中有许多现成的单元器件可以利用,自己也可以根据需要设计元件。元器件可以利
20、用,自己也可以根据需要设计元件。(2)状态图输入方式状态图输入方式:以图形的方式表示状态图进行输入。当填好时钟信号名、状态转换条件、状态机类型等要素后,就可以自动生成VHDL程序。这种设计方式简化了状态机的设计,比较流行。(3)Verilog、VHDL软件程序的文本方式软件程序的文本方式:最一般化、最具普遍性的输入方法,任何支持VHDL的EDA工具都支持文本方式的编辑和编译。2 逻辑综合和优化逻辑综合和优化 将VHDL的软件设计与硬件的可实现性挂钩,需要利用EDA软件系统的综合器进行逻辑综合。综合器的功能就是将设计者在EDA平台上完成的针对某个系统项目的HDL、原理图或状态图形的描述,针对给定
21、硬件结构组件进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述文件。综合器工作前,必须给定最后实现的硬件结构参数,它的功能就是将软件描述与给定硬件结构用某种网表文件的方式联系起来。综合器是软件描述与硬件实现的一座桥梁。综合过程就是将电路的高级语言描述转换成低级的,可与FPGA/CPLD或构成ASIC的门阵列基本结构相映射的网表文件。自己阅读 数字系统的设计方法数字系统的设计方法 数字系统设计有多种方法,如模块设计法、自顶向下设计法和自底向上设计法等。数字系统的设计一般采用自顶向下、由粗到细、逐步求精的方法。自顶向下是指将数字系统的整体逐步分解为各个子系统和模块,若子系统规模较大,
22、则还需将子系统进一步分解为更小的子系统和模块,层层分解,直至整个系统中各子系统关系合理,并便于逻辑电路级的设计和实现为止。采用该方法设计时,高层设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细的描述在下一设计层次说明,最底层的设计才涉及具体的寄存器和逻辑门电路等实现方式的描述。采用自顶向下的设计方法有如下优点采用自顶向下的设计方法有如下优点:(1)自顶向下设计方法是一种模块化设计方法。对设计的描述从上自顶向下设计方法是一种模块化设计方法。对设计的描述从上到下逐步由粗略到详细,符合常规的逻辑思维习惯。由于高层设到下逐步由粗略到详细,符合常规的逻辑思维习惯。由于高层设计同器件无关,设
23、计易于在各种集成电路工艺或可编程器件之间计同器件无关,设计易于在各种集成电路工艺或可编程器件之间移植。移植。(2)适合多个设计者同时进行设计。随着技术的不断进步,许多设适合多个设计者同时进行设计。随着技术的不断进步,许多设计由一个设计者已无法完成,必须经过多个设计者分工协作完成计由一个设计者已无法完成,必须经过多个设计者分工协作完成一项设计的情况越来越多。在这种情况下,应用自顶向下的设计一项设计的情况越来越多。在这种情况下,应用自顶向下的设计方法便于由多个设计者同时进行设计,对设计任务进行合理分配,方法便于由多个设计者同时进行设计,对设计任务进行合理分配,用系统工程的方法对设计进行管理。用系统
24、工程的方法对设计进行管理。针对具体的设计,实施自顶向下的设计方法的形式会有所不同,针对具体的设计,实施自顶向下的设计方法的形式会有所不同,但均需遵循以下两条原则:逐层分解功能,分层次进行设计。同但均需遵循以下两条原则:逐层分解功能,分层次进行设计。同时,应在各个设计层次上,考虑相应的仿真验证问题。时,应在各个设计层次上,考虑相应的仿真验证问题。自己阅读第第2章章 Verilog HDL语言语言 2.1 Verilog HDL设计模块的基本结构设计模块的基本结构Verilog HDL程序设计由模块程序设计由模块(module)构成的,构成的,设计模块的基本设计模块的基本结构如图,一个完整的结构如
25、图,一个完整的Verilog HDL设计模块包括端口定义、设计模块包括端口定义、I/O声明、信号类型声明和功能描述声明、信号类型声明和功能描述4个部分。个部分。一、模块端口的定义一、模块端口的定义模块端口定义用来声明电路设计模块模块端口定义用来声明电路设计模块 的输入的输入/输出端口,端口定义格式如下:输出端口,端口定义格式如下:module 模块名模块名(端口(端口1,端口,端口2,端口,端口3,););在端口定义的括号中,是设计电路模块与外界联系的全部输入在端口定义的括号中,是设计电路模块与外界联系的全部输入/输出端口信号或引脚,是设计实体对外的一个通信界面,是外界输出端口信号或引脚,是设
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电路 计算机辅助设计
限制150内