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

2021-10-18 23:52:33 字數 2870 閱讀 4007

一、目的:

完整、連貫地運用《數字邏輯》所學到的知識,熟練掌握 eda 工具基本使用方法,為學習好後續《計算機原理》課程做鋪墊。

二、設計內容

(一) 按照給定的資料通路、資料格式和指令系統,使用 eda 工具設計一台用硬連線

邏輯控制的簡易計算機;

(二) 要求靈活運用各方面知識,使得所設計的計算機具有較佳的效能;

(三) 對所設計計算機的效能指標進行分析,整理出設計報告。

三、詳細設計

用vhdl語言設計的zf

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity zf is

port (x, en,clk:in std_logic;

zf:out std_logic)

;end entity;

architecture bhv of zf is

begin

process (clk, en)

begin

if(en=

'1') then

if(clk'event and clk='

0') then zf<=x;

--down side and en=

0 end if

; end if

; end process;

end architecture;

rtl檢視

用vhdl語言設計的cf

library ieee;

use ieee.std_logic_1164.all ;

use ieee.std_logic_unsigned.all;

entity cf is

port (x,en,clk:in std_logic;

cf:out std_logic)

;end entity;

architecture bhv of cf is

begin

process (clk, en)

begin

if(en=

'1')then

if(clk'event and clk='

0' ) then cf<=x;

--down side

end if

; end if

; end process ;

end architecture;

rtl檢視

用vhdl語言設計的ir

library ieee;

use ieee.std_logic_1164.all;

entity ir is

port

(input:in std_logic_vector

(7 downto 0);

clock,ld:in std_logic;

output_a,output_b:out std_logic_vector

(3 downto 0);

r:out std_logic_vector

(7 downto 0))

;end ir;

architecture bhv of ir is

signal i:

std_logic_vector

(7 downto 0):

="00000000"

;begin

process (clock,input,ld)

begin

if(clock'event and clock='

0') then--rising clock .

if(ld=

'1') then i<=input;

end if

; end if

; end process;

output_a<=i(

7 downto 4);

output_b<=i(

3 downto 0);

r<=i;

end bhv;

rtl檢視

cpu的設計我採用的是分層設計的方法。

最頂層的設計如圖:

func部分如圖:

decoder部分如圖:

zhiling部分如圖:

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

實驗背景 暫存器是cpu內的重要組成部分,模型機的通用暫存器組包含3個8位暫存器a b c,實現對此3個暫存器的讀寫操作。其介面及功能如下 vhdl語言 library ieee use ieee.std logic 1164.all use ieee.std logic unsigned.all ...

(萌新的數電學習)用 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 組 使用者名稱 指定使用者初始組資訊。這個組必須已經存在...