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

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

?? eth_maccontrol.v

?? 使用方法: 以太網編程,拷貝到硬盤
?? V
字號:



`include "timescale.v"


module eth_maccontrol (MTxClk, MRxClk, TxReset, RxReset, TPauseRq, TxDataIn, TxStartFrmIn, TxUsedDataIn, 
                       TxEndFrmIn, TxDoneIn, TxAbortIn, RxData, RxValid, RxStartFrm, RxEndFrm, ReceiveEnd, 
                       ReceivedPacketGood, ReceivedLengthOK, TxFlow, RxFlow, DlyCrcEn, TxPauseTV, 
                       MAC, PadIn, PadOut, CrcEnIn, CrcEnOut, TxDataOut, TxStartFrmOut, TxEndFrmOut, 
                       TxDoneOut, TxAbortOut, TxUsedDataOut, WillSendControlFrame, TxCtrlEndFrm, 
                       ReceivedPauseFrm, ControlFrmAddressOK, SetPauseTimer, r_PassAll, RxStatusWriteLatched_sync2
                      );


parameter   Tp = 1;


input         MTxClk;                   // Transmit clock (from PHY)
input         MRxClk;                   // Receive clock (from PHY)
input         TxReset;                  // Transmit reset
input         RxReset;                  // Receive reset
input         TPauseRq;                 // Transmit control frame (from host)
input   [7:0] TxDataIn;                 // Transmit packet data byte (from host)
input         TxStartFrmIn;             // Transmit packet start frame input (from host)
input         TxUsedDataIn;             // Transmit packet used data (from TxEthMAC)
input         TxEndFrmIn;               // Transmit packet end frame input (from host)
input         TxDoneIn;                 // Transmit packet done (from TxEthMAC)
input         TxAbortIn;                // Transmit packet abort (input from TxEthMAC)
input         PadIn;                    // Padding (input from registers)
input         CrcEnIn;                  // Crc append (input from registers)
input   [7:0] RxData;                   // Receive Packet Data (from RxEthMAC)
input         RxValid;                  // Received a valid packet
input         RxStartFrm;               // Receive packet start frame (input from RxEthMAC)
input         RxEndFrm;                 // Receive packet end frame (input from RxEthMAC)
input         ReceiveEnd;               // End of receiving of the current packet (input from RxEthMAC)
input         ReceivedPacketGood;       // Received packet is good
input         ReceivedLengthOK;         // Length of the received packet is OK
input         TxFlow;                   // Tx flow control (from registers)
input         RxFlow;                   // Rx flow control (from registers)
input         DlyCrcEn;                 // Delayed CRC enabled (from registers)
input  [15:0] TxPauseTV;                // Transmit Pause Timer Value (from registers)
input  [47:0] MAC;                      // MAC address (from registers)
input         RxStatusWriteLatched_sync2;
input         r_PassAll;

output  [7:0] TxDataOut;                // Transmit Packet Data (to TxEthMAC)
output        TxStartFrmOut;            // Transmit packet start frame (output to TxEthMAC)
output        TxEndFrmOut;              // Transmit packet end frame (output to TxEthMAC)
output        TxDoneOut;                // Transmit packet done (to host)
output        TxAbortOut;               // Transmit packet aborted (to host)
output        TxUsedDataOut;            // Transmit packet used data (to host)
output        PadOut;                   // Padding (output to TxEthMAC)
output        CrcEnOut;                 // Crc append (output to TxEthMAC)
output        WillSendControlFrame;
output        TxCtrlEndFrm;
output        ReceivedPauseFrm;
output        ControlFrmAddressOK;
output        SetPauseTimer;

reg           TxUsedDataOutDetected;    
reg           TxAbortInLatched;         
reg           TxDoneInLatched;          
reg           MuxedDone;                
reg           MuxedAbort;               

wire          Pause;                    
wire          TxCtrlStartFrm;
wire    [7:0] ControlData;              
wire          CtrlMux;                  
wire          SendingCtrlFrm;           // Sending Control Frame (enables padding and CRC)
wire          BlockTxDone;


// Signal TxUsedDataOut was detected (a transfer is already in progress)
always @ (posedge MTxClk or posedge TxReset)
begin
  if(TxReset)
    TxUsedDataOutDetected <= #Tp 1'b0;
  else
  if(TxDoneIn | TxAbortIn)
    TxUsedDataOutDetected <= #Tp 1'b0;
  else
  if(TxUsedDataOut)
    TxUsedDataOutDetected <= #Tp 1'b1;
end    


// Latching variables
always @ (posedge MTxClk or posedge TxReset)
begin
  if(TxReset)
    begin
      TxAbortInLatched <= #Tp 1'b0;
      TxDoneInLatched  <= #Tp 1'b0;
    end
  else
    begin
      TxAbortInLatched <= #Tp TxAbortIn;
      TxDoneInLatched  <= #Tp TxDoneIn;
    end
end



// Generating muxed abort signal
always @ (posedge MTxClk or posedge TxReset)
begin
  if(TxReset)
    MuxedAbort <= #Tp 1'b0;
  else
  if(TxStartFrmIn)
    MuxedAbort <= #Tp 1'b0;
  else
  if(TxAbortIn & ~TxAbortInLatched & TxUsedDataOutDetected)
    MuxedAbort <= #Tp 1'b1;
end


// Generating muxed done signal
always @ (posedge MTxClk or posedge TxReset)
begin
  if(TxReset)
    MuxedDone <= #Tp 1'b0;
  else
  if(TxStartFrmIn)
    MuxedDone <= #Tp 1'b0;
  else
  if(TxDoneIn & (~TxDoneInLatched) & TxUsedDataOutDetected)
    MuxedDone <= #Tp 1'b1;
end


// TxDoneOut
assign TxDoneOut  = CtrlMux? ((~TxStartFrmIn) & (~BlockTxDone) & MuxedDone) : 
                             ((~TxStartFrmIn) & (~BlockTxDone) & TxDoneIn);

// TxAbortOut
assign TxAbortOut  = CtrlMux? ((~TxStartFrmIn) & (~BlockTxDone) & MuxedAbort) :
                              ((~TxStartFrmIn) & (~BlockTxDone) & TxAbortIn);

// TxUsedDataOut
assign TxUsedDataOut  = ~CtrlMux & TxUsedDataIn;

// TxStartFrmOut
assign TxStartFrmOut = CtrlMux? TxCtrlStartFrm : (TxStartFrmIn & ~Pause);


// TxEndFrmOut
assign TxEndFrmOut = CtrlMux? TxCtrlEndFrm : TxEndFrmIn;


// TxDataOut[7:0]
assign TxDataOut[7:0] = CtrlMux? ControlData[7:0] : TxDataIn[7:0];


// PadOut
assign PadOut = PadIn | SendingCtrlFrm;


// CrcEnOut
assign CrcEnOut = CrcEnIn | SendingCtrlFrm;



// Connecting receivecontrol module
eth_receivecontrol receivecontrol1 
(
 .MTxClk(MTxClk), .MRxClk(MRxClk), .TxReset(TxReset), .RxReset(RxReset), .RxData(RxData), 
 .RxValid(RxValid), .RxStartFrm(RxStartFrm), .RxEndFrm(RxEndFrm), .RxFlow(RxFlow), 
 .ReceiveEnd(ReceiveEnd), .MAC(MAC), .DlyCrcEn(DlyCrcEn), .TxDoneIn(TxDoneIn), 
 .TxAbortIn(TxAbortIn), .TxStartFrmOut(TxStartFrmOut), .ReceivedLengthOK(ReceivedLengthOK), 
 .ReceivedPacketGood(ReceivedPacketGood), .TxUsedDataOutDetected(TxUsedDataOutDetected), 
 .Pause(Pause), .ReceivedPauseFrm(ReceivedPauseFrm), .AddressOK(ControlFrmAddressOK), 
 .r_PassAll(r_PassAll), .RxStatusWriteLatched_sync2(RxStatusWriteLatched_sync2), .SetPauseTimer(SetPauseTimer)
);


eth_transmitcontrol transmitcontrol1
(
 .MTxClk(MTxClk), .TxReset(TxReset), .TxUsedDataIn(TxUsedDataIn), .TxUsedDataOut(TxUsedDataOut), 
 .TxDoneIn(TxDoneIn), .TxAbortIn(TxAbortIn), .TxStartFrmIn(TxStartFrmIn), .TPauseRq(TPauseRq), 
 .TxUsedDataOutDetected(TxUsedDataOutDetected), .TxFlow(TxFlow), .DlyCrcEn(DlyCrcEn), .TxPauseTV(TxPauseTV), 
 .MAC(MAC), .TxCtrlStartFrm(TxCtrlStartFrm), .TxCtrlEndFrm(TxCtrlEndFrm), .SendingCtrlFrm(SendingCtrlFrm), 
 .CtrlMux(CtrlMux), .ControlData(ControlData), .WillSendControlFrame(WillSendControlFrame), .BlockTxDone(BlockTxDone)
);



endmodule

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产乱人伦偷精品视频免下载| 欧美精品久久久久久久多人混战| 欧美三级电影网| 国产日本欧美一区二区| 午夜精品一区二区三区电影天堂 | 福利视频网站一区二区三区| 日本韩国精品在线| 国产午夜精品一区二区三区四区| 亚洲永久精品国产| gogo大胆日本视频一区| 亚洲精品一区二区在线观看| 丝袜亚洲另类丝袜在线| 欧美在线观看视频在线| 一色桃子久久精品亚洲| 粉嫩aⅴ一区二区三区四区| 日韩午夜三级在线| 午夜激情一区二区三区| 欧美色老头old∨ideo| 亚洲精品成人悠悠色影视| av在线这里只有精品| 中文字幕第一区二区| 国产精品一区二区果冻传媒| 337p日本欧洲亚洲大胆精品| 麻豆精品新av中文字幕| 欧美xfplay| 九色|91porny| 国产亚洲1区2区3区| 国产九色精品成人porny| 久久一留热品黄| 国产福利一区二区| 中文字幕精品一区二区三区精品| 国产宾馆实践打屁股91| 国产精品福利一区二区| 99久久久久久99| 亚洲男人天堂av| 在线欧美一区二区| 亚洲最色的网站| 91精品久久久久久久久99蜜臂| 日韩av一级电影| 欧美成人精品高清在线播放| 国内精品嫩模私拍在线| 国产午夜精品一区二区| 成人av电影在线网| 亚洲欧美二区三区| 欧美丰满一区二区免费视频| 久久精品国产99| 中文字幕不卡在线观看| 色哟哟精品一区| 日本网站在线观看一区二区三区| 日韩一区二区视频| 风间由美中文字幕在线看视频国产欧美 | 在线播放91灌醉迷j高跟美女| 亚洲大片精品永久免费| 日韩欧美成人一区二区| 国产成人免费视频一区| 一区二区三区不卡在线观看| 日韩视频免费直播| 国产 日韩 欧美大片| 亚洲国产欧美在线| 久久久久久麻豆| 欧亚洲嫩模精品一区三区| 麻豆91免费观看| 亚洲摸摸操操av| 久久先锋影音av鲁色资源| 色综合天天天天做夜夜夜夜做| 天涯成人国产亚洲精品一区av| 久久久久久**毛片大全| 欧美私人免费视频| 国产乱码精品一区二区三区五月婷| 最好看的中文字幕久久| 欧美不卡一二三| 色综合久久88色综合天天 | 国产精品一区久久久久| 亚洲午夜一区二区| 中文字幕不卡一区| 欧美不卡一二三| 色噜噜狠狠成人网p站| 国产一区福利在线| 午夜成人在线视频| 国产精品福利一区| 久久综合狠狠综合久久激情| 日本精品裸体写真集在线观看| 狠狠色丁香九九婷婷综合五月| 亚洲日穴在线视频| 久久你懂得1024| 欧美日韩成人一区| 91蝌蚪porny| 成人免费av在线| 老司机免费视频一区二区| 亚洲综合色自拍一区| 国产精品短视频| 久久久久久久久久久久久久久99| 欧美老女人第四色| 欧美最猛黑人xxxxx猛交| 99精品视频一区二区三区| 91视频观看视频| 国产一区在线观看麻豆| 久久精品国产精品亚洲综合| 亚洲福利一二三区| 一区二区三区**美女毛片| 中文字幕在线观看不卡| 欧美国产精品久久| 国产区在线观看成人精品| xnxx国产精品| 久久婷婷久久一区二区三区| 精品久久国产字幕高潮| 欧美大胆一级视频| 日韩欧美二区三区| 精品久久国产字幕高潮| 欧美精品一区二区三区在线播放| 91精品国产美女浴室洗澡无遮挡| 欧美日韩极品在线观看一区| 欧美亚洲禁片免费| 欧美日韩亚洲不卡| 91精品国产乱码久久蜜臀| 欧美一区二区视频在线观看2020 | 懂色中文一区二区在线播放| 国产麻豆精品视频| 国产91精品久久久久久久网曝门 | 国产精品久久久久一区 | 视频一区在线视频| 蜜桃一区二区三区在线| 久久国产精品色婷婷| 国产一区二区调教| 不卡一区中文字幕| 91福利视频在线| 91精品在线观看入口| 精品国精品国产| 国产人成亚洲第一网站在线播放| 国产精品天美传媒| 亚洲欧美日韩系列| 天天综合网天天综合色 | 久久激情综合网| 国产成人鲁色资源国产91色综| 高清国产一区二区| 在线观看91视频| 日韩一级片网址| 日本一区二区综合亚洲| 一区二区三区影院| 青青草原综合久久大伊人精品优势| 韩国一区二区三区| 91首页免费视频| 日韩视频中午一区| 1024亚洲合集| 美日韩一区二区| 91丨九色丨尤物| 欧美大肚乱孕交hd孕妇| 成人免费在线播放视频| 日韩经典中文字幕一区| 从欧美一区二区三区| 色悠久久久久综合欧美99| 欧美成人aa大片| 亚洲曰韩产成在线| 大胆亚洲人体视频| 欧美一区中文字幕| 亚洲精品自拍动漫在线| 久久精品国产**网站演员| 日本久久一区二区三区| 精品播放一区二区| 亚洲国产成人va在线观看天堂| 国产在线观看一区二区| 在线观看一区二区视频| 国产欧美一区二区精品性色超碰| 亚洲高清中文字幕| 不卡av电影在线播放| 欧美成人精品1314www| 亚洲精品中文在线影院| 成人综合婷婷国产精品久久蜜臀| 欧美日韩和欧美的一区二区| 国产精品美女www爽爽爽| 久久66热偷产精品| 欧美日韩国产小视频在线观看| 中文字幕日韩一区| 国产一区二区三区免费播放| 91精品黄色片免费大全| 一区二区三区不卡视频| 91在线观看高清| 欧美高清在线一区二区| 韩国女主播成人在线| 日韩欧美成人午夜| 日本不卡一二三| 欧美三级电影网站| 亚洲第一会所有码转帖| 日本韩国精品在线| 一卡二卡欧美日韩| 91精品办公室少妇高潮对白| 国产精品久久久久精k8| 成人午夜av电影| 久久婷婷一区二区三区| 黑人巨大精品欧美一区| 精品国产亚洲在线| 捆绑紧缚一区二区三区视频| 日韩一二三区视频| 免费观看久久久4p| 日韩欧美国产不卡| 国产精品一卡二卡| 国产人久久人人人人爽| 波多野结衣视频一区| 成人欧美一区二区三区白人 | 日韩免费高清视频|