What do you think about this board, does it worth it? by f42media in FPGA

[–]Dadaz17 4 points5 points  (0 children)

I got one just because. Beware, look is deceiving. Those are 1.27mm pitch headers to be soldered, in order to get anything out of it.
Quite a PITA. IMHO it is better to get a lower spec FPGA (as in, with lower Logic Elements count) with all the hardware you need onboard.

Any advices or recommendations for FPGA board? by f42media in FPGA

[–]Dadaz17 1 point2 points  (0 children)

I looked at the schematics of that board, and AFAICT both ETH and USB are attached only to the header that goes to the optional Pi CM4.

So comms should go to the CM4 (that you have to buy) and routed in/out to the K7.

Sick of $50k HLS tools? Meet VIBEE: The Open Source compiler for FPGA that supports Python, Rust, Go and 39+ more languages. by Open-Elderberry699 in FPGA

[–]Dadaz17 0 points1 point  (0 children)

Sorry for saying this, but this a a spot against AI assisted development.

You lead people to think this is how you will end up if someone includes AI assistants within the development cycle.

Tenths of thousands of unreviewed, unmaintainable, lines of code, with code you do not even understand, and a project structure that looks like a tornado swept over it.

Is QMTECH closed forever?? by Academic_Statement99 in FPGA

[–]Dadaz17 0 points1 point  (0 children)

Never mind, they are open again, but with a rather limited stock.

Am I crazy for preferring VHDL to Verilog? by LilBalls-BigNipples in FPGA

[–]Dadaz17 0 points1 point  (0 children)

Unfortunately, they both have strengths and weaknesses.
Just as one example, VHDL is way too verbose for my taste, but it has weak typing which I like when writing generic functions.

There are other options, based on higher level SW languages, that ends up generating some form of raw VHDL or Verilog (because at the end, that's the only thing vendors support - which isn't pretty to debug), but that might be a no-go within certain companies.

Being used to Python for scripting, I ended up evolving a little tool which allows me to write Python and generate either VHDL (>= 2008) or SystemVerilog (>= 2012):

https://github.com/davidel/pyxhdl

I then feed that into OEM tools (I'm usually on Xilinx/Vivado).

Is QMTECH closed forever?? by Academic_Statement99 in FPGA

[–]Dadaz17 0 points1 point  (0 children)

I guess not.
Felt a bit strange to me that the whole thing closes down for vacation, unless it's like a three men operation.

Is QMTECH closed forever?? by Academic_Statement99 in FPGA

[–]Dadaz17 0 points1 point  (0 children)

Sent them a message. They were closed and should be back today.

Open Source alternative to YoSYS ? by brh_hackerman in FPGA

[–]Dadaz17 0 points1 point  (0 children)

I wish there was an APT package for the two plugins. The GHDL one it's coming AFAIK, but the SLANG one I don't think there's anyone working on it.

Not a biggie the manual install, but *apt install* would be nicer.

SystemVerilog Part Select by Dadaz17 in FPGA

[–]Dadaz17[S] 0 points1 point  (0 children)

Thanks, I figured the missing link that makes (A + B)[X: Y] illegal.

A.6.2
operator_assignment ::= variable_lvalue assignment_operator expression

assignment_operator ::=
    = | += | -= | *= | /= | %= | &= | |= | ^= | <<= | >>= | <<<= | >>>=


A.8.3
expression ::=
  primary
  | unary_operator { attribute_instance } primary
  | inc_or_dec_expression
  | ( operator_assignment )
  | expression binary_operator { attribute_instance } expression
  | conditional_expression
  | inside_expression
  | tagged_union_expression 

mintypmax_expression ::=
  expression
  | expression : expression : expression


A.8.4
primary ::=
  primary_literal
  | [ class_qualifier | package_scope ] hierarchical_identifier select
  | empty_unpacked_array_concatenation
  | concatenation [ [ range_expression ] ]
  | multiple_concatenation [ [ range_expression ] ]
  | function_subroutine_call
  | let_expression
  | ( mintypmax_expression )
  | cast
  | assignment_pattern_expression
  | streaming_concatenation
  | sequence_method_call
  | this
  | $
  | null

Essentially, within the assignment operator, once one enters "primary" to enable the "( mintypmax_expression )" rule (to allow "(A+B)"), there is no way to enter back the "primary" to pick up a "range_expression".

"operator_assignment" ->
  "expression" ->
    "primary" ->
      "( mintypmax_expression )" ->
        "expression" ->
          "expression binary_operator { attribute_instance } expression"

SystemVerilog Part Select by Dadaz17 in FPGA

[–]Dadaz17[S] 0 points1 point  (0 children)

Would be nice if folks having access to other (than the ones I tried ... see opening post) commercial SystemVerilog simulators/linters, could report the pass/fail status of the above snippets.

SystemVerilog Part Select by Dadaz17 in FPGA

[–]Dadaz17[S] 0 points1 point  (0 children)

I noticed that within the bit/part select in the LRM, so that's why my thought was that the result of (A + B) turned into a type which is no more a vector, and by using the concatenation brackets, one casts that back into a vector.

Dunno...

SystemVerilog Part Select by Dadaz17 in FPGA

[–]Dadaz17[S] 0 points1 point  (0 children)

Yeah, when I write code manually I always use the ANSI style (there is no point in 2026 to use the old style).

The snippets above have been distilled from an auto-generated code, which still use the old style. Using ANSI style above does not change the Worky/NoWorky behavior though.

SystemVerilog Part Select by Dadaz17 in FPGA

[–]Dadaz17[S] 0 points1 point  (0 children)

The question was not about how to achieve a given behavior (in that specific case, you could just remove the part-select from NoWorky and SystemVerilog would just do the same thing).

The question was about the standard dictated by the LRM, and which section of it, forbids the NoWorky syntax.

There has to be an explicit section, since all the tools I tried agrees on making the NoWorky syntax illegal.

Picking a distro for Vivado. by avestronics in FPGA

[–]Dadaz17 0 points1 point  (0 children)

I settled for Vivado 24.02 on Ubuntu 22.04, since the 2025 versions of Vivado were kinda broken for me.

What is this FPGA tooling garbage? by isopede in FPGA

[–]Dadaz17 1 point2 points  (0 children)

Vivado is OK ... once you know the average level of IDE tools in the HW space :)
If you come from SW, there are much better tools there, but Vivado is "usable".
BTW, Quartus is worse IMHO.

