- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
数字电路的FPGA设计与实现基础篇
杨凡,邮箱lvfanzai@MSN:lvfanzai@
大家给点意见~~有助于我进一步的学习!谢谢!
2、基础篇:
2.1组合逻辑:
2.1.1三态门(总线)
三态门有:bufif0,bufif1,notif0,notif1。
总线是运算部件之间数据流通的公共通道,在硬线逻辑构成的运算电路
中只要电路的规模允许,可以比较自由地确定总线的宽度,可以提高数
据流通的速度。
2.1.2异或门xorA1(T,A,B);
2.1.3编译码器:利用case进行编程(38译码器和83优先解码器的
编程比较简单仿真在这里就就不做说明)
2.1.4全加器:(门级结构实现,数据流,过程语句)
数据流描述的4位加法器
Moduleadder4(a,b,cin,,cout,s);
Input[3:0]a,b;Inputcin;Outputc;Output[3:0]s;
Reg[3;0]s;
Assign{c,s}=a+b+cin;//利用位拼接实现结果的进位
endmodule
2.1.5多位串行进位加法器
多位串行进位加法器虽然简单但是速度较慢,一般使用超前进位加法器
2.1.6数据选择器:(ifelse语句,case语句描述实现)
多位的数据选择器大部分情况下我大部分代码都用case分支选择语句
1
很容易实现,另外还可以利用行为和数据流描述方式简单的组合逻辑
编码也是一样的。
数据流描述的选择器(2选1)
Modulemux21(out,a,b,sel);
Inputa,b,sel;Outputout;Assignout=sel?a:b;endmodule
2.1.7数值比较器(直接比较两个数的大小可以利用上面数据选择器
使用的数据流描述方法来实现);要具体比较出两者的关系利用以下代
码仿真:
modulecmp(A,B,FA,FB,FE);
parameterwidth=9;
input[width:0]A,B;
output[1:0]FA,FB,FE;
assignFA=(AB);//当A大于B时FA输出为1
assignFB=(AB);//当A小于B时FB输出为1
assignFE=(A==B);//当A等于B时FE输出为1
endmodule
仿真产生波形如下
2
2.1.8奇偶校验器(设计并行输入的6位数据对其进行奇偶校验代码
如下)
modulejiou(ji,ou,indata);
input[5:0]indata;outputji,ou;assignji=^indata;//产生奇校验
assignou=~ji;//产生偶校验
endmodule
仿真波形如下
2.2时序逻辑基础
2.2.1触发器(D触发器,基本RS触发器,JK触发器)
D触发器的verilog仿真不带复位端
moduledf(clk,D,Q,QB);
inputclk,D;outputQ,QB;regQ;assignQB=~Q;
always@(posedgeclk)beginQ=D;endendmodule
带复位端的D触发器(异步/同步清零异/同步步置1的D触发器)
moduleDFFr(clk,reset,D,Q,QB);
inp
文档评论(0)