From 94a61effbadc58e7b90476ee61c0370889a398e4 Mon Sep 17 00:00:00 2001 From: pranabp-bit <58358551+pranabp-bit@users.noreply.github.com> Date: Sat, 11 Jul 2020 12:22:54 +0530 Subject: [PATCH 1/2] Update PI_2_unshuffle.v --- permutations/PI_2_unshuffle.v | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/permutations/PI_2_unshuffle.v b/permutations/PI_2_unshuffle.v index ee87b49..05dcfcc 100644 --- a/permutations/PI_2_unshuffle.v +++ b/permutations/PI_2_unshuffle.v @@ -1,17 +1,26 @@ // This file is generated from a python script, do not edit it by hand. /* - Inputs from CNU and unshuffled to PE blocks +This module takes k*k(k=6) inputs from CNU and unshuffles to PE blocks such that each CNU is connected to 6 PE(x,y) with the same y-index +Inputs from index 0 to 5 are from one CNU, 6 to 11 from the next CNU and so on. +Output index assigned to PE (x,y) in column_major order => PE (1, 1) , PE(2, 1), ... +So outputs 0-5 will have same y-index, hence one CNU (inputs from index 30 to 35) will be connected to these outputs +Similarly, one CNU (inputs from index 24 to 29) will be connected to output indices 6-11 +and so on. */ module PI_2_unshuffle #( parameter DATA_WIDTH = 6 ) + //port declaration ( + //input port input wire [DATA_WIDTH-1 : 0] data_in [0 : 36-1], + + //output port output wire [DATA_WIDTH-1 : 0] data_out [0 : 36-1] ); - + //assignment is done such that each CNU is connected to PE blocks with same x-index assign data_out[30] = data_in[0]; assign data_out[31] = data_in[1]; assign data_out[32] = data_in[2]; @@ -49,4 +58,4 @@ assign data_out[3] = data_in[33]; assign data_out[4] = data_in[34]; assign data_out[5] = data_in[35]; -endmodule \ No newline at end of file +endmodule From c8f4986b7a4f8e3a58f773550fd7bc9cfa54944d Mon Sep 17 00:00:00 2001 From: pranabp-bit <58358551+pranabp-bit@users.noreply.github.com> Date: Sat, 11 Jul 2020 12:47:53 +0530 Subject: [PATCH 2/2] Update PI_2_unshuffle.v --- permutations/PI_2_unshuffle.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/permutations/PI_2_unshuffle.v b/permutations/PI_2_unshuffle.v index 05dcfcc..cd76ce3 100644 --- a/permutations/PI_2_unshuffle.v +++ b/permutations/PI_2_unshuffle.v @@ -20,7 +20,7 @@ module PI_2_unshuffle #( //output port output wire [DATA_WIDTH-1 : 0] data_out [0 : 36-1] ); - //assignment is done such that each CNU is connected to PE blocks with same x-index + //assignment is done such that each CNU is connected to PE blocks with same y-index assign data_out[30] = data_in[0]; assign data_out[31] = data_in[1]; assign data_out[32] = data_in[2];