Миландр

Ключевым подразделением нашей компании является Центр Проектирования интегральных микросхем
Текущее время: 2017-май-01 09:08

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 110 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8
Автор Сообщение
 Заголовок сообщения: Re: 1636РР1У и 1636РР3У (ПЗУ Flash-типа)
СообщениеДобавлено: 2016-янв-14 13:24 
Не в сети

Зарегистрирован: 2009-май-29 16:09
Сообщения: 590
Откуда: АО "ПКК Миландр"
Если всё равно какое будет потребление ПЗУ из-за утечек по неподключенным входам, то можно бросить. Те выводы, которые имеют внутренние подтяжки можно не подключать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР1У и 1636РР3У (ПЗУ Flash-типа)
СообщениеДобавлено: 2016-янв-14 18:40 
Не в сети

Зарегистрирован: 2015-дек-28 10:24
Сообщения: 1
Есть проблема при параллельном программировании микросхемы 1636РР1У.
Точнее при чтении. При работе через JTAG отладчик проблем нет, все читается и пишется.
А без отладчика читается что-то непонятное.

Подскажите в чем может быть проблема.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР1У и 1636РР3У (ПЗУ Flash-типа)
СообщениеДобавлено: 2016-июл-11 15:18 
Не в сети

Зарегистрирован: 2014-сен-17 12:19
Сообщения: 37
Откуда: СПб
Здравствуйте!
Работаю с 1636PP1 и 1986ВЕ91Т по параллельному интерфейсу. Разобрался как писать и читать, как следить за переключающимися битами, с этим пока понятно. Набросал простой тест на запись в ячейку памяти, проконтролировал как идет процесс и потом прочитал то значение, которое записал. Вроде работает, однако выявил непонятное явление. Если адрес ячейки памяти равен 2 в степени целого числа (к примеру 0, 1, 2, 4, 8, 16..) то запись числа в нее, в котором только 2 бита нулевых (к примеру, попытка записать 0xFA, 0xFC, 0xF3) приводит к тому, что память не принимает команду на запись, статусный бит D6 не переключается и все последующие чтения этой ячейки памяти равны 0xFF. Стираем всю память, либо использованный сектор, проверяем его на чистоту, пишем числа, в которых нулевых бит уже больше (к примеру 0xF1, 0xF0) и все нормально, пишет корректно. Запись производится простой командой Program (не bypass). Иногда такое происходило по адресам близким к 2^N. Что это может быть?
Открыть в массиве Arr содержатся адреса по которым запись не совпала с ожидаемым результатом
Вложение:
1636wrerr.jpg
1636wrerr.jpg [ 73.44 КБ | Просмотров: 869 ]
Закрыть


upd: вопрос снимается, я не заметил, что процессор работал на завышенной частоте (144МГц), извиняюсь :) , скорей всего модуль EBC не успевал выдерживать тайминги управляющих сигналов. Перепроверил на нормальной частоте (72МГц) пишет исправно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР1У и 1636РР3У (ПЗУ Flash-типа)
СообщениеДобавлено: 2016-авг-12 10:47 
Не в сети

Зарегистрирован: 2016-авг-12 00:51
Сообщения: 1
Всем доброго дня.

Что-то не могу понять как работать с одной микросхемой 1636РР1 с байтным доступом. Вообще возможно? Есть у кого пример?

Командная последовательность записи:

Код:
   
#define HWREG8(x)       (*((volatile uint8_t *)(x)))

BOOL WriteByte_1636PP1(uint32_t base, uint32_t addr, uint8_t DATA)
{
  HWREG8(base+(0x555)) = 0xAA;
  HWREG8(base+(0x2AA)) = 0x55;
  HWREG8(base+(0x555)) = 0xA0;
  HWREG8(base+(addr)) = DATA;

  далее проверка бита 7
}


Сначала стираю всю память.
Затем пишу данные:
Код:
WriteByte_1636PP1(BASE_FLASH, 0x00, 0xAA);
WriteByte_1636PP1(BASE_FLASH, 0x01, 0xBB);
WriteByte_1636PP1(BASE_FLASH, 0x04, 0xCC);


ЧИтаю:
Код:
uint8_t ReadByte_1636PP1(uint32_t addr)

   return (HWREG8(addr));
}
....
   byte0 = ReadByte_1636PP1(BASE_FLASH + 0x00);
   byte1 = ReadByte_1636PP1(BASE_FLASH + 0x01);
   byte2 = ReadByte_1636PP1(BASE_FLASH + 0x02);
   byte3 = ReadByte_1636PP1(BASE_FLASH + 0x03);
   byte4 = ReadByte_1636PP1(BASE_FLASH + 0x04);


Получаю:

Код:
byte0 = 0xAA
byte1 = 0xFF
byte2 = 0x00
byte3 = 0x00
byte4 = 0xCC


При проверке после стирания всей памяти:

Код:
byte0 = 0xFF
byte1 = 0xFF
byte2 = 0x00
byte3 = 0x00
byte4 = 0xFF


Т.е. данные пишутся и читаются правильно только по адресам кратным 4.

Схема подключения:

1986ВЕ91Т 1636РР1
А0...А18 -------> А0...А18
D0...D7 --------> D0...D7
WE ------------> WE
дешифратор адреса
0х60000000 ----> CE
OE -------------> OE

Последовательный интерфейс "висит" на лог 0.

Осциллограммы (двухлучевой осциллограф).
1-луч: СЕ
2-луч: ОЕ


Вложения:
Комментарий к файлу: Схема подключения микросхемы
Подключение 1636РР1.JPG
Подключение 1636РР1.JPG [ 40.47 КБ | Просмотров: 777 ]
Комментарий к файлу: Чтение адресов 0х01 и 0х03
Нечетные адреса 0х01 0х03.BMP
Нечетные адреса 0х01 0х03.BMP [ 19.23 КБ | Просмотров: 777 ]
Комментарий к файлу: Чтение адреса 0х02
Адрес 0x02.BMP
Адрес 0x02.BMP [ 19.48 КБ | Просмотров: 777 ]
Комментарий к файлу: Чтение адресов 0х00 и 0х04
Адреса 0х00 0х04.BMP
Адреса 0х00 0х04.BMP [ 17.66 КБ | Просмотров: 777 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР1У и 1636РР3У (ПЗУ Flash-типа)
СообщениеДобавлено: 2016-сен-30 18:28 
Не в сети

Зарегистрирован: 2015-янв-28 06:56
Сообщения: 15
Ребята! Почему в РР3У через SPI не реализовали стирание страниц(могли бы это указать в заголовке на первой странице), а есть только стирание секторов, размером с половину всей памяти! Ведь это лишние циклы записи, что не позволяет использовать эту память для хранения часто перезаписываемых данных пользователя.
Не внимательно прочитал описание, вот теперь придется ее менять на другую, хотя повторюсь в характеристиках на 1-ой странице спецификации можно было бы это и указать.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 110 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB