加法乘法動(dòng)態(tài)多功能流水線(xiàn)調(diào)度_第1頁(yè)
加法乘法動(dòng)態(tài)多功能流水線(xiàn)調(diào)度_第2頁(yè)
加法乘法動(dòng)態(tài)多功能流水線(xiàn)調(diào)度_第3頁(yè)
加法乘法動(dòng)態(tài)多功能流水線(xiàn)調(diào)度_第4頁(yè)
加法乘法動(dòng)態(tài)多功能流水線(xiàn)調(diào)度_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、實(shí)驗(yàn)報(bào)告學(xué)生姓名:學(xué)號(hào):一、實(shí)驗(yàn)室名稱(chēng):計(jì)算機(jī)學(xué)院計(jì)算中心二、實(shí)驗(yàn)項(xiàng)目名稱(chēng): 加法乘法動(dòng)態(tài)多功能流水線(xiàn)調(diào)度三、實(shí)驗(yàn)原理:把加法和乘法流水線(xiàn)分開(kāi),完成乘法流水線(xiàn)后再進(jìn)行加法流水線(xiàn)。把一個(gè)乘法任務(wù)分成三個(gè)部分,然后同時(shí)執(zhí)行多個(gè)任務(wù)以模擬指令的流水線(xiàn)調(diào)度。三個(gè)步驟每同時(shí)完 成一次任務(wù)執(zhí)行總時(shí)間就加一,直到最后一個(gè)操作數(shù)進(jìn)入流水線(xiàn),此時(shí)加法流水線(xiàn)開(kāi)始工作。把一個(gè)加法任務(wù)分成四個(gè)部分,然后同時(shí)執(zhí)行多個(gè)任務(wù)以模擬指令的流水線(xiàn)調(diào)度。四個(gè)步驟每同時(shí)完 成一次任務(wù)執(zhí)行總時(shí)間就加一,直到?jīng)]有任務(wù)時(shí)停止,看此時(shí)的時(shí)間與理論上的流水線(xiàn)調(diào)度時(shí)間的差距來(lái) 判別程序是否成功模擬了流水線(xiàn)指令的調(diào)度。四、實(shí)驗(yàn)?zāi)康模?、掌握加法

2、乘法動(dòng)態(tài)雙功能指令調(diào)度的方式,2、理解靜態(tài)多功能流水線(xiàn)和動(dòng)態(tài)多功能流水線(xiàn)在調(diào)度模式上的區(qū)別,3、了解指令并行度上限的概念。五、實(shí)驗(yàn)內(nèi)容:(一)給定要執(zhí)行的任務(wù)和執(zhí)行該任務(wù)的流水線(xiàn)結(jié)構(gòu)流水線(xiàn)的調(diào)度方式能夠提高任務(wù)的并行度,但是針對(duì)不同的任務(wù),由于相關(guān)的存在,其并 行度的提高是不一致的。在開(kāi)始程序設(shè)計(jì)前,我們首先要給定所要完成的任務(wù):這里我們使用矩陣點(diǎn)積運(yùn)算任務(wù),aibi。n的數(shù)值可以變化,通過(guò)變換n的值用同1=1一程序進(jìn)行多次模擬。X h一 - 一 - 一給定流水線(xiàn):x j 1流水線(xiàn)分五個(gè)步驟,每個(gè)步驟的執(zhí)行時(shí)間均為一個(gè)單位時(shí)間;其中1-2-3-5組成加法流 水線(xiàn),1-4-5組成乘法流水線(xiàn)。加法

3、和乘法可以同時(shí)執(zhí)行(二)對(duì)任務(wù)進(jìn)行分解動(dòng)態(tài)多功能流水線(xiàn)不同于靜態(tài)多功能流水線(xiàn),流水線(xiàn)中同時(shí)只能有多種種操作的指 令,因此不能將其劃分為兩個(gè)相互獨(dú)立的加法流水線(xiàn)和乘法流水線(xiàn)。我們考慮設(shè)計(jì)一個(gè)加法乘法混合運(yùn)算器,加法4步,乘法三步,在送入源數(shù)據(jù)時(shí)應(yīng) 指明執(zhí)行哪種運(yùn)算。(三)任務(wù)分解程序模擬的思路在實(shí)驗(yàn)二的基礎(chǔ)上。我們對(duì)設(shè)計(jì)進(jìn)行變更。加法乘法有一個(gè)類(lèi)實(shí)現(xiàn),稱(chēng)之為加乘法類(lèi)。乘法的數(shù)據(jù)源為兩個(gè)隊(duì)列,加法的數(shù)據(jù) 源為一個(gè)隊(duì)列。加法器的源數(shù)據(jù)隊(duì)列初始為空,乘法器的源數(shù)據(jù)隊(duì)列初始分別放入A1An和BiBn o(四)加乘法流水線(xiàn)的設(shè)計(jì)模擬程序的目的是為了計(jì)算總的執(zhí)行時(shí)間,因此對(duì)于每個(gè)步驟執(zhí)行的功能并不需要 關(guān)心

