欢迎来到天天文库
浏览记录
ID:41848220
大小:734.60 KB
页数:12页
时间:2019-09-03
《EDA设计基本时序电路》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基本时序电路一、触发器及其应用实例2・1对触发器及时钟信号的VHDL描述一、设计任务:设计一个D触发器。二、算法设计:用if语句进行描述。图3・1D触发器端口图三、源程序dffl.vhdlibraryieee;useieee.std_logic_1164.all;entitydfflisport(d,clk:instd_logic;q:outstd_logic);end;architecturertlofdfflissignalq_tcmp:std_logic;beginprocess(clk)begin讦clk'cvcntandclk='rthen-木句是对触发时钟进行
2、描述时,用得最多的一种语句。q_tcmp<=d;endif;q<=q_temp;endprocess;endrtl;-if语句中,用信号属性even来判断时钟触发事件是否发生,用clk=l*^定触发时钟的上沿为有效触发沿。语句“讦ckeventandclk=Tthen”的含义是:若有触发时钟信号产生且当触发时钟的上沿出现时,容许触发器读入输入数据。如果上述事件没有发生,则不容许触发器读入输入数据,而读入输入数据的规则由后续语句规定。--若规定触发器是下沿触发,则触发时钟描述语句为“讦clk'eventandclk=Othen”。-图3—2是D触发器的仿真波形图。由图可以看
3、出,触发器的默认起始状态值为O,在第一个触发脉冲的上沿出现时刻,电路系统把数据T写入触发器。在第二个触发脉冲的上沿出现时刻,电路系统仍把数据T写入触发器,但由于触发器原状态为T,写入数据仍为T,所以触发器保持T状态不变。在第三个触发脉冲的上沿出现时刻,输入数据变为电路系统把数据。写入触发器。以后尽管冇触发脉冲的上沿出现,但是输入值为O不变,所以触发器保持O状态。图3・2D触发器的仿真波形图实例2-2锁存器一、设计任务:设计一个锁存器。二、算法设计:用条件涵盖不完整的if语句实现锁存器。三、源程序latch.vhdlibraryieee;useieee.stdlogic11
4、64.all;7kzdinentitylatchisport(kz,din:instd_logic;q:outstdjogic);end;图3J0锁存器端口图architectureaoflatchissignalq_temp:std_Iogic;beginpl:process(kz,din)beginifkz=,lrthenq_temp<=din;endif;q<=q_temp;endprocess;end;四、源程序说明I.用条件涵盖不完整的if语句可以实现锁存器。这个结果提示我们在川if条件语句进行设计时,要明确设计的任务是什么,若设计的不是锁存器,则必须使条件涵盖
5、完整,以避免错误引入锁存器。2.若木例描述的锁存器屮的控制信号kz是一个界步信号,而J1输入信号较高,就有可能在输岀形成冒险干扰,应注意克服。3.图3-11是锁存器止常工作时的仿真波形图。Name:Value9Q:一「1Tin75.0ns50.0ns00025.0ns图3-11锁存器正常工作时的仿真波形图二、计数器及其应用实例2・3二进制(M=16)计数器一、设计任务:设计一个二进制(M=16)计数器。一般把计数器的模值M=2状态编码为自然二进制数的计数器简称为二进制计数器。二、算法设计:用讦语句描述二进制(M=16)计数器。三、源程序count16.vhdlibrar
6、yieee;useiccc.std_logic_1164.all;useieee.std_logic_unsigned.all;elk———y
7、3⑷图3-28二进制(M二⑹计数器端口entitycount16isport(clk:inbit;oc:outbit;y:outintegerrange0to15);end;architectureaofcount16issignalq:integerrange0to15;beginprocess(clk)beginif(clkeventandelk二T)thenq<=q+1;endif;ifq=15thenoc<='0';els
8、eocv=T;endif;y<=q;endprocess;end;■■程序屮oc是计数器进位输出端。用整数数据类型设计二进制计数器是很方便的。若要—oc—y0(3..0]c)r——yi[3•⑼图3・35BCD码60进同步计数器端口图一、设计任务:设计一个BCD码60进同步计数器。个位显示0〜9,十位显示0〜5,均用4位二进制数表示。二、算法设计:个位计数器的模M=l(),I-位计数器的模M=6o用if语旬描述该计数器。三、源程序count6_10tb.vhdlibraryiccc;useieee.std_logic_1164.
此文档下载收益归作者所有