关于FPGA与SOPC设计教程——DE2实践几个练习题答案.doc

关于FPGA与SOPC设计教程——DE2实践几个练习题答案.doc

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共26页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关于FPGA与SOPC设计教程——DE2实践几个练习题答案

实验七 有限状态机 实验原理: 本实验“移动速度可控的HELLO的自动循环显示”通过状态机的不同状态来确定显示的速度可控。实验中用到的有限状态机含有一组具有“记忆”功能的寄存器,这些寄存器的功能功能是记忆有限状态机的内部状态。此实验的调速是根据外部的控制来影响显示的速度,故此状态机为mealy型有限状态机。通过外部的按键key来控制不同的工作状态,再通过不同状态来判断现实的速度。 状态转移图 实验功能: 当按下键盘key1时,移动速度增加一倍;当按下key2时,移动速度减小一半。实验中通过两位的存储空间来定义两个按键。 实验源代码: module Hello(clk,clr,key,HEX0,HEX1,HEX2,HEX3,HEX4,HEX5,HEX6,HEX7); input clk,clr; input[1:0]key; output[6:0] HEX0,HEX1,HEX2,HEX3,HEX4,HEX5,HEX6,HEX7; reg[6:0] HEX0,HEX1,HEX2,HEX3,HEX4,HEX5,HEX6,HEX7; reg[2:0] counter; parameter H=7b0001001,E=7b0000110,L=7b1000111,O=7b1000000,k=7b1111111; parameter s0=2b00,s1=2b01, s2=2b10,s3=2b11; always @(posedge clk or posedge clr) if(clr) counter=0; else begin case(key) s0: counter=counter; s1: counter=(counter+1)%8; s2: counter=(counter+2)%8; s3: counter=(counter-1+8)%8; default: counter=counter; endcase end always@(posedge clk or posedge clr) if(clr) begin HEX0=O;HEX1=L;HEX2=L;HEX3=E;HEX4=H;HEX5=k;HEX6=k;HEX7=k; end else begin case(counter)// 3b000: begin HEX0=O;HEX1=L;HEX2=L;HEX3=E;HEX4=H;HEX5=k;HEX6=k;HEX7=k;end 3b001: begin HEX0=k;HEX1=O;HEX2=L;HEX3=L;HEX4=E;HEX5=H;HEX6=k;HEX7=k;end 3b010:begin HEX0=k;HEX1=k;HEX2=O;HEX3=L;HEX4=L;HEX5=E;HEX6=H;HEX7=k;end 3b011:begin HEX0=k;HEX1=k;HEX2=k;HEX3=O;HEX4=L;HEX5=L;HEX6=E;HEX7=H;end 3b100:begin HEX0=H;HEX1=k;HEX2=k;HEX3=k;HEX4=O;HEX5=L;HEX6=L;HEX7=E;end 3b101:begin HEX0=E;HEX1=H;HEX2=k;HEX3=k;HEX4=k;HEX5=O;HEX6=L;HEX7=L;end 3b110:begin HEX0=L;HEX1=E;HEX2=H;HEX3=k;HEX4=k;HEX5=k;HEX6=O;HEX7=L;end 3b111:begin HEX0=L;HEX1=L;HEX2=E;HEX3=H;HEX4=k;HEX5=k;HEX6=k;HEX7=O;end default: begin HEX0=k;HEX1=k;HEX2=k;HEX3=k;HEX4=k;HEX5=k;HEX6=k;HEX7=k;end endcase end endmodule 测试代码: `timescale 1ns/1ns module hellotest; reg clk; reg clr; reg[1:0]key; wi

文档评论(0)

bokegood + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档