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

JustaK

Участник
  • Постов

    33
  • Зарегистрирован

  • Посещение

Весь контент JustaK


  1. Извините, но не могу :laughing: Я было подумал может это какой косяк еще с 7й версии тянущийся, по-типу того, что надо обязательно, если имя числовое завершить его буквой или наоборот...но хз. Еще раз перепроверил. Для ROMов(поправка поста выше) создание clk0=clk срабатывает и на них терь больше не ругается, а на модули FFT и RAM - все остается неизменно(что меняй им по входам clk на clk0, что не меняй). чО ему надо? :smile3046: кусочеГ основного модуля с одной памятью: module Big_Basic_Module (input clk, ... ... ... wire clk0; assign clk0 = clk; ROM_s1 ROM_s1( .clock(clk0), .address(addr), .q(s1) );
  2. Есть проект в квартусе, состоящий из нескольких мегафункций(Несколько RAM, ROM и FFT блоков). Есть модуль, объединяющий вышесказанные, в который по input подается clk и далее распределяется по внутренним. При анализе и синтезе компиллятор выкидывает все выходы блоков памяти, пример: Warning: Synthesized away the following RAM node(s): Warning (14320): Synthesized away node "RAM_Re_f2:RAM_Re_f2|altsyncram:altsyncram_component|altsyncram_v9a1:auto_ge nerated|q_a[0]" и т.д. Симулируя проект в МоделСиме обнаружил причину: "Warning: (vsim-3016)D:/ModelSIM_files/RAM_Re_f2.v(78): Port type is incompatible with connection (port 'clock0'). #Region: /tb_CP/DUT/RAM_Re_f2/altsyncram_component)." Пробовал указать, что некоторый clk0=clk и присваивал его всем RAM. Ошибки как в моделсиме, так и в квартусе насчет них пропали(остались только ругань на ROM и FFT). Далее пробовал присваивать разные клоки так же для ROM и FFT - ничего не изменилось...Я в тупике, может кто сталкивался с такой проблемой? Квартус 8 версии, пробовал в 9й - те же яйца, только в профиль.
  3. Спасибо, адаптируюь потихоньку :rolleyes:
  4. Эммм, а разве эта операция не за пицот тактов выполяется?
  5. Имеется один сдвигающий регистр, напр: [15:0]SR[1040:0], из него требуется за 1 такт перенести, допустим 500слов, т.е. взять к примеру из SR 16битные слова с 140 по 640, и перенести их в [15:0]R[499:0]. Возможно ли это, и если да, то как?
  6. Опчим проблему решил: просто сделал из одного аццкого модуля два. Один для сдвигающих регистров, а другой для разного рода расчетам и квартус таки все праильно понял, и распихал что надо по памяти, а что надо по регисрам. Всем пасиба :) PS мегавизардовский таки не подошел
  7. Опчим сделал я через магивизард на блочной памяти, то что надо :rolleyes:, НО: при создании модуля есть настроечка "How wide should the distance between taps be" где мин. задержка 3 цикла вывода последующего taps-а...1 цикл возможно организовать?
  8. имеем в наличии вот такой регистр: reg signed [15:0]SRD[2072:0]; на него, каждый такт поступают 16битные данные, которые должны сдвигаться с поступлением предыдущего. Описал на verillog-е так: ""... if (enable_data) begin for (m = 2072; m>0; m = m-1) begin SRD[m] <= SRD[m-1]; end SRD[0] <= data_in; end..."" И что-то мне не нра как квартус его компилирует, особенно когда представляет не 2073 16-битных регистра, а 2073*16 1-битных регистров... :07: PS Может что-то посоветуете по этому поводу, как мне верно организовать сдвигающий регистр (каждый такт записывает новое слово, сдвигая на один вправо старое)
×
×
  • Создать...