EDA课件第1章

上传人:dao****ing 文档编号:243074192 上传时间:2024-09-15 格式:PPT 页数:91 大小:528KB
返回 下载 相关 举报
EDA课件第1章_第1页
第1页 / 共91页
EDA课件第1章_第2页
第2页 / 共91页
EDA课件第1章_第3页
第3页 / 共91页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,第,*,页,EDA,技术及,CPLD/FPGA,应用简明教程 清华大学出版社,2007,年,2,月,10,日,主讲人:,联系电话:,Email,:,EDA,技术及,CPLD/FPGA,应用简明教程,刘爱荣 等编著,清华大学出版社,朱正伟 等编著,清华大学出版社,王金明等编著,电子工业出版社出版,本课件相关参考书目,2007,年,2,月,10,日,2,第一章 绪论,第二章 大规模可编程逻辑器件,CPLD/FPGA,第三章 硬件描述语言,VHDL,编程基础,第四章 常用,EDA,工具软件操作指南,第五章 基本逻辑电路设计,第六章,CPLD/FPGA,在数字系统中的应用,第七章,CPLD/FPGA,在通信工程中实践应用,第八章,CPLD/FPGA,在,DSP,领域中的应用,第九章,CPLD/FPGA,在微机工程中实践应用,第十章,CPLD/FPGA,实验,本教材共,10,章内容,2007,年,2,月,10,日,3,第,1,章 绪 论,教学目标,教学重点,教学过程,了解,EDA,技术的含义,了解,EDA,技术发展历程,理解和掌握,EDA,技术的主要内容,理解和掌握,EDA,技术的工程设计流程,理解数字系统的设计方法简介,教学目标,2007,年,2,月,10,日,5,理解和掌握,EDA,技术的主要内容,理解和掌握,EDA,技术的工程设计流程,掌握数字系统的设计方法,教学重点,2007,年,2,月,10,日,6,EDA,技术的含义及主要内容阐述,EDA,技术的工程设计流程的研究,数字系统设计方法综述,教学过程,2007,年,2,月,10,日,7,什么叫,EDA,技术?,由于它是一门迅速发展的新技术,涉及面广,内容丰富,理解各异,目前尚无统一的看法。作者认为:,EDA,技术有狭义和广义之分,狭义,EDA,技术就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具。,1.1 EDA,技术的涵义,2007,年,2,月,10,日,8,什么叫,EDA,技术?,由于它是一门迅速发展的新技术,涉及面广,内容丰富,理解各异,目前尚无统一的看法。作者认为:,EDA,技术有狭义和广义之分,狭义,EDA,技术就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具。,1.1 EDA,技术的涵义,2007,年,2,月,10,日,9,什么叫,EDA,技术?,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术,或称为,IES/ASIC,自动设计技术。,2007,年,2,月,10,日,10,什么叫,EDA,技术?,本书讨论的对象为狭义的,EDA,技术。广义的,EDA,技术除狭义的,EDA,技术之外,还包括计算机辅助分析,CAA,技术(如,PSPICE,,,EWB,MATLAB,等),印刷电路板计算机辅助设计,PCB-CAD,技术(如,PROTEL,ORCAD,等)。,2007,年,2,月,10,日,11,利用,EDA,技术进行电子系统的设计具有以下几个特点:, 用软件的方式设计硬件;, 用软件方式设计的系统到硬件系统的转换 是由有关的开发软件自动完成的;, 设计过程中可用有关软件进行各种仿真; 系统可现场编程,在线升级;, 整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。因此,,EDA,技术是现代电子设计的发展趋势。,2007,年,2,月,10,日,12,1.2 EDA,技术发展历程,EDA,技术伴随着计算机、集成电路、电子系统设计的发展,经历了计算机辅助设计,(Computer Assist Design,,简称,CAD),、计算机辅助工程设计,(Computer Assist Engineering Design,,简称,CAE),和电子设计自动化,(Electronic Design Automation,,简称,EDA),三个发展阶段。,2007,年,2,月,10,日,13,1,20,世纪,70,年代的计算机辅助设计,CAD,阶段,早期的电子系统硬件设计采用的是分立元件,随着集成电路的出现和应用,硬件设计进入到发展的初级阶段。初级阶段的硬件设计大量选用中小规模标准集成电路,人们将这些器件焊接在电路板上,做成初级电子系统,对电子系统的调试是在组装好的,PCB(Printed,Circuit Board),板上进行的,由于设计师对图形符号使用数量有限,传统的手工布图方法无法满足产品复杂性的要求,更不能满足工作效率的要求。,2007,年,2,月,10,日,14,这时,人们开始将产品设计过程中高度重复性的繁杂劳动,如布图布线工作,用二维图形编辑与分析的,CAD,工具替代,最具代表性的产品就是美国,ACCEL,公司开发的,Tango,布线软件。,20,世纪,70,年代,是,EDA,技术发展初期,由于,PCB,布图布线工具受到计算机工作平台的制约,其支持的设计工作有限且性能比较差。,2007,年,2,月,10,日,15,2,20,世纪,80,年代的计算机辅助工程设计,CAE,阶段,初级阶段的硬件设计是用大量不同型号的标准芯片实现电子系统设计的。随着微电子工艺的发展,相继出现了集成上万只晶体管的微处理器、集成几十万直到上百万储存单元的随机存储器和只读存储器。此外,支持定制单元电路设计的硅编辑、掩膜编程的门阵列,如标准单元的半定制设计方法以及可编程逻辑器件,(PAL,和,GAL),等一系列微结构和微电子学的研究成果都为电子系统的设计提供了新天地。,2007,年,2,月,10,日,16,因此,可以用少数几种通用的标准芯片实现电子系统的设计。,伴随计算机和集成电路的发展,,EDA,技术进入到计算机辅助工程设计阶段。,20,世纪,80,年代初,推出的,EDA,工具则以逻辑模拟、定时分析、故障仿真、自动布局和布线为核心,重点解决电路设计没有完成之前的功能检测等问题。利用这些工具,设计师能在产品制作之前预知产品的功能与性能,能生成产品制造文件,在设计阶段对产品性能的分析前进了一大步。,2007,年,2,月,10,日,17,如果说,20,世纪,70,年代的自动布局布线的,CAD,工具代替了设计工作中绘图的重复劳动,那么,到了,20,世纪,80,年代出现的具有自动综合能力的,CAE,工具则代替了设计师的部分工作,对保证电子系统的设计,制造出最佳的电子产品起着关键的作用。到了,20,世纪,80,年代后期,,EDA,工具已经可以进行设计描述、综合与优化和设计结果验证,,CAE,阶段的,EDA,工具不仅为成功开发电子产品创造了有利条件,而且为高级设计人员的创造性劳动提供了方便。但是,大部分从原理图出发的,EDA,工具仍然不能适应复杂电子系统的设计要求,而具体化的元件图形制约着优化设计。,2007,年,2,月,10,日,18,3. 20,世纪,90,年代电子系统设计自动化,EDA,阶段,为了满足千差万别的系统用户提出的设计要求,最好的办法是由用户自己设计芯片,让他们把想设计的电路直接设计在自己的专用芯片上。微电子技术的发展,特别是可编程逻辑器件的发展,使得微电子厂家可以为用户提供各种规模的可编程逻辑器件,使设计者通过设计芯片实现电子系统功能。,EDA,工具的发展,又为设计师提供了全线,EDA,工具。,2007,年,2,月,10,日,19,这个阶段发展起来的,EDA,工具,目的是在设计前期将设计师从事的许多高层次设计由工具来完成,如可以将用户要求转换为设计技术规范,有效的处理可用的设计资源与理想的设计目标之间的矛盾,按具体的的硬件、软件和算法分解设计等。由于电子技术和,EDA,工具的发展,设计师可以在不太长的时间内使用,EDA,工具,通过一些简单标准化的设计过程,利用微电子厂家提供的设计库来完成数万门,ASIC,和集成系统的设计与验证。,2007,年,2,月,10,日,20,20,世纪,90,年代,设计师逐步从使用硬件转向设计硬件,从单个电子产品开发转向系统级电子产品开发,(,即片上系统集成,,System on a chip),。因此,,EDA,工具是以系统机设计为核心,包括系统行为级描述与结构综合,系统仿真与测试验证,系统划分与指标分配,系统决策与文件生成等一整套的电子系统设计自动化工具。,2007,年,2,月,10,日,21,这时的,EDA,工具不仅具有电子系统设计的能力,而且能提供独立于工艺和厂家的系统级设计能力,具有高级抽象的设计构思手段。例如,提供方框图、状态图和流程图的编辑能力,具有适合层次描述和混合信号描述的硬件描述语言,(,如,VHDL,、,AHDL,或,Verilog,-HDL),,同时含有各种工艺的标准元件库。只有具备上述功能的,EDA,工具,才可能是电子设计工程师在不熟悉各种半导体工艺的情况下,完成电子系统的设计。,2007,年,2,月,10,日,22,未来的,EDA,技术将向广度和深度两个方向发展,,EDA,将会超越电子设计的范畴进入其他领域,随着基于,EDA,的,SOC(,单片系统,),设计技术的发展,软硬核功能库的建立,以及基于,VHDL,所谓自顶向下设计理念的确立,未来的电子系统的设计与规划将不再是电子工程师们的专利。有专家认为,,21,世纪将是,EDA,技术快速发展的时期,并且,EDA,技术将是对,21,世纪产生重大影响的十大技术之一。,2007,年,2,月,10,日,23,1.3 EDA,技术的主要内容,EDA,技术涉及面广,内容丰富,从教学和实用的角度看,究竟应掌握些什么内容呢,?,作者认为,主要应掌握如下四个方面的内容:,大规模可编程逻辑器件;,硬件描述语言;,软件开发工具;,实验开发系统。,2007,年,2,月,10,日,24,其中,大规模可编程逻辑器件是利用,EDA,技术进行电子系统设计的载体,硬件描述语言是利用,EDA,技术进行电子系统设计的主要表达手段,软件开发工具是利用,EDA,技术进行电子系统设计的智能化的自动化设计工具,实验开发系统则是利用,EDA,技术进行电子系统设计的下载工具及硬件验证工具。为了使读者对,EDA,技术有一个总体印象,下面对,EDA,技术的主要内容进行概要的介绍。,2007,年,2,月,10,日,25,1.3.1.,大规模可编程逻辑器件,可编程逻辑器件,(,简称,PLD),是一种由用户编程以实现某种逻辑功能的新型逻辑器件。,FPGA,和,CPLD,分别是现场可编程门阵列和复杂可编程逻辑器件的简称,现在,,FPGA,和,CPLD,器件的应用已十分广泛,它们将随着,EDA,技术的发展而成为电子设计领域的重要角色。国际上生产,FPGA/CPLD,的主流公司,并且在国内占有市场份额较大的主要是,Xilinx,,,Altera,,,Lattice,三家公司。,2007,年,2,月,10,日,26,Xilinx,公司的,FPGA,器件有,XC2000,,,XC3000,,,XC4000,,,XC4000E,,,XC4000XLA,,,XC5200,系列等,可用门数为,1200,18 000,;,Altera,公司的,CPLD,器件有,FLEX6000,,,FLEX8000,,,FLEX10K,,,FLEX10KE,系列等,提供门数为,5000,25 000,;,Lattice,公司的,ISP-PLD,器件有,ispLSI1000,,,ispLSI2000,,,ispLSI3000,,,ispLSI6000,系列等,集成度可多达,25 000,个,PLD,等效门。,FPGA,在结构上主要分为三个部分,即可编程逻辑单元,可编程输入,/,输出单元和可编程连线三个部分。,CPLD,在结构上主要包括三个部分,即可编程逻辑宏单元,可编程输入,/,输出单元和可编程内部连线。,2007,年,2,月,10,日,27,高集成度、高速度和高可靠性是,FPGA/CPLD,最明显的特点,其时钟延时可小至,ns,级,结合其并行工作方式,在超高速应用领域和实时测控方面有着非常广阔的应用前景。在高可靠应用领域,如果设计得当,将不会存在类似于,MCU,的复位不可靠和,PC,可能跑飞等问题。,FPGA/CPLD,的高可靠性还表现在几乎可将整个系统下载于同一芯片中,实现所谓片上系统,从而大大缩小了体积,易于管理和屏蔽。,由于,FPGA/CPLD,的集成规模非常大,可利用先进的,EDA,工具进行电子系统设计和产品开发。,2007,年,2,月,10,日,28,由于开发工具的通用性、设计语言的标准化以及设计过程几乎与所用器件的硬件结构没有关系,因而设计开发成功的各类逻辑功能块软件有很好的兼容性和可移植性。,它几乎可用于任何型号和规模的,FPGA/CPLD,中,从而使得产品设计效率大幅度提高。,2007,年,2,月,10,日,29,可以在很短时间内完成十分复杂的系统设计,这正是产品快速进入市场最宝贵的特征。美国,IT,公司认为,一个,ASIC 80%,的功能可用于,IP,核等现成逻辑合成。而未来大系统的,FPGA/CPLD,设计仅仅是各类再应用逻辑与,IP,核,(Core),的拼装,其设计周期将更短。,与,ASIC,设计相比,,FPGA/CPLD,显著的优势是开发周期短、投资风险小、产品上市速度快、市场适应能力强和硬件升级回旋余地大,而且当产品定型和产量扩大后,可将在生产中达到充分检验的,VHDL,设计迅速实现,ASIC,投产。,2007,年,2,月,10,日,30,对于一个开发项目,究竟是选择,FPGA,还是选择,CPLD,呢,?,主要看开发项目本身的需要。对于普通规模,且产量不是很大的产品项目,通常使用,CPLD,比较好。对于大规模的逻辑设计,ASIC,设计,或单片系统设计,则多采用,FPGA,。另外,,FPGA,掉电后将丢失原有的逻辑信息,所以在实用中需要为,FPGA,芯片配置一个专用,ROM,。,2007,年,2,月,10,日,31,1.3.2.,硬件描述语言,(HDL),常用的硬件描述语言有,VHDL,、,Verilog,、,ABEL,。,VHDL,:作为,IEEE,的工业标准硬件描述语言,在电子工程领域,已成为事实上的通用硬件描述语言。,2007,年,2,月,10,日,32,Verilog,:支持的,EDA,工具较多,适用于,RTL,级和门电路级的描述,其综合过程较,VHDL,稍简单,但其在高级描述方面不如,VHDL,。,ABEL,:一种支持各种不同输入方式的,HDL,,被广泛用于各种可编程逻辑器件的逻辑功能设计,由于其语言描述的独立性,因而适用于各种不同规模的可编程器件的设计。,有专家认为,在新世纪中,,VHDL,与,Verilog,语言将承担几乎全部的数字系统设计任务。,2007,年,2,月,10,日,33,1.3.3.,软件开发工具,目前比较流行的、主流厂家的,EDA,的软件工具有,Altera,的,MAX+plus,II,、,Lattice,的,ispEXPERT,、,Xilinx,的,Foundation Series,。,MAX+plus,II,:支持原理图、,VHDL,和,Verilog,语言文本文件,以及以波形与,EDIF,等格式的文件作为设计输入,并支持这些文件的任意混合设计。它具有门级仿真器,可以进行功能仿真和时序仿真,能够产生精确的仿真结果。,2007,年,2,月,10,日,34,在适配之后,,MAX+plus,II,生成供时序仿真用的,EDIF,、,VHDL,和,Verilog,这三种不同格式的网表文件,它界面友好,使用便捷,被誉为业界最易学易用的,EDA,的软件 ,并支持主流的第三方,EDA,工具,支持除,APEX20K,系列之外的所有,Altera,公司的,FPGA/CPLD,大规模逻辑器件。,ispEXPERT,:,ispEXPERT,System,是,ispEXPERT,的主要集成环境。通过它可以进行,VHDL,、,Verilog,及,ABEL,语言的设计输入、综合、适配、仿真和在系统下载。,2007,年,2,月,10,日,35,ispEXPERT,System,是目前流行的,EDA,软件中最容量掌握的设计工具之一,它界面友好,操作方便,功能强大,并与第三方,EDA,工具兼容良好。,Foundation Series,:,Xilinx,公司最新集成开发的,EDA,工具。它采用自动化的、完整的集成设计环境。,Foundation,项目管理器集成了,Xilinx,实现工具,并包含了强大的,Synopsys,FPGA Express,综合系统,是业界最强大的,EDA,设计工具之一。,2007,年,2,月,10,日,36,1.3.4.,实验开发系统,提供芯片下载电路及,EDA,实验,/,开发的外围资源,(,类似于用于单片机开发的仿真器,),,供硬件验证用。一般包括:,实验或开发所需的各类基本信号发生模块,包括时钟、脉冲、高低电平等;,FPGA/CPLD,输出信息显示模块,包括数码显示、发光管显示、声响指示等;,2007,年,2,月,10,日,37,监控程序模块,提供“电路重构软配置”;,目标芯片适配座以及上面的,FPGA/CPLD,目标芯片和编程下载电路。,目前从事,EDA,实验开发系统研究的院校有:清华大学,北京理工大学,复旦大学,西安电子科技大学,东南大学,浙江天煌科技实业有限公司等。,2007,年,2,月,10,日,38,1.3.5,关于,EDA,技术的学习重点及学习方法,EDA,技术作为一门发展迅速、有着广阔应用前景的新技术,涉及面广,内容丰富。作者结合自己的学习及教学体会,就,EDA,技术学习的有关问题提出一些指导意见,供读者参考。,2007,年,2,月,10,日,39,1) EDA,技术的学习重点,从实用和教学的角度讲,作者认为,,EDA,技术的学习主要应掌握四个方面的内容:,大规模可编程逻辑器件;,硬件描述语言;,软件开发工具;,实验开发系统。其中,硬件描述语言是重点。,2007,年,2,月,10,日,40,对于大规模可编程逻辑器件,主要是了解其分类、基本结构、工作原理、各厂家产品的系列、性能指标以及如何选用,而对于各个产品的具体结构不必研究过细。,对于硬件描述语言,除了掌握基本语法规定外,更重要的是要理解,VHDL,的三个“精髓”:软件的强数据类型与硬件电路的惟一性、硬件行为的并行性决定了,VHDL,语言的并行性、软件仿真的顺序性与实际硬件行为的并行性;要掌握系统的分析与建模方法,能够将各种基本语法规定熟练地运用于自己的设计中。,2007,年,2,月,10,日,41,对于软件开发工具,应熟练掌握从源程序的编辑、逻辑综合、逻辑适配以及各种仿真、硬件验证各步骤的使用。,对于实验开发系统,主要能够根据自己所拥有的设备,熟练地进行硬件验证或变通地进行硬件验证。,2007,年,2,月,10,日,42,2) EDA,技术的学习方法,抓住一个重点:,VHDL,的编程;掌握两个工具:,FPGA/CPLD,开发软件和,EDA,实验开发系统的使用;运用三种手段:案例分析、应用设计、上机实践;采用四个结合:边学边用相结合,边用边学相结合,理论与实践相结合,课内与课外相结合。,2007,年,2,月,10,日,43,1.4 EDA,软件系统的构成,EDA,技术研究的对象是电子设计的全过程,有系统级、电路级和物理级,3,个层次的设计。其涉及的电子系统从低频、高频到微波,从线性到非线性,从模拟到数字,从通用集成电路到专用集成电路构造的电子系统,因此,EDA,技术研究的范畴相当广泛。如果从专用集成电路,ASIC,开发与应用角度看,,EDA,软件系统应当包含以下子模块:设计输入子模块、设计数据库子模块、分析验证子模块、综合仿真子模块、布局布线子模块等,2007,年,2,月,10,日,44,1.4.1,设计输入子模块:,该模块接受用户的设计描述,并进行语义正确性、语法规则的检查,检查通过后,将用户的设计描述数据转换为,EDA,软件系统的内部数据格式,存入设计数据库被其他子模块调用。设计输入子模块不仅能接受图形描述输入、硬件描述语言,(HDL),描述输入,还能接受图文混合描述输入。该子模块一般包含针对不同描述方式的编辑器,如图形编辑器、文本编辑器等,同时包含对应的分析器。,2007,年,2,月,10,日,45,1.4.2,设计数据库子模块:,该模块存放系统提供的库单元以及用户的设计描述和中间设计结果。,1.4.3,分析验证子模块:,该模块包括各个层次的模拟验证、设计规则的检查、故障诊断等。,1.4.4,综合仿真子模块,:,该模块包括各个层次的综合工具,理想的情况是:从高层次到低层次的综合仿真全部由,EDA,工具自动实现。,2007,年,2,月,10,日,46,1.4.5,布局布线子模块:,该模块实现由逻辑设计到物理实现的映射,因此与物理实现的方式密切相关。例如,最终的物理实现可以是门阵列、可编程逻辑器件等,由于对应的器件不同,因此各自的布局布线工具会有很大的差异。,近些年,许多生产可编程逻辑器件的公司都相继推出适于开发自己公司器件的,EDA,工具,这些工具一般都具有上面提到的各个模块,操作简单,对硬件环境要求低,运行平台是,PC,机和,Windows,或,Windows NT,操作系统。如,Xilinx,、,Altera,、,Lattice,、,Actel,、,AMD,等器件公司都有自己的,EDA,工具。,2007,年,2,月,10,日,47,EDA,工具不只面向,ASIC,的应用与开发,还有涉及电子设计各个方面的,EDA,工具,包括数字电路设计、模拟电路设计、数模混合设计、系统设计、仿真验证等电子设计的许多领域。这些工具对硬件环境要求高,一般运行平台要求是工作站和,UNIX,操作系统,功能齐全、性能优良,,一般由专门开发,EDA,软件工具的软件公司提供,如,Cadence,、,Mentel,Graphics,、,Viewlogic,、,Synopsys,等软件公司都有其特色工具。,2007,年,2,月,10,日,48,Viewlogic,公司的,EDA,工具就有基本工具、系统设计工具和,ASIC/FPGA,设计工具三大类,20,多个工具。,其中,基本工具包括:原理图输入工具,ViewDraw,,数字仿真器,VeiwSim,,波形编辑与显示器,ViewTrace,,静态时序分析工具,Motive,,设计流程管理工具,ViewFlow,。,系统设计工具包括:模拟电路仿真器,ViewSpice,,,PLD,开发工具包,ViewPLD,,库开发工具,ViewLibrarian,,,2007,年,2,月,10,日,49,PCB,信号串扰分析工具,XTK,,,PCB,布线前信号分析工具,PDQ,,电磁兼容设计工具,QUIET,,,PCB,版面规划工具,ViewFloorplanner,。,ASIC/FPGA,设计工具包括:,VHDL,仿真器,SpeedWave,,,SpeedWave,Verilog,仿真器,VCS,,逻辑综合工具,ViewSynthesis,,自动测试向量生成工具,Test Gen/Sunrise,,原理图自动生成工具,ViewGen,,有限状态机设计工具,ViewFSM,,,Datapath,设计工具,ViewDatapath,,,VHDL,与,Verilog,混合仿真环境,FusionHDL,。,2007,年,2,月,10,日,50,1.5 EDA,的工程设计流程,假设我们需要建造一栋楼房,第一,我们需要进行”建筑设计”,-,用各种设计图纸把我们的建筑设想表示出来,;,第二,我们要进行建筑预算,;,第三,根据建筑设计和建筑预算进行”施工设计”,;,第四,根据施工图进行”建筑施工”,;,最后还要进行”建筑验收”,-,检验所建筑房屋是否符合设计要求。那么,对于目标器件为,FPGA,和,CPLD,的,VHDL,设计,其工程设计步骤如何哪?,EDA,的工程设计流程与建筑设计流程相似:,第一,需要进行“源程序的编辑和编译”,用一定的逻辑表达手段将设计表达出来,;,2007,年,2,月,10,日,51,第二,要进行,“,逻辑综合,”,-,将用一定的逻辑表达手段将表达出来的设计经过一系列的操作,分解成一系列的逻辑电路及对应的关系(电路分解);第三,要进行目标器件的,“,布线,/,适配,”,-,在选用的目标器件中建立这些基本逻辑电路的对应关系(逻辑实现)第四,目标器件的编程下载,-,将前面的软件设计经过编程变成具体的设计系统(物理实现);最后要进行硬件仿真,/,硬件测试,-,验证所设计的系统是否符合要求。同时,在设计过程中要进行有关,“,仿真,”,-,模拟有关设计结果与设计构想是否相符。综上所述,,EDA,的工程设计基本流程如图,1,所示,现具体阐述如下。,2007,年,2,月,10,日,52,图,-,EDA,的工程设计基本流程,2007,年,2,月,10,日,53,1.,源程序的编辑和编译,利用,EDA,技术进行一项工程设计,首先需利用,EDA,工具的文本编辑器或图形编辑器将它用文本方式或图形方式表达出来,进行排错编译,变成,VHDL,文件格式,为进一步的逻辑综合作准备。,2.,常用的源程序输入方式有三种,2007,年,2,月,10,日,54,(1),原理图输入方式:利用,EDA,工具提供的图形编辑器以原理图的方式进行输入。原理图输入方式比较容易掌握,直观且方便,所画的电路原理图,(,请注意,这种原理图与利用,Protel,画的原理图有本质的区别,),与传统的器件连接方式完全一样,很容易被人接受,而且编辑器中有许多现成的单元器件可以利用,自己也可以根据需要设计元件。然而原理图输入法的优点同时也是它的缺点:,2007,年,2,月,10,日,55,随着设计规模增大,设计的易读性迅速下降,对于图中密密麻麻的电路连线,极难搞清电路的实际功能;,一旦完成,电路结构的改变将十分困难,因而几乎没有可再利用的设计模块;,移植困难、入档困难、交流困难、设计交付困难,因为不可能存在一个标准化的原理图编辑器。,2007,年,2,月,10,日,56,(2),状态图输入方式:以图形的方式表示状态图进行输入。当填好时钟信号名、状态转换条件、状态机类型等要素后,就可以自动生成,VHDL,程序。这种设计方式简化了状态机的设计,比较流行。,(3) VHDL,软件程序的文本方式:最一般化、最具普遍性的输入方法,任何支持,VHDL,的,EDA,工具都支持文本方式的编辑和编译。,2007,年,2,月,10,日,57,1.5.2.,逻辑综合和优化,欲把,VHDL,的软件设计与硬件的可实现性挂钩,需要利用,EDA,软件系统的综合器进行逻辑综合。,综合器的功能就是将设计者在,EDA,平台上完成的针对某个系统项目的,HDL,、原理图或状态图形的描述,针对给定硬件结构组件进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述文件。,2007,年,2,月,10,日,58,由此可见,综合器工作前,必须给定最后实现的硬件结构参数,它的功能就是将软件描述与给定硬件结构用某种网表文件的方式联系起来。显然,综合器是软件描述与硬件实现的一座桥梁。综合过程就是将电路的高级语言描述转换成低级的,可与,FPGA/CPLD,或构成,ASIC,的门阵列基本结构相映射的网表文件。,2007,年,2,月,10,日,59,由于,VHDL,仿真器的行为仿真功能是面向高层次的系统仿真,只能对,VHDL,的系统描述作可行性的评估测试,不针对任何硬件系统,因此基于这一仿真层次的许多,VHDL,语句不能被综合器所接受。这就是说,这类语句的描述无法在硬件系统中实现,(,至少是现阶段,),,这时,综合器不支持的语句在综合过程中将忽略掉。综合器对源,VHDL,文件的综合是针对某一,PLD,供应商的产品系列的,因此,综合后的结果是可以为硬件系统所接受,具有硬件可实现性。,2007,年,2,月,10,日,60,1.5.3,目标器件的布线,/,适配,逻辑综合通过后必须利用适配器将综合后的网表文件针对某一具体的目标器进行逻辑映射操作,其中包括底层器件配置、逻辑分割、逻辑优化、布线与操作,适配完成后可以利用适配所产生的仿真文件作精确的时序仿真。,2007,年,2,月,10,日,61,适配器的功能是将由综合器产生的网表文件配置于指定的目标器件中,产生最终的下载文件,如,JEDEC,格式的文件。适配所选定的目标器件,(FPGA/CPLD,芯片,),必须属于原综合器指定的目标器件系列。对于一般的可编程模拟器件所对应的,EDA,软件来说,一般仅需包含一个适配器就可以了,如,Lattice,的,PAC-DESIGNER,。通常,,EDA,软件中的综合器可由专业的第三方,EDA,公司提供,而适配器则需由,FPGA/CPLD,供应商自己提供,因为适配器的适配对象直接与器件结构相对应。,2007,年,2,月,10,日,62,1.5.4.,目标器件的编程,/,下载,如果编译、综合、布线,/,适配和行为仿真、功能仿真、时序仿真等过程都没有发现问题,即满足原设计的要求,则可以将由,FPGA/CPLD,布线,/,适配器产生的配置,/,下载文件通过编程器或下载电缆载入目标芯片,FPGA,或,CPLD,中。,2007,年,2,月,10,日,63,1.5.5.,设计过程中的有关仿真,在综合以前可以先对,VHDL,所描述的内容进行行为仿真,即将,VHDL,设计源程序直接送到,VHDL,仿真器中仿真,这就是所谓的,VHDL,行为仿真。因为此时的仿真只是根据,VHDL,的语义进行的,与具体电路没有关系。在这时的仿真中,可以充分发挥,VHDL,中的适用于仿真控制的语句及有关的预定义函数和库文件。,2007,年,2,月,10,日,64,在综合之后,,VHDL,综合器一般都可以生成一个,VHDL,网表文件。网表文件中描述的电路与生成的,EDIF/XNF,等网表文件一致。,VHDL,网表文件采用,VHDL,语法,只是其中的电路描述采用了结构描述方法,即首先描述了最基本的门电路,然后将这些门电路用例化语句连接起来。这样的,VHDL,网表文件再送到,VHDL,仿真器中进行所谓功能仿真,仿真结果与门级仿真器所做的功能仿真的结果基本一致。,需要注意的是,图,1.1,中有两个仿真器,一是,VHDL,仿真器,另一个是门级仿真器,它们都能进行功能仿真和时序仿真,。,2007,年,2,月,10,日,65,所不同的是仿真用的文件格式不同,即网表文件不同。这里所谓的网表,(,Netlist,),,是特指电路网络,网表文件描述了一个电路网络。目前流行多种网表文件格式,其中最通用的是,EDIF,格式的网表文件,,Xilinx,XNF,网表文件格式也很流行,不过一般只在使用,Xilinx,的,FPGA/CPLD,时才会用到,XNF,格式。,VHDL,文件格式也可以用来描述电路网络,即采用,VHDL,语法描述各级电路互连,称之为,VHDL,网表。,功能仿真是仅对,VHDL,描述的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求,仿真过程不涉及具体器件的硬件特性,如延时特性。,2007,年,2,月,10,日,66,时序仿真是接近真实器件运行的仿真,仿真过程中已将器件特性考虑进去了,因而,仿真精度要高得多。但时序仿真的仿真文件必须来自针对具体器件的布线,/,适配器所产生的仿真文件。综合后所得的,EDIF/XNF,门级网表文件通常作为,FPGA,布线器或,CPLD,适配器的输入文件。通过布线,/,适配的处理后,布线,/,适配器将生成一个,VHDL,网表文件,这个网表文件中包含了较为精确的延时信息,网表文件中描述的电路结构与布线,/,适配后的结果是一致的。此时,将这个,VHDL,网表文件送到,VHDL,仿真器中进行仿真,就可以得到精确的时序仿真结果了。,2007,年,2,月,10,日,67,1.5.6.,硬件仿真,/,硬件测试,这里所谓的硬件仿真是针对,ASIC,设计而言的。在,ASIC,设计中,比较常用的方法是利用,FPGA,对系统的设计进行功能检测,通过后再将其,VHDL,设计以,ASIC,形式实现;而硬件测试则是针对,FPGA,或,CPLD,直接用于应用系统的检测而言的。,硬件仿真和硬件测试的目的,是为了在更真实的环境中检验,VHDL,设计的运行情况,特别是对于,VHDL,程序设计上不是十分规范、语义上含有一定歧义的程序。 一般的仿真器包括,VHDL,行为仿真器和,VHDL,2007,年,2,月,10,日,68,功能仿真器,,它们对于同一,VHDL,设计的“理解”,即仿真模型的产生,与,VHDL,综合器的“理解”,即综合模型的产生,常常是不一致的。此外,由于目标器件功能的可行性约束,综合器对于设计的“理解”常在一有限范围内选择,而,VHDL,仿真器的“理解”是纯软件行为,其“理解”的选择范围要宽得多,结果这种“理解”的偏差势必导致仿真结果与综合后实现的硬件电路在功能上的不一致。当然,还有许多其他的因素也会产生这种不一致,由此可见,,VHDL,设计的硬件仿真和硬件测试是十分必要的。,2007,年,2,月,10,日,69,1.6,数字系统的设计方法简介,在我们的周围可以发现无数个数字系统的例子,如自动播音器、,CD,播放机、电话系统、个人计算机以及视频游戏等。可以毫不夸张地说,数字系统已经成为我们日常生活的重要组成部分。,数字系统设计有多种方法,如模块设计法、自顶向下设计法和自底向上设计法等。,2007,年,2,月,10,日,70,数字系统的设计一般采用自顶向下、由粗到细、逐步求精的方法。自顶向下是指将数字系统的整体逐步分解为各个子系统和模块,若子系统规模较大,则还需将子系统进一步分解为更小的子系统和模块,层层分解,直至整个系统中各子系统关系合理,并便于逻辑电路级的设计和实现为止。采用该方法设计时,高层设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细的描述在下一设计层次说明,最底层的设计才涉及具体的寄存器和逻辑门电路等实现方式的描述。,2007,年,2,月,10,日,71,采用自顶向下的设计方法有如下优点,:,1),自顶向下设计方法是一种模块化设计方法。对设计的描述从上到下逐步由粗略到详细,符合常规的逻辑思维习惯。由于高层设计同器件无关,设计易于在各种集成电路工艺或可编程器件之间移植。,2007,年,2,月,10,日,72,2),适合多个设计者同时进行设计。随着技术的不断进步,许多设计由一个设计者已无法完成,必须经过多个设计者分工协作完成一项设计的情况越来越多。在这种情况下,应用自顶向下的设计方法便于由多个设计者同时进行设计,对设计任务进行合理分配,用系统工程的方法对设计进行管理。,2007,年,2,月,10,日,73,针对具体的设计,实施自顶向下的设计方法的形式会有所不同,但均需遵循以下两条原则:逐层分解功能,分层次进行设计。同时,应在各个设计层次上,考虑相应的仿真验证问题。,数字系统设计有多种方法,如模块设计法、自顶向下设计法和自底向上设计法等。,2007,年,2,月,10,日,74,1.6.2,数字系统的设计方法,数字系统的设计一般采用自顶向下、由粗到细、逐步求精的方法。自顶向下是指将数字系统的整体逐步分解为各个子系统和模块,若子系统规模较大,则还需将子系统进一步分解为更小的子系统和模块,层层分解,直至整个系统中各子系统关系合理,并便于逻辑电路级的设计和实现为止。,2007,年,2,月,10,日,75,采用该方法设计时,高层设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细的描述在下一设计层次说明,最底层的设计才涉及具体的寄存器和逻辑门电路等实现方式的描述。,采用自顶向下的设计方法有如下优点,:,(1),自顶向下设计方法是一种模块化设计方法。对设计的描述从上到下逐步由粗略到详细,符合常规的逻辑思维习惯。由于高层设计同器件无关,设计易于在各种集成电路工艺或可编程器件之间移植。,2007,年,2,月,10,日,76,2),适合多个设计者同时进行设计。随着技术的不断进步,许多设计由一个设计者已无法完成,必须经过多个设计者分工协作完成一项设计的情况越来越多。在这种情况下,应用自顶向下的设计方法便于由多个设计者同时进行设计,对设计任务进行合理分配,用系统工程的方法对设计进行管理。,针对具体的设计,实施自顶向下的设计方法的形式会有所不同,但均需遵循以下两条原则:逐层分解功能,分层次进行设计。同时,应在各个设计层次上,考虑相应的仿真验证问题。,2007,年,2,月,10,日,77,1.7,数字系统的设计准则,进行数字系统设计时,通常需要考虑多方面的条件和要求,如设计的功能和性能要求,元器件的资源分配和设计工具的可实现性,系统的开发费用和成本等。虽然具体设计的条件和要求千差万别,实现的方法也各不相同,但数字系统设计还是具备一些共同的方法和准则的。,2007,年,2,月,10,日,78,1.7.1,分割准则,自顶向下的设计方法或其他层次化的设计方法,需要对系统功能进行分割,然后用逻辑语言进行描述。分割过程中,若分割过粗,则不易用逻辑语言表达;分割过细,则带来不必要的重复和繁琐。因此,分割的粗细需要根据具体的设计和设计工具情况而定。掌握分割程度,可以遵循以下的原则:分割后最底层的逻辑块应适合用逻辑语言进行表达;相似的功能应该设计成共享的基本模块;接口信号尽可能少;同层次的模块之间,在资源和,I/O,分配上,尽可能平衡,以使结构匀称;模快的划分和设计,尽可能做到通用性好,易于移植。,2007,年,2,月,10,日,79,1.7.2,系统的可观测性,在系统设计中,应该同时考虑功能检查和性能的测试,即系统观测性的问题。一些有经验的设计者会自觉地在设计系统的同时设计观测电路,即观测器,指示系统内部的工作状态。,建立观测器,应遵循以下原则:具有系统的关键点信号,如时钟、同步信号和状态等信号;具有代表性的节点和线路上的信号;具备简单的“系统工作是否正常”的判断能力。,2007,年,2,月,10,日,80,1.7.3,同步和异步电路,异步电路会造成较大延时和逻辑竞争,容易引起系统的不稳定,而同步电路则是按照统一的时钟工作,稳定性好。因此在设计时尽可能采用同步电路进行设计,避免使用异步电路。在必须使用异步电路时,应采取措施来避免竞争和增加稳定性。,2007,年,2,月,10,日,81,1.7.4,最优化设计,由于可编程器件的逻辑资源、连接资源和,I/O,资源有限,器件的速度和性能也是有限的,用器件设计系统的过程相当于求最优解的过程。因此,需要给定两个约束条件:边界条件和最优化目标。所谓边界条件,是指器件的资源及性能限制。最优化目标有多种,设计中常见的最优化目标有:器件资源利用率最高;系统工作速度最快,即延时最小;布线最容易,即可实现性最好。具体设计中,各个最优化目标间可能会产生冲突,这时应满足设计的主要要求。,2007,年,2,月,10,日,82,1.7.5,系统设计的艺术,一个系统的设计,通常需要经过反复的修改、优化才能达到设计的要求。一个好的设计,应该满足“和谐”的基本特征,对数字系统可以根据以下几点作出判断:,设计是否总体上流畅,无拖泥带水的感觉;资源分配、,I/O,分配是否合理,是否没有任何设计上和性能上的瓶颈,系统结构是否协调;是否具有良好的可观测性;是否易于修改和移植;器件的特点是否能得到充分的发挥。,2007,年,2,月,10,日,83,1.8 EDA,技术的应用展望,1. EDA,技术将广泛应用于高校电类专业的实践教学工作中,各种数字集成电路芯片,用,VHDL,语言可以进行方便的描述,经过生成元件后可作为一个标准元件进行调用。同时,借助于,VHDL,开发设计平台,可以进行系统的功能仿真和时序仿真,借助于实验开发系统可以进行硬件功能验证等,因而可大大地简化数字电子技术的实验,并可根据学生的设计不受限制地开展各种实验。,2007,年,2,月,10,日,84,对于电子技术课程设计,特别是数字系统性的课题,在,EDA,实验室不需添加任何新的东西,即可设计出各种比较复杂的数字系统,并且借助于实验开发系统可以方便地进行硬件验证,如设计频率计、交通控制灯、秒表等。,自,1997,年全国第三届电子技术设计竞赛采用,FPGA/CPLD,器件以来,,FPGA/CPLD,已得到了越来越多选手的利用,并且给定的课题如果不借助于,FPGA/CPLD,器件可能根本无法实现。因此,EDA,技术将成为各种电子技术设计竞赛选手必须掌握的基本技能与制胜的法宝。,2007,年,2,月,10,日,85,现代电子产品的设计离不开,EDA,技术,作为电类专业的毕业生,借助于,EDA,技术在毕业设计中可以快速、经济地设计各种高性能的电子系统,并且很容易实现、修改及完善。,在整个大学学习期间,我们可以分阶段、分层次地对电类专业的学生进行,EDA,技术的学习和应用,使他们迅速掌握并有效利用这一新技术,同时还可大大地提高学生的实践动手能力、创新能力和计算机应用能力。,2007,年,2,月,10,日,86,2. EDA,技术将广泛应用于科研工作和新产品的开发中,由于可编程逻辑器件性能价格比的不断提高,开发软件功能的不断完善,,EDA,技术设计电子系统具有用软件的方式设计硬件;设计过程中可用有关软件进行各种仿真;系统可现场编程,在线升级;整个系统可集成在一个芯片上等特点的利用,使其将广泛应用于科研工作和新产品的开发工作中。,2007,年,2,月,10,日,87,3. EDA,技术将广泛应用于专用集成电路的开发,可编程器件制造厂家可按照一定的规格以通用器件大量生产,用户可按通用器件从市场上选购,然后按自己的要求通过编程实现专用集成电路的功能。因此,对于集成电路制造技术与世界先进的集成电路制造技术尚有一定差距的我国,开发具有自主知识产权的专用集成电路,已成为相关专业人员的重要任务。,2007,年,2,月,10,日,88,4. EDA,技术将广泛应用于传统机电设备的升级换代和技术改造,传统机电设备的电气控制系统,如果利用,EDA,技术进行重新设计或进行技术改造,不但设计周期短、设计成本低,而且将提高产品或设备的性能,缩小产品体积,提高产品的技术含量,提高产品的附加值。,2007,年,2,月,10,日,89,第,1,章 习题,1.1,什么叫,EDA,技术?,EDA,的英文全称是什么?,1.2,利用,EDA,技术进行电子系统的设计有什么特点?,1.3,从使用的角度讲,,EDA,技术主要包括几个方面的内容?这几个方面在整个电子系统的设计中分别起什么作用?,1.4,什么叫可编程逻辑器件(简称,PLD,),? FPGA,和,CPLD,的中文含意分别是什么?国际上生产,FPGA/CPLD,的主流公司,并且在国内占有较大市场份额的主要有哪几家? 目前主要用的产品系列有哪些? 其可用逻辑门,/,等效门数大约在什么范围?,1.5 FPGA,和,CPLD,各包括几个基本组成部分?,2007,年,2,月,10,日,90,1.6 FPGA,和,CPLD,各有什么特点?二者 在存储逻辑信息方面有什么区别?在实际使用中在什么 情况下选用,FPGA,在什么情况下选用,CPLD?,1.7,常用的硬件描述语言有哪几种? 这些硬件描述语言在逻辑描述方面有什么区别?,1.8,目前比较流行的、主流厂家的,EDA,软件工具有哪些?,1.9,对于目标器件为,FPGA/CPLD,的,VHDL,设计,其工程设计包括几个主要步骤?每步的作用是什么?每步的结果是什么?,1.10,名词解释:逻辑综合、逻辑适配、行为方针、功能仿真、时序仿真。,1.11 EDA,设计分几个描述层次?,1.12 EDA,技术的优点?,2007,年,2,月,10,日,91,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!