• Tidak ada hasil yang ditemukan

Multilevel Power Estimation Of VLSI Circuits Using Efficient Algorithms

N/A
N/A
Protected

Academic year: 2023

Membagikan "Multilevel Power Estimation Of VLSI Circuits Using Efficient Algorithms"

Copied!
63
0
0

Teks penuh

To correctly estimate the power consumption of the entire design, an accurate memory power model is needed. More importantly, using the neural current model for power estimation does not require any transistor-level or gate-level description of the circuits.

Motivation

With this current model, users can obtain the current consumption of the circuits without detailed circuit information, because it can be derived directly from the current model and the high-level power characteristics. Therefore, in this thesis we propose a new power model for complex digital circuits that uses neural networks to learn the power characteristics during simulation.

Goals and contributions

The basic synthesis process of the Design Compiler (Design Vision) is given in Figure 2.7. The Design Compiler is a powerful tool that other products can run within its environment using specific commands. Before starting the power calculation using the Power Compiler, the desired gate-level netlist of the design must first be generated. During power analysis, the power compiler uses note-switching activity to estimate the power consumption of the design.

As mentioned in Section 3, in our first study for neural network architecture, we chose a connection configuration with full feedforward connection. The first parameter to be decided is the input data format, which is referred to as the characteristic value of input samples to the circuit. Power Compiler requires information about the switching activity of the design for power analysis. These tools work on the port-level netlist of the design along with the port-level power library.

Then the reverse annotation file that has the link activity of the design is read.

Figure 2-0-4Relationship between different abstraction level & Power estimation techniques
Figure 2-0-4Relationship between different abstraction level & Power estimation techniques

Thesis organization

Need for low power design

Design flow with and without power

At each of the design levels, there are two important power factors, namely power optimization and power estimation. Power estimation is defined as the process of calculating the power and energy expended with a certain percentage of accuracy and at different stages of the design process.

Relationship between different abstraction levels

Its pre-synthesis simulation capabilities enable design power consumption analysis at RTL. The following is the approach that was used to calculate power using the Power Estimator that is part of the Power Compiler tool.

Basic concepts of power

Static Power

Dynamic Power

  • Switching power
  • Internal power

Short-Circuit Power

Leakage Power

Overview of power estimation techniques

The most accurate approach for power estimation is to perform simulation at the transistor level because detailed information about the entire design is known. Compared to other approaches, high-level power estimation makes it much more difficult to obtain highly accurate results because too much design detail is already lost.

High level power estimation

This implies that high-level power estimation techniques are essential for designing such a complex design to shorten redesign cycles. High-level power estimation techniques can be roughly divided into two categories: top-down and bottom-up.

Tools Used

Non power tools

  • Simulation tool
  • Synthesis tool

The tools discussed in this chapter are some of the non-electrical tools involved in the overall design flow. The next chapter covers each power tool in detail, as most of the thesis involves the use of these power tools. A Verilog or VHDL compiler reads the HDL files and performs compilation and architectural optimization of the designs.

Power tools

  • Power Compiler

When combined with the Design Compiler tool, Power Compiler provides simultaneous optimization of timing, power and area. Ultimately, Power Compiler is used to calculate power using the port-level netlist produced by the Design Compiler or the power-optimized port netlist produced by Power Compiler itself. During power optimization, Power Compiler uses the annotated switching activity to make design decisions.

Introduction

The forward switching activity file generated by the “rtl2saif” command as part of the Design Compiler is also passed to the simulator. This power estimation method uses Power Compiler with the same RTL back annotation switching activity used to estimate power using Power Estimator, but instead of RTL code it uses a port-level netlist of the design. As shown in the script, first the gate-level netlist of the adder design obtained from Design Compiler is read into the "dc_shell" environment.

Biological neuron vs. artificial neurons

Biological neurons

Artificial neurons

Feed forward neural network

Operations of neural network

24 parameters, including weights and bias factor matrix, will be modified according to the error measurement so that the error can be reduced. In other words, the weights and biases are modified in response to network inputs only as illustrated in Figure 3-4b. While the weights and bias matrices are fixed after the learning phase, the computation of o for a given x performed by the network is the recall phase.

Training algorithms

Levenberg-Marquardt algorithm

One is the RTL code that is simulated using the ModelSim simulator to obtain a switchback SAIF file that contains the switching activity of the design and is used to create the power model for the design using the “create_power_model” command. Some power tools do not understand the SAIF file, so in this case the VCD file is used. The backward SAIF file generated by the simulation contains the resulting switching activity of the elements monitored during the RTL simulation.

