作者NTUmaki (西木野真姬)
看板Grad-ProbAsk
标题[理工] 计组 多重管线回圈展开
时间Tue Aug 11 10:33:38 2020
https://i.imgur.com/yfPB5rA.jpg
https://i.imgur.com/V6BQQL0.jpg
我认为排程前後的执行结果应该是不一样的
如我第一张图画的 Memory 示意图(上面增加、下面减少)
排程前应该会动到s1上面的记忆体区块
但是排程後 他确实先往下再回算上面的记忆体区块
这样两者应该会错开一个区块(排程前会多上面4个、排程後会多下面4个)
不知道哪边有想错,还是真的就是不一样
-----
Sent from JPTT on my iPhone
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 27.247.35.73 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Grad-ProbAsk/M.1597113220.A.58D.html
1F:推 Alex548291: 那个0应该是绑在一起 没减到16 08/11 17:18
2F:→ Alex548291: 补充完整一点好了 08/11 17:29
3F:→ Alex548291: 他是只跑4次回圈 08/11 17:29
4F:→ Alex548291: 因此回圈跑完s1会变s1-16 08/11 17:29
5F:→ Alex548291: 其中t0存在0(s1) 08/11 17:29
6F:→ Alex548291: 展开後排程 08/11 17:29
7F:→ Alex548291: 他把s1-16往前拉 08/11 17:29
8F:→ Alex548291: 所以後面要加回来(表格clock cycle 5) 08/11 17:29
9F:→ Alex548291: 才能让t0存到0(s1) 08/11 17:29
10F:→ Alex548291: 不知道这样你可以理解吗? 08/11 17:29
11F:→ Alex548291: 讲得更直白一点就是 08/11 17:32
12F:→ Alex548291: 展开後的s1就变s1-16了 08/11 17:32
13F:→ Alex548291: 因为题目就说这回圈就跑4次而已 08/11 17:32
14F:→ NTUmaki: 我看不太懂, 我的意思是 你看我画的图 按照排程前的code 08/11 19:17
15F:→ NTUmaki: 他应该是对S1+16、S1+12....那边做运算 ;但是排程後变 08/11 19:17
16F:→ NTUmaki: 成图中S1所指的那块开始往下数四格 08/11 19:17
17F:→ NTUmaki: 他排程 第一个lw抓到的起始位置还是S1 之後三个抓到S1-16 08/11 19:18
18F:→ NTUmaki: 然後你看我画的图 他排程前後 第一个回圈操作的记忆体就 08/11 19:18
19F:→ NTUmaki: 不同了 08/11 19:18
20F:→ NTUmaki: 讲简短一点 我看起来排程前的code是对上面圈起来的地方做 08/11 19:19
21F:→ NTUmaki: 运算;排程後是对下面圈起来的 这样他们即使跑了4次回圈 08/11 19:19
22F:→ NTUmaki: 最後还是会错开一块 08/11 19:19
23F:推 Alex548291: 我懂你的意思 08/11 19:21
24F:→ Alex548291: 我是觉得他印错了 08/11 19:21
25F:→ Alex548291: 应该把s1-16那个指令往上写 08/11 19:21
26F:→ Alex548291: 但老师应该是要表达他等等会把s1-16拉上来 08/11 19:21
27F:→ Alex548291: 反正你把他s1当s1-16去理解就没问题了 08/11 19:22
28F:→ NTUmaki: Ok 感谢 08/11 19:23
29F:→ Alex548291: 排程前的code你要不要补一下 08/11 19:24
30F:→ Alex548291: 看上面展开的code应该是往下存欸 08/11 19:24
31F:→ Alex548291: 展开前是往上存吗? 08/11 19:24
32F:→ Alex548291: 喔喔 没事我懂了 加油 08/11 19:24
33F:→ ti51120: 这两段的s1不会是一样的初始值,但执行结果是一样的 08/13 04:36
嗯嗯嗯 如果是这样的话就合理
※ 编辑: NTUmaki (110.26.43.209 台湾), 08/13/2020 09:22:29