专用集成电路实现的高可靠性IR‐UWB收发器用于工业自动化
1 认知IR‐UWB实现高可靠性
认知无线电方法的最初想法是增强静态分配频谱的动态使用。在10 MHz到10 GHz的频段中,超过90%的频谱已被分配。然而,在特定时间点进行感知时,其动态占用率仅为约10%[1]。因此,通过持续感知频谱并将其临时分配给所谓的“次要”用户。主用户是频谱的所有者,该频谱专门分配给该用户。
KUSZ项目的目标是探索IR‐UWB中的认知无线电方法,使其在分组误码率(PER)和延迟方面具有高鲁棒性。根据定义,IR‐UWB是一种底层无线电技术,可以在不干扰频段主用户的情况下,与其他共享相同频段的无线电系统共存。然而,IR‐UWB信号的功率谱密度仅限于–41.3dBm/MHz。因此,IR‐UWB很容易受到主用户的干扰。鉴于此,我们反转了认知无线电的思想,即监测IR‐UWB频谱中主用户的出现,并跳转到另一个空闲频段,以避免抑制次级用户。
KUSZ系统仍需在存在主用户的情况下达到所需的PER。为此,引入了频谱扫描,进而感知IR‐UWB频谱并将该数据转发至认知学习系统(CLS)。CLS根据这些数据建立频带中信道的占用情况,推断信道被占用的模式,推理其他行为,并预测未来的发生情况。基于CLS数据库和推理得出的知识,选择最可靠的频率信道、数据速率和发射功率。图1展示了认知IR‐UWB系统的框图。如图所示,主节点和从节点之间通过IR‐UWB实现双向无线传输。分布在周围区域的频谱扫描仪(SS,以三角形表示)对环境中的频谱进行感知。这些频谱扫描仪对弱信号的敏感度明显高于IR‐UWB接收机节点,从而实现更精确的学习。
从节点通过IR‐UWB收发器在6–8 GHz范围内的四个不同频率信道上与主节点相连,每个信道支持三种不同的数据速率。基于感知数据,CLS学习无线电环境并预测未来占用和干扰情况。在IR‐UWB系统中,通信参数会根据变化的无线信道进行调整,以改善PER和延迟。
由于IR‐UWB系统的带宽较大(500MHz)并且发射功率限制为–41.3dBm/MHz,传感器站(SS)不仅需要具备极大的带宽,还必须对接近热噪声的最低接收信号电平具有高灵敏度。传感器站(SS)与CLS之间的通信采用以太网。传感器站(SS)通过离散模拟前端ADC进行感知,其采样率为500 MSps,分辨率为8位。
数字处理部分(如快速傅里叶变换(FFT)和平均)在传感器站(SS)中选用Virtex 7 FPGA(ML605 Rev E)板实现。
在工业自动化应用中,已确定了两种应用场景:工厂自动化和过程自动化。它们可以通过节点数量、节点密度、通信范围、最大延迟、数据包发送速率和PER等参数加以区分。为了实现PER方面的高可靠性数据传输,物理层和介质访问控制(MAC)都必须具有极低的误码率。这通过在传输系统中采用前向纠错(FEC)和自动重传请求(ARQ)等机制来实现。此外,CLS能够提供关于环境中运行的无线电系统行为的精确知识,从而尝试最小化频谱冲突。这包括反复发生的事件以及可能影响无线传输可靠性的各种其他活动。
在工业自动化场景中,通常需要在一定时间内定期检查传感器和执行器的状态。作为一个具体的应用案例,100个节点需要在1ms的周期时间内通过无线方式与主节点通信。这需要一种特殊的MAC算法以及一个物理层每1毫秒读取100个节点、处理数据并回写指令。
如果逐个顺序读取和写入节点,则每个节点仅分配到10微秒,这对于当前存在的窄带无线系统来说是不可能实现的。此外,这需要一种确定性的MAC算法,该算法在具有公共开销[2, 3]的数据包中为节点分配固定时隙。采用类似广播的方式,可以通过一个数据包同时寻址所有节点,从而满足延迟要求。然而,必须在MAC层采取措施以确保可靠性,因为数据包故障可能影响所有相关节点。图2展示了认知IR‐UWB的典型部署场景,其中每个小区被分配不同的频率信道,传感器站(SS)分布在区域内监控频谱,而CLS实时创建并更新整个过程的图像。
IR‐UWB具有大带宽,可实现高处理增益。它工作在有吸引力的频段,几乎无干扰(本项目选择的6–10GHz频段即为此类)。结合适当的MAC算法,IR‐UWB有望为严格的实时工业应用提供所需性能参数。
基于频谱感知的完整认知IR‐UWB系统如图3所示。这展示了该项目所采用的实现路径。如图所示,传感器站(SS)持续向CLS提供时域和频域的数据。目前CLS在笔记本电脑上通过Matlab实现,并通过以太网与频谱扫描仪相连。在此配置中,尽管涉及一定的缓冲和数据存储,传感器站(SS)的数据采集、数据处理以及向MAC控制器发送命令(通知所使用的频率信道、数据速率和辐射功率)均为实时完成。
2 IR‐UWB简介
脉冲无线电超宽带(IR‐UWB)无线通信系统通过持续时间为2纳秒甚至更短的短脉冲来传输数据。其工作频带位于3.1–10.6吉赫兹范围内。IR‐UWB适用于测距,可实现几厘米级别的精度[4]。鉴于将测距与通信功能相结合的优势,IR‐UWB已被纳入IEEE802.15.4a标准。除了测距之外,该标准还支持低至中等数据速率,并已测得具备跨越一定距离的能力大约5‐500米[4],具体取决于数据速率、工作频率和所使用的天线。该领域的文献并不丰富,特别是关于实现可靠工作原理所需的理论和方法。
大多数基于仿真的出版物与硬件无关,难以实现。从这一角度出发,本文对IR‐UWB进行了深入研究,从其参数定义、规范和仿真开始,直至以芯片形式实现原型。该芯片最终被应用于工业自动化中典型的分拣任务控制。该开发过程包括仿真、实现、测试和测量各个阶段,每个步骤均辅以相应的数学支持。
如今,此类复杂系统的实现通常属于某个组织的知识产权,很少公开发表,因此详细的探讨较为罕见。此外,让经验丰富的数字和模拟电路设计团队长期共同参与同一个项目也并非易事。就我们的IR‐UWB项目而言,从一开始就组建了一个团队,使得开发出适用于整个IR‐UWB物理层的单芯片解决方案成为可能。
本文结构如下:首先介绍用于实现检测算法的仿真;接下来详细描述已实现的数字基带以及模拟前端收发器;最后一部分提供测试和已实现的单芯片IR‐UWB无线传输系统的测量结果。
3 IR‐UWB 仿真
在实现之前,进行了Matlab仿真,以确保系统建成后的分组误码率(PER)和同步性能能够满足要求。该仿真方法与传统方法不同,传统方法通常生成类似于IR‐UWB的波形,添加噪声,并尝试各种检测技术。相反,本次仿真力求包含实现过程中各个阶段可能产生的所有不完美性,且生成的数据包符合IEEE802.15.4a标准,而非简单的脉冲序列。
如图4所示,在发射机侧生成一个符合标准的数据帧,该数据帧包含前导码和有效载荷数据。首先,对从MAC层接收到的数据字节进行信道编码,包括里德‐所罗门编码和卷积编码。随后,对要传输的编码数据进行脉冲位置调制(PPM)和二进制脉冲相位键控(BPSK)。
在PPM中,数据位被替换为长度可变的伪随机(PN)序列,其长度取决于数据速率。然后将该序列放置在符号周期内的特定位置,其余部分为空。例如,如果数据速率为850 kb/s,则符号持续时间为1,024纳秒(512码片),其中32纳秒(16码片PN序列)的脉冲串表示一个比特。
图5展示了由16个码片构成的脉冲串示例。在PPM中,脉冲串被置于符号周期的前半部分或后半部分,分别表示比特“1”或比特“0”。同时进行二进制相移键控(BPSK)调制,对于比特“0”反转码片的极性,而对于比特“1”则保持极性不变。因此,两个比特通过一个符号传输。符号:第一个在脉冲串的位置中传递,第二个在极性中传递。有关帧结构的详细信息,请参见[5]。
帧(数据包)可以具有可变数据速率,例如 850 kb/s、6.81 Mb/s 和 27.24 Mb/s,以及 16 到 4,096 的前导码长度。一旦数据包由 1、–1 和 0 构成,数据位将通过 Matlab 函数“rcosflt”转换为脉冲,其中 1 对应正脉冲,–1 对应负脉冲。该函数使用升余弦FIR滤波器对输入信号进行滤波,其输入和输出采样频率分别为 499.2 MHz 和 16 × 499.2 MHz。生成的脉冲如图6所示,作为前导码字段中使用的单个脉冲,以及如图5所示的数据有效载荷中遇到的脉冲串。
在基带生成IR‐UWB信号后,使用Matlab函数“ammod”将其上变频至7.9872 GHz。此处载波频率fc和采样频率fs分别定义为7.9872 GHz和 8 × 7.9872 GHz。上变频信号的波形如图7所示。
根据相应的信噪比(SNR),将白噪声添加到上变频信号中。除了热噪声外,还向该上变频信号引入了各种缺陷,特别是可能导致包络失真的时钟偏移。
此外,信号根据已知的Saleh‐Valenzuela模型进行衰落,该模型涵盖了多种传播场景。这最能反映实际情况,使仿真信号的行为类似于真实信号。在特定位置观察到的数据包波形如图8所示。
在接收器端,数据帧首先使用Matlab函数“amdemod”下变频至基带,并应用巴特沃斯低通滤波器以去除高频分量。如果接收器处的载波频率(标称值为7.9872 GHz)由于振荡器不同步而偏离160kHz,则波形将发生畸变,如图8(d)[6]所示。
不仅是包络发生畸变,脉冲的极性也会周期性地反转。由于这种偏差不可避免,接收器必须设计成能够应对这种情况,并且无论极性如何都能检测脉冲极性反转。IEEE802.15.4a标准允许载波频率最大偏差为 20 ppm,对应于7.9872 GHz中心频率的159.7 kHz偏差。
当发生这种情况时,正脉冲可能变为负脉冲,反之亦然,从而在检测极性时产生模糊性;即无法判断极性变化是由于数据位还是时钟偏移引起的。实际上,该偏差可能更小,图8d中的示例用于强调其表现形式。对于159.7 kHz的偏差,每6.2 微秒会发生一次极性变化,这意味着在一个17字节数据包周期内最多可出现10次此类相位跳变。如果不进行校正,可能会错误地接收到超过7个连续极性比特。
为了解决这一问题,采用了I和Q解调。拥有I和Q信号的优点在于,无论本振信号的初始相位失准如何,其中一路通常都具有可检测幅度,如图9所示。
此外,I和Q通道中的脉冲在任意时刻都表现出相反相位(极性),从而能够确定发生的偏差,并在恢复极性时予以考虑。当出现偏差时,帧的极性会如图9所示循环地发生改变。通过在前导相位观察两条路径,可以在有效载荷检测阶段识别并考虑极性反转。如果接收器已知前导码序列[6],则可以实现这种检测。因此,通过合并两条路径可实现极性接收。
下变频后,基带信号通过比较器进行数字化,该比较器将接收到的信号与阈值进行比较(见图10)。由于信号包含正负脉冲,因此使用两个阈值,这两个阈值具有相同幅度但相位相反。在仿真中,在应用比较器之前,信号在2纳秒周期内进行积分,这表示所实现的比较器的一个良好近似。接下来,将积分结果与阈值进行比较,当信号在任一方向上超过该阈值时生成1或–1,否则生成0。这相当于一个分辨率为1.5位、采样频率为499.2兆赫的模拟‐数字转换器。随后从同步开始对数字化信号进行检测。
接收器通过将接收到的信号与已知序列进行相关,并确定匹配程度来搜索前导码。该过程重复进行,每次积分值前进一个单位,从而实现2纳秒的同步精度。在前导码之后,接收到帧起始定界符(SFD),以表示前导码的结束和数据字段的开始。检测过程通过判断在预期位置是否存在信号来进行。值得注意的是,检测过程仅在预期位置执行。如果在符号的前半部分检测到更大的能量,则判决为比特“1”,否则判决为比特“0”。符号中包含的第二个比特通过判断脉冲串的相位是否反转来恢复。例如,在850 kb/s的情况下,每个16脉冲串检测到的极性将与预期值进行相关。如果16个脉冲中有超过一半发生反转,则BPSK比特判为1,否则判为0。由于时钟偏移,序列的位置可能会略有偏移。为了应对这种情况,检测窗口在两个方向上各扩展2纳秒,否则可能会遗漏脉冲。此特性在检测27.24Mb/s数据速率时尤为重要,因为此时每个脉冲串仅由一个脉冲组成。
4 IR‐UWB的实现
在上一节中,我们介绍了IR‐UWB仿真,定义了发射机和接收器信号处理所采用的算法。该实现的主要目标是采用250纳米BiCMOS技术开发用于完整物理层的单芯片专用集成电路解决方案。由于该芯片稍后将作为系统的一部分,例如无线传感器或嵌入式系统,因此需要一个接口来连接芯片与微控制器。为此,集成了SPI接口,可用于将芯片设置为不同的工作模式。
此外,IR‐UWB物理层包含一个小的存储元件,用于保存待传输和接收的短数据段。该存储元件容量为154字节,采用先进先出原则工作。该存储器也通过SPI接口进行访问。
5 基带发射机的实现
发射机根据设定参数生成帧(物理包)。为此,它需要从管理物理层的介质访问控制(MAC)接收配置数据。
由微控制器STM32F4实现的MAC通过SPI将数据发送到位于基带中的FIFO存储器。在数据传输之前,必须将收发器设置为所需的模式。该设置通过向基带发送配置数据来完成。需要设置的参数包括工作频率信道(f1, f2, f3, f4)、数据速率(R1、R2、R3)、前导码长度等。
基带收发器包含四个主要组件:发射机、接收器、存储块FIFO和SPI接口,如图11所示。配置数据会直接生效,而无需存储在FIFO中,并具有以下含义。
– mode_tx:位7—用于开启和关闭发射器,位6—里德‐所罗门编码开启和关闭,位3—循环冗余校验(CRC)开启和关闭,位2–0用于设置发送模式:001—标准850 kb/s, 010—标准6.81 Mb/s,011—标准27.24 Mb/s,110—自定义6.81 Mb/s,111—自定义27.24 Mb/s;
– mode_rx:位7用于开启和关闭接收器,位6–4与mode_tx相同,位3–0未使用
– 前导码_p:(x”64130A50”)由31个元素组成的前导码序列的正脉冲
– 前导码_n:(x”00E88080”)前导码的负脉冲,共31个
– 前导码_长度(64):以前导码符号数量表示的前导码长度,范围为1–4,096
– 前导码_符号_长度(31):一个前导码符号的长度,最多为31
– 前导码_检测阈值:相关器识别前导码的阈值,以匹配数表示,最大为16
– SFD检测阈值:用于检测帧起始定界符SFD的阈值
– fifo_最小_阈值:当发送的数据超过154字节时,FIFO存储器即将变空的指示
– fifo_最大_阈值:当发送的数据超过154字节时,FIFO存储器即将变满的指示
– afe_cs_agc_ant_sw:模拟前端设置:位7–5用于模拟前端中的芯片选择,位4–1用于增益设置,位0用于发射机和接收器之间的天线开关
– 比较器_阈值:比较器的阈值设置,范围为1–16
– cca_energy_thresh 清道评估的能量阈值。MAC 使用该阈值来感知信道的占用情况。
5.1 数据包开销的生成
配置完成后,收发器即可按照所需设置进行工作,例如工作频率信道、数据速率、前导码、前导码检测容限以及SFD。待传输的数据被加载到FIFO存储器中,发射机随后从中获取数据进行传输。发射机在接收到MAC的进一步指令后启动传输。数字基带发射机中的整个信号处理过程及其时钟速度如图12所示。
基带中的主要操作在31.2MHz时钟频率下实现,该时钟由外部晶体振荡器提供给基带。基带发送过程通过五个阶段实现:初始状态、前导码、SFD、数据包头(PHR)和数据生成。在初始状态下,数据包被传输到FIFO存储器中。在此阶段,发射机和接收器被配置为所需的工作模式。之前提到的每一项设置都是通过将MAC的控制数据写入相应寄存器来完成的。
同时,会初始化计数器,用于计数时钟周期、前导码符号长度、前导码长度以及SFD长度,如图13所示。
在前导相位期间,每个前导码元素之后都会以31.2 MHz的时钟频率插入15个零。由于时钟周期时间为32ns,且前导码序列中的元素数量为31,因此经过31个周期或31 ns × 32= 992 ns后,一个前导码符号完成。在每个时钟周期(c.cnt),发射机会捕获存储在寄存器preamble_p和preamble_n中的前导码序列的一个元素,并在其后附加15个零。
此过程将重复进行,直到访问到最后一个元素。该前导码符号生成过程会以PSc计数器为依据,迭代次数等于前导码_长度中包含的值,该值在图13中用N表示。示例中显示的前导码序列为 1100100‐1‐1‐11‐1011‐10001010‐11010000。
对于SFD,标准规定其为前导码符号的八次重复,序列按照[0 10 –1 1 0 0 –1],,其中0表示992纳秒无传输,1表示完整的前导码序列,–1表示反转的前导码序列。SFD的第4位和第8位为–1,因此在这些位置前导码序列被反转。SFD的零位置(1、3、6、7)在992纳秒内无信号。SFD的其余部分(2、5)保持与前导码相同。
5.2 信道编码
对要传输的数据包进行里德‐所罗门信道编码 RS (55, 63)。此处,从MAC微控制器接收到的数据位首先被打包成55个6比特的块,然后附加8个块(48比特)作为冗余,从而形成总共63个块、总长度为378比特的数据,如图14所示。所添加的48比特用于校正前330比特中发生的错误。
该编码能够纠正最多连续24比特的错误,通过用正确的数据块替换出错的数据块来实现纠错,因此具备纠正突发错误的能力。可以看出,RS (55, 63) 编码是系统性的,这意味着即使不进行任何解码,也可以通过丢弃添加的冗余比特直接接收数据。
接下来,基于生成多项式 g1[101] 和 g2[010] 的半速率 R = 1/2 卷积编码会对 RS 编码比特在每比特之后插入一个冗余比特。编码的具体方式如图15所示。该编码旨在纠正散布在有效载荷中的随机错误。
这同样是一个系统性编码过程,因此可以通过仅处理每第二个比特来关闭解码。因此,在接收端可以省略信道解码。如果信道环境不恶劣,可以排除这些解码器以降低延迟。如果出现过多错误,特别是在极性比特的接收中,则需要决定是否应开启维特比(卷积)解码器。否则,尽管位置比特的检测具有较强的鲁棒性,但极性比特接收中的错误仍可能显著降低系统性能,并导致原本正确检测到的位置比特出现错误。关于何时应启用解码方案以及这些方案在检测极性比特方面能提供多少性能增益的讨论见[6]。
编码)
5.3 调制
SFD之后的19比特PHR通过计数31.2MHz的时钟周期使用PPM进行传输将伪噪声(PN)序列放置在符号周期内的某个位置(见图16)。其中19比特中的13比特为头部比特,其余为汉明编码引入的冗余。该编码的更详细描述见[5]。头部比特还使用上述卷积编码器进行了额外编码。
脉冲串的位置从一个符号到另一个符号各不相同,并根据特定序列进行计算。根据标准[5]推荐的前导码符号6,线性反馈移位寄存器(LFSR)的初始状态为 111000101101101。生成长度为16的脉冲串。
$$
sn= sn −14¯sn −15 \tag{1}
$$
其中,n 表示码片的索引,s 表示寄存器元素。第一个脉冲的形式为 0010011101101110,相应的位置通过计算得到
$$
hð kÞ= skN cpb+ 2s1+ kNcpb+ 4s2+ kNcpb \tag{2}
$$
其中 $sn+ kNcpb$,n = 0, 1 . . . , Ncpb −1 表示长度为 Ncpb 的扰码,k 为码索引。因此,第一个位置为 $h1=sNcpb+ 2s1+ Ncpb+ 4s2+Ncpb= 4$。第二个脉冲串变为 010101010101111。根据公式(2),该脉冲串对应的位 置为 2。通过这种方式,脉冲串逐符号地生成,并放置在计算出的位置上。请注意,伪随机序列和扰码序列这两个术语可互换使用。
PHR的19比特以850 kb/s的速率发送,与后续数据字段所使用的发送数据速率无关。在19个PHR比特符号之后,开始数据字段的传输。这19比特的结构、用途以及PHR上使用的纠错编码在[5]中讨论。数据部分采用PPM和二进制相移键控(BPSK)调制方案进行传输,与之前的PHR阶段相同。
由于收发器支持多种数据速率,因此在不同数据速率下,有效载荷部分在此处变得不同。换句话说,除了物理头(PHR)中用于指示数据速率的两个比特外,所有数据包的前导码、SFD和PHR都相同。在850 千比特/秒的情况下,通过在1,024纳秒内根据时钟周期(31.2 MHz)计算出的位置放置一个长度为16个码片的序列来采用PPM。如图16所示,如果极性比特为1,则对该序列的所有元素进行反相;如果极性比特为0,则保持序列不变。
对于6.81 Mb/s和27.24 Mb/s的数据速率,分别将长度为4个周期和2个周期的符号加载两个芯片和一个芯片的脉冲串。脉冲串的放置通过在所需周期从寄存器捕获脉冲串,并以31.2 MHz的时钟频率完成。
根据图15和图16所示的算法进行发射机的VHDL编码,并在FPGA上进行测试。在我们的实现中,仅 IR‐UWB脉冲生成以499.2 MHz(16 × 31.2MHz)的速度进行。因此,必须将31.2 MHz生成的数据包转换为 499.2 MHz。出于简化设计和节能考虑,这一功能通过作为模拟前端一部分的串行器来实现。该串行器由D触发器实现,共连接四级,每一级都将时钟频率加倍,并在时钟的两个边沿读取输入。因此,只有最后一级在 499.2 MHz时钟[9]下工作。具体而言,在499.2 MHz 时钟下,两个比特同时被送入模拟前端。其中一个比特表示脉冲的存在,另一个比特表示其极性。这两个比特通常被称为开关键控(OOK)和二进制相移键控(BPSK),如图17所示。
因此,模拟前端中的以下脉冲发生器以499.2 MHz 的速率提供2个比特,在位置1处生成脉冲,其极性由二进制相移键控(BPSK)比特决定,如图17所示。产生具有适当波形的脉冲的硬件在[7]中讨论。
5.4 The IR-UWB analogue frontend transmitter
模拟IR‐UWB前端的发射机框图如图18所示。脉冲生成遵循门控振荡器原理,将本地振荡器信号与成形脉冲相乘。通过这种方式,在由串行外设接口(SPI)设定的中心频率上生成短的射频(RF)脉冲。这使得能够访问不同的频率信道,如所建议的那样。由IEEE 802.15.4a标准规定。此外,它允许实现多种脉冲位置调制方案,以支持不同的数据速率。
The implemented frequency synthesizer provides all four local oscillators LO signals in the range 6–8.5 GHz as defined in the standard. The frequency synthesizer generates a 499.2 MHz clock signal required for the analogue baseband processing irrespective of the frequency channel selected.
The baseband pulse generation(BPG) block with LPF is responsible for generating and shaping pulses to meet the spectral mask in the radio frequency domain. For spectral shaping purpose a 7th order Bessel low pass filter with a 3 dB bandwidth of 250 MHz is implemented.
Measured frequency spectrum of the transmit signal with 1,024 preamble length and 17 bytes packet size and the same reference signal spectrum are shown in Figure 19. The reference generator signal is received very reliably by the IR-UWB receiver realized. Therefore, it can serve as a reference.
可以看出,在约6.5吉赫、7.5吉赫和8吉赫的信道上吻合良好,而在7吉赫信道上则观察到一定的偏差。显然,两个频谱组(信号发生器和发射机)在四个信道的中心频率处均产生峰值,表明生成的脉冲序列具有周期性,并存在一些本振泄漏。尽管如此,测得的频谱既未违反标准定义的掩模,也未超过美国联邦通信委员会规定对超宽带(UWB)所设定的功率谱限值。
有关模拟发射机的详细说明,包括其电路图、工作原理以及各个组件的性能,可在[7]中找到。包含模拟发射机、接收器和数字基带处理器的整个系统,展示了公共时钟和频率载波,如图20所示。
6 IR‐UWB接收机的实现
6.1 IR‐UWB 模拟接收器
IR‐UWB接收机通过生成I和Q信号并结合这两个信号来接收脉冲极性,从而实现相干检测。然而,它并不对载波频率进行相位恢复,而相位恢复通常是相干接收所必需的。因此,极性接收依赖于对I和Q信号的处理。从传统无线电架构可知,这是通过使用两个本振信号对接收到的信号进行下变频实现的,其中一个本振信号相对于另一个有90 °的相位偏移,然后在I支路和Q支路中对基带信号进行并行处理。接收器的最大转换增益约为70 dB,而模拟基带内的可变增益范围为0 – 48 dB(通过4位编程,共16级)。
接收灵敏度约为–65dBm。有关模拟接收器及其实现的更全面的讨论,可参见[8]。
在天线开关之后,进行带通滤波以将感兴趣的频谱分量传递给接收器。通过低噪声放大器实现15dB的放大。在[8]中给出了放大器线性度和在某些点捕获的时域信号等测量结果。随后使用低通滤波器滤除混频器输出端的高频信号。
下变频后,使用一个比较器将输入信号与特定阈值(Vth)进行比较。超过该阈值的脉冲部分在幅度上被调整,使其达到CMOS电平。因此,必须精确设置增益和阈值电压,以确保每个单个脉冲都能被检测到。如果阈值过高或过低,脉冲可能会丢失,或者信号噪声过大。
为了评估这一点,在同一芯片内通过将天线开关处的模拟信号耦合回接收器来进行测试。当时钟和载波同步且相位对齐时,检测应是完美的。
上述测试可用于通过发送已知的重复信号序列,并在数字化和并行化后记录信号,以测量实现的带宽。该测试能够深入了解整个收发器,特别是各组件之间的接口工作情况。此测试的结果如图21所示。
这表明,即使正负脉冲之间频繁变化,也能被检测到,说明所实现的接收器能够分辨脉冲及其极性。由于存在两个接收信号(I和Q),每个信号具有两种脉冲极性,因此需要四个比较器和串并转换器,如图22所示。它们输出64位到基带在31.2 MHz的一个周期内。比较器输出以1:16在 31.2 MHz下进行并行化,将499.2MHz降至31.2 MHz。进一步处理在此速率下进行。该并行化过程与发送端执行的串行化操作相反。如图22所示,Ip和In信号通过逻辑或操作合并,因此其输出包含正负比特。Q信号同样如此,比较器产生Qp和Qn。这64位随后在31.2 MHz下进行处理。首先在Ip、In以及Qp Qn路径上同时搜索前导码符号。
由于用于并行化的499.2 MHz时钟与接收信号不同步,因此有可能漏失脉冲。同步、PHR接收、PPM和二进制相移键控(BPSK)比特检测以及维特比和里德‐所罗门解码器均在31.2MHz下运行(见图23)。
6.2 同步
由于需要在I和Q信号上搜索反转和非反转前导码,因此需要64个相关器。利用这些相关器,可以识别相位反转和非反转的前导码。这种相位反转可能由SFD结构、信道影响或31.2MHz时钟偏移引起的载波频率偏差导致。
例如,在Ip In上执行非反转前导码搜索算法如图24所示。对反转前导码的搜索与非反转前导码的搜索相同,其基于将接收到的信号与反向前导码进行相关运算。
由于前导码由长度为31的三进制码(1,0,–1)构成,因此在对应于一个前导码符号的时间周期内进行搜索,该时间周期为992纳秒或31个时钟周期。在以499.2 MHz速率完成串/并转换并在31.2 MHz下执行异或操作后,开始搜索前导码。该过程通过将接收到的信号在 31.2 MHz下与已知前导码序列进行每时钟周期的相关运算来实现。此类搜索在每个路径的每个时钟周期内执行16次,并且每次搜索窗口移动2纳秒。通过将相关结果与用于检测前导码的容差水平preamble_thresh进行比较,确定匹配程度。可以看出,在31.2 MHz的一个时钟周期内,对I和Q路径各执行16次,共进行32次相关运算。由于31.2 MHz的一个周期跨越了499.2 MHz的16个周期,因此该相关运算可实现有效的2纳秒同步精度[10]。此外,同步过程中同时考虑了I和Q信号决策,即为前导码提供最大似然的那个。
16个相关器的输出进行比较,选择产生最大值的相关器用于检测数据。相关峰值每992纳秒(32纳秒× 31)更新一次,并且重复次数等于前导码符号的数量。指示前导码出现的峰值会与SFD模式进行相关,以定位到头部的结束和数据的开始。一旦识别出SFD,接收器即准备在数据字段中开始检测。为此,需要知道是哪一个相关器产生了峰值,以及所选的相关器在一个前导码符号内何处检测到SFD。
接收可以在31个时钟周期的搜索窗口内的任意时间点开始。换句话说,前导码的起始可以与这31个周期中的任何一个重合。该信息由图24所示的索引Rx_Sig_Win给出。在此周期内的精确起始位置由产生峰值的相关器索引 corr_ind指示。以31.2MHz时钟周期表示的可实现同步精度较为粗糙(32纳秒)。通过使用16个并行的相关器,每个相关器以2纳秒的间隔搜索前导码,可将精度提高至所需的2纳秒。
6.3 PPM和二进制相移键控(BPSK)的检测
根据所选相关器(corr_ind)和给出相关峰值的窗口索引(Rx_Sig_Win),接收器可以确定前导相位结束后后续脉冲串的位置。接收器已知该位置是围绕伪随机序列计算得出的。利用此信息,接收器仅在计算出的位置进行检测,而无需在整个符号范围内搜索。同步过程中有效利用了I和Q两路信号,并切换至信号电平较高的一路。
接收器根据信号强度及其随时间的变化情况决定采用哪一路进行检测,并可在单个数据包内根据需要多次来回切换。同步后所采用的PPM和二进制相移键控(BPSK)比特的检测算法如图25所示。
数据检测方案平等地考虑来自比较器和串/并转换器的全部四个信号Ip、In、Qp和Qn。与标准相同,前导码之后的PHR以850千比特/秒传输,数据速率(DR)初始设置为该速率。初始化一个计数31.2 MHz时钟周期的符号计数器。然后生成一个伪随机序列,并计算第一个脉冲的位置,以时钟周期的数量表示。接着检查当前时钟周期计数器是否等于计算出的位置p。如果是,则在该特定位置进行检测,获得能量级别E 1 ;否则,算法将等待直到当周期计数器等于sym_时,开始递增计数。由于数据位可以是0或1,因此必须检查符号的一半是否存在信号。因此,接收器在位置p+ 16进行检测,产生E2能量,因为后半部分的位置与前半部分相隔16个时钟周期。最终比较这两个位置的能量级别,如果E1 >大于E2,则判决为比特“1”,否则判决为比特“0”。
在接收到PHR比特后,根据PHR中包含的相应比特正确设置数据速率。由于PHR阶段的符号持续时间为 1,024纳秒,符号计数器sym_count递增在此期间最多接收32个两个比特。如果经过p+ 16个周期后,计数器仍小于32,则将其递增。当计数器等于32时,将其置零,表示接收器已检测到在1,024纳秒内传输的脉冲串的位置和极性中包含的两个比特。
Abit计数器(PHR_比特,数据_比特)在每个符号后递增1。对符号内两个比特的检测首先通过查看预期位置的整体能量级别来完成,而无需接收每个单个脉冲[11]。其次,将位于该位置接收到的伪随机序列与新生成的伪随机序列进行相关,以确定极性比特。请注意,伪随机序列和脉冲串具有相同的含义,前者更适用于数字信号,后者更适用于模拟信号。同样,数据包和帧也适用此情况。术语脉冲和芯片用于指代伪随机序列中的一个元素,具体使用取决于将其视为数字还是模拟信号。
检测算法以此方式推进,直到接收到一个完整的数据包。由于符号后半部分的最后部分作为保护间隔(如图 26 所示),下一符号的位置计算可以在该相位提前开始。这样做的目的是确保位置 p 在每个符号开始时始终可用,因为该位置可能恰好位于下一个符号的第一个时钟周期内。对于 6.81 Mb/s 的情况,符号计数器应每 128纳秒(即 4个时钟周期)清零一次。
因此,接收器首先通过若干时钟周期确定位置,然后在周期内通过形成脉冲串的两个脉冲的精确位置来定位,如图 26 所示。为了检测位置比特,只需判断脉冲串位于符号的前半部分还是后半部分。确定八个位置中具体使用哪一个可能并非必要。由于在我们的方法中可以接收到每个单独的2纳秒脉冲,我们选择在预期位置进行检测。在此外,我们希望通过需要极性位的维特比译码器来提高 PER接性收能的。开始可以在时钟周期内的任意位置,以宽度为2纳秒的脉冲数量来表示。一旦实现同步,接收器便能准确检测到32纳秒周期时间内脉冲串的位置。这意味着脉冲串可以紧随时钟上升沿立即开始。对于27.84兆比特每秒的数据速率,符号周期为64纳秒,占据31.2 MHz时钟的两个周期。在此,一个周期内持续2纳秒的脉冲的检测方式与其他数据速率相同,该脉冲可位于一个时钟周期的前半部分或下一个时钟周期。同步后,脉冲串可在时钟立即开始时被检测到。这意味着接收器会在一个时钟周期前半部分的八个位置p中的某一个位置进行检测,该周期时间为32纳秒。
对于 6.81 Mb/s,传输的是占据 4 纳秒的两个脉冲。与使用持续时间为 2 纳秒的单个脉冲作为脉冲串的 27.84 兆比特/秒相比,这显然更具鲁棒性。然而,极性检测的性能取决于用于生成脉冲和脉冲形状的滤波器的带宽。此外,必须准确设置比较器的阈值和接收器的增益,以恢复每个单个脉冲及其极性。如果带宽小于 250 兆赫兹,脉冲的持续时间将变长,超过 2 纳秒。这会降低检测极性位的性能,因为脉冲在时间上延长,干扰相邻位置。在这种情况下,从正脉冲到负脉冲的转换需要更长时间,导致脉冲丢失。
对脉冲进行整形有助于符合频谱掩模和最大允许发射功率的要求,并设置阈值以实现最准确的极性比特检测。在速率为850千比特/秒的情况下,构成一个脉冲串的16个脉冲以最高的可靠性恢复为位置比特。单个脉冲极性的恢复是在以与6.81Mb/s类似的方式。因此,IR‐UWB脉冲的检测涉及实现的带宽、脉冲形状、接收器阈值和增益等参数之间的关系。
7 IR‐UWB收发器的专用集成电路实现
完整的IR‐UWB物理层被实现为一个专用集成电路,该电路包含模拟和数字信号处理部分。封装后的芯片布局如图27所示。可以看出,布局的上半部分为模拟前端,下半部分为上述的基带处理器。这是全球首款在6–8 GHz频段工作的集成单芯片IR‐UWB收发器。此外,该芯片具有频率敏捷性,可通过可编程分频器生成所需的本振信号,从而在四个不同的频率信道中进行无线传输。
数字基带高度可配置,支持从850 kb/s到27.24 Mb/s的多种数据速率。它不仅完全兼容IEEE802.15.4a,还增加了多项功能,以适应大量应用的需求,包括更高的数据速率和丰富的配置选项。
IR‐UWB基带处理器单独消耗约20 mA电流,在 250 nm互补金属氧化物半导体工艺下占据约6.4 mm²的硅片面积。整个芯片在3.0 V供电电压下仅需不到13 mm²的硅片面积,消耗电流为140 mA。
8 所构建的IR‐UWB收发器的性能
将IR‐UWB收发器实现为单芯片的目的是将其应用于需要极高可靠性的工业自动化领域,仅在物理层的包错误率就达到 10⁻⁵。这对于所选的0.25 μm工艺技术来说是一个挑战,因为所需的500兆赫时钟频率难以实现。为了确保实现的可行性,未采用速度更快、分辨率更高的模数转换器(ADC),而是采用了比较器和CMOS电平移位器,它们组合起来相当于一个采样率为499.2兆赫、1.5位分辨率的ADC。
9 IR‐UWB芯片的测试
采用两种不同方式对实现的IR‐UWB芯片进行测试:首先,使用编程适配器Aardvark和LabVIEW图形用户界面进行测试;其次,通过STM32F4探索板对其进行控制。
在测试过程中,如图28所示,IR‐UWB芯片被安装在一块电路板上。除了IR‐UWB芯片外,该电路板还包括一个产生31.2MHz参考时钟的振荡器以及一个排针接口。
背面用于通过SPI接口将其连接到微控制器。采用差分宽带Vivaldi天线在作为发射机和接收器的两个板之间建立连接。
开发了一个Labview GUI,用于发送之前讨论过的配置数据和命令。它启动传输,在循环中重复接收数据包,并执行评估。测量和测试设置如图29所示。
由于该芯片所用封装的引脚非常有限,IR‐UWB芯片需要具备无需任何测试引脚即可进行自我测试的能力。为此,引入了多种通过SPI命令设置和运行的测试程序。此类测试包括数字基带处理,即将数字发射信号在同一个芯片内部环回到数字接收器,而不涉及任何高频模拟信号处理(参见图27中的下方环路)。
这些测试可以表明在发射机和接收器各处时钟均同步的理想条件下,数字部分是否能够正常工作。另一种测试是将准备辐射的模拟IR‐UWB信号耦合回接收器,并对其运行前述的检测方案。在这种情况下,条件同样是理想的,即信号未受到任何信道损伤的影响(参见图27中的上方环路)。
为了了解接收到的模拟信号,我们在进行内部测试时记录了比较器输出端的I和Q信号。这些测试可以很好地反映IR‐UWB接收机对单个脉冲及其极性的分辨能力。记录的信号如图30所示。可以看出,I和Q信号与理想信号吻合良好,并在预期位置达到最大幅度。极性变化出现在预期的位置。因此,通过设置适当的阈值,可以恢复带有极性的单个脉冲。如果将I和Q信号结合起来并同时用于决策,则检测将变得更加可靠。
在图31中可视化了一个携带2个比特850 kb/s数据的捕获的突发信号。由于该脉冲串由16个按特定模式排列的正负脉冲组成,接收器必须整体检测该脉冲串以及每个单个脉冲的极性。可以看出,极性恢复并非易事,因为在从一个脉冲转换到下一个相反极性的脉冲所需时间较长,导致难以被检测。然而,在许多应用中,仅可靠地检测到脉冲串的存在而不进行任何极性检测就已足够。此外,通过以多种方式重复数据包以及在MAC层有效组织帧结构,可以改善包错误率。
另一种测试是将电路板安装在STM32F4探索板上,并进行与之前提到的Labview设置类似的测试(见图32)。该测试的结果显示与使用Labview进行的测试相似。
无线通信测试通过使用两块电路板进行,如图33所示,其中一块配置为发射机,另一块配置为接收器。在所有频率信道和数据速率下,采用差分宽带天线实现的无线通信距离约为五米。无线传输的PER性能测试结果表明,其性能高度依赖于接收机增益和比较器阈值的合理组合设置。
由于所有测试均成功完成,IR‐UWB板已集成到 KUSZ演示系统中,用于传输工业自动化的过程控制数据。
10 KUSZ系统演示系统
为了演示无线通信(特别是IR‐UWB)在工业自动化中的应用,选择了一个分拣任务。主要目的是展示控制数据的可靠无线传输。为此,在一个圆形旋转板上方放置了一个叉式光障检测器,该旋转板边缘装有松动的矩形金属块。该演示装置如图34所示。这些矩形金属块可通过压缩空气吹动上下移动。当金属块上升时,会被检测器感应到,所收集的信息通过IR‐UWB从从节点无线传输到主节点。主节点随后决定从节点应对该金属块执行的操作。
通过控制命令,主控单元可利用IR‐UWB无线方式向从单元传输指令,从单元将执行这些指令。在此示例中,我们看到这些指令在主节点和从单元之间通过无线方式传输。演示装置上的显示屏指示当前PER、频率信道以及数据速率。主节点和从节点之间有一个旋转的圆形玻璃板,会以不同方式遮挡视线连接。为了制造各种障碍,在玻璃板上安装了铝条。认知学习系统会识别这些障碍,并在做出决策以在节点间分配资源时将其考虑在内。
11 结论
对IR‐UWB无线物理层进行了仿真、设计、实现和测量。提出了一种适用于在四个频率信道和三种不同数据速率下工作的整个系统的单芯片解决方案。详细考虑了完整系统,重点在于实现高鲁棒性的PER和延迟性能。该 IR‐UWB无线电具有多种配置选项,可设置为多种工作模式。IR‐UWB接收机在以850 kb/s、6.81 Mb/s和 27.24 Mb/s的数据速率接收时,检测精度达到2纳秒,并且能够恢复位置和极性位。较高的数据速率也经过仿真和测量,发现其工作性能与较低的数据速率相当。所实现的系统经过测量和测试,功能正常,因此可用于工业自动化环境中无线传输控制数据。所实现的IR‐UWB收发器已集成进入KUSZ演示系统,用于无线传输控制与仪表数据。
365

被折叠的 条评论
为什么被折叠?



