基于vhdl数字信号的发送和接收电路设计

基于vhdl数字信号的发送和接收电路设计

ID:9290276

大小:185.00 KB

页数:6页

时间:2018-04-26

基于vhdl数字信号的发送和接收电路设计_第1页
基于vhdl数字信号的发送和接收电路设计_第2页
基于vhdl数字信号的发送和接收电路设计_第3页
基于vhdl数字信号的发送和接收电路设计_第4页
基于vhdl数字信号的发送和接收电路设计_第5页
资源描述:

《基于vhdl数字信号的发送和接收电路设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于VHDL数字信号的发送和接收电路设计摘要:本设计公开了一种数字电子系统中的数字信号发送接收方法,发送方法采用串行方式发送数字信号,将每个串行数字信号调制成幅度正负相消的信号,将调制后的信号加载在电源线上发送。接收方法采用串行方式从电源线上接收信号,对其进行耦合得到加载信号,再采用与所述调制方法对应的解调方法将加载信号解调为串行数字信号。利用本设计,可以将电源和数据公用一根电源线传输,从而简化电连接方式,提高信号传输的可靠性,降低成本,特别是对需要用软性连接设连接的并行通讯的数字系统,可在降低部件成本的同时提高系统可靠性,减小数字信号对其它信号的干扰,简化结构设计。关键词:VHDL数

2、字信号串行转换时钟0引言随着科技的发展,模拟信号在很多方面将逐渐会被数字信号所替代,数字信号有许多优势,他增加了通信的保密性,提高了抗干扰能力,但其技术复杂,数字信号在传输过程中会混入杂音,可以利用电子电路构成的门限电压,去衡量输入的信号电压,只有达到某一电压幅度,电路才会有输出值,并自动生成一整齐的脉冲。在简要介绍同步数字复接基本原理的基础上,采用VHDL语言对同步数字复接各组成模块进行了设计,并在ISE集成环境下进行了设计描述、综合、布局布线及时序仿真1系统简介1.1课题采用altera公司的max+plusⅱ10.0设计平台,以超高速集成电路硬件描述语言vhdl为系统逻辑描述的唯

3、一表达方式,采用自顶向下的设计原则,对mcs-51单片机的串行接口进行反相设计。同时选用altera公司的acex系列器件来实现最终的ip核。由于篇幅的关系,笔者不打算对开发平台、开发工具以及最终实现硬件电路的fpga芯片进行介绍,而是着重介绍整体的设计思想。根据对mcs-51单片机的串行接口块功能的剖析[1]和模块化的设计思想,在设计时进行模块划分,可划分为4个子模块,它们分别是:(1)串口时钟发生器模块;(2)数据检测器模块;(3)发送器模块;(4)接收器模块。1.2由于同步电路较容易使用寄存器的异步复位/置位端,可以使整个电路有一个确定的初始状态;使用同步电路易于消除电路的毛刺,

4、使设计更可靠;同步电路可以很好地利用先进的设计工具,如静态时序分析工具等,为设计者提供最大便利条件,便于电路错误分析,加快设计进度。所以我们采用严格的同步设计电路来设计串行口ip核,即本设计中只有一个clk上升沿,需要两个相同的时钟,从而保证了每一个触发器同步动作,消除了时钟不同步带来的误动作。2电路设计2.1设计一个5位数字信号的发送和接收电路,该电路的框图如下图所示把并行码变为或把串行码变为并行码,在数据接收端,只有在代码传送无误后,才把数据代码并行输出。串行偶校检测器课通过异或实现数据传送的格式采用异步串行通信的格式,包含起始位,数据位,检验位,停止位和空闲位。此实验可选用两个实

5、验箱完成,一个发送数据,一个接收数据。注意,两试验箱的时钟必须选得一样,两实验箱要共地。2.2在数字电路中,位同步是最基本的同步。位同步的基本含义就是收端和发端时钟信号必须同频同相,这样接收端才能正确接收和判决发送端送来的每一个码元。为了达到收发端时钟同频同相,接收端需要从收到的码流中提取发送端的时钟信号来控制收端时钟,从而做到位同步。实现位同步的方法分为插入导频法和直接法两类。而直接法按照提取同步信号的方式,大致又可分为滤波法和锁相法。锁相法的原理是:在接收端用鉴相器比较接收码元和本地产生的位同步信号的相位,如果两者不一致,则用鉴相器输出误差信号去控制本地同步信号的相位,直至本地的位

6、同步信号的相位与接收信号的相位一致为止。3程序设计设计一个5位数字信号的发送和接收电路,把并行码变为串行码或把串行码变为并行码,串行偶校验检测器可通过异或实现。在数据接收端,只有在代码传送无误后,才把数据代码并行输出。数据传送的格式采用异步串行通信的格式,包含起始位、数据位、校验位、停止位和空闲位。 数据发送模块:将并行数据加上起始位、偶校验位和停止位,以串行方式发送出去。 libraryieee; useieee.std_logic_1164.all; useieee.std_logic_unsigned.all; entitysendis port(start:instd_logi

7、c;      a:instd_logic_vector(4downto0);      clk:instd_logic;      b:outstd_logic); endsend; architecturert1ofsendisbeginprocess(clk,a)variabletemp:std_logic_vector(6downto0);variabletmp,m:std_logic;variabletmp1:integerrange

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。