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

 
 
> CPLD EPM7032SLC44, Как узнать какие пины закреплены за логическими блоками?
pwn
сообщение May 29 2012, 17:09
Сообщение #1


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

Группа: Участник
Сообщений: 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
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
des00
сообщение May 29 2012, 17:14
Сообщение #2


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата
Я догадываюсь корень зла в том, что ресурсов у этой ПЛИС немного и всего два логических блока

можно было просто даташит глянуть %) дело в том что триггеры у этого семейства в пинах стоят. поэтому и связь такая. лучше всего собрать проект при нулевых пинах и взять те что предложит квартус.


ЗЫ. На некоторые пины квартус ставит метку Must not be connected. Будьте осторожны %)


--------------------
Go to the top of the page
 
+Quote Post
pwn
сообщение May 29 2012, 17:24
Сообщение #3


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

Группа: Участник
Сообщений: 145
Регистрация: 19-12-07
Пользователь №: 33 422



Цитата(des00 @ May 29 2012, 21:14) *
можно было просто даташит глянуть %) дело в том что триггеры у этого семейства в пинах стоят. поэтому и связь такая.
Но веть у той же 7064 триггеров в два раза больше чем пинов, как то они меж собой делят их sm.gif
Цитата
лучше всего собрать проект при нулевых пинах и взять те что предложит квартус
У меня он сам не назначает выводы, пока я в планере не расставлю. Наверное где-то в сетапе нада галочку поставить, но где я не знаю. И опять же, хочется понимать что делаешь а не надеяться на мудрость компилятора. Вот я щас при таком раскладе разведу PCB, а потом если вдруг возникнет нужда внутри что нить куда нить подвинуть в пределах оставшихся 12 макроячеек, то окажется что при такой трассировке PCB проект уже не собирается. И что тогда, опять доверится квартусу а потом скальпель плюс МГТФ? Не вдохновляет и хотелось бы сего избежать.
Цитата
ЗЫ. На некоторые пины квартус ставит метку Must not be connected. Будьте осторожны %)
Не сталкивался. Что это такое?
Go to the top of the page
 
+Quote Post
des00
сообщение May 29 2012, 17:34
Сообщение #4


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(pwn @ May 29 2012, 12:24) *
Но веть у той же 7064 триггеров в два раза больше чем пинов, как то они меж собой делят их sm.gif

а там не все пины чипа на корпус разварены + нужно учесть что есть специальные входы %)
Цитата
У меня он сам не назначает выводы, пока я в планере не расставлю... Не сталкивался. Что это такое?

у вас должен быть отчет о пинах и их соединениях в нем написано какие режимы стоят на пинах и что с этим делать. Всякие входные сигналы нужно задать, а выходные пусть ква назначит. Рекомендациям относительно пинов на этом семействе желательно соблюдать, что бы потом не было мучительно больно %)


--------------------
Go to the top of the page
 
+Quote Post



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

 


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


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