Blog

Overview of Current DSP Status

Digital Signal Processor is one of the milestones on the path taken by the computing elements in electronics. When the regular microprocessors and microcontrollers were struggling to handle complex calculations, DSP devices came into picture to rescue the designers from the pain in developing tough algorithms for their applications. In fact the DSP devices have acquired power either to make or kill the applications in many fields.

During the days of 8031 Derivatives, Motorola, Rockwell, Microchip, Zilog parts, when designers were struggling to handle complex mathematical functions, DSP devices helped them manage their applications relatively easy. In many cases, where real time performance were expected, these devices saved the designers from frustration. It is obvious that with given enough time, any computing element can execute the assigned task. But real time systems demand immediate results, most of the time at the blink of eyes, to complete their working and this demands more processing power from the computing elements within the allotted time. But having more processing power is only half the story and the processor should have proper architecture to get more data and code simultaneously to manage fast incoming signals producing the new required output signals with the same rate. The architecture has to be designed exclusively for this purpose with special features. Then the processor should have power to finish requiring supervisory functions to complete the applications.

But the arrival of DSP devices enabled designers undertake many Signal processing applications in audio, video, communication, instrumentation and control systems with ease and confidence. Many stand-alone equipments producing fast real time results came into existence just because of these devices. Naturally the semiconductor major, Texas Instruments, became more popular by launching these devices first and soon many others also followed the suit with their offerings. When TI introduced first generation DSP parts with 5 MIPS capability, everybody was surprised,because at that time, only with mainframe computers, users could get equivalent power. TI went on to create an ecosystem for these parts as a part of their marketing, which was first of its kind that time and then created history.

The DSP devices slowly evolved into an exclusive niche segment within electronics when other semiconductor majors joined with their parts. High resolution Floating point architecture came into picture to handle much complex applications. Even TI launched an advanced device with eight DSP cores working together inside of the TMS320C8xx family devices.

Let us see what makes the DSP devices as powerful and impressive.

DSP Characteristics

1. Hardware Multiplier. All DSP devices come with multiplying capability implemented in hardware. You shouldn’t combine instructions to get this multiplying done like other microprocessors. A simple and single instruction created in the hardware should do the job.
2. Hardware MAC facility. The Multiply and Accumulating facility, MAC, is the basic operator in signal processing. All mathematical equations, when stripped down to their basics, come to multiplying two variables and adding that result to a previously calculated data in the loop. At the first glance the presence of this instruction indicates the controller as suitable for math-intensive operations.
3. Harvard Architecture. This is the main design aspect of DSP parts, enabling the core get both program code and the required data simultaneously to speed up the processing. In latest DSP parts, core gets more data and code in every access.
4. Pipeline architecture. Pipeline facility is being added to the high speed processors to speed up their executions. During program execution, multi stage pipeline keep more than one instructions in the pipe in various dissected states to speed up their executions. After initialisation, because of this pipeline, the processor starts executing more than one instructions in every clock cycle to finish calculation intensive operations.
5. Onchip Memory. DSP processors keep both program code and the required data within the device itself. During the execution, the processors don’t waste time accessing code and data from the external storage. By design, all required content is kept inside or collected in advance and ready for the execution.
6. Single cycle execution. All the above features enable the processor execute more than one program instructions in every clock cycle. In fact, this indicates the performance of the target processor.
7. To make all the above work in sync, DSP processors have other support features. They have special addressing modes to access variables faster with minimum time to speed up processing in the loop. All processors come with minimum of 32bit width to avoid overflow and truncated errors during algorithm execution. Circular buffering is also being used to manage loop operations.

As you know, the complete DSP processing involves the data acquisition from the input sensors through analog to digital converters as digital data which go through the processing which creates the required results in digital form and then pushed into digital to analog converters producing analog output signals.

