trace.bin md5 is everytime different

24 views
Skip to first unread message

Uladzimir Kryvian

unread,
Apr 17, 2017, 12:15:36 PM4/17/17
to UMDKv2 Developers
Hi.
I'm a newbie in UMDK, and just started. And I have a problem at "First, a basic signal test" step.
I'm getting a different md5 sum everytime. USB speed is like 37MiB/s.

Uladzimir Kryvian

unread,
Apr 17, 2017, 12:21:50 PM4/17/17
to UMDKv2 Developers
Link to result.txt is: https://mega.nz/#!DQcgwaxC!dy_xAqMAvctOurKE8XYCrq7U5JdmFYerUKcmykA_fmo

понедельник, 17 апреля 2017 г., 19:15:36 UTC+3 пользователь Uladzimir Kryvian написал:

Chris McClelland

unread,
Apr 17, 2017, 1:31:06 PM4/17/17
to umdkv...@googlegroups.com
If you do a diff between your result.txt and the "correct" result.txt as shown in the wiki:
$ wget -qO- http://tiny.cc/umdk-expected | bunzip2 > expected.txt
$ diff expected.txt result.txt | less
...what you see is that there are huge blocks of the "expected" log missing from your result.txt. This is an indication that the trace FIFO is filling up. This means your PC is not fast enough to keep up with the UMDK. Your raw throughput of 37MiB/s is respectable, but all it takes is for your PC to stop accepting trace packets from the UMDK for a few milliseconds for the FIFO to fill up. You could try disconnecting all nonessential USB devices, avoiding using a USB hub, trying a different cable, different USB ports etc.

The good news is that there's no evidence of hardware problems on the MD/UMDK side, so everything else (apart from instruction-tracing) should work.

Chris


--
You received this message because you are subscribed to the Google Groups "UMDKv2 Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to umdkv2-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Chris McClelland

unread,
Apr 17, 2017, 1:33:08 PM4/17/17
to umdkv...@googlegroups.com
It could also be due to the write-speed of your hard disk - if for some reason your HDD paused during the test, that would mess you up too.

Uladzimir Kryvian

unread,
Apr 17, 2017, 1:34:49 PM4/17/17
to UMDKv2 Developers
I think it happens because of VMware.:)

понедельник, 17 апреля 2017 г., 20:33:08 UTC+3 пользователь Chris McClelland написал:
To unsubscribe from this group and stop receiving emails from it, send an email to umdkv2-dev+...@googlegroups.com.

Tasos Sahanidis

unread,
Apr 17, 2017, 1:42:04 PM4/17/17
to umdkv...@googlegroups.com
I tried USB passthrough on virtualbox and I had ugly results.
So unless you pass through a PCIe USB host altogether to a VM, it most likely won't work reliably enough.

Chris McClelland

unread,
Apr 17, 2017, 1:48:15 PM4/17/17
to umdkv...@googlegroups.com
Yup, VMs are explicitly not supported. It's the first sentence in the wiki, in fact:

"Unless you know what you're doing, you should test your new UMDK cart using a recent x86 or x64 Linux installation, on "real" (as opposed to virtual, e.g on VMware or VirtualBox) x86 or x64 hardware."


On 17 April 2017 at 18:40, Tasos Sahanidis <ta...@tasossah.com> wrote:
I tried USB passthrough on virtualbox and I had ugly results.
So unless you pass through a PCIe USB host altogether to a VM, it most likely won't work reliably enough.

--
You received this message because you are subscribed to the Google Groups "UMDKv2 Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to umdkv2-dev+unsubscribe@googlegroups.com.

Uladzimir Kryvian

unread,
Apr 17, 2017, 2:31:35 PM4/17/17
to UMDKv2 Developers
Is is possible to make it independent of USB speed, or something like that? Why does it depend?

понедельник, 17 апреля 2017 г., 20:48:15 UTC+3 пользователь Chris McClelland написал:
Yup, VMs are explicitly not supported. It's the first sentence in the wiki, in fact:

