CMX
CMX firmware code in-line documentation
 All Classes Namespaces Files Functions Variables
cmm_board_select_rtl.vhd
Go to the documentation of this file.
1 
4 
5 --
6 -- VHDL Architecture CMM_VME_Interface_v2_3.CMM_Board_Select.rtl
7 --
8 -- Created:
9 -- by - ipb28.UNKNOWN (TE2BELARUS)
10 -- at - 16:27:16 13/10/2005
11 --
12 -- using Mentor Graphics HDL Designer(TM) 2005.1 (Build 83)
13 --
14 -- The VME-- base address ranges:
15 -- CrateSlotNumber Module VME-- address
16 -- 3 CMM0 0x00700000-0x0077FFFE : VME address (23 DOWNTO 1): 0x700000 -> "0111_0000_0000_0000_0000_000x"
17 -- 20 CMM1 0x00780000-0x007FFFFE : VME address (23 DOWNTO 1): 0x780000 -> "0111_1000_0000_0000_0000_000x"
18 -- GEOADD(0) - 0 (Left) 1 (Right)
19 
20 LIBRARY ieee;
21 USE ieee.std_logic_1164.all;
22 USE ieee.numeric_std.all;
23 
25  port(
26  addressbus : in std_logic_vector (23 downto 19);
27  geoaddr_0 : in std_logic;
28  board_select_n : out std_logic
29  );
30 end CMM_Board_Select ;
31 
32 --------------------------------------------------------------------------------
33 architecture rtl of cmm_board_select is
34 --------------------------------------------------------------------------------
35 -- IPB 2005, from a flow chart by Panagiotis.
36 --------------------------------------------------------------------------------
37 begin
38 
39  allproc: process (addressbus, geoaddr_0)
40  begin
41  if (addressbus(23 downto 20)="0111") and (addressbus(19)= geoaddr_0) then
42  board_select_n <= '0';
43  else
44  board_select_n <= '1';
45  end if;
46  end process;
47 
48 end architecture rtl;
49 
out board_select_nstd_logic
allprocaddressbus,geoaddr_0
in addressbusstd_logic_vector (23 downto 19)