Перейти к содержанию

Разделение Импульсов


Braimik

Рекомендуемые сообщения

Добрый день нужна помощь , имеется 7входов и один выход элемент или , все соединяет в один импульс оттуда все идет на счетчик , но так как счетчик считает импульсы из 0 в 1 , то как разделить импульсы после элемента или? Длительность каждого сигнала 20мс на каждом входу , сигналы идут последовательно , как сделать так чтобы счетчик их видел?

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Объединённые импульсы подаёшь на вход Enable счётчика. Тактовый сигнал с периодом 20мс подаёшь на тактовый вход счётчика.

Всё, счётчик будет увеличивать своё значение на 1 каждый такт, если есть входной сигнал.

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Выглядеть это будет примерно так:

post-164632-0-16656200-1413437306_thumb.png

Сверху вниз: ресет, клок, семь импульсов, объединение импульсов по ИЛИ, выход счётчика.

На выходе как и должно быть получаем число 4.

Что не понял?

Вот код для ПЛИС на Verilog:

module inp_cnt(
   clk,
   rstn,
   impulses,
   count
);

input       clk;
input       rstn;
input [6:0] impulses;
output [2:0]count;

wire        allimp = |impulses;
reg [2:0]   count;

always @(posedge clk or negedge rstn)
if(!rstn)       count <= 3'b0;
else if(allimp) count <= count + 3'b1;

endmodule

Изменено пользователем Vascom
Ссылка на комментарий
Поделиться на другие сайты

как разделить импульсы после элемента или?

Если нужно считать все импульсы, которые пришли на каждый из 7 входов, то зачем нужно их объединять в один, чтобы потом разделять снова? Тогда уж нужно ставить на каждый вход свой счетчик и общий сумматор. Или можно каждый из входных сигналов дифференцировать до очень короткого импульса, чтобы не было перекрытия импульсов друг с другом и считать одним общим счетчиком. Но и в этом случае возможно совпадение фронтов, особенно если импульсы на входах каким-то образом синхронизированы.

Ссылка на комментарий
Поделиться на другие сайты

имеется 7входов и один выход элемент или , все соединяет в один импульс

7 входов в один импульс? Закусывайте иногда. Без точной схемы и подробного объяснения это бред сивой кобылы.

Хорошо зафиксированный пациент в анестезии не нуждается

Ссылка на комментарий
Поделиться на другие сайты

Я тут попытался понять.... то ли задача стоит - "посчитать счётчиком все импульсы, возникающие на всех 7 входах" - и проблема возникла с тем, что когда импульсы пересекаются во времени (сливаются), счетчик их как один воспринимает, в итоге "недосчёт". Но к чему тогда указано, что сигналы идут с конкретной длительностью, последовательно, но не указан интервал. :unknw:

Ссылка на комментарий
Поделиться на другие сайты

А я понял так: в один момент времени на каждом из семи входов может быть лишь один импульс, надо посчитать число импульсов на всех семи входах. Тогда всё логично - объединяем их по ИЛИ и считаем.

Изменено пользователем Vascom
Ссылка на комментарий
Поделиться на другие сайты

Вот сама схема. диаграмму потом скину. там получается сначала на 1ый вход приходит импульс потом через 20нс уходит в 0 и сразу на 2ой вход приходит 1 и так на всех входах , в результате после элемента ИЛИ получается сплошная 1

"посчитать счётчиком все импульсы, возникающие на всех 7 входах" - и проблема возникла с тем, что когда импульсы пересекаются во времени (сливаются), счетчик их как один воспринимает, в итоге "недосчёт". Но к чему тогда указано, что сигналы идут с конкретной длительностью, последовательно, но не указан интервал. :unknw:

да он их не досчитывает иногда когда разрыв появляется. один импульс завершился и сразу же 2 пошел импульс . счетчик нужен для подсчета слов . это часть схемы без памяти всего 40слов и общая длительность 2мс. тоесть на каждое слово по 50нс . решил для начала разобраться с 20нс по идеи смысла не особо будет от того с какой длительностью они будут идти. там получается что импульсы последовательно друг за другом идут

post-178726-0-06517400-1413455678.jpg

Ссылка на комментарий
Поделиться на другие сайты

вот пример диаграммы , только они могут и в разнобой идти, но суть не меняется. я понимаю что все равно маленький да промежуток времени есть между импульсами. возможно ли такое что на симуляторе все сплошняком идет , а на железе с небольшим прерыванием будет? или все зависит от сигналов как они записаны?

И что означает "как сделать так чтобы счетчик их видел"?

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

post-178726-0-37558500-1413456261_thumb.jpg

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

В зависимости от временнЫх параметров самих импульсов и распределении их во времени:

1 - одновибратор (или дифф. цепочку) на каждую линию -> ИЛИ -> счетчик.

2 - счетчик на каждую линию -> сумматор.

Более толково поясните людям задачу, для чего это все делается?

Ссылка на комментарий
Поделиться на другие сайты

Более толково поясните людям задачу, для чего это все делается?

Вот эти 7 каналов, еще есть 8 входов данных на каждом канале есть свои данные в 8разрядном коде . мне нужно проверить правильность кодов на выходе. так весь сигнал длится 2мс я его не увижу . а с счетчиком и памятью я смогу просмотреть все слова которые пришли и в какой последовательности

Ссылка на комментарий
Поделиться на другие сайты

Бр-р-р! Вы что-то налаживаете, ремонтируете? Или это проект?

Есть ведь анализаторы линий. Можно ими воспользоваться.

И если каждый канал передает свои данные, то для чего тогда объединять их? Нужно ведь анализировать кажлый канал.

Чего-то я не понимаю. :unknw:

Ссылка на комментарий
Поделиться на другие сайты

А это вообще имеет отношение к ПЛИС?

да имеет отношение.

Бр-р-р! Вы что-то налаживаете, ремонтируете? Или это проект?

:unknw:

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

Ссылка на комментарий
Поделиться на другие сайты

Надёжно будет работать, кмк, если поставить на каждый из семи каналов одновибратор с минимально возможным коротким импульсом.

В наносекундном диапазоне емкости конденсаторов RC дифцепочек и одновибраторов будут сравнимы с емкостью монтажа, что не есть хорошо. Если уж Braimik собирается работать с ПЛИС, то проще и надежней будет укоротить импульс таким образом. Длительность импульса будет равна задержке распространения одного элемента. Можно импульс расширить, установив не один инвертор, а последовательно 3.

1.pdf

Ссылка на комментарий
Поделиться на другие сайты

В наносекундном диапазоне емкости конденсаторов RC дифцепочек и одновибраторов будут сравнимы с емкостью монтажа, что не есть хорошо.

А это? :

Длительность каждого сигнала 20мс на каждом входу

На минуточку, 20мс - это двадцать миллионов наносекнуд. О каком наносекундном диапазоне речь? Нужно всего лишь укоротить сигналы самую чуточку, чтобы они не сливались после ИЛИ. Вот и всё.

* это всё конечно абстрагировавшись от основной задачи автора. Возникает подозрение, что что-то не так делается.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...