"Unless you know what you're doing, you should test your new UMDK cart using a recent x86 or x64 Linux installation, on "real" (as opposed to virtual, e.g on VMware or VirtualBox) x86 or x64 hardware."
On 17 April 2017 at 18:40, Tasos Sahanidis <ta...@tasossah.com> wrote:
I tried USB passthrough on virtualbox and I had ugly results.
So unless you pass through a PCIe USB host altogether to a VM, it most likely won't work reliably enough.

--
You received this message because you are subscribed to the Google Groups "UMDKv2 Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to umdkv2-dev+...@googlegroups.com.

Chris McClelland

unread,
Apr 17, 2017, 3:36:24 PM4/17/17
to umdkv...@googlegroups.com
The instruction tracer sends a 7-byte packet back to the PC for every MegaDrive bus-cycle. Thus, the rate of production of trace data is more or less fixed (at somewhere between 10MiB/s and 20MiB/s, depending on what the MegaDrive is doing at the time), and cannot be throttled. So if the USB link can't keep up, the FPGA has no choice but to start dropping packets. You could just not use the instruction-trace feature, or you could run the UMDK tools natively on Windows (I committed fixes necessary to get everything to build on Windows recently[1]) or MacOSX (untested, but it should compile with minimal changes). The main reason Windows is not better supported is because there are no good free gdb frontends on Windows, but also because nobody else involved with the project has any particular love of Windows: you'll typically find yourself jumping through hoops just to get basic stuff done, whereas on Linux IAJW[2].

[2]It All Just Works


To unsubscribe from this group and stop receiving emails from it, send an email to umdkv2-dev+unsubscribe@googlegroups.com.

Uladzimir Kryvian

unread,
Apr 17, 2017, 3:53:51 PM4/17/17
to UMDKv2 Developers
I see. But how to build "loader" for Windows?

понедельник, 17 апреля 2017 г., 22:36:24 UTC+3 пользователь Chris McClelland написал:

Chris McClelland

unread,
Apr 17, 2017, 4:32:33 PM4/17/17
to umdkv...@googlegroups.com
The UMDK tools build on Windows using the same build-infrastructure that is used on Linux. You can find setup instructions for a different project here: https://gist.github.com/makestuff/51416b80db0420ad4713#file-lx9r3-howto-L39

The idea is the first execution of the "msget.sh" script (on line 67) specifies the version (20140524 in this case). Subsequent executions of that script (e.g line 73) don't need to specify the version because you have already chosen it. Once you can get for example flcli building on Windows, then you should be able to look at the full build process for the UMDK tools on Linux: https://gist.github.com/makestuff/5edd5ed38c7f2138537fe99e177d559d

...and use it to guide you. Obviously there's a lot of extra complexity here because it also builds gdb and the gcc cross-compiler which I'm assuming you won't need.

There's a limit to how much I can help you with Windows though. If you want to step up to be the "UMDK on Windows" go-to guy, then great (e.g I can give you access to the wiki so you can create a Windows quickstart page). But experience supporting FPGALink on Windows has taught me that helping people fix Windows issues is a never-ending battle. So now I just make sure everything builds on Windows, the unit-tests pass, and the whole thing is basically functional. It really needs someone with a lot more time and patience than me, to support Windows users properly. Hence the "you can use Windows, but you're on your own if you do" attitude!  :-)

Chris





To unsubscribe from this group and stop receiving emails from it, send an email to umdkv2-dev+unsubscribe@googlegroups.com.

csmith

unread,
Apr 17, 2017, 7:23:41 PM4/17/17
to umdkv...@googlegroups.com



On 17/04/17 19:40, Tasos Sahanidis wrote:
I tried USB passthrough on virtualbox and I had ugly results.
So unless you pass through a PCIe USB host altogether to a VM, it most likely won't work reliably enough.
I am now up to my second machine that I use for UMDK.  The one I have now I only use for UMDK.  This is expensive in terms of hardware and space but it is simply easier for me to have a dedicated machine that I can rely on that to be spending too much time trying to fix problems all the time.

I use a recent version of Debian and I connect UMDK with a cable connected directly to the PC's Motherboard.

Tools wise: for general Megadrive development you will need both Unix and Windows I find.
Reply all
Reply to author
Forward
0 new messages