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

Subversion Repositories socgen

[/] [socgen/] [trunk/] [Projects/] [opencores.org/] [io/] [ip/] [io_uart/] [rtl/] [verilog/] [top.body] - Blame information for rev 131

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 131 jt_eaton
 
2
wire xmit_data_wr;
3
wire  rcv_data_rd;
4
 
5
 
6
 
7
 `VARIANT`MB
8
  io_uart_micro_reg
9
(
10
   .clk                ( clk                ),
11
   .reset              ( reset              ),
12
   .enable             ( enable             ),
13
   .cs                 ( cs                 ),
14
   .wr                 ( wr                 ),
15
   .rd                 ( rd                 ),
16
   .byte_lanes         ( 1'b1               ),
17
   .addr               ( addr               ),
18
   .wdata              ( wdata              ),
19
   .rdata              ( rdata              ),
20
 
21
 
22
   .xmit_data_cs       (),
23
   .xmit_data_dec      (),
24
   .xmit_data          (),
25
   .next_xmit_data     (),
26
   .rcv_data_cs        (),
27
   .cntrl_cs           (),
28
   .cntrl_dec          (),
29
   .cntrl_wr_0         (),
30
   .status_cs          (),
31
   .status_dec         (),
32
   .rcv_data_rdata     ( rcv_data           ),
33
   .status_rdata       ( status             ),
34
   .cntrl              ( cntrl              ),
35
   .cntrl_rdata        ( cntrl              ),
36
   .next_cntrl         ( cntrl              ),
37
   .xmit_data_wr_0     ( xmit_data_wr       ),
38
   .rcv_data_dec       ( rcv_data_rd        ));
39
 
40
   always@(posedge clk)
41
   if (reset)               txd_load <= 1'b0;
42
   else                     txd_load <= xmit_data_wr;
43
 
44
 
45
 
46
   always@(posedge clk)
47
   if (reset)               rx_irq <= 1'b0;
48
   else                     rx_irq <= cntrl[6] && rxd_data_avail;
49
 
50
   always@(posedge clk)
51
   if (reset)               tx_irq <= 1'b0;
52
   else                     tx_irq <= cntrl[7] && status[5];
53
 
54
 
55
 assign  status[0] = rxd_data_avail;
56
 assign  status[2] = 1'b0;
57
 assign  status[6] = 1'b0;
58
 assign  status[7] = 1'b0;
59
 
60
 
61
always@(posedge clk)
62
if (reset)     lat_wdata  <= 8'h00;
63
else           lat_wdata  <= wdata;
64
 
65
 
66
always@(posedge clk)
67
if (reset)     rxd_data_avail_stb  <= 1'b0;
68
else           rxd_data_avail_stb  <= (enable && rcv_data_rd  && rd);
69
 
70
 

powered by: WebSVN 2.1.0

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