亚洲欧美第一页_禁久久精品乱码_粉嫩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视频在线看| 久久久99免费| 国产老肥熟一区二区三区| 久久久国产一区二区三区四区小说 | 精品在线播放午夜| 欧美白人最猛性xxxxx69交| 国产丶欧美丶日本不卡视频| 日本一区二区在线不卡| 一本久久综合亚洲鲁鲁五月天 | 国产精品美女久久久久久久久久久| 成人综合在线网站| 亚洲精品网站在线观看| 欧美日韩成人综合| 国产精品自拍一区| 亚洲自拍另类综合| 久久久久久99久久久精品网站| av在线不卡免费看| 婷婷六月综合网| 久久久久88色偷偷免费| 一本色道综合亚洲| 久久成人免费电影| 国产美女精品在线| 国产盗摄女厕一区二区三区| 亚洲精品视频自拍| 久久精品一区四区| 欧美日韩中文另类| 成人性色生活片| 视频一区二区三区中文字幕| 久久综合久久99| 欧美日本在线看| 粉嫩在线一区二区三区视频| 天天综合日日夜夜精品| 国产精品麻豆欧美日韩ww| 欧美老人xxxx18| 不卡的看片网站| 国产在线精品一区二区不卡了| 一区二区欧美精品| 国产午夜亚洲精品午夜鲁丝片 | av中文字幕不卡| 狠狠色综合日日| 亚洲sss视频在线视频| 亚洲国产激情av| 精品国产乱码久久久久久久久| 91免费看片在线观看| 国产精品一区二区在线播放 | 午夜亚洲福利老司机| 国产精品久久福利| 久久影音资源网| 欧美一区二区视频观看视频| 色综合天天综合网天天看片| 国产东北露脸精品视频| 美女一区二区三区在线观看| 亚洲国产一区视频| 亚洲免费看黄网站| 中文字幕日本不卡| 久久毛片高清国产| 欧美大肚乱孕交hd孕妇| 51午夜精品国产| 欧美日韩1区2区| 欧美日韩国产综合一区二区| 91久久精品一区二区三| 91麻豆精东视频| 91亚洲精品一区二区乱码| 成人午夜视频在线观看| 国产乱人伦偷精品视频免下载| 成人激情文学综合网| 国产在线精品一区在线观看麻豆| 日韩二区在线观看| 午夜激情久久久| 日韩黄色片在线观看| 午夜久久久久久久久久一区二区| 亚洲成人一区在线| 午夜精品久久久久久久久久| 亚洲福利一区二区| 丝袜美腿亚洲一区二区图片| 日韩精彩视频在线观看| 久久精品国产在热久久| 黄网站免费久久| 国产成人精品三级| 99综合影院在线| 色婷婷狠狠综合| 欧美在线观看视频在线| 欧美日韩在线精品一区二区三区激情 | 日本中文字幕一区二区视频| 日韩主播视频在线| 蜜臀久久久99精品久久久久久| 久久99久久久久| 国产一区二区剧情av在线| 成人的网站免费观看| 一本色道久久综合亚洲精品按摩| 91黄色免费看| 7777精品伊人久久久大香线蕉经典版下载| 欧美亚洲动漫另类| 日韩你懂的电影在线观看| 久久久美女艺术照精彩视频福利播放| 国产精品午夜春色av| 亚洲免费高清视频在线| 日韩黄色在线观看| 丁香亚洲综合激情啪啪综合| 日本国产一区二区| 欧美一区二区不卡视频| 国产亚洲成年网址在线观看| 亚洲免费av高清| 日本不卡视频一二三区| 成人黄色大片在线观看| 欧美男女性生活在线直播观看| 精品欧美乱码久久久久久 | 欧美视频一区二区三区| 精品免费国产二区三区| 亚洲欧洲中文日韩久久av乱码| 午夜精品福利久久久| 精东粉嫩av免费一区二区三区| 成人精品高清在线| 7777精品伊人久久久大香线蕉完整版 | 午夜天堂影视香蕉久久| 国产真实乱对白精彩久久| 91福利在线观看| 久久久久久久久久久99999| 亚洲一区在线视频观看| 国产一区二区三区免费| 精品视频1区2区3区| 国产日韩欧美精品电影三级在线| 亚洲国产综合91精品麻豆| 国产传媒一区在线| 4hu四虎永久在线影院成人| 国产精品视频一二| 麻豆精品一二三| 欧美午夜电影一区| 国产精品大尺度| 国产一区二区三区四区五区美女| 欧美性大战久久久久久久| 国产精品无遮挡| 国产一区二区按摩在线观看| 欧美军同video69gay| 亚洲人亚洲人成电影网站色| 精品一区二区影视| 91精品国产综合久久蜜臀| 亚洲激情av在线| av动漫一区二区| 久久夜色精品国产噜噜av| 午夜伊人狠狠久久| 色老汉一区二区三区| 中文字幕一区av| 丁香激情综合国产| 久久色.com| 免费av成人在线| 欧美一级在线免费| 天天影视涩香欲综合网 | 宅男噜噜噜66一区二区66| 一区二区三区视频在线看| 成人av网站在线观看| 久久精品亚洲乱码伦伦中文 | 亚洲成在线观看| 91黄色激情网站| 日韩伦理免费电影| 99精品久久免费看蜜臀剧情介绍| 久久久亚洲精品一区二区三区 | 亚洲精选在线视频| av在线不卡观看免费观看| 中文欧美字幕免费| 国产成人精品一区二区三区网站观看| 欧美精品一区二区高清在线观看| 日本视频免费一区| 欧美一级片免费看| 蜜桃免费网站一区二区三区| 91精品欧美综合在线观看最新| 日本视频免费一区| 欧美成人高清电影在线| 激情图片小说一区| 久久婷婷国产综合精品青草| 国产综合久久久久影院| 国产欧美精品一区二区色综合朱莉 | 欧美一区欧美二区| 久久精品72免费观看| 久久久精品天堂| 成人av第一页| 亚洲一区二区免费视频| 欧美肥妇free| 国产精品一区二区三区四区| 国产精品全国免费观看高清| 不卡的电影网站| 亚洲资源中文字幕| 日韩欧美国产高清| 懂色av一区二区三区蜜臀| 亚洲精选视频在线| 日韩三级免费观看| 国产精品亚洲一区二区三区妖精| 中文一区在线播放| 欧美日韩亚洲综合一区| 久久国产精品区| 国产精品福利电影一区二区三区四区| 在线视频欧美精品| 精品在线一区二区| 综合久久综合久久| 日韩一二三四区| 99久久精品免费观看| 琪琪一区二区三区| 中文字幕一区二区三区在线不卡| 欧美日韩一级大片网址|