⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 if_unit.vhd

📁 DLX CPU VHDL CODE UNIVERSITY
💻 VHD
字号:
library IEEE;--use STD.textio.all;use IEEE.std_logic_1164.all;use work.dp32_types.all;entity IF_Unit is    generic (Tpd : Time := unit_delay);    port (d : in bit_32;          q1, q2 : out bus_bit_32 bus;	  	  j : in bit;          jwa : in bit;	  oe1, oe2: in bit;          reset : in bit;          PC_incr : in bit;          phi1, phi2 : in bit    );end IF_Unit;architecture behaviour of IF_Unit is  begin  process --(d, oe, PC_incr, reset, j, phi1, phi2)    variable master_PC, slave_PC : bit_32;    variable reset_flag: bit:='0';      begin    wait until phi1 = '1';     wait for 5 ns;    if PC_incr = '1' then    --wait on phi1; --until (read = '1' or write ='1');     if(reset_flag='0') then       slave_PC:=add(slave_PC,4);     else       reset_flag :='0';     end if;     end if;        if reset = '1' then      slave_PC := X"0000_0000";      reset_flag:='1';    end if;        wait until phi1 = '0';    if (jwa='1') then      reset_flag:='1';    end if;        if oe1 = '1' then      q1 <= slave_PC after Tpd;    else      q1 <= null after Tpd;    end if;    if oe2 = '1' then      q2 <= slave_PC after Tpd;    else      q2 <= null after Tpd;    end if;     wait until phi2='1';    if j='1' then       slave_PC:=d;    end if;  end process;end behaviour;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -