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

 
 
> Как можно оптимизировать код?
keeka
сообщение Oct 13 2011, 19:45
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 15-12-10
Из: Москва
Пользователь №: 61 640



Добрый день, народ.

Закончил свою первую работу - модулятор ЧМ2.
Код написан на VHDL.
Подскажите, пожалуйста, что можно было сделать лучше, оптимальней, чтобы лучше работало. Чувствую, что сделал все очень корявоsm.gif
на вход clk подается clock, на вход reset - информационные биты. Все в формате boolean. Ну и выход в формате integer.

Прикрепленный файл  fsk_modulator.vhd ( 1.21 килобайт ) Кол-во скачиваний: 237
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
keeka
сообщение Oct 14 2011, 08:44
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 15-12-10
Из: Москва
Пользователь №: 61 640



Там по rising_edge ранее запускалась команда считывании отсчета из таблицы, а теперь я это делаю по сигналу c_clk, накапливая его.
Приложил тестбенч, заодно и модуль. В Isim работает.

Прикрепленный файл  fsk_modulator.vhd ( 1.02 килобайт ) Кол-во скачиваний: 158


Прикрепленный файл  tb_fsk_modulator.vhd ( 1.05 килобайт ) Кол-во скачиваний: 128
Go to the top of the page
 
+Quote Post
DuHast
сообщение Oct 16 2011, 10:04
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 13-07-06
Из: Москва
Пользователь №: 18 797



У Вас сигнал clk стоит в списке чуствительности процесса, а в самом процессе этот сигнал ни как не используется, это обязательно приведет к тому, что результаты симуляции будут не верные.
Go to the top of the page
 
+Quote Post
keeka
сообщение Oct 16 2011, 19:34
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 15-12-10
Из: Москва
Пользователь №: 61 640



Цитата(DuHast @ Oct 16 2011, 14:04) *
У Вас сигнал clk стоит в списке чуствительности процесса, а в самом процессе этот сигнал ни как не используется, это обязательно приведет к тому, что результаты симуляции будут не верные.


Поясните или дайте ссылку, пожалуйста, где почитать об этом случае.

Цитата
Чтобы враги не догадались?


Раскусил
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Oct 16 2011, 20:21
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(keeka @ Oct 16 2011, 23:34) *
Поясните или дайте ссылку, пожалуйста, где почитать об этом случае.
Раскусил

Самое главное, надо определится c назначением этой первой работы:
1) если надо нарисовать в ISIM временную диаграмму - то вы цели достигли.
2) если надо в качестве отчёта о прослушанных лекциях по VHDL написать и сдать преподу код - то
на "два с плюсом" или м.б. на "три с двумя минусами" вы чего-то понаписали в соответствии со стандартом.
3) и самый плохой вариант если надо реализовать это в ПЛИС и получить работающую прошивку - ISE там вас сразу пошлёт нахрен, потому что, то что у вас написано при синтезе в железо даст совершенно не то, что вы хотели. Если вы хотите работать с железом - то вам очень нужно читать книжки по цифровой смехотехнике (триггеры, логика, синхронные счётчики, регистры, мультиплексоры, дешифраторы и т.д.) и книжки (даташиты) про внутреннее устройство ПЛИС, а уже потом снова брать в руки HDL. Ошибка не в коде, который у вас успешно симулируется - ошибка у вас в голове и её в двух словах без базовых знаний не опишешь.
Go to the top of the page
 
+Quote Post
keeka
сообщение Oct 17 2011, 04:49
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 15-12-10
Из: Москва
Пользователь №: 61 640



Цитата(VladimirB @ Oct 17 2011, 00:21) *
Самое главное, надо определится c назначением этой первой работы:
1) если надо нарисовать в ISIM временную диаграмму - то вы цели достигли.
2) если надо в качестве отчёта о прослушанных лекциях по VHDL написать и сдать преподу код - то
на "два с плюсом" или м.б. на "три с двумя минусами" вы чего-то понаписали в соответствии со стандартом.
3) и самый плохой вариант если надо реализовать это в ПЛИС и получить работающую прошивку - ISE там вас сразу пошлёт нахрен, потому что, то что у вас написано при синтезе в железо даст совершенно не то, что вы хотели. Если вы хотите работать с железом - то вам очень нужно читать книжки по цифровой смехотехнике (триггеры, логика, синхронные счётчики, регистры, мультиплексоры, дешифраторы и т.д.) и книжки (даташиты) про внутреннее устройство ПЛИС, а уже потом снова брать в руки HDL. Ошибка не в коде, который у вас успешно симулируется - ошибка у вас в голове и её в двух словах без базовых знаний не опишешь.


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

