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

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

?? command.v

?? sdram的控制器 verilog源碼
?? V
?? 第 1 頁 / 共 2 頁
字號:
/******************************************************************************
*
*  LOGIC CORE:          Command module			
*  MODULE NAME:         command()
*  COMPANY:             Northwest Logic Design, Inc.
*                       www.nwlogic.com
*
*  REVISION HISTORY:  
*
*    Revision 1.0  05/11/2000     Description: Initial Release.
*             1.1  07/10/2000     Description: change precharge to terminate
*                                              for full page accesses.
*
*  FUNCTIONAL DESCRIPTION:
*
*  This module is the command processor module for the SDR SDRAM controller.
*
*  Copyright Northwest Logic, Inc., 2000.  All rights reserved.  
******************************************************************************/
module command(
        CLK,
        RESET_N,
        SADDR,
        NOP,
        READA,
        WRITEA,
        REFRESH,
        PRECHARGE,
        LOAD_MODE,
        SC_CL,
        SC_RC,
        SC_RRD,
        SC_PM,
        SC_BL,
        REF_REQ,
        REF_ACK,
        CM_ACK,
        OE,
        SA,
        BA,
        CS_N,
        CKE,
        RAS_N,
        CAS_N,
        WE_N
        );

`include        "params.v"

input                           CLK;                    // System Clock
input                           RESET_N;                // System Reset
input   [`ASIZE-1:0]            SADDR;                  // Address
input                           NOP;                    // Decoded NOP command
input                           READA;                  // Decoded READA command
input                           WRITEA;                 // Decoded WRITEA command
input                           REFRESH;                // Decoded REFRESH command
input                           PRECHARGE;              // Decoded PRECHARGE command
input                           LOAD_MODE;              // Decoded LOAD_MODE command
input   [1:0]                   SC_CL;                  // Programmed CAS latency
input   [1:0]                   SC_RC;                  // Programmed RC delay
input   [3:0]                   SC_RRD;                 // Programmed RRD delay
input                           SC_PM;                  // programmed Page Mode
input   [3:0]                   SC_BL;                  // Programmed burst length
input                           REF_REQ;                // Hidden refresh request
output                          REF_ACK;                // Refresh request acknowledge
output                          CM_ACK;                 // Command acknowledge
output                          OE;                     // OE signal for data path module
output  [11:0]                  SA;                     // SDRAM address
output  [1:0]                   BA;                     // SDRAM bank address
output  [1:0]                   CS_N;                   // SDRAM chip selects
output                          CKE;                    // SDRAM clock enable
output                          RAS_N;                  // SDRAM RAS
output                          CAS_N;                  // SDRAM CAS
output                          WE_N;                   // SDRAM WE_N

            
reg                             CM_ACK;
reg                             REF_ACK;
reg                             OE;
reg     [11:0]                  SA;
reg     [1:0]                   BA;
reg     [1:0]                   CS_N;
reg                             CKE;
reg                             RAS_N;
reg                             CAS_N;
reg                             WE_N;



// Internal signals
reg                             do_nop;
reg                             do_reada;
reg                             do_writea;
reg                             do_writea1;
reg                             do_refresh;
reg                             do_precharge;
reg                             do_load_mode;
reg                             command_done;
reg     [7:0]                   command_delay;
reg     [3:0]                   rw_shift;
reg                             do_act;
reg                             rw_flag;
reg                             do_rw;
reg     [7:0]                   oe_shift;
reg                             oe1;
reg                             oe2;
reg                             oe3;
reg                             oe4;
reg     [3:0]                   rp_shift;
reg                             rp_done;

wire    [`ROWSIZE - 1:0]        rowaddr;
wire    [`COLSIZE - 1:0]        coladdr;
wire    [`BANKSIZE - 1:0]       bankaddr;

assign   rowaddr   = SADDR[`ROWSTART + `ROWSIZE - 1: `ROWSTART];          // assignment of the row address bits from SADDR
assign   coladdr   = SADDR[`COLSTART + `COLSIZE - 1:`COLSTART];           // assignment of the column address bits
assign   bankaddr  = SADDR[`BANKSTART + `BANKSIZE - 1:`BANKSTART];        // assignment of the bank address bits



// This always block monitors the individual command lines and issues a command
// to the next stage if there currently another command already running.
//
always @(posedge CLK or negedge RESET_N)
begin
        if (RESET_N == 0) 
        begin
                do_nop          <= 0;
                do_reada        <= 0;
                do_writea       <= 0;
                do_refresh      <= 0;
                do_precharge    <= 0;
                do_load_mode    <= 0;
                command_done    <= 0;
                command_delay   <= 0;
                rw_flag         <= 0;
                rp_shift        <= 0;
                rp_done         <= 0;
        end
        
        else
        begin

