《电子设计自动化》PPT课件.ppt_第1页
《电子设计自动化》PPT课件.ppt_第2页
《电子设计自动化》PPT课件.ppt_第3页
《电子设计自动化》PPT课件.ppt_第4页
《电子设计自动化》PPT课件.ppt_第5页
已阅读5页,还剩111页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第 10 章 电子设计自动化,第10章 电子设计自动化 第 1 节 概述 第 2 节ABELHDL语言 第 3 节 PAC-Designer 软件的使用 第 4 节 ispPAC器件与PAC-Designer的使用,第1节 概述,一、EDA技术的发展过程,EDA技术伴随着计算机、集成电路、电子系统设计 的发展,经历了三个发展阶段:,计算机辅助工程设计CAE (CAE: Computer Assist Engineering Design),电子系统设计自动化ESDA (ESDA: Electronic System Design Automation),计算机辅助设计CAD (CAD:Comp

2、uter Assist Design),主要内容:, 大规模可编程逻辑器件; 硬件描述语言; 软件开发工具; 实验开发系统。,特点:硬件设计软件化;设计过程自动化; 可仿真; 在系统编程;设计效率高; 可实现片上系统。,二、EDA技术的特点与主要内容,三、 EDA的工程设计流程,第2节 ABEL-HDL语言,美国DATA I/O公司研制开发 层次结构的逻辑描述语言 用于可编程逻辑电路设计 支持多种输入形式: 逻辑方程 状态图 真值表,ABEL-HDL语言的基本元素和基本语法规则,合法的ASCII字符 数据 特殊常量 字符串 标识符 保留标识符(关键字) 注释,运算符 表达式 布尔方程 集合与集

3、合运算 块 实变量与哑变量 基本语法规则,ABEL-HDL语言设计文件ABEL-HDL源文件 设计的基本单位模块(一个模块或多个模块)层次结构组织: 顶层一个模块总体轮廓 低层模块子功能块 模块经过编译、优化、连接、模拟、器件适配等步骤,生成一个JEDEC格式的文件。最后将JEDEC文件下载到器件中,就完成了对器件的编程。,合法的ASCII字符,小写字母 az 大写字母 AZ 数字 09 进格 Tab 空格 space 其它字符 ! # $ % ? , . / 共96个,数据,数制名 基数 符号 举例 二进制 2 b b1011 八进制 8 o o13 十进制 10 d(缺省) d11(或11

4、) 十六进制 16 h hb 使用基数指示字RADIX改变缺省的数制 第五种数制 用字符串来表示,字母换成ASCII码 X a 等价于X H61 ;X abc 等价于X H616263,特殊常量,特殊常量符号 常量值功能说明 .C. 时钟输入(电平按低-高-低变化) .D. 时钟下降沿(电平按高-低变化) .F. 浮动输入或输出信号 .K. 时钟输入(电平按高-低-高变化) .P. 寄存器预置数 .SVn. N=2-9,驱动输入到超级电平2-9 .U. 时钟上升沿(电平按低-高变化) .X. 任意态 .Z. 高阻态,字符串,用单引号括起来的包括空格在内的ASCII码字符序列。 用于标题语句、模

5、块语句等场合。 若要在字符串中使用单引号“”或反斜线“”,则需在前面加一反斜线“”。如:“Its an example ”实际是“Its an example ”。,标识符 用来标识器件、管脚、节点、集合、输入和输出信号、常量、宏、变量等,1.标识符必须以字母或下划线开头。除第一个字符外,标识符可以包含大、小写字母,数字,波浪号()和下划线( )。标识符最长不超过31个字符,否则显示出错。 2.标识符中字母有大小写之分,如:out, OUT, ouT为不同标识符。 3.标识符中不能使用空格,单词中的分隔需用下划线。,保留标识符(关键字),关键字不分大、小写,可以用大写、小写或混合字体输入。 在

6、ispEXPERT System中,用ABEL-HDL语言输入时,关键字会自动变成蓝色。 要特别注意关键词不能用来给器件、管脚、信号等命名,关键词用错场合将报错。,关 键 字 功 能 说 明 Interface 功能模块接口语句(低层) Interface 功能模块接口语句(顶层) Istype 属性说明语句 Library 库引用语句 Macro 宏说明语句 Module 模块开始语句 Node 节点说明语句 Options 控制选项定义语句 Pin 引脚说明语句 Property 特征说明语句,关 键 字 功 能 说 明 Async_reset 异步复位状态描述语句 Case-Endcas

