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

 
 
> Проблема синтеза под Altera, Не моделируется синтезированная схема
White
сообщение Sep 9 2005, 11:48
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 81
Регистрация: 31-01-05
Из: Москва
Пользователь №: 2 324



Дроброго времени суток.

Если кто может-помогите wacko.gif
Проблема вот в чем:
Есть код на VHDL. Вот он:
Цитата
library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.std_logic_arith.all;



entity imit is
  port(
  clk : in STD_LOGIC;
  enable : in STD_LOGIC;
  synh_out : out STD_LOGIC;
  data_strob : out STD_LOGIC;
  data_out : out STD_LOGIC_VECTOR(31 downto 0)
      );
end imit;

--}} End of automatically maintained section

architecture rl of imit is
constant t_min:integer:=100; --100 ns

begin

p1: process (clk, enable) 

constant temp1:STD_LOGIC_VECTOR(31 downto 0):=B"00000001100000000110010000110011";
constant temp2:STD_LOGIC_VECTOR(31 downto 24):=X"02";
constant temp3:STD_LOGIC_VECTOR(31 downto 0):=B"00000011000000010000001010111100";
constant temp4:STD_LOGIC_VECTOR(31 downto 0):=B"11100100000000000000000000001000";

variable count_temp:integer range 0 to 256 :=0;
variable t1:integer:=750;
variable temp:integer range 0 to 16777215 :=0;
variable num:integer range 0 to 32;


begin
  if enable='0' then
  count_temp:=0;
  t1:=750;
  data_out<=(others=>'0');
  data_strob<='1';
  synh_out<='1';
  temp:=0;
  num:=0;

  else
    if clk'event and clk='1' then  --CLK rising edge
    count_temp:=count_temp+1;
    end if;
    if clk'event and clk='0' then
    case count_temp is
      when 1 =>data_strob<='0';
      when 2 =>synh_out<='0';
        data_out<=temp1;
      when 3 => synh_out<='1';
      when 4 =>synh_out<='0'; 
      ------------------------
        temp:=temp+t1;
        data_out<=temp2 & CONV_STD_LOGIC_VECTOR(temp,24);
        num:=num+1;
        if t1 = 750 and num = 20 then
        t1:=1000;
        num:=0;
        elsif t1=1000 and num=20 then
          t1:=750;
          num:=0;
        end if;
     
      ------------------------
      when 5 => synh_out<='1';
      when 6 =>synh_out<='0';
        data_out<=temp3;
      when 7 => synh_out<='1';
      when 8 =>synh_out<='0';
        data_out<=temp4;
      when 9 => synh_out<='1';
      when 11 =>data_strob<='1';
      when 150 => if t1=750 then
          count_temp:=0;
        end if;
      when 200 => if t1=1000 then
          count_temp:=0;
        end if;
      when others => null;
    end case;
    end if;
  end if;
  end process p1; 
end rl;

он замечательно моделируется в A-HDL но при попытке моделировать синтезированое устройство в Quartus не чего не происходит т е результате состояния выходов не меняются. ПЛИС-MAX 7000S
Вообщем вопрос что я делаю не так, и если объяснять долго то где посмотреть.

PS До этого с ПЛИС не работал. Так что сильно не бейте
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
vetal
сообщение Sep 12 2005, 16:57
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 2 095
Регистрация: 27-08-04
Из: Россия, СПб
Пользователь №: 553



Ни одна программа не запакует триггеры в эвв max7s, потому что их там просто нет нет. Логический элемент, триггер и ножка являются одной ячейкой max7s(Если ячеек больше то они просто не имеют вывода).
И если честно то в вашей схеме могут быть проблеммы с битами, т.к. ваша выходная шина является синхронной лишь частично. При различных настройках оптимизации могут появляться биты значение которых выражено через другие, другими словами комбинаторный выход.
Для получения наиболее правильного результатарекомендую отключить все оптимизации вашего синтезатора, или использовать synplify с установленной галочкой "Disable Sequential Optimizations".
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- White   Проблема синтеза под Altera   Sep 9 2005, 11:48
- - des00   else if clk'event and clk='1' then...   Sep 9 2005, 11:58
|- - andrew_b   Цитата(des00 @ Sep 9 2005, 15:58)else   ...   Sep 9 2005, 12:13
- - Iouri   count_temp желательно вынести в отдельный процесс ...   Sep 9 2005, 12:31
|- - des00   Цитата(Iouri @ Sep 9 2005, 07:31)count_temp ж...   Sep 9 2005, 12:37
- - vetal   Код    ---------------------------------...   Sep 9 2005, 12:58
|- - des00   Цитата(vetal @ Sep 9 2005, 07:58)Код   ...   Sep 9 2005, 13:08
|- - vetal   Цитата(des00 @ Sep 9 2005, 16:08)Цитата(vetal...   Sep 9 2005, 13:25
|- - des00   уважаемый Vetal вы не могли бы ответить мне в неок...   Sep 9 2005, 13:33
- - White   Спасибо всем за советы. Разобрался - все вроде раб...   Sep 10 2005, 11:53
- - White   К сожалению приходится возобновлять тему Продолж...   Sep 12 2005, 13:17
|- - des00   Цитата(White @ Sep 12 2005, 08:17)К сожалению...   Sep 12 2005, 13:39
- - White   Цитатане вижу ничего странного, кроме может быть т...   Sep 12 2005, 13:48
|- - des00   Цитата(White @ Sep 12 2005, 08:48)так и что ж...   Sep 12 2005, 14:05
- - White   Ок посмотрим в железе, а там видно будет. При од...   Sep 12 2005, 14:27
|- - des00   Цитата(vetal @ Sep 12 2005, 11:57)Ни одна про...   Sep 13 2005, 04:53
- - sazh   (C VHDL не знаком. Посмотрел в Квартусе в RTL п...   Sep 12 2005, 17:49
|- - des00   Раз пошла такая пьянка, то ИМХО по моим иследовани...   Sep 13 2005, 05:31
- - vetal   sazh : Вы не туда смотрите. На RTL действительно в...   Sep 12 2005, 19:31
- - sazh   to Vetal: Я посмотрел на плюсик в Proekt Navigator...   Sep 13 2005, 06:31
- - White   2 Vetal ЦитатаWhite: добавьте следующие строчки м...   Sep 13 2005, 13:02
|- - des00   Цитатаа что это изменит ? в бинарном виде мне в да...   Sep 13 2005, 13:18
- - White   ЦитатаЦитата Но в принципе идея понятна, единствен...   Sep 13 2005, 13:36
- - vetal   Аттрибуты которые я вам сказал написать предназнач...   Sep 13 2005, 13:37
- - White   ЦитатаАттрибуты которые я вам сказал написать пред...   Sep 14 2005, 09:21
- - vetal   Выключите так же: Remove duplicate registers -off....   Sep 14 2005, 09:37
|- - des00   Насчет счетчика и всех асинхронно/синхронных дел ...   Sep 14 2005, 09:52
- - White   2 vetal Спасибо за советы все заработало 2 d...   Sep 14 2005, 10:07
- - des00   Цитата(White @ Sep 14 2005, 05:07)За ссылки н...   Sep 14 2005, 11:02


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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 21:52
Рейтинг@Mail.ru


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