extension : gpm extension
[calu.git] / cpu / src / extension_b.vhd
index 1947bde77ba738377e2817691e3c0acee3d1a8eb..a035511b1284e489e2d14ee37d95175ace76c738 100644 (file)
@@ -8,24 +8,29 @@ use work.core_pkg.all;
 use work.mem_pkg.all;
 use work.extension_pkg.all;
 
-architecture behav of extension is
+architecture behav of extension_gpm is
+type gpm_internal is record
+        status : status_rec;
+end record gpm_internal;
 
+signal reg, reg_nxt : gpm_internal;
 
 begin
-
-
-syn: process(clk, reset)
-
+syn : process (clk, reset)
 begin
+        if (reset = RESET_VALUE) then
+                reg.status <= ('0','0','0','0');
+        elsif rising_edge(clk) then
+                reg <= reg_nxt;
+        end if;
+end process syn;
+
+asyn : process (clk, reset, alu_nxt)
+begin
+        reg_nxt.status <= alu_nxt.status;
+end process asyn;
 
-       if (reset = RESET_VALUE) then
-               
-       elsif rising_edge(clk) then
-               
-       end if;
-       
-end process; 
-
+psw <= reg.status;
 
 end behav;