0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MPSoC设计中USB Phy的复位信号

王彬 来源:zh咖啡不加糖 作者:zh咖啡不加糖 2022-08-02 09:38 次阅读

在Xilinx的ZCU102和ZCU106单板设计中,使用了管脚PS_MODE1作为外部USB Phy的复位信号。在MPSoC的文档ug1085和ug1087中,关于PS_MODE1的信息比较少。下面是更详细的描述。

1. UG1085文档
按UG1085,PS_MODE1本来作为MPSoC的启动模式管脚。

poYBAGGYHxGAWWZHAAID1i6OFRY298.png

UG1085也提到,PS_MODE1/PS_MODE2也可以作为外部USB Phy的复位信号。

poYBAGGYHxKAPCCGAAIaDcrYos0459.png

PG201也提到了外部USB Phy的复位信号的相关设置。

pYYBAGGYHxOAJKe7AABrNNyo7xE922.png

2. Vivado工具
在Vivado里,可以指定外部USB Phy的复位信号的来源和极性。

poYBAGGYHxWAZ2JbAAB8Y4jjj58410.png

3. USB Phy的复位信号
USB Phy是否需要复位信号,由外部的Phy决定。一般来说,单板复位后,建议把外部USB Phy复位一次,保证USB Phy处于干净的状态。

MPSoC既可以使用MIO管脚、也可以使用PS_MODE(BOOT_PIN)管脚来作为USB Phy的复位信号。

3.1. 使用MIO管脚作为USB Phy复位信号
MPSoC有两个USB控制器。如果都使用,外部有两个USB Phy。使用MIO管脚作为USB Phy复位信号时,可以两个USB Phy共用一个MIO(Shared MIO pin);也可以每个USB Phy使用一个MIO(Separate MIO pin)。

在Vivado里,配置对应的MIO作为对应的USB Phy复位信号。Vivado导出HDF/XSA文件时,会导出这些信息。

同时,在device tree里,添加下列字段。

xlnx,phy-reset-gpio = < &gpio GPIO_NUMBER GPIO_ACTIVE_HIGH/ GPIO_ACTIVE_LOW>;

USB驱动程序里,会查找参数“xlnx,phy-reset-gpio”。如果找到,会调用Linux的GPIO框架来复位外部USB Phy。

3.2. 使用PS_MODE管脚作为USB Phy复位信号
如果使用PS_MODE管脚(BOOT_PIN),则可以节约MIO管脚;在device tree里,也不用添加参数。

FSBL里,会使用PS_MODE的对应寄存器,复位外部USB Phy。文件psu_init.c里,可能有下列代码。

/*##################################################################### */

    /*
    * BOOT PIN LOW
    */
    /*
    * Register : BOOT_PIN_CTRL @ 0XFF5E0250

    * Value driven onto the mode pins, when out_en = 1
    *  PSU_CRL_APB_BOOT_PIN_CTRL_OUT_VAL                           0X0

    * When 0, the pins will be inputs from the board to the PS. When 1, the PS
    *  will drive these pins
    *  PSU_CRL_APB_BOOT_PIN_CTRL_OUT_EN                            0X2

    * Used to control the mode pins after boot.
    * (OFFSET, MASK, VALUE)      (0XFF5E0250, 0x00000F0FU ,0x00000002U)
    */
	PSU_Mask_Write(CRL_APB_BOOT_PIN_CTRL_OFFSET,
		0x00000F0FU, 0x00000002U);
/*##################################################################### */

    /*
    * ADD 5US DELAY
    */
		mask_delay(5);
		
/*##################################################################### */

    /*
    * BOOT PIN HIGH
    */
    /*
    * Register : BOOT_PIN_CTRL @ 0XFF5E0250

    * Value driven onto the mode pins, when out_en = 1
    *  PSU_CRL_APB_BOOT_PIN_CTRL_OUT_VAL                           0X2

    * When 0, the pins will be inputs from the board to the PS. When 1, the PS
    *  will drive these pins
    *  PSU_CRL_APB_BOOT_PIN_CTRL_OUT_EN                            0X2

    * Used to control the mode pins after boot.
    * (OFFSET, MASK, VALUE)      (0XFF5E0250, 0x00000F0FU ,0x00000202U)
    */
	PSU_Mask_Write(CRL_APB_BOOT_PIN_CTRL_OFFSET,
		0x00000F0FU, 0x00000202U);
/*##################################################################### */

4. 单板定制
虽然ZCU102和ZCU106单板都使用了管脚PS_MODE1作为外部USB Phy的复位信号。客户的单板,可以自由选择PS_MODE和MIO作为外部USB Phy的复位信号。

5. 输出模式
PS_MODE1是totem-pole驱动,不是open-collector驱动。

6. 参考文档
SR #10480757 ZynqUS+ USB PHY reset feature

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Xilinx
    +关注

    关注

    71

    文章

    2172

    浏览量

    122346
  • MPSoC
    +关注

    关注

    0

    文章

    199

    浏览量

    24346
  • 复位信号
    +关注

    关注

    0

    文章

    54

    浏览量

    6383