7、e 条件选择语句 Cycle 周期关键字 Declarations 说明段关键字 Device 器件说明语句 End 模块结束语句 Equations 逻辑方程关键字 Functional_block 功能模块说明语句 Fuses 熔丝状态说明语句 Goto 无条件转移语句 If-Then-Else 条件转移语句(只能用在状态图输入),关 键 字 功 能 说 明 State 状态说明语句 State_diagram 状态图关键字 State_register 状态寄存器说明语句 Sync_reset 同步复位状态描述语句 Test_vectors 测试向量 Title 标题语句 Trace 跟

8、踪选项关键字 Truth_table 真值表关键字 Wait 等待关键字 When-Then-Else 条件转移语句(只能用在方程中) With-Endwith 转移方程语句 Xor_factors 异或因子关键字,注释,目的:使源文件易于理解,不影响文件的含义。在ispEXPERT System中,注释的内容会自动变成绿色。 两种注释方法: 一个双引号(“)开始,以另一个双引号(”)结束或以行的末尾结束; 2. 以一个双斜线(/)开始,以行的末尾结束。 例: EQUATIONS /逻辑描述 EQUATIONS “逻辑描述,运算符,逻辑运算符 算术运算符 关系运算符 赋值运算符,逻辑运算符,运

9、算符 说 明 ! 非(取二进制反码) 例:INTERFACE (ia1,ia2,ia3-oa1); 功能模块接口语句在层次化结构中使用。在低层模块的开始段用INTERFACE说明其输入 /输出信号。而高层模块中,不是在模块开始段,而是在模块的说明段用INTERFACE对即将使用的低层模块予以说明。,模块开始段,3. 标题语句 格式:TITLE 字符串 标题语句用来赋予模块一个标题,标记用户的一些信息。标题必须用单引号括起来。该语句是可选的。 例:TITLE 6 INPUT AND_OR_NOT GATES 它说明了这是一个6输入与或非门。,说明段,说明段关键字 格式:DECLARATIONS

10、器件说明 格式:器件标识符 device 实际器件; 引脚说明语句 格式:!引脚标识符,!引脚标识符 . pin 引脚号,引脚号. ISTYPE 属性; 例: y0.y3,c0 pin 12,13,14,15,16 ISTYPEreg; 节点说明语句 格式:!节点名,!节点名 NODE 节点号 例:noa1,noa2 NODE ;,说明段,属性说明 格式:信号名 ,信号名 istype属性,属性, ; buffer 目标器件中寄存器输出到引脚输出之间无反相器 Com 组合输出 Reg 寄存器,说明段,常量说明 格式:常量名,常量名,=表达式,表达式,; y0=3*17; /y0指定值为51 y

11、1=abc; /y1指定值为H616263 x=.X.; /x为任意值 addr=0,1,15; /addr是具有三个元素的集合,它们分别代表数值0、1和15。 S=S0,S1,S2; /定义S为一个集合,包含三个逻辑变量 M=M0.M8; /用范围运算符 . 分隔,说明段,宏说明 格式:宏名 MACRO(哑变量,哑变量,)块; 例:OR_M MACRO(ib1,ib2)?ib1#?ib2; 宏调用:o1=!OR_M (noa1,noa2); 结果为:o1=!(noa1#noa2)。,说明段,宏也可以由ABEL-HDL语言的其它形式来定义,下面的宏是由真值表定义的。 NAND3 MACRO (

12、A,B,C,Y) TRUTH_TABL (?A,?B,?C?Y) 0,.x.,.x.1; .x.,0,.x.1; .x.,.x.,01; 1,1,10;,说明段,库引用 格式:LIBRARY 名称 库引用语句是在它出现的地方将指定名称的文件的内容插入ABEL-HDL的源文件中,名称是定义文件名的字符串,不带扩展名。,说明段,状态说明 格式:状态名,状态名, STATE 状态值,状态值,; 状态说明用来给状态命名,以便在状态图输入中使用这些状态。 例:S0.S3 state;,说明段,状态寄存器说明 格式:状态寄存器名 STATE-REGISTER ISTYPE属性; 在符号状态图中,状态寄存器

