I agree strongly with what Amit just wrote.
SystemC does have one strength at the RTL level for modeling DSP, image processing or any design that needs to experiment with fixed precision arithmetic. The C++ type system makes it easy to write and very efficient. But once you get into lots of bit-level manipulations, that's where the HDL start to become more efficient.
I disagree with one comment in the previous post. You can use HDLs to co-simulate with your software/firmware. It just that it is not efficient enough to be a platform to verify your software/firmware. But you can certainly use it to verify the communication between hardware and software.