The errors you are talking about will relate to one or two things in the system.
The first suspect of course would be memory, or the memory mdodules used.
You should check in your bios all of the auto detected settings the bios made for the memory are set correctly by auto detection of the memory modules via the bios.
Take all of the memory out of your system first, each stick.
TDL is mainly down to a timing, or memory error.
Read off all of the information on the memory stick for the voltage, clock speed and timing values at the rated operation speed of each memory stick.
If you have any stick that does not match in voltage, speed or timing values depending on how many ram modules or sticks you have do not use it when running other memory at different timings or clock speed to other sticks of memory in the boards memory slots at the same time, the settings will conflict and produce errors in windows in most cases when running, or when the system or memory is put under heavy work load, of reading and writing operations.
TDL can also relate to a call request for data from a driver of the system to the cpu and a memory location of the system ram. It can be down to a time out for a requested operation not sent or received from or to the cpu from memory or a location or block of system memory producing the error in question.
After you have the settings of all the memory sticks, insert only one into the memory slot of the motherboard.
Enter the bios of the motherboard and verify that the rated speed, along with the voltage, and timing values of the memory have been correctly auto detected.
Make sure if the rated speed of the memory if quoted as Xmp memory mode that the option of XMP is enabled in your bios.
By setting the Xmp mode option in the bios it allows the voltage to be automatically changed from a Stock 1.5v to a 1.65v setting because the memory is potentially overclocked to a higher Mhz speed and requires slightly more power to keep stable when load is put on it, or it willl produce a memory error in most cases while running under the windows os environment.
Examples of a crash happen when playing a game or doing a heavy task requiring memory utilization on a high scale, and a common indicator of the problem.
Another thing to look for is the memory type mode option set in the bios.
You can get two types of memory buffered, normal pc standard of memory.
Or you can get EEC rated memory. Server related memory with extra memory error, or parity bit error detection.
If EEC memory is used then an option in your bios must be set to EEC mode on in the bios.
If it is turned off, in the bios, and the memory does have the EEC option it will result in errors in windows most of the time.
Test one stick only in the first slot of the board on it`s own and do a Microsoft memory test of about three memory scans to verify the memory on the module is fully working and not the cause of the errors.
If the stick passes remove it and place another in the first memory slot of the motherboard on it`s own and verify the memory module is good by the Microsoft memory error checking program.
Untill each of the memory sticks you have are tested.
If you follow these tips, then post back on the results. but the errors keep happening the next thing to look at is the cpu. Or if it is a hardware conflict between two hardware devices running on the system at the same time.