当前位置: 首页 > wzjs >正文

dede网站logo怎么改汉川市建设局网站

dede网站logo怎么改,汉川市建设局网站,win7创建wordpress,开发app的过程【FPGA】状态机思想回顾流水灯 一、LED流水灯实现1. 基本要求2. 状态机思想3. 关键代码4. 仿真测试5. 效果演示 二、CPLD和FPGA1. 技术区别2. 应用场景 三、HDLbits组合逻辑题目四、实验总结 一、LED流水灯实现 1. 基本要求 用状态机思想写一个 LED流水灯的FPGA代码写出仿真测…

【FPGA】状态机思想回顾流水灯

    • 一、LED流水灯实现
      • 1. 基本要求
      • 2. 状态机思想
      • 3. 关键代码
      • 4. 仿真测试
      • 5. 效果演示
    • 二、CPLD和FPGA
      • 1. 技术区别
      • 2. 应用场景
    • 三、HDLbits组合逻辑题目
    • 四、实验总结

一、LED流水灯实现

1. 基本要求

  • 状态机思想写一个 LED流水灯的FPGA代码
  • 写出仿真测试代码,用Modelsim进行仿真分析
  • DE2-115板上验证

2. 状态机思想

用状态机思想的话,流水灯通常可以用几个状态来表示不同的LED亮的位置。

比如,每个状态对应一个LED亮,然后通过状态转移来实现流动的效果。由于我们流水灯是8个灯亮,所以对应8个状态。

所以,状态机的状态定义可能如下:

状态S0: LED[0]亮
状态S1: LED[1]亮

状态S7: LED[7]亮

流水灯就是一个状态持续一段时间再进入下一个状态。

3. 关键代码

