it uses your Radar Plot, Flight Plan TAS, known system winds, etc etc.
And this is why it is inaccurate if you are not cruising at your flight plan altitude.
We do not flight plan a TAS. We flight plan a Mach No.
ATC chooses to convert this to a TAS and does not take into account that you may be cruising at a different flight level (for whatever reason). Cruising at a different flight level will change your TAS considerably.