source: PROJECT_CORE_MPI/MPI_HCL/TRUNK/NOC/SCHEDULER9_9.VHD @ 101

Last change on this file since 101 was 101, checked in by rolagamo, 10 years ago
File size: 50.1 KB
Line 
1---------------------------------------------------------------------------------
2-- Company:
3-- Engineer: KIEGAING EMMANUEL GEL EN 5
4--
5-- Create Date:    03:56:34 05/06/2011
6-- Design Name:
7-- Module Name:    Sheduler - Behavioral
8-- Project Name:
9-- Target Devices:
10-- Tool versions:
11-- Description: Module de l'ordonnanceur du switch crossbar
12-- l'algorithme utilisée est le DPA (diagonal propagation arbiter)
13--
14-- Dependencies:
15--
16-- Revision:
17-- Revision 0.01 - File Created
18-- Additional Comments:
19--
20----------------------------------------------------------------------------------
21library IEEE;
22use IEEE.STD_LOGIC_1164.ALL;
23use IEEE.STD_LOGIC_ARITH.ALL;
24use IEEE.STD_LOGIC_UNSIGNED.ALL;
25--use Work.Sheduler_package.all;
26
27---- Uncomment the following library declaration if instantiating
28---- any Xilinx primitives in this code.
29--library UNISIM;
30--use UNISIM.VComponents.all;
31entity Scheduler9_9 is
32    Port ( Request : in  STD_LOGIC_VECTOR (81 downto 1);
33                   Fifo_full : in STD_LOGIC_VECTOR (9 downto 1);
34           clk : in  STD_LOGIC;
35           reset : in  STD_LOGIC;
36            priority_rotation : in  STD_LOGIC_VECTOR (9 downto 1);
37           port_grant : out  STD_LOGIC_VECTOR (81 downto 1));
38end Scheduler9_9;
39
40architecture Behavioral of Scheduler9_9 is
41--Declaration du types
42--tableau de signaux de connexion des cellules arbitres
43TYPE C_Bar_Signal_Array IS ARRAY(17 downto 1) of STD_LOGIC_VECTOR(9 downto 1);
44-- declaration du composant cellule d'arbitrage
45Component Arbiter
46  PORT (P, Fifo_full,Request, West,North : in  STD_LOGIC;
47        Grant,East,South : out  STD_LOGIC );
48End Component;--Signaux de connexion des cellues
49SIGNAL south_2_north :  C_Bar_Signal_Array; -- connexion south north
50SIGNAL east_2_west   :  C_Bar_Signal_Array; -- connexion east west
51SIGNAL Signal_mask      : C_Bar_Signal_Array;-- connexion des masques de priorité
52SIGNAL Signal_grant     : C_Bar_Signal_Array;-- connexion des signaux de validation
53SIGNAL Signal_priority  : STD_LOGIC_VECTOR (17 DOWNTO 1);--signal pour la connection des vecteur de priorité
54SIGNAL High         : std_logic;--niveau pour les cellules des extremités nord et ouest
55 signal grant_latch : std_logic_vector(81 downto 1);
56 signal priority_rotation_en : std_logic;
57 signal Grant :  std_logic_vector(81 downto 1);
58 begin
59
60--validation de la rotation de priorité lorsque aucun port n'emet
61 priority_rotation_en <= '1' when unsigned(priority_rotation) = 511 else        '0';
62--latch servant qui memorise le signal grant pendant a transmission
63grant_latch_process : process(clk)
64 begin
65  if rising_edge(clk) then
66   if reset = '1' then
67                grant_latch <= (others => '0');
68         elsif priority_rotation_en = '1' then
69           grant_latch <= Grant;
70   end if;
71   end if;
72 end process;
73 port_grant <= Grant and grant_latch;
74 Grant(1)  <= Signal_grant(1)(1) or Signal_grant(10)(1); --  Grant(1,1)
75Grant(2)  <= Signal_grant(2)(2) or Signal_grant(11)(2); --  Grant(1,2)
76Grant(3)  <= Signal_grant(3)(3) or Signal_grant(12)(3); --  Grant(1,3)
77Grant(4)  <= Signal_grant(4)(4) or Signal_grant(13)(4); --  Grant(1,4)
78Grant(5)  <= Signal_grant(5)(5) or Signal_grant(14)(5); --  Grant(1,5)
79Grant(6)  <= Signal_grant(6)(6) or Signal_grant(15)(6); --  Grant(1,6)
80Grant(7)  <= Signal_grant(7)(7) or Signal_grant(16)(7); --  Grant(1,7)
81Grant(8)  <= Signal_grant(8)(8) or Signal_grant(17)(8); --  Grant(1,8)
82Grant(9)  <= Signal_grant(9)(9) ;                      --  Grant(1,9)
83Grant(10)  <= Signal_grant(2)(1) or Signal_grant(11)(1); --  Grant(2,1)
84Grant(11)  <= Signal_grant(3)(2) or Signal_grant(12)(2); --  Grant(2,2)
85Grant(12)  <= Signal_grant(4)(3) or Signal_grant(13)(3); --  Grant(2,3)
86Grant(13)  <= Signal_grant(5)(4) or Signal_grant(14)(4); --  Grant(2,4)
87Grant(14)  <= Signal_grant(6)(5) or Signal_grant(15)(5); --  Grant(2,5)
88Grant(15)  <= Signal_grant(7)(6) or Signal_grant(16)(6); --  Grant(2,6)
89Grant(16)  <= Signal_grant(8)(7) or Signal_grant(17)(7); --  Grant(2,7)
90Grant(17)  <= Signal_grant(9)(8) ;                      --  Grant(2,8)
91Grant(18)  <= Signal_grant(1)(9) or Signal_grant(10)(9); --  Grant(2,9)
92Grant(19)  <= Signal_grant(3)(1) or Signal_grant(12)(1); --  Grant(3,1)
93Grant(20)  <= Signal_grant(4)(2) or Signal_grant(13)(2); --  Grant(3,2)
94Grant(21)  <= Signal_grant(5)(3) or Signal_grant(14)(3); --  Grant(3,3)
95Grant(22)  <= Signal_grant(6)(4) or Signal_grant(15)(4); --  Grant(3,4)
96Grant(23)  <= Signal_grant(7)(5) or Signal_grant(16)(5); --  Grant(3,5)
97Grant(24)  <= Signal_grant(8)(6) or Signal_grant(17)(6); --  Grant(3,6)
98Grant(25)  <= Signal_grant(9)(7) ;                      --  Grant(3,7)
99Grant(26)  <= Signal_grant(1)(8) or Signal_grant(10)(8); --  Grant(3,8)
100Grant(27)  <= Signal_grant(2)(9) or Signal_grant(11)(9); --  Grant(3,9)
101Grant(28)  <= Signal_grant(4)(1) or Signal_grant(13)(1); --  Grant(4,1)
102Grant(29)  <= Signal_grant(5)(2) or Signal_grant(14)(2); --  Grant(4,2)
103Grant(30)  <= Signal_grant(6)(3) or Signal_grant(15)(3); --  Grant(4,3)
104Grant(31)  <= Signal_grant(7)(4) or Signal_grant(16)(4); --  Grant(4,4)
105Grant(32)  <= Signal_grant(8)(5) or Signal_grant(17)(5); --  Grant(4,5)
106Grant(33)  <= Signal_grant(9)(6) ;                      --  Grant(4,6)
107Grant(34)  <= Signal_grant(1)(7) or Signal_grant(10)(7); --  Grant(4,7)
108Grant(35)  <= Signal_grant(2)(8) or Signal_grant(11)(8); --  Grant(4,8)
109Grant(36)  <= Signal_grant(3)(9) or Signal_grant(12)(9); --  Grant(4,9)
110Grant(37)  <= Signal_grant(5)(1) or Signal_grant(14)(1); --  Grant(5,1)
111Grant(38)  <= Signal_grant(6)(2) or Signal_grant(15)(2); --  Grant(5,2)
112Grant(39)  <= Signal_grant(7)(3) or Signal_grant(16)(3); --  Grant(5,3)
113Grant(40)  <= Signal_grant(8)(4) or Signal_grant(17)(4); --  Grant(5,4)
114Grant(41)  <= Signal_grant(9)(5) ;                      --  Grant(5,5)
115Grant(42)  <= Signal_grant(1)(6) or Signal_grant(10)(6); --  Grant(5,6)
116Grant(43)  <= Signal_grant(2)(7) or Signal_grant(11)(7); --  Grant(5,7)
117Grant(44)  <= Signal_grant(3)(8) or Signal_grant(12)(8); --  Grant(5,8)
118Grant(45)  <= Signal_grant(4)(9) or Signal_grant(13)(9); --  Grant(5,9)
119Grant(46)  <= Signal_grant(6)(1) or Signal_grant(15)(1); --  Grant(6,1)
120Grant(47)  <= Signal_grant(7)(2) or Signal_grant(16)(2); --  Grant(6,2)
121Grant(48)  <= Signal_grant(8)(3) or Signal_grant(17)(3); --  Grant(6,3)
122Grant(49)  <= Signal_grant(9)(4) ;                      --  Grant(6,4)
123Grant(50)  <= Signal_grant(1)(5) or Signal_grant(10)(5); --  Grant(6,5)
124Grant(51)  <= Signal_grant(2)(6) or Signal_grant(11)(6); --  Grant(6,6)
125Grant(52)  <= Signal_grant(3)(7) or Signal_grant(12)(7); --  Grant(6,7)
126Grant(53)  <= Signal_grant(4)(8) or Signal_grant(13)(8); --  Grant(6,8)
127Grant(54)  <= Signal_grant(5)(9) or Signal_grant(14)(9); --  Grant(6,9)
128Grant(55)  <= Signal_grant(7)(1) or Signal_grant(16)(1); --  Grant(7,1)
129Grant(56)  <= Signal_grant(8)(2) or Signal_grant(17)(2); --  Grant(7,2)
130Grant(57)  <= Signal_grant(9)(3) ;                      --  Grant(7,3)
131Grant(58)  <= Signal_grant(1)(4) or Signal_grant(10)(4); --  Grant(7,4)
132Grant(59)  <= Signal_grant(2)(5) or Signal_grant(11)(5); --  Grant(7,5)
133Grant(60)  <= Signal_grant(3)(6) or Signal_grant(12)(6); --  Grant(7,6)
134Grant(61)  <= Signal_grant(4)(7) or Signal_grant(13)(7); --  Grant(7,7)
135Grant(62)  <= Signal_grant(5)(8) or Signal_grant(14)(8); --  Grant(7,8)
136Grant(63)  <= Signal_grant(6)(9) or Signal_grant(15)(9); --  Grant(7,9)
137Grant(64)  <= Signal_grant(8)(1) or Signal_grant(17)(1); --  Grant(8,1)
138Grant(65)  <= Signal_grant(9)(2) ;                      --  Grant(8,2)
139Grant(66)  <= Signal_grant(1)(3) or Signal_grant(10)(3); --  Grant(8,3)
140Grant(67)  <= Signal_grant(2)(4) or Signal_grant(11)(4); --  Grant(8,4)
141Grant(68)  <= Signal_grant(3)(5) or Signal_grant(12)(5); --  Grant(8,5)
142Grant(69)  <= Signal_grant(4)(6) or Signal_grant(13)(6); --  Grant(8,6)
143Grant(70)  <= Signal_grant(5)(7) or Signal_grant(14)(7); --  Grant(8,7)
144Grant(71)  <= Signal_grant(6)(8) or Signal_grant(15)(8); --  Grant(8,8)
145Grant(72)  <= Signal_grant(7)(9) or Signal_grant(16)(9); --  Grant(8,9)
146Grant(73)  <= Signal_grant(9)(1) ;                      --  Grant(9,1)
147Grant(74)  <= Signal_grant(1)(2) or Signal_grant(10)(2); --  Grant(9,2)
148Grant(75)  <= Signal_grant(2)(3) or Signal_grant(11)(3); --  Grant(9,3)
149Grant(76)  <= Signal_grant(3)(4) or Signal_grant(12)(4); --  Grant(9,4)
150Grant(77)  <= Signal_grant(4)(5) or Signal_grant(13)(5); --  Grant(9,5)
151Grant(78)  <= Signal_grant(5)(6) or Signal_grant(14)(6); --  Grant(9,6)
152Grant(79)  <= Signal_grant(6)(7) or Signal_grant(15)(7); --  Grant(9,7)
153Grant(80)  <= Signal_grant(7)(8) or Signal_grant(16)(8); --  Grant(9,8)
154Grant(81)  <= Signal_grant(8)(9) or Signal_grant(17)(9); --  Grant(9,9)
155High <= '1';
156
157----instantiations des cellules arbitres et interconnection
158
159-------------------------- Diagonale n° 1
160
161
162Arbiter_1_1 : Arbiter
163
164PORT MAP (Request => Request(1), North => High, West => High, P => Signal_priority(17), Fifo_full => Fifo_full(1), 
165South => south_2_north(1)(1), East => east_2_west(1)(1) , Grant => Signal_grant(1)(1));
166
167Arbiter_1_2 : Arbiter
168
169PORT MAP (Request => Request(74), North => High, West => High, P => Signal_priority(17), Fifo_full => Fifo_full(2), 
170South => south_2_north(1)(2), East => east_2_west(1)(2) , Grant => Signal_grant(1)(2));
171
172Arbiter_1_3 : Arbiter
173
174PORT MAP (Request => Request(66), North => High, West => High, P => Signal_priority(17), Fifo_full => Fifo_full(3), 
175South => south_2_north(1)(3), East => east_2_west(1)(3) , Grant => Signal_grant(1)(3));
176
177Arbiter_1_4 : Arbiter
178
179PORT MAP (Request => Request(58), North => High, West => High, P => Signal_priority(17), Fifo_full => Fifo_full(4), 
180South => south_2_north(1)(4), East => east_2_west(1)(4) , Grant => Signal_grant(1)(4));
181
182Arbiter_1_5 : Arbiter
183
184PORT MAP (Request => Request(50), North => High, West => High, P => Signal_priority(17), Fifo_full => Fifo_full(5), 
185South => south_2_north(1)(5), East => east_2_west(1)(5) , Grant => Signal_grant(1)(5));
186
187Arbiter_1_6 : Arbiter
188
189PORT MAP (Request => Request(42), North => High, West => High, P => Signal_priority(17), Fifo_full => Fifo_full(6), 
190South => south_2_north(1)(6), East => east_2_west(1)(6) , Grant => Signal_grant(1)(6));
191
192Arbiter_1_7 : Arbiter
193
194PORT MAP (Request => Request(34), North => High, West => High, P => Signal_priority(17), Fifo_full => Fifo_full(7), 
195South => south_2_north(1)(7), East => east_2_west(1)(7) , Grant => Signal_grant(1)(7));
196
197Arbiter_1_8 : Arbiter
198
199PORT MAP (Request => Request(26), North => High, West => High, P => Signal_priority(17), Fifo_full => Fifo_full(8), 
200South => south_2_north(1)(8), East => east_2_west(1)(8) , Grant => Signal_grant(1)(8));
201
202Arbiter_1_9 : Arbiter
203
204PORT MAP (Request => Request(18), North => High, West => High, P => Signal_priority(17), Fifo_full => Fifo_full(9), 
205South => south_2_north(1)(9), East => east_2_west(1)(9) , Grant => Signal_grant(1)(9));
206
207-------------------------- Diagonale n° 2
208
209
210Arbiter_2_1 : Arbiter
211
212PORT MAP (Request => Request(10), North => south_2_north(1)(1), West => east_2_west(1)(9), P => Signal_priority(16), Fifo_full => Fifo_full(1), 
213South => south_2_north(2)(1), East => east_2_west(2)(1) , Grant => Signal_grant(2)(1));
214
215Arbiter_2_2 : Arbiter
216
217PORT MAP (Request => Request(2), North => south_2_north(1)(2), West => east_2_west(1)(1), P => Signal_priority(16), Fifo_full => Fifo_full(2), 
218South => south_2_north(2)(2), East => east_2_west(2)(2) , Grant => Signal_grant(2)(2));
219
220Arbiter_2_3 : Arbiter
221
222PORT MAP (Request => Request(75), North => south_2_north(1)(3), West => east_2_west(1)(2), P => Signal_priority(16), Fifo_full => Fifo_full(3), 
223South => south_2_north(2)(3), East => east_2_west(2)(3) , Grant => Signal_grant(2)(3));
224
225Arbiter_2_4 : Arbiter
226
227PORT MAP (Request => Request(67), North => south_2_north(1)(4), West => east_2_west(1)(3), P => Signal_priority(16), Fifo_full => Fifo_full(4), 
228South => south_2_north(2)(4), East => east_2_west(2)(4) , Grant => Signal_grant(2)(4));
229
230Arbiter_2_5 : Arbiter
231
232PORT MAP (Request => Request(59), North => south_2_north(1)(5), West => east_2_west(1)(4), P => Signal_priority(16), Fifo_full => Fifo_full(5), 
233South => south_2_north(2)(5), East => east_2_west(2)(5) , Grant => Signal_grant(2)(5));
234
235Arbiter_2_6 : Arbiter
236
237PORT MAP (Request => Request(51), North => south_2_north(1)(6), West => east_2_west(1)(5), P => Signal_priority(16), Fifo_full => Fifo_full(6), 
238South => south_2_north(2)(6), East => east_2_west(2)(6) , Grant => Signal_grant(2)(6));
239
240Arbiter_2_7 : Arbiter
241
242PORT MAP (Request => Request(43), North => south_2_north(1)(7), West => east_2_west(1)(6), P => Signal_priority(16), Fifo_full => Fifo_full(7), 
243South => south_2_north(2)(7), East => east_2_west(2)(7) , Grant => Signal_grant(2)(7));
244
245Arbiter_2_8 : Arbiter
246
247PORT MAP (Request => Request(35), North => south_2_north(1)(8), West => east_2_west(1)(7), P => Signal_priority(16), Fifo_full => Fifo_full(8), 
248South => south_2_north(2)(8), East => east_2_west(2)(8) , Grant => Signal_grant(2)(8));
249
250Arbiter_2_9 : Arbiter
251
252PORT MAP (Request => Request(27), North => south_2_north(1)(9), West => east_2_west(1)(8), P => Signal_priority(16), Fifo_full => Fifo_full(9), 
253South => south_2_north(2)(9), East => east_2_west(2)(9) , Grant => Signal_grant(2)(9));
254
255-------------------------- Diagonale n° 3
256
257
258Arbiter_3_1 : Arbiter
259
260PORT MAP (Request => Request(19), North => south_2_north(2)(1), West => east_2_west(2)(9), P => Signal_priority(15), Fifo_full => Fifo_full(1), 
261South => south_2_north(3)(1), East => east_2_west(3)(1) , Grant => Signal_grant(3)(1));
262
263Arbiter_3_2 : Arbiter
264
265PORT MAP (Request => Request(11), North => south_2_north(2)(2), West => east_2_west(2)(1), P => Signal_priority(15), Fifo_full => Fifo_full(2), 
266South => south_2_north(3)(2), East => east_2_west(3)(2) , Grant => Signal_grant(3)(2));
267
268Arbiter_3_3 : Arbiter
269
270PORT MAP (Request => Request(3), North => south_2_north(2)(3), West => east_2_west(2)(2), P => Signal_priority(15), Fifo_full => Fifo_full(3), 
271South => south_2_north(3)(3), East => east_2_west(3)(3) , Grant => Signal_grant(3)(3));
272
273Arbiter_3_4 : Arbiter
274
275PORT MAP (Request => Request(76), North => south_2_north(2)(4), West => east_2_west(2)(3), P => Signal_priority(15), Fifo_full => Fifo_full(4), 
276South => south_2_north(3)(4), East => east_2_west(3)(4) , Grant => Signal_grant(3)(4));
277
278Arbiter_3_5 : Arbiter
279
280PORT MAP (Request => Request(68), North => south_2_north(2)(5), West => east_2_west(2)(4), P => Signal_priority(15), Fifo_full => Fifo_full(5), 
281South => south_2_north(3)(5), East => east_2_west(3)(5) , Grant => Signal_grant(3)(5));
282
283Arbiter_3_6 : Arbiter
284
285PORT MAP (Request => Request(60), North => south_2_north(2)(6), West => east_2_west(2)(5), P => Signal_priority(15), Fifo_full => Fifo_full(6), 
286South => south_2_north(3)(6), East => east_2_west(3)(6) , Grant => Signal_grant(3)(6));
287
288Arbiter_3_7 : Arbiter
289
290PORT MAP (Request => Request(52), North => south_2_north(2)(7), West => east_2_west(2)(6), P => Signal_priority(15), Fifo_full => Fifo_full(7), 
291South => south_2_north(3)(7), East => east_2_west(3)(7) , Grant => Signal_grant(3)(7));
292
293Arbiter_3_8 : Arbiter
294
295PORT MAP (Request => Request(44), North => south_2_north(2)(8), West => east_2_west(2)(7), P => Signal_priority(15), Fifo_full => Fifo_full(8), 
296South => south_2_north(3)(8), East => east_2_west(3)(8) , Grant => Signal_grant(3)(8));
297
298Arbiter_3_9 : Arbiter
299
300PORT MAP (Request => Request(36), North => south_2_north(2)(9), West => east_2_west(2)(8), P => Signal_priority(15), Fifo_full => Fifo_full(9), 
301South => south_2_north(3)(9), East => east_2_west(3)(9) , Grant => Signal_grant(3)(9));
302
303-------------------------- Diagonale n° 4
304
305
306Arbiter_4_1 : Arbiter
307
308PORT MAP (Request => Request(28), North => south_2_north(3)(1), West => east_2_west(3)(9), P => Signal_priority(14), Fifo_full => Fifo_full(1), 
309South => south_2_north(4)(1), East => east_2_west(4)(1) , Grant => Signal_grant(4)(1));
310
311Arbiter_4_2 : Arbiter
312
313PORT MAP (Request => Request(20), North => south_2_north(3)(2), West => east_2_west(3)(1), P => Signal_priority(14), Fifo_full => Fifo_full(2), 
314South => south_2_north(4)(2), East => east_2_west(4)(2) , Grant => Signal_grant(4)(2));
315
316Arbiter_4_3 : Arbiter
317
318PORT MAP (Request => Request(12), North => south_2_north(3)(3), West => east_2_west(3)(2), P => Signal_priority(14), Fifo_full => Fifo_full(3), 
319South => south_2_north(4)(3), East => east_2_west(4)(3) , Grant => Signal_grant(4)(3));
320
321Arbiter_4_4 : Arbiter
322
323PORT MAP (Request => Request(4), North => south_2_north(3)(4), West => east_2_west(3)(3), P => Signal_priority(14), Fifo_full => Fifo_full(4), 
324South => south_2_north(4)(4), East => east_2_west(4)(4) , Grant => Signal_grant(4)(4));
325
326Arbiter_4_5 : Arbiter
327
328PORT MAP (Request => Request(77), North => south_2_north(3)(5), West => east_2_west(3)(4), P => Signal_priority(14), Fifo_full => Fifo_full(5), 
329South => south_2_north(4)(5), East => east_2_west(4)(5) , Grant => Signal_grant(4)(5));
330
331Arbiter_4_6 : Arbiter
332
333PORT MAP (Request => Request(69), North => south_2_north(3)(6), West => east_2_west(3)(5), P => Signal_priority(14), Fifo_full => Fifo_full(6), 
334South => south_2_north(4)(6), East => east_2_west(4)(6) , Grant => Signal_grant(4)(6));
335
336Arbiter_4_7 : Arbiter
337
338PORT MAP (Request => Request(61), North => south_2_north(3)(7), West => east_2_west(3)(6), P => Signal_priority(14), Fifo_full => Fifo_full(7), 
339South => south_2_north(4)(7), East => east_2_west(4)(7) , Grant => Signal_grant(4)(7));
340
341Arbiter_4_8 : Arbiter
342
343PORT MAP (Request => Request(53), North => south_2_north(3)(8), West => east_2_west(3)(7), P => Signal_priority(14), Fifo_full => Fifo_full(8), 
344South => south_2_north(4)(8), East => east_2_west(4)(8) , Grant => Signal_grant(4)(8));
345
346Arbiter_4_9 : Arbiter
347
348PORT MAP (Request => Request(45), North => south_2_north(3)(9), West => east_2_west(3)(8), P => Signal_priority(14), Fifo_full => Fifo_full(9), 
349South => south_2_north(4)(9), East => east_2_west(4)(9) , Grant => Signal_grant(4)(9));
350
351-------------------------- Diagonale n° 5
352
353
354Arbiter_5_1 : Arbiter
355
356PORT MAP (Request => Request(37), North => south_2_north(4)(1), West => east_2_west(4)(9), P => Signal_priority(13), Fifo_full => Fifo_full(1), 
357South => south_2_north(5)(1), East => east_2_west(5)(1) , Grant => Signal_grant(5)(1));
358
359Arbiter_5_2 : Arbiter
360
361PORT MAP (Request => Request(29), North => south_2_north(4)(2), West => east_2_west(4)(1), P => Signal_priority(13), Fifo_full => Fifo_full(2), 
362South => south_2_north(5)(2), East => east_2_west(5)(2) , Grant => Signal_grant(5)(2));
363
364Arbiter_5_3 : Arbiter
365
366PORT MAP (Request => Request(21), North => south_2_north(4)(3), West => east_2_west(4)(2), P => Signal_priority(13), Fifo_full => Fifo_full(3), 
367South => south_2_north(5)(3), East => east_2_west(5)(3) , Grant => Signal_grant(5)(3));
368
369Arbiter_5_4 : Arbiter
370
371PORT MAP (Request => Request(13), North => south_2_north(4)(4), West => east_2_west(4)(3), P => Signal_priority(13), Fifo_full => Fifo_full(4), 
372South => south_2_north(5)(4), East => east_2_west(5)(4) , Grant => Signal_grant(5)(4));
373
374Arbiter_5_5 : Arbiter
375
376PORT MAP (Request => Request(5), North => south_2_north(4)(5), West => east_2_west(4)(4), P => Signal_priority(13), Fifo_full => Fifo_full(5), 
377South => south_2_north(5)(5), East => east_2_west(5)(5) , Grant => Signal_grant(5)(5));
378
379Arbiter_5_6 : Arbiter
380
381PORT MAP (Request => Request(78), North => south_2_north(4)(6), West => east_2_west(4)(5), P => Signal_priority(13), Fifo_full => Fifo_full(6), 
382South => south_2_north(5)(6), East => east_2_west(5)(6) , Grant => Signal_grant(5)(6));
383
384Arbiter_5_7 : Arbiter
385
386PORT MAP (Request => Request(70), North => south_2_north(4)(7), West => east_2_west(4)(6), P => Signal_priority(13), Fifo_full => Fifo_full(7), 
387South => south_2_north(5)(7), East => east_2_west(5)(7) , Grant => Signal_grant(5)(7));
388
389Arbiter_5_8 : Arbiter
390
391PORT MAP (Request => Request(62), North => south_2_north(4)(8), West => east_2_west(4)(7), P => Signal_priority(13), Fifo_full => Fifo_full(8), 
392South => south_2_north(5)(8), East => east_2_west(5)(8) , Grant => Signal_grant(5)(8));
393
394Arbiter_5_9 : Arbiter
395
396PORT MAP (Request => Request(54), North => south_2_north(4)(9), West => east_2_west(4)(8), P => Signal_priority(13), Fifo_full => Fifo_full(9), 
397South => south_2_north(5)(9), East => east_2_west(5)(9) , Grant => Signal_grant(5)(9));
398
399-------------------------- Diagonale n° 6
400
401
402Arbiter_6_1 : Arbiter
403
404PORT MAP (Request => Request(46), North => south_2_north(5)(1), West => east_2_west(5)(9), P => Signal_priority(12), Fifo_full => Fifo_full(1), 
405South => south_2_north(6)(1), East => east_2_west(6)(1) , Grant => Signal_grant(6)(1));
406
407Arbiter_6_2 : Arbiter
408
409PORT MAP (Request => Request(38), North => south_2_north(5)(2), West => east_2_west(5)(1), P => Signal_priority(12), Fifo_full => Fifo_full(2), 
410South => south_2_north(6)(2), East => east_2_west(6)(2) , Grant => Signal_grant(6)(2));
411
412Arbiter_6_3 : Arbiter
413
414PORT MAP (Request => Request(30), North => south_2_north(5)(3), West => east_2_west(5)(2), P => Signal_priority(12), Fifo_full => Fifo_full(3), 
415South => south_2_north(6)(3), East => east_2_west(6)(3) , Grant => Signal_grant(6)(3));
416
417Arbiter_6_4 : Arbiter
418
419PORT MAP (Request => Request(22), North => south_2_north(5)(4), West => east_2_west(5)(3), P => Signal_priority(12), Fifo_full => Fifo_full(4), 
420South => south_2_north(6)(4), East => east_2_west(6)(4) , Grant => Signal_grant(6)(4));
421
422Arbiter_6_5 : Arbiter
423
424PORT MAP (Request => Request(14), North => south_2_north(5)(5), West => east_2_west(5)(4), P => Signal_priority(12), Fifo_full => Fifo_full(5), 
425South => south_2_north(6)(5), East => east_2_west(6)(5) , Grant => Signal_grant(6)(5));
426
427Arbiter_6_6 : Arbiter
428
429PORT MAP (Request => Request(6), North => south_2_north(5)(6), West => east_2_west(5)(5), P => Signal_priority(12), Fifo_full => Fifo_full(6), 
430South => south_2_north(6)(6), East => east_2_west(6)(6) , Grant => Signal_grant(6)(6));
431
432Arbiter_6_7 : Arbiter
433
434PORT MAP (Request => Request(79), North => south_2_north(5)(7), West => east_2_west(5)(6), P => Signal_priority(12), Fifo_full => Fifo_full(7), 
435South => south_2_north(6)(7), East => east_2_west(6)(7) , Grant => Signal_grant(6)(7));
436
437Arbiter_6_8 : Arbiter
438
439PORT MAP (Request => Request(71), North => south_2_north(5)(8), West => east_2_west(5)(7), P => Signal_priority(12), Fifo_full => Fifo_full(8), 
440South => south_2_north(6)(8), East => east_2_west(6)(8) , Grant => Signal_grant(6)(8));
441
442Arbiter_6_9 : Arbiter
443
444PORT MAP (Request => Request(63), North => south_2_north(5)(9), West => east_2_west(5)(8), P => Signal_priority(12), Fifo_full => Fifo_full(9), 
445South => south_2_north(6)(9), East => east_2_west(6)(9) , Grant => Signal_grant(6)(9));
446
447-------------------------- Diagonale n° 7
448
449
450Arbiter_7_1 : Arbiter
451
452PORT MAP (Request => Request(55), North => south_2_north(6)(1), West => east_2_west(6)(9), P => Signal_priority(11), Fifo_full => Fifo_full(1), 
453South => south_2_north(7)(1), East => east_2_west(7)(1) , Grant => Signal_grant(7)(1));
454
455Arbiter_7_2 : Arbiter
456
457PORT MAP (Request => Request(47), North => south_2_north(6)(2), West => east_2_west(6)(1), P => Signal_priority(11), Fifo_full => Fifo_full(2), 
458South => south_2_north(7)(2), East => east_2_west(7)(2) , Grant => Signal_grant(7)(2));
459
460Arbiter_7_3 : Arbiter
461
462PORT MAP (Request => Request(39), North => south_2_north(6)(3), West => east_2_west(6)(2), P => Signal_priority(11), Fifo_full => Fifo_full(3), 
463South => south_2_north(7)(3), East => east_2_west(7)(3) , Grant => Signal_grant(7)(3));
464
465Arbiter_7_4 : Arbiter
466
467PORT MAP (Request => Request(31), North => south_2_north(6)(4), West => east_2_west(6)(3), P => Signal_priority(11), Fifo_full => Fifo_full(4), 
468South => south_2_north(7)(4), East => east_2_west(7)(4) , Grant => Signal_grant(7)(4));
469
470Arbiter_7_5 : Arbiter
471
472PORT MAP (Request => Request(23), North => south_2_north(6)(5), West => east_2_west(6)(4), P => Signal_priority(11), Fifo_full => Fifo_full(5), 
473South => south_2_north(7)(5), East => east_2_west(7)(5) , Grant => Signal_grant(7)(5));
474
475Arbiter_7_6 : Arbiter
476
477PORT MAP (Request => Request(15), North => south_2_north(6)(6), West => east_2_west(6)(5), P => Signal_priority(11), Fifo_full => Fifo_full(6), 
478South => south_2_north(7)(6), East => east_2_west(7)(6) , Grant => Signal_grant(7)(6));
479
480Arbiter_7_7 : Arbiter
481
482PORT MAP (Request => Request(7), North => south_2_north(6)(7), West => east_2_west(6)(6), P => Signal_priority(11), Fifo_full => Fifo_full(7), 
483South => south_2_north(7)(7), East => east_2_west(7)(7) , Grant => Signal_grant(7)(7));
484
485Arbiter_7_8 : Arbiter
486
487PORT MAP (Request => Request(80), North => south_2_north(6)(8), West => east_2_west(6)(7), P => Signal_priority(11), Fifo_full => Fifo_full(8), 
488South => south_2_north(7)(8), East => east_2_west(7)(8) , Grant => Signal_grant(7)(8));
489
490Arbiter_7_9 : Arbiter
491
492PORT MAP (Request => Request(72), North => south_2_north(6)(9), West => east_2_west(6)(8), P => Signal_priority(11), Fifo_full => Fifo_full(9), 
493South => south_2_north(7)(9), East => east_2_west(7)(9) , Grant => Signal_grant(7)(9));
494
495-------------------------- Diagonale n° 8
496
497
498Arbiter_8_1 : Arbiter
499
500PORT MAP (Request => Request(64), North => south_2_north(7)(1), West => east_2_west(7)(9), P => Signal_priority(10), Fifo_full => Fifo_full(1), 
501South => south_2_north(8)(1), East => east_2_west(8)(1) , Grant => Signal_grant(8)(1));
502
503Arbiter_8_2 : Arbiter
504
505PORT MAP (Request => Request(56), North => south_2_north(7)(2), West => east_2_west(7)(1), P => Signal_priority(10), Fifo_full => Fifo_full(2), 
506South => south_2_north(8)(2), East => east_2_west(8)(2) , Grant => Signal_grant(8)(2));
507
508Arbiter_8_3 : Arbiter
509
510PORT MAP (Request => Request(48), North => south_2_north(7)(3), West => east_2_west(7)(2), P => Signal_priority(10), Fifo_full => Fifo_full(3), 
511South => south_2_north(8)(3), East => east_2_west(8)(3) , Grant => Signal_grant(8)(3));
512
513Arbiter_8_4 : Arbiter
514
515PORT MAP (Request => Request(40), North => south_2_north(7)(4), West => east_2_west(7)(3), P => Signal_priority(10), Fifo_full => Fifo_full(4), 
516South => south_2_north(8)(4), East => east_2_west(8)(4) , Grant => Signal_grant(8)(4));
517
518Arbiter_8_5 : Arbiter
519
520PORT MAP (Request => Request(32), North => south_2_north(7)(5), West => east_2_west(7)(4), P => Signal_priority(10), Fifo_full => Fifo_full(5), 
521South => south_2_north(8)(5), East => east_2_west(8)(5) , Grant => Signal_grant(8)(5));
522
523Arbiter_8_6 : Arbiter
524
525PORT MAP (Request => Request(24), North => south_2_north(7)(6), West => east_2_west(7)(5), P => Signal_priority(10), Fifo_full => Fifo_full(6), 
526South => south_2_north(8)(6), East => east_2_west(8)(6) , Grant => Signal_grant(8)(6));
527
528Arbiter_8_7 : Arbiter
529
530PORT MAP (Request => Request(16), North => south_2_north(7)(7), West => east_2_west(7)(6), P => Signal_priority(10), Fifo_full => Fifo_full(7), 
531South => south_2_north(8)(7), East => east_2_west(8)(7) , Grant => Signal_grant(8)(7));
532
533Arbiter_8_8 : Arbiter
534
535PORT MAP (Request => Request(8), North => south_2_north(7)(8), West => east_2_west(7)(7), P => Signal_priority(10), Fifo_full => Fifo_full(8), 
536South => south_2_north(8)(8), East => east_2_west(8)(8) , Grant => Signal_grant(8)(8));
537
538Arbiter_8_9 : Arbiter
539
540PORT MAP (Request => Request(81), North => south_2_north(7)(9), West => east_2_west(7)(8), P => Signal_priority(10), Fifo_full => Fifo_full(9), 
541South => south_2_north(8)(9), East => east_2_west(8)(9) , Grant => Signal_grant(8)(9));
542
543-------------------------- Diagonale n° 9
544
545
546Arbiter_9_1 : Arbiter
547
548PORT MAP (Request => Request(73), North => south_2_north(8)(1), West => east_2_west(8)(9), P => Signal_priority(9), Fifo_full => Fifo_full(1), 
549South => south_2_north(9)(1), East => east_2_west(9)(1) , Grant => Signal_grant(9)(1));
550
551Arbiter_9_2 : Arbiter
552
553PORT MAP (Request => Request(65), North => south_2_north(8)(2), West => east_2_west(8)(1), P => Signal_priority(9), Fifo_full => Fifo_full(2), 
554South => south_2_north(9)(2), East => east_2_west(9)(2) , Grant => Signal_grant(9)(2));
555
556Arbiter_9_3 : Arbiter
557
558PORT MAP (Request => Request(57), North => south_2_north(8)(3), West => east_2_west(8)(2), P => Signal_priority(9), Fifo_full => Fifo_full(3), 
559South => south_2_north(9)(3), East => east_2_west(9)(3) , Grant => Signal_grant(9)(3));
560
561Arbiter_9_4 : Arbiter
562
563PORT MAP (Request => Request(49), North => south_2_north(8)(4), West => east_2_west(8)(3), P => Signal_priority(9), Fifo_full => Fifo_full(4), 
564South => south_2_north(9)(4), East => east_2_west(9)(4) , Grant => Signal_grant(9)(4));
565
566Arbiter_9_5 : Arbiter
567
568PORT MAP (Request => Request(41), North => south_2_north(8)(5), West => east_2_west(8)(4), P => Signal_priority(9), Fifo_full => Fifo_full(5), 
569South => south_2_north(9)(5), East => east_2_west(9)(5) , Grant => Signal_grant(9)(5));
570
571Arbiter_9_6 : Arbiter
572
573PORT MAP (Request => Request(33), North => south_2_north(8)(6), West => east_2_west(8)(5), P => Signal_priority(9), Fifo_full => Fifo_full(6), 
574South => south_2_north(9)(6), East => east_2_west(9)(6) , Grant => Signal_grant(9)(6));
575
576Arbiter_9_7 : Arbiter
577
578PORT MAP (Request => Request(25), North => south_2_north(8)(7), West => east_2_west(8)(6), P => Signal_priority(9), Fifo_full => Fifo_full(7), 
579South => south_2_north(9)(7), East => east_2_west(9)(7) , Grant => Signal_grant(9)(7));
580
581Arbiter_9_8 : Arbiter
582
583PORT MAP (Request => Request(17), North => south_2_north(8)(8), West => east_2_west(8)(7), P => Signal_priority(9), Fifo_full => Fifo_full(8), 
584South => south_2_north(9)(8), East => east_2_west(9)(8) , Grant => Signal_grant(9)(8));
585
586Arbiter_9_9 : Arbiter
587
588PORT MAP (Request => Request(9), North => south_2_north(8)(9), West => east_2_west(8)(8), P => Signal_priority(9), Fifo_full => Fifo_full(9), 
589South => south_2_north(9)(9), East => east_2_west(9)(9) , Grant => Signal_grant(9)(9));
590
591-------------------------- Diagonale n° 10
592
593
594Arbiter_10_1 : Arbiter
595
596PORT MAP (Request => Request(1), North => south_2_north(9)(1), West => east_2_west(9)(9), P => Signal_priority(8), Fifo_full => Fifo_full(1), 
597South => south_2_north(10)(1), East => east_2_west(10)(1) , Grant => Signal_grant(10)(1));
598
599Arbiter_10_2 : Arbiter
600
601PORT MAP (Request => Request(74), North => south_2_north(9)(2), West => east_2_west(9)(1), P => Signal_priority(8), Fifo_full => Fifo_full(2), 
602South => south_2_north(10)(2), East => east_2_west(10)(2) , Grant => Signal_grant(10)(2));
603
604Arbiter_10_3 : Arbiter
605
606PORT MAP (Request => Request(66), North => south_2_north(9)(3), West => east_2_west(9)(2), P => Signal_priority(8), Fifo_full => Fifo_full(3), 
607South => south_2_north(10)(3), East => east_2_west(10)(3) , Grant => Signal_grant(10)(3));
608
609Arbiter_10_4 : Arbiter
610
611PORT MAP (Request => Request(58), North => south_2_north(9)(4), West => east_2_west(9)(3), P => Signal_priority(8), Fifo_full => Fifo_full(4), 
612South => south_2_north(10)(4), East => east_2_west(10)(4) , Grant => Signal_grant(10)(4));
613
614Arbiter_10_5 : Arbiter
615
616PORT MAP (Request => Request(50), North => south_2_north(9)(5), West => east_2_west(9)(4), P => Signal_priority(8), Fifo_full => Fifo_full(5), 
617South => south_2_north(10)(5), East => east_2_west(10)(5) , Grant => Signal_grant(10)(5));
618
619Arbiter_10_6 : Arbiter
620
621PORT MAP (Request => Request(42), North => south_2_north(9)(6), West => east_2_west(9)(5), P => Signal_priority(8), Fifo_full => Fifo_full(6), 
622South => south_2_north(10)(6), East => east_2_west(10)(6) , Grant => Signal_grant(10)(6));
623
624Arbiter_10_7 : Arbiter
625
626PORT MAP (Request => Request(34), North => south_2_north(9)(7), West => east_2_west(9)(6), P => Signal_priority(8), Fifo_full => Fifo_full(7), 
627South => south_2_north(10)(7), East => east_2_west(10)(7) , Grant => Signal_grant(10)(7));
628
629Arbiter_10_8 : Arbiter
630
631PORT MAP (Request => Request(26), North => south_2_north(9)(8), West => east_2_west(9)(7), P => Signal_priority(8), Fifo_full => Fifo_full(8), 
632South => south_2_north(10)(8), East => east_2_west(10)(8) , Grant => Signal_grant(10)(8));
633
634Arbiter_10_9 : Arbiter
635
636PORT MAP (Request => Request(18), North => south_2_north(9)(9), West => east_2_west(9)(8), P => Signal_priority(8), Fifo_full => Fifo_full(9), 
637South => south_2_north(10)(9), East => east_2_west(10)(9) , Grant => Signal_grant(10)(9));
638
639-------------------------- Diagonale n° 11
640
641
642Arbiter_11_1 : Arbiter
643
644PORT MAP (Request => Request(10), North => south_2_north(10)(1), West => east_2_west(10)(9), P => Signal_priority(7), Fifo_full => Fifo_full(1), 
645South => south_2_north(11)(1), East => east_2_west(11)(1) , Grant => Signal_grant(11)(1));
646
647Arbiter_11_2 : Arbiter
648
649PORT MAP (Request => Request(2), North => south_2_north(10)(2), West => east_2_west(10)(1), P => Signal_priority(7), Fifo_full => Fifo_full(2), 
650South => south_2_north(11)(2), East => east_2_west(11)(2) , Grant => Signal_grant(11)(2));
651
652Arbiter_11_3 : Arbiter
653
654PORT MAP (Request => Request(75), North => south_2_north(10)(3), West => east_2_west(10)(2), P => Signal_priority(7), Fifo_full => Fifo_full(3), 
655South => south_2_north(11)(3), East => east_2_west(11)(3) , Grant => Signal_grant(11)(3));
656
657Arbiter_11_4 : Arbiter
658
659PORT MAP (Request => Request(67), North => south_2_north(10)(4), West => east_2_west(10)(3), P => Signal_priority(7), Fifo_full => Fifo_full(4), 
660South => south_2_north(11)(4), East => east_2_west(11)(4) , Grant => Signal_grant(11)(4));
661
662Arbiter_11_5 : Arbiter
663
664PORT MAP (Request => Request(59), North => south_2_north(10)(5), West => east_2_west(10)(4), P => Signal_priority(7), Fifo_full => Fifo_full(5), 
665South => south_2_north(11)(5), East => east_2_west(11)(5) , Grant => Signal_grant(11)(5));
666
667Arbiter_11_6 : Arbiter
668
669PORT MAP (Request => Request(51), North => south_2_north(10)(6), West => east_2_west(10)(5), P => Signal_priority(7), Fifo_full => Fifo_full(6), 
670South => south_2_north(11)(6), East => east_2_west(11)(6) , Grant => Signal_grant(11)(6));
671
672Arbiter_11_7 : Arbiter
673
674PORT MAP (Request => Request(43), North => south_2_north(10)(7), West => east_2_west(10)(6), P => Signal_priority(7), Fifo_full => Fifo_full(7), 
675South => south_2_north(11)(7), East => east_2_west(11)(7) , Grant => Signal_grant(11)(7));
676
677Arbiter_11_8 : Arbiter
678
679PORT MAP (Request => Request(35), North => south_2_north(10)(8), West => east_2_west(10)(7), P => Signal_priority(7), Fifo_full => Fifo_full(8), 
680South => south_2_north(11)(8), East => east_2_west(11)(8) , Grant => Signal_grant(11)(8));
681
682Arbiter_11_9 : Arbiter
683
684PORT MAP (Request => Request(27), North => south_2_north(10)(9), West => east_2_west(10)(8), P => Signal_priority(7), Fifo_full => Fifo_full(9), 
685South => south_2_north(11)(9), East => east_2_west(11)(9) , Grant => Signal_grant(11)(9));
686
687-------------------------- Diagonale n° 12
688
689
690Arbiter_12_1 : Arbiter
691
692PORT MAP (Request => Request(19), North => south_2_north(11)(1), West => east_2_west(11)(9), P => Signal_priority(6), Fifo_full => Fifo_full(1), 
693South => south_2_north(12)(1), East => east_2_west(12)(1) , Grant => Signal_grant(12)(1));
694
695Arbiter_12_2 : Arbiter
696
697PORT MAP (Request => Request(11), North => south_2_north(11)(2), West => east_2_west(11)(1), P => Signal_priority(6), Fifo_full => Fifo_full(2), 
698South => south_2_north(12)(2), East => east_2_west(12)(2) , Grant => Signal_grant(12)(2));
699
700Arbiter_12_3 : Arbiter
701
702PORT MAP (Request => Request(3), North => south_2_north(11)(3), West => east_2_west(11)(2), P => Signal_priority(6), Fifo_full => Fifo_full(3), 
703South => south_2_north(12)(3), East => east_2_west(12)(3) , Grant => Signal_grant(12)(3));
704
705Arbiter_12_4 : Arbiter
706
707PORT MAP (Request => Request(76), North => south_2_north(11)(4), West => east_2_west(11)(3), P => Signal_priority(6), Fifo_full => Fifo_full(4), 
708South => south_2_north(12)(4), East => east_2_west(12)(4) , Grant => Signal_grant(12)(4));
709
710Arbiter_12_5 : Arbiter
711
712PORT MAP (Request => Request(68), North => south_2_north(11)(5), West => east_2_west(11)(4), P => Signal_priority(6), Fifo_full => Fifo_full(5), 
713South => south_2_north(12)(5), East => east_2_west(12)(5) , Grant => Signal_grant(12)(5));
714
715Arbiter_12_6 : Arbiter
716
717PORT MAP (Request => Request(60), North => south_2_north(11)(6), West => east_2_west(11)(5), P => Signal_priority(6), Fifo_full => Fifo_full(6), 
718South => south_2_north(12)(6), East => east_2_west(12)(6) , Grant => Signal_grant(12)(6));
719
720Arbiter_12_7 : Arbiter
721
722PORT MAP (Request => Request(52), North => south_2_north(11)(7), West => east_2_west(11)(6), P => Signal_priority(6), Fifo_full => Fifo_full(7), 
723South => south_2_north(12)(7), East => east_2_west(12)(7) , Grant => Signal_grant(12)(7));
724
725Arbiter_12_8 : Arbiter
726
727PORT MAP (Request => Request(44), North => south_2_north(11)(8), West => east_2_west(11)(7), P => Signal_priority(6), Fifo_full => Fifo_full(8), 
728South => south_2_north(12)(8), East => east_2_west(12)(8) , Grant => Signal_grant(12)(8));
729
730Arbiter_12_9 : Arbiter
731
732PORT MAP (Request => Request(36), North => south_2_north(11)(9), West => east_2_west(11)(8), P => Signal_priority(6), Fifo_full => Fifo_full(9), 
733South => south_2_north(12)(9), East => east_2_west(12)(9) , Grant => Signal_grant(12)(9));
734
735-------------------------- Diagonale n° 13
736
737
738Arbiter_13_1 : Arbiter
739
740PORT MAP (Request => Request(28), North => south_2_north(12)(1), West => east_2_west(12)(9), P => Signal_priority(5), Fifo_full => Fifo_full(1), 
741South => south_2_north(13)(1), East => east_2_west(13)(1) , Grant => Signal_grant(13)(1));
742
743Arbiter_13_2 : Arbiter
744
745PORT MAP (Request => Request(20), North => south_2_north(12)(2), West => east_2_west(12)(1), P => Signal_priority(5), Fifo_full => Fifo_full(2), 
746South => south_2_north(13)(2), East => east_2_west(13)(2) , Grant => Signal_grant(13)(2));
747
748Arbiter_13_3 : Arbiter
749
750PORT MAP (Request => Request(12), North => south_2_north(12)(3), West => east_2_west(12)(2), P => Signal_priority(5), Fifo_full => Fifo_full(3), 
751South => south_2_north(13)(3), East => east_2_west(13)(3) , Grant => Signal_grant(13)(3));
752
753Arbiter_13_4 : Arbiter
754
755PORT MAP (Request => Request(4), North => south_2_north(12)(4), West => east_2_west(12)(3), P => Signal_priority(5), Fifo_full => Fifo_full(4), 
756South => south_2_north(13)(4), East => east_2_west(13)(4) , Grant => Signal_grant(13)(4));
757
758Arbiter_13_5 : Arbiter
759
760PORT MAP (Request => Request(77), North => south_2_north(12)(5), West => east_2_west(12)(4), P => Signal_priority(5), Fifo_full => Fifo_full(5), 
761South => south_2_north(13)(5), East => east_2_west(13)(5) , Grant => Signal_grant(13)(5));
762
763Arbiter_13_6 : Arbiter
764
765PORT MAP (Request => Request(69), North => south_2_north(12)(6), West => east_2_west(12)(5), P => Signal_priority(5), Fifo_full => Fifo_full(6), 
766South => south_2_north(13)(6), East => east_2_west(13)(6) , Grant => Signal_grant(13)(6));
767
768Arbiter_13_7 : Arbiter
769
770PORT MAP (Request => Request(61), North => south_2_north(12)(7), West => east_2_west(12)(6), P => Signal_priority(5), Fifo_full => Fifo_full(7), 
771South => south_2_north(13)(7), East => east_2_west(13)(7) , Grant => Signal_grant(13)(7));
772
773Arbiter_13_8 : Arbiter
774
775PORT MAP (Request => Request(53), North => south_2_north(12)(8), West => east_2_west(12)(7), P => Signal_priority(5), Fifo_full => Fifo_full(8), 
776South => south_2_north(13)(8), East => east_2_west(13)(8) , Grant => Signal_grant(13)(8));
777
778Arbiter_13_9 : Arbiter
779
780PORT MAP (Request => Request(45), North => south_2_north(12)(9), West => east_2_west(12)(8), P => Signal_priority(5), Fifo_full => Fifo_full(9), 
781South => south_2_north(13)(9), East => east_2_west(13)(9) , Grant => Signal_grant(13)(9));
782
783-------------------------- Diagonale n° 14
784
785
786Arbiter_14_1 : Arbiter
787
788PORT MAP (Request => Request(37), North => south_2_north(13)(1), West => east_2_west(13)(9), P => Signal_priority(4), Fifo_full => Fifo_full(1), 
789South => south_2_north(14)(1), East => east_2_west(14)(1) , Grant => Signal_grant(14)(1));
790
791Arbiter_14_2 : Arbiter
792
793PORT MAP (Request => Request(29), North => south_2_north(13)(2), West => east_2_west(13)(1), P => Signal_priority(4), Fifo_full => Fifo_full(2), 
794South => south_2_north(14)(2), East => east_2_west(14)(2) , Grant => Signal_grant(14)(2));
795
796Arbiter_14_3 : Arbiter
797
798PORT MAP (Request => Request(21), North => south_2_north(13)(3), West => east_2_west(13)(2), P => Signal_priority(4), Fifo_full => Fifo_full(3), 
799South => south_2_north(14)(3), East => east_2_west(14)(3) , Grant => Signal_grant(14)(3));
800
801Arbiter_14_4 : Arbiter
802
803PORT MAP (Request => Request(13), North => south_2_north(13)(4), West => east_2_west(13)(3), P => Signal_priority(4), Fifo_full => Fifo_full(4), 
804South => south_2_north(14)(4), East => east_2_west(14)(4) , Grant => Signal_grant(14)(4));
805
806Arbiter_14_5 : Arbiter
807
808PORT MAP (Request => Request(5), North => south_2_north(13)(5), West => east_2_west(13)(4), P => Signal_priority(4), Fifo_full => Fifo_full(5), 
809South => south_2_north(14)(5), East => east_2_west(14)(5) , Grant => Signal_grant(14)(5));
810
811Arbiter_14_6 : Arbiter
812
813PORT MAP (Request => Request(78), North => south_2_north(13)(6), West => east_2_west(13)(5), P => Signal_priority(4), Fifo_full => Fifo_full(6), 
814South => south_2_north(14)(6), East => east_2_west(14)(6) , Grant => Signal_grant(14)(6));
815
816Arbiter_14_7 : Arbiter
817
818PORT MAP (Request => Request(70), North => south_2_north(13)(7), West => east_2_west(13)(6), P => Signal_priority(4), Fifo_full => Fifo_full(7), 
819South => south_2_north(14)(7), East => east_2_west(14)(7) , Grant => Signal_grant(14)(7));
820
821Arbiter_14_8 : Arbiter
822
823PORT MAP (Request => Request(62), North => south_2_north(13)(8), West => east_2_west(13)(7), P => Signal_priority(4), Fifo_full => Fifo_full(8), 
824South => south_2_north(14)(8), East => east_2_west(14)(8) , Grant => Signal_grant(14)(8));
825
826Arbiter_14_9 : Arbiter
827
828PORT MAP (Request => Request(54), North => south_2_north(13)(9), West => east_2_west(13)(8), P => Signal_priority(4), Fifo_full => Fifo_full(9), 
829South => south_2_north(14)(9), East => east_2_west(14)(9) , Grant => Signal_grant(14)(9));
830
831-------------------------- Diagonale n° 15
832
833
834Arbiter_15_1 : Arbiter
835
836PORT MAP (Request => Request(46), North => south_2_north(14)(1), West => east_2_west(14)(9), P => Signal_priority(3), Fifo_full => Fifo_full(1), 
837South => south_2_north(15)(1), East => east_2_west(15)(1) , Grant => Signal_grant(15)(1));
838
839Arbiter_15_2 : Arbiter
840
841PORT MAP (Request => Request(38), North => south_2_north(14)(2), West => east_2_west(14)(1), P => Signal_priority(3), Fifo_full => Fifo_full(2), 
842South => south_2_north(15)(2), East => east_2_west(15)(2) , Grant => Signal_grant(15)(2));
843
844Arbiter_15_3 : Arbiter
845
846PORT MAP (Request => Request(30), North => south_2_north(14)(3), West => east_2_west(14)(2), P => Signal_priority(3), Fifo_full => Fifo_full(3), 
847South => south_2_north(15)(3), East => east_2_west(15)(3) , Grant => Signal_grant(15)(3));
848
849Arbiter_15_4 : Arbiter
850
851PORT MAP (Request => Request(22), North => south_2_north(14)(4), West => east_2_west(14)(3), P => Signal_priority(3), Fifo_full => Fifo_full(4), 
852South => south_2_north(15)(4), East => east_2_west(15)(4) , Grant => Signal_grant(15)(4));
853
854Arbiter_15_5 : Arbiter
855
856PORT MAP (Request => Request(14), North => south_2_north(14)(5), West => east_2_west(14)(4), P => Signal_priority(3), Fifo_full => Fifo_full(5), 
857South => south_2_north(15)(5), East => east_2_west(15)(5) , Grant => Signal_grant(15)(5));
858
859Arbiter_15_6 : Arbiter
860
861PORT MAP (Request => Request(6), North => south_2_north(14)(6), West => east_2_west(14)(5), P => Signal_priority(3), Fifo_full => Fifo_full(6), 
862South => south_2_north(15)(6), East => east_2_west(15)(6) , Grant => Signal_grant(15)(6));
863
864Arbiter_15_7 : Arbiter
865
866PORT MAP (Request => Request(79), North => south_2_north(14)(7), West => east_2_west(14)(6), P => Signal_priority(3), Fifo_full => Fifo_full(7), 
867South => south_2_north(15)(7), East => east_2_west(15)(7) , Grant => Signal_grant(15)(7));
868
869Arbiter_15_8 : Arbiter
870
871PORT MAP (Request => Request(71), North => south_2_north(14)(8), West => east_2_west(14)(7), P => Signal_priority(3), Fifo_full => Fifo_full(8), 
872South => south_2_north(15)(8), East => east_2_west(15)(8) , Grant => Signal_grant(15)(8));
873
874Arbiter_15_9 : Arbiter
875
876PORT MAP (Request => Request(63), North => south_2_north(14)(9), West => east_2_west(14)(8), P => Signal_priority(3), Fifo_full => Fifo_full(9), 
877South => south_2_north(15)(9), East => east_2_west(15)(9) , Grant => Signal_grant(15)(9));
878
879-------------------------- Diagonale n° 16
880
881
882Arbiter_16_1 : Arbiter
883
884PORT MAP (Request => Request(55), North => south_2_north(15)(1), West => east_2_west(15)(9), P => Signal_priority(2), Fifo_full => Fifo_full(1), 
885South => south_2_north(16)(1), East => east_2_west(16)(1) , Grant => Signal_grant(16)(1));
886
887Arbiter_16_2 : Arbiter
888
889PORT MAP (Request => Request(47), North => south_2_north(15)(2), West => east_2_west(15)(1), P => Signal_priority(2), Fifo_full => Fifo_full(2), 
890South => south_2_north(16)(2), East => east_2_west(16)(2) , Grant => Signal_grant(16)(2));
891
892Arbiter_16_3 : Arbiter
893
894PORT MAP (Request => Request(39), North => south_2_north(15)(3), West => east_2_west(15)(2), P => Signal_priority(2), Fifo_full => Fifo_full(3), 
895South => south_2_north(16)(3), East => east_2_west(16)(3) , Grant => Signal_grant(16)(3));
896
897Arbiter_16_4 : Arbiter
898
899PORT MAP (Request => Request(31), North => south_2_north(15)(4), West => east_2_west(15)(3), P => Signal_priority(2), Fifo_full => Fifo_full(4), 
900South => south_2_north(16)(4), East => east_2_west(16)(4) , Grant => Signal_grant(16)(4));
901
902Arbiter_16_5 : Arbiter
903
904PORT MAP (Request => Request(23), North => south_2_north(15)(5), West => east_2_west(15)(4), P => Signal_priority(2), Fifo_full => Fifo_full(5), 
905South => south_2_north(16)(5), East => east_2_west(16)(5) , Grant => Signal_grant(16)(5));
906
907Arbiter_16_6 : Arbiter
908
909PORT MAP (Request => Request(15), North => south_2_north(15)(6), West => east_2_west(15)(5), P => Signal_priority(2), Fifo_full => Fifo_full(6), 
910South => south_2_north(16)(6), East => east_2_west(16)(6) , Grant => Signal_grant(16)(6));
911
912Arbiter_16_7 : Arbiter
913
914PORT MAP (Request => Request(7), North => south_2_north(15)(7), West => east_2_west(15)(6), P => Signal_priority(2), Fifo_full => Fifo_full(7), 
915South => south_2_north(16)(7), East => east_2_west(16)(7) , Grant => Signal_grant(16)(7));
916
917Arbiter_16_8 : Arbiter
918
919PORT MAP (Request => Request(80), North => south_2_north(15)(8), West => east_2_west(15)(7), P => Signal_priority(2), Fifo_full => Fifo_full(8), 
920South => south_2_north(16)(8), East => east_2_west(16)(8) , Grant => Signal_grant(16)(8));
921
922Arbiter_16_9 : Arbiter
923
924PORT MAP (Request => Request(72), North => south_2_north(15)(9), West => east_2_west(15)(8), P => Signal_priority(2), Fifo_full => Fifo_full(9), 
925South => south_2_north(16)(9), East => east_2_west(16)(9) , Grant => Signal_grant(16)(9));
926
927-------------------------- Diagonale n° 17
928
929
930Arbiter_17_1 : Arbiter
931
932PORT MAP (Request => Request(64), North => south_2_north(16)(1), West => east_2_west(16)(9), P => Signal_priority(1), Fifo_full => Fifo_full(1), 
933South => south_2_north(17)(1), East => east_2_west(17)(1) , Grant => Signal_grant(17)(1));
934
935Arbiter_17_2 : Arbiter
936
937PORT MAP (Request => Request(56), North => south_2_north(16)(2), West => east_2_west(16)(1), P => Signal_priority(1), Fifo_full => Fifo_full(2), 
938South => south_2_north(17)(2), East => east_2_west(17)(2) , Grant => Signal_grant(17)(2));
939
940Arbiter_17_3 : Arbiter
941
942PORT MAP (Request => Request(48), North => south_2_north(16)(3), West => east_2_west(16)(2), P => Signal_priority(1), Fifo_full => Fifo_full(3), 
943South => south_2_north(17)(3), East => east_2_west(17)(3) , Grant => Signal_grant(17)(3));
944
945Arbiter_17_4 : Arbiter
946
947PORT MAP (Request => Request(40), North => south_2_north(16)(4), West => east_2_west(16)(3), P => Signal_priority(1), Fifo_full => Fifo_full(4), 
948South => south_2_north(17)(4), East => east_2_west(17)(4) , Grant => Signal_grant(17)(4));
949
950Arbiter_17_5 : Arbiter
951
952PORT MAP (Request => Request(32), North => south_2_north(16)(5), West => east_2_west(16)(4), P => Signal_priority(1), Fifo_full => Fifo_full(5), 
953South => south_2_north(17)(5), East => east_2_west(17)(5) , Grant => Signal_grant(17)(5));
954
955Arbiter_17_6 : Arbiter
956
957PORT MAP (Request => Request(24), North => south_2_north(16)(6), West => east_2_west(16)(5), P => Signal_priority(1), Fifo_full => Fifo_full(6), 
958South => south_2_north(17)(6), East => east_2_west(17)(6) , Grant => Signal_grant(17)(6));
959
960Arbiter_17_7 : Arbiter
961
962PORT MAP (Request => Request(16), North => south_2_north(16)(7), West => east_2_west(16)(6), P => Signal_priority(1), Fifo_full => Fifo_full(7), 
963South => south_2_north(17)(7), East => east_2_west(17)(7) , Grant => Signal_grant(17)(7));
964
965Arbiter_17_8 : Arbiter
966
967PORT MAP (Request => Request(8), North => south_2_north(16)(8), West => east_2_west(16)(7), P => Signal_priority(1), Fifo_full => Fifo_full(8), 
968South => south_2_north(17)(8), East => east_2_west(17)(8) , Grant => Signal_grant(17)(8));
969
970Arbiter_17_9 : Arbiter
971
972PORT MAP (Request => Request(81), North => south_2_north(16)(9), West => east_2_west(16)(8), P => Signal_priority(1), Fifo_full => Fifo_full(9), 
973South => south_2_north(17)(9), East => east_2_west(17)(9) , Grant => Signal_grant(17)(9));
974
975
976--processus permettant de roter la priorité des diagonales à chaque front d'horloge
977 -- rotation round robin
978         round_robin : process(clk)
979        begin
980                if rising_edge(clk) then
981                 if reset ='1' then
982                    Signal_priority <= "11111111100000000";
983                  elsif priority_rotation_en = '1' then
984                    case Signal_priority is
985                       when "11111111100000000" => Signal_priority <= "01111111110000000";
986                       when "01111111110000000" => Signal_priority <= "00111111111000000";
987                       when "00111111111000000" => Signal_priority <= "00011111111100000";
988                       when "00011111111100000" => Signal_priority <= "00001111111110000";
989                       when "00001111111110000" => Signal_priority <= "00000111111111000";
990                       when "00000111111111000" => Signal_priority <= "00000011111111100";
991                       when "00000011111111100" => Signal_priority <= "00000001111111110";
992                       when "00000001111111110" => Signal_priority <= "00000000111111111";
993                       when "00000000111111111" => Signal_priority <= "11111111100000000";
994                       when others    => Signal_priority <= "11111111100000000";
995                  end case;
996                 end if;
997             end if;
998         end process;
999
1000end Behavioral;
1001
Note: See TracBrowser for help on using the repository browser.