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

деление 1/x. Алгоритм деления булевых чисел

Добрый день!

Помогите, пожалуйста, решить такую задачку.

Дан период некого процесса. Нужно найти частоту процесса. Период вводится с 12 кнопочной клавиатуры. Необходимо определить частоту процесса, вывести её на индикаторе. Спаять получившуюся схему на макетке.

 

Есть несколько вариантов решения задачки. Но мне необходимо реализовать решение с помощью деления на цифровых микросхемах (без использования таблицы соответствия). Но я плохо представляю, как вообще проводится аппаратное деление двоичных чисел. Удалось найти несколько вариантов деления в столбик со сдвигом и вычитанием( или суммированием с обратным кодом). Помогите выбрать наиболее подходящий вариант деления и примерную схему реализации данной задачи.

Поделиться сообщением


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

Есть несколько вариантов решения задачки. Но мне необходимо реализовать решение с помощью деления на цифровых микросхемах (без использования таблицы соответствия). Но я плохо представляю, как вообще проводится аппаратное деление двоичных чисел. Удалось найти несколько вариантов деления в столбик со сдвигом и вычитанием( или суммированием с обратным кодом). Помогите выбрать наиболее подходящий вариант деления и примерную схему реализации данной задачи.

Задача учебная, курсовой. Поскольку присутствует клавиатура и индикатор. Без процессора только ввод и индикация на простой логике будет по размеру близка к чемоданчику.

А на любом микроконтроллере задача просто тривиальна. Начните с реализации клавиатуры и дисплея. Деление это самое простое.

Поделиться сообщением


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

Задача учебная, курсовой. Поскольку присутствует клавиатура и индикатор. Без процессора только ввод и индикация на простой логике будет по размеру близка к чемоданчику.

А на любом микроконтроллере задача просто тривиальна. Начните с реализации клавиатуры и дисплея. Деление это самое простое.

Да, задача учебная. Не курсовой. Для доп. плюсика. Больше для себя делаю, т.к. раньше никогда не паял микросхемки - интересно. Не отрицаю, деление через микроконтроллер довольно тривиально, задача сведется к верному подключению клавиатуры и индикатора к портам ввода/вывода микропроцессора + чуть-чуть программирования в авр студио. Поэтому такой вариант не очень интересен.

 

Только про чемоданчик не совсем понял. По моим прикидкам для реализации индикации (про клавиатуру не знаю, может, там действительно что-то хитрое) необходим генератор импульсов+регистры+семисегментный дешифратор+"делитель".

Поделиться сообщением


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

Да, задача учебная. Не курсовой. Для доп. плюсика. Больше для себя делаю, т.к. раньше никогда не паял микросхемки - интересно. Не отрицаю, деление через микроконтроллер довольно тривиально, задача сведется к верному подключению клавиатуры и индикатора к портам ввода/вывода микропроцессора + чуть-чуть программирования в авр студио. Поэтому такой вариант не очень интересен.

 

Только про чемоданчик не совсем понял. По моим прикидкам для реализации индикации (про клавиатуру не знаю, может, там действительно что-то хитрое) необходим генератор импульсов+регистры+семисегментный дешифратор+"делитель".

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

И так далее.

На процессоре вы хотя бы изучите алгоритмы и методы построения клавиатур, и индикации. Представления и преобразования чисел. Структуру методы програмирования контроллера. Разводку и технологию изготовления печатных плат. Если выберете корпуса микросхем DIP То хотя бы сможете сделать все сами от начала до конца. Сможете оценивать необходимые трудозатраты на все этапы работы, чтобы в последствии здраво ставить перед собой задачи.

Поделиться сообщением


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

Спасибо. Задача действительно получилась слишком трудоемкой. Будем пробовать реализовать на микроконтроллере.

Поделиться сообщением


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

Заблуждаетесь.

 

Задача это ТЗ, а поскольку его здесь изначально не было, то и задачи тоже.

Поделиться сообщением


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

Спасибо. Задача действительно получилась слишком трудоемкой. Будем пробовать реализовать на микроконтроллере.

 

А как вам идея реализации на FPGA ? На Verilog такое вполне можно написать, все влезет в одну микросхему (это вместо того, чтобы паять "чемоданчик"). Заодно приобретете массу новых знаний.

Поделиться сообщением


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

А как вам идея реализации на FPGA ? На Verilog такое вполне можно написать, все влезет в одну микросхему (это вместо того, чтобы паять "чемоданчик"). Заодно приобретете массу новых знаний.

Идея-то хорошая. Но на данный момент для меня слишком сложная. Во-первых, я вообще не представляю, как работать с ПЛИСами и подобными, в том числе как их программировать. Чтобы с этим разобраться, нужно время. Во-вторых, я не знаю, сколько ресурсов необходимо на это потратить.

 

С микроконтроллером попроще будет - отобрать на кафедре STk-500, там же взять в долг какой-нить атмел 88 (упс, наоборот)), спаять что-то вроде миниплат с драйверами для клавы и индикатора, пару-тройку часов яростного программинга - авось заработает.

Изменено пользователем dan_p

Поделиться сообщением


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

С микроконтроллером попроще будет - отобрать на кафедре STk-500, там же взять в долг какой-нить атмел 88 (упс, наоборот)), спаять что-то вроде миниплат с драйверами для клавы и индикатора, пару-тройку часов яростного программинга - авось заработает.

 

Вам виднее. Просто если вы говорите, что решение задачи для МК для вас достаточно тривиально, то в чем смысл этой работы ? Я и предложил вам освоить FPGA и Verilog. Это актуально, современно и просто полезно ...

 

Вот страничка про FPGA:

http://www.fpga4fun.com/

Поделиться сообщением


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

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

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

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

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

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

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

×
×
  • Создать...