📢
本系列文章只提供课上测试的解读
所有课下作业的源代码请按下面指示前往我的Github仓库~
通过阅读本文,您可以大致了解 2023 年秋季北航计算机组成原理课程 P0 课上测试的题目内容、难度和解题思路
P0 课上测试 3题做出2题 通过。主要内容是对 logisim 的使用综合考察
题目每年都会发生变化,题意描述大致清晰,但是可能与原题有一定差异
T0·未出现的正整数
题目描述
本题中,你需要设计组合电路,找出输入中未出现的最小正整数。
简介
使用 Logisim 搭建一个组合电路。给定输入的 5 个任意无符号二进制数。确定输入中未出现的最小正整数是多少。
例如:输入为 3,0,1,2,7 时,正整数 1,2,3 已经出现,未出现的最小正整数是 4。
输入输出
名称 | 功能 | 位宽 | 方向 |
---|---|---|---|
input1 | 数据输入 | 8 | I |
input2 | 数据输入 | 8 | I |
input3 | 数据输入 | 8 | I |
input4 | 数据输入 | 8 | I |
input5 | 数据输入 | 8 | I |
输出 | 结果 | 8 | O |
输入:五个整数(8bit)
输出:输入中未出现的最小正整数(8bit)
求解思路
我们设最终输出的结果为out
。显然,out
是一个正整数。
对于5个输入的情况,经过分析,我们会有如下结论:
out
的最大值是6,最小值是1。取6的情况是:五个输入分别是1、2、3、4、5。而取1的情况是五个输入中没有1。
这是整道题的核心。根据这个结论,我们可以直接穷举结果。
若五个输入没有1,out
取1;若有1,则继续判断:
若五个输入没有2,out
取2;若有2,则继续判断:
若五个输入没有3,out
取3;若有3,则继续判断:
若五个输入没有4,out
取4;若有4,则继续判断:
若五个输入没有5,out
取5;若有5,则取6。
T1·回字楼游走
题目描述
本题中,你需要设计 Mealy 型状态机模拟在回型建筑中移动的学生。
简介
某校有一栋回字型的建筑,可以分为八个单元,由右上角起顺时针编号为 1 至 8,结成一个环。现一名学生从编号 1(东北角)的单元开始移动。
7 8 1
6 空 2
5 4 3
当学生恰好移动向相邻单元方向时,学生进入该相邻单元,输出其编号。
当学生的移动方向上没有单元,这次不移动,直接输出当前所在单元格编号。
输入输出如下:
输入 00 时,学生试图向上(北)移动。
输入 01 时,学生试图向下(南)移动。
输入 10 时,学生试图向左(西)移动。
输入 11 时,学生试图向右(东)移动。输出学生试图移动到的建筑单元。
输入输出
名称 | 功能 | 位宽 | 方向 |
---|---|---|---|
input | 方向输入 | 2 | I |
reset | 异步复位信号 | 1 | I |
clk | 时钟信号 | 1 | I |
output | 结果 | 4 | O |
输入:移动方式(2bit),异步复位信号(1bit),时钟信号(1bit)。
输出:建筑单元编号(4bit)。
求解思路
按题目要求,必须用 Mealy 型状态机。
这题目不难。状态表示现在所处位置,8个状态3位二进制表示。
次态逻辑对照行走规则,输出逻辑与状态一一对应。
T2·识别十六进制合法序列
本题中,你需要设计 Moore 型状态机模拟识别字符序列。
题目描述
简介
每周期输入一个16进制数(4位2进制表示)。
当三个周期内连续出现:
EEE,输出1;
A0E,输出2;
0A0,输出3;
其余状态输出0。
注意,可以重叠识别,例如
A0EEE
,在第3、第5周期输出2
、1
。
输入输出
名称 | 功能 | 位宽 | 方向 |
---|---|---|---|
input | 数字输入 | 4 | I |
reset | 异步复位信号 | 1 | I |
clk | 时钟信号 | 1 | I |
output | 结果 | 2 | O |
输入:十六进制数(4bit),异步复位信号(1bit),时钟信号(1bit)。
输出:相应结果(2bit)。
求解思路
按题目要求,必须用 Moore 型状态机。
次态逻辑
状态表示识别情况,共10个状态4位二进制表示。
状态(十进制) | 识别情况 |
---|---|
0 | 无效 |
1 | E |
2 | A |
3 | 0 |
4 | EE |
5 | A0 |
6 | 0A |
7 | EEE |
8 | A0E |
9 | 0A0 |
注意重叠识别,然后就能得到次态逻辑。
输出逻辑
按照输出规则即可。
助教问答环节
这部分只提供问题。
- 在logisim中,如何实现同步复位?
- 在logisim中,probe元件的作用和用法?
- 在logisim中,导线蓝色和橙色分别说明了什么情况?