<shapr>
is there some way to donate money to yosys development?
lok[m] has quit [Ping timeout: 256 seconds]
nrossi has quit [Ping timeout: 277 seconds]
jfng has quit [Ping timeout: 277 seconds]
pointfree1 has quit [Ping timeout: 277 seconds]
<ZipCPU>
shapr: Wrong time of day to ask. Most of the team is on European time.
Alistair has joined #yosys
kuldeep has joined #yosys
quigonjinn has quit [Ping timeout: 260 seconds]
<qu1j0t3>
scrollback is 24 hr though
<ZipCPU>
;)
* ZipCPU
is trying to write an article about formally verifying a clock switch--quite the fascinating topic
<sorear>
A clock switch?
samayra has joined #yosys
<ZipCPU>
Yes.
<ZipCPU>
It's not so much an FPGA design as an ASIC one, but it makes a nice and simple example to illustrate how formal properties can be used to describe two clocks.
<ZipCPU>
I found the code and example via google. Formally verifying it yielded a "let the buyer beware" sort of moment which should make the article more amusing.
<sorear>
So a circuit that switches at runtime between two or more clock sources?
<ZipCPU>
Exactly!
<ZipCPU>
And the trick is ... the circuit can't be allowed to glitch. The two switch needs to produce a glitch free result that maintains timing properties no worse than the fastest clock.
Alistair_ has joined #yosys
Alistair has quit [Ping timeout: 265 seconds]
seldridge has joined #yosys
nrossi has joined #yosys
indefini has joined #yosys
lok[m] has joined #yosys
pointfree1 has joined #yosys
swick has joined #yosys
marbler has joined #yosys
jfng has joined #yosys
Guest23074 has joined #yosys
weebull[m] has joined #yosys
m_w has joined #yosys
m_w_ has joined #yosys
m_w_ has quit [Remote host closed the connection]
m_w_ has joined #yosys
m_w has quit [Ping timeout: 255 seconds]
m_w_ has quit [Client Quit]
m_w has joined #yosys
<sorear>
Do you allow it to be worse than the slowest clock?
<sorear>
(For circuits requiring a minimum frequency)
<ZipCPU>
Heheh ... while swapping clocks, the "down" period may be longer than the down period of the slowest clock, so yes.
<ZipCPU>
See ... part of the story of this article is what I discovered while trying to formally verify the clock.
<ZipCPU>
I found the clock switch design on line, and so I'm just formally verifying it.
<ZipCPU>
The original design can be found on EETimes, in an article written by Mahmud
<tpb>
Title: #yosys on 2018-05-30 — irc logs at whitequark.org (at irclog.whitequark.org)
<azzizi>
Thanks very much
<azzizi>
00:02 <ZipCPU> Hi, azzizi! This is a place you can hold a conversation--so you can do more here than just ask questions. 00:03 <ZipCPU> I know the various "synth" steps are usually composed of many separate steps within a design, and these separate steps can be selected and activated individually. 00:04 <ZipCPU> From that standpoint, it sounds like inputting a design via read_verilog, followed by some amount of processing, followed
<azzizi>
sorry about that
quigonjinn has joined #yosys
<azzizi>
My apologies ; this follow up questions are in reference to 2018-05-24. In coversation with : <ZipCPU> <daveshah> <awygle>
<azzizi>
1
digshadow has joined #yosys
<azzizi>
1. From what I understand AST forms are for debugging only and can't be made changes to...I just want an intermediate format, be it anything for yosys (awygle suggests ILANG) that doesn't lose any source code information.
<azzizi>
Cont..1. So I could make a custom Yosys pass ...make some changes to ILANG to get a legal file and ues write_verilog to get a modified format of the output?
<daveshah>
azzizi: Yes, ILANG is definitely the intermediate format you will want to use
<azzizi>
2. Also, according to <daveshah> the write_verilog dumps the internal RTLIL to verilog. For a source code, I had read in using read_verilog and dumped using write_verilog; now using the design compiler software(for tsmc 25nm) I synthesized and it worked! So the RTLIL format is itself synthesizable?
<daveshah>
azzizi: Yes, RTLIL is synthesisable. I don't think it even supports any if many simulator-only constructs
<daveshah>
If you write a Yosys pass, you work on the RTLIL structures directly rather than the ILANG representation of it, BTW
<azzizi>
3. The intermediate RTLIL can be synthesized to ASIC and FPGA both ? without losing any information ?
<azzizi>
4. <daveshah> Can you please tell me some examples of what information read_verilog looses if possible? thanks much......
<daveshah>
azzizi: pre-synthesis RTL can be synthesised to ASIC or FPGA. Obviously information, but not functionality, is lost during synthesis as optimisations and technology mapping will occur
leviathan has quit [Ping timeout: 255 seconds]
<daveshah>
read_verilog will lose things like comments and the precise structure of the code, AFAIK
leviathan has joined #yosys
leviathan has quit [Ping timeout: 255 seconds]
leviathan has joined #yosys
<azzizi>
<daveshah> Is the output (synth.v) from the command write_verilog synth.v is the pre-synthesis RTL?
<azzizi>
Also, could you please elaborate on the comment " I don't think it even supports any if many simulator-only constructs"
<azzizi>
sorry
azzizi has quit [Quit: Page closed]
azzizi has joined #yosys
<daveshah>
azzizi: the output is simply the current design in Yosys
<daveshah>
it will be pre-synthesis until you run synthesis commands (i.e. synth)
<daveshah>
for simulator only constructs, I mean things you would use to create stimulus (delays for example), etc
<azzizi>
so if I use read_verilog and immediately then I use write_verilog file.v .............the file.v is the presynthesis verilog RTLIL format from which I can either way ASIC or FPGA