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

Subversion Repositories xmatchpro

[/] [xmatchpro/] [trunk/] [xmw4-comdec/] [xmatch_sim7/] [src/] [mg_logic_2.vhd] - Blame information for rev 9

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 9 eejlny
--This library is free software; you can redistribute it and/or
2
--modify it under the terms of the GNU Lesser General Public
3
--License as published by the Free Software Foundation; either
4
--version 2.1 of the License, or (at your option) any later version.
5
 
6
--This library is distributed in the hope that it will be useful,
7
--but WITHOUT ANY WARRANTY; without even the implied warranty of
8
--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
9
--Lesser General Public License for more details.
10
 
11
--You should have received a copy of the GNU Lesser General Public
12
--License along with this library; if not, write to the Free Software
13
--Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
14
 
15
-- e_mail : j.l.nunez-yanez@byacom.co.uk
16
 
17
---------------------------------
18
--  ENTITY       = MG_LOGIC    --
19
--  version      = 1.0         --
20
--  last update  = 11/02/98    --
21
--  author       = Jose Nunez  --
22
---------------------------------
23
 
24
 
25
-- FUNCTION
26
-- Movement generation logic.
27
-- This generates the required MOVE control bus according to the hit location
28
-- and whether or not a full hit has occurred.
29
 
30
 
31
--  PIN LIST
32
--  MATCH_LOC   = input match location (at most 1 bit is low, indicating
33
--                 the match location).
34
--  FULL_HIT    = input signal indicating that a full hit has occurred
35
--                 (active low).
36
--  MOVE        = output bus to control movement of data in the CAM array.
37
 
38
 
39
library ieee,dzx;
40
use ieee.std_logic_1164.all;
41
use dzx.attributes.all;
42
 
43
entity MG_LOGIC_2 is
44
port
45
(
46
      MATCH_LOC : in bit_vector(15 downto 0) ;
47
      FULL_HIT : in bit ;
48
      MOVE : out bit_vector(15 downto 0)
49
);
50
 
51
 
52
 
53
end MG_LOGIC_2;
54
 
55
 
56
architecture MOVE_2 of MG_LOGIC_2 is
57
 
58
-- signal TEMP_MOVE : bit_vector(127 downto 0);
59
 
60
begin
61
 
62
ENABLE : process (FULL_HIT,MATCH_LOC)
63
 
64
variable MOVE_TEMP: bit_vector(15 downto 0);
65
 
66
begin
67
 
68
 
69
 
70
if (FULL_HIT = '1') then
71
                MOVE_TEMP := "0000000000000000";
72
 
73
else
74
                MOVE_TEMP := MATCH_LOC;
75
end if;
76
 
77
for I in 0 to 15 loop
78
        MOVE(15-I) <= MOVE_TEMP(I);
79
end loop;
80
 
81
end process ENABLE;
82
 
83
 
84
end MOVE_2;
85
 
86
 

powered by: WebSVN 2.1.0

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