设计备忘录

设计历程

2025.8.9

  1. 修改zynq7010为zynq7020,二者几乎完全兼容,我甚至都可以不用改原理图,焊的时候焊为7020即可。
  2. 添加原理图注释,添加外设位置,电源标注。
  3. 继续完善修改原理图
    1. 将全部电容(0603)改为(0402),耐压16V以上
    2. 完善了DDR3、TF_CARD
  4. 增加了关于电源、关于bank的部分。

2025.8.10

  1. 着手搭建博客(博客园美化)

    1. 基本完成博客园主题与Typora主题相似。
  2. 继续完善修改原理图

    1. 完善USB-OTG、千兆网口的原理图绘制。
    2. 了解了HR bank和HP bank的区别,方便后续添加摄像头。
  3. 增加了关于GND的部分。

2025.8.11

  1. 继续完善修改原理图
    1. 将AD9363替换为AD9361,二者不完全PIN_to_PIN。(带宽提升到6G)
      1. 原M12有源40M晶振,修改为M11、M12无源40M晶振。
      2. 开始考虑LVDS传输。
      3. 突然意识到FR4能到6G吗!?(管tm的哟)
    2. 继续完善电源部分
      1. AD9361需要干净的1.3V/1A,使用TPS7A91 ldo。
      2. 3.3V,1.8V电源由DCDC提供即可。
  2. 增加了关于AD9361的部分。
    1. V1.0,不加PA,纯AD9361输出。
  3. 继续弄博客。

2025.8.12

  1. 只弄了博客。(沉迷AI抽奖了┭┮﹏┭┮)

2025.8.13

  1. 学习了一下怎么把代码直接push到github上或者gitee上面。
  2. 让ai大人把它写的2500行屎山代码重构了一下,并用jsdelivr使我能在博客园快速使用。

2025.8.14

  1. 收集了大量资料,目前看来只有UG933对我有点帮助。

  2. 询问ai在FPGA如何分配AD9361管脚上浪费大量时间,它md一直说要在哪个VRP管脚上弄240欧姆的电阻。最终参照了Zedboard的管脚分配,虽然它是484bga封装的XC70Z20封装,我是400bga封装,但是我也总结出来了规律。

    1. AD9361的数据差分线连接到普通的LVDS差分线,SRCC差分线,DQ差分线上都可以。(几把ai偏说不行)
    2. AD9361的时钟差分线连接到普通的LVDS差分线,MRCC差分线都可以。
    3. AD9361的FRAME差分线连接到普通的LVDS差分线,SRCC差分线都可以。

    总结:我觉得都是可以分配的,只要分配到差分管脚上即可,但是不要分配到VREF管脚上了,方便布线为主。

  3. 学习摄像头接口种类。

    1. 目前的问题还是如何在AD9361上传输高画质视频流。我稍微思考了一下,先实现imx219摄像头裁剪到320×240画质下发送出去,这种带宽绰绰有余!后续的话,增加H265/H264编码解码芯片,板间USB-OTG传输。
    2. 完成电阻网络兼容FPGA的DPHY。(方案不行)速率不够
  4. 在考虑要不要HDMI!?

  5. 看番去了:吊带袜天使!!!

2025.8.15

  1. 正在寻找有没有高速的btb连接器!目前的打算是使用MC20901来传mipi信息 发现现在速度够了,70fps 1080p目前来说够了。
  2. 现在考虑的是要不把bank35改为3.3v供电,用电平转换芯片来给AD9361通信,然后嘻嘻就能在这加hdmi了。(现在想来没有必要,可以在后面的视频解码芯片那里加HDMI)
  3. 详细分析了电阻网络的可行性,并写了博客一篇低成本电阻网络兼容FPGA_DPHY的简要概括 - 蓝色的aoi - 博客园
  4. 突然发现CDN在国外,不用魔法有些JS传不到博客上,算了现在没时间弄。

2025.8.16

  1. 完善原理图接近尾声:
    1. 补充了FPGA电源的电容(100多个)
    2. 补充小排针用于选开机模式
    3. 叫ai评估了一下功耗:把检流电阻从大封装换成了0603封装50mΩ/0.5W,把二极管也换成了小封装的DSS34。
  2. 明天休假一天

关于电源

参考:FPGA上电时序

PS端
VCCPINT PS内部逻辑(内核)电源电压,最大不超过1.1V;一般设计采用1.0V (VCCPINT 1.0V)
VCCPAUX PS辅助电源电压,最大不超过2.0V;一般设计采用1.8V (VCCPAUX 1.8V)
VCCPLL PS PLL电源,PLL内部时钟供电电源,最大不超过2.0V;一般设计采用1.8V (VCCPLL 1.8V)
PS_VCCO PS_VCCO包括PS_VCCO_DDR、PS_VCCO_MIO I/O电源;一般设计采用1.5V (VDDR 1.5V) (MIO0 3.3V)(MIO1 1.8V)

