基于fpga的电话卡计费器设计毕业设计论文内容摘要:
数字逻辑系统的计算机语言。 它可以使数字逻辑电路设计者用软件编程的方式来描述电子系统的逻辑功能、电路结构和连接形式,利用这种语言来描述自己的设计思想,然后利用 EDA 工具进行仿真,自动综合到门级电路,再用 ASIC 或 CPLD/FPGA实现其功能。 目前这种称之为高层设计的方法已被广泛采用。 据统计,在美国硅谷目前约有 80%的 ASIC 和 FPGA/CPLD 使采用 HDL 方法设计的。 硬件描述语言的发展至今已有二十多年的历史,并成功地应用于设计的各个阶段:建模、仿真、验证和综合等。 到 20 世纪 80年代时,已出现了上百种硬件描述语言,如 ABEL、 HDL、 AHDL,它们对设计自动化曾起到了极大的促进和推动作用,与传统的门级描述方式相比,它更适合大规模系统的设计。 但是,这些语言由不同的 EDA 厂商开发,互不兼容,一般各自面向特定的设计领域与层次,不支持多层次设计,层次间翻译工作要由人工完成,而且众多的语言使用户无所适从。 因此急需一种面向设计的多领域、多层次 、并得到普遍认同的标准硬件描述语言。 进入 80 年代后期,硬件描述语言向着标准化的方向发展。 1985 年美国国防部正式推出了高速集成电路硬件描述语言 VHDL( VeryHighSpeed Integrated Circuit Hardware Description Language), VHDL 和 Verilog HDL 语言适应了基于 FPGA 的电话卡计费器设计 7 这种趋势的要求,先后成为 IEEE 标准。 VHDL 诞生于 1982 年。 1987 年底, VHDL 被 IEEE 和美国国防部确认为标准硬件描述语言。 自 IEEE 公布了 VHDL 的标准版本, IEEE1076(简称 87 版 ) 之后,各 EDA 公司相继推出了自己的 VHDL 设计环境,或宣布自己的设计工具可以和VHDL 接口。 此后 VHDL 在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。 1993 年, IEEE 对 VHDL 进行了修订,从更高的抽象层次和系统描述能力上扩展 VHDL 的内容,公布了新版本的 VHDL,即 IEEE 标准的10761993 版本,(简称 93版)。 现在, VHDL 和 Verilog 作为 IEEE 的工业标准硬件描述语言,又得到众多 EDA 公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。 有专家认为,在新的世纪中, VHDL 与 Verilog 语言将承担起大部分的数字系统设计任务。 Verilog HDL 语言可读性强,易于修改和发现错误,覆盖面广,描述能力强,能支持硬件的设计,验证,综合和测试,包括系统行为级、寄存器传输级和逻辑门级多个设计层次 , 支持结构、数据流和行为三种描述形式的混合描述,因此Verilog HDL几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用 Verilog HDL 来完成。 2. 2. 2 Verilog HDL 语言的优点 1) Verilog HDL 的宽范围描述 能力使它成为高层次设计的核心,将设计人员的工作重心提高到了系统功能的实现与调试,而花较少的精力于物理实现。 2) Verilog HDL 可以用简洁明确的代码描述来进行复杂控制逻辑的设计,灵活且方便,而且也便于设计结果的交流、保存和重用。 3) Verilog HDL 的设计不依赖于特定的器件,方便了工艺的转换。 4) Verilog HDL 是一个标准语言,为众多的 EDA 厂商支持,因此移植性好。 2. 2. 3 Verilog HDL 设计流程 现在的数字电路系统规模特别大,要设计这么大一个系统,一般都是由总设计师把整个硬件设计任务划分成若干个部 分,编出相应的模型(行为的或者结构的),通过仿真加以验证后,在把各个模块分配给下面的工程师。 下面的工程师再细化手中的工作。 这样可以把一个大的系统分成很多的小系统分开给多人设计,从而提高设计的速度和缩短开发周期。 而且有的部分可以利用 IP 核(一些成熟的商业模块)的使用权,更为有效的开发。 这样的一个设计概念叫做自顶向下( TOPDOWN)。 基于 FPGA 的电话卡计费器设计 8 自顶向下的设计就是从系统级开始,把系统分成若干个基本单元,然后把这些基本单元划分成下一层的基本单元,一直这样下去,一直可以用 EDA 元件库中的基本元件实现。 Verilog HDL 的设计流程一般是: 1) 文本编辑:用任何文本编辑器都可以进行,也可以用专用的 HDL 编辑环境。 通常 Verilog HDL 文件保存为 .vhd 文件。 2) 功能仿真:将文件调入 HDL 仿真软件进行功能仿真,检查逻辑功能是否正确(也叫前仿真,对简单的设计可以跳过这一步,只有在布线完成之后,才进行时序仿真)。 3) 逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式。 逻辑综合软件会生成 .bdf 的 EDA 工业标准文件。 4) 布线布局:将 .bdf 文件调入 CPLD 厂家提供的软件进行布线,即把设计好的逻辑安放到 CPLD/FPGA 内。 5) 时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序(也叫后仿真)。 2. 3 Quartus Ⅱ简介 Quartus II 是 Altera公司 的综合性 PLD/FPGA开发 软件 , 支持原理图、 VHDL、Verilog HDL 以及 AHDL( Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及 仿真器 ,可以完成从设计输入到硬件配置的完整 PLD 设计流程。 该软件具有开发性、与结构无关、多平台、完全集成化、丰富的设计库、模块化设计。 该软件方便易用,功能齐全,是非常先进的 EDA工具软件。 Quartus II 特点 ( 1) 最易使用的 CPLD 设计软件 ( 2) Quartus II 给 MAX+plus II用户带来优势 ( 3) 器件支持 ( 4) FPGA 设计流程 ( 5) 系统设计技术 ( 6) 时序逼近方法 ( 7) 验证方案 ( 8) Quartus II 软件简化了 Hardcopy 设计 ( 9) 强大的软件开发工具 Quartus II 基于 FPGA 的电话卡计费器设计 9 3. 原理与模块介绍 3. 1 电话卡计费器设计原理 3. 1. 1 电话卡计费器的控制要求 为了使电话卡计费器能够正常稳定运行,在设计时应考虑到如下几点: 在插入电话卡的同时,电话计费器的控制模块开始工作,这里我们用一个开关模拟读卡。 电话计费控制器与正常通话计费、计时模块相连,以实现整个系统的计费计时功能。 如果卡内余额不 足,报警模块将实现报警功能,报警模式采用光报警,并且当告警时间过长(如超过 1 分钟)时自动切断通话信号 ,系统不工作。 计费计时模块与显示模块相连,显示模块应实现对通话时间以及对话费余额的显示功能。 其计费一般过程可概括为:用户插入电话卡→整个系统开始运行→显示卡内余额。 由于没有信号接受器,该系统将由外部输入通话类型(市话、国内 /国际长途、特殊电话等)。 如果选择通话,计费系统将话费余额与所选通话类型计费率进行比较。 如果话费余额小于费率值,则禁止通话且报警提示;如果话费余额大于等于通话二分钟门限 , 是正常通话状 态 , 通话指示灯亮;如果话费余额大于或等于费率值并且小于通话二分钟门限,则进入通话报警状态,表示通话时间不足一分钟,通话报警灯亮且当告警时间过长(如超过 1分钟)时自动切断通话信号 ,系统不工作。 根据电话计费器的工作过程,本系统采用分层次化、分模块的方式设计,本系统设计的系统组成框图如图 所示三个模块:控制与计费模块、显示模块和报警模块。 如图中虚线框所示。 控制与计费模块完成计费功能并产生控制信号,控制另外两个模块。 显示模块动态显示通话时间与通话余额计费等信息。 报警模块是根据通话中出现的报警信息,及时给 出光报警。 基于 FPGA 的电话卡计费器设计 10 电 话 计费 控 制器 时 钟 正 常 通 话计 费 计 时模 块 显 示方 式 通话计时显示 话费 余额显示 余 额 不 足 报 警 插入电话卡 图 系统设计组成框图 3. 1. 2 方案设计和功能分割 本系统采用层次化、模块化的设计方法,设计顺序采用自顶向下设计。 首先实现系统总体框图中各子模块然后由顶层模块调用各子模块实现整个系统。 为了便于 BCD 码显示,这里时间和费用计数器均采用十进制表示。 3. 2 各功能模块的设计和实现 3. 2. 1 控制与计费模块 计费计时模块是整个 IC 电话计费器的核心部分。 它主要完成用户通话过程的计时、计费功能,且能够根据当前通话的种类 (国际长途 2 元 /分,国内长途 1元 /分、市话 元 /分、特话 /分 )进行相应的扣费,其通话时间和卡值余额 (最大余额为 元 )信息每分钟更新一次,并能在用户通话时其卡内余额不足以继续通话时能通过告警信号提示用户,并在之后强制结束通话 ,其整个过程如下图 所示。 基于 FPGA 的电话卡计费器设计 11 0 1 1 0 1 0 图 控制与设计模块流程图 3. 2. 2 显示模块 该模块经过 3 选 1 选择器将余额信息 (4位 BCD 码以元为单位 )、计时信息 (4位 BCD 码以秒为单位 )动态显示输出,并可进行时间和余额的切换,其整个过程如下图 所示。 余额 remain费率 cost 余额 remain底线 line 选择通话类型 style[1:0] 00特殊通话 ,01市话 ,10国内长途 ,11国际长途 进入报警模块 通话 state=1, 继续报警warn=1 正常通话 state=1, 不报警 warn=0 enable 所有显示清零 开始计时计费 开始 基于 FPGA 的电话卡计费器设计 12 0 1 1 0 图 显示模块流程图 3. 2. 3 报警模块 该模块的功能是产生光报警信号,提示用户卡内余额不足。 当报警条件满足时,通话指示灯亮或声音提示,其整个过程如下图 所示。 0 1 11 10 图 报警模块流程图 当前状态 使能开关 显示零 计时,计费 下一状态 余额相应减少 正常计时 下一状态 下一状态 计时 count_time60 当前状态 state=1 继续通话 切断通话 报警 warn=1, 继续通话 报警 warn 报警,通话信号 基于 FPGA 的电话卡计费器设计 13 4. 软件设计方案 4. 1 系统的软件设计 4. 1. 1 软件整体设计 本系统设计的系统组成框图包括三个模块:控制与计费模块、显示模块和报警模块。 控制与计费模块完成计费功能并产生控制信号,控制另外两个模块。 显示模块动态显示通话时间与通话余额计费等信息。 报警模块是根据通话中出现的报警信息 , 及时给出声、光或者声光报警。 本系统采用 Verilog HDL 硬件描述语言进 行设计。 4. 1. 2 软件编程思路 计时方式 设计为秒信号,采用开发板的时钟信号为 50M HZ 的时钟,故需要分频50000_0000 次,这样才得到秒信号。 一开始需要拨上开关一 (模拟卡的插入与拔出开关),表示开始通话,并显示余额。 计费系统 开关一拨上以后,采用数码管显示卡的余额 ,这时候不计费 .系统采用两个开关控制话务种类(返回信号可自己输入),“ 00。基于fpga的电话卡计费器设计毕业设计论文
相关推荐
代表阶级 共同点 小农经济 (落后性 ) (不符合历史发展趋势 ) 资本主义工商业 (进步性 ) (符合历史发展趋势 ) 公有制 ,平均主义 (空想性 ) 反映农民愿望 不能反映农民愿望 私有制 (现实性 ) ① 都具有反封建性;②都是纲领性文件; ③都未能真正实施 ★ 结论 : ② 从经济主张上看,后者是对前者的否定。 ① 从社会发展角度看 ,《 天 》 不符合历史发展趋势, 而 《 资 》
太原理工大学毕业设计 (论文 )用纸 3 2 开发环境概述 Java 语言 Java 是一种可以撰写的跨平台的应用软件的面向对象的程序设计的语言。 Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于数据中心、 PC、游戏控制台、移动电话和互联网、科学超级计算机,同时拥有全球最大的开发者专业社群。 Java 由四方面组成: ● Java 编程语言,即语法。 ● Java
, therefore applies the server, the Web server and the database server security must from the system design time carries on the plan. We might use below the security measure: 1) In stalls the
m3[6]为主控器,并选择 Stellaris Cortexm3 中的 LM3S615 芯片。 C6 20PFC7 20P12Y16M/8MR12C522US1R111KADC1ADC0PB4 PB5 PB6 PB7 PC0/TCK PC1/TMS PC2/TDI
EN 有效。 但在访问外部数据存储器时,这两次有效的 /PSEN 信号将不出现。 /EA/VPP:当 /EA 保持低电平时,则在此期间外部程序存储器( 0000HFFFFH),不管是否有内部程序存储器。 注意加密方式 1时, /EA 将内部锁定为 RESET;当 /EA 端保持高电平时,此间内部程序存储器。 在 FLASH 编程期间,此引脚也用于施加 12V 编程电源( VPP)。 MAX232
)。 VBA (Visual Basic for Applications) is a subset of Visual Basic, VBA is hosted in applications such as Word, Excel or CATIA. It provides a plete environment with an Editor, a debugger, a Help