Streaming chanend vs chan vs chanend

If you have a simple question and just want an answer.
Bayanaa
Active Member
Posts: 33
Joined: Fri Feb 07, 2014 3:03 pm

Streaming chanend vs chan vs chanend

Post by Bayanaa »

I am confusing about Streaming chanend, chan and chanend. I have a DJ Kit, wanna apply dsp(such as filter) I referred app_slicekit_biquad source codes to my project. But these code uses streaming chanend, But my code app_usb_aud_sk1_su1 main.xc uses chan for audio, So I am confusing here, Or is there any way to convert through these channels between them?

 

Pls help me ^^



User avatar
infiniteimprobability
XCore Legend
Posts: 1126
Joined: Thu May 27, 2010 10:08 am

Post by infiniteimprobability »

A normal channel end sets up and closes the connection each time data is transferred.

A streaming channel end sets up the connection, and keeps it open within the scope of the function.

It's a bit like packet switched vs. circuit switched. It means a streaming chan is faster (although both are pretty fast) due to not having overhead of setup and close, but it occupies a route through the switch. This is not an issue on a single tile where you are only limited by chanends count, but in dual tile systems you typically get only 4 paths from tile to tile, so streaming channels should be used cautiously across tiles. The DJ kit uses single tile, so streaming chan use is fine.

The protocol is different so you cannot mix streaming/no streaming channel end types.