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

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

?? mem_interface_top_test_bench_0.txt

?? 利用fpga讀寫ddr的源代碼 實測可以使用
?? TXT
字號:
///////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2005 Xilinx, Inc.
// This design is confidential and proprietary of Xilinx, All Rights Reserved.
///////////////////////////////////////////////////////////////////////////////
//   ____  ____
//  /   /\/   /
// /___/  \  /   Vendor             : Xilinx
// \   \   \/    Version            : $Name: mig_v1_7 $
//  \   \        Application        : MIG
//  /   /        Filename           : mem_interface_top_test_bench_0.v
// /___/   /\    Date Last Modified : $Date: 2007/02/15 12:06:16 $
// \   \  /  \   Date Created       : Mon May 2 2005
//  \___\/\___\
//
// Device      : Virtex-4
// Design Name : DDR SDRAM
// Description: Test bench to compare the write and the read data and generate
//              an error flag.
///////////////////////////////////////////////////////////////////////////////

`timescale 1ns / 1ps

`include "../rtl/mem_interface_top_parameters_0.v"

module mem_interface_top_test_bench_0
  (
   input                                CLK,
   input                                RESET,
   input                                WDF_ALMOST_FULL,
   input                                AF_ALMOST_FULL,
   input [2:0]                          BURST_LENGTH,
   input                                READ_DATA_VALID,
   input [(`data_width*2)-1:0]          READ_DATA_FIFO_OUT,
   output [35:0]                        APP_AF_ADDR,
   output                               APP_AF_WREN,
   output [(`data_width*2)-1:0]         APP_WDF_DATA,
   output [(`data_mask_width*2)-1:0]    APP_MASK_DATA,
   output                               APP_WDF_WREN,
   output                               ERROR
   );



   reg [2:0]                            state;
   reg [3:0]                            burst_count;
   reg                                  write_data_en;
   reg                                  write_addr_en;
   reg [3:0]                            state_cnt;
   reg                                  rst_r;


   wire [(`data_width*2)-1:0]           app_cmp_data;
   wire [3:0]                           burst_len;


   localparam                           idle =  3'b000;
   localparam                           write=  3'b001;
   localparam                           read =  3'b010;

   assign burst_len = BURST_LENGTH;

   always @( posedge CLK)
     rst_r <= RESET;


   // State Machine for writing to WRITE DATA & ADDRESS FIFOs
   always @ (posedge CLK) begin
      if (rst_r == 1'b1) begin  // State Machine in IDLE state
         write_data_en <= 1'b0;
         write_addr_en <= 1'b0;
         state[2:0]     <= idle;
         state_cnt <= 4'b0000;
      end
      else begin
         case (state[2:0])
           3'b000: begin // idle
              write_data_en <= 1'b0;
              write_addr_en <= 1'b0;
              if (WDF_ALMOST_FULL == 1'b0 && AF_ALMOST_FULL == 1'b0) begin
                 state[2:0]       <= write;
                 burst_count[3:0] <=  burst_len; // Burst length divided by 2
              end
              else begin
                 state[2:0]       <= idle;
                 burst_count[3:0] <= 4'b0000;
              end
           end

           3'b001: begin // write
              if (WDF_ALMOST_FULL == 1'b0 && AF_ALMOST_FULL == 1'b0) begin
                 if(state_cnt == 4'd8) begin
                    state <= read;
                    state_cnt <= 4'd0;
                    if(burst_len == 3'd1)
                      write_data_en    <= 1'b0;
                    else
                      write_data_en    <= 1'b1;
                 end
                 else begin
                    state[2:0]       <= write;
                    write_data_en    <= 1'b1;
                 end
                 if ((burst_count[3:0] != 4'b0000) && (burst_len != 3'd1))
                   burst_count[3:0] <= burst_count[3:0] - 1'b1;
                 else begin
                    if(burst_len == 3'd1)
                      burst_count[3:0] <=  burst_len;
                    else
                      burst_count[3:0] <=  burst_len - 1'b1;
                 end

                 if ((burst_count[3:0] == 4'b0001) && (state_cnt < 4'd8)) begin
                    write_addr_en  <= 1'b1;
                    state_cnt <= state_cnt + 1'b1;
                 end
                 else
                   write_addr_en  <= 1'b0;
              end
              else begin
                 write_addr_en    <= 1'b0;
                 write_data_en    <= 1'b0;
              end
           end

           3'b010: begin // read
              if ( AF_ALMOST_FULL == 1'b0) begin
                 if(state_cnt == 4'd8) begin
                    write_addr_en  <= 1'b0;
                    if (WDF_ALMOST_FULL == 1'b0) begin
                       state_cnt <= 4'd0;
                       state <= write;
                    end
                    else begin
                       state_cnt <= 4'd0;
                       state <= idle;
                    end
                 end
                 else begin
                    state[2:0]       <= read;
                    write_addr_en  <= 1'b1;
                    write_data_en    <= 1'b0;
                    state_cnt <= state_cnt + 1;
                 end
              end
              else begin
                 write_addr_en  <= 1'b0;
                 write_data_en    <= 1'b0;
              end
           end

           default: begin
              write_data_en <= 1'b0;
              write_addr_en <= 1'b0;
              state[2:0]    <= idle;
           end
         endcase
      end
   end

   mem_interface_top_cmp_rd_data_0 cmp_rd_data_00
     (
      .CLK                      (CLK),
      .RESET                    (RESET),
      .READ_DATA_VALID          (READ_DATA_VALID),
      .APP_COMPARE_DATA         (app_cmp_data),
      .READ_DATA_FIFO_OUT       (READ_DATA_FIFO_OUT),
      .ERROR                    (ERROR)
      );

   mem_interface_top_backend_rom_0 backend_rom_00
     (
      .clk0                     (CLK),
      .rst                      (RESET),
      .bkend_data_en            (write_data_en),
      .bkend_wraddr_en          (write_addr_en),
      .bkend_rd_data_valid      (READ_DATA_VALID),
      .app_af_addr              (APP_AF_ADDR),
      .app_af_WrEn              (APP_AF_WREN),
      .app_Wdf_data             (APP_WDF_DATA),
      .app_mask_data            (APP_MASK_DATA),
      .app_compare_data         (app_cmp_data),
      .app_Wdf_WrEn             (APP_WDF_WREN)
      );


endmodule

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美国产精品一区| 日韩欧美区一区二| 国产99精品国产| 久久精品国产亚洲一区二区三区| 亚洲一级二级三级| 一区二区三区在线不卡| 亚洲欧美色图小说| 亚洲综合一二区| 午夜不卡av在线| 日韩av一区二区在线影视| 奇米在线7777在线精品| 老色鬼精品视频在线观看播放| 蜜芽一区二区三区| 国产麻豆一精品一av一免费| 国产+成+人+亚洲欧洲自线| 成人av电影在线网| 欧洲一区二区av| 欧美精品国产精品| 欧美精品一区二区三区蜜臀 | 国产欧美日韩三级| 国产精品免费av| 一区二区三区四区精品在线视频| 亚洲精品免费在线| 日本欧美加勒比视频| 国产在线视视频有精品| 成人黄色网址在线观看| 欧美日韩精品福利| 久久久久久亚洲综合| 亚洲日本在线天堂| 精品制服美女丁香| av网站一区二区三区| 欧美色图激情小说| 久久久国产一区二区三区四区小说| 国产精品免费网站在线观看| 亚洲动漫第一页| 成人黄色在线网站| 日韩欧美中文字幕一区| 国产精品对白交换视频 | 在线综合+亚洲+欧美中文字幕| 日韩女优毛片在线| 亚洲欧美日韩在线播放| 久久9热精品视频| 色美美综合视频| 久久视频一区二区| 日韩在线一二三区| 99久久久国产精品免费蜜臀| 欧美成人高清电影在线| 一区二区三区在线看| 成人性生交大片免费看视频在线| 欧美日韩高清一区二区不卡| 国产精品国产三级国产普通话99 | 久久青草国产手机看片福利盒子| 亚洲欧美电影一区二区| 粉嫩aⅴ一区二区三区四区五区| 欧美日韩国产一二三| 国产精品久久久久久久久免费丝袜| 免费久久99精品国产| 欧美日韩亚州综合| 国产精品色婷婷久久58| 国产一区二区免费视频| 日韩美女一区二区三区四区| 亚洲va欧美va人人爽| 在线视频你懂得一区| 中文字幕一区二区不卡| 大胆欧美人体老妇| 久久蜜桃av一区二区天堂| 蜜乳av一区二区三区| 在线成人午夜影院| 亚洲亚洲精品在线观看| 在线观看不卡视频| 亚洲视频你懂的| 91在线你懂得| 亚洲欧美一区二区在线观看| 成人成人成人在线视频| 国产精品久久久久影院亚瑟| 懂色av一区二区三区免费观看| 久久久久久一二三区| 国产精品一区二区久激情瑜伽| 久久久久久久电影| 风间由美中文字幕在线看视频国产欧美| 日韩欧美高清在线| 激情综合色丁香一区二区| 精品国产第一区二区三区观看体验| 美女网站在线免费欧美精品| 精品久久久久久亚洲综合网| 激情都市一区二区| 欧美激情在线一区二区三区| a4yy欧美一区二区三区| 日韩一区在线看| 欧美日韩亚洲综合一区二区三区| 亚洲国产另类精品专区| 日韩精品中文字幕一区 | 亚洲欧洲日韩在线| 色综合天天做天天爱| 亚洲第一福利一区| 欧美xxxxxxxx| 99久久综合精品| 亚洲国产视频一区| 精品黑人一区二区三区久久| 国产精品综合二区| 亚洲免费电影在线| 91精品国产欧美一区二区18| 精东粉嫩av免费一区二区三区| 欧美国产1区2区| 欧美亚洲图片小说| 国产一区二区在线看| 国产精品国产三级国产aⅴ原创| 欧美日韩久久久久久| 久久精品国产99国产精品| 亚洲欧美综合另类在线卡通| 欧美精品乱码久久久久久| 国产精品一级二级三级| 一区二区激情视频| 久久女同精品一区二区| 在线一区二区观看| 国产乱理伦片在线观看夜一区| 亚洲精品ww久久久久久p站| 日韩美女一区二区三区四区| 91啪亚洲精品| 激情综合一区二区三区| 亚洲成人精品影院| 欧美国产精品劲爆| 精品美女一区二区三区| 欧美性猛交xxxxxx富婆| 国产99久久久国产精品潘金网站| 亚洲成人av一区二区三区| 亚洲国产成人自拍| 日韩免费一区二区三区在线播放| 在线欧美小视频| 北条麻妃国产九九精品视频| 美日韩黄色大片| 天堂久久一区二区三区| 日韩久久一区二区| 日本一区二区在线不卡| 久久综合色综合88| 日韩欧美国产午夜精品| 777色狠狠一区二区三区| 欧美午夜宅男影院| 色偷偷88欧美精品久久久| 成人性视频网站| 国产99久久久精品| 国产成人在线色| 国产精品亚洲视频| 韩国av一区二区三区在线观看| 蜜桃视频一区二区| 美国十次了思思久久精品导航| 丝袜诱惑亚洲看片| 日韩精品1区2区3区| 亚洲成人在线网站| 丝袜亚洲另类欧美综合| 三级久久三级久久久| 性做久久久久久免费观看| 亚洲尤物在线视频观看| 一级中文字幕一区二区| 一区二区三区四区不卡在线 | 久久精品72免费观看| 日韩高清在线一区| 麻豆国产精品一区二区三区| 久久精品久久99精品久久| 麻豆国产精品视频| 国产激情视频一区二区三区欧美 | 91在线小视频| 91搞黄在线观看| 在线不卡中文字幕播放| 欧美一级日韩免费不卡| 欧美xxx久久| 国产精品视频一二三区 | 日韩午夜激情免费电影| 日韩免费一区二区三区在线播放| 精品国产乱码久久久久久1区2区| 久久亚洲综合色| 国产精品麻豆网站| 亚洲制服丝袜一区| 麻豆精品精品国产自在97香蕉| 国产精品白丝jk黑袜喷水| 不卡视频在线观看| 欧美日韩欧美一区二区| 亚洲精品一区二区三区影院| 国产欧美日韩在线观看| 亚洲国产日韩a在线播放 | 26uuu精品一区二区在线观看| 久久久久久久久久久久久久久99| 1024成人网| 日本不卡一区二区| 波多野洁衣一区| 91精品久久久久久久91蜜桃| 久久精品在线观看| 亚洲成av人片在线观看无码| 国内精品不卡在线| 色哟哟日韩精品| 亚洲精品一区二区三区蜜桃下载 | 精品久久一区二区三区| 国产精品福利av| 久久成人精品无人区| 色噜噜久久综合| 国产日韩欧美电影| 日韩av在线免费观看不卡| 欧美色综合天天久久综合精品| 精品久久免费看| 午夜精品久久久久久久久久|