Миландр

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

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




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
СообщениеДобавлено: 2014-ноя-12 09:34 
Не в сети

Зарегистрирован: 2014-ноя-11 13:18
Сообщения: 2
Здравствуйте,
Возникли затруднения с записью в память 5576РС1У через JTAG. По команде ISC_READ память всегда возвращает 0xFFFF независимо от того, что ранее в нее писалось командой ISC_PROGRAM. При этом такие команды как BYPASS и IDCODE работают верно.
Процесс записи и чтения описан ниже:
1) Проверка IDCODE. На осциллограмме 1_GetID_Request.png приведена команда запроса ID, а на 2_GetID.png приведен ответ в верным ID = 0x0100A0DD.
1_GetID_Request.png:
Открыть
Вложение:
1_GetID_Request.png
1_GetID_Request.png [ 4.13 КБ | Просмотров: 1960 ]
Закрыть

2_GetID.png:
Открыть
Вложение:
2_GetID.png
2_GetID.png [ 4.19 КБ | Просмотров: 1960 ]
Закрыть

2)Подается последовательность из шести '1' по TMS, которые переводят нас в 'test logic reset', а затем '01', для перехода в 'select DR scan' (Осциллограмма 3_Reset.png).
3_Reset.png:
Открыть
Вложение:
3_Reset.png
3_Reset.png [ 3.87 КБ | Просмотров: 1960 ]
Закрыть

3)Подается FLOW_ENABLE, которая определена в bsd файле как:
"FLOW_ENABLE " &
"INITIALIZE " &
"(ISC_ENABLE WAIT 1.0e-3)" &
"(ISC_ADDRESS_SHIFT 23:400000 WAIT TCK 1)," &
На осциллограммах 4_Enable-1.PNG и 5_Enable-2.PNG приведена команда ISC_ENABLE. Пауза между 1 и 2 частью команды составляет примерно 2 млс, во время которой машина состояний находится в 'run test idle'.
На осциллограммах 6_Address_Shift-1.PNG и 7_Address_Shift-2.PNG приведена команда ISC_ADDRESS_SHIFT.
4_Enable-1.PNG:
Открыть
Вложение:
4_Enable-1.PNG
4_Enable-1.PNG [ 4.27 КБ | Просмотров: 1960 ]
Закрыть

5_Enable-2.PNG:
Открыть
Вложение:
5_Enable-2.PNG
5_Enable-2.PNG [ 3.52 КБ | Просмотров: 1960 ]
Закрыть

6_Address_Shift-1.PNG:
Открыть
Вложение:
6_Address_Shift-1.PNG
6_Address_Shift-1.PNG [ 4.31 КБ | Просмотров: 1960 ]
Закрыть

7_Address_Shift-2.PNG:
Открыть
Вложение:
7_Address_Shift-2.PNG
7_Address_Shift-2.PNG [ 4.26 КБ | Просмотров: 1960 ]
Закрыть

4)Подается укороченная команда FLOW_PROGRAM, команда ISC_PROGRAM внутри нее подается 2 раза:
"FLOW_PROGRAM (array) " &
"INITIALIZE " &
"(ISC_ADDRESS_SHIFT 23:000000 WAIT TCK 1)" &
"(ISC_PROGRAM 16:? WAIT 3.0e-4 )" &
"(ISC_PROGRAM 16:? WAIT 3.0e-4 )";
Этой последовательности команд соответствуют осциллограммы 8_Address_Shift-1.PNG, 9_Address_Shift-2.PNG, 10_Prog-1.PNG, 11_Prog-2.PNG, 12_Prog-1.PNG. 13_Prog-2.PNG.
8_Address_Shift-1.PNG:
Открыть
Вложение:
8_Address_Shift-1.PNG
8_Address_Shift-1.PNG [ 4.18 КБ | Просмотров: 1960 ]
Закрыть

9_Address_Shift-2.PNG:
Открыть
Вложение:
9_Address_Shift-2.PNG
9_Address_Shift-2.PNG [ 4.12 КБ | Просмотров: 1960 ]
Закрыть

10_Prog-1.PNG:
Открыть
Вложение:
10_Prog-1.PNG
10_Prog-1.PNG [ 4.4 КБ | Просмотров: 1960 ]
Закрыть

11_Prog-2.PNG:
Открыть
Вложение:
11_Prog-2.PNG
11_Prog-2.PNG [ 3.59 КБ | Просмотров: 1960 ]
Закрыть

12_Prog-1.PNG:
Открыть
Вложение:
12_Prog-1.PNG
12_Prog-1.PNG [ 4.4 КБ | Просмотров: 1960 ]
Закрыть

13_Prog-2.PNG:
Открыть
Вложение:
13_Prog-2.PNG
13_Prog-2.PNG [ 3.6 КБ | Просмотров: 1960 ]
Закрыть

5)Производится чтение согласно началу команды FLOW_VERIFY:
"FLOW_VERIFY (array) " &
"INITIALIZE" &
"(ISC_READ WAIT TCK 1 16:DFFF*0000, 2:2*0) "&
"(ISC_ADDRESS_SHIFT 23:000000 WAIT TCK 1)" &
"(ISC_READ WAIT TCK 1 16:?*FFFF, 2:2*3:CRC)" &
"(ISC_READ WAIT TCK 1 16:?*FFFF, 2:2*3:CRC)" &
Этой последовательности команд соответствуют осциллограммы 14_Read-1.PNG, 15_Read-2.PNG, 16_Address_Shift-1.PNG, 17_Address_Shift-2.PNG, 18_Read-1.PNG, 19_Read-2.PNG, 20_Read-1.PNG, 21_Read-2.PNG.
После установки в 0 регистра адреса командой ISC_ADDRESS_SHIFT, ожидалось получить командами ISC_READ данные, записанные в 4 пункте командами ISC_PROGRAM, однако на осциллограммах 19_Read-2.PNG и 21_Read-2.PNG по TDO мы получаем 0xFFFF.
14_Read-1.PNG:
Открыть
Вложение:
14_Read-1.PNG
14_Read-1.PNG [ 4.16 КБ | Просмотров: 1960 ]
Закрыть

15_Read-2.PNG:
Открыть
Вложение:
15_Read-2.PNG
15_Read-2.PNG [ 3.94 КБ | Просмотров: 1960 ]
Закрыть

16_Address_Shift-1.PNG:
Открыть
Вложение:
16_Address_Shift-1.PNG
16_Address_Shift-1.PNG [ 4.18 КБ | Просмотров: 1960 ]
Закрыть

17_Address_Shift-2.PNG:
Открыть
Вложение:
17_Address_Shift-2.PNG
17_Address_Shift-2.PNG [ 4.13 КБ | Просмотров: 1960 ]
Закрыть

18_Read-1.PNG:
Открыть
Вложение:
18_Read-1.PNG
18_Read-1.PNG [ 4.09 КБ | Просмотров: 1960 ]
Закрыть

19_Read-2.PNG:
Открыть
Вложение:
19_Read-2.PNG
19_Read-2.PNG [ 3.97 КБ | Просмотров: 1960 ]
Закрыть

20_Read-1.PNG:
Открыть
Вложение:
20_Read-1.PNG
20_Read-1.PNG [ 4.08 КБ | Просмотров: 1960 ]
Закрыть

21_Read-2.PNG:
Открыть
Вложение:
21_Read-2.PNG
21_Read-2.PNG [ 3.99 КБ | Просмотров: 1960 ]
Закрыть


Последний раз редактировалось Elisey 2014-ноя-24 15:44, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-ноя-12 09:39 
Не в сети

Зарегистрирован: 2009-май-22 09:01
Сообщения: 1271
Откуда: АО "ПКК Миландр"
Перезалейте фотки на наш форум. А то не кажет.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-ноя-12 12:01 
Не в сети

Зарегистрирован: 2009-май-29 16:09
Сообщения: 590
Откуда: АО "ПКК Миландр"
Можете посмотреть файл svf созданный Quartus с алгоритмом загрузки и верификации флеш, по FLOW из bsd и всему остальному лучше спрашивать у Altera. Диаграммы можно снять с программатора ByteBlaster при прошивке из Quartus и сравнить со своими, это самый надёжный способ. Свой программатор мы не делали, так что ориентиром может служить только стандартный альтеровский.
И ещё все команды подаются через IR регистр в цепочке 'select IR scan', у Вас не совсем понял что это так.


Вложения:
test_epc.zip [17.83 КБ]
Скачиваний: 107
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-ноя-21 15:12 
Не в сети

Зарегистрирован: 2014-ноя-11 13:18
Сообщения: 2
Спасибо за совет,
Проблема решилась за счет корректировки переходов по машине состояний:
Было: Exit 1->Update
Стало: Exit 1->Pause->Exit 2->Update

Возник следующий вопрос:
В документации упоминается бит ISC_Done по адресу 0x8000. Подскажите пожалуйста, где можно посмотреть описание остальных конфигурационных битов в адресах с 0x8000 по 0x8020.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

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


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

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


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

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