lekernel changed the topic of #milkymist to: Mixxeo, Migen, Milkymist-ng & other Milkymist projects :: Logs: http://en.qi-hardware.com/mmlogs
pablojavier has joined #milkymist
pablojavier has left #milkymist [#milkymist]
antgreen has quit [Ping timeout: 252 seconds]
xiangfu has joined #milkymist
xiangfu has quit [*.net *.split]
barmstrong has quit [*.net *.split]
barmstrong has joined #milkymist
xiangfu has joined #milkymist
antgreen has joined #milkymist
playthatbeat has quit [Read error: Operation timed out]
playthatbeat has joined #milkymist
larsc has quit [Ping timeout: 272 seconds]
larsc has joined #milkymist
xiangfu has quit [Read error: Connection reset by peer]
xiangfu has joined #milkymist
xiangfu has quit [Ping timeout: 245 seconds]
aeris has quit [Quit: en a pas]
xiangfu has joined #milkymist
mumptai has joined #milkymist
aeris has joined #milkymist
xiangfu has quit [Read error: Connection reset by peer]
lekernel has joined #milkymist
mumptai has quit [Ping timeout: 268 seconds]
xiangfu has joined #milkymist
<larsc> hm, I keep forgetting this. What's the difference between a bram where the output is clock and one where it is not and when do you want to use one or the other?
<lekernel> you mean registered?
<larsc> probably. basically the difference between data = ram[raddr] and @(posedge clk) data <= ram[raddr]
<lekernel> all BRAMs have 1-cycle latency. you can optionally add another output register that improves the clock-to-output delay, but on slowtan6 the performance is less than registering in the fabric so you should never use it (as performance optimization is always the target due to the inherent slowness of the silicon)
<lekernel> if you have an asynchronous read, you cannot map to BRAM
<lekernel> unless the synthesizer moves some other design register into the memory via retiming
<larsc> ok, I see
<larsc> thanks
<lekernel> you can still have the form
<lekernel> @(posedge clk) addr_registered <= addr
<lekernel> assign data = ram[addr_registered]
<lekernel> which describes a write-first memory mappable to block RAM
<lekernel> as opposed to @(posedge clk) data <= ram[raddr]
<lekernel> which is read-first
<larsc> so only if the address is combinatorial logic I won't be able to map it to a BRAM?
<lekernel> and if you can't register the data either
<lekernel> Xst will generally try to extract a register from the address generation logic, or the data processing logic, and put it into the BRAM. but a) it's only so smart b) in some cases, extracting the register would lead to disasterous timing
<larsc> but for a fifo with a read counter I should be fine I guess?
<lekernel> try synthesizing it and look at the netlist
<lekernel> it's not always that clear
<lekernel> depends how your fifo works :)
<larsc> It will probably be fine since the output will eventually be a register again, but in a different core
<lekernel> ah, I'd double check that. we're talking about Xilinx software, remember? :)
<lekernel> I'm willing to take bets it won't work
<larsc> the FF will probably explode if it does not work
<larsc> FF count
<lekernel> distributed RAMs are never mapped to FFs - they use the LUTs themselves as storage (with read-write capability), in a special mode
<larsc> ok, so the lut cound will explode
<larsc> good to know: "INFO: [Common 17-86] Your PlanAhead license expires in -127 day(s)"
<larsc> ;)
<lekernel> DRM failing in that direction is unusal, but less bothersome :)
<larsc> looks as if I got a BRAM
<larsc> I wonder how you go about implementing a stb-ack style handshaking for a read-first BRAM, since you essentially need to increment the address one cycle before ack is asserted.
<lekernel> assign addr_next = ack ? addr + 1 : addr
<lekernel> always @clk addr <= addr_next
<lekernel> always @clk data <= mem[addr_next]
<lekernel> something like that
<larsc> that makes sense, thanks
xiangfu has quit [Remote host closed the connection]
antgreen has quit [Ping timeout: 246 seconds]
antgreen has joined #milkymist
xiangfu has joined #milkymist
xiangfu has quit [Remote host closed the connection]
mumptai has joined #milkymist
<ysionneau> hum, seems I fixed the jbig2dec issue
<ysionneau> will post a patch later in the evening
jevin has quit [Ping timeout: 246 seconds]
jevin has joined #milkymist
Alarm has joined #milkymist
Scopeuk-AFK is now known as Scopeuk
_whitelogger has joined #milkymist
mumptai has quit [Ping timeout: 264 seconds]
Scopeuk is now known as Scopeuk-AFK
lekernel has quit [Ping timeout: 252 seconds]
Alarm has quit [Quit: ChatZilla 0.9.90.1 [Firefox 24.0/20130910160258]]
<GitHub52> [scripts] sbourdeauducq pushed 2 new commits to master: http://git.io/i1RFDw
<GitHub52> scripts/master 8222d63 Yann Sionneau: Fix jbig2dec 404 error issue
<GitHub52> scripts/master a748e57 Yann Sionneau: binutils and GDB update
<ysionneau> thanks!
mumptai has joined #milkymist
lekernel has joined #milkymist
<ysionneau> lekernel wpwrak I am trying to put together a list of videos showing the Milkymist One board doing visual effects
<ysionneau> if I miss some links please add thel
<ysionneau> them
<ysionneau> I know that on some links it's the ML401 and on some other links it's the first milkymist one demo which is not the flickernoise software
<ysionneau> maybe I should tag those videos with [flickernoise] and [early engineering demo]
lekernel has quit [Quit: Leaving]
<ysionneau> if you have videos of the Mixxeo board in action, please put the links on the piratepad as well
<ysionneau> and now, I'm calling it a day
<ysionneau> gn8 :)
<wpwrak> if you like technical, here's one: http://downloads.qi-hardware.com/people/werner/m1/demo/wheel.ogv
<ysionneau> great! could you put them on the piratepad page ?
<ysionneau> if not already dlne
<ysionneau> done
<ysionneau> im on my phone right now
<ysionneau> *zZzZ*
<wpwrak> done. lemme check two larger ones ...
<wpwrak> bah. mplayer doesn't want to play them. that sucks.
mumptai has quit [Ping timeout: 260 seconds]
<sh4rm4> wpwrak, time to get mpv player then ;)
<sh4rm4> looks as if wolfspraul hasn't been around lately, hmm ?
<sh4rm4> i'm curious why/how he got all commit names in his fpgatools repo changed