Chris.Dev.Blog

Electronics, Programming and Development

  • Home
  • GitHub
  • Youtube
  • About me
  • Privacy Policy
  • Home
  • GitHub
  • Youtube
  • About me
  • Privacy Policy

Author: Chris

Date:6. November 2025Posted By:ChrisCategory:Blog postsTag:power-electronics, semiconductors, university

Power electronics

During my time as a scientific researcher at the University of Kassel, I worked on a couple of very different types of laboratory test-devices to check if a theoretical idea is working or not. Most of the time we designed not a very fancy and good looking device, but a functional PCB with the main-components…

Read More

Date:6. November 2025Posted By:ChrisCategory:Code-SnippetsTag:generator, theta, vhdl

Theta (Sawtooth) generator

This file calculates a theta-angle-signal based on the given frequency-information:

Date:6. November 2025Posted By:ChrisCategory:Code-SnippetsTag:divider, radix-2, vhdl

Divider using Radix-2-procedure

FPGAs are very useful when calculating plus or minus or dealing with large logic-vectors. Even multiplication is fine. But when it comes to dividing signals, FPGAs need support. Lothar Miller has a nice implemenation of a Radix-2-procedure to calculate the division of two fixed-point-numbers:

Date:6. November 2025Posted By:ChrisCategory:Code-SnippetsTag:clarke, transformation, vhdl

6-phase Clarke transformation

To convert a 6-phase signal into a 90° system, the following logic can be helpful:

Date:6. November 2025Posted By:ChrisCategory:Code-SnippetsTag:inverse clarke, transformation, vhdl

6-phase Inverse Clarke transformation

I had a special BLDC motor with 6 phases. To control the motor with a field-orientet control (FOC) I had to implement a 6-phase conversion from a 90° alpha/beta system into a 6-phase system. This is the logic for this:

Date:6. November 2025Posted By:ChrisCategory:Code-SnippetsTag:park, transformation, vhdl

Park transformation

To convert a 90° system (alpha/beta) into a dq-system, the Park-Transformation is performed. The following logic can be used for Q15.16 fixed-point-signals:

Date:5. November 2025Posted By:ChrisCategory:Code-SnippetsTag:cordic, generator, vhdl

Sin-/Cos-Generator (Mini-Cordic IP-Core)

For both microcontrollers and FPGAs its quite challenging to calculate sine- and cosine-values with good enough precision to calculate different things with higher accuracy. Mitu Raj and Roshan Raju implemented a nice Mini-Cordic-IP-Core that does exactly this: calculate sin/cos as fixed-point values that can be used within an FPGA.

Date:5. November 2025Posted By:ChrisCategory:Code-SnippetsTag:inverse park, transformation, vhdl

Inverse Park transformation

The following logic performs an inverse park transformation and converts dq-components into alpha-beta-components. It uses the cordic implementation of Mitu Raj that supports angles between -360° and 360°. The implementation can be found in another snippet on this website.

Date:5. November 2025Posted By:ChrisCategory:Code-SnippetsTag:pi-controller, vhdl

PI-Controller

The following logic contains a standard PI-controller

Date:5. November 2025Posted By:ChrisCategory:Code-SnippetsTag:deadtime, pwm, vhdl

PWM Deadtime Generator

This logic allows to inject a deadtime to an input-signal. The deadtime can be set in clocks, so the absolute deadtime is depending on the used clock:

Posts pagination

1 2 3 … 6
Developed by Think Up Themes Ltd. Powered by WordPress.