Semaphore is a software concept. You could use it in HW but I'd just use an arbiter instead. In hardware there are many ways to implement some sort of resource sharing logic. As your original post was about read-modify-write. I figured you were coming from a SW background. In HW a read-modify-write would just be read a memory change one or more bits in the data and write that data back to the same memory location.
The repeat 5 times was a joke about google being helpful (a friend).