|
CPLD EPM7032SLC44, Как узнать какие пины закреплены за логическими блоками? |
|
|
|
May 29 2012, 17:09
|
Частый гость
 
Группа: Участник
Сообщений: 145
Регистрация: 19-12-07
Пользователь №: 33 422

|
Hi All
Есть простенький проект на EPM7032SLC44, в который упакована небольшая городушка из одного синхронного счетчика на 8 разрядов и кучки триггеров, которая если ее делать на 74-й логие заняла бы десяток-другой корпусов. В общем примитивно и ничего выдающегося. Проект вполне помещается в эту CPLD (занимает 20 макроячеек из 32) и все было прекрасно пока я не задействовал почти все имеюшиеся i/o пины (остался один в резерве). И тут оказалось, что просто так от балды назначать пины на ноги CPLD уже не прокатывает - итог действа варьируется от удачной компиляции в 20 макроячеек до варнингов что компилятору пришлось дополнительно назначить кучку LCELL либо вааще ошибке компиляции так как нет возможности развести тот или иной пин. Я догадываюсь корень зла в том, что ресурсов у этой ПЛИС немного и всего два логических блока. Соответственно часть пинов напрямую доступна одному блоку, а часть другому, и если я начинаю назначать пины от балды, напимер когда половина счетчика использует выходы одного лог. блока а вторая половина выходы другого, то компилятор запросто может упереться в нехватку линий в PIA и скомпилировать проект не сможет. Из сего следует как я понимаю что пины надо назначать не тупо, а так чтобы не создавать компилятору лишних проблем с последующей трассировкой. Это как бы не проблема, но я нигде не нашел в датшите инфы какой пин у сабжа какому лог. блоку принадлежит. Где это можно посмотреть? Или вопрос как-то иначе решается? Сейчас у меня этап разводки PCB, при этом хотелось бы осмысленно тасовать функционал выводов а не методом тыка и последующей перекомпиляции решать вопрос соберется проект при такой разводке или нет
PS В ПЛИС я чайник. Но моих скромных знаний хватает на то чтобы накидать прокет в блочном редакторе, назначить пины и прошить плисину байтбластером. И даже как-то заставить это правильно работать. Бурить языки ттипа *log *DL я пока не стал так как мне кажется для простого проекта это не требуется. PPS Именно EPM7032SLC44 выбрана потому, что а) они у меня есть б) так как будет стоять в силовом девайсе 5-и вольтовая версия предпочтительнее. Так понимаю что если взять EPM7064SLC44 то подобной проблемы с пинами не возникнет, так как лог. блоков уже 4 и уж 20 макроячеек компилятор в ней по любому разведет, но у меня их нет и они ощутимо дороже. Проект накидан в квартусе 9.1 веб эдишен, его так понимаю вполне достаточно для этой CPLD
|
|
|
|
|
 |
Ответов
|
May 29 2012, 17:39
|
Местный
  
Группа: Участник
Сообщений: 313
Регистрация: 2-07-11
Пользователь №: 66 023

|
Цитата(pwn @ May 29 2012, 21:09)  но я нигде не нашел в датшите инфы какой пин у сабжа какому лог. блоку принадлежит. Эту информацию можно выкопать из отчётов Квартуса после компиляции. Попробуйте запустить из меню Tools инструмент Equations Writer или как-то так он называется. В отчёт компиляции добавится соответствующий раздел, там будет написано что сигнал такой-то на LCxx. Первыё 16 хх - первый блок, следующие 16 хх -второй блок. Кажется так, здесь Квартуса у меня нет проверить не могу.
|
|
|
|
|
May 29 2012, 18:20
|
Частый гость
 
Группа: Участник
Сообщений: 145
Регистрация: 19-12-07
Пользователь №: 33 422

|
Цитата(maksimp @ May 29 2012, 21:39)  Эту информацию можно выкопать из отчётов Квартуса после компиляции. Попробуйте запустить из меню Tools инструмент Equations Writer или как-то так он называется. Такого инструмента не нашел, видимо потому что квратус старый (9.1) и веб эдишен. Но порывшись в отчете компиляции во вкладке Fitter похоже нашел именно то что требуется
Это для входов. И рядом такая же табличка для выходов. Спасибо. Щас я его быстренько выведу на чистую воду и распланирую ноги так, чтобы компилятор не создавал мне проблем а я ему
Сообщение отредактировал pwn - May 29 2012, 18:20
|
|
|
|
|
May 29 2012, 18:28
|
Местный
  
Группа: Участник
Сообщений: 313
Регистрация: 2-07-11
Пользователь №: 66 023

|
Цитата(pwn @ May 29 2012, 22:20)  Такого инструмента не нашел, видимо потому что квратус старый (9.1) и веб эдишен. У меня как раз на точно таком Квартусе это было. Там в меню Tools ещё подменю есть, и может в нём этот Equations Writer.
|
|
|
|
|
May 29 2012, 20:16
|
Частый гость
 
Группа: Участник
Сообщений: 145
Регистрация: 19-12-07
Пользователь №: 33 422

|
Цитата(maksimp @ May 29 2012, 22:28)  У меня как раз на точно таком Квартусе это было. Там в меню Tools ещё подменю есть, и может в нём этот Equations Writer. Не нашел, да и видимо не надо уже. Оказалось все просто - с 4-го по 21-й пин это 1-й блок, с 24 по 41-й это 2-й блок, 2,1,44,43 - глобальные входы. Пины JTAG-а не в счет и их так понимаю лучше не трогать чтобы не лишиться возможности прошивать байтбластером. Они правда раскиданы по всем 4-м сторонам (нет бы собрать рядом до кучи весь JTAG  ) и пин планнер вроде бы как позволяет JTAG на другие ноги назначить, но рисковать как-то совсем не хочется, тем паче что нет никого рядом у кого был бы параллельный программатор. А так я его бы с радостью переназначил на 4,2,1,44 выводы (чтобы не пришлось по всей PCB собирать до кучи на JTAG конектор) а его выводы поюзал бы под свои нужды. Но сойдет и так. Переназначил выводы и компилятор без каких либо криков и возмущений скомпилил все в 20 макроячеек и вроде как все работает
|
|
|
|
Сообщений в этой теме
pwn CPLD EPM7032SLC44 May 29 2012, 17:09 des00 ЦитатаЯ догадываюсь корень зла в том, что ресурсов... May 29 2012, 17:14 pwn Цитата(des00 @ May 29 2012, 21:14) можно ... May 29 2012, 17:24  des00 Цитата(pwn @ May 29 2012, 12:24) Но веть ... May 29 2012, 17:34 pwn А по JTAG входам может кто подсказать - реально ли... May 31 2012, 20:45 Alex11 JTAG ноги не переназначаются. Их можно только запр... May 31 2012, 22:26 pwn Цитата(Alex11 @ Jun 1 2012, 02:26) JTAG н... Jun 1 2012, 08:55
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|