X
Xin Xiao
Guest
Some people say that this line is synthesizable; some others say it isn't.
Clk <= not Clk after period / 2;
Is it synthesizable?
Clk <= not Clk after period / 2;
Is it synthesizable?
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
No commercially available FPGAs or CPLDs currently implement delay lines soSome people say that this line is synthesizable; some others say it isn't.
Clk <= not Clk after period / 2;
Is it synthesizable?
Some people say the earth is flat.Some people say that this line is synthesizable; some others say it isn't.
You tell me. What hardware should the synthesis toolClk <= not Clk after period / 2;
Is it synthesizable?
Some say it's only a few thousand years oldOn Mon, 31 Dec 2007 16:13:24 +0100, "Xin Xiao" <x@x.com> wrote:
Some people say that this line is synthesizable; some others say it isn't.
Some people say the earth is flat.
Clk <= not Clk after period / 2;
Is it synthesizable?
You tell me. What hardware should the synthesis tool
build to implement this?
A delay line and an inverter.
But I'm betting that they won't because there is really little market demandToday, synthesis tools don't know how to build RC delay
elements - and even if they did, it would be a little
tricky to implement such a thing on an FPGA.
But those FPGA suppliers are pretty creative, I'll bet they could do it.
Actel to get rid of the A/D and D/As then...they're all pretty much analogSynthesis generally cannot build analogue elements.
Maybe someone should tell Altera, Xilinx, et al to remove their PLL/DLLs and
The direct answer to your question is that almost all
synthesis tools completely ignore "after" delays, so
the synthesized result would be an inverter with its
output and input joined together.
Shame on the tool writers then for not flagging it as an error early on.
reason for the absurd behaviour is because it tossed out something that theThis would obviously
be a crazy thing to do, and the tool chain would give
you various warning messages about it in the stages
beyond RTL synthesis. Finally, if you allowed such
a thing to be implemented in the finished hardware,
you would obviously get absurd behaviour.
See? That's why the synthesis tool should've flagged an error. The only
memory look up tables?It is usually possible to build a clock oscillator on
an FPGA by playing silly games with I/O buffers and
external RC networks, but it's rarely a good idea.
But it's not a silly game when inverters and other logic gets turned into
Well, not really; as I pointed out later, the VHDLClk <= not Clk after period / 2;
Is it synthesizable?
You tell me. What hardware should the synthesis tool
build to implement this?
A delay line and an inverter.
I have yet to see any synthesis tool infer a PLL or an A/D fromSynthesis generally cannot build analogue elements.
Maybe someone should tell Altera, Xilinx, et al to remove their PLL/DLLs and
Actel to get rid of the A/D and D/As then...they're all pretty much analog
beasts. What is 'synthesizable' can not be discussed without also
discussing the underlying technology that would/could be used to implement
it.
Well.... it probably *is* flagged as an error fairly early,synthesis tools completely ignore "after" delays, so
the synthesized result would be an inverter with its
output and input joined together.
Shame on the tool writers then for not flagging it
as an error early on.
I acknowledge your position that tools should error onSee? That's why the synthesis tool should've flagged an error.
I don't follow. The transformations you describe will faithfullyIt is usually possible to build a clock oscillator on
an FPGA by playing silly games with I/O buffers and
external RC networks, but it's rarely a good idea.
But it's not a silly game when inverters and other logic
gets turned into memory look up tables?