Syntax Directed Translation (SDT) means that all the translation process is driven by the parser of your language. Many times, this is done without a building an explicit tree of your code. The parser detect an instructions and almost directly it generates the target output.
On the other hand, Semantic Analysis (SA) is an independent concept. This is one of the main stages of a compiler. It's responsible for detecting things like, undefined variables/functions, access out of the scope, and so on.
SDT and SA can be related. If a compiler uses SDT, it must adapt SA stage to do those verifications at parser level.