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

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

?? ddr_sdram_example_driver.v

?? 基于NIOS的CF卡應用(包括了軟件和硬件),ALTERA的IP庫中只提供了底層的硬件寄存器描述頭文件.這是個基于IP核HAL的軟件,以及相應的硬件設計示例.
?? V
?? 第 1 頁 / 共 2 頁
字號:
//Legal Notice: (C)2005 Altera Corporation. All rights reserved.  Your
//use of Altera Corporation's design tools, logic functions and other
//software and tools, and its AMPP partner logic functions, and any
//output files any of the foregoing (including device programming or
//simulation files), and any associated documentation or information are
//expressly subject to the terms and conditions of the Altera Program
//License Subscription Agreement or other applicable license agreement,
//including, without limitation, that your use is for the sole purpose
//of programming logic devices manufactured by Altera and sold by Altera
//or its authorized distributors.  Please refer to the applicable
//agreement for further details.

// synthesis translate_off
`timescale 1ns / 100ps
// synthesis translate_on
//------------------------------------------------------------------------------
//This confidential and proprietary software may be used only as authorized by
//a licensing agreement from Altera Corporation.
//(C) COPYRIGHT 2004 ALTERA CORPORATION
//ALL RIGHTS RESERVED
//The entire notice above must be reproduced on all authorized copies and any
//such reproduction must be pursuant to a licensing agreement from Altera.
//Title        : Memory Controller Example Driver
//Project      : DDR SDRAM Controller
//File         : ddr_sdram_example_driver
//Revision     : V3.2.0
//Abstract:
//Configurable memory controller driver example.
//Configurable memory parameters
//- Data Width
//- Burst Length
//- Address Size (Chipsels, Bankbits, Colbits, Rowbits)
//Configure test setup
//- mode (write all, read all) or (write one, read one)
//- start address / stop address
//- address increment size (options)
//Pass Fail
//- Per byte lane (non-persistent)
//- complete (persistent)										
//----------------------------------------------------------------------------------
//Parameters:
//local Interface Data Width         : 32
//DQ_PER_DQS                         : 8
//LOCAL_AVALON_IF                    : true
//MEM_CHIPSELS                       : 1
//MEM_CHIP_BITS                      : 0
//MEM_BANK_BITS                      : 2
//MEM_ROW_BITS                       : 13
//MEM_COL_BITS                       : 9
//LOCAL_BURST_LEN                    : 1
//LOCAL_BURST_LEN_BITS               : 1
//----------------------------------------------------------------------------------
//FSM States
//S_IDLE				   : 0
//S_WRITE_ALL                        : 1
//S_WRITE_ALL_WAIT		   : 2
//S_READ_ALL                         : 3
//S_READ_ALL_WAIT                    : 4
//S_WRITE                            : 5
//S_WRITE_WAIT                       : 6
//S_READ                             : 7
//S_READ_WAIT                        : 8
//S_BURST_WRITE_ALL                  : 10
//S_BURST_READ_ALL                   : 11
//S_BURST_WRITE_WAIT                 : 12
//S_BURST_READ_WAIT                  : 13
//S_INIT                             : 9
//----------------------------------------------------------------------------------

module ddr_sdram_example_driver (
                                  // inputs:
                                   clk,
                                   local_rdata,
                                   local_rdata_valid,
                                   local_ready,
                                   reset_n,

                                  // outputs:
                                   burst_begin,
                                   local_bank_addr,
                                   local_be,
                                   local_col_addr,
                                   local_cs_addr,
                                   local_read_req,
                                   local_row_addr,
                                   local_size,
                                   local_wdata,
                                   local_write_req,
                                   pnf_per_byte,
                                   pnf_persist,
                                   test_complete
                                );

  parameter MEM_BANK_BITS = 2;
  parameter MEM_COL_BITS = 9;
  parameter col_addr_max = 511;
  parameter LOCAL_BURST_LEN_BITS = 1;
  parameter LOCAL_BURST_LEN = 1;
  parameter LOCAL_ADDR_BITS = 24;
  parameter MEM_CHIPSELS = 1;
  parameter cs_addr_max = 1;
  parameter LOCAL_DATA_BITS = 32;
  parameter row_addr_max = 8191;
  parameter bank_addr_max = 3;
  parameter MEM_ROW_BITS = 13;
  parameter MEM_DQ_PER_DQS = 8;
  parameter WRITE_ALL_MODE = 1;
  parameter AVALON_IF = "true";
  parameter MEM_CHIP_BITS = 0;


  output           burst_begin;
  output  [  1: 0] local_bank_addr;
  output  [  3: 0] local_be;
  output  [  8: 0] local_col_addr;
  output           local_cs_addr;
  output           local_read_req;
  output  [ 12: 0] local_row_addr;
  output           local_size;
  output  [ 31: 0] local_wdata;
  output           local_write_req;
  output  [  3: 0] pnf_per_byte;
  output           pnf_persist;
  output           test_complete;
  input            clk;
  input   [ 31: 0] local_rdata;
  input            local_rdata_valid;
  input            local_ready;
  input            reset_n;

  wire             LOCAL_BURST_LEN_s;
  wire    [  1: 0] MAX_BANK;
  wire             MAX_CHIPSEL;
  wire    [  8: 0] MAX_COL;
  wire    [ 12: 0] MAX_ROW;
  wire             MIN_CHIPSEL;
  wire             avalon_burst_mode;
  wire             avalon_read_burst_max_address;
  reg     [  1: 0] bank_addr;
  wire    [  3: 0] be;
  reg     [  2: 0] burst_beat_count;
  reg              burst_begin;
  reg     [  8: 0] col_addr;
  wire    [  3: 0] compare;
  reg     [  3: 0] compare_reg;
  reg     [  3: 0] compare_valid;
  reg     [  3: 0] compare_valid_reg;
  reg              cs_addr;
  wire    [ 31: 0] dgen_data;
  reg              dgen_enable;
  reg     [ 31: 0] dgen_ldata;
  reg              dgen_load;
  wire             dgen_pause;
  reg              last_rdata_valid;
  reg              last_wdata_req;
  wire    [  1: 0] local_bank_addr;
  wire    [  3: 0] local_be;
  wire    [  8: 0] local_col_addr;
  wire             local_cs_addr;
  wire             local_read_req;
  wire    [ 12: 0] local_row_addr;
  wire             local_size;
  wire    [ 31: 0] local_wdata;
  wire             local_write_req;
  wire    [  3: 0] pnf_per_byte;
  reg              pnf_persist;
  reg              pnf_persist1;
  wire             reached_max_address;
  reg              reached_max_count;
  reg              read_req;
  reg     [  7: 0] reads_remaining;
  reg              reset_address;
  reg     [ 12: 0] row_addr;
  wire             size;
  reg     [  3: 0] state;
  reg              test_complete;
  reg              wait_first_write_data;
  wire    [ 31: 0] wdata;
  wire             wdata_req;
  reg              write_req;
  reg     [  7: 0] writes_remaining;
  assign avalon_burst_mode = 0;
  assign MIN_CHIPSEL = 0;
  assign MAX_CHIPSEL = 0;
  assign MAX_ROW = 3;
  assign MAX_BANK = 3;
  assign MAX_COL = 16;
  //


  assign local_cs_addr = cs_addr;

  assign local_row_addr = row_addr;
  assign local_bank_addr = bank_addr;
  assign local_col_addr = col_addr;
  assign local_write_req = write_req;
  assign local_read_req = read_req;
  assign local_wdata = wdata;
  assign wdata = dgen_data;
  //The LOCAL_BURST_LEN_s is a signal used insted of the parameter LOCAL_BURST_LEN
  assign LOCAL_BURST_LEN_s = 1;
  //LOCAL INTERFACE (AVALON)
  assign wdata_req = write_req && local_ready;

  // Generate new data (enable lfsr) when writing or reading valid data
  assign dgen_pause = ~ (wdata_req | local_rdata_valid);

  //


  assign local_be = be;

  assign be = -1;
  assign pnf_per_byte = compare_valid_reg;
  assign local_size = size;
  //FIX
  assign size = LOCAL_BURST_LEN_s;

  assign reached_max_address = (col_addr >= (MAX_COL - (1 * 2))) && (row_addr == MAX_ROW) && (bank_addr == MAX_BANK) && (cs_addr == MAX_CHIPSEL);
  assign avalon_read_burst_max_address = (col_addr >= (MAX_COL - (1 * 4))) && (row_addr == MAX_ROW) && (bank_addr == MAX_BANK) && (cs_addr == MAX_CHIPSEL);
  example_lfsr8 LFSRGEN_0_lfsr_inst
    (
      .clk (clk),
      .data (dgen_data[7 : 0]),
      .enable (dgen_enable),
      .ldata (dgen_ldata[7 : 0]),
      .load (dgen_load),
      .pause (dgen_pause),
      .reset_n (reset_n)
    );

  defparam LFSRGEN_0_lfsr_inst.seed = 1;

  // 8 bit comparator per local byte lane
  assign compare[0] = dgen_data[7 : 0] == local_rdata[7 : 0];

  example_lfsr8 LFSRGEN_1_lfsr_inst
    (
      .clk (clk),
      .data (dgen_data[15 : 8]),
      .enable (dgen_enable),
      .ldata (dgen_ldata[15 : 8]),
      .load (dgen_load),
      .pause (dgen_pause),
      .reset_n (reset_n)
    );

  defparam LFSRGEN_1_lfsr_inst.seed = 11;

  // 8 bit comparator per local byte lane
  assign compare[1] = dgen_data[15 : 8] == local_rdata[15 : 8];

  example_lfsr8 LFSRGEN_2_lfsr_inst
    (
      .clk (clk),
      .data (dgen_data[23 : 16]),
      .enable (dgen_enable),
      .ldata (dgen_ldata[23 : 16]),
      .load (dgen_load),
      .pause (dgen_pause),
      .reset_n (reset_n)
    );

  defparam LFSRGEN_2_lfsr_inst.seed = 21;

  // 8 bit comparator per local byte lane
  assign compare[2] = dgen_data[23 : 16] == local_rdata[23 : 16];

  example_lfsr8 LFSRGEN_3_lfsr_inst
    (
      .clk (clk),
      .data (dgen_data[31 : 24]),
      .enable (dgen_enable),
      .ldata (dgen_ldata[31 : 24]),
      .load (dgen_load),
      .pause (dgen_pause),
      .reset_n (reset_n)
    );

  defparam LFSRGEN_3_lfsr_inst.seed = 31;

  // 8 bit comparator per local byte lane
  assign compare[3] = dgen_data[31 : 24] == local_rdata[31 : 24];

  //
  //-----------------------------------------------------------------
  //Main clocked process
  //-----------------------------------------------------------------
  //Read / Write control state machine & address counter
  //-----------------------------------------------------------------
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
        begin
          //Reset - asynchronously force all register outputs LOW
          state <= 1'b0;

          write_req <= 1'b0;
          read_req <= 1'b0;
          burst_begin <= 0;
          burst_beat_count <= 0;
          cs_addr <= 0;
          row_addr <= 0;
          bank_addr <= 0;
          col_addr <= 0;
          dgen_enable <= 1'b0;
          dgen_load <= 1'b0;
          wait_first_write_data <= 1'b0;
          reached_max_count <= 1'b0;
          test_complete <= 1'b0;
          writes_remaining <= 0;
          reads_remaining <= 0;
          reset_address <= 1'b0;
        end
      else 
        begin
          reset_address <= 1'b0;
          reached_max_count <= reached_max_address;
          read_req <= 1'b0;
          write_req <= 1'b0;
          dgen_load <= 1'b0;
          test_complete <= 1'b0;
          if (last_wdata_req)
              wait_first_write_data <= 0;
          if (write_req && local_ready)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国内二区三区| 99国产精品国产精品毛片| 欧美日本在线视频| 图片区小说区国产精品视频| 欧美精品日韩一本| 精品一区二区三区在线观看国产 | 国产精品色哟哟| 成人午夜短视频| 亚洲猫色日本管| 欧美人动与zoxxxx乱| 美女视频一区二区三区| 久久综合色之久久综合| 成人a区在线观看| 亚洲码国产岛国毛片在线| 538在线一区二区精品国产| 久久精品国产精品亚洲综合| 国产片一区二区三区| 91福利区一区二区三区| 欧美aaaaaa午夜精品| 国产精品视频一区二区三区不卡| 91丝袜呻吟高潮美腿白嫩在线观看| 一区二区三区高清不卡| 日韩欧美卡一卡二| 暴力调教一区二区三区| 午夜精品一区在线观看| 国产亚洲制服色| 欧美在线免费播放| 国产乱对白刺激视频不卡| 日韩一区有码在线| 日韩免费电影一区| 91免费小视频| 国内久久精品视频| 亚洲午夜精品久久久久久久久| 日韩一区二区三免费高清| 国产电影一区二区三区| 五月天国产精品| 国产精品免费丝袜| 日韩欧美一区二区久久婷婷| 91丨porny丨户外露出| 美国三级日本三级久久99| 亚洲色图另类专区| 久久综合国产精品| 宅男在线国产精品| 91蝌蚪porny| 国产剧情一区在线| 日本麻豆一区二区三区视频| 中文字幕一区视频| 久久色在线观看| 欧美一卡2卡三卡4卡5免费| 99re热视频精品| 国产乱子伦一区二区三区国色天香| 亚洲一区免费观看| 中文字幕一区二区三区四区不卡| 日韩一级片网站| 欧美日韩国产一级片| 色婷婷综合久久久| 99视频一区二区| 丁香激情综合五月| 国模大尺度一区二区三区| 免费看日韩a级影片| 亚洲一区二区在线视频| 亚洲人一二三区| 国产精品理论片| 欧美韩日一区二区三区| www国产亚洲精品久久麻豆| 成人午夜短视频| 成人精品gif动图一区| 国产高清精品久久久久| 狠狠色综合日日| 国内欧美视频一区二区| 韩国精品久久久| 国产一区久久久| 国产精品自在欧美一区| 国模娜娜一区二区三区| 国产制服丝袜一区| 国产精品12区| 成人午夜激情影院| 91在线视频免费观看| 91浏览器在线视频| 在线精品视频免费播放| 欧美日韩一区二区三区在线看| 欧美午夜电影在线播放| 欧美色综合网站| 欧美一区二区视频在线观看2020 | 一本一道久久a久久精品综合蜜臀| 波多野结衣在线一区| 99这里只有久久精品视频| 91一区二区在线观看| 91成人国产精品| 欧美日韩视频在线观看一区二区三区| 欧美中文字幕一二三区视频| 欧美日韩视频在线第一区| 欧美精品乱码久久久久久按摩| 欧美另类一区二区三区| 日韩欧美电影一区| 337p日本欧洲亚洲大胆色噜噜| 国产亚洲综合色| 亚洲精品成人少妇| 免费观看久久久4p| 国产福利视频一区二区三区| 97久久久精品综合88久久| 91福利在线观看| 日韩精品一区二区三区四区 | 色婷婷国产精品| 欧美三级中文字幕| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 亚洲在线免费播放| 久久se精品一区精品二区| 国产91精品精华液一区二区三区| 99久久婷婷国产综合精品 | 99久精品国产| 欧美人xxxx| 国产精品色哟哟网站| 亚洲v中文字幕| 国产一区二区日韩精品| 色94色欧美sute亚洲线路一ni| 91精品午夜视频| 中文字幕一区二区三区不卡| 日韩成人av影视| www.日韩av| 精品国产乱码久久久久久1区2区 | 精品国免费一区二区三区| 亚洲精品日韩综合观看成人91| 日韩精品一二三四| 99re热这里只有精品免费视频| 日韩欧美另类在线| 亚洲午夜激情网页| 成人高清免费在线播放| 日韩一级完整毛片| 亚洲图片欧美综合| 成人午夜视频在线| 日韩欧美电影在线| 亚洲高清在线视频| 不卡av电影在线播放| 2020国产精品自拍| 日韩精彩视频在线观看| 99久久精品国产一区二区三区 | 秋霞电影一区二区| 91年精品国产| 国产精品卡一卡二| 国产福利一区二区三区视频 | 久久综合九色综合欧美98| 亚洲午夜激情网页| 91福利国产成人精品照片| 亚洲欧洲日产国产综合网| 国产真实乱子伦精品视频| 欧美一区日韩一区| 亚洲国产精品一区二区久久| 91蜜桃在线观看| 国产精品理论在线观看| 国产精品18久久久久久久久 | 欧美一区二区高清| 亚洲乱码国产乱码精品精的特点| 国产91在线观看丝袜| 精品第一国产综合精品aⅴ| 日本一区中文字幕| 欧美巨大另类极品videosbest| 一区二区三区成人| 欧洲一区在线电影| 亚洲综合在线观看视频| 色综合久久综合网欧美综合网| 中文字幕日本不卡| 99久久精品费精品国产一区二区| 中文字幕乱码一区二区免费| 国产成人亚洲综合a∨婷婷| 久久久一区二区三区捆绑**| 久久99久国产精品黄毛片色诱| 91.xcao| 青草国产精品久久久久久| 欧美日韩国产经典色站一区二区三区| 亚洲精品国产视频| 欧美性色aⅴ视频一区日韩精品| 亚洲精品水蜜桃| 欧美色综合天天久久综合精品| 亚洲一区二区三区视频在线播放| 91久久精品国产91性色tv| 亚洲国产视频直播| 91精品国产色综合久久| 久久爱另类一区二区小说| 久久久99精品免费观看| 丁香六月综合激情| 亚洲精品久久久久久国产精华液| 欧美三级视频在线播放| 日韩国产欧美视频| 日韩欧美国产午夜精品| 国产精品一区二区无线| 国产精品女人毛片| 欧美日韩在线播放三区四区| 久久国产精品99久久人人澡| 久久影音资源网| 97久久久精品综合88久久| 爽好多水快深点欧美视频| 欧美大肚乱孕交hd孕妇| 成人av免费在线| 亚洲国产精品久久不卡毛片| 精品日韩欧美一区二区| 成人黄色在线视频| 午夜精品久久久久久久久久 | 97se亚洲国产综合自在线不卡| 一区二区三区视频在线观看|