From: Martin Jerabek Date: Thu, 12 May 2016 23:54:09 +0000 (+0200) Subject: can_crossbar: fixes (but still not working) X-Git-Url: https://rtime.felk.cvut.cz/gitweb/fpga/zynq/canbench-sw.git/commitdiff_plain/8476a24ca26ba0bf99d2dcc512260c2d0a8c765f can_crossbar: fixes (but still not working) --- diff --git a/system/ip/can_crossbar_1.0/component.xml b/system/ip/can_crossbar_1.0/component.xml index 94e1522..95b512e 100644 --- a/system/ip/can_crossbar_1.0/component.xml +++ b/system/ip/can_crossbar_1.0/component.xml @@ -266,7 +266,7 @@ viewChecksum - 73ee1312 + f744e7b0 @@ -282,7 +282,7 @@ viewChecksum - 73ee1312 + f744e7b0 @@ -1026,8 +1026,8 @@ AXI_Peripheral can_crossbar_v1.0 - 3 - 2016-05-12T00:55:21Z + 4 + 2016-05-12T18:37:17Z /home/martin/projects/cvut/bakalarka/canbench-sw/system/ip/can_crossbar_1.0 @@ -1036,7 +1036,7 @@ 2016.1 - + diff --git a/system/ip/can_crossbar_1.0/hdl/can_crossbar_v1_0_S00_AXI.v b/system/ip/can_crossbar_1.0/hdl/can_crossbar_v1_0_S00_AXI.v index 6e04630..9a384bc 100644 --- a/system/ip/can_crossbar_1.0/hdl/can_crossbar_v1_0_S00_AXI.v +++ b/system/ip/can_crossbar_1.0/hdl/can_crossbar_v1_0_S00_AXI.v @@ -54,23 +54,23 @@ assign ifc_rx[3] = line_rx[ifc4_line]; assign line_rx[0] = ~can_en[0] ? 1'b1 : (can1_line == 0 ? can_rx[0] : 1'b1) - & (can1_line == 1 ? can_rx[1] : 1'b1) - & (can1_line == 2 ? can_rx[2] : 1'b1) - & (can1_line == 3 ? can_rx[3] : 1'b1); + & (can2_line == 0 ? can_rx[1] : 1'b1) + & (can3_line == 0 ? can_rx[2] : 1'b1) + & (can4_line == 0 ? can_rx[3] : 1'b1); assign line_rx[1] = ~can_en[1] ? 1'b1 : - (can2_line == 0 ? can_rx[0] : 1'b1) + (can1_line == 1 ? can_rx[0] : 1'b1) & (can2_line == 1 ? can_rx[1] : 1'b1) - & (can2_line == 2 ? can_rx[2] : 1'b1) - & (can2_line == 3 ? can_rx[3] : 1'b1); + & (can3_line == 1 ? can_rx[2] : 1'b1) + & (can4_line == 1 ? can_rx[3] : 1'b1); assign line_rx[2] = ~can_en[2] ? 1'b1 : - (can3_line == 0 ? can_rx[0] : 1'b1) - & (can3_line == 1 ? can_rx[1] : 1'b1) + (can1_line == 2 ? can_rx[0] : 1'b1) + & (can2_line == 2 ? can_rx[1] : 1'b1) & (can3_line == 2 ? can_rx[2] : 1'b1) - & (can3_line == 3 ? can_rx[3] : 1'b1); + & (can4_line == 2 ? can_rx[3] : 1'b1); assign line_rx[3] = ~can_en[3] ? 1'b1 : - (can4_line == 0 ? can_rx[0] : 1'b1) - & (can4_line == 1 ? can_rx[1] : 1'b1) - & (can4_line == 2 ? can_rx[2] : 1'b1) + (can1_line == 3 ? can_rx[0] : 1'b1) + & (can2_line == 3 ? can_rx[1] : 1'b1) + & (can3_line == 3 ? can_rx[2] : 1'b1) & (can4_line == 3 ? can_rx[3] : 1'b1); /* @@ -101,20 +101,20 @@ assign can_tx[2] = can_en[2] ? line_tx[can3_line] : 1'b1; assign can_tx[3] = can_en[3] ? line_tx[can4_line] : 1'b1; assign line_tx[0] = (ifc1_line == 0 ? ifc_tx[0] : 1'b1) - & (ifc1_line == 1 ? ifc_tx[1] : 1'b1) - & (ifc1_line == 2 ? ifc_tx[2] : 1'b1) - & (ifc1_line == 3 ? ifc_tx[3] : 1'b1); -assign line_tx[1] = (ifc2_line == 0 ? ifc_tx[0] : 1'b1) + & (ifc2_line == 0 ? ifc_tx[1] : 1'b1) + & (ifc3_line == 0 ? ifc_tx[2] : 1'b1) + & (ifc4_line == 0 ? ifc_tx[3] : 1'b1); +assign line_tx[1] = (ifc1_line == 1 ? ifc_tx[0] : 1'b1) & (ifc2_line == 1 ? ifc_tx[1] : 1'b1) - & (ifc2_line == 2 ? ifc_tx[2] : 1'b1) - & (ifc2_line == 3 ? ifc_tx[3] : 1'b1); -assign line_tx[2] = (ifc3_line == 0 ? ifc_tx[0] : 1'b1) - & (ifc3_line == 1 ? ifc_tx[1] : 1'b1) + & (ifc3_line == 1 ? ifc_tx[2] : 1'b1) + & (ifc4_line == 1 ? ifc_tx[3] : 1'b1); +assign line_tx[2] = (ifc1_line == 2 ? ifc_tx[0] : 1'b1) + & (ifc2_line == 2 ? ifc_tx[1] : 1'b1) & (ifc3_line == 2 ? ifc_tx[2] : 1'b1) - & (ifc3_line == 3 ? ifc_tx[3] : 1'b1); -assign line_tx[3] = (ifc4_line == 0 ? ifc_tx[0] : 1'b1) - & (ifc4_line == 1 ? ifc_tx[1] : 1'b1) - & (ifc4_line == 2 ? ifc_tx[2] : 1'b1) + & (ifc4_line == 2 ? ifc_tx[3] : 1'b1); +assign line_tx[3] = (ifc1_line == 3 ? ifc_tx[0] : 1'b1) + & (ifc2_line == 3 ? ifc_tx[1] : 1'b1) + & (ifc3_line == 3 ? ifc_tx[2] : 1'b1) & (ifc4_line == 3 ? ifc_tx[3] : 1'b1); endmodule