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

 
 
> WebPack 5 и 6 генерируют .bit файл разного размера, для одного и того проекта и девайса
sat
сообщение Mar 15 2005, 07:16
Сообщение #1





Группа: Новичок
Сообщений: 10
Регистрация: 6-07-04
Пользователь №: 265



Xilinx - для одного и того же проекта WebPack6 и WebPack5 генерируют .bit файл разного размера. Девайс одинаковый. Размер вроде бы должен быть тогда тоже одинаковым. Или я не прав?
Конкретно девайс VirtexII xc2v250-4fg256
Размер .bit файла на диске
WebPack 6 : 215 935 байт
WebPack 5 : 199 279 байт
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 9)
alex_k
сообщение Mar 15 2005, 11:12
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 4-03-05
Пользователь №: 3 067



Возможно в разных версиях используются разные алгоритмы трассировки, оптимизации, еще чего-то - из этого разные размеры, а чем собственно проблема, ну разные ...
Go to the top of the page
 
+Quote Post
sat
сообщение Mar 15 2005, 13:23
Сообщение #3





Группа: Новичок
Сообщений: 10
Регистрация: 6-07-04
Пользователь №: 265



Цитата(alex_k @ Mar 15 2005, 14:12)
Возможно в разных версиях используются разные алгоритмы трассировки, оптимизации, еще чего-то - из этого разные размеры, а чем собственно проблема, ну разные ...
*

Была проблема с доработкой старого прибора, связанная с различием в размере файла. Интересно, все же почему размеры отличаются, девайс один и тот же, т.е размер памяти конфигурации не меняется?
Go to the top of the page
 
+Quote Post
alex_k
сообщение Mar 15 2005, 13:32
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 4-03-05
Пользователь №: 3 067



Чесно говоря не знаю что и сказать, единственное может проверить в опциях Generate Programming File. Они соответствуют уставкам между версиями WebPack. Вдруг у тебя в одной из версий включена упаковка битстрима "Enable BitStream Compression"
Go to the top of the page
 
+Quote Post
Andrey Filippov
сообщение Mar 15 2005, 19:07
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 55
Регистрация: 27-01-05
Из: 40.7019N 112.0811W
Пользователь №: 2 220



Цитата(alex_k @ Mar 15 2005, 07:32)
Чесно говоря не знаю что и сказать, единственное может проверить в опциях Generate Programming File. Они соответствуют уставкам между версиями WebPack. Вдруг у тебя в одной из версий включена упаковка битстрима "Enable BitStream Compression"
*

Можно сравнить файлы *.bin (я их позже нашел), *.bit содержит еще заголовок, который мне приходилось выбрасывать, находя собственно данные по маркеру:
const unsigned char sync[]={0xff,0xff,0xff,0xff,0xaa,0x99,0x55,0x66};
Наверное, в заголовке и разница - вот пример начала файла x333.bit - там есть имя файла, дата, тип микросхемы,...:
Код
00000000  00 09 0f f0 0f f0 0f f0  0f f0 00 00 01 61 00 09  |.............a..|
00000010  78 33 33 33 2e 6e 63 64  00 62 00 0c 33 73 31 30  |x333.ncd.b..3s10|
00000020  30 30 66 74 32 35 36 00  63 00 0b 32 30 30 35 2f  |00ft256.c..2005/|
00000030  30 33 2f 31 30 00 64 00  09 31 38 3a 32 34 3a 30  |03/10.d..18:24:0|
00000040  35 00 65 00 06 25 f8 ff  ff ff ff aa 99 55 66 30  |5.e..%.......Uf0|
...
Go to the top of the page
 
+Quote Post
sat
сообщение Mar 16 2005, 05:29
Сообщение #6





Группа: Новичок
Сообщений: 10
Регистрация: 6-07-04
Пользователь №: 265



Спасибо за ответ. Буду разбираться.
Go to the top of the page
 
+Quote Post
Vitёk
сообщение Mar 16 2005, 09:36
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 272
Регистрация: 17-01-05
Из: Ростов-на-Дону
Пользователь №: 2 018



Не обязательно искать последовательность 0xff,0xff,0xff,0xff,0xaa,0x99,0x55,0x66 - она разная для разных типов устройств. Заголовок является стандартным для всех типов микросхем, и для нахождения, где он заканчивается, можно использовать следующее:
Код
int SeekLcaBegin(void *xbuff, int maxsize){

// Поиск начала конфигурационной информации в файлах типа '.bit'
// созданных пакетом XACT.
// Возврат:
// -1 = начало не найдено
// все остальное - смещение конфига от начала 'buff'

 int beg = 13;
 char *buff = (char*)xbuff;
 while(buff[beg] != 0x65){

   if(beg >= maxsize) return -1; // out of range
   if((buff[beg] & 0xf0) != 0x60) return -1; //
   beg += 3 + (unsigned char)buff[beg+2];
 }
 return beg+5;
}

Более того, начало искать не обязательно - Spartan2, например, сам выкидывает лишнее и корректно загружается, если ему скармливать весь файл целиком.


--------------------
/* Всё хорошо в меру. */
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Mar 16 2005, 11:09
Сообщение #8


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

Группа: Свой
Сообщений: 1 975
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Если мешает заголовок, то почему бы вместо .bit не использовать .bin?
Go to the top of the page
 
+Quote Post
Vitёk
сообщение Mar 16 2005, 14:12
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 272
Регистрация: 17-01-05
Из: Ростов-на-Дону
Пользователь №: 2 018



Специально поискал файлы *.bin в папках проектов - не нашёл. sad.gif Пректы правда из под Xilinx Foundation 4.1, но тем не менее...


--------------------
/* Всё хорошо в меру. */
Go to the top of the page
 
+Quote Post
sat
сообщение Mar 17 2005, 09:15
Сообщение #10





Группа: Новичок
Сообщений: 10
Регистрация: 6-07-04
Пользователь №: 265



Цитата
Более того, начало искать не обязательно - Spartan2, например, сам выкидывает лишнее и корректно загружается, если ему скармливать весь файл целиком.

Вот проблема в этом и была, что загружал не полностью. Теперь буду знать. smile.gif


Цитата
Специально поискал файлы *.bin в папках проектов - не нашёл. sad.gif Пректы правда из под Xilinx Foundation 4.1, но тем не менее...

Генерация .bin файлов по умолчанию отключена. Включается в свойствах Generate Programming Files-General Options - Create Binary Configuration File
Go to the top of the page
 
+Quote Post

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

 


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


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