exponenta event banner

Минимизация включения часов

По умолчанию HDL Coder™ генерирует код в стиле, который предназначен для отображения в регистры с включением синхронизации, а DUT имеет порт включения синхронизации верхнего уровня.

Если не требуется генерировать регистры с включением часов, можно свернуть логику включения часов. Например, если оконечное оборудование содержит регистры без включения часов, можно сэкономить аппаратные ресурсы путем минимизации логики включения часов.

Следующий код VHDL ® показывает стиль по умолчанию сгенерированного кода, в котором используется включение часов. enb сигнал - включение тактового сигнала:

Unit_Delay_process : PROCESS (clk, reset)
  BEGIN
    IF reset = '1' THEN
      Unit_Delay_out1 <= to_signed(0, 32);
    ELSIF clk'EVENT AND clk = '1' THEN
      IF enb = '1' THEN
        Unit_Delay_out1 <= In1_signed;
      END IF;
    END IF;
  END PROCESS Unit_Delay_process;

Следующий код VHDL показывает стиль кода, который генерируется, если минимизировать включение часов:

Unit_Delay_process : PROCESS (clk, reset)
  BEGIN
    IF reset = '1' THEN
      Unit_Delay_out1 <= to_signed(0, 32);
    ELSIF clk'EVENT AND clk = '1' THEN
      Unit_Delay_out1 <= In1_signed;
    END IF;
  END PROCESS Unit_Delay_process;

Использование графического интерфейса пользователя

Чтобы минимизировать включение часов, на вкладке «Создание кода HDL» > «Настройка параметров создания кода» > «Настройка параметров оптимизации» > «Общие» выберите «Минимизировать включение часов».

Использование командной строки

Для минимизации включения тактового синхросигнала в coder.HdlConfig объект конфигурации, установите MinimizeClockEnables свойство для true. Например:

hdlCfg = coder.config('hdl')
hdlCfg.MinimizeClockEnables = true;

Ограничения

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

  • Совместное использование ресурсов

  • Отображение ОЗУ

  • Петлевая потоковая передача