A flash memory controller with a volatile program and data memory is
disclosed. The controller loads microcode and data into the program and
data memory from a flash memory array upon powerup of the controller. If
an error occurs during the download or the microcode does not exist in the
flash memory array, then the controller loads microcode and data into the
program and data memory from the host computer. In some embodiments of the
invention, an initial code is downloaded to the controller so that an
evaluation of the configuration of the controller and the flash memory can
be communicated to a host computer. The host computer then downloads for
storage into the flash memory a tailored microcode and restarts the
controller so that the tailored microcode is loaded from the flash memory
and executed. In some embodiments, a protection circuit is provided to
protect the microcode from accidentally being erased from the flash
memory. Additionally, in some embodiments, an interleaved data structure
is utilized to minimize wait times during read and write operations to the
flash memory.
Показан внезапный регулятор памяти с испаряющей памятью программы и данных. Нагрузки microcode и данные регулятора в память программы и данных от внезапного блока памяти на powerup регулятора. Если ошибка происходит во время download или microcode не существует в внезапном блоке памяти, то регулятор нагружает microcode и данные в память программы и данных от главного ЭВМА. В некоторых воплощениях вымысла, первоначально Кодий downloaded к регулятору так, что оценка конфигурации регулятора и внезапной памяти можно связывать к главному ЭВМУ. Downloads главного ЭВМА после этого для хранения в внезапную память портняжничанный microcode и рестарты регулятор так, что портняжничанный microcode будет нагружен от внезапной памяти и исполнен. В некоторых воплощениях, обеспечены, что защищает цепь предохранения microcode от случайно быть стертым от внезапной памяти. Дополнительно, в некоторых воплощениях, interleaved структура данных использована для того чтобы уменьшить времена ожидания во время после того как она прочитана и написать деятельности к внезапной памяти.