demsp 0 17 марта, 2018 Опубликовано 17 марта, 2018 · Жалоба Как в (4-bit'ном) регистре module reg4 (CLK, D, Q); input CLK; input [3:0] D; output [3:0] Q; reg [3:0] Q; always @(posedge CLK) Q = D; endmodule повесить светодиод на clock (CLK)? Вроде надо так module d_trig_verilog (CLK, D, Q); input CLK; input [3:0] D; output [3:0] Q; output led_clk; // объявляем LED reg [3:0] Q; always @(posedge CLK) Q = D; assign led_clk = CLK; //назначаем LED как CLK endmodule Но так не работает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 17 марта, 2018 Опубликовано 17 марта, 2018 · Жалоба Но так не работает. Первый пример. Взят обычный регистр, причем 4 бита. Второй пример. Тот же регистр, но он почему-то не используется... А почему? Зачем для светодиода Вам хочется 4 бита? И какова частота клока? Если высокая, то глаз ее будет воспринимать как слабое свечение... Короче вопрос сам по себе не понятен... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demsp 0 17 марта, 2018 Опубликовано 17 марта, 2018 · Жалоба Выходы регистра я назначаю в PinPlanner'e (Quartus). А как назначить выход CLK? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 17 марта, 2018 Опубликовано 17 марта, 2018 · Жалоба Выходы регистра я назначаю в PinPlanner'e (Quartus). А как назначить выход CLK? Сейчас попытаюсь вспомнить. Домик из веток. Домик из чего-то еще Домик из камней... А Вам какой нужен? Если Вы еще не прошли уровень RTL, то зачем Вам назначать выводы? Научитесь формулировать задачу, потом симулировать и отлаживать RTL... И только потом, когда пройдете эти "уровни", то и займетесь " как назначить выход".... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demsp 0 17 марта, 2018 Опубликовано 17 марта, 2018 · Жалоба А есть разница, использую я внешний clock (timer 555) или внутренний? Я же могу повесить LED'ы на разряды регистра. А как повесить LED на clock? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 17 марта, 2018 Опубликовано 17 марта, 2018 · Жалоба А есть разница, использую я внешний clock (timer 555) или внутренний? Я же могу повесить LED'ы на разряды регистра. А как повесить LED на clock? А зачем ? Как уже сказали, Вы увидите тускло горящий светодиод. Какая в этом практическая польза ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 17 марта, 2018 Опубликовано 17 марта, 2018 · Жалоба А есть разница, использую я внешний clock (timer 555) или внутренний? Что такое "внутренний"? Откуда берется, если внутри ПЛИС обычно нет генераторов? И что Вы понимаете под "внешний" и почему именно нестабильный "timer 555", а не кварц? Про "синхронное проектирование" что-то читали? А самое главное. Это "сдать и забыть" или "профессионально научиться"??? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demsp 0 17 марта, 2018 Опубликовано 17 марта, 2018 · Жалоба почему именно нестабильный "timer 555" Потому что у меня нестабильный "timer 555" А самое главное. Это "сдать и забыть" или "профессионально научиться"??? Ценю вашу заботу Ну правда, помогите разобраться. Как clock от внешнего таймера с невысокой частотой повесить на LED? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 17 марта, 2018 Опубликовано 17 марта, 2018 · Жалоба Приветствую! Как тяжко все начинать с нуля (особенно методом ненаучного тыка). module top_test_led ( input wire CLK, output wire led_clk // объявляем LED ); assign led_clk = CLK; //назначаем LED как CLK endmodule Увидите отличия от Вашего кода? Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Leka 0 17 марта, 2018 Опубликовано 17 марта, 2018 (изменено) · Жалоба Чтобы использовать клоки, только как клоки: reg [1:0] clkreg; assign clkout=^clkreg; always@(posedge сlk) clkreg[1] <= ~clkreg[0]; always@(negedge clk) clkreg[0] <= clkreg[1]; Изменено 17 марта, 2018 пользователем Leka Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demsp 0 28 марта, 2018 Опубликовано 28 марта, 2018 · Жалоба assign clkout=^clkreg; Поясните, пожалуйста, это означает clkout = XOR clkreg ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AnatolySh 0 29 марта, 2018 Опубликовано 29 марта, 2018 · Жалоба Но так не работает. Что значит "не работает"? Давайте, как сказал Иосиф Григорьевич, вы смоделируете, покажете нам скриншот RTL-модели и ещё раз спросите (если к тому времени не найдёте ответ). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nbIBO 0 9 августа, 2018 Опубликовано 9 августа, 2018 · Жалоба Так понимаю что вопрос из этой же темы. <UCLK/clkout1_buf>, driving the net, <clk>, that is driving the following (first 30) non-clock load pins. < PIN: f_fifo0_clk.O; > < PIN: f_fifo1_clk.O; > This is not a recommended design practice in Spartan-6 due to limitations in the global routing that may cause excessive delay, skew or unroutable situations. It is recommended to only use a BUFG resource to drive clock loads. If you wish to override this recommendation, you may use the CLOCK_DEDICATED_ROUTE constraint (given below) in the .ucf file to demote this message to a WARNING and allow your design to continue. < PIN "UCLK/clkout1_buf.O" CLOCK_DEDICATED_ROUTE = FALSE; > UCLK - clocking wizard xilinx clk <= clkout1 выходная частота на глобальной цепи, ей тактируются блоки внутри, но так же её надо вывести за пределы ПЛИС чере простой пин что надо исплоьзовать что бы снять сигнал с глобальной цепи и вывести его на простой пин. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 9 августа, 2018 Опубликовано 9 августа, 2018 · Жалоба Приветствую! ... что надо исплоьзовать что бы снять сигнал с глобальной цепи и вывести его на простой пин. Проще всего и правильней использовать ODDR2 для этого ODDR2 ( .C0( clk), .C1(~clk), .D0(1'b1), .D1(1'b0), .CE(1'b1), .R(1'b0), .S(1'b0), .Q(net_to_out_pin) ); В этом случае и волки сыты - clk используется как клок - и овцы довольны - клок на выходе имеет туже частоту что clk а также такую же задержку что и обычные выходы от триггеров. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться