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

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

?? can_testbench.v

?? 基于FPGA的can 總線設計
?? V
?? 第 1 頁 / 共 4 頁
字號:

    // Enabling IRQ's (extended mode)
    write_register(8'd4, 8'hff);


    fork
      begin
        #2700;
        $display("\n\nStart receiving data from CAN bus");
        /* Standard frame format
        receive_frame(0, 0, {26'h00000a0, 3'h1}, 4'h1, 15'h2d9c); // mode, rtr, id, length, crc
        receive_frame(0, 0, {26'h00000a0, 3'h1}, 4'h2, 15'h46b4); // mode, rtr, id, length, crc
        receive_frame(0, 0, {26'h00000af, 3'h1}, 4'h0, 15'h42cd); // mode, rtr, id, length, crc
        receive_frame(0, 0, {26'h00000af, 3'h1}, 4'h1, 15'h555f); // mode, rtr, id, length, crc
        receive_frame(0, 0, {26'h00000af, 3'h1}, 4'h2, 15'h6742); // mode, rtr, id, length, crc
        */

        // Extended frame format
        receive_frame(1, 0, {8'ha6, 8'h00, 8'h5a, 5'h15}, 4'h1, 15'h2d22); // mode, rtr, id, length, crc
        receive_frame(1, 0, {8'ha6, 8'h00, 8'h5a, 5'h15}, 4'h2, 15'h3d2d); // mode, rtr, id, length, crc
        receive_frame(1, 0, {8'ha6, 8'h00, 8'h5a, 5'h15}, 4'h0, 15'h23aa); // mode, rtr, id, length, crc
        receive_frame(1, 0, {8'ha6, 8'h00, 8'h5a, 5'h15}, 4'h1, 15'h2d22); // mode, rtr, id, length, crc
        receive_frame(1, 0, {8'ha6, 8'h00, 8'h5a, 5'h15}, 4'h2, 15'h3d2d); // mode, rtr, id, length, crc

      end

      begin
        tx_request_command;
      end

      begin
        // Transmitting acknowledge
        wait (can_testbench.i_can_top.i_can_bsp.tx_state & can_testbench.i_can_top.i_can_bsp.rx_ack);
        #1 rx = 0;
        wait (can_testbench.i_can_top.i_can_bsp.rx_ack_lim);
        #1 rx = 1;
      end

      begin   // Reading irq and arbitration lost capture register

        repeat(1)
          begin
            while (~(can_testbench.i_can_top.i_can_bsp.rx_crc_lim & can_testbench.i_can_top.i_can_bsp.sample_point))
              begin
                @ (posedge clk);
              end

            // Read irq register
            #1 read_register(8'd3);
    
            // Read arbitration lost capture register
            read_register(8'd11);
          end


        repeat(1)
          begin
            while (~(can_testbench.i_can_top.i_can_bsp.rx_crc_lim & can_testbench.i_can_top.i_can_bsp.sample_point))
              begin
                @ (posedge clk);
              end

            // Read irq register
            #1 read_register(8'd3);
          end

        repeat(1)
          begin
            while (~(can_testbench.i_can_top.i_can_bsp.rx_crc_lim & can_testbench.i_can_top.i_can_bsp.sample_point))
              begin
                @ (posedge clk);
              end

            // Read arbitration lost capture register
            read_register(8'd11);
          end

      end

    join

    read_receive_buffer;
    release_rx_buffer_command;
    release_rx_buffer_command;
    read_receive_buffer;
    release_rx_buffer_command;
    read_receive_buffer;
    release_rx_buffer_command;
    read_receive_buffer;
    release_rx_buffer_command;
    read_receive_buffer;

    #200000;

    read_receive_buffer;

    // Read irq register
    read_register(8'd3);
    #1000;

  end
endtask   // send_frame_extended



task self_reception_request;    // CAN IP core sends sets self reception mode and transmits a msg. This test runs in EXTENDED mode
  begin

    // Switch-on reset mode
    write_register(8'd0, {7'h0, (`CAN_MODE_RESET)});
    
    // Set Clock Divider register
    extended_mode = 1'b1;
    write_register(8'd31, {extended_mode, 7'h0});    // Setting the extended mode
 
    // Set Acceptance Code and Acceptance Mask registers
    write_register(8'd16, 8'ha6); // acceptance code 0
    write_register(8'd17, 8'hb0); // acceptance code 1
    write_register(8'd18, 8'h12); // acceptance code 2
    write_register(8'd19, 8'h30); // acceptance code 3
    write_register(8'd20, 8'h00); // acceptance mask 0
    write_register(8'd21, 8'h00); // acceptance mask 1
    write_register(8'd22, 8'h00); // acceptance mask 2
    write_register(8'd23, 8'h00); // acceptance mask 3

    // Setting the "self test mode"
    write_register(8'd0, 8'h4);

    // Switch-off reset mode
    write_register(8'd0, {7'h0, ~(`CAN_MODE_RESET)});

    // After exiting the reset mode sending bus free
    repeat (11) send_bit(1);


    // Writing TX frame information + identifier + data
    write_register(8'd16, 8'h45);   // Frame format = 0, Remote transmision request = 1, DLC = 5
    write_register(8'd17, 8'ha6);   // ID[28:21] = a6
    write_register(8'd18, 8'ha0);   // ID[20:18] = 5
    // write_register(8'd19, 8'h78); RTR does not send any data
    // write_register(8'd20, 8'h9a);
    // write_register(8'd21, 8'hbc);
    // write_register(8'd22, 8'hde);
    // write_register(8'd23, 8'hf0);
    // write_register(8'd24, 8'h0f);
    // write_register(8'd25, 8'hed);
    // write_register(8'd26, 8'hcb);
    // write_register(8'd27, 8'ha9);
    // write_register(8'd28, 8'h87);


    // Enabling IRQ's (extended mode)
    write_register(8'd4, 8'hff);

    self_reception_request_command;

    #400000;

    read_receive_buffer;
    release_rx_buffer_command;
    release_rx_buffer_command;
    read_receive_buffer;
    release_rx_buffer_command;
    read_receive_buffer;
    release_rx_buffer_command;
    read_receive_buffer;
    release_rx_buffer_command;
    read_receive_buffer;


    read_receive_buffer;

    // Read irq register
    read_register(8'd3);
    #1000;

  end
endtask   // self_reception_request



task test_empty_fifo;
  begin

    // Enable irqs (basic mode)
    write_register(8'd0, 8'h1e);

    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h3, 15'h56a9); // mode, rtr, id, length, crc
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h7, 15'h391d); // mode, rtr, id, length, crc

    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h8, 15'h70e0); // mode, rtr, id, length, crc

    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;
  end
endtask



task test_empty_fifo_ext;
  begin
    receive_frame(1, 0, 29'h14d60246, 4'h3, 15'h5262); // mode, rtr, id, length, crc
    receive_frame(1, 0, 29'h14d60246, 4'h7, 15'h1730); // mode, rtr, id, length, crc
    
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    receive_frame(1, 0, 29'h14d60246, 4'h8, 15'h2f7a); // mode, rtr, id, length, crc

    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;
  end
endtask



task test_full_fifo;
  begin

    // Enable irqs (basic mode)
    write_register(8'd0, 8'h1e);

    $display("\n\n");

    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h0, 15'h2372); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h1, 15'h30bb); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h2, 15'h2da1); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h3, 15'h56a9); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h4, 15'h3124); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h5, 15'h6944); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h6, 15'h5182); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h7, 15'h391d); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h8, 15'h70e0); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h8, 15'h70e0); // mode, rtr, id, length, crc
    fifo_info;
    $display("FIFO should be full now");

    // Following one is accepted with overrun
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h8, 15'h70e0); // mode, rtr, id, length, crc
    fifo_info;

    release_rx_buffer_command;
    fifo_info;

    // Space just enough for the following frame.
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h0, 15'h2372); // mode, rtr, id, length, crc
    fifo_info;

    // Following accepted with overrun
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h8, 15'h70e0); // mode, rtr, id, length, crc
    fifo_info;
//    read_overrun_info(0, 15);

    release_rx_buffer_command;
    release_rx_buffer_command;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;
    receive_frame(0, 0, {26'h00000e8, 3'h1}, 4'h8, 15'h70e0); // mode, rtr, id, length, crc
    fifo_info;
//    read_overrun_info(0, 15);
    $display("\n\n");

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    clear_data_overrun_command;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    clear_data_overrun_command;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    // Read irq register
    read_register(8'd3);

    // Read irq register
    read_register(8'd3);
    #1000;

  end
endtask



task test_full_fifo_ext;
  begin
    release_rx_buffer_command;
    $display("\n\n");
    read_receive_buffer;
    fifo_info;

    receive_frame(1, 0, 29'h14d60246, 4'h0, 15'h6f54); // mode, rtr, id, length, crc
    read_receive_buffer;
    fifo_info;
    receive_frame(1, 0, 29'h14d60246, 4'h1, 15'h6d38); // mode, rtr, id, length, crc
    read_receive_buffer;
    fifo_info;
    receive_frame(1, 0, 29'h14d60246, 4'h2, 15'h053e); // mode, rtr, id, length, crc
    fifo_info;
    read_receive_buffer;
    receive_frame(1, 0, 29'h14d60246, 4'h3, 15'h5262); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(1, 0, 29'h14d60246, 4'h4, 15'h4bba); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(1, 0, 29'h14d60246, 4'h5, 15'h4d7d); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(1, 0, 29'h14d60246, 4'h6, 15'h6f40); // mode, rtr, id, length, crc
    fifo_info;
    receive_frame(1, 0, 29'h14d60246, 4'h7, 15'h1730); // mode, rtr, id, length, crc
    fifo_info;
//    read_overrun_info(0, 10);

    release_rx_buffer_command;
    release_rx_buffer_command;
    fifo_info;
    receive_frame(1, 0, 29'h14d60246, 4'h8, 15'h2f7a); // mode, rtr, id, length, crc
    fifo_info;
//    read_overrun_info(0, 15);
    $display("\n\n");

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

    release_rx_buffer_command;
    read_receive_buffer;
    fifo_info;

  end
endtask


/*
task initialize_fifo;
  integer i;
  begin
    for (i=0; i<32; i=i+1)
      begin
        can_testbench.i_can_top.i_can_bsp.i_can_fifo.length_info[i] = 0;
        can_testbench.i_can_top.i_can_bsp.i_can_fifo.overrun_info[i] = 0;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久综合久久综合亚洲| 视频一区二区三区在线| 一区二区三区欧美日韩| 久久国产精品露脸对白| 欧美性xxxxxx少妇| 国产精品高潮呻吟| 激情偷乱视频一区二区三区| 在线亚洲免费视频| 久久精品日韩一区二区三区| 视频一区二区三区中文字幕| 色8久久精品久久久久久蜜| 欧美激情艳妇裸体舞| 美女久久久精品| 欧美性生活久久| 亚洲色图欧洲色图婷婷| 国产成人精品免费在线| 日韩一区二区三区精品视频| 亚洲bt欧美bt精品777| 91影院在线免费观看| 欧美国产精品劲爆| 国产成人日日夜夜| 日韩欧美在线1卡| 亚洲1区2区3区视频| 99久久99久久免费精品蜜臀| 久久精品人人做人人综合| 日韩高清在线不卡| 欧美美女喷水视频| 亚洲午夜电影网| 欧美日韩中文另类| 亚洲aaa精品| 91精品久久久久久久99蜜桃| 日本不卡123| 欧美麻豆精品久久久久久| 亚洲大片在线观看| 欧美日本韩国一区| 欧美探花视频资源| 日韩一级欧美一级| 日韩欧美国产一区二区在线播放| 一卡二卡三卡日韩欧美| 欧美专区亚洲专区| 亚洲va中文字幕| 在线不卡中文字幕播放| 天天综合日日夜夜精品| 91精品国产综合久久精品| 婷婷成人激情在线网| 欧美一区二区精美| 精品一二线国产| 国产日韩欧美综合在线| 成人污污视频在线观看| 中文字幕一区二区三区在线播放 | 91精品啪在线观看国产60岁| 日韩精品每日更新| 精品国产髙清在线看国产毛片| 精品一区免费av| 久久一留热品黄| kk眼镜猥琐国模调教系列一区二区| 中文字幕日本不卡| 欧美日韩午夜在线视频| 蜜桃av噜噜一区| 中文字幕 久热精品 视频在线| 91美女在线观看| 亚洲免费观看高清完整版在线观看熊| 欧美在线高清视频| 麻豆一区二区99久久久久| 欧美经典一区二区三区| 欧美色国产精品| 国模娜娜一区二区三区| 精品在线一区二区三区| 中文字幕精品—区二区四季| 91久久国产综合久久| 久久成人免费电影| 亚洲欧洲中文日韩久久av乱码| 欧美蜜桃一区二区三区| 国产成人亚洲综合a∨猫咪| 亚洲一区二区四区蜜桃| 欧美精品一区男女天堂| 欧美在线视频不卡| 国产乱人伦偷精品视频不卡| 中文字幕一区二区三区蜜月 | 日本丶国产丶欧美色综合| 无吗不卡中文字幕| 国产精品久久久久一区| 欧美一区二区三区在线看| 99久久精品国产导航| 老司机精品视频在线| 亚洲一区二区在线视频| 国产精品色呦呦| 国产精品素人视频| 91精品国产入口在线| 成人免费视频视频在线观看免费| 日韩制服丝袜先锋影音| 亚洲免费三区一区二区| 久久综合99re88久久爱| 欧美另类高清zo欧美| 色诱视频网站一区| 国产999精品久久久久久| 日韩成人免费看| 亚洲一区二区三区不卡国产欧美| 中文av一区特黄| www国产精品av| 日韩午夜激情视频| 91精品在线免费| 欧美三级一区二区| 色婷婷精品大视频在线蜜桃视频| 国产精品一级二级三级| 久久精品久久精品| 理论片日本一区| 麻豆91在线观看| 日本视频中文字幕一区二区三区| 亚洲自拍偷拍麻豆| 亚洲三级电影网站| 日韩一区欧美小说| 亚洲桃色在线一区| 最新日韩在线视频| 国产精品国产三级国产普通话99| 国产欧美日韩综合精品一区二区| 欧美精品一区二区精品网| 日韩免费视频线观看| 欧美一区二区三区电影| 欧美老女人第四色| 日韩一级免费观看| 精品福利在线导航| 久久精品一区蜜桃臀影院| 久久久高清一区二区三区| 国产亚洲精品久| 久久久亚洲国产美女国产盗摄 | 欧美国产日韩a欧美在线观看| 国产欧美一区二区精品秋霞影院| xfplay精品久久| 久久久久久久av麻豆果冻| 337p日本欧洲亚洲大胆精品 | 成人一区二区三区视频在线观看 | 五月天欧美精品| 蜜桃av一区二区| 国产福利精品一区二区| 成人av免费在线播放| 欧美午夜免费电影| 日韩欧美国产成人一区二区| 久久久亚洲欧洲日产国码αv| 国产精品系列在线| 亚洲国产一区视频| 激情综合五月婷婷| www.亚洲在线| 欧美年轻男男videosbes| 精品动漫一区二区三区在线观看| 亚洲国产成人在线| 午夜精品久久久久久不卡8050| 久久精品国产**网站演员| 国产高清不卡一区二区| 欧美视频一二三区| 精品久久久久久无| 亚洲丝袜制服诱惑| 美女一区二区在线观看| 成人ar影院免费观看视频| 欧美另类z0zxhd电影| 欧美国产综合一区二区| 香蕉成人啪国产精品视频综合网| 国产精品白丝jk黑袜喷水| 欧美性高清videossexo| 26uuu色噜噜精品一区| 一区二区三区四区不卡视频| 日本aⅴ亚洲精品中文乱码| av资源网一区| 精品欧美一区二区久久| 亚洲日本丝袜连裤袜办公室| 蜜桃视频免费观看一区| 色婷婷av久久久久久久| 亚洲精品在线免费播放| 亚洲女爱视频在线| 国产黄色成人av| 91精品国产一区二区| 综合久久给合久久狠狠狠97色| 久久99精品久久只有精品| 欧洲一区二区av| 国产精品黄色在线观看 | 亚洲午夜私人影院| 成人免费视频网站在线观看| 精品国产人成亚洲区| 午夜日韩在线观看| 色网站国产精品| 中文在线一区二区 | 国产欧美日韩麻豆91| 美女精品一区二区| 欧美美女一区二区在线观看| 亚洲免费观看在线视频| 99久久夜色精品国产网站| 国产午夜精品久久久久久久| 麻豆国产欧美日韩综合精品二区| 欧美日韩综合色| 亚洲一区二区精品视频| 91丨九色丨蝌蚪丨老版| 国产精品成人在线观看| 国产91丝袜在线观看| 久久久噜噜噜久久中文字幕色伊伊| 午夜精品在线看| 欧美精品在线一区二区三区| 亚洲国产成人av网| 欧美日韩亚洲综合一区 | 国产成人午夜电影网| 日韩免费在线观看|