Atmega 8 и Параллельная память
-
Nicke
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Вт фев 09, 2010 19:21:27
- Откуда: Belarus
Atmega 8 и Параллельная память
Доброго времени.
Вот проблема возникла. Нужно подключить память, желательно параллельную, главное что бы скорость записи была высокой до 2мкс, а объем не менне 128Кб. Вот только проактики в этом у меня нет. Пробывал использывать FM24с512 по TWI, но скорость записи не устраивает. Хотелось посмотреть запись в память по адресу и чтение с паралелльным интерфейсом. (В С не бум бум, пишу АСМЕ)
Вот проблема возникла. Нужно подключить память, желательно параллельную, главное что бы скорость записи была высокой до 2мкс, а объем не менне 128Кб. Вот только проактики в этом у меня нет. Пробывал использывать FM24с512 по TWI, но скорость записи не устраивает. Хотелось посмотреть запись в память по адресу и чтение с паралелльным интерфейсом. (В С не бум бум, пишу АСМЕ)
- Реклама
- Meteor
- Друг Кота
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
- Контактная информация:
Re: Atmega 8 и Параллельная память
Подключение памяти с параллельной адресацией ни чем не отличается от общепринятого. Можно смотреть там, единственно придется самостоятельно формировать сигналы ALE и #PSEN, назначив выводы одного из порта.
Скорость доступа будет зависеть от тактовой частоты, на 1МГц потребуется на вскидку как минимум 6-8 тактов (125 кГц)
Скорость доступа будет зависеть от тактовой частоты, на 1МГц потребуется на вскидку как минимум 6-8 тактов (125 кГц)
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Re: Atmega 8 и Параллельная память
За 2 микросекунды нужно забить все 128Кбит
А какая тактовая частота контроллера будет?
При 16Мг за 2 микросекуды контроллер обработает максимум 32 команды, эт при условии что команды будут использоваться только те что выполняются за 1 такт. Что то сложновато будет (ИМХО нереально, по крайней мере при такой частоте)
При 16Мг за 2 микросекуды контроллер обработает максимум 32 команды, эт при условии что команды будут использоваться только те что выполняются за 1 такт. Что то сложновато будет (ИМХО нереально, по крайней мере при такой частоте)
[img]http://i053.radikal.ru/1102/71/0a0346d3a067.gif[/img]
[size=85]Ты думаешь ты думал как ты думаешь? (с)[/size]
[size=85]Ты думаешь ты думал как ты думаешь? (с)[/size]
- Meteor
- Друг Кота
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
- Контактная информация:
Re: Atmega 8 и Параллельная память
Надеюсь что автору нужно время доступа к ячейке не более 2 мкс.
Но боюсь от автора подробностей мы не получим...
Но боюсь от автора подробностей мы не получим...

Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
-
Nicke
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Вт фев 09, 2010 19:21:27
- Откуда: Belarus
Re: Atmega 8 и Параллельная память
За 2мкс нужно записать один байт. Если использовать 4Мгц - 8 машинных циклов. Может уже кто работал параллельным интерфесом, и может рассказать про запись и чтение с определенного адреа.
- Реклама
Re: Atmega 8 и Параллельная память
Nicke писал(а):За 2мкс нужно записать один байт. Если использовать 4Мгц - 8 машинных циклов. Может уже кто работал параллельным интерфесом, и может рассказать про запись и чтение с определенного адреа.
В меге8 нет аппаратной поддержки параллельной памяти, поэтому реализовывать интерфейс придется софтово. В принципе 8 машинных циклов на операцию записи должно хватить, но придется ужиматься. С записью байта за байтом в цикле будет достаточно тяжело на 4 МГц, лучше наверное 8 взять.
-
Nicke
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Вт фев 09, 2010 19:21:27
- Откуда: Belarus
Re: Atmega 8 и Параллельная память
Да можно использовать и 8 мгц (когда добьюсь работы перепишу все остальное на 8мгц) А пока читаю принцип работы параллельной памяти и ни чего не понимаю.
- ibiza11
- Поставщик валерьянки для Кота
- Сообщения: 1900
- Зарегистрирован: Сб фев 21, 2009 13:11:40
- Откуда: Москва
Re: Atmega 8 и Параллельная память
Вам EEPROM нужна или SRAM?
на вскидку взял первую попавшуюся параллельную EEPROM AT28C64B. там всего 64кбит
в нее можно писать как побайтно так и постранично. отличие в том, что при побайтной записи перед каждой записью нужно сначала устанавливать адрес ячейки, а при постраничной записи указываем адрес начальной ячейки и льем дальше только данные, инкремент адреса автоматический. соответственно второй способ быстрее.
A0-A12(Adress pins)
CE(ChipEnable)
OE(OutputEnable)
WE(WriteEnable)
I0-I7(Data Input/Output)
(надеюсь переводить не нужно)
побайтовая запись :
OE - единица, CE - ноль, A0-A12 - требуемый адрес, I0-I7 - требуемые данные, WE - импульс 1-0-1 не меньше 100 нс.
постраничная запись : смотри в даташите, дальше лень, извини...
на вскидку взял первую попавшуюся параллельную EEPROM AT28C64B. там всего 64кбит
в нее можно писать как побайтно так и постранично. отличие в том, что при побайтной записи перед каждой записью нужно сначала устанавливать адрес ячейки, а при постраничной записи указываем адрес начальной ячейки и льем дальше только данные, инкремент адреса автоматический. соответственно второй способ быстрее.
A0-A12(Adress pins)
CE(ChipEnable)
OE(OutputEnable)
WE(WriteEnable)
I0-I7(Data Input/Output)
(надеюсь переводить не нужно)
побайтовая запись :
OE - единица, CE - ноль, A0-A12 - требуемый адрес, I0-I7 - требуемые данные, WE - импульс 1-0-1 не меньше 100 нс.
постраничная запись : смотри в даташите, дальше лень, извини...
Ставим плюсы: )
-
Nicke
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Вт фев 09, 2010 19:21:27
- Откуда: Belarus
Re: Atmega 8 и Параллельная память
Вообще необходима память на менее 128Кбайт с высокой скоростью записи, и желательно запись байта за 2мкс. В память писаться будет по байтно (вообще желательно SRAM).
- Danko
- Сверлит текстолит когтями
- Сообщения: 1287
- Зарегистрирован: Пн окт 13, 2008 11:45:54
- Откуда: РФ, Крым, г.Бахчисарай
- Контактная информация:
Re: Atmega 8 и Параллельная память
Если мега8 не принципиально то Mega8515 умеет работать с внешней памятью.
viewtopic.php?f=20&t=5571&hilit=mega8515
viewtopic.php?f=20&t=5571&hilit=mega8515
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
- Rimsky
- Грызет канифоль
- Сообщения: 299
- Зарегистрирован: Вт июн 15, 2010 07:16:42
- Откуда: Иркутск
- Контактная информация:
Re: Atmega 8 и Параллельная память
ibiza11 писал(а):256кбайт
Если я не ошибаюсь, чтоб адресовать такой объем в паралельном виде нужно 3FFFF шину адреса, и следовательно 18 ножек контроллера, поэтому для mega8 нужен сдвиговый регистр, чтоб его зарядить нужно время.
- BarsMonster
- Нашел транзистор. Понюхал.
- Сообщения: 176
- Зарегистрирован: Чт янв 28, 2010 02:55:37
Re: Atmega 8 и Параллельная память
Rimsky писал(а):ibiza11 писал(а):256кбайт
Если я не ошибаюсь, чтоб адресовать такой объем в паралельном виде нужно 3FFFF шину адреса, и следовательно 18 ножек контроллера, поэтому для mega8 нужен сдвиговый регистр, чтоб его зарядить нужно время.
3 8-и битных буфера, из МК - 12 выводов, 8 данные/мультиплексированный адрес, 4: запись в первый буффер, во второй, в третий, OE на SRAM (можно и в 2 уложиться с декодером, но 4 проще).
Тогда чтение последовательных байт будет идти достаточно резво, переключение 256-байтовых "страниц" - уже медленнее.
Таким образом адресуем 24-х битное пространство, можно брать самые жирные SRAM от Samsung/Cypress на 4Мбита.
Но если нужно только 128Кб, то тогда можно 2 буфера, и старший бит адреса напрямую с МК выводить.
- COKPOWEHEU
- Говорящий с текстолитом
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Re: Atmega 8 и Параллельная память
Ну можно еще перейти на ATmega128 например
. Там линий ввода-вывода наверняка хватит. Или вообще на ARM, там и встроенная ОЗУ довольно большая.
-
Nicke
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Вт фев 09, 2010 19:21:27
- Откуда: Belarus
Re: Atmega 8 и Параллельная память
COKPOWEHEU писал(а):Ну можно еще перейти на ATmega128 например. Там линий ввода-вывода наверняка хватит. Или вообще на ARM, там и встроенная ОЗУ довольно большая.
А об ARM, это как я понял 32-битный МК. Где можно посмотреть линейку выпускаемых МК (на русском и интересует ОЗУ 256Кбайт) и сложно ли будет перейти на эти МК.
- COKPOWEHEU
- Говорящий с текстолитом
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Re: Atmega 8 и Параллельная память
Не знаю. А вас устраивает явно избыточная функциональность (по сравнению с 8-й мегой), планарный корпус (который паять неудобно) и цена?
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Atmega 8 и Параллельная память
Я не видел ни одного ARM7 или Cortex M3 с 256кб SRAM наборту, с внешней пожалуйста, а вот чтоб столько много было это только ARM9, в корпусах LQFP208 
Where technology meets enjoyment.
-
Nicke
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Вт фев 09, 2010 19:21:27
- Откуда: Belarus
Re: Atmega 8 и Параллельная память
neonix писал(а):Я не видел ни одного ARM7 или Cortex M3 с 256кб SRAM наборту, с внешней пожалуйста, а вот чтоб столько много было это только ARM9, в корпусах LQFP208
AT91R40008
Содержит ядро процессора ARM7TDMI™ ARM® Thumb®
256 кбайт встроенного статического ОЗУ
Вот собственно ссылка на МК:
http://www.gaw.ru/html.cgi/txt/ic/Atmel ... R40008.htm
-
Nicke
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Вт фев 09, 2010 19:21:27
- Откуда: Belarus
Re: Atmega 8 и Параллельная память
COKPOWEHEU писал(а):Не знаю. А вас устраивает явно избыточная функциональность (по сравнению с 8-й мегой), планарный корпус (который паять неудобно) и цена?
Ну начнем с того что 10у.е. это не много. А в 8 меге мне нехватает ОЗУ, да и вообще в авр мне ни хватает ОЗУ. Мне надо хотя бы 256кбайт с высокой скоростью записи.
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Atmega 8 и Параллельная память
Nicke писал(а):AT91R40008
Содержит ядро процессора ARM7TDMI™ ARM® Thumb®
256 кбайт встроенного статического ОЗУ
Вот собственно ссылка на МК:
http://www.gaw.ru/html.cgi/txt/ic/Atmel ... R40008.htm
Интересный камень, жаль периферия скудная да и староват уже
Where technology meets enjoyment.


