您好:
现在使用C6748芯片的MDIO模块进行数据的读写,MDC速率现在设置为50MHz;
想请教下:现在MDIO的读写速率分别最大是多少?在手册上没找到。
谢谢!
Tim ding:
C6748的主频为456MHz
Tony Tang:
在TRM手册上:
19.2.7.1.1 MDIO Clock GeneratorThe MDIO clock generator controls the MDIO clock based on a divide-down of the peripheral clock in theEMAC control module. The MDIO clock is specified to run up to 2.5 MHz, although typical operation wouldbe 1.0 MHz. Since the peripheral clock frequency is variable, the application software or driver controls thedivide-down amount. See your device-specific data manual for peripheral clock speeds.
在datasheet的 Table 6-105. Timing Requirements for MDIO Input (see Figure 6-52 and Figure 6-53)里也有提供。
Tim ding:
回复 Tony Tang:
Tony:
刚看了手册,mdio的input速率最高为2.5MHz,output速率最低为10MHz
Tony Tang:
回复 Tim ding:
啊,手册哪写的?MDIO就一根时钟线,一根数据线,MDIO时钟最高支持到2.5MHz,怎么输入输出还有不同的?
Tim ding:
回复 Tony Tang:
Tony:
1、MDIO不是可读写的吗?上图中标识的不是说明输入操作最高为2.5MHz,输出操作最低为10MHz?
2、代码中,我参照C6748_Startware_1_20_04_01/examples/evm6748/enet_echo来写,其中MDIOInit()来初始化MDIO接口,
MDIOInit(unsigned int baseAddr, unsigned int mdioInputFreq, unsigned int mdioOutputFreq)的参数:
baseAddr为MDIO的基地址;mdioInputFreq为input频率,例程定义为75000000,即75MHz;mdioOutputFreq为output频率,定义为1000000,即1MHz。
这不就说明MDIO的Input速率为75MHz,Output速率为1MHz吗?
Tony Tang:
回复 Tim ding:
时钟是参数1,下面那个100ns是参数7,是数据的delay时间。
MDIO输入时钟指的是系统提供给MDIO模块的时钟,不是MDIO接口上数据传输的时钟。
Tim ding:
回复 Tony Tang:
Tony:
1、 用示波器观察过MDC为1MHz,就是说MDIO的速率为1MHz,也就是读写的速率都是1MHz?
2、MDIOInit(unsigned int baseAddr, unsigned int mdioInputFreq, unsigned int mdioOutputFreq)函数中
参数mdioInputFreq具体有什么用?
C6748主频为300MHz,这边是按照手册PLL四分频得到的mdioInputFreq为75MHz。
xiaowei peng:
回复 Tony Tang:
c6748工作在456MHz时,用哪一款电源芯片可以供电,能推荐一款不
Tony Tang:
回复 xiaowei peng:
为什么这个问题发到这个贴子下面呢?好象没什么联系啊。自己新起一个贴子吧。