1. 选题的意义及研究现状
1.1 选题意义
进入大学以前,同学们都是在老师和父母的教诲下认真学习,每日都徘徊在上课与做题之间。而在进入大学以后,缺少了父母和老师严格要求,学习更多的是靠同学们的自觉性,很多人开始无拘无束的生活,不再努力学习,有的人甚者养成了旷课、迟到、早退的不良习惯。因此也越来越需要上课点名,但是如果上课人数众多点名所消耗的时间也很长,而且点名过程中经常有学生替别人答道的情况,老师很难发现未到的学生[1]。而传统的红外检测人数的方法出现误测的概率非常大,无法准确统计教室人数。因此我以FPGA为核心,采用EDA技术,在传统红外传感器检测人数的基础上设计了此教室人数统计系统,能够帮老师迅速确定上课的人数,并根据人数的变化掌握学生迟到、早退的情况。
1.2 研究状况
目前各个学校为了能够方便了解学生上课情况采用了各种各样的高科技点名方式:蓝牙定位点名、视频点名、拍照点名、指纹识别点名等等,但是上述各种方法成本都比较高,设计也均比较复杂[2]。本文设计的这一款教室人数自动统计系统用最简单的方法确定教室的人数,在知道人数的基础上就可以在私下由班长确定没有到的同学。
2. FPGA简介
2.1 FPGA概述
FPGA(Field Programmable Gate Array)即现场可编程门阵列,是目前应用广泛的可编程逻辑器件。它是在PAL(Programmable Logical Array,可编程逻辑阵列)、EPLD(Erasable Programmable Logical Device,可擦除可编程逻辑器件)、GAL(Generic Array Logic,通用阵列逻辑)等可编程器件的基础上进一步发展而成的产物[13]。
2.2 FPGA的基本组成
FPGA芯片主要由以下七个部分构成:(1)输入输出单元(IOB);(2)基本可编程逻辑单元;(3)嵌入式RAM;(4)时钟管理模块;(5)丰富的内线资源;(6)内嵌的底层功能单元;(7)内嵌的专用硬件模块。
2.3 FPGA的工作原理
FPGA采用的是逻辑单元阵列LCA(Logic Cell Array),内部包括输入输出模块I/OB(Input Output Block)、可配置逻辑模块CLB(Configurable Logic Block)、内部连线(Interconnect)三个部分[5]。FPGA同传统逻辑电路和门阵列相比具有不同的结构。FPGA利用小型查找表(16×1RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了可实现既含有组合逻辑功能又包括时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。FPGA的逻辑功能是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程。
2.4 FPGA的优点
FPGA使用现场可编程特性,最初为芯片级集成电路板级产品,减少产品的数量,缩短了系统开发周期。具有大容量的优势,强大的逻辑功能,同时提高系统的稳定性和高速度和高可靠性。可以在数字电路系统的设计的过程中配置和软件编程来实现硬件电路的实现。FPGA与单片机相比,富含触发器和I/O引脚,静态重复编程和动态系统重建的特点,大大提高了设计的灵活性和通用性。FPGA使用硬件描述语言设计,由硬件电路实现,命令的控制具有良好的实时性和抗干扰能力。
2.5 FPGA系统的开发流程
FPGA的开发相对于传统PC、单片机的开发有很大不同。FPGA以并行运算为主,以硬件描述语言来实现;相比于PC或单片机(无论是冯诺依曼结构还是哈佛结构)的顺序操作有很大区别。本文选用芯片为EP3C5E144,采用EDA技术,以硬件描述语言VHDL为系统描述手段设计文件,在quartus II工具软件环境下,采用自顶向下的设计方法设计。FPGA设计流程图如图1所示: FPGA教室人数自动统计系统的设计与实现(2):http://www.youerw.com/zidonghua/lunwen_9334.html