A typical DSP flow contains input sensors monitoring the target environment or measuring a target signal using analog to digital converters in the first stage. In general, AD converters with 8-16 bits data range are widely used to sample the raw analog signals. Then processing core proceeds further with the sampled digital data and do all the required calculations on the input data with the predefined coefficient values as needed by the chosen algorithm. Output of this step is the required signal in the digital form. In the last step, waiting DA converter changes this digital data into the exact analog waveform as the final output to interact with the real world. These steps are inevitable in any signal processing and the DSP processors can comfortably handle all this at a faster rate than other choices.

When the real time processing is required, all these steps should be executed for every input sample without fail. In fact, the DSP processors should complete all the operations in the fraction of the sample time, coz they have to complete other supervisory tasks like storing results for further operations, displaying results to the users’ convenience and etc. A powerful processor should keep more than 50% of the sample time for other application related tasks to make the application a successful one. In communication field, the real time requirements should be met without any compromise. Even when the real time processing is not a big requirement as in medical electronics, where the need is to extract the exact waveform out of noisy input signals, DSP processors can do a better job than other options in minimum time. In industrial controls, handling the real time control algorithms is very much possible using DSP processors.

When the designers have understood the potential of the DSP processors, everybody started using the same in their applications. Many new products, which were not possible before, also came into existence thanks to the DSP processors.


New Microcontrollers with DSP capability

During two decades, since the birth of DSP processors slowly penetrated into many segments without much difficulty. Major semiconductor manufacturers TI, Analog Devices, Motorola launched many versions of these devices to expand the market. Fixed point and Floating point devices started proliferating the market to capture more customers than before. Even though the cost DSP devices were higher than top microcontrollers of that time, designers preferred them because of convenience and ease of using them. Naturally the trend which favored the DSP parts made competitive micon majors adapt their approach in their own products to meet the challenges posed by DSP. Slowly the micons acquired more teeth to recapture the customers who started aligning with DSP parts.

As the first step, top micons started getting built-in hardware multipliers to speed up the processing.

MAC instructions also became part of these micons’ power arsenal.
Harvard architecture was modified to access more variables and code in every instruction cycle.

Pipeline naturally was fused into micon design.

Micon majors worked on their instruction set to get more number of instructions executed in single clock cycle speeding up performance. Most frequently used instructions are optimised for single cycle executions.

Operating frequency of the micons also increased gradually to support all the above as the manufacturing technology improved.

Along the way, micon manufacturers started using the inherent advantages of the micons: peripherals. The top micons come with a range of data converters, versatile timer functions and enough built in memory space to take up new challenges. High speed data transfer features within the device like simultaneous sampling, DMA supported the above and pushed the performance higher.

By this time, all designers found that only with micon manufacturers, they get affordable pricing. Most of the time, they could use the existing software tools to manage the top performing devices to complete their applications. Learning curve in the process is very much simplified and all device manufacturers support their devices with suitable DSP code libraries.

Digital Signal Controller Vs Advanced Micons

Now it was the turn of DSP part manufacturers feel the heat on their strategy and decided to take on the competition with new devices. DSP parts started having data converters inside, more peripherals are also served within the parts and were priced attractively. Manufacturers who were selling multi thousand tools offered their tools matching micon manufacturers.

One thing that went wrong for the DSP devices were their interrupt structures. They didn’t have versatility of micons interrupt management. May be the device architecture don’t allow any faster interrupt management. Personally, when we tried to use the TI’s new devices in few of our applications, we found their interrupt features as not useful and went back to Renesas Microcontrollers to finish the designs.

Micons manufacturers recaptured segments catering to industrial controllers in the first step. New features like built in full scale LCD interfacing and more memory helped the designers with these micons. Still many can manage their applications comfortably creating the real time bandwidth in the range of 100-200Khz using the micons. More designers who had taken up DSP devices turned back to micons. Industrial controllers were the first segment DSP manufacturers lost to their micons counterparts.

ARM Parts VS DSP Devices VS Microcontrollers