//  Issue the appropriate command if the sdram is not currently busy     
                if ((REF_REQ == 1 | REFRESH == 1) & command_done == 0 & do_refresh == 0 & rp_done == 0         // Refresh
                        & do_reada == 0 & do_writea == 0)
                        do_refresh <= 1;                                   
                else
                        do_refresh <= 0;
                       

                if ((READA == 1) & (command_done == 0) & (do_reada == 0) & (rp_done == 0) & (REF_REQ == 0))    // READA
                        do_reada <= 1;
                else
                        do_reada <= 0;
                    
                if ((WRITEA == 1) & (command_done == 0) & (do_writea == 0) & (rp_done == 0) & (REF_REQ == 0))  // WRITEA
                begin
                        do_writea <= 1;
                        do_writea1 <= 1;
                end
                else
                begin
                        do_writea <= 0;
                        do_writea1 <= 0;
                end
                if ((PRECHARGE == 1) & (command_done == 0) & (do_precharge == 0))                              // PRECHARGE
                        do_precharge <= 1;
                else
                        do_precharge <= 0;
 
                if ((LOAD_MODE == 1) & (command_done == 0) & (do_load_mode == 0))                              // LOADMODE
                        do_load_mode <= 1;
                else
                        do_load_mode <= 0;
                                               
