基于FPGA的LiFi信号调制方法及调制器与流程

文档序号:13033592阅读:696来源:国知局
基于FPGA的LiFi信号调制方法及调制器与流程

本发明涉及信号调制解调技术领域,特别涉及一种基于fpga的lifi信号调制方法及调制器。



背景技术:

采用可见光无线通信(lightfidelity,lifi)技术来解决多点信号接入问题,不仅可以实现多机同时接入局域网,而且可同时传输数据,具有抗电线电干扰、无需申请无线频谱、收发两端时钟不同步的情况下正确接收数据、经济适用的特点,这是一种新兴的多pc终端接入局域网的新技术,国内外正处于研发阶段。

lifi技术是一种以调制led灯光作为数据传输载体的通信方式,可同时解决室内灯光照明和数据的传输。由于灯光首先要解决照明需求,对于未进行处理的待传输数据,当处于无数据传输或传输0信号,都会导致灯光熄灭。因此用lifi技术多点接入传输方式首先需要对待传输信号进行编码,这种码型应能保证不论有无数据传输以及不论传输何种数据,灯光都能保持正常的照明功能。



技术实现要素:

本发明的目的在于提供一种基于fpga的lifi信号调制方法及调制器。

为了实现上述发明目的,本发明实施例提供了以下技术方案:

一种基于fpga的lifi信号调制方法,包括步骤:

以频率f0并行输入8位数据,每一位数据为二进制1或二进制0;

0/1判决单元判断输入的数据是二进制1还是二进制0,如果是二进制1,则选通输出频率为f2的第二载波,如果是二进制0,则选通输出频率为f1的第一载波;

其中,频率为f1的载波由时钟激励源fc经过n分频获得,频率为f2的载波由时钟激励源fc经过2n分频获得,频率f0与频率f2相等。

上述调制方法中,输入的数据一直是二进制0或二进制1,不发数据时线路长时间也是一直传输高电平信号,因此可以保障不论有无数据传输以及不论传输何种数据,灯光都能保持正常的照明。发送f0=f2=f1/2和接收端f0=f2=f1/2,且接收采样频率fs=8f0,前在t0周期的3/8时刻采样才能正确判决输出。此时在t0周期的2/8~4/8时段的中点,即f1处于第1周期后半周期的低电平区间,f2处于前半个周期高电平后半部分高电平区间。发送与接收在3/8t0处前后误差时间一个fs时段电平不变。如为低就可判决为“1”,如为高就可判决为“0”,使得0/1输出判决采样单元可以正确地判定“1”、“0”信号,进而能够保证在收发两端系统时钟不同步的情况下也能正确接收数据,去掉了传统接收电路中的同步时钟提取所带来的成本提高和技术复杂性。

根据本发明实施例,上述方法还包括步骤:以并行输入的8位数据为一帧,在每帧数据的开始,增加一个起始标志位,用两个f1周期表示,在一帧数据结束后发送一个t0时长的高电平表示一帧数据的结束的方式,数据传输时发送以f1和f2两种频率的2fsk信号。通过设置起始标志和结束标志,可以分隔每一帧中的8位数据与其他帧,避免多帧数据混在一起,造成数据判读错误。

一种基于fpga的lifi信号调制器,包括:

输入缓存器,用于缓存以频率f0/10并行输入8位数据,每一位数据为二进制1或二进制0;

时钟激励源,用于产生频率为fc的振荡频率;

分频器,用于将频率为fc的振荡频率分别进行n分频、2n分频,得到频率为f1的第一载波、频率为f2的第二载波;

0/1判决单元,用于判断输入的数据是二进制1还是二进制0,如果是二进制1,则选通输出频率为f2的第二载波,如果是二进制0,则选通输出频率为f1的第一载波;

8位计数器,计数频率为f0,用于控制并行输入的8位数据串行输出至0/1判决单元。

与现有技术相比,本发明的有益效果:本发明实施例提供的调制方法及调制器,能以两种不同的频率来表示0、1,因而可在传输信号连续为0的情况下传输其中一个频率的信号,使led灯光不灭。通过起始标志位和结束标志位的设置,使得接收端可以正确连续地接收调制器发送的2fsk信号。还能够保证在收发两端系统时钟不同步的情况下正确接收数据,去掉了传统接收电路中的同步时钟提取所带来的成本提高和技术复杂性,使得利用灯光进行数据传输成为可能,使得数据传输安全可靠,且更迅速。另外,本发明实施例解调方法及解调器,基于fpga实现,运行速度更快,可靠性高。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的基于fpga的lifi信号调制器的结构示意图。

图2为lifi信号传输的2fsk调制数据传输格式。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1-2,本实施例中提供了一种基于fpga的lifi信号调制器,包括:

输入缓存器,用于缓存以频率f0并行输入8位数据,每一位数据为二进制1或二进制0;

时钟激励源,用于产生频率为fc的振荡频率;

分频器,用于将频率为fc的振荡频率分别进行n分频、2n分频,得到频率为f1的第一载波、频率为f2的第二载波;

0/1判决单元,用于判断输入的数据是二进制1还是二进制0,如果是二进制1,则选通输出频率为f2的第二载波,如果是二进制0,则选通输出频率为f1的第一载波;

8位计数器,计数频率为f0,用于控制并行输入的8位数据按各位数据的位置序号串行输出至0/1判决单元。

可以利用basys或其他开发板上的8个开关sw0~sw7作为8位并行数据的输入d8xbitin,用btn0按钮键作为系统复位信号的输入,当该键按下时产生一个高电平复位信号。

