Помогите с кодом . Хочу разобраться, но не понимаю проблему

Программируемая логика - это не так уж и сложно. Разберемся вместе.
Ответить
itisme2488
Родился
Сообщения: 1
Зарегистрирован: Вс дек 25, 2022 19:57:50

Помогите с кодом . Хочу разобраться, но не понимаю проблему

Сообщение itisme2488 »

Нужно реализовать с помощью Verilog HDL уравнение
Вторая картинка код, вылезают ошибки, как исправить?
Заранее спасибо за помощь
Вложения
Снимок экрана (294).png
(114.56 КБ) 222 скачивания
фффффф.png
(28.03 КБ) 186 скачиваний
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Помогите с кодом . Хочу разобраться, но не понимаю пробл

Сообщение Gudd-Head »

Почему у вас вход KEYs, а присванивание идёт по KEY?
Какой сигнал идёт на вывод rst_n?
Что такое и откуда взялось LED[0]?

В общем, смотрите что нагенерил Матлаб для такой схемы:
Изображение
Спойлер

Код: Выделить всё

// -------------------------------------------------------------
// 
// Generated by MATLAB 9.1 and HDL Coder 3.9
// 
// 
// -- -------------------------------------------------------------
// -- Rate and Clocking Details
// -- -------------------------------------------------------------
// Model base rate: 0
// Target subsystem base rate: 1.#INF
// 
// -------------------------------------------------------------


// -------------------------------------------------------------
// 
// Module: lab3
// Source Path: lab3/lab3
// Hierarchy Level: 0
// 
// -------------------------------------------------------------

`timescale 1 ns / 1 ns

module lab3
          (
           KEYs,
           LED_0
          );



  input   [3:0] KEYs;  // ufix4
  output  LED_0;

  wire dtc1;  // ufix1
  wire X1;  // ufix1
  wire dtc1_1;  // ufix1_E1
  wire X2;  // ufix1
  wire dtc1_2;  // ufix1_E2
  wire X3;  // ufix1
  wire Logical_Operator3_out1;
  wire X4;  // ufix1
  wire Logical_Operator1_out1;
  wire Logical_Operator5_out1;
  wire Logical_Operator4_out1;
  wire Logical_Operator6_out1;
  wire Logical_Operator2_out1;
  wire Logical_Operator7_out1;
  wire Logical_Operator_out1;


  assign dtc1 = KEYs[0];



  assign X1 = dtc1;



  assign dtc1_1 = KEYs[1];



  assign X2 = dtc1_1;



  assign dtc1_2 = KEYs[2];



  assign X3 = dtc1_2;



  assign Logical_Operator3_out1 = X3 & (X1 & X2);



  assign X4 = KEYs[3];



  assign Logical_Operator1_out1 = Logical_Operator3_out1 | X4;



  assign Logical_Operator5_out1 =  ~ Logical_Operator1_out1;



  assign Logical_Operator4_out1 = X4 & (X3 & (X1 & X2));



  assign Logical_Operator6_out1 =  ~ Logical_Operator4_out1;



  assign Logical_Operator2_out1 = X3 | X4;



  assign Logical_Operator7_out1 =  ~ Logical_Operator2_out1;



  assign Logical_Operator_out1 = Logical_Operator7_out1 | (Logical_Operator6_out1 | (Logical_Operator5_out1 | X1));



  assign LED_0 = Logical_Operator_out1;

endmodule  // lab3

Последний раз редактировалось Gudd-Head Пн дек 26, 2022 18:37:27, всего редактировалось 1 раз.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: Помогите с кодом . Хочу разобраться, но не понимаю пробл

Сообщение Martian »

и разве Quartus не расшифровывает ошибки?
Аватара пользователя
HardWareMan
Мучитель микросхем
Сообщения: 431
Зарегистрирован: Ср сен 02, 2015 07:47:20

Re: Помогите с кодом . Хочу разобраться, но не понимаю пробл

Сообщение HardWareMan »

В логических операциях вместо ! (восклицательный знак) следует использовать ~ (тильда).
Репозиторий STM32: https://cloud.mail.ru/public/2i19/Y4w8kKEiZ
Актуальность репозитория: 22 апреля 2026 года
Если чего-то не хватает с сайта st.com - пишите, докачаю.
/!\ Обновлений для STM32PowerMon и STM32PowerMon-UCPD временно не будет.
Ответить

Вернуться в «ПЛИС»