реклама на сайте
подробности

 
 
5 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> Присвоение ID ПЛИС'е, Как бы проще сделать?
Moks
сообщение Aug 25 2009, 07:15
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 28-11-05
Из: Москва
Пользователь №: 11 510



Добрый день!
Есть ли у кого опыт решения задачки присвоения ID номера микросхеме? Хочется сделать это не меняя какую-либо константу в программе, а просто прошивочным (программаторским) методом, минуя "залезания" в код.
Ведь рано или поздно запустится серия и так хочется делать всё быстро и проще!
Нет никаких идей, а?
Заранее благодарен за возможные пути решения задачки!
Используем Cyclone II и Quartus II.
rolleyes.gif

Сообщение отредактировал Moks - Aug 25 2009, 07:16
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Aug 25 2009, 07:27
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 Moks - ниос есть/нет ?
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Aug 25 2009, 07:30
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Впаять рядом DS28CM00. В каждой микрухе - свой код, интерфейс I2C, корпус микроскопический. Или переходить на Spartan-3A - там ID зашит в самой ПЛИС.
Go to the top of the page
 
+Quote Post
AJIEKCEu
сообщение Aug 25 2009, 07:36
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 7-12-05
Пользователь №: 11 917



Как вариант, аналогично DmitryR

DS1990 правда интерфейс 1-wire - чуть сложнее, но не особо. Зато может дешевле будет.

Но прошивка константы в ПЛИС - тоже интересно.
Go to the top of the page
 
+Quote Post
Moks
сообщение Aug 25 2009, 07:49
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 28-11-05
Из: Москва
Пользователь №: 11 510



Цитата(AJIEKCEu @ Aug 25 2009, 11:36) *
Но прошивка константы в ПЛИС - тоже интересно.

Вот и мне интересно, читаю, пытаюсь понять пути решения задачки!

Цитата(DmitryR @ Aug 25 2009, 11:30) *
Впаять рядом DS28CM00. В каждой микрухе - свой код, интерфейс I2C, корпус микроскопический. Или переходить на Spartan-3A - там ID зашит в самой ПЛИС.

Спасибо, но пока что переход на Xilinx не рассматриваем!

Цитата(DmitryR @ Aug 25 2009, 11:30) *
Впаять рядом DS28CM00. В каждой микрухе - свой код, интерфейс I2C, корпус микроскопический. Или переходить на Spartan-3A - там ID зашит в самой ПЛИС.

Да, но тогда надо и DS28CM00 программировать отдельно ... А это ещё одна операция ...
Go to the top of the page
 
+Quote Post
AJIEKCEu
сообщение Aug 25 2009, 07:54
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 7-12-05
Пользователь №: 11 917



Цитата(Moks @ Aug 25 2009, 11:49) *
Да, но тогда надо и DS28CM00 программировать отдельно ... А это ещё одна операция ...

Насколько я понимаю, там уже прошит некий уникальный номер и его нельзя изменить.

Если вы хотите иметь "СВОИ" номера, то надо вести базу соответствия:
некий уникальный номер не по порядку <> свой красивый номер
Go to the top of the page
 
+Quote Post
Moks
сообщение Aug 25 2009, 08:08
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 28-11-05
Из: Москва
Пользователь №: 11 510



Задача-то состоит в том, что все устройства объединены в систему, у них каждый свой ID (читай "адрес") ... И вот уж больно хочется его быстро прошивать ... (Пускай хоть с участием д. Васи с журнальчиком, в который он записывает что и куда программировал) wink.gif )
Предложенные вами микросхемы, как мне кажется, не особо подходят под данную задачку ...

Сообщение отредактировал Moks - Aug 25 2009, 08:08
Go to the top of the page
 
+Quote Post
AJIEKCEu
сообщение Aug 25 2009, 08:13
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 7-12-05
Пользователь №: 11 917



Цитата(Moks @ Aug 25 2009, 12:08) *
Задача-то состоит в том, что все устройства объединены в систему, у них каждый свой ID (читай "адрес") ... И вот уж больно хочется его быстро прошивать ... (Пускай хоть с участием д. Васи с журнальчиком, в который он записывает что и куда программировал) wink.gif )
Предложенные вами микросхемы, как мне кажется, не особо подходят под данную задачку ...

