基于FPGA的电子密码锁的研究设计Word文件下载.docx

上传人:b****4 文档编号:6426341 上传时间:2023-05-06 格式:DOCX 页数:43 大小:563.70KB
下载 相关 举报
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第1页
第1页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第2页
第2页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第3页
第3页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第4页
第4页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第5页
第5页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第6页
第6页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第7页
第7页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第8页
第8页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第9页
第9页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第10页
第10页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第11页
第11页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第12页
第12页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第13页
第13页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第14页
第14页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第15页
第15页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第16页
第16页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第17页
第17页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第18页
第18页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第19页
第19页 / 共43页
基于FPGA的电子密码锁的研究设计Word文件下载.docx_第20页
第20页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于FPGA的电子密码锁的研究设计Word文件下载.docx

《基于FPGA的电子密码锁的研究设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于FPGA的电子密码锁的研究设计Word文件下载.docx(43页珍藏版)》请在冰点文库上搜索。

基于FPGA的电子密码锁的研究设计Word文件下载.docx

(CollegeofEngineering,SouthChinaAgriculturalUniversity,Guangzhou510642,China)

Abstract:

Withtherapiddevelopmentofmodernelectronictechnology,electroniclockswillgraduallyreplacetheordinarymechanicallocks.ConfidentialDepartmenthastheadvantagesofseveralordinarymechanicallockscannotsubstituteelectroniclocks,suchashighsecurity,anti-theftperformance,anddoesnotrequiretheuseofakey,Rememberpasswordcanunlock.Thisarticlefocusesonthedesignmethodwhichisbasedonfieldprogrammablegatearray(FPGA)devices,electroniclocks.FPGAdeviceconstructedsystem,allofthealgorithmscompletelyrealizedbyahardwarecircuitsothattheoperationalreliabilityofthesystemcanbegreatlyimproved.Andwithfield-programmablefunction,whenitneedtochangethemethodsofthedesign,justchangetheFPGAcontrolandinterfacecircuitwithusingEDAtoolsupdateddesignthatisdownloadedtotheFPGAwithouttheneedtochangetheexternalcircuitdesign,greatlyimprovingtheefficiencyofthedesign.Therefore,theuseofdigitalsystemsdevelopedbytheFPGA,notonlyhasaveryhighoperatingreliability,butalsoextremelyeasytoupgrade.ThedesignofthesystemusestheEDAtechnology,MAX+PLUSⅡsoftwareandVHDLhardwaredescriptionlanguage,designedanelectroniclock,andimplementedbytheInstituteofexperimentalboxFPGAchip.

Keywords:

electroniclocksFPGAVHDLhardwaredescriptionlanguageEDA

MAX+PLUSII

华南农业大学本科生毕业设计成绩评定表

1前言

1.1EDA技术及其发展

在计算机技术的推动下,20世纪末,电子技术获得了飞速的发展,现代电子产品几乎渗透于社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时又促使现代电子产品性能的进一步提高,产品更新换代的节奏也越来越快(潘松,等,2005)。

电子技术发展的基本根基是微电子技术的发展及进步,它表现在大规模的集成电路的加工技术,即是指半导体工艺技术的发展上。

现在的集成电路的集成度越来越高,并且其设计成本也越来越低,加上其功能和结构也已经能够实现单片电子系统的要求,因此,现代对其的应用越来越广泛,它已成为电子产品的一个不可缺少的核心部分。

而EDA(ElectronicDesignAutomation)技术作为现代电子技术设计的核心,它依赖功能强大的计算机,在EDA设计工具软件平台上,对已硬件描述语言为系统逻辑描述表示方式完成的设计文件,自动地完成逻辑化简、逻辑分割、逻辑综合、结构布线以及逻辑优化和仿真测试等多项的功能,直至实现既定性能的电子综合电路的系统功能。

EDA设计工作的设计者的设计工作几乎仅限于利用软件的方式,这样为设计工作带来了许多便利和资源节省。

EDA技术在硬件实现方面融合了大规模集成电路制造技术、IC(IntegratedCircuit)版图设计技术、ASIC(ApplicationSpecificIntegratedCircuit)测试和封装技术、FPGA(FieldProgrammableGateArray)和CPLD(ComplexProgrammableLogicDevice)编程下载技术、自动测试技术等;

在计算机辅助工程方面结合了计算机辅助设计、计算机辅助制造、计算机辅助测试、计算机辅助工程技术以及众多计算机语言设计的概念;

而在现代电子学方面则容纳了更多的内容,如电子线路设计理论、数字信号系统处理技术、嵌入式系统和计算机设计技术、数字系统建模和优化设计及微波技术等。

所以,EDA技术为现代电子理论和设计表达与实现提供了更多的可能性(潘松,等,2005)。

在现代技术的所有领域中,许多一飞速发展的科学技术,多属于计算机辅助设计,而不是自动化设计。

显然,最早进入真正的设计自动化的技术领域非电子技术莫属,这就是为什么电子技术始终处于所有科学技术发展的前列的原因之一。

这也是为什么本系统的设计采用基于FPGA的EDA设计的电子密码锁。

1.2电子密码锁的国内外发展状况

在当今这个智能化快速发展的科技技术时代,人们对安全性的要求也越来越高。

从古至今,人们对各种各类的锁研究从未中断过,它被视为守护安全的重要盾牌。

安全性高、方便使用的锁是人们的追求。

随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。

据有关资料介绍,电子密码锁的研究从20世纪30年代就开始了,在一些特殊场所早就有所应用。

这种锁是通过键盘输入一组密码完成开锁过程。

研究这种锁的初衷,就是为提高锁的安全性。

由于电子锁的密钥量,即密码量极大,可以与机械锁配合使用,并且可以避免因钥匙被仿制而留下安全隐患。

电子锁只需记住一组密码,无需携带金属钥匙,免除了人们携带金属钥匙的烦恼,而被越来越多的人所欣赏。

电子锁的种类繁多,例如数码锁,指纹锁,磁卡锁,IC卡锁,生物锁等。

但较实用的还是按键式电子密码锁。

20世纪80年代后,随着电子锁专用集成电路的出现,电子锁的体积逐渐缩小,可靠性日益提高,成本也较高,是适合使用在安全性要求较高的场合,且需要有电源提供能量,使用还局限在一定范围,难以普及,所以对它的研究一直没有明显进展(赵雅兴,2003)。

当今智能电子密码锁发展已经到了非常高的境界,在这几年得到空前发展,无论功能性,稳定性都比较全面,在保密方面已做到人眼识别,指纹识别,人声识别基本上电影上有的现实也有。

其在国内发展也较快,不管自己开发或是引进都有,在重要地方应用也较多,由于价钱比普通弹子锁较贵,早几年应用较少,现在越来越普及到平常化,未来的发展也会越来越被大众采用,由于它的功能、安全是弹子锁无法相比的。

发展前境是非常大的。

而在国外发达国家,其发展比较早,应用也比较广泛,电子密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于智能门禁系统中,通过多种更加安全,更加可靠的技术实现大门的管理。

例如,FPGA会被用于军人和另外的敏感应用程序中,攻击这些设备的一个对手的威胁是曾经存在的危险。

当有能力被重新设置对开发有用的信息时,它的硬件设计的风险正在被克隆。

所以,对于研究免受这种攻击而用作为多态的电路的加密钥匙或者控制其特定的钥匙在FPGA上保护必要的信息的技术设备是十分重要的(McGee.MilesE,2011)。

以上这个应用相对来说也是具有一个保密性的系统,而且相对本系统比较难,但是存在着一定的联系。

总之,为保证信息安全,以后的电子密码锁必须使其具有机密性、完整性、可获取性、真实性和持久性。

电子密码锁在未来肯定会得到迅猛的发展和更加广泛的应用,因为对于重视维护各方面信息安全的时代,它是必不可少的。

相信以后在政治、经济、军事和文化服务这几方面中,电子密码锁得以更好的发展和应用。

1.3电子密码锁的重要性

电子密码锁,我们从其名可以很明显地知道,它对信息的安全防护起着重要的作用。

在这个科技技术快速发展的时代,人们的知识水平也越来越高,而且犯罪分子的犯罪手段和犯罪方法也越来越高超。

在电子密码锁使用并不广泛的时代,有段时期犯罪分子的犯罪工具中一种称为万能钥匙出现了,它的特点是可以轻易地将普通居民住所的非电子密码锁大门“打开”,造成这些居民的财产甚至是人身安全巨大的损失。

而电子密码锁就可以大大地避免这种情况的发生。

电子密码锁门禁系统是只有主人才知道密码,只允许主人打开。

要是盗贼试图打开,撬门的方式是几乎不可行的,因为会有报警;

而且完善的电子密码锁一般会限制输入次数,要是输入密码多次错误,也会发出报警信号。

虽然本系统没设计报警这一模块,但是安全性要是比较高的,而且成本也较低。

因此,电子密码锁在我们生活中、军事中、政治中、文化服务中都起着保护信息安全或财产安全的重要性(赵雅兴,2003)。

