Among the things you need to declare are pulse repetition
rate min/max, pulse width min/max, what kind of timing
resources you will provide or expect to have provided to
your generator. Will you also want a programmable delay
(from some trigger event - do you want triggered or only
free running?)? Variable high, low levels / amplitude & offset
as well? All of these are "knobs" (actual, in my couple of
bench units; metaphorical, for a digital box).
What about jitter / stability? This alone might argue for a
more digital approach. You might like a 10MHz reference
(as is found on the back panel of spectrum analyzers,
if you are caring about phase noise you probably have
one) and a modern PLL +VCO (you could get >6MHz clock
this way) and then you "only" have to make the divider
logic work at speed.
The line driver output alone would be a challenge at
pulses below 10nS wide if you want large signal swings.
The bare minimum might be an astable multvibrator
clocking a monostable multivibrator (freq, width).
Switched-C or switched-R would make classic parts
"programable".
A FPGA might also be a way to go, although these
can be pretty "needy" and their eval kits, expensive.
But EVKs tend to have a lot of the resources you would
need (reference clock, USB interface). The output swing
would be limited, and you might need something extra
for that.
You should draw the lines before you start trying to color.
You should look at eBay and Amazon if you need the tool
more than the experience of creating it (or trying). I have
found pretty cheap arbs and pulse gens with USB interfaces.
At prices which make "make vs buy" a no-brainer.