
Soru-2 : Program sayacının tasarımı
İşlemcinin en önemli birimlerinden oluşan program sayacı (PC- Program counter) blok olarak gösteriliyor.32 bit q çıkışı olan PC da saat(clk), silme (clr), 32 bit giriş (d), yükleme (ld) ve artırma (inc) girişleri vardır.Buna göre verilen blok yapısı kullanılarak VHDL gerçeklemesini yapınız.
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity PC_reg is
port(
d: in std_logic_vector(31 downto 0);
inc: in std_logic;
ld: in std_logic;
clk: in std_logic;
clr: in std_logic;
do: out std_logic_vector(31 downto 0)
);
end PC_reg;
architecture behaviour of PC_reg is
begin
process(clk)
begin
if clk='1' then
if inc='0' then
if ld='0' and clr='1' then
do<= d xor d;
elsif ld='1' and clr='0' then
do<= d;
elsif ld='1' and clr='1' then
do<= d xor d;
end if;
elsif inc='1' then
if ld='1' and clr='0' then
do<=d+4;
elsif ld='0' and clr='1' then
do<= d xor d;
elsif ld='1' and clr='1' then
do<= d xor d;
end if;
end if;
end if;
end process;
end behaviour;
Hiç yorum yok:
Yorum Gönder