When I ask a question "did you" it refers always to a specific moment I have in mind and "have you" refers to something up to now.
Like:
Have you talked to him?
This question is asked if we want to know if the person has already talked to him. And a "yet" could be add at the end "have you talked to him yet".
Whereas, did you call him, is asked when we know the moment:
"did you call him when you were in France"
Is it correct?