|
|
关于P6系列处理器的微代码更新的研究5 ]0 ]3 L6 {$ K3 J
第一稿6 ~; g3 X3 P* j' s
作者:Jesus Molina, William Arbaugh
9 A8 v6 c2 Q5 v# w) aPark大学, 2000年11月- W/ |6 r H# ?
/ [; |# z4 R$ `* K: e) \
微代码更新特性在参考文献[3]的第8章第10节有介绍。 微代码更新由2048个字节
8 Y- V A5 j! r2 c的数据组成, 其中48字节是头部数据, 剩下的2000字节是微代码本身。 为了避免歧义,) l+ {. E0 T8 z
本文将把这2048字节叫作「微代码更新」或「微代码」, 而把开始的48字节称为「头4 g- D2 G" F9 q
部」, 把剩下的2000字节称为「更新数据」。 「更新数据」是为了修复对处理器规范的
2 l, C Z. m+ ]背离(Intel管这种背离叫「勘误表」(errata)。我们将用术语BUG或errata来指代这种背离)。
[& X: F& A/ \1 w2 B. u) ~- S关于头部和更新数据的详细介绍, 将在本文档第3节出现。
( u9 s% ]" Y1 |: {0 w& _( w微代码更新是通过Intel提供的软件工具完成的, 并且在重新引导时消失。 也就是说,
' [2 @6 O6 |7 R. o# K6 N你必须在每次机器起动的时候都更新微代码。. T2 v9 W$ `( I4 G' H. ^
尽管Intel描述了微代码更新这一特征, 这种描述却是模糊的, 尤其在涉及到微代码
) a3 I' N* G0 R) A% T所勘正的那些错误时。 另外, 微代码加了签名(我们将在第7部分详细讲述,参考资料[3]
( q$ S2 \! r8 V的8.10部分也有讲述), 但在资料[3]中并没说这种加密/签名究竟是怎么执行的。1 @, ^& \3 j0 q, J# v9 V% |
/ _& V' l2 n/ [1 n9 K6 J这篇文档将讲述这些信息.8 o; @ G, \7 ?. c8 ]& j8 a! o
4 ^; |* W9 M+ V9 \% `4 k下载文档: |
|