4、。為此設(shè)計(jì)一個(gè)能夠同時(shí)執(zhí)行加法和乘法的運(yùn)算器類(lèi),每次接收兩個(gè)輸入數(shù)據(jù),對(duì)于 加法,經(jīng)過(guò)4個(gè)時(shí)間片,輸出加法的結(jié)果;對(duì)于乘法,經(jīng)過(guò)3個(gè)時(shí)間片,輸出加法的結(jié) 果。時(shí)間片可以用定時(shí)器來(lái)模擬。(五)乘法流水線(xiàn)的設(shè)計(jì)乘法流水線(xiàn)分為三個(gè)步驟,每個(gè)步驟時(shí)間花費(fèi)是一個(gè)單位時(shí)間。模擬程序的目的是為了計(jì)算總的執(zhí)行時(shí)間,因此對(duì)于每個(gè)步驟執(zhí)行的功能并不需要關(guān)心。為此設(shè)計(jì)一個(gè)總步數(shù)為三步的加法器,接收兩個(gè)輸入數(shù)據(jù),經(jīng)過(guò)3個(gè)時(shí)間片,輸出 乘法的結(jié)果。時(shí)間片可以用定時(shí)器來(lái)模擬。(五)程序設(shè)計(jì)程序應(yīng)包括三個(gè)隊(duì)列,一個(gè)加乘法類(lèi),一個(gè)定時(shí)器,一個(gè)輸出對(duì)話(huà)框。兩個(gè)乘法隊(duì)列用于存放源數(shù)據(jù),一開(kāi)始將A1An和B1-Bn分別放入兩個(gè)乘法

5、隊(duì)列。啟動(dòng)定時(shí)器,每一個(gè)時(shí)間片從兩個(gè)乘法隊(duì)列中各取出一個(gè)源數(shù)據(jù)、或者從加法隊(duì)列 中取出兩個(gè)數(shù)據(jù)源(依次只能是兩者中的一種,可以考慮首先從加法隊(duì)列中取,請(qǐng)思考 為什么加法優(yōu)先?),送入加乘法器(可以通過(guò)調(diào)用乘法器中對(duì)應(yīng)的加法接口函數(shù)或者乘 法接口函數(shù),把源數(shù)據(jù)作為參數(shù)傳入)。構(gòu)造加乘法器類(lèi),可以考慮用一個(gè)長(zhǎng)度對(duì)5的執(zhí)行隊(duì)列來(lái)模擬流水線(xiàn)的5個(gè)步驟, 對(duì)于隊(duì)列的元素,除了要表示兩個(gè)源數(shù)據(jù)外,還需要表示對(duì)應(yīng)這兩個(gè)數(shù)據(jù)所要執(zhí)行的操 作(乘法或加法),每個(gè)時(shí)間片將隊(duì)列的數(shù)據(jù)根據(jù)執(zhí)行的操作依次下壓一格(加法下壓的 順序是1-2-3-5,乘法下壓的順序是1-4-5),隊(duì)列尾的數(shù)據(jù)進(jìn)行對(duì)應(yīng)的計(jì)算,并將結(jié)果 壓入

