网站大量收购独家精品文档,联系QQ:2885784924

课件:EDA—数字系统设计.ppt

  1. 1、本文档共201页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 进程行为的说明区定义该进程所需要的局部数据环境、它 包括子程序说明、属性说明和变量说明等 在这里只给出变量说明的一个例子,变量说明的一般形式为 VARIABLE 定义变量表 : 类型说明:= 初始值 ; 下面进程说明区中说明了变量count,进程也可对变量赋值。 PROCESS VARIABLE count:INTEGER:= 0; BEGIN count:= count+1; WAIT FOR 1000 ns; END PROCESS; * 整个实体模块中的每个进程行为语句,可以在任何时候被 激活,所有被激活的进程是并行执行的 下面举一个三八通用译码器程序的例子,说明进程语句 如何工作。 LIBRARY ieee; USE ieee.std_logic_1164.all; USE ieee.std_logic_arith.all; ENTITY decoder IS PORT(sel : IN UNSIGNED(2 DOWNTO 0); dout : OUT UNSIGNED(7 DOWNTO 0)); END decoder; ARCHITECTURE decoder_arc OF decoder IS SIGNAL sel1 :INTEGER; BEGIN PROCESS(sel) BEGIN sel1 = CONV_INTEGER(sel); CASE sel1 IS WHEN 0 = dout = (‘0’,’0’,’0’,’0’,’0’,’0’,’0’,’1’) AFTER 5 ns; * WHEN 1 = dout = (‘0’,’0’,’0’,’0’,’0’,’0’,’1’,’0’) AFTER 5 ns; WHEN 2 = dout = (‘0’,’0’,’0’,’0’,’0’,’1’,’0’,’0’) AFTER 5 ns; WHEN 3 = dout = (‘0’,’0’,’0’,’0’,’1’,’0’,’0’,’0’) AFTER 5 ns; WHEN 4 = dout = (‘0’,’0’,’0’,’1’,’0’,’0’,’0’,’0’) AFTER 5 ns; WHEN 5 = dout = (‘0’,’0’,’1’,’0’,’0’,’0’,’0’,’0’) AFTER 5 ns; WHEN 6 = dout = (‘0’,’1’,’0’,’0’,’0’,’0’,’0’,’0’) AFTER 5 ns; WHEN OTHERS = dout = (‘1’,’0’,’0’,’0’,’0’,’0’,’0’,’0’) AFTER 5 ns; END CASE; END PROCESS; END decoder_arc; 此例不像上例那样等待时间到1000ns以后再激活进程,而 是只要sel的值一发生改变就激活进程,从第一句执行直到满足 条件后再被挂起。 * 下例是另一种激活进程的方式: ENTITY reg IS PORT(d,clk:IN BIT; q1,q2:OUT BIT); END reg; ARCHITECTURE reg_arc OF reg IS BEGIN PROCESS BEGIN WAIT UNTIL clk= ‘1’; q1 = d; END PROCESS; PROCESS BEGIN WAIT UNTIL clk= ‘0’; q2 = d; END PRO

文档评论(0)

iuad + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档