资源描述:
《东华大学可编程asc技术报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《可编程ASIC技术》课程作业2014姓名:陈志豪学号:120900812班级:自动12031.举例说明阻塞赋值和非阻塞赋值有什么木质的区别?非阻塞赋值modulenon_block(c,b,a,clk);outputc,b;inputclk9a;regc,b;always@(posedgeelk)beginb<=a;c<=b;endendmodule阻塞赋值moduleblock(c,b,a,clk);outputc,b;inputclk,a;regc,b;always@(posedgeelk)beginb=a;c=b;endendmodu
2、leName:elka-k*b非阻塞赋值仿真波形图Name:占100卩nsnAelka200Ons300.0ns400.0ns-<3^b阻塞赋值仿真波形图由此可见阻塞赋值是并行赋值,非阻塞赋值是随机的。2.用持续赋值语句描述一个4选1数据选择器。4选1的数据选择器程序:moduIemux4_1(out,in1Fin2fin3fin4rsell,sel2);inputin1,in2,in3,in4;outputout;inputsell,sel2;assignout=se11?(seI2?in4:in3):(seI2?in2:in1);endm
3、odule3.设计一个功能和引脚与74138类似的译码器,并仿真。译码器程序:moduleencoder(out,in,en);output[7:0]out;/*定义八位一进制码输出口*/input[2:0]in;/*定义二位一进制码输入口*/input[2:0]en;/*三个使能端*/reg[7:0]out;always@(inoren)beginif(en==3,b100)case(in)3'dO:out=8Tb11111110;3,d1out二8'b11111101;3'd2out二8'b11111011;3fd3out二8'b1111
4、0111;3'd4out二8'b11101111;3fd5out二8'b11011111;3'd6out=8,b10111111;3'd7out二8'b01111111;endcaseelseout=8,b11111111;endendmoduleSimulationWaveformsSiaul&tionmodeFunction&l鸟MasterTimeBar:16.25n$Pornter:1.4n$Interval:-14.85n$Start:OpsErxt[OpsAValu^)PS20.0ns英16.2S16.25ns£>^0□aA[![
5、3]X[6]X[5]X⑹T72]Ar22-a[l]Al1A3La[0]An1clAT■562Airaog3AI°z?:抄7曰yA⑵[247]X〔191】X[223]X[191]-y[7]A-y[6]A111€>10-y[S]Ai"1111-yWAU12-y[3]A1!13⑵A14-y[l]AC>15Ly[O]A6、端*/inputin,reset,set,elk;/*输入信号、清零端、置数端、时钟信号*/reg[3:0]out;reg[3:0]md;/*置数寄存器*/always®(posedgeelk)beginbeginmd=4fb1101;end/*这里预置数为1101,可以根据需要更改*/if(reset)beginout<=0;endelsebeginif(set)beginout<=md;end/*置数信号为1,置数*/elsebeginout<={out,in};endendendmodule▼CMasterTmeBar:1625m彳Po
7、inter180p$Interval・16・07nsStart:Er>d:kYa!f10.0ns■Name16.25、1^0elkA111bD^linA1参2SoutA[0:[oj-的resetA11+1^8setA0►AI5.设计一个上升沿触发的可预置、可清零16进制计数器,并仿真。如果要改为10进制计数器,应对该设计做哪些修改?moduIecounter_16(Q,en,cIock,cIear,S);output[3:0]Q;input[3:0]S;inputen,clock,clear;reg[3:0]Q;always@(posedge
8、cIock)beginif(clear=0)beginQ〈二4'bOOOO:endeIseif(en==1)beginQ<=S;endelsebeginQ〈二Q+1