// set command_delay shift register and command_done flag
// The command delay shift register is a timer that is used to ensure that
// the SDRAM devices have had sufficient time to finish the last command.

                if ((do_refresh == 1) | (do_reada == 1) | (do_writea == 1) | (do_precharge == 1)
                     | (do_load_mode))
                begin
                        command_delay <= 8'b11111111;
                        command_done  <= 1;
                        rw_flag <= do_reada;                                                  

                end
                
                else
                begin
                        command_done        <= command_delay[0];                // the command_delay shift operation
                        command_delay[6:0]  <= command_delay[7:1];                                
                        command_delay[7]    <= 0;
                end 
                
 
 // start additional timer that is used for the refresh, writea, reada commands               
                if (command_delay[0] == 0 & command_done == 1)
                begin
                        rp_shift <= 4'b1111;
                        rp_done <= 1;
                end
                else
                begin
                        rp_done         <= rp_shift[0];
                        rp_shift[2:0]   <= rp_shift[3:1];
                        rp_shift[3]     <= 0;
                end
        end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产91对白在线观看九色| 日韩在线观看一区二区| 制服丝袜日韩国产| 欧美日韩国产a| 7777精品伊人久久久大香线蕉经典版下载| 成人激情文学综合网| 国产精品一区二区在线播放 | 亚洲成a人v欧美综合天堂| 亚洲四区在线观看| 亚洲精品ww久久久久久p站| 亚洲久草在线视频| 亚洲一区二区在线观看视频 | 国产成人高清在线| 国产精品亚洲午夜一区二区三区| 经典三级一区二区| 成人亚洲一区二区一| 91美女在线观看| 在线不卡的av| 久久午夜电影网| 国产精品久久久久久福利一牛影视 | 欧美三级一区二区| 91精品国产欧美一区二区18| 欧美sm美女调教| 国产精品二三区| 亚洲综合色自拍一区| 麻豆freexxxx性91精品| 国产激情视频一区二区在线观看| 成a人片亚洲日本久久| 色哟哟一区二区三区| 欧美日韩aaaaa| 久久久久久久电影| 一级做a爱片久久| 麻豆精品精品国产自在97香蕉| 韩国av一区二区三区在线观看| 99久久精品99国产精品| 337p亚洲精品色噜噜噜| 欧美国产欧美综合| 日韩电影在线观看网站| 成人av网在线| 欧美va亚洲va| 亚洲成a人在线观看| 国产精品一区二区x88av| 欧美网站大全在线观看| 久久精品亚洲国产奇米99| 亚洲一区二区综合| 成人h精品动漫一区二区三区| 欧美做爰猛烈大尺度电影无法无天| 欧美变态口味重另类| 亚洲资源中文字幕| 懂色一区二区三区免费观看| 91精品国产麻豆| 依依成人精品视频| 大陆成人av片| 久久久三级国产网站| 日本亚洲视频在线| 91老师国产黑色丝袜在线| 久久免费的精品国产v∧| 同产精品九九九| 色94色欧美sute亚洲13| 国产日韩欧美高清| 韩国一区二区三区| 日韩色在线观看| 视频一区视频二区中文| 欧美综合天天夜夜久久| 亚洲欧美日韩电影| 91亚洲精华国产精华精华液| 国产欧美日韩在线视频| 韩国av一区二区三区| 欧美草草影院在线视频| 美女国产一区二区三区| 欧美一级xxx| 日韩影院免费视频| 欧美精品一卡二卡| 视频一区中文字幕国产| 欧美日韩成人激情| 亚洲成av人片一区二区三区| 欧美日韩日日夜夜| 五月激情六月综合| 制服.丝袜.亚洲.另类.中文| 日韩电影一区二区三区四区| 91精品久久久久久蜜臀| 麻豆精品在线播放| 久久久综合视频| 国产乱码精品一区二区三区av| 久久毛片高清国产| 波多野结衣中文一区| 亚洲色图视频网站| 欧美视频在线播放| 人人狠狠综合久久亚洲| 久久一二三国产| av中文字幕不卡| 亚洲一区二区三区四区在线观看| 欧美日韩一区三区| 美女精品一区二区| 中文字幕精品综合| 日本久久精品电影| 日本aⅴ亚洲精品中文乱码| 久久尤物电影视频在线观看| 国产成人精品www牛牛影视| 亚洲欧洲精品天堂一级| 欧美性大战xxxxx久久久| 免费成人av资源网| 中文字幕电影一区| 欧美日本国产视频| 国产原创一区二区| 亚洲精品欧美在线| 日韩欧美精品在线| 99久久er热在这里只有精品66| 亚洲精品国产第一综合99久久| 欧美日韩另类国产亚洲欧美一级| 激情图区综合网| 亚洲欧洲av另类| 日韩区在线观看| 99精品视频中文字幕| 日韩极品在线观看| 亚洲婷婷在线视频| 精品女同一区二区| 在线观看一区二区精品视频| 黄色小说综合网站| 亚洲国产sm捆绑调教视频 | 91亚洲精品久久久蜜桃| 六月丁香综合在线视频| 亚洲精品五月天| 国产无一区二区| 欧美二区乱c少妇| 91在线观看美女| 国产福利一区二区三区视频在线| 亚洲国产视频在线| 亚洲成人动漫在线免费观看| 国产精品久久网站| 日韩视频中午一区| 欧美在线视频日韩| 成人在线视频一区| 国产一区二区三区香蕉| 日韩中文欧美在线| 亚洲国产精品影院| 亚洲视频一区二区免费在线观看| 久久综合网色—综合色88| 欧美高清www午色夜在线视频| 欧美欧美欧美欧美首页| 91麻豆国产在线观看| 成人a级免费电影| 国产在线视频不卡二| 久久成人羞羞网站| 日本最新不卡在线| 日韩精品乱码av一区二区| 亚洲激情自拍视频| 亚洲精选免费视频| 亚洲色图在线看| 亚洲精品日日夜夜| 亚洲欧美一区二区久久| 亚洲视频图片小说| 亚洲欧美日本韩国| 亚洲激情自拍偷拍| 亚洲一级电影视频| 亚洲国产aⅴ天堂久久| 丝袜亚洲另类欧美| 日本aⅴ免费视频一区二区三区| 日韩精品亚洲一区| 免费在线观看成人| 久草热8精品视频在线观看| 久久精品国产一区二区三区免费看| 日韩av在线免费观看不卡| 天堂va蜜桃一区二区三区| 日本成人在线网站| 九一九一国产精品| 国产凹凸在线观看一区二区| 国产69精品久久久久777| 99精品在线观看视频| 91福利区一区二区三区| 欧美情侣在线播放| 精品国产一区二区国模嫣然| 亚洲国产高清在线| 一区二区三区四区乱视频| 午夜视频在线观看一区二区三区| 日韩精品电影一区亚洲| 国内精品视频666| a亚洲天堂av| 欧美精选一区二区| 国产欧美日韩亚州综合| 一区二区三区不卡在线观看| 午夜av区久久| 国产二区国产一区在线观看| 91小宝寻花一区二区三区| 欧美美女网站色| 国产亚洲精品aa| 亚洲午夜三级在线| 精品无人码麻豆乱码1区2区| 99久久er热在这里只有精品66| 欧美日韩成人一区| 欧美国产日韩在线观看| 日韩综合一区二区| a4yy欧美一区二区三区| 91麻豆精品国产综合久久久久久| 国产女人18水真多18精品一级做 | 韩国av一区二区三区四区 | 在线成人免费视频| 国产精品高潮呻吟| 紧缚奴在线一区二区三区| 色88888久久久久久影院按摩 |