Я работаю над школьным проектом VGA, который я буду синтезировать на FPGA. Я работаю с Xilinx и использую Verilog как HDL. В проекте говорится, что я должен генерировать фиксированное количество частиц, отображать их на экране и, используя клавиатуру, мне придется управлять окружающей средой для этих частиц (например, ветер, гравитация и т. Д.).Создание нескольких строк для компиляции в Verilog
я могу генерировать одну частицу с размером 1 пиксель (размер не имеет значения) с помощью:
wire p1 =(posx>=part1x[13:4] && posx<=(part1x[13:4]+1) && posy>=part1y[12:4] && posy<=(part1y[12:4]+1));
С помощью этого:
wire p1 =(posx>=part1x[13:4] && posx<=(part1x[13:4]+1) && posy>=part1y[12:4] && posy<=(part1y[12:4]+1));
wire p2 =(posx>=part2x[13:4] && posx<=(part2x[13:4]+2) && posy>=part2y[12:4] && posy<=(part2y[12:4]+2));
wire p3 =(posx>=part3x[13:4] && posx<=(part3x[13:4]+3) && posy>=part3y[12:4] && posy<=(part3y[12:4]+3));
будут созданы три частицы.
Как я могу, например, генерировать 100 (или более) частиц без необходимости писать 100 строк кода?
я вижу. Большое вам спасибо за ваше время и помощь, господин. Лазаренко. –
Следующий вопрос: поскольку у меня есть 100 частиц, как я пишу 'assign red = (p1 || p2 || p3 || ... || border)? 3'b111: 3'b000;' –
@AnandWu: Not конечно, если я правильно понял вопрос. Не могли бы вы подробнее рассказать? Или даже создать отдельный вопрос? Благодарю. –