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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? uart1.v

?? Altera公司開發板2s60 CF卡通用例程(初始化、讀、寫、測試等)
?? V
?? 第 1 頁 / 共 3 頁
字號:
                                  // outputs:
                                   source_rxd
                                );

  output           source_rxd;
  input   [  8: 0] baud_divisor;
  input            clk;
  input            clk_en;
  input            reset_n;
  input            rx_char_ready;
  input            rxd;

  reg     [  7: 0] d1_stim_data;
  reg              delayed_unxrx_char_readyxx0;
  wire             do_send_stim_data;
  wire             new_rom_pulse;
  wire             pickup_pulse;
  wire             safe;
  wire             source_rxd;
  wire    [  7: 0] stim_data;
  wire             unused_empty;
  wire             unused_overrun;
  wire             unused_ready;

//synthesis translate_off
//////////////// SIMULATION-ONLY CONTENTS
  //stimulus_transmitter, which is an e_instance
  uart1_tx stimulus_transmitter
    (
      .baud_divisor     (baud_divisor),
      .begintransfer    (do_send_stim_data),
      .clk              (clk),
      .clk_en           (clk_en),
      .do_force_break   (1'b0),
      .reset_n          (reset_n),
      .status_wr_strobe (1'b0),
      .tx_data          (d1_stim_data),
      .tx_overrun       (unused_overrun),
      .tx_ready         (unused_ready),
      .tx_shift_empty   (unused_empty),
      .tx_wr_strobe     (1'b1),
      .txd              (source_rxd)
    );

  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          d1_stim_data <= 0;
      else if (do_send_stim_data)
          d1_stim_data <= stim_data;
    end


  //uart1_rx_stimulus_source_character_source_rom, which is an e_drom
  uart1_rx_stimulus_source_character_source_rom_module uart1_rx_stimulus_source_character_source_rom
    (
      .clk       (clk),
      .incr_addr (do_send_stim_data),
      .new_rom   (new_rom_pulse),
      .q         (stim_data),
      .reset_n   (reset_n),
      .safe      (safe)
    );

  //delayed_unxrx_char_readyxx0, which is an e_register
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          delayed_unxrx_char_readyxx0 <= 0;
      else if (clk_en)
          delayed_unxrx_char_readyxx0 <= rx_char_ready;
    end


  assign pickup_pulse = ~(rx_char_ready) &  (delayed_unxrx_char_readyxx0);
  assign do_send_stim_data = (pickup_pulse || new_rom_pulse) && safe;

//////////////// END SIMULATION-ONLY CONTENTS

//synthesis translate_on
//synthesis read_comments_as_HDL on
//  assign source_rxd = rxd;
//synthesis read_comments_as_HDL off


endmodule


module uart1_rx (
                  // inputs:
                   baud_divisor,
                   begintransfer,
                   clk,
                   clk_en,
                   reset_n,
                   rx_rd_strobe,
                   rxd,
                   status_wr_strobe,

                  // outputs:
                   break_detect,
                   framing_error,
                   parity_error,
                   rx_char_ready,
                   rx_data,
                   rx_overrun
                );

  output           break_detect;
  output           framing_error;
  output           parity_error;
  output           rx_char_ready;
  output  [  7: 0] rx_data;
  output           rx_overrun;
  input   [  8: 0] baud_divisor;
  input            begintransfer;
  input            clk;
  input            clk_en;
  input            reset_n;
  input            rx_rd_strobe;
  input            rxd;
  input            status_wr_strobe;

  reg              baud_clk_en;
  wire    [  8: 0] baud_load_value;
  reg     [  8: 0] baud_rate_counter;
  wire             baud_rate_counter_is_zero;
  reg              break_detect;
  reg              d1_source_rxd;
  reg              delayed_unxrx_in_processxx3;
  reg              delayed_unxsync_rxdxx1;
  reg              delayed_unxsync_rxdxx2;
  reg              do_start_rx;
  reg              framing_error;
  wire             got_new_char;
  wire    [  7: 0] half_bit_cell_divisor;
  wire             is_break;
  wire             is_framing_error;
  wire             parity_error;
  wire    [  7: 0] raw_data_in;
  reg              rx_char_ready;
  reg     [  7: 0] rx_data;
  wire             rx_in_process;
  reg              rx_overrun;
  wire             rx_rd_strobe_onset;
  wire             rxd_edge;
  wire             rxd_falling;
  wire    [  9: 0] rxd_shift_reg;
  wire             sample_enable;
  wire             shift_reg_start_bit_n;
  wire             source_rxd;
  wire             stop_bit;
  reg              sync_rxd;
  wire             unused_start_bit;
  wire    [  9: 0] unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_in;
  reg     [  9: 0] unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_out;
  uart1_rx_stimulus_source the_uart1_rx_stimulus_source
    (
      .baud_divisor  (baud_divisor),
      .clk           (clk),
      .clk_en        (clk_en),
      .reset_n       (reset_n),
      .rx_char_ready (rx_char_ready),
      .rxd           (rxd),
      .source_rxd    (source_rxd)
    );

  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
        begin
          d1_source_rxd <= 0;
          sync_rxd <= 0;
        end
      else if (clk_en)
        begin
          d1_source_rxd <= source_rxd;
          sync_rxd <= d1_source_rxd;
        end
    end


  //delayed_unxsync_rxdxx1, which is an e_register
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          delayed_unxsync_rxdxx1 <= 0;
      else if (clk_en)
          delayed_unxsync_rxdxx1 <= sync_rxd;
    end


  assign rxd_falling = ~(sync_rxd) &  (delayed_unxsync_rxdxx1);
  //delayed_unxsync_rxdxx2, which is an e_register
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          delayed_unxsync_rxdxx2 <= 0;
      else if (clk_en)
          delayed_unxsync_rxdxx2 <= sync_rxd;
    end


  assign rxd_edge = (sync_rxd) ^  (delayed_unxsync_rxdxx2);
  assign rx_rd_strobe_onset = rx_rd_strobe && begintransfer;
  assign half_bit_cell_divisor = baud_divisor[8 : 1];
  assign baud_load_value = (rxd_edge)? half_bit_cell_divisor :
    baud_divisor;

  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          baud_rate_counter <= 0;
      else if (clk_en)
          if (baud_rate_counter_is_zero || rxd_edge)
              baud_rate_counter <= baud_load_value;
          else 
            baud_rate_counter <= baud_rate_counter - 1;
    end


  assign baud_rate_counter_is_zero = baud_rate_counter == 0;
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          baud_clk_en <= 0;
      else if (clk_en)
          if (rxd_edge)
              baud_clk_en <= 0;
          else 
            baud_clk_en <= baud_rate_counter_is_zero;
    end


  assign sample_enable = baud_clk_en && rx_in_process;
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          do_start_rx <= 0;
      else if (clk_en)
          if (~rx_in_process && rxd_falling)
              do_start_rx <= 1;
          else 
            do_start_rx <= 0;
    end


  assign rx_in_process = shift_reg_start_bit_n;
  assign {stop_bit,
raw_data_in,
unused_start_bit} = rxd_shift_reg;
  assign is_break = ~(|rxd_shift_reg);
  assign is_framing_error = ~stop_bit && ~is_break;
  //delayed_unxrx_in_processxx3, which is an e_register
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          delayed_unxrx_in_processxx3 <= 0;
      else if (clk_en)
          delayed_unxrx_in_processxx3 <= rx_in_process;
    end


  assign got_new_char = ~(rx_in_process) &  (delayed_unxrx_in_processxx3);
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          rx_data <= 0;
      else if (got_new_char)
          rx_data <= raw_data_in;
    end


  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          framing_error <= 0;
      else if (clk_en)
          if (status_wr_strobe)
              framing_error <= 0;
          else if (got_new_char && is_framing_error)
              framing_error <= -1;
    end


  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          break_detect <= 0;
      else if (clk_en)
          if (status_wr_strobe)
              break_detect <= 0;
          else if (got_new_char && is_break)
              break_detect <= -1;
    end


  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          rx_overrun <= 0;
      else if (clk_en)
          if (status_wr_strobe)
              rx_overrun <= 0;
          else if (got_new_char && rx_char_ready)
              rx_overrun <= -1;
    end


  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          rx_char_ready <= 0;
      else if (clk_en)
          if (rx_rd_strobe_onset)
              rx_char_ready <= 0;
          else if (got_new_char)
              rx_char_ready <= -1;
    end


  assign parity_error = 0;
  //_reg, which is an e_register
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_out <= 0;
      else if (clk_en)
          unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_out <= unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_in;
    end


  assign unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_in = (do_start_rx)? {10{1'b1}} :
    (sample_enable)? {sync_rxd,
    unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_out[9 : 1]} :
    unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_out;

  assign rxd_shift_reg = unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_out;
  assign shift_reg_start_bit_n = unxshiftxrxd_shift_regxshift_reg_start_bit_nxx6_out[0];


endmodule


module uart1_regs (
                    // inputs:
                     address,
                     break_detect,
                     chipselect,
                     clk,
                     clk_en,
                     framing_error,
                     parity_error,
                     read_n,
                     reset_n,
                     rx_char_ready,
                     rx_data,
                     rx_overrun,
                     tx_overrun,
                     tx_ready,
                     tx_shift_empty,
                     write_n,
                     writedata,

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲日本免费电影| 国产麻豆成人精品| 精品亚洲国内自在自线福利| 91蜜桃视频在线| 久久久久久久久久久久电影| 午夜欧美电影在线观看| 成人av集中营| 国产欧美一区二区精品性色| 五月天激情小说综合| 色婷婷激情综合| 国产欧美日韩三区| 激情图区综合网| 日韩欧美一级精品久久| 午夜精品视频一区| 91色porny| 国产精品看片你懂得| 国产一区二区三区四区在线观看| 欧美日韩在线免费视频| 亚洲欧洲精品天堂一级| 国产成人精品三级麻豆| 中文字幕第一页久久| 全部av―极品视觉盛宴亚洲| 一本大道av一区二区在线播放| 国产免费观看久久| 国产成人在线视频网站| 久久嫩草精品久久久精品一| 美国毛片一区二区三区| 日韩欧美一二区| 精品在线免费观看| 26uuu亚洲| 国产成人精品亚洲午夜麻豆| 国产精品天天看| 91亚洲国产成人精品一区二区三| 国产精品久久久久久户外露出 | 91精选在线观看| 同产精品九九九| 欧美色视频在线观看| 亚洲欧美日韩综合aⅴ视频| 91浏览器打开| 亚洲福利电影网| 欧美一区二区三区在线| 久久精品av麻豆的观看方式| 精品国产乱码久久久久久老虎| 久久国产人妖系列| 国产欧美精品区一区二区三区| 成人黄页毛片网站| 亚洲欧美日韩一区二区 | 国产精品一区二区三区四区| 久久久不卡网国产精品二区| 成人成人成人在线视频| 亚洲色图欧美偷拍| 欧美乱熟臀69xxxxxx| 美女网站一区二区| 国产精品高清亚洲| 欧美精品乱码久久久久久| 精品中文字幕一区二区小辣椒| 久久久久久久综合狠狠综合| 99麻豆久久久国产精品免费| 亚洲综合视频在线| 精品欧美久久久| 成人av电影在线网| 日本不卡高清视频| 国产精品久久毛片| 欧美福利视频一区| 顶级嫩模精品视频在线看| 亚洲一二三级电影| 国产视频一区不卡| 欧美日韩免费高清一区色橹橹| 国产一区二区三区免费| 一区二区三区四区激情| 久久亚洲综合色一区二区三区| 91丝袜美女网| 国产一区二区三区电影在线观看| 一区二区三区中文在线观看| 久久久久免费观看| 欧美二区三区91| 日本乱人伦aⅴ精品| 国产乱子轮精品视频| 午夜精品一区二区三区电影天堂 | 成人v精品蜜桃久久一区| 日韩福利电影在线观看| 综合欧美亚洲日本| 久久免费电影网| 欧美大片国产精品| 欧美视频中文一区二区三区在线观看 | 久久福利视频一区二区| 亚洲女人小视频在线观看| 久久久久久久久免费| 欧美一级片在线| 欧美日韩在线三级| 91在线云播放| 成人毛片视频在线观看| 国产综合久久久久影院| 美女精品自拍一二三四| 亚洲成在人线免费| 亚洲制服丝袜av| 亚洲精品视频观看| 亚洲欧洲无码一区二区三区| 国产三级一区二区三区| 欧美tickling挠脚心丨vk| 日韩一区二区三区免费观看| 欧美色图天堂网| 欧美日韩电影在线播放| 在线免费观看不卡av| 在线日韩一区二区| 一本一本大道香蕉久在线精品| 99视频一区二区| av资源网一区| 91啪亚洲精品| 欧美主播一区二区三区美女| 欧美午夜精品久久久久久超碰 | 99热在这里有精品免费| 成人a区在线观看| 97se亚洲国产综合自在线| 不卡的av中国片| 97久久超碰国产精品电影| 99精品欧美一区二区三区小说 | 国产麻豆日韩欧美久久| 国内精品国产成人国产三级粉色| 麻豆精品视频在线观看免费| 精品一区二区三区在线观看国产| 狠狠色伊人亚洲综合成人| 国产精品一区在线| 波多野结衣在线aⅴ中文字幕不卡| 成人免费视频一区| 色欧美片视频在线观看| 欧美日精品一区视频| 欧美精品乱码久久久久久按摩| 日韩欧美视频在线| 久久精品一区蜜桃臀影院| 亚洲国产高清在线| 亚洲精品国久久99热| 婷婷综合另类小说色区| 韩国女主播一区二区三区| 91美女福利视频| 欧美性高清videossexo| 欧美在线观看一二区| 91精品免费观看| 国产亚洲婷婷免费| 亚洲与欧洲av电影| 麻豆国产欧美一区二区三区| 韩国av一区二区三区在线观看| 9i在线看片成人免费| 欧美久久一二区| 欧美经典一区二区| 午夜在线电影亚洲一区| 国产伦精品一区二区三区在线观看| 91免费观看在线| 日韩免费电影一区| 日韩美女精品在线| 久久精品国产**网站演员| 91免费观看视频在线| 精品99999| 亚洲在线视频一区| 国产成人精品免费看| 欧美疯狂性受xxxxx喷水图片| 国产日韩精品久久久| 天天av天天翘天天综合网| caoporn国产一区二区| 欧美r级在线观看| 亚洲国产裸拍裸体视频在线观看乱了 | 亚洲一区欧美一区| 国产传媒一区在线| 7777精品伊人久久久大香线蕉的 | 国产成人一区在线| 欧美久久一二区| 中文字幕一区在线观看视频| 免费黄网站欧美| 欧美日韩一区小说| 亚洲天堂成人在线观看| 国产美女视频91| 7777精品伊人久久久大香线蕉 | 国产精品18久久久久| 欧美日韩精品系列| 亚洲视频综合在线| 成人一区二区三区在线观看| 日韩免费视频线观看| 亚洲第一综合色| 在线精品亚洲一区二区不卡| 国产精品美女久久久久久| 国产精品一线二线三线精华| 精品国产制服丝袜高跟| 性欧美疯狂xxxxbbbb| 在线观看日韩av先锋影音电影院| 国产精品灌醉下药二区| 成人丝袜18视频在线观看| 久久久99久久| 国产宾馆实践打屁股91| 国产欧美日本一区视频| 高清在线成人网| 国产精品女人毛片| 成人免费视频app| 国产精品妹子av| 不卡视频在线观看| 日韩久久一区二区| 色香蕉久久蜜桃| 亚洲综合成人在线| 3atv一区二区三区| 久久99热这里只有精品| 欧美成人欧美edvon|