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

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

?? sdram.v

?? Altera公司開發板2s60 CF卡通用例程(初始化、讀、寫、測試等)
?? 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
module sdram_input_efifo_module (
                                  // inputs:
                                   clk,
                                   rd,
                                   reset_n,
                                   wr,
                                   wr_data,

                                  // outputs:
                                   almost_empty,
                                   almost_full,
                                   empty,
                                   full,
                                   rd_data
                                );

  output           almost_empty;
  output           almost_full;
  output           empty;
  output           full;
  output  [ 58: 0] rd_data;
  input            clk;
  input            rd;
  input            reset_n;
  input            wr;
  input   [ 58: 0] wr_data;

  wire             almost_empty;
  wire             almost_full;
  wire             empty;
  reg     [  1: 0] entries;
  reg     [ 58: 0] entry_0;
  reg     [ 58: 0] entry_1;
  wire             full;
  reg              rd_address;
  reg     [ 58: 0] rd_data;
  wire    [  1: 0] rdwr;
  reg              wr_address;
  assign rdwr = {rd, wr};
  assign full = entries == 2;
  assign almost_full = entries >= 1;
  assign empty = entries == 0;
  assign almost_empty = entries <= 1;
  always @(entry_0 or entry_1 or rd_address)
    begin
      case (rd_address) // synthesis parallel_case full_case
      
          1'd0: begin
              rd_data <= entry_0;
          end // 1'd0 
      
          1'd1: begin
              rd_data <= entry_1;
          end // 1'd1 
      
          default: begin
          end // default
      
      endcase // rd_address
    end


  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
        begin
          wr_address <= 0;
          rd_address <= 0;
          entries <= 0;
        end
      else 
        case (rdwr) // synthesis parallel_case full_case
        
            2'd1: begin
                // Write data
                if (!full)
                  begin
                    entries <= entries + 1;
                    wr_address <= (wr_address == 1) ? 0 : (wr_address + 1);
                  end
            end // 2'd1 
        
            2'd2: begin
                // Read data
                if (!empty)
                  begin
                    entries <= entries - 1;
                    rd_address <= (rd_address == 1) ? 0 : (rd_address + 1);
                  end
            end // 2'd2 
        
            2'd3: begin
                wr_address <= (wr_address == 1) ? 0 : (wr_address + 1);
                rd_address <= (rd_address == 1) ? 0 : (rd_address + 1);
            end // 2'd3 
        
            default: begin
            end // default
        
        endcase // rdwr
    end


  always @(posedge clk)
    begin
      //Write data
      if (wr & !full)
          case (wr_address) // synthesis parallel_case full_case
          
              1'd0: begin
                  entry_0 <= wr_data;
              end // 1'd0 
          
              1'd1: begin
                  entry_1 <= wr_data;
              end // 1'd1 
          
              default: begin
              end // default
          
          endcase // wr_address
    end




endmodule


