最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

關(guān)于HDLBITS最后一題(Cs450/gshare)

2023-03-26 14:17 作者:綠酒初嘗人易醉  | 我要投稿

該題鏈接:https://hdlbits.01xz.net/wiki/Cs450/gshare

這題主要是看不懂題目,沒法理解題目意思,而且對cpu的gshare預(yù)測分支不了解,所以做不出來。

PHT示意圖

當(dāng)train_valid=1時,PHT的位置由train_pc與train_history異或得到,而PHT的值則是由狀態(tài)機或者說由train_taken來決定。狀態(tài)機是之前題目中的飽和計數(shù)器,當(dāng)狀態(tài)是11或10時,會決定predict_taken為1. predict_taken的值有PHT的狀態(tài)決定。

其中寄存器代碼編寫與上題差不多。

module top_module(

??? input clk,

??? input areset,

?

??? input? predict_valid,

??? input? [6:0] predict_pc,

??? output predict_taken,

??? output [6:0] predict_history,

?

??? input train_valid,

??? input train_taken,

??? input train_mispredicted,

??? input [6:0] train_history,

??? input [6:0] train_pc

);

??? reg pht1[127:0],pht0[127:0];//定義128個1位寄存器pht1

??? wire [6:0]ad,ad2;

???

??? assign predict_taken=pht1[ad2];

??? assign ad=train_history^train_pc;

??? assign ad2=predict_history^predict_pc;

??? always@(posedge clk or posedge areset)begin

??????? if(areset)

??????????? for(int i=0;i<128;i++)begin

??????????????? pht1[i]=0;pht0[i]=1;end

??????? else if(train_valid&train_taken)begin

??????????? if({pht1[ad],pht0[ad]}==2'b11)

??????????????? {pht1[ad],pht0[ad]}<=2'b11;

??????????? else

??????????????? {pht1[ad],pht0[ad]}<={pht1[ad],pht0[ad]}+1;

??????? end

??????? else if(train_valid&~train_taken)begin

??????????? if({pht1[ad],pht0[ad]}==2'b00)

??????????????? {pht1[ad],pht0[ad]}<=2'b00;

??????????? else

??????????????? {pht1[ad],pht0[ad]}<={pht1[ad],pht0[ad]}-1;

??????? end//之前的飽和計數(shù)器

??? end

???

??? always@(posedge clk or posedge areset)begin

??????? if(areset)

??????????? predict_history<=0;

??????? else if(train_mispredicted & train_valid)

??????????? predict_history <= {train_history[5:0],train_taken};

??????? else if(predict_valid )

??????????? predict_history <= {predict_history[5:0],predict_taken};?

??? end

?

endmodule


關(guān)于HDLBITS最后一題(Cs450/gshare)的評論 (共 條)

分享到微博請遵守國家法律
洮南市| 天气| 柘城县| 东方市| 饶平县| 沭阳县| 宽甸| 连平县| 敦化市| 康乐县| 青冈县| 城口县| 正镶白旗| 钟山县| 伽师县| 依安县| 乌拉特后旗| 新龙县| 江达县| 台北县| 探索| 建宁县| 凤台县| 都安| 虎林市| 桐乡市| 阿瓦提县| 馆陶县| 海淀区| 巨鹿县| 永顺县| 安岳县| 东方市| 南通市| 武安市| 三门峡市| 高碑店市| 张家口市| 云南省| 玉环县| 自贡市|