Hi,all:
I want to transfer data via hyperlink from DDR3 of DeviceA(tci6638k2k) to DDR3 of
DeviceB (another tci6638k2k).So I look into the examples from c6678 in pdk_C6678_1_0_0_17
and from tci6638k2k in pdk_keystone2_3_00_01_12.At the same time ,I have learn
some posts in e2e which are about hyperlink and hyperlink example.But I still have questions
to ask about that.
1.
In the hyperlink example,hyplnkLLDCfg.h
#define hyplnk_EXAMPLE_LOOPBACK
As to #define,we know that there are two modes which example supports.
one mode is loopback mode,the other is device to device mode.
readme.txt say like below:
This example can use HyperLink
either in loopback mode on a single board, or peer to peer with a second
device or board
It mean that loopback mode take place on a single board or device and device-to
-device mode take place between boards or devices.
So,my question is that why we need loopback on a single board.
As I understand,when you want to use hyperlink ,you of course want to use
the device-to-device mode other than loopback mode.The reason we use hyperlink
is that we want to make deviceA to communicate with deviceB via hyperlink.
If on a single board in loopback mode.what we can do ? I don't understand.
Maybe I make a mistake somewhere.
2.
About cpu token exchange and cpu block transfer.
I have also seen the difference between them.That example say that cpu token exchange
is synchronous and cpu block transfer is asynchronous .But I cannot understand that well.
what time we must use cpu token exchange?
what time we must use cpu block transfer ?
In my opinion,cpu block transfer mode is simple .you just need to send data to remote.you don't
have to wait remote and you don't have to sync with remote.But cpu tocken exchange is complex.
So,just from the view that it is easy or difficult .I select cpu block transfer .
May I ?Do I do a good choice or bad choice ?I don't know .
And as regard to my target that I have told at the beginning of the post(send data from deviceA to
deviceB).How can I select?
3.
The last question.As to the function hyplnkExampleIOCycle .
I see that by default hyplnkExampleIOCycle call cpu token exchange function firstly,and
then call the cpu block transfer function secondly.
Why ?
In my opinion,We just need call one function of them ,either you call cpu token exchange.
or you call cpu block transfer .But you cannot call all of them or call them at the same time.
I don't think it's necessary.Isn't it?