

--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/428424a4-5bfa-4f8d-9b92-6d8f89ead544n%40googlegroups.com.
Hello Fernando,
I convert your snes file to my colorlight i5 board (just changing pin assigment).
When I do a verify, I got 2 errors:
- reg finish; cannot be driven by primitives or continuous assignment Verilog
- reg idle; cannot be driven by primitives or continuous assignment verilog
I solved them by changing the reg type to wire at lines 34 and 35. I hope it does not break the function of the module.
For those like (me that) do not have a snes controller for testing. It should be possible to simulate it with a 16 bit shift-register module.
- Clocking it with clk_snes
- Enabling it with a long pulse (16 x 12 microsec). This one being triggered by the latch_snes pulse.
- And using the last stage bit of the shift register as data-in to snes controller input
timing diagram of snes controller comunication
Hello Fernando,
Following your instruction, I could reproduce the problem.
An after playing an learning a bit :-)
I replace the line 28
reg [11:0] buttons_snes=12'd0;
by
reg [11:0] buttons_snesz_zero=12'd0;
assign buttons_snes[11:0]= buttons_snesz_zero [11:0];//
And it seem ok now on my machine.
Of course, I could not test the full function without the physical controller.
reg [11:0] buttons_snesz_zero=12'd0;
assign buttons_snes[11:0]= buttons_snesz_zero [11:0];//