kotenok gavТам проблема вовсе не в объёме памяти, а гораздо глубже, в разрядности адресов и счётчика команд.
В данном варианте вам 8 фаз тактового цикла не хватит чтобы получить/записать байт из SPI ОЗУ, даже при полностью аппаратной реализации пересылки байтов. Придётся делать отдельный генератор, сдвиговый регистр, управляющий модуль ...т.е. фактически превращать SPI протокол в Parallel. И в результате получите собранную на логике микросхему типа 62256.
Не проще ли сразу её поставить.
А если пересылку байтов делать программно, то 16 команд не хватит даже переслать один байт, не говоря уж о каком-то более сложном обмене данными. В AVR и PIC на программынй обмен по SPI протоколу одним байтов уходит 60-100 команд линейного кода или 6-10 команд цикла. Это только чтобы байт записать/прочитать. Плюс надо дёргать управляющие ноги ОЗУ (как минимум CS). Плюс чтобы добыть из ОЗУ бйт надо сначала послать команду, потом адрес, и только потом забрать байт. В сумме надо десятка два-три памяти команд. Минимум. С 62256 намного проще, поставить один-два регистра адреса и собственно всё, остальные модификации лишь в микрокоде (те две 28C16 в управляющем блоке). Правда надо сигналы управления где-то найти, но можно поставить третью 28C16 в управляющий блок. Тогда на первый взгляд можно сделать две новые команды чтения и записи байта в/из нулевого регистра (к примеру) по адресу из первого (и второго) регистра (опять же к примеру). Будет у вас память
данных аж 64КБ (если поставить две 62256 или одну 62512).
Чтобы расширить память
программ надо увеличить разрядность счётчика команд (адрес команды), что повлечёт за собой проблемы с переходами (не хватит разрядности шины данный переслать новый адрес перехода), придётся или увеличивать ширину шины данных, или выдумывать относительные (как везде) или постраничные (как в PIC) переходы, или брать адрес из двух ячеек подряд (как почти во всех CISC процессорах, это усложнение блока управления), или ещё что-то.
Честное слово, повторить внутренности PIC проще. Зато можно будет пользоваться готовыми прошивками! И компиляторами! В том числе с языков высокого уровня типа C/Java/Pascal/Basic/Fortran!!