|
|
关于P6系列处理器的微代码更新的研究
2 H) b8 ~0 `7 B: T) t第一稿
: P! q3 a% t) h+ q* I1 R, O作者:Jesus Molina, William Arbaugh! }$ \3 R/ l* b& h
Park大学, 2000年11月* Y! U4 i. y. B
) ]+ \- ?; e3 w+ T+ ?0 l
微代码更新特性在参考文献[3]的第8章第10节有介绍。 微代码更新由2048个字节
9 C5 l6 R E1 R! R+ X9 t的数据组成, 其中48字节是头部数据, 剩下的2000字节是微代码本身。 为了避免歧义,# G. _5 S, d3 K: ?
本文将把这2048字节叫作「微代码更新」或「微代码」, 而把开始的48字节称为「头4 T e. L8 D5 J3 @
部」, 把剩下的2000字节称为「更新数据」。 「更新数据」是为了修复对处理器规范的1 e6 i) f( l# }' c3 s |1 M
背离(Intel管这种背离叫「勘误表」(errata)。我们将用术语BUG或errata来指代这种背离)。
4 V; a8 `2 r4 S关于头部和更新数据的详细介绍, 将在本文档第3节出现。
8 K$ D8 \' n( Q8 K; ^微代码更新是通过Intel提供的软件工具完成的, 并且在重新引导时消失。 也就是说,- C0 k4 a& ^9 a
你必须在每次机器起动的时候都更新微代码。3 p8 h: x5 _. q
尽管Intel描述了微代码更新这一特征, 这种描述却是模糊的, 尤其在涉及到微代码1 T$ J3 I9 r* g N1 o
所勘正的那些错误时。 另外, 微代码加了签名(我们将在第7部分详细讲述,参考资料[3], M/ J q# o' ~) y$ L7 t" i* J
的8.10部分也有讲述), 但在资料[3]中并没说这种加密/签名究竟是怎么执行的。
" C* b+ m/ i8 |6 M ?
/ J. z! d; y( r- }1 @; O3 r7 J4 s这篇文档将讲述这些信息.
3 Y v% k+ O# o+ w' ~- h3 L/ l4 c6 l4 u
下载文档: |
|