Skip to content
Snippets Groups Projects
Commit 01004d6b authored by Philipp Spilger's avatar Philipp Spilger
Browse files

Add get_acausal_correlation function

Change-Id: I30f43e4d9fb7d279b38ff2290d3d7e73b25af45f
parent 921beaeb
No related branches found
No related tags found
No related merge requests found
...@@ -57,6 +57,24 @@ static inline void get_causal_correlation( ...@@ -57,6 +57,24 @@ static inline void get_causal_correlation(
); );
} }
static inline void get_acausal_correlation(
__vector uint8_t* first_half, __vector uint8_t* second_half, uint8_t row)
{
asm volatile(
// clang-format off
"fxvinx %[first_ac], %[ac_base], %[first_index]\n"
"fxvinx %[second_ac], %[acb_base], %[second_index]\n"
: [first_ac] "=qv" (*first_half),
[second_ac] "=qv" (*second_half)
: [ac_base] "r" (dls_acausal_base),
[acb_base] "r" (dls_acausal_base|dls_buffer_enable_mask),
[first_index] "r" (row*2),
[second_index] "r" (row*2+1)
: /* no clobber */
// clang-format on
);
}
static inline void reset_correlation(uint8_t row) static inline void reset_correlation(uint8_t row)
{ {
__vector uint8_t reset_vec; __vector uint8_t reset_vec;
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment