alu/div: weniger code und weniger logic elements
authorBernhard Urban <lewurm@gmail.com>
Sun, 11 Apr 2010 12:22:44 +0000 (14:22 +0200)
committerBernhard Urban <lewurm@gmail.com>
Sun, 11 Apr 2010 12:26:04 +0000 (14:26 +0200)
4% (423/10570) logic elements @ 81.59MHz, klingt schon mal besser :)

src/gen_pkg.vhd

index 6f1ff43d48089bff05b40bd342d988ff68407efa..6fb4a46246c3b0e551f88982a289aa99e529917b 100644 (file)
@@ -14,18 +14,10 @@ end package gen_pkg;
 package body gen_pkg is
        function find_msb(a : csigned) return natural is
                variable r : natural := 0;
-               variable count : boolean := true;
        begin
                for i in (CBITS-1) downto 0 loop
-                       if count then
-                               if a(i) = '1' then
-                                       count := false;
-                               else
-                                       r := r+1;
-                               end if;
-                       else
-                               null;
-                       end if;
+                       exit when a(i) = '1';
+                       r := r+1;
                end loop;
                return (CBITS - r);
        end function find_msb;