河海大学常州校区河海大学常州校区第三讲VHDL并发语句1/23第三讲VHDL并发语句1/23第三讲VHDL并发语句3.1并行信号赋值语句3.2进程语句3.3块语句3.4元件例化语句3.5生成语句河海大学常州校区河海大学常州校区第三讲VHDL并发语句2/23第三讲VHDL并发语句2/23并行语句所在位置:ARCHITECTURE结构体名OF实体名IS说明语句BEGIN并行语句ENDARCHITECTURE结构体名河海大学常州校区河海大学常州校区第三讲VHDL并发语句3/23第三讲VHDL并发语句3/233.1并行信号赋值语句1.简单信号赋值语句赋值目标=表达式赋值目标=表达式ARCHITECTUREcurtOFbc1ISSIGNALs1,e,f,g,h:STD_LOGIC;BEGINoutput1<=aANDb;output2<=c+d;g<=eORf;h<=eXORf;s1<=g;ENDARCHITECTUREcurt;河海大学常州校区河海大学常州校区第三讲VHDL并发语句4/23第三讲VHDL并发语句4/232.条件信号赋值语句赋值目标<=表达式WHEN赋值条件ELSE表达式WHEN赋值条件ELSE...表达式;赋值目标<=表达式WHEN赋值条件ELSE表达式WHEN赋值条件ELSE...表达式;河海大学常州校区河海大学常州校区第三讲VHDL并发语句5/23第三讲VHDL并发语句5/23【例】ENTITYmuxISPORT(a,b,c:INBIT;p1,p2:INBIT;z:OUTBIT);END;ARCHITECTUREbehvOFmuxISBEGINz<=aWHENp1='1'ELSEbWHENp2='1'ELSEc;END;河海大学常州校区河海大学常州校区第三讲VHDL并发语句6/23第三讲VHDL并发语句6/233.选择信号赋值语句WITH选择表达式SELECT赋值目标信号<=表达式WHEN选择值表达式WHEN选择值...表达式WHEN选择值;WITH选择表达式SELECT赋值目标信号<=表达式WHEN选择值表达式WHEN选择值...表达式WHEN选择值;河海大学常州校区河海大学常州校区第三讲VHDL并发语句7/23第三讲VHDL并发语句7/23...WITHseltSELECTmuxout<=aWHEN0|1,bWHEN2TO5,cWHEN6,dWHEN7,'Z'WHENOTHERS;......WITHseltSELECTmuxout<=aWHEN0|1,bWHEN2TO5,cWHEN6,dWHEN7,'Z'WHENOTHERS;...河海大学常州校区河海大学常州校区第三讲VHDL并发语句8/23第三讲VHDL并发语句8/233.2进程语句进程(PROCESS)语句是最具VHDL语言特色的语句。因为它提供了一种用算法(顺序语句)描述硬件行为的方法。进程(PROCESS)语句是最具VHDL语言特色的语句。因为它提供了一种用算法(顺序语句)描述硬件行为的方法。进程语句是VHDL程序中使用最频繁和最能体现VHDL语言特点的一种语句,其原因大概是由于它的并行和顺序行为的双重性,以及其行为描述风格的特殊性。进程语句是VHDL程序中使用最频繁和最能体现VHDL语言特点的一种语句,其原因大概是由于它的并行和顺序行为的双重性,以及其行为描述风格的特殊性。河海大学常州校区河海大学常州校区第三讲VHDL并发语句9/23第三讲VHDL并发语句9/23语句格式:[进程标号:]PROCESS[(敏感信号参数表)][IS][进程说明部分]BEGIN顺序描述语句ENDPROCESS[进程标号];语句格式:[进程标号:]PROCESS[(敏感信号参数表)][IS][进程说明部分]BEGIN顺序描述语句ENDPROCESS[进程标号];河海大学常州校区河海大学常州校区第三讲VHDL并发语句10/23第三讲VHDL并发语句10/23(2)顺序描述语句部分可分为赋值语句、进程启动语句、子程序调用语句、顺序描述语句和进程跳出语句等。PROCESS组成:(1)进程说明部分主要定义一些局部量,可包括数据类型、常数、属性、子程序等。注意:在进程说明部分中不允许定义信号和共享变量。(3)敏感信号参数表列出用于启动本进程的信号名。河海大学常州校区河海大学常州校区第三讲VHDL并发语句11/23第三讲VHDL并发语句11/23(1)同一结构体中的进程之间是并行运行的,但同一进程中的逻辑描述语句则是顺序运行的。进程设计要点:(2)进程的激活必须由敏感信号表中定义的任一敏感信号的变化来启动。(3)结构体中多个进程能并行同步运行的原因是进程之间的通信是通过传递信号和共享变量值来实现的。(4)进程是重要的建模工具。河海大学常州校区河海大学常州校区第三讲VHDL并发语句12/23第三讲VHDL并发语句12/233.3块语句结构(BLOCK)语句格式:块标号:BLOCK[(块保护表达式)]接口说明类属说明BEGIN并行语句ENDBLOCK块标号;语句格式:块标号:BLOCK[(块保护表达式)]接口说明类属说明BEGIN并行语句ENDBLOCK块标号;河...