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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? sdram.v

?? Altera公司開發(fā)板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;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩av一二三| 日韩伦理免费电影| 久久精品国产一区二区三区免费看 | 久久电影网站中文字幕| 欧美一区二区女人| 久久 天天综合| 久久久久久久性| 99精品久久只有精品| 亚洲一区二区三区影院| 欧美一区二视频| 国产精品亚洲一区二区三区妖精| 国产精品高潮呻吟| 欧美日韩一区二区不卡| 蜜桃精品视频在线| 亚洲国产岛国毛片在线| 欧洲一区在线电影| 久久国产精品99精品国产| 国产精品嫩草久久久久| 欧美日韩一区在线观看| 狠狠色狠狠色合久久伊人| 亚洲欧洲精品天堂一级| 欧美日本一区二区三区| 国产成人免费视频一区| 亚洲精品欧美激情| 精品嫩草影院久久| 91蜜桃传媒精品久久久一区二区| 日日夜夜一区二区| 国产精品天天摸av网| 欧美日韩的一区二区| 高清成人在线观看| 婷婷丁香激情综合| 亚洲欧美影音先锋| 日韩一本二本av| 97se狠狠狠综合亚洲狠狠| 免费在线看一区| 亚洲免费观看视频| 久久久噜噜噜久久人人看| 在线观看91精品国产入口| 国产精品资源网站| 日韩中文欧美在线| 亚洲天堂免费在线观看视频| 亚洲精品在线观看视频| 欧美三级日韩三级国产三级| www.欧美色图| 国产精品伊人色| 热久久免费视频| 一区二区三区四区视频精品免费| 26uuuu精品一区二区| 欧美福利一区二区| 一本久久综合亚洲鲁鲁五月天| 黄网站免费久久| 日韩国产精品久久久| 亚洲欧洲精品一区二区三区| 国产天堂亚洲国产碰碰| 欧美一区二区三区不卡| 欧美午夜精品一区二区蜜桃| 成人精品视频一区二区三区尤物| 极品销魂美女一区二区三区| 调教+趴+乳夹+国产+精品| 日韩毛片高清在线播放| 国产精品水嫩水嫩| 久久久精品影视| 精品捆绑美女sm三区| 欧美一级日韩不卡播放免费| 欧美亚洲丝袜传媒另类| 91麻豆免费在线观看| 成人av在线资源网站| 国产成人鲁色资源国产91色综 | 男人的天堂久久精品| 亚洲大片免费看| 亚洲一区二区在线观看视频| 亚洲婷婷国产精品电影人久久| 国产精品乱码一区二区三区软件| 久久久精品蜜桃| 国产午夜亚洲精品理论片色戒| 2欧美一区二区三区在线观看视频| 欧美一卡二卡三卡四卡| 欧美丰满一区二区免费视频| 欧美日免费三级在线| 欧美日韩在线三级| 欧美三级在线播放| 制服丝袜中文字幕一区| 69久久99精品久久久久婷婷| 7777精品伊人久久久大香线蕉超级流畅| 欧洲在线/亚洲| 欧美精品xxxxbbbb| 欧美刺激午夜性久久久久久久| 日韩一级黄色片| 久久久久久久综合狠狠综合| 国产女主播一区| 亚洲欧美aⅴ...| 午夜激情综合网| 麻豆高清免费国产一区| 国产激情偷乱视频一区二区三区 | 成人av网站大全| 91婷婷韩国欧美一区二区| 在线视频你懂得一区二区三区| 欧美日韩在线播| 精品日韩在线观看| 国产精品久久久久久户外露出| 日韩理论片在线| 天天综合天天做天天综合| 麻豆精品国产传媒mv男同| 高清久久久久久| 91国模大尺度私拍在线视频| 91精品免费观看| 国产亚洲综合在线| 亚洲精品网站在线观看| 毛片av一区二区三区| 豆国产96在线|亚洲| 欧美日韩一区久久| 久久久久久久久久久久久夜| 一区二区三区高清在线| 日本不卡不码高清免费观看| 国产成人啪免费观看软件| 欧美午夜不卡在线观看免费| 久久综合一区二区| 亚洲精品国产精品乱码不99| 免费在线观看视频一区| 99r精品视频| 精品国产亚洲在线| 亚洲猫色日本管| 精品一区二区三区蜜桃| 99久久精品国产网站| 精品国产成人系列| 亚洲乱码国产乱码精品精的特点 | 国产精品乱人伦| 日本中文字幕一区二区视频| 成人爽a毛片一区二区免费| 678五月天丁香亚洲综合网| 国产精品情趣视频| 久久精品久久久精品美女| 色久优优欧美色久优优| www久久精品| 日韩一区精品视频| 91在线精品秘密一区二区| 日韩欧美国产综合在线一区二区三区| 国产精品福利一区| 国产乱码精品一区二区三区五月婷| 欧美色国产精品| 中文字幕一区二区三区视频| 老司机精品视频导航| 欧美日韩一区久久| 亚洲欧美一区二区三区久本道91| 国产成a人无v码亚洲福利| 日韩欧美国产综合一区| 亚洲va欧美va国产va天堂影院| 97久久精品人人爽人人爽蜜臀| 日韩欧美成人激情| 日韩黄色在线观看| 欧美在线免费观看视频| 亚洲视频一区在线| 国产91精品精华液一区二区三区| 精品国产制服丝袜高跟| 免费看欧美女人艹b| 欧美精品vⅰdeose4hd| 亚洲第一av色| 欧美日韩国产a| 亚洲影视在线播放| 色哟哟日韩精品| 一区二区三区欧美亚洲| 94色蜜桃网一区二区三区| 国产精品欧美久久久久一区二区| 国产精品一区二区免费不卡| 久久免费视频一区| 国产精品亚洲午夜一区二区三区| 精品国产电影一区二区| 国内精品伊人久久久久av一坑| 精品免费视频.| 国产资源在线一区| 精品福利av导航| 久久99精品一区二区三区| 精品国产一区二区三区四区四 | 午夜久久福利影院| 欧美精品18+| 人人超碰91尤物精品国产| 欧美mv日韩mv| 国产一区二区网址| 国产精品久久夜| 一本大道久久a久久精二百 | 免费在线观看不卡| 精品国产污污免费网站入口| 国产精品一区二区在线观看网站| 久久综合色综合88| 99视频热这里只有精品免费| 亚洲视频一区二区免费在线观看 | 亚洲大片免费看| 91精品国产综合久久久久久漫画| 丝袜美腿亚洲一区| www国产精品av| 成人aaaa免费全部观看| 亚洲精品视频免费看| 欧美图片一区二区三区| 久久国产精品区| 国产精品情趣视频| 欧洲一区二区av| 国内偷窥港台综合视频在线播放| 自拍偷拍亚洲欧美日韩| 在线观看91av| 国产福利电影一区二区三区|