基于FPGA的呼叫设备verilog开发

article/2025/10/19 0:00:16

欢迎订阅《FPGA学习入门100例教程》、《MATLAB学习入门100例教程》

目录

一、理论基础

二、核心程序

三、测试结果


一、理论基础

       随着集成电路技术的发展,电子设计自动化(EDA)逐渐成为重要的设计手段,已经广泛应用于模拟与数字电路系统等许多领域。电子设计自动化是一种实现电子系统或电子产品自动化设计的技术,它与电子技术,微电子技术的发展密切相关,它吸收了计算机科学领域的大多数最新研究成果,以高性能的计算机作为工作平台,促进了工程发展。EDA的一个重要特征就是使用硬件描述语言(HDL)来完成的设计文件,Verilog语言是经IEEE确认的标准硬件语言,在电子设计领域受到了广泛的接受。

1.将按键编号,当某一路由(按键)呼叫时,能显示该路编号,且相应指示灯点亮;

2.能在显示端发出声光报警信号,报警时间2s左右,可手动切除;

3.可扩展至十六路呼叫器;

4.可设计每一路相应声音报警不同;

5.设计一存储功能,将同时按下的呼叫路由排序依次在输出端显示。

二、核心程序

       当FPGA接收到16路控制信号的某路信号的时候,对应的输出显示使能信号,每个显示使能信号来控制对应的显示过程。其具体的设计代码如下:

