|
|
关于P6系列处理器的微代码更新的研究
/ ?4 N' A5 c- `* J. r- L第一稿 V* a: \3 f! V
作者:Jesus Molina, William Arbaugh
& r/ Q" P; A8 |Park大学, 2000年11月
# q% J; [* @+ u6 ?5 e: F. `8 e5 Y6 k; z* s
微代码更新特性在参考文献[3]的第8章第10节有介绍。 微代码更新由2048个字节
5 v3 E! E$ [( M的数据组成, 其中48字节是头部数据, 剩下的2000字节是微代码本身。 为了避免歧义,
$ G4 r6 e) r+ s/ |4 f本文将把这2048字节叫作「微代码更新」或「微代码」, 而把开始的48字节称为「头 J$ y- ?3 d- U& M G! {
部」, 把剩下的2000字节称为「更新数据」。 「更新数据」是为了修复对处理器规范的# V3 C4 W u6 J) W2 v
背离(Intel管这种背离叫「勘误表」(errata)。我们将用术语BUG或errata来指代这种背离)。
+ O* y( Z ]) P2 m关于头部和更新数据的详细介绍, 将在本文档第3节出现。
4 U1 F3 L/ U% l( ?) H+ Q: T微代码更新是通过Intel提供的软件工具完成的, 并且在重新引导时消失。 也就是说,1 V# w+ h5 I" e' u/ s7 c6 d
你必须在每次机器起动的时候都更新微代码。
' ~% U; S' ]; Q尽管Intel描述了微代码更新这一特征, 这种描述却是模糊的, 尤其在涉及到微代码1 p, _1 w/ @% M2 ?' J
所勘正的那些错误时。 另外, 微代码加了签名(我们将在第7部分详细讲述,参考资料[3]$ J1 ]( }: r4 K% H" C
的8.10部分也有讲述), 但在资料[3]中并没说这种加密/签名究竟是怎么执行的。8 K* X+ F" j" S- t7 w8 E4 X5 w' k
' j4 u+ k# B3 R& R! _& y
这篇文档将讲述这些信息.
$ R9 p! D& }) t8 U, {" _5 u6 k3 j
2 A @8 B8 ?) x1 ^: |8 w下载文档: |
|