In 1985, a British company launched 32 bit ARM microprocessors into the market. Operating at 3MHz, it produced 3 MIPS performance. With this start, the ARM, started enhancing their range. ARM is still fabless company, selling only design of ARM core to the semiconductor manufacturers, who in turn add their peripheral functions to complete the chip design. This facility enabled all the micon majors customise the ARM core to their likings. Almost all semiconductor manufacturers started using the ARM core in their Microcontrollers.

Because of the on going pressure from DSP devices, ARM too announced micon core supporting DSP instructions in the family ARMv5JET. Now many ARM core based Microcontrollers are available from more than 100 semiconductor vendors and in this scenario, only a few micon manufacturers still retain their proprietary micon designs in their portfolio. But they too maintain a range of ARM core based micons to keep customers with them. That’s the reason, in 2013, ARM announced shipping of 50 billion ARM core based micons.

Where is the dedicated DSP now?

Now we don’t see much news on the DSP devices which ruled the electronic fields of 1980s and 90s. Personally I used to watch advertisements issued by various DSP part manufacturers in 80s claiming special features of their devices. New generation Microcontrollers literally pushed these DSP parts into underground. In fact, all mobile phones use the DSP parts in their designs, but as a sub module in the big SOC device designed exclusively for the phones. Now we don’t see any news on the DSP parts like before. Now they cater only to higher end communication and entertainment as a part of exclusively designed bigger SOC devices. Even though these DSP devices sitting in our pockets, we really don’t know much about them.

Apart from mobile phones, high end media players, entertainment systems, DSP devices literally lost all the gained market share to Microcontrollers. The real winners are the actual designers who have got the best of both worlds helping them to undertake advanced applications than before.

How to make next Embedded Systems safe?

 

As we know, embedded solutions became inevitable part of our living and we keep them around all the time without any hesitation. There is a fundamental aspect that is very significant about these embedded solutions: safer working of these gadgets when we use them or keep them with us.

As the designer, you have the responsibility to ensure your creations keep working without disturbing their users or the environment where they are functioning. This is a very important issue which takes backseat during design phase of the product. So far, most of the solutions designed are meant for table-top applications or put into use in laboratories or factory work tables. Now you are trying to equip your customers with new facilities and encourage them to do more with your solutions and subsequently make them stick with your products for more time.

Now, time has come to make sure that your embedded system should be working fine without causing any disturbance to your customers or the environment where systems are put into use. The batteries which go with these systems demand your attention to keep them safe in all working environments. The Lithium ion batteries can become smoke-bombs when the environment gets very hot.

These safety issues are managed in different ways, depending on the applications. In few selected areas, the faults should be identified in advance and suitable corrections should be applied in time. Aviation systems come with these features with suitable redundant systems, in which, a faulty system is substituted with a good one to ensure the aircrafts keep working and naturally they become very expensive.

Now, designers have to start thinking of fusing certain safety features within their designs right from the concept. European market already defined standards to address safety issues with the electronic products: IEC61508. Main requirement of these safety demands is to force your solution into safe stopping under the disturbing operating conditions. Since most of the designers develop products for the competitive markets, the need is not to rectify the faults on the fly when the system gets into trouble. But the products should be designed with the capability to keep monitoring the operations of the hardware and software components and in the case of any trouble, just push the system into stop to avoid propagating the fault to next level.

Literally time has come for the designers taking these safety aspects into their designs. May be soon European markets can demand the compliance of embedded systems with the safety standards for the obvious reasons.

When you decide to fuse these safety within your designs, you should start with the suitable micons for your applications.

Welcome Renesas RL78 Microcontroller family. This family of micons come with plenty of built-in safety elements enabling you to implement safer designs meeting the required standards. The following figure gives you the total picture on the available features of the controller.

As you can see the micon helps you to keep the required checks in both hardware as well as in software parts of your solution. You can keep track of execution of your application code using the CRC checks on code as well as the data, memory guard functions. Then you can also watch the operations of your hardware very easily for any erroneous conditions.

