victor82
Joined 7 years ago
Joined 7 years ago
That site is really good to play with SIMD code.
If an UB adopt X behavior one time, a reproducible build will take same X behavior the next time.
Of course I am not negating the fact that this undefined in the first instance nor condoning the UB usage.
Remote: Yes
Willing to relocate: to USA/Singapore/Netherlands/Australia/UAE/Germany
Technologies: FPGAs, Verilog, AmaranthHDL, C/C++, Python, Golang
Résumé/CV: https://www.linkedin.com/in/victor-mu%C3%B1oz-79955093/
Github: https://www.github.com/vmunoz82/
Email: [email protected]
Looking for HFT/ultra low latency, RISC-V, RTL or high scalability related position.
So as the simulation code shows, it just tick the clock (with the "yield" statement) and read the "output" register and print it.
Of course you could connect this "Project Euler 1 accelerator" to a CPU, a SoC or whatever, or just connect LEDs directly to "output"
https://gist.github.com/vmunoz82/49de4c63bee1768283162ec5406...
class Euler(Elaboratable):
def __init__(self):
self.output = Signal(19)
def elaborate(self, platform):
m = Module()
count5 = Signal(3)
c3, c5 = Signal(17), Signal(18)
cond3, cond5 = (c3 < 1000) & (count5 != 0), (c5 < 1000) & (count5 < 3)
m.d.sync += count5.eq(Mux(count5 == 4, 0, count5+1))
m.d.sync += [
c3.eq(c3+3),
c5.eq(Mux(cond5, c5+5, c5))
]
m.d.sync += self.output.eq(self.output +
Mux(cond3, c3, 0)+Mux(cond5, c5, 0))
return m Location: Chile
Remote: Yes
Willing to relocate: Could be, depends on the place and project
Technologies: C, Golang, Python, VHDL, Verilog, Amaranth HDL, FPGAs
Résumé/CV: https://www.linkedin.com/in/victor-mu%C3%B1oz-79955093/
Email: victor at avoid dot contact
Github: https://github.com/vmunoz82
Hi! I am Victor, I have 20 years of experience working in technology, in this moment I enjoy working developing algorithms directly in RTL (FPGAs), I love to design scalable stuff from scratch.If you are looking for hands on co-founder engineer, CTO, or want to implement algorithms in hardware, would be good to get in touch.