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

проектирование обработки на ПЛИС

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

мне нужно сделать следующее : есть файл инициализации памяти (.mif) отсчеты должны поступать в ПЛИС и ПЛИС должен выдавать последовательно эти самые отсчеты

вот мой код работы :

 

INCLUDE "altsyncram.inc";

Subdesign test
(
    fclk, /init            : input;
    dout[17..0]                        : output;

)

Variable
    ct[11..0]    : dff;

    rom    : altsyncram WITH (WIDTH_A=18, WIDTHAD_A=12,
                        OPERATION_MODE = "ROM", 
                        INIT_FILE = "init.mif");

Begin

    ct[].clk = fclk;
    ct[] = ct[] + 1;
    ct[].clrn = /init;
    
    rom.clock0 = !fclk;    
    rom.address_a[11..0] = ct[11..0];
    dout[17..0] = rom.q_a[17..0];

End;

проблема в том, что при моделировании в VtctorWaveform эти отсчеты показываются последовательно как и нужно, но при загрузки в ПЛИС и выводе результатов в TapSignal у меня выводится только один отсчет.

В чем может быть проблема?  

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


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

22 minutes ago, щещ said:

Что это значит

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

 

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


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

1 час назад, щещ сказал:

Проблема в том, что я только начал изучать ПЛИС

Вы начали не с того. AHDL давно уже мёртв. Изучайте VHDL или на худой конец Verilog.

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


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

А так это Мега функция

Я её не сам же написал

Какая разница какой язык будет? 

Можно и vhdl было выбрать

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

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


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

21 минуту назад, щещ сказал:

А так это Мега функция

Я её не сам же написал

Какая разница какой язык будет? 

Можно и vhdl было выбрать

 

Можно говорить на современном языке и понимать окружающих(VHDL, V , SV). А можно говорить на мертвом диалекте и ничего не понимать (AHDL) Решать Вам.

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


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

19 часов назад, щещ сказал:

 

    ct[].clk = fclk;
   
    rom.clock0 = !fclk;    
    

В чем может быть проблема?  

может в этом.

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


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

Как уже сказал des00 сигнал init в нуле. Поэтому и выдает одно значение.

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


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

16 hours ago, sazh said:

может в этом.

нет, это просто двухфазная тактовая синхронизация. 

А про язык, AHDL был классным языком для своего времени, на нем можно было писать как в поведенческом, так и в структурном стиле. А конечные автоматы описывались гораздо проще тогдашнего верилога 95. Да, он не отвечает современным реалиям, с моделированием тоже куча проблем, но для начального изучения и проектирования на структурно-поведенческом уровне простой логики он более чем подходит и изучается за час, при условии владения цифровой схемотехникой.

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


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

21 минуту назад, des00 сказал:

нет, это просто двухфазная тактовая синхронизация. 

 

Это стиль проектирования конца 80х, на микросхемах средней интеграции, потом перенос на плис в схемном редакторе. Короче, я хотел сказать, что работа по обеим фронтам в ПЛИС не есть хорошо. Тем паче, что вопрошающий все это промоделировал, я сделал вывод, что может реально по частотам что то не так.

Что касается Альтера языка, полностью с Вами согласен. Не согласен про изучение за час, ибо у него нет возможности описать фронт клока и он поэтому опирается на базовые примитивы. Ближайшая альтернатива ему  конечно Верилог.

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


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

28 minutes ago, sazh said:

Что касается Альтера языка, полностью с Вами согласен. Не согласен про изучение за час, ибо у него нет возможности описать фронт клока и он поэтому опирается на базовые примитивы. Ближайшая альтернатива ему  конечно Верилог.

Ну у меня ушел час, там 23 странички основной мануал на язык) Дальше там все нативно. Про фронт клока, там парадигма другая, но самая идея здравая, писанины минимум, добавить/изменить сбросы - одна строчка и т.д. 

PS.  На форуме, лет 12-15 назад обсуждали как клево на AHDL описывать всю триггерную мушуру, вроде там @SM про это писал. 

PPS. А не, 55 страничек. Но читается очень просто. Кому хочется что бы олд-скулы свело, ловите аттач)

AHDL на русском.DOC

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


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

5 hours ago, des00 said:

 и изучается за час

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

У меня новобранцы писали рабочие программы на Си после 30 минут объяснения что такое этот язык...

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


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

1 hour ago, _4afc_ said:

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

У меня новобранцы писали рабочие программы на Си после 30 минут объяснения что такое этот язык...

речь то не про языки программирования, а про языки описания аппаратуры. Если бы VHDL/Verilog были так же просты как AHDL, то не было столько вопросов на форуме. 

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


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

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

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

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

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

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

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

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

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

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