状态机专题学习(2)——AXI4-Stream

AXI协议详解3:AXI4-Stream 协议梳理+代码分析

axi-stream有用到fifo

// 状态机的状态定义

// 控制状态机监督输入流数据写入FIFO,并从FIFO输出流数据

parameter [1:0] IDLE = 2’b00, // 初始化状态

INIT_COUNTER = 2’b01, // 初始化计数状态,当计数到C_M_START_COUNT 时

// 转换状态到SEND_STREAM

SEND_STREAM = 2’b10; // 通过 M_AXIS_TDATA 输出数据流

// 状态寄存器

reg [1:0] mst_exec_state;

// 控制状态机

always @(posedge M_AXIS_ACLK)

begin

if (!M_AXIS_ARESETN)

// 复位

begin

mst_exec_state <= IDLE;

count <= 0;

end

else

case (mst_exec_state)

IDLE:

mst_exec_state <= INIT_COUNTER;

INIT_COUNTER:

if ( count == C_M_START_COUNT - 1 )

begin

mst_exec_state <= SEND_STREAM;

end

else

begin

//计数够时间后跳转到下一个状态 INIT_COUNTER

count <= count + 1;

mst_exec_state <= INIT_COUNTER;

end

SEND_STREAM:

//发送完成后回到 IDLE 状态

if (tx_done)

begin

mst_exec_state <= IDLE;

end

else

begin

mst_exec_state <= SEND_STREAM;

end

endcase

end

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值