课程导论与硬件准备:Lattice FPGA光纤通信课程概览
大家好,我是你们这门课的老朋友。说实话,每次开新课前,我都要花点时间想想怎么把「光纤通信」这四个字讲得不那么吓人。你想想看,光信号在玻璃丝里跑,FPGA在电信号里算,这两者怎么搭上桥?嗯,这就是咱们这门课要干的事。
我个人习惯,第一节课不急着上代码。先把家伙事儿认全了,心里才有底。我记得刚入行那会儿,拿到一块开发板,连SFP接口和RJ45都分不清,闹了不少笑话。所以今天咱们就踏踏实实,把硬件选型和连接讲透。
核心目标:用Lattice ECP5系列FPGA,驱动SFP光模块,实现最基本的光纤收发。说白了,就是让电信号变成光信号,再从光信号变回电信号。
1.1 Lattice ECP5系列开发板:为什么选它?
市面上FPGA厂家不少,Xilinx、Altera(现Intel)是大头。但我为什么偏偏挑Lattice ECP5?原因有三:
- 性价比高:ECP5系列在低功耗、中等规模应用里,性价比非常能打。一块几百块的开发板,就能跑千兆甚至2.5G的光纤通信。
- 内置SERDES:这是关键。ECP5内部集成了高速串行收发器(SERDES),最高能跑到3.2Gbps。光纤通信的核心,就是靠这玩意儿把并行数据转成串行光信号。
- 工具链友好:Lattice的Diamond软件虽然不如Vivado那么庞大,但胜在轻量、上手快。咱们做光纤通信,不需要那么多花哨的IP核,够用就行。
我在项目中遇到过用ECP5做视频光纤传输的场景,稳定跑了两年没出过问题。所以选它,我心里有底。
选型建议:如果你刚入门,推荐Lattice ECP5 Versa开发板。它自带SFP接口,省去自己画板的麻烦。淘宝上二手的大约300-500元,性价比极高。
1.2 SFP光模块:光通信的「眼睛」
SFP(Small Form-factor Pluggable)光模块,说白了就是一个小盒子,负责把电信号转成光信号(发射),或者把光信号转成电信号(接收)。
常见的SFP模块有几种:
| 类型 | 速率 | 传输距离 | 适用场景 |
|---|---|---|---|
| 1000BASE-SX | 1.25Gbps | 550m(多模光纤) | 短距离,机房内部 |
| 1000BASE-LX | 1.25Gbps | 10km(单模光纤) | 中距离,楼宇间 |
| SFP+ 10G | 10.3125Gbps | 300m-40km | 高速场景,但ECP5不支持 |
咱们这门课,主要用1000BASE-SX模块。为什么?便宜啊!一个二手的SX模块才20块钱,够你折腾了。我曾经为了省钱买了个LX模块,结果发现实验室只有多模光纤,白花了一百多块冤枉钱。所以,买之前一定确认光纤类型。
避坑指南:我曾经遇到过SFP模块插反的情况。注意,SFP模块有方向性,发射口(TX)和接收口(RX)不能搞混。另外,模块的金手指很脆弱,插拔时一定要小心,别弯了针脚。
1.3 光纤跳线:连接的最后一步
光纤跳线,就是那根透明的「玻璃丝」。它分两种:
- 单模光纤(SMF):芯径细(9μm),传输距离远,但成本高。一般用于长距离通信。
- 多模光纤(MMF):芯径粗(50μm或62.5μm),传输距离短(几百米),但便宜。咱们实验室用这个就够了。
连接的时候,注意接口类型。SFP模块通常用LC接口,就是那种小方头。光纤跳线两头都是LC,直接插到模块上就行。
嗯,这里要注意:光纤跳线不能弯折太厉害。我见过有人把光纤绕成一个小圈,结果信号直接断了。光纤的弯曲半径一般不能小于30mm,否则光信号会泄漏。
1.4 硬件连接:一步步来
好了,东西都齐了,咱们连起来。步骤很简单:
- 断电操作:先把开发板电源拔掉。别带电插拔SFP模块,容易烧接口。
- 插入SFP模块:对准开发板上的SFP插座,轻轻推入,听到「咔哒」一声就到位了。
- 连接光纤跳线:把光纤跳线的一头插到模块的TX口,另一头插到另一个模块的RX口。注意,TX对RX,RX对TX,交叉连接。
- 上电检查:给开发板上电,观察SFP模块旁边的指示灯。如果亮了,说明物理连接没问题。
小技巧:如果你只有一块开发板,可以用一根光纤跳线把TX和RX短接(loopback模式)。这样就能自测收发是否正常。我在调试初期经常这么干,省去了找第二块板的麻烦。
1.5 知识体系总览:一张图看懂
说了这么多,咱们用一张图把整个知识体系串起来。你想想看,从FPGA到光纤,中间经历了什么?
这张图就是咱们整个课程的核心脉络。从FPGA内部的数据处理,到SERDES的并串转换,再到SFP模块的电光转换,最后通过光纤传输出去。反过来,接收路径就是逆过程。
1.6 硬件清单:照着买就行
最后,我给大家列个清单。照着这个买,保证不踩坑:
- 开发板:Lattice ECP5 Versa 或 ECP5-5G-EVN(带SFP接口)
- SFP模块:1000BASE-SX,LC接口,多模(2个,至少1个)
- 光纤跳线:LC-LC,多模,长度1-3米(1根,用于loopback测试)
- USB下载线:Lattice专用下载线(FTDI或Lattice原厂)
- 电源:12V/2A直流电源(开发板自带最好)
省钱小妙招:如果你手头紧,可以先买一块开发板和一个SFP模块。用loopback模式自测,一样能跑通整个链路。我当年就是这么干的,省了一半预算。
好了,硬件准备就到这里。东西到手后,先别急着上电。下一节咱们会讲Diamond软件的安装和第一个LED闪烁工程。嗯,别急,一步一步来。
公众号:蓝海资料掘金营,微信deep3321