基于FPGA的数字通信系统报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于FPGA的数字通信系统设计
指导老师:李东明
项目负责人:何兴凯
项目成员:杜川王光辉李莉玲
摘要:设计并实现了了一种基于FPGA的片上数字通信系统。系统主要由编译码模块,调制解调模块,频率合成模块,FIR数字滤波模块,位同步模块以及加密解密模块组成,由这些模块组成一个完整的通信系统片上系统。
一、项目背景
在通信领域,尤其是无线通信方面,随着技术的不断更新和新标准的发布,通信系统也在朝着高速率,高质量,高可靠性等方向不断发展着。但可以清楚地看到,当今动辄成百上千兆的数据流一股脑的涌进,任何一个高速数据传输系统的稳定性和安全性等方方面面都面临着极大的挑战,稍有考虑不周之处就会引起各种各样的问题,为了提高通信系统的稳定性,将系统构建在一个芯片的内部,即构建所谓的片上系统,应该可以大幅度提高系统的稳定性。借助于通信原理以及EDA技术等课程的专业知识,设计了一个基于FPGA的数字通信系统,主要目的是在片上系统的设计思想指导下,设计并实现一个片上数字通信系统。
二、系统总体方案设计
鉴于当前高速数字通信系统的设计方案大多是现场可编程门阵列(FPGA)加片外存储介质(SDRAM、SRAM、DDR等)的组合,本次设计方案同样采用这
种组合方式,具体为一片FPGA、三片静态存储器(SRAM)和一片高速数据传输芯片。FPGA具有管脚多、内部逻辑资源丰富、足够的可用IP核等优点,用作整个高速数字通信系统的控制核心极为合适,本方案中选用Altera公司的高性价比CycloneII系列FPGA芯片;静态存储用具有的一大优点就是数据读取速度快,且控制信号简单,易操纵,适用作高速数据存储介质,其处理速度和存储容量均满足系统设计的需要。与传统的DSP(数据信号处理器)或DPP(通用处理器)相比,FPGA在某些信号处理任务中表现出非常强的性能,而单片机的处理也显然逊色很多。以下为整体的系统流程图:
图1 系统设计框图
三、程序运行平台
Quartus II 9.0;Nios II 9.0 IDE ;Alter SOPC Builder 等
四、系统模块具体实现
1、编译码模块:
信源编码有两个基本功能:一是提高信息传输的有效性,二是模拟信号完成AD转换后,可以实现数字化传输。HDB3编译码具有以下两个优点:没有直流分量,能量集中在频率为1/2码速处;相比AMI码克服了连零时提取了定时信号的困难,所以本系统选择HDB3编译码。
HDB3码编码模块流程图:
图2 HDB3码编码模块流程图
编码模块仿真波形图:
图3 编码模块仿真波形图
HDB3码译码模块流程图:
图4 H DB3码译码模块流程图
译码模块仿真波形图:
图5译码模块仿真波形图
当输入为01,11序列交替时,译码后的输出为1,如上图所示。 编译码模块合成框图:
图6编译码模块合成原理图
HDB3码编译码波形图:
图7 HDB3码编译码波形图
由图可知译码后的波形与编码前波形一致,因为编译码程序中各用了五个D 触发器,所以输出相比输入有十个脉冲的延时是正常的。
2、位同步模块:
位同步模块主要功能是对输入信号进行快速锁定,保证位同步输出与输入信号同频同相。
位同步原理图如下:
图8位同步原理图设计框图
位同步模块仿真波形图:
图9 位同步模块仿真波形图
3、建立片上系统:
加密解密模块。在数据发送前,先对编码后的数据进行加密,简便起见,先用数据信息与特定一组密码异或的方法进行加密。经线路传递后,接收端对接收到的数据信息进行相应的异或解密后,再进行解码。
片上系统的建立:利用Quartus自带的SOPC Builder 设计出符合要求的可编程片上系统,如图所示:
图10 片上系统的CPU内核设计
利用NiosII 将加密解密功能附加到设计好的可编程片上系统中(加解密在同一软核中实现,实际应用时,发送接收即可采用同一芯片,而且可以实现全双工
的通信),程序如下:
#include
#include"system.h"
#include"io.h"
#include"altera_avalon_pio_regs.h"
#include"alt_types.h"
int main()
{
alt_u8 pio1,pio2;
while (1)
{
pio1=IORD_ALTERA_AVALON_PIO_DATA(PIO_INEN_BASE);
pio1 = pio1 ^ 0x01;
IOWR_ALTERA_AVALON_PIO_DATA(PIO_OUTEN_BASE,pio1);
pio2=IORD_ALTERA_AVALON_PIO_DATA(PIO_INDE_BASE);
pio2 = pio2 ^ 0x01;
IOWR_ALTERA_AVALON_PIO_DATA(PIO_OUTDE_BASE,pio1);
}
return 0;
}
将编译码模块与位同步模块以及发送接收模块连通后调试,总体系统如下图所示:
图11 片上数字通信系统的系统总体构架
待改进之处:异或的加密方式过于简单,下阶段可采用更复杂的加密方法,如:DES,MD-5,RSA等方法,以提高系统的保密性能。
五、总结
本系统采用HDB3编解码方式,具有无直流成分,检错能力强,时钟恢复性能等优点;位同步模块采用简单逻辑门电路,计数器,分频器的组合,实现了对输入信号的快速锁定,输出的位同步脉冲与输入信号同频同相,稳定可靠。利用Quartus 自带的SOPC Builder 以及Nios II,编写程序,设计出符合要求的软核,并可以实现简单的加解密功能。系统基本实现了对数据高速,准确,安全的发送,传输,接收。
在系统的设计完成过程中,我们四人通力合作。通过本次设计,加深了我们对课本上通信系统相关方面知识的理解;同时熟练了利用Quartus II开发软件对程
序的编写及相应硬件的调试,对我们以后的专业知识学习以及走向工作岗位都有