- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
可编程资料讲义
大题全部写代码
1.标识符
value标识符格式reg,数字不能开头变量,可以%_$ 其他的不可以,关键词 reg or 不行,内部有的
2.阻塞非阻塞赋值 =立即赋值,=延时,例子
a=b=c a=1 b=a c=b a=c=b=1
a=1 b=a c=b a=1 b=0 c=0
阻塞赋值和非阻塞赋值的基本区别是:阻塞赋值是顺序执行语句,而非阻塞赋值是并行执行语句。
3.{} 拼接运算符 作用 :不同的数拼在一起
例子:A=3’b101 B=6’b101101 问{A,B[3:1]}=6’b101110
记得数数是从0开始的,A全部,B的 1到3
位宽不够高位补0;位宽过剩裁去高位
1s=10^3ms=10^6us=10^9ns=10^12ps
4.BCD码--B二进制 D十进制 O八进制 H十六进制
2个十六进制为1个字节,8个二进制数为1个字节
例子 (13)10=BCD 考试可能问 (13)8=(?)BCD
转换见书本目录页
5.属于可编程逻辑器件 FPGA CPLD EPLD ARM C51 X86不是
Assign对应wire
Always对应reg
6.注解 行注解// 段注解/*SDSJDKJDSLKDL*/
7.%叫做取余数 13%5=3
/ 叫做整除13/5=2
8.ModelSim仿真工具,用代码生成波形,例子
Always
Begin
#10 clk=0; (#叫做延迟时间单位,单位时间是timescale 10ns/100ps,表示1单位时间=10ns,100ps代表精度,这句意思过了100ns后 clk=0 (clk前200ns是0)又过100ns clk取反) ’
#10 clk=~clk;
End 200NS 100NS 100NS 100NS
Clk
占空比 高电平比整个周期 1/2
这段测试代码的意思是:以ps为单位,0时刻是,A=B=C=D=1,表示四个安全带均没有系上,然后过了10ps,B=0,代表这个安全带系上了;再过了10ps,A=0,代表另一个安全带系上了;再过了10ps,D=0,代表另一个安全带系上了;再过了10ps,C=0,最后一个安全带系上了。然后再过10ps,B=1,这个安全带松开了。最后再过20ps,测试结束。
以上情况已经可以完全模拟电路的工作情况,如果仿真正确,当且仅当A=B=C=D=0的时刻,LED_OUT=0,BUZ_OUT=0,灯灭,蜂鸣器不响;其它情况LED_OUT和BUZ_OUT均为1。Always@(posedge clk) posedge上升沿 negedge下降沿 同步异步看posedge 同步短
If(rstn==1’b0)
指定同步复位时,always的敏感表中仅有时钟沿信号,仅仅当时钟沿采到同步复位的有效电平时,才会在时钟沿到达时刻进行复位操作。
指定异步复位时,只需always的敏感表中加入复位信号的有效沿即可,当复位信号有效沿到达时,无论时钟沿是否有效,复位都会立即发挥其功能。
10.长信号赋值给短信号
例子
A=8’B=3’b001
B=A
B=011(取后几位)
Reg[19:0]A
Reg[9:0]B
B=A,A的低位给B
大题
1.表决器 7人 (不要用卡罗图) 5人3个控制端
两种方法
五人表决器
方法一:数据流
module 5get1(b1,b2,b3,b4,b5,u);
input b1,b2,b3,b4,b5;
output u;
wire[2:0]add_result;
assign add_result=b1+b2+b3+b4+b5;
assign u=add_result=3? 1b1:1b0;
endmodule
七人表决器
方法一
Input[6:0 ]In;
Ouput u;
Always @(in)
If (in[6]+in[5]….+in[0]4)
u=1;b1
Else
Out=1’b0
方法二
Case(In[0]+In[1]+……+In[6])
3’d4:u=1’b1;
3’d5:u=1’b1;
Default:u=0;
Endcase;
2.多路选择器(5选1)
例子:4选1数据选择器
reg F;
always@(P0 or P1 or P2 or P3 or S)
begin
case(S) //用case语句进行选择
2’b00:F=P0; //
文档评论(0)