From 3760990e5a01252d1cfa667e5c4969d3dc577997 Mon Sep 17 00:00:00 2001 From: Konstantin Pavlov Date: Fri, 18 Dec 2020 16:14:10 +0300 Subject: [PATCH] Added UART-like shifters for for simple synchronous messaging inside the FPGA or between FPGAs --- uart_rx_shifter.sv | 105 ++++++++++++++++++++++++ uart_tx_rx_shifter_tb.png | Bin 0 -> 132239 bytes uart_tx_rx_shifter_tb.sv | 166 ++++++++++++++++++++++++++++++++++++++ uart_tx_shifter.sv | 122 ++++++++++++++++++++++++++++ 4 files changed, 393 insertions(+) create mode 100644 uart_rx_shifter.sv create mode 100644 uart_tx_rx_shifter_tb.png create mode 100644 uart_tx_rx_shifter_tb.sv create mode 100644 uart_tx_shifter.sv diff --git a/uart_rx_shifter.sv b/uart_rx_shifter.sv new file mode 100644 index 0000000..21a0afd --- /dev/null +++ b/uart_rx_shifter.sv @@ -0,0 +1,105 @@ +//------------------------------------------------------------------------------ +// uart_rx_shifter.sv +// Konstantin Pavlov, pavlovconst@gmail.com +//------------------------------------------------------------------------------ + +// INFO ------------------------------------------------------------------------ +// UART-like shifter for simple synchronous messaging inside the FPGA or between FPGAs +// See also `uart_tx_shifter.sv` for TX part +// +// TX and RX parts should share one clock source +// Capable of continious stream transfer when tx_start is held constant 1'b1 +// Any reasonable start bit count,data bit count, stop bit count +// + + +/* --- INSTANTIATION TEMPLATE BEGIN --- + +uart_rx_shifter #( + .START_BITS( 1 ), + .DATA_BITS( 8 ), + .STOP_BITS( 2 ), + .SYNCHRONIZE_RXD( 0 ) // 0 - disabled; 1 - enabled +) rx1 ( + .clk( clk ), + .nrst( 1'b1 ), + .rx_data( ), + .rx_valid( ), + .rxd( ) +); + +--- INSTANTIATION TEMPLATE END ---*/ + + +module uart_rx_shifter #( + + bit [7:0] START_BITS = 1, // must be >=1 + bit [7:0] DATA_BITS = 4, // must be >=1 + bit [7:0] STOP_BITS = 2, // must be >=1 + + bit SYNCHRONIZE_RXD = 0 // its better to synchronize when rxd input + // is actually an FPGA pin +)( + input clk, // transmitter and receiver should use + input nrst, // the same clock + + output logic [DATA_BITS-1:0] rx_data = '0, // output data + output logic rx_valid = '0, // read strobe + + input rxd +); + +localparam TOTAL_BITS = START_BITS + DATA_BITS + STOP_BITS; + +logic [TOTAL_BITS-1:0] rx_data_buf = '1; + +logic rxd_sync; +delay #( + .LENGTH( 2 ), + .WIDTH( 1 ) +) rxd_SYNC_ATTR ( + .clk( clk ), + .nrst( 1'b1 ), + .ena( 1'b1 ), + + .in( rxd ), + .out( rxd_sync ) +); + +logic start_detected; +assign start_detected = ~|rx_data_buf[DATA_BITS+STOP_BITS+:START_BITS]; +logic stop_detected; +assign stop_detected = &rx_data_buf[0+:STOP_BITS]; +logic data_valid; +assign data_valid = start_detected && stop_detected; + +always_ff @(posedge clk) begin + if( ~nrst ) begin + rx_data_buf[TOTAL_BITS-1:0] <= '1; + + rx_data[DATA_BITS-1:0] <= '0; + rx_valid <= 1'b0; + end else begin + if( data_valid ) begin + // clear rx_data_buf if valid message is already detected + rx_data_buf[TOTAL_BITS-1:0] <= { {(TOTAL_BITS-1){1'b1}}, + (SYNCHRONIZE_RXD ? rxd_sync : rxd) }; + end else begin + // simple shifter, MSB first + rx_data_buf[TOTAL_BITS-1:0] <= { rx_data_buf[TOTAL_BITS-2:0], + (SYNCHRONIZE_RXD ? rxd_sync : rxd) }; + end + + // buffering valid messages + if( data_valid ) begin + rx_data[DATA_BITS-1:0] <= rx_data_buf[STOP_BITS+:DATA_BITS]; + rx_valid <= 1'b1; + end else begin + rx_valid <= 1'b0; + end + end +end + + +endmodule + diff --git a/uart_tx_rx_shifter_tb.png b/uart_tx_rx_shifter_tb.png new file mode 100644 index 0000000000000000000000000000000000000000..0dbd302c725c74d5e42e116374a31d4800a02758 GIT binary patch literal 132239 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 z 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 iI)uP~#uz+~>%i`?XJ0a3XTWv=1 + bit [7:0] DATA_BITS = 4, // must be >=1 + bit [7:0] STOP_BITS = 2 // must be >=1 +)( + input clk, // transmitter and receiver should use + input nrst, // the same clock + + input [DATA_BITS-1:0] tx_data, // input data get captured on write strobe + input tx_start, // write strobe itself + output tx_busy, // tx_busy fall on the last stop bit + + output logic txd = 1'b1 +); + +logic [DATA_BITS-1:0] tx_data_buf = '0; +logic [7:0] state_cntr = '0; + +enum int unsigned { STOP, START, DATA } tx_state = STOP; + +always_ff @(posedge clk) begin + if( ~nrst ) begin + tx_state <= STOP; + + tx_data_buf[DATA_BITS-1:0] <= '0; + state_cntr[7:0] <= '0; + + txd <= 1'b1; + end else begin + + case( tx_state ) + STOP: begin + + txd <= 1'b1; + if( state_cntr[7:0] != '0 ) begin + // holding stop bits + state_cntr[7:0]--; + end else begin + // idle state after stop bits + + // no need for edge detector here because tx_state changes instantly + // after the first active tx_start cycle + if( tx_start ) begin + // buffering input data + tx_data_buf[DATA_BITS-1:0] <= tx_data[DATA_BITS-1:0]; + state_cntr[7:0] <= START_BITS-1; + tx_state <= tx_state.next(); + end // tx_start + end // state_cntr + + end + START: begin + + txd <= 1'b0; + if( state_cntr[7:0] != '0 ) begin + // holding start bits + state_cntr[7:0]--; + end else begin + // transition + state_cntr[7:0] <= DATA_BITS-1; + tx_state <= tx_state.next(); + end // state_cntr + + end + DATA: begin + + // setting data, MSB first + txd <= tx_data_buf[state_cntr[7:0]]; + + if( state_cntr[7:0] != '0 ) begin + state_cntr[7:0]--; + end else begin + // transition + state_cntr[7:0] <= STOP_BITS-1; + tx_state <= tx_state.next(); + end // state_cntr + + end + endcase // tx_state + + end +end + +assign tx_busy = ~( (tx_state == STOP) && (state_cntr[7:0] == '0) ); + + +endmodule +