Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: ПЛИС и открытый коллектор.  (Прочитано 10906 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Aether
Специалист

ru
Offline Offline
Пол: Мужской

« : 04-03-2015 07:14 » 

Доброго дня.

Меня уже несколько раз здесь направляли на использование ПЛИС взамен паяния стандартной логики. Отсюда возникли ряд вопросов, самый важный из них: существует ли программная логика с выходами типа открытый коллектор (сток)?Второе, кто и что использует: язык описания/CAD/программатор? Какой опыт был положителен/отрицателен: касательно производителей и их качества?
Записан
Ochkarik
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 04-03-2015 07:56 » new

1 насколько я знаю - да, надо по семейству уточнять.
2. языков не много но несколько. VHDL или Verilog  в конце концов можно в граф-редакторе рисовать даже.
3. используем ксайлинксы, просто исторически сложилось. но существует еще Альтера. Альтера в отличии от Ксайлинкса кажется софт отавала сильно дешевле(если не путатаю). поэтому может быть в россии чуть больше распространилась.
сейчас думаю у них паритет. примерно одно и то же.
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Dale
Блюзмен
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 04-03-2015 12:00 » 

ПЛИС взамен паяния стандартной логики
...
с выходами типа открытый коллектор (сток)?

ПЛИС обычно понятие довольно расплывчатое, подразумевается нечто от PLA до FPGA. Если речь о замене логики низкой нтеграции в относительно небольших количествах, может подойти GAL. Мне попадались варианты GAL с возможностью выбора выхода Open-Drain/Totem-Pole, но они существенно подороже классических, по крайней мере, у моих поставщиков. Коллекторы, наверное, уже перевелись в природе, даже в современных учебниках биполярным транзисторам уделяется на удивление мало внимания.
Записан

Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.

Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard

Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
Aether
Специалист

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 04-03-2015 15:00 » 

Посмотрел кратко обзоры xilinx и Altera, первый, как я заметил, более ориентирован на высоко насыщенные схемы - много контактов, много ячеек внутри. Второй имеет более широкую гамму.

Смысл решаемой задачи: есть управляющее устройство на базе PIC16F630, оно должно управлять ключами (на базе как раз биполярных транзисторов), но для управления самими ключами нужна возможность протекания тока в 40-45mA, выходы же самого МК могут предоставить не более 3mA. Второе условие в том, что самих ключей 26шт., количество же выводов у МК не так много.
Самое простое, что пришло в голову: выделить у МК три вывода под сигналы: данные, такт, сброс. Подключить их к последовательно-параллельному регистру для заполнения строки по 8 бит, а сам регистр подключить к параллельному регистру с открытым стоком, например, TPIC6B273 (150mA). Коммутацию параллельных регистров предполагаю производить счётчиком.
Итого: PIC - 1шт., посл. рег. - 1шт., паралл. рег. - 4шт., счётчик - 1шт., логика и-не - 1шт.
Получается многовато и габаритно. Мне не страшно, но, возможно, стоит развиваться и сделать всё, за исключением МК в одной микросхеме?

Посмотрел каталог Altera, приглянулась MAX3000 - низкая интеграция и дёшево. Посмотрел спецификацию: каждый вывод можно настроить на open-drain. Единственное, что там не нашел: конкретную величину, опять таки, возможного, непрерывно протекающего, тока через выводы в таком режиме - почитаю завтра на свежую голову второй раз. Но есть сомнения: скажем 26 выводов, через каждый течёт по 45mA, тогда через GND будет течь больше ампера! Выводы GND тоже можно сделать распределёнными?
Записан
Aether
Специалист

ru
Offline Offline
Пол: Мужской

« Ответ #4 : 05-03-2015 06:04 » 

Прочёл второй раз: MAX 3000A Programmable logic Device Family Data Sheet (June 2006 ver. 3.5) - последняя версия с официального сайта Altera. В нём собраны описания нескольких ПЛИС, в том числе, EPM3032A - то, что интересует.
Стр. 21:
Цитата
Open–Drain Output Option
MAX 3000A devices provide an optional open–drain (equivalent to
open-collector) output for each I/O pin. This open–drain output enables
the device to provide system–level control signals (e.g., interrupt and
write enable signals) that can be asserted by any of several devices. It can
also provide an additional wired–OR plane.
Open-drain output pins on MAX 3000A devices (with a pull-up resistor to
the 5.0-V supply) can drive 5.0-V CMOS input pins that require a high VIH.
When the open-drain pin is active, it will drive low. When the pin is
inactive, the resistor will pull up the trace to 5.0 V, thereby meeting CMOS
requirements. The open-drain pin will only drive low or tri-state; it will
never drive high. The rise time is dependent on the value of the pull-up
resistor and load impedance. The IOL current specification should be
considered when selecting a pull-up resistor.
Стр. 22:
Цитата
IOUT DC output current, per pin 25mA
Стр. 23:
Цитата
3.3–V low–level TTL output voltage IOL = 8 mA DC, VCCIO = 3.00 V
3.3–V low–level CMOS output voltage IOL = 0.1 mA DC, VCCIO = 3.00 V
2.5–V low–level output voltage IOL = 100 μA DC, VCCIO = 2.30 V
IOZ Tri–state output off–state current 10μA
Отдельного описания характеристик режима с открытым стоком нету. Выводов GND 6шт. Логикой можно переключить выводы на GND, но польза этого ясна не до конца. Я так понимаю 25mA - предел в любом варианте.(

Dale, так что у Вас за GAL? Можно пример?

PS установит Quartus 2 Web Edition поигрался, порадовало. С точки зрения комфорта - удобно, просто открываешь листок и выносишь необходимые элементы, их соединяешь. Затем ассоциируешь логические выводы с реальными и компилируешь в код для программатора. Не сразу нашел как ставить выход с открытым стоком - оказалось этот элемент в разделе буферов, называется, OPNDRN и его уж нужно соединять с выводом.)
« Последнее редактирование: 05-03-2015 06:07 от Aether » Записан
Dale
Блюзмен
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 05-03-2015 07:08 » 

Dale, так что у Вас за GAL? Можно пример?

Например, GAL16/20VP8. Фактически умощнили старые добрые GAL16V8 и GAL20V8 (приемник тока в нуле - без малого втрое, источник тока в единице - вообще почти на порядок) до магистральных усилителей (64 mA/-32 mA). Для Ваших ключей должно хватить. Правда, умощненные варианты VP попадаются реже, чем классика V, и стоят подороже.

Кстати, если нужно просто увеличить количество линий ввода/вывода микроконтроллера, не проще ли будет просто повесить на SPI что-нибудь классическое вроде 74595 и умощнить их ширпотребными дешевыми буферами, допустим, от Allegro (что-нибудь типа ULN2803)? На 24 бита уйдет 6 корпусов, в SMD исполнении займут не так много места, и хороший запас по току будет, без перегруза.
Записан

Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.

Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard

Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
Aether
Специалист

ru
Offline Offline
Пол: Мужской

« Ответ #6 : 05-03-2015 09:04 » 

GAL16V8 и GAL20V8
Спасибо, ознакомился. На сайте lattice, вроде, они уже не выпускаются, но в продаже ещё есть.

Кстати, если нужно просто увеличить количество линий ввода/вывода микроконтроллера, не проще ли будет просто повесить на SPI что-нибудь классическое вроде 74595 и умощнить их ширпотребными дешевыми буферами, допустим, от Allegro (что-нибудь типа ULN2803)?
Ну, так я это и делаю, просто 74595 в продаже уже давно не встречал, вообще, простой логики полных комплектов уже маловато. На прошлой неделе заезжал в "ЧИП и ДИП", посмотрел, что есть фактически. Вы меня, впрочем, натолкнули на мысль: есть похожие на 74595 драйверы для светодиодов. Сейчас посмотрел: TLC6C5912-Q1 (Power Logic 12-CHANNEL SHIFT REGISTER LED DRIVER) - внутри тоже самое: наполняемый последовательно регистр, параллельный регистр-защёлка с выводами типа открытый сток. Максимальный ток 50mA. Думаю в этом направлении будет идти вернее.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines