In this case these are actually very different courses.
The first one goes through the mathematical foundations of Digital Signal Processing: continuous vs discrete, sampling theorem, Z-transform, LTI systems, Fourier Transform, some light-weight filter design, etc.
You'll probably will use mostly pen & paper plus Matlab or Python for this one.
The second one appears focus and getting this to run on an actual piece of hardware. You'll most likely learn how to get the hardware up and running, getting development tools installed (C-compiler, board interface), figure out how to configure the processor and the peripherals so that you can actually receive and send data at the right format and correct speed and timing, build a data path through your processor, express an abstract algorithm in terms of actual working code, track performance & system metrics and test & debug (A LOT).
These are very different skill sets. IMO the first course is a pre-requisite to the second: Before you implement an algorithm in hardware, you need to understand how the algorithm actually works, what the expected behavior is and what you can or cannot tweak.