editor's blog
Subscribe Now

A Bit of Memory With Your Logic?

The recent ICCAD show had a session dedicated to MRAM and memristors. Spintec had a presentation on MRAM that went beyond the normal discussion of memory, and proposed a hybrid logic/memory (or logic-in-memory) usage of MRAM cells – or, more precisely, of magnetic tunnel junctions (MTJs).

At the very simplest end of this is a so-called non-volatile flip-flop (NVFF). It normally acts as a standard flip-flop or SRAM cell (with equivalent performance), but on the pull-up end of things are a couple of MTJs oppositely biased. Those can act as a permanently stored state: when an “auto-zero” function is performed using an additional transistor, the FF stops acting like a FF and acts like a sense amp instead. The unbalancing of what is essentially a diff pair biases the circuit in one direction so that, in a few hundred picoseconds, you can restore the stored state. Add a couple transistors needed to provide the heating current for thermally-assisted switching of the MTJs, and you have a way to dynamically change the non-volatile state.

This can help, for example, when powering down a block to save power. Before doing so, if you save the value in the MTJ pair, then the block can save its state and come back up with no loss of memory. Another example of this concept is a non-volatile L2 cache that can be powered-down and restored with no loss.

The Laboratoire d’Informatique, de Robotique et de Microélectronique de Montpellier (LIRMM) has gone so far as to put together an FPGA where the flip-flops and SRAM cells have been replaced by MTJs. Now, after capturing the FPGA content via a serial stream and storing it in the MTJs, you can have sub-1-ns configuration after power-up from then on – no serial loading.

The logic-in-memory concept embeds MTJs into standard logic circuits. They showed an adder example where two added transistors act as a latch above a current-mode adder. There’s an MTJ in each leg of the adder above the current source. The current source itself is dynamic, being clocked to reduce power.

This all works because the MTJ can be built above the logic rather than next to the logic, as is typical for CMOS or other memory. This allows more seamless mixing of MTJs and logic, and it reduces the distance between logic and computation, improving performance and increasing the opportunities for interconnectivity. The MTJ can be programmed quickly (on the order of 10 ns vs a 2-ns write time for a volatile SRAM bit).

In the adder example, area and performance improved nominally using the hybrid approach, but dynamic power went from over 70 µW to just over 16 µW; standby power went from 0.9 nW to 0 nW (since the current source can be shut off). The only metric that went in the wrong direction was the amount of energy needed to write the cell: it went from 4 pJ in the pure CMOS implementation to almost 7 pJ for the hybrid version – and just over 20 pJ for writing the MTJ.

Leave a Reply

featured blogs
Dec 14, 2018
Yesterday I wrote a sort of overview of the Cadence Automotive Summit that took place in November, in the post Automotive Summit: The Road to an Autonomous Future . Today, the focus in on a key part... [[ Click on the title to access the full blog on the Cadence Community si...
Dec 13, 2018
In November, we continued our mobile updates to the website, released a couple of new content experiences, and made placing sample requests even easier. Read more below on these and the rest of the major updates to Samtec.com for November 2018. Continued Improvements to our M...
Dec 10, 2018
With Apple'€™s '€œWearable'€ category of sales setting a new record this September with growth over 50%, and FitBit seeing growth in both trackers......
Nov 14, 2018
  People of a certain age, who mindfully lived through the early microcomputer revolution during the first half of the 1970s, know about Bill Godbout. He was that guy who sent out crudely photocopied parts catalogs for all kinds of electronic components, sold from a Quon...