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

Subversion Repositories mips_enhanced

[/] [mips_enhanced/] [trunk/] [grlib-gpl-1.0.19-b3188/] [lib/] [cypress/] [ssram/] [package_utility.vhd] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 dimamali
--****************************************************************
2
--**    MODEL   :     package_utility                           **
3
--**    COMPANY :     Cypress Semiconductor                     **
4
--**    REVISION:     1.0 Created new package utility model     **
5
--**                                                            **
6
--****************************************************************
7
Library ieee,work;
8
Use ieee.std_logic_1164.all;
9
--   Use IEEE.Std_Logic_Arith.all;
10
use ieee.numeric_std.all;
11
 
12
--  Use IEEE.std_logic_TextIO.all;
13
--- Use work.package_timing.all;
14
 
15
Library Std;
16
   Use STD.TextIO.all;
17
 
18
Package package_utility is
19
 
20
FUNCTION convert_string( S: in STRING) RETURN STD_LOGIC_VECTOR;
21
FUNCTION CONV_INTEGER1(S : STD_LOGIC_VECTOR) RETURN INTEGER;
22
 
23
End; -- package package_utility
24
 
25
Package body package_utility is
26
 
27
 
28
------------------------------------------------------------------------------------------------
29
--Converts string into std_logic_vector 
30
------------------------------------------------------------------------------------------------
31
 
32
FUNCTION convert_string(S: in STRING) RETURN STD_LOGIC_VECTOR IS
33
        VARIABLE result : STD_LOGIC_VECTOR(S'RANGE);
34
                BEGIN
35
                        FOR i   IN S'RANGE LOOP
36
                                IF      S(i) = '0' THEN
37
                                        result(i) := '0';
38
                                ELSIF S(i) = '1' THEN
39
                                        result(i) := '1';
40
                                ELSIF S(i) = 'X' THEN
41
                                        result(i) := 'X';
42
                                ELSE
43
                                        result(i) := 'Z';
44
                                END IF;
45
                        END LOOP;
46
                RETURN result;
47
END convert_string;
48
 
49
------------------------------------------------------------------------------------------------
50
--Converts std_logic_vector into integer
51
------------------------------------------------------------------------------------------------
52
 
53
FUNCTION CONV_INTEGER1(S : STD_LOGIC_VECTOR) RETURN INTEGER IS
54
                VARIABLE result : INTEGER := 0;
55
                BEGIN
56
                        FOR i IN S'RANGE LOOP
57
                                IF S(i) = '1' THEN
58
                                        result := result + (2**i);
59
                                ELSIF S(i) = '0' THEN
60
                                        result := result;
61
                                ELSE
62
                                        result := 0;
63
                                END IF;
64
                        END LOOP;
65
                        RETURN result;
66
                END CONV_INTEGER1;
67
 
68
 
69
 
70
 
71
end package_utility;
72
 
73
 
74
 
75
 

powered by: WebSVN 2.1.0

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