Jump to content

    

Как сделать эмуляцио РОМ?

Задача, есть прибор древний в котором используется 16 адресная память, еще с УФ окном.

 

Ковыряем, надоело каждый раз прошивать, стирать, ну естественно перешли уже на EEPROM аналог 29C128.

но тоже каждый раз пихать в программатор не вариант (а его еще нужно было найти как понимаете).

 

Какой вариант может быть для организации программирования "на лету", через RS232 - USB ?

 

В AVR столько памяти нет, ARM Как я понимаю имея большую FLASH тоже читает\стирает постранично, что не подходит для изменения параметра в 1-2 байт. Скорость чтения самого девайса 14мгц то есть "эмулятор" должен быть достаточно быстрый.

 

Может Гуру подскажут что можно сделать? может можно связать какую нибудь DMA память со одной стороны которого будет "прибор", а с другой интерфейс для изменения?

 

 

В голову конечно приходит плисина типа ALTERA с интерфейсом JTAG на AVR.... но это это в крайнем случае уже.

Share this post


Link to post
Share on other sites

задачу делили на две части....замена на флеш и на отработку ПО

сделайте эмулятор на микропроцессоре с ОЗУ и заливайте в него что хотите....на том же Атмеле...

 

мы так поступали в эпоху флеш со 100 циклами....в однокристалке был код для загрузки данных по USB и размещению кода программы в ОЗУ \у филлипса идея слизана\ и потом однокристалка используя PSEN и ALE молотила в полный рост....портов было предостаточно...16 линий PO.O и P1.0....если хотели расшириться то стоял на плате дешифратор ИД7 и я спокойно вешал на него 573 регистры....много...причем обращались к ИД7 как к внешней памяти....просто писалось...кстати плата есть висит на стене...ностальгия...

 

 

Share this post


Link to post
Share on other sites

Можно посмотреть какую нибудь FRAM, наверняка есть не только с SPI.

Share this post


Link to post
Share on other sites

P89C51RD1\2 эта серия была...только появились...у них был буттлоадер...

 

на стенке тоже кстати висит LPCXpresso 1114....раздают их бесплатно....программатор и отладчик на борту и вторая часть платы сам контроллер с выводами...

Share this post


Link to post
Share on other sites

Вариант ПЛИС + ОЗУ будет самым простым в данном случае. Платку можно будет сделать под имеющуюся кроватку для ИМС.

Share this post


Link to post
Share on other sites

Спасибо за ответы!

 

Атмел по скорости не проходит

и если бы просто была эмуляция памяти, тогда да, любой MCU с заливкой памяти. но.

опять таки, девайс выключить, залить по тому же UART-USB через бут прошивку? включить девайс, дать инициализацию...

 

мужики 57 параметров калибровки СПШ и пяток параметров датчика))) я умру) может конечно эти приборы раньше так и настраивали, но сейчас нет не людей таких ни времени. (как всегда) выручайте

 

Вариант ПЛИС + ОЗУ будет самым простым в данном случае. Платку можно будет сделать под имеющуюся кроватку для ИМС.

 

Хочу плис, не знаю плис. По этому на конец и отодвигаю этот вариант, правильно понимаю, что на любую аврку цепляюсь через UART, она по средствам JTAG эмуляции - программирует ПЛИС. с другой стороны подвожу A0-15 D0-7.

Если все так, какую ПЛИС для начала посоветуйте, не нашел отдельного раздела по ПЛИС. Имеется на работе 240 ножечная О_о Альтера Циклон, может есть что то более адекватное для эмуляции 16кб ?

 

 

 

 

Share this post


Link to post
Share on other sites

непонял одного....а какая это скорость у УФ ПЗУ...там тайминги по 100 нс....

 ARM Cortex-M0 processor, running at frequencies of up to 50 MHz.

 ARM Cortex-M0 built-in Nested Vectored Interrupt Controller (NVIC).

 Non-Maskable Interrupt (NMI) input selectable from several input sources

(LPC1100XL series only).

 Serial Wire Debug.

 System tick timer.

 Memory:

 64 kB (LPC1115), 56 kB (LPC1114/333), 48 kB (LPC1114/323), 32 kB

(LPC1114/102/201/202/203/301/302/303), 24 kB (LPC1113), 16 kB (LPC1112),

8 kB (LPC1111), or 4 kB (LPC1110) on-chip flash programming memory.

 256 byte page erase function (LPC1100XL series only)

 8 kB, 4 kB, 2 kB, or 1 kB SRAM.

 In-System Programming (ISP) and In-Application Programming (IAP) via on-chip

bootloader software.

 

ничего не умрешь...с УФ не умер...а ткнуть ресет это уже проблема...плиску можно...только внимание обратить на питание выходов...память VHDL есть на сайте альтеры...байтбластер соберешь сам там одна микросхема буфер...

Share this post


Link to post
Share on other sites
непонял одного....а какая это скорость у УФ ПЗУ...там тайминги по 100 нс....

 ARM Cortex-M0 processor, running at frequencies of up to 50 MHz.

Ну, и?

5 тактов на обработку прерывания? Не маловато?

 

Если контроллер, то только как ин-систем программатор имеющегося ЭСППЗУ

 

Если для целей отладки, то статическое ОЗУ с батарейкой вполне подойдет.

 

Share this post


Link to post
Share on other sites
Скорость чтения самого девайса 14мгц то есть "эмулятор" должен быть достаточно быстрый.

Длительность ноля сигналов /CS и /OE на 29C128 какая?

Share this post


Link to post
Share on other sites
Длительность ноля сигналов /CS и /OE на 29C128 какая?

/CE=70 нан

/OE=40 нан

 

Если для целей отладки, то статическое ОЗУ с батарейкой вполне подойдет.

 

Извиняюсь, а разве есть такие что бы был одновременно доступ к памяти с "разных" направлений?

 

Мне бы такую систему, чтобы был и DMA доступ к памяти, и пусть медленный но "одновременный" доступ к памяти на запись с "другой" стороны, без прерывания основного устройства.

 

память VHDL есть на сайте альтеры...байтбластер соберешь сам там одна микросхема буфер...

Ну вот пошла учеба ПЛИС, это точно окончательный выбор решения моей задачки?

Share this post


Link to post
Share on other sites

решать то тебе...там ничего сложного нету....библиотек и примеров море....

привесь FTDI к ПЛИС и получишь канал загрузки и управления...память внешнюю...закачал и переключился...

Share this post


Link to post
Share on other sites
/CE=70 нан

/OE=40 нан

1. Плис на частоте x4 + FastSRAM + мк.

2. Одна но большая плис в которой реализовать и SRAM и интерфейс.

 

То что основное изделие должно только читать, значительно упрощает задачу.

 

...закачал и переключился...

Как я понял, тс "на лету" надо. Без "переключился".

Share this post


Link to post
Share on other sites
нет не людей таких ни времени

В первую очередь здесь доступность компонентов, а она не указана.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this