2MAX+PLUSⅡ软件环境概述

MAX+PLUSⅡ是Altera提供的FPGA/CPLD(ComplexProgrammableLogicDevice)开发集成环境,Altera是世界最大可编程逻辑器件供应商之一。

MAX+PLUSⅡ的界面友好,使用便捷,并且还被誉为业界最易用易学的EDA软件。

在MAX+PLUSⅡ上可完成FPGA/CPLD设计的整个流程,它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件的编程。

2.1MAX+PLUSⅡ设计流程

如图1所示,其上方是MAX+PLUSⅡ编译设计主控界面,它显示了MAX+PLUSⅡ自动设计的各主要处理环节和设计流程。

包括设计输入编辑、编译网表提取、数据库建立、逻辑综合、逻辑分割、适配、延时网表提取、编程文件汇编(装配)以及编程下载,一共9个步骤。

图中下方的流程框图是与上面MAX+PLUSⅡ设计流程相对照的标准的EDA开发流程。

首先,设计者以图形或者HDL(HardwareDescriptionLanguage)编辑器的方式将所需要的设计在MAX+PLUSⅡ的编辑界面输入,编辑完毕后,点击该软件环境的编译和建立按钮,则输入的设计会进入到综合或编译这一步骤中,即先经编译网表提取,在进行数据库的建立,最后对设计进行逻辑综合;

在这三个步骤顺利通过以后,设计便会进入到适配器件中的调试。

即对设计内容先进行逻辑分割,再通过适配器选择适应其的适配配件,最后提取延时网表,当设计都通过以上所述的步骤后,便可对其进行仿真,仿真无错误便进入到编程文件汇编中,将仿真下载到编程器中。

完成对设计的仿真和调试。

通过这一系列步骤,基本可以确定设计者的设计是否符合逻辑、是否正确。

虽然这个设计软件环境并不是十全十美,可以发现所有情况下的错误信息,但是基本可以帮助设计者意识到自己的设计缺陷和错误,并会给出相关提示,有助于设计者快速查找出错误之处,甚至编程无错误,通过仿真测试可以看出原本的设计的结果是否满足预期的设计,为设计者的设计提供更加完善的判断,更为修改设计方案提供了更多的方便(陈楚,等,2009)。

图1MAX+PLUSⅡ编译设计主控界面

2.2MAX+PLUSⅡ支持的硬件描述语言

MAX+PLUSⅡ编译器支持的硬件描述语言有VHDL(VeryHighSpeedIntegratedCircuitHDL)(支持'

87及'

97标准)、VerilogHDL及AHDL(AlteraHDL)。

前两种为IEEE标准支持的硬件描述语言,最后一种AHDL是Aatera公司自己设计、制定的硬件描述语言,是一种以结构描述方式为主的硬件描述语言。

本系统设计用的硬件描述语言是VHDL。

VHDL作为一个规范语言和建模语言,随着VHDL的标准化,出现了一些支持该语言的行为仿真器。

由于创建VHDL的最初目标是用于标准文档的建立和电路功能模拟,其基本想法是在高层次上描述系统和元件的行为。

但到了20世纪90年代初,人们发现VHDL不仅可以作为系统模拟的建模工具,而且可以作为电路系统的设计工具,可以利用软件工具将VHDL源码自动转化为文本方式表达的基本逻辑元件的连图,即网表文件。

这种方法显然对于电路自动设计是一个极大的推进。

很快,电子设计领域出现了第一个软件设计工具,即VHDL逻辑综合器,它把标准VHDL的部分语句描述转化为具体电路实现的网表文件。

VHDL具有与具体硬件电路和与设计平台无关的特性,并且具有良好的电路行为描述和系统描述能力。

与Verilog相比,VHDL有下列优势:

第一,语法比Verilog严谨,通过EDA工具自动语法检查,易排除许多设计中的疏忽。

第二,有很好的行为级描述能力和一定的系统级描述能力,而Verilog建模时,行为与系统级抽象及相关描述能力不及VHDL(陈楚,等,2009)。

2.3MAX+PLUSⅡ工作过程

MAX+PLUSⅡ允许来自第三方的EDIF(ElectronicDesignInterchangeFormat)文件输入,这可以与其他EDA工具进行接口。

MAX+PLUSⅡ支持层次化设计,可以在一个新的编辑输入环境中对使用不同输入设计方式完成的工程模块(元件)进行调用,从而解决了原理图与HDL混合输入设计的问题。

