DSP Algorithms for RF Systems

Blog
Figure 2: The frequency responses for three different square root raised cosine filters.

Square Root Raised Cosine Filter in Python

The square root raised cosine (SRRC) filter is used as a pulse shaping filter [harris2021, p.87] in many linear modulations such as BPSK, QPSK, and 16-QAM. Frustratingly neither SciPy or NumPy have a square-root raised cosine (SRRC) filter. Mathuranathan Viswanathan at GaussianWaves.com has a great post on how to build a square-root raised cosine filter. You can also find the design equations in [johnson2004, p.225, harris2021, p. 95].

I’ve written my own SRRC design script in Python which you can download from the WaveWalkerDSP GitHub page in the Blog Downloads repository.

Read more

Execute Your Product Delivery Plan

Part 1, Reverse Engineer Your Delivery Plan, provided a strategy on how to prepare a product delivery plan by working backwards from the end goal. Now it’s time to execute the plan and deliver the product.

Create Your Team

We all need a team around us to be successful. Luke had Han, Chewie, and Leia. Kermit had Fozzie Bear, Miss Piggie and Gonzo. Mustard has Ketchup and Relish.

Read more

List of Important Math for DSP

The following post is a list of math for DSP I have found to be useful over my career in DSP. This post will be updated periodically and will serve as a reference for upcoming material.

Read more

DSP Wisdom

I’ve compiled a list of DSP wisdom I have learned and used over my career. The list is a collection of aphorisms in the vein of Nassim Taleb’s Bed of Procrustes and Epictetus’ Handbook. This blog post will be updated over time and used as a reference in other posts.

Read more

A graphical representation of the system dependency list used in the product delivery plan.

Reverse Engineer Your Product Delivery Plan

You have been assigned a product delivery on a too-short of a deadline.

Let’s make it harder and say you just got promoted to the project lead and have a couple of junior engineers working for you. You have to build a schedule, allocate people to different tasks, report your progress to your leadership and your customer and get everything synchronized so it comes together successfully at the end.

Let’s add more.

The success of the project has implications to your career and reputation, as well as your organization. Your success may have implications to the profitability or success of your company. All eyes are on you.

Read more

Figure 1: The unit circle with an example complex vector e(j pi/3).

The Unit Circle: The Field of Play for the Game of DSP

Thinking about complex sinusoids, \sqrt{-1} = j, the unit circle, phase, negative frequency and using \pi instead of 180^\circ can all be confusing when the material is first encountered. Have you asked yourself the following questions? I certainly have:

  • Why do we need the complex plane?
  • Why can’t we just use degrees instead of radians?
  • Why is the unit circle useful?

Unfortunately many of the mathematical tools encountered in the first and second years of an undergraduate EE degree are abstract and their value may not seem practical until graduate school or your first job as an engineer. The hope is that the following post will connect these concepts into a real world situation using the face of a clock in an attempt to build some intuition.

Read more

Free DSP Code!

Some posts have code included to help demonstrate the concepts. You can check them out under the post with code tag. Enjoy!

Figure 4: The time-domain plot of e(j2 pi n/8) for n=0 to n=31.

Phase, Frequency and Negative Frequency in Complex Sinusoids

A prior post described how sinusoids came to be used in DSP and RF due to physical properties of the universe. A follow up gave some mathematical rules about complex sinusoids on how sine, cosine and e^{j\phi} all related to one another in terms of Euler’s triangle. This blog will continue by including time in complex sinusoids, describe how phase and frequency relate to one another, how a negative frequency arises and demonstrates the concepts using the unit circle. It may be useful to review some complex math before jumping into this post.

Read more

Blogs by Category