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

 
 
 
Reply to this topicStart new topic
> Составление принципиальной схемы
Mikhail B.
сообщение Jan 13 2018, 17:08
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 52
Регистрация: 9-11-17
Из: Ростов-на-Дону
Пользователь №: 100 129



Здравствуйте. Интересует возможность построения принципиальной схемы с использованием логических элементов по существующим временным диаграммам.
Изначальная задача - существует проц на отладочной плате, выход с него - четыре светодиода. Нужно написать на VHDL счётчик чтоб первый диод моргал каждую секунду, второй - каждую вторую, и так далее.

Я пошёл "с конца" - нарисовал временные диаграммы, чтоб иметь представление какие есть сигналы, как они будут взаимосвязаны, импульсы такта. Входы и выходы. Теперь моя система - это "чёрный ящик". Дальше хочу составить по ВД принципиальную схему (там будут использованы, как я понимаю, Т-триггеры). Ну и потом уже описать её на VHDL.
Скажите, правильный ли у меня план действий, возможно ли это? Посоветуйте пожалуйста что можно изучить, я чайник и не знаю как быть дальше help.gif
Go to the top of the page
 
+Quote Post
HardEgor
сообщение Jan 13 2018, 17:43
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 223
Регистрация: 3-03-06
Из: Tomsk
Пользователь №: 14 925



Выглядит как простой счетчик. Открываете справочник по логическим микросхемам(в котором есть диаграммы) и изучаете его на совпадение с вашими. Там же находите внутреннее устройство микросхем.
Go to the top of the page
 
+Quote Post
Plain
сообщение Jan 13 2018, 18:21
Сообщение #3


Гуру
******

Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710



От требуемой диаграммы — да, обычный путь проектирования.

Счётчик — это одна строка на его описание и одна на его работу.

Далее, первый светодиод, мигающий каждую секунду — скорее всего ТЗ имеет ввиду, что это просто младший разряд счётчика, тактируемого частотой 2 Гц.

Чтобы стереотипно с ним мигали и остальные светодиоды, т.е. чтобы время их свечения было той же половиной секунды, требуется каждый из оставшихся трёх разрядов счётчика логически перемножить с этим его младшим разрядом, на что соответственно потребуется ещё три строки кода.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jan 13 2018, 19:12
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(Mikhail B. @ Jan 13 2018, 20:08) *
Посоветуйте пожалуйста что можно изучить, я чайник и не знаю как быть дальше help.gif

Если хотите, то могу рассказать как это делается. Мой скайп-адрес в личной карточке форума...
до связи!


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Mikhail B.
сообщение Jan 14 2018, 08:02
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 52
Регистрация: 9-11-17
Из: Ростов-на-Дону
Пользователь №: 100 129



Цитата(iosifk @ Jan 13 2018, 22:12) *
Если хотите, то могу рассказать как это делается. Мой скайп-адрес в личной карточке форума...
до связи!


Спасибо!
Скайпа у меня нет, по почте можно?
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jan 14 2018, 08:15
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(Mikhail B. @ Jan 14 2018, 11:02) *
Спасибо!
Скайпа у меня нет, по почте можно?

Написать "учебник" и переслать по почте? Да Вы что, считаете что мне заняться нечем?
А что, бесплатного WiFi у Вас в городе нет? Ни одного кафе? Ни одной знакомой девушки? И в холле гостиницы, где-нибудь в уголке спрятаться нельзя?


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Mikhail B.
сообщение Jan 14 2018, 08:24
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 52
Регистрация: 9-11-17
Из: Ростов-на-Дону
Пользователь №: 100 129



Цитата(Plain @ Jan 13 2018, 21:21) *
Чтобы стереотипно с ним мигали и остальные светодиоды, т.е. чтобы время их свечения было той же половиной секунды, требуется каждый из оставшихся трёх разрядов счётчика логически перемножить с этим его младшим разрядом, на что соответственно потребуется ещё три строки кода.


Да, так и есть.
Ага, т.е. нет новых компонентов на каждый выход, работающих по своему закону. Чем-то уже напоминает дешифратор, я правильно понимаю? В этом направлении двигаться?

Цитата(iosifk @ Jan 14 2018, 11:15) *
А что, бесплатного WiFi у Вас в городе нет?


Понял, сейчас буду решать этот вопрос, сейчас у меня в городе впервые появится WiFi
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jan 14 2018, 08:33
Сообщение #8


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(Mikhail B. @ Jan 14 2018, 11:24) *
Понял, сейчас буду решать этот вопрос, сейчас у меня в городе впервые появится WiFi

