Màrius Montón wrote:
Hello all,
I'm a PhD student and I'm focusing on HW/SW co-design.
First of all, a brief introduction to problem:
Nowadays, we can use C++ libraries, called SystemC, to describe HW
behavior, and synthesize with commercial tools.
A SystemC description can be simulated using its own simulator kernel,
and we can indeed wrap a module with its simulator kernel into a C++
class, so we can use it as a 'normal' C++ code...
Our main problem now appears: if we develop a PCI device using SystemC
we cannot start to develop and test the device driver until we have a
real prototype,
and hence, we cannot test our HW with SW.
Our proposal is to develop a set of tools (kernel module, daemon, ...) in
order to use a SystemC model of HW as a virtual device.
With this set of code, when we have SystemC description finished (and
only SystemC code, nor prototype, nor real HW), we will able to start
developing driver, and testing our "virtual HW" with complete SW suite.
At this point, we plan to develop a pci device driver to act as a bridge
between kernel PCI subsystem and SystemC simulator (in user space).
No need for a set of tools. As long as your SystemC simulator simulates
an entire platform -- CPU, DRAM, etc. -- then you can boot Linux on the
simulated platform.
If you can boot Linux on the simulated platform, then you can easily
develop a Linux driver long before real HW is available.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
|
|