OpenCores
URL https://opencores.org/ocsvn/mytwoqcache/mytwoqcache/trunk

Subversion Repositories mytwoqcache

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /
    from Rev 4 to Rev 5
    Reverse comparison

Rev 4 → Rev 5

/mytwoqcache/trunk/global.vhd
0,0 → 1,69
----------------------------------------------------------------------------------
-- Company: RIIC
-- Engineer: Gerhard Hohner Mat.nr.: 7555111
--
-- Create Date: 01/07/2004
-- Design Name: Diplomarbeit
-- Module Name: MYCPU - Rtl
-- Project Name: 32 bit FORTH processor
-- Target Devices: Spartan 3
-- Tool versions: ISE 8.2
-- Description: contains declarations valid for every source
-- Dependencies: none
--
-- Revision:
-- Revision 0.01 - File Created
-- Additional Comments:
--
----------------------------------------------------------------------------------
library IEEE;
use IEEE.std_logic_1164.all;
--use IEEE.numeric_std.all;
use IEEE.std_logic_arith.all;
 
---------------------------------------------------------------------------------------------------
package Global is
function To_Integer(Arg : in std_ulogic_vector) return integer;
function To_Integer(Arg : in std_ulogic) return integer;
function TO_UNSIGNED (ARG, SIZE: natural) return UNSIGNED;
 
subtype RAMrange is natural range 25 downto 0; -- 64MB as example MUST BE REDEFINED !!!
 
 
end Global;
 
 
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
package body Global is
function To_Integer(Arg : in std_ulogic) return integer is
begin
return CONV_INTEGER(Arg);
end;
 
 
---------------------------------------------------------------------------------------------------
function To_Integer(Arg : in std_ulogic_vector) return integer is
begin
return CONV_INTEGER(unsigned(Arg));
end;
 
---------------------------------------------------------------------------------------------------
function TO_UNSIGNED (ARG, SIZE: natural) return UNSIGNED is
variable RESULT: UNSIGNED(SIZE-1 downto 0);
variable I_VAL: NATURAL := ARG;
begin
for I in 0 to RESULT'LEFT loop
if (I_VAL mod 2) = 0 then
RESULT(I) := '0';
else RESULT(I) := '1';
end if;
I_VAL := I_VAL/2;
end loop;
return RESULT;
end TO_UNSIGNED;
 
end Global;
 
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.