第四章_VHDL设计初步1

上传人:laiq****ong 文档编号:243120616 上传时间:2024-09-16 格式:PPT 页数:98 大小:1.79MB
返回 下载 相关 举报
第四章_VHDL设计初步1_第1页
第1页 / 共98页
第四章_VHDL设计初步1_第2页
第2页 / 共98页
第四章_VHDL设计初步1_第3页
第3页 / 共98页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,K,X,康芯科技,EDA,技术,实用教程,第4章,VHDL设计初步,【例4-1】,ENTITY,mux21a,IS,PORT,( a, b : IN BIT ;,s :,IN,BIT;,y :,OUT,BIT ) ;,END ENTITY,mux21a ;,ARCHITECTURE,one,OF,mux21a,IS,BEGIN,y = a,WHEN,s = 0,ELSE,b ;,END ARCHITECTURE,one ;,实体,结构体,4.1 多路选择器,VHDL,描述,图,4,-1,mux21a,实体,图4-2,mux21a,结构体,4.1.1 2选1多路选择器的,VHDL,描述,【,例4-2,】,ENTITY mux21a IS,PORT ( a, b : IN BIT;,s : IN BIT;,y : OUT BIT );,END ENTITY mux21a;,ARCHITECTURE one OF mux21a IS,SIGNAL d,e : BIT;,BEGIN,d = a AND (NOT S) ;,e = b AND s ;,y = d OR e ;,END ARCHITECTURE one ;,【例4-3】,. . .,ARCHITECTURE one OF mux21a IS,BEGIN,y = (a AND (NOT s) OR (b AND s) ;,END ARCHITECTURE one;,4.1.1 2选1多路选择器的,VHDL,描述,【例4-4】,ENTITY mux21a IS,PORT ( a, b, s: IN BIT;,y : OUT BIT );,END ENTITY mux21a;,ARCHITECTURE one OF mux21a IS,BEGIN,PROCESS (a,b,s) BEGIN,IF s = 0 THEN,y = a ; ELSE y = b ;,END IF;,END PROCESS;,END ARCHITECTURE one ;,4.1.1 2选1多路选择器的,VHDL,描述,图4-3,mux21a,功能时序波形,4.1.2,VHDL,相关语法说明,1. 实体,实体语句结构,实体说明单元的一般语句结构:,ENTITY,实体名,IS,GENERIC (,类属表 );,PORT (,端口表 );,END ENTITY,实体名;,GENERIC,类属说明语句,类属说明的一般书写格式如下:,GENERIC(,常数名 : 数据类型 :,=,设定值 , ;常数名 : 数据类型 :,=,设定值 ) ;,类属说明是实体说明中的可选项,放在端口说明之前,例:,GENERIC(m: TIME:=3ns),例,LIBRARY IEEE;,USE IEEE.STD_LOGIC_1164.ALL;,ENTITY,andn,IS,GENERIC (n : INTEGER ); -,定义类属参量及其数据类型,PORT(a : IN STD_LOGIC_VECTOR(n-1 DOWNTO 0); -,用类属参量限制矢量长度,c : OUT STD_LOGIC);,END;,PORT(,端口)说明,PORT (,端口名 : 端口模式 数据类型 ;, 端口名 : 端口模式 数据类型 ) ;,其中的端口名是设计者为实体的每一个对外通道所取的名字,端口模式是指这些通道上的数据流动方式。数据类型是指端口上流动的数据的表达格式或取值类型,,VHDL,要求只有相同数据类型的端口信号和操作数才能相互作用。,PORT,说明语句是对一个设计实体界面的说明及对设计实体与外部电路的接口通道的说明,其中包括对每一接口的输入输出模式和数据类型的定义。其格式如下:,端口模式,IN,OUT,INOUT,BUFFER,数据类型,VHDL,语言的,IEEE1076/93,标准规定,,EDA,综合工具提供的数据类型为布尔型(,Boolean)、,位型(,Bit)、,位矢量型(,Bit-Vector),和整数型(,Interger,)。,结构体的一般语言格式:,ARCHITECTURE,结构体名,OF,实体名,IS,说明语句,BEGIN,功能描述语句,END ARCHITECTURE,结构体名;,结构体具体指明了设计实体的行为,定义了设计实体的功能,规定了设计实体的数据流程,指派了实体中内部元件的连接关系,2 结构体,说明语句对结构内部使用的数据类型、常数、信号、子程序和元件等元素进行定义。说明语句不是必需的,功能描述语句用于描述实体逻辑功能和电路结构。,功能描述语句可以是并行语句,也可以是顺序语句或是它们的混合,。,结构体的组成部分,用,VHDL,语言描述结构体功能有3种方法,行为描述法:采用进程语句,顺序描述设计实体的行为,数据流描述法:采用进程语句顺序描述数据流在控制流作用下被加工、处理、存储的全过程,结构描述法:采用并行处理语句描述设计实体内的结构组织和元件互连关系,功能描述语句结构,进程语句,信号赋值语句,子程序调用语句,元件例化语句,3 操作符,表4-1,VHDL,操作符列表,表4-2,VHDL,操作符优先级,操作符,【例】,SIGNAL a ,b,c : STD_LOGIC_VECTOR (3 DOWNTO 0) ;,SIGNAL d,e,f,g : STD_LOGIC_VECTOR (1 DOWNTO 0) ;,SIGNAL h,I,j,k : STD_LOGIC ;,SIGNAL l,m,n,o,p : BOOLEAN ;,.,a=b AND c;,-b、c,相与后向,a,赋值,,a、b、c,的数据类型同属4位长的位矢量,d=e OR f OR g ;,-,两个操作符,OR,相同,不需括号,h=(i NAND j)NAND k ;,- NAND,不属上述三种算符中的一种,必须加括号,l=(m XOR n)AND(o XOR p);,-,操作符不同,必须加括号,h=i AND j AND k ;,-,两个操作符都是,AND,,不必加括号,h=i AND j OR k ;,-,两个操作符不同,未加括号,表达错误,a=b AND e ;,-,操作数,b,与,e,的位矢长度不一致,表达错误,h=i OR l ;,- i,的数据类型是位,STD_LOGIC,,而,l,的数据类型是,.,- 布尔量,BOOLEAN,,因而不能相互作用,表达错误。,逻辑操作符,关系操作符,【例】,ENTITY relational_ops_1 IS,PORT ( a,b : IN BITVECTOR (0 TO 3) ;,m : OUT BOOLEAN) ;,END relational_ops_1 ;,ARCHITECTURE example OF relational_ops_1 IS,BEGIN,m ”(大于)、,“=”(大于等于),“=”(小于等于),4.,IF_THEN,条件语句,顺序执行语句,只能用在进程中,有三种表现形式:,IF,条件,THEN,END IF;,IF,条件,THEN,ELSE,END IF;,IF,条件1,THEN,ELSIF,条件2,ELSE,条件,n,END IF;,例:,Library,ieee,;,use ieee.std_logic_1164.all;,Entity encoder is,Port(d: in std_logic_vector(3,downto,0);,q: out std_logic_vector(1,downto,0);,end encoder;,architecture example_if of encoder is,begin,process(d),begin,if(d(0)=0) then,q=“11”;,elsif(d(1)=0) then,q=“10”;,elsif(d(2)=0) then,q=“01”;,else,q=“00”;,end if ;,end process;,End example_if;,d3 d2 d1 d0 q2 q1,X x x 0 1 1,X x 0 1 1 0,X 0 1 1 0 1,0 1 1 1 0 0,优先级编码器真值表,5.,WHEN_ELSE,条件信号赋值语句,赋值目标 = 表达式,1,WHEN,赋值条件,1,ELSE,表达式,2,WHEN,赋值条件,2,ELSE,.,表达式,n,;,注意:,1、条件信号语句不能进行嵌套,2、条件信号语句是并发语句,进程内外都可以使用,例:用条件信号赋值语句设计四选一电路模块,Library,ieee,;,Use ieee.std_logic_1164.all;,Entitu,mux4 is,Port(d0,d1,d2,d3,a,b : in std_logic;,q: out std_logic);,End mux4;,Architecture arch of mux4 is,signal,sel,: std_logic_vector(1,downto,0);,Begin,sel,=b,q=d0 when,sel,=“00” else,d1 when,sel,=“01”else,d2 when,sel,=“10”else,d3 when,sel,=“11”else,z;,End arch;,6.,PROCESS,进程语句和顺序语句,Process,语句在,VHDL,程序中,是描述硬件并行工作行为的最常用,最基本的语句,进程语句格式,PROCESS,语句结构的一般表达格式如下,进程标号: ,PROCESS (,敏感信号参数表 ) ,IS,进程说明部分,BEGIN,顺序描述语句,END PROCESS ,进程标号;,PROCESS,组成,PROCESS,语句结构,进程说明,顺序描述语句,敏感信号参数表,信号赋值语句,变量赋值语句,进程启动语句,子程序调用语句,顺序描述语句,进程跳出语句,进程要点,1),PROCESS,为一无,限循环语句,2),PROCESS,中的顺序语句具有明显的顺序/并行运行双重性,3)进程必须由敏感信号的变化来启动,4)进程语句本身是并行语句,5)信号是多个进程间的通信线,6)一个进程中只允许描述对应于一个时钟信号的同步时序逻辑,【,例,】,ENTITY,mul,IS,PORT (a, b, c,selx,sely,: IN BIT;,data_out : OUT BIT);,END,mul,;,ARCHITECTURE ex OF,mul,IS,SIGNAL temp : BIT;,BEGIN,p_a : PROCESS (a, b,selx,),BEGIN,IF (,selx,= 0) THEN temp = a;,ELSE temp = b;,END IF;,END PROCESS p_a;,p_b: PROCESS(temp, c,sely,),BEGIN,IF (,sely,= 0) THEN data_out = temp;,ELSE data_out = c;,END IF;,END PROCESS p_b;,END ex;,7. 文件取名和存盘,1)取名最好与文件实体名相同;,2)文件后缀名必须是.,vhd,3)VHDL,设计文件必须存于指定为工程的目录中,此目录将被设定为,work,库,,work,库的路径即为此目录的路径,4.2 寄存器描述及其,VHDL,语言现象,4.2.1,D,触发器的,VHDL,描述,【例4-9】,LIBRARY IEEE ;,USE IEEE.STD_LOGIC_1164.ALL ;,ENTITY DFF1 IS,PORT (CLK : IN STD_LOGIC ;,D : IN STD_LOGIC ;,Q : OUT STD_LOGIC );,END ;,ARCHITECTURE,bhv,OF DFF1 IS,SIGNAL Q1 : STD_LOGIC ;,-,类似于在芯片内部定义一个数据的暂存节点,BEGIN,PROCESS (CLK),BEGIN,IF CLKEVENT AND CLK = 1,THEN Q1 = D ;,END IF;,Q = Q1 ; -,将内部的暂存数据向端口输出,END PROCESS ;,END,bhv,;,D,触发器,4.2.2,D,触发器,VHDL,描述的语言现象说明,1. 标准逻辑位数据类型,STD_LOGIC,BIT,数据类型定义:,TYPE BIT IS(0,1);,STD_LOGIC,数据类型定义:,TYPE STD_LOGIC IS (U,X,0,1,Z,W,L,H,-);,STD_LOGIC,所定义的9种数据的含义是,:,U,表示未初始化的; ,X,表示强未知的; 0表示强逻辑0; 1表示强逻辑1; ,Z,表示高阻态; ,W,表示弱未知的; ,L,表示弱逻辑0; ,H,表示弱逻辑1; -表示忽略。,Library,ieee,;,USE IEEE.STD_LOGIC_1164,ENTITY mux21a IS,PORT( a, b : IN std_logic ;,s : IN std_logic ;,y : OUT std_logic ) ;,END mux21a ;,ARCHITECTURE one OF mux21a IS,BEGIN,y = a WHEN s = 0 ELSE,b ;,END one ;,例:,2. 设计库和标准程序包,库是用来存储和放置可编译的设计单元的地方,通过其目录可查询、调用。设计库中的设计单元可以用作其他,VHDL,描述的资源,一般的,设计库中放程序包,不同库中所放的程序包的个数不一致。程序包放子程序,子程序中含有函数、过程、元件等基础设计单元。,库的种类,VHDL,的库,设计库:对当前项目是可见默认的,无需声明。包括,STD,库和,WORK,库。,STD,库中包括,STANDARD,和,TEXTIO,两个程序包,资源库:常规元件和标准模块存放的库,使用前需预先说明。有些是,IEEE,标准化组织认可的,称为,IEEE,库,使用库和程序包的一般定义表式是:,LIBRARY ;,USE .,ALL ;,USE,语句的使用有两种常用格式:,USE,库名.程序包名.项目名 ;,USE,库名.程序包名.,ALL ;,LIBRARY IEEE ;,USE IEEE.STD_LOGIC_1164.STD_ULOGIC ;,USE IEEE.STD_LOGIC_1164.RISING_EDGE ;,常用的预定义的程序包,STD_LOGIC_1164,程序包,STD_LOGIC_ARITH,程序包,STD_LOGIC_UNSIGNED,和,STD_LOGIC_SIGNED,程序包,STANDARD,和,TEXTIO,程序包,VHDL,程序包,例:计数器,Library,ieee,;,Use ieee.std_logic_1164.all;,Use,ieee.std_logic_unsigned.all,;,Entity count is,port(clk,: in std_logic;,q : out std_logic_vector(3,downto,0);,End count;,Architecture arch of count is,signal m : std_logic_vector(3,downto,0);,begin,process(clk,),begin,if,clkevent,and,clk,=1 then,if(m=“1111”) then,m=“0000”;,else,m=m+1;,end if;,end if;,end process;,q=m;,End arch;,3.,SIGNAL,信号定义和数据对象,定义格式:,SIGNAL,信号名: 数据类型 := 初始值 ;,信号的使用和定义范围是实体、结构体和程序包,在进程和子程序的顺序语句中不允许定义信号,信号赋值语句:,目标信号名=表达式;,Signal a,b,c : std_logic;,Process(a,b),begin,c=a+b;,End process;,【例4-10】,ARCHITECTURE,bhv,OF DFF1 IS,BEGIN,PROCESS (CLK),BEGIN,IF CLKEVENT AND CLK = 1,THEN Q b1 THEN q1 = 1 ;,ELSIF a1 b1 THEN q1 b1 THEN q1 = 1 ;,ELSE q1 = 0 ;,END IF;,END PROCESS ;,END,图4-6 例4-10的电路图,4.2.3 实现时序电路的,VHDL,不同表达方式,【例4-11】,.,PROCESS (CLK),BEGIN,IF CLKEVENT AND (CLK=1) AND (CLKLAST_VALUE=0),THEN Q = D ; -,确保,CLK,的变化是一次上升沿的跳变,END IF;,END PROCESS ;,【例4-12】,.,PROCESS (CLK),BEGIN,IF CLK=1 AND CLKLAST_VALUE=0 -,同例4-13,THEN Q = D ;,END IF;,END PROCESS ;,4.2.3 实现时序电路的,VHDL,不同表达方式,【例4-13】,LIBRARY IEEE ;,USE IEEE.STD_LOGIC_1164.ALL ;,ENTITY DFF3 IS,PORT (CLK : IN STD_LOGIC ;,D : IN STD_LOGIC ;,Q : OUT STD_LOGIC );,END ;,ARCHITECTURE,bhv,OF DFF3 IS,SIGNAL Q1 : STD_LOGIC;,BEGIN,PROCESS (CLK),BEGIN,IF rising_edge(CLK) - CLK,的数据类型必须是,STD_LOGIC,THEN Q1 = D ;,END IF;,Q = Q1 ;,END PROCESS ;,END ;,4.2.3 实现时序电路的,VHDL,不同表达方式,【,例4-14,】,.,PROCESS,BEGIN,wait until CLKevent and,clk,=1; -,利用,wait,语句,Q = D ;,END PROCESS;,【例4-15,】,.,PROCESS (CLK),BEGIN,IF CLK = 1,THEN Q = D ; -,利用进程的启动特性产生对,CLK,的边沿检测,END IF;,END PROCESS ;,【,例4-16,】,.,PROCESS (CLK,D) BEGIN,IF CLK = 1 -,电平触发型寄存器,THEN Q = D ;,END IF;,END PROCESS ;,4.2.3 实现时序电路的,VHDL,不同表达方式,图4-7 边沿型触发器时序波形,图4-8 电平触发型寄存器的时序波形,4.2.4 异步时序电路设计,【,例4-17】,.,ARCHITECTURE,bhv,OF MULTI_DFF IS,SIGNAL Q1,Q2 : STD_LOGIC;,BEGIN,PRO1: PROCESS (CLK),BEGIN,IF CLKEVENT AND CLK=1,THEN Q1 = NOT (Q2 OR A);,END IF;,END PROCESS ;,PRO2:PROCESS (Q1),BEGIN,IF Q1EVENT AND Q1=1,THEN Q2 = D;,END IF;,QQ = Q2 ;,END PROCESS ;,图4-9 例4-17综合的电路,4.2.5 总结,一个完整的,VHDL,语言程序通常包括实体、构造体、配置、包集合和库5个部分。实体用于描述所设计的系统的外部接口信号;构造体用于描述系统内部的结构和行为;包集合存放各设计模块都能共享的数据类型、常数和子程序等;配置用于从库中选取所需单元组成系统设计的不同版本;库存放已经编译的实体、构造体、包集合、和配置。,例:带异步复位的,D,触发器,LIBRARY IEEE ;,USE IEEE.STD_LOGIC_1164.ALL ;,ENTITY DFF4 IS,PORT (CLK : IN STD_LOGIC ;,clr,D,: IN STD_LOGIC ;,Q : OUT STD_LOGIC );,END DFF4;,ARCHITECTURE,bhv,OF DFF1 IS,BEGIN,PROCESS (,CLK,clr,),BEGIN,if,clr,=0 then,Q=0;,elsif,CLKEVENT AND CLK = 1 THEN,Q = D ;,END IF;,END PROCESS ;,END,bhv,;,实验报告说明,预习报告,实验目的,实验内容,源程序,实验报告,软件编译,仿真波形图,分析报告,4.3 1位二进制全加器的,VHDL,设计,图4-10半加器,h_adder,电路图,图4-11 全加器,f_adder,电路图,ab so co,0000,0110,1010,1101,表4-1 半加器,h_adder,逻辑功能真值表,4.3.1 半加器描述和,CASE,语句,【例4-20】,LIBRARY IEEE ;-,或门逻辑描述,USE IEEE.STD_LOGIC_1164.ALL;,ENTITY or2a IS,PORT (a, b :IN STD_LOGIC;,c : OUT STD_LOGIC );,END ENTITY or2a;,ARCHITECTURE one OF or2a IS,BEGIN,c = a OR b ;,END ARCHITECTURE one;,【例4-21】,LIBRARY IEEE; -,半加器描述(1),USE IEEE.STD_LOGIC_1164.ALL;,ENTITY adder IS,PORT (a, b : IN STD_LOGIC;,co, so : OUT STD_LOGIC);,END ENTITY adder;,ARCHITECTURE fh1 OF adder is,BEGIN,so = NOT(a XOR (NOT b) ;,co = a AND b ;,END ARCHITECTURE fh1;,【例4-22】,LIBRARY IEEE;,-,半加器描述(2),USE IEEE.STD_LOGIC_1164.ALL;,ENTITY h_adder IS,PORT (a, b : IN STD_LOGIC;,co, so : OUT STD_LOGIC);,END ENTITY h_adder;,ARCHITECTURE fh1 OF h_adder is,SIGNAL,abc,: STD_LOGIC_VECTOR(1 DOWNTO 0) ;,BEGIN,abc, so=0; co so=1; co so=1; co so=0; co NULL ;,END CASE;,END PROCESS;,END ARCHITECTURE fh1 ;,【,例4-22】,. -半加器描述(3),SIGNAL,abc,cso,: STD_LOGIC_VECTOR(1 DOWNTO 0 );,BEGIN,abc,cso,cso,cso,cso,ain,b,=,bin,co,=,d,so,=e);,u2 :,h_adder,PORT,MAP(a,=,e,b,=,cin,co,=,f,so,=sum);,u3 : or2a PORT,MAP(a,=,d,b,=,f,c,=,cout,);,END ARCHITECTURE fd1;,4.3.1 半加器描述和,CASE,语句,1.,CASE,语句,CASE,语句的一般表式是:,CASE ,IS,When = ; . ; ;,When = ; . ; ;,.,when others =,END CASE ;,Case,语句常用来描述总线行为、编码器和译码器的结构,例:,PROCESS(abc,),BEGIN,CASE,abc,IS,WHEN 00 = so=0; co so=1; co so=1; co so=0; co NULL ;,END CASE;,END PROCESS;,process(s,a,b,c,d,),begin,case s is,when 00=zzzznull;,end case;,end process;,end,behav,;,library,ieee,;,use ieee.std_logic_1164.all;,entity mux4 is,port(s1,s2: in,std_logic,;,a,b,c,d,: in,std_logic,;,z : out,std_logic,);,end entity mux4;,architecture,behav,of mux4 is,signal s : std_logic_vector(1,downto,0);,begin,s=s1,结论:,选择器的行为描述即可以用,if,语句,也可以用,case,语句,If,语句是有序的,先处理最起始、最优先的条件,后处理次优先的条件,Case,语句是无序的,所有表达式值都并行处理。,Case,语句中的条件表达式中的值必须举穷尽,又不能重复,不能穷尽的条件表达式的值用,others,表示,2. 标准逻辑矢量数据类型,STD_LOGIC_VECTOR,在使用,STD_LOGIC_VECTOR,中,必须注明其数组宽度,即位宽,,如:,B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);,或,SIGNAL A :STD_LOGIC_VECTOR(1 TO 4),选择数组中的任意一位用,B(3),A(2),表示,赋值用,B=“01111001”;B(3)=1;,使用,STD_LOGIC_VECTOR,可以表达电路中并列的多通道端口或节点,或者总线,BUS,3. 并置操作符,并置操作符&表示将操作数或是数组合并起来组成新的数组,并置运算符的使用规则如下:,并置运算符可用于位的连接,形成位矢量,并置运算符可用两位矢量的连接构成更大的位矢量,位的连接,可以用并置符连接法,也可用集合体连接法,如,:,Data=d0,Data=(d0,d1,d2,d3);,以下是一些并置操作示例:,SIGNAL a : STD_LOGIC_VECTOR (3 DOWNTO 0) ;,SIGNAL d : STD_LOGIC_VECTOR (1 DOWNTO 0) ;,.,a d0,b=,sel,c,=,aa,);,端口映射语句,例化名 : 元件名,PORT MAP(,信号,);,位置映射方法:元件端口说明中的信号书写顺序位置和,port map(),中指定的实际信号书写顺序位置一一对应。,名称映射方法:直接赋信号名,Port(a,b : in bit;,c :out bit);,Entity mux2 is,Port(d0,d1,sel : in bit;,q : out bit);,End mux2;,Architecture arch of mux2 is,Component and2,port(a,b: in bit;,c: out bit);,End component;,Component or2,port(a,b: in bit;,c: out bit);,End component;,Component inv,port(a : in bit;,c: out bit);,End component;,Signal,aa,ab,nsel,:bit;,Begin,u1: inv port,map(sel,nsel,);,u2: and2 port map(nsel,d1,ab);,u3: and2 port map(d0,sel,aa);,u4: or2 port,map(aa,ab,q,);,End arch;,STEP1:,建立,工作库文件夹,STEP2:,输入设计项目,原理图/,VHDL,文本代码,STEP3:,存盘,注意,原理图/文本取名,STEP4:,将设计项,目设置成,Project,STEP5:,选,择目标器件,STEP11:,硬件测试,STEP9:,引脚,锁定并编译,STEP8:,仿真测,试和波形分析,STEP7:,建立仿,真波形文件,STEP6:,启动编译,STEP10:,编程,下载/配置,VHDL,文本输入设计流程,4.4,VHDL,文本输入设计方法初步,为设计全加器,新建一个文,件夹作工作库,文件夹名取为,My_prjct,注意,不可,用中文!,编辑输入并保存,VHDL,源文件,新建一个设,计文件,使用文本输入方,法设计,必须选择,打开文本编辑器,图4-13 在文本编辑窗中输入,VHDL,文件并存盘,图4-12 建立文本编辑器对话框,文本编辑窗,用键盘输入设计,文件:多路选择器,存盘文件名必须,取为:,mux21a.vhd,注意,要存在,自己建立的,文件夹中,文件存盘后,,关键词将改变,颜色!否则文,件名一定有错!,图4-14 设定当前文件为工程,首先点击这里,然后选择此项,,将当前的原理图,设计文件设置成,工程,最后注意此路,径指向的改变,注意,此路径指,向当前的工程!,首先选择这里,器件系列选择,窗,选择,ACEX1K,系列,根据实验板上的,目标器件型号选,择,如选,EP1K30,注意,首先消去,这里的勾,以便,使所有速度级别,的器件都能显示,出来,选择编译器,编译窗,4.4.3 选择,VHDL,文本编译版本号和排错,图5-15 设定,VHDL,编译版本号,选择此项,选择,VHDL1993,项,选择此项,消去这里的勾,编译出错!,4.4.3 选择,VHDL,文本编译版本号和排错,图4-16 确定设计文件中的错误,打开错误提示窗,错误所在,错误所在,改正错误,完成编译!,首先选择此项,,为仿真测试新,建一个文件,时序仿真,选择波形,编辑器文件,从,SNF,文件中,输入设计文件,的信号节点,点击“,LIST”,SNF,文件中,的信号节点,用此键选择左窗,中需要的信号,进入右窗,最后点击“,OK”,消去这里的勾,,以便方便设置,输入电平,在,Options,菜单中消去网格对齐,Snap to Grid,的选择(消去对勾),选择,END TIME,调整仿真时间,区域。,选择65微秒,比较合适,用此键改变仿真,区域坐标到合适,位置。,点击1,使拖黑,的电平为高电平,先点击,b,,将其,点为黑色,然后先点击此处,将弹出时钟周期,设置窗,设置输入信号,b,的周期为800,ns,设置输入信号,a,的周期为2,us,仿真波形文件,存盘!,选择仿真器,运行仿真器,4.4.4 时序仿真,图4-17,mux21a,仿真波形,选择引脚,锁定选项,引脚窗,此处输入,信号名,此处输入,引脚名,按键,“,ADD”,即可,注意引脚属性,错误引脚名将,无正确属性!,再编译一次,,将引脚信息,进去,选择编程器,,准备将设计,好的半加器,文件下载到目,器件中去,编程窗,在编程窗打开,的情况下选择,下载方式设置,选择此项下,载方式,下载(配置),成功!,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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


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

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


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