Digital compensator design tool for DSC

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Digital compensator design tool for DSC

652件の閲覧回数
LZhang1
Contributor I

I am new to NXP DSC digital power products;
I would like to ask if NXP provides tools for digital compensator design (loop compensation)?
Thank you very much!

MC56F80xxx 

タグ(1)
0 件の賞賛
返信
8 返答(返信)

630件の閲覧回数
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

Frankly speaking, I am not very clear about your question.

do you want to design a buck DC/Dc converter and using the peaking current mode to control?

Pls refer to the an4716 and check if it is what you expected.

https://www.nxp.com.cn/docs/en/application-note/AN4716.pdf

Hope it can help you

BR

Xiangjun Rong

0 件の賞賛
返信

618件の閲覧回数
LZhang1
Contributor I

Dear @xiangjun_rong 

Tks for your reply.

refer below picture, Equation 19, how to get B2、B1、B0、A2、A1、A0;

Do you need to consider decimal floating-point to fixed-point conversion? MC56F807xx series with FPU function, can be used directly?
Does MC56F807xx need to consider the interrupt delay in digital calculation, or the delay caused by other functional modules, and finally combine it into a phase delay? How do I feed back to Ax\Bx?

and What are the interactions in the adjustment process?

Is there an intuitive display tool? For example, you can plot a Bode plot;

Or can we only invert the s domain every time we change the values of Ax and Bx, and then draw the graph?

I am a little confused about this, and I would like to ask you to help me sort out and answer questions.

 

LZhang1_0-1723758734238.png

 

0 件の賞賛
返信

601件の閲覧回数
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

Q1)Do you need to consider decimal floating-point to fixed-point conversion? MC56F807xx series with FPU function, can be used directly?

>>>>>I suppose that you use fslesl library for the IIR filter:

https://www.nxp.com/design/design-center/software/embedded-software/real-time-control-embedded-softw...

For the DSP56800E and DSP56800EX core, the frac16 (fixed point) format is used. For the DSP56800EF core, it appears that the library only supports frac16/frac32 (fixed point) format rather than float format.


Q2)Does MC56F807xx need to consider the interrupt delay in digital calculation, or the delay caused by other functional modules, and finally combine it into a phase delay? How do I feed back to Ax\Bx?

and What are the interactions in the adjustment process?

>>>>>From DSC perspective, the DSC only computes an IIR for each new coming x(n) data, the delay is NOT considered.

Q3)Is there an intuitive display tool? For example, you can plot a Bode plot;

There is a QE design lite tools, but there is not a website to download. After you install the CodeWarrior for DSP56800E ver8.3, the tools will be installed automatically.

 

Q4)Or can we only invert the s domain every time we change the values of Ax and Bx, and then draw the graph?

The Ax/Bx is only dependent on the transfer function in S domain and the sampling rate, after the transfer function is determined, sampling rate is determined, Ax/Bx are determined.

Hope it can help you

BR

Xiangjun Rong

0 件の賞賛
返信

555件の閲覧回数
Laughing_Sir
Contributor I

Dear Rong

Q1)Do you need to consider decimal floating-point to fixed-point conversion? MC56F807xx series with FPU function, can be used directly?

>>>>>I suppose that you use fslesl library for the IIR filter:

https://www.nxp.com/design/design-center/software/embedded-software/real-time-control-embedded-softw...

For the DSP56800E and DSP56800EX core, the frac16 (fixed point) format is used. For the DSP56800EF core, it appears that the library only supports frac16/frac32 (fixed point) format rather than float format.

【A】:

from https://www.nxp.com.cn/docs/en/release-note/DSCRTCESL47RN.pdf ,I find below picture for your reference. 

BTW, could you update/provide the documentation of algorithms User Guide for 56800EF? Currently, only 58600EF software *.exe files are available on the official website.


Q2)Does MC56F807xx need to consider the interrupt delay in digital calculation, or the delay caused by other functional modules, and finally combine it into a phase delay? How do I feed back to Ax\Bx?

and What are the interactions in the adjustment process?

>>>>>From DSC perspective, the DSC only computes an IIR for each new coming x(n) data, the delay is NOT considered.

【A】:I mean, does NXP have a good idea to solve/compensate for the digital delay in this part of the loop?

Laughing_Sir_0-1723988904062.png

 

0 件の賞賛
返信

524件の閲覧回数
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

I agree with you that the DSP56800EF Real-Time Control Embedded Software
Libraries release 4.7 supports 16-bit and 32-bit fixed-point and floating-point types, but the rtcesl documentation has not be updated yet.

BR

XiangJun Rong

0 件の賞賛
返信

370件の閲覧回数
Laughing_Sir
Contributor I

Dear @xiangjun_rong 

May I ask if I can describe the question in Chinese?