在设计输入之后,MAX+PLUSⅡ的编译器将给出设计输入的错误报告,将错误显示出来。

MAX+PLUSⅡ拥有性能良好的设计错误定位器,用于确定文本或图形设计中的错误。

在进入编译网表功能块后,MAX+PLUSⅡ将从适配文件中提取SNF(SimulationNetlistFormat)时序仿真文件SimulationNetlist(仿真网表文件)。

SNF文件详细记录了当前适配的延时和逻辑功能信息,可用于对设计进行时序仿真。

在仿真前,需要利用波形编辑器编辑一个波形激励文件。

编译和仿真经检测无误后,便可以将下载信息通过MAX+PLUSⅡ提供的编程器下载到目标器件中(陈楚,等,2009)。

3硬件环境FPGA的工作原理及其结构

3.1FPGA的基本结构

现场可编辑门阵列FPGA同CPLD一样都是可编程逻辑器件,现场可编辑逻辑门阵列是在PAL(ProgrammableArrayLogic)、GAL(GenericArrayLogic)等逻辑器件的基础之上发展起来的。

同以往的PAL、GAL等相比,FPGA的规模更大,它可以替代几十甚至几千块通用的IC芯片。

这样的FPGA实际上就是一个子系统部件,这种芯片受到全世界范围内电子工程设计人员的广泛关注和普遍欢迎(袁文波,等,2007)。

它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

FPGA一般由一个二维的逻辑块阵列、输入/输出块和连接逻辑块的互连资源这三大部分组成。

通常PLD(ProgrammableLogicDevice)器件可分为两种结构:

一种是基于乘积项的PLD结构,另一种是基于查找表的结构,采用这种结构的PLD也可称之为FPGA。

本质上,查找表(LookUpTable)就是一个RAM(RandomAccessMemory)。

目前FPGA中使用4输入的LUT,所以每一个LUT可以看成是一个有4位地址线的16*1的RAM。

当用户通过原理图或HDL语言描述了一个逻辑电路后,PLD/FPGA开发软件会自动计算逻辑电路的所有可能的结果,并把结果事先写入RAM,这样每输入一个信号进行逻辑运算就等于输入一个地址进行查找表,找出地址对应的内容,然后输出即可。

一般来说,FPGA芯片主要由三部分组成,分别是输入输出单元、逻辑阵列块。

对于FPGA,用户可配置的输入、输出和缓冲端口为芯片外部引脚和内部逻辑提供了一个界面,每个输入、输出端口控制一个外部引脚,并可定义为输入、输出或双向三种功能。

当其定义为输入时,输入信号经Pad进入输入缓冲器,并根据配置可以直接输入,亦可以通过边沿触发器或电平敏感锁存器输入。

当其定义为输出时,输出信号可以通过配置选择是否反相,是直接传输到Pad,还是通过边沿触发器寄存后传输。

可以选择用输出使能信号使输出缓冲器是否为高阻状态,以实现三态输出或双向I/O传输。

其内部连线由一些具有可编程开关点或开关矩阵的金属线段组成,结构对称、规范,适合于建立自动有效的布局布线算法。

布线通道的数目由阵列规模决定。

内部连接线联通FPGA内部的所有单元,而连线的长度和工艺决定着信号再连接线上的驱动能力和传输速度。

在实际开发中,设计者不需要直接选择连接线,布局布线器可自动地根据输入逻辑网表(这由综合生成)的拓扑结构和约束条件选择连接线来连通各个逻辑单元,所以,从本质上来说,布线资源的使用方法和设计的结果有密切和直接的关系。

3.2FPGA的设计流程

FPGA设计大体分为设计输入、综合、功能仿真、实现、时序仿真、配置下载等六个步骤(潘松,等,2005;

袁文波,等,2007;

赵雅兴,2003)。

设计输入包括使用硬件描述语言、状态图与原理图输入三种方式。

设计综合就是针对给定的电路实现功能和实现此电路的约束条件,如速度、功耗、成本及电路类型等,通过计算机进行优化处理,获得一个能满足上述要求的电路设计方案。

也就是说被综合的文件时HDL文件或相应的文件等,综合的依据是逻辑设计的描述和各种约束条件,综合的结果则是一个硬件电路的实现方案,该方案必须同时满足预期的功能和约束条件。

对综合来说,满足要求的方案可能有多个,综合工具将产生一个最优的或着接近最优的结果。

因此,综合的过程也就是设计目标的优化过程,最后获得的结构与综合工具的工作性能有关。

从广义讲,设计验证包括功能与时序仿真和电路验证。

