(萌新的數電學習)用VHDL語言設計通用暫存器組

2021-10-18 23:50:31 字數 1822 閱讀 2748

實驗背景:

暫存器是cpu內的重要組成部分,模型機的通用暫存器組包含3個8位暫存器a、b、c,實現對此3個暫存器的讀寫操作。其介面及功能如下:

vhdl語言

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity tongyongjicunqi is

port

(clk,we:in std_logic;

ra,wa:in std_logic_vector (

1 downto 0);

i:in std_logic_vector

(7 downto 0);

s,d:out std_logic_vector

(7 downto 0);

aaa,bbb,ccc:out std_logic_vector

(7 downto 0))

;end tongyongjicunqi;

architecture aaa of tongyongjicunqi is

signal a:

std_logic_vector

(7 downto 0):

="00000000"

; signal b:

std_logic_vector

(7 downto 0):

="00000000"

; signal c:

std_logic_vector

(7 downto 0):

="00000000"

; begin

process (clk, we, ra, wa)

begin

--if(we=

'0'and falling_edge (clk)

) then

if(we=

'0'and

(clk'event and clk='

0')) then

if(wa=

"00"

) then a<=i;

elsif

(wa=

"01"

) then b<=i;

elsif

(wa=

"10"

) then c<=i;

end if

; end if;if

(ra=

"00"

) then s<=a;

elsif

(ra=

"01"

) then s<=b;

elsif

(ra=

"10"

) then s<=c;

end if;if

(wa=

"00"

) then d<=a;

elsif

(wa=

"01"

) then d<=b;

elsif (wa=

"10"

) then d<=c;

end if

;

aaa<=a;

bbb<=b;

ccc<=c;

end process;

end aaa;

rtl檢視

(萌新的數電學習)用VHDL語言設計CPU

一 目的 完整 連貫地運用 數字邏輯 所學到的知識,熟練掌握 eda 工具基本使用方法,為學習好後續 計算機原理 課程做鋪墊。二 設計內容 一 按照給定的資料通路 資料格式和指令系統,使用 eda 工具設計一台用硬連線 邏輯控制的簡易計算機 二 要求靈活運用各方面知識,使得所設計的計算機具有較佳的效...

(萌新的數電學習)用 VHDL語言設計乙個異或門

實驗背景 異或門是一種用途廣泛的閘電路。典型應用是作為加法器的單元電路。vhdl 第一種寫法 library ieee 庫宣告 use ieee.std logic 1164.all entity yihuomen is 實體 port a,b in std logic y out std logi...

萌新的Linux學習之路(四)

一 使用者是什麼 使用者就是系統中使用者的身份,在系統中使用者儲存為若干字元 若干系統配置檔案 1.使用者資訊涉及到的系統配置檔案 二 使用者管理 1.使用者的建立 useradd u 引數 使用者名稱 指定使用者的uid useradd g 組 使用者名稱 指定使用者初始組資訊。這個組必須已經存在...