Jump to content

    

Adeks

Участник*
  • Content Count

    5
  • Joined

  • Last visited

Community Reputation

0 Обычный
  1. :a14: Спасибо, все получилось. Если будут вопросы по другим блокам, чиркану в этой теме.
  2. Начал доделывать описание. Столкнулся с другими проблемами. Решил сделать все, так сказать, в лоб. Сделал дополнительные два входных сигнала: generic (R: integer:=8); A_02: in std_logic_vector (R-1 downto 0) B_03: in std_logic_vector (R-1 downto 0) на которые будет подаваться наши множители "00000010" и "00000011". Соответственно переделал описание пакета и основного файла. Написал частично, для 4х элементов, чтобы проверить ошибки. В выражении возникла ошибка "Error (10344): VHDL expression error at MixColumns.vhd(29): expression has 16 elements, but must have 8 elements". Она возникла, из-за перемножения 8 разрядного элемента массива и 8 разрядного входного сигнала как я понял. Как это решить, чтобы сигнал и элемент массива нормально перемножались? MATR44.vhd MixColumns.vhd
  3. Переделал описание. Теперь придирается к оператору "*". "Error (10327): VHDL error at MixColumns.vhd(19): can't determine definition of operator ""*"" -- found 0 possible definitions". Как я понимаю, это из-за не состыковки типов данных. Если это так, то как можно это решить? MixColumns.vhd
  4. Попробовал изменить, пишет "Error (10568): VHDL error at MixColumns.vhd(19): can't write to interface object "matr" of mode IN". Когда поменял if i=1 then matr(i,j) <= (("00000010"*matrix(1,j)) xor ("00000011"*matrix(2,j)) xor matrix(3,j) xor matrix(4,j));. p.s. пересмотрев код, увидел, что process должен быть относительно mart, а reset и clk надо удалить.
  5. Недавно начал осваивать данный язык. Получил задание по реализации aes128 на vhdl. В данном алгоритме происходит блочный метод шифрования. Матрица 4х4. Описал один блок. При компиляции в квартусе, он выдает вот такую ошибку "Error (10410): VHDL Type Conversion error at MixColumns.vhd(20): Type Conversion near text or symbol "matrix" must have one argument" Прикрепил два файла. Один из них пакет, где описана матрица. Второй, один из блоков. Подскажите как решить данную проблему. MATR44.vhd MixColumns.vhd