- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基本数字逻辑单元HDL描述
组合逻辑电路的HDL描述
任何复杂的数字系统可以用若干基本组合逻辑单元和时
序逻辑单元组合来实现。
基本逻辑单元一般分为组合逻辑电路和时序逻辑电路两
大类。这两类基本逻辑电路构成和复杂数字系统设计的
基石。
组合逻辑电路的HDL描述
--内容
组合逻辑电路是指输出状态只决定于同一时刻各个输入状
态的组合,而与先前状态无关的逻辑电路称为组合逻辑电
路。组合逻辑电路主要包括
基本逻辑门
编码器
译码器
数据选择器
数据比较器
总线缓冲器
逻辑门的HDL描述
--基本门电路过程分配描述
module g1(o,a,b,c,d);
input a,b,c,d;
output reg o;
always @(a or b or c or d)
begin
o=(~(ab))|(bcd);
end
endmodule
本设计保存在本书配套资源eda_verilog\example6_1 目录下
逻辑门的HDL描述
--基本门电路连续分配描述
module g2(o,a,b,c,d);
input a,b,c,d;
output o;
assign o=(~(ab))|(bcd);
endmodule
逻辑门的HDL描述
--基本门电路门调用描述
module g3(o,a,b,c,d);
input a,b,c,d;
output o;
nand(o1,a,b);
and(o2,b,c,d);
or(o,o1,o2);
endmodule
组合逻辑电路的HDL描述
--编码器HDL描述
将某一信息用一组按一定规律排列的二进制代码描述称
为编码。
典型的有8421码、BCD码等。
在使用HDL语言描述编码器时,通过使用CASE和IF语
句实现对编码器的描述。
编码器HDL描述
--8/3优先编码器描述的例子
module v_priority_encoder_1(sel,code);
input [7:0] sel;
output [2:0] code;
reg [2:0] code;
always @(sel)
begin
if (sel[0]) code = 3b000;
else if (sel[1]) code = 3b001;
else if (sel[2]) code = 3b010;
思考与练习1:优先级的含义?
else if (sel[3]) code = 3b011;
思考与练习2:查看详细描述后的结果,
else if (sel[4]) code = 3‘b100;
分析
else if (sel[5]) code = 3b101;
(提示:长链路带来延迟,性能降低)
else if (sel[6]) code = 3b110;
else if (sel[7]) code = 3b111;
else code = 3bxxx;
end
endmodule 本设计保存在本书配套资源eda_verilog\example6_2 目录下
组合逻辑电路的HDL描述
--编码器HDL描述
译码器设计
译码的过程实际上就是编码过程的逆过程,即将一组按一定规律
排列的二进制数还原为原始的信息。
原创力文档


文档评论(0)