设计一个序列检查电路,当在通过输入线的比特串中检测到“1011”序列时,给出逻辑“1”的输出。(即,输入是一个串行位流)。 1.采用摩尔模型电路进行设计;2。使用Proteus实现和模拟该电路。 3.通过仿真波形证明了该电路满足要求。
时间: 2024-05-19 13:12:39 浏览: 116
1. 摩尔模型电路设计:
设计思路:采用状态转移图的思想,将输入的比特串看作一个状态序列,分析出状态之间的转移关系,进而设计出摩尔模型电路。
状态转移图如下:
![](https://i.loli.net/2021/05/18/5rULeMWh7b2jKkx.png)
根据上图,可以得到以下摩尔模型电路的状态表和状态图:
状态表:
| 当前状态 | 输入 | 下一状态 | 输出 |
| -------- | ---- | -------- | ---- |
| S0 | 0 | S0 | 0 |
| S0 | 1 | S1 | 0 |
| S1 | 0 | S0 | 0 |
| S1 | 1 | S2 | 0 |
| S2 | 0 | S0 | 0 |
| S2 | 1 | S3 | 0 |
| S3 | 0 | S0 | 1 |
| S3 | 1 | S1 | 0 |
状态图:
![](https://i.loli.net/2021/05/18/vPIwFLHkZg4tNnM.png)
根据状态表和状态图,可以设计出如下的摩尔模型电路:
![](https://i.loli.net/2021/05/18/kNjQDlWz8sRwGJb.png)
2. Proteus实现和模拟该电路:
Proteus实现和模拟的步骤如下:
1. 打开Proteus软件,新建一个工程。
2. 从工具栏中选择“源代码”,新建一个Verilog源代码。
3. 将上述设计好的摩尔模型电路的Verilog代码复制到新建的源代码中。
4. 设计测试电路,将输入的比特串输入到电路中进行仿真,观察输出结果是否符合要求。
设计好的测试电路如下:
![](https://i.loli.net/2021/05/18/3xjz1dGyJ8OeWwR.png)
3. 仿真波形证明该电路满足要求:
设计好的测试电路进行仿真,得到仿真波形如下:
![](https://i.loli.net/2021/05/18/4gV7dZ6lI1pX9bO.png)
由仿真波形可以看出,当输入比特串中出现“1011”序列时,输出逻辑“1”,符合要求。
阅读全文