一. 简介 哈喽,大家好,在前面的一些设计中,本人使用的最多的是ESP32和STM32作为主控的项目,例如AuroraFOC/Ebullient这两个项目,但是作为以FPGA开发为主的工程师,一直没有发布以FPGA作为主控的项目,感觉这样不是特别好,毕竟大家关注是为了学习FPGA相关的知识,主要原因有一下两点吧: 成本太高: 一片FPGA芯片的价格基本上是单片机10倍以上,另外PCB设计中至少采有6层以上的设计,6层以上PCB的生产费用嘎嘎高。 PCB设计难度太大: 会涉及到高速信号的设计,例如DDR3,另外上电时序也需要控制、散热问题等等,有一个环节出现问题,可能就会导致不能够正常使用,报废率较高。 但是为了回归FPGA主题,让大家学习FPGA的时候能够接触更多有趣的项目,所以我决定花些功夫设计一款ZYNQ7020核心板: Ethereal,后续项目将使用此板作为主控板进行设计。 二. Ethereal来源 对比了 正点原子, 黑金,米联客等几家的ZYNQ7020核心板,它们都有一个共性: 需要搭配底板才能使用,这一点我觉得不太友好,对标的用户应该是企业,而不是我们普通学者。 所以我打算结合我的使用习惯,使得大部分普通用户使用起来更加方便。通过颜值选择了正点原子的ZYNQ7020核心板(产品图如下)作为参考进行设计,故设计的Ethereal可以完美兼容他们的底板(部分IO有点区别)。 三. Ethereal产品介绍 先介绍一下正点原子的ZYNQ7020核心板参数: DDR3:1GB(512MB*2 PS) EMMC:8GB(PS) QSPI FLASH: 32MB(PS) 板载: 千兆以太网芯片(PS),复位按键(PS),一个PS LED, 一个PL LED,JTAG下载接口(1 *6),3710 2*50P母座 Ethereal核心板参数: DDR3:1GB(512MB*2 PS) EMMC:8GB(PL) QSPI FLASH: 32MB(PS) 板载:type-c USB 串口(PS 可以用来供电),TF卡座(PS),BOOT选择开关,复位按键(PS),一个PS LED, 一个PL LED,JTAG下载接口(1 *6),3710 2*50P母座 可以看出在板载资源上一些差异,正是因为这些差异可以使得Ethereal可以直接使用,无需搭配底板。 其它家的EMMC基本上都是挂载在PS侧了,因为可以直接使用,简单方便。Ethereal则是挂载在了PL侧,使用起来虽然难度加大了,但是更为灵活了,可以满足一些特殊的要求。 四. PCB参数 外形尺寸: 57.5mm * 45mm 工作电压: 5V 工作电流: 58mA ~ 530mA @ 5V PCB层数: 10层 PCB的相关参数与正点原子的ZYNQ7020核心板保持一致。
I²C是一种串行、半双工通信总线,使用多主从架构,是由Philips公司在1980年代初设计的,主要用于近距离、低速的芯片之间的通信。由于其简单性,它被广泛用于微控制器与传感器阵列,显示器,IoT设备,EEPROM等之间的通信。
还记得刚开始做嵌入式的时候,面对芯片数据手册(datasheet)那叫一个头大! 动辄几十页的文档,密密麻麻的术语和图表,简直像天书。 后来我发现很多工程师都有类似的困扰。即便现在我已经用过成百上千种芯片,面对一些“奇葩”数据手册,依然会抓狂。 选芯片和读数据手册,其实可以有章法可循。这篇文章我想分享一下我这些年总结的经验,教你如何快速上手一份数据手册,少走弯路。 我会以 SiC45x 降压 DC/DC 转换芯片为例,带你一步步拆解数据手册的阅读技巧。 从哪里开始读数据手册? 别笑,我的第一步真的是直接翻到典型应用电路(Typical Application Circuit)。 这部分通常是数据手册的“门面担当”,能让你迅速抓住芯片的核心用法。 如果一份数据手册连典型应用电路都没有,我十有八九会直接 Pass 掉这颗芯片! 为什么?因为典型应用电路就像一份“速成指南”,能告诉你: 芯片的基本接法是什么样; 需要多少外部元件; 大概能用在什么场景。 以 SiC45x 的典型应用电路(见图1)为例,它在数据手册的第一页就给了我们不少信息: 图1:SiC45x 典型应用电路 通过这个图,哪怕你对这颗芯片一无所知,也能快速get到: 输入电压范围是 4.5V 到 20V; 没有外部 MOSFET,说明这颗芯片内部集成了功率管(对高功率稳压器来说挺硬核!); 支持 I2C 通信,还能改地址; 有 RT/SYNC 引脚,说明可以调开关频率; 有 ENABLE、PGood、SALRT 等状态引脚,说明可能不依赖 I2C 也能用。 虽然这些信息不足以直接画原理图,但已经足够让你对芯片有个初步印象,是个不错的起点! 例外情况:如果是微控制器(MCU),因为功能太复杂,数据手册通常不会有完整的典型应用电路,而是会拆分成几个关键模块的接法,比如去耦电容、晶振、编程接口等。 如果 MCU 数据手册还贴心地附上“最小硬件连接”示意图,那真是良心厂家,值得加分! 别错过两个“描述”部分 数据手册里通常有两个地方会介绍芯片的功能,一个是开头的描述(Description),另一个是稍后几页的操作描述(Operational Description)。这两个部分乍看有点重复,但其实各有侧重。 开头的描述:通常在第一页,像是芯片的“自我介绍”,简明扼要地告诉你这颗芯片是干啥的,适合什么场景。读完这个,你大概就能判断芯片符不符合你的需求。 操作描述:这个部分一般在引脚定义、绝对最大值和框图之后,内容更详细,会把开头的描述再细化一遍,还会分模块讲解芯片的各个功能块。 图2:SiC45x 数据手册的两种描述 以 SiC45x 为例(见图2),开头的描述让你快速了解芯片是个降压转换器,支持 I2C 控制,而操作描述则会进一步拆解每个功能模块,比如开关频率设置、I2C 通信协议等。 建议:选芯片时可以先快速扫一眼这两个部分,设计原理图时再反复回来查操作描述里的公式和设置方法。 绝对最大值:设计的安全底线 看完典型应用电路和描述,我会直接跳到绝对最大值(Absolute Maximum Ratings)和推荐工作条件(Recommended Operating Conditions)。这两部分是芯片的“红线”,告诉你芯片能承受的极限和建议的工作范围。 图3:SiC45x 绝对最大值表格 以 SiC45x 的绝对最大值(见图3)为例: 最大输入电压是 28V,但推荐工作电压只有 20V。这意味着你不能直接用 24V 电源供电,但如果有上游的过压保护(比如钳位到 24V),20V 是可以安全使用的。 还会列出每个引脚的最大电压和电流,方便你检查设计是否超限。 Tips:绝对最大值是“不能碰的雷区”,但不代表芯片能长期稳定工作在这些极限条件下。推荐工作条件才是你设计时的参考标准! 引脚定义表:设计时的“速查宝典” 了解了芯片的基本功能和电气限制后,我会去看引脚定义表(Pin Description),也叫引脚功能表。这个表格通常在典型应用电路和绝对最大值之间,列出了每个引脚的名称、功能和简单描述。设计电路时,这个表格是我翻得最多的部分,堪称“速查宝典”。 图4:SiC45x 引脚定义表 比如 SiC45x 的引脚定义表(见图4),我们能快速知道 RT/SYNC 引脚是用来设置开关频率的。但具体用多大的电阻对应什么频率?这时需要翻到操作描述里的“RT/SYNC 引脚和开关模式配置”部分,里面会有详细的电阻值表格(见图5)。 图5:SiC45x 开关频率设置表格 功能框图:深入理解芯片内部 几乎所有数据手册都会有个功能框图(Functional Block Diagram),展示芯片的内部结构。SiC45x 的框图如图6所示: 图6:SiC45x 功能框图 框图不一定每次都用得上,但关键时刻能帮大忙,比如: 搞清楚不同地(GND)之间的连接方式; 了解芯片的驱动电路类型; 弄明白如何绕过某些功能模块; 看内部电压是怎么生成的。 我通常会在设计后期或者调试时参考框图,尤其是遇到奇怪问题时,它能帮你从芯片内部逻辑去分析。 那些密密麻麻的图表怎么办? SiC45x 数据手册光图表就占了9页!(见图7)说实话,我平时不太会逐一细看这些图表,它们不是我的标准阅读流程。但某些场景下,比如想了解芯片的启动特性或效率曲线,图表还是很有用的。 图7:SiC45x 数据手册中的图表页 建议:除非有特殊需求(比如分析启动时间或热性能),可以先跳过图表,专注前面的核心内容。 PCB 布局建议:参考但别盲从 SiC45x 数据手册有个亮点:整整三页的 PCB 布局建议!(见图8)这在数据手册里算少见,尤其对开关电源这种对布局敏感的芯片,布局建议特别重要。 图8:SiC45x PCB 布局建议 不过,我得提醒一句:别把布局建议当“圣经”。厂家提供的建议通常是通用的,实际设计中你可能需要根据具体情况调整。比如,SiC45x 的布局建议里提到电源和地平面怎么布,但图示里有些细节可能不太合理。我的做法是参考这些建议作为起点,然后结合自己的经验优化。 别忘了检查勘误表! 数据手册不是完美的,尤其是刚发布时,难免有印刷错误或遗漏。这些问题通常会在 勘误表 部分修正,列在数据手册末尾或单独文档里。Errata 还可能指出芯片本身的硬件问题,比如某个引脚功能有 Bug,未来版本会修复。 Tips: 一定要用最新版数据手册,直接从厂家官网下载。 尤其是 MCU,勘误表可能单独发布,设计前务必查阅。 总结:从“天书”到“工具书” 读数据手册就像啃一本技术“天书”,但只要掌握方法,就能把它变成你的“工具书”。通过 SiC45x 的例子,我分享了我的阅读流程: 先看典型应用电路,快速了解芯片用法; 读两个描述部分,抓住芯片的核心功能; 检查绝对最大值和推荐工作条件,确保设计安全; 熟读引脚定义表,设计时反复参考; 必要时看功能框图和图表,解决疑难问题; 参考 PCB 布局建议,但灵活调整; 别忘了检查勘误表,避免踩坑。 希望这些经验能让你下次面对数据手册时信心满满!如果你有其他读数据手册的技巧,欢迎在评论区分享,咱们一起进步!