欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    EDA技术Verilog密码锁文档格式.docx

    • 资源ID:7752192       资源大小:148.81KB        全文页数:14页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    EDA技术Verilog密码锁文档格式.docx

    1、如果密码错误,led0将亮起。图 1 给出了设计的顶层模块。当按下 btn0、 btn1、 btn2中任何一个按钮时,将会产生一个时钟脉冲。当分别按下按钮btn0、btn1、btn2时,锁模块对应的 2 位输入 bn1:0为 “00”、btn0 btnl btn2: “ 01”和“ 10”。输入的密码与拨位开关上设置的密码相比较, 产生图2所示的状态转移图。即使密码输入错误,也必须 完成完整的4位密码输入,才能进入“ fail”状态E4。图1门锁电路的顶层模块图2门锁电路的状态转移图四、 实验目的:熟悉利用HDL代码输入方式进行组合逻辑电路的设计和仿真的流程,掌握 Verilog语言的基本语法

    2、。并通过一个密码锁的 设计把握利用EDA软件(Xilinx ISE 10.1)进行HDL代码输入 方式的电子线路设计与仿真的详细流程,熟悉摩尔状态机。五、 实验内容:1) 利用HDL代码输入方式在Xilinx ISE 10.1平台上实现一个 密码锁设计,可以设定密码并显示,输入密码以解锁;2) 设计密码锁的顶层模块,使用模块实例语句连接前面所设 计的密码锁模块;3) 生成比特流文件下载到开发板上进行验证。六、实验器材(设备、元器件):1) 计算机(安装Xilinx ISE 10.1软件平台);2) BASYS2 FPGA 开发板一套(带 USB-MlniUSB 下载线)。七、实验步骤:1、在X

    3、ilinx ISE 10.1平台中,新建一个工程lock。我们选用 的BASYS2 FPGA 开发板采用的是 Spartan3E XA3S100E芯片和 CPG132封装,设置好器件属性,如图 3所示。 M目:,Project Wizard ” Os, ce hoa凸诧百Select the devi and dgsi flow for the proj ectProperty laaeVLueProduct CategoryAllFamilyAutoffl&tiV* Sparlan3EDeviceXA3S100E TF acka.geCFG132 Speed7 sTop-Level Sour

    4、ce TypeHDLSynthesis TodXJT (VU)L/yrilo) SimulatorISE SimLitor (YHDUVerily) 寸Preferred LanguageVerilog 寸Enabls Enhanced De-si gn Summtry 疋Enable Filt曹arixi哲Display Incr em ent al2More Info Cui cel图3.设置器件属性2、在工程管理区任意位置单击鼠标右键, 在弹出的快捷菜单中选择“New Source”命令,弹出新建源代码对话框,这里我们选择“Verilog Module”类型,输入 Verilog 文件名

    5、“ lock”。ISE会自动创建一个Verilog的模板,并在源代码编辑区打开,接下来的工作就是将代码编写完整。完整代码如下: module lock( input clk, input clr, input 7:0 sw, input 1:0 bn, output reg pass, output reg fail );reg 3:0 pre_s,nex_s;parameter S0=4b0000,S1=4b0001,S2=4b0010,S3=4b0011,S4=4b0100, E1=4b0101,E2=4b0110,E3=4b0111,E4=4b1000;/state registers

    6、always(posedge clk or posedge clr) beginif(clr=1) pre_s=S0;else pre_s=nex_s;end/C1 always(*) begin case(pre_s)S0:if(bn=sw7:6)nex_s=S1; else=E1; S1:if(bn=sw5:4)=S2;=E2; S2:if(bn=sw3:2)=S3;=E3; S3:if(bn=sw1:0)=S4;=E4; S4:E1:E2:E3: E4:6) nex_selse default:endcase/C2 always(*) begin if(pre_s=S4) pass=1;

    7、else pass=0;if(pre_s=E4) fail=1;fail=0;endmodule3、建立分频模块“ clkdiv ”,过程如上,代码如下:module clkdiv(input mclk,input clr, output clk190 );reg 24:0 q;always(posedge mclk or posedge clr) beginif(clr=1)q=0;=q+1;assign clk190=q17;/190Hz4、 建立时钟脉冲模块“ clock_pulse”,代码如下:module clock_pulse(input inp,input cclk,input

    8、clr, output outp );reg delay1;reg delay2;reg delay3; always(posedge clr or posedge cclk) beginbegindelay1delay2delay3end elsebegin delay1=inp; delay2=delay1; delay3=delay2;assign outp=delay1&delay2&delay3;5、 建立七段数码管复用模块“ hex7seg,代码如下:module hex7seg(input 15:0 x,input clk,input clr,output reg 6:0 a_t

    9、o_g,output reg 3:0 an,output dp);wire 1:0 s;0 digit;wire 3:0 aen;reg 19:0 clkdiv;assign dp=1;assign s=clkdiv19:18;assign aen3=1;assign aen2=1;assign aen1=1;assign aen0=1;/四位四选一always(*)case(s)0:digit=x3:0;1:digit=x7:4;2:digit=x11:8;3:digit=x15:12;endcase /数码管显示case(digit)a_to_g=7b0000001;b1001111;b0

    10、010010;b0000110;4:b1001100;5:b0100100;6:b0100000;7:b0001111;8:b0000000;9:b0000100;hA:b0001000;hB:b1100000;hC:b0110001;hD:b1000010;hE:b0110000;hF:b0111000;default: endcase /digit select always(*) begin an=4b1111;if(aens=1) ans=0;end /时钟分频器 always(posedge clk or posedge clr) beginif(clr=1) clkdivclkdi

    11、v User Coiistraints【t Synthesi re XST-&丄环1 ement Dsi gn-J jGentrate Progra/Mriin Filefi Configure Target Device图4.综合进程与源程序结构综合完成以后是实现,实现主要分为三个步骤:翻译逻辑网表、 映射到器件单元和布局布线,如图4所示。注意的是,在实现前还必 须为模块中的输入/输出信号添加引脚约束,即添加 UCF文件。开发 板BASYS2的UCF文件可以在其网站上 上下载,当 然也可以自己编辑UCF文件。实验所用的UCF文件如图5所示。图5. BASYS2开发板所需的UCF文件6、器件配

    12、置。首先生成可以下载到硬件中的二进制比特文件。双 击图10中的“ Gen erate Programmi ng File ”的选线,ISE就会为设计 生成相应的二进制比特文件。BASYS2开发板提供了非常方便的JTAG配置方案,使用 USB-miniUSB线缆结合Digilent Adept软件实现FPGA的配置,配置 界面如图6所示。这里我们对FPGA进行配置,配置成功状态栏会显 示“Programming Successful信息,如图6所示。然后可在器件上验 证设计。图6. Digilent Adept 界面与配置八、实验数据及结果分析:CT图7.设定密码为2012BASYS abeyo

    13、nd theoryE抵Lfe 齟 S谡1严IGiLENT icjooco& :侬图8.输入密码0000, led0亮,输入错误j&TiOOrtHlc:UCLK Q Q Q GrtXfiSSrJr a,Iu-m-bvWs1 DIGILENT icdooo J2THEOIg p 艰雜1脸怎Jte鼬口 I !图8.输入密码2012, led1亮,输入正确九、实验结论:由上面实验结果可得,实验仿真结果证明了设计的正确性, 该设计是合理的,能够满足实验所需的,完成了题设要求。十、总结及心得体会:此次实验结合了前几次的学习的成果,将七段数码管复用的部分 结合进来,并通过分频电路和时钟脉冲电路来实现通过按键对时序系 统的输入,而密码锁本身即是时序电路摩尔机的利用。至此,我们完 整的梳理了一遍这个学期的所学, 组合电路设计,时序电路设计合为 一体,更能深刻的理解 Verilog语言和EDA,收获良多。报告评分:指导教师签字:


    注意事项

    本文(EDA技术Verilog密码锁文档格式.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开