设计一个8位计数器i,控制并行输入的8位数据按各位数据的位置序号串行输出。计数频率应与数据串行发送的速率一致,故为f0。这样,将d8xbitin(i)输出到串行端口fsk2xout,就可获得8位并行数据转8位串数据的输出。

串行输出数据时,先对d8xbitin(i)位“1”还是“0”进行判断,如果d8xbitin(i)=“1”,选通f2,fsk2xout=f2,如果d8xbitin(i)=“0”,选通f1,fsk2xout=f1。从而将8位并行数据d8xbitin转换为2fsk输出信号fsk2xout。

应用举例,2fsk信号频率的确定是应考虑的要素为:数据的传输率、光电信号接收电路的传输特性和成本以及实现技术的复杂程度。此处基于使用低成本高增益放大器进行光信号放大的考虑,采用lm324运算放大器对光信号进行放大。lm324是带有差动输入的四运放器件,到当信号在10khz以内(-3db),有100db的放大特性,10khz以后运放特性急剧下降,导致波形失真,因此,设置传输2fsk信号的载波频率可选为f1=10khz,而载频f2=5khz。如果需要更高的数据传输速率,则需选用增益带宽更高的放大器。

当输入时钟为fc=100mhz时,要获得f1=10khz、f2=5khz、f0=1/t0=1/200μs=5khz频率的方波信号,需要对fc进行分频。

对时钟fc进行分频有两种方法:一种是对时钟fc连续计数分频,其分频后的频率fn=fc/n;另一种是对时钟fc按2n进行分频,其分频后的频率fn=fc/2n

当采用连续计数分频时,在发送端通过设置一个参数n,n=fc/f1=100mhz/10khz=10000,n为任意正整数,以n/2个时钟周期tc时间输出高电平1,以n/2个tc时间输出低电平0,来获得任意的分频f1。当f1=10khz时,n=10000,即f1=100mhz/10000=10khz。

当接收端对2fsk信号中的载波f1和f2进行识别时,在设定的每位数据传输时间t0内,至少应接收2个f1载波的脉冲和1个f2的脉冲,基于传输速率的考虑,以每位数据传输时间t0内接收2个f1载波的脉冲和1个f2的脉冲实施,即f1=10khz,f2=5khz,f0=1/t0=f2=5khz,则有故基带数据的传输速率rb,

2fsk信号在发送时以8位为一帧进行传输。为了在连续发送时,让接收端正确区别每一帧信号,在上述调制方法中,在进行2fsk信号发送时,并行输入的8位数据为一帧,在每帧数据的开始,增加一个起始标志位,用两个f1周期表示。在一帧结束后发送一个t0时长的高电平表示一帧的结束。这样,一个数据帧占用的实际时度为10个t0周期。通过设置数据帧起始标志和结束标志,可以分隔每一帧中的8位数据与其他帧,避免多帧数据混在一起,造成数据判读错误。

上述调制器中,输入的数据一直是二进制0或二进制1,不发数据时线路长时间也是一直传输高电平信号,因此可以保障不论有无数据传输以及不论传输何种数据,灯光都能保持正常的照明。发送f0=f2=f1/2和接收端f0=f2=f1/2,且接收采样频率fs=8f0,前在t0周期的3/8时刻采样才能正确判决输出。此时在t0周期的2/8~4/8时段的中点,即f1处于第1周期后半周期的低电平区间,f2处于前半个周期高电平后半部分高电平区间。发送与接收在3/8t0处前后误差时间一个fs时段电平不变。如为低就可判决为“1”,如为高就可判决为“0”,使得0/1输出判决采样单元可以正确地判定“1”、“0”信号,进而能够保证在收发两端系统时钟不同步的情况下也能正确接收数据,去掉了传统接收电路中的同步时钟提取所带来的成本提高和技术复杂性。

另外,通过设置f0=f2=f1/2,可使传输速率达到最高效率。具体地,设电路板晶体振荡器产生的时钟频率为fc,但实际传输的频率根据需要不同,设实际要求的传输速率为f0,或每t0时间传输1位数据,这就需要将fc通过分频获得f0,设分频的倍数为2n,即f0=fc/2n,这就是对fc进行2n分频,调节n的大小就可调节数据传输速率。由于用载波f1传输“1”,用载波f2传输“0”,在接收端用计数器接收时,对计数器接收f1时需要接收2一个脉冲就识别为“1”,接收f2时要收到1个脉冲就能判定接收到数字“0”,因此有t2=2t1,或f1=2f2。这里就有f0=f2=f1/2,由于有f0=fc/2n,f0=f2=2f1,故有f2=fc/2n,f1=fc/n。

相应地,基于上述调制器可以实现的调制方法,包括步骤:

以频率f0/10并行输入8位数据,每一位数据为二进制1或二进制0。

判断输入的数据是二进制1还是二进制0,如果是二进制1,则选通输出频率为f2的第二载波,如果是二进制0,则选通输出频率为f1的第一载波;

其中,频率为f1的载波由时钟激励源fc经过n分频获得,频率为f2的载波由时钟激励源fc经过2n分频获得,频率f0与频率f2相等。

以并行输入的8位数据为一帧,在每帧数据的开始,增加一个起始标志位,用两个f1周期表示,在一帧数据结束后发送一个t0时长的高电平表示一帧数据的结束的方式,数据传输时发送以f1和f2两种频率按输入的0/1信号的2fsk信号。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1