aboutsummaryrefslogtreecommitdiffstats
path: root/ice40/regressions/issue0120/top.v
diff options
context:
space:
mode:
authorEddie Hung <eddieh@ece.ubc.ca>2019-02-07 13:04:04 -0800
committerEddie Hung <eddieh@ece.ubc.ca>2019-02-07 13:04:04 -0800
commit31b2cdca145f8fc96424e0c7b6f4000f7c777c12 (patch)
treeea76bcfa26734338f499d4842e9440aff36a14f4 /ice40/regressions/issue0120/top.v
parent5908b57413f83077f082cf566d0dfbf5e76703b1 (diff)
downloadnextpnr-tests-31b2cdca145f8fc96424e0c7b6f4000f7c777c12.tar.gz
nextpnr-tests-31b2cdca145f8fc96424e0c7b6f4000f7c777c12.tar.bz2
nextpnr-tests-31b2cdca145f8fc96424e0c7b6f4000f7c777c12.zip
Add testcases from GH
Diffstat (limited to 'ice40/regressions/issue0120/top.v')
-rw-r--r--ice40/regressions/issue0120/top.v3971
1 files changed, 3971 insertions, 0 deletions
diff --git a/ice40/regressions/issue0120/top.v b/ice40/regressions/issue0120/top.v
new file mode 100644
index 0000000..813e887
--- /dev/null
+++ b/ice40/regressions/issue0120/top.v
@@ -0,0 +1,3971 @@
+/* Machine-generated using LiteX gen */
+module top(
+ input clk16,
+ output reg spiflash_cs_n,
+ output reg spiflash_clk,
+ output reg spiflash_mosi,
+ input spiflash_miso,
+ output spiflash_wp,
+ output spiflash_hold,
+ input serial_rx,
+ output reg serial_tx,
+ inout usb_d_p,
+ inout usb_d_n,
+ output usb_pullup,
+ output user_led0
+);
+
+wire usbtestsoc_usbtestsoc_reset_reset_re;
+wire usbtestsoc_usbtestsoc_reset_reset_r;
+reg usbtestsoc_usbtestsoc_reset_reset_w = 1'd0;
+reg [31:0] usbtestsoc_usbtestsoc_storage_full = 32'd305419896;
+wire [31:0] usbtestsoc_usbtestsoc_storage;
+reg usbtestsoc_usbtestsoc_re = 1'd0;
+wire [31:0] usbtestsoc_usbtestsoc_bus_errors_status;
+wire usbtestsoc_usbtestsoc_reset;
+wire usbtestsoc_usbtestsoc_bus_error;
+reg [31:0] usbtestsoc_usbtestsoc_bus_errors = 32'd0;
+reg [13:0] usbtestsoc_usbtestsoc_adr = 14'd0;
+reg usbtestsoc_usbtestsoc_we = 1'd0;
+reg [7:0] usbtestsoc_usbtestsoc_dat_w = 8'd0;
+wire [7:0] usbtestsoc_usbtestsoc_dat_r;
+wire [29:0] usbtestsoc_usbtestsoc_bus_wishbone_adr;
+wire [31:0] usbtestsoc_usbtestsoc_bus_wishbone_dat_w;
+reg [31:0] usbtestsoc_usbtestsoc_bus_wishbone_dat_r = 32'd0;
+wire [3:0] usbtestsoc_usbtestsoc_bus_wishbone_sel;
+wire usbtestsoc_usbtestsoc_bus_wishbone_cyc;
+wire usbtestsoc_usbtestsoc_bus_wishbone_stb;
+reg usbtestsoc_usbtestsoc_bus_wishbone_ack = 1'd0;
+wire usbtestsoc_usbtestsoc_bus_wishbone_we;
+wire [2:0] usbtestsoc_usbtestsoc_bus_wishbone_cti;
+wire [1:0] usbtestsoc_usbtestsoc_bus_wishbone_bte;
+reg usbtestsoc_usbtestsoc_bus_wishbone_err = 1'd0;
+reg [1:0] usbtestsoc_usbtestsoc_counter = 2'd0;
+reg [31:0] usbtestsoc_usbtestsoc_load_storage_full = 32'd0;
+wire [31:0] usbtestsoc_usbtestsoc_load_storage;
+reg usbtestsoc_usbtestsoc_load_re = 1'd0;
+reg [31:0] usbtestsoc_usbtestsoc_reload_storage_full = 32'd0;
+wire [31:0] usbtestsoc_usbtestsoc_reload_storage;
+reg usbtestsoc_usbtestsoc_reload_re = 1'd0;
+reg usbtestsoc_usbtestsoc_en_storage_full = 1'd0;
+wire usbtestsoc_usbtestsoc_en_storage;
+reg usbtestsoc_usbtestsoc_en_re = 1'd0;
+wire usbtestsoc_usbtestsoc_update_value_re;
+wire usbtestsoc_usbtestsoc_update_value_r;
+reg usbtestsoc_usbtestsoc_update_value_w = 1'd0;
+reg [31:0] usbtestsoc_usbtestsoc_value_status = 32'd0;
+wire usbtestsoc_usbtestsoc_irq;
+wire usbtestsoc_usbtestsoc_zero_status;
+reg usbtestsoc_usbtestsoc_zero_pending = 1'd0;
+wire usbtestsoc_usbtestsoc_zero_trigger;
+reg usbtestsoc_usbtestsoc_zero_clear = 1'd0;
+reg usbtestsoc_usbtestsoc_zero_old_trigger = 1'd0;
+wire usbtestsoc_usbtestsoc_eventmanager_status_re;
+wire usbtestsoc_usbtestsoc_eventmanager_status_r;
+wire usbtestsoc_usbtestsoc_eventmanager_status_w;
+wire usbtestsoc_usbtestsoc_eventmanager_pending_re;
+wire usbtestsoc_usbtestsoc_eventmanager_pending_r;
+wire usbtestsoc_usbtestsoc_eventmanager_pending_w;
+reg usbtestsoc_usbtestsoc_eventmanager_storage_full = 1'd0;
+wire usbtestsoc_usbtestsoc_eventmanager_storage;
+reg usbtestsoc_usbtestsoc_eventmanager_re = 1'd0;
+reg [31:0] usbtestsoc_usbtestsoc_value = 32'd0;
+wire sys_clk;
+wire sys_rst;
+wire usb_48_clk;
+reg usbtestsoc_crg_reset = 1'd0;
+wire por_clk;
+wire por_rst;
+reg [11:0] usbtestsoc_crg_reset_delay = 12'd4095;
+wire [159:0] usbtestsoc_status;
+wire [63:0] usbtestsoc_platform_status;
+wire [63:0] usbtestsoc_target_status;
+wire [29:0] usbtestsoc_spiflash_bus_adr;
+wire [31:0] usbtestsoc_spiflash_bus_dat_w;
+wire [31:0] usbtestsoc_spiflash_bus_dat_r;
+wire [3:0] usbtestsoc_spiflash_bus_sel;
+wire usbtestsoc_spiflash_bus_cyc;
+wire usbtestsoc_spiflash_bus_stb;
+reg usbtestsoc_spiflash_bus_ack = 1'd0;
+wire usbtestsoc_spiflash_bus_we;
+wire [2:0] usbtestsoc_spiflash_bus_cti;
+wire [1:0] usbtestsoc_spiflash_bus_bte;
+reg usbtestsoc_spiflash_bus_err = 1'd0;
+reg [3:0] usbtestsoc_spiflash_bitbang_storage_full = 4'd0;
+wire [3:0] usbtestsoc_spiflash_bitbang_storage;
+reg usbtestsoc_spiflash_bitbang_re = 1'd0;
+reg usbtestsoc_spiflash_miso_status = 1'd0;
+reg usbtestsoc_spiflash_bitbang_en_storage_full = 1'd0;
+wire usbtestsoc_spiflash_bitbang_en_storage;
+reg usbtestsoc_spiflash_bitbang_en_re = 1'd0;
+reg usbtestsoc_spiflash_cs_n1 = 1'd1;
+reg usbtestsoc_spiflash_clk1 = 1'd0;
+reg [31:0] usbtestsoc_spiflash_sr = 32'd0;
+reg usbtestsoc_spiflash_i = 1'd0;
+reg usbtestsoc_spiflash_miso1 = 1'd0;
+reg [7:0] usbtestsoc_spiflash_counter = 8'd0;
+reg [31:0] uartwishbonebridge_storage = 32'd30923764;
+reg uartwishbonebridge_sink_valid = 1'd0;
+reg uartwishbonebridge_sink_ready = 1'd0;
+wire uartwishbonebridge_sink_last;
+reg [7:0] uartwishbonebridge_sink_payload_data = 8'd0;
+reg uartwishbonebridge_uart_clk_txen = 1'd0;
+reg [31:0] uartwishbonebridge_phase_accumulator_tx = 32'd0;
+reg [7:0] uartwishbonebridge_tx_reg = 8'd0;
+reg [3:0] uartwishbonebridge_tx_bitcount = 4'd0;
+reg uartwishbonebridge_tx_busy = 1'd0;
+reg uartwishbonebridge_source_valid = 1'd0;
+wire uartwishbonebridge_source_ready;
+reg [7:0] uartwishbonebridge_source_payload_data = 8'd0;
+reg uartwishbonebridge_uart_clk_rxen = 1'd0;
+reg [31:0] uartwishbonebridge_phase_accumulator_rx = 32'd0;
+wire uartwishbonebridge_rx;
+reg uartwishbonebridge_rx_r = 1'd0;
+reg [7:0] uartwishbonebridge_rx_reg = 8'd0;
+reg [3:0] uartwishbonebridge_rx_bitcount = 4'd0;
+reg uartwishbonebridge_rx_busy = 1'd0;
+wire [29:0] uartwishbonebridge_wishbone_adr;
+wire [31:0] uartwishbonebridge_wishbone_dat_w;
+wire [31:0] uartwishbonebridge_wishbone_dat_r;
+wire [3:0] uartwishbonebridge_wishbone_sel;
+reg uartwishbonebridge_wishbone_cyc = 1'd0;
+reg uartwishbonebridge_wishbone_stb = 1'd0;
+wire uartwishbonebridge_wishbone_ack;
+reg uartwishbonebridge_wishbone_we = 1'd0;
+reg [2:0] uartwishbonebridge_wishbone_cti = 3'd0;
+reg [1:0] uartwishbonebridge_wishbone_bte = 2'd0;
+wire uartwishbonebridge_wishbone_err;
+reg [2:0] uartwishbonebridge_byte_counter = 3'd0;
+reg uartwishbonebridge_byte_counter_reset = 1'd0;
+reg uartwishbonebridge_byte_counter_ce = 1'd0;
+reg [2:0] uartwishbonebridge_word_counter = 3'd0;
+reg uartwishbonebridge_word_counter_reset = 1'd0;
+reg uartwishbonebridge_word_counter_ce = 1'd0;
+reg [7:0] uartwishbonebridge_cmd = 8'd0;
+reg uartwishbonebridge_cmd_ce = 1'd0;
+reg [7:0] uartwishbonebridge_length = 8'd0;
+reg uartwishbonebridge_length_ce = 1'd0;
+reg [31:0] uartwishbonebridge_address = 32'd0;
+reg uartwishbonebridge_address_ce = 1'd0;
+reg [31:0] uartwishbonebridge_data = 32'd0;
+reg uartwishbonebridge_rx_data_ce = 1'd0;
+reg uartwishbonebridge_tx_data_ce = 1'd0;
+wire uartwishbonebridge_reset;
+wire uartwishbonebridge_wait;
+wire uartwishbonebridge_done;
+reg [20:0] uartwishbonebridge_count = 21'd1600000;
+reg uartwishbonebridge_is_ongoing = 1'd0;
+reg usbdevice0 = 1'd0;
+reg usbdevice1 = 1'd0;
+reg usbdevice2 = 1'd0;
+reg usbdevice3 = 1'd0;
+reg usbdevice4 = 1'd0;
+reg usbdevice5 = 1'd0;
+reg usbdevice6 = 1'd0;
+reg usbdevice7 = 1'd0;
+reg usbdevice8 = 1'd0;
+reg usbdevice9 = 1'd0;
+reg usbdevice10 = 1'd0;
+reg usbdevice11 = 1'd0;
+reg usbdevice12 = 1'd0;
+reg usbdevice13 = 1'd0;
+reg usbdevice14 = 1'd0;
+reg usbdevice15 = 1'd0;
+reg usbdevice_o_out_commit = 1'd0;
+reg usbdevice_o_out_rollback = 1'd0;
+reg usbdevice16 = 1'd0;
+reg usbdevice17 = 1'd0;
+reg usbdevice18 = 1'd0;
+reg usbdevice19 = 1'd0;
+reg usbdevice20 = 1'd0;
+reg usbdevice21 = 1'd0;
+reg usbdevice22 = 1'd0;
+reg usbdevice23 = 1'd0;
+reg usbdevice24 = 1'd0;
+reg usbdevice25 = 1'd0;
+reg usbdevice26 = 1'd0;
+reg usbdevice27 = 1'd0;
+reg usbdevice28 = 1'd0;
+reg usbdevice29 = 1'd0;
+reg usbdevice30 = 1'd0;
+reg usbdevice31 = 1'd0;
+reg usbdevice32 = 1'd0;
+reg usbdevice33 = 1'd0;
+reg usbdevice34 = 1'd0;
+reg usbdevice35 = 1'd0;
+reg usbdevice36 = 1'd0;
+reg usbdevice37 = 1'd0;
+reg usbdevice38 = 1'd0;
+reg usbdevice39 = 1'd0;
+reg usbdevice40 = 1'd0;
+reg usbdevice41 = 1'd0;
+reg usbdevice42 = 1'd0;
+reg usbdevice43 = 1'd0;
+reg usbdevice44 = 1'd0;
+reg usbdevice45 = 1'd0;
+reg usbdevice46 = 1'd0;
+reg usbdevice47 = 1'd0;
+reg usbdevice_o_in_commit = 1'd0;
+reg usbdevice_o_in_rollback = 1'd0;
+reg usbdevice_in_tx_pkt_start = 1'd0;
+reg [3:0] usbdevice_in_tx_pid = 4'd0;
+reg usbdevice_out_tx_pkt_start = 1'd0;
+reg [3:0] usbdevice_out_tx_pid = 4'd0;
+reg usbdevice_tx_pkt_start = 1'd0;
+wire usbdevice_tx_pkt_end;
+reg [3:0] usbdevice_tx_pid = 4'd0;
+reg usbdevice_tx_data_avail = 1'd0;
+wire usbdevice_tx_data_get;
+reg [7:0] usbdevice_tx_data = 8'd0;
+wire usbdevice_usb_tx_en;
+wire usbdevice_usb_p_tx;
+wire usbdevice_usb_n_tx;
+reg usbdevice_usb_p_rx = 1'd0;
+reg usbdevice_usb_n_rx = 1'd0;
+wire usbdevice_usb_p_rx_io;
+wire usbdevice_usb_n_rx_io;
+wire usbdevice_usbfsrx_usbp;
+wire usbdevice_usbfsrx_usbn;
+wire [1:0] usbdevice_usbfsrx_dpair;
+reg usbdevice_usbfsrx_line_state_dt = 1'd0;
+reg usbdevice_usbfsrx_line_state_dj0 = 1'd0;
+reg usbdevice_usbfsrx_line_state_dk0 = 1'd0;
+reg usbdevice_usbfsrx_line_state_se00 = 1'd0;
+reg usbdevice_usbfsrx_line_state_se10 = 1'd0;
+reg [1:0] usbdevice_usbfsrx_line_state_phase = 2'd0;
+reg usbdevice_usbfsrx_line_state_valid = 1'd0;
+reg usbdevice_usbfsrx_line_state_dj1 = 1'd0;
+reg usbdevice_usbfsrx_line_state_dk1 = 1'd0;
+reg usbdevice_usbfsrx_line_state_se01 = 1'd0;
+reg usbdevice_usbfsrx_line_state_se11 = 1'd0;
+reg usbdevice_usbfsrx_nrzi_o_valid0 = 1'd0;
+reg usbdevice_usbfsrx_nrzi_o_data0 = 1'd0;
+reg usbdevice_usbfsrx_nrzi_o_valid1 = 1'd0;
+reg usbdevice_usbfsrx_nrzi_o_data1 = 1'd0;
+reg usbdevice_usbfsrx_nrzi_o_se0 = 1'd0;
+reg usbdevice_usbfsrx_bitstuff_drop_bit = 1'd0;
+reg usbdevice_usbfsrx_bitstuff_o_valid = 1'd0;
+reg usbdevice_usbfsrx_bitstuff_o_data = 1'd0;
+reg usbdevice_usbfsrx_bitstuff_o_se0 = 1'd0;
+reg usbdevice_usbfsrx_bitstuff_o_bitstuff_error = 1'd0;
+reg usbdevice_usbfsrx_valid = 1'd0;
+reg usbdevice_usbfsrx_data = 1'd0;
+reg usbdevice_usbfsrx_se0 = 1'd0;
+reg usbdevice_usbfsrx_bitstuff_error = 1'd0;
+reg usbdevice_usbfsrx_pkt_start = 1'd0;
+reg usbdevice_usbfsrx_pkt_active0 = 1'd0;
+reg usbdevice_usbfsrx_pkt_end0 = 1'd0;
+reg usbdevice_usbfsrx_o_pkt_start0 = 1'd0;
+reg usbdevice_usbfsrx_o_pkt_active = 1'd0;
+reg usbdevice_usbfsrx_o_pkt_end0 = 1'd0;
+reg usbdevice_usbfsrx_pkt_active1 = 1'd0;
+reg usbdevice_usbfsrx_pkt_end1 = 1'd0;
+reg [8:0] usbdevice_usbfsrx_pid_shifter_shift_reg = 9'd0;
+wire usbdevice_usbfsrx_pid_shifter_o_full;
+wire [7:0] usbdevice_usbfsrx_pid_shifter_o_output;
+reg usbdevice_usbfsrx_pid_shifter_o_put = 1'd0;
+reg [16:0] usbdevice_usbfsrx_tok_shifter_shift_reg = 17'd0;
+wire usbdevice_usbfsrx_tok_shifter_o_full;
+wire [15:0] usbdevice_usbfsrx_tok_shifter_o_output;
+reg usbdevice_usbfsrx_tok_shifter_o_put = 1'd0;
+reg [4:0] usbdevice_usbfsrx_tok_crc5_crc = 5'd0;
+wire usbdevice_usbfsrx_tok_crc5_crc_good;
+wire usbdevice_usbfsrx_tok_crc5_crc_invert;
+reg usbdevice_usbfsrx_tok_crc5_o_crc_good = 1'd0;
+wire usbdevice_usbfsrx_data_put;
+reg [8:0] usbdevice_usbfsrx_data_shifter_shift_reg = 9'd0;
+wire usbdevice_usbfsrx_data_shifter_o_full;
+wire [7:0] usbdevice_usbfsrx_data_shifter_o_output;
+reg usbdevice_usbfsrx_data_shifter_o_put = 1'd0;
+reg [15:0] usbdevice_usbfsrx_data_crc16_crc = 16'd0;
+wire usbdevice_usbfsrx_data_crc16_crc_good;
+wire usbdevice_usbfsrx_data_crc16_crc_invert;
+reg usbdevice_usbfsrx_data_crc16_o_crc_good = 1'd0;
+reg usbdevice_usbfsrx_pkt_bitstuff_good = 1'd0;
+reg usbdevice_usbfsrx_o_pkt_data_put = 1'd0;
+reg usbdevice_usbfsrx_crc16_good = 1'd0;
+reg usbdevice_usbfsrx_o_pkt_start1 = 1'd0;
+reg [3:0] usbdevice_usbfsrx_o_pkt_pid = 4'd0;
+reg [10:0] usbdevice_usbfsrx_o_pkt_token_payload = 11'd0;
+reg [7:0] usbdevice_usbfsrx_o_pkt_data = 8'd0;
+reg usbdevice_usbfsrx_o_pkt_good = 1'd0;
+reg usbdevice_usbfsrx_o_pkt_end1 = 1'd0;
+wire [6:0] usbdevice_rx_addr;
+wire [3:0] usbdevice_rx_endp;
+wire usbdevice_usbfstx_bitstuff_stall;
+reg usbdevice_usbfstx_pkt_active = 1'd0;
+reg usbdevice_usbfstx_shift_sync = 1'd0;
+reg usbdevice_usbfstx_shift_pid = 1'd0;
+reg usbdevice_usbfstx_shift_eop = 1'd0;
+reg usbdevice_usbfstx_load_data = 1'd0;
+reg usbdevice_usbfstx_shift_data = 1'd0;
+reg usbdevice_usbfstx_load_crc16 = 1'd0;
+reg usbdevice_usbfstx_shift_crc16 = 1'd0;
+reg usbdevice_usbfstx_pkt_end = 1'd0;
+reg [8:0] usbdevice_usbfstx_sync_shifter_shifter = 9'd0;
+wire usbdevice_usbfstx_sync_shifter_o_data;
+wire usbdevice_usbfstx_sync_shifter_o_empty;
+reg usbdevice_usbfstx_sync_shifter_not_empty = 1'd0;
+reg [8:0] usbdevice_usbfstx_pid_shifter_shifter = 9'd0;
+wire usbdevice_usbfstx_pid_shifter_o_data;
+wire usbdevice_usbfstx_pid_shifter_o_empty;
+reg usbdevice_usbfstx_pid_shifter_not_empty = 1'd0;
+reg [8:0] usbdevice_usbfstx_data_shifter_shifter = 9'd0;
+wire usbdevice_usbfstx_data_shifter_o_data;
+wire usbdevice_usbfstx_data_shifter_o_empty;
+reg usbdevice_usbfstx_data_shifter_not_empty = 1'd0;
+reg [15:0] usbdevice_usbfstx_crc = 16'd0;
+wire usbdevice_usbfstx_crc_invert;
+reg [15:0] usbdevice_usbfstx_o_crc = 16'd0;
+reg [16:0] usbdevice_usbfstx_crc16_shifter_shifter = 17'd0;
+wire usbdevice_usbfstx_crc16_shifter_o_data;
+wire usbdevice_usbfstx_crc16_shifter_o_empty;
+reg usbdevice_usbfstx_crc16_shifter_not_empty = 1'd0;
+reg usbdevice_usbfstx_pid_is_data = 1'd0;
+reg usbdevice_usbfstx_mux_stuff_oe = 1'd0;
+reg usbdevice_usbfstx_mux_stuff_data = 1'd0;
+reg usbdevice_usbfstx_mux_stuff_se0 = 1'd0;
+reg usbdevice_usbfstx_mux_stuff_bit_strobe = 1'd0;
+reg usbdevice_usbfstx_bitstuffer_stuff_bit = 1'd0;
+wire usbdevice_usbfstx_bitstuffer_o_stall;
+reg usbdevice_usbfstx_bitstuffer_o_data = 1'd0;
+reg usbdevice_usbfstx_bitstuffer_o_se0 = 1'd0;
+reg usbdevice_usbfstx_bitstuffer_o_oe = 1'd0;
+reg usbdevice_usbfstx_nrzi_usbp = 1'd0;
+reg usbdevice_usbfstx_nrzi_usbn = 1'd0;
+reg usbdevice_usbfstx_nrzi_oe = 1'd0;
+reg usbdevice_usbfstx_nrzi_o_usbp = 1'd0;
+reg usbdevice_usbfstx_nrzi_o_usbn = 1'd0;
+reg usbdevice_usbfstx_nrzi_o_oe = 1'd0;
+reg usbdevice_usbfstx_o_data_get = 1'd0;
+reg usbdevice_usbfstx_o_pkt_end = 1'd0;
+reg usbdevice_usbfstx_o_usbp = 1'd0;
+reg usbdevice_usbfstx_o_usbn = 1'd0;
+reg usbdevice_usbfstx_o_oe = 1'd0;
+reg [3:0] usbdevice_current_token = 4'd0;
+reg [3:0] usbdevice_current_endp = 4'd0;
+wire usbdevice_valid_request_token_pre;
+reg usbdevice_valid_request_token = 1'd0;
+wire usbdevice_valid_out_token;
+wire usbdevice_valid_data_packet;
+wire usbdevice_valid_in_token;
+wire usbdevice_valid_ack_packet;
+reg [7:0] io_input = 8'd0;
+wire [7:0] io_output;
+wire [7:0] io_status;
+reg [7:0] io_storage_full = 8'd0;
+wire [7:0] io_storage;
+reg io_re = 1'd0;
+wire scope_clk;
+wire scope_rst;
+wire mux_valid;
+reg mux_ready = 1'd0;
+reg mux_first = 1'd0;
+reg mux_last = 1'd0;
+wire [1:0] mux_payload_data;
+reg mux_payload_hit = 1'd0;
+reg mux_source_valid = 1'd0;
+wire mux_source_ready;
+reg mux_source_first = 1'd0;
+reg mux_source_last = 1'd0;
+reg [1:0] mux_source_payload_data = 2'd0;
+reg mux_source_payload_hit = 1'd0;
+reg mux_value_storage_full = 1'd0;
+wire mux_value_storage;
+reg mux_value_re = 1'd0;
+wire mux_value;
+wire trigger_sink_sink_valid;
+wire trigger_sink_sink_ready;
+wire trigger_sink_sink_first;
+wire trigger_sink_sink_last;
+wire [1:0] trigger_sink_sink_payload_data;
+wire trigger_sink_sink_payload_hit;
+wire trigger_source_source_valid;
+wire trigger_source_source_ready;
+wire trigger_source_source_first;
+wire trigger_source_source_last;
+wire [1:0] trigger_source_source_payload_data;
+reg trigger_source_source_payload_hit = 1'd0;
+reg trigger_enable_storage_full = 1'd0;
+wire trigger_enable_storage;
+reg trigger_enable_re = 1'd0;
+wire trigger_done_status;
+wire trigger_mem_write_re;
+wire trigger_mem_write_r;
+reg trigger_mem_write_w = 1'd0;
+reg [1:0] trigger_mem_mask_storage_full = 2'd0;
+wire [1:0] trigger_mem_mask_storage;
+reg trigger_mem_mask_re = 1'd0;
+reg [1:0] trigger_mem_value_storage_full = 2'd0;
+wire [1:0] trigger_mem_value_storage;
+reg trigger_mem_value_re = 1'd0;
+wire trigger_mem_full_status;
+wire trigger_enable;
+reg trigger_enable_d = 1'd0;
+wire trigger_done0;
+wire trigger_mem_sink_valid;
+wire trigger_mem_sink_ready;
+reg trigger_mem_sink_first = 1'd0;
+reg trigger_mem_sink_last = 1'd0;
+wire [1:0] trigger_mem_sink_payload_mask;
+wire [1:0] trigger_mem_sink_payload_value;
+wire trigger_mem_source_valid;
+wire trigger_mem_source_ready;
+wire trigger_mem_source_first;
+wire trigger_mem_source_last;
+wire [1:0] trigger_mem_source_payload_mask;
+wire [1:0] trigger_mem_source_payload_value;
+wire trigger_mem_asyncfifo_we;
+wire trigger_mem_asyncfifo_writable;
+wire trigger_mem_asyncfifo_re;
+wire trigger_mem_asyncfifo_readable;
+wire [5:0] trigger_mem_asyncfifo_din;
+wire [5:0] trigger_mem_asyncfifo_dout;
+wire trigger_mem_graycounter0_ce;
+reg [4:0] trigger_mem_graycounter0_q = 5'd0;
+wire [4:0] trigger_mem_graycounter0_q_next;
+reg [4:0] trigger_mem_graycounter0_q_binary = 5'd0;
+reg [4:0] trigger_mem_graycounter0_q_next_binary = 5'd0;
+wire trigger_mem_graycounter1_ce;
+reg [4:0] trigger_mem_graycounter1_q = 5'd0;
+wire [4:0] trigger_mem_graycounter1_q_next;
+reg [4:0] trigger_mem_graycounter1_q_binary = 5'd0;
+reg [4:0] trigger_mem_graycounter1_q_next_binary = 5'd0;
+wire [4:0] trigger_mem_produce_rdomain;
+wire [4:0] trigger_mem_consume_wdomain;
+wire [3:0] trigger_mem_wrport_adr;
+wire [5:0] trigger_mem_wrport_dat_r;
+wire trigger_mem_wrport_we;
+wire [5:0] trigger_mem_wrport_dat_w;
+wire [3:0] trigger_mem_rdport_adr;
+wire [5:0] trigger_mem_rdport_dat_r;
+wire [1:0] trigger_mem_fifo_in_payload_mask;
+wire [1:0] trigger_mem_fifo_in_payload_value;
+wire trigger_mem_fifo_in_first;
+wire trigger_mem_fifo_in_last;
+wire [1:0] trigger_mem_fifo_out_payload_mask;
+wire [1:0] trigger_mem_fifo_out_payload_value;
+wire trigger_mem_fifo_out_first;
+wire trigger_mem_fifo_out_last;
+wire trigger_hit;
+wire trigger_wait;
+wire trigger_done1;
+reg [4:0] trigger_count = 5'd16;
+wire subsampler_sink_valid;
+wire subsampler_sink_ready;
+wire subsampler_sink_first;
+wire subsampler_sink_last;
+wire [1:0] subsampler_sink_payload_data;
+wire subsampler_sink_payload_hit;
+wire subsampler_source_valid;
+wire subsampler_source_ready;
+wire subsampler_source_first;
+wire subsampler_source_last;
+wire [1:0] subsampler_source_payload_data;
+wire subsampler_source_payload_hit;
+reg [15:0] subsampler_value_storage_full = 16'd0;
+wire [15:0] subsampler_value_storage;
+reg subsampler_value_re = 1'd0;
+wire [15:0] subsampler_value;
+reg [15:0] subsampler_counter = 16'd0;
+wire subsampler_done;
+wire storage_sink_sink_valid;
+reg storage_sink_sink_ready = 1'd0;
+wire storage_sink_sink_first;
+wire storage_sink_sink_last;
+wire [1:0] storage_sink_sink_payload_data;
+wire storage_sink_sink_payload_hit;
+reg storage_enable_storage_full = 1'd0;
+wire storage_enable_storage;
+reg storage_enable_re = 1'd0;
+wire storage_done_status;
+reg [8:0] storage_length_storage_full = 9'd0;
+wire [8:0] storage_length_storage;
+reg storage_length_re = 1'd0;
+reg [8:0] storage_offset_storage_full = 9'd0;
+wire [8:0] storage_offset_storage;
+reg storage_offset_re = 1'd0;
+wire storage_mem_valid_status;
+wire storage_mem_ready_re;
+wire storage_mem_ready_r;
+reg storage_mem_ready_w = 1'd0;
+wire [1:0] storage_mem_data_status;
+wire storage_enable;
+reg storage_enable_d = 1'd0;
+wire [7:0] storage_length;
+wire [7:0] storage_offset;
+reg storage_done0 = 1'd0;
+reg storage_mem_sink_valid = 1'd0;
+wire storage_mem_sink_ready;
+reg storage_mem_sink_first = 1'd0;
+reg storage_mem_sink_last = 1'd0;
+reg [1:0] storage_mem_sink_payload_data = 2'd0;
+wire storage_mem_source_valid;
+reg storage_mem_source_ready = 1'd0;
+wire storage_mem_source_first;
+wire storage_mem_source_last;
+wire [1:0] storage_mem_source_payload_data;
+wire storage_mem_re;
+reg storage_mem_readable = 1'd0;
+wire storage_mem_syncfifo_we;
+wire storage_mem_syncfifo_writable;
+wire storage_mem_syncfifo_re;
+wire storage_mem_syncfifo_readable;
+wire [3:0] storage_mem_syncfifo_din;
+wire [3:0] storage_mem_syncfifo_dout;
+reg [8:0] storage_mem_level0 = 9'd0;
+reg storage_mem_replace = 1'd0;
+reg [7:0] storage_mem_produce = 8'd0;
+reg [7:0] storage_mem_consume = 8'd0;
+reg [7:0] storage_mem_wrport_adr = 8'd0;
+wire [3:0] storage_mem_wrport_dat_r;
+wire storage_mem_wrport_we;
+wire [3:0] storage_mem_wrport_dat_w;
+wire storage_mem_do_read;
+wire [7:0] storage_mem_rdport_adr;
+wire [3:0] storage_mem_rdport_dat_r;
+wire storage_mem_rdport_re;
+wire [8:0] storage_mem_level1;
+wire [1:0] storage_mem_fifo_in_payload_data;
+wire storage_mem_fifo_in_first;
+wire storage_mem_fifo_in_last;
+wire [1:0] storage_mem_fifo_out_payload_data;
+wire storage_mem_fifo_out_first;
+wire storage_mem_fifo_out_last;
+reg storage_cdc_sink_valid = 1'd0;
+wire storage_cdc_sink_ready;
+reg storage_cdc_sink_first = 1'd0;
+reg storage_cdc_sink_last = 1'd0;
+reg [1:0] storage_cdc_sink_payload_data = 2'd0;
+wire storage_cdc_source_valid;
+wire storage_cdc_source_ready;
+wire storage_cdc_source_first;
+wire storage_cdc_source_last;
+wire [1:0] storage_cdc_source_payload_data;
+wire storage_cdc_asyncfifo_we;
+wire storage_cdc_asyncfifo_writable;
+wire storage_cdc_asyncfifo_re;
+wire storage_cdc_asyncfifo_readable;
+wire [3:0] storage_cdc_asyncfifo_din;
+wire [3:0] storage_cdc_asyncfifo_dout;
+wire storage_cdc_graycounter0_ce;
+reg [2:0] storage_cdc_graycounter0_q = 3'd0;
+wire [2:0] storage_cdc_graycounter0_q_next;
+reg [2:0] storage_cdc_graycounter0_q_binary = 3'd0;
+reg [2:0] storage_cdc_graycounter0_q_next_binary = 3'd0;
+wire storage_cdc_graycounter1_ce;
+reg [2:0] storage_cdc_graycounter1_q = 3'd0;
+wire [2:0] storage_cdc_graycounter1_q_next;
+reg [2:0] storage_cdc_graycounter1_q_binary = 3'd0;
+reg [2:0] storage_cdc_graycounter1_q_next_binary = 3'd0;
+wire [2:0] storage_cdc_produce_rdomain;
+wire [2:0] storage_cdc_consume_wdomain;
+wire [1:0] storage_cdc_wrport_adr;
+wire [3:0] storage_cdc_wrport_dat_r;
+wire storage_cdc_wrport_we;
+wire [3:0] storage_cdc_wrport_dat_w;
+wire [1:0] storage_cdc_rdport_adr;
+wire [3:0] storage_cdc_rdport_dat_r;
+wire [1:0] storage_cdc_fifo_in_payload_data;
+wire storage_cdc_fifo_in_first;
+wire storage_cdc_fifo_in_last;
+wire [1:0] storage_cdc_fifo_out_payload_data;
+wire storage_cdc_fifo_out_first;
+wire storage_cdc_fifo_out_last;
+reg storage_wait = 1'd0;
+wire storage_done1;
+reg [8:0] storage_count = 9'd256;
+reg [2:0] uartwishbonebridge_state = 3'd0;
+reg [2:0] uartwishbonebridge_next_state = 3'd0;
+reg [2:0] rxclockdatarecovery_state = 3'd0;
+reg [2:0] rxclockdatarecovery_next_state = 3'd0;
+reg rxnrzidecoder_state = 1'd0;
+reg rxnrzidecoder_next_state = 1'd0;
+reg [2:0] rxbitstuffremover_state = 3'd0;
+reg [2:0] rxbitstuffremover_next_state = 3'd0;
+reg [2:0] rxpacketdecode_state = 3'd0;
+reg [2:0] rxpacketdecode_next_state = 3'd0;
+reg [2:0] fsm_state = 3'd0;
+reg [2:0] fsm_next_state = 3'd0;
+reg [2:0] txbitstuffer_state = 3'd0;
+reg [2:0] txbitstuffer_next_state = 3'd0;
+reg [2:0] txnrziencoder_state = 3'd0;
+reg [2:0] txnrziencoder_next_state = 3'd0;
+reg [2:0] fsm0_state = 3'd0;
+reg [2:0] fsm0_next_state = 3'd0;
+reg [2:0] fsm1_state = 3'd0;
+reg [2:0] fsm1_next_state = 3'd0;
+reg [1:0] litescopeanalyzer_state = 2'd0;
+reg [1:0] litescopeanalyzer_next_state = 2'd0;
+wire [29:0] shared_adr;
+wire [31:0] shared_dat_w;
+reg [31:0] shared_dat_r = 32'd0;
+wire [3:0] shared_sel;
+wire shared_cyc;
+wire shared_stb;
+reg shared_ack = 1'd0;
+wire shared_we;
+wire [2:0] shared_cti;
+wire [1:0] shared_bte;
+wire shared_err;
+wire request;
+wire grant;
+reg [1:0] slave_sel = 2'd0;
+reg [1:0] slave_sel_r = 2'd0;
+reg error = 1'd0;
+wire wait_1;
+wire done;
+reg [16:0] count = 17'd65536;
+wire [13:0] interface0_bank_bus_adr;
+wire interface0_bank_bus_we;
+wire [7:0] interface0_bank_bus_dat_w;
+reg [7:0] interface0_bank_bus_dat_r = 8'd0;
+wire csrbank0_mux_value0_re;
+wire csrbank0_mux_value0_r;
+wire csrbank0_mux_value0_w;
+wire csrbank0_trigger_enable0_re;
+wire csrbank0_trigger_enable0_r;
+wire csrbank0_trigger_enable0_w;
+wire csrbank0_trigger_done_re;
+wire csrbank0_trigger_done_r;
+wire csrbank0_trigger_done_w;
+wire csrbank0_trigger_mem_mask0_re;
+wire [1:0] csrbank0_trigger_mem_mask0_r;
+wire [1:0] csrbank0_trigger_mem_mask0_w;
+wire csrbank0_trigger_mem_value0_re;
+wire [1:0] csrbank0_trigger_mem_value0_r;
+wire [1:0] csrbank0_trigger_mem_value0_w;
+wire csrbank0_trigger_mem_full_re;
+wire csrbank0_trigger_mem_full_r;
+wire csrbank0_trigger_mem_full_w;
+wire csrbank0_subsampler_value1_re;
+wire [7:0] csrbank0_subsampler_value1_r;
+wire [7:0] csrbank0_subsampler_value1_w;
+wire csrbank0_subsampler_value0_re;
+wire [7:0] csrbank0_subsampler_value0_r;
+wire [7:0] csrbank0_subsampler_value0_w;
+wire csrbank0_storage_enable0_re;
+wire csrbank0_storage_enable0_r;
+wire csrbank0_storage_enable0_w;
+wire csrbank0_storage_done_re;
+wire csrbank0_storage_done_r;
+wire csrbank0_storage_done_w;
+wire csrbank0_storage_length1_re;
+wire csrbank0_storage_length1_r;
+wire csrbank0_storage_length1_w;
+wire csrbank0_storage_length0_re;
+wire [7:0] csrbank0_storage_length0_r;
+wire [7:0] csrbank0_storage_length0_w;
+wire csrbank0_storage_offset1_re;
+wire csrbank0_storage_offset1_r;
+wire csrbank0_storage_offset1_w;
+wire csrbank0_storage_offset0_re;
+wire [7:0] csrbank0_storage_offset0_r;
+wire [7:0] csrbank0_storage_offset0_w;
+wire csrbank0_storage_mem_valid_re;
+wire csrbank0_storage_mem_valid_r;
+wire csrbank0_storage_mem_valid_w;
+wire csrbank0_storage_mem_data_re;
+wire [1:0] csrbank0_storage_mem_data_r;
+wire [1:0] csrbank0_storage_mem_data_w;
+wire csrbank0_sel;
+wire [13:0] interface1_bank_bus_adr;
+wire interface1_bank_bus_we;
+wire [7:0] interface1_bank_bus_dat_w;
+reg [7:0] interface1_bank_bus_dat_r = 8'd0;
+wire csrbank1_scratch3_re;
+wire [7:0] csrbank1_scratch3_r;
+wire [7:0] csrbank1_scratch3_w;
+wire csrbank1_scratch2_re;
+wire [7:0] csrbank1_scratch2_r;
+wire [7:0] csrbank1_scratch2_w;
+wire csrbank1_scratch1_re;
+wire [7:0] csrbank1_scratch1_r;
+wire [7:0] csrbank1_scratch1_w;
+wire csrbank1_scratch0_re;
+wire [7:0] csrbank1_scratch0_r;
+wire [7:0] csrbank1_scratch0_w;
+wire csrbank1_bus_errors3_re;
+wire [7:0] csrbank1_bus_errors3_r;
+wire [7:0] csrbank1_bus_errors3_w;
+wire csrbank1_bus_errors2_re;
+wire [7:0] csrbank1_bus_errors2_r;
+wire [7:0] csrbank1_bus_errors2_w;
+wire csrbank1_bus_errors1_re;
+wire [7:0] csrbank1_bus_errors1_r;
+wire [7:0] csrbank1_bus_errors1_w;
+wire csrbank1_bus_errors0_re;
+wire [7:0] csrbank1_bus_errors0_r;
+wire [7:0] csrbank1_bus_errors0_w;
+wire csrbank1_sel;
+wire [13:0] sram_bus_adr;
+wire sram_bus_we;
+wire [7:0] sram_bus_dat_w;
+reg [7:0] sram_bus_dat_r = 8'd0;
+wire [3:0] adr;
+wire [7:0] dat_r;
+wire sel;
+reg sel_r = 1'd0;
+wire [13:0] interface2_bank_bus_adr;
+wire interface2_bank_bus_we;
+wire [7:0] interface2_bank_bus_dat_w;
+reg [7:0] interface2_bank_bus_dat_r = 8'd0;
+wire csrbank2_git_commit19_re;
+wire [7:0] csrbank2_git_commit19_r;
+wire [7:0] csrbank2_git_commit19_w;
+wire csrbank2_git_commit18_re;
+wire [7:0] csrbank2_git_commit18_r;
+wire [7:0] csrbank2_git_commit18_w;
+wire csrbank2_git_commit17_re;
+wire [7:0] csrbank2_git_commit17_r;
+wire [7:0] csrbank2_git_commit17_w;
+wire csrbank2_git_commit16_re;
+wire [7:0] csrbank2_git_commit16_r;
+wire [7:0] csrbank2_git_commit16_w;
+wire csrbank2_git_commit15_re;
+wire [7:0] csrbank2_git_commit15_r;
+wire [7:0] csrbank2_git_commit15_w;
+wire csrbank2_git_commit14_re;
+wire [7:0] csrbank2_git_commit14_r;
+wire [7:0] csrbank2_git_commit14_w;
+wire csrbank2_git_commit13_re;
+wire [7:0] csrbank2_git_commit13_r;
+wire [7:0] csrbank2_git_commit13_w;
+wire csrbank2_git_commit12_re;
+wire [7:0] csrbank2_git_commit12_r;
+wire [7:0] csrbank2_git_commit12_w;
+wire csrbank2_git_commit11_re;
+wire [7:0] csrbank2_git_commit11_r;
+wire [7:0] csrbank2_git_commit11_w;
+wire csrbank2_git_commit10_re;
+wire [7:0] csrbank2_git_commit10_r;
+wire [7:0] csrbank2_git_commit10_w;
+wire csrbank2_git_commit9_re;
+wire [7:0] csrbank2_git_commit9_r;
+wire [7:0] csrbank2_git_commit9_w;
+wire csrbank2_git_commit8_re;
+wire [7:0] csrbank2_git_commit8_r;
+wire [7:0] csrbank2_git_commit8_w;
+wire csrbank2_git_commit7_re;
+wire [7:0] csrbank2_git_commit7_r;
+wire [7:0] csrbank2_git_commit7_w;
+wire csrbank2_git_commit6_re;
+wire [7:0] csrbank2_git_commit6_r;
+wire [7:0] csrbank2_git_commit6_w;
+wire csrbank2_git_commit5_re;
+wire [7:0] csrbank2_git_commit5_r;
+wire [7:0] csrbank2_git_commit5_w;
+wire csrbank2_git_commit4_re;
+wire [7:0] csrbank2_git_commit4_r;
+wire [7:0] csrbank2_git_commit4_w;
+wire csrbank2_git_commit3_re;
+wire [7:0] csrbank2_git_commit3_r;
+wire [7:0] csrbank2_git_commit3_w;
+wire csrbank2_git_commit2_re;
+wire [7:0] csrbank2_git_commit2_r;
+wire [7:0] csrbank2_git_commit2_w;
+wire csrbank2_git_commit1_re;
+wire [7:0] csrbank2_git_commit1_r;
+wire [7:0] csrbank2_git_commit1_w;
+wire csrbank2_git_commit0_re;
+wire [7:0] csrbank2_git_commit0_r;
+wire [7:0] csrbank2_git_commit0_w;
+wire csrbank2_platform_platform7_re;
+wire [7:0] csrbank2_platform_platform7_r;
+wire [7:0] csrbank2_platform_platform7_w;
+wire csrbank2_platform_platform6_re;
+wire [7:0] csrbank2_platform_platform6_r;
+wire [7:0] csrbank2_platform_platform6_w;
+wire csrbank2_platform_platform5_re;
+wire [7:0] csrbank2_platform_platform5_r;
+wire [7:0] csrbank2_platform_platform5_w;
+wire csrbank2_platform_platform4_re;
+wire [7:0] csrbank2_platform_platform4_r;
+wire [7:0] csrbank2_platform_platform4_w;
+wire csrbank2_platform_platform3_re;
+wire [7:0] csrbank2_platform_platform3_r;
+wire [7:0] csrbank2_platform_platform3_w;
+wire csrbank2_platform_platform2_re;
+wire [7:0] csrbank2_platform_platform2_r;
+wire [7:0] csrbank2_platform_platform2_w;
+wire csrbank2_platform_platform1_re;
+wire [7:0] csrbank2_platform_platform1_r;
+wire [7:0] csrbank2_platform_platform1_w;
+wire csrbank2_platform_platform0_re;
+wire [7:0] csrbank2_platform_platform0_r;
+wire [7:0] csrbank2_platform_platform0_w;
+wire csrbank2_platform_target7_re;
+wire [7:0] csrbank2_platform_target7_r;
+wire [7:0] csrbank2_platform_target7_w;
+wire csrbank2_platform_target6_re;
+wire [7:0] csrbank2_platform_target6_r;
+wire [7:0] csrbank2_platform_target6_w;
+wire csrbank2_platform_target5_re;
+wire [7:0] csrbank2_platform_target5_r;
+wire [7:0] csrbank2_platform_target5_w;
+wire csrbank2_platform_target4_re;
+wire [7:0] csrbank2_platform_target4_r;
+wire [7:0] csrbank2_platform_target4_w;
+wire csrbank2_platform_target3_re;
+wire [7:0] csrbank2_platform_target3_r;
+wire [7:0] csrbank2_platform_target3_w;
+wire csrbank2_platform_target2_re;
+wire [7:0] csrbank2_platform_target2_r;
+wire [7:0] csrbank2_platform_target2_w;
+wire csrbank2_platform_target1_re;
+wire [7:0] csrbank2_platform_target1_r;
+wire [7:0] csrbank2_platform_target1_w;
+wire csrbank2_platform_target0_re;
+wire [7:0] csrbank2_platform_target0_r;
+wire [7:0] csrbank2_platform_target0_w;
+wire csrbank2_sel;
+wire [13:0] interface3_bank_bus_adr;
+wire interface3_bank_bus_we;
+wire [7:0] interface3_bank_bus_dat_w;
+reg [7:0] interface3_bank_bus_dat_r = 8'd0;
+wire csrbank3_in_re;
+wire [7:0] csrbank3_in_r;
+wire [7:0] csrbank3_in_w;
+wire csrbank3_out0_re;
+wire [7:0] csrbank3_out0_r;
+wire [7:0] csrbank3_out0_w;
+wire csrbank3_sel;
+wire [13:0] interface4_bank_bus_adr;
+wire interface4_bank_bus_we;
+wire [7:0] interface4_bank_bus_dat_w;
+reg [7:0] interface4_bank_bus_dat_r = 8'd0;
+wire csrbank4_bitbang0_re;
+wire [3:0] csrbank4_bitbang0_r;
+wire [3:0] csrbank4_bitbang0_w;
+wire csrbank4_miso_re;
+wire csrbank4_miso_r;
+wire csrbank4_miso_w;
+wire csrbank4_bitbang_en0_re;
+wire csrbank4_bitbang_en0_r;
+wire csrbank4_bitbang_en0_w;
+wire csrbank4_sel;
+wire [13:0] interface5_bank_bus_adr;
+wire interface5_bank_bus_we;
+wire [7:0] interface5_bank_bus_dat_w;
+reg [7:0] interface5_bank_bus_dat_r = 8'd0;
+wire csrbank5_load3_re;
+wire [7:0] csrbank5_load3_r;
+wire [7:0] csrbank5_load3_w;
+wire csrbank5_load2_re;
+wire [7:0] csrbank5_load2_r;
+wire [7:0] csrbank5_load2_w;
+wire csrbank5_load1_re;
+wire [7:0] csrbank5_load1_r;
+wire [7:0] csrbank5_load1_w;
+wire csrbank5_load0_re;
+wire [7:0] csrbank5_load0_r;
+wire [7:0] csrbank5_load0_w;
+wire csrbank5_reload3_re;
+wire [7:0] csrbank5_reload3_r;
+wire [7:0] csrbank5_reload3_w;
+wire csrbank5_reload2_re;
+wire [7:0] csrbank5_reload2_r;
+wire [7:0] csrbank5_reload2_w;
+wire csrbank5_reload1_re;
+wire [7:0] csrbank5_reload1_r;
+wire [7:0] csrbank5_reload1_w;
+wire csrbank5_reload0_re;
+wire [7:0] csrbank5_reload0_r;
+wire [7:0] csrbank5_reload0_w;
+wire csrbank5_en0_re;
+wire csrbank5_en0_r;
+wire csrbank5_en0_w;
+wire csrbank5_value3_re;
+wire [7:0] csrbank5_value3_r;
+wire [7:0] csrbank5_value3_w;
+wire csrbank5_value2_re;
+wire [7:0] csrbank5_value2_r;
+wire [7:0] csrbank5_value2_w;
+wire csrbank5_value1_re;
+wire [7:0] csrbank5_value1_r;
+wire [7:0] csrbank5_value1_w;
+wire csrbank5_value0_re;
+wire [7:0] csrbank5_value0_r;
+wire [7:0] csrbank5_value0_w;
+wire csrbank5_ev_enable0_re;
+wire csrbank5_ev_enable0_r;
+wire csrbank5_ev_enable0_w;
+wire csrbank5_sel;
+wire [7:0] slice_proxy0;
+wire [7:0] slice_proxy1;
+reg t_array_muxed = 1'd0;
+reg basiclowerer_array_muxed = 1'd0;
+reg rhs_array_muxed = 1'd0;
+reg [29:0] array_muxed0 = 30'd0;
+reg [31:0] array_muxed1 = 32'd0;
+reg [3:0] array_muxed2 = 4'd0;
+reg array_muxed3 = 1'd0;
+reg array_muxed4 = 1'd0;
+reg array_muxed5 = 1'd0;
+reg [2:0] array_muxed6 = 3'd0;
+reg [1:0] array_muxed7 = 2'd0;
+wire rst1;
+reg multiregimpl0_regs0 = 1'd0;
+reg multiregimpl0_regs1 = 1'd0;
+reg multiregimpl1_regs0 = 1'd0;
+reg multiregimpl1_regs1 = 1'd0;
+reg multiregimpl1_regs2 = 1'd0;
+reg multiregimpl2_regs0 = 1'd0;
+reg multiregimpl2_regs1 = 1'd0;
+reg multiregimpl2_regs2 = 1'd0;
+reg [7:0] multiregimpl3_regs0 = 8'd0;
+reg [7:0] multiregimpl3_regs1 = 8'd0;
+reg multiregimpl4_regs0 = 1'd0;
+reg multiregimpl4_regs1 = 1'd0;
+reg multiregimpl5_regs0 = 1'd0;
+reg multiregimpl5_regs1 = 1'd0;
+reg multiregimpl6_regs0 = 1'd0;
+reg multiregimpl6_regs1 = 1'd0;
+reg [4:0] multiregimpl7_regs0 = 5'd0;
+reg [4:0] multiregimpl7_regs1 = 5'd0;
+reg [4:0] multiregimpl8_regs0 = 5'd0;
+reg [4:0] multiregimpl8_regs1 = 5'd0;
+reg [15:0] multiregimpl9_regs0 = 16'd0;
+reg [15:0] multiregimpl9_regs1 = 16'd0;
+reg multiregimpl10_regs0 = 1'd0;
+reg multiregimpl10_regs1 = 1'd0;
+reg [8:0] multiregimpl11_regs0 = 9'd0;
+reg [8:0] multiregimpl11_regs1 = 9'd0;
+reg [8:0] multiregimpl12_regs0 = 9'd0;
+reg [8:0] multiregimpl12_regs1 = 9'd0;
+reg multiregimpl13_regs0 = 1'd0;
+reg multiregimpl13_regs1 = 1'd0;
+reg [2:0] multiregimpl14_regs0 = 3'd0;
+reg [2:0] multiregimpl14_regs1 = 3'd0;
+reg [2:0] multiregimpl15_regs0 = 3'd0;
+reg [2:0] multiregimpl15_regs1 = 3'd0;
+
+assign user_led0 = io_output[0];
+assign usb_pullup = io_output[1];
+assign usbtestsoc_usbtestsoc_bus_error = error;
+assign usbtestsoc_usbtestsoc_reset = usbtestsoc_usbtestsoc_reset_reset_re;
+assign usbtestsoc_usbtestsoc_bus_errors_status = usbtestsoc_usbtestsoc_bus_errors;
+assign usbtestsoc_usbtestsoc_zero_trigger = (usbtestsoc_usbtestsoc_value != 1'd0);
+assign usbtestsoc_usbtestsoc_eventmanager_status_w = usbtestsoc_usbtestsoc_zero_status;
+always @(*) begin
+ usbtestsoc_usbtestsoc_zero_clear <= 1'd0;
+ if ((usbtestsoc_usbtestsoc_eventmanager_pending_re & usbtestsoc_usbtestsoc_eventmanager_pending_r)) begin
+ usbtestsoc_usbtestsoc_zero_clear <= 1'd1;
+ end
+end
+assign usbtestsoc_usbtestsoc_eventmanager_pending_w = usbtestsoc_usbtestsoc_zero_pending;
+assign usbtestsoc_usbtestsoc_irq = (usbtestsoc_usbtestsoc_eventmanager_pending_w & usbtestsoc_usbtestsoc_eventmanager_storage);
+assign usbtestsoc_usbtestsoc_zero_status = usbtestsoc_usbtestsoc_zero_trigger;
+assign sys_clk = clk16;
+assign por_clk = sys_clk;
+assign sys_rst = (usbtestsoc_crg_reset_delay != 1'd0);
+assign usbtestsoc_status = 160'd1256218714774539849041605386092237821690702622496;
+assign usbtestsoc_platform_status = 63'd8388357248643000161;
+assign usbtestsoc_target_status = 63'd8463216376817087488;
+assign spiflash_wp = 1'd1;
+assign spiflash_hold = 1'd1;
+assign usbtestsoc_spiflash_bus_dat_r = usbtestsoc_spiflash_sr;
+always @(*) begin
+ usbtestsoc_spiflash_miso_status <= 1'd0;
+ spiflash_mosi <= 1'd0;
+ spiflash_cs_n <= 1'd0;
+ spiflash_clk <= 1'd0;
+ if (usbtestsoc_spiflash_bitbang_en_storage) begin
+ spiflash_clk <= usbtestsoc_spiflash_bitbang_storage[1];
+ spiflash_cs_n <= usbtestsoc_spiflash_bitbang_storage[2];
+ if (usbtestsoc_spiflash_bitbang_storage[1]) begin
+ usbtestsoc_spiflash_miso_status <= spiflash_miso;
+ end
+ spiflash_mosi <= usbtestsoc_spiflash_bitbang_storage[0];
+ end else begin
+ spiflash_clk <= usbtestsoc_spiflash_clk1;
+ spiflash_cs_n <= usbtestsoc_spiflash_cs_n1;
+ spiflash_mosi <= usbtestsoc_spiflash_sr[31];
+ end
+end
+assign uartwishbonebridge_reset = uartwishbonebridge_done;
+assign uartwishbonebridge_source_ready = 1'd1;
+assign uartwishbonebridge_wishbone_adr = (uartwishbonebridge_address + uartwishbonebridge_word_counter);
+assign uartwishbonebridge_wishbone_dat_w = uartwishbonebridge_data;
+assign uartwishbonebridge_wishbone_sel = 4'd15;
+always @(*) begin
+ uartwishbonebridge_sink_payload_data <= 8'd0;
+ case (uartwishbonebridge_byte_counter)
+ 1'd0: begin
+ uartwishbonebridge_sink_payload_data <= uartwishbonebridge_data[31:24];
+ end
+ 1'd1: begin
+ uartwishbonebridge_sink_payload_data <= uartwishbonebridge_data[23:16];
+ end
+ 2'd2: begin
+ uartwishbonebridge_sink_payload_data <= uartwishbonebridge_data[15:8];
+ end
+ default: begin
+ uartwishbonebridge_sink_payload_data <= uartwishbonebridge_data[7:0];
+ end
+ endcase
+end
+assign uartwishbonebridge_wait = (~uartwishbonebridge_is_ongoing);
+assign uartwishbonebridge_sink_last = ((uartwishbonebridge_byte_counter == 2'd3) & (uartwishbonebridge_word_counter == (uartwishbonebridge_length - 1'd1)));
+always @(*) begin
+ uartwishbonebridge_wishbone_we <= 1'd0;
+ uartwishbonebridge_byte_counter_reset <= 1'd0;
+ uartwishbonebridge_byte_counter_ce <= 1'd0;
+ uartwishbonebridge_word_counter_reset <= 1'd0;
+ uartwishbonebridge_sink_valid <= 1'd0;
+ uartwishbonebridge_word_counter_ce <= 1'd0;
+ uartwishbonebridge_cmd_ce <= 1'd0;
+ uartwishbonebridge_next_state <= 3'd0;
+ uartwishbonebridge_length_ce <= 1'd0;
+ uartwishbonebridge_address_ce <= 1'd0;
+ uartwishbonebridge_rx_data_ce <= 1'd0;
+ uartwishbonebridge_tx_data_ce <= 1'd0;
+ uartwishbonebridge_is_ongoing <= 1'd0;
+ uartwishbonebridge_wishbone_cyc <= 1'd0;
+ uartwishbonebridge_wishbone_stb <= 1'd0;
+ uartwishbonebridge_next_state <= uartwishbonebridge_state;
+ case (uartwishbonebridge_state)
+ 1'd1: begin
+ if (uartwishbonebridge_source_valid) begin
+ uartwishbonebridge_length_ce <= 1'd1;
+ uartwishbonebridge_next_state <= 2'd2;
+ end
+ end
+ 2'd2: begin
+ if (uartwishbonebridge_source_valid) begin
+ uartwishbonebridge_address_ce <= 1'd1;
+ uartwishbonebridge_byte_counter_ce <= 1'd1;
+ if ((uartwishbonebridge_byte_counter == 2'd3)) begin
+ if ((uartwishbonebridge_cmd == 1'd1)) begin
+ uartwishbonebridge_next_state <= 2'd3;
+ end else begin
+ if ((uartwishbonebridge_cmd == 2'd2)) begin
+ uartwishbonebridge_next_state <= 3'd5;
+ end
+ end
+ uartwishbonebridge_byte_counter_reset <= 1'd1;
+ end
+ end
+ end
+ 2'd3: begin
+ if (uartwishbonebridge_source_valid) begin
+ uartwishbonebridge_rx_data_ce <= 1'd1;
+ uartwishbonebridge_byte_counter_ce <= 1'd1;
+ if ((uartwishbonebridge_byte_counter == 2'd3)) begin
+ uartwishbonebridge_next_state <= 3'd4;
+ uartwishbonebridge_byte_counter_reset <= 1'd1;
+ end
+ end
+ end
+ 3'd4: begin
+ uartwishbonebridge_wishbone_stb <= 1'd1;
+ uartwishbonebridge_wishbone_we <= 1'd1;
+ uartwishbonebridge_wishbone_cyc <= 1'd1;
+ if (uartwishbonebridge_wishbone_ack) begin
+ uartwishbonebridge_word_counter_ce <= 1'd1;
+ if ((uartwishbonebridge_word_counter == (uartwishbonebridge_length - 1'd1))) begin
+ uartwishbonebridge_next_state <= 1'd0;
+ end else begin
+ uartwishbonebridge_next_state <= 2'd3;
+ end
+ end
+ end
+ 3'd5: begin
+ uartwishbonebridge_wishbone_stb <= 1'd1;
+ uartwishbonebridge_wishbone_we <= 1'd0;
+ uartwishbonebridge_wishbone_cyc <= 1'd1;
+ if (uartwishbonebridge_wishbone_ack) begin
+ uartwishbonebridge_tx_data_ce <= 1'd1;
+ uartwishbonebridge_next_state <= 3'd6;
+ end
+ end
+ 3'd6: begin
+ uartwishbonebridge_sink_valid <= 1'd1;
+ if (uartwishbonebridge_sink_ready) begin
+ uartwishbonebridge_byte_counter_ce <= 1'd1;
+ if ((uartwishbonebridge_byte_counter == 2'd3)) begin
+ uartwishbonebridge_word_counter_ce <= 1'd1;
+ if ((uartwishbonebridge_word_counter == (uartwishbonebridge_length - 1'd1))) begin
+ uartwishbonebridge_next_state <= 1'd0;
+ end else begin
+ uartwishbonebridge_next_state <= 3'd5;
+ uartwishbonebridge_byte_counter_reset <= 1'd1;
+ end
+ end
+ end
+ end
+ default: begin
+ if (uartwishbonebridge_source_valid) begin
+ uartwishbonebridge_cmd_ce <= 1'd1;
+ if (((uartwishbonebridge_source_payload_data == 1'd1) | (uartwishbonebridge_source_payload_data == 2'd2))) begin
+ uartwishbonebridge_next_state <= 1'd1;
+ end
+ uartwishbonebridge_byte_counter_reset <= 1'd1;
+ uartwishbonebridge_word_counter_reset <= 1'd1;
+ end
+ uartwishbonebridge_is_ongoing <= 1'd1;
+ end
+ endcase
+end
+assign uartwishbonebridge_done = (uartwishbonebridge_count == 1'd0);
+always @(*) begin
+ usbdevice_usb_p_rx <= 1'd0;
+ usbdevice_usb_n_rx <= 1'd0;
+ if (usbdevice_usb_tx_en) begin
+ usbdevice_usb_p_rx <= 1'd1;
+ usbdevice_usb_n_rx <= 1'd0;
+ end else begin
+ usbdevice_usb_p_rx <= usbdevice_usb_p_rx_io;
+ usbdevice_usb_n_rx <= usbdevice_usb_n_rx_io;
+ end
+end
+assign usbdevice_rx_addr = usbdevice_usbfsrx_o_pkt_token_payload[10:4];
+assign usbdevice_rx_endp = usbdevice_usbfsrx_o_pkt_token_payload[3:0];
+assign usbdevice_usb_tx_en = usbdevice_usbfstx_o_oe;
+assign usbdevice_usb_p_tx = usbdevice_usbfstx_o_usbp;
+assign usbdevice_usb_n_tx = usbdevice_usbfstx_o_usbn;
+assign usbdevice_tx_pkt_end = usbdevice_usbfstx_o_pkt_end;
+assign usbdevice_tx_data_get = usbdevice_usbfstx_o_data_get;
+assign usbdevice_valid_request_token_pre = (usbdevice_usbfsrx_o_pkt_good == 1'd1);
+assign usbdevice_valid_out_token = (usbdevice_valid_request_token & (usbdevice_current_token == 4'd13));
+assign usbdevice_valid_data_packet = (usbdevice_usbfsrx_o_pkt_good == 1'd1);
+assign usbdevice_valid_in_token = ((usbdevice_valid_request_token & usbdevice_current_token) == 4'd9);
+assign usbdevice_valid_ack_packet = (usbdevice_usbfsrx_o_pkt_good == 1'd1);
+assign usbdevice_usbfsrx_dpair = {usbdevice_usbfsrx_usbp, usbdevice_usbfsrx_usbn};
+always @(*) begin
+ rxclockdatarecovery_next_state <= 3'd0;
+ usbdevice_usbfsrx_line_state_dt <= 1'd0;
+ usbdevice_usbfsrx_line_state_dj0 <= 1'd0;
+ usbdevice_usbfsrx_line_state_dk0 <= 1'd0;
+ usbdevice_usbfsrx_line_state_se00 <= 1'd0;
+ usbdevice_usbfsrx_line_state_se10 <= 1'd0;
+ rxclockdatarecovery_next_state <= rxclockdatarecovery_state;
+ case (rxclockdatarecovery_state)
+ 1'd1: begin
+ usbdevice_usbfsrx_line_state_dj0 <= 1'd1;
+ if ((usbdevice_usbfsrx_dpair != 2'd2)) begin
+ rxclockdatarecovery_next_state <= 1'd0;
+ end
+ end
+ 2'd2: begin
+ usbdevice_usbfsrx_line_state_dk0 <= 1'd1;
+ if ((usbdevice_usbfsrx_dpair != 1'd1)) begin
+ rxclockdatarecovery_next_state <= 1'd0;
+ end
+ end
+ 2'd3: begin
+ usbdevice_usbfsrx_line_state_se00 <= 1'd1;
+ if ((usbdevice_usbfsrx_dpair != 1'd0)) begin
+ rxclockdatarecovery_next_state <= 1'd0;
+ end
+ end
+ 3'd4: begin
+ usbdevice_usbfsrx_line_state_se10 <= 1'd1;
+ if ((usbdevice_usbfsrx_dpair != 2'd3)) begin
+ rxclockdatarecovery_next_state <= 1'd0;
+ end
+ end
+ default: begin
+ usbdevice_usbfsrx_line_state_dt <= 1'd1;
+ case (usbdevice_usbfsrx_dpair)
+ 1'd0: begin
+ rxclockdatarecovery_next_state <= 2'd3;
+ end
+ 1'd1: begin
+ rxclockdatarecovery_next_state <= 2'd2;
+ end
+ 2'd2: begin
+ rxclockdatarecovery_next_state <= 1'd1;
+ end
+ 2'd3: begin
+ rxclockdatarecovery_next_state <= 3'd4;
+ end
+ endcase
+ end
+ endcase
+end
+always @(*) begin
+ usbdevice_usbfsrx_nrzi_o_valid0 <= 1'd0;
+ usbdevice_usbfsrx_nrzi_o_data0 <= 1'd0;
+ rxnrzidecoder_next_state <= 1'd0;
+ rxnrzidecoder_next_state <= rxnrzidecoder_state;
+ case (rxnrzidecoder_state)
+ 1'd1: begin
+ if (usbdevice_usbfsrx_line_state_valid) begin
+ usbdevice_usbfsrx_nrzi_o_valid0 <= 1'd1;
+ if (usbdevice_usbfsrx_line_state_dj1) begin
+ usbdevice_usbfsrx_nrzi_o_data0 <= 1'd0;
+ rxnrzidecoder_next_state <= 1'd0;
+ end else begin
+ if (usbdevice_usbfsrx_line_state_dk1) begin
+ usbdevice_usbfsrx_nrzi_o_data0 <= 1'd1;
+ end
+ end
+ end
+ end
+ default: begin
+ if (usbdevice_usbfsrx_line_state_valid) begin
+ usbdevice_usbfsrx_nrzi_o_valid0 <= 1'd1;
+ if (usbdevice_usbfsrx_line_state_dj1) begin
+ usbdevice_usbfsrx_nrzi_o_data0 <= 1'd1;
+ end else begin
+ if (usbdevice_usbfsrx_line_state_dk1) begin
+ usbdevice_usbfsrx_nrzi_o_data0 <= 1'd0;
+ rxnrzidecoder_next_state <= 1'd1;
+ end
+ end
+ end
+ end
+ endcase
+end
+always @(*) begin
+ usbdevice_usbfsrx_bitstuff_drop_bit <= 1'd0;
+ rxbitstuffremover_next_state <= 3'd0;
+ rxbitstuffremover_next_state <= rxbitstuffremover_state;
+ case (rxbitstuffremover_state)
+ 1'd1: begin
+ if (usbdevice_usbfsrx_nrzi_o_valid1) begin
+ if (usbdevice_usbfsrx_nrzi_o_data1) begin
+ rxbitstuffremover_next_state <= 2'd2;
+ end else begin
+ rxbitstuffremover_next_state <= 1'd0;
+ end
+ end
+ end
+ 2'd2: begin
+ if (usbdevice_usbfsrx_nrzi_o_valid1) begin
+ if (usbdevice_usbfsrx_nrzi_o_data1) begin
+ rxbitstuffremover_next_state <= 2'd3;
+ end else begin
+ rxbitstuffremover_next_state <= 1'd0;
+ end
+ end
+ end
+ 2'd3: begin
+ if (usbdevice_usbfsrx_nrzi_o_valid1) begin
+ if (usbdevice_usbfsrx_nrzi_o_data1) begin
+ rxbitstuffremover_next_state <= 3'd4;
+ end else begin
+ rxbitstuffremover_next_state <= 1'd0;
+ end
+ end
+ end
+ 3'd4: begin
+ if (usbdevice_usbfsrx_nrzi_o_valid1) begin
+ if (usbdevice_usbfsrx_nrzi_o_data1) begin
+ rxbitstuffremover_next_state <= 3'd5;
+ end else begin
+ rxbitstuffremover_next_state <= 1'd0;
+ end
+ end
+ end
+ 3'd5: begin
+ if (usbdevice_usbfsrx_nrzi_o_valid1) begin
+ if (usbdevice_usbfsrx_nrzi_o_data1) begin
+ rxbitstuffremover_next_state <= 3'd6;
+ end else begin
+ rxbitstuffremover_next_state <= 1'd0;
+ end
+ end
+ end
+ 3'd6: begin
+ usbdevice_usbfsrx_bitstuff_drop_bit <= 1'd1;
+ if (usbdevice_usbfsrx_nrzi_o_valid1) begin
+ rxbitstuffremover_next_state <= 1'd0;
+ end
+ end
+ default: begin
+ if (usbdevice_usbfsrx_nrzi_o_valid1) begin
+ if (usbdevice_usbfsrx_nrzi_o_data1) begin
+ rxbitstuffremover_next_state <= 1'd1;
+ end else begin
+ rxbitstuffremover_next_state <= 1'd0;
+ end
+ end
+ end
+ endcase
+end
+assign usbdevice_usbfsrx_data_put = usbdevice_usbfsrx_data_shifter_o_full;
+always @(*) begin
+ rxpacketdecode_next_state <= 3'd0;
+ usbdevice_usbfsrx_pkt_start <= 1'd0;
+ usbdevice_usbfsrx_pkt_active0 <= 1'd0;
+ usbdevice_usbfsrx_pkt_end0 <= 1'd0;
+ rxpacketdecode_next_state <= rxpacketdecode_state;
+ case (rxpacketdecode_state)
+ 1'd1: begin
+ if (usbdevice_usbfsrx_bitstuff_o_valid) begin
+ if ((usbdevice_usbfsrx_bitstuff_o_data | usbdevice_usbfsrx_bitstuff_o_se0)) begin
+ rxpacketdecode_next_state <= 1'd0;
+ end else begin
+ rxpacketdecode_next_state <= 2'd2;
+ end
+ end
+ end
+ 2'd2: begin
+ if (usbdevice_usbfsrx_bitstuff_o_valid) begin
+ if ((usbdevice_usbfsrx_bitstuff_o_data | usbdevice_usbfsrx_bitstuff_o_se0)) begin
+ rxpacketdecode_next_state <= 1'd0;
+ end else begin
+ rxpacketdecode_next_state <= 2'd3;
+ end
+ end
+ end
+ 2'd3: begin
+ if (usbdevice_usbfsrx_bitstuff_o_valid) begin
+ if ((usbdevice_usbfsrx_bitstuff_o_data | usbdevice_usbfsrx_bitstuff_o_se0)) begin
+ rxpacketdecode_next_state <= 1'd0;
+ end else begin
+ rxpacketdecode_next_state <= 3'd4;
+ end
+ end
+ end
+ 3'd4: begin
+ if (usbdevice_usbfsrx_bitstuff_o_valid) begin
+ if ((usbdevice_usbfsrx_bitstuff_o_data | usbdevice_usbfsrx_bitstuff_o_se0)) begin
+ rxpacketdecode_next_state <= 1'd0;
+ end else begin
+ rxpacketdecode_next_state <= 3'd5;
+ end
+ end
+ end
+ 3'd5: begin
+ if (usbdevice_usbfsrx_bitstuff_o_valid) begin
+ if (usbdevice_usbfsrx_bitstuff_o_data) begin
+ usbdevice_usbfsrx_pkt_start <= 1'd1;
+ usbdevice_usbfsrx_pkt_active0 <= 1'd1;
+ rxpacketdecode_next_state <= 3'd6;
+ end
+ end
+ end
+ 3'd6: begin
+ usbdevice_usbfsrx_pkt_active0 <= 1'd1;
+ if (usbdevice_usbfsrx_bitstuff_o_valid) begin
+ if (usbdevice_usbfsrx_bitstuff_o_se0) begin
+ usbdevice_usbfsrx_pkt_end0 <= 1'd1;
+ usbdevice_usbfsrx_pkt_active0 <= 1'd0;
+ rxpacketdecode_next_state <= 1'd0;
+ end
+ end
+ end
+ default: begin
+ if (usbdevice_usbfsrx_bitstuff_o_valid) begin
+ if ((usbdevice_usbfsrx_bitstuff_o_data | usbdevice_usbfsrx_bitstuff_o_se0)) begin
+ rxpacketdecode_next_state <= 1'd0;
+ end else begin
+ rxpacketdecode_next_state <= 1'd1;
+ end
+ end
+ end
+ endcase
+end
+assign usbdevice_usbfsrx_pid_shifter_o_full = usbdevice_usbfsrx_pid_shifter_shift_reg[0];
+assign usbdevice_usbfsrx_pid_shifter_o_output = usbdevice_usbfsrx_pid_shifter_shift_reg[8:1];
+assign usbdevice_usbfsrx_tok_shifter_o_full = usbdevice_usbfsrx_tok_shifter_shift_reg[0];
+assign usbdevice_usbfsrx_tok_shifter_o_output = usbdevice_usbfsrx_tok_shifter_shift_reg[16:1];
+assign usbdevice_usbfsrx_tok_crc5_crc_good = (usbdevice_usbfsrx_tok_crc5_crc == 4'd12);
+assign usbdevice_usbfsrx_tok_crc5_crc_invert = (usbdevice_usbfsrx_data ^ usbdevice_usbfsrx_tok_crc5_crc[4]);
+assign usbdevice_usbfsrx_data_shifter_o_full = usbdevice_usbfsrx_data_shifter_shift_reg[0];
+assign usbdevice_usbfsrx_data_shifter_o_output = usbdevice_usbfsrx_data_shifter_shift_reg[8:1];
+assign usbdevice_usbfsrx_data_crc16_crc_good = (usbdevice_usbfsrx_data_crc16_crc == 16'd32781);
+assign usbdevice_usbfsrx_data_crc16_crc_invert = (usbdevice_usbfsrx_data ^ usbdevice_usbfsrx_data_crc16_crc[15]);
+assign usbdevice_usbfstx_bitstuff_stall = usbdevice_usbfstx_bitstuffer_o_stall;
+always @(*) begin
+ usbdevice_usbfstx_pkt_active <= 1'd0;
+ usbdevice_usbfstx_shift_sync <= 1'd0;
+ usbdevice_usbfstx_shift_pid <= 1'd0;
+ usbdevice_usbfstx_shift_eop <= 1'd0;
+ usbdevice_usbfstx_load_data <= 1'd0;
+ usbdevice_usbfstx_shift_data <= 1'd0;
+ usbdevice_usbfstx_load_crc16 <= 1'd0;
+ usbdevice_usbfstx_shift_crc16 <= 1'd0;
+ usbdevice_usbfstx_pkt_end <= 1'd0;
+ fsm_next_state <= 3'd0;
+ fsm_next_state <= fsm_state;
+ case (fsm_state)
+ 1'd1: begin
+ usbdevice_usbfstx_pkt_active <= 1'd1;
+ usbdevice_usbfstx_shift_sync <= 1'd1;
+ if (usbdevice_usbfstx_sync_shifter_o_empty) begin
+ fsm_next_state <= 2'd2;
+ end
+ end
+ 2'd2: begin
+ usbdevice_usbfstx_pkt_active <= 1'd1;
+ usbdevice_usbfstx_shift_pid <= 1'd1;
+ if (usbdevice_usbfstx_pid_shifter_o_empty) begin
+ if (usbdevice_usbfstx_pid_is_data) begin
+ if (usbdevice_tx_data_avail) begin
+ usbdevice_usbfstx_load_data <= 1'd1;
+ fsm_next_state <= 2'd3;
+ end else begin
+ usbdevice_usbfstx_load_crc16 <= 1'd1;
+ fsm_next_state <= 3'd4;
+ end
+ end else begin
+ fsm_next_state <= 3'd5;
+ end
+ end
+ end
+ 2'd3: begin
+ usbdevice_usbfstx_pkt_active <= 1'd1;
+ usbdevice_usbfstx_shift_data <= 1'd1;
+ if (usbdevice_usbfstx_data_shifter_o_empty) begin
+ if (usbdevice_tx_data_avail) begin
+ usbdevice_usbfstx_load_data <= 1'd1;
+ end else begin
+ usbdevice_usbfstx_load_crc16 <= 1'd1;
+ fsm_next_state <= 3'd4;
+ end
+ end
+ end
+ 3'd4: begin
+ usbdevice_usbfstx_pkt_active <= 1'd1;
+ usbdevice_usbfstx_shift_crc16 <= 1'd1;
+ if (usbdevice_usbfstx_crc16_shifter_o_empty) begin
+ fsm_next_state <= 3'd5;
+ end
+ end
+ 3'd5: begin
+ usbdevice_usbfstx_pkt_active <= 1'd1;
+ usbdevice_usbfstx_shift_eop <= 1'd1;
+ if (usbdevice_usbfsrx_line_state_valid) begin
+ fsm_next_state <= 3'd6;
+ end
+ end
+ 3'd6: begin
+ usbdevice_usbfstx_pkt_active <= 1'd1;
+ usbdevice_usbfstx_shift_eop <= 1'd1;
+ usbdevice_usbfstx_pkt_end <= 1'd1;
+ if (usbdevice_usbfsrx_line_state_valid) begin
+ fsm_next_state <= 1'd0;
+ end
+ end
+ default: begin
+ if (usbdevice_tx_pkt_start) begin
+ fsm_next_state <= 1'd1;
+ end
+ end
+ endcase
+end
+assign usbdevice_usbfstx_sync_shifter_o_data = usbdevice_usbfstx_sync_shifter_shifter[0];
+assign usbdevice_usbfstx_sync_shifter_o_empty = (~usbdevice_usbfstx_sync_shifter_not_empty);
+assign usbdevice_usbfstx_pid_shifter_o_data = usbdevice_usbfstx_pid_shifter_shifter[0];
+assign usbdevice_usbfstx_pid_shifter_o_empty = (~usbdevice_usbfstx_pid_shifter_not_empty);
+assign usbdevice_usbfstx_data_shifter_o_data = usbdevice_usbfstx_data_shifter_shifter[0];
+assign usbdevice_usbfstx_data_shifter_o_empty = (~usbdevice_usbfstx_data_shifter_not_empty);
+assign usbdevice_usbfstx_crc_invert = (usbdevice_usbfstx_data_shifter_o_data ^ usbdevice_usbfstx_crc[15]);
+always @(*) begin
+ usbdevice_usbfstx_o_crc <= 16'd0;
+ usbdevice_usbfstx_o_crc[0] <= (1'd1 ^ usbdevice_usbfstx_crc[15]);
+ usbdevice_usbfstx_o_crc[1] <= (1'd1 ^ usbdevice_usbfstx_crc[14]);
+ usbdevice_usbfstx_o_crc[2] <= (1'd1 ^ usbdevice_usbfstx_crc[13]);
+ usbdevice_usbfstx_o_crc[3] <= (1'd1 ^ usbdevice_usbfstx_crc[12]);
+ usbdevice_usbfstx_o_crc[4] <= (1'd1 ^ usbdevice_usbfstx_crc[11]);
+ usbdevice_usbfstx_o_crc[5] <= (1'd1 ^ usbdevice_usbfstx_crc[10]);
+ usbdevice_usbfstx_o_crc[6] <= (1'd1 ^ usbdevice_usbfstx_crc[9]);
+ usbdevice_usbfstx_o_crc[7] <= (1'd1 ^ usbdevice_usbfstx_crc[8]);
+ usbdevice_usbfstx_o_crc[8] <= (1'd1 ^ usbdevice_usbfstx_crc[7]);
+ usbdevice_usbfstx_o_crc[9] <= (1'd1 ^ usbdevice_usbfstx_crc[6]);
+ usbdevice_usbfstx_o_crc[10] <= (1'd1 ^ usbdevice_usbfstx_crc[5]);
+ usbdevice_usbfstx_o_crc[11] <= (1'd1 ^ usbdevice_usbfstx_crc[4]);
+ usbdevice_usbfstx_o_crc[12] <= (1'd1 ^ usbdevice_usbfstx_crc[3]);
+ usbdevice_usbfstx_o_crc[13] <= (1'd1 ^ usbdevice_usbfstx_crc[2]);
+ usbdevice_usbfstx_o_crc[14] <= (1'd1 ^ usbdevice_usbfstx_crc[1]);
+ usbdevice_usbfstx_o_crc[15] <= (1'd1 ^ usbdevice_usbfstx_crc[0]);
+end
+assign usbdevice_usbfstx_crc16_shifter_o_data = usbdevice_usbfstx_crc16_shifter_shifter[0];
+assign usbdevice_usbfstx_crc16_shifter_o_empty = (~usbdevice_usbfstx_crc16_shifter_not_empty);
+assign usbdevice_usbfstx_bitstuffer_o_stall = usbdevice_usbfstx_bitstuffer_stuff_bit;
+always @(*) begin
+ txbitstuffer_next_state <= 3'd0;
+ usbdevice_usbfstx_bitstuffer_stuff_bit <= 1'd0;
+ txbitstuffer_next_state <= txbitstuffer_state;
+ case (txbitstuffer_state)
+ 1'd1: begin
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_mux_stuff_data) begin
+ txbitstuffer_next_state <= 2'd2;
+ end else begin
+ txbitstuffer_next_state <= 1'd0;
+ end
+ end
+ end
+ 2'd2: begin
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_mux_stuff_data) begin
+ txbitstuffer_next_state <= 2'd3;
+ end else begin
+ txbitstuffer_next_state <= 1'd0;
+ end
+ end
+ end
+ 2'd3: begin
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_mux_stuff_data) begin
+ txbitstuffer_next_state <= 3'd4;
+ end else begin
+ txbitstuffer_next_state <= 1'd0;
+ end
+ end
+ end
+ 3'd4: begin
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_mux_stuff_data) begin
+ txbitstuffer_next_state <= 3'd5;
+ end else begin
+ txbitstuffer_next_state <= 1'd0;
+ end
+ end
+ end
+ 3'd5: begin
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_mux_stuff_data) begin
+ txbitstuffer_next_state <= 3'd6;
+ end else begin
+ txbitstuffer_next_state <= 1'd0;
+ end
+ end
+ end
+ 3'd6: begin
+ usbdevice_usbfstx_bitstuffer_stuff_bit <= 1'd1;
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ txbitstuffer_next_state <= 1'd0;
+ end
+ end
+ default: begin
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_mux_stuff_data) begin
+ txbitstuffer_next_state <= 1'd1;
+ end else begin
+ txbitstuffer_next_state <= 1'd0;
+ end
+ end
+ end
+ endcase
+end
+always @(*) begin
+ usbdevice_usbfstx_nrzi_usbn <= 1'd0;
+ usbdevice_usbfstx_nrzi_oe <= 1'd0;
+ txnrziencoder_next_state <= 3'd0;
+ usbdevice_usbfstx_nrzi_usbp <= 1'd0;
+ txnrziencoder_next_state <= txnrziencoder_state;
+ case (txnrziencoder_state)
+ 1'd1: begin
+ usbdevice_usbfstx_nrzi_usbp <= 1'd1;
+ usbdevice_usbfstx_nrzi_usbn <= 1'd0;
+ usbdevice_usbfstx_nrzi_oe <= 1'd1;
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_bitstuffer_o_se0) begin
+ txnrziencoder_next_state <= 2'd3;
+ end else begin
+ if (usbdevice_usbfstx_bitstuffer_o_data) begin
+ txnrziencoder_next_state <= 1'd1;
+ end else begin
+ txnrziencoder_next_state <= 2'd2;
+ end
+ end
+ end
+ end
+ 2'd2: begin
+ usbdevice_usbfstx_nrzi_usbp <= 1'd0;
+ usbdevice_usbfstx_nrzi_usbn <= 1'd1;
+ usbdevice_usbfstx_nrzi_oe <= 1'd1;
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_bitstuffer_o_se0) begin
+ txnrziencoder_next_state <= 2'd3;
+ end else begin
+ if (usbdevice_usbfstx_bitstuffer_o_data) begin
+ txnrziencoder_next_state <= 2'd2;
+ end else begin
+ txnrziencoder_next_state <= 1'd1;
+ end
+ end
+ end
+ end
+ 2'd3: begin
+ usbdevice_usbfstx_nrzi_usbp <= 1'd0;
+ usbdevice_usbfstx_nrzi_usbn <= 1'd0;
+ usbdevice_usbfstx_nrzi_oe <= 1'd1;
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_bitstuffer_o_se0) begin
+ txnrziencoder_next_state <= 2'd3;
+ end else begin
+ txnrziencoder_next_state <= 3'd4;
+ end
+ end
+ end
+ 3'd4: begin
+ usbdevice_usbfstx_nrzi_usbp <= 1'd1;
+ usbdevice_usbfstx_nrzi_usbn <= 1'd0;
+ usbdevice_usbfstx_nrzi_oe <= 1'd1;
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ txnrziencoder_next_state <= 1'd0;
+ end
+ end
+ default: begin
+ usbdevice_usbfstx_nrzi_usbp <= 1'd1;
+ usbdevice_usbfstx_nrzi_usbn <= 1'd0;
+ usbdevice_usbfstx_nrzi_oe <= 1'd0;
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ if (usbdevice_usbfstx_bitstuffer_o_oe) begin
+ txnrziencoder_next_state <= 2'd2;
+ end
+ end
+ end
+ endcase
+end
+always @(*) begin
+ usbdevice_out_tx_pkt_start <= 1'd0;
+ usbdevice_out_tx_pid <= 4'd0;
+ fsm0_next_state <= 3'd0;
+ usbdevice_o_out_commit <= 1'd0;
+ usbdevice_o_out_rollback <= 1'd0;
+ fsm0_next_state <= fsm0_state;
+ case (fsm0_state)
+ 1'd1: begin
+ if (usbdevice_usbfsrx_o_pkt_end1) begin
+ if (usbdevice_valid_data_packet) begin
+ fsm0_next_state <= 2'd2;
+ end else begin
+ fsm0_next_state <= 3'd5;
+ end
+ fsm0_next_state <= 1'd0;
+ end
+ end
+ 2'd2: begin
+ usbdevice_out_tx_pid <= 2'd2;
+ usbdevice_out_tx_pkt_start <= 1'd1;
+ usbdevice_o_out_commit <= 1'd1;
+ fsm0_next_state <= 1'd0;
+ end
+ 2'd3: begin
+ if (usbdevice_usbfsrx_o_pkt_end1) begin
+ if (usbdevice_valid_data_packet) begin
+ fsm0_next_state <= 3'd4;
+ end else begin
+ fsm0_next_state <= 3'd5;
+ end
+ end
+ end
+ 3'd4: begin
+ usbdevice_out_tx_pid <= 4'd10;
+ usbdevice_out_tx_pkt_start <= 1'd1;
+ fsm0_next_state <= 3'd5;
+ end
+ 3'd5: begin
+ usbdevice_o_out_rollback <= 1'd1;
+ fsm0_next_state <= 1'd0;
+ end
+ default: begin
+ if ((usbdevice_usbfsrx_o_pkt_end1 & usbdevice_valid_out_token)) begin
+ if (t_array_muxed) begin
+ fsm0_next_state <= 1'd1;
+ end else begin
+ fsm0_next_state <= 2'd3;
+ end
+ end
+ end
+ endcase
+end
+always @(*) begin
+ usbdevice_in_tx_pkt_start <= 1'd0;
+ fsm1_next_state <= 3'd0;
+ usbdevice_in_tx_pid <= 4'd0;
+ usbdevice_o_in_commit <= 1'd0;
+ usbdevice_o_in_rollback <= 1'd0;
+ fsm1_next_state <= fsm1_state;
+ case (fsm1_state)
+ 1'd1: begin
+ if (basiclowerer_array_muxed) begin
+ fsm1_next_state <= 2'd2;
+ end else begin
+ fsm1_next_state <= 2'd3;
+ end
+ end
+ 2'd2: begin
+ usbdevice_in_tx_pid <= (rhs_array_muxed ? 4'd11 : 2'd3);
+ usbdevice_in_tx_pkt_start <= 1'd1;
+ fsm1_next_state <= 3'd4;
+ end
+ 2'd3: begin
+ usbdevice_in_tx_pid <= 4'd10;
+ usbdevice_in_tx_pkt_start <= 1'd1;
+ fsm1_next_state <= 1'd0;
+ end
+ 3'd4: begin
+ if (usbdevice_usbfsrx_o_pkt_end1) begin
+ if (usbdevice_valid_ack_packet) begin
+ usbdevice_o_in_commit <= 1'd1;
+ fsm1_next_state <= 1'd0;
+ end else begin
+ if (usbdevice_valid_in_token) begin
+ usbdevice_o_in_rollback <= 1'd1;
+ fsm1_next_state <= 1'd1;
+ end else begin
+ usbdevice_o_in_rollback <= 1'd1;
+ fsm1_next_state <= 1'd0;
+ end
+ end
+ end
+ end
+ default: begin
+ if ((usbdevice_usbfsrx_o_pkt_end1 & usbdevice_valid_in_token)) begin
+ fsm1_next_state <= 1'd1;
+ end
+ end
+ endcase
+end
+assign io_output = io_storage;
+assign scope_clk = sys_clk;
+assign scope_rst = sys_rst;
+assign mux_valid = 1'd1;
+assign mux_payload_data = {usb_d_n, usb_d_p};
+always @(*) begin
+ mux_source_first <= 1'd0;
+ mux_source_last <= 1'd0;
+ mux_source_payload_data <= 2'd0;
+ mux_source_payload_hit <= 1'd0;
+ mux_ready <= 1'd0;
+ mux_source_valid <= 1'd0;
+ case (mux_value)
+ 1'd0: begin
+ mux_source_valid <= mux_valid;
+ mux_ready <= mux_source_ready;
+ mux_source_first <= mux_first;
+ mux_source_last <= mux_last;
+ mux_source_payload_data <= mux_payload_data;
+ mux_source_payload_hit <= mux_payload_hit;
+ end
+ endcase
+end
+assign trigger_mem_sink_valid = trigger_mem_write_re;
+assign trigger_mem_sink_payload_mask = trigger_mem_mask_storage;
+assign trigger_mem_sink_payload_value = trigger_mem_value_storage;
+assign trigger_mem_full_status = (~trigger_mem_sink_ready);
+assign trigger_wait = (~((~trigger_enable) & trigger_enable_d));
+assign trigger_hit = ((trigger_sink_sink_payload_data & trigger_mem_source_payload_mask) == trigger_mem_source_payload_value);
+assign trigger_mem_source_ready = (trigger_enable & (trigger_hit | (~trigger_done1)));
+assign trigger_source_source_valid = trigger_sink_sink_valid;
+assign trigger_sink_sink_ready = trigger_source_source_ready;
+assign trigger_source_source_first = trigger_sink_sink_first;
+assign trigger_source_source_last = trigger_sink_sink_last;
+assign trigger_source_source_payload_data = trigger_sink_sink_payload_data;
+assign trigger_done0 = (~trigger_mem_source_valid);
+always @(*) begin
+ trigger_source_source_payload_hit <= 1'd0;
+ trigger_source_source_payload_hit <= trigger_sink_sink_payload_hit;
+ trigger_source_source_payload_hit <= trigger_done0;
+end
+assign trigger_mem_asyncfifo_din = {trigger_mem_fifo_in_last, trigger_mem_fifo_in_first, trigger_mem_fifo_in_payload_value, trigger_mem_fifo_in_payload_mask};
+assign {trigger_mem_fifo_out_last, trigger_mem_fifo_out_first, trigger_mem_fifo_out_payload_value, trigger_mem_fifo_out_payload_mask} = trigger_mem_asyncfifo_dout;
+assign trigger_mem_sink_ready = trigger_mem_asyncfifo_writable;
+assign trigger_mem_asyncfifo_we = trigger_mem_sink_valid;
+assign trigger_mem_fifo_in_first = trigger_mem_sink_first;
+assign trigger_mem_fifo_in_last = trigger_mem_sink_last;
+assign trigger_mem_fifo_in_payload_mask = trigger_mem_sink_payload_mask;
+assign trigger_mem_fifo_in_payload_value = trigger_mem_sink_payload_value;
+assign trigger_mem_source_valid = trigger_mem_asyncfifo_readable;
+assign trigger_mem_source_first = trigger_mem_fifo_out_first;
+assign trigger_mem_source_last = trigger_mem_fifo_out_last;
+assign trigger_mem_source_payload_mask = trigger_mem_fifo_out_payload_mask;
+assign trigger_mem_source_payload_value = trigger_mem_fifo_out_payload_value;
+assign trigger_mem_asyncfifo_re = trigger_mem_source_ready;
+assign trigger_mem_graycounter0_ce = (trigger_mem_asyncfifo_writable & trigger_mem_asyncfifo_we);
+assign trigger_mem_graycounter1_ce = (trigger_mem_asyncfifo_readable & trigger_mem_asyncfifo_re);
+assign trigger_mem_asyncfifo_writable = (((trigger_mem_graycounter0_q[4] == trigger_mem_consume_wdomain[4]) | (trigger_mem_graycounter0_q[3] == trigger_mem_consume_wdomain[3])) | (trigger_mem_graycounter0_q[2:0] != trigger_mem_consume_wdomain[2:0]));
+assign trigger_mem_asyncfifo_readable = (trigger_mem_graycounter1_q != trigger_mem_produce_rdomain);
+assign trigger_mem_wrport_adr = trigger_mem_graycounter0_q_binary[3:0];
+assign trigger_mem_wrport_dat_w = trigger_mem_asyncfifo_din;
+assign trigger_mem_wrport_we = trigger_mem_graycounter0_ce;
+assign trigger_mem_rdport_adr = trigger_mem_graycounter1_q_next_binary[3:0];
+assign trigger_mem_asyncfifo_dout = trigger_mem_rdport_dat_r;
+always @(*) begin
+ trigger_mem_graycounter0_q_next_binary <= 5'd0;
+ if (trigger_mem_graycounter0_ce) begin
+ trigger_mem_graycounter0_q_next_binary <= (trigger_mem_graycounter0_q_binary + 1'd1);
+ end else begin
+ trigger_mem_graycounter0_q_next_binary <= trigger_mem_graycounter0_q_binary;
+ end
+end
+assign trigger_mem_graycounter0_q_next = (trigger_mem_graycounter0_q_next_binary ^ trigger_mem_graycounter0_q_next_binary[4:1]);
+always @(*) begin
+ trigger_mem_graycounter1_q_next_binary <= 5'd0;
+ if (trigger_mem_graycounter1_ce) begin
+ trigger_mem_graycounter1_q_next_binary <= (trigger_mem_graycounter1_q_binary + 1'd1);
+ end else begin
+ trigger_mem_graycounter1_q_next_binary <= trigger_mem_graycounter1_q_binary;
+ end
+end
+assign trigger_mem_graycounter1_q_next = (trigger_mem_graycounter1_q_next_binary ^ trigger_mem_graycounter1_q_next_binary[4:1]);
+assign trigger_done1 = (trigger_count == 1'd0);
+assign subsampler_done = (subsampler_counter == subsampler_value);
+assign subsampler_sink_ready = subsampler_source_ready;
+assign subsampler_source_first = subsampler_sink_first;
+assign subsampler_source_last = subsampler_sink_last;
+assign subsampler_source_payload_data = subsampler_sink_payload_data;
+assign subsampler_source_payload_hit = subsampler_sink_payload_hit;
+assign subsampler_source_valid = (subsampler_sink_valid & subsampler_done);
+assign storage_mem_valid_status = storage_cdc_source_valid;
+assign storage_cdc_source_ready = (storage_mem_ready_re | (~storage_enable_storage));
+assign storage_mem_data_status = storage_cdc_source_payload_data;
+assign storage_mem_syncfifo_din = {storage_mem_fifo_in_last, storage_mem_fifo_in_first, storage_mem_fifo_in_payload_data};
+assign {storage_mem_fifo_out_last, storage_mem_fifo_out_first, storage_mem_fifo_out_payload_data} = storage_mem_syncfifo_dout;
+assign storage_mem_sink_ready = storage_mem_syncfifo_writable;
+assign storage_mem_syncfifo_we = storage_mem_sink_valid;
+assign storage_mem_fifo_in_first = storage_mem_sink_first;
+assign storage_mem_fifo_in_last = storage_mem_sink_last;
+assign storage_mem_fifo_in_payload_data = storage_mem_sink_payload_data;
+assign storage_mem_source_valid = storage_mem_readable;
+assign storage_mem_source_first = storage_mem_fifo_out_first;
+assign storage_mem_source_last = storage_mem_fifo_out_last;
+assign storage_mem_source_payload_data = storage_mem_fifo_out_payload_data;
+assign storage_mem_re = storage_mem_source_ready;
+assign storage_mem_syncfifo_re = (storage_mem_syncfifo_readable & ((~storage_mem_readable) | storage_mem_re));
+assign storage_mem_level1 = (storage_mem_level0 + storage_mem_readable);
+always @(*) begin
+ storage_mem_wrport_adr <= 8'd0;
+ if (storage_mem_replace) begin
+ storage_mem_wrport_adr <= (storage_mem_produce - 1'd1);
+ end else begin
+ storage_mem_wrport_adr <= storage_mem_produce;
+ end
+end
+assign storage_mem_wrport_dat_w = storage_mem_syncfifo_din;
+assign storage_mem_wrport_we = (storage_mem_syncfifo_we & (storage_mem_syncfifo_writable | storage_mem_replace));
+assign storage_mem_do_read = (storage_mem_syncfifo_readable & storage_mem_syncfifo_re);
+assign storage_mem_rdport_adr = storage_mem_consume;
+assign storage_mem_syncfifo_dout = storage_mem_rdport_dat_r;
+assign storage_mem_rdport_re = storage_mem_do_read;
+assign storage_mem_syncfifo_writable = (storage_mem_level0 != 9'd256);
+assign storage_mem_syncfifo_readable = (storage_mem_level0 != 1'd0);
+assign storage_cdc_asyncfifo_din = {storage_cdc_fifo_in_last, storage_cdc_fifo_in_first, storage_cdc_fifo_in_payload_data};
+assign {storage_cdc_fifo_out_last, storage_cdc_fifo_out_first, storage_cdc_fifo_out_payload_data} = storage_cdc_asyncfifo_dout;
+assign storage_cdc_sink_ready = storage_cdc_asyncfifo_writable;
+assign storage_cdc_asyncfifo_we = storage_cdc_sink_valid;
+assign storage_cdc_fifo_in_first = storage_cdc_sink_first;
+assign storage_cdc_fifo_in_last = storage_cdc_sink_last;
+assign storage_cdc_fifo_in_payload_data = storage_cdc_sink_payload_data;
+assign storage_cdc_source_valid = storage_cdc_asyncfifo_readable;
+assign storage_cdc_source_first = storage_cdc_fifo_out_first;
+assign storage_cdc_source_last = storage_cdc_fifo_out_last;
+assign storage_cdc_source_payload_data = storage_cdc_fifo_out_payload_data;
+assign storage_cdc_asyncfifo_re = storage_cdc_source_ready;
+assign storage_cdc_graycounter0_ce = (storage_cdc_asyncfifo_writable & storage_cdc_asyncfifo_we);
+assign storage_cdc_graycounter1_ce = (storage_cdc_asyncfifo_readable & storage_cdc_asyncfifo_re);
+assign storage_cdc_asyncfifo_writable = (((storage_cdc_graycounter0_q[2] == storage_cdc_consume_wdomain[2]) | (storage_cdc_graycounter0_q[1] == storage_cdc_consume_wdomain[1])) | (storage_cdc_graycounter0_q[0] != storage_cdc_consume_wdomain[0]));
+assign storage_cdc_asyncfifo_readable = (storage_cdc_graycounter1_q != storage_cdc_produce_rdomain);
+assign storage_cdc_wrport_adr = storage_cdc_graycounter0_q_binary[1:0];
+assign storage_cdc_wrport_dat_w = storage_cdc_asyncfifo_din;
+assign storage_cdc_wrport_we = storage_cdc_graycounter0_ce;
+assign storage_cdc_rdport_adr = storage_cdc_graycounter1_q_next_binary[1:0];
+assign storage_cdc_asyncfifo_dout = storage_cdc_rdport_dat_r;
+always @(*) begin
+ storage_cdc_graycounter0_q_next_binary <= 3'd0;
+ if (storage_cdc_graycounter0_ce) begin
+ storage_cdc_graycounter0_q_next_binary <= (storage_cdc_graycounter0_q_binary + 1'd1);
+ end else begin
+ storage_cdc_graycounter0_q_next_binary <= storage_cdc_graycounter0_q_binary;
+ end
+end
+assign storage_cdc_graycounter0_q_next = (storage_cdc_graycounter0_q_next_binary ^ storage_cdc_graycounter0_q_next_binary[2:1]);
+always @(*) begin
+ storage_cdc_graycounter1_q_next_binary <= 3'd0;
+ if (storage_cdc_graycounter1_ce) begin
+ storage_cdc_graycounter1_q_next_binary <= (storage_cdc_graycounter1_q_binary + 1'd1);
+ end else begin
+ storage_cdc_graycounter1_q_next_binary <= storage_cdc_graycounter1_q_binary;
+ end
+end
+assign storage_cdc_graycounter1_q_next = (storage_cdc_graycounter1_q_next_binary ^ storage_cdc_graycounter1_q_next_binary[2:1]);
+assign storage_done1 = (storage_count == 1'd0);
+always @(*) begin
+ storage_wait <= 1'd0;
+ storage_cdc_sink_valid <= 1'd0;
+ storage_cdc_sink_first <= 1'd0;
+ litescopeanalyzer_next_state <= 2'd0;
+ storage_cdc_sink_last <= 1'd0;
+ storage_sink_sink_ready <= 1'd0;
+ storage_done0 <= 1'd0;
+ storage_cdc_sink_payload_data <= 2'd0;
+ storage_mem_sink_valid <= 1'd0;
+ storage_mem_sink_first <= 1'd0;
+ storage_mem_sink_last <= 1'd0;
+ storage_mem_sink_payload_data <= 2'd0;
+ storage_mem_source_ready <= 1'd0;
+ litescopeanalyzer_next_state <= litescopeanalyzer_state;
+ case (litescopeanalyzer_state)
+ 1'd1: begin
+ storage_sink_sink_ready <= 1'd1;
+ storage_wait <= 1'd1;
+ storage_mem_source_ready <= 1'd1;
+ if (storage_done1) begin
+ litescopeanalyzer_next_state <= 2'd2;
+ end
+ end
+ 2'd2: begin
+ storage_mem_sink_valid <= storage_sink_sink_valid;
+ storage_sink_sink_ready <= storage_mem_sink_ready;
+ storage_mem_sink_first <= storage_sink_sink_first;
+ storage_mem_sink_last <= storage_sink_sink_last;
+ storage_mem_sink_payload_data <= storage_sink_sink_payload_data;
+ if ((storage_sink_sink_valid & storage_sink_sink_payload_hit)) begin
+ litescopeanalyzer_next_state <= 2'd3;
+ end
+ storage_mem_source_ready <= (storage_mem_level1 >= storage_offset_storage);
+ end
+ 2'd3: begin
+ storage_mem_sink_valid <= storage_sink_sink_valid;
+ storage_sink_sink_ready <= storage_mem_sink_ready;
+ storage_mem_sink_first <= storage_sink_sink_first;
+ storage_mem_sink_last <= storage_sink_sink_last;
+ storage_mem_sink_payload_data <= storage_sink_sink_payload_data;
+ if ((storage_mem_level1 >= storage_length_storage)) begin
+ litescopeanalyzer_next_state <= 1'd0;
+ end
+ end
+ default: begin
+ storage_done0 <= 1'd1;
+ if ((storage_enable & (~storage_enable_d))) begin
+ litescopeanalyzer_next_state <= 1'd1;
+ end
+ storage_sink_sink_ready <= 1'd1;
+ storage_cdc_sink_valid <= storage_mem_source_valid;
+ storage_mem_source_ready <= storage_cdc_sink_ready;
+ storage_cdc_sink_first <= storage_mem_source_first;
+ storage_cdc_sink_last <= storage_mem_source_last;
+ storage_cdc_sink_payload_data <= storage_mem_source_payload_data;
+ end
+ endcase
+end
+assign trigger_sink_sink_valid = mux_source_valid;
+assign mux_source_ready = trigger_sink_sink_ready;
+assign trigger_sink_sink_first = mux_source_first;
+assign trigger_sink_sink_last = mux_source_last;
+assign trigger_sink_sink_payload_data = mux_source_payload_data;
+assign trigger_sink_sink_payload_hit = mux_source_payload_hit;
+assign subsampler_sink_valid = trigger_source_source_valid;
+assign trigger_source_source_ready = subsampler_sink_ready;
+assign subsampler_sink_first = trigger_source_source_first;
+assign subsampler_sink_last = trigger_source_source_last;
+assign subsampler_sink_payload_data = trigger_source_source_payload_data;
+assign subsampler_sink_payload_hit = trigger_source_source_payload_hit;
+assign storage_sink_sink_valid = subsampler_source_valid;
+assign subsampler_source_ready = storage_sink_sink_ready;
+assign storage_sink_sink_first = subsampler_source_first;
+assign storage_sink_sink_last = subsampler_source_last;
+assign storage_sink_sink_payload_data = subsampler_source_payload_data;
+assign storage_sink_sink_payload_hit = subsampler_source_payload_hit;
+assign shared_adr = array_muxed0;
+assign shared_dat_w = array_muxed1;
+assign shared_sel = array_muxed2;
+assign shared_cyc = array_muxed3;
+assign shared_stb = array_muxed4;
+assign shared_we = array_muxed5;
+assign shared_cti = array_muxed6;
+assign shared_bte = array_muxed7;
+assign uartwishbonebridge_wishbone_dat_r = shared_dat_r;
+assign uartwishbonebridge_wishbone_ack = (shared_ack & (grant == 1'd0));
+assign uartwishbonebridge_wishbone_err = (shared_err & (grant == 1'd0));
+assign request = {uartwishbonebridge_wishbone_cyc};
+assign grant = 1'd0;
+always @(*) begin
+ slave_sel <= 2'd0;
+ slave_sel[0] <= (shared_adr[28:26] == 3'd6);
+ slave_sel[1] <= (shared_adr[28:26] == 2'd2);
+end
+assign usbtestsoc_usbtestsoc_bus_wishbone_adr = shared_adr;
+assign usbtestsoc_usbtestsoc_bus_wishbone_dat_w = shared_dat_w;
+assign usbtestsoc_usbtestsoc_bus_wishbone_sel = shared_sel;
+assign usbtestsoc_usbtestsoc_bus_wishbone_stb = shared_stb;
+assign usbtestsoc_usbtestsoc_bus_wishbone_we = shared_we;
+assign usbtestsoc_usbtestsoc_bus_wishbone_cti = shared_cti;
+assign usbtestsoc_usbtestsoc_bus_wishbone_bte = shared_bte;
+assign usbtestsoc_spiflash_bus_adr = shared_adr;
+assign usbtestsoc_spiflash_bus_dat_w = shared_dat_w;
+assign usbtestsoc_spiflash_bus_sel = shared_sel;
+assign usbtestsoc_spiflash_bus_stb = shared_stb;
+assign usbtestsoc_spiflash_bus_we = shared_we;
+assign usbtestsoc_spiflash_bus_cti = shared_cti;
+assign usbtestsoc_spiflash_bus_bte = shared_bte;
+assign usbtestsoc_usbtestsoc_bus_wishbone_cyc = (shared_cyc & slave_sel[0]);
+assign usbtestsoc_spiflash_bus_cyc = (shared_cyc & slave_sel[1]);
+assign shared_err = (usbtestsoc_usbtestsoc_bus_wishbone_err | usbtestsoc_spiflash_bus_err);
+assign wait_1 = ((shared_stb & shared_cyc) & (~shared_ack));
+always @(*) begin
+ shared_dat_r <= 32'd0;
+ shared_ack <= 1'd0;
+ error <= 1'd0;
+ shared_ack <= (usbtestsoc_usbtestsoc_bus_wishbone_ack | usbtestsoc_spiflash_bus_ack);
+ shared_dat_r <= (({32{slave_sel_r[0]}} & usbtestsoc_usbtestsoc_bus_wishbone_dat_r) | ({32{slave_sel_r[1]}} & usbtestsoc_spiflash_bus_dat_r));
+ if (done) begin
+ shared_dat_r <= 32'd4294967295;
+ shared_ack <= 1'd1;
+ error <= 1'd1;
+ end
+end
+assign done = (count == 1'd0);
+assign csrbank0_sel = (interface0_bank_bus_adr[13:9] == 4'd10);
+assign csrbank0_mux_value0_r = interface0_bank_bus_dat_w[0];
+assign csrbank0_mux_value0_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 1'd0));
+assign csrbank0_trigger_enable0_r = interface0_bank_bus_dat_w[0];
+assign csrbank0_trigger_enable0_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 1'd1));
+assign csrbank0_trigger_done_r = interface0_bank_bus_dat_w[0];
+assign csrbank0_trigger_done_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 2'd2));
+assign trigger_mem_write_r = interface0_bank_bus_dat_w[0];
+assign trigger_mem_write_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 2'd3));
+assign csrbank0_trigger_mem_mask0_r = interface0_bank_bus_dat_w[1:0];
+assign csrbank0_trigger_mem_mask0_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 3'd4));
+assign csrbank0_trigger_mem_value0_r = interface0_bank_bus_dat_w[1:0];
+assign csrbank0_trigger_mem_value0_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 3'd5));
+assign csrbank0_trigger_mem_full_r = interface0_bank_bus_dat_w[0];
+assign csrbank0_trigger_mem_full_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 3'd6));
+assign csrbank0_subsampler_value1_r = interface0_bank_bus_dat_w[7:0];
+assign csrbank0_subsampler_value1_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 3'd7));
+assign csrbank0_subsampler_value0_r = interface0_bank_bus_dat_w[7:0];
+assign csrbank0_subsampler_value0_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 4'd8));
+assign csrbank0_storage_enable0_r = interface0_bank_bus_dat_w[0];
+assign csrbank0_storage_enable0_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 4'd9));
+assign csrbank0_storage_done_r = interface0_bank_bus_dat_w[0];
+assign csrbank0_storage_done_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 4'd10));
+assign csrbank0_storage_length1_r = interface0_bank_bus_dat_w[0];
+assign csrbank0_storage_length1_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 4'd11));
+assign csrbank0_storage_length0_r = interface0_bank_bus_dat_w[7:0];
+assign csrbank0_storage_length0_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 4'd12));
+assign csrbank0_storage_offset1_r = interface0_bank_bus_dat_w[0];
+assign csrbank0_storage_offset1_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 4'd13));
+assign csrbank0_storage_offset0_r = interface0_bank_bus_dat_w[7:0];
+assign csrbank0_storage_offset0_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 4'd14));
+assign csrbank0_storage_mem_valid_r = interface0_bank_bus_dat_w[0];
+assign csrbank0_storage_mem_valid_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 4'd15));
+assign storage_mem_ready_r = interface0_bank_bus_dat_w[0];
+assign storage_mem_ready_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 5'd16));
+assign csrbank0_storage_mem_data_r = interface0_bank_bus_dat_w[1:0];
+assign csrbank0_storage_mem_data_re = ((csrbank0_sel & interface0_bank_bus_we) & (interface0_bank_bus_adr[4:0] == 5'd17));
+assign mux_value_storage = mux_value_storage_full;
+assign csrbank0_mux_value0_w = mux_value_storage_full;
+assign trigger_enable_storage = trigger_enable_storage_full;
+assign csrbank0_trigger_enable0_w = trigger_enable_storage_full;
+assign csrbank0_trigger_done_w = trigger_done_status;
+assign trigger_mem_mask_storage = trigger_mem_mask_storage_full[1:0];
+assign csrbank0_trigger_mem_mask0_w = trigger_mem_mask_storage_full[1:0];
+assign trigger_mem_value_storage = trigger_mem_value_storage_full[1:0];
+assign csrbank0_trigger_mem_value0_w = trigger_mem_value_storage_full[1:0];
+assign csrbank0_trigger_mem_full_w = trigger_mem_full_status;
+assign subsampler_value_storage = subsampler_value_storage_full[15:0];
+assign csrbank0_subsampler_value1_w = subsampler_value_storage_full[15:8];
+assign csrbank0_subsampler_value0_w = subsampler_value_storage_full[7:0];
+assign storage_enable_storage = storage_enable_storage_full;
+assign csrbank0_storage_enable0_w = storage_enable_storage_full;
+assign csrbank0_storage_done_w = storage_done_status;
+assign storage_length_storage = storage_length_storage_full[8:0];
+assign csrbank0_storage_length1_w = storage_length_storage_full[8];
+assign csrbank0_storage_length0_w = storage_length_storage_full[7:0];
+assign storage_offset_storage = storage_offset_storage_full[8:0];
+assign csrbank0_storage_offset1_w = storage_offset_storage_full[8];
+assign csrbank0_storage_offset0_w = storage_offset_storage_full[7:0];
+assign csrbank0_storage_mem_valid_w = storage_mem_valid_status;
+assign csrbank0_storage_mem_data_w = storage_mem_data_status[1:0];
+assign csrbank1_sel = (interface1_bank_bus_adr[13:9] == 1'd0);
+assign usbtestsoc_usbtestsoc_reset_reset_r = interface1_bank_bus_dat_w[0];
+assign usbtestsoc_usbtestsoc_reset_reset_re = ((csrbank1_sel & interface1_bank_bus_we) & (interface1_bank_bus_adr[3:0] == 1'd0));
+assign csrbank1_scratch3_r = interface1_bank_bus_dat_w[7:0];
+assign csrbank1_scratch3_re = ((csrbank1_sel & interface1_bank_bus_we) & (interface1_bank_bus_adr[3:0] == 1'd1));
+assign csrbank1_scratch2_r = interface1_bank_bus_dat_w[7:0];
+assign csrbank1_scratch2_re = ((csrbank1_sel & interface1_bank_bus_we) & (interface1_bank_bus_adr[3:0] == 2'd2));
+assign csrbank1_scratch1_r = interface1_bank_bus_dat_w[7:0];
+assign csrbank1_scratch1_re = ((csrbank1_sel & interface1_bank_bus_we) & (interface1_bank_bus_adr[3:0] == 2'd3));
+assign csrbank1_scratch0_r = interface1_bank_bus_dat_w[7:0];
+assign csrbank1_scratch0_re = ((csrbank1_sel & interface1_bank_bus_we) & (interface1_bank_bus_adr[3:0] == 3'd4));
+assign csrbank1_bus_errors3_r = interface1_bank_bus_dat_w[7:0];
+assign csrbank1_bus_errors3_re = ((csrbank1_sel & interface1_bank_bus_we) & (interface1_bank_bus_adr[3:0] == 3'd5));
+assign csrbank1_bus_errors2_r = interface1_bank_bus_dat_w[7:0];
+assign csrbank1_bus_errors2_re = ((csrbank1_sel & interface1_bank_bus_we) & (interface1_bank_bus_adr[3:0] == 3'd6));
+assign csrbank1_bus_errors1_r = interface1_bank_bus_dat_w[7:0];
+assign csrbank1_bus_errors1_re = ((csrbank1_sel & interface1_bank_bus_we) & (interface1_bank_bus_adr[3:0] == 3'd7));
+assign csrbank1_bus_errors0_r = interface1_bank_bus_dat_w[7:0];
+assign csrbank1_bus_errors0_re = ((csrbank1_sel & interface1_bank_bus_we) & (interface1_bank_bus_adr[3:0] == 4'd8));
+assign usbtestsoc_usbtestsoc_storage = usbtestsoc_usbtestsoc_storage_full[31:0];
+assign csrbank1_scratch3_w = usbtestsoc_usbtestsoc_storage_full[31:24];
+assign csrbank1_scratch2_w = usbtestsoc_usbtestsoc_storage_full[23:16];
+assign csrbank1_scratch1_w = usbtestsoc_usbtestsoc_storage_full[15:8];
+assign csrbank1_scratch0_w = usbtestsoc_usbtestsoc_storage_full[7:0];
+assign csrbank1_bus_errors3_w = usbtestsoc_usbtestsoc_bus_errors_status[31:24];
+assign csrbank1_bus_errors2_w = usbtestsoc_usbtestsoc_bus_errors_status[23:16];
+assign csrbank1_bus_errors1_w = usbtestsoc_usbtestsoc_bus_errors_status[15:8];
+assign csrbank1_bus_errors0_w = usbtestsoc_usbtestsoc_bus_errors_status[7:0];
+assign sel = (sram_bus_adr[13:9] == 3'd4);
+always @(*) begin
+ sram_bus_dat_r <= 8'd0;
+ if (sel_r) begin
+ sram_bus_dat_r <= dat_r;
+ end
+end
+assign adr = sram_bus_adr[3:0];
+assign csrbank2_sel = (interface2_bank_bus_adr[13:9] == 4'd9);
+assign csrbank2_git_commit19_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit19_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 1'd0));
+assign csrbank2_git_commit18_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit18_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 1'd1));
+assign csrbank2_git_commit17_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit17_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 2'd2));
+assign csrbank2_git_commit16_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit16_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 2'd3));
+assign csrbank2_git_commit15_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit15_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 3'd4));
+assign csrbank2_git_commit14_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit14_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 3'd5));
+assign csrbank2_git_commit13_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit13_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 3'd6));
+assign csrbank2_git_commit12_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit12_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 3'd7));
+assign csrbank2_git_commit11_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit11_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 4'd8));
+assign csrbank2_git_commit10_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit10_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 4'd9));
+assign csrbank2_git_commit9_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit9_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 4'd10));
+assign csrbank2_git_commit8_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit8_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 4'd11));
+assign csrbank2_git_commit7_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit7_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 4'd12));
+assign csrbank2_git_commit6_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit6_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 4'd13));
+assign csrbank2_git_commit5_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit5_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 4'd14));
+assign csrbank2_git_commit4_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit4_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 4'd15));
+assign csrbank2_git_commit3_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit3_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd16));
+assign csrbank2_git_commit2_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit2_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd17));
+assign csrbank2_git_commit1_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit1_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd18));
+assign csrbank2_git_commit0_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_git_commit0_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd19));
+assign csrbank2_platform_platform7_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_platform7_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd20));
+assign csrbank2_platform_platform6_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_platform6_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd21));
+assign csrbank2_platform_platform5_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_platform5_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd22));
+assign csrbank2_platform_platform4_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_platform4_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd23));
+assign csrbank2_platform_platform3_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_platform3_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd24));
+assign csrbank2_platform_platform2_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_platform2_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd25));
+assign csrbank2_platform_platform1_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_platform1_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd26));
+assign csrbank2_platform_platform0_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_platform0_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd27));
+assign csrbank2_platform_target7_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_target7_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd28));
+assign csrbank2_platform_target6_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_target6_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd29));
+assign csrbank2_platform_target5_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_target5_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd30));
+assign csrbank2_platform_target4_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_target4_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 5'd31));
+assign csrbank2_platform_target3_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_target3_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 6'd32));
+assign csrbank2_platform_target2_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_target2_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 6'd33));
+assign csrbank2_platform_target1_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_target1_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 6'd34));
+assign csrbank2_platform_target0_r = interface2_bank_bus_dat_w[7:0];
+assign csrbank2_platform_target0_re = ((csrbank2_sel & interface2_bank_bus_we) & (interface2_bank_bus_adr[5:0] == 6'd35));
+assign csrbank2_git_commit19_w = usbtestsoc_status[159:152];
+assign csrbank2_git_commit18_w = usbtestsoc_status[151:144];
+assign csrbank2_git_commit17_w = usbtestsoc_status[143:136];
+assign csrbank2_git_commit16_w = usbtestsoc_status[135:128];
+assign csrbank2_git_commit15_w = usbtestsoc_status[127:120];
+assign csrbank2_git_commit14_w = usbtestsoc_status[119:112];
+assign csrbank2_git_commit13_w = usbtestsoc_status[111:104];
+assign csrbank2_git_commit12_w = usbtestsoc_status[103:96];
+assign csrbank2_git_commit11_w = usbtestsoc_status[95:88];
+assign csrbank2_git_commit10_w = usbtestsoc_status[87:80];
+assign csrbank2_git_commit9_w = usbtestsoc_status[79:72];
+assign csrbank2_git_commit8_w = usbtestsoc_status[71:64];
+assign csrbank2_git_commit7_w = usbtestsoc_status[63:56];
+assign csrbank2_git_commit6_w = usbtestsoc_status[55:48];
+assign csrbank2_git_commit5_w = usbtestsoc_status[47:40];
+assign csrbank2_git_commit4_w = usbtestsoc_status[39:32];
+assign csrbank2_git_commit3_w = usbtestsoc_status[31:24];
+assign csrbank2_git_commit2_w = usbtestsoc_status[23:16];
+assign csrbank2_git_commit1_w = usbtestsoc_status[15:8];
+assign csrbank2_git_commit0_w = usbtestsoc_status[7:0];
+assign csrbank2_platform_platform7_w = usbtestsoc_platform_status[63:56];
+assign csrbank2_platform_platform6_w = usbtestsoc_platform_status[55:48];
+assign csrbank2_platform_platform5_w = usbtestsoc_platform_status[47:40];
+assign csrbank2_platform_platform4_w = usbtestsoc_platform_status[39:32];
+assign csrbank2_platform_platform3_w = usbtestsoc_platform_status[31:24];
+assign csrbank2_platform_platform2_w = usbtestsoc_platform_status[23:16];
+assign csrbank2_platform_platform1_w = usbtestsoc_platform_status[15:8];
+assign csrbank2_platform_platform0_w = usbtestsoc_platform_status[7:0];
+assign csrbank2_platform_target7_w = usbtestsoc_target_status[63:56];
+assign csrbank2_platform_target6_w = usbtestsoc_target_status[55:48];
+assign csrbank2_platform_target5_w = usbtestsoc_target_status[47:40];
+assign csrbank2_platform_target4_w = usbtestsoc_target_status[39:32];
+assign csrbank2_platform_target3_w = usbtestsoc_target_status[31:24];
+assign csrbank2_platform_target2_w = usbtestsoc_target_status[23:16];
+assign csrbank2_platform_target1_w = usbtestsoc_target_status[15:8];
+assign csrbank2_platform_target0_w = usbtestsoc_target_status[7:0];
+assign csrbank3_sel = (interface3_bank_bus_adr[13:9] == 4'd11);
+assign csrbank3_in_r = interface3_bank_bus_dat_w[7:0];
+assign csrbank3_in_re = ((csrbank3_sel & interface3_bank_bus_we) & (interface3_bank_bus_adr[0] == 1'd0));
+assign csrbank3_out0_r = interface3_bank_bus_dat_w[7:0];
+assign csrbank3_out0_re = ((csrbank3_sel & interface3_bank_bus_we) & (interface3_bank_bus_adr[0] == 1'd1));
+assign csrbank3_in_w = io_status[7:0];
+assign io_storage = io_storage_full[7:0];
+assign csrbank3_out0_w = io_storage_full[7:0];
+assign csrbank4_sel = (interface4_bank_bus_adr[13:9] == 4'd8);
+assign csrbank4_bitbang0_r = interface4_bank_bus_dat_w[3:0];
+assign csrbank4_bitbang0_re = ((csrbank4_sel & interface4_bank_bus_we) & (interface4_bank_bus_adr[1:0] == 1'd0));
+assign csrbank4_miso_r = interface4_bank_bus_dat_w[0];
+assign csrbank4_miso_re = ((csrbank4_sel & interface4_bank_bus_we) & (interface4_bank_bus_adr[1:0] == 1'd1));
+assign csrbank4_bitbang_en0_r = interface4_bank_bus_dat_w[0];
+assign csrbank4_bitbang_en0_re = ((csrbank4_sel & interface4_bank_bus_we) & (interface4_bank_bus_adr[1:0] == 2'd2));
+assign usbtestsoc_spiflash_bitbang_storage = usbtestsoc_spiflash_bitbang_storage_full[3:0];
+assign csrbank4_bitbang0_w = usbtestsoc_spiflash_bitbang_storage_full[3:0];
+assign csrbank4_miso_w = usbtestsoc_spiflash_miso_status;
+assign usbtestsoc_spiflash_bitbang_en_storage = usbtestsoc_spiflash_bitbang_en_storage_full;
+assign csrbank4_bitbang_en0_w = usbtestsoc_spiflash_bitbang_en_storage_full;
+assign csrbank5_sel = (interface5_bank_bus_adr[13:9] == 3'd5);
+assign csrbank5_load3_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_load3_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 1'd0));
+assign csrbank5_load2_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_load2_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 1'd1));
+assign csrbank5_load1_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_load1_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 2'd2));
+assign csrbank5_load0_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_load0_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 2'd3));
+assign csrbank5_reload3_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_reload3_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 3'd4));
+assign csrbank5_reload2_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_reload2_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 3'd5));
+assign csrbank5_reload1_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_reload1_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 3'd6));
+assign csrbank5_reload0_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_reload0_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 3'd7));
+assign csrbank5_en0_r = interface5_bank_bus_dat_w[0];
+assign csrbank5_en0_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 4'd8));
+assign usbtestsoc_usbtestsoc_update_value_r = interface5_bank_bus_dat_w[0];
+assign usbtestsoc_usbtestsoc_update_value_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 4'd9));
+assign csrbank5_value3_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_value3_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 4'd10));
+assign csrbank5_value2_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_value2_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 4'd11));
+assign csrbank5_value1_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_value1_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 4'd12));
+assign csrbank5_value0_r = interface5_bank_bus_dat_w[7:0];
+assign csrbank5_value0_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 4'd13));
+assign usbtestsoc_usbtestsoc_eventmanager_status_r = interface5_bank_bus_dat_w[0];
+assign usbtestsoc_usbtestsoc_eventmanager_status_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 4'd14));
+assign usbtestsoc_usbtestsoc_eventmanager_pending_r = interface5_bank_bus_dat_w[0];
+assign usbtestsoc_usbtestsoc_eventmanager_pending_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 4'd15));
+assign csrbank5_ev_enable0_r = interface5_bank_bus_dat_w[0];
+assign csrbank5_ev_enable0_re = ((csrbank5_sel & interface5_bank_bus_we) & (interface5_bank_bus_adr[4:0] == 5'd16));
+assign usbtestsoc_usbtestsoc_load_storage = usbtestsoc_usbtestsoc_load_storage_full[31:0];
+assign csrbank5_load3_w = usbtestsoc_usbtestsoc_load_storage_full[31:24];
+assign csrbank5_load2_w = usbtestsoc_usbtestsoc_load_storage_full[23:16];
+assign csrbank5_load1_w = usbtestsoc_usbtestsoc_load_storage_full[15:8];
+assign csrbank5_load0_w = usbtestsoc_usbtestsoc_load_storage_full[7:0];
+assign usbtestsoc_usbtestsoc_reload_storage = usbtestsoc_usbtestsoc_reload_storage_full[31:0];
+assign csrbank5_reload3_w = usbtestsoc_usbtestsoc_reload_storage_full[31:24];
+assign csrbank5_reload2_w = usbtestsoc_usbtestsoc_reload_storage_full[23:16];
+assign csrbank5_reload1_w = usbtestsoc_usbtestsoc_reload_storage_full[15:8];
+assign csrbank5_reload0_w = usbtestsoc_usbtestsoc_reload_storage_full[7:0];
+assign usbtestsoc_usbtestsoc_en_storage = usbtestsoc_usbtestsoc_en_storage_full;
+assign csrbank5_en0_w = usbtestsoc_usbtestsoc_en_storage_full;
+assign csrbank5_value3_w = usbtestsoc_usbtestsoc_value_status[31:24];
+assign csrbank5_value2_w = usbtestsoc_usbtestsoc_value_status[23:16];
+assign csrbank5_value1_w = usbtestsoc_usbtestsoc_value_status[15:8];
+assign csrbank5_value0_w = usbtestsoc_usbtestsoc_value_status[7:0];
+assign usbtestsoc_usbtestsoc_eventmanager_storage = usbtestsoc_usbtestsoc_eventmanager_storage_full;
+assign csrbank5_ev_enable0_w = usbtestsoc_usbtestsoc_eventmanager_storage_full;
+assign interface0_bank_bus_adr = usbtestsoc_usbtestsoc_adr;
+assign interface1_bank_bus_adr = usbtestsoc_usbtestsoc_adr;
+assign interface2_bank_bus_adr = usbtestsoc_usbtestsoc_adr;
+assign interface3_bank_bus_adr = usbtestsoc_usbtestsoc_adr;
+assign interface4_bank_bus_adr = usbtestsoc_usbtestsoc_adr;
+assign interface5_bank_bus_adr = usbtestsoc_usbtestsoc_adr;
+assign sram_bus_adr = usbtestsoc_usbtestsoc_adr;
+assign interface0_bank_bus_we = usbtestsoc_usbtestsoc_we;
+assign interface1_bank_bus_we = usbtestsoc_usbtestsoc_we;
+assign interface2_bank_bus_we = usbtestsoc_usbtestsoc_we;
+assign interface3_bank_bus_we = usbtestsoc_usbtestsoc_we;
+assign interface4_bank_bus_we = usbtestsoc_usbtestsoc_we;
+assign interface5_bank_bus_we = usbtestsoc_usbtestsoc_we;
+assign sram_bus_we = usbtestsoc_usbtestsoc_we;
+assign interface0_bank_bus_dat_w = usbtestsoc_usbtestsoc_dat_w;
+assign interface1_bank_bus_dat_w = usbtestsoc_usbtestsoc_dat_w;
+assign interface2_bank_bus_dat_w = usbtestsoc_usbtestsoc_dat_w;
+assign interface3_bank_bus_dat_w = usbtestsoc_usbtestsoc_dat_w;
+assign interface4_bank_bus_dat_w = usbtestsoc_usbtestsoc_dat_w;
+assign interface5_bank_bus_dat_w = usbtestsoc_usbtestsoc_dat_w;
+assign sram_bus_dat_w = usbtestsoc_usbtestsoc_dat_w;
+assign usbtestsoc_usbtestsoc_dat_r = ((((((interface0_bank_bus_dat_r | interface1_bank_bus_dat_r) | interface2_bank_bus_dat_r) | interface3_bank_bus_dat_r) | interface4_bank_bus_dat_r) | interface5_bank_bus_dat_r) | sram_bus_dat_r);
+assign slice_proxy0 = 8'd128;
+assign slice_proxy1 = {(4'd15 ^ usbdevice_tx_pid), usbdevice_tx_pid};
+always @(*) begin
+ t_array_muxed <= 1'd0;
+ case (usbdevice_current_endp)
+ 1'd0: begin
+ t_array_muxed <= usbdevice0;
+ end
+ 1'd1: begin
+ t_array_muxed <= usbdevice1;
+ end
+ 2'd2: begin
+ t_array_muxed <= usbdevice2;
+ end
+ 2'd3: begin
+ t_array_muxed <= usbdevice3;
+ end
+ 3'd4: begin
+ t_array_muxed <= usbdevice4;
+ end
+ 3'd5: begin
+ t_array_muxed <= usbdevice5;
+ end
+ 3'd6: begin
+ t_array_muxed <= usbdevice6;
+ end
+ 3'd7: begin
+ t_array_muxed <= usbdevice7;
+ end
+ 4'd8: begin
+ t_array_muxed <= usbdevice8;
+ end
+ 4'd9: begin
+ t_array_muxed <= usbdevice9;
+ end
+ 4'd10: begin
+ t_array_muxed <= usbdevice10;
+ end
+ 4'd11: begin
+ t_array_muxed <= usbdevice11;
+ end
+ 4'd12: begin
+ t_array_muxed <= usbdevice12;
+ end
+ 4'd13: begin
+ t_array_muxed <= usbdevice13;
+ end
+ 4'd14: begin
+ t_array_muxed <= usbdevice14;
+ end
+ default: begin
+ t_array_muxed <= usbdevice15;
+ end
+ endcase
+end
+always @(*) begin
+ basiclowerer_array_muxed <= 1'd0;
+ case (usbdevice_current_endp)
+ 1'd0: begin
+ basiclowerer_array_muxed <= usbdevice32;
+ end
+ 1'd1: begin
+ basiclowerer_array_muxed <= usbdevice33;
+ end
+ 2'd2: begin
+ basiclowerer_array_muxed <= usbdevice34;
+ end
+ 2'd3: begin
+ basiclowerer_array_muxed <= usbdevice35;
+ end
+ 3'd4: begin
+ basiclowerer_array_muxed <= usbdevice36;
+ end
+ 3'd5: begin
+ basiclowerer_array_muxed <= usbdevice37;
+ end
+ 3'd6: begin
+ basiclowerer_array_muxed <= usbdevice38;
+ end
+ 3'd7: begin
+ basiclowerer_array_muxed <= usbdevice39;
+ end
+ 4'd8: begin
+ basiclowerer_array_muxed <= usbdevice40;
+ end
+ 4'd9: begin
+ basiclowerer_array_muxed <= usbdevice41;
+ end
+ 4'd10: begin
+ basiclowerer_array_muxed <= usbdevice42;
+ end
+ 4'd11: begin
+ basiclowerer_array_muxed <= usbdevice43;
+ end
+ 4'd12: begin
+ basiclowerer_array_muxed <= usbdevice44;
+ end
+ 4'd13: begin
+ basiclowerer_array_muxed <= usbdevice45;
+ end
+ 4'd14: begin
+ basiclowerer_array_muxed <= usbdevice46;
+ end
+ default: begin
+ basiclowerer_array_muxed <= usbdevice47;
+ end
+ endcase
+end
+always @(*) begin
+ rhs_array_muxed <= 1'd0;
+ case (usbdevice_current_endp)
+ 1'd0: begin
+ rhs_array_muxed <= usbdevice16;
+ end
+ 1'd1: begin
+ rhs_array_muxed <= usbdevice17;
+ end
+ 2'd2: begin
+ rhs_array_muxed <= usbdevice18;
+ end
+ 2'd3: begin
+ rhs_array_muxed <= usbdevice19;
+ end
+ 3'd4: begin
+ rhs_array_muxed <= usbdevice20;
+ end
+ 3'd5: begin
+ rhs_array_muxed <= usbdevice21;
+ end
+ 3'd6: begin
+ rhs_array_muxed <= usbdevice22;
+ end
+ 3'd7: begin
+ rhs_array_muxed <= usbdevice23;
+ end
+ 4'd8: begin
+ rhs_array_muxed <= usbdevice24;
+ end
+ 4'd9: begin
+ rhs_array_muxed <= usbdevice25;
+ end
+ 4'd10: begin
+ rhs_array_muxed <= usbdevice26;
+ end
+ 4'd11: begin
+ rhs_array_muxed <= usbdevice27;
+ end
+ 4'd12: begin
+ rhs_array_muxed <= usbdevice28;
+ end
+ 4'd13: begin
+ rhs_array_muxed <= usbdevice29;
+ end
+ 4'd14: begin
+ rhs_array_muxed <= usbdevice30;
+ end
+ default: begin
+ rhs_array_muxed <= usbdevice31;
+ end
+ endcase
+end
+always @(*) begin
+ array_muxed0 <= 30'd0;
+ case (grant)
+ default: begin
+ array_muxed0 <= uartwishbonebridge_wishbone_adr;
+ end
+ endcase
+end
+always @(*) begin
+ array_muxed1 <= 32'd0;
+ case (grant)
+ default: begin
+ array_muxed1 <= uartwishbonebridge_wishbone_dat_w;
+ end
+ endcase
+end
+always @(*) begin
+ array_muxed2 <= 4'd0;
+ case (grant)
+ default: begin
+ array_muxed2 <= uartwishbonebridge_wishbone_sel;
+ end
+ endcase
+end
+always @(*) begin
+ array_muxed3 <= 1'd0;
+ case (grant)
+ default: begin
+ array_muxed3 <= uartwishbonebridge_wishbone_cyc;
+ end
+ endcase
+end
+always @(*) begin
+ array_muxed4 <= 1'd0;
+ case (grant)
+ default: begin
+ array_muxed4 <= uartwishbonebridge_wishbone_stb;
+ end
+ endcase
+end
+always @(*) begin
+ array_muxed5 <= 1'd0;
+ case (grant)
+ default: begin
+ array_muxed5 <= uartwishbonebridge_wishbone_we;
+ end
+ endcase
+end
+always @(*) begin
+ array_muxed6 <= 3'd0;
+ case (grant)
+ default: begin
+ array_muxed6 <= uartwishbonebridge_wishbone_cti;
+ end
+ endcase
+end
+always @(*) begin
+ array_muxed7 <= 2'd0;
+ case (grant)
+ default: begin
+ array_muxed7 <= uartwishbonebridge_wishbone_bte;
+ end
+ endcase
+end
+assign uartwishbonebridge_rx = multiregimpl0_regs1;
+assign usbdevice_usbfsrx_usbp = multiregimpl1_regs2;
+assign usbdevice_usbfsrx_usbn = multiregimpl2_regs2;
+assign io_status = multiregimpl3_regs1;
+assign mux_value = multiregimpl4_regs1;
+assign trigger_enable = multiregimpl5_regs1;
+assign trigger_done_status = multiregimpl6_regs1;
+assign trigger_mem_produce_rdomain = multiregimpl7_regs1;
+assign trigger_mem_consume_wdomain = multiregimpl8_regs1;
+assign subsampler_value = multiregimpl9_regs1;
+assign storage_enable = multiregimpl10_regs1;
+assign storage_length = multiregimpl11_regs1;
+assign storage_offset = multiregimpl12_regs1;
+assign storage_done_status = multiregimpl13_regs1;
+assign storage_cdc_produce_rdomain = multiregimpl14_regs1;
+assign storage_cdc_consume_wdomain = multiregimpl15_regs1;
+
+always @(posedge por_clk) begin
+ if ((usbtestsoc_crg_reset_delay != 1'd0)) begin
+ usbtestsoc_crg_reset_delay <= (usbtestsoc_crg_reset_delay - 1'd1);
+ end
+ if (por_rst) begin
+ usbtestsoc_crg_reset_delay <= 12'd4095;
+ end
+end
+
+always @(posedge scope_clk) begin
+ trigger_enable_d <= trigger_enable;
+ trigger_mem_graycounter1_q_binary <= trigger_mem_graycounter1_q_next_binary;
+ trigger_mem_graycounter1_q <= trigger_mem_graycounter1_q_next;
+ if (subsampler_source_ready) begin
+ if (subsampler_done) begin
+ subsampler_counter <= 1'd0;
+ end else begin
+ if (subsampler_sink_valid) begin
+ subsampler_counter <= (subsampler_counter + 1'd1);
+ end
+ end
+ end
+ storage_enable_d <= storage_enable;
+ if (storage_mem_syncfifo_re) begin
+ storage_mem_readable <= 1'd1;
+ end else begin
+ if (storage_mem_re) begin
+ storage_mem_readable <= 1'd0;
+ end
+ end
+ if (((storage_mem_syncfifo_we & storage_mem_syncfifo_writable) & (~storage_mem_replace))) begin
+ storage_mem_produce <= (storage_mem_produce + 1'd1);
+ end
+ if (storage_mem_do_read) begin
+ storage_mem_consume <= (storage_mem_consume + 1'd1);
+ end
+ if (((storage_mem_syncfifo_we & storage_mem_syncfifo_writable) & (~storage_mem_replace))) begin
+ if ((~storage_mem_do_read)) begin
+ storage_mem_level0 <= (storage_mem_level0 + 1'd1);
+ end
+ end else begin
+ if (storage_mem_do_read) begin
+ storage_mem_level0 <= (storage_mem_level0 - 1'd1);
+ end
+ end
+ storage_cdc_graycounter0_q_binary <= storage_cdc_graycounter0_q_next_binary;
+ storage_cdc_graycounter0_q <= storage_cdc_graycounter0_q_next;
+ if (storage_wait) begin
+ if ((~storage_done1)) begin
+ storage_count <= (storage_count - 1'd1);
+ end
+ end else begin
+ storage_count <= 9'd256;
+ end
+ litescopeanalyzer_state <= litescopeanalyzer_next_state;
+ if (scope_rst) begin
+ trigger_enable_d <= 1'd0;
+ trigger_mem_graycounter1_q <= 5'd0;
+ trigger_mem_graycounter1_q_binary <= 5'd0;
+ subsampler_counter <= 16'd0;
+ storage_enable_d <= 1'd0;
+ storage_mem_readable <= 1'd0;
+ storage_mem_level0 <= 9'd0;
+ storage_mem_produce <= 8'd0;
+ storage_mem_consume <= 8'd0;
+ storage_cdc_graycounter0_q <= 3'd0;
+ storage_cdc_graycounter0_q_binary <= 3'd0;
+ storage_count <= 9'd256;
+ litescopeanalyzer_state <= 2'd0;
+ end
+ multiregimpl4_regs0 <= mux_value_storage;
+ multiregimpl4_regs1 <= multiregimpl4_regs0;
+ multiregimpl5_regs0 <= trigger_enable_storage;
+ multiregimpl5_regs1 <= multiregimpl5_regs0;
+ multiregimpl7_regs0 <= trigger_mem_graycounter0_q;
+ multiregimpl7_regs1 <= multiregimpl7_regs0;
+ multiregimpl9_regs0 <= subsampler_value_storage;
+ multiregimpl9_regs1 <= multiregimpl9_regs0;
+ multiregimpl10_regs0 <= storage_enable_storage;
+ multiregimpl10_regs1 <= multiregimpl10_regs0;
+ multiregimpl11_regs0 <= storage_length_storage;
+ multiregimpl11_regs1 <= multiregimpl11_regs0;
+ multiregimpl12_regs0 <= storage_offset_storage;
+ multiregimpl12_regs1 <= multiregimpl12_regs0;
+ multiregimpl15_regs0 <= storage_cdc_graycounter1_q;
+ multiregimpl15_regs1 <= multiregimpl15_regs0;
+end
+
+always @(posedge sys_clk) begin
+ if ((usbtestsoc_usbtestsoc_bus_errors != 32'd4294967295)) begin
+ if (usbtestsoc_usbtestsoc_bus_error) begin
+ usbtestsoc_usbtestsoc_bus_errors <= (usbtestsoc_usbtestsoc_bus_errors + 1'd1);
+ end
+ end
+ usbtestsoc_usbtestsoc_we <= 1'd0;
+ usbtestsoc_usbtestsoc_dat_w <= usbtestsoc_usbtestsoc_bus_wishbone_dat_w;
+ usbtestsoc_usbtestsoc_adr <= usbtestsoc_usbtestsoc_bus_wishbone_adr;
+ usbtestsoc_usbtestsoc_bus_wishbone_dat_r <= usbtestsoc_usbtestsoc_dat_r;
+ if ((usbtestsoc_usbtestsoc_counter == 1'd1)) begin
+ usbtestsoc_usbtestsoc_we <= usbtestsoc_usbtestsoc_bus_wishbone_we;
+ end
+ if ((usbtestsoc_usbtestsoc_counter == 2'd2)) begin
+ usbtestsoc_usbtestsoc_bus_wishbone_ack <= 1'd1;
+ end
+ if ((usbtestsoc_usbtestsoc_counter == 2'd3)) begin
+ usbtestsoc_usbtestsoc_bus_wishbone_ack <= 1'd0;
+ end
+ if ((usbtestsoc_usbtestsoc_counter != 1'd0)) begin
+ usbtestsoc_usbtestsoc_counter <= (usbtestsoc_usbtestsoc_counter + 1'd1);
+ end else begin
+ if ((usbtestsoc_usbtestsoc_bus_wishbone_cyc & usbtestsoc_usbtestsoc_bus_wishbone_stb)) begin
+ usbtestsoc_usbtestsoc_counter <= 1'd1;
+ end
+ end
+ if (usbtestsoc_usbtestsoc_en_storage) begin
+ if ((usbtestsoc_usbtestsoc_value == 1'd0)) begin
+ usbtestsoc_usbtestsoc_value <= usbtestsoc_usbtestsoc_reload_storage;
+ end else begin
+ usbtestsoc_usbtestsoc_value <= (usbtestsoc_usbtestsoc_value - 1'd1);
+ end
+ end else begin
+ usbtestsoc_usbtestsoc_value <= usbtestsoc_usbtestsoc_load_storage;
+ end
+ if (usbtestsoc_usbtestsoc_update_value_re) begin
+ usbtestsoc_usbtestsoc_value_status <= usbtestsoc_usbtestsoc_value;
+ end
+ if (usbtestsoc_usbtestsoc_zero_clear) begin
+ usbtestsoc_usbtestsoc_zero_pending <= 1'd0;
+ end
+ usbtestsoc_usbtestsoc_zero_old_trigger <= usbtestsoc_usbtestsoc_zero_trigger;
+ if (((~usbtestsoc_usbtestsoc_zero_trigger) & usbtestsoc_usbtestsoc_zero_old_trigger)) begin
+ usbtestsoc_usbtestsoc_zero_pending <= 1'd1;
+ end
+ if ((usbtestsoc_spiflash_i == 1'd0)) begin
+ usbtestsoc_spiflash_clk1 <= 1'd1;
+ usbtestsoc_spiflash_miso1 <= spiflash_miso;
+ end
+ if ((usbtestsoc_spiflash_i == 1'd1)) begin
+ usbtestsoc_spiflash_i <= 1'd0;
+ usbtestsoc_spiflash_clk1 <= 1'd0;
+ usbtestsoc_spiflash_sr <= {usbtestsoc_spiflash_sr[30:0], usbtestsoc_spiflash_miso1};
+ end else begin
+ usbtestsoc_spiflash_i <= (usbtestsoc_spiflash_i + 1'd1);
+ end
+ if ((((usbtestsoc_spiflash_bus_cyc & usbtestsoc_spiflash_bus_stb) & (usbtestsoc_spiflash_i == 1'd1)) & (usbtestsoc_spiflash_counter == 1'd0))) begin
+ usbtestsoc_spiflash_cs_n1 <= 1'd0;
+ usbtestsoc_spiflash_sr[31:24] <= 4'd11;
+ end
+ if ((usbtestsoc_spiflash_counter == 5'd16)) begin
+ usbtestsoc_spiflash_sr[31:8] <= {usbtestsoc_spiflash_bus_adr, {2{1'd0}}};
+ end
+ if ((usbtestsoc_spiflash_counter == 7'd64)) begin
+ end
+ if ((usbtestsoc_spiflash_counter == 8'd144)) begin
+ usbtestsoc_spiflash_bus_ack <= 1'd1;
+ usbtestsoc_spiflash_cs_n1 <= 1'd1;
+ end
+ if ((usbtestsoc_spiflash_counter == 8'd145)) begin
+ usbtestsoc_spiflash_bus_ack <= 1'd0;
+ end
+ if ((usbtestsoc_spiflash_counter == 8'd147)) begin
+ end
+ if ((usbtestsoc_spiflash_counter == 8'd147)) begin
+ usbtestsoc_spiflash_counter <= 1'd0;
+ end else begin
+ if ((usbtestsoc_spiflash_counter != 1'd0)) begin
+ usbtestsoc_spiflash_counter <= (usbtestsoc_spiflash_counter + 1'd1);
+ end else begin
+ if (((usbtestsoc_spiflash_bus_cyc & usbtestsoc_spiflash_bus_stb) & (usbtestsoc_spiflash_i == 1'd1))) begin
+ usbtestsoc_spiflash_counter <= 1'd1;
+ end
+ end
+ end
+ if (uartwishbonebridge_byte_counter_reset) begin
+ uartwishbonebridge_byte_counter <= 1'd0;
+ end else begin
+ if (uartwishbonebridge_byte_counter_ce) begin
+ uartwishbonebridge_byte_counter <= (uartwishbonebridge_byte_counter + 1'd1);
+ end
+ end
+ if (uartwishbonebridge_word_counter_reset) begin
+ uartwishbonebridge_word_counter <= 1'd0;
+ end else begin
+ if (uartwishbonebridge_word_counter_ce) begin
+ uartwishbonebridge_word_counter <= (uartwishbonebridge_word_counter + 1'd1);
+ end
+ end
+ if (uartwishbonebridge_cmd_ce) begin
+ uartwishbonebridge_cmd <= uartwishbonebridge_source_payload_data;
+ end
+ if (uartwishbonebridge_length_ce) begin
+ uartwishbonebridge_length <= uartwishbonebridge_source_payload_data;
+ end
+ if (uartwishbonebridge_address_ce) begin
+ uartwishbonebridge_address <= {uartwishbonebridge_address[23:0], uartwishbonebridge_source_payload_data};
+ end
+ if (uartwishbonebridge_rx_data_ce) begin
+ uartwishbonebridge_data <= {uartwishbonebridge_data[23:0], uartwishbonebridge_source_payload_data};
+ end else begin
+ if (uartwishbonebridge_tx_data_ce) begin
+ uartwishbonebridge_data <= uartwishbonebridge_wishbone_dat_r;
+ end
+ end
+ uartwishbonebridge_sink_ready <= 1'd0;
+ if (((uartwishbonebridge_sink_valid & (~uartwishbonebridge_tx_busy)) & (~uartwishbonebridge_sink_ready))) begin
+ uartwishbonebridge_tx_reg <= uartwishbonebridge_sink_payload_data;
+ uartwishbonebridge_tx_bitcount <= 1'd0;
+ uartwishbonebridge_tx_busy <= 1'd1;
+ serial_tx <= 1'd0;
+ end else begin
+ if ((uartwishbonebridge_uart_clk_txen & uartwishbonebridge_tx_busy)) begin
+ uartwishbonebridge_tx_bitcount <= (uartwishbonebridge_tx_bitcount + 1'd1);
+ if ((uartwishbonebridge_tx_bitcount == 4'd8)) begin
+ serial_tx <= 1'd1;
+ end else begin
+ if ((uartwishbonebridge_tx_bitcount == 4'd9)) begin
+ serial_tx <= 1'd1;
+ uartwishbonebridge_tx_busy <= 1'd0;
+ uartwishbonebridge_sink_ready <= 1'd1;
+ end else begin
+ serial_tx <= uartwishbonebridge_tx_reg[0];
+ uartwishbonebridge_tx_reg <= {1'd0, uartwishbonebridge_tx_reg[7:1]};
+ end
+ end
+ end
+ end
+ if (uartwishbonebridge_tx_busy) begin
+ {uartwishbonebridge_uart_clk_txen, uartwishbonebridge_phase_accumulator_tx} <= (uartwishbonebridge_phase_accumulator_tx + uartwishbonebridge_storage);
+ end else begin
+ {uartwishbonebridge_uart_clk_txen, uartwishbonebridge_phase_accumulator_tx} <= 1'd0;
+ end
+ uartwishbonebridge_source_valid <= 1'd0;
+ uartwishbonebridge_rx_r <= uartwishbonebridge_rx;
+ if ((~uartwishbonebridge_rx_busy)) begin
+ if (((~uartwishbonebridge_rx) & uartwishbonebridge_rx_r)) begin
+ uartwishbonebridge_rx_busy <= 1'd1;
+ uartwishbonebridge_rx_bitcount <= 1'd0;
+ end
+ end else begin
+ if (uartwishbonebridge_uart_clk_rxen) begin
+ uartwishbonebridge_rx_bitcount <= (uartwishbonebridge_rx_bitcount + 1'd1);
+ if ((uartwishbonebridge_rx_bitcount == 1'd0)) begin
+ if (uartwishbonebridge_rx) begin
+ uartwishbonebridge_rx_busy <= 1'd0;
+ end
+ end else begin
+ if ((uartwishbonebridge_rx_bitcount == 4'd9)) begin
+ uartwishbonebridge_rx_busy <= 1'd0;
+ if (uartwishbonebridge_rx) begin
+ uartwishbonebridge_source_payload_data <= uartwishbonebridge_rx_reg;
+ uartwishbonebridge_source_valid <= 1'd1;
+ end
+ end else begin
+ uartwishbonebridge_rx_reg <= {uartwishbonebridge_rx, uartwishbonebridge_rx_reg[7:1]};
+ end
+ end
+ end
+ end
+ if (uartwishbonebridge_rx_busy) begin
+ {uartwishbonebridge_uart_clk_rxen, uartwishbonebridge_phase_accumulator_rx} <= (uartwishbonebridge_phase_accumulator_rx + uartwishbonebridge_storage);
+ end else begin
+ {uartwishbonebridge_uart_clk_rxen, uartwishbonebridge_phase_accumulator_rx} <= 32'd2147483648;
+ end
+ uartwishbonebridge_state <= uartwishbonebridge_next_state;
+ if (uartwishbonebridge_reset) begin
+ uartwishbonebridge_state <= 3'd0;
+ end
+ if (uartwishbonebridge_wait) begin
+ if ((~uartwishbonebridge_done)) begin
+ uartwishbonebridge_count <= (uartwishbonebridge_count - 1'd1);
+ end
+ end else begin
+ uartwishbonebridge_count <= 21'd1600000;
+ end
+ usbdevice_tx_pkt_start <= (usbdevice_in_tx_pkt_start | usbdevice_out_tx_pkt_start);
+ usbdevice_tx_pid <= (usbdevice_out_tx_pkt_start ? usbdevice_out_tx_pid : usbdevice_in_tx_pid);
+ usbdevice_valid_request_token <= usbdevice_valid_request_token_pre;
+ if (usbdevice_valid_request_token) begin
+ usbdevice_current_token <= usbdevice_usbfsrx_o_pkt_pid;
+ usbdevice_current_endp <= usbdevice_rx_endp;
+ end
+ usbdevice_usbfsrx_line_state_valid <= (usbdevice_usbfsrx_line_state_phase == 1'd1);
+ if (usbdevice_usbfsrx_line_state_dt) begin
+ usbdevice_usbfsrx_line_state_phase <= 1'd0;
+ usbdevice_usbfsrx_line_state_valid <= 1'd0;
+ end else begin
+ usbdevice_usbfsrx_line_state_phase <= (usbdevice_usbfsrx_line_state_phase + 1'd1);
+ end
+ usbdevice_usbfsrx_line_state_dj1 <= usbdevice_usbfsrx_line_state_dj0;
+ usbdevice_usbfsrx_line_state_dk1 <= usbdevice_usbfsrx_line_state_dk0;
+ usbdevice_usbfsrx_line_state_se01 <= usbdevice_usbfsrx_line_state_se00;
+ usbdevice_usbfsrx_line_state_se11 <= usbdevice_usbfsrx_line_state_se10;
+ rxclockdatarecovery_state <= rxclockdatarecovery_next_state;
+ usbdevice_usbfsrx_nrzi_o_se0 <= usbdevice_usbfsrx_line_state_se01;
+ usbdevice_usbfsrx_nrzi_o_valid1 <= usbdevice_usbfsrx_nrzi_o_valid0;
+ usbdevice_usbfsrx_nrzi_o_data1 <= usbdevice_usbfsrx_nrzi_o_data0;
+ rxnrzidecoder_state <= rxnrzidecoder_next_state;
+ usbdevice_usbfsrx_bitstuff_o_se0 <= usbdevice_usbfsrx_nrzi_o_se0;
+ usbdevice_usbfsrx_bitstuff_o_valid <= (usbdevice_usbfsrx_nrzi_o_valid1 & (~usbdevice_usbfsrx_bitstuff_drop_bit));
+ usbdevice_usbfsrx_bitstuff_o_data <= usbdevice_usbfsrx_nrzi_o_data1;
+ usbdevice_usbfsrx_bitstuff_o_bitstuff_error <= (usbdevice_usbfsrx_bitstuff_drop_bit & usbdevice_usbfsrx_nrzi_o_data1);
+ rxbitstuffremover_state <= rxbitstuffremover_next_state;
+ usbdevice_usbfsrx_valid <= usbdevice_usbfsrx_bitstuff_o_valid;
+ usbdevice_usbfsrx_data <= usbdevice_usbfsrx_bitstuff_o_data;
+ usbdevice_usbfsrx_se0 <= usbdevice_usbfsrx_bitstuff_o_se0;
+ usbdevice_usbfsrx_bitstuff_error <= usbdevice_usbfsrx_bitstuff_o_bitstuff_error;
+ usbdevice_usbfsrx_pkt_active1 <= usbdevice_usbfsrx_o_pkt_active;
+ usbdevice_usbfsrx_pkt_end1 <= usbdevice_usbfsrx_o_pkt_end0;
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_pkt_bitstuff_good <= 1'd1;
+ end else begin
+ if ((usbdevice_usbfsrx_pkt_active1 & usbdevice_usbfsrx_bitstuff_error)) begin
+ usbdevice_usbfsrx_pkt_bitstuff_good <= 1'd0;
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_data_put) begin
+ usbdevice_usbfsrx_crc16_good <= usbdevice_usbfsrx_data_crc16_o_crc_good;
+ end
+ usbdevice_usbfsrx_o_pkt_start1 <= usbdevice_usbfsrx_o_pkt_start0;
+ usbdevice_usbfsrx_o_pkt_pid <= usbdevice_usbfsrx_pid_shifter_o_output[3:0];
+ usbdevice_usbfsrx_o_pkt_token_payload <= usbdevice_usbfsrx_tok_shifter_o_output[10:0];
+ usbdevice_usbfsrx_o_pkt_data <= usbdevice_usbfsrx_data_shifter_o_output[7:0];
+ usbdevice_usbfsrx_o_pkt_data_put <= usbdevice_usbfsrx_data_put;
+ usbdevice_usbfsrx_o_pkt_good <= ((((usbdevice_usbfsrx_pid_shifter_o_output[3:0] == (usbdevice_usbfsrx_pid_shifter_o_output[7:4] ^ 4'd15)) & usbdevice_usbfsrx_pkt_bitstuff_good) & (usbdevice_usbfsrx_tok_crc5_o_crc_good | (~(usbdevice_usbfsrx_pid_shifter_o_output[1:0] == 1'd1)))) & (usbdevice_usbfsrx_crc16_good | (~(usbdevice_usbfsrx_pid_shifter_o_output[1:0] == 2'd3))));
+ usbdevice_usbfsrx_o_pkt_end1 <= usbdevice_usbfsrx_pkt_end1;
+ usbdevice_usbfsrx_o_pkt_start0 <= usbdevice_usbfsrx_pkt_start;
+ usbdevice_usbfsrx_o_pkt_active <= usbdevice_usbfsrx_pkt_active0;
+ usbdevice_usbfsrx_o_pkt_end0 <= usbdevice_usbfsrx_pkt_end0;
+ rxpacketdecode_state <= rxpacketdecode_next_state;
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_pid_shifter_shift_reg <= 9'd256;
+ end else begin
+ if (((usbdevice_usbfsrx_pkt_active1 & usbdevice_usbfsrx_valid) & (~usbdevice_usbfsrx_pid_shifter_o_full))) begin
+ usbdevice_usbfsrx_pid_shifter_shift_reg <= {usbdevice_usbfsrx_data, usbdevice_usbfsrx_pid_shifter_shift_reg[8:1]};
+ end
+ end
+ usbdevice_usbfsrx_pid_shifter_o_put <= ((usbdevice_usbfsrx_pid_shifter_shift_reg[1:0] == 2'd2) & (usbdevice_usbfsrx_pkt_active1 & usbdevice_usbfsrx_valid));
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_tok_shifter_shift_reg <= 17'd65536;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & (~usbdevice_usbfsrx_tok_shifter_o_full))) begin
+ usbdevice_usbfsrx_tok_shifter_shift_reg <= {usbdevice_usbfsrx_data, usbdevice_usbfsrx_tok_shifter_shift_reg[16:1]};
+ end
+ end
+ usbdevice_usbfsrx_tok_shifter_o_put <= ((usbdevice_usbfsrx_tok_shifter_shift_reg[1:0] == 2'd2) & (usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid));
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_tok_crc5_crc[0] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & (~usbdevice_usbfsrx_tok_shifter_o_full))) begin
+ usbdevice_usbfsrx_tok_crc5_crc[0] <= usbdevice_usbfsrx_tok_crc5_crc_invert;
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_tok_crc5_crc[1] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & (~usbdevice_usbfsrx_tok_shifter_o_full))) begin
+ usbdevice_usbfsrx_tok_crc5_crc[1] <= usbdevice_usbfsrx_tok_crc5_crc[0];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_tok_crc5_crc[2] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & (~usbdevice_usbfsrx_tok_shifter_o_full))) begin
+ usbdevice_usbfsrx_tok_crc5_crc[2] <= (usbdevice_usbfsrx_tok_crc5_crc[1] ^ usbdevice_usbfsrx_tok_crc5_crc_invert);
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_tok_crc5_crc[3] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & (~usbdevice_usbfsrx_tok_shifter_o_full))) begin
+ usbdevice_usbfsrx_tok_crc5_crc[3] <= usbdevice_usbfsrx_tok_crc5_crc[2];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_tok_crc5_crc[4] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & (~usbdevice_usbfsrx_tok_shifter_o_full))) begin
+ usbdevice_usbfsrx_tok_crc5_crc[4] <= usbdevice_usbfsrx_tok_crc5_crc[3];
+ end
+ end
+ usbdevice_usbfsrx_tok_crc5_o_crc_good <= usbdevice_usbfsrx_tok_crc5_crc_good;
+ if ((usbdevice_usbfsrx_o_pkt_start0 | usbdevice_usbfsrx_data_put)) begin
+ usbdevice_usbfsrx_data_shifter_shift_reg <= 9'd256;
+ end else begin
+ if (((((usbdevice_usbfsrx_pid_shifter_o_output[1:0] == 2'd3) & usbdevice_usbfsrx_pid_shifter_o_full) & usbdevice_usbfsrx_valid) & (~usbdevice_usbfsrx_data_shifter_o_full))) begin
+ usbdevice_usbfsrx_data_shifter_shift_reg <= {usbdevice_usbfsrx_data, usbdevice_usbfsrx_data_shifter_shift_reg[8:1]};
+ end
+ end
+ usbdevice_usbfsrx_data_shifter_o_put <= ((usbdevice_usbfsrx_data_shifter_shift_reg[1:0] == 2'd2) & (((usbdevice_usbfsrx_pid_shifter_o_output[1:0] == 2'd3) & usbdevice_usbfsrx_pid_shifter_o_full) & usbdevice_usbfsrx_valid));
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[0] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[0] <= usbdevice_usbfsrx_data_crc16_crc_invert;
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[1] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[1] <= usbdevice_usbfsrx_data_crc16_crc[0];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[2] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[2] <= (usbdevice_usbfsrx_data_crc16_crc[1] ^ usbdevice_usbfsrx_data_crc16_crc_invert);
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[3] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[3] <= usbdevice_usbfsrx_data_crc16_crc[2];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[4] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[4] <= usbdevice_usbfsrx_data_crc16_crc[3];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[5] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[5] <= usbdevice_usbfsrx_data_crc16_crc[4];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[6] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[6] <= usbdevice_usbfsrx_data_crc16_crc[5];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[7] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[7] <= usbdevice_usbfsrx_data_crc16_crc[6];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[8] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[8] <= usbdevice_usbfsrx_data_crc16_crc[7];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[9] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[9] <= usbdevice_usbfsrx_data_crc16_crc[8];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[10] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[10] <= usbdevice_usbfsrx_data_crc16_crc[9];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[11] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[11] <= usbdevice_usbfsrx_data_crc16_crc[10];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[12] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[12] <= usbdevice_usbfsrx_data_crc16_crc[11];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[13] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[13] <= usbdevice_usbfsrx_data_crc16_crc[12];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[14] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[14] <= usbdevice_usbfsrx_data_crc16_crc[13];
+ end
+ end
+ if (usbdevice_usbfsrx_o_pkt_start0) begin
+ usbdevice_usbfsrx_data_crc16_crc[15] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfsrx_pid_shifter_o_full & usbdevice_usbfsrx_valid) & usbdevice_usbfsrx_pkt_active1)) begin
+ usbdevice_usbfsrx_data_crc16_crc[15] <= (usbdevice_usbfsrx_data_crc16_crc[14] ^ usbdevice_usbfsrx_data_crc16_crc_invert);
+ end
+ end
+ usbdevice_usbfsrx_data_crc16_o_crc_good <= usbdevice_usbfsrx_data_crc16_crc_good;
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_pid_is_data <= (usbdevice_tx_pid[1:0] == 2'd3);
+ end
+ usbdevice_usbfstx_mux_stuff_bit_strobe <= usbdevice_usbfsrx_line_state_valid;
+ usbdevice_usbfstx_mux_stuff_oe <= usbdevice_usbfstx_pkt_active;
+ usbdevice_usbfstx_mux_stuff_se0 <= 1'd0;
+ usbdevice_usbfstx_mux_stuff_data <= 1'd0;
+ if (usbdevice_usbfstx_shift_sync) begin
+ usbdevice_usbfstx_mux_stuff_se0 <= 1'd0;
+ usbdevice_usbfstx_mux_stuff_data <= usbdevice_usbfstx_sync_shifter_o_data;
+ end else begin
+ if (usbdevice_usbfstx_shift_pid) begin
+ usbdevice_usbfstx_mux_stuff_se0 <= 1'd0;
+ usbdevice_usbfstx_mux_stuff_data <= usbdevice_usbfstx_pid_shifter_o_data;
+ end else begin
+ if (usbdevice_usbfstx_shift_data) begin
+ usbdevice_usbfstx_mux_stuff_se0 <= 1'd0;
+ usbdevice_usbfstx_mux_stuff_data <= usbdevice_usbfstx_data_shifter_o_data;
+ end else begin
+ if (usbdevice_usbfstx_shift_crc16) begin
+ usbdevice_usbfstx_mux_stuff_se0 <= 1'd0;
+ usbdevice_usbfstx_mux_stuff_data <= usbdevice_usbfstx_crc16_shifter_o_data;
+ end else begin
+ if (usbdevice_usbfstx_shift_eop) begin
+ usbdevice_usbfstx_mux_stuff_se0 <= 1'd1;
+ usbdevice_usbfstx_mux_stuff_data <= 1'd0;
+ end
+ end
+ end
+ end
+ end
+ usbdevice_usbfstx_o_data_get <= usbdevice_usbfstx_load_data;
+ usbdevice_usbfstx_o_usbp <= usbdevice_usbfstx_nrzi_o_usbp;
+ usbdevice_usbfstx_o_usbn <= usbdevice_usbfstx_nrzi_o_usbn;
+ usbdevice_usbfstx_o_oe <= usbdevice_usbfstx_nrzi_o_oe;
+ fsm_state <= fsm_next_state;
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_sync_shifter_shifter <= {1'd1, slice_proxy0[7:0]};
+ end else begin
+ if (((usbdevice_usbfstx_shift_sync & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_sync_shifter_shifter <= (usbdevice_usbfstx_sync_shifter_shifter >>> 1'd1);
+ end
+ end
+ if (((usbdevice_usbfstx_sync_shifter_shifter[8:1] == 8'd1) & ((usbdevice_usbfstx_shift_sync & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall)))) begin
+ usbdevice_usbfstx_sync_shifter_not_empty <= 1'd0;
+ end else begin
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_sync_shifter_not_empty <= 1'd1;
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_pid_shifter_shifter <= {1'd1, slice_proxy1[7:0]};
+ end else begin
+ if (((usbdevice_usbfstx_shift_pid & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_pid_shifter_shifter <= (usbdevice_usbfstx_pid_shifter_shifter >>> 1'd1);
+ end
+ end
+ if (((usbdevice_usbfstx_pid_shifter_shifter[8:1] == 8'd1) & ((usbdevice_usbfstx_shift_pid & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall)))) begin
+ usbdevice_usbfstx_pid_shifter_not_empty <= 1'd0;
+ end else begin
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_pid_shifter_not_empty <= 1'd1;
+ end
+ end
+ if (usbdevice_usbfstx_load_data) begin
+ usbdevice_usbfstx_data_shifter_shifter <= {1'd1, usbdevice_tx_data[7:0]};
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_data_shifter_shifter <= (usbdevice_usbfstx_data_shifter_shifter >>> 1'd1);
+ end
+ end
+ if (((usbdevice_usbfstx_data_shifter_shifter[8:1] == 8'd1) & ((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall)))) begin
+ usbdevice_usbfstx_data_shifter_not_empty <= 1'd0;
+ end else begin
+ if (usbdevice_usbfstx_load_data) begin
+ usbdevice_usbfstx_data_shifter_not_empty <= 1'd1;
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[0] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[0] <= usbdevice_usbfstx_crc_invert;
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[1] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[1] <= usbdevice_usbfstx_crc[0];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[2] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[2] <= (usbdevice_usbfstx_crc[1] ^ usbdevice_usbfstx_crc_invert);
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[3] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[3] <= usbdevice_usbfstx_crc[2];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[4] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[4] <= usbdevice_usbfstx_crc[3];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[5] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[5] <= usbdevice_usbfstx_crc[4];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[6] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[6] <= usbdevice_usbfstx_crc[5];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[7] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[7] <= usbdevice_usbfstx_crc[6];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[8] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[8] <= usbdevice_usbfstx_crc[7];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[9] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[9] <= usbdevice_usbfstx_crc[8];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[10] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[10] <= usbdevice_usbfstx_crc[9];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[11] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[11] <= usbdevice_usbfstx_crc[10];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[12] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[12] <= usbdevice_usbfstx_crc[11];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[13] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[13] <= usbdevice_usbfstx_crc[12];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[14] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[14] <= usbdevice_usbfstx_crc[13];
+ end
+ end
+ if (usbdevice_tx_pkt_start) begin
+ usbdevice_usbfstx_crc[15] <= 1'd1;
+ end else begin
+ if (((usbdevice_usbfstx_shift_data & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc[15] <= (usbdevice_usbfstx_crc[14] ^ usbdevice_usbfstx_crc_invert);
+ end
+ end
+ if (usbdevice_usbfstx_load_crc16) begin
+ usbdevice_usbfstx_crc16_shifter_shifter <= {1'd1, usbdevice_usbfstx_o_crc[15:0]};
+ end else begin
+ if (((usbdevice_usbfstx_shift_crc16 & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall))) begin
+ usbdevice_usbfstx_crc16_shifter_shifter <= (usbdevice_usbfstx_crc16_shifter_shifter >>> 1'd1);
+ end
+ end
+ if (((usbdevice_usbfstx_crc16_shifter_shifter[16:1] == 16'd1) & ((usbdevice_usbfstx_shift_crc16 & usbdevice_usbfsrx_line_state_valid) & (~usbdevice_usbfstx_bitstuff_stall)))) begin
+ usbdevice_usbfstx_crc16_shifter_not_empty <= 1'd0;
+ end else begin
+ if (usbdevice_usbfstx_load_crc16) begin
+ usbdevice_usbfstx_crc16_shifter_not_empty <= 1'd1;
+ end
+ end
+ if (usbdevice_usbfstx_mux_stuff_bit_strobe) begin
+ usbdevice_usbfstx_bitstuffer_o_data <= (usbdevice_usbfstx_mux_stuff_data & (~usbdevice_usbfstx_bitstuffer_stuff_bit));
+ usbdevice_usbfstx_bitstuffer_o_se0 <= usbdevice_usbfstx_mux_stuff_se0;
+ usbdevice_usbfstx_bitstuffer_o_oe <= usbdevice_usbfstx_mux_stuff_oe;
+ end
+ txbitstuffer_state <= txbitstuffer_next_state;
+ usbdevice_usbfstx_nrzi_o_oe <= usbdevice_usbfstx_nrzi_oe;
+ usbdevice_usbfstx_nrzi_o_usbp <= usbdevice_usbfstx_nrzi_usbp;
+ usbdevice_usbfstx_nrzi_o_usbn <= usbdevice_usbfstx_nrzi_usbn;
+ txnrziencoder_state <= txnrziencoder_next_state;
+ fsm0_state <= fsm0_next_state;
+ fsm1_state <= fsm1_next_state;
+ trigger_mem_graycounter0_q_binary <= trigger_mem_graycounter0_q_next_binary;
+ trigger_mem_graycounter0_q <= trigger_mem_graycounter0_q_next;
+ if (trigger_wait) begin
+ if ((~trigger_done1)) begin
+ trigger_count <= (trigger_count - 1'd1);
+ end
+ end else begin
+ trigger_count <= 5'd16;
+ end
+ storage_cdc_graycounter1_q_binary <= storage_cdc_graycounter1_q_next_binary;
+ storage_cdc_graycounter1_q <= storage_cdc_graycounter1_q_next;
+ slave_sel_r <= slave_sel;
+ if (wait_1) begin
+ if ((~done)) begin
+ count <= (count - 1'd1);
+ end
+ end else begin
+ count <= 17'd65536;
+ end
+ interface0_bank_bus_dat_r <= 1'd0;
+ if (csrbank0_sel) begin
+ case (interface0_bank_bus_adr[4:0])
+ 1'd0: begin
+ interface0_bank_bus_dat_r <= csrbank0_mux_value0_w;
+ end
+ 1'd1: begin
+ interface0_bank_bus_dat_r <= csrbank0_trigger_enable0_w;
+ end
+ 2'd2: begin
+ interface0_bank_bus_dat_r <= csrbank0_trigger_done_w;
+ end
+ 2'd3: begin
+ interface0_bank_bus_dat_r <= trigger_mem_write_w;
+ end
+ 3'd4: begin
+ interface0_bank_bus_dat_r <= csrbank0_trigger_mem_mask0_w;
+ end
+ 3'd5: begin
+ interface0_bank_bus_dat_r <= csrbank0_trigger_mem_value0_w;
+ end
+ 3'd6: begin
+ interface0_bank_bus_dat_r <= csrbank0_trigger_mem_full_w;
+ end
+ 3'd7: begin
+ interface0_bank_bus_dat_r <= csrbank0_subsampler_value1_w;
+ end
+ 4'd8: begin
+ interface0_bank_bus_dat_r <= csrbank0_subsampler_value0_w;
+ end
+ 4'd9: begin
+ interface0_bank_bus_dat_r <= csrbank0_storage_enable0_w;
+ end
+ 4'd10: begin
+ interface0_bank_bus_dat_r <= csrbank0_storage_done_w;
+ end
+ 4'd11: begin
+ interface0_bank_bus_dat_r <= csrbank0_storage_length1_w;
+ end
+ 4'd12: begin
+ interface0_bank_bus_dat_r <= csrbank0_storage_length0_w;
+ end
+ 4'd13: begin
+ interface0_bank_bus_dat_r <= csrbank0_storage_offset1_w;
+ end
+ 4'd14: begin
+ interface0_bank_bus_dat_r <= csrbank0_storage_offset0_w;
+ end
+ 4'd15: begin
+ interface0_bank_bus_dat_r <= csrbank0_storage_mem_valid_w;
+ end
+ 5'd16: begin
+ interface0_bank_bus_dat_r <= storage_mem_ready_w;
+ end
+ 5'd17: begin
+ interface0_bank_bus_dat_r <= csrbank0_storage_mem_data_w;
+ end
+ endcase
+ end
+ if (csrbank0_mux_value0_re) begin
+ mux_value_storage_full <= csrbank0_mux_value0_r;
+ end
+ mux_value_re <= csrbank0_mux_value0_re;
+ if (csrbank0_trigger_enable0_re) begin
+ trigger_enable_storage_full <= csrbank0_trigger_enable0_r;
+ end
+ trigger_enable_re <= csrbank0_trigger_enable0_re;
+ if (csrbank0_trigger_mem_mask0_re) begin
+ trigger_mem_mask_storage_full[1:0] <= csrbank0_trigger_mem_mask0_r;
+ end
+ trigger_mem_mask_re <= csrbank0_trigger_mem_mask0_re;
+ if (csrbank0_trigger_mem_value0_re) begin
+ trigger_mem_value_storage_full[1:0] <= csrbank0_trigger_mem_value0_r;
+ end
+ trigger_mem_value_re <= csrbank0_trigger_mem_value0_re;
+ if (csrbank0_subsampler_value1_re) begin
+ subsampler_value_storage_full[15:8] <= csrbank0_subsampler_value1_r;
+ end
+ if (csrbank0_subsampler_value0_re) begin
+ subsampler_value_storage_full[7:0] <= csrbank0_subsampler_value0_r;
+ end
+ subsampler_value_re <= csrbank0_subsampler_value0_re;
+ if (csrbank0_storage_enable0_re) begin
+ storage_enable_storage_full <= csrbank0_storage_enable0_r;
+ end
+ storage_enable_re <= csrbank0_storage_enable0_re;
+ if (csrbank0_storage_length1_re) begin
+ storage_length_storage_full[8] <= csrbank0_storage_length1_r;
+ end
+ if (csrbank0_storage_length0_re) begin
+ storage_length_storage_full[7:0] <= csrbank0_storage_length0_r;
+ end
+ storage_length_re <= csrbank0_storage_length0_re;
+ if (csrbank0_storage_offset1_re) begin
+ storage_offset_storage_full[8] <= csrbank0_storage_offset1_r;
+ end
+ if (csrbank0_storage_offset0_re) begin
+ storage_offset_storage_full[7:0] <= csrbank0_storage_offset0_r;
+ end
+ storage_offset_re <= csrbank0_storage_offset0_re;
+ interface1_bank_bus_dat_r <= 1'd0;
+ if (csrbank1_sel) begin
+ case (interface1_bank_bus_adr[3:0])
+ 1'd0: begin
+ interface1_bank_bus_dat_r <= usbtestsoc_usbtestsoc_reset_reset_w;
+ end
+ 1'd1: begin
+ interface1_bank_bus_dat_r <= csrbank1_scratch3_w;
+ end
+ 2'd2: begin
+ interface1_bank_bus_dat_r <= csrbank1_scratch2_w;
+ end
+ 2'd3: begin
+ interface1_bank_bus_dat_r <= csrbank1_scratch1_w;
+ end
+ 3'd4: begin
+ interface1_bank_bus_dat_r <= csrbank1_scratch0_w;
+ end
+ 3'd5: begin
+ interface1_bank_bus_dat_r <= csrbank1_bus_errors3_w;
+ end
+ 3'd6: begin
+ interface1_bank_bus_dat_r <= csrbank1_bus_errors2_w;
+ end
+ 3'd7: begin
+ interface1_bank_bus_dat_r <= csrbank1_bus_errors1_w;
+ end
+ 4'd8: begin
+ interface1_bank_bus_dat_r <= csrbank1_bus_errors0_w;
+ end
+ endcase
+ end
+ if (csrbank1_scratch3_re) begin
+ usbtestsoc_usbtestsoc_storage_full[31:24] <= csrbank1_scratch3_r;
+ end
+ if (csrbank1_scratch2_re) begin
+ usbtestsoc_usbtestsoc_storage_full[23:16] <= csrbank1_scratch2_r;
+ end
+ if (csrbank1_scratch1_re) begin
+ usbtestsoc_usbtestsoc_storage_full[15:8] <= csrbank1_scratch1_r;
+ end
+ if (csrbank1_scratch0_re) begin
+ usbtestsoc_usbtestsoc_storage_full[7:0] <= csrbank1_scratch0_r;
+ end
+ usbtestsoc_usbtestsoc_re <= csrbank1_scratch0_re;
+ sel_r <= sel;
+ interface2_bank_bus_dat_r <= 1'd0;
+ if (csrbank2_sel) begin
+ case (interface2_bank_bus_adr[5:0])
+ 1'd0: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit19_w;
+ end
+ 1'd1: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit18_w;
+ end
+ 2'd2: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit17_w;
+ end
+ 2'd3: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit16_w;
+ end
+ 3'd4: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit15_w;
+ end
+ 3'd5: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit14_w;
+ end
+ 3'd6: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit13_w;
+ end
+ 3'd7: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit12_w;
+ end
+ 4'd8: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit11_w;
+ end
+ 4'd9: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit10_w;
+ end
+ 4'd10: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit9_w;
+ end
+ 4'd11: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit8_w;
+ end
+ 4'd12: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit7_w;
+ end
+ 4'd13: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit6_w;
+ end
+ 4'd14: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit5_w;
+ end
+ 4'd15: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit4_w;
+ end
+ 5'd16: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit3_w;
+ end
+ 5'd17: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit2_w;
+ end
+ 5'd18: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit1_w;
+ end
+ 5'd19: begin
+ interface2_bank_bus_dat_r <= csrbank2_git_commit0_w;
+ end
+ 5'd20: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_platform7_w;
+ end
+ 5'd21: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_platform6_w;
+ end
+ 5'd22: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_platform5_w;
+ end
+ 5'd23: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_platform4_w;
+ end
+ 5'd24: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_platform3_w;
+ end
+ 5'd25: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_platform2_w;
+ end
+ 5'd26: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_platform1_w;
+ end
+ 5'd27: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_platform0_w;
+ end
+ 5'd28: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_target7_w;
+ end
+ 5'd29: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_target6_w;
+ end
+ 5'd30: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_target5_w;
+ end
+ 5'd31: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_target4_w;
+ end
+ 6'd32: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_target3_w;
+ end
+ 6'd33: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_target2_w;
+ end
+ 6'd34: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_target1_w;
+ end
+ 6'd35: begin
+ interface2_bank_bus_dat_r <= csrbank2_platform_target0_w;
+ end
+ endcase
+ end
+ interface3_bank_bus_dat_r <= 1'd0;
+ if (csrbank3_sel) begin
+ case (interface3_bank_bus_adr[0])
+ 1'd0: begin
+ interface3_bank_bus_dat_r <= csrbank3_in_w;
+ end
+ 1'd1: begin
+ interface3_bank_bus_dat_r <= csrbank3_out0_w;
+ end
+ endcase
+ end
+ if (csrbank3_out0_re) begin
+ io_storage_full[7:0] <= csrbank3_out0_r;
+ end
+ io_re <= csrbank3_out0_re;
+ interface4_bank_bus_dat_r <= 1'd0;
+ if (csrbank4_sel) begin
+ case (interface4_bank_bus_adr[1:0])
+ 1'd0: begin
+ interface4_bank_bus_dat_r <= csrbank4_bitbang0_w;
+ end
+ 1'd1: begin
+ interface4_bank_bus_dat_r <= csrbank4_miso_w;
+ end
+ 2'd2: begin
+ interface4_bank_bus_dat_r <= csrbank4_bitbang_en0_w;
+ end
+ endcase
+ end
+ if (csrbank4_bitbang0_re) begin
+ usbtestsoc_spiflash_bitbang_storage_full[3:0] <= csrbank4_bitbang0_r;
+ end
+ usbtestsoc_spiflash_bitbang_re <= csrbank4_bitbang0_re;
+ if (csrbank4_bitbang_en0_re) begin
+ usbtestsoc_spiflash_bitbang_en_storage_full <= csrbank4_bitbang_en0_r;
+ end
+ usbtestsoc_spiflash_bitbang_en_re <= csrbank4_bitbang_en0_re;
+ interface5_bank_bus_dat_r <= 1'd0;
+ if (csrbank5_sel) begin
+ case (interface5_bank_bus_adr[4:0])
+ 1'd0: begin
+ interface5_bank_bus_dat_r <= csrbank5_load3_w;
+ end
+ 1'd1: begin
+ interface5_bank_bus_dat_r <= csrbank5_load2_w;
+ end
+ 2'd2: begin
+ interface5_bank_bus_dat_r <= csrbank5_load1_w;
+ end
+ 2'd3: begin
+ interface5_bank_bus_dat_r <= csrbank5_load0_w;
+ end
+ 3'd4: begin
+ interface5_bank_bus_dat_r <= csrbank5_reload3_w;
+ end
+ 3'd5: begin
+ interface5_bank_bus_dat_r <= csrbank5_reload2_w;
+ end
+ 3'd6: begin
+ interface5_bank_bus_dat_r <= csrbank5_reload1_w;
+ end
+ 3'd7: begin
+ interface5_bank_bus_dat_r <= csrbank5_reload0_w;
+ end
+ 4'd8: begin
+ interface5_bank_bus_dat_r <= csrbank5_en0_w;
+ end
+ 4'd9: begin
+ interface5_bank_bus_dat_r <= usbtestsoc_usbtestsoc_update_value_w;
+ end
+ 4'd10: begin
+ interface5_bank_bus_dat_r <= csrbank5_value3_w;
+ end
+ 4'd11: begin
+ interface5_bank_bus_dat_r <= csrbank5_value2_w;
+ end
+ 4'd12: begin
+ interface5_bank_bus_dat_r <= csrbank5_value1_w;
+ end
+ 4'd13: begin
+ interface5_bank_bus_dat_r <= csrbank5_value0_w;
+ end
+ 4'd14: begin
+ interface5_bank_bus_dat_r <= usbtestsoc_usbtestsoc_eventmanager_status_w;
+ end
+ 4'd15: begin
+ interface5_bank_bus_dat_r <= usbtestsoc_usbtestsoc_eventmanager_pending_w;
+ end
+ 5'd16: begin
+ interface5_bank_bus_dat_r <= csrbank5_ev_enable0_w;
+ end
+ endcase
+ end
+ if (csrbank5_load3_re) begin
+ usbtestsoc_usbtestsoc_load_storage_full[31:24] <= csrbank5_load3_r;
+ end
+ if (csrbank5_load2_re) begin
+ usbtestsoc_usbtestsoc_load_storage_full[23:16] <= csrbank5_load2_r;
+ end
+ if (csrbank5_load1_re) begin
+ usbtestsoc_usbtestsoc_load_storage_full[15:8] <= csrbank5_load1_r;
+ end
+ if (csrbank5_load0_re) begin
+ usbtestsoc_usbtestsoc_load_storage_full[7:0] <= csrbank5_load0_r;
+ end
+ usbtestsoc_usbtestsoc_load_re <= csrbank5_load0_re;
+ if (csrbank5_reload3_re) begin
+ usbtestsoc_usbtestsoc_reload_storage_full[31:24] <= csrbank5_reload3_r;
+ end
+ if (csrbank5_reload2_re) begin
+ usbtestsoc_usbtestsoc_reload_storage_full[23:16] <= csrbank5_reload2_r;
+ end
+ if (csrbank5_reload1_re) begin
+ usbtestsoc_usbtestsoc_reload_storage_full[15:8] <= csrbank5_reload1_r;
+ end
+ if (csrbank5_reload0_re) begin
+ usbtestsoc_usbtestsoc_reload_storage_full[7:0] <= csrbank5_reload0_r;
+ end
+ usbtestsoc_usbtestsoc_reload_re <= csrbank5_reload0_re;
+ if (csrbank5_en0_re) begin
+ usbtestsoc_usbtestsoc_en_storage_full <= csrbank5_en0_r;
+ end
+ usbtestsoc_usbtestsoc_en_re <= csrbank5_en0_re;
+ if (csrbank5_ev_enable0_re) begin
+ usbtestsoc_usbtestsoc_eventmanager_storage_full <= csrbank5_ev_enable0_r;
+ end
+ usbtestsoc_usbtestsoc_eventmanager_re <= csrbank5_ev_enable0_re;
+ if (sys_rst) begin
+ usbtestsoc_usbtestsoc_storage_full <= 32'd305419896;
+ usbtestsoc_usbtestsoc_re <= 1'd0;
+ usbtestsoc_usbtestsoc_bus_errors <= 32'd0;
+ usbtestsoc_usbtestsoc_adr <= 14'd0;
+ usbtestsoc_usbtestsoc_we <= 1'd0;
+ usbtestsoc_usbtestsoc_dat_w <= 8'd0;
+ usbtestsoc_usbtestsoc_bus_wishbone_dat_r <= 32'd0;
+ usbtestsoc_usbtestsoc_bus_wishbone_ack <= 1'd0;
+ usbtestsoc_usbtestsoc_counter <= 2'd0;
+ usbtestsoc_usbtestsoc_load_storage_full <= 32'd0;
+ usbtestsoc_usbtestsoc_load_re <= 1'd0;
+ usbtestsoc_usbtestsoc_reload_storage_full <= 32'd0;
+ usbtestsoc_usbtestsoc_reload_re <= 1'd0;
+ usbtestsoc_usbtestsoc_en_storage_full <= 1'd0;
+ usbtestsoc_usbtestsoc_en_re <= 1'd0;
+ usbtestsoc_usbtestsoc_value_status <= 32'd0;
+ usbtestsoc_usbtestsoc_zero_pending <= 1'd0;
+ usbtestsoc_usbtestsoc_zero_old_trigger <= 1'd0;
+ usbtestsoc_usbtestsoc_eventmanager_storage_full <= 1'd0;
+ usbtestsoc_usbtestsoc_eventmanager_re <= 1'd0;
+ usbtestsoc_usbtestsoc_value <= 32'd0;
+ usbtestsoc_spiflash_bus_ack <= 1'd0;
+ usbtestsoc_spiflash_bitbang_storage_full <= 4'd0;
+ usbtestsoc_spiflash_bitbang_re <= 1'd0;
+ usbtestsoc_spiflash_bitbang_en_storage_full <= 1'd0;
+ usbtestsoc_spiflash_bitbang_en_re <= 1'd0;
+ usbtestsoc_spiflash_cs_n1 <= 1'd1;
+ usbtestsoc_spiflash_clk1 <= 1'd0;
+ usbtestsoc_spiflash_sr <= 32'd0;
+ usbtestsoc_spiflash_i <= 1'd0;
+ usbtestsoc_spiflash_miso1 <= 1'd0;
+ usbtestsoc_spiflash_counter <= 8'd0;
+ serial_tx <= 1'd1;
+ uartwishbonebridge_sink_ready <= 1'd0;
+ uartwishbonebridge_uart_clk_txen <= 1'd0;
+ uartwishbonebridge_phase_accumulator_tx <= 32'd0;
+ uartwishbonebridge_tx_reg <= 8'd0;
+ uartwishbonebridge_tx_bitcount <= 4'd0;
+ uartwishbonebridge_tx_busy <= 1'd0;
+ uartwishbonebridge_source_valid <= 1'd0;
+ uartwishbonebridge_source_payload_data <= 8'd0;
+ uartwishbonebridge_uart_clk_rxen <= 1'd0;
+ uartwishbonebridge_phase_accumulator_rx <= 32'd0;
+ uartwishbonebridge_rx_r <= 1'd0;
+ uartwishbonebridge_rx_reg <= 8'd0;
+ uartwishbonebridge_rx_bitcount <= 4'd0;
+ uartwishbonebridge_rx_busy <= 1'd0;
+ uartwishbonebridge_count <= 21'd1600000;
+ usbdevice_tx_pkt_start <= 1'd0;
+ usbdevice_tx_pid <= 4'd0;
+ usbdevice_usbfsrx_line_state_phase <= 2'd0;
+ usbdevice_usbfsrx_line_state_valid <= 1'd0;
+ usbdevice_usbfsrx_line_state_dj1 <= 1'd0;
+ usbdevice_usbfsrx_line_state_dk1 <= 1'd0;
+ usbdevice_usbfsrx_line_state_se01 <= 1'd0;
+ usbdevice_usbfsrx_line_state_se11 <= 1'd0;
+ usbdevice_usbfsrx_nrzi_o_valid1 <= 1'd0;
+ usbdevice_usbfsrx_nrzi_o_data1 <= 1'd0;
+ usbdevice_usbfsrx_nrzi_o_se0 <= 1'd0;
+ usbdevice_usbfsrx_bitstuff_o_valid <= 1'd0;
+ usbdevice_usbfsrx_bitstuff_o_data <= 1'd0;
+ usbdevice_usbfsrx_bitstuff_o_se0 <= 1'd0;
+ usbdevice_usbfsrx_bitstuff_o_bitstuff_error <= 1'd0;
+ usbdevice_usbfsrx_valid <= 1'd0;
+ usbdevice_usbfsrx_data <= 1'd0;
+ usbdevice_usbfsrx_se0 <= 1'd0;
+ usbdevice_usbfsrx_bitstuff_error <= 1'd0;
+ usbdevice_usbfsrx_o_pkt_start0 <= 1'd0;
+ usbdevice_usbfsrx_o_pkt_active <= 1'd0;
+ usbdevice_usbfsrx_o_pkt_end0 <= 1'd0;
+ usbdevice_usbfsrx_pkt_active1 <= 1'd0;
+ usbdevice_usbfsrx_pkt_end1 <= 1'd0;
+ usbdevice_usbfsrx_pid_shifter_shift_reg <= 9'd0;
+ usbdevice_usbfsrx_pid_shifter_o_put <= 1'd0;
+ usbdevice_usbfsrx_tok_shifter_shift_reg <= 17'd0;
+ usbdevice_usbfsrx_tok_shifter_o_put <= 1'd0;
+ usbdevice_usbfsrx_tok_crc5_crc <= 5'd0;
+ usbdevice_usbfsrx_tok_crc5_o_crc_good <= 1'd0;
+ usbdevice_usbfsrx_data_shifter_shift_reg <= 9'd0;
+ usbdevice_usbfsrx_data_shifter_o_put <= 1'd0;
+ usbdevice_usbfsrx_data_crc16_crc <= 16'd0;
+ usbdevice_usbfsrx_data_crc16_o_crc_good <= 1'd0;
+ usbdevice_usbfsrx_pkt_bitstuff_good <= 1'd0;
+ usbdevice_usbfsrx_o_pkt_data_put <= 1'd0;
+ usbdevice_usbfsrx_crc16_good <= 1'd0;
+ usbdevice_usbfsrx_o_pkt_start1 <= 1'd0;
+ usbdevice_usbfsrx_o_pkt_pid <= 4'd0;
+ usbdevice_usbfsrx_o_pkt_token_payload <= 11'd0;
+ usbdevice_usbfsrx_o_pkt_data <= 8'd0;
+ usbdevice_usbfsrx_o_pkt_good <= 1'd0;
+ usbdevice_usbfsrx_o_pkt_end1 <= 1'd0;
+ usbdevice_usbfstx_sync_shifter_shifter <= 9'd0;
+ usbdevice_usbfstx_sync_shifter_not_empty <= 1'd0;
+ usbdevice_usbfstx_pid_shifter_shifter <= 9'd0;
+ usbdevice_usbfstx_pid_shifter_not_empty <= 1'd0;
+ usbdevice_usbfstx_data_shifter_shifter <= 9'd0;
+ usbdevice_usbfstx_data_shifter_not_empty <= 1'd0;
+ usbdevice_usbfstx_crc <= 16'd0;
+ usbdevice_usbfstx_crc16_shifter_shifter <= 17'd0;
+ usbdevice_usbfstx_crc16_shifter_not_empty <= 1'd0;
+ usbdevice_usbfstx_pid_is_data <= 1'd0;
+ usbdevice_usbfstx_mux_stuff_oe <= 1'd0;
+ usbdevice_usbfstx_mux_stuff_data <= 1'd0;
+ usbdevice_usbfstx_mux_stuff_se0 <= 1'd0;
+ usbdevice_usbfstx_mux_stuff_bit_strobe <= 1'd0;
+ usbdevice_usbfstx_bitstuffer_o_data <= 1'd0;
+ usbdevice_usbfstx_bitstuffer_o_se0 <= 1'd0;
+ usbdevice_usbfstx_bitstuffer_o_oe <= 1'd0;
+ usbdevice_usbfstx_nrzi_o_usbp <= 1'd0;
+ usbdevice_usbfstx_nrzi_o_usbn <= 1'd0;
+ usbdevice_usbfstx_nrzi_o_oe <= 1'd0;
+ usbdevice_usbfstx_o_data_get <= 1'd0;
+ usbdevice_usbfstx_o_usbp <= 1'd0;
+ usbdevice_usbfstx_o_usbn <= 1'd0;
+ usbdevice_usbfstx_o_oe <= 1'd0;
+ usbdevice_current_token <= 4'd0;
+ usbdevice_current_endp <= 4'd0;
+ usbdevice_valid_request_token <= 1'd0;
+ io_storage_full <= 8'd0;
+ io_re <= 1'd0;
+ mux_value_storage_full <= 1'd0;
+ mux_value_re <= 1'd0;
+ trigger_enable_storage_full <= 1'd0;
+ trigger_enable_re <= 1'd0;
+ trigger_mem_mask_storage_full <= 2'd0;
+ trigger_mem_mask_re <= 1'd0;
+ trigger_mem_value_storage_full <= 2'd0;
+ trigger_mem_value_re <= 1'd0;
+ trigger_mem_graycounter0_q <= 5'd0;
+ trigger_mem_graycounter0_q_binary <= 5'd0;
+ trigger_count <= 5'd16;
+ subsampler_value_storage_full <= 16'd0;
+ subsampler_value_re <= 1'd0;
+ storage_enable_storage_full <= 1'd0;
+ storage_enable_re <= 1'd0;
+ storage_length_storage_full <= 9'd0;
+ storage_length_re <= 1'd0;
+ storage_offset_storage_full <= 9'd0;
+ storage_offset_re <= 1'd0;
+ storage_cdc_graycounter1_q <= 3'd0;
+ storage_cdc_graycounter1_q_binary <= 3'd0;
+ uartwishbonebridge_state <= 3'd0;
+ rxclockdatarecovery_state <= 3'd0;
+ rxnrzidecoder_state <= 1'd0;
+ rxbitstuffremover_state <= 3'd0;
+ rxpacketdecode_state <= 3'd0;
+ fsm_state <= 3'd0;
+ txbitstuffer_state <= 3'd0;
+ txnrziencoder_state <= 3'd0;
+ fsm0_state <= 3'd0;
+ fsm1_state <= 3'd0;
+ slave_sel_r <= 2'd0;
+ count <= 17'd65536;
+ interface0_bank_bus_dat_r <= 8'd0;
+ interface1_bank_bus_dat_r <= 8'd0;
+ sel_r <= 1'd0;
+ interface2_bank_bus_dat_r <= 8'd0;
+ interface3_bank_bus_dat_r <= 8'd0;
+ interface4_bank_bus_dat_r <= 8'd0;
+ interface5_bank_bus_dat_r <= 8'd0;
+ end
+ multiregimpl0_regs0 <= serial_rx;
+ multiregimpl0_regs1 <= multiregimpl0_regs0;
+ multiregimpl1_regs0 <= usbdevice_usb_p_rx;
+ multiregimpl1_regs1 <= multiregimpl1_regs0;
+ multiregimpl1_regs2 <= multiregimpl1_regs1;
+ multiregimpl2_regs0 <= usbdevice_usb_n_rx;
+ multiregimpl2_regs1 <= multiregimpl2_regs0;
+ multiregimpl2_regs2 <= multiregimpl2_regs1;
+ multiregimpl3_regs0 <= io_input;
+ multiregimpl3_regs1 <= multiregimpl3_regs0;
+ multiregimpl6_regs0 <= trigger_done0;
+ multiregimpl6_regs1 <= multiregimpl6_regs0;
+ multiregimpl8_regs0 <= trigger_mem_graycounter1_q;
+ multiregimpl8_regs1 <= multiregimpl8_regs0;
+ multiregimpl13_regs0 <= storage_done0;
+ multiregimpl13_regs1 <= multiregimpl13_regs0;
+ multiregimpl14_regs0 <= storage_cdc_graycounter0_q;
+ multiregimpl14_regs1 <= multiregimpl14_regs0;
+end
+
+reg [7:0] mem[0:10];
+reg [3:0] memadr;
+always @(posedge sys_clk) begin
+ memadr <= adr;
+end
+
+assign dat_r = mem[memadr];
+
+initial begin
+ $readmemh("mem.init", mem);
+end
+
+SB_PLL40_CORE #(
+ .DELAY_ADJUSTMENT_MODE_FEEDBACK("FIXED"),
+ .DELAY_ADJUSTMENT_MODE_RELATIVE("FIXED"),
+ .DIVF(6'd47),
+ .DIVQ(3'd4),
+ .DIVR(1'd0),
+ .ENABLE_ICEGATE(1'd0),
+ .FDA_FEEDBACK(1'd0),
+ .FDA_RELATIVE(1'd0),
+ .FEEDBACK_PATH("SIMPLE"),
+ .FILTER_RANGE(1'd1),
+ .PLLOUT_SELECT("GENCLK"),
+ .SHIFTREG_DIV_MODE(1'd0)
+) SB_PLL40_CORE (
+ .BYPASS(1'd0),
+ .REFERENCECLK(clk16),
+ .RESETB(1'd1),
+ .PLLOUTCORE(usb_48_clk)
+);
+
+SB_IO #(
+ .PIN_TYPE(6'b101001),
+ .PULLUP(1'd0)
+) SB_IO (
+ .D_OUT_0(usbdevice_usb_p_tx),
+ .OUTPUT_ENABLE(usbdevice_usb_tx_en),
+ .PACKAGE_PIN(usb_d_p),
+ .D_IN_0(usbdevice_usb_p_rx_io)
+);
+
+SB_IO #(
+ .PIN_TYPE(6'b101001),
+ .PULLUP(1'd0)
+) SB_IO_1 (
+ .D_OUT_0(usbdevice_usb_n_tx),
+ .OUTPUT_ENABLE(usbdevice_usb_tx_en),
+ .PACKAGE_PIN(usb_d_n),
+ .D_IN_0(usbdevice_usb_n_rx_io)
+);
+
+reg [5:0] storage[0:15];
+reg [3:0] memadr_1;
+reg [3:0] memadr_2;
+always @(posedge sys_clk) begin
+ if (trigger_mem_wrport_we)
+ storage[trigger_mem_wrport_adr] <= trigger_mem_wrport_dat_w;
+ memadr_1 <= trigger_mem_wrport_adr;
+end
+
+always @(posedge scope_clk) begin
+ memadr_2 <= trigger_mem_rdport_adr;
+end
+
+assign trigger_mem_wrport_dat_r = storage[memadr_1];
+assign trigger_mem_rdport_dat_r = storage[memadr_2];
+
+reg [3:0] storage_1[0:255];
+reg [3:0] memdat;
+reg [3:0] memdat_1;
+always @(posedge scope_clk) begin
+ if (storage_mem_wrport_we)
+ storage_1[storage_mem_wrport_adr] <= storage_mem_wrport_dat_w;
+ memdat <= storage_1[storage_mem_wrport_adr];
+end
+
+always @(posedge scope_clk) begin
+ if (storage_mem_rdport_re)
+ memdat_1 <= storage_1[storage_mem_rdport_adr];
+end
+
+assign storage_mem_wrport_dat_r = memdat;
+assign storage_mem_rdport_dat_r = memdat_1;
+
+reg [3:0] storage_2[0:3];
+reg [1:0] memadr_3;
+reg [1:0] memadr_4;
+always @(posedge scope_clk) begin
+ if (storage_cdc_wrport_we)
+ storage_2[storage_cdc_wrport_adr] <= storage_cdc_wrport_dat_w;
+ memadr_3 <= storage_cdc_wrport_adr;
+end
+
+always @(posedge sys_clk) begin
+ memadr_4 <= storage_cdc_rdport_adr;
+end
+
+assign storage_cdc_wrport_dat_r = storage_2[memadr_3];
+assign storage_cdc_rdport_dat_r = storage_2[memadr_4];
+
+SB_DFFS SB_DFFS(
+ .C(por_clk),
+ .D(1'd0),
+ .S(usbtestsoc_crg_reset),
+ .Q(rst1)
+);
+
+SB_DFFS SB_DFFS_1(
+ .C(por_clk),
+ .D(rst1),
+ .S(usbtestsoc_crg_reset),
+ .Q(por_rst)
+);
+
+endmodule