module sdram (
               // inputs:
                az_addr,
                az_be_n,
                az_cs,
                az_data,
                az_rd_n,
                az_wr_n,
                clk,
                reset_n,

               // outputs:
                za_data,
                za_valid,
                za_waitrequest,
                zs_addr,
                zs_ba,
                zs_cas_n,
                zs_cke,
                zs_cs_n,
                zs_dq,
                zs_dqm,
                zs_ras_n,
                zs_we_n
             );

  output  [ 31: 0] za_data;
  output           za_valid;
  output           za_waitrequest;
  output  [ 11: 0] zs_addr;
  output  [  1: 0] zs_ba;
  output           zs_cas_n;
  output           zs_cke;
  output           zs_cs_n;
  inout   [ 31: 0] zs_dq;
  output  [  3: 0] zs_dqm;
  output           zs_ras_n;
  output           zs_we_n;
  input   [ 21: 0] az_addr;
  input   [  3: 0] az_be_n;
  input            az_cs;
  input   [ 31: 0] az_data;
  input            az_rd_n;
  input            az_wr_n;
  input            clk;
  input            reset_n;

  wire    [ 23: 0] CODE;
  reg              ack_refresh_request;
  reg     [ 21: 0] active_addr;
  wire    [  1: 0] active_bank;
  reg              active_cs_n;
  reg     [ 31: 0] active_data;
  reg     [  3: 0] active_dqm;
  reg              active_rnw;
  wire             almost_empty;
  wire             almost_full;
  wire             bank_match;
  wire    [  7: 0] cas_addr;
  wire             clk_en;
  wire    [  3: 0] cmd_all;
  wire    [  2: 0] cmd_code;
  wire             cs_n;
  wire             csn_decode;
  wire             csn_match;
  wire    [ 21: 0] f_addr;
  wire    [  1: 0] f_bank;
  wire             f_cs_n;
  wire    [ 31: 0] f_data;
  wire    [  3: 0] f_dqm;
  wire             f_empty;
  reg              f_pop;
  wire             f_rnw;
  wire             f_select;
  wire    [ 58: 0] fifo_read_data;
  reg     [ 11: 0] i_addr;
  reg     [  3: 0] i_cmd;
  reg     [  2: 0] i_count;
  reg     [  2: 0] i_next;
  reg     [  2: 0] i_refs;
  reg     [  2: 0] i_state;
  reg              init_done;
  reg     [ 11: 0] m_addr /* synthesis ALTERA_ATTRIBUTE =  "FAST_OUTPUT_REGISTER=ON" */;
  reg     [  1: 0] m_bank /* synthesis ALTERA_ATTRIBUTE =  "FAST_OUTPUT_REGISTER=ON" */;
  reg     [  3: 0] m_cmd /* synthesis ALTERA_ATTRIBUTE =  "FAST_OUTPUT_REGISTER=ON" */;
  reg     [  2: 0] m_count;
  reg     [ 31: 0] m_data /* synthesis ALTERA_ATTRIBUTE =  "FAST_OUTPUT_REGISTER=ON ; FAST_OUTPUT_ENABLE_REGISTER=ON" */;
  reg     [  3: 0] m_dqm /* synthesis ALTERA_ATTRIBUTE =  "FAST_OUTPUT_REGISTER=ON" */;
  reg     [  8: 0] m_next;
  reg     [  8: 0] m_state;
  reg              oe /* synthesis ALTERA_ATTRIBUTE =  "FAST_OUTPUT_ENABLE_REGISTER=ON" */;
  wire             pending;
  wire             rd_strobe;
  reg     [  2: 0] rd_valid;
  reg     [ 12: 0] refresh_counter;
  reg              refresh_request;
  wire             rnw_match;
  wire             row_match;
  wire    [ 23: 0] txt_code;
  reg              za_cannotrefresh;
  reg     [ 31: 0] za_data /* synthesis ALTERA_ATTRIBUTE =  "FAST_INPUT_REGISTER=ON" */;
  reg              za_valid;
  wire             za_waitrequest;
  wire    [ 11: 0] zs_addr;
  wire    [  1: 0] zs_ba;
  wire             zs_cas_n;
  wire             zs_cke;
  wire             zs_cs_n;
  wire    [ 31: 0] zs_dq;
  wire    [  3: 0] zs_dqm;
  wire             zs_ras_n;
  wire             zs_we_n;
  assign clk_en = 1;
  //s1, which is an e_avalon_slave
  assign {zs_cs_n, zs_ras_n, zs_cas_n, zs_we_n} = m_cmd;
  assign zs_addr = m_addr;
  assign zs_cke = clk_en;
  assign zs_dq = oe?m_data:{32{1'bz}};
  assign zs_dqm = m_dqm;
  assign zs_ba = m_bank;
  assign f_select = f_pop & pending;
  assign f_cs_n = 1'b0;
  assign cs_n = f_select ? f_cs_n : active_cs_n;
  assign csn_decode = cs_n;
  assign {f_rnw, f_addr, f_dqm, f_data} = fifo_read_data;
  sdram_input_efifo_module the_sdram_input_efifo_module
    (
      .almost_empty (almost_empty),
      .almost_full  (almost_full),
      .clk          (clk),
      .empty        (f_empty),
      .full         (za_waitrequest),
      .rd           (f_select),
      .rd_data      (fifo_read_data),
      .reset_n      (reset_n),
      .wr           ((~az_wr_n | ~az_rd_n) & !za_waitrequest),
      .wr_data      ({az_wr_n, az_addr, az_wr_n ? 4'b0 : az_be_n, az_data})
    );

  assign f_bank = {f_addr[21],f_addr[8]};
  // Refresh/init counter.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          refresh_counter <= 5000;
      else if (refresh_counter == 0)
          refresh_counter <= 781;
      else 
        refresh_counter <= refresh_counter - 1'b1;
    end


  // Refresh request signal.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          refresh_request <= 0;
      else if (1)
          refresh_request <= ((refresh_counter == 0) | refresh_request) & ~ack_refresh_request & init_done;
    end


  // Generate an Interrupt if two ref_reqs occur before one ack_refresh_request
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          za_cannotrefresh <= 0;
      else if (1)
          za_cannotrefresh <= (refresh_counter == 0) & refresh_request;
    end


  // Initialization-done flag.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          init_done <= 0;
      else if (1)
          init_done <= init_done | (i_state == 3'b101);
    end


  // **** Init FSM ****
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
        begin
          i_state <= 3'b000;
          i_next <= 3'b000;
          i_cmd <= 4'b1111;
          i_addr <= {12{1'b1}};
          i_count <= {3{1'b0}};
        end
      else 
        begin
          i_addr <= {12{1'b1}};
          case (i_state) // synthesis parallel_case full_case
          
              3'b000: begin
                  i_cmd <= 4'b1111;
                  i_refs <= 3'b0;
                  //Wait for refresh count-down after reset
                  if (refresh_counter == 0)
                      i_state <= 3'b001;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
制服丝袜亚洲播放| 日韩精品电影一区亚洲| 欧美激情一区二区三区蜜桃视频| 欧美一级欧美三级| 欧美一级一级性生活免费录像| 欧美日韩综合在线| 欧美喷潮久久久xxxxx| 欧美日韩国产美| 91精品国产一区二区| 91精品国产色综合久久不卡电影| 7777女厕盗摄久久久| 欧美一级精品在线| 久久先锋影音av| 国产精品毛片无遮挡高清| 亚洲特黄一级片| 亚洲永久免费av| 日本成人在线不卡视频| 青青草伊人久久| 国产精品综合网| 99国产精品99久久久久久| 91电影在线观看| 91精品国产色综合久久不卡电影| 精品国精品自拍自在线| 国产欧美日韩综合精品一区二区| 中文字幕一区不卡| 国产1区2区3区精品美女| 成人性生交大片| 欧洲精品一区二区| 日韩欧美国产成人一区二区| 日本一区二区三区免费乱视频| 亚洲欧洲在线观看av| 亚州成人在线电影| 国产精品一区二区无线| 日本精品裸体写真集在线观看| 欧美夫妻性生活| 国产色产综合色产在线视频| 综合av第一页| 日韩精品一二三区| 国产999精品久久久久久| 色激情天天射综合网| 日韩一区二区在线播放| 欧美国产精品v| 日韩激情视频网站| a级高清视频欧美日韩| 在线播放中文一区| 中文字幕乱码久久午夜不卡| 亚洲国产欧美在线人成| 国产一区激情在线| 欧美在线一区二区| 欧美r级在线观看| 亚洲卡通欧美制服中文| 黑人精品欧美一区二区蜜桃| 91免费视频网址| 日韩情涩欧美日韩视频| 视频一区二区国产| 久久99久久99小草精品免视看| 青青草成人在线观看| 国产成人精品一区二区三区四区| 欧美性受极品xxxx喷水| 精品国产乱码久久久久久蜜臀| 亚洲欧美日韩久久精品| 韩国av一区二区三区| 欧美视频在线一区二区三区 | 日韩视频永久免费| 国产精品电影院| 九九热在线视频观看这里只有精品| 99精品在线免费| 337p亚洲精品色噜噜| 一区二区视频在线| 91农村精品一区二区在线| 日韩一区中文字幕| av在线不卡电影| 中文字幕在线视频一区| 波多野结衣91| 亚洲精选视频在线| 91成人免费电影| 亚洲第一在线综合网站| 欧美精品在线视频| 青青草91视频| 日韩美女天天操| 国产精品一二三四| 成人免费黄色大片| 自拍av一区二区三区| 国产精品欧美久久久久一区二区| www.66久久| 一二三四社区欧美黄| 欧美人狂配大交3d怪物一区| 视频一区视频二区中文字幕| 日韩欧美在线一区二区三区| 久久 天天综合| 国产欧美1区2区3区| 91蝌蚪porny成人天涯| 亚洲制服欧美中文字幕中文字幕| 欧美三日本三级三级在线播放| 亚洲va欧美va人人爽午夜| 欧美一区二区福利在线| 国产剧情av麻豆香蕉精品| 亚洲欧洲一区二区三区| 欧美色图激情小说| 日韩影院免费视频| 久久尤物电影视频在线观看| 成人免费的视频| 亚洲高清在线精品| 精品久久免费看| av不卡免费电影| 五月婷婷激情综合网| 欧美大片在线观看一区二区| 成人黄色在线网站| 亚洲自拍都市欧美小说| 精品日韩一区二区| 91香蕉视频在线| 日韩激情一二三区| 国产欧美精品区一区二区三区| 欧美在线一二三四区| 久久国内精品视频| 亚洲国产精品成人综合 | 一区二区三区日韩精品视频| 欧美一区二区三区免费视频| 国产成人综合网| 亚洲一区二区三区四区中文字幕| 日韩欧美在线不卡| 99在线热播精品免费| 麻豆国产精品视频| 亚洲女人****多毛耸耸8| 欧美一级专区免费大片| 91视频免费观看| 精品一区二区三区视频在线观看 | 欧美日韩一区二区三区免费看| 麻豆91精品91久久久的内涵| 成人欧美一区二区三区1314| 91精品国产麻豆| 91热门视频在线观看| 免费成人av在线| 亚洲精品国产一区二区精华液 | 国产激情精品久久久第一区二区| 亚洲免费在线电影| 久久中文娱乐网| 欧美日韩aaaaaa| eeuss鲁片一区二区三区 | 琪琪一区二区三区| 亚洲免费观看视频| 久久精品视频一区二区| 4438x成人网最大色成网站| 99精品欧美一区二区三区综合在线| 喷白浆一区二区| 亚洲一区二区在线免费观看视频| 久久久久久**毛片大全| 51精品视频一区二区三区| 91啪九色porn原创视频在线观看| 国产乱国产乱300精品| 日韩不卡一区二区三区| 亚洲一卡二卡三卡四卡| 亚洲天堂免费看| 国产精品拍天天在线| 久久久久免费观看| 精品久久久三级丝袜| 欧美美女一区二区三区| 日本道在线观看一区二区| 丰满少妇久久久久久久| 国产在线视频一区二区三区| 日韩不卡一区二区| 亚洲二区视频在线| 亚洲一区视频在线| 亚洲天堂免费看| 亚洲欧美日韩在线不卡| 综合色中文字幕| 中文字幕日韩一区| 国产精品区一区二区三区| 精品剧情在线观看| 精品少妇一区二区三区日产乱码| 欧美日韩国产高清一区二区三区| 欧美在线free| 欧美日韩亚洲高清一区二区| 色婷婷久久99综合精品jk白丝| a在线欧美一区| 91小视频在线| 日本精品免费观看高清观看| 91久久精品网| 欧美色综合网站| 欧美乱妇23p| 91精品国产品国语在线不卡| 日韩午夜激情av| 337p日本欧洲亚洲大胆色噜噜| 日韩精品一区二区三区视频在线观看 | 日韩欧美国产综合一区| 欧美一级国产精品| 精品国产免费人成电影在线观看四季| 欧美精品一二三区| 日韩欧美国产不卡| 精品999久久久| 日本一区二区三级电影在线观看| 国产精品视频线看| 亚洲色图视频网站| 亚洲一区二区在线视频| 五月婷婷综合网| 极品少妇一区二区| 粉嫩av一区二区三区粉嫩| av亚洲产国偷v产偷v自拍| 色综合久久综合网97色综合| 欧美日精品一区视频|