For almost all these error conditions, you can generate resets and interrupts to take the required steps. Most of the time, you may tend to push the hardware into reset conditions to prevent any further deterioration. The micon also comes with a built-in temperature sensor to keep the track on the working environment.

But the whole thing is easily said than done in real. To get a fool proof design, you need to change your design approach right from the scratch. You need to place suitable checkpoints in your hardware design as well as your software architecture. Effective interrupt and reset usage is very much required to complete the picture.

With these available facilities, you can let the micon running in the precise environments and jump the controller into safer state on sensing a troubling condition. Then your creations become compatible to european safety standards and you become most wanted in your designer community.

NextGen Embedded Systems

 

As you know well, the embedded systems have successfully invaded human lives and already became part of our existence. We started carrying quite a few in our pockets, bags and everywhere. Clearly we have all permitted them to share our space because we find some utility in keeping them around. Portable systems give us freedom to move around places, managing tasks effectively and enable us to handle more than before. As a result, we prefer to have portable systems rather than solutions coming with a power cord. 

As the embedded system designer, you need a better skill set to manage this kind of new generation portable systems. 

Here we see how to upgrade our skill set to meet the challenges of getting ready next generation portable embedded systems.

Select right microcontroller for the task.

When you start designing anything as a portable application, your first design step is to zero in on the right target microcontroller. You need to find a micon giving the maximum performance with least possible operating power. So far in all your applications, you might have divided the total application into many manageable tasks and allocate micon and peripheral resources to each of these tasks keeping an eye on the time limitations. Now, for the portable systems, you need to define an operating condition for these tasks taking the available voltage from the system battery into account. As you know well, the battery power output conditions can get uncertain without any notice and most of the time, batteries surprise you in unpleasant ways. 

Another issue you should take into account is that the system staying in a silent state or waiting for some event or user interaction for a good amount of time in its usage. 

Next you need to decide the right operating frequency for each of these tasks to extract maximum juice out of your selected battery. If you let your controller run at the maximum rated clock, then your hardware starts consuming more power and end up draining battery super fast. You need to find out the possibility of managing that task with lesser frequency at a lowest operating voltage. If you take these two factors into your design philosophy, you can easily enhance the battery running time to a great extend. 

To emphasize the above points, when you reduce the operating voltage to its 80% of the value, you can note the power consumption going down to 64% of its original value. Likewise when the operating frequency goes down, micon’s dynamic power consumption becomes less than before.

Manage peripheral functions effectively. 


You need to control power consumption of unused peripheral functions for the given tasks to conserve more operating power. You can further reduce power when you can stop the clock sources to these peripherals.

A matching microcontroller for your solution.

With the right microcontroller, your efforts can be minimized and you need to ensure that the following facilities are available from your choice:

The microcontroller should be running for a wide variation of supply voltage as the first and foremost feature. 

 As the next step,you should have ways and means of changing the operating clock dynamically for your defined tasks. 

 Most important is the versatile integration of all the required peripheral functions within the micon itself. You already know having more usable peripherals inside the micon can drive the power consumption southward and most of the latest controllers have them in plenty. But keeping a dynamic clock generating mechanism inside is more useful. Built in clock sources reduce power consumption significantly. 

Then you need onboard comparators to keep track of battery voltage all the time to take the appropriate actions. Only with this facility, you can add sensitivity with your application for the varying battery voltage. Proper reset circuits complement these voltage detection facilities. Having all these functions inside of the micon itself gives you a distinctive advantage when designing any portable system.

Available choices to you in microcontrollers:

These days you get plenty of useful features with every controller. But you need to check carefully to derive best utility out of them. RL78 family of 16 bit microcontrollers manufactured by Renesas is the popular series most suitable for battery based portable solutions. For most of your applications, on chip facilities of this family are most suitable.

We get ready to introduce this controller in forthcoming articles. 

Stay tuned for more useful design news….