Вс сен 14, 2014 16:08:18
Вс сен 14, 2014 17:31:14
Вс сен 14, 2014 17:36:16
Пн сен 15, 2014 15:28:09
Пн сен 15, 2014 16:40:53
Пн сен 15, 2014 19:50:47
process (clk)
begin
if clk'event and clk='1' then
divider <= divider+1;
if divider = 893 then
divider <= (others => '0');
end if;
end if;
end process;
Пн сен 15, 2014 19:53:16
Пн сен 15, 2014 19:57:31
Оооо, советую начать. Вам понравится! это такое счастье, что можно запилить любую логику и совсем не быть связанным с "выпускаемой номенклатурой микросхем".Я просто вообще с ними не работал.
Пн сен 15, 2014 20:06:17
Пн сен 15, 2014 20:22:49
Пн сен 15, 2014 20:52:59
Пн сен 15, 2014 21:13:35
Сб сен 27, 2014 23:01:52
поверьте, когда вы за(censored) рисовать 10 триггеров и обратные связи, и попутно искать, где в схеме вы накосячили, посмотрите на те 10 строчек, что я написал и подумайте, может, имеет смысл еще и VHDL изучить?
Вс окт 12, 2014 12:43:08
uldemir писал(а):на ПЛИС делитель на 893 делается элементарно:
....
Вс окт 12, 2014 13:06:34
Сб окт 25, 2014 00:34:55
Error (10170): Verilog HDL syntax error at timer.v(1) near text ""pll_144.v"; expecting "<"
include "pll_144.v" // 50mHz to 144mHz or 80mHz
module timer
(
// DAC
input clock48,
output reg DAC_lr,
output reg DAC_data,
output reg DAC_bc............
.........
Сб окт 25, 2014 10:07:40
WolfTheGrey писал(а):Другая проблемма, пытаюсь добавить РЛЛ блок в проект а че квартус материться?!Error (10170): Verilog HDL syntax error at timer.v(1) near text ""pll_144.v"; expecting "<"
- Код:
include "pll_144.v" // 50mHz to 144mHz or 80mHz
module timer
(
// DAC
input clock48,
output reg DAC_lr,
output reg DAC_data,
output reg DAC_bc............
.........
Сб окт 25, 2014 14:17:55
Вам нужно включить в проект экземпляр модуля и присоединить его входы/выходы.
input reg clock,
output reg clock0, clock1, loc;
pll_144 pl(inclk0(clock), c0(clock0), c1(clock1), locked(loc));
// synopsys translate_off
`timescale 1 ps / 1 ps
// synopsys translate_on
module pll_144 (
inclk0,
c0,
c1,
locked);
input inclk0; // 50mhz
output c0; // 144mHz
output c1; // 80mHz
output locked; // PLL activeclock
wire [4:0] sub_wire0;
wire sub_wire2;
wire [0:0] sub_wire6 = 1'h0;
wire [0:0] sub_wire3 = sub_wire0[0:0];
wire [1:1] sub_wire1 = sub_wire0[1:1];
wire c1 = sub_wire1;
wire locked = sub_wire2;
wire c0 = sub_wire3;
wire sub_wire4 = inclk0;
wire [1:0] sub_wire5 = {sub_wire6, sub_wire4};
altpll altpll_component (
.inclk (sub_wire5),
.clk (sub_wire0),
.locked (sub_wire2),
.activeclock (),
.areset (1'b0),
.clkbad (),
.clkena ({6{1'b1}}),
.clkloss (),
.clkswitch (1'b0),
.configupdate (1'b0),
.enable0 (),
.enable1 (),
.extclk (),
.extclkena ({4{1'b1}}),
.fbin (1'b1),
.fbmimicbidir (),
.fbout (),
.fref (),
.icdrclk (),
.pfdena (1'b1),
.phasecounterselect ({4{1'b1}}),
.phasedone (),
.phasestep (1'b1),
.phaseupdown (1'b1),
.pllena (1'b1),
.scanaclr (1'b0),
.scanclk (1'b0),
.scanclkena (1'b1),
.scandata (1'b0),
.scandataout (),
.scandone (),
.scanread (1'b0),
.scanwrite (1'b0),
.sclkout0 (),
.sclkout1 (),
.vcooverrange (),
.vcounderrange ());
defparam
altpll_component.bandwidth_type = "AUTO",
altpll_component.clk0_divide_by = 25,
altpll_component.clk0_duty_cycle = 50,
altpll_component.clk0_multiply_by = 72,
altpll_component.clk0_phase_shift = "0",
altpll_component.clk1_divide_by = 5,
altpll_component.clk1_duty_cycle = 50,
altpll_component.clk1_multiply_by = 8,
altpll_component.clk1_phase_shift = "0",
altpll_component.compensate_clock = "CLK1",
altpll_component.inclk0_input_frequency = 20000,
altpll_component.intended_device_family = "Cyclone IV E",
altpll_component.lpm_hint = "CBX_MODULE_PREFIX=pll_144",
altpll_component.lpm_type = "altpll",
altpll_component.operation_mode = "NORMAL",
altpll_component.pll_type = "AUTO",
altpll_component.port_activeclock = "PORT_UNUSED",
altpll_component.port_areset = "PORT_UNUSED",
altpll_component.port_clkbad0 = "PORT_UNUSED",
altpll_component.port_clkbad1 = "PORT_UNUSED",
altpll_component.port_clkloss = "PORT_UNUSED",
altpll_component.port_clkswitch = "PORT_UNUSED",
altpll_component.port_configupdate = "PORT_UNUSED",
altpll_component.port_fbin = "PORT_UNUSED",
altpll_component.port_inclk0 = "PORT_USED",
altpll_component.port_inclk1 = "PORT_UNUSED",
altpll_component.port_locked = "PORT_USED",
altpll_component.port_pfdena = "PORT_UNUSED",
altpll_component.port_phasecounterselect = "PORT_UNUSED",
altpll_component.port_phasedone = "PORT_UNUSED",
altpll_component.port_phasestep = "PORT_UNUSED",
altpll_component.port_phaseupdown = "PORT_UNUSED",
altpll_component.port_pllena = "PORT_UNUSED",
altpll_component.port_scanaclr = "PORT_UNUSED",
altpll_component.port_scanclk = "PORT_UNUSED",
altpll_component.port_scanclkena = "PORT_UNUSED",
altpll_component.port_scandata = "PORT_UNUSED",
altpll_component.port_scandataout = "PORT_UNUSED",
altpll_component.port_scandone = "PORT_UNUSED",
altpll_component.port_scanread = "PORT_UNUSED",
altpll_component.port_scanwrite = "PORT_UNUSED",
altpll_component.port_clk0 = "PORT_USED",
altpll_component.port_clk1 = "PORT_USED",
altpll_component.port_clk2 = "PORT_UNUSED",
altpll_component.port_clk3 = "PORT_UNUSED",
altpll_component.port_clk4 = "PORT_UNUSED",
altpll_component.port_clk5 = "PORT_UNUSED",
altpll_component.port_clkena0 = "PORT_UNUSED",
altpll_component.port_clkena1 = "PORT_UNUSED",
altpll_component.port_clkena2 = "PORT_UNUSED",
altpll_component.port_clkena3 = "PORT_UNUSED",
altpll_component.port_clkena4 = "PORT_UNUSED",
altpll_component.port_clkena5 = "PORT_UNUSED",
altpll_component.port_extclk0 = "PORT_UNUSED",
altpll_component.port_extclk1 = "PORT_UNUSED",
altpll_component.port_extclk2 = "PORT_UNUSED",
altpll_component.port_extclk3 = "PORT_UNUSED",
altpll_component.self_reset_on_loss_lock = "OFF",
altpll_component.width_clock = 5;
endmodule
Сб окт 25, 2014 19:45:01
Сб окт 25, 2014 19:49:53