В будний то день можно было бы подойти в представительство Элтеха и попросить помочь. Думаю, что помогли бы связаться со мной... sm.gif Но ведь сегодня выходной...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Herz
сообщение Jan 14 2018, 11:27
Сообщение #9


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Цитата(iosifk @ Jan 14 2018, 10:15) *
Написать "учебник" и переслать по почте? Да Вы что, считаете что мне заняться нечем?

Ну, время-то на Форум у Вас есть. И что, готовых учебников, на которые можно было бы дать автору ссылку, не существует? Обязательно писать?
Да, и здесь открытая площадка. Смысл в том, чтобы обсуждение пригодилось всем заинтересованным. Если же Вы хотите только согласовать с автором способ и время приватной консультации, то общайтесь, пожалуйста, по ЛС.
Go to the top of the page
 
+Quote Post
Plain
сообщение Jan 14 2018, 11:34
Сообщение #10


Гуру
******

Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710



Цитата(Mikhail B. @ Jan 14 2018, 11:24) *
т.е. нет новых компонентов на каждый выход, работающих по своему закону. Чем-то уже напоминает дешифратор, я правильно понимаю? В этом направлении двигаться?

Неправильно, "новые компоненты" есть — каждый светодиод управляется своим отдельным дешифратором в виде логического элемента И. Если на Verilog, то должно выглядеть примерно так:

assign LED[0] = counter[1];
assign LED[1] = counter[1] && counter[2];
assign LED[2] = counter[1] && counter[2] && counter[3];
assign LED[3] = counter[1] && counter[2] && counter[3] && counter[4];
Go to the top of the page
 
+Quote Post
k155la3
сообщение Jan 14 2018, 17:10
Сообщение #11


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

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(Mikhail B. @ Jan 13 2018, 21:08) *
. . .
Я пошёл "с конца" - нарисовал временные диаграммы, чтоб иметь представление какие есть сигналы, как они будут взаимосвязаны, импульсы такта. Входы и выходы. Теперь моя система - это "чёрный ящик". ...

Это один из методов (когда алгоритм сложно поддается формализации на логику и его проще изобразить "картинкой" входов и выходов ), но не для Вашего случая - ведь логика элементарная (счетчик). Тем более, что задача учебная, а и Вы рискуете ничему не научиться,
а работать по "индо-пакистанской" методе sm.gif
Я бы из верменнОй диаграммы вывел "логику", и ее уже прописывал в алгоритм.
Хотя если надо точно следовать ТЗ - то "черный ящик" подходит.


Go to the top of the page
 
+Quote Post
iosifk
сообщение Jan 14 2018, 18:42
Сообщение #12


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(Herz @ Jan 14 2018, 14:27) *
Ну, время-то на Форум у Вас есть. И что, готовых учебников, на которые можно было бы дать автору ссылку, не существует? Обязательно писать?
Да, и здесь открытая площадка. Смысл в том, чтобы обсуждение пригодилось всем заинтересованным. Если же Вы хотите только согласовать с автором способ и время приватной консультации, то общайтесь, пожалуйста, по ЛС.

Я зная что такое открытая площадка. И знаю что существует достаточное количество учебников.
Но есть небольшая тонкость. Для одних VHDL - это работа и кусок хлеба. Для других - хобби. Для третьих - "сдать курсовик и забыть"... Поэтому я и хотел выяснить, что же на самом деле человеку нужно. Просто потому, что исходно ТС вопрос поставил не корректно. Сначала какой-то "процессор", потом "светодиоды" и потом "VHDL". Как это все взаимосвязано? И какой учебник нужен? Пока не понятно, что нужно рекомендовать...
Если же говорить о "всех заинтересованных", то ведь я никому еще в помощи не отказывал. Так что не будем об этом. И еще немного. Из опыта работы в техподдержке могу сказать. Есть "кривая нормального распределения" - такой горбик. По горизонтали - "сложность вопроса", по вертикали - "число таких вопросов"... Так вот вопрос этой темы - "левый край кривой". Т.е. такой вопрос как в этой теме интересен 1-2 человекам, не более... Что же касается "серединки горбика", то тут без сомнения будет много интересующихся. И такие темы все обсуждается в форуме...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Mikhail B.
сообщение Jan 15 2018, 18:16
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 52
Регистрация: 9-11-17
Из: Ростов-на-Дону
Пользователь №: 100 129



