91精品国产91久久久久久_国产精品二区一区二区aⅴ污介绍_一本久久a久久精品vr综合_亚洲视频一区二区三区

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

CS 2410代做、代寫C/C++語言程序

時間:2024-03-02  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



CS 2410 Computer Architecture
Spring 2024
Course Project
Distributed: Feb 19th, 2024
Due: 11:59pm April 22
nd, 2024
Introduction:
This is a single-person project.
You are allowed and encouraged to discuss the project with your classmates, but no sharing of
the project source code and report. Please list your discussion peers, if any, in your report
submission.
One benefit of a dynamically scheduled processor is its ability to tolerate changes in latency or
issue capability in out of order speculative processors.
The purpose of this project is to evaluate this effect of different architecture parameters on a CPU
design by simulating a modified (and simplified) version of the PowerPc 604 and 620 architectures.
We will assume a **-bit architecture that executes a subset of the RISC V ISA which consists of
the following 10 instructions: fld, fsd, add, addi, slt, fadd, fsub, fmul, fdiv, bne. See Appendix A
in the textbook for instructions’ syntax and semantics.
Your simulator should take an input file as a command line input. This input file, for example,
prog.dat, will contain a RISC V assembly language program (code segment). Each line in the input
file is a RISC V instruction from the aforementioned 10 instructions. Your simulator should read
this input file, recognize the instructions, recognize the different fields of the instructions, and
simulate their execution on the architecture described below in this handout. Your will have to
implement the functional+timing simulator.
Please read the following a-g carefully before you start constructing your simulator.
The simulated architecture is a speculative, multi-issue, out of order CPU where:
(Assuming your first instruction resides in the memory location (byte address) 0x00000hex. That
is, the address for the first instruction is 0x00000hex. PC+4 points to next instruction).
a. The fetch unit fetches up to NF=4 instructions every cycle (i.e., issue width is 4).
b. A 2-bit dynamic branch predictor (initialized to predict weakly taken(t)) with 16-entry branch
target buffer (BTB) is used. It hashes the address of a branch, L, to an entry in the BTB using bits
7-4 of L.
c. The decode unit decodes (in a separate cycle) the instructions fetched by the fetch unit and stores
the decoded instructions in an instruction queue which can hold up to NI=16 instructions.
d. Up to NW=4 instructions can be issued every clock cycle to reservation stations. The
architecture has the following functional units with the shown latencies and number of reservation
stations.
Unit Latency (cycles) for operation Reservation
stations
Instructions executing
on the unit
INT 1 (integer and logic operations) 4
add, addi,slt
Load/Store 1 for address calculation 2 load buffer +
2 store buffer
fld
fsd
FPadd 3 (pipelined FP add) 3 fadd, fsub
FPmult 4 (pipelined FP multiply) 3 fmul
FPdiv 8 (non-pipelined divide) 2 fdiv
BU 1 (condition and target evaluation) 2 bne
e. A circular reorder buffer (ROB) with NR=16 entries is used with NB=4 Common Data Busses
(CDB) connecting the WB stage and the ROB to the reservation stations and the register file. You
have to design the policy to resolve contention between the ROB and the WB stage on the CDB
busses.
f. You need to perform register renaming to eliminate the false dependences in the decode stage.
Assuming we have a total of ** physical registers (p0, p1, p2, …p31). You will need to implement
a mapping table and a free list of the physical register as we discussed in class. Also, assuming
that all of the physical registers can be used by either integer or floating point instructions.
g. A dedicated/separate ALU is used for the effective address calculation in the branch unit (BU)
and simultaneously, a special hardware is used to evaluate the branch condition. Also, a
dedicated/separate ALU is used for the effective address calculation in the load/store unit. You
will also need to implement forwarding in your simulation design.
The simulator should be parameterized so that one can experiment with different values of NF, NI,
NW, NR and NB (either through command line arguments or reading a configuration file). To
simplify the simulation, we will assume that the instruction cache line contains NF instructions
and that the entire program fits in the instruction cache (i.e., it always takes one cycle to read a
cache line). Also, the data cache (single ported) is very large so that writing or reading a word into
the data cache always takes one cycle (i.e., eliminating the cache effect in memory accesses).
Your simulation should keep statistics about the number of execution cycles, the number of times
computations has stalled because 1) the reservation stations of a given unit are occupied, 2) the
reorder buffers are full. You should also keep track of the utilization of the CDB busses. This may
help identify the bottlenecks of the architecture.
You simulation should be both functional and timing correct. For functional, we check the register
and memory contents. For timing, we check the execution cycles.
Comparative analysis:
After running the benchmarks with the parameters specified above, perform the
following analysis:
1) Study the effect of changing the issue and commit width to 2. That is setting
NW=NB=2 rather than 4.
2) Study the effect of changing the fetch/decode width. That is setting NF = 2 rather than 4.
3) Study the effect of changing the NI to 4 instead of 16.
4) Study the effect of changing the number of reorder buffer entries. That is setting NR =
4, 8, and **
You need to provide the results and analysis in your project report.
Project language:
You can ONLY choose C/C++ (highly recommended) or Python to implement your project. No
other languages.
Test benchmark
Use the following as an initial benchmark (i.e. content of the input file prog.dat).
%All the registers have the initial value of 0.
%memory content in the form of address, value.
0, 111
8, 14
16, 5
24, 10
100, 2
108, 27
116, 3
124, 8
200, 12
addi R1, R0, 24
addi R2, R0, 124
fld F2, 200(R0)
loop: fld F0, 0(R1)
fmul F0, F0, F2
fld F4, 0(R2)
fadd F0, F0, F4
fsd F0, 0(R2)
addi R1, R1, -8
addi R2, R2, -8
bne R1,$0, loop
(Note that this is just a testbench for you to verify your design. Your submission should support
ALL the instructions listed in the table and you should verify and ensure the simulation
correctness for different programs that use those nine instructions. When you submit your code,
we will use more complicated programs (with multiple branches and all instructions in the table)
to test your submission).
Project submission:
You submission will include two parts: i) code package and ii) project report
1. Code package:
a. include all the source code files with code comments.
b. have a README file 1) with the instructions to compile your source code and 2) with
a description of your command line parameters/configurations and instructions of how
to run your simulator.
2. Project report
a. A figure with detailed text to describe the module design of your code. In your report,
you also need to mark and list the key data structures used in your code.
b. The results and analysis of Comparative analysis above
c. Your discussion peers and a brief summary of your discussion if any.
Project grading:
1. We will test the timing and function of your simulator using more complicated programs
consisting of the nine RISC V instructions.
2. We will ask you later to setup a demo to test your code correctness in a **on-1 fashion.
3. We will check your code design and credits are given to code structure, module design, and
code comments.
4. We will check your report for the design details and comparative analysis.
5. Refer to syllabus for Academic Integrity violation penalties.
Note that, any violation to the course integrity and any form of cheating and copying of
codes/report from the public will be reported to the department and integrity office.
Additional Note
For those who need to access departmental linux machines for the project, here is the information
log on into the linux machinesNote that you need first connect VPN in order to use these machines.
請加QQ:99515681  郵箱:99515681@qq.com   WX:codehelp 

