Jump to content

    
Sign in to follow this  
ElectraLord

Реализация задержек в QuartusII 91

Recommended Posts

Всем Привет!!!! Пожалуста помогите разобратся. Раньше програмировал PIC и таких проблем невозникало . А сейчас решил прикрутить LCD к Cyclone 1 и задержки неработают

Может есть другие методы

мне нужно

реализовать передачу данных

пробовал

E=1;

delay(15);

DATA=DD;

delay(15);

E=0;

 

 

task delay

////

endtask

Интересует Verylog

 

always @ (posedge clk)

begin

t=t+1;

if ((t>17)||q)

begin

p=1;

t=0;

end

 

end

always @ (posedge p)

пробовал делать то что выше но так неудобно

Мне нужна универсальная задержка

 

Почемуто в разных примерах встречается запись # но в quartus 91 почемуто неработает

Share this post


Link to post
Share on other sites

Может ктонибудь обьяснить принцип реализации задержки

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

 

 

t=t+1;

if t>17

-----

if t>20

------

if t>500

---

---

if t>5000

if

if

только так???

 

пробовал через always но тогда тоже будет нагромождение :wacko:

 

Share this post


Link to post
Share on other sites

Задержки несинтезируемы.

Если Вам это не понятно, то прежде, чем чего-то писать, почитайте про ПЛИС вообще. ПЛИС - это совсем не микроконтроллеры!!!

Начните хотя бы отсюда: http://fpga-faq.narod.ru/

Share this post


Link to post
Share on other sites

Если несинтезируемы тогда как их получают???????

ведь у меня задержка всеравно получается примерно

17 тактов ок 500 нс

Зная сколько длится один такт можно подсчитать задержку или всетаки нетак?

Предложите вариант если знаете как сделать

например

E=1;

200 нс

E=0;

500нс

E=1;

400нс

D=DATA;

400нс

E=0;

800нс

RN=1;

Как такое реализовать,пожалуйста предложите ваши варианты

Share this post


Link to post
Share on other sites

Мой совет - отложите пока Verilog в сторону. Рисуйте в схематике, используя LPM-модули. Разберетесь что к чему - вернетесь к языку. Иначе очень долго будете топтаться на месте.

Share this post


Link to post
Share on other sites

неужели никто незнает как получить такое ?

E=1;

200 нс

E=0;

500нс

E=1;

400нс

D=DATA;

400нс

E=0;

800нс

RN=1;

 

на Veryloge

Мне сказали что легко можно перенести прогу для контроллера на плис

но сдесь нет таких задержек как там.

Но все же может ктото может помочь

Что же касается схематика так я и так из veryloga создаю модуль в схематике.

 

 

 

На счетчиках, схемах сравнения, автоматах

Ну собственно я так и сделал

t=t+1

if t>17

begin

---end

if t>20

------

Получается очень громозко и неуниверсально

 

Share this post


Link to post
Share on other sites

ПЛИС не контроллер. Конструкция типа delay(время) несинтезируема.

Поэтому, чтобы сделать задержку надо взять частоту с известным периодом и просчитать нужное количество тактов. А как делать - разницы нет - HDL или схемный редактор.

А задержка в контроллере делается тоже не универсально - в реальности вместо функции подставляется код.

Share this post


Link to post
Share on other sites
ПЛИС не контроллер. Конструкция типа delay(время) несинтезируема.

Поэтому, чтобы сделать задержку надо взять частоту с известным периодом и просчитать нужное количество тактов. А как делать - разницы нет - HDL или схемный редактор.

А задержка в контроллере делается тоже не универсально - в реальности вместо функции подставляется код.

т.е написать всю прогу через if ?

 

t=t+1;

if t>17

-----

if t>20

------

if t>500

---

---

if t>5000

if

if

только так???

Share this post


Link to post
Share on other sites

Типа того.

Фактически это один счетчик с несколькими компараторами.

Но я бы посмотрел для верности еще и временные диаграммы в Квартусе - раз уж Вы на циклоне делаете.

 

Попутно еще вопрос - а что будет делать сиклон в проекте? Только ЖКИ управлять?

Share this post


Link to post
Share on other sites
Типа того.

Фактически это один счетчик с несколькими компараторами.

Но я бы посмотрел для верности еще и временные диаграммы в Квартусе - раз уж Вы на циклоне делаете.

 

Попутно еще вопрос - а что будет делать сиклон в проекте? Только ЖКИ управлять?

Конечно нет LCD это только небольшая часть. Остальная часть программы уже реализована в виде отдельного блока осталось только индикацию прикрутить.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this