FRAM Technology
Memory in modern microcontrollers is usually divided according to the dependence on energy supply. Non-volatile memory includes DRAM and SRAM technologies, non-volatile memory - EEPROM / Flash. This separation exists due to the fact that DRAM / SRAM have much better performance compared to non-volatile memory. But what would happen if there were non-volatile memory that was not inferior to non-volatile memory in read / write speed and power consumption? It turns out that such technologies exist. One of the representatives of this class of memory is FRAM or FeRAM technology. I ask for details under cat.
So, FeRAM or Ferromagnetic Random Access non-volatile Memory is a type of memory whose operating principle is based on the hysteresis effect in a ferroelectric. When an electric field is applied to the cell, it changes its polarization, passing to another part of the hysteresis loop. Due to this, it is possible to obtain two states that are clearly distinguishable by energy, and this is enough to create memory based on such a cell. This is well illustrated by GIFs from the site of Fujitsu - one of the main producers of FRAM.


Fig. 1 The principle of operation of FRAM.
In order to understand what advantages this gives over classical types of memory, it is also necessary to recall the basic principles of operation of other types of memory.
The principle of operation of DRAM (Dynamic RAM) is based on reading and changing the capacitor charge. If the capacitor is charged, the cell is in the state “1”, if discharged, it is in the state “0”. Just like an umbrella. To increase the speed in memory cells, small capacitors are used, the charge of which flows relatively quickly. Therefore, to ensure the safety of information, information has to be regenerated. DRAM is used as RAM on modern computers because of its low cost (compared to SRAM) and high speed (compared to disk drives).

Fig. 2 Typical DRAM
SRAM (Static RAM) is much more complex than DRAM, and therefore much more expensive. Its principle of operation is based on the use of CMOS transistors. When combining several transistors, you can get a trigger - a cell that saves a certain logical state. For this type of memory, there is no need for state regeneration, but nevertheless, in the absence of power, data is lost, i.e. memory remains volatile. This kind of memory is faster than DRAM. Since such memory is much more expensive than DRAM, it is used where a very short response time is required - in the processor cache.

Fig. 3 Six-transistor SRAM cell
Modern Flash and EEPROM are based on the use of transistors with the so-called floating gate. Electrons are injected into the "pocket" of the semiconductor structure, and their presence / absence can be detected externally. This is a property that allows the use of such structures as memory. The charge leaks out of the pocket, but it happens rather slowly (~ 10-20 years), which allows the use of EEPROM / Flash as a non-volatile memory. Flash is used to store program code in microcontroller devices, as well as in memory cards.

Fig.4 Transistor with a floating gate
Why is FRAM better than these types of memory?
The main advantage of FRAM over SRAM is non-volatility. When the power to the memory chip is cut off, it retains its previous state. At the same time, the performance of these types of memory is comparable to each other - the write cycle on FRAM takes 150 nanoseconds versus 55 nanoseconds in SRAM according to the Fujitsu website . But FRAM has a limited (albeit huge - 10 ^ 13) number of rewrite cycles, while SRAM has no such restrictions. DRAM loses much to FRAM in terms of power consumption due to the need for data regeneration. Therefore, DRAM is not used in energy-sensitive devices.
Nevertheless, although FRAM is comparable in characteristics to SRAM, the main potential of the application is tied to significant advantages over Flash memory. First of all, it is a huge performance. From the same link to the Fujitsu website, the time of one recording cycle on Flash is about 10 microseconds. Here we should mention the peculiarity of the use of flash-memory - writing and erasing in it is carried out in sufficiently large blocks. Therefore, overwriting one byte in a flash is a very expensive pleasure both in time and in energy consumption - you need to save the data block somewhere, change the byte in it, completely erase the corresponding section of the block and overwrite the updated data in it. Here, by the way, another advantage of FRAM is the random access memory, which means that you can change individual bits in it without touching the neighboring ones. But even when writing large blocks of FRAM data is an order of magnitude faster. So, in Texas Instrument controllers, writing a 13 kB block takes 10 ms in FRAM versus 1 second in Flash (proof ). Another drawback of Flash is the very limited number of rewrite cycles - of the order of 10 ^ 5.
When I found out about all these properties, I had one question - why FRAM still has not killed Flash? Indeed, all the characteristics of FRAM are orders of magnitude better than the characteristics of a flash. Here the main disadvantages of ferromagnetic RAM surfaced. First of all, this is a low density of information due to the nature of the technology. Another disadvantage follows from this drawback - the capacity of FRAM drives cannot be made large enough. Fujitsu offers memory circuits up to 4 Mbps, which cannot be compared with multi-gigabyte flash drives. Another drawback is the rather high cost of memory. Today, FRAM has a very tiny share of the semiconductor device market.
For which applications is optimal memory such as FRAM? Good enough FRAM in microcontrollers in combination with a small amount of SRAM. Actually, this is the very application that attracted me to this type of memory. For example, Texas Instruments has released a line of FRAM microcontrollers with completely missing Flash / EEPROMs. The code in them is written in the FRAM segment, and data in the same FRAM can be accessed in the same way as regular RAM memory. Such an application is convenient where there is a significant amount of data that can often be overwritten. For example, a portable logger for which power consumption is important. You can write data to FRAM for a certain time, then analyze and, for example, send data about the average values wirelessly. Flash memory is inconvenient with this use - it will quickly drain the battery, and due to the limited recording cycles, after some time, problems with damaged memory cells may appear. Thus, FRAM is beneficial for low-power applications with a relatively large volume and high frequency of writing to non-volatile memory. In general, TI on its website indicates in which areas in their opinion such a memory is most convenient.
I hope I managed to draw your attention to this interesting and unusual technology, about which, unfortunately, there is practically no information on Habré / Gytims.
So, FeRAM or Ferromagnetic Random Access non-volatile Memory is a type of memory whose operating principle is based on the hysteresis effect in a ferroelectric. When an electric field is applied to the cell, it changes its polarization, passing to another part of the hysteresis loop. Due to this, it is possible to obtain two states that are clearly distinguishable by energy, and this is enough to create memory based on such a cell. This is well illustrated by GIFs from the site of Fujitsu - one of the main producers of FRAM.


Fig. 1 The principle of operation of FRAM.
In order to understand what advantages this gives over classical types of memory, it is also necessary to recall the basic principles of operation of other types of memory.
The principle of operation of DRAM (Dynamic RAM) is based on reading and changing the capacitor charge. If the capacitor is charged, the cell is in the state “1”, if discharged, it is in the state “0”. Just like an umbrella. To increase the speed in memory cells, small capacitors are used, the charge of which flows relatively quickly. Therefore, to ensure the safety of information, information has to be regenerated. DRAM is used as RAM on modern computers because of its low cost (compared to SRAM) and high speed (compared to disk drives).

Fig. 2 Typical DRAM
SRAM (Static RAM) is much more complex than DRAM, and therefore much more expensive. Its principle of operation is based on the use of CMOS transistors. When combining several transistors, you can get a trigger - a cell that saves a certain logical state. For this type of memory, there is no need for state regeneration, but nevertheless, in the absence of power, data is lost, i.e. memory remains volatile. This kind of memory is faster than DRAM. Since such memory is much more expensive than DRAM, it is used where a very short response time is required - in the processor cache.

Fig. 3 Six-transistor SRAM cell
Modern Flash and EEPROM are based on the use of transistors with the so-called floating gate. Electrons are injected into the "pocket" of the semiconductor structure, and their presence / absence can be detected externally. This is a property that allows the use of such structures as memory. The charge leaks out of the pocket, but it happens rather slowly (~ 10-20 years), which allows the use of EEPROM / Flash as a non-volatile memory. Flash is used to store program code in microcontroller devices, as well as in memory cards.
Fig.4 Transistor with a floating gate
Why is FRAM better than these types of memory?
The main advantage of FRAM over SRAM is non-volatility. When the power to the memory chip is cut off, it retains its previous state. At the same time, the performance of these types of memory is comparable to each other - the write cycle on FRAM takes 150 nanoseconds versus 55 nanoseconds in SRAM according to the Fujitsu website . But FRAM has a limited (albeit huge - 10 ^ 13) number of rewrite cycles, while SRAM has no such restrictions. DRAM loses much to FRAM in terms of power consumption due to the need for data regeneration. Therefore, DRAM is not used in energy-sensitive devices.
Nevertheless, although FRAM is comparable in characteristics to SRAM, the main potential of the application is tied to significant advantages over Flash memory. First of all, it is a huge performance. From the same link to the Fujitsu website, the time of one recording cycle on Flash is about 10 microseconds. Here we should mention the peculiarity of the use of flash-memory - writing and erasing in it is carried out in sufficiently large blocks. Therefore, overwriting one byte in a flash is a very expensive pleasure both in time and in energy consumption - you need to save the data block somewhere, change the byte in it, completely erase the corresponding section of the block and overwrite the updated data in it. Here, by the way, another advantage of FRAM is the random access memory, which means that you can change individual bits in it without touching the neighboring ones. But even when writing large blocks of FRAM data is an order of magnitude faster. So, in Texas Instrument controllers, writing a 13 kB block takes 10 ms in FRAM versus 1 second in Flash (proof ). Another drawback of Flash is the very limited number of rewrite cycles - of the order of 10 ^ 5.
When I found out about all these properties, I had one question - why FRAM still has not killed Flash? Indeed, all the characteristics of FRAM are orders of magnitude better than the characteristics of a flash. Here the main disadvantages of ferromagnetic RAM surfaced. First of all, this is a low density of information due to the nature of the technology. Another disadvantage follows from this drawback - the capacity of FRAM drives cannot be made large enough. Fujitsu offers memory circuits up to 4 Mbps, which cannot be compared with multi-gigabyte flash drives. Another drawback is the rather high cost of memory. Today, FRAM has a very tiny share of the semiconductor device market.
For which applications is optimal memory such as FRAM? Good enough FRAM in microcontrollers in combination with a small amount of SRAM. Actually, this is the very application that attracted me to this type of memory. For example, Texas Instruments has released a line of FRAM microcontrollers with completely missing Flash / EEPROMs. The code in them is written in the FRAM segment, and data in the same FRAM can be accessed in the same way as regular RAM memory. Such an application is convenient where there is a significant amount of data that can often be overwritten. For example, a portable logger for which power consumption is important. You can write data to FRAM for a certain time, then analyze and, for example, send data about the average values wirelessly. Flash memory is inconvenient with this use - it will quickly drain the battery, and due to the limited recording cycles, after some time, problems with damaged memory cells may appear. Thus, FRAM is beneficial for low-power applications with a relatively large volume and high frequency of writing to non-volatile memory. In general, TI on its website indicates in which areas in their opinion such a memory is most convenient.
I hope I managed to draw your attention to this interesting and unusual technology, about which, unfortunately, there is practically no information on Habré / Gytims.