I want to configure my McBSPs in the GUI, but I can't figure out how to install the CSL so that they show up when I open the DSP/BIOS configuration file (gconf). Does anybody have any suggestions?
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.
I want to configure my McBSPs in the GUI, but I can't figure out how to install the CSL so that they show up when I open the DSP/BIOS configuration file (gconf). Does anybody have any suggestions?
CSL GUI configuration was a feature of DSP/BIOS. However, that feature was dropped from DSP/BIOS after 4.90.
Ouch! That's one of the main reasons chose a TI DSP for my latest project. I didn't technically need a DSP, but on past projects the GUI CSL made it really easy to get started and try various what-ifs. Is TI losing their edge, or their will to compete, or anything like that?
JohnAtANS said:Ouch! That's one of the main reasons chose a TI DSP for my latest project.
Sorry about that. Depending on what device you're using, you might still be able to use DSP/BIOS 4.90 for graphical config. However, the recommended method is to use the register macros:
snippet of main_mcbsp1.c from CSL said:MCBSP_SPCR1_RMK(
MCBSP_SPCR1_DLB_ON, /* DLB = 1 */
MCBSP_SPCR1_RJUST_RZF, /* RJUST = 0 */
MCBSP_SPCR1_CLKSTP_DISABLE, /* CLKSTP = 0 */
MCBSP_SPCR1_DXENA_NA, /* DXENA = 0 */
MCBSP_SPCR1_ABIS_DISABLE, /* ABIS = 0 */
MCBSP_SPCR1_RINTM_RRDY, /* RINTM = 0 */
0, /* RSYNCER = 0 */
MCBSP_SPCR1_RRST_DISABLE /* RRST = 0 */
)
You can download the 55x CSL here:
JohnAtANS said:Ouch! That's one of the main reasons chose a TI DSP for my latest project. I didn't technically need a DSP, but on past projects the GUI CSL made it really easy to get started and try various what-ifs. Is TI losing their edge, or their will to compete, or anything like that?
Brad Griffis said:Ouch! That's one of the main reasons chose a TI DSP for my latest project.
Sorry about that. Depending on what device you're using, you might still be able to use DSP/BIOS 4.90 for graphical config. However, the recommended method is to use the register macros:
snippet of main_mcbsp1.c from CSL said:MCBSP_SPCR1_RMK(
MCBSP_SPCR1_DLB_ON, /* DLB = 1 */
MCBSP_SPCR1_RJUST_RZF, /* RJUST = 0 */
MCBSP_SPCR1_CLKSTP_DISABLE, /* CLKSTP = 0 */
MCBSP_SPCR1_DXENA_NA, /* DXENA = 0 */
MCBSP_SPCR1_ABIS_DISABLE, /* ABIS = 0 */
MCBSP_SPCR1_RINTM_RRDY, /* RINTM = 0 */
0, /* RSYNCER = 0 */
MCBSP_SPCR1_RRST_DISABLE /* RRST = 0 */
)
You can download the 55x CSL here:
http://focus.ti.com/docs/toolsw/folders/print/sprc133.html
[/quote]
Related: Why does TI use register macros instead of C bitfields? Bit fields were designed into C specifically to support this kind of thing.
Inquiring minds want to know.
DSP said:Related: Why does TI use register macros instead of C bitfields? Bit fields were designed into C specifically to support this kind of thing.
It varies by processor. The TI F28x line of processors utilizes bitfields. It is of this format:
<Peripheral>.regs.<register>.bits.<field> = <value>;
The downside to this format is that people tend to write a statement like the one above for every single bitfield. This in turn produces a read-modify-write operation for every single access. This bloats the code and causes additional cycle overhead. That same F28x code also offers a method like this:
<Peripheral>.regs.<register>.all = <value>;
With the above code you can so a single write to the register to set all the fields at once. This is much more compact.
If you look at our CSL 2.x code for c5000/c6000 it is entirely based on macros. If you look at some of the CSL 3.x code the registers themselves are available as a C structure though the bitfields are accessible through macros.
So depending on the processor the code will look a little different.
Brad