Line 51... |
Line 51... |
//
|
//
|
//
|
//
|
module toplevel(i_clk_8mhz,
|
module toplevel(i_clk_8mhz,
|
o_qspi_cs_n, o_qspi_sck, io_qspi_dat,
|
o_qspi_cs_n, o_qspi_sck, io_qspi_dat,
|
i_btn, o_led, o_pwm, o_pwm_shutdown_n, o_pwm_gain,
|
i_btn, o_led, o_pwm, o_pwm_shutdown_n, o_pwm_gain,
|
i_uart, o_uart, i_uart_cts, o_uart_rts,
|
i_uart, o_uart, o_uart_cts, i_uart_rts,
|
i_kp_row, o_kp_col,
|
i_kp_row, o_kp_col,
|
i_gpio, o_gpio,
|
i_gpio, o_gpio,
|
io_scl, io_sda);
|
io_scl, io_sda);
|
input i_clk_8mhz;
|
input i_clk_8mhz;
|
//
|
//
|
Line 71... |
Line 71... |
//
|
//
|
// and our serial port
|
// and our serial port
|
input i_uart;
|
input i_uart;
|
output wire o_uart;
|
output wire o_uart;
|
// and it's associated control wires
|
// and it's associated control wires
|
input i_uart_cts;
|
output wire o_uart_cts;
|
output wire o_uart_rts;
|
input i_uart_rts;
|
// Our keypad
|
// Our keypad
|
input [3:0] i_kp_row;
|
input [3:0] i_kp_row;
|
output wire [3:0] o_kp_col;
|
output wire [3:0] o_kp_col;
|
// and our GPIO
|
// and our GPIO
|
input [15:2] i_gpio;
|
input [15:2] i_gpio;
|
Line 147... |
Line 147... |
assign tx_break = 1'b0;
|
assign tx_break = 1'b0;
|
rxuart rcvuart(clk_s, reset_s, uart_setup,
|
rxuart rcvuart(clk_s, reset_s, uart_setup,
|
i_uart, rx_stb, rx_data,
|
i_uart, rx_stb, rx_data,
|
rx_break, rx_parity_err, rx_frame_err, rx_ck_uart);
|
rx_break, rx_parity_err, rx_frame_err, rx_ck_uart);
|
txuart tcvuart(clk_s, reset_s, uart_setup, tx_break, tx_stb, tx_data,
|
txuart tcvuart(clk_s, reset_s, uart_setup, tx_break, tx_stb, tx_data,
|
o_uart, i_uart_cts, tx_busy);
|
o_uart, tx_busy);
|
|
|
|
|
//
|
//
|
// BUSMASTER
|
// BUSMASTER
|
//
|
//
|
Line 165... |
Line 165... |
wire [1:0] qspi_bmod;
|
wire [1:0] qspi_bmod;
|
wire [15:0] w_gpio;
|
wire [15:0] w_gpio;
|
|
|
busmaster masterbus(clk_s, reset_s,
|
busmaster masterbus(clk_s, reset_s,
|
// External ... bus control (if enabled)
|
// External ... bus control (if enabled)
|
rx_stb, rx_data, tx_stb, tx_data, tx_busy, o_uart_rts,
|
rx_stb, rx_data, tx_stb, tx_data, tx_busy, w_uart_cts,
|
// SPI/SD-card flash
|
// SPI/SD-card flash
|
o_qspi_cs_n, o_qspi_sck, qspi_dat, io_qspi_dat, qspi_bmod,
|
o_qspi_cs_n, o_qspi_sck, qspi_dat, io_qspi_dat, qspi_bmod,
|
// Board lights and switches
|
// Board lights and switches
|
i_btn, o_led, o_pwm, { o_pwm_shutdown_n, o_pwm_gain },
|
i_btn, o_led, o_pwm, { o_pwm_shutdown_n, o_pwm_gain },
|
// Keypad connections
|
// Keypad connections
|
Line 177... |
Line 177... |
// UART control
|
// UART control
|
uart_setup,
|
uart_setup,
|
// GPIO lines
|
// GPIO lines
|
{ i_gpio, io_scl, io_sda }, w_gpio
|
{ i_gpio, io_scl, io_sda }, w_gpio
|
);
|
);
|
|
assign o_uart_cts = (w_uart_cts)&&(i_uart_rts);
|
|
|
//
|
//
|
// Quad SPI support
|
// Quad SPI support
|
//
|
//
|
// Supporting a Quad SPI port requires knowing which direction the
|
// Supporting a Quad SPI port requires knowing which direction the
|