Назначение работы:начинающий самоучка разработчик алгоритмов пытается что-то делать sm.gif

Сообщение отредактировал keeka - Oct 17 2011, 04:51
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- keeka   Как можно оптимизировать код?   Oct 13 2011, 19:45
- - eugen_pcad_ru   Код не видел пока. Вопрос: фаза формируемого сигна...   Oct 14 2011, 04:44
- - andrew_b   Что это такое? Код process(clk) begin -...   Oct 14 2011, 04:51
- - keeka   ЦитатаКод не видел пока. Вопрос: фаза формируемого...   Oct 14 2011, 08:06
- - DuHast   а "rising_edge(clk)" где у Вас? В моде...   Oct 14 2011, 08:14
|- - DuHast   Цитата(keeka @ Oct 17 2011, 08:49) Хотя б...   Oct 17 2011, 11:18
|- - yes   Цитата(keeka @ Oct 17 2011, 08:49) Хотя б...   Oct 17 2011, 15:23
|- - VladimirB   Цитата(yes @ Oct 17 2011, 19:23) опасаюсь...   Oct 17 2011, 18:30
- - Koluchiy   Цитатана вход clk подается clock, на вход reset - ...   Oct 16 2011, 16:06
- - keeka   Мне на самом деле очень интересна тема автоматичес...   Oct 18 2011, 12:23
|- - bogaev_roman   Цитата(keeka @ Oct 18 2011, 16:23) Как сч...   Oct 18 2011, 13:40
|- - VladimirB   Цитата(keeka @ Oct 18 2011, 16:23) Мне на...   Oct 18 2011, 19:17
|- - des00   Цитата(VladimirB @ Oct 18 2011, 14:17) Но...   Oct 19 2011, 03:11
|- - sazh   Цитата(des00 @ Oct 19 2011, 06:11) я сдел...   Oct 19 2011, 06:50
|- - des00   Цитата(sazh @ Oct 19 2011, 01:50) Вопр...   Oct 19 2011, 17:17
- - syoma   ЦитатаХотя есть одно НО - сгенеренный код не оптим...   Oct 19 2011, 07:41
|- - bogaev_roman   Цитата(syoma @ Oct 19 2011, 11:41) 1. Раз...   Oct 19 2011, 12:25
- - syoma   Конечно, Матлаб не универсальная штука и все промо...   Oct 19 2011, 12:57
|- - bogaev_roman   Согласен, для ЦОС матлаб подходит очень хорошо, но...   Oct 19 2011, 13:11
- - keeka   А как вы относитесь к связке LabVIEW + PXI? Писать...   Oct 19 2011, 13:04
- - syoma   ЦитатаЧто сделать, если внести регистры не удается...   Oct 19 2011, 13:22
|- - bogaev_roman   Цитата(syoma @ Oct 19 2011, 17:22) В Матл...   Oct 19 2011, 13:44
- - syoma   Ваша логика ясна, все понятно. Но так же и понятно...   Oct 19 2011, 14:14
|- - bogaev_roman   Цитата(syoma @ Oct 19 2011, 18:14) Ваша л...   Oct 19 2011, 14:44
- - tAmega   Немного запоздал с линком, вот только что нарыл. Э...   Oct 22 2011, 05:32
|- - ys05   Цитата(tAmega @ Oct 22 2011, 09:32) Кому ...   Oct 22 2011, 07:51
- - keeka   ЦитатаНу а пока первый линк для топик стартера. С...   Oct 22 2011, 07:25
- - tAmega   Завтра выложу на рапиду и дам сюда линк.   Oct 22 2011, 09:58
- - tAmega   Вот, линк на полный конспект из трех частей со все...   Oct 23 2011, 07:48
- - keeka   Спасибо Как раз, что мне нужно)   Oct 23 2011, 10:29


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

 


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


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