Live data from Hacker News

XLS: Accelerated HW Synthesis

google.github.io

51–55 of 55 posts

Re: XLS: Accelerated HW Synthesis

#51
post #45

Earlier quoted context omitted.

Looks like the match arm difference is going away: https://github.com/google/xls/pull/127

Very cool. TBH, Rust's match arm delimiter story is a bit weird. Sometimes you need to put a ",", sometimes you don't. And macro rules macros have ";" instead of ",".

> Sometimes you need to put a ",", sometimes you don't

The rule is pretty simple: if you have curly braces you don't need a comma (and rustfmt will drop it), if you don't have curly braces you need a comma.

Re: XLS: Accelerated HW Synthesis

#52
post #49

Earlier quoted context omitted.

Are you hiring SWEs for HW-SW co-design?

I am not personally a manager / hiring manager, but this is the job posting for SW/HW codesign positions in the south bay area CA -- speaking as an IC, it has been a very enjoyable area to work in as specialized designs become more important! https://g.co/kgs/xGSUXy

Thanks for the tip.

Re: XLS: Accelerated HW Synthesis

#53
post #21

Earlier quoted context omitted.

It is a project aimed at making the design of electronic logical easier. Often, such hardware is written using hardware description languages [1] like Verilog or VHDL. These languages are very low level and, in the opinion of some, a little clumsy to use. XLS aims to provide a system for High-level synthesis [2]. The benefit of such systems is that you can more easily map interesting algorithms to hardware without be…

I remember years ago reading about Handel-C. A lot like Go with channels and threads and function calls. The way it synthesized the hardware was pretty simple conceptually. You could easily understand how the program flow was converted into a state machine in the hardware. Not sure what happened it it. Maybe it did not optimize things enough. https://en.wikipedia.org/wiki/Handel-C https://babbage.cs.qc.cuny.edu/cours…

I worked on the Handel-C compiler :-) Then later used the language for a few years.

Its approach was intentionally simple conceptually. You could tell at a glance how many synchronous clock cycles each step would take, and roughly what logic would be produced, so it worked quite well for deterministic I/O and simple logic.

I found it a bit of a pain for high-throughput pipelining though, and personally prefer a compiler that has more freedom to auto-balance pipelines and retime logic.

I think Handel-C occupied a middle ground between other HLS, and Verilog/VHDL. It had the concise, C-like syntax of the former, with the predictability of the latter.

What happened to it was it transitioned from university to spin-out company Celoxica, and then was eventualy bought by Agility; then Mentor Graphics bought Handel-C while Agility folded, and Mentor seemed to mothball it.

For a while in the middle there was a decent business with great customers and a decent market cap, and something I'm not privy to resulted in the business folding. I don't think it failed due to insufficient code optimisation :-)

Re: XLS: Accelerated HW Synthesis

#54
post #50

Reminds me of the old reconfigure.io which used the ideas and syntax of Go's CSP and transformed them into async HDL code. Unfortunately the startup has been shuttered. http://docs.reconfigure.io/

What happened to them?

They shut down. Here's the founder: https://twitter.com/robtaylor78
Post reply on HN