收藏 人收藏

    评论

    相关推荐

    复位信号是什么意思?复位信号的作用?详解Xilinx FPGA复位信号那些事

    复位信号几乎是除了时钟信号外最常用的信号了,几乎所有数字系统在上电的时候都会进行复位,这样才能保持设计者确定该系统的系统模式的状态,以便于更
    的头像 发表于 07-27 09:48 9046次阅读
    <b class='flag-5'>复位</b><b class='flag-5'>信号</b>是什么意思?<b class='flag-5'>复位</b><b class='flag-5'>信号</b>的作用?详解Xilinx FPGA<b class='flag-5'>复位</b><b class='flag-5'>信号</b>那些事

    Zynq UltraScale + MPSoC USB 3.0 CDC器件类设计

    设备模式下使用Zynq®UltraScale+™MPSoC USB 3.0控制器,并使用批量传输类型使用USB 3.0进行串行通信设备抽象。USB组件
    发表于 01-03 09:59

    如何调试Zynq UltraScale+ MPSoC VCU DDR控制器

    Xilinx DDR 控制器。  DDR PHY 与电路板调试:  Zynq UltraScale+ MPSoC VCU DDR 控制器采用 MIG PHY。  这意味着您可以使用标准 MIG 示例设计来验证您
    发表于 01-07 16:02

    Gowin USB HSIC PHY IP用户使用指南

    Gowin® USB HSIC PHY IP 用户指南主要内容包括功能简介、信号定义、功能描述、界面配置,旨在帮助用户快速了解 Gowin USB HSIC
    发表于 09-30 06:05

    什么是usb phy

    什么是usb phy USB接口网卡 在目前的电脑上很难找到没有USB接口(Universal Serial Bus,通用串行总线)的,USB
    发表于 07-02 10:46 2.9w次阅读

    基于ZU+系列MPSoC芯片的USB3.0/2.0接口硬件设计

    ZU+系列MPSoC要实现USB3.0/2.0的全部功能,需要同时使用MIO和GTR。因为GTR接口中的USB接口只支持USB3.0,对USB
    发表于 03-16 09:26 6667次阅读
    基于ZU+系列<b class='flag-5'>MPSoC</b>芯片的<b class='flag-5'>USB</b>3.0/2.0接口硬件设计

    Xilinx复位信号设计原则

    复位信号设计的原则是尽量不包含不需要的复位信号,如果需要,考虑使用局部复位和同步复位
    发表于 10-27 10:09 1963次阅读
    Xilinx<b class='flag-5'>复位</b><b class='flag-5'>信号</b>设计原则

    MPSoC SWDT在Standalone下的应用有哪些?

    工程师根据FSBL的main.c的InitWatchDog( ),添加代码后,依然不能使MPSoC的PS复位
    的头像 发表于 09-19 11:15 1651次阅读
    <b class='flag-5'>MPSoC</b> SWDT在Standalone下的应用有哪些?

    ZCU10MPSoC对DDR复位信号设计

    休眠,就从DDR读出系统状态,恢复系统。 MPSoC启动时,它的DDR控制器会驱动DDR的复位信号,有可能破坏DDR里的数据。为了避免这种情况,需要对DDR复位
    的头像 发表于 11-04 17:02 2903次阅读
    ZCU10<b class='flag-5'>中</b><b class='flag-5'>MPSoC</b>对DDR<b class='flag-5'>复位</b><b class='flag-5'>信号</b>设计

    FPGA和USB3.0通信-USB3.0 PHY简介

    可以和FPGA搭配使用的USB3.0 PHY芯片 通过之前的介绍FPGA和USB3.0通信-USB3.0协议介绍,我们大致了解到USB3.0
    的头像 发表于 11-09 09:36 9038次阅读
    FPGA和<b class='flag-5'>USB</b>3.0通信-<b class='flag-5'>USB</b>3.0 <b class='flag-5'>PHY</b>简介

    FPGA和USB3.0通信-USB3.0 PHY介绍

    可以和FPGA搭配使用的USB3.0 PHY芯片通过之前的介绍
    发表于 12-20 19:11 34次下载
    FPGA和<b class='flag-5'>USB</b>3.0通信-<b class='flag-5'>USB</b>3.0 <b class='flag-5'>PHY</b>介绍

    Gowin USB HSIC PHY IP用户指南

    电子发烧友网站提供《Gowin USB HSIC PHY IP用户指南.pdf》资料免费下载
    发表于 09-15 10:57 2次下载
    Gowin <b class='flag-5'>USB</b> HSIC <b class='flag-5'>PHY</b> IP用户指南

    FPGA设计使用复位信号应遵循原则

    FPGA设计几乎不可避免地会用到复位信号,无论是同步复位还是异步复位。我们需要清楚的是复位
    发表于 03-30 09:55 1409次阅读

    MBIST逻辑的复位信号怎么来的?

    jtag端口的复位信号jtag_trst用于复位TAP状态机模块,该复位信号可选。
    的头像 发表于 05-25 15:09 1055次阅读
    MBIST逻辑的<b class='flag-5'>复位</b><b class='flag-5'>信号</b>怎么来的?

    USB电气信号复位与设备速率识别

    复位 从状态切换图上看,一个 USB 设备连接后,它将会被供电,然后被复位。当软件出错时,我们也可以发出复位信号重新驱动设备。 那么,
    的头像 发表于 07-20 10:05 1915次阅读
    <b class='flag-5'>USB</b>电气<b class='flag-5'>信号</b><b class='flag-5'>复位</b>与设备速率识别