Real Power stuff in ARM Research Summit 2017

There have been several presentations about Real Power Computing at the last ARM Research Summit held on 11-13th September 2017 in Cambridge (Robinson College):

The full agenda of the summit is here:

The videos of the talks can be found here:

It is possible to navigate to the right video by selecting the Webcam by the name of the room where that session was scheduled in the Agenda.

The most relevant talk was our talk on Real Power Computing, given by Rishad Shafik. it is listed under my name on Monday 11th Sept at 9:00.

Other relevant talks were by Geoff Merrett and Bernard Stark, in the same session, and by Kerstin Eder on Tuesday 12th at 9:00.


Real-Power Computing: Basics

What is Real-Power Computing?

RP Computing is a discipline of designing computer systems, in hardware and software, which operate under definite power or energy constraints. These constraints are formed from the requirements of applications, i.e. known at the time of designing or programming these systems or obtained from the real operating conditions, i.e. at run time. These constrains can be associated with limited sources of energy supplied to the computer systems as well as with bounds on dissipation of energy by computer systems.


These define areas of computing where power and energy require rationing in making systems perform their functions.

Different ways of categorising applications can be used. One possible way is to classify application based on different power ranges, such as microWatts, milliWatts etc.

Another way would be to consider application domains, such as bio-medical, internet of things, automotive systems etc.


These define typical scenarios where power and energy constraints are considered and put into interplay with functionalities. These scenarios define modes, i.e. sets of constraints and optimisation criteria. Here we look at the main paradigms of using power and energy on the roads.

Power-driven: Starting on bicycle or car from stationary state as we go from low gears to high gears. Low gears allow the system to reach certain speed with minimum power.

Energy-driven: Steady driving on a motorway, where we could maximise our distance for a given amount of fuel.

Time-driven: Steady driving on a motorway where we minimise the time to reach the destination and fit the speed-limit regulations.

Hybrid: Combinations of power and energy-driven scenarios, i.e. like in PI (D) control.

Similar categories could be defined for budgeting cash in families, depending on the salary payment regimes and living needs. Another source of examples could be the funding modes for companies at different stages of their development.

Architectural considerations

These define elements, parameters and characteristics of system design that help meeting the constraints and optimisation targets associated with the paradigms. Some of them can be defined at design (programming and compile) time while some defined at run-time and would require monitors and controls.