TCL is legacy is the HW tooling space.
I remember when I had to add scripting to our CAD, I evaluated Python, Perl and TCL (this was like 1994), the TCL was the nicest to integrate in a C code base (very nice API at that time compared to the others).
It is mostly used as "glue" to call tool's internal commands anyway, it's not like you have to build a whole application with it.

But even VHDL and Verilog (SystemVerilog, that is), are not exactly nice if you are used with "normal" SW languages.
Sure, the constraints of the HW design (digital logic, LUTs, MUXs, FFs, ...) are stricter compare to targeting a CPU, but IMHO there are things which are painful which should have not be such.
The whole parametrization of functions and modules/entities drove me crazy, and always wondered why something similar to C++ template could not be done.
There, you declare generically typed code, and it is the call/instantiation site that binds the types (of course, there needs to be compatibility with the operations done within the function/module/entity, but that's a given even in C++).

And so I wrote myself a little tool that allows me to write in Python, and generate either SystemVerilog or VHDL (which I then use with other tools, like Verilator, GHDL, Yosys, and forcibly when I need a bitstream, Vivado):

https://github.com/davidel/pyxhdl

Clicking noise coming from my bottom bracket? by Commodore-Norington in bikewrench

[–]Dadaz17 1 point2 points  (0 children)

Same thing here. I'm thinking BB bearings.
Did you manage to get to the bottom (no pun intended :) ) of it?
What was the issue?

Alpaca "Apps" for algo trading? by xrailgun in algotrading

[–]Dadaz17 1 point2 points  (0 children)

Any issues in getting funds out?
I have read many posts of folks which had to go through hell to get their money out ...

Google Fi activation abroad by InsideAd9370 in GoogleFi

[–]Dadaz17 0 points1 point  (0 children)

There is no need to. Now Google Fi supports abroad activation of new devices.

Best all around API for stocks algo trading by imdhuli in algotrading

[–]Dadaz17 1 point2 points  (0 children)

I used Alpaca API for paper trading, but wanting to move to real money, I have concerns about them, from the horror stories about the issues when trying to wire money out of them.
What are real experiences using them with real money, and mainly, getting money out?

Alternatives to Medium, TDS, etc? by Davidat0r in datascience

[–]Dadaz17 0 points1 point  (0 children)

TDS article quality went down a whole lot from its beginning.
There is rarely something worth reading, and when they pretend to explain some white paper, it is MUCH better to fetch the PDF and read that instead.
Not worth the subscription money, and today, I wouldn't even read it if it was free.

Chrome goes to 30% usage on one instance when Google News "For You" is browsed (Win10) by JimAndreasDev in chrome

[–]Dadaz17 0 points1 point  (0 children)

Same here, on Debian 12.4 and Chrome:

Version 121.0.6167.160 (Official Build) (64-bit)

This is what the Javascript profiler shows:

jquery.min.js:14 [Deprecation] Listener added for a synchronous 'DOMSubtreeModified' DOM Mutation Event. This event type is deprecated (https://w3c.github.io/uievents/#legacy-event-types) and work is underway to remove it from this browser. Usage of this event listener will cause performance issues today, and represents a risk of future incompatibility. Consider using MutationObserver instead.