HackerTrans
TopNewTrendsCommentsPastAskShowJobs

victor82

no profile record

Submissions

Simple Speech-to-Text on the '10 Cents' CH32V003 Microcontroller

github.com
141 points·by victor82·2 anni fa·35 comments

Stateless, parallelizable, keyed, random accesible, reversible shuffle algorithm

github.com
1 points·by victor82·3 anni fa·0 comments

Show HN: An easy to build FOSS compilation for work with FPGAs

github.com
3 points·by victor82·4 anni fa·0 comments

comments

victor82
·3 anni fa·discuss
The solution codes are not available as you can continuously update your solution.
victor82
·3 anni fa·discuss
The solution exposed don't seems competitive enough to solve with good rank the problem exposed here https://highload.fun/tasks/14

That site is really good to play with SIMD code.
victor82
·4 anni fa·discuss
Seems there is not bytearray implemented, can't test further :(
victor82
·4 anni fa·discuss
"but it worked fine before" talks about the observed behavior
victor82
·4 anni fa·discuss
It is not explained why points 31 to 36 are valid, unlike HDL synthesis tools, C compilers are pretty deterministic, same input same output, except timestamps, etc.

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.
victor82
·4 anni fa·discuss
Location: Santiago, Chile

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.
victor82
·4 anni fa·discuss
Well, that code is module without any context (ie: connected to nothig), it just have 2 inputs (clk and rst), and an "output" with the current sum, after it reach the desired value it keep stuck there (until reset).

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"
victor82
·4 anni fa·discuss
You can avoid using abstractions and write it directly on the silicon, it's not really difficult, it turns into a bunch of muxes, registers and adders (as shown in the link below) and solves the problem in just 333 clock cycles, using a minimum of power

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
victor82
·4 anni fa·discuss
According to golem.de's report, Prodigy has its own VLIW ISA, and Qemu achieves compatibility with the other mentioned ISAs.
victor82
·4 anni fa·discuss


  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.