其实,这个题目如果仅要求做出逻辑,不考虑延迟等实际情况,按步骤做应该不会太难。如果我做,大致步骤如下。
第一步,列出地址映射表,按照杨真人的地址安排就可以了。
第二步,列出相应的地址译码表,如下:
A14 A13 A12 A11 A10 ---------------------------------------------------- 0 0 0 0 0 不用 ---------------------------------------------------- 0 0 0 0 1 ROM1 0 0 0 1 0 ---------------------------------------------------- 0 0 0 1 1 ROM2 0 0 1 0 0 ---------------------------------------------------- 0 0 1 0 1 ROM3 0 0 1 1 0 ---------------------------------------------------- 0 0 1 1 1 ROM4 0 1 0 0 0 ---------------------------------------------------- 0 1 0 0 1 RAM1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 ----------------------------------------------------- 1 0 0 0 1 RAM2 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 ------------------------------------------------------ 1 1 0 0 1 不用 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1
第三步,以A[14..10]为输入,画出分别以ROM[1..4]和RAM[1..2]为输出的卡洛图。要画6个4X8的表,比较繁,但一定可以得到结果。
第四步,将卡洛图化简,然后写出逻辑式。
第五步,按逻辑式画逻辑图。如果你是用正逻辑,在输出再加一级非,因为片选通常为底电平有效的。
其实,如果考虑用GAL等PLD作译码,写出逻辑式已经差不多了。 |