實驗目的
幫助學生了解現代時序系統中硬布線控制器的設計原理。
實驗内容
在實作指令譯碼、現代時序狀态機子產品後,最終實作硬布線控制器的內建,在下圖中完成硬布線控制器架構連接配接,注意硬布線控制器組合邏輯不需要實作直接采用微程式控制器的控制存儲器代替即可。
電路引腳
信号 | 輸入輸出 | 位寬 | 功能描述 |
---|---|---|---|
IR | 輸入 | 32 | MIPS指令字 |
CLK | 輸入 | 1 | 時鐘輸入 |
equal | 輸入 | 1 | 條件狀态信号,相等标志 |
控制總線 | 輸出 | 22 | 所有控制信号彙總而成的控制總線 |
目前狀态值 | 輸出 | 5 | 狀态字的值 |
測試輸出
# | 信号 | 功能描述 |
---|---|---|
1 | Cnt | 測試用例編号,注意是十六進制 |
2 | Instr | MIPS指令字 |
3 | equal | 比較相等回報信号 |
4 | Statu | 狀态寄存器目前值 |
5 | cBus | 控制總線的值 |
6 | ErrBit | 控制總線中出錯的第一個bit位的位置 |
Cnt Instr equal Statu cBus ErrBit
00 2010ffff 1 00 202400 xx
01 2010ffff 1 01 000008 xx
02 2010ffff 1 02 085002 xx
03 2010ffff 1 03 100100 xx
04 2010ffff 1 16 040400 xx
05 2010ffff 1 17 020010 xx
06 2010ffff 1 18 080200 xx
07 0274402a 1 00 202400 xx
08 0274402a 1 01 000008 xx
實驗步驟
- 設計完硬部線狀态機後,連接配接硬部線控制器。
- 要先将存儲内容存入存儲器中:
- 時鐘觸發為下降沿觸發,上升沿觸發則會重複輸出。
- 分線器配置:
測試:
預期輸出:
Cnt Instr equal Statu cBus ErrBit
00 2010ffff 1 00 202400 xx
01 2010ffff 1 01 000008 xx
02 2010ffff 1 02 085002 xx
03 2010ffff 1 03 100100 xx
04 2010ffff 1 16 040400 xx
05 2010ffff 1 17 020010 xx
06 2010ffff 1 18 080200 xx
07 0274402a 1 00 202400 xx
08 0274402a 1 01 000008 xx
09 0274402a 1 02 085002 xx
0a 0274402a 1 03 100100 xx
0b 0274402a 1 13 040400 xx
0c 0274402a 1 14 040044 xx
0d 0274402a 1 15 080220 xx
0e ae300200 1 00 202400 xx
0f ae300200 1 01 000008 xx
10 ae300200 1 02 085002 xx
11 ae300200 1 03 100100 xx
12 ae300200 1 09 040400 xx
13 ae300200 1 0a 020010 xx
14 ae300200 1 0b 082000 xx
15 ae300200 1 0c 040840 xx
16 ae300200 1 0d 008001 xx
17 8e130200 1 00 202400 xx
18 8e130200 1 01 000008 xx
19 8e130200 1 02 085002 xx
1a 8e130200 1 03 100100 xx
1b 8e130200 1 04 040400 xx
1c 8e130200 1 05 020010 xx
1d 8e130200 1 06 082000 xx
1e 8e130200 1 07 001002 xx
1f 8e130200 1 08 100200 xx
20 1000ffff 1 00 202400 xx
21 1000ffff 1 01 000008 xx
22 1000ffff 1 02 085002 xx
23 1000ffff 1 03 100100 xx
24 1000ffff 1 0e 040400 xx
25 1000ffff 1 0f 0400c0 xx
26 1000ffff 1 10 200400 xx
27 1000ffff 1 11 010010 xx
28 1000ffff 0 12 084000 xx
29 2010ffff 0 00 202400 xx
2a 2010ffff 0 01 000008 xx
2b 2010ffff 0 02 085002 xx
2c 2010ffff 0 03 100100 xx
2d 2010ffff 0 16 040400 xx
2e 2010ffff 0 17 020010 xx
2f 2010ffff 0 18 080200 xx
30 0274402a 0 00 202400 xx
31 0274402a 0 01 000008 xx
32 0274402a 0 02 085002 xx
33 0274402a 0 03 100100 xx
34 0274402a 0 13 040400 xx
35 0274402a 0 14 040044 xx
36 0274402a 0 15 080220 xx
37 ae300200 0 00 202400 xx
38 ae300200 0 01 000008 xx
39 ae300200 0 02 085002 xx
3a ae300200 0 03 100100 xx
3b ae300200 0 09 040400 xx
3c ae300200 0 0a 020010 xx
3d ae300200 0 0b 082000 xx
3e ae300200 0 0c 040840 xx
3f ae300200 0 0d 008001 xx
40 8e130200 0 00 202400 xx
41 8e130200 0 01 000008 xx
42 8e130200 0 02 085002 xx
43 8e130200 0 03 100100 xx
44 8e130200 0 04 040400 xx
45 8e130200 0 05 020010 xx
46 8e130200 0 06 082000 xx
47 8e130200 0 07 001002 xx
48 8e130200 0 08 100200 xx
49 1000ffff 0 00 202400 xx
4a 1000ffff 0 01 000008 xx
4b 1000ffff 0 02 085002 xx
4c 1000ffff 0 03 100100 xx
4d 1000ffff 0 0e 040400 xx
4e 1000ffff 0 0f 0400c0 xx
4f 1000ffff 0 00 202400 xx
實際輸出:
Cnt Instr equal Statu cBus ErrBit
00 2010ffff 1 00 202400 xx
01 2010ffff 1 01 000008 xx
02 2010ffff 1 02 085002 xx
03 2010ffff 1 03 100100 xx
04 2010ffff 1 16 040400 xx
05 2010ffff 1 17 020010 xx
06 2010ffff 1 18 080200 xx
07 0274402a 1 00 202400 xx
08 0274402a 1 01 000008 xx
09 0274402a 1 02 085002 xx
0a 0274402a 1 03 100100 xx
0b 0274402a 1 13 040400 xx
0c 0274402a 1 14 040044 xx
0d 0274402a 1 15 080220 xx
0e ae300200 1 00 202400 xx
0f ae300200 1 01 000008 xx
10 ae300200 1 02 085002 xx
11 ae300200 1 03 100100 xx
12 ae300200 1 09 040400 xx
13 ae300200 1 0a 020010 xx
14 ae300200 1 0b 082000 xx
15 ae300200 1 0c 040840 xx
16 ae300200 1 0d 008001 xx
17 8e130200 1 00 202400 xx
18 8e130200 1 01 000008 xx
19 8e130200 1 02 085002 xx
1a 8e130200 1 03 100100 xx
1b 8e130200 1 04 040400 xx
1c 8e130200 1 05 020010 xx
1d 8e130200 1 06 082000 xx
1e 8e130200 1 07 001002 xx
1f 8e130200 1 08 100200 xx
20 1000ffff 1 00 202400 xx
21 1000ffff 1 01 000008 xx
22 1000ffff 1 02 085002 xx
23 1000ffff 1 03 100100 xx
24 1000ffff 1 0e 040400 xx
25 1000ffff 1 0f 0400c0 xx
26 1000ffff 1 10 200400 xx
27 1000ffff 1 11 010010 xx
28 1000ffff 0 12 084000 xx
29 2010ffff 0 00 202400 xx
2a 2010ffff 0 01 000008 xx
2b 2010ffff 0 02 085002 xx
2c 2010ffff 0 03 100100 xx
2d 2010ffff 0 16 040400 xx
2e 2010ffff 0 17 020010 xx
2f 2010ffff 0 18 080200 xx
30 0274402a 0 00 202400 xx
31 0274402a 0 01 000008 xx
32 0274402a 0 02 085002 xx
33 0274402a 0 03 100100 xx
34 0274402a 0 13 040400 xx
35 0274402a 0 14 040044 xx
36 0274402a 0 15 080220 xx
37 ae300200 0 00 202400 xx
38 ae300200 0 01 000008 xx
39 ae300200 0 02 085002 xx
3a ae300200 0 03 100100 xx
3b ae300200 0 09 040400 xx
3c ae300200 0 0a 020010 xx
3d ae300200 0 0b 082000 xx
3e ae300200 0 0c 040840 xx
3f ae300200 0 0d 008001 xx
40 8e130200 0 00 202400 xx
41 8e130200 0 01 000008 xx
42 8e130200 0 02 085002 xx
43 8e130200 0 03 100100 xx
44 8e130200 0 04 040400 xx
45 8e130200 0 05 020010 xx
46 8e130200 0 06 082000 xx
47 8e130200 0 07 001002 xx
48 8e130200 0 08 100200 xx
49 1000ffff 0 00 202400 xx
4a 1000ffff 0 01 000008 xx
4b 1000ffff 0 02 085002 xx
4c 1000ffff 0 03 100100 xx
4d 1000ffff 0 0e 040400 xx
4e 1000ffff 0 0f 0400c0 xx
4f 1000ffff 0 00 202400 xx