I learned AN4716.pdf, which mentioned the 2p2z digital compensation loop, and then you can use, reference 56800EF_RTCESL_4.7->DSP56800EFPCLIBUG; page12, use the function PCLIB_Ctrl2P2Z_F16

Question 1: f16DelayX1, f16DelayX2, f16DelayY1 and f16DelayY2 are mentioned in 2.1.2. How should I understand them?

Problem 2: The equation described by reference to 2.3 GDFLIB_FilterIIR2 in 56800EF_RTCESL_4.7->DSP56800EFGDLIBUG is equivalent to 2p2z(PCLIB_Ctrl2P2Z_F16); So, can I use GDFLIB_FilterIIR2_F16 instead of PCLIB_Ctrl2P2Z_F16? Are the two functions equivalent, or is there any special optimization of PCLIB function PCLIB_Ctrl2P2Z_F16?

Question 3: Following the previous question 2, GDLIB provides the GDFLIB_FilterIIR2_FLT function, a floating-point IIR2 function, can I use it?

Question 4: Is it faster to use floating-point IIR functions than fixed-point ones? Based on DSP56800EF Core

我学习了一下AN4716.pdf,里面提到了2p2z 数字补偿环路,然后可以使用,参考56800EF_RTCESL_4.7->DSP56800EFPCLIBUG;page12,使用函数PCLIB_Ctrl2P2Z_F16

问题1:在2.1.2中提到了f16DelayX1、f16DelayX2、f16DelayY1、f16DelayY2 这4个参数,我应该如何理解呢?

问题2:参考56800EF_RTCESL_4.7->DSP56800EFGDLIBUG中的2.3 GDFLIB_FilterIIR2描述的方程和2p2z(PCLIB_Ctrl2P2Z_F16)是等价的;那么,我是否可以使用GDFLIB_FilterIIR2_F16 来替换PCLIB_Ctrl2P2Z_F16呢? 两个函数是否等价,或者说PCLIB中的函数PCLIB_Ctrl2P2Z_F16有啥特别的优化吗?

问题3:接着上一个问题2,在GDLIB中,提供了GDFLIB_FilterIIR2_FLT 函数,浮点型的IIR2 函数,我是否可以使用呢?

问题4:请教一下,使用浮点型IIR 函数,是否会比定点型计算更快呢?基于DSP56800EF内核

Laughing_Sir_0-1724924245184.png

Laughing_Sir_1-1724924816683.png

 

 

0 件の賞賛
返信

307件の閲覧回数
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

我学习了一下AN4716.pdf,里面提到了2p2z 数字补偿环路,然后可以使用,参考56800EF_RTCESL_4.7->DSP56800EFPCLIBUG;page12,使用函数PCLIB_Ctrl2P2Z_F16

问题1:在2.1.2中提到了f16DelayX1、f16DelayX2、f16DelayY1、f16DelayY2 这4个参数,我应该如何理解呢?

>>>>>这几个是变量, 不是参数。

比如输入序列是x0 ,x1, x2, x3, x4 ,x5, x6,...

比如输出序列是y0, y1, y2, y3, y4, y5, y6,....

y6=a1*y5+a2*y4+b2*x4+b1*x5+b0*x6. 在此情形下,这是对应关系:

f16DelayX1 is x5

f16DelayX2 is x4

f16DelayY1 is y5

f16DelayY2 is y4

 

问题2:参考56800EF_RTCESL_4.7->DSP56800EFGDLIBUG中的2.3 GDFLIB_FilterIIR2描述的方程和2p2z(PCLIB_Ctrl2P2Z_F16)是等价的;那么,我是否可以使用GDFLIB_FilterIIR2_F16 来替换PCLIB_Ctrl2P2Z_F16呢? 两个函数是否等价,或者说PCLIB中的函数PCLIB_Ctrl2P2Z_F16有啥特别的优化吗?

>>>>由S域到Z域用到了双线性变化,因此GDFLIB_FilterIIR2和2p2z(PCLIB_Ctrl2P2Z_F16)是等价的

问题3:接着上一个问题2,在GDLIB中,提供了GDFLIB_FilterIIR2_FLT 函数,浮点型的IIR2 函数,我是否可以使用呢?

>>>>>>>>因为DSP56F800EF内核包含浮点协处理器, 你可以用浮点型的IIR2 函数。

问题4:请教一下,使用浮点型IIR 函数,是否会比定点型计算更快呢?基于DSP56800EF内核

>>>>>>这个我不是很清楚, 我没有比较的数据

xiangjun_rong_0-1725518471064.png

谢谢

XiangJun rong

 

0 件の賞賛
返信

322件の閲覧回数
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

I have been reading the doc, will answer you later.

BR

XiangJun Rong

0 件の賞賛
返信