Цитата(iosifk @ Jan 14 2018, 21:42) *
Для одних VHDL - это работа и кусок хлеба. Для других - хобби. Для третьих - "сдать курсовик и забыть"... Поэтому я и хотел выяснить, что же на самом деле человеку нужно. Просто потому, что исходно ТС вопрос поставил не корректно. Сначала какой-то "процессор", потом "светодиоды" и потом "VHDL". Как это все взаимосвязано? И какой учебник нужен? Пока не понятно, что нужно рекомендовать...


Ответ на Ваш вопрос. Для меня VHDL - хобби. В институте не преподавалось ничего подобного и близко. Осваиваю с нуля. Поэтому мой вопрос в разделе "в помощь начинающему". Поэтому мой вопрос в крайней левой части вашего графика ;-)
Более подробно про "диоды" расскажу. С самого начала. Узнал я про это https://www.altera.com/products/boards_and_...evaluation.html
Так же, у меня есть Quartus prime 17.0 Standart edition. К ним прилагаются мои нулевые начальные знания VHDL и схемотехники.

На отладочной плате установлены 6 светодиодов. Один из них сигнализирует о наличии питания. Свечением остальных пяти есть возможность управлять при помощи ПЛИС. Её планируется программировать на языке VHDL. А именно: первый диод должен моргать раз в секунду. Второй - раз в две секунды. Третий - раз в пять секунд.
Чтоб представить взаимосвязь между будущими сигналами, мной были изображены ВД. По ним я хочу составить принципиальную схему (логические элементы и связь между ними), с этим и прошу оказать помощь - как по временным диаграммам построить схему? Всё остальное - вопрос десятый. Схема будет описана на VHDL. Программа вбита в Quartus, с этим постараюсь разбираться сам.
Go to the top of the page
 
+Quote Post
k155la3
сообщение Jan 16 2018, 10:37
Сообщение #14


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

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Для построения схемы из ВД Вам потребуется:
- Булева алгебра (если вдруг такого курса у Вас небыло).
Если собираетесь работать с лог. сигналами - оно надо в любом случае.

Основа синтеза схемы из ВД.
1. Из ВД строится "таблица истинности" Вашего черного ящика (потактово).
2. Таблица обрабатывается методами булевой алгебры напредмет оптимизации.
3. По оптимизированной (сокращенной) таблице строится схема. Проще всего метод (один из ...) оптимизации виден на "картах Карно".
---
Это один из "базовых" методов, примитивный, для простых схем (без памяти).

Go to the top of the page
 
+Quote Post
twix
сообщение Jan 16 2018, 13:38
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 326
Регистрация: 4-11-15
Пользователь №: 89 174



Цитата(Mikhail B. @ Jan 15 2018, 18:16) *
Ответ на Ваш вопрос. Для меня VHDL - хобби.

Есть два способа построить схему по VHDL диаграмме.
1. Простой.
2. Сложный.

1. Простой.
Пишете VHDL код, чтобы получилась диаграмма так, которая требуется. Затем синтезируете дизайн и смотрите схему, которую построил синтезатор.
Synplify синтезатор делает вполне себе смотрибельные схемы, но можно и прямо в Quartus посмотреть.

2. Сложный.
Значит любая диаграмма состоит из состояний или тактов.
В каждое состоянии состояние входов определяет состояние выходов.
Этим занимается комбинационных автомат. Ну вот входы транслирует в выходы. Делает он это мгновенно.
А вот состояниями рулит так называемая state machine. Она бывает двух типов, ну это не так важно.

Так вот, state machine просто меняет комбинацонные автоматы на каждом такте, из чего получается диаграмма.
Входы то одни и те же, а выходы меняются. Ну да, state machine позволяет делать "петли" то есть предыдущее состояние
выходов использовать вдогон ко входам как вход для комбинационного автомата.

Теперь про комбинационные автоматы. Входы транслируются в выходы согласно булевой алгебре.
Ее модификация это карты Карно. Позволяют быстро отработать сложные автоматы на бумажке.
Студентов заморачивают булевой алгеброй и картами Карно просто конкретно. На самом деле они НАФИГ не нужны в реальной
работе. Достаточно знать как работают простые элементы AND, OR, XOR, и то только для того чтобы понять отчего же сигналы
неверно смешиваются.

Ну вот и все. Понятно что Вам хочется геморроя на начальном этапе, ну так откройте начальные курсы по словам
булева алгебра, карты Карно, основы VHDL и вперед и с песней. Чего Вы нам то вопросы задаете.
Это все равно что "расскажите мне про математику".

Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 15th June 2025 - 03:20
Рейтинг@Mail.ru


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