13、说明一个符号状态机名。 例:sreg1 state_register;,说明段,层次说明 格式:低层模块名INTERFACE(输入/集合=端口值-输出/集合:双向/集合); 例化名 FUNCTIONAL-BLOCK 低层模块名;,逻辑描述段,逻辑方程 真值表 状态图,逻辑描述段,逻辑方程 格式:equations 变量名?=表达式; 变量名?:=表达式; 格式:WHEN 条件THEN ! 元素=表达式;ELSE 逻辑等式; 或 WHEN 条件THEN ! 逻辑等式;ELSE 逻辑等式;,逻辑方程,点后缀 说 明 .ACLR 异步复位 .AP 异步寄存器预置位 .AR 异步寄存器复位 .ASET

14、 异步置位 .CE 钟控触发器时钟使能端 .CLK 边沿触发器的时钟 .CLR 同步复位,逻辑方程,点后缀 说 明 .COM 组合反馈 .D D触发器的D端 .FB 寄存器反馈 .FC 触发模式控制 .J JK触发器的J端 .K JK触发器的K端 .LD 锁存器D端,逻辑方程,点后缀 说 明 .LE 锁存器锁存使能端 .LH 锁存器锁存使能(H)端 .OE 输出使能 .PIN 引脚反馈 .PR 寄存器预置位 .Q 寄存器输出 .R RS触发器R端,逻辑方程,点后缀 说 明 .RE 寄存器复位 .S RS触发器S端 .SET 同步置位 .SP 同步寄存器预置位 .SR 同步寄存器复位 .T T触

15、发器T端,真值表,格式:TRUTH_TABEL ( 输入 输出 ) 输入 输出; 或 TRUTH_TABEL ( 输入 : 寄存器输出) 输入 : 寄存器输出; 或 TRUTH_TABEL ( 输入: 寄存器输出输出 ) 输入: 寄存器输出输出; ,真值表,TRUTH_TABEL (A,B:C,DE) 0,0:0,11; 0,1:1,00; 1,0:1,11; 1,1:0,01;,状态图,(1)STATE_DIAGRAM状态图语句 格式:STATE_DIAGRAM 状态寄存器 状态输出 STATE 状态表达式: 方程 ; 方程 ;状态转移语句;,状态图,(2)转移语句 无条件转移语句GOTO

16、格式:GOTO 状态表达式; 例:STATE S0:Y=X+1;GOTO S1 条件转移语句IF-THEN-ELSE 格式:IF 表达式 THEN 状态表达式 ELSE 状态表达式;,状态图,选择语句CASE-ENDCASE 格式:CASE 表达式:状态表达式; 表达式:状态表达式; ENDCASE; 例:STATE S0:CASE C= =0:S1; C= =1:S2; C= =2:S3; ENDCASE;,状态图,转移方程语句WITH 格式:转移语句 状态表达式 WITH 方程; 方程; 例:STATE S5 : IF a = = 1 THEN S1 WITH x := 1 ; y :=

17、1 ; ELSE S2 WITH x := 0 ; y := 1 ;,测试向量段,格式:test_vectors 注释 (输入向量-输出向量) 输入信号值-输出信号值; 例:TEST_VECTORS (i1,i2,i3,i4,i5,i6-o1) 0,0,0,0,0,0-1; 0,0,1,0,1,1-1; 1,1,1,0,0,0-0; 1,1,1,1,1,1-0;,模块结束段,格式:END 模块名 模块结束段指示一个模块结束,是不可缺少的部分。,请看实例,七段显示译码器 1-4数据分配器 16-4数据选择器 4位数据比较器 加法器 4位格雷码(Gray)计数器 8位移位寄存器 可逆十进制计数器

18、任意进制加法计数器,8421码表示的十进制数通过七段译码显示器译码后输出给七段显示器,就可显示相应的字符。 七段显示译码器设计要求:输入D3D0,输出a、b、c、d、e、f、g,使能端en,低电平有效。图4-2给出了七段显示译码器的框图。,七段显示译码器,七段译码器功能表,七段显示译码器框图,MODULE bcd7 TITLE seven segment display decoder /数据输入D3D0,使能端en,低电平有效,输出a、b、c、d、e、f、g。 D3.D0 PIN; D=D3.D0; a,b,c,d,e,f,g PIN ISTYPECOM; LED=a,b,c,d,e,f,g

19、; en PIN; x=.x.; EQUATIONS LED.OE=!en; dcset,TRUTH_TABLE (D-a,b,c,d,e,f,g) 0-0,0,0,0,0,0,1; 1-1,0,0,1,1,1,1; 2-0,0,1,0,0,1,0; 3-0,0,0,0,1,1,0; 4-1,0,0,1,1,0,0; 5-0,1,0,0,1,0,0; 6-0,1,0,0,0,0,0; 7-0,0,0,1,1,1,1; 8-0,0,0,0,0,0,0; 9-0,0,0,0,1,0,0;,TEST_VECTORS (en,D-LED) 1,0-x; 0,0-x; 0,1-x; 0,2-x; 0,3