// File: led_flow.v
module led_flow(input clk,          // 50MHz时钟 (DE2-115 PIN_Y2)input rst_n,        // 复位信号 (低电平有效)output reg [7:0] led// LED输出 (DE2-115 LEDG7-LEDG0)
);// 状态定义
localparam S0 = 3'b000; // 初始状态:LED0亮
localparam S1 = 3'b001;
localparam S2 = 3'b010;
localparam S3 = 3'b011;
localparam S4 = 3'b100;
localparam S5 = 3'b101;
localparam S6 = 3'b110;
localparam S7 = 3'b111;// 内部信号
reg [2:0] state;        // 当前状态
reg [24:0] cnt;         // 分频计数器
wire en;                // 状态切换使能(0.5Hz)// 0.5Hz分频(0.5秒切换)
assign en = (cnt == 25'd24_999_999); // 50MHz/(25M+1) ≈ 0.5Hz// 分频计数器
always @(posedge clk or negedge rst_n) beginif(!rst_n) cnt <= 0;else if(en) cnt <= 0;else cnt <= cnt + 1;
end// 状态机主逻辑
always @(posedge clk or negedge rst_n) beginif(!rst_n) beginstate <= S0;led <= 8'b0000_0001; // 初始状态endelse if(en) begincase(state)S0: begin led <= 8'b0000_0010; state <= S1; endS1: begin led <= 8'b0000_0100; state <= S2; endS2: begin led <= 8'b0000_1000; state <= S3; endS3: begin led <= 8'b0001_0000; state <= S4; endS4: begin led <= 8'b0010_0000; state <= S5; endS5: begin led <= 8'b0100_0000; state <= S6; endS6: begin led <= 8'b1000_0000; state <= S7; endS7: begin led <= 8'b0000_0001; state <= S0; enddefault: state <= S0;endcaseend
endendmodule

4. 仿真测试

写完代码后,参考连接博客进行仿真。
Quartus使用步骤及联合Modelsim仿真教程-
知安的小白
操作步骤这篇博客讲的很清楚了,一同操作后的效果截图如下
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

仿真代码(tb_led_flow.v)

// File: tb_led_flow.v
`timescale 1ns/1ps
module tb_led_flow();reg clk;
reg rst_n;
wire [7:0] led;// 实例化被测模块
led_flow uut(.clk(clk),.rst_n(rst_n),.led(led)
);// 生成50MHz时钟
initial beginclk = 0;forever #10 clk = ~clk; // 20ns周期=50MHz
end// 测试激励
initial begin// 初始化rst_n = 0;#100;rst_n = 1;// 观察10个状态周期#100000000; // 仿真10ms(实际应仿真更长时间)$stop;
endendmodule

下面是仿真波形:
在这里插入图片描述

5. 效果演示

[FPGA]状态机思想回顾流水灯演示效果

二、CPLD和FPGA

1. 技术区别

特性特性FPGA
结构乘积项逻辑查找表(LUT)结构
逻辑容量通常<10万门可达数百万逻辑单元
布线结构固定互联可编程互联
时序特性确定延迟布线依赖延迟
存储资源有限包含专用Block RAM
配置方式非易失,上电即用通常需要外部配置芯片
功耗低静态功耗高动态功耗
适用场景胶合逻辑、状态机复杂算法、并行处理

2. 应用场景

  • CPLD典型应用:
    接口协议转换(UART、SPI)
    简单状态机控制
    地址译码电路
    上电时序管理

  • FPGA典型应用:
    数字信号处理(FIR滤波器)
    高速接口(PCIe、DDR)
    图像处理流水线
    协议加速(TCP/IP Offload)

三、HDLbits组合逻辑题目

HDLbits问题集(Verilog)精选题目及解答

题目1:Exams/m2014 q4g
在这里插入图片描述

module top_module (input in1,input in2,input in3,output out);assign out = (~(in1^in2)^in3);
endmodule

题目2:Gates
Module Declaration
module top_module(
input a, b,
output out_and,
output out_or,
output out_xor,
output out_nand,
output out_nor,
output out_xnor,
output out_anotb
);
大概意思就是写个逻辑语句实现名称。

module top_module( input a, b,output out_and,output out_or,output out_xor,output out_nand,output out_nor,output out_xnor,output out_anotb
);assign out_and=a&b;assign out_or=a|b;assign out_xor=a^b;assign out_nand=~(a&b);assign out_nor=~(a|b);assign out_xnor=~(a^b);assign out_anotb=a&(~b);
endmodule

题目3:Arithmetic Circuits–Adder(加法器设计)
在这里插入图片描述

 module top_module (input [3:0] x, input [3:0] y, output [4:0] sum);assign sum = x + y;
endmodule

题目4:7420
74LS20芯片内部逻辑电路如下,由两个nand(与非门)组成。需要写个语句实现7420功能。
在这里插入图片描述

module top_module ( input p1a, p1b, p1c, p1d,output p1y,input p2a, p2b, p2c, p2d,output p2y );assign p1y=~(p1a&p1b&p1c&p1d);assign p2y=~(p2a&p2b&p2c&p2d);
endmodule

题目5:Truthtable1
在这里插入图片描述
按真值表实现电路。
如果数电学的不好不知道怎么办的话,可以用logisim,点击Project->Analyze Circuit->Table:
在这里插入图片描述
再点击Build Circuit就生成电路图了。
在这里插入图片描述

module top_module( input x3,input x2,input x1,  // three inputsoutput f   // one output
);assign f=((~x3)&x2)|(x1&x3);
endmodule

四、实验总结

本次实验掌握了状态机编程思想,事实上,状态机思想也更简易更容易想到。


文章转载自:

http://FhTjh9d6.dpjtn.cn
http://JZQY9c2Z.dpjtn.cn
http://DaO2Z4JG.dpjtn.cn
http://zj0FoBwm.dpjtn.cn
http://32TJ62oO.dpjtn.cn
http://VDYvFgfB.dpjtn.cn
http://mPT0NKx7.dpjtn.cn
http://O5hI00qW.dpjtn.cn
http://OhJMVz0K.dpjtn.cn
http://aMQAtw7w.dpjtn.cn
http://SzQJ09pY.dpjtn.cn
http://603c3TPb.dpjtn.cn
http://IFK1uLyb.dpjtn.cn
http://RI8zj019.dpjtn.cn
http://3HR4Dxlu.dpjtn.cn
http://lTHN7oMR.dpjtn.cn
http://ywdwR2Qd.dpjtn.cn
http://Qj1BIzLO.dpjtn.cn
http://WmNkYwts.dpjtn.cn
http://ijoDdEJ8.dpjtn.cn
http://FGuTlBTe.dpjtn.cn
http://oRV7CFNR.dpjtn.cn
http://s0otUBwg.dpjtn.cn
http://0Cm4C8y9.dpjtn.cn
http://nTvSyoen.dpjtn.cn
http://a0T2ykmt.dpjtn.cn
http://jyqv4gUM.dpjtn.cn
http://QC6L0rkC.dpjtn.cn
http://VkSENa33.dpjtn.cn
http://h2kIdRQ2.dpjtn.cn
http://www.dtcms.com/wzjs/619107.html

相关文章:

  • 做网站背景图片要多大网站优化代码
  • 密云微网站建设seo技术专员招聘
  • 深圳市官网网站建设有了网站怎样做公众号
  • 网站开发要用多少钱装修网十大平台
  • 唐山网站建设400多少钱高端网站设计制
  • 还能用的wap网站单页网站制作 在线 支付
  • python 做网站速度开网站的宣传图片怎么做
  • 牡丹江商城网站建设wordpress要发表评论您必须先登录
  • 最经典的营销案例seo 能提高网站速度吗
  • 涪陵网站建设 优帮云茂名网站建设电话
  • 做的比较好的游戏网站网站性能容量的收集与分析怎么做
  • 什么网站可以做外贸做网站接口多少钱
  • 桥梁毕业设计代做网站全国网站制作前十名
  • 网站建设公司小江广告位网站建设
  • 用网站模板做网站用ps软件做ppt模板下载网站
  • 咨询聊城网站建设wordpress网站首页链接乱码
  • wordpress全站注明优帮云排名自动扣费
  • 公司网站建设方案模板学校网站建设规划书
  • 网站开发主管工作内容英文版网站建设策划方案
  • 鹤壁建设网站推广公司电话app建设网站公司
  • 视频网站建站费用政务网站网上调查怎么做
  • 嘉兴做网站游戏自助充值网站怎么做
  • 经典模板网站建设高端网站建设合同
  • 网站建设后台和前端腾讯企点官网入口
  • 网站开发建设推荐用书wordpress 主题 首页发布 微博
  • 临沂网站建设做网站网上商店怎么开
  • 昆明做凡科网站毕业设计指导网站建设
  • 如何看一个网站的好坏南京做网站公司哪家好
  • 手机网站建设制作教程视频电商网站建设电话
  • 申报教学成果奖网站建设西部数码网站核验单下载