Вот проблема возникла. Нужно подключить память, желательно параллельную, главное что бы скорость записи была высокой до 2мкс, а объем не менне 128Кб. Вот только проактики в этом у меня нет. Пробывал использывать FM24с512 по TWI, но скорость записи не устраивает. Хотелось посмотреть запись в память по адресу и чтение с паралелльным интерфейсом. (В С не бум бум, пишу АСМЕ)
Atmega 8 и Параллельная память
Доброго времени.
Вот проблема возникла. Нужно подключить память, желательно параллельную, главное что бы скорость записи была высокой до 2мкс, а объем не менне 128Кб. Вот только проактики в этом у меня нет. Пробывал использывать FM24с512 по TWI, но скорость записи не устраивает. Хотелось посмотреть запись в память по адресу и чтение с паралелльным интерфейсом. (В С не бум бум, пишу АСМЕ)
Вот проблема возникла. Нужно подключить память, желательно параллельную, главное что бы скорость записи была высокой до 2мкс, а объем не менне 128Кб. Вот только проактики в этом у меня нет. Пробывал использывать FM24с512 по TWI, но скорость записи не устраивает. Хотелось посмотреть запись в память по адресу и чтение с паралелльным интерфейсом. (В С не бум бум, пишу АСМЕ)
- Реклама
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
Подключение памяти с параллельной адресацией ни чем не отличается от общепринятого. Можно смотреть там, единственно придется самостоятельно формировать сигналы ALE и #PSEN, назначив выводы одного из порта.
Скорость доступа будет зависеть от тактовой частоты, на 1МГц потребуется на вскидку как минимум 6-8 тактов (125 кГц)
Скорость доступа будет зависеть от тактовой частоты, на 1МГц потребуется на вскидку как минимум 6-8 тактов (125 кГц)
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
- Сообщения: 1138
- Зарегистрирован: Сб апр 03, 2010 08:57:35
За 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]
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
Надеюсь что автору нужно время доступа к ячейке не более 2 мкс.
Но боюсь от автора подробностей мы не получим...
Но боюсь от автора подробностей мы не получим...
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
За 2мкс нужно записать один байт. Если использовать 4Мгц - 8 машинных циклов. Может уже кто работал параллельным интерфесом, и может рассказать про запись и чтение с определенного адреа.
- Реклама
- Сообщения: 459
- Зарегистрирован: Вс июн 01, 2008 12:16:38
В меге8 нет аппаратной поддержки параллельной памяти, поэтому реализовывать интерфейс придется софтово. В принципе 8 машинных циклов на операцию записи должно хватить, но придется ужиматься. С записью байта за байтом в цикле будет достаточно тяжело на 4 МГц, лучше наверное 8 взять.Nicke писал(а):За 2мкс нужно записать один байт. Если использовать 4Мгц - 8 машинных циклов. Может уже кто работал параллельным интерфесом, и может рассказать про запись и чтение с определенного адреа.
Да можно использовать и 8 мгц (когда добьюсь работы перепишу все остальное на 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 нс.
постраничная запись : смотри в даташите, дальше лень, извини...
Ставим плюсы: )
Вообще необходима память на менее 128Кбайт с высокой скоростью записи, и желательно запись байта за 2мкс. В память писаться будет по байтно (вообще желательно SRAM).
Если мега8 не принципиально то Mega8515 умеет работать с внешней памятью.
http://radiokot.ru/forum/viewtopic.php? ... t=mega8515
http://radiokot.ru/forum/viewtopic.php? ... t=mega8515
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Если я не ошибаюсь, чтоб адресовать такой объем в паралельном виде нужно 3FFFF шину адреса, и следовательно 18 ножек контроллера, поэтому для mega8 нужен сдвиговый регистр, чтоб его зарядить нужно время.ibiza11 писал(а):256кбайт
- Сообщения: 176
- Зарегистрирован: Чт янв 28, 2010 02:55:37
3 8-и битных буфера, из МК - 12 выводов, 8 данные/мультиплексированный адрес, 4: запись в первый буффер, во второй, в третий, OE на SRAM (можно и в 2 уложиться с декодером, но 4 проще).Rimsky писал(а):Если я не ошибаюсь, чтоб адресовать такой объем в паралельном виде нужно 3FFFF шину адреса, и следовательно 18 ножек контроллера, поэтому для mega8 нужен сдвиговый регистр, чтоб его зарядить нужно время.ibiza11 писал(а):256кбайт
Тогда чтение последовательных байт будет идти достаточно резво, переключение 256-байтовых "страниц" - уже медленнее.
Таким образом адресуем 24-х битное пространство, можно брать самые жирные SRAM от Samsung/Cypress на 4Мбита.
Но если нужно только 128Кб, то тогда можно 2 буфера, и старший бит адреса напрямую с МК выводить.
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Ну можно еще перейти на ATmega128 например
. Там линий ввода-вывода наверняка хватит. Или вообще на ARM, там и встроенная ОЗУ довольно большая.
А об ARM, это как я понял 32-битный МК. Где можно посмотреть линейку выпускаемых МК (на русском и интересует ОЗУ 256Кбайт) и сложно ли будет перейти на эти МК.COKPOWEHEU писал(а):Ну можно еще перейти на ATmega128 например. Там линий ввода-вывода наверняка хватит. Или вообще на ARM, там и встроенная ОЗУ довольно большая.
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Не знаю. А вас устраивает явно избыточная функциональность (по сравнению с 8-й мегой), планарный корпус (который паять неудобно) и цена?
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
Я не видел ни одного ARM7 или Cortex M3 с 256кб SRAM наборту, с внешней пожалуйста, а вот чтоб столько много было это только ARM9, в корпусах LQFP208 
Where technology meets enjoyment.
AT91R40008neonix писал(а):Я не видел ни одного ARM7 или Cortex M3 с 256кб SRAM наборту, с внешней пожалуйста, а вот чтоб столько много было это только ARM9, в корпусах LQFP208
Содержит ядро процессора ARM7TDMI™ ARM® Thumb®
256 кбайт встроенного статического ОЗУ
Вот собственно ссылка на МК:
http://www.gaw.ru/html.cgi/txt/ic/Atmel ... R40008.htm
Ну начнем с того что 10у.е. это не много. А в 8 меге мне нехватает ОЗУ, да и вообще в авр мне ни хватает ОЗУ. Мне надо хотя бы 256кбайт с высокой скоростью записи.COKPOWEHEU писал(а):Не знаю. А вас устраивает явно избыточная функциональность (по сравнению с 8-й мегой), планарный корпус (который паять неудобно) и цена?
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
Интересный камень, жаль периферия скудная да и староват ужеNicke писал(а): AT91R40008
Содержит ядро процессора ARM7TDMI™ ARM® Thumb®
256 кбайт встроенного статического ОЗУ
Вот собственно ссылка на МК:
http://www.gaw.ru/html.cgi/txt/ic/Atmel ... R40008.htm
Where technology meets enjoyment.


