VHDL tutorial - A practical example - part 2 - VHDL coding

Gene Breniman May 27, 2011

In part 1 of this series we focused on the hardware design, including some of the VHDL definitions of the I/O characteristics of the CPLD part.  In part 2, we will describe the VHDL logic of the CPLD for this design.

With any design, the first step to gather the requirements for the job at hand.  From part 1 of this article, I have copied two sections that address some of the requirements for the CPLD design.

The data acquisition engine has the...


Tracing code and checking timings

Richard Dorfner May 25, 20115 comments

Debugging resource limited systemsApplications writers that write code on large systems have it easy. Well, perhaps not easy, but certainly easier. There are some things that they don't have to worry about and there is a huge array of tools available to them when it comes time to debug. The have choices in their toolsets, lots of choices. They also have a large selection of available methods for getting debugging information out to them such as log files, proc entries, pop up dialog boxes or...


It starts with an LED

Richard Dorfner May 13, 20114 comments

And slowly builds up from there.

I have been an embedded software engineer for many years. I was programming when I was a teenager before then, as a high school student involved in an NSF program called "National Science Foundation Summer Science Training Program (for High School Students)" or as we would rattle off during that summer of exquisite learning, NSFSSTP. We were taught to program in Fortran and taught the fundamentals of Calculus. It was a very enriching experience.

When it...


Size matters - System success depends on initial design

Gene Breniman April 23, 20111 comment

Too many times during the initial phases of system design, opposing interests start fighting for valuable resources, sometimes without even knowing that they are.  Case in point, a development project is starting up with a very simple product.  For the user interface, Engineering wants to use a very simple character based LCD display and a couple of membrane switches, while Marketing wants a graphic display with a touch screen.  The cost difference between these two items is...


Software Prototyping

Gene Breniman August 19, 20081 comment

In my recent blog entry on the product development process (way down, near the end of the entry), I wrote the following:

"I continue these sorts of tests, building more and more complexity, until I am satisfied that my circuit is basically functional. Then, using the test code that I have created as a model, I begin to write the real software for my product. As my software grows, to complete the full functionality of my design, I sometime find it useful to drop back to my 'test software'...


Bringing up Baby - product development thoughts

Gene Breniman August 15, 20085 comments

Things have just started to get exciting. After months of defining, specifying and designing my latest product, I finally have semi-functional prototypes. After a few side steps during the building and bring-up process, power is applied and most of the low level functions have been verified. Soon, software will meet hardware and debugging can begin in earnest.

