diff options
author | rihab kouki <rihab.kouki@st.com> | 2020-07-28 11:24:49 +0100 |
---|---|---|
committer | rihab kouki <rihab.kouki@st.com> | 2020-07-28 11:24:49 +0100 |
commit | 96d6da4e252b06dcfdc041e7df23e86161c33007 (patch) | |
tree | a262f59bb1db7ec7819acae435f5049cbe5e2354 /docs/DSP/html/group__CmplxByCmplxMult.html | |
parent | 9f95ff5b6ba01db09552b84a0ab79607060a2666 (diff) | |
download | st-cmsis-core-lowfat-master.tar.gz st-cmsis-core-lowfat-master.tar.bz2 st-cmsis-core-lowfat-master.zip |
Diffstat (limited to 'docs/DSP/html/group__CmplxByCmplxMult.html')
-rw-r--r-- | docs/DSP/html/group__CmplxByCmplxMult.html | 82 |
1 files changed, 38 insertions, 44 deletions
diff --git a/docs/DSP/html/group__CmplxByCmplxMult.html b/docs/DSP/html/group__CmplxByCmplxMult.html index 05c9277..850f750 100644 --- a/docs/DSP/html/group__CmplxByCmplxMult.html +++ b/docs/DSP/html/group__CmplxByCmplxMult.html @@ -32,7 +32,7 @@ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td> <td style="padding-left: 0.5em;"> <div id="projectname">CMSIS-DSP -  <span id="projectnumber">Version 1.5.2</span> +  <span id="projectnumber">Version 1.7.0</span> </div> <div id="projectbrief">CMSIS DSP Software Library</div> </td> @@ -116,40 +116,40 @@ $(document).ready(function(){initNavTree('group__CmplxByCmplxMult.html','');}); <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> -<tr class="memitem:ga14b47080054a1ba1250a86805be1ff6b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CmplxByCmplxMult.html#ga14b47080054a1ba1250a86805be1ff6b">arm_cmplx_mult_cmplx_f32</a> (<a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> *pSrcA, <a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> *pSrcB, <a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> *pDst, uint32_t numSamples)</td></tr> -<tr class="memdesc:ga14b47080054a1ba1250a86805be1ff6b"><td class="mdescLeft"> </td><td class="mdescRight">Floating-point complex-by-complex multiplication. <a href="#ga14b47080054a1ba1250a86805be1ff6b">More...</a><br/></td></tr> -<tr class="separator:ga14b47080054a1ba1250a86805be1ff6b"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:ga67e96abfc9c3e30efb70a2ec9d0fe7e8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CmplxByCmplxMult.html#ga67e96abfc9c3e30efb70a2ec9d0fe7e8">arm_cmplx_mult_cmplx_q15</a> (<a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> *pSrcA, <a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> *pSrcB, <a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> *pDst, uint32_t numSamples)</td></tr> -<tr class="memdesc:ga67e96abfc9c3e30efb70a2ec9d0fe7e8"><td class="mdescLeft"> </td><td class="mdescRight">Q15 complex-by-complex multiplication. <a href="#ga67e96abfc9c3e30efb70a2ec9d0fe7e8">More...</a><br/></td></tr> -<tr class="separator:ga67e96abfc9c3e30efb70a2ec9d0fe7e8"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:ga1829e50993a90742de225a0ce4213838"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CmplxByCmplxMult.html#ga1829e50993a90742de225a0ce4213838">arm_cmplx_mult_cmplx_q31</a> (<a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> *pSrcA, <a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> *pSrcB, <a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> *pDst, uint32_t numSamples)</td></tr> -<tr class="memdesc:ga1829e50993a90742de225a0ce4213838"><td class="mdescLeft"> </td><td class="mdescRight">Q31 complex-by-complex multiplication. <a href="#ga1829e50993a90742de225a0ce4213838">More...</a><br/></td></tr> -<tr class="separator:ga1829e50993a90742de225a0ce4213838"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gae221504b01e4abfe5f335eafd801b4ed"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CmplxByCmplxMult.html#gae221504b01e4abfe5f335eafd801b4ed">arm_cmplx_mult_cmplx_f32</a> (const <a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> *pSrcA, const <a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> *pSrcB, <a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> *pDst, uint32_t numSamples)</td></tr> +<tr class="memdesc:gae221504b01e4abfe5f335eafd801b4ed"><td class="mdescLeft"> </td><td class="mdescRight">Floating-point complex-by-complex multiplication. <a href="#gae221504b01e4abfe5f335eafd801b4ed">More...</a><br/></td></tr> +<tr class="separator:gae221504b01e4abfe5f335eafd801b4ed"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga683b32a91cffbf021f58ace5a62904e8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CmplxByCmplxMult.html#ga683b32a91cffbf021f58ace5a62904e8">arm_cmplx_mult_cmplx_q15</a> (const <a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> *pSrcA, const <a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> *pSrcB, <a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> *pDst, uint32_t numSamples)</td></tr> +<tr class="memdesc:ga683b32a91cffbf021f58ace5a62904e8"><td class="mdescLeft"> </td><td class="mdescRight">Q15 complex-by-complex multiplication. <a href="#ga683b32a91cffbf021f58ace5a62904e8">More...</a><br/></td></tr> +<tr class="separator:ga683b32a91cffbf021f58ace5a62904e8"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga7748c92e0922cf14e3d7bb257d77593f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CmplxByCmplxMult.html#ga7748c92e0922cf14e3d7bb257d77593f">arm_cmplx_mult_cmplx_q31</a> (const <a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> *pSrcA, const <a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> *pSrcB, <a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> *pDst, uint32_t numSamples)</td></tr> +<tr class="memdesc:ga7748c92e0922cf14e3d7bb257d77593f"><td class="mdescLeft"> </td><td class="mdescRight">Q31 complex-by-complex multiplication. <a href="#ga7748c92e0922cf14e3d7bb257d77593f">More...</a><br/></td></tr> +<tr class="separator:ga7748c92e0922cf14e3d7bb257d77593f"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Description</h2> <p>Multiplies a complex vector by another complex vector and generates a complex result. The data in the complex arrays is stored in an interleaved fashion (real, imag, real, imag, ...). The parameter <code>numSamples</code> represents the number of complex samples processed. The complex arrays have a total of <code>2*numSamples</code> real values.</p> <p>The underlying algorithm is used:</p> <pre> -for(n=0; n<numSamples; n++) { +for (n = 0; n < numSamples; n++) { pDst[(2*n)+0] = pSrcA[(2*n)+0] * pSrcB[(2*n)+0] - pSrcA[(2*n)+1] * pSrcB[(2*n)+1]; pDst[(2*n)+1] = pSrcA[(2*n)+0] * pSrcB[(2*n)+1] + pSrcA[(2*n)+1] * pSrcB[(2*n)+0]; } </pre><p>There are separate functions for floating-point, Q15, and Q31 data types. </p> <h2 class="groupheader">Function Documentation</h2> -<a class="anchor" id="ga14b47080054a1ba1250a86805be1ff6b"></a> +<a class="anchor" id="gae221504b01e4abfe5f335eafd801b4ed"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void arm_cmplx_mult_cmplx_f32 </td> <td>(</td> - <td class="paramtype"><a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> * </td> + <td class="paramtype">const <a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> * </td> <td class="paramname"><em>pSrcA</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> - <td class="paramtype"><a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> * </td> + <td class="paramtype">const <a class="el" href="arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715">float32_t</a> * </td> <td class="paramname"><em>pSrcB</em>, </td> </tr> <tr> @@ -173,33 +173,31 @@ for(n=0; n<numSamples; n++) { </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> - <tr><td class="paramdir">[in]</td><td class="paramname">*pSrcA</td><td>points to the first input vector </td></tr> - <tr><td class="paramdir">[in]</td><td class="paramname">*pSrcB</td><td>points to the second input vector </td></tr> - <tr><td class="paramdir">[out]</td><td class="paramname">*pDst</td><td>points to the output vector </td></tr> - <tr><td class="paramdir">[in]</td><td class="paramname">numSamples</td><td>number of complex samples in each vector </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">pSrcA</td><td>points to first input vector </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">pSrcB</td><td>points to second input vector </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">pDst</td><td>points to output vector </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">numSamples</td><td>number of samples in each vector </td></tr> </table> </dd> </dl> -<dl class="section return"><dt>Returns</dt><dd>none. </dd></dl> - -<p>Referenced by <a class="el" href="arm__convolution__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65">main()</a>.</p> +<dl class="section return"><dt>Returns</dt><dd>none </dd></dl> </div> </div> -<a class="anchor" id="ga67e96abfc9c3e30efb70a2ec9d0fe7e8"></a> +<a class="anchor" id="ga683b32a91cffbf021f58ace5a62904e8"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void arm_cmplx_mult_cmplx_q15 </td> <td>(</td> - <td class="paramtype"><a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> * </td> + <td class="paramtype">const <a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> * </td> <td class="paramname"><em>pSrcA</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> - <td class="paramtype"><a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> * </td> + <td class="paramtype">const <a class="el" href="arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea">q15_t</a> * </td> <td class="paramname"><em>pSrcB</em>, </td> </tr> <tr> @@ -223,33 +221,32 @@ for(n=0; n<numSamples; n++) { </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> - <tr><td class="paramdir">[in]</td><td class="paramname">*pSrcA</td><td>points to the first input vector </td></tr> - <tr><td class="paramdir">[in]</td><td class="paramname">*pSrcB</td><td>points to the second input vector </td></tr> - <tr><td class="paramdir">[out]</td><td class="paramname">*pDst</td><td>points to the output vector </td></tr> - <tr><td class="paramdir">[in]</td><td class="paramname">numSamples</td><td>number of complex samples in each vector </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">pSrcA</td><td>points to first input vector </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">pSrcB</td><td>points to second input vector </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">pDst</td><td>points to output vector </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">numSamples</td><td>number of samples in each vector </td></tr> </table> </dd> </dl> -<dl class="section return"><dt>Returns</dt><dd>none.</dd></dl> -<p><b>Scaling and Overflow Behavior:</b> </p> -<dl class="section user"><dt></dt><dd>The function implements 1.15 by 1.15 multiplications and finally output is converted into 3.13 format. </dd></dl> +<dl class="section return"><dt>Returns</dt><dd>none</dd></dl> +<dl class="section user"><dt>Scaling and Overflow Behavior</dt><dd>The function implements 1.15 by 1.15 multiplications and finally output is converted into 3.13 format. </dd></dl> </div> </div> -<a class="anchor" id="ga1829e50993a90742de225a0ce4213838"></a> +<a class="anchor" id="ga7748c92e0922cf14e3d7bb257d77593f"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void arm_cmplx_mult_cmplx_q31 </td> <td>(</td> - <td class="paramtype"><a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> * </td> + <td class="paramtype">const <a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> * </td> <td class="paramname"><em>pSrcA</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> - <td class="paramtype"><a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> * </td> + <td class="paramtype">const <a class="el" href="arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0">q31_t</a> * </td> <td class="paramname"><em>pSrcB</em>, </td> </tr> <tr> @@ -273,18 +270,15 @@ for(n=0; n<numSamples; n++) { </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> - <tr><td class="paramdir">[in]</td><td class="paramname">*pSrcA</td><td>points to the first input vector </td></tr> - <tr><td class="paramdir">[in]</td><td class="paramname">*pSrcB</td><td>points to the second input vector </td></tr> - <tr><td class="paramdir">[out]</td><td class="paramname">*pDst</td><td>points to the output vector </td></tr> - <tr><td class="paramdir">[in]</td><td class="paramname">numSamples</td><td>number of complex samples in each vector </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">pSrcA</td><td>points to first input vector </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">pSrcB</td><td>points to second input vector </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">pDst</td><td>points to output vector </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">numSamples</td><td>number of samples in each vector </td></tr> </table> </dd> </dl> -<dl class="section return"><dt>Returns</dt><dd>none.</dd></dl> -<p><b>Scaling and Overflow Behavior:</b> </p> -<dl class="section user"><dt></dt><dd>The function implements 1.31 by 1.31 multiplications and finally output is converted into 3.29 format. Input down scaling is not required. </dd></dl> - -<p>Referenced by <a class="el" href="group__DCT4__IDCT4.html#gad04d0baab6ed081d8e8afe02538eb80b">arm_dct4_q31()</a>.</p> +<dl class="section return"><dt>Returns</dt><dd>none</dd></dl> +<dl class="section user"><dt>Scaling and Overflow Behavior</dt><dd>The function implements 1.31 by 1.31 multiplications and finally output is converted into 3.29 format. Input down scaling is not required. </dd></dl> </div> </div> @@ -293,7 +287,7 @@ for(n=0; n<numSamples; n++) { <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> - <li class="footer">Generated on Wed Aug 1 2018 17:12:21 for CMSIS-DSP by Arm Ltd. All rights reserved. + <li class="footer">Generated on Wed Jul 10 2019 15:20:39 for CMSIS-DSP Version 1.7.0 by Arm Ltd. All rights reserved. <!-- <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 |