O firmware carregável normalmente não é uma instalação "única" gravada em flash no dispositivo. O firmware é carregado no armazenamento volátil no dispositivo e precisa ser feito sempre que o computador host é ligado. O dispositivo não funciona antes do firmware ser carregado. O firmware pode ser gravado na memória RAM no dispositivo, caso em que contém código e dados para o processador no dispositivo, mas também pode ser um fluxo de bits definindo a lógica de um FPGA (field-programmable logic array) ou combinação de ambos.
Por outro lado, o firmware na memória flash é tipicamente pré-programado nos dispositivos e só precisa ser reescrito se houver uma atualização para o firmware do fabricante. Isso geralmente é feito por meio de outros mecanismos, como um executável separado que é executado pelo usuário.
Existem algumas razões pelas quais os fabricantes querem usar a RAM em vez da memória flash. Primeiro de tudo, torna possível projetar uma única versão do hardware, mas ao mesmo tempo entregar várias versões do produto (para diferentes áreas de mercado, por exemplo). Se for esperado que o produto seja atualizado frequentemente em campo, pode ser mais fácil lidar com as atualizações de firmware dessa maneira do que se dar ao trabalho de criar um programa para atualizar a memória flash no dispositivo. Este programa deve ter uma boa interface de usuário e ser projetado para ser o mais amigável possível, já que normalmente é executado pelo usuário final do produto. Alguns dispositivos com armazenamento flash geralmente executam códigos da RAM de qualquer maneira, e eles simplesmente copiam o conteúdo do flash para a RAM quando o dispositivo é iniciado, caso em que o chip flash permanece inativo a maior parte do tempo e é uma despesa extra. p>