本文针对 “串行序列 00011000 检测(可重叠)” 需求,从设计原理、Multisim 电路搭建两个维度展开,用74HC164 移位寄存器 + 74HC151 选择器、74HC164+74HC273 寄存器两种方案实现 “输入序列匹配时输出 1,否则输出 0” 的功能。
一、设计原理:串入并出 + 序列比对
题目要求 “检测串行输入中的00011000(可重叠)”,核心逻辑是将串行数据转换为并行数据,再与目标序列逐位比对。
1. 核心器件及真值表
(1)74HC164(8 位串入并出移位寄存器)
功能:串行输入数据,在时钟上升沿依次移入,最终并行输出(Q0~Q7)。
| 输入 | 功能 | 输出变化(Q0→Q7) |
|---|---|---|
| \(\overline{CLR}\)=0 | 异步清零(优先级最高) | Q0~Q7 全置 0 |
| \(\overline{CLR}\)=1,CLK 上升沿 | 串行输入(A・B)移位 | 新数据→Q0,原 Q0→Q1,…,原 Q6→Q7 |
| \(\overline{CLR}\)=1,CLK 稳态 | 保持 | Q0~Q7 保持当前值 |
(2)74HC151(8 选 1 数据选择器)
功能:根据地址选择 8 路输入中的 1 路输出,用于 “固定序列比对”。
| 输入(地址 A2A1A0) | 输出 Y |
|---|---|
| 000 | D0 |
| 001 | D1 |
| ... | ... |
| 111 | D7 |
(3)74HC273(8 位 D 触发器寄存器)
功能:时钟上升沿锁存 8 路 D 输入,并行输出,用于 “动态序列缓存 + 比对”。
| 输入(CLK 上升沿) | 输出 Qn |
|---|---|
| Dn=X | Qn=X(锁存 D 输入) |
2. 两种方案逻辑
- 方案 1:74HC164(串转并) + 74HC151(固定序列比对):将目标序列
00011000预存在 151 的输入,用 164 的输出作为 151 的地址,当 164 输出与目标序列一致时,151 输出 1。 - 方案 2:74HC164(串转并) + 74HC273(缓存目标序列) + 与门(逐位比对):用 273 锁存目标序列,通过 8 个与门逐位比对 164 输出与 273 输出,全 1 则总输出 1。
二、Multisim 电路设计
方案 1:74HC164 + 74HC151(固定序列检测)
1. 电路接线
74HC164(串转并):
- \(\overline{CLR}\)(9 脚):接 5V(禁止清零);
- A、B(1、2 脚):短接后接串行输入信号(函数发生器生成的 0/1 序列);
- CLK(8 脚):接时钟信号(频率与串行输入同步,如 1kHz 方波);
- Q0~Q7(3~6、10~13 脚):依次接 74HC151 的地址端 A0~A7(Q0→A0,Q1→A1,…,Q7→A7)。
74HC151(序列比对):
- 数据输入 D0~D7:按目标序列
00011000设置:D0=0、D1=0、D2=0、D3=1、D4=1、D5=0、D6=0、D7=0(0 接 GND,1 接 5V); - 使能端\(\overline{EN}\)(7 脚):接 GND(使能选择);
- 输出 Y(5 脚):接LED 指示灯(匹配时亮,即输出 1)。
- 数据输入 D0~D7:按目标序列
2. 功能验证
- 串行输入
00011000时,74HC164 的 Q0~Q7 输出为00011000,对应 74HC151 的地址为00011000,此时 151 选择 D3=1 输出,LED 亮; - 输入其他序列时,151 输出 0,LED 灭;
- 可重叠检测:输入
0001100011时,当第 8 位输入后输出 1,第 9 位输入后 Q0~Q7 变为00110001,不匹配;第 10 位输入后变为01100011,依此类推(符合可重叠要求)。
方案 2:74HC164 + 74HC273 + 与门(动态序列检测)
1. 电路接线
74HC164(串转并):接线同方案 1(A/B 接串行输入,CLK 接同步时钟)。
74HC273(缓存目标序列):
- CLK(11 脚):接 5V(上电锁存);
- D0~D7(1~4、13~16 脚):按目标序列
00011000设置(D0=0、D1=0、D2=0、D3=1、D4=1、D5=0、D6=0、D7=0); - Q0~Q7(2~5、14~17 脚):依次接8 个 2 输入与门的一端。
与门阵列(逐位比对):
- 每个与门的另一端接 74HC164 的 Q0~Q7;
- 8 个与门的输出接1 个 8 输入与门的输入;
- 8 输入与门的输出接 LED 指示灯(全位匹配时输出 1)。
2. 功能验证
- 串行输入
00011000时,74HC164 的 Q0~Q7 与 273 的 Q0~Q7 逐位相等,8 个与门全输出 1,最终 8 输入与门输出 1,LED 亮; - 输入其他序列时,至少 1 个与门输出 0,最终输出 0,LED 灭;
- 可重叠检测:输入
0001100011时,第 8 位输入后触发输出 1,后续输入自动移位比对,符合要求。
三、总结
本文用两种 74 系列芯片方案实现了 “00011000 序列检测”:
- 方案 1(164+151):电路简洁,适合固定序列检测;
- 方案 2(164+273 + 与门):支持动态修改目标序列,扩展性更强。