热点推荐
ZOL首页 > CPU频道 > CPU新闻 > 业界评论 >

龙芯2号研发过程(16)

研发人员揭内幕 解密龙芯2号研发过程

CNET中国·ZOL论坛 【转载】 2006年09月19日 06:55 评论
在本页阅读全文(共17页)

  在乱序执行的结构中, 虽然指令执行是乱序的, 但开始和结束是有序的。 指令在译码和寄存器重命名后就放在一个有序的队列中, 由该队列来记录每一条指令的执行阶段并有序地结束指令。 即指令在流水线中是有序进入、乱序执行、有序结束。

  龙芯2号的主要结构特点包括, 64位设计, 7-10级流水线, 包括取指、译码、重命名、发射、读寄存器、执行写回、提交等, 其中乘除、浮点操作、以及访存操作在执行写回阶段需要多拍。 四发射结构, 最多可以有64条指令乱序执行。 共有5个功能部件, 包括定点ALU1 (完成定点加减、逻辑、移位、转移) , 定点ALU2 (完成定点加减、逻辑、移位、乘除) , 浮点ALU1 (完成定点加减、转换、转移) , 浮点ALU2 (完成乘除、开方) , 以及访存部件 (完成访存、系统管理、数据传送) 。 通过对浮点指令fmt域的简单扩充, 浮点部件可以执行完整的定点指令以及4路SIMD的媒体指令。 在乱序执行方面, 转移猜测使用混合预测+Gshare + BTB + RAS的转移猜测方式; 通过物理寄存器到逻辑寄存器映射进行寄存器重命名, 定点浮点寄存器堆各为64项; 动态调度方面定点和浮点保留站各16项, Reorder Buffer为64项。

  在存储管理方面, TLB为64项全相联, 每项两页, 页大小在 4KB-4MB之间可变。 此外, 有一个独立的8项的指令TLB是数据TLB的子集。 与龙芯1号一样, 在TLB中增加可执行位, 防止缓冲区溢出攻击。 数据 CACHE和指令CACHE各为32KB, 二路组相联。 最多允许32个访存操作的Non-blocking访问, 访存相关在访存队列中通过全相联的查找解决, 避免了象Alpha21264或MIPS R10000中碰到访存相关时需要重新发射。 实现load-speculation, 允许前面的store 操作未确定的情况下执行load操作并返回结果。 Cache失效时实现关键字优先访问, 以减少访存等待, Uncached操作实现 uncached accelerate算法加速I/O访问。

持续近40年的战争 X86系列CPU大史记

价格性能功耗 3000名热心网友评扣肉

从皓龙146到双核3800+ 网友使用心得

PD820到底怎么样 听听论坛网友怎么说

资深消费者谈十年数十款芯片使用感受

上一页 1 ...13 14 15 16 17 下一页
频道热词:AMD  散热器  intel  
视觉焦点
CPU新闻热点
排行 文章标题
TOP10周热门CPU排行榜
  • 热门
  • 新品
查看完整榜单>>