掃一掃在手機打開當前頁
  • 上一篇:COMP9021代做、Python程序語言代寫
  • 下一篇:代寫CSE 231、代做Python設計程序
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    2025年10月份更新拼多多改銷助手小象助手多多出評軟件
    2025年10月份更新拼多多改銷助手小象助手多
    有限元分析 CAE仿真分析服務-企業/產品研發/客戶要求/設計優化
    有限元分析 CAE仿真分析服務-企業/產品研發
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
  • 短信驗證碼 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    91精品国产91久久久久久_国产精品二区一区二区aⅴ污介绍_一本久久a久久精品vr综合_亚洲视频一区二区三区
    国产一区二区高清视频| 久久亚洲免费视频| 国产精品久久二区二区| 国产iv一区二区三区| 国产网红主播福利一区二区| 国产精品亚洲产品| 成人免费视频caoporn| 亚洲欧美电影院| 欧美特级限制片免费在线观看| 日韩av在线免费观看不卡| 91精品在线观看入口| 在线视频精品一区| 99国产精品久久久| 国产麻豆精品在线观看| 亚洲一区二区偷拍精品| 国产亚洲婷婷免费| 在线播放视频一区| 欧美综合国产| 一区二区毛片| 亚洲大黄网站| 国产精品xvideos88| 成人18精品视频| 性久久久久久| 午夜a成v人精品| 欧美精品黄色| 亚洲一区二区三区影院| 国产日产欧产精品推荐色| 精品久久国产字幕高潮| 在线电影一区二区三区| 欧美久久一区二区| 欧美群妇大交群的观看方式 | 国产精品欧美极品| 国产精品三级久久久久三级| 国产偷v国产偷v亚洲高清| 精品日韩一区二区三区| 久久久99久久| 欧美国产欧美亚州国产日韩mv天天看完整 | 欧美凹凸一区二区三区视频| 国产河南妇女毛片精品久久久| 美女mm1313爽爽久久久蜜臀| 日韩成人免费电影| 丁香啪啪综合成人亚洲小说| 99re成人精品视频| 91麻豆精品国产| 久久久天天操| 欧美三级网页| 91美女福利视频| 国产麻豆精品一区二区| 精品一区二区成人精品| 欧美一级日韩一级| 色伊人久久综合中文字幕| 一区二区三区日韩精品视频| 亚洲福利视频三区| 精品一区二区免费在线观看| 不卡影院免费观看| 亚洲美女少妇无套啪啪呻吟| 欧美视频精品在线| 国产三级精品在线| 国产日产欧产精品推荐色 | 成人免费av在线| 中文一区二区| 精品一区二区免费| 国产一区91精品张津瑜| 欧美精选一区| 日韩三级精品电影久久久| 亚洲第一电影网| 欧美~级网站不卡| 欧美一级黄色片| 日日噜噜夜夜狠狠视频欧美人 | 亚洲综合在线第一页| 91日韩在线专区| 欧美一卡2卡3卡4卡| 美女在线视频一区| 在线观看日韩一区| 亚洲成av人片在线观看| 在线日韩av永久免费观看| 日韩欧美一区二区视频| 狠狠色伊人亚洲综合成人| 美日韩精品视频| 午夜精品免费在线观看| 久久福利精品| 亚洲三级电影网站| 欧美精品日韩| 国产免费成人在线视频| 91麻豆免费在线观看| 欧美国产日韩亚洲一区| 激情综合在线| 亚州成人在线电影| 一本久久a久久精品亚洲| 五月天国产精品| 日韩一区二区三区四区五区六区| 国产精品资源网站| 欧美大片国产精品| 精品91免费| 日本不卡视频在线| 欧美一级二级在线观看| 欧美在线精品一区| 亚洲v日本v欧美v久久精品| 日本高清无吗v一区| 不卡一区二区在线| 亚洲少妇最新在线视频| 欧美日韩一区久久| 欧美韩国一区| 麻豆精品在线看| 国产亚洲欧洲一区高清在线观看| 夜夜嗨一区二区| 国产又粗又猛又爽又黄91精品| 久久国产欧美日韩精品| 日韩精品一区二区三区老鸭窝| 亚洲国产欧美国产综合一区| 另类的小说在线视频另类成人小视频在线 | 日韩精品视频网| 国产女人18毛片水真多成人如厕| 久久精品99| 欧美日韩无遮挡| 国产成人午夜精品5599| 亚洲第一综合色| 中文字幕一区不卡| 日韩一级免费一区| 欧美理论电影在线| 免费久久99精品国产自| 亚洲看片一区| 国产精品成人观看视频免费| 成人免费高清视频| 精品伊人久久久久7777人| 亚洲精品欧美激情| 日韩精品中文字幕在线一区| 欧美色倩网站大全免费| 一本色道亚洲精品aⅴ| 日韩视频一区| 国产欧美三级| 国产视频一区免费看| 亚洲高清在线| 亚洲精品极品| 小嫩嫩精品导航| 色婷婷av一区二区三区gif| 色噜噜狠狠成人中文综合 | 在线观看视频日韩| 亚洲精品欧美精品| 久久久国产精品一区二区中文 | 亚洲精品乱码| 久久久久se| 日韩你懂的在线播放| 精品国产1区2区3区| 日本一区二区视频在线| 亚洲精品国产视频| 免费看欧美女人艹b| 东方欧美亚洲色图在线| 国产一区二区三区四区三区四| 影音先锋久久资源网| 久久综合九色综合久99| 欧美成人精品1314www| 综合av第一页| 国产一区二区不卡在线 | 美日韩在线观看| 欧美区国产区| 91成人免费在线| 久久综合久久综合亚洲| 亚洲人成影院在线观看| 久久99国产精品久久| 91日韩精品一区| 久久综合一区二区三区| 久久久久久自在自线| 欧美日韩成人高清| 自拍偷自拍亚洲精品播放| 日韩国产成人精品| 黄色日韩精品| 精品久久久久久无| 一区二区三区91| 欧美精品一区二| 国产精品拍天天在线| 成人av在线观| 日韩免费观看2025年上映的电影| 亚洲国产成人tv| 极品日韩久久| 国产精品妹子av| 91色乱码一区二区三区| 久久综合狠狠综合久久综合88| 亚洲第一电影网| 国产精品一区二区三区四区五区 | 首页亚洲欧美制服丝腿| 亚洲少妇一区| 国产乱妇无码大片在线观看| 色哟哟精品一区| 中文字幕在线不卡视频| 成人午夜精品在线| 亚洲一区二区毛片| 久久精品99| 日韩精品一区国产麻豆| 精品少妇一区二区三区日产乱码| 日韩av一区二区三区| 欧美 日韩 国产一区二区在线视频| 911国产精品| 亚洲精品视频在线看| 日韩精品专区在线影院重磅| 色婷婷av一区二区三区gif | av在线不卡网| 美腿丝袜亚洲综合| 亚洲精品视频观看| 久久综合久久鬼色|