亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? can_bsp.v

?? nios總線與現(xiàn)場總線can的總線橋接口IP程序
?? V
?? 第 1 頁 / 共 5 頁
字號:
  .extended_mode(extended_mode),    /* This section is for BASIC and EXTENDED mode */  /* Acceptance code register */  .acceptance_code_0(acceptance_code_0),  /* Acceptance mask register */  .acceptance_mask_0(acceptance_mask_0),  /* End: This section is for BASIC and EXTENDED mode */    /* This section is for EXTENDED mode */  /* Acceptance code register */  .acceptance_code_1(acceptance_code_1),  .acceptance_code_2(acceptance_code_2),  .acceptance_code_3(acceptance_code_3),  /* Acceptance mask register */  .acceptance_mask_1(acceptance_mask_1),  .acceptance_mask_2(acceptance_mask_2),  .acceptance_mask_3(acceptance_mask_3),  /* End: This section is for EXTENDED mode */  .go_rx_crc_lim(go_rx_crc_lim),  .go_rx_inter(go_rx_inter),  .go_error_frame(go_error_frame),    .data0(tmp_fifo[0]),  .data1(tmp_fifo[1]),  .rtr1(rtr1),  .rtr2(rtr2),  .ide(ide),  .no_byte0(no_byte0),  .no_byte1(no_byte1),  .id_ok(id_ok));assign header_len[2:0] = extended_mode ? (ide? (3'h5) : (3'h3)) : 3'h2;assign storing_header = header_cnt < header_len;assign limited_data_len_minus1[3:0] = remote_rq? 4'hf : ((data_len < 4'h8)? (data_len -1'b1) : 4'h7);   // - 1 because counter counts from 0assign reset_wr_fifo = (data_cnt == (limited_data_len_minus1 + {1'b0, header_len})) || reset_mode;assign err = form_err | stuff_err | bit_err | ack_err | form_err_latched | stuff_err_latched | bit_err_latched | ack_err_latched | crc_err;// Write enable signal for 64-byte rx fifoalways @ (posedge clk or posedge rst)begin  if (rst)    wr_fifo <= 1'b0;  else if (reset_wr_fifo)    wr_fifo <=#Tp 1'b0;  else if (go_rx_inter & id_ok & (~error_frame_ended) & ((~tx_state) | self_rx_request))    wr_fifo <=#Tp 1'b1;end// Header counter. Header length depends on the mode of operation and frame format.always @ (posedge clk or posedge rst)begin  if (rst)    header_cnt <= 3'h0;  else if (reset_wr_fifo)    header_cnt <=#Tp 3'h0;  else if (wr_fifo & storing_header)    header_cnt <=#Tp header_cnt + 1'h1;end// Data counter. Length of the data is limited to 8 bytes.always @ (posedge clk or posedge rst)begin  if (rst)    data_cnt <= 4'h0;  else if (reset_wr_fifo)    data_cnt <=#Tp 4'h0;  else if (wr_fifo)    data_cnt <=#Tp data_cnt + 4'h1;end// Multiplexing data that is stored to 64-byte fifo depends on the mode of operation and frame formatalways @ (extended_mode or ide or data_cnt or header_cnt or  header_len or           storing_header or id or rtr1 or rtr2 or data_len or          tmp_fifo[0] or tmp_fifo[2] or tmp_fifo[4] or tmp_fifo[6] or           tmp_fifo[1] or tmp_fifo[3] or tmp_fifo[5] or tmp_fifo[7])begin  casex ({storing_header, extended_mode, ide, header_cnt}) /* synthesis parallel_case */     6'b1_1_1_000  : data_for_fifo = {1'b1, rtr2, 2'h0, data_len};  // extended mode, extended format header    6'b1_1_1_001  : data_for_fifo = id[28:21];                     // extended mode, extended format header    6'b1_1_1_010  : data_for_fifo = id[20:13];                     // extended mode, extended format header    6'b1_1_1_011  : data_for_fifo = id[12:5];                      // extended mode, extended format header    6'b1_1_1_100  : data_for_fifo = {id[4:0], 3'h0};               // extended mode, extended format header    6'b1_1_0_000  : data_for_fifo = {1'b0, rtr1, 2'h0, data_len};  // extended mode, standard format header    6'b1_1_0_001  : data_for_fifo = id[10:3];                      // extended mode, standard format header    6'b1_1_0_010  : data_for_fifo = {id[2:0], rtr1, 4'h0};         // extended mode, standard format header    6'b1_0_x_000  : data_for_fifo = id[10:3];                      // normal mode                    header    6'b1_0_x_001  : data_for_fifo = {id[2:0], rtr1, data_len};     // normal mode                    header    default       : data_for_fifo = tmp_fifo[data_cnt - {1'b0, header_len}]; // data   endcaseend// Instantiation of the RX fifo modulecan_fifo i_can_fifo(   .clk(clk),  .rst(rst),  .wr(wr_fifo),  .data_in(data_for_fifo),  .addr(addr[5:0]),  .data_out(data_out),  .fifo_selected(fifo_selected),  .reset_mode(reset_mode),  .release_buffer(release_buffer),  .extended_mode(extended_mode),  .overrun(overrun),  .info_empty(info_empty),  .info_cnt(rx_message_counter)`ifdef CAN_BIST  ,  .mbist_si_i(mbist_si_i),  .mbist_so_o(mbist_so_o),  .mbist_ctrl_i(mbist_ctrl_i)`endif);// Transmitting error frame.always @ (posedge clk or posedge rst)begin  if (rst)    error_frame <= 1'b0;//  else if (reset_mode || error_frame_ended || go_overload_frame)  else if (set_reset_mode || error_frame_ended || go_overload_frame)    error_frame <=#Tp 1'b0;  else if (go_error_frame)    error_frame <=#Tp 1'b1;endalways @ (posedge clk or posedge rst)begin  if (rst)    error_cnt1 <= 3'd0;  else if (error_frame_ended | go_error_frame | go_overload_frame)    error_cnt1 <=#Tp 3'd0;  else if (error_frame & tx_point & (error_cnt1 < 3'd7))    error_cnt1 <=#Tp error_cnt1 + 1'b1;endassign error_flag_over = ((~node_error_passive) & sample_point & (error_cnt1 == 3'd7) | node_error_passive  & sample_point & (passive_cnt == 3'h6)) & (~enable_error_cnt2);always @ (posedge clk or posedge rst)begin  if (rst)    error_flag_over_latched <= 1'b0;  else if (error_frame_ended | go_error_frame | go_overload_frame)    error_flag_over_latched <=#Tp 1'b0;  else if (error_flag_over)    error_flag_over_latched <=#Tp 1'b1;endalways @ (posedge clk or posedge rst)begin  if (rst)    enable_error_cnt2 <= 1'b0;  else if (error_frame_ended | go_error_frame | go_overload_frame)    enable_error_cnt2 <=#Tp 1'b0;  else if (error_frame & (error_flag_over & sampled_bit))    enable_error_cnt2 <=#Tp 1'b1;endalways @ (posedge clk or posedge rst)begin  if (rst)    error_cnt2 <= 3'd0;  else if (error_frame_ended | go_error_frame | go_overload_frame)    error_cnt2 <=#Tp 3'd0;  else if (enable_error_cnt2 & tx_point)    error_cnt2 <=#Tp error_cnt2 + 1'b1;endalways @ (posedge clk or posedge rst)begin  if (rst)    delayed_dominant_cnt <= 3'h0;  else if (enable_error_cnt2 | go_error_frame | enable_overload_cnt2 | go_overload_frame)    delayed_dominant_cnt <=#Tp 3'h0;  else if (sample_point & (~sampled_bit) & ((error_cnt1 == 3'd7) | (overload_cnt1 == 3'd7)))    delayed_dominant_cnt <=#Tp delayed_dominant_cnt + 1'b1;end// passive_cntalways @ (posedge clk or posedge rst)begin  if (rst)    passive_cnt <= 3'h1;  else if (error_frame_ended | go_error_frame | go_overload_frame | first_compare_bit)    passive_cnt <=#Tp 3'h1;  else if (sample_point & (passive_cnt < 3'h6))    begin      if (error_frame & (~enable_error_cnt2) & (sampled_bit == sampled_bit_q))        passive_cnt <=#Tp passive_cnt + 1'b1;      else        passive_cnt <=#Tp 3'h1;    endend// When comparing 6 equal bits, first is always equalalways @ (posedge clk or posedge rst)begin  if (rst)    first_compare_bit <= 1'b0;  else if (go_error_frame)    first_compare_bit <=#Tp 1'b1;  else if (sample_point)    first_compare_bit <= 1'b0;end// Transmitting overload frame.always @ (posedge clk or posedge rst)begin  if (rst)    overload_frame <= 1'b0;  else if (overload_frame_ended | go_error_frame)    overload_frame <=#Tp 1'b0;  else if (go_overload_frame)    overload_frame <=#Tp 1'b1;endalways @ (posedge clk or posedge rst)begin  if (rst)    overload_cnt1 <= 3'd0;  else if (overload_frame_ended | go_error_frame | go_overload_frame)    overload_cnt1 <=#Tp 3'd0;  else if (overload_frame & tx_point & (overload_cnt1 < 3'd7))    overload_cnt1 <=#Tp overload_cnt1 + 1'b1;endassign overload_flag_over = sample_point & (overload_cnt1 == 3'd7) & (~enable_overload_cnt2);always @ (posedge clk or posedge rst)begin  if (rst)    enable_overload_cnt2 <= 1'b0;  else if (overload_frame_ended | go_error_frame | go_overload_frame)    enable_overload_cnt2 <=#Tp 1'b0;  else if (overload_frame & (overload_flag_over & sampled_bit))    enable_overload_cnt2 <=#Tp 1'b1;endalways @ (posedge clk or posedge rst)begin  if (rst)    overload_cnt2 <= 3'd0;  else if (overload_frame_ended | go_error_frame | go_overload_frame)    overload_cnt2 <=#Tp 3'd0;  else if (enable_overload_cnt2 & tx_point)    overload_cnt2 <=#Tp overload_cnt2 + 1'b1;endalways @ (posedge clk or posedge rst)begin  if (rst)    overload_request_cnt <= 2'b0;  else if (go_error_frame | go_rx_id1)    overload_request_cnt <=#Tp 2'b0;  else if (overload_request & overload_frame)    overload_request_cnt <=#Tp overload_request_cnt + 1'b1;endalways @ (posedge clk or posedge rst)begin  if (rst)    overload_frame_blocked <= 1'b0;  else if (go_error_frame | go_rx_id1)    overload_frame_blocked <=#Tp 1'b0;  else if (overload_request & overload_frame & overload_request_cnt == 2'h2)   // This is a second sequential overload_request    overload_frame_blocked <=#Tp 1'b1;endassign send_ack = (~tx_state) & rx_ack & (~err) & (~listen_only_mode);always @ (reset_mode or node_bus_off or tx_state or go_tx or bit_de_stuff_tx or tx_bit or tx_q or          send_ack or go_overload_frame or overload_frame or overload_cnt1 or          go_error_frame or error_frame or error_cnt1 or node_error_passive)begin  if (reset_mode | node_bus_off)                                                // Reset or node_bus_off    tx_next = 1'b1;  else    begin      if (go_error_frame | error_frame)                                         // Transmitting error frame        begin          if (error_cnt1 < 3'd6)            begin              if (node_error_passive)                tx_next = 1'b1;              else                tx_next = 1'b0;            end          else            tx_next = 1'b1;        end      else if (go_overload_frame | overload_frame)                              // Transmitting overload frame        begin          if (overload_cnt1 < 3'd6)            tx_next = 1'b0;          else            tx_next = 1'b1;        end      else if (go_tx | tx_state)                                                        // Transmitting message        tx_next = ((~bit_de_stuff_tx) & tx_bit) | (bit_de_stuff_tx & (~tx_q));      else if (send_ack)                                                        // Acknowledge        tx_next = 1'b0;      else        tx_next = 1'b1;    endendalways @ (posedge clk or posedge rst)begin  if (rst)    tx <= 1'b1;  else if (reset_mode)    tx <= 1'b1;  else if (tx_point)    tx <=#Tp tx_next;endalways @ (posedge clk or posedge rst)begin  if (rst)    tx_q <=#Tp 1'b0;  else if (reset_mode)    tx_q <=#Tp 1'b0;  else if (tx_point)    tx_q <=#Tp tx & (~go_early_tx_latched);end/* Delayed tx point */always @ (posedge clk or posedge rst)begin  if (rst)    tx_point_q <=#Tp 1'b0;  else if (reset_mode)    tx_point_q <=#Tp 1'b0;  else    tx_point_q <=#Tp tx_point;end/* Changing bit order from [7:0] to [0:7] */can_ibo i_ibo_tx_data_0  (.di(tx_data_0),  .do(r_tx_data_0));can_ibo i_ibo_tx_data_1  (.di(tx_data_1),  .do(r_tx_data_1));can_ibo i_ibo_tx_data_2  (.di(tx_data_2),  .do(r_tx_data_2));can_ibo i_ibo_tx_data_3  (.di(tx_data_3),  .do(r_tx_data_3));can_ibo i_ibo_tx_data_4  (.di(tx_data_4),  .do(r_tx_data_4));can_ibo i_ibo_tx_data_5  (.di(tx_data_5),  .do(r_tx_data_5));can_ibo i_ibo_tx_data_6  (.di(tx_data_6),  .do(r_tx_data_6));can_ibo i_ibo_tx_data_7  (.di(tx_data_7),  .do(r_tx_data_7));can_ibo i_ibo_tx_data_8  (.di(tx_data_8),  .do(r_tx_data_8));can_ibo i_ibo_tx_data_9  (.di(tx_data_9),  .do(r_tx_data_9));can_ibo i_ibo_tx_data_10 (.di(tx_data_10), .do(r_tx_data_10));can_ibo i_ibo_tx_data_11 (.di(tx_data_11), .do(r_tx_data_11));can_ibo i_ibo_tx_data_12 (.di(tx_data_12), .do(r_tx_data_12));/* Changing bit order from [14:0] to [0:14] */can_ibo i_calculated_crc0 (.di(calculated_crc[14:7]), .do(r_calculated_crc[7:0]));can_ibo i_calculated_crc1 (.di({calculated_crc[6:0], 1'b0}), .do(r_calculated_crc[15:8]));assign basic_chain = {r_tx_data_1[7:4], 2'h0, r_tx_data_1[3:0], r_tx_data_0[7:0], 1'b0};assign basic_chain_data = {r_tx_data_9, r_tx_data_8, r_tx_data_7, r_tx_data_6, r_tx_data_5, r_tx_data_4, r_tx_data_3, r_tx_data_2};assign extended_chain_std = {r_tx_data_0[7:4], 2'h0, r_tx_data_0[1], r_tx_data_2[2:0], r_tx_data_1[7:0], 1'b0};assign extended_chain_ext = {r_tx_data_0[7:4], 2'h0, r_tx_data_0[1], r_tx_data_4[4:0], r_tx_data_3[7:0], r_tx_data_2[7:3], 1'b1, 1'b1, r_tx_data_2[2:0], r_tx_data_1[7:0], 1'b0};assign extended_chain_data_std = {r_tx_data_10, r_tx_data_9, r_tx_data_8, r_tx_data_7, r_tx_data_6, r_tx_data_5, r_tx_data_4, r_tx_data_3};assign extended_chain_data_ext = {r_tx_data_12, r_tx_data_11, r_tx_data_10, r_tx_data_9, r_tx_data_8, r_tx_data_7, r_tx_data_6, r_tx_data_5};always @ (extended_mode or rx_data or tx_pointer or extended_chain_data_std or extended_chain_data_ext or rx_crc or r_calculated_crc or          r_tx_data_0   or extended_chain_ext or extended_chain_std or basic_chain_data or basic_chain or          finish_msg)begin  if (extended_mode)    begin      if (rx_data)  // data stage        if (r_tx_data_0[0])    // Extended frame          tx_bit = extended_chain_data_ext[tx_pointer];        else          tx_bit = extended_chain_data_std[tx_pointer];      else if (rx_crc)        tx_bit = r_calculated_crc[tx_pointer];      else if (finish_msg)        tx_bit = 1'b1;      else        begin

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧洲美洲综合色网| 亚洲欧美激情在线| 日本道精品一区二区三区| 日本vs亚洲vs韩国一区三区二区| 久久久久一区二区三区四区| 欧美性感一区二区三区| 国产成人午夜99999| 日韩—二三区免费观看av| 国产精品免费视频网站| 精品欧美一区二区三区精品久久| 色噜噜狠狠色综合欧洲selulu | 国产在线观看一区二区| 亚洲一区二区偷拍精品| 国产精品视频线看| 精品福利一区二区三区免费视频| 欧美裸体bbwbbwbbw| 99国产精品久| 福利一区二区在线| 精品一区二区三区免费观看| 五月激情综合网| 亚洲三级在线免费观看| 国产精品午夜电影| 久久伊人蜜桃av一区二区| 欧美浪妇xxxx高跟鞋交| 欧美主播一区二区三区美女| 色综合久久99| 91蝌蚪porny九色| 成人激情综合网站| 粉嫩绯色av一区二区在线观看| 激情综合色综合久久| 青青草91视频| 日本不卡在线视频| 日本中文字幕一区二区视频| 亚洲大片精品永久免费| 亚洲国产视频直播| 亚洲国产va精品久久久不卡综合| 一区二区三区在线观看国产| 亚洲美女一区二区三区| 亚洲在线观看免费| 午夜a成v人精品| 日韩精品电影在线| 久久精品国产一区二区| 日韩精品免费视频人成| 日本亚洲视频在线| 精品在线播放免费| 国产成人免费视频网站高清观看视频| 国内成人自拍视频| 成人小视频免费观看| av不卡免费在线观看| 91国偷自产一区二区三区观看| 在线看一区二区| 91精品国产高清一区二区三区| 日韩欧美一级在线播放| 久久久欧美精品sm网站| 中文无字幕一区二区三区| 《视频一区视频二区| 亚洲国产日韩精品| 免费欧美高清视频| 国产精品夜夜爽| 99久久精品免费观看| 在线亚洲一区二区| 欧美一二三在线| 欧美激情中文不卡| 亚洲精品国产成人久久av盗摄| 亚洲国产日韩a在线播放| 偷窥国产亚洲免费视频| 国产精品一二三四| 欧美影院午夜播放| 精品国产露脸精彩对白| 亚洲欧洲日韩综合一区二区| 亚洲一区二区三区小说| 久99久精品视频免费观看| 成人黄色电影在线| 欧美日韩一二区| 国产人久久人人人人爽| 亚洲欧美日韩一区| 免费观看在线综合色| 不卡在线观看av| 欧美精选一区二区| 中文字幕av一区二区三区免费看| 亚洲一区二区三区四区不卡| 国产在线播放一区| 欧美丝袜自拍制服另类| 久久久久久久久99精品| 一级精品视频在线观看宜春院| 蜜桃av一区二区三区| 99精品国产热久久91蜜凸| 欧美一级精品在线| 亚洲欧美日韩一区二区三区在线观看| 免费观看91视频大全| 91丨九色丨尤物| 久久久久国产一区二区三区四区| 亚洲精品国产一区二区三区四区在线| 蜜臀久久99精品久久久久久9| 97久久超碰国产精品电影| 精品久久久久久最新网址| 亚洲一线二线三线视频| 粉嫩aⅴ一区二区三区四区五区| 9191成人精品久久| 亚洲麻豆国产自偷在线| 国产一区三区三区| 欧美午夜精品免费| 18涩涩午夜精品.www| 国产一区二区三区黄视频| 欧美精品自拍偷拍| 一区二区三区精品| 成人av电影在线观看| 久久久久国产精品免费免费搜索| 视频一区二区中文字幕| 在线观看中文字幕不卡| 中文字幕成人网| 极品少妇一区二区| 欧美一区三区二区| 夜夜精品浪潮av一区二区三区| 高清视频一区二区| 久久久国际精品| 国产在线精品一区在线观看麻豆| 日本久久精品电影| 亚洲欧美日韩中文播放 | 欧美久久一二三四区| 亚洲人成网站影音先锋播放| 成人免费三级在线| 久久久精品免费网站| 狠狠色综合日日| 日韩手机在线导航| 免费看黄色91| 日韩欧美高清dvd碟片| 日韩av一二三| 宅男噜噜噜66一区二区66| 亚洲国产视频网站| 欧美日韩aaaaaa| 亚洲国产精品久久一线不卡| 在线视频中文字幕一区二区| 亚洲欧洲中文日韩久久av乱码| 国产成人免费在线| 国产精品少妇自拍| 99久久久久久99| 亚洲品质自拍视频| 91麻豆精品一区二区三区| 亚洲情趣在线观看| 欧美三级在线视频| 视频在线在亚洲| 欧美一区二区成人| 麻豆精品视频在线观看| 精品乱码亚洲一区二区不卡| 久久av资源网| 国产欧美日韩三区| 99久久婷婷国产综合精品| 国产精品进线69影院| 日本道免费精品一区二区三区| 亚洲福利一区二区三区| 欧美一区二区三区思思人| 九九精品一区二区| 精品国产91洋老外米糕| 成人永久免费视频| 亚洲欧洲精品天堂一级| 欧美视频一区二| 久久99国产精品久久99| 欧美激情在线看| 一本到不卡免费一区二区| 亚洲高清免费一级二级三级| 日韩欧美激情一区| www.欧美.com| 亚洲h在线观看| 久久久一区二区三区| 不卡电影免费在线播放一区| 亚洲激情五月婷婷| 91精品国产综合久久精品性色| 久久99精品国产麻豆不卡| 中文字幕在线观看一区二区| 欧美日韩小视频| 国产精品一区二区免费不卡| 国产精品久久久久aaaa| 5566中文字幕一区二区电影| 国产精品1区2区| 亚洲一区二区中文在线| 久久久久久久综合日本| 欧美天堂一区二区三区| 狠狠色综合色综合网络| 一区二区三区在线观看国产| 日韩精品一区二区三区四区视频 | 一区二区三区高清在线| 日韩欧美卡一卡二| 91精彩视频在线| 国产在线播放一区二区三区| 亚洲愉拍自拍另类高清精品| 久久久午夜精品| 欧美久久高跟鞋激| 91视频免费播放| 国内精品自线一区二区三区视频| 亚洲欧美另类综合偷拍| 久久男人中文字幕资源站| 欧美日韩一本到| 91美女视频网站| 国产激情一区二区三区桃花岛亚洲| 亚洲国产综合在线| 自拍视频在线观看一区二区| 26uuu精品一区二区在线观看| 欧美午夜精品久久久久久超碰 | 制服丝袜一区二区三区|