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

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

?? epcs_controller.v

?? 基于NIOS的CF卡應(yīng)用(包括了軟件和硬件),ALTERA的IP庫(kù)中只提供了底層的硬件寄存器描述頭文件.這是個(gè)基于IP核HAL的軟件,以及相應(yīng)的硬件設(shè)計(jì)示例.
?? V
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
//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
//Register map:
//addr      register      type
//0         read data     r
//1         write data    w
//2         status        r/w
//3         control       r/w
//4         reserved
//5         slave-enable  r/w
//6         end-of-packet-value r/w
//INPUT_CLOCK: 85000000
//ISMASTER: 1
//DATABITS: 8
//TARGETCLOCK: 20000000
//NUMSLAVES: 1
//CPOL: 0
//CPHA: 0
//LSBFIRST: 0
//EXTRADELAY: 1
//TARGETSSDELAY: 0.0001

module epcs_controller_sub (
                             // inputs:
                              MISO,
                              clk,
                              data_from_cpu,
                              epcs_select,
                              mem_addr,
                              read_n,
                              reset_n,
                              write_n,

                             // outputs:
                              MOSI,
                              SCLK,
                              SS_n,
                              data_to_cpu,
                              dataavailable,
                              endofpacket,
                              irq,
                              readyfordata
                           );

  output           MOSI;
  output           SCLK;
  output           SS_n;
  output  [ 15: 0] data_to_cpu;
  output           dataavailable;
  output           endofpacket;
  output           irq;
  output           readyfordata;
  input            MISO;
  input            clk;
  input   [ 15: 0] data_from_cpu;
  input            epcs_select;
  input   [  2: 0] mem_addr;
  input            read_n;
  input            reset_n;
  input            write_n;

  wire             E;
  reg              EOP;
  reg              MISO_reg;
  wire             MOSI;
  reg              ROE;
  reg              RRDY;
  wire             SCLK;
  reg              SCLK_reg;
  reg              SSO_reg;
  wire             SS_n;
  wire             TMT;
  reg              TOE;
  wire             TRDY;
  wire             control_wr_strobe;
  reg              data_rd_strobe;
  reg     [ 15: 0] data_to_cpu;
  reg              data_wr_strobe;
  wire             dataavailable;
  reg     [ 11: 0] delayCounter;
  wire             enableSS;
  wire             endofpacket;
  reg     [ 15: 0] endofpacketvalue_reg;
  wire             endofpacketvalue_wr_strobe;
  wire    [ 10: 0] epcs_control;
  reg     [ 15: 0] epcs_slave_select_holding_reg;
  reg     [ 15: 0] epcs_slave_select_reg;
  wire    [ 10: 0] epcs_status;
  reg              iEOP_reg;
  reg              iE_reg;
  reg              iROE_reg;
  reg              iRRDY_reg;
  reg              iTMT_reg;
  reg              iTOE_reg;
  reg              iTRDY_reg;
  wire             irq;
  reg              irq_reg;
  wire             p1_data_rd_strobe;
  wire    [ 15: 0] p1_data_to_cpu;
  wire             p1_data_wr_strobe;
  wire             p1_rd_strobe;
  wire    [  1: 0] p1_slowcount;
  wire             p1_wr_strobe;
  reg              rd_strobe;
  wire             readyfordata;
  reg     [  7: 0] rx_holding_reg;
  reg     [  7: 0] shift_reg;
  wire             slaveselect_wr_strobe;
  wire             slowclock;
  reg     [  1: 0] slowcount;
  reg     [  4: 0] state;
  wire             status_wr_strobe;
  reg              transmitting;
  reg              tx_holding_primed;
  reg     [  7: 0] tx_holding_reg;
  reg              wr_strobe;
  wire             write_shift_reg;
  wire             write_tx_holding;
  //epcs_control_port, which is an e_avalon_slave
  assign p1_rd_strobe = ~rd_strobe & epcs_select & ~read_n;
  // Read is a two-cycle event.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          rd_strobe <= 0;
      else if (1)
          rd_strobe <= p1_rd_strobe;
    end


  assign p1_data_rd_strobe = p1_rd_strobe & (mem_addr == 0);
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          data_rd_strobe <= 0;
      else if (1)
          data_rd_strobe <= p1_data_rd_strobe;
    end


  assign p1_wr_strobe = ~wr_strobe & epcs_select & ~write_n;
  // Write is a two-cycle event.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          wr_strobe <= 0;
      else if (1)
          wr_strobe <= p1_wr_strobe;
    end


  assign p1_data_wr_strobe = p1_wr_strobe & (mem_addr == 1);
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          data_wr_strobe <= 0;
      else if (1)
          data_wr_strobe <= p1_data_wr_strobe;
    end


  assign control_wr_strobe = wr_strobe & (mem_addr == 3);
  assign status_wr_strobe = wr_strobe & (mem_addr == 2);
  assign slaveselect_wr_strobe = wr_strobe & (mem_addr == 5);
  assign endofpacketvalue_wr_strobe = wr_strobe & (mem_addr == 6);
  assign TMT = ~transmitting & ~tx_holding_primed;
  assign E = ROE | TOE;
  assign epcs_status = {EOP, E, RRDY, TRDY, TMT, TOE, ROE, 3'b0};
  // Streaming data ready for pickup.
  assign dataavailable = RRDY;

  // Ready to accept streaming data.
  assign readyfordata = TRDY;

  // Endofpacket condition detected.
  assign endofpacket = EOP;

  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
        begin
          iEOP_reg <= 0;
          iE_reg <= 0;
          iRRDY_reg <= 0;
          iTRDY_reg <= 0;
          iTMT_reg <= 0;
          iTOE_reg <= 0;
          iROE_reg <= 0;
          SSO_reg <= 0;
        end
      else if (control_wr_strobe)
        begin
          iEOP_reg <= data_from_cpu[9];
          iE_reg <= data_from_cpu[8];
          iRRDY_reg <= data_from_cpu[7];
          iTRDY_reg <= data_from_cpu[6];
          iTMT_reg <= data_from_cpu[5];
          iTOE_reg <= data_from_cpu[4];
          iROE_reg <= data_from_cpu[3];
          SSO_reg <= data_from_cpu[10];
        end
    end


  assign epcs_control = {SSO_reg, iEOP_reg, iE_reg, iRRDY_reg, iTRDY_reg, 1'b0, iTOE_reg, iROE_reg, 3'b0};
  // IRQ output.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          irq_reg <= 0;
      else if (1)
          irq_reg <= (EOP & iEOP_reg) | ((TOE | ROE) & iE_reg) | (RRDY & iRRDY_reg) | (TRDY & iTRDY_reg) | (TOE & iTOE_reg) | (ROE & iROE_reg);
    end


  assign irq = irq_reg;
  // Slave select register.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          epcs_slave_select_reg <= 1;
      else if (write_shift_reg || control_wr_strobe & data_from_cpu[10] & ~SSO_reg)
          epcs_slave_select_reg <= epcs_slave_select_holding_reg;
    end


  // Slave select holding register.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          epcs_slave_select_holding_reg <= 1;
      else if (slaveselect_wr_strobe)
          epcs_slave_select_holding_reg <= data_from_cpu;
    end


  // slowclock is active once every 3 system clock pulses.
  assign slowclock = slowcount == 2'h2;

  assign p1_slowcount = ({2 {(transmitting && !slowclock)}} & (slowcount + 1)) |
    ({2 {(~((transmitting && !slowclock)))}} & 0);

  // Divide counter for SPI clock.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          slowcount <= 0;
      else if (1)
          slowcount <= p1_slowcount;
    end


  // End-of-packet value register.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          endofpacketvalue_reg <= 0;
      else if (endofpacketvalue_wr_strobe)
          endofpacketvalue_reg <= data_from_cpu;
    end


  assign p1_data_to_cpu = ((mem_addr == 2))? epcs_status :
    ((mem_addr == 3))? epcs_control :
    ((mem_addr == 6))? endofpacketvalue_reg :
    ((mem_addr == 5))? epcs_slave_select_reg :
    rx_holding_reg;

  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          data_to_cpu <= 0;
      else 
        // Data to cpu.
        data_to_cpu <= p1_data_to_cpu;

    end


  // Extra-delay counter.
  always @(posedge clk or negedge reset_n)
    begin
      if (reset_n == 0)
          delayCounter <= 2833;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲gay无套男同| 日韩电影在线看| 欧美一级高清大全免费观看| 国产成人在线视频免费播放| 亚洲无人区一区| 国产精品视频第一区| 欧美一级视频精品观看| av高清久久久| 国产最新精品免费| 亚洲成人动漫精品| 亚洲天堂2016| 亚洲国产精品99久久久久久久久| 欧美三级中文字幕| 99精品国产一区二区三区不卡| 欧美bbbbb| 一区二区视频在线| 国产精品麻豆99久久久久久| 日韩视频在线你懂得| 欧美午夜电影网| 99re成人在线| 白白色 亚洲乱淫| 国产麻豆精品一区二区| 日本亚洲三级在线| 亚洲国产精品一区二区www在线| 国产精品福利一区二区| 久久蜜桃香蕉精品一区二区三区| 日韩一区二区三| 欧美日本视频在线| 欧美在线观看视频在线| 91啪在线观看| 91同城在线观看| 99久久精品国产观看| 成人精品国产一区二区4080| 国产福利一区二区三区| 国产精品综合在线视频| 久久99久久久久| 免费欧美在线视频| 青青草91视频| 蜜桃av一区二区在线观看| 午夜精品久久久久久久 | 精品国产亚洲一区二区三区在线观看| 欧美日韩精品综合在线| 欧美日韩夫妻久久| 欧美色视频一区| 欧美日本视频在线| 欧美一区二区在线播放| 91精品中文字幕一区二区三区| 欧美高清视频在线高清观看mv色露露十八 | 亚洲精品日日夜夜| 亚洲人成精品久久久久久| 自拍视频在线观看一区二区| 亚洲欧洲综合另类在线| 亚洲综合一区二区| 亚洲午夜久久久久| 天堂一区二区在线| 经典三级视频一区| 国产很黄免费观看久久| 成人激情校园春色| 欧美艳星brazzers| 欧美一区二区视频网站| 精品精品国产高清a毛片牛牛| 久久久蜜臀国产一区二区| 国产精品视频yy9299一区| 中文字幕的久久| 一区二区三区精品| 蜜臀av一区二区三区| 国产精品一品二品| 91麻豆福利精品推荐| 9191精品国产综合久久久久久 | 国产欧美日韩视频一区二区| 亚洲女同一区二区| 五月天中文字幕一区二区| 久久国产麻豆精品| 99视频精品在线| 欧美日韩精品三区| 国产午夜精品一区二区三区四区| 亚洲天堂福利av| 美女诱惑一区二区| 99视频精品在线| 日韩精品一区二区三区蜜臀| 欧美国产日本韩| 亚洲成人资源在线| 国产精品99久久久久| 在线精品视频一区二区| 精品国产123| 亚洲精品国产品国语在线app| 美腿丝袜在线亚洲一区| 成人avav影音| 日韩视频一区二区三区在线播放| 国产精品网站在线观看| 午夜精品久久久久久久蜜桃app| 国产成人精品免费看| 538在线一区二区精品国产| 国产欧美精品日韩区二区麻豆天美 | 久久久久国色av免费看影院| 亚洲国产成人精品视频| 福利电影一区二区三区| 5月丁香婷婷综合| ...av二区三区久久精品| 麻豆精品一区二区综合av| 色999日韩国产欧美一区二区| 精品理论电影在线| 亚洲国产成人91porn| 99综合电影在线视频| 日韩精品一区二区在线| 亚洲精品国产品国语在线app| 国产精品中文有码| 日韩一级精品视频在线观看| 亚洲少妇中出一区| 粉嫩在线一区二区三区视频| 欧美电影免费观看高清完整版在线 | 色哟哟在线观看一区二区三区| 欧美一卡2卡三卡4卡5免费| 亚洲人成影院在线观看| 国产99久久久国产精品潘金| 欧美一区二区三区视频在线| 亚洲美女视频在线| 成人精品小蝌蚪| 久久久久久久久久看片| 日本特黄久久久高潮| 在线欧美日韩国产| 亚洲欧美一区二区三区孕妇| 大白屁股一区二区视频| 久久久午夜电影| 国产呦精品一区二区三区网站| 欧美一区二区三区在线观看| 午夜影院在线观看欧美| 欧美午夜精品理论片a级按摩| 亚洲黄色免费电影| 91免费在线看| 亚洲理论在线观看| 91色porny在线视频| 日韩一区日韩二区| 99精品视频在线观看免费| 中文字幕一区二区三| 不卡视频在线看| 国产欧美一区二区在线| 国产成人一区在线| 国产欧美va欧美不卡在线| 国产一区在线观看视频| www成人在线观看| 国产综合一区二区| 久久久.com| 国产v综合v亚洲欧| 国产精品三级av| 97国产精品videossex| 自拍偷拍国产精品| 欧美一a一片一级一片| 午夜亚洲国产au精品一区二区| 欧洲另类一二三四区| 亚洲丶国产丶欧美一区二区三区| 欧美日韩一二区| 青娱乐精品视频在线| 久久亚洲春色中文字幕久久久| 国产大片一区二区| 国产精品色一区二区三区| 91网站最新网址| 午夜电影网一区| 精品少妇一区二区三区免费观看 | 欧美日韩中文精品| 日本成人在线网站| 久久久www成人免费毛片麻豆 | 国内久久婷婷综合| 国产精品久99| 在线免费一区三区| 久久av资源网| 亚洲日韩欧美一区二区在线| 欧美日韩三级一区二区| 国内精品视频666| 中文字幕一区二区在线播放| 欧美伊人久久大香线蕉综合69| 另类专区欧美蜜桃臀第一页| 国产欧美视频在线观看| 欧美日韩在线不卡| 国产真实乱对白精彩久久| 国产精品国产三级国产aⅴ中文 | 中文字幕av一区 二区| 日本久久电影网| 韩国精品一区二区| 一区二区三区在线视频观看| 日韩亚洲欧美在线观看| 成人黄色国产精品网站大全在线免费观看 | 日韩免费看网站| 99久久国产综合精品女不卡| 日韩精品乱码免费| 国产精品入口麻豆九色| 91精品国产aⅴ一区二区| 成人av网站大全| 日本在线不卡一区| 国产精品女人毛片| 欧美一级在线视频| 欧美中文字幕一二三区视频| 奇米影视在线99精品| 日韩美女啊v在线免费观看| 日韩女优毛片在线| 欧美日韩中文字幕一区二区| 懂色av一区二区三区免费观看| 午夜电影一区二区三区| 亚洲欧美日韩人成在线播放| 精品国产免费一区二区三区四区|