论文部分内容阅读
计算机为我们的生活带来了极大的便利,但同时也给我们带来了很多安全问题。在个人隐私方面,我们存储于电脑、手机中的信息可以轻易地被盗取;在财产方面,越来越多的不法分子通过网络获得用户的支付密码。计算机安全问题甚至可以给国防带来巨大的隐患。通常,解决计算机安全问题的手段是靠软件来进行防卫,但仅靠软件的防卫手段有其弊端,难以应对花样繁杂的攻击形式,也给计算机的性能带来很大的负担。而以可信计算为基础的TPM安全芯片是依靠硬件来对计算机进行保护的有效措施,不仅具有更好的安全性,而且其执行比软件更快,是当前有关计算机安全的研究领域中的热点。本文正是基于这样的思想设计一款TPM安全芯片。TPM芯片一般是以SOC的形式具体实现的,本文的设计也是以MIPS处理器为核心搭建一个SOC,通过AMBA总线挂载一些TPM协议中规定的模块,以此来作为TPM芯片的具体实现。本文所完成的模块有四个。分别是MIPS处理器、DES加密模块、AES加密模块、SHA-1加密模块。关于MIPS处理器的设计,本文通过查阅资料、调查市场已有产品等方式,了解并借鉴了一些已有产品的成功经验。在此基础上,对MIPS处理器从基本框架着手开始设计,对处理器的流水线进行了合理的分配,并设计了冒险与异常的处理、中断处理等机制。最后完成了对MIPS处理器的设计,并配合编写的汇编器对其进行了功能验证。DES与AES都是目前在国际上十分流行的加密算法,所以在本文所设计的TPM安全芯片中同时引入DES和AES两种加密算法作为对称加密引擎。本文根据DES与AES两个加密算法分别设计了DES、AES两个加密算法的工作内核,并根据TCG有关于TPM的协议要求,本文将DES模块与AES模块都设计成了密文反馈模式。SHA-1是安全哈希算法之一,在TPM协议中可以作为哈希引擎来使用。本文设计了SHA-1算法的运算内核,并对其进行验证,保证其基本功能正确。继而SHA-1内核与AHB总线的接口,使其能够在最终搭建的SOC中工作,并配合AHB总线对SHA-1内核与接口一同进行了总体的时序验证。本文使用verilog语言编写了以上模块的RTL代码,并配合AMBA总线的VIP进行验证,保证所设计的模块功能基本正确。