集成电路设计步骤范文
时间:2023-10-11 17:24:47
导语:如何才能写好一篇集成电路设计步骤,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
关键词:集成电路设计;应用型人才;课程改革
中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2016)14-0059-02
一、引言
在过去的20多年来,中国教育实现两大历史性跨越。第一是实现了基本普及义务教育,基本扫除青壮年文盲的目标;第二是中国高等教育开始迈入大众化阶段,高教毛入学率达到17%。据《2012年中国大学生就业报告》显示[1],在2011年毕业的大学生中,有近57万人处于失业状态,10多万人选择“啃老”;即使工作一年的人,对工作的满意率也只有47%。2012年,全国普通高校毕业生规模达到680万人,毕业人数再创新高,大学生将面临越来越沉重的就业压力。面对这样的困境,国家相关部分提出了一系列的举措,其中对本科毕业生的培养目标逐渐向应用型人才转变[2-4]。集成电路作为信息产业的基础和核心,是国民经济和社会发展的战略性产业,已成为当前国际竞争的焦点和衡量一个国家或地区现代化程度以及综合国力的重要标志。本文将在对集成电路设计专业特点分析的基础上,以北京信息科技大学集成电路设计专业课程设置为例,介绍面向应用型人才培养目标地集成电路设计本科课程现阶段存在的问题并给出相关可行的改革方案。
二、集成电路设计专业特点
进入本世纪后,我国的集成电路发展迅速,集成电路设计需求剧增。为了适应社会发展的需要,国家开始加大推广集成电路设计相关课程的本科教学工作[5]。经过十年多的发展,集成电路设计专业特色也越来越明显。
首先,集成电路设计专业对学生的专业基础知识要求高。随着工艺的不断进步,集成电路芯片的尺寸不断下降,芯片功能不断增强,功耗越来越低,速度越来越快。但随着器件尺寸的不断下降,组成芯片的最基本单元――“器件”的高阶特性对电路性能的影响越来越大。除了器件基础,电路设计人员同时还需要了解后端电路设计相关的版图、工艺、封装、测试等相关基础知识,而这些流程环环相扣,任何一个环节出现问题,很难想象芯片能正常工作[6]。因此,对于一个合格的电路设计人员,深厚的专业基础知识是必不可少的。
其次,集成电路设计专业需要学生对各种电子设计自动化工具熟悉,实践能力强。随着电子设计自动化工具的不断发展,在电路设计的每一个阶段,电路设计人员可以通过计算机完成电路设计的部分或全部的相关内容。另一方面,电子设计自动化工具的相关比较多,即使是同一家公司的同一种软件的更新速度相当快,集成电路设计工具种类繁多,而且没有统一的标准这对集成电路设计教学增加了很大的难度。
再次,集成电路设计专业的相关教学工作量大。正如前面所介绍,要完成一个电路芯片的设计,需要电路设计人员需要了解从器件基础到电路搭建、电路仿真调试、版图、工艺、封装、测试等相关知识,同时还要通过实验熟悉各种电子设计自动化工具的使用。所有相关内容对集成电路设计专业的教学内容提出了更多的要求,但从现有的情况看,相关专业的课时数目难以改变,所以在有限的课时内如何合理分配教学内容是集成电路设计专业教师重要的工作。
最后,集成电路设计专业对配套的软、硬件平台要求高,投入资金成本高。从现有的情况看,国际上有4大集成电路设计EDA公司,还有很多中、小型EDA公司。每个公司的产品各不相同,即使针对相同的电路芯片,设计自动化工具也各不相同。在硬件方面,软件的安装通常在高性能的服务器上,因此,硬件方面的成本也很高。软硬件方面的成本严重地阻碍了国内很多高等院校的集成电路设计专业发展。
三、集成电路设计专业课程设置及存在的问题
在集成电路设计专业课程设置方面,不同的学校的课程设置各不相同。但总的来说可以分为三类:基础课、专业课和选修课。在三类课程的设置方面,每个学校的定义各不相同,主要是根据本校集成电路设计专业的侧重点不同而有所区别。从国内几大相关院校的课程设置看,基础课主要包括:《固体物理》、《半导体物理》、《晶体管原理》、《模拟电子技术》、《数字电子技术》等;专业课主要包括:《模拟集成电路设计》、《数字集成电路设计》、《信号处理》、《高频电路》等;选修课主要包括:《集成电路EDA》、《集成电路芯片测试》、《集成电路版图设计》、《集成电路封装》等。
从现有的课程设置可以看到,针对国家应用型人才培养目标,现有的课程设置还存在很多问题,具体地说:
首先,课程设置偏于理论课程,实践内容缺乏,不符合应用型人才的培养目标要求。从上面的课程设置情况可以看到,各大高校在课程安排方面都侧重于理论教学,缺乏实践内容。比如:《模拟集成电路设计》课程总学时为48,实验学时为8,远远低于实际需求,难以在短短8学时内完成模拟集成电路设计相关实践活动。虽然集成电路设计专业对于专业基础知识要求宽广,但并不深厚,因此,浪费太多时间在每个设计流程相关的理论知识的阐述是不合适的,也不符合我国大学生的现状。
其次,实践活动不能与集成电路设计业界实际需要相结合,实践内容没有可行性。从目前各大高等院校的课程内容方面调研结果表明,对于本科教学情况,90%以上的实践内容都是教师根据理论教学内容设置一些简单可行的小电路,学生按照实验指导书的内容按相关步骤操作即可完成整个实验过程。实验内容简单、重复,与集成电路设计业界实际需要完全不相关,这对学生以后的就业、择业意义不大。
最后,没有突现学校的专业特色,不适于当今社会集成电路设计业界对本科毕业生的要求。但在竞争激烈的电子信息产业界,如果想要毕业生择业或者就业时有更强的竞争力,各大高校需要有自己的专业特色,但现在各个高校的现状仍然是“全面发展,没有特色”。这对于地方高校的集成电路设计专业毕业生是一个劣势。
四、面向应用型人才培养目标的课程改革
针对上面阐述的相关问题,本文给出了面向应用型人才培养目标的集成电路设计专业课程改革的几点方案,具体地说:
首先,削减理论课的课时,加大实验内容比例。理论课时远远高于实践课时是当今大学生教育的一个重要弊端,这也直接导致了大学生动手能力差、实践活动参与度低、分工合作意识薄弱。而在不增加授课学时的前提下要改变这一现象,唯一的方法就是改变授课内容,适当削减理论课的课时,加大实验内容的比例。这样既能满足国家对于本科毕业生应用型人才的培养目标,也符合创新型本科生的特点。
其次,积极推进“校企联合办学”,让学生更早接触业界发展,指导择业、就业。正如前面介绍,现在各大高等院校的教学内容理论性太强,学生在大学四年学习到的相关知识与实际应用相脱离。这也造成很大一部分本科毕业生在入职后的第一年难以进入工作状态,工作效率差,影响后面学生的就业、择业。如果能在学生在校期间,比如大学三年级或更早,推进“校企联合办学”,使学生更早了解到业界真正工作模式以及业界关注的重点,这对于学生后续进入工作非常有利,同时也能推进学校科研工作。
最后,实现优质教学资源的共享。这里的教学资源,除了包括授课笔记、教案、教学讲义外还包括高水平教师。虽然现在高等教育研究相关机构也开设了一些青年教师课程培训相关内容,但真正取得的成效还相对比较小。另外,针对集成电路设计专业来说,跟随业界发展的相关知识更新较快,配套的软硬件代价较高,如果能实现高校软硬件教学资源的共享,尤其是高水平高校扶持低水平高校,这将更有利于提高毕业生的整体水平。
五、结论
本文详细分析面对应用型人才培养目标的集成电路设计专业的特点,并在对国内相关院校集成电路设计专业调研基础上给出集成电路设计专业的基础课、专业课、选修课课程的内容以及教学方式情况,指出面向应用型人才培养目标现在课程设置方面存在的问题。同时,文章给出了在当今大学生招生人数剧增情况下,如何合理安排集成电路设计专业课程的方案从而实现应用型培养目标。
参考文献:
[1]王兴芬.面向应用型人才培养的实践教学内涵建设及其管理机制改革[J].实验技术与管理,2012,(29):117-119.
[2]殷树娟,齐臣杰.集成电路设计的本科教学现状及探索[J].中国电力教育,2012,(4):64-66.
[3]侯燕芝,王军,等.实验教学过程规范化管理的研究与实践[J].实验室研究与探索,2012,(10):124-126.
[4]张宏勋,和荫林,等.高校实验室教学文化变革的阻力及其化解[J].实验室研究与探索,2012,(10):162-165.
篇2
【关键词】集成电路版图;教学方法;改革
集成电路版图设计是集成电路设计的最终结果,版图质量的优劣直接关系到整个芯片的性能和经济性,因此,如何培养学生学好集成电路版图设计技术,具备成为合格的版图设计工程师的基本潜质,是摆在微电子专业老师面前的一个普遍难题。如何破解这个难题,我们做了以下探索。
一、突出实践,理论配合
传统的《集成电路版图设计》课程采取理论教育优先,学生对于版图的基本理论和设计规则非常熟悉,但动手实践能力缺乏培养,往往在学生毕业后进入集成电路设计企业还需二次培训版图设计能力,造成了严重的人力资源浪费。这是由于没有清晰的认识《集成电路版图设计》课程的性质,造成对它的讲授还是采取传统教学方式:老师讲,学生听,偏重理论,缺乏实践,影响到学生在工作中面临实际设计电路能力的发挥。《集成电路版图设计》是一门承接系统、电路、工艺、EDA技术的综合性课程,如果按照传统方式授课,课程的综合性和实践性无法得到体现,违背了课程应有的自身规律,教学效果和实用意义不能满足工业界的要求。我们在重新思考课程的本质特点后,采取了实践先行,理论配合的教学方法,具体如下:集成电路版图是根据逻辑与电路功能和性能要求,以及工艺水平要求来设计光刻用的掩膜图形,实现芯片设计的最终输出。版图是一组相互套合的图形,各层版图相应于不同的工艺步骤,每一层版图使用不同的图案来表示。我们首先讲授版图设计工具EDA软件的使用,让学生掌握EDA软件的每一个主要功能,从图形的选择、材料的配置,让学生从感性角度认识实际的版图设计是如何开展的,每一个步骤是如何使用软件完成的,整体芯片版图设计的流程有哪些规定,学生此时设计的版图可能不是很精确和完美,但学生对于什么是版图和如何设计版图有了初步的感性认识,建立起版图设计的基本概念,对于后续的学习奠定了牢实的实践基础,此时再去讲授版图设计理论知识,学生更能理解深层的工艺知识和半导体理论,真正做到了知行合一,实践先行的教育理念,对学生能力的培养大有裨益。
二、注重细节,加强引导
传统方式讲授《集成电路版图设计》理论占大部分时间,学生知道二极管、晶体管、场效应管、电阻、电容等基本元器件的工作原理和构成要素,但是在版图设计中,这些元器件为什么要这样设计,其实内心中充满着疑惑和不解。针对学生的疑惑,我们从工艺细节入手来解决这个问题。作为集成电路版图设计者,首先要熟悉工艺条件和期间物理,才能确定晶体管的具体尺寸、连线的宽度、间距、各次掩膜套刻精度等。版图设计的规则也是由工艺来确定的,掌握了工艺也就掌握了版图设计的钥匙。我们将通用工艺文件的每一条规则向学生讲解,通用元器件的规则整理出它们的共性,最小宽度、长度、间距的尺寸提醒学生要记忆,不同芯片生产厂的工艺对比学习和研究,学生在这一系列规则的学习过程中,慢慢理解熟悉了工艺规则文件的组织构成及学习要点,能够举一反三的在不同工艺规则下,设计同一种元器件的版图,即使电路元器件的数量巨大,电路拓扑关系复杂,在老师耐心的讲解下,学生也能够依据工艺规则设计出符合要求的版图,这都是在理解了工艺规则细节的基础上完成的。所以,关注细节,加强引导,是提高学生学习效果的一个重要方法。
三、完善考核机制,争取比赛练兵
学生成绩的提高,合理完善的考核机制不可或缺。以往《集成电路版图设计》课程的考核主要是理论知识作业和课程报告,学生的学习效果和实际动手能力没有得到考核,造成不能全面评价学生的学习成绩。我们采取项目形式,全方位考核学生的学习效果。根据知识点,将通用模拟电路分成五大类,每个大类提取出经典的电路10种,使用主流芯片加工厂的生产工艺,由经验丰富的老师把它们的版图全部设计出来,作为库单元放在服务器中供学生参考。在学生充分理解库单元实例的基础上,将以往设计的一些实用电路布置给学生,要求在规定的时间内,设计出合格的版图,以此作为最终的考核结果。学生在学习课程期间,可以接触到不同工艺、不同结构的多种类电路,而且必须在规定的时间内设计出版图,这极大的促进了他们学习的积极性和时间观念。学生在设计版图的过程中,会遇到多种问题,他们会采取问老师答疑,和同学讨论的多种方式解决,不仅能督促他们平时上课认真听讲,而且对遇到的问题也能多角度思考,最重要的是他们亲自动手设计版图,将工艺、电路、器件综合考虑,在约定的时间内能力得到极大提高。老师根据学生上传至服务器中设计的不同项目版图打分,而且将每个项目的得分出具详细的报告,对学生的成绩进行点评。学生通过查阅报告,能够知道课程学习的缺点和得分项,为下一次提高设计成绩是一个很好的参考。除了日常学习设计版图项目,学生可以争取参加微电子专业的一些比赛,通过比赛体会一些具有挑战性的版图设计项目,来提高学生在实际场景下如何发挥设计能力和项目组织能力,为他们未来进入职场从事版图设计工作奠定坚实的专业能力和实际解决问题能力。
四、总结
《集成电路版图设计》课程是一门兼具理论基础和实践锻炼想结合的课程,对它的讲授不仅需要扎实的理论基础,还需合理的实践环节配合,才能取得良好的教学效果。
参考文献
[1]Christopher Saint/Judy Saint.集成电路版图基础-实用指南[M].北京:清华大学出版社,2006(10).
[2]蔡懿慈.超大规模集成电路设计导论[M].北京:清华大学出版社,2005(10.
[3]编委会.最新高等院校实验室建设与管理及教学指导手册[M].北京:中国教育出版社,2006(11).
基金项目:北方工业大学教育教学改革和课程建设基金。
篇3
【关键词】EDA技术;QuartusⅡ;电子设计;VHDL
1.引言
集成电路设计不断向超大规模、低功率、超高速方向发展,其核心技术是基于EDA技术的现代电子设计技术。EDA(Electronic Design Automation,电子设计自动化)技术,以集成电路设计为目标,以可编程逻辑器件(如CPLD、FPGA)为载体,以硬件描述语言(VHDL、VerilogHDL)为设计语言,以EDA软件工具为开发环境,利用强大计算机技术来辅助人们自动完成逻辑化和仿真测试,直到既定的电子产品的设计完成。其融合了,大规模集成电路制造技术、计算机技术、智能化技术,可以进行电子电路设计、仿真,PCB设计,CPLD/FPGA设计等。简言之,EDA技术可概括为在开发软件(本文用QuartusⅡ)环境里,用硬件描述语言对电路进行描述,然后经过编译、仿真、修改环节后,最终下载到设计载体(CPLD、FPGA)中,从而完成电路设计的新技术。
以EDA技术为核心的现代电子设计方法和传统的电子设计方法相比有很大的优点,两种设计方法的流程如下图:
图1 传统电子设计流程图
图2 基于EDA的现代电子设计流程图
比较两种设计方法,基于EDA技术的现在电子设计方法采用自上而下的设计方法,系统设计的早期便可进行逐层仿真和修改,借助计算机平台,降低了电路设计和测试的难度,极大程度地缩短了电子产品的设计周期、节约了电子产品的设计成本。DEA技术极大的促进了现代电子技术的发展,已成为现代电子技术的核心。
2.QuartusⅡ软件开发环境介绍
QuartusⅡ软件是Alter公司开发的综合性EDA工具软件,提供了强大的电子设计功能,充分发挥了FPGA、CPLD和结构化ASIC的效率和性能,包含自有的综合器及仿真器,支持原理图、VHDL、VerilogHDL等多种设计输入,把设计、布局布线和验证功能以及第三方EDA工具无缝的集成在一起。QuartusⅡ与Alter公司的上一代设计工具MAX+plusⅡ具有一定的相似性,和继承性。使熟悉MAX+plusⅡ开发环境的设计人员可以快速熟练应用。相比之下,QuartusⅡ软件功能更为强大、设计电路更为便捷,支持的器件更多。增强了自动化程度,缩短了编译时间,提升了调试效率。从而缩短了电子产品的设计周期。利用QuartusⅡ软件进行电子电路设计流程如图3所示。
图3 QuartusⅡ设计流程图
3.在QuartusⅡ环境下的EDA方法设计实例
下面本文在QuartusⅡ环境下,以下降沿D触发器的设计为例来说明基于EDA技术的现代电子设计方法(本文以QuartusⅡ9.0为例)。
3.1 在计算机上安装QuartusⅡ9.0版本软件
QuartusⅡ9.0对计算机硬件配置要求不高,现阶段的主流配置完全可以满足其要求。QuartusⅡ9.0安装过程很简单,按照提示操作即可。
3.2 D触发器功能分析
从D触发器真值表可以看出,当时钟信号clk不论是高电平还是低电平,其输出q的状态都保持不变,当时钟信号clk由高电平变为低电平时,输出信号q和输入信号d的状态相同。
表1 D触发器真值表
输入d 时钟clk 输出q
× 0 不变
× 1 不变
0 下降沿 0
1 下降沿 1
3.3 D触发器的VHDL描述设计
下面给出D触发器的VHDL描述:
library ieee;
use ieee.std_logic_1164.all;
entity dff1 is
port(d,clk:in std_logic;
q:out std_logic);
end dff1;
architecture bhv of dff1 is
begin
process(clk)
begin
if clk='1' then
q<=d;
end if;
end process;
end bhv;
上面程序在QuartusⅡ9.0环境下,经保存后进行编译,然后可进行波形仿真。
3.4 设计仿真
VHDL描述程序编译后,建立矢量波形文件,之后可以进行波形仿真,得到如下波形仿真图(如图4所示):
图4 D触发器仿真波形图
此仿真波形符合D触发器真值表,说明电路设计正确。如果波形仿真不符合真值表,说明电路设计有问题,此时可以回到3.3步骤修改VHDL描述程序,直至仿真结果正确为止。
波形仿真正确后,可得出相应的逻辑电路图,D触发器电路图(如图5所示)如下:
图5 D触发器逻辑电路图
3.5 配置下载测试
整个电路设计、编译仿真无误后,按照FPGA开发板说明书进行引脚锁定,重新进行编译后,然后通过下载电缆线,将产生的sof文件下载至FPGA中,对电路进行测试、验证,完成电路的最终设计。
4.结束语
本文以QuartusⅡ开发环境下的实际电路设计为例,介绍了基于EDA技术的现代电子设计方法。通过设计过程可知,DEA技术在现代电子电路设计中的重要性。在电子技术飞速发展的信息时代,EDA技术也在不断发展。电子产品设计者有必要熟练掌握硬件描述语言、可编程逻辑器件以及各种主流软件开发环境,这样才可以在最短的时间内完成高质量的电子产品设计任务。
参考文献
[1]阎石.数字电子技术基础[M].北京:高等教育出版社(第五版),2006.
[2]刘江海.EDA技术[M].武汉:华中科技大学出版社,2009.
篇4
关键词:集成电路工程;专业学位研究生;培养实践
中图分类号:G643 文献标志码:A 文章编号:1674-9324(2016)29-0221-02
一、引言
2000年6月,国务院了《鼓励软件产业和集成电路产业发展的若干政策》(国发18号文),并陆续推出了一系列促进IC产业发展的优惠政策和措施。国家科技部在863计划中安排了集成电路设计重大专项。在863计划集成电路设计重大专项的实施和带动下,北京、上海、无锡、杭州、深圳、西安、成都等七个集成电路设计产业化基地的建设取得了重要进展。与此同时,为了适应我国集成电路发展对高层次专门人才的大规模需要,改善工科学位比较单一的状况,经国务院学位委员会批准,在我国设置集成电路工程专业学位研究生的培养,培养了一批“用得上”的工程技术人才。集成电路工程专业学位研究生自设置以来,取得了蓬勃的发展,受到用人单位的肯定和好评。由于其生源广泛、数量巨大,培养方法和模式更需要一定的创新性。近年来,在集成电路工程专业学位研究生培养过程中,经过多年的办学积累,探讨了一些办学和培养集成电路工程专业学位研究生的经验。
二、专业学位研究生培养过程中的关键事项
1.优选导师,确保培养质量。集成电路工程专业学位研究生教育形式较新,最初专业学位研究生的培养在众多地方借鉴了学术型研究生的办学经验,目前很多学者认为,只要能够胜任学术型学历研究生教育的导师就能胜任专业学位教育。这恰恰忽视了专业学位的知识背景和面向的行业领域。专业学位研究生教育规律与学术型研究生存在相当大的差异,首先,两者专业基础及学术背景不一样,专业学位研究生的系统性方面不如学术型研究生。其次,两者的治学环境不同,专业学位研究生与实际工程应用相结合。根据专业学位研究生特点有针对性地开展培养,应该选拔具有较强工程背景的教师进行指导。指导教师在进行指导时,应与学术型研究生指导工作有所不同,应更加注重专业学位研究生工程实践经验的培养。而且在学生的课题研究中,指导教师与学生多沟通,将自身融入到学生的实践研究中,带领学生参与技术上的创新和解决实际工程技术难题,这样才能确保学生的培养质量。
2.做到课堂理论与工程实际相结合。专业学位研究生培养的多年实践经验告诉我们,在指导过程中必须注重理论与工程实际应用结合,抽象概念与实际应用结合,激发学生学习兴趣,使理论易于理解和掌握。因此,教师要了解专业学位研究生的本科学历背景、知识结构和现在的工程方向等,在此基础上,做到课程理论联系工程实际,为专业学位研究生培养工作打下良好的基础。为了满足微电子领域内不同行业的需求,在多年的专业学位研究生培养中进行了积极的探索。首先,学生可以根据研究方向,在教师的指导下进行专题理论课程的选择。例如,进行SOC设计的可以选择《SOC及IP技术讲座》课程,研究无线传感器网络的可以选择《无线传感器网络技术》或《计算机网络与通信》专题讲座,研究空间通信的选择《深空通信技术专题》等等。有针对性地,使学生不是单纯盲目的学习,这样的培养才能做到理论与工程实践真正结合。实践结果表明,那些课堂上刻苦学习,能够将理论用于实践并努力钻研的学生,将有更好的培养效果和未来发展空间。
3.学位论文选题恰当,工程背景好。选题重要性要放在首位,要求“论文选题来自于工程实践,工程背景明确,应用性强”,有的放矢,结合工程实际问题才是最好的选题。从现实意义上讲,专业学位论文的选题是发现工程问题并确认研究方向。当前有些专业学位论文质量不高、没有创新性,一个重要原因就是选题不恰当。因此,在选题时,学生应急科研工作之所急,通过论文工作,使自己既能解决工程实际问题,又能提高科研工作能力。
集成电路工程专业学位论文的选题与学术型研究生的选题不同,其选题应来源于工程实践,应有明确的应用价值,其可以是一个完整的工程项目、技术改造或技术攻关专题,也可以是新工艺、新设备、新产品的研制与开发。论文是否合格不仅看其理论水平的高低,还要看是否有实际的应用价值。因此,由于论文选题时,应该从以下几点之一进行把握。①研究性,是否在工程实际中有技术改进和提高。如果是结合重大工程实际课题,在技术上的创新将具有研究性。②创造性,是否在工程领域中有所突破和有所创新,如果一般通过查新,能够申请发明专利的都具有创造性。③实用性,是否能解决生产实际中的问题。
三、集成电路工程专业学位研究生培养过程中的方法和步骤
专业学位研究生的培养过程包括课程学习、题目确定、开题报告、中期检查、学位论文撰写和论文答辩等环节。我校专业学位研究生的培养年限一般为二年,原则上用0.75-1学年完成课程学习,用1-1.25学年完成硕士学位论文。这些环节是一个有机的整体,需要合理安排,搞好各个环节的链接,进行一体化考虑。只有严格要求,才能够保证专业学位研究生在两年的时间内保质保量的达到国家硕士生培养的要求。作为集成电路工程专业学位研究生的培养,其专业基础相对学术型研究生存在一定的差距,不进行合理的引导就会使得学生失去学习的兴趣。专业学位研究生的培养不能以单纯拿到毕业证为目标,应更加严格管理、严格把关,保证培养质量。通过近几年的经验积累,以专业学位研究生的培养为例,一般按照下列的步骤进行:第一学期,主要以课程学习为主,并在课堂学习中,定期安排相关教师对本实验室从事的科研项目进行学术讲座,让学生了解实验室开展的课题研究方向和从事的科研项目,从总体上进行了解和把握,逐渐培养学生的钻研兴趣。开展教师或高年级学生关于研究课题的专题讲座和基本软件使用方法技能培训,使学生尽快掌握相关领域的专业知识和所需要的基本软件操作方法,如从事ASIC接口电路的学生在第一学期就要求掌握Hspice和Candece等软件。在学期末对学生进行相关领域知识进行摸底考核,对优秀学生进行奖励,末位学生进行督促教育,使其尽快的减小自身差距。第二学期,在学习专业课程的同时,学生进入实验室参与科研工作,将从事科学研究的方法和经验有针对的进行训练。在进入实验室期间,可以将科研任务进行分解,将非核心技术部分交给学生独立去完成,让学生提前进入科研状态,完成一些力所能及的科研任务,坚定他们从事科学研究的信心。定期通过实验室的学术活动检查学生课题的完成情况,从总体上把握学生的研究方向和研究方法。第三学期,根据专业学位研究生的学习情况和所掌握的知识水平,有针对性的指导学生进行课题实践,让学生根据自己的特长进行课题研究。在学生进入课题研究工作时,导师指导学生了解本研究领域国内外技术发展的现状,培养学生创造性思维能力和独立思考、解决问题的能力。培养学生阅读国内外文献的能力,使其在科研工作中大胆实践,理论联系实际,使学生在科研工作中有所发明、有所创造。学生明确了课题目标,知道为什么做、做什么、怎样做,就能有目标有方向地开展课题研究工作。第四学期,主要是督促检查学生毕业论文工作,在其课题研究过程中应当定期进行检查,避免学生课题研究偏离方向,选择错误的方法。导师应当积极鼓励学生在本学期多发表学术论文。发表学术论文不仅能够提高学生的文字表达能力,还能够让学生勤于思考,提出自己的创新方法,对学生后期的毕业论文撰写打下良好的基础。因此,踏实的论文工作是提高个人学术素养和掌握综合知识的最佳途径,为学生毕业后从事科研实践养成良好的工作作风,培养自主从事科研工作的能力。
总之,通过加强基础知识、基本技能训练与能力培养的相融通;实践与课程学习、业务培养与素质提高有机结合,使集成电路工程专业学位研究生养成了较强的自我获取知识的能力,自我构建知识的能力及自我创新的能力。已经毕业的专业学位研究生就业形势一直是供不应求。孔子曰:知之者不如好知者,好知者不如乐知者。学生只有好知并乐知,才能使集成电路工程专业学位研究生培养的质量不断稳定和不断提高。
参考文献:
[1]谭晓昀,刘晓为.信息企业集成电路工程领域工程硕士培养的探讨[J].科教论坛,2009,(2):7-9.
[2]朱宪荣.改革实验教学培养创新人才[J].化工高等教育,2007,(6).
[3]朱高峰.新世纪中国工程教育的改革与发展[J].高等工程教育研究,2003,(1):3-9.
篇5
―、构建课程体系的总体思路
构建微电子技术专业课程体系的总体思路是以微电子行业职业岗位需求为依据,以素质培养为基础,以技术应用能力为核心,构建基于工作过程的课程体系。实施学院“四环相扣”的工学结合人才培养模式,将“能力标准、模块课程、工学交替、职场鉴定”的四个环节完整统一,环环相扣,充分体现了高职教育工学结合的人才培养思想,努力为社会培养优秀高端技能型人才。
1.行业、企业等用人单位调研。通过调研国内“成渝经济区”为主)微电子技术行业、企业等用人需求和要求,了解现有高职微电子技术专业学生就业情况、用人单位反馈意见及人才供需中存在的问题。电子信息产业是重庆市国民经济的第一支柱产业。重庆市“十二五”规划建议提出,培育发展战略性新兴产业。把新一代信息产业建设为重要支柱产业,建设全球最大的笔记本电脑加工基地、建设通信设备、高性能集成电路、光伏组件及系统、新材料等重点产业链(集群),建成国家重要的战略性新兴产业基地。以集成电路产业的重点项目为牵引,建成包括芯片制造、封装、测试、模拟及混合集成电路设计和制造等项目的产业集群,形成较为完善的集成电路产业链;四川电子信息产业未来5年将迈万亿元,成渝经济区将打造成西部集成电路的产业高地。随着惠普、富士康、英业达、广达集团等世界级的IT巨头进入成渝,未来几年IT人才需求在20万以上,而现在成渝地区每年培养的相关人才不过2万人左右,远远不能满足社会需求。市场需求的调查表明,近年来成渝地区IC制造、IC封装及测试、IC版图设计等岗位的微电子技术应用型人才紧缺。同时调研表明半导体行业企业却难以招到满意的人才,学生在校学非所用,用非所学,实践动手能力、社会适应能力、责任意识、职业素养难以满足企业要求。
2.基于工作过程的课程体系的理论基础。基于工作过程的课程体系的理论基础,主要从德国“双元制”职业教育学习论和教学论的角度阐述构建基于工作过程的课程体系的理论依据。工作过程系统化的课程体系必须针对职业岗位进行分析,整理出具体的、能够涵盖职业岗位全部工作任务的若干典型工作过程,按照人的职业能力的形成规律进行序列化,从中找出符合职业岗位要求的技术知识和破译出隐性的工作过程知识,并以工作任务为核心,组织技术知识和工作过程知识[2]。通过完全打破原有学科体系,按照企业实际的工作任务、工作过程和工作情境组织课程,形成围绕工作过程的新型教学项目的“综合性”课程开发。
3.形成专业定位,确定培养目标。根据存在的问题及半导体产业链过程:集成电路设计—裸芯片精细加工^封装测试—芯片应用—PCB设计制造,充分掌握现有微电子技术专业课程体系建设的基础及存在的问题,形成重庆电子工程职业学院微电子技术专业定位,确定培养目标:培养德、智、体、美全面发展;掌握微电子技术专业领域必备的基础知识、专业知识;有较强的岗位职业技能和职业能力;面向集成电路设计、芯片制造及其相关电子行业企业,满足生产、建设、服务和管理第一线的优秀高端技能型专门人才。毕业生应该既掌握微电子方面的基本技术,又具有很强的实际操作能力。具体可从事岗位:集成电路版图设计;半导体器件制造;IC制造、测试、封装;电子工艺(半导体)设备运行、维护与管理;简单电子产品的设计与开发;电子产品的销售与售后服务,并为技术负责人、项目经理等后续提升岗位奠定良好基础。
二、构建基于工作过程的学习领域课程体系
对专业核心课程的构建采用“微电子行业专家确定典型工作任务—学校专家归并行动领域—微电子行业专家论证行动领域—学校专家开发学习领域—校企专家论证课程体系”的“五步工作机制”,实现校企专家共同参与课程体系设计。通过工作任务归并法,实现典型工作任务到行动领域转换,通过工作过程分析法,实现从行动领域到学习领域转换,通过工作任务还原法,实现从学习领域到学习情境转换的“三阶段分析法”,构建基于工作过程的微电子技术专业课程体系和教学内容,获得人才培养目标、课程体系、课程教学方案“三项主要成果”。即“533”课程设计方法。
1.确定行动领域。工作过程系统化课程是按照工作过程要求序化知识、能力和素质,是以工作过程为参照物,将陈述性知识与过程知识整合、理论知识与实践知识整合,在陈述性知识总量没有变化的情况下,增加经验以及策略方面的“过程性知识”3]。对典型工作任务进行归纳,确定行动领域。将本专业52个典型工作任务归纳为6个行动领域,即集成电路版图设计、晶圆制造、集成电路芯片制造技术、芯片封装、芯片测试、SMT技术。
2.确定典型工作任务。所谓典型工作任务是指一个复杂的职业活动中具有结构完整的工作过程,它是职业工作中同类工作任务的归类,能表现出职业工作的内容和形式,并具有该职业的典型意义。我院召集企业专家和工作在一线的工程师、技术员,与学院的微电子技术专业教师一起,召开课程开发座谈会,进行微电子技术课程体系开发:以“集成电路(版图)设计—晶圆制造—封装测试—表面贴装”工作过程为主线,与行业企业一线技术骨干、专家解析微电子技术专业岗位中版图设计师、半导体芯片制造工、IC测试助理工程师、SMT工程师、FPGA助理工程师等典型岗位,得出行动领域所具有的专业素质、知识与能力。
3.将行动领域转化成学习领域。对完成典型工作任务必须具备的基本职业能力(包括社会能力、方法能力、专业能力)进行分析。通过归纳形成专业职业能力一览表。这些职业能力就是学习领域(即课程)中学习目标制定的依据。打破原有16门专业理论课程和9门实践课程组成的课程体系,按照以工作过程为导向,进行课程的解构与重构,将6个行动领域转换为9个学习领域,即集成电路版图设计、集成电路芯片制造技术、微电子封装与测试、表面贴装工艺与实施、电子线路板实用技术、电子测量仪器使用与维护、语言、单片机应用技术、FPGA应用技术及实践。根据微电子技术专业岗位群的职业能力和工作过程要求,重新构建基于工作过程的课程体系。第一、二学期:电路分析、电子技术等基础课程;第三、四、五学期:集成电路制造技术、电子测量仪器使用与维护、FPGA应用开发实用技术、微电子封装与测试、SMT技术、集成电路版图设计等专业核心课程。
4.形成学习情境模式。学习情境是实施基于工作过程系统化的行动导向课程的教学设计,由教师根据学校教学计划,结合学校的教学设施条件、教师执教能力和专长,由教师按照“资讯、计划、决策、实施、检查、评估”的行动方式来组织教学,从而促进学生对职业实践的整体性把握4]。微电子技术专业核心课程形成的学习情境模式为:①集成电路版图设计课程以任务为载体形成6个学习情境:N/PM0S晶体管版图设计、反相器、与非门、或非门版图设计、触发器版图设计、电压取样电路版图设计、比较器版图设计、DC-DC版图设计;②集成电路芯片制造技术课程以设备为载体形成8个学习情境:集成电路芯片制造技术工艺流程、硅晶圆制程、硅晶薄膜制备、氧化工艺、掺杂技术、光刻工艺、刻蚀工艺、集成电路芯片品检;③微电子封装与测试课程以工艺为载体形成4个学习情境:DP封装、BGA封装、CSP封装、MCM封装;④表面贴装工艺与实施课程以工艺流程为载体形成5个学习情境:SMT工艺流程的基本认知、表面贴装生产准备、表面贴装设备操作与编程、表面贴装品质控制、SMT生产线运行及工艺优化5个学习情境;⑤电子线路板实用技术课程以项目为载体形成3个学习情境:单面板的制图与制板、简单双面板的制图与制板、复杂双面板的制图与制板;⑥电子测量仪器使用与维护课程以电路设备为载体形成9个学习情境:收音机元件准备、收音机电路测试、收音机电路工作状态检测、收音机整机调整、收音机装调使用仪器的保养与维护、电视机元件检测、电视机电路检测、电视机的质量检查、电视机装调使用仪器的保养与维护;⑦C语言课程以项目为载体形成6个学习情境:编程的基本概念、C语言上机步骤C语言上机步骤、算法的概念、基本数据类型、结构化程序设计、函数的概念;⑧单片机技术及应用课程以任务为载体形成6个学习情境““跑马灯”电路分析与实践、单片机做算术、逻辑运算并显示、开关信号状态读取与显示电路的制作、交通信号灯电路的设计与制作、产品数量统计电路的设计与制作、两台单片机数据互传;⑨FPGA应用技术及实践课程以项目为载体形成6个学习情境:课程概述、基于QualusII的原理图输入设计、宏功能模块应用、基于QuarusII软件的VHDL文本输入设计、VHDL设计、实用状态机设计。
三、试点实施效果分析
在教学实施上,重点是加强教师执教能力:教师在教学中的角色应由主宰者转化为引导者。教师应该主动地引导、疏导和指导学生,学生可以根据自己的兴趣爱好,在教师的指导下,充分利用各种资源,相互协作开展对某一问题的学习探讨,从而获得新知识,得到探索的体验及情感,促进能力全面发展。经过我院近3年的教学实践,课程教学效果得到显著提高,学生专业核心能力、岗位适应能力、社会能力显著提高,“双证书”提高到100%,专业对口率从原来的48%上升到92%,用人单位满意度达90%以上。
高职院校在办学过程中要形成特色鲜明的高职办学模式,课程体系是重要的载体。办学特色正是通过课
程体系的实施来实现的。基于工作过程系统化的课程体系,跟随产业的发展,调整专业的课程设置,符合职业岗位要求,学生技能显著提升,同时结合我院的办学特色,努力探索基于工作过程的高职微电子技术专业课程体系的构建思路和构建策略。
参考文献:
[1]姜大源.关于工作过程系统化课程结构的理论基础〇].职教通讯,2006,(1).
[2]余国庆职业教育项目课程的几个关键问题ffl.中国职业技术教育,2007,(4).
[3]首珩,周虹基于工作过程的课程体系开发与实施m职教论坛,2008,(9).
[4]姜大源,吴全全当代德国职业教育主流教学思想研究[M].北京:清华大学出版社,2007.
篇6
在此,我们重点是讨论集成电路芯片加工过程中的一些关键手艺。
集成电路基本工艺包括基片外延生长、掩模制造、曝光技术、刻蚀、氧化、扩散、离子注入、多晶硅淀积、金属层形成。
关键词:外延、掩膜、光刻、刻蚀、氧化、扩散、离子注入、淀积、金属层
集成电路芯片加工工艺,虽然在进行IC设计时不需要直接参与集成电路的工艺流程,了解工艺的每一个细节,但了解IC制造工艺的基本原理和过程,对IC设计是大有帮助的。
集成电路基本工艺包括基片外延生长掩模制造、曝光技术、刻蚀、氧化、扩散、离子注入、多晶硅淀积、金属层形成。
下面我们分别对这些关键工艺做一些简单的介绍。
一、外延工艺
外延工艺是60年代初发展起来的一种非常重要的技术,尽管有些器件和IC可以直接做在未外延的基片上,但是未经过外延生长的基片通常不具有制作期间和电路所需的性能。外延生长的目的是用同质材料形成具有不同掺杂种类及浓度而具有不同性能的晶体层。常用的外延技术主要包括气相、液相金属有机物气相和分子束外延等。其中,气相外延层是利用硅的气态化合物或液态化合物的蒸汽在衬底表面进行化学反应生成单晶硅,即CUD单晶硅;液相外延则是由液相直接在衬底表面生长外延层的方法;金属有机物气相外延则是针对ⅢⅤ族材料,将所需要生长的ⅢⅤ族元素的源材料以气体混合物的形式进入反应器中加热的生长区,在那里进行热分解与沉淀反映,而分子束外延则是在超高真空条件下,由一种或几种原子或分子束蒸发到衬底表面形成外延层的方法。
二、掩模板的制造
掩模板可分成整版及单片版两种,整版按统一的放大率印制,因此称为1×掩模,在一次曝光中,对应着一个芯片陈列的所有电路的图形都被映射到基片的光刻胶上。单片版通常八九、实际电路放大5或10倍,故称作5×或10×掩模,其图案仅对应着基片上芯片陈列中的单元。
早期掩模制作的方法:①首先进行初缩,把版图分层画在纸上,用照相机拍照,而后缩小为原来的10%~%20的精细底片;②将初缩版装入步进重复照相机,进一步缩小,一步一幅印到铬片上,形成一个阵列。
制作掩模常用的方法还包括:图案发生器方法、x射线制版、电子束扫描法。
其中x射线、电子束扫描都可以用来制作分辨率较高的掩模版。
三、光刻技术
光刻是集成电路工艺中的一种重要加工技术,在光刻过程中用到的主要材料为光刻胶。光刻胶又称为光致抗蚀剂,有正胶、负胶之分。其中,正胶曝光前不溶而曝光后可溶,负胶曝光前可溶而曝光后不可溶。
光刻的步骤:①晶圆涂光刻胶;②曝光;③显影;④烘干
常见的光刻方法:①接触式光刻;②接近式光刻;③投影式光刻
其中,接触式光刻可得到比较高的分辨率,但容易损伤掩模版和光刻胶膜;接近式光刻,则大大减少了对掩模版的损伤,但分辨率降低;投影式光刻,减少掩模版的磨损也有效提高光刻的分辨率。
四、刻蚀技术
经过光刻后在光刻胶上得到的图形并不是器件的最终组成部分,光刻只是在光刻胶上形成临时图形,为了得到集成电路真正需要的图形,必须将光刻胶上的图形转移到硅胶上,完成这种图形转换的方法之一就是将未被光刻胶掩蔽的部分通过选择性腐蚀去掉。
常用的刻蚀方法有:湿法腐蚀、干法腐蚀。
湿法腐蚀:首先要用适当的溶液浸润刻蚀面,溶液中包含有可以分解表面薄层的反应物,其主要优点是选择性好、重复性好、生产效率高、设备简单、成本低。存在的问题有钻蚀严重、对图形的控制性较差、被分解的材料在反应区不能有效清除。
干法刻蚀:使用等离子体对薄膜线条进行刻蚀的一种新技术,按反应机理可分为等离子刻蚀、反应离子刻蚀、磁增强反应例子刻蚀和高密度等离子刻蚀等类型,是大规模和超大规模集成电路工艺中不可缺少的工艺设备。干法刻蚀具有良好的方向性。
五、氧化
在集成电路工艺中常用的制备氧化层的方法有:①干氧氧化;②水蒸气氧化;③湿氧氧化。
干氧氧化:高温下氧与硅反应生成sio2的氧化方法;
水蒸气氧化:高温下水蒸气与硅发生反应的氧化方法;
湿氧氧化:氧化首先通过盛有95%c左右去离子睡的石英瓶,将水汽带入氧化炉内,再在高温下与硅反映的氧化方法。
影响硅表面氧化速率的三个关键因素:温度、氧化剂的有效性、硅层的表面势。
六、扩散与离子注入
扩散工艺通常包括两个步骤:即在恒定表面浓度条件下的预淀积和在杂志总量不变的情况下的再分布。预淀积只是将一定数量的杂质引入硅晶片表面,而最终的结深和杂质分布则由再分布过程决定。
常见的扩散方法主要有固态源扩散和气态源扩散等。
离子注入是将具有很高能量的带点杂质离子射入半导体衬底中的掺杂技术,它的掺杂深度由注入杂质离子的能量、杂质离子的质量决定,掺杂浓度由注入杂质离子的剂量决定。高能离子射入靶后,不断与衬底中的原子以及核外电子碰撞,能量逐步损失,最后停止下来。
离子注入法于20世纪50年代开始研究,20世纪70年代进入工业应用阶段。随着VLSI超精细加工技术的发展,现已成为各种半导体掺杂和注入隔离的主流技术。在离子注入后,由于会在衬底中形成损伤,而且大部分注入的离子又不是以替位的形式位于晶格上,为了激活注入到衬底中的杂质离子,并消除半导体衬底中的损伤,需要对离子注入后的硅片进行退火。
退火,也叫热处理,作用是消除材料中的应力或改变材料中的组织结构,以达到改善机械强度或硬度的目的。
七、淀积
器件的制造需要各种材料的淀积,这些材料包括多晶硅、隔离互连层的绝缘材料和作为互连的金属层。
在厚绝缘层上生长多晶硅的一个常用方法是“化学气相淀积”(CVD),这种方法是将晶片放到一个充满某种气体的扩散炉中,通过气体的化学反应生成所需要的材料。
以上简单介绍了集成电路的基本工艺,当然,这些只是关键的几个工艺,集成电路的工艺还有很多,在这里就不一一说明了。
参考文献:
[1] 李冰,集成电路CAD与实践,电子工业出版社
[2] 王志功、陈莹梅,集成电路设计(第二版),电子工业出版社
[3] 张兴、黄如、刘晓彦,微电子学概论(第二版),北京大学出版社
篇7
【关键词】可编程控制器;空气压缩机;温度采集;数据传输
空气压缩机是矿山生产重要的四大固定设备之一,空压机的风包是受压容器,《煤矿安全规程》规定:“风包内的温度应保持在120℃以下,并装有超温保护装置,在超温时可自动切断电源和报警。”我矿原来使用的超温报警装置为WMZK-02型温度指示控制仪,经常性发生误报及无温度指示的情况。为提高风包温度监控的可靠性及职能化水平,对风包温度监控系统进行重新改造设计。
1 系统结构
系统由三菱Fx-2N系列PLC、三菱模拟量模块FX2N-4DA、温度采集模块R-8034、开关电源、数字显示电路、指示及显示设定电路、温度传感器热电阻等构成。
系统以PLC作为主控器,通过RS485与温度采集模块R-8033进行通信,把采集到的各风包温度传输到主控器。在PLC内部通过与设定好的上限温度进行比较,进而作出是否超温的判断,以作出是否发出停机的命令。同时设定显示电路把指定的温度显示在数字显示屏上。每天进行实验时可以通过,实验按钮进行风包超温实验。同时本系统留有数据上传接口可通过PLC的RS422接口把温度及报警信息上传上位机。
2 硬件电路设计
2.1 可编程控制器(PLC)的优点
1)编程方法简单易用。
2)功能强,性能价格比高。
3)硬件配套齐全,用户使用方便。
4)无触点免配线,抗干扰能力强。
5)系统的设计、安装、调试量少。
6)维修工作量少,维修方便。
7)体积小,能耗低。
2.2 温度采集模块的应用
R-8033是38路模拟量热电阻输入模块。分辨率为24位,热电阻类型可设定为PT100、Cu50、Cu100,本设计选用PT100。
由于R-8033温度采集模块采用RS-485通讯方式,可远距离通讯,系统所有模块只需要用一条通讯线进行连接,具有高通讯速率,高采样分辨率,智能化、光电隔离、强抗干扰和双看门狗设计,使系统的可靠性增强,数据高速I/O成为可能,软件开发也较为容易。
系统可根据测量的温度点数任意增减模块数量,配置灵活,端子可插拔,采用导轨式安装,施工维护及其方便。
2.3 可编程控制器模拟模块FX2N-4DA
模拟量输出模块(D/A模块)是将PLC处理后的数字信号转换成相应的模拟信号输出,以满足生产过程现场连续控制信号的需求。模拟信号输出接口一般由光电隔离、D/A转换、信号驱动等环节组成。FX2N-4DA是一种4通道模拟量输出模块。在本设计中通过PLC控制FX2N-4DA输出相应的模拟量输出到数字显示电路,以显示相应的温度。
2.4 数字显示电路的设计
基于ICL7107数字电压表的设计的设计,ICL7107是目前广泛应用于数字测量系统是一种集三位半转换器段驱动器位驱动器于一体的大规模集成电路,ICL7107是目前广泛应用于数字测量系统的一种31/2位A/D转换器,能够直接驱动共阳极数字显示器,够成数字电压表,此电路简洁完整,ICL7107是目前广泛应用于数字测量系统是一种集三位半转换器段驱动器、位驱动器于一体的大规模集成电路,主要用于对不同电压的测量和许多工程上的应用,调频接口电路,它采用的是双积分原理完成A/D转换,全部转换电路用CMOS大规模集成电路设计。应用了ICL7107芯片数码管显示器等,芯片第一脚是供电,正确电压时DC5V,连接好电源把所需要测量的物品连接在表的两个端口,可在显示器看到所需要结果。
主要有ICL7107和共阳极半导体数码管LED组成。特点是:能够直接驱动共阳极的LED显示器,不需要外加驱动原件,使整机线路简化;采用+5V和-5V两组电源供电;LED属于电池控制原件,芯片本身功耗较小;显示亮度较高。
3 传感器的选择及安装
3.1 温度传感器选择
铂电阻温度传感器是利用其电阻和温度成一定函数关系而制成的温度传感器,由于其测量准确度高,测量范围大,复现性和稳定性好,被广泛应用于中温(-200℃-650℃)范围的温度测量中。PT100是一种广泛应用的测温元件,在-50℃-600℃范围内具有其他任何传感器无可比拟的优势,包括高精度,稳定性好,抗干扰能力强等。
3.2 温度传感器安装及其位置选择
插入管的内半径是根据所选择的温度传感元件而定的。一般可直接选购-200―600℃的PT100传感器。温度传感器和温度传感器套管通过螺纹连接,接触面通过耐温密封圈密封,安装在风包上预留的压力表位置,从而避免了一切伤害风包的因素。插入管的壁厚与风包的厚壁之比直接影响到可靠性。当插入管厚壁大于或等于容器壁时,在开孔直径相同的情况下,开孔边缘的最大应力与壳体的基本应力之比最小,亦应力集中系数最小。所以,应尽可能选用厚壁较厚的钢管。
4 系统程序设计
4.1 系统控制程序的设计
设计PLC控制系统的一般步骤:
1)根据生产的工艺过程分析控制要求;
2)根据控制要求确定所需的用户输入、输出设备。据此确定PLC的I/O点数;
3)选择PLC;
4)分配PLC的I/O点,设计I/O连接图。这一步可结合第2步进行;
5)进行PLC程序设计,同时可进行控制台的设计和现场施工。
4.2 系统通信程序设计
PLC通过其RS-485接口与温度采集模块R-8033相连,当R-8033接收到PLC命令后,将其转化为采集模块的操作命令,并将执行的结果打包回传给PLC,作为PLC控制的依据。要实现PLC对R-8033的通讯控制,必须对PLC进行编程;通过程序实现PLC对采集模块数据的采集。PLC程序首先应完成FX2N-485BD通讯适配器的初始化、控制命令字的组合、代码转换和R-8033应答数据的处理工作。R-8033通讯命令结构:
命令格式:(Leading)(Address)(Coommand)(CHK)(cr)
响应格式:(Leading)(Address)(Data)(CHK)(cr)
[CHK]2字符检验
[cr]命令结束符,字符返回(0x0D)
通过在PLC内编制格式的命令程序以实现数据的写入与读出。
5 结语
本设计主要用应用PLC来监控空气压缩机风包温度,实时观测系统的运行状况,以便用户随时了解系统信息。整个系统自动化水平比较高采用PLC控制和数据通讯技术监控大大减少了人力物力,对于温度的变化能很快的做出反应,输出报警,停止空压机运行。
篇8
关键词:FPGA;VHDL;功能仿真;综合;布局布线
中图分类号:TM13 文献标识码:A 文章编号:1007-9416(2017)02-0111-03
1 引言
当前的FPGA设计流程一般都是通过EDA[1]开发软件和编程工具对FPGA芯片进行开发,开发流程通常包括电路设计与输入、功能仿真、综合优化、综合后仿真、实现与布局布线、时序仿真、板级仿真与验证、调试与加载配置等主要步骤[2]。其中每个步骤所采用的EDA工具都不尽相同。
由于功能仿真的工具和综合布局布线的工具不同,本文从一个功能仿真与综合布局布线结果不一致的例子引出了对VHDL代码中可能引起功能仿真结果不正确的原因的分析。
2 功能仿真、综合、布局布线的基本目的和常用工具
功能仿真又叫逻辑仿真,是指在不考虑器件延时和布线延时的理想情况下对源代码进行逻辑功能的验证[3]。功能仿真的主要目的是确定一个设计是否实现了预定的功能或设计意图,分析电路的逻辑关系的正确性[4],由于仿真速度快,可以根据需要观察电路输入输出端口和电路内部任意信号和寄存器的波形,因此功能仿真是设计过程中不可缺少的步骤。目前功能仿真常用的EDA工具为Mentor公司Modelsim/QuestaSim、Sysnopsys公司的VCS和Cadence公司的NC等软件。
综合是将RTL级的行为描述转化为使用门级单元的结构描述[5]即网表。网表文件主要记录的是所用工艺库门级单元之间的互连关系(即门级结构)。而布局布线则是对网表中的每一个门级单元在器件中定位(布局) , 并使用器件内的连线资源按照网表中的连接关系连接起来(布线)的操作[4]。因为综合和布局布线将软件设计与硬件的可实现性挂钩,是将软件转化为硬件电路的关键步骤[6]。由于综合和布局布线与FPGA底层资源关系紧密,根据采用的芯片不同,一般设计人员采用各个FPGA厂家自己推出的综合开发工具。
3 功能仿真结果与实际功能不一致案例
在对某个采用VHDL编写的FPGA设计进行功能仿真和硬件调试中发现两者结果不一致的情况。分析结果发现硬件功能与设计意图一致,而功能仿真发生错误。设计代码可简化如图1。
根据代码分析设计意图为:时钟信号CLKA在该设计中进行了被赋值给了sys_clk信号,即将信号CLKA重命名为sys_clk,用重命名后的时钟信号sys_clk对Gate信号进行延迟1个时钟周期产生信号Gate_r。而使用VCS仿真结果如图2所示。
用sys_clk信号对时钟CLKA信号产生的Gate信号进行延迟时,仿真器显示Gate_r与Gate信号波形一致;同时将Gate信号进行赋值,则Gate_wr信号为Gate_w延迟1个时钟,与设计意图不一致。
4 不一致原因分析
分析代码发现,由于在设计中对时钟信号进行了赋值(重命名),导致该时钟产生的信号用赋值后的时钟进行延时处理时,第一个节拍的延迟未起作用,仿真的信号比实际信号在该处提前一个时钟周期跳变,仿真功能与实际设计不一致。
我们试用Modelsim仿真发现,仿真结果与VCS仿真结果一致(图3)。根据VHDL信号语法特性结合仿真器工作原理分析如下:
(1)在VHDL中,在进程(process)外的信号赋值有一定的延时[7],在仿真是对应于在等式右边的信号值跳变后的delta时间后;
(2)在进程(process)内信号的赋值在进程结束时起作用[8];
(3)仿真中,时钟上升沿判断后也会产生一个delta时间;
(4)仿真中,进程(process)内信号的时钟边沿赋值是将时钟信号跳变时刻等式右侧的信号值在时钟跳变后的delta时间赋值给左侧的被赋值信号;
打开仿真器的List信号分析信号跳变过程(图4),针对图2的设计代码分析如下,
(1)CLKA的跳变产生了第一个delta时间(420ns + 1);
(2)由于代码中的赋值语句“sys_clk
(3)而process 中的时钟边沿赋值Gate
(4)对于process 中的时钟边沿赋值Gate_r
尽管Gate_r的跳变晚于Gate,但仅晚了一个delta时间,不占用仿真时间,所以导致了从波形仿真Y果看Gate_r与Gate同时跳变的现象。
而对以上代码使用芯片厂商开发工具进行综合和布局布线,很显然,Gate_r在时钟sys_clk的赋值将被综合成触发器(如图5),sys_clk的赋值(重命名)将被综合成线连接,sys_clk等同于CLKA。从硬件实现看,Gate_r实际布局布线后将晚于Gate一个时钟周期而不是一个仿真用的delta时间。因此,功能仿真结果和布局布线后实际功能不一致。
5 纠正措施分析
根据上面的机理分析,对于本段代码,以下两个方法均可以使得功能仿真与设计一致:
方法一:将设计中的Gate_r的赋值条件由sys_clk改为CLKA时,仿真结果与预期结果一致,再次观察Modelsim信List,可见由于少了时钟赋值语句,420ns处未出现420 +3时刻,Gate_r的赋值发生在时钟信号CLK从0跳变为1且Gate=1(460ns + 1)时刻后的delta时间(460ns +2),功能与设计一致。
方法二:对Gate信号也同时进行一次赋值产生Gate_w信号,在process中依然将该信号用sys_clk上升沿采样赋值,则Gate_wr信号为Gate信号延迟一个时钟周期。仿真波形如图5所示,观察仿真器的信号List,可以发现,仿真过程和上一种改法是不一致的。仿真器依然产生了420ns +3时刻,但由于Gate_w信号的跳变在420 +3时刻发生,Gate_wr信号的跳变依然晚于Gate信号一个时钟周期,在460 +3时跳变,因此仿真结果与设计实际要求一致。
6 结语
根据VHDL中对于信号赋值的延时特性,仿真器的原理严格按照VHDL语法进行,而厂商的综合布局布线工具却更加考虑到底层电路的特性。因此在基于VHDL的FPGA设计中,对时钟信号的赋值在因为VHDL语法种信号赋值特性的原因可能会造成仿真器的解析与期望不一致的情况。经测试,这种解析方式为仿真器EDA厂商的一致做法,我们利用手上多个版本的VCS和Modelsim均无法避免这种现象的发生。同时,由于verilog语法中,进程外的信号赋值仅相当于重命名操作,不存在延时,故此类问题在verilog的仿真中不会出现。
对于FPGA设计人员,在VHDL设计中应特别注意避免对时钟信号的赋值操作,以免出现为了功能仿真的结果正确性改动代码后导致实际功能错误的情况。
在FPGA的验证工作中,由于没有有效的自动检测手段,在分析VHDL代码时,验证人员也应重点注意设计代码中有没有对时钟赋值操作,以及该操作会不会影响功能仿真结果,避免漏测问题或者误测问题,必要时进行综合后仿真或布局布线后仿真对功能仿真结果进行确认。
参考文献
[1]梁丽.EDA技术在现代电子设计中的应用研[J].科技创新与应用,2016(35),66-67.
[2]蒋昊,李哲英.基于多种EDA工具的FPGA设计流程[J].微计算机信息,2007,23(11-2):201-203.
[3]戚新宇.基于FPGA 设计的功能仿真和时序仿真[J].航空电子技术,2005,36(03):51-54.
[4]程耀林.FPGA的系统设计方法解析[J].电子技术,2005(19):91-93.
[5]杨之廉,申明.超大规模集成电路设计方法学导论[M].北京:清华大学出版社,2000.
[6]潘松.电子设计自动化(EDA)技术及其应用(一)[J].电子与自动化,2000(1):52-55.
篇9
关键词:PIC单片机 低功耗设计 电话远程控制器 待机
引言
20世纪90年代以来,随着集成电路特征线宽的持续缩小以及芯片密度和工作频率的相应增加,降低功耗已经成为亚微米和深亚微米超大规模集成电路设计中的一个主要考虑因素。功耗的增加会带来一系列问题,例如电路参数漂移、可靠性下降、芯片封装成本增加等。因此,系统的功耗在整个系统设计中,尤其是在采用电池供电的系统中显得十分重要。
Microchip公司PIC系列的单片机为设计高性能、低功耗的单片机系统提供了很好的解决方案。下面从低功耗设计方法及具体例子来介绍PIC单片机低功耗应用。
1 低功耗设计方法
为使系统工作在低功耗状态,必须正确设置单片机的配置及工作方式。下面结合最常用的PIC12、PIC16等单片机介绍低功耗系统的设计方法。
1.1 基本设计方法
有许多技术可以降低系统的功耗,最常用的是Sleep模式。程序执行一条SLEEP指令,便进入了休眠(Sleep)模式。要Sleep模式下,晶振停止振荡,而此时单片机在3V电源条件下,只有1μA的电流。系统工作时,单片机可以采用看门狗或外部事件周期性地唤醒单片机,利用电子开关为系统提供电源,以减少系统待机功耗,延长电池使用时间。
单片机的工作频率和功耗的关系也很大,频率越高,功耗越大。在采用32kHz晶振、3V工作电压时,PIC12、PIC16等系列单片机的典型工作电流只有15μA;而采用4MHz晶振、5V工作电压时,单片机的典型工作电流达到几mA。在许多低功耗的场合,采用低速晶振实现低功耗非常有效。如果单片机采用RC振荡,还可以通过I/O口的操作改变振荡电阻,从而改变单片机工作频率,达到节能的目的。如图1所示,1个I/O引脚可以在等待状态下将并联电阻R1去掉,降低单片机工作频率。当单片机需要工作时,可将I/O引脚设置为输出并输出高电平,从而提高振荡频率。
1.2 振荡电路设计
在单片机系统设计中,振荡电路的设计是十分重要的一个环节。PIC系列单片机的典型振荡电路如图2所示。
一般情况下,设计人员按照厂家给出的参数表进行选择。如果系统能够正常工作,也就不再进行改进了。其实,这是不合适的。因为Microchip的单片机根据型号和版本的不同,工作电压在直流2.5~5.5V的范围内,汽车级温度可以在-40~-125℃范围内,而参数表中只给出了有限的几种情况,实际环境参数会对振荡电路的性能产生很大的影响。如高温、低电压可减小振荡环路增益,而从降低振荡频率或者难以启动;低温、高电压可以使环路增益变大,从而使晶振过驱动,产生损坏的潜在危险或者振荡电路工作的高次谐波频率上升,加大系统功耗。因此,如何正确设计系统的振荡电路十分必要。对于PIC系列单片机,一般的设计步骤如下:
①选择晶振。根据系统需要的振荡频率进行晶振的选择。此外,晶振的工作温度和频率稳定度也是十分重要的指标。
②选择振荡器类型。PIC系列单片机有RC、LP、XT、HS等振荡模式。除RC模式外,振荡模式的选择实际上就是环路增益的选择。低增益对应低振荡频率,高增益对应高振荡频率。一般根据实际需要的工作频率可参考数据手册来选择。
③选择C1、C2。理想的情况是,保证系统在高温和最低工作电压下能够正常工作,使得电容在数据手册推荐的范围内最小。同时选择C2比C1大一些以加大相移,使其有利于振荡电路的上电启动。
④选择Rs。在以上参数都已经选定后需要决定Rs的大小。简单的办法是让系统工作在最低温度和最大电压情况下,此时得到的应该是时钟电路最大输出幅度。用示波器观察引脚OSC2的输出波形(注意,示波器的探头将给电路引入一个电容,一般为几pF),如果发现正弦波的峰(接收Vdd处)和谷(接收Vss处)被削平或压扁,说明驱动过载,需要在OSC2和C2间加入1个电阻Rs,一般1kΩ左右或小于1kΩ。Rs不宜过大,过大将使得输入和输出产生隔离,从而产生较大的噪声。当发现需要一个较大的Rs才能消除过驱动时,可以增加负载电容C2来补偿。C2一般选择在15~33pF之间。
系统振荡电路的设计对系统的稳定性、功耗等影响很大。一般情况下,系统从Sleep状态下唤醒时,振荡电路最难启动(尤其系统工作在高温、低压、低频的情况下)。此时,电阻Rs有利于振荡电路的启动,因为廉价的碳膜电阻容易产生白噪声,从而帮助电路起振。此外,选择C2稍大于C1以增大相移,也有利于电路起振。
2 具体应用例子
2.1 系统组成及框图
系统主要由PIC单片机、双音频解码拔号电路、语音集成电路、接口电路、Vcc电源控制电路、射频发射电路和EEPROM组成,可完成对家用电器的控制和对报警求援语音信息的自动传送,如图3所示。
2.2 控制器工作方式
*当与控制器相串闻的电话机(以下称为本地机)处于摘机时,电话线输入电压发生变化,引起CD40106的2脚输出电平变化,输入到CPU的RB0端口产生中断信号,唤醒CPU,控制器进入工作状态。通过本地机的拔号盘对控制器的各种功能进行控制。如控制电视、音响、照明灯等电器电源的开关。
*当控制器接收到振铃信号时,CD40106的4脚输出电平变化,输入CPU的RB6端口产生中断信号,唤醒CPU进入工作状态,并对振铃信号进行计数;达到设定铃声数后,使控制器进入电话接收状态,开始接收远程传输DTMF信号,经MT8880解调得到的信号通过IRQ向单片机发出中断信号,将数据存入寄存器,经CPU运行,对控制器的各种功能进行控制。
*当控制器作为报警器,并处于警备状态时,报警探头时刻检测防范区域的情况;当探头向控制器发出警情信息,输入CPU的RB5中断产生信号,控制器进入工作状态,从EEPROM芯片读出预先设置的报警电话号码,经MT8880转换为DTMF信号,自动拨号,以语音形式将信息传送给用户或直接报警。
2.3 应用电路
(1)电话接口电路
电话机与控制器采用控制器在前,电话机在后的串联方式,可实现电话机对控制器各种功能的控制。接口电路由过压保护电路、极性转换电路和中断请求电路组成,如图4所示。
①过压保护电路。在电话线回路上加入了一个压敏电阻R,它的作用是当它两端的电压大于其工作电压时呈短路状态,从而保护后级电路免受高压危害。当加到它的两端的电压小于其工作电压,压敏电阻呈开路状态,对后级电路的工作没有任何影响。在本设计中,压敏电阻的工作电压为220V。
②极性转换电路。由于在电话线上传输的是交流信号,为了使信号的极性固定,在电路中加入电桥,进行全波整流。
③中断请求电路。为延长电池工作时间,CPU在待机时处于休眠的省电状态,在实现远程电话机和本地机对控制器功能控制时,由中断请求电路将CPU唤醒。
(2)语音电路
语音电路如图5所示。它以ISD4000语音芯片为核心,主要是存储报警语音,输出经功率放大后传送到电话线上。
(3)MT8880与PIC单片机的接口电路
MT8880是Mitel公司的DTMF收发器,具有功能强、功耗低、工作稳定、可靠等性高优点,因此在DTMF信号调制的场合得到了广泛的应用。MT8880与PIC单片机的接口电路如图6所示。
①MT8880与单片机的接口电路。D0~D3为4根数据线,MT8880对经过前置处理的DTMF信号进行解调,将解调得的信号存入片内寄存器中,并通过IRQ向单片机发出中断信号。单片机相应中断请求后,在R、W、RS0、RD的控制下,通过D0~D3读出解调出的数据。
②DTMF信号放大电路。当微处理器将要发送的DTMF数据写入MT8880相应的寄存器时,MT8880从TONE引脚发出DTMF信号,信号经过放大电路放大后,送往变压器进行电压变化。
3 程序设计
程序在运行时:①为电器控制器,若是远程电话机对控制器进行操作,是根据电话的振铃声数来判断;若本地电话机对控制器进行操作,是根据本地电话机的摘机情况来判断。②为报警器,报警探头随时检测到警情并发出信号给控制器,而控制器则是根据用户的设置情况,是处于警备与否来判断是否拔出报警电话。图7是程序流程图。转贴于
下面主要介绍初始化程序、MT8880设置子程序和DTMF信号发送以及接收子程序。
;初始化寄存器
F0 EQU 0H
RTCC EQU 01H
PC EQU 02H
STATUS EQU 03H
FSR EQU 04H
RA EQU 05H
RB EQU 06H
RC EQU 07H
RD EQU 08H
RE EQU 09H
TRISA EQU 85H
TRISB EQU 86H
TRISC EQU 87H
TRISD EQU 88H
TRISE EQU 89H
DAIFS EQU 0X50;待发送的数据放在50开始的区域
RECE EQU 0X21
SEND EQU 0X22
DAIJS EQU 0X40 ;数据暂存在从40H开始的区域
;MT8880设置子程序
;置MT8880为DTMF接收状态
R8880:MOVLW0X0D
MOVWF REVE ;写控制寄存器A(接收模式)
MOVLW 0X00
MOVWF REVE ;写控制寄存器B(突发模式)
REIURN
;置MT8880为DTMF接收状态
T8880:MOVLW 0X0F
MOVWF SEND;写控制寄存器A(发送模式)
MOVLW 0X00
MOVWF SEND;写控制寄存器B(突发模式)
RETURN
;DTMF发送子程序
TELEPHON:CALL T8880 ;设置为发送模式
LOOP:MOVF DAIFS,0 ;拔号
MOVLW SEND
INCF DAIFS,1 ;检查是否发送结束
LL1:BTFSS SEND,1
GOTO LL1 ;已经发送完毕
CALL DELAY200 ;延时200ms
DECF DATALENGTH
GOTO LOOP ;发送完毕
RETURN
;DTMF接收子程序
RECEIVE:CALL R8880 ;设置为接收模式
RWT:MOVF DJIJS,0
MOVLW REVE
BTFSS REVE,2
GOTO RWT ;查询是否收到数据
MOVLW REVE
ANDLW 0XOF
MOVF REVE
INCF DAIJS,1
DECE DATALENGTH
RETURN
篇10
摘 要:为了解决差分能量攻击(DPA)中的样本选取问题,提出了一套样本选取方法。方法从所使用的实验平台出发,通过理论分析提出样本选取方式和数量,然后进行实验验证。以AES算法为例,分别进行了仿真实验和实测实验,验证了所提出的选取方法的准确性。结果表明,仿真攻击的明文样本应该按顺序取,数量为一个全排列,而实测攻击应该直接采用大量随机数,两者对明文样本的要求存在较大差别。
关键词:差分能量攻击;样本选取;功耗曲线;高级加密标准
中图分类号: TN492;TP309.2 文献标志码:A
Abstract: To resolve the problem with selecting the samples in the Differential Power Attack (DPA), this paper proposed a set of samples selection method. Based on the given experimental platform, the mode and amount of samples selection were proposed through theoretical analysis, and then were validated by experiments. For Advanced Encryption Standard (AES), this paper put forward the samples selection methods for simulation test and practical experimentation, and proved that the proposed method was right. The results show that the simulation sample plaintext attack should be taken in sequence, with the quantity of a full array. And the attack should be measured directly using a large number of random numbers. There is a big difference in the explicit requirements of the sample.
Key words: Differential Power Attack (DPA); samples selection; power trace; Advanced Encryption Standard (AES)
0 引言
能量攻击是应用最为广泛且最具威胁的旁道攻击技术之一,其基本思想是通过分析密码设备的能量消耗获得其密钥。自Kocher等于1998年提出能量攻击概念[1],并对DES(Data Encryption Standard)算法的硬件实现进行实际的攻击,该方法几乎被应用于所有的分组密码的硬件实现,并涌现出了大量的研究成果[2]。由于差分能量攻击(Differential Power Attack, DPA)者几乎不用知道除了算法之外的任何信息,非常有效且攻击所需的硬件资源很小,DPA成为最广泛的能量分析攻击方法。
虽然现有的差分能量攻击文献很多,但是其中对样本选取问题的讨论却很少。不考虑时间随机化[3]、功耗平衡[4]、掩码[5]等加防御措施的情况,本文以目前广泛使用的AES算法为例,对分组密码算法差分能量攻击过程中样本选取问题进行研究,经过对比分析实验结果,分别提出了针对仿真验证和实测验证的样本选取方法。
1 差分能量攻击原理
DPA攻击利用密码设备能量消耗的数据依赖性,使用大量的功耗曲线来分析固定时刻设备的能量消耗,并将其作为被处理数据的函数。通常,DPA攻击需要经过以下几个步骤:首先,选择所执行算法的某个中间值作为区分函数并计算区分函数值;其次,测量密码设备在加解密不同数据时的能量消耗;最后是分析处理数据。差分功耗计算公式如式(1)所示:
Tj=∑mi=1[DijPi]∑mi=1Dij-∑mi=1[(1-Dij)Pi]∑mi=1(1-Dij)(1)
其中:Dij表示第i个明文与第j个猜测密钥运算得到的区分函数值;Pi表示第i个明文加密时的功耗值;Tj表示第j个猜测密钥的差分功耗,它由Dij=1的功耗集合的均值减去的功耗集合的均值得到。
本文以S盒输出某一位的汉明重量作为区分函数进行分析,下面的数据均是以此为基础进行分析得到的。
2 差分能量攻击样本选取方法
仿真验证是利用功耗仿真软件(primepower)得出功耗值,而实测则是通过示波器采集实际的功耗值。由于primepower得出的功耗是一段时间内的平均功耗,且没有考虑噪声,不能精确反映密码芯片实际的工作情况。对实测得到的功耗曲线,可以得到密码设备加解密运算时段的功耗。因此,虽然仿真验证简单易行,却不能代替实测验证。
2.1 仿真验证中的样本选取方法
仿真验证过程如图1所示,分两个方面。一方面通过编写modelsim测试程序,求出区分函数值。另一方面是利用软件计算功耗,具体为:首先编写硬件代码,通过DesignCompiler将其综合成门级网表;其次利用NCverilog对综合后的门级网表进行仿真产生.vcd文件,最后采用primepower计算出功耗;最后,按式(1)进行数据分析。
对于分组密码算法,以S盒为单位采取分段攻击,比如AES,其S盒输入和输出均是8位,因此其一次攻击的密钥猜测空间为28即256。有如下定义:称密钥猜测空间为一个攻击样本数的单位,即单位样本数,记为N。以AES密码算法为例,N=256。
为了得到仿真验证样本选取方法,包括样本选取方式和样本选取数量,本例对AES第一个S盒进行攻击,采用汉明重量模型,区分函数为S盒输出第三位,实际密钥值为8′ha5。
1)选取样本方式。
为了找到正确的样本选取方式,分别采用随机数和顺序排列明文作为样本进行攻击。
当所采用的明文样本为随机数的时候,利用primepower得到的功耗值总是少于样本数,区分函数值与功耗值不能对齐,产生失调,导致实验无法进行。通过分析,发现在出现连续相同明文的情况时,primepower只给出一个功耗值。当采用顺序排列明文时,可以有效解决功耗值丢失的问题。因此,仿真验证中的明文样本应该采用顺序排列形式。
2)选取样本数量。
由于仿真验证的功耗是利用软件进行模拟得到的理想化的结果,不需要考虑噪声的问题,因此可以得出推论:仿真验证所需用的样本数量不大。下面给出此推论的证明。
证明 令明文为plain,密钥key,有:
Dij=Sbox1(plainikeyj)
其中Sbox1表示第一个S盒的置换操作。所给样本为顺序排列,即plaini=plaini+N,故有:
Dij=D(i+N)jPij=P(i+N)j(2)
对样本量为N和2N,由式(1),分别有:
Tj=∑Ni=1[DijPi]∑Ni=1Dij-∑Ni=1[(1-Dij)Pi]∑Ni=1(1-Dij)
Tn=∑2Nm=1[DmnPm]∑2Nm=1Dmn-∑2Nm=1[(1-Dmn)Pm]∑2Nm=1(1-Dmn)
由式(2),易知当m=j时,有:
∑2Nm=1[DmnPm]=2∑Ni=1[DijPi]
∑2Nm=1Dmn=2∑Ni=1Dij
∑2Nm=1[(1-Dmn)Pm]=2∑Ni=1[(1-Dij)Pi]
∑2Nm=1(1-Dmn)=2∑Ni=1(1-Dij)
即Ti=Tm。证毕。
从证明过程可以看出,由于明文样本是顺序排列循环使用,在相同条件下,仿真得到的差分功耗值也是一个循环。
按照图1所示验证过程,分别采用N个明文样本和2N个明文样本进行仿真验证,图2为攻击结果。
其中横轴为猜测密钥值,纵轴为差分功耗值。样本量为N和2N时的攻击结果完全相同,这里只给出一个图表。此结果说明,攻击所需样本数量有一个临界值,即为N。
下面对差分功耗值的循环出现进行实验验证,给出一个更加直观的结果。
取不同数量的明文样本(50,100,150,200,N,300,150+N,400,2N,550)分别进行攻击,将结果集中在一个Excel表格中,导入Matlab,进行数据可视化处理,得结果如图3所示,其中横轴为样本量,纵轴为差分功耗值,粗线标记出的为对应正确猜测密钥的曲线。
可以看出,样本量小于150时没有攻击出正确结果,错误猜测密钥的差分功耗大于正确猜测密钥的差分功耗,出现了“假峰”即“ghost peak”[6],而样本量为(150+N)时得出了正确结果,这说明样本数量太少不会得出正确结果。同时,与样本量为N时相比,样本量为(150+N)时虽然攻击出了正确结果,但是正确密钥的差分功耗与次高的差分功耗之间的差值不如样本量为N时大,其效果比不上样本量为N时的情况。可见,对于仿真验证来说,适当的增加样本量是必要的,但并不是样本越多效果就越好。
综上所述,对于仿真验证来说,由于功耗仿真软件对连续相同明文输入只给出一个功耗值,明文样本应该采用顺序排列形式,避免功耗与区分函数值失调;样本数量方面,一个单位即可,如果没有攻击出正确结果,应更换区分函数。
2.2 实测验证的样本选取与功耗采集方法
实测验证和仿真验证最大的区别就在于功耗的来源不同。对密码芯片进行实际攻击的时候,在芯片的电源和地之间串接一个小电阻(典型值5Ω),通过示波器采集电阻两端的电压值进行分析。示波器对每一组明文样本的加解密运算过程中产生的功耗都有采集,因此明文样本可以直接采用随机数,不必担心功耗值丢失发生失调。
理论上,实测验证采集的功耗比仿真验证过程中软件模拟出的功耗更加接近实际,攻击出正确密钥所需的样本数量应该少于后者。但是由于实际测量过程中存在噪声,相比微小的差分功耗,噪声的干扰是很严重的,以至于在样本量不大的情况下,攻击不出正确密钥。因此,实际的攻击需要大量的明文样本。
1)功耗曲线统计特征。
密码芯片执行密码算法时产生的功耗,可以简单地用式(3)表示:
Ptotal=Pexp+Pnoise(3)
其中:Ptotal为总功耗,Pexp为可利用的功耗,Pnoise为噪声功耗。
Mangard等对相同明文进行反复加密运算,对功耗曲线进行统计分析[7],得出结论:功耗曲线中的点服从正态分布,即:
Pexp~N(μ,σ1)Pnoise~N(0,σ1)(4)
从式(4)可以看出,噪声功耗服从均值为0的正态分布,加密运算产生的功耗则服从均值为μ的正态分布。因此,对于每一个明文样本,可以在密码芯片中进行重复运算,记录多条功耗曲线,接着计算其均值,这样做可以尽量消除噪声带来的影响,使运算功耗更加接近均值μ。
2)信噪比对功耗曲线中样本点的影响。
信噪比(SignaltoNoise Ratio, SNR)指的是一次测量中信号分量和噪声分量的比值,定义为:
SNR=Var(signal)Var(noise)
本文所进行的能量攻击中,Pexp对应信号分量,是能量消耗中可以利用的分量,也是能量消耗中唯一包含对攻击者有用信息的分量;Pnoise对应噪声分量,为包含电子噪声和转换噪声的全部噪声。由上面信噪比的定义,有:
SNR=Var(Pexp)Var(Pnoise)(5)
显然,SNR越高,从噪声中识别出Pexp就越容易,此时可利用的信息就越多[8]。因此,对示波器采集到的功耗曲线,应该取运算过程中产生功耗尖峰时刻附近的点作为功耗样本。
3)样本选取方法及实验验证。
由上面分析可知,样本选取可以有两种方法:一种是对若干组相同明文进行重复加密求均值;另一种则是直接采用大量随机明文。但是对于差分能量攻击来说,参看式(1),可以发现在数据处理分析阶段做了大量的求和平均,因此第一种方法不会有更好的攻击效果。下面通过对实验结果进行比较,来确定正确的样本选取方法。
对基于FPGA实现的AES算法的第一个S盒进行攻击,明文样本分别是5000组随机数,10000组随机数,20×500组随机数(同一明文进行20次重复运算,共500组)。
图4分别是样本为5000组随机数、10000组随机数时的攻击结果,图中标记出的为对应正确猜测密钥的曲线,此时区分函数为S盒第五位输出的汉明重量[9]。
图4中横轴表示采样点,纵轴表示差分功耗,加粗标示的为正确密钥对应的差分功耗曲线,可见样本量为5000和10000时均能辨别出正确密钥,而且后者效果更加明显。
图5为相同明文重复加密取均值时的攻击结果,其中加粗线条表示的为正确密钥对应的差分功耗曲线。,其中标记出的为对应正确猜测密钥的曲线。横轴表示采样点,纵轴表示差分功耗由图5可知,正确密钥对应的差分功耗曲线并不是最高尖峰,即没有攻击出正确结果。由此可以得出结论,相同样本数量的情况下,进行功耗平均化处理的效果不如直接采用大量随机明文时的攻击效果。所以,样本应该直接选取大量随机数。
3 结语
本文提出了分组密码差分能量攻击仿真验证和实测验证的样本选取方法,并通过实验进行了证实。结果表明,仿真验证中的样本应该是以顺序排列的形式给出,数量为一个单位数;实测验证中样本应直接选用随机数,而不是采用若干组相同明文。实测验证样本数量的确定要考虑很多因素,与算法本身也有很大关系,现有文献关于这方面的研究很少,且都是基于信噪比[11-12]进行分析的。所以,如何确定实测验证中的样本数量,将成为下一步将要研究的重点。
参考文献:
[1]
KOCHER P, JAFFE J, JUN B. Differential power analysis [C]// Advances in Cryptology-CRYPTO99, LNCS 1666. Berlin: SpringerVerlag, 1999: 388-397.
[2]
STANDAERT FX, MALKIN T G, YUNG M. A unified framework for the analysis of sidechannel key recovery attacks [C]// EUROCRYPT09: Proceedings of the 28th Annual International Conference on Advances in Cryptology: The Theory and Applications of Cryptographic Techniques, LNCS 5479. Berlin: SpringerVerlag, 2009: 443-461.
[3]
REN FANG, YAN YINGJIAN, FU XIAOBING. Design of differential power analysis resistant crypto chip based on time randomization [J]. Journal of Electronics (CHINA), 2010, 27(2): 237-242.
[4]
曾永红,叶旭明.抗差分功耗分析攻击的AES S盒电路设计[J].计算机工程,2010,36(9):20-22.
[5]
刘海清,陆洪毅,童元满.基于随机掩码的AES算法抗DPA攻击硬件实现[J].信息网络安全,2008(11):51-54.
[6]
GUILLEY S, HOOGVORST P, PACALET R. Differential power analysis model and some results [C]// Smart Card Research and Advanced Applications VI, IFIP 18th World Computer Congress, TC8/WG8.8 & TC11/WG11.2 Sixth International Conference on Smart Card Research and Advanced Applications. Norwell: Kluwer Academic Publishers, 2004: 127-142.
[7]
MANGARD S, OSWALD E, POPP T.能量分析攻击[M].冯登国,周永彬,刘继业,等译.北京:科学出版社,2010:50-55.
[8]
LE T H, CLEDIERE J, SERVIERE C, et al. Noise reduction in side channel attack using fourthorder cumulant [J]. IEEE Transactions on Information Forensics and Security, 2007, 2(4): 710-720.
[9]
PARK J, LEE H, HA J, et al. A differential power analysis attack of block cipher based on the Hamming weight of internal operation unit [C]// Proceedings of 2006 International Conference on Computational Intelligence and Security, LNCS 4456. Berlin: SpringerVerlag, 2006: 1375-1380.
[10]
张鹏,邓高明,邹程,等.差分功率分析攻击中的信号处理与分析[J].微电子学与计算机,2009,26(11):1-4.
[11]
MESSERGES T S, DABBISH E A, SLOAN R H. Examining smartcard security under the threat of power analysis attacks [J]. IEEE Transactions on Computers, 2002, 51(5): 541-552.
[12]
STRACHACKI M, SZCZEPANSKI S. Implementation of AES algorithm resistant to differential power analysis [C]// ICECS 2008: Proceedings of the 15th IEEE International Conference on Electronics, Circuits and Systems. Piscataway: IEEE, 2008: 214-217.
- 上一篇:教学方法案例分析法
- 下一篇:发展心理学与教育心理学