Very_hard 0 18 октября, 2006 Опубликовано 18 октября, 2006 · Жалоба Вопрос такой. Есть описание на VHDL блочной памяти. Пробую синтезировать XST(ISE 6.3, 7.1). Можно ли управлять синтезатором, чтобы он организовывал память из определенных блоков (например, RAMB16_S36 или RAMB16_S18). Или нужно явно их встраивать? Дело в том, что в Корегене можно указать на основе каких блоков генерить память... но хотелось бы сделать без него... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Doka 4 18 октября, 2006 Опубликовано 18 октября, 2006 · Жалоба управлять можно. т.е. принудительно указывать на какой памяти делать : блочной либо распрделенной на верилоге делаю так (для блочной): // synthesis attribute ram_style of мой_модуль is block; module мой_модуль ... для ВХДЛ смотрите ConstraintsGuide.pdf и XST User Guide.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Very_hard 0 18 октября, 2006 Опубликовано 18 октября, 2006 · Жалоба управлять можно. т.е. принудительно указывать на какой памяти делать : блочной либо распрделенной это ясно, вопрос про выбор типа блоков для блочной памяти Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Doka 4 18 октября, 2006 Опубликовано 18 октября, 2006 · Жалоба это ясно, вопрос про выбор типа блоков для блочной памятиа разве в рамках одного кристалла они бывают разными? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Very_hard 0 19 октября, 2006 Опубликовано 19 октября, 2006 · Жалоба а разве в рамках одного кристалла они бывают разными? извиняюсь, я имел в виду организацию блочной памяти: 16Kx1 8Kx2 4Kx4 2Kx8 (no parity) 2Kx9 (x8 + parity) 1Kx16 (no parity) 1Kx18 (x16 + 2 parity) 512x32 (no parity) 512x36 (x32 + 4 parity) 256x72 (single-port only) или RAMB16_S36...RAMB16_S1. Дело в том, что описанная на вхдл память не помещается в кристалл из-за того, что синтезатор использует не оптимальную "организацию" блоков памяти. Кореген упаковывает нормально, еще и пара блоков свободных остается... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Doka 4 19 октября, 2006 Опубликовано 19 октября, 2006 · Жалоба ну вообще доволно странная ситуация. по идее как раз таки он должен оптимально выбирать организацию, исходя из задания на синтез ОЗУ. едиснтвенное ,что можно предположить - у вас высокоплотный упакованный проект, в котором вы используете еще и аппаратные умножители. у меня было такое однажды с V-II, когда маапер сказал: что мол, дескать нельзя использовать блочное озу (если DIN/DOUT > 36разрядов, кажется) рядом с умножителем (если последний задействован в проекте), ибо нету для этого трассировочных ресурсов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться