【手搓万兆软路由与NAS】第5篇:实物展示
经历了漫长的PCB与SMT打样、焊接焊的眼花,现在实物可正常运行啦!B站视频链接实物图左边是LattePanda Mu+风扇。实际只有信用卡的大小。右边是自行设计的PCIe扩展板,含有三个PCIe插槽。高速软路由PCIe插槽插入千兆网卡,甚至是万兆网卡,轻轻松松搭建一个高速软路由!纯固态NASPCIe插槽插入NVMe扩展板和网卡,轻轻松松搭建一个高速纯固态NAS。当然,还有更多组合的可能性!如您对这个项目感兴趣,欢迎观看该项目的B站视频。结尾1.项目实物和资料仍在优化中,预计4月份发布在嘉立创的开源硬件平台上,敬请期待!2.上述的网卡与NVMe SSD,需要BIOS固件配合才能正常使用。后续我会分享具体的步骤。#DIY设计##创享2025# #软路由# #NAS# #PCIe# #高速PCB设计#
【手搓万兆软路由与NAS】第4篇:PCB Layout设计
这个底板上有PCIe 3.0, USB 3.2,HDMI等高速信号,布线时需要考虑阻抗匹配、信号线等长之类的因素。层压结构对信号线做阻抗,和PCB的层压结构有直接关系,只有确定了层压结构,才能根据目标阻抗值来确认线宽、线距。嘉立创支持的层压结构,可参考:https://tools.jlc.com/jlcTools/#/impedanceDefaultTemplate我选用的则是JLC04161H-7628,四层板。这是一个通用的层压结构,PCB打样时不会额外收费,SMT时能选择更便宜的经济型。(JLC06161H-3313也是通用层压结构,但SMT时貌似不能选择经济型,在此向各位求证下。)阻抗控制PCIe 3.0, USB 3.2,HDMI等信号,差分阻抗值在85~100欧姆之间,而JLC04161H-7628的层压结构对阻抗值的管控精度是±20%左右(毕竟免费,不能要求太高),因此为了方便,我统一把所有差分对信号的阻抗值按照90欧姆来设置。使用嘉立创阻抗计算神器,计算值如下:那么可以取值为:间距5mil,线宽8mil。由于嘉立创多层板的工艺极限(最小线间距)是3.5mil,因此我取5mil间距更安全一点。当然,用4mil间距也可以,那么可取值:间距4mil,线宽7mil。差分对等长上述是DeepSeek帮忙整理的差分线阻抗与等长控制要求,供参考。如有不对的,欢迎指出。其中USB2.0是半双工,USB3.2是独立的收发通道(全双工),不存在组内等长。PCIe 3.0可能有多个收发通道,但对于PCIe来说,差分线组间没必要等长,但组内一定要等长。HDMI的等长要求非常严格,组内5mil,组间10mil,需要控制好,否则会出现闪屏、不定时黑屏等问题。走线注意事项高速信号线,布线难度也不高,除了上述的阻抗、等长、线宽线距要求外,再了解以下几个注意事项,你也能轻松画出人生中第一块能正常运行的底板。差分对中,进行长度补偿时,要从源端开始,也就是:哪里开始不等长,就从哪里开始绕等长。进行长度补偿时,等长优先,肯定会牺牲阻抗值,这是没办法的。但要注意,也不是完全没要求, 突出的线段:最大间距要小于2倍正常间距, 长度要大于3倍线宽。交流耦合电容并排放(对齐),不能错开。信号线打孔换层时,必须在信号过孔附近放上2个回流过孔(GND过孔)。当然,能放4个GND过孔则更佳。差分线拐弯时, 较短的那根信号线,线段的长度至少是1.5倍的线宽。差分对间距是5倍线宽(线中心间距,也就是我们常说的5W),减少串扰,特别是平行走线长度较长的时候。当然,有些场合没办法满足5W,但平行走线段也比较短,此时3W也不是不可。信号线下方必须是完整的参考平面(通常是GND平面),否则会引起阻抗突变,导致信号反射,引起不稳定甚至不能正常工作的情况。再补充一点:外接设备的接口,比如USB,HDMI,按钮等,强烈建议加上ESD保护管!底板效果图这是完成布线版本的设计,已经安排打样了。第一次画这种高速板,就PCB设计花了整整3个星期多。由于PCB设计从0到1,细节太多了,用图文的形式根本说不清楚,视频反而更合适,因此等这版打样测试成功后,我会考虑出一套视频教程,让大家一起享受DIY的乐趣。如本帖子的内容对您有帮助,欢迎收藏、点赞或关注,谢谢您的支持!#DIY设计# #NAS# #软路由# #WiFi/以太网# #高速PCB设计# #创享2025#
【手搓万兆软路由与NAS】偶发灵感:本地运行DeepSeek R1,稳了!
本地部署DeepSeek R1大模型的保姆级教程:https://www.bilibili.com/video/BV18icFeGEC5/
我自己设计的PCIe底板,有2条PCIe x4插条,可以插2个显卡,按照这个视频教程,那我部署大模型后,回复速度岂不是要飞起?
我得抓紧设计好底板了[色][色] #DIY设计# #Deepseek#
【手搓万兆软路由与NAS】第3篇:硬件原理图设计
正如前两个帖子所述,基本的硬件功能和接口已经确认,那么现在进行原理图设计。1. 整板供电(1)LattePanda Mu供电根据官方的开发资料, LattePanda Mu的供电范围是9~20V,供电方式也很简单,只需要把所有的VIN管脚(pin 250 ~ pin260, 共11个管脚)和所有的GND管脚连接到9~20V电源即可。不需要其他供电了。(2)USB供电不管是USB2.0还是USB3.0,均是5V供电。当然,供电能力有点不同。通常对于USB2.0,5V电源要有500mA以上的驱动能力。对于USB3.0,5V电源要有1A以上的驱动能力。USB接口的线序说明(3)HDMI供电HDMI接口有5V供电管脚,主要给低功耗设备、EDID/DDC等使用,输出电流50mA以上即可,因此输出功率不高。可以共用USB 5V的管脚。另外,HDMI的I2C是5V电平,而LattePanda Mu HDMI的I2C接口电平是3.3V,需要做电平转化,可用NMOS来实现,因此还需要3.3V供电给NMOS,由于只是信号电路,不是功率电路,用一个3.3V LDO即可。HDMI接口的线序说明(4)PCIe供电PCIe插槽有12V和3.3V两种供电。如果要PCIe插槽提供全功率电源,那么12V电源要有5A供电能力,3.3V电源要有3A供电能力。由于我设计的底板将会有3个PCIe插槽,对于12V电源来说,功率比较大,板载稳压电路会很复杂,因此为了降低硬件难度,就直接使用12V电源适配器来给PCIe的12V部分供电。当然,这也要保证输入的一定是12V电源,如果超过安全值,就要进行过压保护,防止高电压流到PCIe插槽的12V管脚,这就需要一个12V OVP电路。下图是一个经典的MOS管搭建的OVP电路,带软启动。当输入电压超过13.8V时,输出将关闭。对于3.3V部分,使用DC-DC同步降压电路即可。我习惯使用SY8113BADC,耐压18V,3A输出电流,外围简单,管脚分布合理。如需要更高的耐压,可用SY8253ADC,耐压可达23V。PCIe插槽的线序说明(5) 整板供电树按照上述各个模块的供电需求,拟定的整板供电树如下所示。(先通过12V OVP电路,再通过各个降压电路分别得到5V和3.3V电源)2. HDMI接口原理图HDMI直接拷贝官方的设计即可。 使用TMDS信道,共4路差分线,其中三路是信号,一路是时钟。 所有TMDS差分信号线,均串有100nF的交流耦合电容(AC Coupling Capacitor ),并通过470Ω的电阻被NMOS可控的下拉到GND。另外I2C需要用NMOS进行5V和3.3V电平的转换。由于HDMI是可插拔接口,连接外部显示器,因此需要加上EDS保护管,防止被静电打坏。具体原理图如下图所示:3. USB接口原理图USB只有2.0部分,因此比较简单。由于USB接口也是外接可插拔设备,因此需要有EDS保护。官方参考设计电路中,USB部分使用的是自恢复保险丝,但是自恢复保险丝无法精准限流,且响应时间慢,因此我改用LP5308B6F芯片。该芯片具有5.85V过压保护和可调限流保护(最大2.5A)功能。如果不需要过压保护功能,可使用MT9700芯片。4.风扇接口原理图底板上至少会有2个风扇接口。一个是给LattePanda Mu风扇专用的,5V供电,支持调速。实际测试中发现,在睡眠状态下,风扇转速会出现不可控,不知道官方会不会修复这个问题。我直接使用PMOS管,对风扇的5V电源开关控制,在睡眠状态下关闭供电,从而避免风扇转速不可控的问题。另一个是给机箱风扇用的,12V供电,支持调速。接入市面上常见的12cm机箱风扇,给各类PCIe板卡设备散热。5.PCIe接口原理图每个PCIe接口,有12V和3.3V电源,PCIe TX差分对和PCIe RX差分对,REFCLK差分对时钟信号,还有WAKE、RST信号。REFCLK差分对时钟信号提供100MHz的时钟信号给PCIe设备,如果不用CLKREQ功能,可认为REFCLK差分对一直对外输出100MHz时钟信号,不用管PCIe和REFCLK的编号关系。PCIe TX差分对通常串有220nF的交流耦合电容,而PCIe RX差分对则不用,因为交流耦合电容在外接的PCIe设备上。根据Intel给的Flexible IO Lanes分配表,要实现2个PCIe x4和1个PCIe x1的配置,HSIO的分配是:HSIO0~3和HISO8~11分给2个PCIe x4;HSIO6分给PCIe x1。另外,如要做NAS,连接4块固态硬盘,那么需要的分配是:4个PCIe x2和1个PCIe x1。此时4个PCIe x2就需要4路REFCLK时钟信号。我把时钟信号接到了A32和A33管脚,这两个是保留管脚,我可以自行设计PCIe转NVMe SSD转接板,直接使用2路时钟信号,避免了使用额外芯片将时钟信号一分多的问题。至此,原理图设计阶段结束了。下面就是PCB设计阶段了。本系列帖子均由点亮君原创,创作不易,如对您觉得有帮助,请帮忙点赞和评论,谢谢。#DIY设计# #NAS# #软路由# #WiFi/以太网# #高速PCB设计#
【手搓万兆软路由与NAS】第2篇:板型与硬件框架
上一个帖子中,已明确需要实现的基本功能、能接入的外设等信息。在正式开始原理图与PCB设计之前,还需要细化硬件方案的框架、板子的形态。本帖子将进行详细的讲解。硬件框架根据基本功能和需要接入的外设,拟在底板上增加下述的接口。接口用途电源为整板器件与外设提供电源视频接显示器,看画面,调试USB键盘、鼠标、U盘PCIe网卡、SSD、显卡 DDR4LattePanda Mu模块风扇散热风扇 确定了接口,整套系统的框图就逐渐清晰起来了。参考官方的设计文档,我将LattePanda Mu的IO资源分配如下图:值得一提的是:底板还需要增加一个Flash芯片,用于存放BIOS固件。如果只靠核心板模块自带的BIOS固件,万一不小心搞崩就麻烦了,因此需要一个备用件,这样就能放心的去折腾了。整体形态第一种:竖立所有PCIe板卡,还有LattePanda Mu模块,都是竖插的,参考下面的示意图:第二种:平铺所有PCIe板卡,还有LattePanda Mu模块,都是平铺的,参考下面的示意图:你更倾向于哪种形态呢?欢迎在评论区讨论。下个帖子将正式开始原理图与PCB设计部分。如对您觉得有帮助,请帮忙点赞,谢谢。#DIY设计# #NAS# #软路由# #WiFi/以太网#
【手搓万兆软路由与NAS】第1篇:概念构思与方案选型
项目背景说起软路由或NAS,大家肯定不陌生,头脑里立马会呈现一堆多网口的黑铁壳小主机、贵到离谱的群辉等等。相信大家使用的时候,大概率是All in one, 也就是一台机器,能同时跑软路由、NAS、其他服务。在某宝上,能看到很多小品牌的机器,性能和配置给的很足,价格也便宜,买到合适的并不困难。但作为一名电子攻城狮,就是喜欢手搓个性化轮子成功后的喜悦。那么,能不能对硬件能力不太高的情况下,自行造出一款独特的All in One硬件系统呢?比如用4层板,甚至是2层板。我研究了下,还真可以,让我慢慢理给你。网卡选型网卡速度有多种规格,常见的有1G,2.5G等,用的是网线,也就是我们常说的电口。而在服务器上,除了1G,2.5G,还有10G,25G,40G等超高速网卡,用的通常是光纤,也就是我们常说的光口。10G网卡也有电口的。这些通常是标准的PCIe板卡,如下图所示的INTEL X540-T2 双口万兆网卡,板载2个10G电口。虽然是服务器拆机货,但价格60多,便宜好用啊。(你可别看不起服务器拆机货!)由于我的使用环境大部分是电口,没有光口,因此就用这款网卡了。10G网口的速率拉满,传输文件应该有1GB/s,这个速度在内网中传输文件是足够了。硬盘选型如果用机械硬盘组NAS,特别是企业级硬盘,有“哒哒哒”的炒豆子的噪音,而且体积也大,没逼格。在当今SSD价格快要和机械硬盘一拼的时候,为何不用SSD来组NAS呢?速度快,还没噪音,放在卧室甚至床底下都可以。那么如何在一块主板上安装多个NVMe SSD呢? 不少主板都有M.2 M Key插槽,但数量通常最多只有2个。NVMe SSD使用的是PCIe通道,不少主板的PCIe插槽比较多,那么是否可以转换呢? 原来还真有。如下图这种的。 那么只要求主板有较多的PCIe插槽就可。当然,上图这款,根据卖家提供的信息,要求主板支持PCIe拆分。主板选型根据上面说的结论,无论是网卡还是硬盘扩展卡,都要求主板有足够数量的PCIe插槽。而我又是一个追求极致的人,想做的尽可能迷你,尺寸不超过3.5寸,接口与形态也要独特和个性化。那么用什么方案来设计主板呢?最开始想到的是采用ARM处理器的树莓派计算模块,但看了它的参数就放弃了,原因是PCIe x1只有一路,而且还是2.0版本的,这怎么玩呀?想想其他ARM处理器的计算模块,估计资料获取和如软件适配会糟糕,于是我转向了x86处理器的。看了研华的SMARC模块,信用卡大小,尺寸可以,于是我咨询了他们的销售问价格,我天,你猜怎么了嘛?上来就问我单位和项目信息、年用量,吓到我了。当得知我是个人爱好者时,他们就不想跟我说话了。有点尴尬。。。后来,在今日头条无意看到LattePanda Mu。看了简介,基本款用的是N100 4核处理器,8GB内存,64GB存储,金手指接口可配置成最多九条PCIe x1,也可自行配置成2组PCIe x4, 4组PCIe x2等等,组合非常灵活。官方还开源了底板的原理图和PCB源文件,也有相应的BIOS固件提供,价格也还能接受,这不就是我理想的选型嘛,那就先用这款试试。值得一提的是,25年官方发布了一款高配版,配的是酷睿I3 N305 8核心处理器,16GB内存,尺寸和管脚完全一致,也就是说,我设计好的主板,可随意选择基本款还是高配款,这个性能和灵活性真棒,性能也能吊打大品牌的机器了。不知道后面会不会有酷睿I5甚至是I7版本呢?挺期待的。硬件框架经过上面的分析,总体的硬件框架开始清晰。根据LattePanda Mu所具有的管脚资源和我的需求,我将其梳理成了脑图,如下图所示: 根据这个框架,可能有3种典型的用途,如下图:下一步确认了器件选型与硬件框架,下一步就是基于LattePanda Mu设计一个底板了,板子上会有HDMI,USB,PCIe插槽等接口。尺寸在3.5寸左右。我会使用嘉立创EDA进行设计,到时大家感兴趣的话,可以一起讨论。 我会继续发布新帖,更新项目进度,如您觉得有趣或有用,请帮忙评论、点赞等,谢谢大家。#DIY设计# #NAS# #软路由# #WiFi/以太网#