看過了控制器的設計以後,你可能會注意到控制器有兩個輸入c和z不是**於解碼器的輸出,這裡對c和z進行說明。
c和z的值分別是跳轉指令jc和jz是否有效的乙個判斷條件:當c=1時,jc有效;z=1時,jz有效。c是邏輯運算的進製輸出,包括加法的進製、減法的借位以及移位時被移出去的那一位(注意是移出去的那一位,不是最高位)。z的值由加法和減法控制,當運算結果為0時,z=1。
既然只有當執行以上提及操作時c和z的值才發生改變,那麼當不執行這些操作時,c和z的值應該保持不變才對,所以我們需要設計乙個暫存器來儲存c和z的值,並且有乙個使能端去控制c和z是否可以被改變。
(1)vhdl**:
library ieee;
use ieee.std_logic_1164.all;
entity czjcq is
port(en:in std_logic;
sin:in std_logic;
sout:out std_logic);
end entity czjcq;
architecture st of czjcq is
begin
process(en)
begin
if(en='1')then
sout<=sin;
end if;
end process;
end st;
(2)引腳說明:
輸入輸出埠分別為:
輸入為en,sin,輸出為sout,當en為高電平時,允許sout輸出sin;
(3)波形**:
做完了前面部件以後來做這個可以說是很easy了!
簡易計算機系統綜合設計 CPU綜合
當完成了各個部件之後,接著要做的就是把各個部件組裝起來,配合運作,要使所有部件能夠協調地運作,首先得要有乙個比較明朗的思路,我們先來分析一下cpu的執行流程 上圖為簡易計算機系統的整體構架,現對其執行整體流程進行說明 1 取址階段 不受時鐘控制的輸入 由sm 0確定 有 madd 00 選擇器選擇從...
簡易計算機系統綜合設計 概述
概述 我們的計算機在執行的過程中,操作流程可以大致看成乙個 取指令 執行指令 的過程。這次的設計便是基於這一思想進行簡易計算機系統的設計。本次設計中的指令是乙個8為的二進位制串,通過不同的指令來實現不同的具體操作。我們分析一下需要幹什麼?首先考慮取指令 我們首先需要儲存指令,這樣計算機才能去讀取指令...
簡易計算機系統綜合設計 時鐘節拍
根據部件各個的控制訊號,我們知道有些部件需要時鐘有些不需要時鐘,這些需要時鐘訊號的部件有些可以同時運作,不如pc計數器的加一操作和指令暫存器的存指令操作,但是有些部件就一定需要乙個先後順序,比如說加法,肯定是要等運算完以後才給通用暫存器時鐘訊號去吧運算結果存進指定的暫存器。所有這裡的多個時鐘訊號的週...