Just had my first taste of the company supplied software from Gowin Semicon=
ductor. It's ok. Documentation is terrible being not much more than a lis=
ting of the menu items. Lots of features are lacking.=20
My test file is a simple 11 bit down counter described three slightly diffe=
rent ways to see what might be the best for my current design which is goin=
g to have a lot of counters. Typically they need an enable input to kick t=
he counter off and a carry output to indicate the counter has reached it's =
terminal count (zero). A bit of combining enable logic and it's ready to a=
ct as the main state machine control for nearly everything I'm going to hav=
e to do. =20
To be able to halt the counter the carry output is directly carry driven, n=
ot registered. So that means the counter has to be a signal... I would hav=
e liked encapsulating it in the process as a variable. So the process just=
has the counter being incremented on the enable input combined with the in=
verted carry. =20
In a couple of versions I use a procedure to generate nxt_cnt and carry_out=
as a concurrent statement, one using unsigned and one using integers, the =
carry being generated by adding a msb to the adder in each case. The third=
version uses an integer for the counter and does a modular subtract of one=
in the process. The carry is a concurrent statement testing for the count=
er being equal to zero. To my surprise when tested on Synplify for Lattice=
, all three gave the same logic! So if testing for zero can be equated to =
a carry out of a decrementer it's all good. =20
But it's not all good. The Gowin software seems to make a dog's breakfast =
out of it and adds a bunch of logic that shouldn't be needed. They don't h=
ave an RTL view feature, so it's hard to tell just what they've done. For =
one the zero test is being done as a zero test by oring every bit. I can't=
figure out the rest without drawing the schematic or something. It is usi=
ng the same number of LUTs, but also listed is 10 ALUs which seem to be LUT=
s used as adders. I would expect to see 33 or 36 of those, not 10!=20
Maybe the FAE can help.=20
--=20
Rick C.
- Get 1,000 miles of free Supercharging
- Tesla referral code - https://ts.la/richard11209