仿真是指使用设计软件包对已实现的设计进行完整的测试,模拟物理环境下的工作情况。

功能仿真是指仅对逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求,仿真过程中没加入时序信息,不涉及具体器件的硬件特性,如延时特性;

而在布局布线后,提取有关的器件延时、连线延时等时序参数,并在此基础上进行的仿真称为后仿真,它是接近真实器件运行的仿真。

设计实现是利用实现工具把逻辑映射到目标器件结构的资源中,决定逻辑的最佳布局,选择逻辑与输入输出功能连接的布线通道进行连线,并产生相应的文件。

其通常分为转换、映射、布局与布线、时序提取和配置共5个步骤。

在设计实现的过程中,在映射后需要对一个设计的实际功能的延时和估计的布线延时进行时序分析;

而在布局布线后,也要对实际布局布线的功能块的延时和实际布线延时进行静态时序分析。

从某种程度讲,静态时序分析可以说是整个FPGA设计中最重要的步骤,它允许设计者详尽地分析所有关键路径并得出一个有次序的报告,而且报告中含有其他调试信息。

静态时序分析器可以用来检查设计的逻辑和时序,以便计算各通路性能,识别可靠的踪迹,检测建立和保持时间的配合。

时序分析不要求用户产生输入激励或测试矢量。

而下载是在功能仿真与时序仿真正确的前提下,将综合后形成的位流下载到具体的FPGA芯片中,也叫芯片配置。

FPGA设计也有两种配置形式:

直接由计算机经过专用下载电缆进行配置;

由外围配置芯片进行上电时自动配置。

将位流文件下载到FPGA器件内部后进行实际器件的物理测试即为电路验证,当得到正确的验证结果后就证明了设计的正确性。

电路验证对FPGA投片生产具有较大的意义。

以下对上述某些部分进行详细分析,其中,在系统设计之前,首先要进行的是方案论证、系统设计和FPGA芯片选择等准备工作。

系统工程师根据任务要求,如系统的指标和复杂度,对工作速度和芯片本身的各种资源、成本等方面进行权衡,选择合理的设计方案和合适的器件类型。

一般都采用自顶向下的设计方法,把系统分成若干个基本单元,然后再把每个基本单元划分为下一层次的基本单元,一直这样做下去,直到可以直接使用EDA元件库为止。

还有RTL级(Register 

Transfer 

Level,寄存器传输级)指不关注寄存器和组合逻辑的细节(如使用了多少个逻辑门、逻辑门的连接拓扑结构等),通过描述数据在寄存器之间的流动和如何处理、控制这些数据流动的模型的HDL设计方法。

RTL级比门级更抽象,同时也更简单和高效。

RTL级的最大特点是可以直接用综合工具将其综合成为门级网表,其中RTL级设计直接决定着系统的功能和效率。

RTL级仿真也称为功能(行为)仿真,或是综合前仿真,是在编译之前对用户所设计的电路进行逻辑功能验证,此时的仿真没有延迟信息,仅对初步的功能进行检测。

仿真前,要先利用波形编辑器和HDL等建立波形文件和测试向量即将所关心的输入信号组合成序列,仿真结果将会生成报告文件和输出信号波形,从中便可以观察各个节点信号的变化。

如果发现错误,则返回设计修改逻辑设计。

虽然功能仿真不是FPGA开发过程中的必需步骤,但却是系统设计中最关键的一步。

门级仿真也称为综合后仿真,综合后仿真检查综合结果是否和原设计一致。

在仿真时,把综合生成的标准延时文件反标注到综合仿真模型中去,可估计门延时带来的影响。

但这一步骤不能估计线延时,因此和布线后的实际情况还有一定的差距,并不十分准确。

目前的综合工具较为成熟,对于一般的设计可以省略这一步,但如果在布局布线后发现电路结构和设计意图不符,则需要回溯到综合后仿真来确认问题之所在。

在功能仿真中介绍的软件工具一般都支持综合后仿真。

实现是将综合生成的逻辑网表配置到具体的FPGA芯片上,将工程的逻辑和时序与器件的可用资源匹配。

布局布线是其中最重要的过程,布局将逻辑网表中的硬件原语和底层单元合理地配置到芯片内部的固有硬件结构上,并且往往需要在速度最优和面积最优之间作出选择。

布线根据布局的拓扑结构,利用芯片内部的各种连线资源,合理正确地连接各个元件。

也可以简单地将布局布线理解为对FPGA内部查找表和寄存器资源的合理配置,布局可以被理解挑选可实现设计网表的最优

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2