OpenCores
URL https://opencores.org/ocsvn/sdhc-sc-core/sdhc-sc-core/trunk

Subversion Repositories sdhc-sc-core

[/] [sdhc-sc-core/] [trunk/] [grpStrobesClocks/] [unitTimeoutGenerator/] [src/] [TimeoutGenerator-Rtl-a.vhdl] - Blame information for rev 185

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 164 rkastl
-- SDHC-SC-Core
2
-- Secure Digital High Capacity Self Configuring Core
3 79 rkastl
-- 
4 170 rkastl
-- (C) Copyright 2010, Rainer Kastl
5
-- All rights reserved.
6 164 rkastl
-- 
7 170 rkastl
-- Redistribution and use in source and binary forms, with or without
8
-- modification, are permitted provided that the following conditions are met:
9
--     * Redistributions of source code must retain the above copyright
10
--       notice, this list of conditions and the following disclaimer.
11
--     * Redistributions in binary form must reproduce the above copyright
12
--       notice, this list of conditions and the following disclaimer in the
13
--       documentation and/or other materials provided with the distribution.
14
--     * Neither the name of the <organization> nor the
15
--       names of its contributors may be used to endorse or promote products
16
--       derived from this software without specific prior written permission.
17 164 rkastl
-- 
18 170 rkastl
-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS  "AS IS" AND
19
-- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
-- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
-- DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
22
-- DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
-- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24
-- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25
-- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
-- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
-- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 164 rkastl
-- 
29
-- File        : TimeoutGenerator-Rtl-a.vhdl
30
-- Owner       : Rainer Kastl
31
-- Description : 
32
-- Links       : 
33
-- 
34 79 rkastl
 
35
architecture Rtl of TimeoutGenerator is
36
 
37
        constant cMax      : natural := gClkFrequency / (1 sec / gTimeoutTime) - 1;
38
        constant cBitWidth : natural := LogDualis(cMax);
39
 
40
        signal Counter : unsigned (cBitWidth - 1 downto 0);
41
        signal Enabled : std_ulogic;
42
 
43
begin
44
 
45 165 rkastl
        Regs : process (iClk)
46 79 rkastl
        begin
47 165 rkastl
                if (iClk'event and iClk = cActivated) then
48
                        if (iRstSync = cActivated) then
49
                                Counter  <= (others => '0');
50
                                Enabled  <= cInactivated;
51
                                oTimeout <= cInactivated;
52
                        else
53
                                oTimeout <= cInactivated; -- Default
54 79 rkastl
 
55 165 rkastl
                                if (iDisable = cActivated) then
56
                                        Enabled <= cInactivated;
57
                                        Counter <= (others => '0');
58 79 rkastl
 
59 165 rkastl
                                elsif (iEnable = cActivated or Enabled = cActivated) then
60
                                        Counter <= Counter + 1;
61
                                        Enabled <= cActivated;
62 79 rkastl
 
63 165 rkastl
                                        if (Counter >= cMax) then
64
                                                Counter  <= to_unsigned(0, cBitWidth);
65
                                                Enabled  <= cInactivated;
66
                                                oTimeout <= cActivated;
67
                                        end if;
68 79 rkastl
                                end if;
69
                        end if;
70
                end if;
71
        end process Regs;
72
 
73
end architecture Rtl;
74
 

powered by: WebSVN 2.1.0

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