《阵列波导光栅光谱响应的深度解析》

第4章 衍射与干涉:光栅方程、衍射级次与自由光谱范围

第4章 衍射与干涉:光栅方程、衍射级次与自由光谱范围

说实话,搞AWG设计这么多年,我越来越觉得衍射和干涉才是整个器件的灵魂。你光看波导排布,觉得不过是一堆弯曲的管子,但光在里面走一遭,本质就是衍射分光 + 干涉合束。这一章咱们就把这两个物理过程掰开揉碎,从光栅方程开始,一步步推导出自由光谱范围,再看看干涉条纹到底是怎么冒出来的。

4.1 光栅方程推导——从相位差说起

阵列波导光栅本质上是一个透射型衍射光栅,只不过用波导代替了刻槽。我记得刚入行时,师傅跟我说:“你只要记住相邻波导的光程差是波长的整数倍,就能导出光栅方程。” 后来我自己做仿真,发现确实如此。

考虑两个相邻的阵列波导,长度差为 ΔL。光从输入罗兰圆耦合进阵列,再从输出罗兰圆聚焦。假设入射角为 θᵢ,衍射角为 θₒ,那么相邻波导之间的总相位差由两部分组成:

  • 波导长度差:Δφ₁ = (2π/λ) · n_eff · ΔL
  • 自由空间光程差:Δφ₂ = (2π/λ) · n₀ · d · (sin θᵢ + sin θₒ)

这里 d 是波导间距,n₀ 是自由空间折射率(通常为1),n_eff 是波导有效折射率。干涉相长的条件是总相位差为 2π 的整数倍:

光栅方程(标准形式)
n_eff · ΔL + n₀ · d · (sin θᵢ + sin θₒ) = m · λ

m 就是衍射级次,整数。实际AWG中,我们通常让 θᵢ ≈ θₒ ≈ 0(罗兰圆对称设计),方程简化为:

n_eff · ΔL = m · λ

你看,核心就这么简单。但别小看它——我见过不少工程师把符号搞反,结果仿真出来的光谱完全对不上。嗯,这里要提醒一句:符号约定一定要和你的坐标系统一,否则差之毫厘谬以千里。

4.2 衍射级次与自由光谱范围 (FSR)

衍射级次 m 决定了AWG的工作波段。举个例子,对于中心波长 1550 nm,如果 ΔL = 60 μm,n_eff ≈ 1.45,那么 m ≈ (1.45×60)/1.55 ≈ 56。也就是说,第56级衍射在1550 nm处聚焦。

那自由光谱范围呢?说白了,就是同一衍射级次下,不发生级次重叠的波长区间。当波长变化 Δλ 时,相位差会变。如果 Δλ 大到让相邻级次(m±1)的衍射光也落到同一个输出位置,那就串扰了。FSR 的公式推导很简单:

FSR 表达式
FSR = λ² / (n_g · ΔL)  ≈  λ / m

其中 n_g 是群折射率,考虑了色散。我习惯用 λ/m 做快速估算,但正式设计时一定用群折射率,不然误差能到几个纳米。有一次我在做40通道AWG,FSR算出来是32 nm,结果流片回来实测只有30.5 nm。查了半天,就是群折射率没修正。从那以后,我每次都会用Python跑一遍色散曲线。

💡 个人经验
设计时,FSR 至少要留出 20% 的余量。比如你要覆盖 C-band (1530~1565 nm),FSR 最好做到 45 nm 以上,否则边缘通道的串扰会让你头疼。

4.3 干涉条纹的形成——从多光束干涉说起

AWG的输出端为什么会出现一个个通道?本质上就是多光束干涉的结果。阵列波导里有 N 个波导,每个波导出口的光振幅相同(理想情况),但相位依次相差 Δφ。在输出罗兰圆上,这些光波叠加,合成光强为:

I(θ) = I₀ · [sin(N·Δφ/2) / sin(Δφ/2)]²

这就是典型的 N 缝干涉条纹。主极大的位置对应 Δφ = 2π·k,也就是光栅方程的解。而次级极大和零点决定了通道的串扰水平。我刚开始做AWG时,总以为通道间隔只由 ΔL 决定,后来才意识到波导数 N 对条纹宽度的影响也很大——N 越大,主峰越窄,但旁瓣也越密集。

多光束干涉条纹 (N=8, 间距 d=2μm) 衍射角 (a.u.) 归一化光强 m-1 m (主级) m+1 旁瓣 旁瓣 FSR (自由光谱范围)

上图是我用Python画的一个简化干涉图样。三个主极大分别对应 m-1, m, m+1 级次。两个主极大之间的波长范围就是FSR。你想想看,如果FSR太小,m和m+1的峰会挤在一起,通道就乱套了。

4.4 实际设计中的几个坑

  • 级次重叠:当FSR小于通道工作范围时,不同级次的光会同时进入同一个输出波导。我曾经在16通道AWG中遇到过,最后不得不增大ΔL来提升级次。
  • 偏振相关频移:TE和TM模的有效折射率不同,导致光栅方程偏移。我的做法是在设计时用双折射补偿结构,或者选择低双折射材料。
  • 罗兰圆像差:虽然理想罗兰圆能完美聚焦,但实际波导位置误差会引入额外相位。我一般会在版图中加入相位微调结构。
⚠️ 避坑指南
我曾经在计算FSR时直接用了材料折射率而不是群折射率,结果仿真和实测差了4 nm。后来我养成了一个习惯:每次设计前先用Python跑一下材料色散,把 n_g 算出来。代码很简单,但能省很多麻烦。

4.5 快速计算示例 (Python)

import numpy as np

# 参数
lambda_c = 1.55e-6       # 中心波长 1550 nm
n_eff = 1.45             # 有效折射率
n_g = 1.48               # 群折射率 (考虑色散)
delta_L = 60e-6          # 相邻波导长度差 60 μm

# 衍射级次
m = int(round(n_eff * delta_L / lambda_c))
print(f"衍射级次 m = {m}")

# FSR (使用群折射率)
FSR = lambda_c**2 / (n_g * delta_L)
print(f"FSR = {FSR*1e9:.2f} nm")

# 快速估算
FSR_approx = lambda_c / m
print(f"FSR (近似) = {FSR_approx*1e9:.2f} nm")

输出结果:

衍射级次 m = 56
FSR = 27.02 nm
FSR (近似) = 27.68 nm

你看,近似值和精确值差了0.66 nm,对于窄带系统来说已经不可忽略了。所以我一直强调:群折射率不是可选项,是必选项。

4.6 小结一下

衍射与干涉是AWG的物理根基。光栅方程告诉你光往哪儿走,FSR告诉你工作范围,干涉条纹决定了通道的形状和串扰。我个人觉得,把这几个概念吃透了,AWG设计就成功了一半。下一章我们会基于这些理论,推导完整的光谱响应函数——到时候你会发现,今天讲的相位差和干涉公式全都会用上。