TMS320C6678DSP SRIO通道和频率设置

本文详细介绍了如何根据不同的参考时钟(250M和312.5M)配置TMS320C6678 DSP的SRIO为1X或4X模式,并达到3.125Gbps速率。内容涵盖参考时钟设置、预分频、PLL倍频、通道数选择以及相关寄存器和CSL API的使用。
摘要由CSDN通过智能技术生成

基于很多朋友问DSP的SRIO具体通道怎样配置为1X,2X,4X,并且怎样设置相应速率的情况,本文给出几个实际配置例子,大家可以根据相应例子对照自身需求进行修改,基础例程仍旧是我之前在SRIO系列博客中提到的srio_loopback.c。

6678 参考时钟是250M时,怎样将SRIO配置为4X,3.125G

详细参数:

参考时钟:250M

相关寄存器:PRESCALAR_SRV_CLK(0x0291BD30)
描述:通过该寄存器能够设置参考时钟,通过以下CSL API设置,

// Set the LLM Port IP Prescalar Clock to the default value
CSL_SRIO_SetLLMPortIPPrescalar(hSrio, prescalar_Clock);

参数prescalar_Clock的计算方法如下,其中[]的意思是取最近的整数

p r e s c a l a r C l o c k = [ r e f c l k ÷ 10 ] prescalarClock = [refclk÷10] prescalarClock=[refclk÷10]

所以此处的CSL API应该如下:

CSL_SRIO_SetLLMPortIPPrescalar(hSrio, 0x19);
预分频:223.7 - 447.4MHz

相关寄存器:Peripheral Settings Control Register (RIO_PER_SET_CNTL)(0x02900014)

由于输入时钟为250MHz,根据文档sprugw1b.pdf中的Table3-19,得出预分频设置为223.7-447.4最恰当。使用以下CSL API完成:

CSL_SRIO_SetPrescalarSelect (hSrio, 4);

! 注意:预分频对时钟影响不大,一般都可以将该参数默认设置为0

PLL倍频

相关寄存器:SerDes Macro Configuration Register (SRIO_SERDES_CFGPLL — 0x02620360)

srio波特率(Line Rate)设置遵循以下公式:
s r i o B a u n d = r e f C l k ∗ M P Y ∗ R a t e srioBaund = refClk*MPY*Rate srioBaund=refClkMPYRate
其中$srioBaund 为 波 特 率 , 本 工 程 中 为 3.125 G b p s , 为波特率,本工程中为3.125Gbps,

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值