We have two cats, and now two dogs, and I too posted this question before. In hindsight, what worked with one dog, and is now working with the other, is to let the dog know that the cats belong to you and that they are not to be touched. This was the advice given to me and I continue to use it.
Pick up the cat and pet it in front of the dog. We use the command, "Don't touch" to the dogs when they fixate or go after the cats, so I use this command to the dog while I pet the cat. With Zeus, our A.B., we would also alpha roll him and stick the cat on his stomach when he was calm. Surprisingly, he would stay calm. Also, we would keep him on leash in the house and when he went near the cats, he got a correction and a "Don't touch." He now pays them no attention.
Pick up the cat and pet it in front of the dog. We use the command, "Don't touch" to the dogs when they fixate or go after the cats, so I use this command to the dog while I pet the cat. With Zeus, our A.B., we would also alpha roll him and stick the cat on his stomach when he was calm. Surprisingly, he would stay calm. Also, we would keep him on leash in the house and when he went near the cats, he got a correction and a "Don't touch." He now pays them no attention.