always @(posedge clk or negedge rst)
beginif(!rst)beginled<=1'b0;num<=1'b0;bee<=1'b0;end
else beginif(cnt<8'b11111111)beginled<=1'b1;num<=1'b1;bee<=1'b1;        endif(cnt==8'b11111111||cnt==8'b00000000)beginled<=1'b0;num<=1'b0;bee<=1'b0;  endend
end

手动切除声光报警信号模块

       上面的模块基本实现了警报信号的发送,但是在实践情况下警报信号应该可以手动的切除,否则就会影响正常的设备使用。其具体的设计构思为,当每路信号发送出控制信号的时候,发送显示使能信号,当切除信号发出的时候,警报信号马上切除。其主要代码如下:

always @(posedge clk or negedge rst)
beginif(!rst)begincnt<=8'b00000000;end
else beginif(en_able1==1'b0&&en_able2==1'b0)cnt<=8'b00000000;if(en_able1==1'b1&&en_able2==1'b1)cnt<=8'b00000000; if(en_able1==1'b1&&en_able2==1'b0)beginif(cnt==8'b11111111)cnt<=8'b11111111;elsecnt<=cnt+1'b1;end if(en_able1==1'b0&&en_able2==1'b1)cnt<=8'b00000000; end
end

同时按下的呼叫路由排序依次在输出端显示模块

      前面我们讨论的都是只有一路信号发出信号的说明,现在我们要讨论当信号同时发出的时候,系统是如何工作的。并且实现信号编号的一次排序。这个模块的主要难点在于,系统为16路系统,那么当不同的信号发出控制使能信号的时候,其组合可能性是个天文数值。应此我们必学改变传统的设计思路。在这里,我们采用ROM来设计一个存储器来实现这个功能。

      我们将16路信号分为4个部分,例如1-4路信号的16种组合情况为一个模块。而后面的5-8,9-12,13-16的编号为就为在第一种的情况下加上4,8,12,从而实现同时显示编号的功能。

    我们首先来设计一个MIF文件来做为ROM的存储文件。其具体内容如下:

DEPTH = 32;

WIDTH = 16;

ADDRESS_RADIX = HEX;

DATA_RADIX = HEX;

CONTENT

BEGIN

0 : 0000;

1 : 0001;

2 : 0020;

3 : 0021;

4 : 0300;

5 : 0301;

6 : 0320;

7 : 0000;

8 : 4000;

9 : 4001;

A : 4020;

B : 4021;

C : 4300;

D : 4301;

E : 4320;

F : 4321;

END ;

其深度为32,宽度为16,其文件的内容如上。其每组信号的排序有16种情况,即0000,0001,0020,0021等等。然后利用QUARTUSII来设计ROM的IP核。

三、测试结果

其具体的仿真结论如下:

        从上面的显示过程中,当第3路信号发送信号的时候,那么对应的第三路LED信号显示灯亮,而且对应的编号number显示2,表示第三路信号,其对应的编号为0,1,2……15,表示第一路到第16路信号,应此从上面的仿真图可以看到,显示标号为2.此外,警报器发出声音,bee信号的每一路对应着不同的报警信号。从而验证了这个模块的正确性。

当切除信号的发出的时候哦,切除使能信号enable2使警报信号结束。

      如图所示,当切除信号del发出一个脉冲的时候,LED显示灯,每路的编号信号以及BEE警报信号都马上停止,通过这个仿真图,我们基本验证了手动切除模块的正确性。  

       基于FPGA的16路呼叫器设计过程。对于设计部分。整个呼叫器的设计分为软、硬件两个部分。软件部分采用Verilog HDL硬件描述语言进行设计,硬件部分采用以555时基电路进行设计。设计完成后,将验证正确的顶层原理图文件下载到实验箱,与面包板上搭建的模拟电路相连,进行功能验证。

A02-32


http://chatgpt.dhexx.cn/article/3BMRI477.shtml

相关文章

软件工程知识点总结

文章目录 一、软件工程概述1. 定义2. 软硬件失效3. 软件危机4. 软件工程三要素5. 软件工程目标6. 软件工程研究内容7. 软件工程知识体系 二、软件生命周期模型2.1 软件工程过程&#xff1a;PDCA循环2.2 软件生命周期 software life cycle2.3 过程模型&#xff08;软件生命周期模…

呼叫中心系统开发php,呼叫中心系统

系统概述 呼叫中心系统是惟新科技自主研发的大容量、高性能呼叫中心系统&#xff0c;为用户提供语音、短信等信息服务。系统主要包括基本电话业务功能、队列排队功能、IVR自动语音导航、ACD智能话务分配、录音和语音信箱等功能&#xff0c;可提供标准的CTI开发接口&#xff0c;…

eyebeam电话呼叫软件使用及配置方法

特别说明&#xff1a;eyeBeam只是一个电话** 拨号 呼叫软件&#xff0c;他本身是打不了电话的&#xff0c;只是一个工具&#xff0c;换句话说&#xff0c;他相当于一个手机&#xff0c;手机本身是拨打不了电话的&#xff0c;需要一张电话号码卡&#xff0c;本文eyeBeam电话系统…

mysql数据流图怎么做_数据库设计--数据流图(DFD)

1、数据流图的定义 数据流图(DFD)是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程&#xff0c; 因为它仅仅反映系统必须完毕的逻辑功能。所以它是一种功能模型。 在结构化开发方法中。数据流图是需求分析阶段产生的结果。 ----百度百科 2、数据流…

教务系统数据流图

已知某教务系统的描述是&#xff0c;用户输入用户ID号及口令信息后&#xff0c;系统进行身份验证&#xff1b;系 统根据合法用户的功能请求进行分类处理。具体功能如下&#xff1a; (1)查询成绩&#xff1a;查询成绩以及从名次表中得到名次信息。 (2)学籍管理&#xff1a;根据学…

数据流图画法及示例

画法&#xff1a; 第0层DFD称为系统基本模型&#xff0c;可以将整个软件系统表示为一个具有输入和输出的黑匣子。用一个圆圈表示。 上一层DFD中的每一个圆圈可以进一步扩展成一个独立的数据流图&#xff0c;以揭示系统中程序的细节部分。 循序渐进继续进行&#xff0c;直到最…

数据流图概述与应用

数据流图&#xff08;DFD&#xff09;概述 数据流图&#xff08;DFD&#xff0c;Data Flow Diagram&#xff09;是软件工程结构化分析模型中的一种功能模型&#xff0c;用来描述系统中的数据处理过程。数据流图服务于两个目的&#xff1a;一是指明数据在系统中移动时如何被变换…

数据流图DFD画法

数据流图&#xff08;DFD- Data Flow Diagram&#xff09;让系统分析者弄清楚“做什么”的问题&#xff0c;其重要性就不言而喻了。那么我们怎么画数据流图呢&#xff1f;数据流图与系统流程图又有什么区别呢&#xff1f; 步骤1 数据流图里包含的内容 数据流图描述的是系统的逻…

java 数据流向图_数据流图懂不懂?

最近备战软考,复习到数据流图,学习成果与大家分享。 数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。(百…

软件工程:数据流图和结构图怎么画?

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家&#xff0c;(&#xff89;▽&#xff40;)&#xff89;♪-》点击这里->一个宝藏级人工智能教程网站。 文章目录 Step 1&#xff1a;根据软件的功能描述&a…

数据流图——从软考真题中学画数据流图DFD

文章目录 题目画顶层图画0层图解题技巧 题目 建议将题目复制到word后与此文分屏查看。后面需要多次查看题目。 某高校欲开发一个成绩管理系统&#xff0c;记录并管理所有选修课程的学生的平时成绩和考试成绩&#xff0c; 其主要功能描述如下&#xff1a; 1. 每门课程都有3到6…

使用PowerDesigner绘制数据流图

一.使用powerDesign绘制数据流图 1.打开pd,选择createModel&#xff0c;接着选择Information&#xff0c;我们会看到Data Flow Diagram&#xff0c;选择它。 2.进入之后&#xff0c;这是我们看到的画图工具 3.如果我们不小心关闭了&#xff0c;我们可以这样设置 选择上方的too…

数据流图(DFD)

数据流图(DFD) 数据流图&#xff0c;简称DFD&#xff0c;是结构化分析方法SA方法中用于表示系统逻辑模型的一种工具&#xff0c;它以图形的方式描绘数据在系统中流动和处理的过程&#xff0c;由于它只反映系统必须完成的逻辑功能&#xff0c;所以它是一种功能模型。 下图是…

如何画数据流图

快速阅读 如何画数据流图,以及如何在visio2013中画数据流图。数据流图中各个园元分别代表什么含义。 什么是数据流图 DFD=data flow diagram 在系统设计阶段。是对将来要构建的系统提取一个逻辑模型的过程 。关注点是过程内数据的处理 标识图元有四个 ,分别是实体,过程,数据…

数据流图、数据字典

文章目录 数据流图数据流图的基本图形元素数据流图的扩充符号数据流图的层次结构分层数据流图的画法分层数据流图的审查数据流图平衡原则父图与子图之间的平衡子图内平衡 数据字典数据字典的内容数据词典管理加工逻辑的描述 答题技巧题目示例题目解题 数据流图 数据流图也称为数…

数据流图题目解析(一)

以2016 年下半年 软件设计师 下午试卷 试题一&#xff08;15 分&#xff09; 为例来解析 某证券交易所为了方便提供证券交易服务&#xff0c;欲开发一证券交易平台&#xff0c;该平台的主要功能如下&#xff1a; &#xff08;1&#xff09;开户。根据客户服务助理提交的开户信…

viso画数据流图

打开viso&#xff0c; 选择基本形状&#xff0c; 选择基本形状&#xff0c; 选择矩形&#xff0c; 输入字符Obj_a, 选择矩形&#xff0c; 输入字符中间, 选择矩形&#xff0c; 输入字符Obj_b, 选择矩形&#xff0c; 输入字符Obj_c, 选择折线&#xff0c;链接关联的矩…

数据流图

数据流图&#xff08;DFD- Data Flow Diagram&#xff09;让系统分析者弄清楚“做什么”的问题&#xff0c;其重要性就不言而喻了。那么我们怎么画数据流图呢&#xff1f;数据流图与系统流程图又有什么区别呢&#xff1f; 步骤 1 数据流图里包含的内容数据流图描述的是系统的逻…

数据流图的画法及其三大原则

对于数据流图&#xff0c;我们不做过多具体的介绍&#xff0c;网上有非常多丰富的资源&#xff08;百科&#xff09;&#xff0c;一定了解的它的由来&#xff0c;这才是学习的关键。 以下我们看看数据流图基本图形符号、设计原则、应用和总结。 基本图形符号 设计原则 我们重点…

pd数据流图怎么画_数据流图(DFD)画法

数据流图(DFD)画法要求 一、数据流图(DFD) 1.数据流图的基本符号 数据流图由四种基本符号组成,见图5-4-1所示。 图5-4-1 数据流图的基本符号 例:图5-4-2是一个简单的数据流图,它表示数据X从源S流出,经P1加工转换成Y,接着经P2加工转换为Z,在加工过程中从F中读取数据…