Newcastle’s Microsystems group (,

in collaboration with Newcastle’s Computing Science colleagues, as well as with the teams from Imperial College and Southampton Universities (under PRiME project – , has published a visionary paper in IEEE Computer on how to analyse the interplay between performance, energy and reliability of computing systems with increasing number of processor cores.

Here is the video:

And for some time it will be front page on the multimedia front page:

Tutorial on EDA for Asynchronous Control for Analogue-Mixed-Signal

We gave a 3 hour tutorial at IEEE Int Conference on Electronics Circuits and Systems (ICECS’16) in Monaco on the 11th December 2016.

The handout can be downloaded from here:

We also organised a special session on Oscillator Based Computing:

where one of our papers was presented:



Talking at the 2016 ARM Research Summit

Last week there was an inaugural ARM Research Summit.

I gave a talk on Power & Compute Codesign for “Little Digital” Electronics.

Here are the slides of this talk:

Here is the abstract of my talk:

Power and Compute Codesign for “Little Digital” Electronics

Alex Yakovlev, Newcastle University

The discipline of electronics and computing system design has traditionally separated power management (regulation, delivery, distribution) from data-processing (computation, storage, communication, user interface). Power control has always been a prerogative of power engineers who designed power supplies for loads that were typically defined in a relatively crude way.


In this talk, we take a different stance and address upcoming electronics systems (e.g. Internet of Things nodes) more holistically. Such systems are miniaturised to the level that both power management and data-processing are virtually inseparable in terms of their functionality and resources, and the latter are getting scarce. Increasingly, both elements share the same die, and the control of power supply, or what we call here a “little digital” organ, also shares the same silicon fabric as the power supply. At present, there are no systematic methods or tools for designing “little digital” that could ensure that it performs its duties correctly and efficiently.  The talk will explore the main issues involved in formulating the problem of and automating the design of little digital circuits, such as models of control circuits and the controlled plants, definition and description of control laws and optimisation criteria, characterisation of correctness and efficiency, and applications such as biomedical implants, IoT ‘things’ and WSN nodes.


Our particular focus in this talk will be on power-data convergence and ways of designing energy-modulated systems [1].  In such systems, the incoming flow of energy will largely determine the levels of switching activity, including data processing – this is fundamentally different from the conventional forms where the energy aspect simply acts as a cost function for optimal design or run-time performance.


We will soon be asking ourselves questions like these: For a given silicon area and given data processing functions, what is the best way to allocate silicon to power and computational elements? More specifically, for a given energy supply rate and given computation demands, which of the following system designs would be better? One that involves a capacitor network for storing energy, and investing energy into charging and discharging flying capacitors through computational electronics which would be able to sustain high fluctuations of the Vcc (e.g. built using self-timed circuit). The other one that involves a switched capacitor converter to supply power as a reasonably stable Vcc (could be a set of levels). In this latter case, it would be necessary also to invest some energy into powering control for the voltage regulator. In order to decide between these two organisations, one would need to carefully model both designs and characterise them in terms of energy utilisation and delivery of performance for the given computation demands. At present, there are no good ways for co-optimising power and computational electronics.


Research in this direction is in its infancy and this is only a tip of the iceberg. This talk will shed some light on how we are approaching the problem of power-data co-design at Newcastle, in a series of research projects producing novel types of sensors, ADCs, asynchronous controllers for power regulation, and software tools for designing “little digital” electronics.

[1] A. Yakovlev. Energy modulated computing. Proceedings of DATE, 2011, Grenoble,  doi: 10.1109/DATE.2011.5763216

My vision of Bio-inspired Electronic Design

I took part in a Panel on Bio-inspired Electronic Design Principles at the

Here are my slides

The quick summary of these ideas is here:


Summary of ideas for discussion from Alex Yakovlev, Newcastle University


With my 30 years of experience in designing and automating the design of self-timed (aka asynchronous) systems, I have been involved in studying and exploiting in practice the following characteristics of electronic systems:  inherent concurrency, event-driven and causality-based processing, parametric variation resilience, close-loop timing error avoidance and correction, energy-proportionality, digital and mixed-signal interfaces. More recently, I have been looking at new bio-inspired paradigms such as energy-modulated and power-adaptive computing, significance-driven approximate computing, real-power (to match real-time!) computing, computing with survival instincts, computing with central and peripheral powering and timing, power layering in systems architecting, exploiting burstiness and regularity of processing etc.

In most of these the central role belongs to the notion of energy flow as a key driving force in the new generation of microelectronics. I will therefore be approaching most of the Questions raised for the Panel from the energy flow perspective. The other strong aspect I want to address that acts as a drive for innovation in electronics is a combination of technological and economic factors, which is closely related to survival, both in the sense of longevity of a particular system as well as survival of design patterns and IPs as a longevity of the system as a kind or as a system design process.

My main tenets in this discussion are:

  • Compute where energy naturally flows.
  • Evolve (IPs, Designs) where biology (or nature as a whole) would evolve its parts (DNA, cells, cellular networks, organs).

I will also pose as one of the biggest challenges for semiconductor system the challenge of massive informational connectivity of parts at all levels of hierarchy, this is something that I hypothesize can only be addressed in hybrid cell-microelectronic systems. Information (and hence, data processing) flows should be commensurate to energy flows, only then we will be close to thermodynamic limits.

Alex Yakovlev



PN’2015 Advanced Tutorial: Modeling, Synthesis and Verification of Hardware

We are giving an Advanced Tutorial: Modeling, Synthesis and Verification of Hardware on Tuesday 23rd June at the Petri nets 2015 Conference in Brussels.

The agenda of the tutorial and directions to the venue can be found here:

Everyone is welcome!