Can I lower flash power consumption by pre-flashing all values to high?












1












$begingroup$


I am designing an embedded system that will use either embedded flash memory or an SD card.
The system must survive without much power and the estimated 30mA draw of an SD card sounds too high for me.
My idea is to prepare the SD card before it is deployed by writing 1's to every single flash cell then formatting the card.
When being used in the application, the controller will never need to charge the flash cells with the battery, and will instead discharge them, perhaps lowering power draw further by acting as a micro power supply.
Is this reasonable, or will I not notice any power savings?










share|improve this question









$endgroup$












  • $begingroup$
    Keep in mind that the capacitances of those cells are measured in femtofarads.
    $endgroup$
    – Hearth
    Jan 23 at 0:12










  • $begingroup$
    Flash can only be written in one direction, changing it in the other is erasure, which is only possible for an entire block. So you do not get to choose the ready-to-write state, it is whatever the technology requires, as represented by the interface circuitry.
    $endgroup$
    – Chris Stratton
    Jan 23 at 1:03






  • 1




    $begingroup$
    IIRC, "all-high" is how flash are generally shipped from the factory. (I don't recall if this is specific to some particular type of flash)
    $endgroup$
    – The Photon
    Jan 23 at 1:04










  • $begingroup$
    Okay, the fact that the cells are measured in femtoFarads answers the question. That's 1 centiJoule for a 128GB flash chip per femtoFarad of the cells.
    $endgroup$
    – Sina R
    Jan 26 at 3:32
















1












$begingroup$


I am designing an embedded system that will use either embedded flash memory or an SD card.
The system must survive without much power and the estimated 30mA draw of an SD card sounds too high for me.
My idea is to prepare the SD card before it is deployed by writing 1's to every single flash cell then formatting the card.
When being used in the application, the controller will never need to charge the flash cells with the battery, and will instead discharge them, perhaps lowering power draw further by acting as a micro power supply.
Is this reasonable, or will I not notice any power savings?










share|improve this question









$endgroup$












  • $begingroup$
    Keep in mind that the capacitances of those cells are measured in femtofarads.
    $endgroup$
    – Hearth
    Jan 23 at 0:12










  • $begingroup$
    Flash can only be written in one direction, changing it in the other is erasure, which is only possible for an entire block. So you do not get to choose the ready-to-write state, it is whatever the technology requires, as represented by the interface circuitry.
    $endgroup$
    – Chris Stratton
    Jan 23 at 1:03






  • 1




    $begingroup$
    IIRC, "all-high" is how flash are generally shipped from the factory. (I don't recall if this is specific to some particular type of flash)
    $endgroup$
    – The Photon
    Jan 23 at 1:04










  • $begingroup$
    Okay, the fact that the cells are measured in femtoFarads answers the question. That's 1 centiJoule for a 128GB flash chip per femtoFarad of the cells.
    $endgroup$
    – Sina R
    Jan 26 at 3:32














1












1








1





$begingroup$


I am designing an embedded system that will use either embedded flash memory or an SD card.
The system must survive without much power and the estimated 30mA draw of an SD card sounds too high for me.
My idea is to prepare the SD card before it is deployed by writing 1's to every single flash cell then formatting the card.
When being used in the application, the controller will never need to charge the flash cells with the battery, and will instead discharge them, perhaps lowering power draw further by acting as a micro power supply.
Is this reasonable, or will I not notice any power savings?










share|improve this question









$endgroup$




I am designing an embedded system that will use either embedded flash memory or an SD card.
The system must survive without much power and the estimated 30mA draw of an SD card sounds too high for me.
My idea is to prepare the SD card before it is deployed by writing 1's to every single flash cell then formatting the card.
When being used in the application, the controller will never need to charge the flash cells with the battery, and will instead discharge them, perhaps lowering power draw further by acting as a micro power supply.
Is this reasonable, or will I not notice any power savings?







flash sd nand flash-memories nand-flash






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Jan 23 at 0:06









Sina RSina R

154




154












  • $begingroup$
    Keep in mind that the capacitances of those cells are measured in femtofarads.
    $endgroup$
    – Hearth
    Jan 23 at 0:12










  • $begingroup$
    Flash can only be written in one direction, changing it in the other is erasure, which is only possible for an entire block. So you do not get to choose the ready-to-write state, it is whatever the technology requires, as represented by the interface circuitry.
    $endgroup$
    – Chris Stratton
    Jan 23 at 1:03






  • 1




    $begingroup$
    IIRC, "all-high" is how flash are generally shipped from the factory. (I don't recall if this is specific to some particular type of flash)
    $endgroup$
    – The Photon
    Jan 23 at 1:04










  • $begingroup$
    Okay, the fact that the cells are measured in femtoFarads answers the question. That's 1 centiJoule for a 128GB flash chip per femtoFarad of the cells.
    $endgroup$
    – Sina R
    Jan 26 at 3:32


















  • $begingroup$
    Keep in mind that the capacitances of those cells are measured in femtofarads.
    $endgroup$
    – Hearth
    Jan 23 at 0:12










  • $begingroup$
    Flash can only be written in one direction, changing it in the other is erasure, which is only possible for an entire block. So you do not get to choose the ready-to-write state, it is whatever the technology requires, as represented by the interface circuitry.
    $endgroup$
    – Chris Stratton
    Jan 23 at 1:03






  • 1




    $begingroup$
    IIRC, "all-high" is how flash are generally shipped from the factory. (I don't recall if this is specific to some particular type of flash)
    $endgroup$
    – The Photon
    Jan 23 at 1:04










  • $begingroup$
    Okay, the fact that the cells are measured in femtoFarads answers the question. That's 1 centiJoule for a 128GB flash chip per femtoFarad of the cells.
    $endgroup$
    – Sina R
    Jan 26 at 3:32
















$begingroup$
Keep in mind that the capacitances of those cells are measured in femtofarads.
$endgroup$
– Hearth
Jan 23 at 0:12




$begingroup$
Keep in mind that the capacitances of those cells are measured in femtofarads.
$endgroup$
– Hearth
Jan 23 at 0:12












$begingroup$
Flash can only be written in one direction, changing it in the other is erasure, which is only possible for an entire block. So you do not get to choose the ready-to-write state, it is whatever the technology requires, as represented by the interface circuitry.
$endgroup$
– Chris Stratton
Jan 23 at 1:03




$begingroup$
Flash can only be written in one direction, changing it in the other is erasure, which is only possible for an entire block. So you do not get to choose the ready-to-write state, it is whatever the technology requires, as represented by the interface circuitry.
$endgroup$
– Chris Stratton
Jan 23 at 1:03




1




1




$begingroup$
IIRC, "all-high" is how flash are generally shipped from the factory. (I don't recall if this is specific to some particular type of flash)
$endgroup$
– The Photon
Jan 23 at 1:04




$begingroup$
IIRC, "all-high" is how flash are generally shipped from the factory. (I don't recall if this is specific to some particular type of flash)
$endgroup$
– The Photon
Jan 23 at 1:04












$begingroup$
Okay, the fact that the cells are measured in femtoFarads answers the question. That's 1 centiJoule for a 128GB flash chip per femtoFarad of the cells.
$endgroup$
– Sina R
Jan 26 at 3:32




$begingroup$
Okay, the fact that the cells are measured in femtoFarads answers the question. That's 1 centiJoule for a 128GB flash chip per femtoFarad of the cells.
$endgroup$
– Sina R
Jan 26 at 3:32










2 Answers
2






active

oldest

votes


















2












$begingroup$


When being used in the application, the controller will never need to charge the flash cells with the battery, and will instead discharge them, perhaps lowering power draw further by acting as a micro power supply. Is this reasonable, or will I not notice any power savings?




No, this is not reasonable. Flash memory is not DRAM. Its cells do not need to be recharged from a battery, nor can they be used as a power source.



The vast majority of power draw by an SD card comes from the SD controller, and from the charge pumps on the flash memory die (which are only active when writing or erasing flash). Its power consumption will drop significantly when the card is idle.






share|improve this answer









$endgroup$





















    3












    $begingroup$

    The way to save battery when having a SD card in the system is to use a transisor or FET to switch off the DC power supply to the card connector when you are not needing to access the card for data reading or writing.



    You want to keep the SD card GND intact with the MCU GND. So make sure to have the power switch turn the SD card VDD on and off.



    Also to prevent excess leakage into the powered down SD card make sure to set all of the I/O pins that connect to the SD card interface to a low output level before turning off the card via the transistor or FET.



    Skip any ideas that you dreamed up regarding to save power by changing the content of the flash memory to a certain default data.






    share|improve this answer









    $endgroup$













      Your Answer





      StackExchange.ifUsing("editor", function () {
      return StackExchange.using("mathjaxEditing", function () {
      StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
      StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
      });
      });
      }, "mathjax-editing");

      StackExchange.ifUsing("editor", function () {
      return StackExchange.using("schematics", function () {
      StackExchange.schematics.init();
      });
      }, "cicuitlab");

      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "135"
      };
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function() {
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled) {
      StackExchange.using("snippets", function() {
      createEditor();
      });
      }
      else {
      createEditor();
      }
      });

      function createEditor() {
      StackExchange.prepareEditor({
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader: {
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      },
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      });


      }
      });














      draft saved

      draft discarded


















      StackExchange.ready(
      function () {
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f418400%2fcan-i-lower-flash-power-consumption-by-pre-flashing-all-values-to-high%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      2












      $begingroup$


      When being used in the application, the controller will never need to charge the flash cells with the battery, and will instead discharge them, perhaps lowering power draw further by acting as a micro power supply. Is this reasonable, or will I not notice any power savings?




      No, this is not reasonable. Flash memory is not DRAM. Its cells do not need to be recharged from a battery, nor can they be used as a power source.



      The vast majority of power draw by an SD card comes from the SD controller, and from the charge pumps on the flash memory die (which are only active when writing or erasing flash). Its power consumption will drop significantly when the card is idle.






      share|improve this answer









      $endgroup$


















        2












        $begingroup$


        When being used in the application, the controller will never need to charge the flash cells with the battery, and will instead discharge them, perhaps lowering power draw further by acting as a micro power supply. Is this reasonable, or will I not notice any power savings?




        No, this is not reasonable. Flash memory is not DRAM. Its cells do not need to be recharged from a battery, nor can they be used as a power source.



        The vast majority of power draw by an SD card comes from the SD controller, and from the charge pumps on the flash memory die (which are only active when writing or erasing flash). Its power consumption will drop significantly when the card is idle.






        share|improve this answer









        $endgroup$
















          2












          2








          2





          $begingroup$


          When being used in the application, the controller will never need to charge the flash cells with the battery, and will instead discharge them, perhaps lowering power draw further by acting as a micro power supply. Is this reasonable, or will I not notice any power savings?




          No, this is not reasonable. Flash memory is not DRAM. Its cells do not need to be recharged from a battery, nor can they be used as a power source.



          The vast majority of power draw by an SD card comes from the SD controller, and from the charge pumps on the flash memory die (which are only active when writing or erasing flash). Its power consumption will drop significantly when the card is idle.






          share|improve this answer









          $endgroup$




          When being used in the application, the controller will never need to charge the flash cells with the battery, and will instead discharge them, perhaps lowering power draw further by acting as a micro power supply. Is this reasonable, or will I not notice any power savings?




          No, this is not reasonable. Flash memory is not DRAM. Its cells do not need to be recharged from a battery, nor can they be used as a power source.



          The vast majority of power draw by an SD card comes from the SD controller, and from the charge pumps on the flash memory die (which are only active when writing or erasing flash). Its power consumption will drop significantly when the card is idle.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Jan 23 at 2:34









          duskwuffduskwuff

          17.8k32752




          17.8k32752

























              3












              $begingroup$

              The way to save battery when having a SD card in the system is to use a transisor or FET to switch off the DC power supply to the card connector when you are not needing to access the card for data reading or writing.



              You want to keep the SD card GND intact with the MCU GND. So make sure to have the power switch turn the SD card VDD on and off.



              Also to prevent excess leakage into the powered down SD card make sure to set all of the I/O pins that connect to the SD card interface to a low output level before turning off the card via the transistor or FET.



              Skip any ideas that you dreamed up regarding to save power by changing the content of the flash memory to a certain default data.






              share|improve this answer









              $endgroup$


















                3












                $begingroup$

                The way to save battery when having a SD card in the system is to use a transisor or FET to switch off the DC power supply to the card connector when you are not needing to access the card for data reading or writing.



                You want to keep the SD card GND intact with the MCU GND. So make sure to have the power switch turn the SD card VDD on and off.



                Also to prevent excess leakage into the powered down SD card make sure to set all of the I/O pins that connect to the SD card interface to a low output level before turning off the card via the transistor or FET.



                Skip any ideas that you dreamed up regarding to save power by changing the content of the flash memory to a certain default data.






                share|improve this answer









                $endgroup$
















                  3












                  3








                  3





                  $begingroup$

                  The way to save battery when having a SD card in the system is to use a transisor or FET to switch off the DC power supply to the card connector when you are not needing to access the card for data reading or writing.



                  You want to keep the SD card GND intact with the MCU GND. So make sure to have the power switch turn the SD card VDD on and off.



                  Also to prevent excess leakage into the powered down SD card make sure to set all of the I/O pins that connect to the SD card interface to a low output level before turning off the card via the transistor or FET.



                  Skip any ideas that you dreamed up regarding to save power by changing the content of the flash memory to a certain default data.






                  share|improve this answer









                  $endgroup$



                  The way to save battery when having a SD card in the system is to use a transisor or FET to switch off the DC power supply to the card connector when you are not needing to access the card for data reading or writing.



                  You want to keep the SD card GND intact with the MCU GND. So make sure to have the power switch turn the SD card VDD on and off.



                  Also to prevent excess leakage into the powered down SD card make sure to set all of the I/O pins that connect to the SD card interface to a low output level before turning off the card via the transistor or FET.



                  Skip any ideas that you dreamed up regarding to save power by changing the content of the flash memory to a certain default data.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Jan 23 at 0:27









                  Michael KarasMichael Karas

                  44.5k348103




                  44.5k348103






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to Electrical Engineering Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      Use MathJax to format equations. MathJax reference.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function () {
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f418400%2fcan-i-lower-flash-power-consumption-by-pre-flashing-all-values-to-high%23new-answer', 'question_page');
                      }
                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      'app-layout' is not a known element: how to share Component with different Modules

                      android studio warns about leanback feature tag usage required on manifest while using Unity exported app?

                      WPF add header to Image with URL pettitions [duplicate]