20、-x; 0,4-x; 0,5-x; 0,6-x; 0,7-x; 0,8-x; 0,9-x; END,1-4数据分配器,数据分配器的功能就是将一个输入数据分时分送到多个输出端输出,也就是一路输入、多路输出。 数据分配器设计要求:D为数据输入,Y3Y0为数据输出,S1、S0为数据控制端,en为使能端,高有效。,数据分配器框图,数据分配器功能表,源文件清单 1-4数据分配器 MOUDLE dmux TITLE 1 to 4 demultiplexer /1-4分配器,输入D,使能en,控制S1、S0,输出Y3.Y0 D,en,S1,S0 PIN; Y3.Y0 PIN istypecom; x,z=.

21、x.,.z.; Y=Y3.Y0;S=S1,S0; EQUATIONS Y0=(S= =0),Y3=(S= = 3) END,一、 启动软件 启动ispDesign EXPERT。在Windows95/98下,选开始程序Lattice SemiconductorispDesign EXPERT,单击后进入项目管理器(ispDesign EXPERT Project Navigator)窗口。窗口称为 源文件窗口。文件依次从上向下排列,位置越偏右,其层次越低。右 半窗口的项目对应左边 选中的某一源文件所对 应的处理过程与结果。,第3节 ispDesign EXPERT软件的使用,二、 创建新项目和

22、器件选定 建立新项目的子目录:单击File下的New Project.会弹出一个对话框如图。建立子目录文件夹user。注意:子目录名必须为英文字母所构成。,子目录建成后,双击并进入该子目录如图,在“文件名(N):”这一栏中键入项目名以取代原来默认的“New”。 在创建新项目窗口里的项目类型(Project Type:)中,通过下拉菜单可对这几种输入方式进行选择,然后单击保存。,接着双击Untitled(未命名),在title(标题)文本框中输入该项目的标题,然后开始选择目标器件。,三、输入ABEL语言源文件 1在项目管理器窗口中打开Sourse菜单,选择New,选择ABEL-HDL Modul

23、e按OK予以确认,出现图示对话框。,2键入模块、文件,在标题(Title)文本框内填上标题信息,用以说明你的设计。点击OK键,屏幕上会出现图示一个文本编辑窗口,刚才键入的模块名,标题以及结束语句END已经包含在其中。输入源程序、保存后退出。,四、 编译ABEL-HDL源文件 1在项目管理器窗口中选择所要编译的ABEL-HDL源文件。 2双击右栏中的Compile Logic项,源文件就被编译,如编译通过,则在Compile Logic左边出现绿色“”标记,而若编译不通过,将在报告中指出源文件有错误,并将具体错误显示出来。 3如想进一步地化简逻辑,可双击右栏的Reduce Logic项,通过后,

24、左边同样会出现绿色“”标记。,六、 仿真 功能仿真是对整个系统的逻辑功能进行仿真。 实时仿真是在功能仿真的基础上,把器件内部的时间延迟考虑进去了,不同的器件,其时间延迟也是不同的,这一点可以通过波形图观察到,因此实时仿真比功能仿真更进一步地接近实际情况,更具有观察价值。有时候功能仿真通过了,而实时仿真通不过,说明还有问题存在,需进一步改进。而如果实时仿真通过了,则可进行下载,在大多数情况下都能成功。,五、 编译测试向量文件(略)。,1).功能仿真,打开Simulator菜单,选择Run项,或双击工具栏中标有“!”的按钮后,出现波形观察器(Waveform Viewer)窗口,2). 实时仿真,

25、实时仿真的操作步骤与功能仿真基本相同。 在项目管理器左窗口选中测试向量文件,然后在右窗口中用鼠标双击Timing Simulation项,其余操作步骤同上。,七、下载 下载就是 “烧录” 器件。 1将EDA 实验开发系统接好(电源、下载线)。 2用鼠标双击项目管理器右栏最下面一行ispdaisy chain download,会出现菊花链下载界面。 3直接点击横档上的小方钮SCAN 按钮,如果电路板连接无误,在下面窗口中会出现SCAN BOARD:Successful。 4单击BROWSE 按钮,选择你在上面设计中生成的JED 文件COUNT10.JED,并按OK。 5点击横档上的小方钮Run

26、 Operation。如果下载成功,在右边一个小方框中会出现PASS 字样。,第4节 ispPAC器件与PAC-Designer软件的使用,在系统可编程模拟器件可实现三种功能: 信号调理(放大、衰减、滤波)。 信号处理(求和、求差、积分等运算)。 信号转换(数字信号转换成模拟信号)。,一、ispPAC器件,1. ispPAC10的结构和原理,四个PAC块的输出放大器的差分输出直接与四对模拟输出管脚相连。除电源管脚Vs、接地管脚GND外,还有用于isp接口的数字输入、输出管脚(TDI、TDO、TCK、TMS、)、两个制造测试管脚TEST,以及用于自校正的数字输入管脚CAL(Auto-Calibr

27、ate)、 共模电压输入管脚CMVIN、2.5V参考电压输出管脚VREFOUT。当用户选择自定的共模电压时,信号从CMVIN管脚输入。,ispPAC10内部模拟电路原理图,有四个PAC块以及所有模拟输入、输出管脚,无需用户编程设置的专用管脚;而需由用户编程设置的内容均包含在内。,输入、输出信号的共模电压,1)输入共模电压范围 输入信号最大范围和相应的共模电压范围都是增益的函数。当电源电压为5V时,输入信号最大范围为1V4V,扩展一下,典型值为0.7V4.3V。 输入共模电压VCM(VCMVCM)/2,当VCM2.5V时,只考虑前面提到的限制条件即可。当VCM2.5V,增益大于1时,对于某一增益

28、,当输入信号达到最大限定值时就会发生失真。当电源电压为5V时,对于给定的增益G,最小VCM0.675+ 0.548G VIN (V),VIN是最小峰值电压VINVINVIN,最大VCM5- VCM (V)。,输入共模电压范围,2). 输出端共模电压,在用户不改变ispPAC器件的模拟输出端共模电压的情况下,输出端共模电压总为2.5V,且与输入信号的共模电压无关。 当需要改变模拟输出端共模电压时,用户可通过开发软件选择用外部供给的参考电压代替默认的2.5V,这个外部供给的输出端共模电压必须经CMVIN管脚输入,只要求该电压信号大于1.25V、小于3.25V 。 但要注意,必须逐个对ispPAC1

29、0中的四个PAC块的输出放大器的输出共模电压进行编程设置。,PAC块增益的设置,1).整数增益的设置 单个输入仪用放大器的增益可设置为110之间的整数。 要求的增益大于10小于20,整个电路的增益为IA1 、IA2各自增益之和。 如果要求的增益大于20,可以将多个PAC块级联使用,整个电路的增益为各级联增益之积。,单个输入仪用放大器的增益3,二个输入仪用放大器的增益20,2).分数增益的设置 配合适当的外接电阻,ispPAC器件能提供具有任意分数增益的放大电路。,增益为5.7的PAC块配置图,3).整数比增益的设置 应用整数比技术,无需外接电阻,用户可实现具有某些整数比增益的电路。图中增益7/

30、9。,2、 ispPAC20的结构与原理,1). ispPAC20的结构,两个PAC块、两个比较器CP、一个数模转换器DAC以及模拟布线区、配置存储器、参考电压、自校正、isp接口等电路。,ispPAC20内部电路原理图,3、ispPAC30的结构与原理,ispPAC30内部电路原理图,4. ispPAC80/81的结构和原理,选开始= 程序= Lattice Semiconductor = PACDesigner后, 出现PACDesigner软件主窗口。,1. 设计输入,二、PAC-Designer软件的使用,打开File菜单,选择New,或按工具栏中快捷键,弹出建立新文件的对话框。如果所用的器件是ispPAC10,则选择ispPAC10 Schematic后,按OK键,或用鼠标左键双击ispPAC10 Schematic后,主窗口内出现ispPAC10的内部电路原理图,即ispPAC10的图形输入设计界面。,ispPAC10的图形输入设计界面,用三运放组成的双二阶滤波器,只要在ispPAC10的图形输入界面上添加连线、选择有关参数即可完成该原理图的输入。非常方便!,第一种方式输入:在ispPAC10的图形输入设计界面上,打开Edit菜单,选择Symbol项后,出现符号编辑对话框如图所示。,可由用户编程设置的所有内容均包含在此对话框中,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论