6、加法器源數(shù)據(jù)隊(duì)列。當(dāng)乘法源隊(duì)列和乘法源隊(duì)列均為空且加乘法器的執(zhí)行隊(duì)列也為空(所有運(yùn)算執(zhí)行完 畢)時(shí),任務(wù)執(zhí)行完畢。用一個(gè)記數(shù)值表示時(shí)間開(kāi)銷(xiāo),每個(gè)時(shí)間片對(duì)該記數(shù)值加1。最后的記數(shù)值是任務(wù)的 總的時(shí)間開(kāi)銷(xiāo)。(五)多次模擬可以通過(guò)循環(huán)的方式對(duì)n從4 20進(jìn)行循環(huán),將每次模擬運(yùn)行的時(shí)間開(kāi)銷(xiāo)值在對(duì)話(huà) 框中顯示出來(lái)。如果可能將結(jié)果打印。六、實(shí)驗(yàn)器材(設(shè)備、元器件):PC 機(jī)一臺(tái),Visual StudioC+2010七、實(shí)驗(yàn)步驟及操作:紿定流水線(xiàn):算法原理闡述(包括如何實(shí)現(xiàn)流水線(xiàn),如何實(shí)現(xiàn)隊(duì)列,數(shù)據(jù)相關(guān)的分解策略);實(shí)現(xiàn)流水線(xiàn)的方法:通過(guò)三個(gè)乘法子程序和四個(gè)加法子程序模擬流水線(xiàn)的各個(gè)步驟。實(shí)現(xiàn)隊(duì)列:兩個(gè)數(shù)

7、據(jù)源隊(duì)列和一個(gè)結(jié)果隊(duì)列,前兩個(gè)數(shù)據(jù)源對(duì)應(yīng)位相乘后結(jié)果放進(jìn)結(jié)果隊(duì)列,然后加 法流水線(xiàn)從結(jié)果隊(duì)列取數(shù)據(jù)運(yùn)算。數(shù)據(jù)相關(guān)的分解策略:從鍵盤(pán)讀入數(shù)據(jù)個(gè)數(shù),進(jìn)行乘法流水線(xiàn)時(shí)每次取對(duì)應(yīng)的兩個(gè)數(shù)據(jù)源數(shù)據(jù)進(jìn)行運(yùn)算。然后加法流水線(xiàn)時(shí)每次開(kāi)始時(shí)取兩個(gè)數(shù),可操作數(shù)減二,執(zhí)行完最后一步可操作數(shù)加一。算法流程圖(如何模擬加法流水線(xiàn)在每個(gè)單位時(shí)間的流動(dòng));關(guān)鍵數(shù)據(jù)結(jié)構(gòu)的定義和解釋?zhuān)籭nt count=0;/數(shù) 據(jù)個(gè)數(shù)(n)int scount=0;/控制乘法數(shù)據(jù)個(gè)數(shù)int time=0;/總時(shí)間int temp1=1;/記錄是否有加法步驟在執(zhí)行任務(wù)int temp2=1;/,己錄是否有乘法步驟在執(zhí)行任務(wù)int t1;/ti

8、為每個(gè)加法步驟的返回值int tt1;/tti為每個(gè)乘法步驟的返回值int source115;/兩個(gè)數(shù)據(jù)源int source215;int result15;/每步乘法結(jié)果保留區(qū)int Add1()/Addi 為加法步驟 iint Mul1()/Mul為乘法步驟i八、實(shí)驗(yàn)數(shù)據(jù)及結(jié)果分析:(給出5組及以上實(shí)驗(yàn)數(shù)據(jù),5n15,畫(huà)出每組數(shù)據(jù)的時(shí)空?qǐng)D)任務(wù)表達(dá)式程序模擬時(shí)間時(shí)空?qǐng)D計(jì)算時(shí)間i=1aiXY ai*bii = 11717 ai*bii = 11919 ai*bii = 12121 ai*bii = 12323 ai*bii = 12525N=56789234567091234567S91

9、 234567S91 234567S91011121314151617e. E: VC_pro j ect t est Debugt est. eenPlease input a 5T ine is 17,andDo you uant to nPlease input a 烏Tine is 19,andDo y(ju uant to nPlease input a 7T ine is 21,andy(ju uant to nPlease input a8Tine is 23,andy(ju uant toPlease input a pTine is 25,andnumber result is 55 exit : &r N number result is 91 exit : &r N number result is 14S exit : &r N number result is 2?4 exit : &r N number result is 285LdDo y(ju uant to exit : or N九、實(shí)驗(yàn)結(jié)論:由實(shí)驗(yàn)?zāi)M的時(shí)空?qǐng)D,所得的結(jié)果和通過(guò)繪出時(shí)空?qǐng)D所得的結(jié)果是一致的。即所用 的時(shí)間是一樣的。所以程序是正確的。通過(guò)多組數(shù)據(jù),正確的模擬

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論