资源描述
EDA总结知识点
EDA总结知识点:
第一章
的定义: 是电子设计自动化的概念发展起来的。
狭义EDA和广义EDA,本书我们主要研究的是狭义的EDA。
狭义EDA:以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真等等一系列的工作,最终形成集成电子系统或专用集成芯片的新技术。也称为:IES/ASIC自动设计技术。
广义的EDA:包括狭义的EDA,还包括计算机辅助分析CAA技术用软件的方式设计硬件
用软件方式设计的系统到硬件系统的转换是有关的开发软件完成 设计过程中可用有关软件进行各种仿真; 系统可现场编程,在线升级;
整个系统可集成在一个芯片上,体积小、功耗低、可靠性高; EDA技术进入21世纪后得到了更大的发展,主要表现在:
1)使得电子设计成果以自主知识产权的方式得以明确表达和确认成为可能; 2)在仿真和设计两个方面支持标准语言的功能强大的EDA软件不断推出;
3)电子技术领域全方位融入EDA领域,例如:软件无线电的迅速崛起,模拟电路系统硬件描述语言的表达和设计的标准化,系统可编程模拟器件的出现等
4)电子领域各学科的界限更加模糊,互为包容:模拟与数字,软件与硬件、系统与器件、ASIC与FPGA、行为与结构等。
5)更大规模的FPGA/CPLD器件的不断推出;
6)用于ASIC设计的标准单元的推出,该标准单元已涵盖大规模电子系统以及复杂IP模块。
7)软硬件IP核在电子行业的产业领域得到进一步的确认。 8)soc高效低成本设计技术的成熟; 9)系统级行为验证硬件描述语言的出现,使得复杂电子系统的设计和验证变简单。 10)在FPGA上实现DSP的应用; 11)嵌入式处理器软核的成熟;
1、3 硬件描述语言:主要包括:VHDL Verilog HDL System Verilog System C
VHDl语言具有很强的电路描述和建模能力
VHDl语言具有与具体硬件电路无关和与设计平台无关的优点 主要的描述设计方法:
1)自顶向下 2)自底向上 3)混合方法。
综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库的信息,以及获得优化综合的约束条件。主要的约束条件有:
设计规则 时间约束 面积约束
通常我们要求时间约束的优先级高于面积约束。 本图可能出简答题:
传统的电子设计方法主要采用手工设计,主要缺点: 1)复杂电路的设计调试困难 2)查找和修改错误不便
3)不易管理设计过程中的大量文档
4)设计实现过程与具体的生产工艺直接相关,可移植性差; 5)只有设计出样机和‘生产出芯片才可以实测 EDA技术的优点:
1)采用硬件描述语言作为设计输入,具有保证设计过程中的正确性,可以降低设计成本,缩短设计周期。
2)库的引入
3)设计文档的管理
4)强大的系统建模、电路仿真功能。 5)具有自主知识产权 6)开发技术的标准化
6)开发技术的标准化,规范化和IP核的可重用性。设计语言的标准化,不会于设计对象的不同而改变;EDA软件平台支持任何标准化的设计语言;设计成果的通用性,良好的可移植性和可测性。
7)适用于高效率大规模系统设计的自顶向下设计方案 8)全方位利用计算机自动设计仿真和测试 9)对于设计者的硬件知识和硬件经验要求较低
10)与以CPU为主的电路系统相比较,EDA技术具有更好的高速性能。 11)纯硬件系统的高可靠性 EDA设计流程
图形输入通常包括原理图输入、状态图输入和波形图输入三种常用方法。 适配所选定的目标器件必须属于原综合器指定的目标器件系列。通常,EDA软件中的综合器可专业的第三方EDA公司提供,而适配器则需PPGA/CPLD供应商提供。因为适配器的适配对象直接与器件的结构细节相对应。
时序仿真的仿真文件必须来自针对具体器件的综合器与适配器。 功能仿真过程不涉及任何具体器件的硬件特性
FPGA与CPLD的辨别和分类主要是根据其结构特点和工作原理。通常的分类方法是: 以乘积项结构方式构成逻辑行为的器件称为CPLD,如LATTICE ISPLSI的系列、XILINX的XC9500系列、ALTERA的MAX7000S系列和LATTICE的MACH系列等。
以查表法结构方式构成逻辑行为器件称为FPGA,XILINX的SPARTAN、ALTERA的FLEX10K、ACEXIK或CYCLONE系列等。
EDA工具大致可以分为如下五个模块:设计输入编辑器。HDL综合器。仿真器。适配器。下载器。
IP:知识产权核或者知识产权模块。 IP分为软IP,固IP和硬IP
软IP--用VHDL等硬件描述语言描述的功能块,但是并不涉及用什么具体电路元件实现这些功能。
固IP--完成了综合的功能块。
硬IP--供设计的最终阶段产品--掩膜
第二章
可编程逻辑器件,有6个系列:ispLSI1000、2000、3000、5000、6000和8000系列
Xilinx:SRAM工艺叫FPGA; FLASH工艺叫CPLD; ALTERA: MAX,即现场可编程门阵列它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
以下是了解内容:①CPLD更适合完成各种算法和组合逻辑,FPGA更适合于完成时序逻辑。换句话说,FPGA更适合于触发器丰富的结构,而CPLD更适合于触发器有限而乘积项丰富的结构。
②CPLD的连续式布线结构决定了它的时序延迟是均匀的和可预测的,而FPGA的分段式布线结构决定了其延迟的不可预测性。
③在编程上FPGA比CPLD具有更大的灵活性。CPLD通过修改具有固定内连电路的逻辑功能来编程,FPGA主要通过改变内部连线的布线来编程;FPGA可在逻辑门下编程,而CPLD是在逻辑块下编程。
④FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现。
⑤CPLD比FPGA使用起来更方便。CPLD的编程采用E2PROM或FASTFLASH技术,无需外部存储器芯片,使用简单。而FPGA的编程信息需存放在外部存储器上,使用方法复杂。
选择的条件值不能完全覆盖case语句中的表达式的值,最后最末一个条件语句用关键词others来表示,otehrs只能出现一次,必须在最后;使用others避免综合器插入不必要的锁存器;
? 并置操作符&主要是将操作数或者是数组组合起来形成新的数组。例如”AB”&”CD”就表示“ABCD”;‘0’&’1’&’1’的结果是“011”因此我们可以利用&来组成新的数组,可以将一个单元素并置于一个数的左端或者右端形成更长的数组;或者将两个数组并置成一个新的数组;
完整的条件语句只能构成组合逻辑电路;
利用不完整的条件语句的描述引进寄存器元件,从而构成时序电路的方式是vhdl描述时序电路最重要的途径。
4位二进制加法计数器设计
异步复位同步加载及时钟使能十进制加法计数器:
第五章 VHDL设计进阶
? 变量的赋值符号是:=
? 注意在进程和子程序的顺序语句中不允许定义信号。进程中可以将信号列
入敏感信号表,而不能将变量列入敏感信号表;信号的赋值语句:目标信号名 ? 信号与变量的区别主要表现在接受与保持信号的方式和信息保持与传递
的区域大小
? 1)信号可以设置传输延时量,而变量不可以
? 2)变量作为局部信息载体,只能在所定义进程中有效;信号可作为模块间
信息载体
? 3)变量的设置有时候只是过渡,最后的信息传输和通信还是依靠信号; ? 含同步并行预置功能的8位移位寄存器设计
?
位矢中‘1’码个数统计电路设计
三态门的设计
Z在综合时属于一个不确定的值,不同的综合器可能会给出不同的结果;Z必须大写,这是因为在IEEE库中对数据类型STD_LOGIC的预定义已经将高阻态确定为大写‘Z’。
3-8线译码器(要求会写)
【例5-20】
LIBRARY IEEE;
USE _LOGIC_; ENTITY coder IS
PORT ( din : IN STD_LOGIC_VECTOR(0 TO 7);
output : OUT STD_LOGIC_VECTOR(0 TO 2) ); END coder;
ARCHITECTURE behav OF coder IS
SIGNAL SINT : STD_LOGIC_VECTOR(4 DOWNTO 0); BEGIN
PROCESS (din) BEGIN
IF (din(7)=‘0’) THEN output END PROCESS ; END behav;
分频器只看偶分频。
第九章VHDL结构与要素
端口名是设计者为实体的每一个对外通道所取的名字,端口模式是指这些通道上的数据流动方式。数据类型是指端口上流动的数据的表达格式或取值类型,VHDL要求只有相同数据类型的端口信号和操作数才能相互作用。
函数的语言表达格式如下:
FUNCTION 函数名(参数表) RETURN 数据类型;--函数首
FUNCTION 函数名(参数表) RETURN 数据类型IS --函数体开始 ? [说明部分;] ? BEGIN ? 顺序语句; ? END FUNCTION 函数名;--函数体结束 调用程序包:
? USE 库名.程序包名.项目名; ? USE 库名.程序包名.ALL; ? 第一语句格式的作用是,向本设计实体开放指定库中的特定程序包内所选定的项目。第二语句格式的作用是,向本设计实体开放指定库中的特定程序包内所有的内容。
? 定义程序包的一般语句结构如下:
? --程序包首 ? PACKAGE 程序包名IS --程序包首开始 ? 程序包首说明部分; ? END [PACKAGE][程序包名]; --程序包首结束
? --程序包体
? PACKAGE BODY 程序包名IS --程序包体开始 ? 程序包体说明部分以及包体内容; ? END [PACKAGE BODY][程序包名]; --程序包体结束
常用的四种库:1、IEEE库2、STD库3、WORK库4、VITAL库
数码管的写法:
常用的预定义程序包:1) STD_LOGIC_1164程序包2) STD_LOGIC_ARITH程序包3) STD_LOGIC_UNSIGNED和STD_LOGIC_SIGNED程序包4) STANDARD和TEXTIO程序包
文字规则:
字符是用单引号引起来的ASCII字符,可以是数值,也可以是符号或字母,如:‘R’,‘A’,‘*’,‘Z’。而字符串则是一维的字符数组,须放在双引号中。VHDL中有两种类型的字符串:文字字符串和数位字符串。
X:十六进制基数符号(0~F)O:八进制基数符号
data1 data6 VHDL的基本标识符就是以英文字母开头,不连续使用下划线“_”,不以下划线“_”结尾的,26个大小写英文字母、数字0~9以及下划线“_”组成的字符串。
合法的标识符:Decoder_1 , FFT ,Sig_N,Not_Ack, State0 , Idle
字符类型通常用单引号引起来,如‘A’。字符类型区分大小写,如‘B’不同于‘b’。字符类型已在STANDARD程序包中作了定义。
时间只用于仿真不用于综合。
第十章:VHDL基本语句
CASE sel IS
WHEN 0 => z1 WHEN 1?3 => z2 z3 z4
PACKAGE data_types IS -- 定义程序包 SUBTYPE data_element IS INTEGER RANGE 0 TO 3 ;-- 定义数据类型 TYPE data_array IS ARRAY (1 TO 3) OF data_element;
END data_types;
USE _; --打开以上建立在当前工作库的程序包data_types ENTITY sort IS
PORT ( in_array : IN data_array ; out_array : OUT data_array); END sort;
ARCHITECTURE exmp OF sort IS BEGIN
PROCESS (in_array) -- 进程开始,设data_types为敏感信号 PROCEDURE swap(data : INOUT data_array;
-- swap的形参名为data、low、high low, high : IN INTEGER ) IS VARIABLE temp : data_element ; BEGIN -- 开始描述本过程的逻辑功能
IF (data(low) > data(high)) THEN -- 检测数据 temp := data(low) ; data(low) := data(high); data(high) := temp ;
END IF ;
END swap ; -- 过程swap定义结束 VARIABLE my_array : data_array ; -- 在本进程中定义变量my_array BEGIN -- 进程开始 my_array := in_array ; -- 将输入值读入变量 swap(my_array, 1, 2);
-- my_array、1、2是对应于data、low、high的实参
swap(my_array, 2, 3); -- 位置关联法调用,第2、第3元素交换 swap(my_array, 1, 2); -- 位置关联法调用,第1、第2元素再次交换 out_array
要求会写程序:序列检测器,7位数码管,3-8线译码器,选择器,减法器,会真值表,奇偶校验程序,双向分频器,计数器。
生成语句不考。
ARCHITECTURE behv OF cnt_bin_n IS COMPONENT d_ff
PORT(d, clk_s : IN STD_LOGIC; Q, NQ : OUT STD_LOGIC); END COMPONENT d_ff;
SIGNAL s : STD_LOGIC_VECTOR(0 TO n); BEGIN
s(0) q_1 : FOR i IN 0 TO n-1 GENERATE
dff : d_ff PORT MAP (s(i+1), s(I), q(i), s(i+1)); END GENERATE;
END ARCHITECTURE behv;
第十一章
常用的4种设计技巧
1. 乒乓操作 2. 串并转换 3. 流水线操作 4. 数据接口同步
? 常用的3种面积优化方法
1. 资源共享2、逻辑优化3、串行化
?
速度优化:1、流水线设计2、寄存器配平3、关键路径法
第七章:有限状态机设计
? moore型状态机属于同步输出状态机
因为moore型状态机的输出则仅为当前状态的函数,这类状态机在输入变化还必须等待时钟的到来,时钟的状态变化才导致输出的变化 mealy属于异步输出状态机;
Mealy型状态机的输出是当前状态和所有输入信号的函数,它的输出是在变化后立即发生的,不依赖于时钟的同步;因此mealy型状态机要少等待一个时钟信号
同步置位,异步复位。
去毛刺方法:1、延时方式2、逻辑方式3、定时方式。
例序列检测器
LIBRARY IEEE; --11100101 USE _LOGIC_; ENTITY LI42 IS
PORT (DIN,CLK,CLR:IN STD_LOGIC;
AB :OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END;
ARCHITECTURE behav OF LI42 IS
SIGNAL Q:INTEGER RANGE 0 TO 8;
SIGNAL D:STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN
D IF CLR=‘1’ THEN Q ELSIF CLK’EVENT AND CLK=‘1’ THEN CASE Q IS
WHEN 0=> IF DIN =D(7) THEN Q
WHEN 1=> IF DIN =D(6) THEN Q IF DIN =D(5) THEN Q IF DIN =D(4) THEN Q IF DIN =D(3) THEN Q IF DIN =D(2) THEN Q IF DIN =D(1) THEN Q IF DIN =D(0) THEN Q Q IF Q=8 THEN AB Moore型序列检测器例7-4课本246页
LIBRARY IEEE;
USE _LOGIC_; ENTITY SCHK IS
PORT(DIN,CLK,RST : IN STD_LOGIC;
SOUT : OUT STD_LOGIC);
END SCHK;
ARCHITECTURE behav OF SCHK IS
TYPE states IS (s0,s1,s2,s3,s4,s5,s6,s7,s8);
--串行输入
SIGNAL ST,NST: states :=s0; --设定现态变量和次态变量 BEGIN
COM: PROCESS(ST, DIN) BEGIN --组合进程,规定各状态转换方式 CASE ST IS --11010011
WHEN s0=> IF DIN =’1’ THENNST IF DIN =’1’ THEN NST IF DIN =’0’THEN NST IF DIN =’1’ THEN NST IF DIN =’0’ THEN NST IF DIN =’0’ THEN NST IF DIN =’1’ THEN NST IF DIN =’1’ THEN NST IF DIN =’0’ THEN NSTNST REG: PROCESS (CLK,RST) BEGIN ---时序进程
IF RST=’1’ THEN ST ELSIF CLK’EVENT AND CLK=’1’ THEN ST END PROCESS REG;
SOUT Mealy型序列检测器例7-7课本250页
LIBRARY IEEE;
USE _LOGIC_; ENTITY SCHK IS
PORT(DIN,CLK,RST : IN STD_LOGIC; --串行输入
SOUT : OUT STD_LOGIC);
END SCHK;
ARCHITECTURE behav OF SCHK IS
TYPE states IS (s0,s1,s2,s3,s4,s5,s6,s7,s8);
SIGNAL ST: states :=s0; --设定现态变量和次态变量 BEGIN
PROCESS(ST, DIN) BEGIN --组合进程,规定各状态转换方式 IF RST =’1’ THEN ST WHEN s0=> IF DIN =’1’ THENST IF DIN =’1’ THEN ST IF DIN =’0’THEN ST IF DIN =’1’ THEN ST IF DIN =’0’ THEN ST IF DIN =’0’ THEN ST IF DIN =’1’ THEN ST IF DIN =’1’ THEN ST IF DIN =’0’ THEN STST IF (ST=s8) THEN SOUT 3-6数控分频器的设计
LIBRARY IEEE;
USE _LOGIC_;
USE _LOGIC_; ENTITY LI36 IS
PORT (CLK:IN STD_LOGIC;
D:IN STD_LOGIC_VECTOR(7 DOWNTO 0); FOUT:OUT STD_LOGIC); END;
ARCHITECTURE one OF LI36 IS
SIGNAL FULL:STD_LOGIC; BEGIN
P_REG:PROCESS(CLK)
VARIABLE CNT8:STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN
IF CLK’EVENT AND CLK=‘1’ THEN IF CNT8=\ CNT8:=D; FULL ELSE CNT8:=CNT8+1; FULL END PROCESS P_REG; P_DIV:PROCESS(FULL)
VARIABLE CNT2:STD_LOGIC; BEGIN
IF FULL’EVENT AND FULL=‘1’ THEN CNT2 :=NOT CNT2;
IF CNT2=‘1’ THEN FOUT END PROCESS P_DIV; END;
例3-3设计含异步清零和同步时钟使能的加法计数器
LIBRARY IEEE;
USE _LOGIC_;
USE _LOGIC_; ENTITY Vhdl1 IS
PORT (CLK,RST,EN : IN STD_LOGIC;
CQ: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT: OUT STD_LOGIC ); END Vhdl1;
ARCHITECTURE behav OF Vhdl1 IS BEGIN
PRCCESS(CLK,RST,EN)
VARIABLE CQI: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN
IF RST = ‘1’ THEN CQI := (OTHERS =>‘0’); ELSIF CLK’EVENT AND CLK=‘1’ THEN IF EN=‘1’ THEN
IF CQI’0’); END IF;
END IF; END IF;
IF CQI=9 THEN COUT 例3-4七段数码显示译码器设计
LIBRARY IEEE;
USE _LOGIC_;
USE _LOGIC_; ENTITY Vhdl1 IS
PORT ( A : IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED7S: OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END ;
ARCHITECTURE one OF Vhdl1 IS BEGIN
PRCCESS(A) BEGIN CASE A IS
WHEN \ NULL; END CASE ; END PROCESS; END ;
四选一选择器:【例5-7】 LIBRARY IEEE;
USE _LOGIC_;
ENTITY mux4 IS
PORT (i0, i1, i2, i3, a, b : IN STD_LOGIC; q : OUT STD_LOGIC); END mux4;
ARCHITECTURE body_mux4 OF mux4 IS BEGIN
process(i0,i1,i2,i3,a,b)
variable muxval : integer range 7 downto 0; begin
muxval := 0;
if (a = ‘1’) then muxval := muxval + 1; end if; if (b = ‘1’) then muxval := muxval + 2; end if; case muxval is
when 0 => q q q q null; end case;
end process; END body_mux4;
半减器:
EDA总结知识点:
第一章
的定义: 是电子设计自动化的概念发展起来的。
狭义EDA和广义EDA,本书我们主要研究的是狭义的EDA。
狭义EDA:以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真等等一系列的工作,最终形成集成电子系统或专用集成芯片的新技术。也称为:IES/ASIC自动设计技术。
广义的EDA:包括狭义的EDA,还包括计算机辅助分析CAA技术用软件的方式设计硬件
用软件方式设计的系统到硬件系统的转换是有关的开发软件完成 设计过程中可用有关软件进行各种仿真; 系统可现场编程,在线升级;
整个系统可集成在一个芯片上,体积小、功耗低、可靠性高; EDA技术进入21世纪后得到了更大的发展,主要表现在:
1)使得电子设计成果以自主知识产权的方式得以明确表达和确认成为可能; 2)在仿真和设计两个方面支持标准语言的功能强大的EDA软件不断推出;
3)电子技术领域全方位融入EDA领域,例如:软件无线电的迅速崛起,模拟电路系统硬件描述语言的表达和设计的标准化,系统可编程模拟器件的出现等
4)电子领域各学科的界限更加模糊,互为包容:模拟与数字,软件与硬件、系统与器件、ASIC与FPGA、行为与结构等。
5)更大规模的FPGA/CPLD器件的不断推出;
6)用于ASIC设计的标准单元的推出,该标准单元已涵盖大规模电子系统以及复杂IP模块。
7)软硬件IP核在电子行业的产业领域得到进一步的确认。 8)soc高效低成本设计技术的成熟; 9)系统级行为验证硬件描述语言的出现,使得复杂电子系统的设计和验证变简单。 10)在FPGA上实现DSP的应用; 11)嵌入式处理器软核的成熟;
1、3 硬件描述语言:主要包括:VHDL Verilog HDL System Verilog System C
VHDl语言具有很强的电路描述和建模能力
VHDl语言具有与具体硬件电路无关和与设计平台无关的优点 主要的描述设计方法:
1)自顶向下 2)自底向上 3)混合方法。
综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库的信息,以及获得优化综合的约束条件。主要的约束条件有:
设计规则 时间约束 面积约束
通常我们要求时间约束的优先级高于面积约束。 本图可能出简答题:
传统的电子设计方法主要采用手工设计,主要缺点: 1)复杂电路的设计调试困难 2)查找和修改错误不便
3)不易管理设计过程中的大量文档
4)设计实现过程与具体的生产工艺直接相关,可移植性差; 5)只有设计出样机和‘生产出芯片才可以实测 EDA技术的优点:
1)采用硬件描述语言作为设计输入,具有保证设计过程中的正确性,可以降低设计成本,缩短设计周期。
2)库的引入
3)设计文档的管理
4)强大的系统建模、电路仿真功能。 5)具有自主知识产权 6)开发技术的标准化
6)开发技术的标准化,规范化和IP核的可重用性。设计语言的标准化,不会于设计对象的不同而改变;EDA软件平台支持任何标准化的设计语言;设计成果的通用性,良好的可移植性和可测性。
7)适用于高效率大规模系统设计的自顶向下设计方案 8)全方位利用计算机自动设计仿真和测试 9)对于设计者的硬件知识和硬件经验要求较低
10)与以CPU为主的电路系统相比较,EDA技术具有更好的高速性能。 11)纯硬件系统的高可靠性 EDA设计流程
图形输入通常包括原理图输入、状态图输入和波形图输入三种常用方法。 适配所选定的目标器件必须属于原综合器指定的目标器件系列。通常,EDA软件中的综合器可专业的第三方EDA公司提供,而适配器则需PPGA/CPLD供应商提供。因为适配器的适配对象直接与器件的结构细节相对应。
时序仿真的仿真文件必须来自针对具体器件的综合器与适配器。 功能仿真过程不涉及任何具体器件的硬件特性
FPGA与CPLD的辨别和分类主要是根据其结构特点和工作原理。通常的分类方法是: 以乘积项结构方式构成逻辑行为的器件称为CPLD,如LATTICE ISPLSI的系列、XILINX的XC9500系列、ALTERA的MAX7000S系列和LATTICE的MACH系列等。
以查表法结构方式构成逻辑行为器件称为FPGA,XILINX的SPARTAN、ALTERA的FLEX10K、ACEXIK或CYCLONE系列等。
EDA工具大致可以分为如下五个模块:设计输入编辑器。HDL综合器。仿真器。适配器。下载器。
IP:知识产权核或者知识产权模块。 IP分为软IP,固IP和硬IP
软IP--用VHDL等硬件描述语言描述的功能块,但是并不涉及用什么具体电路元件实现这些功能。
固IP--完成了综合的功能块。
硬IP--供设计的最终阶段产品--掩膜
第二章
可编程逻辑器件,有6个系列:ispLSI1000、2000、3000、5000、6000和8000系列
Xilinx:SRAM工艺叫FPGA; FLASH工艺叫CPLD; ALTERA: MAX,即现场可编程门阵列它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
以下是了解内容:①CPLD更适合完成各种算法和组合逻辑,FPGA更适合于完成时序逻辑。换句话说,FPGA更适合于触发器丰富的结构,而CPLD更适合于触发器有限而乘积项丰富的结构。
②CPLD的连续式布线结构决定了它的时序延迟是均匀的和可预测的,而FPGA的分段式布线结构决定了其延迟的不可预测性。
③在编程上FPGA比CPLD具有更大的灵活性。CPLD通过修改具有固定内连电路的逻辑功能来编程,FPGA主要通过改变内部连线的布线来编程;FPGA可在逻辑门下编程,而CPLD是在逻辑块下编程。
④FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现。
⑤CPLD比FPGA使用起来更方便。CPLD的编程采用E2PROM或FASTFLASH技术,无需外部存储器芯片,使用简单。而FPGA的编程信息需存放在外部存储器上,使用方法复杂。
24
2016全新精品资料-全新公文范文-全程指导写作 –独家原创 / 24
展开阅读全文