# "Slicing" a complex signal

**URL:** <https://www.ruby-forum.com/t/slicing-a-complex-signal/240604>\
**Category:** GNU Radio\
**Created:** [April 22, 2014, 9:31pm UTC](https://www.ruby-forum.com/t/slicing-a-complex-signal/240604 "2014-04-22T21:31:37Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Detlef\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@Detlef\_R](https://www.ruby-forum.com/u/Detlef_R)\
**Post date:** [April 22, 2014, 9:31pm UTC](https://www.ruby-forum.com/t/slicing-a-complex-signal/240604/1 "2014-04-22T21:31:37Z")

</div>

I will try to explain this the best I can… but here is what I am  
looking  
to do:

I have a digital signal that takes up 100kz of bandwidth. I want to  
“split”  
this signal and push both halves apart. The best way to explain this is,  
say you have an AM signal. Normally, the LSB and USB are right on top of  
the carrier in the “centre”. I want to offset the LSB and USB “apart”  
from  
each-other, and then have the receiver place them back in their proper  
place.

I attempted to simply use the Signal Source and try to bandpass them,  
but  
that did not work like I wanted it to. All the other filter seem to work  
on  
both sidebands, and this won’t work either.

Any help here would be awesome.

---

<div class="post-metadata">

**Author:** ![jowijo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e95f7d/32.png) [@jowijo](https://www.ruby-forum.com/u/jowijo)\
**Post date:** [April 23, 2014, 12:59pm UTC](https://www.ruby-forum.com/t/slicing-a-complex-signal/240604/2 "2014-04-23T12:59:48Z")

</div>

Hi Jordan,

you can use (complex) bandpasses to select either halfband, and  
frequency translate the results to your heart’s desire individually, if  
this is what you’re after. You might need to design that filter yourself  
– which isn’t as hard as it sounds:  
use the gr\_filter\_design tool, which comes with GNU Radio, design a  
lowpass with a passband of $\frac{b\_\text{halfband}}2$ and shift the  
taps in frequency domain by multiplying them with a complex sine  
$e^{j\frac{b\_\text{halfband}}{2}\pi n}$.  
Also, taking the signal (twice), shifting it by $\pm\Delta\_f ,  
|\Delta\_f|\geq b\_\text{halfband}$ respectively, and then high passing  
everything below $\Delta\_f - \frac{b\_\text{halfband}}{2}$ away should  
work, too.  
also, if possible within your nyquist bandwidth without introducing  
aliases in places you need, multiplying with a _real_ cosine (and high  
passing) would do your job, too.

Greetings,  
Marcus