PS端上电顺序:VCCPINT → VCCPAUX&VCCPLL → PS_VCCO(1.0v -> 1.8V -> 1.5v) 掉电顺序相反

PL端
VCCINT PL内部逻辑(内核)电源电压,最大不超过1.1V;一般设计采用1.0V (VCCINT 1.0V)
VCCBRAM PL块RAM电源电压;一般设计采用1.0V (VCCBRAM 1.0V)
VCCAUX PL辅助电源电压辅助电源;一般设计采用1.8V (VCCAUX 1.8V)
VCCO BANK电压【RSVDVCC tie to VCCO_0】 (Bank0 3.3V)(Bank35、Bank34 1.8V)(Bank13 3.3V)

其他:(VCCADC0 1.8V)(VCCBATT0 1.8V)


关于bank

参考:ZYNQ 硬件系统及BANK区域管理

PS bank
Bank500(3.3V) MIO0。硬件外设:(Flash)(调试串口)
Bank501(1.8V) MIO1。硬件外设:(TF卡)(USB2_OTG)(千兆网)
Bank502(1.5V) DDR
PL bank
Bank0 (3.3V) JTAG、复位、自检
Bank13(3.3V)(2.5V) 暂时未使用 摄像头
Bank34(1.8V) 电源IIC、AD9361(数据部分,时钟部分)
Bank35(1.8V) AD9361(数字控制部分)

还可细分为HP_BANK和HR_BANK


关于GND

