This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4VL-Q1: Learning TDA4 SoC chip

Part Number: TDA4VL-Q1

I am very new to this SoC world. So far I was doing VHDL /Verilog/SystemVerilog. Its now I need to learn TDA4 for a project. My work will be mainly to receive data and process it using DSP part of the chip and send it out. The issue is, I dont have any prior DSP, ARM programing experience. 

If TI provides any such training? Or is there anyone who can guid where to start from? I am also ready to pay for the training. 

All kinds of inputs are welcome.

  • Hi,

    We currently don't have training material as such, however to get started on dsp programming you can refer to Compiler User Guide.

    https://www.ti.com/lit/ug/spruig8h/spruig8h.pdf?ts=1681364576153&ref_url=https%253A%252F%252Fwww.ti.com%252Ftool%252Fdownload%252FC7000-CGT%252F3.0.0.STS

    Regards,

    Pratik

  • Hello Pratik.

    Can you please guide how this will help me learning TDA and SoCs?

  • Hello Pratik.

    Can you please guide how this will help me learning TDA and SoCs?

  • Hi,

    We hope you have gone through the above shared pdf link thoroughly.

    Under Compiler User Guide, there are code snippets available that will illustrate how to program SoC and its components.

    Adding one small example for your better understanding purpose.

    Example I :

    4.14 Streaming Engine and Streaming Address Generator <refer 4.14 from user guide>

    This section talks about what are streaming engines and Streaming Address Generators and how they can be used for data transfer operations.

    There are illustrative code snippets available on this as well, for example to open new a stream using SA 

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    // OPEN THE STREAMS, SA0 AND SA1
    __SA0_OPEN(params);
    __SA1_OPEN(params);
    // COPY DATA FROM *(src_addr+SA1) TO *(dst_addr+SA0)
    for (I0 = 0; I0 < 8; I0++)
    {
    // COMPILER MATCHES VECTOR LOAD AND STORE FOR FOUR WORD
    DATA
    *__SA0ADV(uint8, dst_addr) = *__SA1ADV(uint8, src_addr);
    }
    // CLOSE THE STREAMS
    __SA0_CLOSE();
    __SA1_CLOSE();
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
     

    We recommend to follow these code snippets along with technical concept elaboration going ahead to learn more about SoC programming.

    Regards,

    Pratik