-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Waveform #213
Comments
Since we are using Icarus, this is the only way to generate a waveform. If you are trying to compare different waveforms, the only thing I am aware of is a relatively recent paper on waveform comparison language tools, which I am not familiar with. The main problem is that two waveforms can be different but perform the same thing. Furthermore, the waveform generated by different simulators will be different as well. What might be more practical is to have the simulator print value out and do the comparison that way. The simplest thing you can do is keep the counter's interface and replace the internal logic with what you want to experiment with. The current waveform you are getting also contains the bitstream loading action. If you are planning to use FABulous for your research, email me at [email protected], and we can see how to better assist you. |
Hi, I don't know how much you already solved in personal communication, but I'll just leave my two cents here:
You can do so directly in the waveform generated by the fabric testbench // Instantiate both the fabric and the reference DUT
eFPGA_top top_i (
.I_top(I_top),
.T_top(T_top),
.O_top(O_top),
.A_config_C(A_cfg), .B_config_C(B_cfg),
.CLK(CLK), .resetn(resetn),
.SelfWriteStrobe(SelfWriteStrobe), .SelfWriteData(SelfWriteData),
.Rx(Rx),
.ComActive(ComActive),
.ReceiveLED(ReceiveLED),
.s_clk(s_clk),
.s_data(s_data)
);
wire [27:0] I_top_gold, oeb_gold, T_top_gold;
top dut_i (
.clk(CLK),
.io_out(I_top_gold),
.io_oeb(oeb_gold),
.io_in(O_top)
);
Remember that the design used in the script is in
The part you added was this, right?: $dumpfile("waveform.vcd");
$dumpvars(); I think the After running the simulation,
There is also the
In the simulation, the bitstream is loaded into the configuration storage, so the waveform you see already reflects the bistream. Just be sure that you are comparing the correct bitstream to the correct user design. I hope I could clarify some things and did not tell you too much you already knew. As always, feel free to ask further questions! |
Hello, I hope you are having a great day. I am trying to compare the waveforms of the test circuit (I found out it was a counter) with the waveform of the ouput of the eFPGA after simulation, after following all the Quick Start Documentation and Simulation Setup Documentation:
I did what is on the picture to generate the waveform because otherwise I could not find how to. iI would be glad if someone could explain if there is a better way to generate the waveform and compare it. Also if there is some documentation or an explanation on how to try a different circuit besides the implemented counter, for examle an AND gate or a multiplier. Also if there is a way to see the waveform of the bitstream. Thanks in advance!
The text was updated successfully, but these errors were encountered: