




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2008,北京师范大学信息科学与技术学院,1CPLD,VHDL语言的描述方式及描述语句,2008,北京师范大学信息科学与技术学院,2CPLD,描述方式,2008,北京师范大学信息科学与技术学院,3CPLD,并行语句BeginALU:BlockALU块Signalqbus:tw32;BeginALU描述语句;EndBlockALU;可使用的信号:ibus,dbus,qbus不可用信号:zbus,ad1,ad2可用信号:ibus,dbus,zbus,ad1不可用信号:qbus,ad2可用信号:ibus,dbus,zbus,ad2不可用信号:qbus,ad1,REG:BlockREG块Signalzbus:tw32;BeginREG1:BlockREG1块Signalad1:tw32;BeginREG1描述语句;EndBlockREG!;REG2:BlockREG2块Signalad2:tw32;BeginREG2描述语句;EndBlockREG!;EndBlockREG;Endcpu_blk;,块语句(BLOCK),2008,北京师范大学信息科学与技术学院,8CPLD,块语句(BLOCK),格式标号:PROCESS(敏感信号表)说明语句;BEGIN顺序语句;ENDPROCESS标号;,进程语句(PROCESS),2008,北京师范大学信息科学与技术学院,9CPLD,特点a与其它进程并发进行b.可使用结构体、实体中所定义的信号;c进程内部的所有语句按顺序执行;d进程的启动敏感信号表(显式)WAIT语句;e进程间的通信通过信号量传递实现;,进程语句(PROCESS),2008,北京师范大学信息科学与技术学院,10CPLD,进程语句(PROCESS),示例:计数器(无敏感信号表)PROCESSBEGINWAITUNTIL(clkeventANDclk=1);if(reset=0)thenqcnt=0000;elsif(clkeventANDclk=1)thenif(c_in=1)thenqcnt=qcnt+1;endif;endif;ENDPROCESS;,2008,北京师范大学信息科学与技术学院,11CPLD,进程语句(PROCESS),示例:计数器(带敏感信号表)PROCESS(clk,reset)BEGINif(reset=0)thenqcnt0);elsif(clkeventANDclk=1)thenif(c_in=1)thenqcnt=qcnt+1;endif;endif;ENDPROCESS;,2008,北京师范大学信息科学与技术学院,12CPLD,并行信号赋值语句,使用范围结构体内,进程之外种类简单信号赋值语句条件信号赋值语句选择信号赋值语句,2008,北京师范大学信息科学与技术学院,13CPLD,简单信号赋值语句,格式:目标信号=表达式;例q=a+b;,2008,北京师范大学信息科学与技术学院,14CPLD,格式:目标信号=表达式1WHEN条件1ELSE表达式2WHEN条件2ELSE.表达式n;,条件信号赋值语句,2008,北京师范大学信息科学与技术学院,15CPLD,条件信号赋值语句,示例4选1逻辑电路ArchitecturertlOFmux4IsSignalsel:std_logic_vector(1downto0);Beginsel=b注意:条件赋值语句不能嵌套,2008,北京师范大学信息科学与技术学院,16CPLD,选择信号赋值语句,格式WITH表达式SELECT目标信号=表达式1WHEN条件1表达式2WHEN条件2.表达式nWHEN条件n;,2008,北京师范大学信息科学与技术学院,17CPLD,选择信号赋值语句,示例4选1逻辑电路ArchitecturebehaveOFmux4IsSignalsel:integer;BeginWithselSelectq=i0Whensel=0i1Whensel=1i2Whensel=2i3Whensel=3xWhenOthers;,sel=0Whena=0ANDb=0Else1Whena=0ANDb=1Else2Whena=1ANDb=0Else3;Endbehave;,2008,北京师范大学信息科学与技术学院,18CPLD,元件说明语句(COMPONENT),元件含义:已设计好的一个实体称为元件语句格式:COMPONENT元件名PORT(元件端口);ENDCOMPONENT;,2008,北京师范大学信息科学与技术学院,19CPLD,元件例化,含义调用元件格式例化名:元件名PORTMAP(端口表);端口表映射方法采用位置、名称对应的方法实现信号的传递;使用条件已在使用元件或元件例化语句之前设计完成了该元件实体;该元件已存入库中;,2008,北京师范大学信息科学与技术学院,20CPLD,元件例化,示例用已设计完成的2输入与门来实现4输入与门结构示意图逻辑表达式c=a*b;q=m1*m2=in1*in2*in3*in4;,2008,北京师范大学信息科学与技术学院,21CPLD,元件例化,Entityand2IsPort(a,b:INbit;c:OUTbit);Endand2;ArchitecturebehaveOfand2IsBeginc=aANDb;Endbehave;,Entityand4IsPort(in1,in2,in3,in4:INbit;q:OUTbit);Endand4;ArchitecturebehaveOfand4IsComponentand2Port(a,b:INbit;c:OUTbit);EndComponent;Signalm1,m2:bit;Beginu0:and2PortMap(in1,in2,m1);u1:and2PortMap(in3,in4,m2);u2:and2PortMap(m1,m2,q);Endbehave;,2008,北京师范大学信息科学与技术学院,22CPLD,生成语句(GENERATE),作用描述规则结构,复制同一元件或单元格式a标号:FOR循环变量IN取值范围GENERATE并行语句;ENDGENERATE标号;格式b标号:IF条件GENERATE并行语句;ENDGENERATE标号;,2008,北京师范大学信息科学与技术学院,23CPLD,生成语句(GENERATE),例设计1个同步4D触发器(1)设计1个D触发器实体EntitydffIsPort(a,clk:Inbit;b:Outbit);Enddff;ArchitecturertlOfdffIsBeginProcess(clk)BeginIf(clkeventANDclk=1)thenb0ANDi/=(m-1))Generateu:dffPortMap(x(i-1),clk,x(i);EndGeneratebit23;bit4:ifi=(m-1)Generateu:dffPortMap(x(i-1),clk,q);EndGeneratebit4;EndGenerategen;Ends_4;,2008,北京师范大学信息科学与技术学院,27CPLD,并行过程调用,语句位置:结构体内,进程之外种类:过程PROCEDURE调用函数FUNCTION调用,2008,北京师范大学信息科学与技术学院,28CPLD,过程PROCEDURE,格式PROCEDURE过程名(输入、输出参数表)IS说明语句;(变量定义)BEGIN顺序语句;END过程名;,2008,北京师范大学信息科学与技术学院,29CPLD,过程PROCEDURE,示例将位矢量转化整数(二进制转化为十进制)算法设z为二进制数,表示为znzn-1.z1z0,q为相应的十进制数,则q=2nzn+2n-1zn-1+.+21z1+20z0,Procedurevector_to_int(z:Instd_logic_vector;x:OutBoolean;q:Inoutinteger)IsBeginq:=0;x:=true;ForiinzRangeLoopq:=q*2;If(z(i)=1)thenq:=q+1;elsif(z(i)/=0)thenx:=false;endif;EndLoop;Endvector_to_int;,2008,北京师范大学信息科学与技术学院,30CPLD,过程调用,要求i在被调用的过程名后面必须有输入、输出参数表;ii过程调用的返回值通过输出参数带回;例调用转换过程将位矢量转换为整数Architecture.Signald:bit_vector;Signalq_out:Integer;Beginvector_to_int(d,x,q);q_outb)thentmp:=a;elsetmp:=b;endif;Returntmp;Endbp;,2008,北京师范大学信息科学与技术学院,33CPLD,函数调用,要求i在结构体语句中直接调用;ii返回值不通过参数表带回;(通过函数自身带回),2008,北京师范大学信息科学与技术学院,34CPLD,变量赋值语句,格式变量名:=表达式;注意a变量的说明和赋值限定在顺序执行语句的区域内,即只能在进程、过程和函数中;b变量赋值无时间特性,立即实现;,2008,北京师范大学信息科学与技术学院,35CPLD,变量赋值语句,示例2选1电路逻辑表达式sel=1时,q=d0;sel=0时,q=d1;q=sel*d0+/sel*d1;结构示意图,2008,北京师范大学信息科学与技术学院,36CPLD,变量赋值语句,VHDL描述EntitymuxIsPort(d0,d1,sel:InBit;q:OutBit);Endmux;,ArchitectureconnectOfmuxIsBeginProcess(d0,d1,sel)Variablet1,t2:Bit;Begint1:=d0Andsel;t2:=d1And(Notsel);q=t1Ort2;EndProcess;Endconnect;,2008,北京师范大学信息科学与技术学院,37CPLD,IF语句,格式IF条件表达式1THEN顺序语句;ELSIF条件表达式2THEN顺序语句;ELSE顺序语句;ENDIF;,2008,北京师范大学信息科学与技术学院,38CPLD,IF语句,示例设计实现4选1开关结构示意图真值表,2008,北京师范大学信息科学与技术学院,39CPLD,IF语句,VHDL描述Entitymux4IsPort(d0,d1,d2,d3:Inbit;sel:Inbit_vector(1downto0);q:Outbit);Endmux4;Architecturemux4Ofmux4IsBegin,Process(d0,d1,d2,d3,sel)Ifsel=00thenq=d0;elsifsel=01thenq=d1;elsifsel=10thenq顺序语句2;.WHEN表达式值n=顺序语句n;ENDCASE;,2008,北京师范大学信息科学与技术学院,41CPLD,CASE语句,示例设计实现4选1开关结构示意图同IF语句示例VHDL描述Entity.同IF语句示例End.ArchitecturebehaveOfmux4Is,BeginProcess(d0,d1,d2,d3,sel)BeginCaseselIsWhen00=qqqqnull;EndCase;EndProcess;Endbehave;,2008,北京师范大学信息科学与技术学院,42CPLD,CASE与IF语句的区别,IF语句中顺序判断条件;CASE语句中各表达式值并列,没有顺序;,2008,北京师范大学信息科学与技术学院,43CPLD,LOOP语句,FOR循环格式标号:FOR循环变量IN范围LOOP顺序语句;ENDLOOP标号;功能当循环变量在范围内时,执行顺序语句,否则跳出WHILE循环格式标号:WHILE条件LOOP顺序语句;ENDLOOP标号;功能若条件为TRUE,则进入循环;条件为FALSE,跳出循环,2008,北京师范大学信息科学与技术学院,44CPLD,LOOP语句,示例设计奇偶校验电路当1Byte数据中有偶数个1时,输出0;奇数个1时,输出1实现方法按位异或q=0d(0)d(1)d(2)d(3)d(4)d(5)d(6)d(7)结构示意图,2008,北京师范大学信息科学与技术学院,45CPLD,FOR循环,VHDL描述Entityparity_checkIsPort(d:Instd_logic_vector(7downto0);q:Outstd_logic);Endparity_check;,ArchitecturertlOfparity_checkIsBeginProcess(d)Variabletmp:std_logic;Begintmp:=0;ForiIn0to7Looptmp:=tmpXORd(i);EndLoop;q=tmp;EndProcess;Endrtl;,2008,北
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业转型升级与技术创新路径
- 工业自动化技术进步与产业发展分析报告
- 工业自动化技术发展趋势及实施方案
- 工业遗产改造为旅游景区的成功案例分析
- 工作场所卫生安全标准解读与实施
- 工业领域新能源技术的推广与应用
- 工业风办公空间设计案例分享
- 工作场合的表达艺术
- 工程教育在学术研究与工作实战的关联分析
- 工厂环境中的空调系统配置
- 国家开放大学电大《机电一体化系统》机考形考任务1及2题库答案
- 真空系统的设计计算课件
- 潘祖仁版高分子化学(第五版)课后习题答案.24401
- 搭桥手术配合改
- 《爱的教育》课外阅读指导课课件
- 10以内序数(课堂)课件
- 2021年安徽省农业信贷融资担保有限公司招聘笔试试题及答案解析
- 精选芭蕾舞男女演员之间的潜规则汇总
- Q∕SY 1770.6-2014 连续管常规修井作业规程 第6部分:速度管柱作业
- 大型污泥脱水离心机机组安装及调试工法
- 国家重点保护野生植物(Ⅱ级)采集申请表
评论
0/150
提交评论