【数据采集专栏】触发模式的设计

目录

简介

实现原理


简介

单次触发(FiniteTrig):在该触发方式下,仅在搜索到指定的触发条件时,才进行一次触发和采集,然后停止。该触发方式适用于只需要单次采集特定事件并对采集结果进行分析的情况;

正常触发(NormalTrig):在该触发方式下,仅在搜索到指定的触发条件时,才进行触发和采集。该触发方式适用于低重复率信号;

自动触发(AutoTrig):在该触发方式下,如果未到指定的触发条件,将强制进行触发和采集以显示波形。该触发方式适用于未知信号电平或需要显示直流的场景

实现原理

FiniteTrig 单次触发

抓单次瞬态脉冲

抓上电 / 掉电波形

抓单次异常事件

色选机:单次物料测试

NormalTrig 正常触发

低速率、间歇性信号

随机脉冲

不想看到空波形

没触发就不采集,节省资源

AutoTrig 自动触发

调试未知信号

直流信号(不会触发边沿)

示波器必须一直显示波形

找不到触发时强制刷新

module trig_ctrl

(input wire clk,

input wire rst_n,

input wire trig_cond, // 触发条件满足

input wire 1:0 trig_mode,// 00:Finite 01:Normal 10:Auto

output reg capture_en // 采集使能

);

localparam FINITE = 2'b00;

localparam NORMAL = 2'b01;

localparam AUTO = 2'b10;

reg 1:0 state;

reg 23:0 timeout_cnt; // 自动触发超时计数器

always @(posedge clk or negedge rst_n) begin

if(!rst_n) begin

state capture_en timeout_cnt

end

else begin

case(state)

0: begin // 等待触发

timeout_cnt

if(trig_cond) begin

// 检测到真实触发

capture_en state

end

else if(trig_mode == AUTO && timeout_cnt > 1000000) begin

// 自动触发:超时强制采集

capture_en state

end

end

1: begin // 正在采集

capture_en

case(trig_mode)

FINITE: state NORMAL: state AUTO: state

endcase

end

2: begin // 单次触发完成,停止

capture_en

end

endcase

end

end

endmodule

相关推荐
坏孩子的诺亚方舟10 天前
FPGA系统架构设计实践15_高云Arora V系列时钟体系
fpga开发·系统架构
FPGA小徐11 天前
入门 CNN 结构全解析|从流程图理论到 FPGA Verilog 硬件实现(含习题带讲解)
fpga开发
FPGA小徐11 天前
FPGA 数字信号处理:并行 FIR 与串行滤波器设计原理、对比与完整 Verilog 实现
fpga开发
Saniffer_SH12 天前
【高清视频】Gen6 服务器还没到,Gen6 SSD 怎么测?Emily 现场演示三种测试环境
人工智能·驱动开发·测试工具·缓存·fpga开发·计算机外设·压力测试
zlinear数据采集卡12 天前
双核架构深度解析:ARM+FPGA如何让数据采集卡实现500Ksps高性能?
arm开发·fpga开发·架构
9527华安12 天前
FPGA实现GTH Transceivers Wizard传输2路视频,基于aurora 8b10b编解码架构,提供4套工程源码和技术支持
fpga开发·gth·aurora 8b10b·transceivers
FPGA小徐13 天前
FPGA 数字信号处理(二):并行 FIR 滤波器的 Verilog 全流程设计与实现
fpga开发
国科安芯13 天前
基于AS32S601ZIT2型抗辐照MCU的商业航天卫星姿态确定与控制系统研究
单片机·嵌入式硬件·安全·fpga开发·架构·risc-v
ALINX技术博客13 天前
【黑金云课堂】FPGA技术教程FPGA基础:I2C 总线通信技术
fpga开发·i2c
Hello-FPGA13 天前
Xilinx KU040 FPGA Camera Link 图像采集
c++·fpga开发