Larch/C++ and hardware software co-design

I am a graduate student involved in multithreaded microkernel design.

I am using Larch/C++ ( Gary Levens) for software specification.
I am also involved in hardware design ( Verilog based top down design.
Our Hardware is quite similar to *T of MIT ( Arvid and Nikhil 92 CAM paper).

I want to use verilog and Larch/C++ in the context of hardware and software
co-design. The problem is I do not have much info on codesign (I am reading
MACH papers now).  Can any oner help, if such co-design is tried with
Larch/C++. All pointers will be appreciated.
Also, what is the best possible ref for co-design.

Thanks in advance.

Tapas Shome