prolj 发表于 2008-05-05 13:36

标量处理器是怎么实现的?superscalar

就是多个EU,同时发射多条指令到多个EU。就是scalar,还不敢碰superscalar。
给解释一下吧,我想明白怎么实现的。

[ 本帖最后由 prolj 于 2008-5-5 17:16 编辑 ]

albcamus 发表于 2008-05-05 16:22

你是说向量? vector but not scalar?

prolj 发表于 2008-05-05 16:46

scalar 知道的话给讲讲,谢谢

jamesr 发表于 2008-05-05 19:28

prolj 发表于 2008-05-05 20:42

有没有人知道?就是怎么设计,有Verilog的描述就不奢求了。

cjaizss 发表于 2008-05-06 13:14

EU之间资源互锁?

prolj 发表于 2008-05-06 13:24

回复 #6 cjaizss 的帖子

就是想把一个流水线的处理器改成标量的,有Verilog代码,我自己从一个简单的处理器代码改的,先做两个EU就好,以后再扩充。

cjaizss 发表于 2008-05-06 19:05

回复 #2 albcamus 的帖子

这确实是超标量机的结构
矢量机这里的矢量的意思是趋向于对于数组的操作。在矢量机的指令集里,对数组的操作的描述能力比标量机强的多,短短几条指令就可以完成对几个数组的运算。与指令发射并行无关。
比如如下:
16维矢量相加:
C=A+B
C码:
int i;
for(i=0;i<16;i++)C=A+B;
标量机要执行很多条指令(包括循环执行的),可是向量机或许就短短几条。

[ 本帖最后由 cjaizss 于 2008-5-7 00:15 编辑 ]

cjaizss 发表于 2008-05-06 19:17

超标量机靠指令译码单元来判断其并行度的,最坏的时候可能并行度为1。所以编译器的作用就显得非常重要。

prolj 发表于 2008-05-06 19:28

谢谢诶,我再看看资料,把量化方法再看看。
硬件机制比较简单,编译器emit合适的窗口大小,剩下的再让硬件去调度。
标量+VLIW我觉得会很好。

[ 本帖最后由 prolj 于 2008-5-6 19:29 编辑 ]
页: [1] 2
查看完整版本: 标量处理器是怎么实现的?superscalar