Structurally, tense is marked on the verb in Simple Past and on the auxiliary HAVE in Perfect with the verb marked as a past participle. There is also a subtle difference in syntactic usage. The Simple Past has reference to the physical context, that is, it is right now physically 5:32 pm here, so I can say "I ate" because I put food in my mouth before now. The Perfect has reference to the linguistic context, that is, "I am not hungry, I have eaten." The context is not supplied by the external time reference, but by the syntactic reference because "I am not hungry" is in the Present tense, so the eating happened before the "am not hungry". Sometimes people will use "I have eaten" to answer a question "Do you want to go to lunch?" (in which case the other speaker has supplied the linguistic context). They will use "I ate" in response to nonlinguistic references "There is a new Mexican restaurant in town" "I ate there yesterday" (in which case the physical context is "before you mentioned it just now").