VHDL与数字集成电路设计VHDL1-4.ppt

上传人:b****2 文档编号:2644005 上传时间:2022-11-04 格式:PPT 页数:51 大小:751KB
下载 相关 举报
VHDL与数字集成电路设计VHDL1-4.ppt_第1页
第1页 / 共51页
VHDL与数字集成电路设计VHDL1-4.ppt_第2页
第2页 / 共51页
VHDL与数字集成电路设计VHDL1-4.ppt_第3页
第3页 / 共51页
VHDL与数字集成电路设计VHDL1-4.ppt_第4页
第4页 / 共51页
VHDL与数字集成电路设计VHDL1-4.ppt_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

VHDL与数字集成电路设计VHDL1-4.ppt

《VHDL与数字集成电路设计VHDL1-4.ppt》由会员分享,可在线阅读,更多相关《VHDL与数字集成电路设计VHDL1-4.ppt(51页珍藏版)》请在冰豆网上搜索。

VHDL与数字集成电路设计VHDL1-4.ppt

n1.11.1程序的结构程序的结构librarylibrary、entityentity、portportn1.21.2设计的设计的表达表达architecturearchitecture、signalsignaln1.31.3结构结构表达表达与运算表达与运算表达n1.41.4数字系统的数字系统的进程进程表达表达processprocessn第一章第一章VHDLVHDL对电路设计的基本描述对电路设计的基本描述VHDL与数字集成电路设计与数字集成电路设计进程语句的格式进程语句的格式进程名称:

进程名称:

processprocess(敏感量表)(敏感量表)变量设置变量设置beginbegin顺序运算语句(软件程序);顺序运算语句(软件程序);endprocessendprocess;1.41.4数字系统的数字系统的进程进程表达表达processprocess进程的结构特点进程的结构特点1.41.4数字系统的数字系统的进程进程表达表达processprocess进程运算的特点进程运算的特点将若干运算语句的汇总为一条并行语句,方便于将若干运算语句的汇总为一条并行语句,方便于程序设计理解和仿真控制管理,适合对系统进行行程序设计理解和仿真控制管理,适合对系统进行行为描述;为描述;内部运算使用软件程序表达,不含硬件细节,可内部运算使用软件程序表达,不含硬件细节,可以实现复杂系统的仿真,但与综合通常没有直接对以实现复杂系统的仿真,但与综合通常没有直接对应关系;可用于表达与硬件完全无关的抽象运算,应关系;可用于表达与硬件完全无关的抽象运算,适合描述虚拟测试环境及软硬件协同过程。

适合描述虚拟测试环境及软硬件协同过程。

1.41.4数字系统的数字系统的进程进程表达表达processprocess进程运算的特点:

进程运算的特点:

敏感信号设置敏感信号设置敏感信号用于控制进程的仿真执行;敏感信号用于控制进程的仿真执行;利用敏感表可以对进程进行局部变量参与的仿利用敏感表可以对进程进行局部变量参与的仿真调试,提高仿真效率;真调试,提高仿真效率;当敏感表中信号少于进程中使用的信号时,仿当敏感表中信号少于进程中使用的信号时,仿真结果与实际电路表现会有所不同;通常要求两真结果与实际电路表现会有所不同;通常要求两者一致。

者一致。

敏感信号设置对电路综合不产生影响。

敏感信号设置对电路综合不产生影响。

1.41.4数字系统的数字系统的进程进程表达表达processprocessprocess(a,b,c)begind=aandb;f=cord;endprocess;process(a,b,c,d)begind=aandb;f=cord;endprocess;进程运算的特点:

进程运算的特点:

敏感信号设置敏感信号设置1.41.4数字系统的数字系统的进程进程表达表达processprocess进程运算的特点:

进程运算的特点:

敏感信号设置敏感信号设置1.41.4数字系统的数字系统的进程进程表达表达processprocess进程中的数据对象和运算关系进程中的数据对象和运算关系信号信号signal:

signal:

硬件连接概念,不能在进程中定义;负责界面信息交流;硬件连接概念,不能在进程中定义;负责界面信息交流;变量变量variablevariable:

表达软件数据,不能在进程外存在;负责运算细节。

表达软件数据,不能在进程外存在;负责运算细节。

1.41.4数字系统的数字系统的进程进程表达表达processprocess进程的仿真运算特点进程的仿真运算特点1.41.4数字系统的数字系统的进程进程表达表达processprocess并行赋值与顺序赋值并行赋值与顺序赋值1.41.4数字系统的数字系统的进程进程表达表达processprocess进程内的信号特点进程内的信号特点进程语句内进程语句内信号状态信号状态保持不变(硬件特点),保持不变(硬件特点),但但信号存储值信号存储值可以随时变动(软件特点);可以随时变动(软件特点);进程内可以使用信号状态,但不能使用信号进程内可以使用信号状态,但不能使用信号存储值;存储值;进程内允许同一信号出现在同一赋值号两边、进程内允许同一信号出现在同一赋值号两边、允许对信号赋常数值;允许对信号赋常数值;进程内允许对同一信号进行多次赋值,但只进程内允许对同一信号进行多次赋值,但只有最后一次赋值才有意义;有最后一次赋值才有意义;1.41.4数字系统的数字系统的进程进程表达表达processprocess进程内的变量特点进程内的变量特点进程语句内变量以存储值表现;进程语句内变量以存储值表现;变量值可以在进程中使用,也可以通过变量变量值可以在进程中使用,也可以通过变量赋值语句改变;赋值语句改变;变量表达软件数据,不一定具有硬件意义;变量表达软件数据,不一定具有硬件意义;进程内的变量值不可能存在于进程之外,当进程内的变量值不可能存在于进程之外,当进程结束时(进程结束时(end),变量值必定消失;,变量值必定消失;对于需要与信号对应的变量值,一定要在进对于需要与信号对应的变量值,一定要在进程结束前赋值给信号值。

程结束前赋值给信号值。

1.41.4数字系统的数字系统的进程进程表达表达processprocessprocess(a)-a=0001variablec:

signed(3downto0);beginc:

=signed(a);x=c;-x=0001c:

=c+1;y=c;-y=0010c:

=c+1;z=c;-z=0011c:

=c+1;x=c;-x=0100endprocess;endbeh;进程中的顺序赋值进程中的顺序赋值:

变量赋值变量赋值1.41.4数字系统的数字系统的进程进程表达表达processprocess-signalc=0000process(a)begin-a=0001c=signed(a);x=c;c=c+1;y=c;c=c+1;z=c;c=c+1;x=c;endprocess;进程中的顺序赋值:

信号赋值进程中的顺序赋值:

信号赋值1.41.4数字系统的数字系统的进程进程表达表达processprocess进程本身是一条并行语句,代表一个硬件模块,进程本身是一条并行语句,代表一个硬件模块,通过信号赋值为特定外部信号提供驱动;通过信号赋值为特定外部信号提供驱动;进程内部语句全为软件语句,不具备硬件细节,进程内部语句全为软件语句,不具备硬件细节,不具有综合约束意义;不具有综合约束意义;进程的综合通过进出进程的信号表现的输入输出进程的综合通过进出进程的信号表现的输入输出关系体现。

关系体现。

进程的综合进程的综合1.41.4数字系统的数字系统的进程进程表达表达processprocess进程内的变量特点进程内的变量特点进程中的变量除了可以用于表达信号运算值外,还可进程中的变量除了可以用于表达信号运算值外,还可以用于表达文件处理中的抽象概念,用于虚拟测试环境以用于表达文件处理中的抽象概念,用于虚拟测试环境的描述或表达软硬件协同设计的概念;的描述或表达软硬件协同设计的概念;例如,在采用例如,在采用textio资源库进行设计时,可以将变量设资源库进行设计时,可以将变量设置为数据行置为数据行line,这种表达可以非常方便地将硬件信号与,这种表达可以非常方便地将硬件信号与软件数据进行交互传递软件数据进行交互传递:

1.41.4数字系统的数字系统的进程进程表达表达processprocess进程对抽象数据的使用进程对抽象数据的使用在资源库中对软件在资源库中对软件文件文件进行设置:

内含若干数据行进行设置:

内含若干数据行fileexcite:

textisin“excite”;-指定输入文件指定输入文件fileresults:

textisout“results”;-指定输出文件指定输出文件在进程中设置变量表达在进程中设置变量表达数据行数据行:

内含若干独立数据:

内含若干独立数据variableli,lo:

line;-使用变量表达抽象概念使用变量表达抽象概念:

数据行数据行1.41.4数字系统的数字系统的进程进程表达表达processprocessreadline(excite,li);-从输入文件中读入一行数据到从输入文件中读入一行数据到liread(li,clk);-从行从行li中读入数据赋值给信号中读入数据赋值给信号clkread(li,ex);-从行从行li中读入数据赋值给信号中读入数据赋值给信号exwrite(lo,now,left,8);-将当前时间写入行将当前时间写入行lowrite(lo,resp);-将信号将信号resp写入行写入行lowriteline(results,lo);-将行将行lo写入到输出文件中写入到输出文件中进程对抽象数据的使用进程对抽象数据的使用使用特殊的函数进行变量或信号的赋值:

顺序读出或写入使用特殊的函数进行变量或信号的赋值:

顺序读出或写入1.41.4数字系统的数字系统的进程进程表达表达processprocess进程语句的对比:

进程语句的对比:

always(敏感条件敏感条件)begin顺序语句顺序语句end1.41.4数字系统的数字系统的进程进程表达表达processprocessprocess(敏感量表)(敏感量表)变量量设置置begin顺序序语句;句;endprocess;VHDLVerilogHDL进程语句的对比:

进程语句的对比:

moduleport设置设置wire设置设置always外赋值外赋值reg设置设置always中赋值中赋值always(敏感条件敏感条件)begin顺序语句顺序语句end1.41.4数字系统的数字系统的进程进程表达表达processprocessentityport设置置architeturesignal设置置process(敏感量表)(敏感量表)variable设置置begin顺序序语句;句;endprocess;VHDLVerilogHDL赋值语句的对比:

赋值语句的对比:

连续赋值语句连续赋值语句always(敏感条件敏感条件)begin非阻塞赋值语句非阻塞赋值语句阻塞赋值语句阻塞赋值语句end1.41.4数字系统的数字系统的进程进程表达表达processprocessarchiteturesignal赋值语句句process(敏感量表)(敏感量表)begin信号信号赋值语句句变量量赋值语句句endprocess;VHDLVerilogHDL连续赋值连续赋值:

独立的并行语句,为信号赋值:

独立的并行语句,为信号赋值assigny=f(a,b,c);非阻塞赋值非阻塞赋值:

always内的赋值,具有信号赋值特点,内的赋值,具有信号赋值特点,所有赋值在子程序结束时才实现所有赋值在子程序结束时才实现y=f(a,b,c);阻塞赋值阻塞赋值:

always内的赋值,具有变量赋值特点,内的赋值,具有变量赋值特点,根据语句排列顺序及时实现根据语句排列顺序及时实现y=f(a,b,c);1.41.4数字系统的数字系统的进程进程表达表达processprocess赋值语句的对比:

赋值语句的对比:

VHDL:

使用使用signal和和variable将硬件连接与数据存储将硬件连接与数据存储概念明确区分,而对信号赋值的控制性则采用进程外的概念明确区分,而对信号赋值的控制性则采用进程外的并行赋值和进程内的顺序赋值进行区分;并行赋值和进程内的顺序赋值进行区分;VerilogHDL:

使用使用wire和和reg将直接赋值对象与受控赋将直接赋值对象与受控赋值对象区分开,而对值对象区分开,而对reg则采用则采用always内的非阻塞赋值内的非阻塞赋值和阻塞赋值区分其是

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 材料科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1