Если ваш ID - изначально задан внешними условиями - то да - микросхемы не подходят.

Но если сам ID не важен, а важна его уникальность - то микросхемы вариант. Ну как например MAC-адрес у сетевой карты.
Go to the top of the page
 
+Quote Post
SM
сообщение Aug 25 2009, 08:27
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



А откуда грузится ПЛИСка? Вариант - сделать блок ОЗУ, где хранится этот код, ну и расхачить формат SOF-файла в части поиска тех бит, куда попадет этот код (из данных инициализации ОЗУ, а так же CRC этого блока. После чего патчить SOF-ник.
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Aug 25 2009, 08:35
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



Если есть ниос - когда то этот вопрос довольно детально разжёвывался на ниосфоруме страниц на 5 обсуждение было, можно там пошарится..
Go to the top of the page
 
+Quote Post
SM
сообщение Aug 25 2009, 08:40
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(AJIEKCEu @ Aug 25 2009, 12:13) *
Но если сам ID не важен, а важна его уникальность - то микросхемы вариант. Ну как например MAC-адрес у сетевой карты.

Неудачный пример. MAC-адреса имеют стандартизованный формат, и каждому вендору выделяется вполне определенный диапазон.
Go to the top of the page
 
+Quote Post
x736C
сообщение Aug 25 2009, 08:47
Сообщение #12


Профессионал
*****

Группа: Участник
Сообщений: 1 273
Регистрация: 3-03-06
Пользователь №: 14 942



Moks, доступ через дизайн к константе не планируете?
Если нет, тогда JTAG Usercode.
Для смены usercode проект каждый раз нужно будет пересобрать.

Хотя этот способ вам не очень-то подходит, так как вам нужно уникальный номер для каждой микросхемы, а не для прошивки.
Замучаетесь компилировать под каждую микросхему. Но если патчить прошивку на предмет смены номера, то именно этот usercode, имхо.

Сообщение отредактировал x736C - Aug 25 2009, 09:01
Go to the top of the page
 
+Quote Post
Moks
сообщение Aug 25 2009, 09:01
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 28-11-05
Из: Москва
Пользователь №: 11 510



Цитата(SM @ Aug 25 2009, 12:27) *
А откуда грузится ПЛИСка? Вариант - сделать блок ОЗУ, где хранится этот код, ну и расхачить формат SOF-файла в части поиска тех бит, куда попадет этот код (из данных инициализации ОЗУ, а так же CRC этого блока. После чего патчить SOF-ник.

ПЛИС будет точно грузиться с EPCS4 ... Вот и мне надо сделать так, чтобы конфигурационная программа уже имела номер ID. Но чтоб этот номер присваивался не залезанием в VHDL код (мы на нём пишем), а гораздо проще ... Чтоб любой дядя Вася/Петя или тётя Клава/Марфа могли быстренько присвоить номер ...
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Aug 25 2009, 09:22
Сообщение #14


Профессионал
*****

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Если вам необходимо именно самому с помощью тети Клавы присваивать номер - тогда как сказал SM:
1а. Ставите в проект небольшое ПЗУ
1б. Добавляете во флэшку блок данных.
2. Определяете, где в файле прошивки находится этот код, и пишите на С небольшую утиль по его замене с интерфейсом, понятным тете Клаве.
3. Тетя Клава этой утилью патчит прошивку и прошивает флэшку.
3а. Дизайн читает ID из ПЗУ
3б. Дизайн читает ID из serial flash loader.

Если же партия большая - то можно поставить на плату EEPROM в панельку (в DIP корпусе). Тетя Клава присваивает номер, прошивает его на программаторе в EEPROM (интерфейс у них обычно доступный для понимания) и втыкает EEPROM в панельку. При больших количествах стоимость программатора EEPROM не будет заметна.
Go to the top of the page
 
+Quote Post
Moks
сообщение Aug 25 2009, 09:48
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 28-11-05
Из: Москва
Пользователь №: 11 510



Примерно понятно, спасибо. Значит, без дополнительных операций не обойтись никак ...
Go to the top of the page
 
+Quote Post

5 страниц V   1 2 3 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 15:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.01458 секунд с 7
ELECTRONIX ©2004-2016