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

Subversion Repositories ahbmaster

[/] [ahbmaster/] [trunk/] [test79_AHBmaster/] [component/] [Actel/] [DirectCore/] [CoreAPB/] [1.1.101/] [rtl/] [vhdl/] [o/] [MuxP2B.vhd] - Blame information for rev 3

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 uson
library ieee;
2
use ieee.std_logiC_1164.all;
3
entity COReAPB_l is
4
port (PSELS0: in STD_LOgic;
5
PSELS1: in stD_LOGIC;
6
PSELS2: in STD_logic;
7
PSELS3: in sTD_LOGIC;
8
PSELS4: in sTD_LOGIC;
9
PSELS5: in STD_logic;
10
PSELS6: in STD_logic;
11
PSELS7: in Std_logic;
12
PSELS8: in Std_logic;
13
PSELS9: in STD_Logic;
14
PSELS10: in STD_Logic;
15
PSELS11: in STD_Logic;
16
PSELS12: in STD_LOGic;
17
PSELS13: in std_LOGIC;
18
PSELS14: in std_LOGIC;
19
PSELS15: in std_logic;
20
PRDATAS0: in STD_LOGIc_vector(31 downto 0);
21
PRDATAS1: in Std_logic_vECTOR(31 downto 0);
22
PRDATAS2: in STD_LOgic_vector(31 downto 0);
23
PRDATAS3: in std_logic_vECTOR(31 downto 0);
24
PRDATAS4: in STD_logic_vectOR(31 downto 0);
25
PRDATAS5: in std_LOGIC_VEctor(31 downto 0);
26
PRDATAS6: in std_LOGIC_VEctor(31 downto 0);
27
PRDATAS7: in std_lOGIC_VECtor(31 downto 0);
28
PRDATAS8: in STD_logic_vectOR(31 downto 0);
29
PRDATAS9: in std_logIC_VECTOr(31 downto 0);
30
PRDATAS10: in Std_logic_vECTOR(31 downto 0);
31
PRDATAS11: in std_logiC_VECTOR(31 downto 0);
32
PRDATAS12: in Std_logic_veCTOR(31 downto 0);
33
PRDATAS13: in std_logic_vECTOR(31 downto 0);
34
PRDATAS14: in STD_logic_vectOR(31 downto 0);
35
PRDATAS15: in STD_logic_vectOR(31 downto 0);
36
PRDATA: out STD_LOgic_vector(31 downto 0));
37
end COREAPB_l;
38
 
39
architecture CoREAPB_Li0 of COREAPB_l is
40
 
41
constant CoreAPB_II0: STD_Logic_vector(3 downto 0) := "0000";
42
 
43
constant CoreAPB_o00: STd_logic_vecTOR(3 downto 0) := "0001";
44
 
45
constant COreAPB_l00: STd_logic_vecTOR(3 downto 0) := "0010";
46
 
47
constant CoreAPB_I00: stD_LOGIC_vector(3 downto 0) := "0011";
48
 
49
constant CoreAPB_o10: std_loGIC_VECTor(3 downto 0) := "0100";
50
 
51
constant CoreAPB_L10: std_LOGIC_vector(3 downto 0) := "0101";
52
 
53
constant COREAPB_i10: STD_logic_vectOR(3 downto 0) := "0110";
54
 
55
constant CoreAPB_oo1: Std_logic_veCTOR(3 downto 0) := "0111";
56
 
57
constant CoreAPB_LO1: std_LOGIC_VEctor(3 downto 0) := "1000";
58
 
59
constant COREAPB_io1: STD_logic_vectOR(3 downto 0) := "1001";
60
 
61
constant CoreAPB_OL1: std_lOGIC_VECtor(3 downto 0) := "1010";
62
 
63
constant COreAPB_ll1: Std_logic_vecTOR(3 downto 0) := "1011";
64
 
65
constant CoreAPB_il1: STD_logic_vectOR(3 downto 0) := "1100";
66
 
67
constant CoreAPB_oi1: STD_logic_vectOR(3 downto 0) := "1101";
68
 
69
constant CoreAPB_li1: Std_logic_vECTOR(3 downto 0) := "1110";
70
 
71
constant CoreAPB_II1: sTD_LOGIC_vector(3 downto 0) := "1111";
72
 
73
signal COreAPB_o01: Std_logic_veCTOR(3 downto 0);
74
 
75
begin
76
CorEAPB_O01(3) <= PSELS15 or PSELS14
77
or PSELS13
78
or PSELS12
79
or PSELS11
80
or PSELS10
81
or PSELS9
82
or PSELS8;
83
COReAPB_o01(2) <= PSELS15 or PSELS14
84
or PSELS13
85
or PSELS12
86
or PSELS7
87
or PSELS6
88
or PSELS5
89
or PSELS4;
90
CoreAPB_o01(1) <= PSELS15 or PSELS14
91
or PSELS11
92
or PSELS10
93
or PSELS7
94
or PSELS6
95
or PSELS3
96
or PSELS2;
97
COREAPB_o01(0) <= PSELS15 or PSELS13
98
or PSELS11
99
or PSELS9
100
or PSELS7
101
or PSELS5
102
or PSELS3
103
or PSELS1;
104
CoreAPB_L01:
105
process (CoreAPB_O01,PRDATAS0,PRDATAS1,PRDATAS2,PRDATAS3,PRDATAS4,PRDATAS5,PRDATAS6,PRDATAS7,PRDATAS8,PRDATAS9,PRDATAS10,PRDATAS11,PRDATAS12,PRDATAS13,PRDATAS14,PRDATAS15,PSELS0)
106
begin
107
case CoreAPB_o01 is
108
when CoreAPB_iI0 =>
109
if (PSELS0 = '1') then
110
PRDATA <= PRDATAS0;
111
else
112
PRDATA <= "0000"&"0000"&"0000"&"0000"&"0000"&"0000"&"0000"&"0000";
113
end if;
114
when CoreAPB_o00 =>
115
PRDATA <= PRDATAS1;
116
when COREAPB_l00 =>
117
PRDATA <= PRDATAS2;
118
when COREAPB_i00 =>
119
PRDATA <= PRDATAS3;
120
when COREAPB_o10 =>
121
PRDATA <= PRDATAS4;
122
when CoreAPB_l10 =>
123
PRDATA <= PRDATAS5;
124
when COReAPB_i10 =>
125
PRDATA <= PRDATAS6;
126
when CoreAPB_oO1 =>
127
PRDATA <= PRDATAS7;
128
when COreAPB_lo1 =>
129
PRDATA <= PRDATAS8;
130
when CoreAPB_IO1 =>
131
PRDATA <= PRDATAS9;
132
when COREAPB_ol1 =>
133
PRDATA <= PRDATAS10;
134
when COreAPB_ll1 =>
135
PRDATA <= PRDATAS11;
136
when COreAPB_il1 =>
137
PRDATA <= PRDATAS12;
138
when CoreAPB_OI1 =>
139
PRDATA <= PRDATAS13;
140
when CoreAPB_li1 =>
141
PRDATA <= PRDATAS14;
142
when COREAPB_ii1 =>
143
PRDATA <= PRDATAS15;
144
when others =>
145
PRDATA <= "0000"&"0000"&"0000"&"0000"&"0000"&"0000"&"0000"&"0000";
146
end case;
147
end process CoreAPB_l01;
148
end COREAPB_li0;

powered by: WebSVN 2.1.0

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