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

Subversion Repositories uart_fifo_cpu_if_sv_testbench

[/] [uart_fifo_cpu_if_sv_testbench/] [trunk/] [bench/] [uart_tb.sv] - Diff between revs 2 and 3

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 2 Rev 3
Line 118... Line 118...
          //start bit
          //start bit
          uart_.txd = 0;
          uart_.txd = 0;
          #(1/baud_rate)s;
          #(1/baud_rate)s;
          //8 bits of data
          //8 bits of data
          for(uint8 i=0; i<8; i++) begin
          for(uint8 i=0; i<8; i++) begin
            uart_.txd = data_bits[7-i];
            uart_.txd = data_bits[i]; //least significant bit first.
            #(1/baud_rate)s;
            #(1/baud_rate)s;
          end
          end
          //1 stop bit
          //1 stop bit
          uart_.txd = 1;
          uart_.txd = 1;
          #(1/baud_rate)s;
          #(1/baud_rate)s;
Line 152... Line 152...
          //Look for a valid start bit. Must be at least 1/2 bit period duration.
          //Look for a valid start bit. Must be at least 1/2 bit period duration.
          @(negedge uart_.rxd);
          @(negedge uart_.rxd);
          #(0.5 * 1/baud_rate)s;
          #(0.5 * 1/baud_rate)s;
          if ( uart_.rxd == 0 ) begin
          if ( uart_.rxd == 0 ) begin
            logic[7:0] data_bits;
            logic[7:0] data_bits;
            uint32     bit_count = 7;
            //read in 8 data bits, LSBit first, sampling in the center of the bit period.
            //read in 8 data bits, MSBit first, sampling in the center of the bit period.
            for(uint8 i=0; i<8; i++) begin
            repeat(8) begin
 
              #( 1/baud_rate )s;
              #( 1/baud_rate )s;
              data_bits[ bit_count-- ] = uart_.rxd;
              data_bits[i] = uart_.rxd;
            end
            end
            //check stop bit.
            //check stop bit.
            #( 1/baud_rate )s;
            #( 1/baud_rate )s;
            if ( uart_.rxd != 1 ) begin
            if ( uart_.rxd != 1 ) begin
              $display("Monitor: Invalid stop bit.");
              $display("Monitor: Invalid stop bit.");

powered by: WebSVN 2.1.0

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