​ 在网口、DDR、ZYNQ的某些地(GND和RSVDGND)等等地方使用了三角形的GND(数字地 (Digital Ground, DGND) ),而在USB、ZYNQ的ADCGND、电源等等地方上使用了三条杠的GND(模拟地 (Analog Ground, AGND)

  • 模拟地 :

    • AD9361 的所有GND引脚(包括AGND, DGND, GND_RF等)。
    • ZYNQ的ADC地 (GNDADC) 和ADC电源(VCCADC)的滤波电容地。
    • 为AD9361供电的LDO的GND。
    • AD9361的参考晶振的GND。
  • 数字地 :

    • ZYNQ 的绝大部分GND引脚(除了GNDADC)。
    • DDR3 的所有GND。
    • Flash 的GND。
    • TF卡 的GND。
    • USB PHY以太网PHY 的数字部分GND。
    • 所有开关电源的GND。

关于AD9361

电源部分

引脚号 助记符 描述与电压
核心电源 (1.3V)
B9 VDDA1P3_TX_LO 发射LO 1.3V电源输入。
B10 VDDA1P3_TX_VCO_LDO 发射VCO LDO 1.3V电源输入。连接到B9。
D2 VDDA1P3_RX_RF 接收器1.3V电源输入。连接到D3。
D3 VDDA1P3_RX_TX 1.3V电源输入。
E2 VDDA1P3_RX_LO 接收LO 1.3V电源输入。
E3 VDDA1P3_TX_LO_BUFFER 1.3V电源输入。
F2 VDDA1P3_RX_VCO_LDO 接收VCO LDO 1.3V电源输入。连接到E2。
F12 VDDD1P3_DIG 1.3V数字电源输入。
J3 VDDA1P3_RX_SYNTH 1.3V电源输入。
K3 VDDA1P3_TX_SYNTH 1.3V电源输入。
K4 VDDA1P3_BB 1.3V电源输入。
VCO 电源 (1.3V)
A11 VDDA1P1_TX_VCO 发射VCO电源输入。连接到B11。
G3 VDDA1P1_RX_VCO 接收VCO电源输入。仅将此引脚直接连接到G2。
数字接口电源 (可变)
H12 VDD_INTERFACE 1.2V至2.5V。用于数字I/O引脚的电源。LVDS模式下推荐1.8V;CMOS模式下常用1.8V2.5V
GPO/AUXDAC电源 (可变)
B8 VDD_GPO 2.5V至3.3V。用于AUXDAC和GPO引脚的电源。不使用时必须设为1.3V
模拟地 (GND)
A4, A6, B1, B2, B12, C2, C7-C12, F3, H2, H3, H6, J2, K2, L2, L3, L7-L12, M4, M6 VSSA 模拟地。
数字地 (GND)
D12, F7, F9, F11, G12, H7, H10, K12 VSSD 数字地。应与VSSA在PCB上连接到同一个接地平面

数字数据与控制接口

引脚号 助记符 描述 (CMOS/LVDS双功能)
数据端口 P0 (TX)
D7-D11, E7-E12, F8 P0_D[11:0] / TX_D[5:0] 数据端口0,双向(TDD)或发射(FDD)。CMOS下为12位总线,LVDS下为6位差分总线。
数据端口 P1 (RX)
H8, J7-J12, K7-K11 P1_D[11:0] / RX_D[5:0] 数据端口1,双向(TDD)或接收(FDD)。CMOS下为12位总线,LVDS下为6位差分总线。
时钟与帧信号
F10, G10 FB_CLK_P/N 输入 - 反馈时钟,用于锁存TX数据。
G11, H11 DATA_CLK_P/N 输出 - 数据时钟,BBP用此锁存RX数据。
G9, H9 TX_FRAME_P/N 输入 - 发射帧信号,指示TX数据有效。
G7, G8 RX_FRAME_P/N 输出 - 接收帧信号,指示RX数据有效。
SPI 接口
K6 SPI_ENB SPI使能输入 (低电平有效)。
J5 SPI_CLK SPI时钟输入。
J4 SPI_DI SPI串行数据输入。
L6 SPI_DO SPI串行数据输出 (4线模式) / 高阻态 (3线模式)。
状态机与同步控制
G6 ENABLE 控制输入,用于设备状态转换。
H4 TXNRX 状态机控制,选择TX/RX方向。
H5 SYNC_IN 多设备同步输入。
K5 RESETB 异步复位输入 (低电平有效)。

射频收发接口

引脚号 助记符 描述
接收输入 (RX Inputs)
M1, M2 RX1A_P/N 接收通道1,差分输入A。
H1, J1 RX1B_P/N 接收通道1,差分输入B (3GHz以上性能下降)。
K1, L1 RX1C_P/N 接收通道1,差分输入C (3GHz以上性能下降)。
A1, A2 RX2A_P/N 接收通道2,差分输入A。
E1, F1 RX2B_P/N 接收通道2,差分输入B (3GHz以上性能下降)。
C1, D1 RX2C_P/N 接收通道2,差分输入C (3GHz以上性能下降)。
发射输出 (TX Outputs)
M7, M8 TX1A_P/N 发射通道1,差分输出A。未使用时连接到1.3V。
M9, M10 TX1B_P/N 发射通道1,差分输出B。未使用时连接到1.3V。
A7, A8 TX2A_P/N 发射通道2,差分输出A。未使用时连接到1.3V。
A9, A10 TX2B_P/N 发射通道2,差分输出B。未使用时连接到1.3V。
外部本振 (External LO)
G1 RX_EXT_LO_IN 外部接收LO输入。未使用时连接到GND。
A12 TX_EXT_LO_IN 外部发射LO输入。未使用时连接到GND。
发射监控 (TX Monitor)
M5 TX_MON1 发射通道1功率监控器输入。
A5 TX_MON2 发射通道2功率监控器输入。

时钟与参考

引脚号 助记符 描述
主参考时钟
M11, M12 XTALP, XTALN 参考频率连接。可接晶体或外部时钟源。
时钟输出
J6 CLK_OUT 可配置的时钟输出。
偏置参考
L4 RBIAS 偏置输入参考。通过14.3 kΩ电阻接地。

辅助与通用I/O

引脚号 助记符 描述
辅助 ADC/DAC
L5 AUXADC 辅助ADC输入。未使用时连接到GND。
B3 AUXDAC1 辅助DAC 1输出。未使用时NC。
C3 AUXDAC2 辅助DAC 2输出。未使用时NC。
通用输入/输出 (GPIO)
C5, C6, D6, D5 CTRL_IN[3:0] 控制输入,用于手动增益/衰减控制。
D4, E4-E6, F4-F6, G4 CTRL_OUT[7:0] 可编程的控制输出。
B4-B7 GPO_[3:0] 3.3V兼容通用输出。
其他
C4 TEST/ENABLE 测试输入,正常操作时接地。
A3, M3 NC 无连接。

关于摄像头协议

IMX219属于2 lanes的MIPI_CSI。

CSI 是外设(如相机)和主机处理器之间的高速串行接口。

代码部分后续可以参考:7 Serises FPGA的MIPI采集实战

兼容MIPI_DPHY可以参考:7 Serises FPGA的MIPI DPHY 接口实现

此次采用低成本电阻网络实现兼容。

采用低成本电阻网络实现兼容

优化事项:

posted @ 2025-08-10 16:01  蓝色的aoi  阅读(246)  评论(6)    收藏  举报