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

Subversion Repositories dma_axi

[/] [dma_axi/] [trunk/] [src/] [dma_axi64/] [prgen_swap_64.v] - Blame information for rev 2

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 eyalhoc
//---------------------------------------------------------
2
//-- File generated by RobustVerilog parser
3
//-- Version: 1.0
4
//-- Invoked Fri Mar 25 23:36:57 2011
5
//--
6
//-- Source file: prgen_swap64.v
7
//---------------------------------------------------------
8
 
9
 
10
 
11
module  prgen_swap64 (end_swap,data_in,data_out,bsel_in,bsel_out);
12
 
13
   input [1:0]            end_swap;
14
   input [63:0]        data_in;
15
   output [63:0]       data_out;
16
   input [7:0]            bsel_in;
17
   output [7:0]        bsel_out;
18
 
19
 
20
   wire [31:0]            data_in_low;
21
   wire [31:0]            data_in_high;
22
   wire [31:0]            data_out_low;
23
   wire [31:0]            data_out_high;
24
   wire [3:0]            bsel_in_low;
25
   wire [3:0]            bsel_in_high;
26
   wire [3:0]            bsel_out_low;
27
   wire [3:0]            bsel_out_high;
28
 
29
 
30
 
31
   assign            data_in_low  = end_swap == 2'b11 ? data_in[63:32] : data_in[31:0];
32
   assign            data_in_high = end_swap == 2'b11 ? data_in[31:0]  : data_in[63:32];
33
 
34
   assign            bsel_in_low  = end_swap == 2'b11 ? bsel_in[7:4] : bsel_in[3:0];
35
   assign            bsel_in_high = end_swap == 2'b11 ? bsel_in[3:0] : bsel_in[7:4];
36
 
37
   prgen_swap32 swap32_low(
38
               .end_swap(end_swap),
39
               .data_in(data_in_low),
40
               .data_out(data_out_low),
41
               .bsel_in(bsel_in_low),
42
               .bsel_out(bsel_out_low)
43
               );
44
 
45
   prgen_swap32 swap32_high(
46
                .end_swap(end_swap),
47
                .data_in(data_in_high),
48
                .data_out(data_out_high),
49
                .bsel_in(bsel_in_high),
50
                .bsel_out(bsel_out_high)
51
               );
52
 
53
   assign            data_out = {data_out_high, data_out_low};
54
   assign            bsel_out = {bsel_out_high, bsel_out_low};
55
 
56
endmodule
57
 
58
 
59
 

powered by: WebSVN 2.1.0

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