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

Subversion Repositories riscv_vhdl

[/] [riscv_vhdl/] [trunk/] [rtl/] [techmap/] [bufg/] [bufgmux_tech.vhd] - Blame information for rev 5

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 5 sergeykhbr
----------------------------------------------------------------------------
2
--! @file
3
--! @copyright  Copyright 2015 GNSS Sensor Ltd. All right reserved.
4
--! @author     Sergey Khabarov
5
--! @brief      Virtual clock multiplexer with buffered output.
6
------------------------------------------------------------------------------
7
 
8
library ieee;
9
use ieee.std_logic_1164.all;
10
 
11
library techmap;
12
use techmap.gencomp.all;
13
 
14
entity bufgmux_tech is
15
  generic
16
  (
17
    tech : integer := 0;
18
    rf_frontend_ena : boolean := false
19
  );
20
  port (
21
    O        : out std_ulogic;
22
    I1       : in std_ulogic;
23
    I2       : in std_ulogic;
24
    S        : in std_ulogic
25
    );
26
end;
27
 
28
 
29
architecture rtl of bufgmux_tech is
30
 
31
 component bufgmux_fpga is
32
  generic (
33
    rf_frontend_ena : boolean := false
34
  );
35
  port (
36
    O       : out std_ulogic;
37
    I1      : in std_ulogic;
38
    I2      : in std_ulogic;
39
    S       : in std_ulogic
40
    );
41
  end component;
42
 
43
 component bufgmux_micron180 is
44
  port (
45
    O       : out std_ulogic;
46
    I1      : in std_ulogic;
47
    I2      : in std_ulogic;
48
    S       : in std_ulogic
49
    );
50
  end component;
51
 
52
 
53
begin
54
 
55
 
56
   inf : if tech = inferred generate
57
      O <= I1 when S = '0' else I2;
58
   end generate;
59
 
60
   xlnx : if tech = virtex6 or tech = kintex7 generate
61
      mux_buf : bufgmux_fpga generic map (
62
        rf_frontend_ena => rf_frontend_ena
63
      ) port map (
64
        O   => O,
65
        I1  => I1,
66
        I2  => I2,
67
        S   => S
68
      );
69
   end generate;
70
 
71
   mic0 : if tech = micron180 generate
72
      mux_buf : bufgmux_micron180
73
      port map (
74
        O   => O,
75
        I1  => I1,
76
        I2  => I2,
77
        S   => S
78
      );
79
   end generate;
80
 
81
 
82
end;

powered by: WebSVN 2.1.0

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