Before jumping in and really enjoying the fun (besides I'm now waiting for some new parts to arrive), I thought it would be nice to...


Building Linux Kernel for Desktops

Kunal Singh August 9, 20084 comments

Linux Development has made an amazing process in last decade. Different Linux Distributions come with specific tools which greatly ease down the build process for Linux Kernel.

Here is a good introduction to these build tools and build procedure for different Linux Distributions:

Building Kernel for Fedora

Building Kernel for Ubuntu

Building Kernel for Suse...


Hello Android

Kunal Singh May 5, 20081 comment

Finally I could get Android Early SDK up and running on my Fedora Core-7 Machine.

The process was quite simple. However I had to struggle for a few days, because Fedora install the gnu version of Java and Android requires Java from Sun.

Here are the steps I had to follow:

(1) Install the eclipse IDE (if you do not have it already) with following command:

$> yum install eclipse-jdt eclipse-jdt-sdk (to be done as super user).

(2) now install the Android SDK and ADT plug-in for Eclipse...


Configuration Management: Why Developers are Avert to

Kunal Singh March 4, 2008

A few reasons why developers have aversion towards "Software Configuration Management Systems"

(1) They do not understand the importance of configuration management. - It is a common and logical reason. But, it is also a very dangerous sign for any organization. If their developers do not understand the importance of configuration management; then it is highly likely that developers even do not understand the other fundamentals of software development. The situation becomes worst...


Embedded Space & Software Development Practices

Kunal Singh December 5, 20074 comments

Embedded Programmers (at least the ones I know) are mostly at liberty to ignore the basic software development best practices, thanks to the simplicity of embedded applications. But, as the embedded processors are becoming more and more powerful, this situation might change soon. In coming years the embedded software applications are bound to become more complex (some embedded segments have already seen this change). Embedded programmers need to realize this inevitable change and start...


Building Linux Kernel for Desktops

Kunal Singh August 9, 20084 comments

Linux Development has made an amazing process in last decade. Different Linux Distributions come with specific tools which greatly ease down the build process for Linux Kernel.

Here is a good introduction to these build tools and build procedure for different Linux Distributions:

Building Kernel for Fedora

Building Kernel for Ubuntu

Building Kernel for Suse...


Tracing code and checking timings

Richard Dorfner May 25, 20115 comments

Debugging resource limited systemsApplications writers that write code on large systems have it easy. Well, perhaps not easy, but certainly easier. There are some things that they don't have to worry about and there is a huge array of tools available to them when it comes time to debug. The have choices in their toolsets, lots of choices. They also have a large selection of available methods for getting debugging information out to them such as log files, proc entries, pop up dialog boxes or...


Debugging DSP code.

Mark Browne May 1, 2019

I am fascinated with neural network processing and have been playing with them since the 80's.

I am a frequent contributor to the Numenta forum. Numenta is the current project of Jeff Hawins, the guy that gave us the Palm Pilot. They are working with the HTM model. This is a system based on studies of the functions of the cortical column and has some very interesting properties: It processes sequential data streams and has very effective one shot learning. The data is arranged in Sparse...


Size matters - System success depends on initial design

Gene Breniman April 23, 20111 comment

Too many times during the initial phases of system design, opposing interests start fighting for valuable resources, sometimes without even knowing that they are.  Case in point, a development project is starting up with a very simple product.  For the user interface, Engineering wants to use a very simple character based LCD display and a couple of membrane switches, while Marketing wants a graphic display with a touch screen.  The cost difference between these two items is...


Bringing up Baby - product development thoughts

Gene Breniman August 15, 20085 comments

Things have just started to get exciting. After months of defining, specifying and designing my latest product, I finally have semi-functional prototypes. After a few side steps during the building and bring-up process, power is applied and most of the low level functions have been verified. Soon, software will meet hardware and debugging can begin in earnest.

Before jumping in and really enjoying the fun (besides I'm now waiting for some new parts to arrive), I thought it would be nice to...


It starts with an LED

Richard Dorfner May 13, 20114 comments

And slowly builds up from there.

I have been an embedded software engineer for many years. I was programming when I was a teenager before then, as a high school student involved in an NSF program called "National Science Foundation Summer Science Training Program (for High School Students)" or as we would rattle off during that summer of exquisite learning, NSFSSTP. We were taught to program in Fortran and taught the fundamentals of Calculus. It was a very enriching experience.

When it...


Hello Android

Kunal Singh May 5, 20081 comment

Finally I could get Android Early SDK up and running on my Fedora Core-7 Machine.

The process was quite simple. However I had to struggle for a few days, because Fedora install the gnu version of Java and Android requires Java from Sun.

Here are the steps I had to follow:

(1) Install the eclipse IDE (if you do not have it already) with following command:

$> yum install eclipse-jdt eclipse-jdt-sdk (to be done as super user).

(2) now install the Android SDK and ADT plug-in for Eclipse...


Welcome to my life!

Morten Dramstad July 18, 20127 comments

Hi folks!

As an electronic engineer the most of my work is about making new designs where a microcontroller is present in 99.9 % of the applications. Since 2003 I am self-employed and do consultants work for different companies. I have been traveling to different parts of the world doing work for DeLaval International, a company that makes automation equipment for the dairy industry. A lot of the things I have done for them involves use of different Atmel AVR...


Embedded Space & Software Development Practices

Kunal Singh December 5, 20074 comments

Embedded Programmers (at least the ones I know) are mostly at liberty to ignore the basic software development best practices, thanks to the simplicity of embedded applications. But, as the embedded processors are becoming more and more powerful, this situation might change soon. In coming years the embedded software applications are bound to become more complex (some embedded segments have already seen this change). Embedded programmers need to realize this inevitable change and start...


“Smarter” cars, unintended acceleration – and unintended consequences

Michael J. Pont October 20, 20151 comment

In this article, I consider some recent press reports relating to embedded software in the automotive sector.

In The Times newspaper (London, 2015-10-16) the imminent arrival of Tesla cars that “use autopilot technology to park themselves and change lane without intervention from the driver” was noted.

By most definitions, the Tesla design incorporates what is sometimes called “Artificial Intelligence” (AI).Others might label it a “Smart” (or at least “Smarter”)...