The following is the explanation of each of the command lines in the script. The dc_shell” command is used to call the Design Compiler. a) power_preserve_rtl_here_names = true. Once the netlist is read, the top level of the design is created as the current design to work on.

Figure 5-0-9Methodology using RTL simulation and SAIF file    RTL Design
Figure 5-0-9Methodology using RTL simulation and SAIF file RTL Design

Steepest Descent algorithm

Properties of the neural network

Summary

Introduction

We will not only focus on the new modeling approach, but also look at the neural network parameters required for the basic building block of the algorithm. However, according to the experience of neural network research, there is no easy or general way to determine the optimal solution for the number of neurons to use [17]. Therefore, in this work we start with a small number and add more neurons until the neural network can learn the features with the desired accuracy.

Parameters of neural network

The complexity of this neural power model has no relation to the circuit size and the number of inputs and outputs, so that this power model can be kept very small even for complex circuits.

Introduction

Benchmark circuit description

Only the highest priority channel in the highest priority requesting bus is recognized. One exception is that if two or more interrupts produce requests on the channel being acknowledged, each bus is acknowledged. The output line numbered 421 actually produces the reverse out[3] response of what is shown in the truth table.

Power estimation techniques

Basic design flow

Depending on the tool, either the RTL-level switching activity or the port-level switching activity is used. This tool should give almost the same power compared to the Power compiler, which uses port-level switching activity. Inputs for power calculation are port-level netlist [3], port-level switching [5], parasitic information [6].

Power estimation at register transfer level

Methodology

Then the design is characterized using the backward labeled switching activity and the power is reported using the “report_rtl_power” command. The following Figure 3.6 shows the current required to obtain the gate level switching activity with Back annotation, which will be used later for the power calculation. The toggle file gives the tool information at which points in the plan the toggle occurs.

Creating forward and backward switching activity

  • SAIF file and RTL simulation
  • SAIF forward annotation file
  • Creating backward SAIF file

Power reporting using power estimator

Power estimation using power compiler with RTL switching activity

Methodology

Another method of calculating the power of a design, which is more accurate than the previous Power Compiler method, is to use the gate-level netlist with gate-level switching activity. Method 42 is better than the previous method because it uses the gate-level net list to obtain the design switching activity, but the time required to do this procedure is more than the previous two methods. Performed Power Estimation for various circuits from RTL level to Gate level using various power estimation tools.

Power estimation using power compiler using gate level switching activity

Creating gate level switching activity

The main difference between the RTL back annotation switching activity and the gate-level switching activity is that here the gate level net-list is given as input to the ModelSim simulator together with the testbench and the do-file, which contains the entire switching region definition and the actual execution of the simulation and reporting of the toggle activity. The do file used to capture switching activity follows the same procedure as RTL switching activity such as defining the reading of the forward SAIF file, defining the region for counting switching information, starting and stopping the monitoring switching activity, and finally using the "toggle_report" command to report the activity in a SAIF file format. The next method discussed is using another gate-level Power Estimator that uses almost the same input files except that it takes in the switching activity as VCD format.

RTL power report

Power report using power compiler with RTL switching activity

Gate level power report

Table 6-1 above shows the input samples we used to train our neural network power model. Our neural power model has very low complexity, so this power model can be applied to complex circuits. We can also try to extend our neural power model to estimate the power of sequential circuits, so that this approach can be applied to all kinds of complex circuits.

Input data for power model

Power comparison

The above Table 6-2 shows the power comparison in the unit of nano Watts, between different neural network backpropagation training algorithms and power compiler. It is observed that Levenberg-Marquardt training algorithm gives better performance compared to steepest descent training algorithm. The comparison result shows that a small amount of errors occur when compared to power compiler.

Summary

Conclusion

According to the related study [35], it suggested to determine the number of samples according to Equation 7.1, where P is the number of samples, |W| is the number of weights to be trained and a is the expected accuracy.

Future work

Najm, "A Survey of Power Estimation Techniques in VLSI Circuits", IEEE Transaction on VLSI Systems, vol. Rabaey, "An Integrated CAD Environment for Low-Power Design", IEEE Design and Test of Computers, s. Liu, "A Novel Approach for High-Level Power Modeling of Sequential Circuits Using Recurrent Neural Networks," IEEE International Symp.

Gambar

Figure 2-0-4Relationship between different abstraction level & Power estimation techniques
Figure 5-0-9Methodology using RTL simulation and SAIF file    RTL Design

Referensi

Dokumen terkait

DECISION 21 October 2016 Summary Substance Taratek JP Application code APP202715 Application type To import or manufacture for release any hazardous substance under Section 28