串行数据检测器,检测到011,Y输出1,否则为0.

串行数据检测器(检测011序列)设计分析

1. 系统概述

功能 :检测串行输入数据流中的 011 序列,当检测到该序列时,输出 Y=1 ,否则 Y=0

触发器类型 :3个 上升沿触发的D触发器(Q0, Q1, Q2)。

检测条件 :当 Q1Q1Q0 = 011 时,Y=1。


2. 真值表(状态转换表)

当前状态 (Q2Q1Q0) 输入 X 下一状态 (Q2+ Q1+ Q0) 输出 Y
000 0 000 0
000 1 001 0
001 0 010 0
001 1 011 0
010 0 100 0
010 1 101 0
011 0 110 1
011 1 111 1
100 0 000 0
100 1 001 0
101 0 010 0
101 1 011 0
110 0 100 0
110 1 101 0
111 0 110 0
111 1 111 0

说明

Q2Q1Q0 代表当前状态(3个D触发器的输出)。

X 是串行输入数据(0或1)。

Q2+ Q1+ Q0是下一状态(即D触发器的输入)。

Y=1 当且仅当 Q2Q1Q0=011(即检测到011序列)。


3. 状态表(简化)

当前状态 X=0 X=1 Y
000 000 001 0
001 010 011 0
010 100 101 0
011 110 111 1
100 000 001 0
101 010 011 0
110 100 101 0
111 110 111 0

4. 状态图

复制代码

说明

每个状态转换标注为 输入/输出(X/Y)。

Q2Q1Q0=011 时,无论输入是0还是1,输出 Y=1


5. 卡诺图(用于化简逻辑方程)

(a) 输出方程 Y

Y = Q2' Q1 Q0 (即 Q2=0, Q1=1, Q0=1 时 Y=1)

(b) 驱动方程(D触发器输入)

使用卡诺图化简:

D2 (Q2+)

Q2\Q1Q0 00 01 11 10
0 0 0 1 1
1 0 0 1 1

D2 = Q1

D1 (Q1+)

Q2\Q1Q0 00 01 11 10
0 0 1 1 0
1 0 1 1 0

D1 = Q0

D0 (Q0+)

Q2\Q1Q0 00 01 11 10
0 X X X X
1 X X X X

D0 = X(直接连接输入)


6. 逻辑方程总结

方程类型 方程
输出方程 Y = Q2' Q1 Q0
驱动方程 D2 = Q1
D1 = Q0
D0 = X
状态方程 Q2+ = Q1
Q1+ = Q0
Q0+ = X

7. 电路实现

3个D触发器(Q0, Q1, Q2)串联,上升沿触发。

输入X 直接连接 D0

Q0 连接 D1

Q1 连接 D2

YQ2' Q1 Q0 组合逻辑门实现(即 NOT(Q2) AND Q1 AND Q0)。


8. 检测过程示例

假设输入序列 X = 1, 1, 0, 1, 1(检测011):

  1. 初始状态: Q2Q1Q0 = 000
  2. X=1: Q2Q1Q0 = 001
  3. X=1 : Q2Q1Q0 = 011 → Y=1(检测到011)
  4. X=0: Q2Q1Q0 = 110
  5. X=1: Q2Q1Q0 = 101

验证图:

相关推荐
ChipCamp19 小时前
Chisel芯片开发入门系列 -- 14. CPU芯片开发和解释4(Load/Store指令再探)
arm开发·青少年编程·fpga开发·scala·dsp开发·risc-v·chisel
霖0021 小时前
深入讲讲异步FIFO
笔记·vscode·单片机·嵌入式硬件·学习·fpga开发
水果里面有苹果1 天前
3-verilog的使用-1
fpga开发
嵌入式-老费1 天前
再谈fpga开发(总结篇)
fpga开发
minglie11 天前
基于 AXI-Lite 实现可扩展的硬件函数 RPC 框架(附完整源码)
fpga开发
朱古力(音视频开发)1 天前
NDI开发指南
fpga开发·音视频·实时音视频·视频编解码·流媒体
9527华安2 天前
FPGA实现AD9361采集转SRIO与DSP交互,FPGA+DSP多核异构信号处理架构,提供2套工程源码和技术支持
fpga开发·架构·信号处理·dsp·ad9361·多核异构
小眼睛FPGA2 天前
【盘古100Pro+开发板实验例程】FPGA学习 | 基于紫光 FPGA 的键控 LED 流水灯
科技·学习·ai·fpga开发·fpga
最好有梦想~2 天前
分享一个FPGA寄存器接口自动化工具
fpga开发
hahaha60162 天前
FPGA(或者数字电路)中组合逻辑和时序逻辑是怎么划分的
fpga开发